组合边缘提取和亚像素边缘提取

组合边缘提取

组合边缘就是去提取图片的边缘,算子包含canny算法其中包含高斯平滑+梯度计算+NMS+双阈值。

read_image (Image, 'fabrik')

edges_image (Image, ImaAmp, ImaDir, 'canny', 1, 'nms', 20, 40)
* 参数2 输出边沿幅度图像
* 参数3 输出带方向的图像 输出边缘的角度图范围[0-2]
* 参数4 canny算法 包含高斯平滑+梯度计算+NMS+双阈值
      * lanser1 抗噪能力更强
      * sobel_fast 快速边缘
* 参数5 高斯平滑的程度 值越小 平滑程度越强。值越大平滑程度越弱
* 参数6 nms 是否启用非极大值的抑制作用,nms 开启,none 不开启
* 参数7 低阈值 低于低阈值将排除掉
* 参数8 高阈值 高于此值为强边缘 低阈值一般是高阈值的1/3或者1/2
Image
ImaAmp
ImaDir

 后面我们可以进行阈值过滤,并把骨骼轮廓转成轮廓;以下代码为例子:

threshold (ImaAmp, Region, 1, 255)
skeleton (Region, Skeleton)
gen_contours_skeleton_xld (Skeleton, Contours, 10, 'filter')
* filter 过滤 把轮廓长度小于10过滤掉了,如果1 保留所有的轮廓读点
dev_display (Contours)
Region
Skeleton
Contours

 亚像素边缘提取

在Halcon中,进行亚像素边缘提取通常涉及到使用图像分析的高级功能,特别是当图像中的边缘细节非常精细时。以下是使用Halcon进行亚像素边缘提取的步骤和使用说明:

read_image (Image, 'fabrik')
* 亚像素边缘提取
edges_sub_pix (Image, Edges, 'canny', 1, 20, 40)

* 展示部分
dev_set_part (324, 284, 511, 511)
dev_display (Image)
dev_display (Edges)
Image
Edges
展示不分:Image
展示部分:Edges

亚像素边缘提取使用的是亚像素,它和物理像素是有区别的:

物理像素:

  1. 数字图像由离散的像素点组成
  2. 每个像素代表图像传感器上的一个感光单元
  3. 传统边缘检测只能定位到整数像素位置

亚像素:

  1. 通过数学方法在像素之间进行插值计算
  2. 可以将边缘、特征点等定位到像素内部的位置
  3. 典型精度可达0.1像素甚至更高
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值