MATLAB实现图像高帽和低帽变换
2017-10-22 18:33
344 查看
一、原理
高帽变换和低帽变换是数学形态学中重要的运算形式,有形态学中最基本的运算如膨胀、腐蚀组合实现。
高帽变换是通过利用原始图像与原始图像开操作的结果图像进行图像减操作实现的;而低帽变换是通过原始图像闭操作的结果图像与原始图像进行图像减操作实现的。
高帽变换具有高通滤波的特性,适用于处理具有暗背景、亮物体特征的图像。
低帽变换能够检测图像中的谷值,适用于处理具有亮背景、暗物体特征的图像。
二、代码
[filename,pathname]=uigetfile({'*.jpg';'*bmp';'*gif'},'选择原图片');
picture = imread([pathname,filename]);
%原图片展示
figure(1);
subplot(2,2,1);
imshow(picture);
title('原图片');
%图像灰度化
%picture = rgb2gray(picture);
%subplot(2,2,2);
%imshow(picture);
%title('灰度化图片');
%高帽、低帽处理
se = strel('rectangle',[3 3]);%选取结构元素为3*3的矩形
Itop = imtophat(picture, se); % 高帽变换
Ibot = imbothat(picture, se); % 低帽变换
subplot(2,2,3);
imshow(Itop, []); % 高帽变换,体现原始图像的灰度峰值
title('高帽变换');
subplot(2,2,4);
imshow(Ibot, []); % 低帽变换,体现原始图像的灰度谷值
title('低帽变换');
三、结果图
高帽变换和低帽变换是数学形态学中重要的运算形式,有形态学中最基本的运算如膨胀、腐蚀组合实现。
高帽变换是通过利用原始图像与原始图像开操作的结果图像进行图像减操作实现的;而低帽变换是通过原始图像闭操作的结果图像与原始图像进行图像减操作实现的。
高帽变换具有高通滤波的特性,适用于处理具有暗背景、亮物体特征的图像。
低帽变换能够检测图像中的谷值,适用于处理具有亮背景、暗物体特征的图像。
二、代码
[filename,pathname]=uigetfile({'*.jpg';'*bmp';'*gif'},'选择原图片');
picture = imread([pathname,filename]);
%原图片展示
figure(1);
subplot(2,2,1);
imshow(picture);
title('原图片');
%图像灰度化
%picture = rgb2gray(picture);
%subplot(2,2,2);
%imshow(picture);
%title('灰度化图片');
%高帽、低帽处理
se = strel('rectangle',[3 3]);%选取结构元素为3*3的矩形
Itop = imtophat(picture, se); % 高帽变换
Ibot = imbothat(picture, se); % 低帽变换
subplot(2,2,3);
imshow(Itop, []); % 高帽变换,体现原始图像的灰度峰值
title('高帽变换');
subplot(2,2,4);
imshow(Ibot, []); % 低帽变换,体现原始图像的灰度谷值
title('低帽变换');
三、结果图
相关文章推荐
- Hough变换实现图像纠偏-从matlab到c++实现
- MATLAB实现图像镜像变换的源代码!
- MATLAB实现图像镜像变换的源代码!
- (实验二) --- 图像旋转变换---matlab实现
- 图像的等距变换,相似变换,仿射变换,射影变换及其matlab实现
- Matlab中图像处理实例:灰度变换,空域滤波,频域滤波,傅里叶变换的实现
- Matlab实现Hough变换检测图像中的直线 分类: 图像处理 2014-06-14 22:07 641人阅读 评论(0) 收藏
- Matlab实现Hough变换检测图像中的直线
- 图像进行Sobel算子、Hough变换检测圆的matlab实现
- Matlab中图像处理实例:灰度变换,空域滤波,频域滤波,傅里叶变换的实现
- (实验一) --- 彩色图像变换成灰度图像---matlab实现
- 图像的等距变换,相似变换,仿射变换,射影变换及其matlab实现
- matlab实现图像滤波——高斯滤波
- 模式识别经典算法——Kmeans图像聚类分割(以最短的matlab程序实现)
- matlab实现图像滤波——高斯滤波
- MATLAB实现基于邻近插值的图像旋转代码
- [图像]获取图片中感兴趣区域的信息(Matlab实现)
- [图像]中值滤波(Matlab实现)
- 图像灰度变换及实现
- CUDA和OpenCV实现的图像GAMMA变换