文档章节

Matlab彩色图像处理

天蚕宝衣
 天蚕宝衣
发布于 2017/04/12 10:29
字数 824
阅读 67
收藏 0
点赞 0
评论 2

读入一幅彩色图像,进行如下图像处理:

1. 在RGB颜色空间中对图像进行平滑滤波(模糊)和锐化滤波(锐化)处理。

1.1. 读入一幅图像。

rgb = imread('flower.jpg');
figure; imshow(rgb); title('原图');

1.2. 对读入的图像进行平滑滤波。  

% 平滑滤波  
r = rgb(:, :, 1);  
g = rgb(:, :, 2); 
b = rgb(:, :, 3); 
m = fspecial('average', [8, 8]); 
r_filtered = imfilter(r, m);
g_filtered = imfilter(g, m); 
b_filtered = imfilter(b, m);  
rgb_filtered = cat(3, r_filtered, g_filtered, b_filtered); 
figure; imshow(rgb_filtered); title('模糊后');
imwrite(rgb_filtered, 'RGB彩色空间模糊后.jpg');

平滑滤波后的效果是彩色图像变得模糊,即RGB彩色空间变得模糊。下图为效果图: 
RGB彩色空间模糊后

1.3. 对读入的图像进行锐化滤波。  

% 拉普拉斯。
lapMatrix = [1 1 1; 1 -8 1; 1 1 1];    
i_tmp = imfilter(rgb, lapMatrix, 'replicate'); 
i_sharped = imsubtract(rgb, i_tmp); 
figure; imshow(i_sharped); title('锐化后');
imwrite(i_sharped, 'RGB彩色空间锐化后.jpg');

RGB彩色空间被锐化滤波后,图像变得粗糙,下图为效果图: 
RGB彩色空间锐化后

2. 在HSI空间对图像进行处理。

(2) 在HSI彩色空间中,对H分量图像进行模糊和锐化处理,转换回RGB格式并观察效果

(3) 在HSI彩色空间中,对S分量图像进行模糊和锐化处理,转换回RGB格式并观察效果

(4) 在HSI彩色空间中,对I分量图像进行模糊和锐化处理,转换回RGB格式并观察效果

fc = imread('flower.jpg');
h = rgb2hsi(fc);
H = h(:, :, 1);
S = h(:, :, 2);
I = h(:, :, 3);
subplot(3, 3, 1); imshow(fc); title('原图');

原图 
原图

2.1. 对H分量进行处理。

2.1.1 对HSI彩色空间中的H分量进行平滑滤波

% 平滑滤波。
m = fspecial('average', [8, 8]); 
h_filtered = imfilter(H, m);
img_h_filtered = cat(3, h_filtered, S, I); 
rgb_h_filtered = hsi2rgb(img_h_filtered);
subplot(3, 3, 2); imshow(rgb_h_filtered); title('H分量模糊后');
imwrite(rgb_h_filtered, 'H分量模糊后.jpg');

进行H分量模糊后,效果图如下所示:
H分量模糊后

2.1.2. 对HSI彩色空间中的H分量进行锐化滤波

%拉普拉斯
lapMatrix=[1 1 1;1 -8 1;1 1 1];    
i_tmp=imfilter(H,lapMatrix,'replicate'); 
H_sharped=imsubtract(H,i_tmp); 
img_h_sharped = cat(3,H_sharped,S,I); 
rgb_h_sharped = hsi2rgb(img_h_sharped);
subplot(3,3,3); imshow(rgb_h_sharped); title('H分量锐化后');
imwrite(rgb_h_sharped, 'H分量锐化后.jpg');

H分量锐化后 
H分量锐化后

subplot(3,3,4);imshow(fc);  title('原图');
%平滑滤波 
m=fspecial('average',[8,8]); 
s_filtered=imfilter(S,m);
img_s_filtered = cat(3,H,s_filtered,I); 
rgb_s_filtered = hsi2rgb(img_s_filtered);
subplot(3,3,5);imshow(rgb_s_filtered);  title('S分量模糊后');
imwrite(rgb_s_filtered, 'S分量模糊后.jpg');

2.2 对S分量进行处理。

2.2.1 模糊后 
S分量模糊后

2.2.2 S分量进行锐化滤波。

%拉普拉斯
lapMatrix=[1 1 1;1 -8 1;1 1 1];    
i_tmp=imfilter(S,lapMatrix,'replicate'); 
s_sharped=imsubtract(S,i_tmp); 
img_s_sharped = cat(3,H,s_sharped,I); 
rgb_s_sharped = hsi2rgb(img_s_sharped);
subplot(3,3,6); imshow(rgb_s_sharped); title('S分量锐化后');
imwrite(rgb_s_sharped, 'S分量锐化后.jpg');

S分量锐化后 
S分量锐化后

subplot(3,3,7);imshow(fc);  title('原图');
%平滑滤波 
m=fspecial('average',[8,8]); 
i_filtered=imfilter(I,m);
img_i_filtered = cat(3,H,S,i_filtered); 
rgb_i_filtered = hsi2rgb(img_i_filtered);
subplot(3,3,8);imshow(rgb_i_filtered);  title('I分量模糊后');
imwrite(rgb_i_filtered, 'I分量模糊后.jpg');

2.3 对I分量进行处理

2.3.1 平滑滤波

图形变得模糊,下图为效果图: 
I分量模糊后

2.3.2 对I分量进行锐化处理

% 拉普拉斯。
lapMatrix = [1 1 1; 1 -8 1; 1 1 1];    
i_tmp = imfilter(I, lapMatrix, 'replicate'); 
i_sharped = imsubtract(I, i_tmp); 
img_i_sharped = cat(3, H, S, i_sharped); 
rgb_i_sharped = hsi2rgb(img_i_sharped);
subplot(3, 3, 9); imshow(rgb_i_sharped); title('I分量锐化后');
imwrite(rgb_i_sharped, 'I分量锐化后.jpg');

I分量锐化后的效果图:
I分量锐化后

© 著作权归作者所有

共有 人打赏支持
天蚕宝衣
粉丝 18
博文 237
码字总数 178069
作品 0
天津
加载中

评论(2)

天蚕宝衣
天蚕宝衣

引用来自“咬尾巴的妖精猫”的评论

大学已经学了这个了
温故知新。
咬尾巴的妖精猫
咬尾巴的妖精猫
大学已经学了这个了
数字信号处理、数学形态学、MATLAB GUI实现简单找茬软件

0、简介   这个小作品是我的数字图像处理课程设计,应用基本的图像处理知识与MATLAB的基本脚本编程,实现一个简单的找茬软件。软件实现过程中使用到的找茬游戏图片来源有“梦幻找茬”、“图...

Vitcou
07/11
0
0
图像处理入门教程

  最近有人问我图像处理怎么研究,怎么入门,怎么应用,我竟一时语塞。仔细想想,自己也搞了两年图像方面的研究,做个两个创新项目,发过两篇论文,也算是有点心得,于是总结总结和大家分享...

u013088062
2015/12/29
0
0
(三)matlab数字图像处理实验-图像灰度变换处理

前两节都是熟悉一下怎么在matlab底下对图片做一些操作,并没有什么卵用,这一节稍微有点卵用,灰度变换一般是图像处理的第一步。 数字图像处理实验1-9点击下列链接有源码和链接: matlab数字...

aninstein
01/06
0
0
【工具使用系列】关于 MATLAB 图像处理工具箱,你需要知道的事

如何使用 MATLAB 图像处理工具箱 MATLAB 图像类型转换 图像文件的读写和查询 图像文件的显示 不同类型的图像显示方法 什么是 MATLAB 图像处理工具箱 图像 图像的概念 图像的分类 图像的表示 ...

AllenMoore
01/28
9
0
基于web的android图像处理示例(Win7+Apache+PHP+Matlab+Android)

本文将介绍C/S模式的图像处理系统。C/S的框架已经在[1]中作了简单的介绍。[2]中介绍了如何搭建基于android和WAMP5的B/S模式的本机测试平台。本系统是在[4]中介绍的基础上开发的,有关图像显示...

长平狐
2012/10/08
407
0
如何自学图像编程

现在,图像类信息越来越多了,对图像的编程需求也越来越多。图像类项目的特点是性价比高,单行代码的价格一般是普通的程序的10倍,每行代码能够卖几块钱。很多人把目光放在这个上面。刚才又有...

最美的回忆
2017/06/21
0
0
【图像处理】彩色图像处理(Color Image Processing)

实验要求   (1.a) 编写程序实现图6.23,程序的输入为图像中指定的两个灰度级范围。程序的输出为RGB 格式图像,其中,一个灰度级范围显示为指定的彩色,其余的像素以RGB 形式显示为与输入图像...

u013165921
01/15
0
0
Matlab图像处理入门教程(菜鸟级)

1,图像的读入和显示: (1)图像读入:A=imread('文件名',文件格式) [X,map]=imread('文件名') %X代表索引图像矩阵,map为颜色映射表 (2)图像显示:image(A); 2. 图像写回 A=imwrite('文件...

枫言风语
2012/09/22
0
0
MatLab 组件大全

MATLAB 矩阵实验室 7.0.1 Simulink 仿真 6.1 Aerospace Blockset 太空模块 1.6.1 Bioinformatics Toolbox 生物信息工具箱 1.1.1 CDMA Reference Blockset 码分多址参数模块 1.1 Communicatio......

机器的心脏
2017/12/15
0
0
PIL (Python图像处理库) 1.1.7 发布

PIL 1.1.7 发布了,该版本改进了对 PNG 压缩的处理,支持隔行扫描的PNG文件,改进了对各种 TGA 的支持,修复了一些错误等等。 图像处理工具包PIL(Python Image Library),该软件包提供了基本的...

红薯
2011/10/08
2.5K
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringBoot | 第十章:Swagger2的集成和使用

前言 前一章节介绍了mybatisPlus的集成和简单使用,本章节开始接着上一章节的用户表,进行Swagger2的集成。现在都奉行前后端分离开发和微服务大行其道,分微服务及前后端分离后,前后端开发的...

oKong
今天
2
0
Python 最小二乘法 拟合 二次曲线

Python 二次拟合 随机生成数据,并且加上噪声干扰 构造需要拟合的函数形式,使用最小二乘法进行拟合 输出拟合后的参数 将拟合后的函数与原始数据绘图后进行对比 import numpy as npimport...

阿豪boy
今天
1
0
云拿 无人便利店

附近(上海市-航南路)开了家无人便利店.特意进去体验了一下.下面把自己看到的跟大家分享下. 经得现场工作人员同意后拍了几张照片.从外面看是这样.店门口的指导里强调:不要一次扫码多个人进入....

周翔
昨天
1
0
Java设计模式学习之工厂模式

在Java(或者叫做面向对象语言)的世界中,工厂模式被广泛应用于项目中,也许你并没有听说过,不过也许你已经在使用了。 简单来说,工厂模式的出现源于增加程序序的可扩展性,降低耦合度。之...

路小磊
昨天
156
1
npm profile 新功能介绍

转载地址 npm profile 新功能介绍 npm新版本新推来一个功能,npm profile,这个可以更改自己简介信息的命令,以后可以不用去登录网站来修改自己的简介了 具体的这个功能的支持大概是在6这个版...

durban
昨天
1
0
Serial2Ethernet Bi-redirection

Serial Tool Serial Tool is a utility for developing serial communications, custom protocols or device testing. You can set up bytes to send accordingly to your protocol and save......

zungyiu
昨天
1
0
python里求解物理学上的双弹簧质能系统

物理的模型如下: 在这个系统里有两个物体,它们的质量分别是m1和m2,被两个弹簧连接在一起,伸缩系统为k1和k2,左端固定。假定没有外力时,两个弹簧的长度为L1和L2。 由于两物体有重力,那么...

wangxuwei
昨天
0
0
apolloxlua 介绍

##项目介绍 apolloxlua 目前支持javascript到lua的翻译。可以在openresty和luajit里使用。这个工具分为两种模式, 一种是web模式,可以通过网页使用。另外一种是tool模式, 通常作为大规模翻...

钟元OSS
昨天
2
0
Mybatis入门

简介: 定义:Mybatis是一个支持普通SQL查询、存储过程和高级映射的持久层框架。 途径:MyBatis通过XML文件或者注解的形式配置映射,实现数据库查询。 特性:动态SQL语句。 文件结构:Mybat...

霍淇滨
昨天
2
0
开发技术瓶颈期,如何突破

前言 读书、学习的那些事情,以前我也陆续叨叨了不少,但总觉得 “学习方法” 就是一个永远在路上的话题。个人的能力、经验积累与习惯方法不尽相同,而且一篇文章甚至一本书都很难将学习方法...

_小迷糊
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部