博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数字图像处理之图像形态学
阅读量:4096 次
发布时间:2019-05-25

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

记一次作业,统计一张图上的粒子分布——利用白顶帽变换统计各个尺寸的结构元的频数,最终绘制直方图。

% 利用matlab的内置函数进行灰度形态学的计算clear;I=imread('Chapter5_1.bmp');% imshow(I)% rectangle('Position',[208,218,10,10],'edgecolor','r') %衡量小粒子的大小% rectangle('Position',[80,10,120,120],'edgecolor','r') %衡量小粒子的大小count=[];for x=3:2:119size1=x;%WTH加强亮细节,结构元大于亮细节尺寸SE1=strel('square',size1);Iop1=imopen(I,SE1);%开运算函数,可以直接进行开运算:先腐蚀再膨胀dif1=I-Iop1;size2=x+2;%WTH加强亮细节,结构元大于亮细节尺寸SE2=strel('square',size2);Iop2=imopen(I,SE2);%开运算函数,可以直接进行开运算:先腐蚀再膨胀dif2=I-Iop2;dif=dif2-dif1;%留下(x+2)*(x+2)-x*x之间尺寸的粒子% figure(1)% subplot(1,3,1),imshow(I),title('原图');% subplot(1,3,2),imshow(Iop),title('开运算函数');% subplot(1,3,3),imshow(dif),title('亮区域粒子');b=rgb2gray(dif);%绘制灰度直方图需要归一化成二值灰度图像b1=b;[m,n]=find(b1<20);%灰度阈值处理,留下差值更大的部分:小于20的阈值被置0(认为是大粒子的区域)for i=1:size(m,1)    b1(m(i),n(i))=0;end% figure(2)% subplot(1,2,1),imshow(b);%筛选前% subplot(1,2,2),imshow(b1);%筛选后white_point_count=length(find(b1~=0));%计算不是黑色的像素点的个数counts=white_point_count/(x+2)^2;if counts==0 %如果不存在计数    breakendcount=[count counts];endbar(3+2:2:(x-2)+2,count/sum(count))

参考:

转载地址:http://psaii.baihongyu.com/

你可能感兴趣的文章
触目惊心:比特币到底消耗了多少能源?
查看>>
面试官:简历上敢写技术精通?那我就不客气了!
查看>>
如何判断一家互联网公司要倒闭了?
查看>>
想快速上手机器学习?来看下这个 GitHub 项目!
查看>>
GitHub 标星 3.6k,一本开源的深度学习中文教程!
查看>>
9 款你不能错过的 JSON 工具
查看>>
就在昨天,全球 42 亿 IPv4 地址宣告耗尽!
查看>>
200页!分享珍藏很久的Python学习知识手册(附链接)
查看>>
程序员之神
查看>>
4 岁小女孩给 Linux 内核贡献提交
查看>>
推荐几个私藏很久的技术公众号给大家
查看>>
20 个 2020 年软件开发趋势预测
查看>>
王垠受邀面试阿里 P9,被 P10 面跪后网上怒发文,惨打 325 的 P10 赵海平回应了!...
查看>>
Python 趣味打怪:147 段简单代码助你从入门到大师
查看>>
卧槽!小姐姐用动画图解 Git 命令,这也太秀了吧?!
查看>>
厉害了!Python 编辑器界的神器 Jupyter ,推出官方可视化 Debug 工具!
查看>>
卧槽!Java 虚拟机竟然还有这些性能调优技巧...
查看>>
听说玩这些游戏能提升编程能力?
查看>>
7 年工作经验,面试官竟然还让我写算法题???
查看>>
被 Zoom 逼疯的歪果仁,造出了视频会议机器人,同事已笑疯丨开源
查看>>