Matlab用数学形态学进行图像处理——雪花粒度测量
来源:互联网 发布:淘宝分销赚钱吗 编辑:程序博客网 时间:2024/06/06 09:41
已知如下一张雪花的图片,怎么提取特定半径雪花呢?
matlab官方demo:http://cn.mathworks.com/help/images/examples/granulometry-of-snowflakes.html
- 读取图片并增强对比度
%雪花粒度测量法%http://cn.mathworks.com/help/images/examples/granulometry-of-snowflakes.htmlclc,clearI = imread('snowflakes.png');figureimshow(I)% Enhance Contrast 增强对比度claheI = adapthisteq(I,'NumTiles',[10 10]);%将图像a进行直方图均衡化figure,imshow(claheI)claheI = imadjust(claheI);%调节灰度图像的亮度或彩色图像的颜色矩阵。figure,imshow(claheI)
图片前后变化:
2. 进行开运算并统计保留下来的像素数量
radius_range = 0:22;intensity_area = zeros(size(radius_range));for counter = radius_range % strel('disk', counter)表示创建一个圆盘用来消除半径小于counter个像素的元素 %效果为直接开运算 remain = imopen(claheI, strel('disk', counter)); %remain中半径小于counter个像素的元素已经被删除 %有强烈对比的图片中留下来的像素个数(非零的),共23个结果 intensity_area(counter +1) = sum(remain(:)); %counter +1是因为下标索引必须为正整数类型或逻辑类型。endfigureplot(intensity_area, 'm - *')grid ontitle('图像保留下来的像素数量')xlabel('打开时使用的构造器半径大小(像素)')ylabel('打开图片的像素数量(高对比的)')
其中创建了23个结构元素进行腐蚀和膨胀,得到23个结果。imopen为开运算
- 统计像素值差异
intensity_area_prime = diff(intensity_area); %即intensity_area中像素个数差异,差异绝对值小说明差的不多figureplot(intensity_area_prime, 'm - *')grid ontitle('雪花粒度大小分布')ax = gca;ax.XTick = [0 2 4 6 8 10 12 14 16 18 20 22];xlabel('打开时使用的构造器半径大小(像素)')ylabel('此半径下的像素值差异')
4.提取5像素半径的雪花
%提取5像素半径的雪花open5 = imopen(claheI,strel('disk',5));%5,6时的像素差异最大figure,imshow(open5),title('open5')open6 = imopen(claheI,strel('disk',6));figure,imshow(open6),title('open6')%open5 - open6,不是反过来,如果反过来图像就没有了(根据形态学腐蚀的道理:半径大的结构元素进行腐蚀,留下来的图像就小)rad5 = imsubtract(open5,open6);figure,imshow(rad5,[])
open5和open6:
提取出来的雪花:
阅读全文
1 0
- Matlab用数学形态学进行图像处理——雪花粒度测量
- Matlab数学形态学进行图像处理
- 图像数学形态学处理
- 图像处理----数学形态学
- Matlab 形态学图像处理
- Matlab 形态学图像处理
- Matlab 形态学图像处理
- 【图像处理】MATLAB:形态学
- 形态学图像处理--matlab
- 图像处理——形态学
- matlab 图像形态学处理与图像分割
- 《数字图像处理》——形态学图像处理
- 形态学处理——图像处理
- 基于数学形态学的图像处理
- 二值图像--形态学处理1 数学形态学
- 图像操作的形态学处理MATLAB
- Matlab DIP(瓦)ch9形态学图像处理
- matlab形态学图像处理之strel函数
- activeMQ安装与入门
- 电路加法
- 《数据库系统概念》6-数据类型、授权等
- uva508 Morse Mismatches
- selvet10-简单自定义标签
- Matlab用数学形态学进行图像处理——雪花粒度测量
- nginx负载均衡的集中算法
- 7-1 是否同一棵二叉搜索树(25 分)
- JAVA多线程1——ReentrantLock与synchronized的区别和适用场景
- 关于 1.0/0.0 以及 0.0/0.0 的值
- 44. Wildcard Matching
- Hibernate学习---单表查询
- CSS基础(三)
- POI导出EXCEL经典实现