Halcon算子:最小外包矩形
本文最后更新于:2022年5月29日 上午
smallest_rectangle1() 和 smallest_rectangle2()
Halcon算子: smallest_rectangle1() 和 smallest_rectangle2()
介绍
smallest_rectangle1(Regions : : : Row1, Column1, Row2, Column2)
功能:返回平行坐标最小外包矩形
该算子计算返回输入区域的平行于坐标系的最小外包矩形。该矩形是关于区域中心计算的最小平行外包。
返回参数:
Row1, Column1:矩形中心点的坐标。
Row2, Column2:矩形右下角的点坐标。
smallest_rectangle2 (Regions , Row, Column, Phi, Length1, Length2)
功能:返回最小外包矩形
该算子返回输入区域的最小外包矩形,该矩形是关于区域中心计算的最小外包面积矩形。
返回参数:
Row, Column :矩形中心点坐标
Phi:最小包围矩形的长边与图像坐标系x轴的夹角(弧度值),x轴逆时针方向角度为正,顺时针方向角度为负。 范围:
-pi / 2 < Phi && Phi <= pi / 2
Length1, Length2:长边和短边。(长边Length1>短边Length2) Length2 >= 0.0 && Length2 <= Length1
示例
原图:
smallest_rectangle1()
处理结果smallest_rectangle2()
处理结果halcon代码:
smallest_rectangle1()
1
2
3
4
5
6
7
8
9
10read_image (Image, 'test.png')
* 使用全局阈值分割图像
threshold (Image, thresholdRegion, 0, 160)
* 将区域进行分开
connection (thresholdRegion, ConnectedRegions)
* 最小外接矩形处理
smallest_rectangle1(thresholdRegion, row1, column1, row2,column2)
gen_rectangle1 (Rectangle, row1, column1, row2,column2)
stop()
return ()smallest_rectangle2()
1
2
3
4
5
6
7
8
9
10
11read_image (Image, 'test.png')
* 使用全局阈值分割图像
threshold (Image, thresholdRegion, 0, 160)
* 将区域进行分开
connection (thresholdRegion, ConnectedRegions)
* 最小外接矩形处理
smallest_rectangle2 (ConnectedRegions, minRow, midColumn, angle, Length1, Length2)
* 显示
gen_rectangle2_contour_xld (Rectangle, minRow, midColumn, angle, Length1, Length2)
stop()
return ()