勇哥偶尔一篇贴子中见到用开运算做目标检测,这个思路感觉还是很稀奇的。原贴只是一张示例图片,我编写了一段演示代码以方便大家阅读。原文介绍只是一张图片,其中Structuring element指的是开运算指定结构元素,图中右半部分说是利用Opening算子可以在图中检索出和结构元素类似的部分。halcon的开运算有许多算子,可以使用结构元素的有:opening(Region, StructElement : RegionOpening : : )minkow
阈值分割引言C#阈值分割有非常多的算法,大体上分为全局和局部算法。
全局算法包括全局固定阈值和基于图像直方图的阈值,局部算法包括局部动态阈值分割。
基于图像直方图阈值分割的方法也有很多,比如常规的高斯滤波双峰法,OTSU大津法。
但是这类所有的法都基于一个假设:图像是有前景和背景的,待分割目标处于背景中,即图像直方图是双峰的。
如果因为非均匀光照导致待分割目标不处于背景或前景中,即图像直方图无双峰,
那么基于图像直方图的所有法都是不甚理想的
只能在此基础上进行一定的变换,例如nbl算
说明:模板匹配是halcon的强项,opencv自带的模板匹配算子跟halcon这个比起来差好几层楼那么多。
在视觉引导定位时,模板匹配是少不了的东西。
所有的新手在遇到阈值搞不定的应用时,都会想到模板匹配,可见其概念和易用性已经深入人心。
但实际上halcon的模板匹配的知识点还是很多的,并非仅仅是我们常见的形态模板匹配。
勇哥这个系列贴子用来补全halcon模板匹配的相关系列知识。使用基于描述符的模板匹配在图片序列中寻找不同姿式的饼干盒子这个例子展示了如何使用基于描述符的匹配特性找到
先上代码:* This example program shows how to use optical_flow_mg to compute the optical flow in an image sequence and how to segment the op
勇哥注: 这个例子主要是演示了形态模板的定位功能,测量框随着图像旋转与移位而保持相对位置不改变。这是个优秀的例子,值得新手一看。================================这个示例程序演示了如何使用形态模板匹配来定位对象。此外,还介绍了如何利用检测到的物体的位置和旋转来构造检测任务的搜索空间。在这个特定的例子中,IC上的打印文字信息用于查找IC。从找到的位置和旋转角度,构造了两个测量矩形来测量IC引线之间的间距。由于本例中使用的照明,引线在多个位置和旋转处具有255的饱和灰度
这个示例程序演示了如何为截面的每个像素计算沿其主轴的区域的厚度。厚度定义为等高线交点与各点(相距最远)主轴垂线之间的距离。这个示例程序首先通过确定预定义灰度值的连接分量来确定区域。然后计算了该区域的厚度,并对其主轴进行了可视化计算。厚度在单独的窗口中绘制dev_update_off ()
dev_close_window ()
read_image (Image, 'screw_thread')
WindowWidth
请看下面的例子:dev_clear_window ()
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
gen_circle_contour_xld (ContCircle, 200, 200, 100, 0, 6.28318,&nb
测试图:测试代码:read_image (Image, 'C:/Users/斌/Desktop/test.png')
binary_threshold (Image, Region, 'max_separability', 'dark', UsedThreshold)
*转骨架
skeleton (Region, Skeleton)
*骨架转xld
勇哥注:图片过滤器是一切缺陷检测、边缘提取、图片分割前处理、分类器应用等等的基础。有很重要的研究意义。因此勇哥会写成一个系列贴子以和大家一起分享。-正文---------------------------------------------------------------------下面是官方文档,勇哥把它编辑了一下做为本系列贴子的第一篇。它先介绍一下halcon的过滤器使用reduce_domain图像要注意的问题。最后再介绍halcon的全部常见的过滤器(按功能分类)图像过滤器应用re
勇哥注:图片过滤器是一切缺陷检测、边缘提取、图片分割前处理、分类器应用等等的基础。有很重要的研究意义。因此勇哥会写成一个系列贴子以和大家一起分享。-正文---------------------------------------------------------------------highpass_image 从图像中提取高频分量。签名highpass_image(Image : Highpass : Width, Heigh