Halcon 5分钟学会9点标定 带图片示例、示例源码

9点标定应用流程

前置条件,相机焦距,视野固定高度和角度,光源光强度固定。

  1. 移动机械手,使用螺丝批头,在视野范围内的白纸上,点九个点,记录每个点位的位置,每个点位的顺序要和图像上获取的圆心数组顺序一致,此时得到9个点的世界坐标,x和y
  2. 个点分别的世界坐标记录完成后,机械手返回拍照位置。将步骤1中,9个点图片拍摄下来,并记录整张图片(含有9个点)时的世界坐标。记录整张图片(含有9个点)拍照坐标的原因:实际批头坐标与拍照相机坐标位置有误差,后续算出偏移后,还要减去拍照坐标与批头坐标的偏移,才得出最终位置
  3. Halcon 导入图片,对图片进行操作
    • 灰度化
    • 灰度筛选
    • 填充圆中缺失
    • 开操作,将圆形分离出来
    • 根据类圆特征获取圆形
    • 对获取到的每个圆形进行获取其最小外接圆,生成圆心坐标和半径
  4. 已知机械(世界坐标)和图片上的点位(像素坐标),根据公式得出偏移对象
  5. 后续根据实际图片中定位的目标像素坐标,和偏移图像,即可换算出机械手应该移动的实际机械坐标。

示例图片

lua 复制代码
dev_set_color('red')
read_image (Image, 'O:/草稿/test.jpg')

rgb1_to_gray (Image, GrayImage)
threshold (GrayImage, Regions, 13, 71)

*填充缺失
fill_up_shape (Regions, WiresFilled, 'area', 1, 100)

*开操作 腐蚀和膨胀的结合,即先腐蚀后膨胀
opening_circle (WiresFilled, Balls, 15.5)

connection (Balls, SingleBalls)

*找到具有目标特征的形状,这边填写的参数是 'circularity' ,就是类圆的图形;
select_shape (SingleBalls, IntermediateBalls, 'circularity', 'and', 0.85, 1.0)

*确定这些圆形区域的最小外接圆,并将输出的坐标和半径做处理后输出
smallest_circle (SingleBalls, Row, Column, Radius)

*生成 虚拟机械坐标 行往下偏移80
WorldRow := []
WorldCol :=[]

for Index := 0 to |Row|-1 by 1
    WorldRow[Index] := Row[Index]+80
    WorldCol[Index] := Column[Index]
    gen_circle (Circle, WorldRow[Index], WorldCol[Index], 10)
endfor

*生成标定
vector_to_hom_mat2d (Row, Column, WorldRow, WorldCol, HomMat2D1)

*设置目标机械坐标
gen_circle (Circle, 20, 100, 10)

*坐标转换  (Row3,Column3)像素坐标点位, (Qx,Qy)转换后的世界坐标
affine_trans_point_2d (HomMat2D1, 20, 100, Qx, Qy)

dev_set_color('green')
gen_circle (Circle, Qx, Qy, 10)

结果,红色大圆圈为像素坐标,红色小圆圈为机械坐标位置,绿色为目标实际机械坐标位置

相关推荐
gorgeous(๑>؂<๑)4 小时前
【ICLR26-Oral Paper-字节跳动】推理即表征:重新思考图像质量评估中的视觉强化学习
人工智能·深度学习·神经网络·机器学习·计算机视觉
啊阿狸不会拉杆4 小时前
《计算机视觉:模型、学习和推理》第 7 章-复杂数据密度建模
人工智能·python·学习·算法·计算机视觉·t分布·复杂数据密度建模
开开心心就好5 小时前
免费音频转文字工具,绿色版离线多模型可用
人工智能·windows·计算机视觉·计算机外设·ocr·excel·语音识别
咚咚王者6 小时前
人工智能之视觉领域 计算机视觉 第十二章 视频目标跟踪
人工智能·计算机视觉·音视频
啊阿狸不会拉杆6 小时前
《计算机视觉:模型、学习和推理》第 6 章-视觉学习和推理
人工智能·学习·算法·机器学习·计算机视觉·生成模型·判别模型
芯门7 小时前
FPGA商用级ISP(三):自动白平衡(AWB)算法实现与 FPGA 架构解析
图像处理·计算机视觉·fpga开发
挂科边缘17 小时前
YOLOv12环境配置,手把手教你使用YOLOv12训练自己的数据集和推理(附YOLOv12网络结构图),全文最详细教程
人工智能·深度学习·yolo·目标检测·计算机视觉·yolov12
咚咚王者21 小时前
人工智能之视觉领域 计算机视觉 第十章 图像直方图
人工智能·opencv·计算机视觉
向哆哆1 天前
白血病细胞与正常细胞识别数据集:医学影像与智能诊断的细胞分析数据
人工智能·目标检测·计算机视觉
youcans_1 天前
【跟我学YOLO】YOLO26(3)安装配置与快速使用
图像处理·yolo·目标检测·计算机视觉·环境配置