HALCON示例程序count_pellets.hdev分割豆子,基本形态学的使用

HALCON示例程序count_pellets.hdev分割豆子,基本形态学的使用

示例程序源码(加注释)

  • 关于显示类函数解释
    dev_update_off ()
    read_image (Image, ‘pellets’)
    dev_close_window ()
    get_image_size (Image, Width, Height)
    dev_open_window (0, 0, Width, Height, ‘black’, WindowID)
    dev_set_part (0, 0, Height - 1, Width - 1)
    set_display_font (WindowID, 16, ‘mono’, ‘true’, ‘false’)
    dev_set_colored (6)
    dev_set_draw (‘margin’)
    dev_set_line_width (3)
    dev_display (Image)
    disp_message (WindowID, ‘Detect each single pellet’, ‘window’, 12, 12, ‘black’, ‘true’)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 之前介绍binary_threshold 算子的文章
    binary_threshold (Image, LightRegion, ‘max_separability’, ‘light’, UsedThreshold)
  • 使用圆形元素进行开运算
    opening_circle (LightRegion, Region, 3.5)
    dev_display (Region)
    disp_message (WindowID, ‘First, segment the pellets’, ‘window’, 12, 12, ‘black’, ‘true’)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 筛选出直接分割连通域的错误演示,因为这个时候还有豆子黏连在一起。
    connection (Region, ConnectedRegionsWrong)
    dev_display (Image)
    dev_display (ConnectedRegionsWrong)
    disp_message (WindowID, ‘Simple connection fails’, ‘window’, 12, 12, ‘black’, ‘true’)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用圆形元素进行腐蚀运算
    erosion_circle (Region, RegionErosion, 7.5)
    dev_display (Image)
    dev_display (RegionErosion)
    disp_message (WindowID, ‘Erosion of the pellet regions’, ‘window’, 12, 12, ‘black’, ‘true’)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 现在进行连通域分割
    connection (RegionErosion, ConnectedRegions)
    dev_display (Image)
    dev_display (ConnectedRegions)
    disp_message (WindowID, ‘Perform connection now’, ‘window’, 12, 12, ‘black’, ‘true’)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 恢复豆子原本区域,使用圆形元素进行膨胀。
    dilation_circle (ConnectedRegions, RegionDilation, 7.5)
  • 对区域进行计数
    count_obj (RegionDilation, Number)
    dev_display (Image)
    dev_display (RegionDilation)
    disp_message (WindowID, Number + ’ pellets detected’, ‘window’, 12, 12, ‘black’, ‘true’)

处理思路

这个例子是主要讲解了形态学在分割连通域当中的应用。dilation_circle 、erosion_circle 、opening_circle 。

后记

大家有什么问题可以向我提问哈,我看到了第一时间回复,希望在学习的路上多多结交良师益友。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/255183.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

绝对路径VS相对路径

绝对路径:不必赘述,就是从盘符开始写直到找到你所需要的文件为止,把所有的目录写完整即可。但是在做网站的时候绝对不推荐用绝对路径,因为不可能服务器中的路径和在做设计时候所用的电脑的路径一致,也不可能说在服务器…

四、极大似然参数估计

四、极大似然参数估计 此篇博文,玉米将和大家分享一下“张氏标定”除几何推导外的另外一大精髓:参数估计。 张教授在大作“A Flexible New Technique for Camera Calibration”中的原话如下:” The above solution is obtained through minim…

xtrabackup安装使用

2019独角兽企业重金招聘Python工程师标准>>> 【MySQL】xtrabackup安装使用 拾荒者charley 关注 2018.03.19 09:19 字数 186 阅读 17评论 0喜欢 0 前言:说到MySQL备份,主要采用的方法无非就是mysqldump/mysqldumper以及我们今天要说的热备利器…

HALCON示例程序crystal.hdev通过局部阈值处理和区域处理提取六角形晶体

HALCON示例程序crystal.hdev通过局部阈值处理和区域处理提取六角形晶体 示例程序源码(加注释) 关于显示类函数解释 dev_close_window () dev_update_window (‘off’) read_image (Image, ‘crystal’) get_image_size (Image, Width, Height) dev_ope…

2017/3/10 morning

转载于:https://www.cnblogs.com/bgd140206325/p/6529497.html

六、张正友标定法小结

六、张正友标定法小结 这一博文,是玉米后补上的。因为觉得前面用了三篇博文来描述张氏标定法,略显散乱。在这里总结一下,使条理清晰一点。另外关于张氏标定所得参数也还有两点需要澄清。下面这个总结,其实也是在“A Flexible New …

SqlServer图形数据库初体验

SQL Server2017新增了一个新功能叫做图形数据库。图形指的拓扑图形,是一些Node表和Edge表的合集,Node对应关系数据库中的实体,比如一个人、一个岗位等,Edge表指示Node之前的关系,比如张三在经理岗位。图形表比较适合用…

HALCON示例程序dem_trees.hdev提取树

HALCON示例程序dem_trees.hdev提取树 示例程序源码(加注释) 关于显示类函数解释 dev_close_window () read_image (Mreut, ‘mreut_y’) read_image (MreutDem, ‘mreut_dgm_2.0’) get_image_size (Mreut, Width, Height) dev_open_window (0, 0, Wid…

Oracle CASE WHEN 用法介绍

1. CASE WHEN 表达式有两种形式 --简单Case函数 CASE sex WHEN 1 THEN 男 WHEN 2 THEN 女 ELSE 其他 END --Case搜索函数 CASEWHEN sex 1 THEN 男 WHEN sex 2 THEN 女 ELSE 其他 END 2. CASE WHEN 在语句中不同位置的用法 2.1 SELECT CASE WHEN 用法 SELECT grad…

Golang 处理 Json(二):解码

golang 编码 json 还比较简单,而解析 json 则非常蛋疼。不像 PHP 一句 json_decode() 就能搞定。之前项目开发中,为了兼容不同客户端的需求,请求的 content-type 可以是 json,也可以是 www-x-urlencode。然后某天前端希望某个后端…

五、畸变矫正—让世界不在扭曲

五、畸变矫正—让世界不在扭曲 这篇博文所要讲述的内容,是标定的主要用途之一:矫正摄像机的畸变。对于图像畸变矫正的方法,张正友教授也在其大作“A Flexible New Technique forCamera Calibration”中给出。 玉米在这里先为大家介绍一下&…

第二阶段个人冲刺08

昨天做了什么? 解决新建项目时会遇到“Your android sdk is out of date or is missing templates”的问题,,实现学生交流区,只有学生和管理员有权查看,教师无权查看的功能 今天要做什么? 实现学生交流区&a…

HALCON示例程序distance_transform.hdev通过distance_transform检测线的缺陷

HALCON示例程序distance_transform.hdev通过distance_transform检测线的缺陷 示例程序源码(加注释) 关于显示类函数解释 dev_close_window () dev_open_window (0, 0, 400, 400, ‘black’, WindowHandle)通过一系列的坐标点生成多边形像素轮廓 gen_re…

java面试-Java并发编程(二)——重排序

当我们写一个单线程程序时,总以为计算机会一行行地运行代码,然而事实并非如此。 什么是重排序? 重排序指的是编译器、处理器在不改变程序执行结果的前提下,重新排列指令的执行顺序,以达到最佳的运行效率。 重排序分类 …

《MySQL必知必会》[01] 基本查询

《MySQL必知必会》(点击查看详情)1、写在前面的话这本书是一本MySQL的经典入门书籍,小小的一本,也受到众多网友推荐。之前自己学习的时候是啃的清华大学出版社的计算机系列教材《数据库系统概论》,基础也算是半罐水&am…

(七)立体标定与立体校正 【计算机视觉学习笔记--双目视觉几何框架系列】

七、立体标定与立体校正 这篇博文中,让玉米和大家一起了解一下,张氏标定是怎样过渡到立体标定的?在这里主要以双目立体视觉进行分析。对于双目立体视觉,我们有两个摄像头。它们就像人的一双眼睛一样,从不同的方向看世界…

HALCON示例程序edge_segments.hdev提取连续的边缘段

HALCON示例程序edge_segments.hdev提取连续的边缘段 示例程序源码(加注释) 关于显示类函数解释 dev_update_off () dev_close_window () read_image (Image, ‘mreut’) get_image_size (Image, Width, Height) dev_open_window_fit_image (Image, 0, 0…

让 jQuery UI draggable 适配移动端

背景: 在移动端,本人要实现对某个元素的拖动,想到使用 jQuery UI 的 draggable 功能。但是发现此插件的拖动只支持PC端,不支持移动端。 原因: 原始的 jQuery UI 里,都是mousedown、mousemove、mouseup来描述…

LAMP(7限定某个目录禁止解析php、 限制user_agent、 PHP相关配置、PHP扩展模块

限定某个目录禁止解析php防止***上传一个目录文件php&#xff0c;网站会从而解析php,对我们的网站有很大的危险。因此&#xff0c;我们需要在能上传文件的目录直接禁止解析PHP代码禁止步骤1.编辑虚拟主机配置文件&#xff1a;增添内容核心配置文件内容<Directory /data/wwwr…

编译器的功能是什么

1、编译器就是将“一种语言&#xff08;通常为高级语言&#xff09;”翻译为“另一种语言&#xff08;通常为低级语言&#xff09;”的程序。一个现代编译器的主要工作流程&#xff1a;源代码 (source code) → 预处理器(preprocessor) → 编译器 (compiler) → 目标代码 (obje…