Halcon教程十一:小球识别,初识腐蚀与膨胀,开运算和闭运算
在前面的博客里面
我有发布过两个例子
一个是识别条码 一个是识别回形针个数和方向
识别条码用到了内置的算子
create_bar_code_model
halcon这个算子还是蛮强大的
我当时用工业相机去实时采集 很多拍下来的条码都能显示正确
既然后面涉及到了个数的识别
然后我想看更多的例子
好的 这个时候 我们点击一下halcon示例
在搜索栏输入 count
可以看到 关于个数的识别 halcon有三个示例程序
给大家翻译一下哈
第一个是识别瓶子个数,可以看到是用瓶口来识别的
第二个是识别鱼条个数(我不知道是什么,感觉想在识别超市里卖的小香肠)
第三个是识别小球,或者说是小石头什么的吧
那么在识别糖豆的时候接触到了两个很有意思的函数
腐蚀与膨胀
在识别中 :这是一个非常重要的概念
大家可以看图中紧挨着的小球
当我们直接去识别的时候
截图来自教程三
用connect 函数进行区域连通处理
这些紧挨着的小球 会被识别成一个
后面如果直接获取个数对象 那么这些玩意是识别不出来的
当然如果你给的识别区域面积足够大 他们会被识别成一个
这个时候 我们需要做一件什么事情呢
那就是进行开运算
那就介绍一下开运算和闭运算吧
不对 应该先介绍腐蚀与膨胀
膨胀操作会扩大(粗化)图像中物体的轮廓,可以用来弥补(填充)物体间的孔洞,强化离散点,代价是导致物体的面积比原来的面积要大。
腐蚀操作会收缩(细化)图像中物体的轮廓,可以用来断开(分离)物体间的连接,消除离散点,代价是导致物体的面积比原来的面积要小。
开运算是使用同一结构元素对图像进行先腐蚀后膨胀的操作,可以用来平滑物体的轮廓,断开物体间较窄的连接,消除物体边沿尖锐的突出部分。
闭运算是使用同一结构元素对图像进行先膨胀后腐蚀的操作,可以用来修正物体的轮廓,填充物体间较窄的连接。
直接看文字应该只能理解一般 那我们图文并茂
第一张是原图
第二张进行了腐蚀操作
第三张进行了 膨胀操作
就行进行了我们所说的开运算
现在大家可以看到 图一中那些最开始连接着的小球
到了第三张图去还原的时候全部都分开识别了
原halcon示例太长 我们取核心代码
read_image (Image, 'pellets')
get_image_size (Image, Width, Height)
binary_threshold (Image, LightRegion, 'max_separability', 'light', UsedThreshold)
opening_circle (LightRegion, Region, 3.5)
connection (Region, ConnectedRegionsWrong)
erosion_circle (Region, RegionErosion, 7.5)
connection (RegionErosion, ConnectedRegions)
dilation_circle (ConnectedRegions, RegionDilation, 7.5)
count_obj (RegionDilation, Number)
解释一下他的操作
打开图片
进行二值化阈值处理
使用开运算筛选半径大于3.5的圆形
然后进行连通处理
然后进行腐蚀操作分开小球
然后进行连通处理 小球分开
然后在进行膨胀操作 进行还原
然后数个数
这样就是完整的操作流程了
图像识别其实需要的知识面挺广的
我们这些小打小闹只是做一个入门的操作
熟悉了一下Halcon
当我们遇到更加有难度的图像时
我们该如何去识别
那就需要更多的知识体系了
我最近也开始看一本书了
准备把重点 给大家记录下来
让大家学习起来更轻松
有难度的事情就交给我吧!
如果要学习Halcond的话可以关注一下我哦
Halcon教程十一:小球识别,初识腐蚀与膨胀,开运算和闭运算相关推荐
- 【OpenCV入门教程之十一】 形态学图像处理(二):开运算、闭运算、形态学梯度、顶帽、黑帽合辑
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/23184547 作者:毛星云(浅墨) ...
- Halcon形态学处理-腐蚀、膨胀、开运算、闭运算、顶帽运算和底帽运算
提示:文章参考了网络上其他作者的文章,以及相关书籍,如有侵权,请联系作者. 文章目录 前言 一.腐蚀和膨胀 1.腐蚀 2.膨胀 二.开运算和闭运算 1.开运算 2.闭运算 三.顶帽运算和底帽运算 1. ...
- OpenCV 形态学操作之腐蚀与膨胀,开运算与闭运算,顶帽与黑帽,图像梯度运算相关知识点回顾
Python OpenCV 365 天学习计划,与橡皮擦一起进入图像领域吧.本篇博客是这个系列的第 45 篇. 该系列文章导航参考:https://blog.csdn.net/hihell/categ ...
- MATLAB_4-形态学_腐蚀_膨胀_灰度图的腐蚀以及膨胀_开运算_闭运算_文章末尾有几个素材例子
素材链接: MATLAB_4-形态学_课程需要的素材 记住单词拼写: 腐蚀 erode 膨胀 dilate 开运算 open 闭运算 close 图像重建 imreconstruct reconstr ...
- 形态学处理:膨胀、腐蚀、开运算、闭运算、形态学梯度、顶帽、黑帽
形态学处理 一 膨胀 二 腐蚀 三 开运算 四 闭运算 五 形态学梯度 六 顶帽 七 黑帽 形态学处理 一 膨胀 代码: #include <opencv2/core/core.hpp> ...
- python opencv 腐蚀_opencv 图像的腐蚀(erode)和膨胀(dilate) 开运算以及闭运算
原文链接:opencv 图像的腐蚀(erode)和膨胀(dilate) 开运算以及闭运算 OpenCV---开闭操作 - 山上有风景 - 博客园 腐蚀 : 腐蚀操作会把前景物体的边缘腐蚀掉.原理是卷积 ...
- python 简单图像处理(13) 二值图腐蚀和膨胀,开运算、闭运算
原文:http://www.cnblogs.com/xianglan/archive/2010/12/29/1921211.html python 简单图像处理(13) 二值图腐蚀和膨胀,开运算.闭运 ...
- 图像形态学概要-腐蚀、膨胀、开运算、闭运算、形态学梯度(形态学边缘提取)、顶帽操作、黑帽操作
图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 图像处理开发资料.图像处理技术交流请加QQ群,群号 271891601 图像形态学中两种最基本的操作就是对图形的腐蚀和膨 ...
- 开运算和闭运算_OpenCV计算机视觉学习(5)——形态学处理(腐蚀膨胀,开闭运算,礼帽黑帽,边缘检测)...
Fly-AI竞赛服务平台 flyai.com 在开始学习之前推荐大家可以多在FlyAI竞赛服务平台多参加训练和竞赛,以此来提升自己的能力.FlyAI是为AI开发者提供数据竞赛并支持GPU离线训练的一站 ...
- OpenCV_05 形态学操作:连通性+腐蚀和膨胀+开闭运算+礼帽和黑帽
1 连通性 在图像中,最小的单位是像素,每个像素周围有8个邻接像素,常见的邻接关系有3种:4邻接.8邻接和D邻接.分别如下图所示: 4邻接:像素p(x,y)的4邻域是:(x+1,y):(x-1,y): ...
最新文章
- 字节跳动小程序接入支付功能
- Django model查询之F,Q操作
- Boost:用成员函数测试bind <void>
- python邮件转发_把Gmail邮件转发到gtalk的Python方法
- 如何在Jackson中使用PropertyNamingStrategy
- 在ASP.NET中自动给URL地址加上超链接(好东东)
- 智慧交通day04-特定目标车辆追踪03:siamese在目标跟踪中的应用-SiamRPN++(2019)
- nginx https透明代理_nginx正向https代理配置
- hibernate4调用mysql存储过程_Hibernate4.x执行mysql的存储过程
- Linux的java配置及tomcat的启动
- VB6 用ODBC连接数据库
- python-selenium 自动化弹幕
- yum安装hypo插件
- 【PM】产品需求文档PRD的一般格式
- 对于计算机了解的知识,学电脑应该了解哪些基本知识
- [开源工具]2022/2023 分享好用的免费的云短信/临时短信[Temp Message]
- Java九十条经验法则之第二条:遇到多个构造器时要考虑使用构建器
- 计算方法(四):插值与拟合
- echarts可视化市级地图详细版(vue+element)
- soc(三) 电源管理