CÃlimos 2023-02-15 22:16 采纳率: 66.7%
浏览 13
已结题

halcon图像处理 如何让线条膨胀

刚学halcon 编写一个程序 识别方框内有没有打钩痕迹 目前是想让有黑色钩痕的线条膨胀 以此来突出和空白区域的对比 但不知道算法怎么让黑色线条膨胀 这个区域很小 10*10像素

  • 写回答

3条回答 默认 最新

  • 洗一家三口 2023-02-16 05:50
    关注

    要让黑色线条膨胀,可以使用Halcon中的形态学运算,具体来说是使用膨胀运算。

    膨胀运算可以扩大二值图像中的前景(即黑色线条)部分,使其更容易被识别。在Halcon中,使用dilation1函数进行膨胀运算。

    下面是一个示例代码,其中假设您已经将图像处理为二值图像,并且黑色线条区域的面积较小(10*10像素):

    read_image(Image, 'your_image.jpg') // 读入图像
    threshold(Image, BinaryImage, 128, 255) // 将图像二值化
    gen_rectangle1(Rectangle, Row, Column, Row+Height, Column+Width) // 生成一个矩形ROI,以包含可能的黑色线条
    reduce_domain(BinaryImage, Rectangle, ImageReduced) // 缩小ROI
    dilation1(ImageReduced, ImageDilated, 10, 10) // 对ROI进行膨胀运算,10x10像素的结构元素

    代码中的gen_rectangle1函数用于生成一个矩形ROI,以包含可能的黑色线条。您需要根据实际情况调整矩形的位置和大小。reduce_domain函数用于缩小ROI,以便加速膨胀运算的计算。dilation1函数对ROI进行膨胀运算,结构元素的大小为10x10像素。

    运行以上代码后,ImageDilated中的黑色线条区域应该比原来更加突出,可以更容易地进行后续的识别操作。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月8日
  • 已采纳回答 2月28日
  • 创建了问题 2月15日

悬赏问题

  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加