选择2D测量的工具
上图中显示可用于2D测量的工具大概有三种,我们需要根据需要提取的特征和对象在图像中的外观选择合适的工具。
根据特征选工具
计算面积
area_center计算区域的面积
area_center_xld 或者area_center_points_xld计算轮廓包含的面积。
area_holes计算输入区域内孔的面积
在计算区域的面积时,会考虑区域中可能存在的空穴,而在计算轮廓的面积时,得到由轮廓包围的整个面积。在后者中,还必须提取孔的轮廓,得到它们的面积,并从外轮廓包围的区域中减去它们。
计算方向和角度
orientation_region计算区域的方向
orientation_xld计算轮廓的方向
elliptic_axis 和elliptic_axis_xld计算与区域或轮廓具有相同方向和纵横比的椭圆的两个半径和方向
elliptic_axis_gray用于非常小的对称的区域
smallest_rectangle2 smallest_rectangle2_xld: 任意方向的最小封闭矩形的中心位置、方向和两个半径
orientation_region 和 smallest_rectangle2都是用于计算方向但是方法不一样,orientation_region 基于elliptic_axis计算椭圆方向。除了方向的不同值外,返回值的范围也不同。orientation_region返回范围为- 180到180的方向,而对于smallest_rectangle2方向将在- 90到90的范围内返回。orientation_region360度的范围只适用于非对称对象,对称对象将会翻转180度。
如果是拟合轮廓到基本形状,可以查看对应的算子。如2D测量之2所示
如果形状相当复杂并且是刚性的,在不同图片上计算形状的方向,可以用模板匹配的方法。