博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
全局Threshold和动态阈值分割Dyn_Threshold的应用场景
阅读量:7069 次
发布时间:2019-06-28

本文共 1318 字,大约阅读时间需要 4 分钟。

手册里面的particle例子,例子的任务是分析颗粒在液体中。在这个应用程序的主要困难:存在两种类型的对象:大明亮物体和较低的小物体的对比。此外噪音使分割的存在困难;无法使用全局灰度阈值threshold进行分割;所以采用先将大块不需要检测的部分去除掉,再通过灰度动态阈值dyn_threshold分割图像得到想要的内容。
处理图片和结果图片:

 

 
以下是代码:
 
read_image (Image, 'particle')  *获取图像    dev_display (Image)  *显示图像    threshold (Image, Large, 110, 255)  *灰度阈值分割图像    dilation_circle (Large, LargeDilation, 7.5)  *圆角膨胀    dev_display (Image)  dev_set_draw ('margin')  dev_set_line_width (3)  dev_set_color ('red')  dev_display (LargeDilation)  dev_set_draw ('fill')  *显示图像    complement (LargeDilation, NotLarge)  *返回补充图像,即获得去除大斑点后的图像NotLarge    reduce_domain (Image, NotLarge, ParticlesRed)  *减去除了NotLarge图像,即去除大斑点后的图像,减少运算    mean_image (ParticlesRed, Mean, 31, 31)  *平滑处理图像    dyn_threshold (ParticlesRed, Mean, SmallRaw, 3, 'light')  *选择灰度阈值; 网友详解:当前背景之间差异明显时,可以设定全局阈值进行threshold,但很多情况下由于背景不均一,  *目标体经常表现为比背景局部亮一些或暗一些,无法确定全局阈值操作,需要通过其邻域找到一个合适的阈值进  *行分割dyn_threshold。ThresholdImage是参考图像,通过与OrigImage对比找到领域确定阈值,一般采用平滑滤波算子  *(如mean_image)获取参考图像。offset设定邻域比较的区间范围,灰度值变化在offset范围内均是可以接受的。    opening_circle (SmallRaw, Small, 2.5)  *消除小区域(小于圆形结构元素)和光滑的边界地区    connection (Small, SmallConnection)  *显示联通区域    dev_display (Image)  *这句不加窗口显示效果会有雪花    dev_set_colored (12)  dev_display (SmallConnection)

 

*显示结果图像 
下图是只用threshold时候的实验效果,无法分割出小斑点:

 

转载于:https://www.cnblogs.com/bile/p/10517441.html

你可能感兴趣的文章
引导过程和服务控制
查看>>
拖拽即可创建HTML5网站的建站平台
查看>>
我的友情链接
查看>>
mod_fastcgi和mod_fcgid的区别
查看>>
Delphi字节位操作
查看>>
百兆、千兆网线的做法
查看>>
cisco 10条IOS管理命令
查看>>
文娱产业兴起 娱乐有了 文化在哪?
查看>>
Inotifywait解决监控子目录树的情况
查看>>
两棵树是否相同
查看>>
基本正则表达式和扩展正则表达式中的括号问题
查看>>
nginx+tomcat7 DOCKER镜像的dockerfile
查看>>
关于笔记本电脑网卡出问题的简单解决
查看>>
IPV4与IPV6表示方法
查看>>
桌面支持--不懂不要乱动-尤其是别人的东西
查看>>
hadoop集群上运行自定义wordcount
查看>>
Linux条件测试
查看>>
图形图表设计软件Edraw Max更新至v9.0,新增10000+符号和模板丨限时8.5折
查看>>
关于Dialog引起的报错“未附加到窗口管理器”
查看>>
memecache过期策略
查看>>