مطابقة القالب هي تقنية لإيجاد الجزء الأكثر مطابقة (مماثل) من صورة إلى صورة أخرى.
الوظيفة: imgproc.matchtemplate (صورة MAT ، MAT TEMPL ، نتيجة MAT ، طريقة int)
وصف المعلمة:
الصورة: صورة المصدر
تمبل: صورة قالب
النتيجة: قارن النتائج
الطريقة: مطابقة الخوارزمية
خوارزمية مطابقة:
TM_SQDIFF الفرق المربع طريقة مطابقة الفرق: هذه الطريقة تستخدم اختلاف تربيعي للمطابقة ؛ أفضل قيمة تطابق هي 0 ؛ كلما كانت المباراة أسوأ ، زادت قيمة المباراة.
طريقة مطابقة الارتباط TM_CCORR: تستخدم هذه الطريقة عملية الضرب ؛ كلما زادت القيمة ، كلما كانت درجة المطابقة أفضل.
TM_CCOEFF معامل الارتباط طريقة مطابقة: 1 يمثل تطابقًا مثاليًا ؛ -1 يمثل أسوأ مباراة.
TM_SQDIFF_NORMED طريقة مطابقة الفرق المربعة الطبيعية.
TM_CCORR_NORMED طريقة مطابقة الارتباط الطبيعية.
TM_CCOEFF_NORMED طريقة مطابقة معامل الارتباط المعامل.
نموذج الرمز:
الفراغ الثابت العام الرئيسي (سلسلة [] args) {// todo method method method method system.loadlibrary (core.native_library_name) ؛ mat g_tem = imgcodecs.imread ("f: //mould.jpg") ؛ mat g_src = imgcodecs.imread ("f: //source.jpg") ؛ int result_rows = g_src.rows () - g_tem.rows () + 1 ؛ int result_cols = g_src.cols () - g_tem.cols () + 1 ؛ mat g_result = new mat (result_rows ، result_cols ، cvtype.cv_32fc1) ؛ imgproc.matchtemplate (g_src ، g_tem ، g_result ، imgproc.tm_ccorr_normed) ؛ // طريقة مطابقة التباين المربع الطبيعي // imgproc.matchtemplate (g_src ، g_tem ، g_result ، // imgproc.tm_ccoeff_normed) ؛ // طريقة مطابقة معامل الارتباط الطبيعية // imgproc.matchtemplate (G_SRC ، G_TEM ، G_Result ، imgproc.tm_ccoeff) ؛ // // // // طريقة مطابقة معامل الارتباط: 1 يمثل تطابقًا مثاليًا ؛ -1 يمثل أسوأ مباراة. // imgproc.matchtemplate (g_src ، g_tem ، g_result ، imgproc.tm_ccorr) ؛ // // طريقة المطابقة ذات الصلة // imgproc.matchtemplate (g_src ، g_tem ، g_result ، imgproc.tm_sqdiff) ؛ // // طريقة مطابقة التباين المربع: تستخدم هذه الطريقة تباين مربع لمطابقة ؛ أفضل قيمة تطابق هي 0 ؛ كلما كانت المباراة أسوأ ، زادت قيمة المباراة. // imgproc.matchtemplate (g_src ، g_tem ، g_result ، imgproc.tm_ccorr_normed) ؛ // // طريقة مطابقة الارتباط الطبيعية core.normalization (g_result ، g_result ، 0 ، 1 ، core.norm_minmax ، -1 ، new mat ()) ؛ نقطة التوفيق = new point () ؛ minmaxlocresult mmmlr = core.minmaxloc (g_result) ؛ matchlocation = mmmlr.maxloc ؛ // ما إذا كنت تريد استخدام maxloc هنا يعتمد على خوارزمية المطابقة المستخدمة imgproc.rectangle (g_src ، matchlocation ، نقطة جديدة (matchlocation.x + g_tem.cols () ، matchlocation.y + g_tem.rows ()) ، المسكور الجديد (0 ، 0 ، 0 ، 0)) ؛ imgcodecs.imwrite ("f: //match.jpg" ، g_src) ؛ } صورة المصدر:
صورة قالب:
نتيجة المباراة:
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.