Halcon示例之求一个矩形四个角点坐标的八种方法

简介: Halcon示例之求一个矩形四个角点坐标的八种方法

http://www.ihalcon.com/read-12547.html

gen_image_const (Image, 'byte', 512, 512)
get_domain (Image, Domain)
paint_region (Domain, Image, ImageResult1, 100, 'fill')
gen_rectangle1 (ROI_0, 204.77, 124.164, 278.986, 347.643)
paint_region (ROI_0, ImageResult1, ImageResult, 255, 'fill')
binary_threshold (ImageResult, Region, 'max_separability', 'light', UsedThreshold)
*已知矩形 求矩形四个顶点坐标
**方法一
get_region_polygon (Region, 5, Rows, Columns)
gen_cross_contour_xld (Cross, Rows, Columns, 60, 0.785398)
**方法二
gen_contour_region_xld (Region, Contours, 'border')
gen_polygons_xld (Contours, Polygons, 'ramer', 2)
get_polygon_xld (Polygons, Row, Col, Length, Phi)
gen_cross_contour_xld (Cross, Row, Col, 60, 0.785398)
**
get_lines_xld (Polygons, BeginRow, BeginCol, EndRow, EndCol, Length1, Phi1)
*********
**方法三
smallest_rectangle2 (Region, Row2, Column1, Phi3, Length12, Length21)
gen_rectangle2_contour_xld (Rectangle, Row2, Column1, Phi3, Length12, Length21)
get_contour_xld (Rectangle, Row3, Col1)
gen_cross_contour_xld (Cross1, Row3, Col1, 60, Phi1)
***方法四**角点法***这里感谢管理员TreWan提供***@TreWan
 Size:=60
 Angle:=0
points_foerstner (ImageResult, 1, 2, 3, 200, 0.3, 'gauss', 'true', RowJunctions, ColJunctions, \
                  CoRRJunctions, CoRCJunctions, CoCCJunctions, RowArea, ColArea, CoRRArea, CoRCArea, CoCCArea)
gen_cross_contour_xld (CrossFoerstner, RowJunctions, ColJunctions, Size, Angle)
dev_display (ImageResult)
dev_display (CrossFoerstner)
stop ()
*
***方法五 Harris interest points detector
points_harris (ImageResult, 0.7, 2, 0.04, 0, RowHarris, ColHarris)
gen_cross_contour_xld (CrossHarris, RowHarris, ColHarris, Size, Angle)
dev_display (ImageResult)
dev_display (CrossHarris)
*
***方法六 Harris binomial interest points detector
points_harris_binomial (ImageResult, 5, 15, 0.04, 1000, 'on', RowHarrisBinomial, ColHarrisBinomial)
gen_cross_contour_xld (CrossHarrisBinom, RowHarrisBinomial, ColHarrisBinomial, Size, Angle)
dev_display (ImageResult)
dev_display (CrossHarrisBinom)
stop ()
*
***方法七 Sojka interest points detector
points_sojka (ImageResult, 9, 2.5, 0.75, 30, 90, 0.5, 'true', RowSojka, ColSojka)
gen_cross_contour_xld (CrossSojka, RowSojka, ColSojka, Size, Angle)
dev_display (ImageResult)
dev_display (CrossSojka)
stop ()
*
***方法八 Lepetit interest points detector
points_lepetit (ImageResult, 3, 1, 20, 35, 'interpolation', RowLepetit, ColLepetit)
gen_cross_contour_xld (CrossLepetit, RowLepetit, ColLepetit, Size, Angle)
dev_display (ImageResult)
dev_display (CrossLepetit)


image.png

相关文章
|
6月前
|
API C++ 计算机视觉
【opencv3】鼠标框选矩形并显示当前像素点坐标和矩形中心点坐标C++
【opencv3】鼠标框选矩形并显示当前像素点坐标和矩形中心点坐标C++
|
3月前
|
算法框架/工具 C++ Python
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
238 0
|
1月前
ThreeJs通过射线获取自己的点击位置坐标
这篇文章详细说明了如何使用Three.js来绘制线条,包括创建线几何体、设置材质以及将线条添加到3D场景中的具体步骤。
98 1
ThreeJs通过射线获取自己的点击位置坐标
|
6月前
|
计算机视觉
OpenCV(三十三):计算轮廓面积与轮廓长度
OpenCV(三十三):计算轮廓面积与轮廓长度
259 0
|
6月前
|
计算机视觉
OpenCV(三十四):轮廓外接最大、最小矩形和多边形拟合
OpenCV(三十四):轮廓外接最大、最小矩形和多边形拟合
472 0
|
6月前
|
计算机视觉
OpenCV(十三):图像中绘制直线、圆形、椭圆形、矩形、多边形和文字
OpenCV(十三):图像中绘制直线、圆形、椭圆形、矩形、多边形和文字
87 0
|
6月前
|
算法
[Halcon&几何] 矩形顶点和对角连线角度计算
[Halcon&几何] 矩形顶点和对角连线角度计算
132 0
|
定位技术
任意一张图片的CGCS2000坐标配准
任意一张图片的CGCS2000坐标配准
144 0
|
Java
判断顶点凹凸性、判断多边形的凹凸性、填充凹坑将凹多边形处理为凸多边形【java实现+原理讲解】
判断顶点凹凸性、判断多边形的凹凸性、填充凹坑将凹多边形处理为凸多边形【java实现+原理讲解】
248 0
判断顶点凹凸性、判断多边形的凹凸性、填充凹坑将凹多边形处理为凸多边形【java实现+原理讲解】
|
数据可视化 C++
高斯正反算—投影坐标转大地坐标、大地坐标转投影坐标(附有完整代码及测试结果)
高斯正反算—投影坐标转大地坐标、大地坐标转投影坐标(附有完整代码及测试结果)