图像轮廓之形状匹配
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像轮廓之形状匹配相关的知识,希望对你有一定的参考价值。
参考技术A Hu矩是归一化中心矩的线性组合。Hu矩在图像旋转、缩放、平移等操作后,仍能保持矩的不变性,所以经常会使用Hu距来识别图像的特征。在OpenCV中,使用函数cv2.HuMoments()可以得到Hu距。该函数使用cv2.moments()函数的返回值作为参数,返回7个Hu矩值。
函数cv2.HuMoments()的语法格式为:
式中返回值hu,表示返回的Hu矩值;
参数m,是由函数cv2.moments()计算得到矩特征值。
我们可以通过Hu矩来判断两个对象的一致性。为了更直观方便地比较Hu矩值,OpenCV提供了函数cv2.matchShapes(),对两个对象的Hu矩进行比较。
函数cv2.matchShapes()允许我们提供两个对象,对二者的Hu矩进行比较。这两个对象可以是轮廓,也可以是灰度图。不管是什么,cv2.matchShapes()都会提前计算好对象的Hu矩值。
函数cv2.matchShapes()的语法格式为:
式中retval是返回值。
该函数有如下4个参数:
【例12.10】使用函数cv2.matchShapes()计算三幅不同图像的匹配度。
输出结果
不相似图像的matchShape= 0.012935752303635195
从以上结果可以看出:
以上是关于图像轮廓之形状匹配的主要内容,如果未能解决你的问题,请参考以下文章
opencvsharp_基于轮廓的形状匹配中匹配坐标与旋转角度