按照例子的顺序学习方法,遇到新的函数会以加粗格式显示

*partical。hdev:Measurement of small particles

图片为医学颗粒成像,这里的图像处理主要是为了把颗粒的位置信息确定下来,如图,大颗粒很好确认,但是小颗粒的位置信息比较模糊,需要后续操作来提取:

先提取大颗粒然后提取出小颗粒的候选位置

dev_update_off()

dev_close_window()

dev_open_window(.......)

set_display_font(....)

read_image(..)

dev_display(...)

display message

....

stop()

threshold(Image,Large,110,255)

1   dilation_circle(Large,LargeDilation,7.5)

以圆形为模板,对large图像进行膨胀运算,7.5指的是模板半径

。。。

是指显示和画图参数,对LargeDilation图像进行红色填充式的显示margin

。。。

stop()

2   complement(LargeDilation, NotLarge)

对膨胀过后的region进行求补集运算,得到整个原图中除去大颗粒区域以外的区域NotLarge

reduce_domain(Image,NotLarge,ParticlesRed)

减少操作区域,从Image中剪掉NotLarge区域以外的区域,保存为ParticlesRed

mean_image(ParticlesRed, Mean, 31,31)

按照模板的平均值来对输入图像进行平滑,保存在输出图像中

3   dyn_threshold(ParticlesRed, Mean, SmallRaw, 3,' light')图片阈值分割

使用Mean这个threshold(Mean是上述NotLarge也就是说小颗粒所在的区域ParticlesRed 的平均值)对图像ParticlesRed(未经过均值处理的NotLarge区域)进行筛选,3是Offset,选择light格式,规则如下:

original=go,threshold=gt(这里指的是Mean)

Light: go>=gt+offset

dark:    go<=gt-offset

equal:  gt-offset<=go<=gt+offset

not_equal:   gogt+offset

此处的筛选,是为了得到小颗粒区域中,比平均值大的区域(可能是小颗粒的存在)

opening_circle(SmallRaw, Small, 2.5)

对得到的SmallRaw进行圆模板开运算

connection(Small, SmallConnection)

...

显示控制信息

。。。

stop()

接下来从这些候选位置中,人工确认小颗粒

dev_set_color('green')

dev_display(Image)

dev_set_draw('margin')

dev_display(SmallConnection)

Button:=1

while(Button==1)

disp_message(WindowID,['左键选择对象,右键退出.' ], 'image',5,5,'black','true')

dev_set_color('green')

get_mbutton(WindowID, Row,Column,Button)

接受图像上面的鼠标操作,并根据鼠标输入进行下一步处理

dev_display(Image)

dev_set_color('red ')

select_region_point(SmallConnection, SmallSingle, Row, Column)

这里是根据Row和Column来Choose all regions containing a given pixel.并保存到           SmallSingle中

dev_display(SmallSingle)

count_obj(SmallSingle,NumSingle)

if(NumSingle==1)

intensity(SmallSingle,Image,MeanGray,DeviationGray)

计算输入图像Image中指定region(这里是指SmallSingle)的均值和方差

area_center(SmallSingle,Area,Row,Column)

disp_message......

endif

endwhile

dev_set_line_width(1)

dev_update_on()

总结:

例子主要运用求补集complement和图片阈值分割法dyn_threshold来筛选出小颗粒可能存在的位置,最后通过人工判断来使用鼠标控制结果。

二,算法的改进

目的主要是为了避免后期人工识别,采用面积筛选法和满水填充法对候选区域进行自动识别的尝试

未完成候补:

halcon 偏折法_halcon方法学习之blob分析相关推荐

  1. Halcon学习路线——Blob分析(1)

    Blob分析 1. 谈谈Blob分析 2. 看一张图片 3. 处理图像效果 4. Halcon代码 5. 资源下载 1. 谈谈Blob分析 Blob可以说是图像处理中最简单.最常用的方法了.虽说简单, ...

  2. halcon 偏折法_Halcon18新技术

    一.Halcon新特性介绍 分为Halcon Progress和Halcon Steady两类: Progress:发布周期短(半年),更早拿到最新技术,订阅购买模式 Steady:发布周期长(2年) ...

  3. halcon基础学习(2)—blob分析

    这段时间在学halcon,项目又紧,只能晚上回来学习学习,现在在看着视屏学点基础,其实对我来说学习软件到时很快,视屏里说学视觉还是以项目为主.以下是官方实例,原图 程序跑完之后的效果,其实就是一个典型 ...

  4. halcon 偏折法_halcon10的C#工程改为halcon17的正确方法

    勇哥手头上的C#工程要由基于halcon10视觉的改为halcon17版的视觉. 更换的原因是因为halcon17比较新比较潮,不能落伍-- 其实是因为halcon10的窗体控件以及内存泄露方面有些问 ...

  5. halcon显示坐标_HALCON深度学习工具0.4 早鸟版发布了

    HALOCN深度学习工具在整个深度学习过程中扮演着重要的作用,而且在将来将扮演更重要的辅助作用,大大加快深度学习的开发流程,目前发布版本工具的主要作用是图像数据处理和目标检测和分类中的标注. 标注训练 ...

  6. Halcon学习路线——Blob分析(2)

    Blobf分析 1. 看一个实际案例 2. 解决方案和代码 3. 资源下载 1. 看一个实际案例 这是一块电池,右侧有两个极耳,极耳相对电池的位置固定. 力神的检测部门会对电池进行抽检,他们使用的工具 ...

  7. Halcon之Blob分析

    文章目录 Blob Analysis 1.基本概念 1.1 获取图像 1.2 分割图像 1.3 提取特征 1.4 A First Example 2.扩展概念 2.1 使用感兴趣区域 2.2 对齐 R ...

  8. HALCON 21.11:深度学习笔记---对象检测, 实例分割(11)

    HALCON 21.11:深度学习笔记---对象检测, 实例分割(11) HALCON 21.11.0.0中,实现了深度学习方法. 本章介绍了如何使用基于深度学习的对象检测. 通过对象检测,我们希望在 ...

  9. HALCON 21.11:深度学习笔记---分类(10)

    HALCON 21.11:深度学习笔记---分类(10) HALCON 21.11.0.0中,实现了深度学习方法. 本章介绍了如何在训练和推理阶段使用基于深度学习的分类. 基于深度学习的分类是一种对一 ...

最新文章

  1. Blender三维插图设计视频教程 3D Characters and Illustrations in Blender 2.9
  2. Node.js前置知识点(二):同步/异步
  3. 比较两篇文章的相似性
  4. 灵魂画手:漫画图解 SSH
  5. day01 python基本概念
  6. Java之对List里面的对象名字进行模糊查询
  7. JWT(JSON web token)
  8. 解决win10安卓虚拟机每十几分钟蓝屏重启问题
  9. 刚毕业就年薪30万,程序员真的这么有“钱”途吗?
  10. linux组合键 发送指定信号_linux trap脚本信号捕获命令的使用
  11. 算法设计与分析复习——第四章:贪心算法
  12. python字典快速一览
  13. 推荐这几个数据大屏可视化开发工具
  14. zkPorter:Layer-2 的可组合可扩展性
  15. tensorflow2 serving
  16. 布局区块链数据中心的互联在线,积极筹备精选层
  17. mysql数据导入报错1265
  18. 在编译器中鼠标光标变成下横线的解决办法
  19. 苹果cms后台路径怎么修改
  20. spark 相关性分析_基本统计 - correlations(相关性系数) - 《spark机器学习算法研究和源码分析》 - 书栈网 · BookStack...

热门文章

  1. 由系统调用想起的。。。
  2. 15_传智播客iOS视频教程_OC语言完全兼容C语言
  3. arcgis-tomcat-cors
  4. ZT:公司绝对不会告诉你的潜规则(何杨)
  5. SQL注入自动扫描工具中的语句
  6. html 导出excel 乱码问题,Asp导出Excel乱码怎么办
  7. 数据结构最佳路径代码_【微服务】149:商品数据结构
  8. python 打包exe 运行dll load failed_Python ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。...
  9. python dataset[trans_python gdal根据图像坐标生成矢量框(含图像坐标转地理坐标)...
  10. delphi switch语句例子_「GCTT 出品」Go 系列教程——10. switch 语句