Halcon学习教程 之提取十字线中心 图像分割

Posted aircraft

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Halcon学习教程 之提取十字线中心 图像分割相关的知识,希望对你有一定的参考价值。

  原文作者:aircraft

  原文链接:https://www.cnblogs.com/DOMLX/p/17266405.html

  

 

废话不多说,因为毕业后工作原因比较忙,好久没更新博客了,直接上图。。。

 

 

上图有个十字线,我们要提取出十字线的中心(Hhhh这个线是我随手画的 没画直!!)

第一步:肯定是读取图像进行灰度提取处理啦。

 

 

 

目前我们已经把十字线提取出来了。

 

第二步:单独提取横线和竖线的区域出来

 

 

 

 

 

这里提取有很多种方法,我们用的是开运算,通过控制滤波核的尺寸将横线,和竖线都进行一次单独的过滤。这样我们就分别得到了十字线的横线区域

 

和竖线区域了。

 

 

 

第三步:求两线的交集部分即十字线的交点位置

 

 

 

 

 

那么这里我们就将十字线的中心提取出来了。然后可以看看中心的坐标位置是什么

 

 

 

 

 

代码如下:

 

 

read_image (Image, \'C:/Users/xujh131042/Pictures/十字线.PNG\')
threshold(Image, Region, 0, 10)


opening_rectangle1 (Region, RegionOpening1, 1, 5)
opening_rectangle1 (Region, RegionOpening2, 5, 1)

intersection (RegionOpening1, RegionOpening2, RegionIntersection)

area_center (RegionIntersection, Area, Row, Column)

 

 

当然这里也可以用局部阈值分割来提取出十字线

 

 

 

代码如下:

read_image (Image, \'C:/Users/xujh131042/Pictures/十字线.PNG\')
mean_image (Image, ImageMean, 6, 6)
dyn_threshold (Image, ImageMean, RegionDynThresh, 5, \'dark\')

opening_rectangle1 (RegionDynThresh, RegionOpening1, 1, 5)
opening_rectangle1 (RegionDynThresh, RegionOpening2, 5, 1)

intersection (RegionOpening1, RegionOpening2, RegionIntersection)

area_center (RegionIntersection, Area, Row, Column)

 

 

 

 

 

 

 

 

 

若有兴趣交流分享技术,可关注本人公众号,里面会不定期的分享各种编程教程,和共享源码,诸如研究分享关于c/c++,python,前端,后端,opencv,halcon,opengl,机器学习深度学习之类有关于基础编程,图像处理和机器视觉开发的知识

 

以上是关于Halcon学习教程 之提取十字线中心 图像分割的主要内容,如果未能解决你的问题,请参考以下文章

Halcon学习(车牌识别)

如何使用halcon ,从下图中提取红色区域,

halcon中涉及的图像处理十大理论知识

Halcon之计算距离算子

想学习halcon需要啥基础

halcon怎么求提取轮廓亚像素点