halcon算子之根据霍夫变换在图像中寻找直线

该博客介绍了如何在Halcon中通过霍夫变换寻找图像中的直线。首先读取图像并进行剪切,然后使用sobel_amp算子获取边缘,通过阈值和连通操作得到边缘区域。接着,应用hough_lines算子找到直线,并基于方向特征筛选出所需直线。最后展示结果。主要涉及的算子包括:read_image、rectangle1_domain、sobel_amp、threshold、connection、select_shape、hough_lines等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

*读取一张图像
read_image (Image, ‘矩形’)

get_image_size (Image, Width, Height)

dev_open_window (0, 0, Width, Height, ‘black’, WindowHandle)

*剪切指定矩形的图像
rectangle1_domain (Image, ImageReduced, 76, 120.938, 464.875, 966.813)

  • 寻找图像中矩形的边缘
    sobel_amp (ImageReduced, EdgeAmplitude, ‘thin_sum_abs’, 3)

  • 设置输出对象颜色
    dev_set_color (‘red’)

  • 对上面获取的边缘图像进行阈值操作
    threshold (EdgeAmplitude, Region, 10, 255)

  • 对阈值后的区域进行连通处理
    connection (Region, ConnectedRegions)

  • 根据面积过滤出图像中外矩形区域
    select_shape (ConnectedRegions, SelectedRegions, ‘area’, ‘and’, 2500, 99999)

  • 霍夫变换来寻找区域中的直线
    hough_lines (SelectedRegions, 4, 50, 5, 5, Angle, Dist)

  • 设置输出对象的颜色
    dev_set_color (‘blue’)

  • 将直线转换为区域
    gen_region_hline (Regions, Angle, Dist)

  • 根据方向特征来过滤想要的直线
    select_shape (Regions, SelectedRegions1, ‘orientation’, ‘and’, 1.5,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值