数字图像处理之彩色图像的处理
数字图像处理_实验报告书(八)彩色图像处理

rgb=cat(3,rgb_R,rgb_G,rgb_B);figure,imshow(rgb),title('RGB彩色图像');截图:(2)编写MATLAB程序,将一彩色图像从RGB空间转换为HIS空间,并观察其效果。
如例9.2所示。
程序:rgb=imread('LenaRGB.bmp');figure,imshow(rgb);rgb1=im2double(rgb);r=rgb1(:,:,1);g=rgb1(:,:,2);b=rgb1(:,:,3);I=(r+g+b)/3figure,imshow(I);tmp1=min(min(r,g),b);tmp2=r+g+b;tmp2(tmp2==0)=eps;S=1-3.*tmp1./tmp2;figure,imshow(S);tmp1=0.5*((r-g)+(r-b));tmp2=sqrt((r-g).^2+(r-b).*(g-b));theta=acos(tmp1./(tmp2+eps));H=theta;H(b>g)=2*pi-H(b>g);H=H/(2*pi);H(S==0)=0;figure,imshow(H);截图:(3)编写MATLAB程序,将一彩色图像在RGB空间进行彩色分割,并观察其效果。
如例9.11所示。
程序:rgb=imread('LenaRGB.bmp');figure,imshow(rgb);rgb1=im2double(rgb);r=rgb1(:,:,1);figure,imshow(r);g=rgb1(:,:,2);figure,imshow(g);b=rgb1(:,:,3);figure,imshow(b);r1=r;r1_u=mean(mean(r1(:)));[m,n]=size(r1);sd1=0.0;for i=1:mfor j=1:nsd1= sd1+(r1(i,j)-r1_u)*(r1(i,j)-r1_u);endendr1_d=sqrt(sd1/(m*n));r2=zeros(size(rgb1,1),size(rgb1,2));ind=find((r>r1_u-1.25*r1_d)&(r<r1_u+1.25*r1_d));r2(ind)=1;figure,imshow(r2);截图:(4)编写MATLAB程序,将一彩色图像在向量空间进行边缘检测,并观察其效果。
彩色图像的灰度化处理

第1章绪论1.1数字图像数字图像,又称数码图像或数位图像,是二维图像用有限数字数值像素的表示。
数字图像是由模拟图像数字化得到的、以像素为基本元素的、可以用计算机或数字电路存储和处理的图像。
像素(或像元,Pixel)是数字图像的基本元素,像素是在模拟图像数字化时对连续空间进行离散化得到的。
每个像素具有整数行(高)和列(宽)位置坐标,同时每个像素都具有整数灰度值或颜色值。
通常,像素在计算机中保存为二维整数数阻的光栅图像,这些值经常用压缩格式进行传输和储存。
数字图像可以许多不同的输入设备和技术生成,例如数码相机、扫描仪、坐标测量机、seismographic profiling、airborne radar等等,也可以从任意的非图像数据合成得到,例如数学函数或者三维几何模型,三维几何模型是计算机图形学的一个主要分支。
数字图像处理领域就是研究它们的变换算法。
1.2设计平台本次设计采用的平台是MATLAB 7.0。
MATLAB编程语言被业界称为第四代计算机语言,它允许按照数学推导的习惯编写程序。
MATLAB7.0的工作环境包括当前工作窗口、命令历史记录窗口、命令控制窗口、图形处理窗口、当前路径选择菜单、程序编辑器、变量查看器、模型编辑器、GUI编辑器以及丰富的函数库和MATLAB附带的大量M文件。
MATLAB是由美国Math Works公司生产的一个为科学和工程计算专门设计的交互式大型软件,是一个可以完成各种计算和数据处理的、可视化的、强大的计算工具。
它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂计算的领域得到了广泛应用。
MATLAB作为一种科学计算的高级语言之所以受欢迎,就是因为它有丰富的函数资源和工具箱资源,编程人员可以根据自己的需要选择函数,而无需再去编写大量繁琐的程序代码,从而减轻了编程人员的工作负担,被称为第四代编程语言。
在MATLAB设计环境中,图像处理工具箱提供一套全方位的参照标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。
数字图像处理实验八

数字图像处理实验实验八:彩色图像处理学院:信息工程学院姓名:学号:专业及班级:指导教师:一、实验目的使用MatLab 软件对图像进行彩色处理。
使学生通过实验熟悉使用MatLab软件进行图像彩色处理的有关方法,并体会到图像彩色处理技术以及对图像处理的效果。
二、实验内容要求学生能够完成彩色图像的分析,能正确讨论彩色图像的亮度、色调等性质;会对彩色图像进行直方图均衡,并能正确解释均衡处理后的结果;能够对单色图像进行伪彩色处理、利用多波长图像进行假彩色合成、进行单色图像的彩色变换。
利用MATLAB软件实现彩色图像处理的程序:rgb_image=imread('flower1.tif'); %读取图像flower1.tiffR=rgb_image(:,:,1); %获取图像的红色分量fG=rgb_image(:,:,2); %获取图像的绿色分量fB=rgb_image(:,:,3); %获取图像的蓝色分量figure(1),imshow(fR) %分别显示图像figure(2),imshow(fG)figure(3),imshow(fB)%实现rgb图像转化为NTSC彩色空间的图像yiq_image=rgb2ntsc(rgb_image);fY=yiq_image(:,:,1); %图像flower1.tif的亮度fI=yiq_image(:,:,2); %图像flower1.tif的色调fQ=yiq_image(:,:,3); %图像flower1.tif的饱和度figure(4),imshow(fY)figure(5),imshow(fI)figure(6),imshow(fQ)fR=histeq(fR,256); %对彩色图像的分量进行直方图均衡化fG=histeq(fG,256);fB=histeq(fB,256);RGB_image=cat(3,fR,fG,fB); %将直方图均衡化后的彩色图像合并figure,imshow(RGB_image) %观察处理后的彩色图色度,亮度参照前面f1=imread('v1_red.jpg');f2=imread('v1_green.jpg');f3=imread('v1_blue.jpg');f4=imread('infer_near.jpg');ture_color=cat(3,f1,f2,f3);figure,imshow(ture_color) %显示由红、绿、蓝三幅图合成的彩色图false_color=cat(3,f4,f2,f3); %用近红外图像代替R分量figure,imshow(false_color) %显示由近红外、绿、蓝三幅图合成的假彩色图f=imread('head.jpg');cut_1=imadjust(f,[0.0925 0.5],[0.0925 0.5]);%提取灰度在16-128之间的像素cut_2=imadjust(f,[0.5 1],[0.5 1]); %提取灰度在128-256之间的像素figure,imshow(cut_1),colormap(hot) %显示图像cut_1,并使用hot模型彩色化figure,imshow(cut_2),colormap(cool) %显示图像cut_2,并使用cool模型彩色化三、实验具体实现(1) 彩色图像的分析调入并显示彩色图像flower1.tif ;拆分这幅图像,并分别显示其R,G,B分量;根据各个分量图像的情况讨论该彩色图像的亮度、色调等性质。
[数字图像处理](一)彩色图像转灰度图像的三种方式与效果分析
彩色图像转灰度图像的三种方式与效果分析](https://img.taocdn.com/s3/m/a9ad791dbb1aa8114431b90d6c85ec3a87c28bdb.png)
[数字图像处理](⼀)彩⾊图像转灰度图像的三种⽅式与效果分析图像处理(⼀)彩⾊图⽚转灰度图⽚三种实现⽅式最⼤值法imMax=max(im(i,j,1),im(i,j,2),im(i,j,3))平均法imEva=im(i,j,1)3+im(i,j,2)3+im(i,j,3)3加权平均值法imKeyEva=0.2989×im(i,j,1)+0.5870×im(i,j,2)+0.1140×im(i,j,3)matlba实现clc;close all;clear all;% 相对路径读⼊图⽚(和代码在同⼀⽂件夹下)im = imread('p2.jpg');%---查看图⽚,检测是否成功读⼊% 对显⽰的图⽚进⾏排版subplot(2,3,4);imshow(im);% 对图⽚进⾏命名title('原图');[col,row,color] = size(im);%col为图⽚的⾏数,row为图⽚的列数,color对于彩⾊图⽚⼀般为3,每层对应RGB %利⽤matlab⾃带的函数进⾏ rgb_to_gray;im_matlab = rgb2gray(im);subplot(2,3,1);imshow(im_matlab);title('matlab⾃带rgb2gray');%--------------------------------------------------------%---⽤最⼤值法% 创建⼀个全为1的矩阵,长宽等同于原图的im_max = ones(col,row);for i = 1:1:colfor j = 1:1:rowim_max(i,j) = max( im(i,j,:) );endend% 将矩阵变为8byte⽆符号整型变量(不然⽆法显⽰图⽚)% 最好在计算操作结束后再变化,不然会有精度问题!!im_max = uint8(im_max);subplot(2,3,2);imshow(im_max);title('最⼤值法');%--------------------------------------------------------% 平均值法im_eva = ones(col,row);for i = 1:1:colfor j = 1:1:rowim_eva(i,j) = im(i,j,1)/3 + im(i,j,2)/3 + im(i,j,3)/3 ;% 两种的结果其实⼀样,但是如果先转换为uint8就会出现精度问题%sum1 = im(i,j,1)/3 + im(i,j,2)/3 + im(i,j,3)/3%sum2 = ( im(i,j,1) + im(i,j,2)+ im(i,j,3) )/3;%fprintf( " %.4f %.4f \n",sum1 ,sum2 ) ;endendim_eva = uint8(im_max);subplot(2,3,3);imshow(im_eva);title('平均值法');%--------------------------------------------------------% 加权平均法(rgb2gray所使⽤的权值)im_keyeva = ones(col,row);% 加权算法先转换为uint8计算效果更好im_keyeva = uint8(im_max);for i = 1:1:colfor j = 1:1:rowim_keyeva(i,j) = 0.2989*im(i,j,1) + 0.5870*im(i,j,2) + 0.1140*im(i,j,3) ;endendsubplot(2,3,5);imshow(im_keyeva);title('加权平均法');Processing math: 100%附matlab——rgb2gray源码function I = rgb2gray(X)%RGB2GRAY Convert RGB image or colormap to grayscale.% RGB2GRAY converts RGB images to grayscale by eliminating the% hue and saturation information while retaining the% luminance.%% I = RGB2GRAY(RGB) converts the truecolor image RGB to the% grayscale intensity image I.%% NEWMAP = RGB2GRAY(MAP) returns a grayscale colormap% equivalent to MAP.%% Class Support% -------------% If the input is an RGB image, it can be of any numeric type. The output% image I has the same class as the input image. If the input is a% colormap, the input and output colormaps are both of class double.%% Notes% -----% RGB2GRAY converts RGB values to grayscale values by forming a weighted % sum of the R, G, and B components:%% 0.2989 * R + 0.5870 * G + 0.1140 * B%% The coefficients used to calculate grayscale values in RGB2GRAY are% identical to those used to calculate luminance (E'y) in% Rec.ITU-R BT.601-7 after rounding to 3 decimal places.%% Rec.ITU-R BT.601-7 calculates E'y using the following formula:%% 0.299 * R + 0.587 * G + 0.114 * B%% Example% -------% I = imread('example.tif');%% J = rgb2gray(I);% figure, imshow(I), figure, imshow(J);%% indImage = load('clown');% gmap = rgb2gray(indImage.map);% figure, imshow(indImage.X,indImage.map), figure, imshow(indImage.X,gmap);%% See also RGB2IND, RGB2LIGHTNESS.% Copyright 1992-2020 The MathWorks, Inc.narginchk(1,1);isRGB = parse_inputs(X);if isRGBI = matlab.images.internal.rgb2gray(X);else% Color map% Calculate transformation matrixT = inv([1.0 0.956 0.621; 1.0 -0.272 -0.647; 1.0 -1.106 1.703]);coef = T(1,:);I = X * coef';I = min(max(I,0),1);I = repmat(I, [1 3]);end%--------------------------------------------------------------------------function is3D = parse_inputs(X)is3D = (ndims(X) == 3);if is3D% RGBif (size(X,3) ~= 3)error(message('MATLAB:images:rgb2gray:invalidInputSizeRGB'))end% RGB can be single, double, int8, uint8,% int16, uint16, int32, uint32, int64 or uint64validateattributes(X, {'numeric'}, {}, mfilename, 'RGB');elseif ismatrix(X)% MAPif (size(X,2) ~= 3 || size(X,1) < 1)error(message('MATLAB:images:rgb2gray:invalidSizeForColormap'))end% MAP must be doubleif ~isa(X,'double')error(message('MATLAB:images:rgb2gray:notAValidColormap'))endelseerror(message('MATLAB:images:rgb2gray:invalidInputSize'))end总结通过上⾯的代码结合实际的测试,果然,matlab⾃带的rgb2gray也就是加权平均的⽅法,对光线明暗的处理是最好的。
数字图像处理第六章色彩模型与彩色处理课件

Chapter 6 Color Image Processing
6.1 彩色基础
在颜料或着色剂中 ,原色的定义是这样 的:
白:减去一种原色 , 反射或传输另两种 原色。故其原色是: 深红、青、黄。而二 次色是R、G、B。如 图6.4所示。
Chapter 6 Color Image Processing
Chapter 6 Color Image Processing
6.2 彩色模型
6.2.1 RGB彩色模型
下面介绍所谓 全RGB彩色子集。
Chapter 6
Color Image Processing
6.2 彩色模型
Chapter 6 Color Image Processing
6.2 彩色模型
6.3 伪彩色处理
6.3 伪彩色处理 给特定的灰度值赋以彩色。伪彩色的 目的是为了人眼观察和解释图像中的目标。
Chapter 6 Color Image Processing
6.3 伪彩色处理
6.3.1 强度分层
参见图6.18,图像被看成三维函数。
Chapter 6 Color Image Processing
6.3.2 灰度级到 彩色转换
例6.5是一突出 装在行李内的爆炸物 的伪彩色应用。
Chapter 6 Color Image Processing
6.3 伪彩色处理
6.3.2 灰度级到彩 色转换
例6.5是一突出装 在行李内的爆炸物的伪彩 色应用。
Chapter 6 Color Image Processing
6.3 伪彩色处理
Chapter 6 Color Image Processing
6.3 伪彩色处理
彩色图像分割

二值、灰度形态学
二值形态学中的运算对象是集合。设A为图像集合,S为结 构元素,数学形态学运算是用S对A进行操作。需要指出,实际 上结构元素本身也是一个图像集合。对每个结构元素可以指定 一个原点,它是结构元素参与形态学运算的参考点。应注意, 原点可以包含在结构元素中,也可以不包含在结构元素中,但 运算的结果常不相同。以下用阴影代表值为1的区域,白色代表 值为0的区域,运算是对值为1的区域进行的。二值形态学中两 个最基本的运算——腐蚀与膨胀,如图所示。
基本符号和术语
1. 元素和集合
在数字图像处理的数学形态学运算中,把一幅图像称为一个 集合。对于二值图像而言,习惯上认为取值为1的点对应于景 物中心,用阴影表示,而取值为0的点构成背景,用白色表示, 这类图像的集合是直接表示的。考虑所有值为1的点的集合为 A, 则A与图像是一一对应的。对于一幅图像A,如果点a在A
y S1
O
y
x X
X○ S1 X○ S2
O S2
x
(a)
(b)
X (c)
图 (a) 结构元素S1和S2
(b) X○S1
(c) X○S2
y S1
O
y
x
S1 X
X● S1
X● S2
O S2
x
X
S1
(a)
(b)
图 (a) 结构元素S1和S2
(c)
(b) X●S1; (c) X●S2
数字图像处理

数字图像处理概述数字图像处理是一项广泛应用于图像处理和计算机视觉领域的技术。
它涉及对数字图像进行获取、处理、分析和解释的过程。
数字图像处理可以帮助我们从图像中提取有用的信息,并对图像进行增强、复原、压缩和编码等操作。
本文将介绍数字图像处理的基本概念、常见的处理方法和应用领域。
数字图像处理的基本概念图像的表示图像是由像素组成的二维数组,每个像素表示图像上的一个点。
在数字图像处理中,我们通常使用灰度图像和彩色图像。
•灰度图像:每个像素仅包含一个灰度值,表示图像的亮度。
灰度图像通常表示黑白图像。
•彩色图像:每个像素包含多个颜色通道的值,通常是红、绿、蓝三个通道。
彩色图像可以表示图像中的颜色信息。
图像处理的基本步骤数字图像处理的基本步骤包括图像获取、前处理、主要处理和后处理。
1.图像获取:通过摄像机、扫描仪等设备获取图像,并将图像转换为数字形式。
2.前处理:对图像进行预处理,包括去噪、增强、平滑等操作,以提高图像质量。
3.主要处理:应用各种算法和方法对图像进行分析、处理和解释。
常见的处理包括滤波、边缘检测、图像变换等。
4.后处理:对处理后的图像进行后处理,包括去隐私、压缩、编码等操作。
常见的图像处理方法滤波滤波是数字图像处理中常用的方法之一,用于去除图像中的噪声或平滑图像。
常见的滤波方法包括均值滤波、中值滤波、高斯滤波等。
•均值滤波:用一个模板覆盖当前像素周围的像素,计算平均灰度值或颜色值作为当前像素的值。
•中值滤波:将模板中的像素按照灰度值或颜色值大小进行排序,取中值作为当前像素的值。
•高斯滤波:通过对当前像素周围像素的加权平均值来平滑图像,权重由高斯函数确定。
边缘检测边缘检测是用于寻找图像中物体边缘的方法。
常用的边缘检测算法包括Sobel 算子、Prewitt算子、Canny算子等。
•Sobel算子:通过对图像进行卷积运算,提取图像中的边缘信息。
•Prewitt算子:类似于Sobel算子,也是通过卷积运算提取边缘信息,但采用了不同的卷积核。
数字图像处理的常用方法

数字图像处理的常用方法随着科技的发展,数字图像处理已经深入到每一个角落。
不论是专业的图像处理从业人员还是普通大众,它们都在使用各种计算机软件和硬件来处理复杂的图像。
在这里,我们将简要介绍常用的数字图像处理方法。
首先,我们将讨论图像压缩。
图像压缩是一种数字图像处理方法,它可以将大型图像容量减小,从而加快图像传输过程,并减少储存空间的使用,同时也不会影响图像的质量。
一般来说,有损压缩和无损压缩是当前应用最广泛的两种图像压缩技术。
其次,去噪是一种数字图像处理方法,用于消除图像中的噪声。
通常情况下,噪声由图像传感器,摄影机或相机传感器,也可能由数据传输过程中的干扰产生。
图像去噪可以从噪声中消除图像中细微的不和谐,恢复其原始质量,从而实现清晰的图像。
一般来说,最常用的去噪方法包括中值滤波,均值滤波,高斯滤波和离散小波变换等。
此外,图像分割和目标检测也是数字图像处理方法。
图像分割是将图像划分为一些简单、连续的图像区域的过程,以便从中提取出需要处理的特定对象。
这项技术可以使用不同的技术来实现,如阈值分割,聚类,区域生长和形态学操作等。
目标检测是将图像处理技术应用于从图像中检测指定目标的过程。
常用的目标检测技术有基于模式匹配、视觉算法、基于卷积神经网络的检测等。
最后,彩色转换是一种根据显示器的光谱特性和人眼的视觉感受,将彩色图像从数字格式转换为其他格式的方法。
它可以改变图像的色彩,让图像看起来更亮、更加艳丽,从而增强图像的视觉效果。
常用的彩色传输方法包括YCbCr色彩空间,HSV色彩空间,RGBA色彩空间等。
从上面的介绍可以看出,数字图像处理技术有很多,每种技术都有其特定的应用领域。
比如,压缩能够加快图像传输,减少存储空间的使用;去噪可以消除图像噪声,从而恢复其原始质量;图像分割和目标检测可以从图像中提取出需要处理的特定对象;彩色转换可以改变图像的色彩,让图像看起来更亮,更加艳丽。
数字图像处理技术的发展速度非常快,它们已经成为当今社会认知增强,智能服务和新媒体应用等多个方面的核心技术。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六彩色图像得处理
一、实验目得
1、掌握matlab中RGB图像与索引图像、灰度级图像之间转换函数。
2、了解RGB图像与不同颜色空间之间得转换.
3、掌握彩色图像得直方图处理方法。
二、实验内容及步骤
1、RGB图像与索引图像、灰度级图像得转换。
close all
RGB=imread('flowers、tif’);
[R_i,map]=rgb2ind(RGB,8);%RGB图像转换为8色得索引图像figure
imshow(R_i,map)
[R_g]=rgb2gray(RGB);%RGB图像转换为灰度级图像
figure
imshow(R_g)
思考:
将RGB图像’flowers、tif’分别转换为32色、256色、1024色索引图像,就是否调色板所表示得颜色值越多图像越好?
close all
RGB=imread('flowers、tif’);
[R_i1,map]=rgb2ind(RGB,8);%RGB图像转换为8色得索引图像[R_i2,map]=rgb2ind(RGB,32);%RGB图像转换为32色得索引图像
[R_i3,map]=rgb2ind(RGB,256);%RGB图像转换为256色得索引图像
[R_i4,map]=rgb2ind(RGB,1024);%RGB图像转换为1024色得索引图像
Subplot(221);imshow(R_i1,map);title(’8色得索引图像');
Subplot(222);imshow(R_i2,map);title(’32色得索引图像');
Subplot(223);imshow(R_i3,map);title('256色得索引图像’);
Subplot(224);imshow(R_i4,map);title('1024色得索引图像
');
结论:随着索引值得增加图像得质量也有增加,更加清晰,色彩也更加鲜明.但不就是不就是颜色值越多越好.当索引值过高时,会出现无法识别而致模糊得情况出现。
2、RGB图像与不同颜色空间得转换。
(1) RGB与HSI颜色空间得转换
HSI应用于彩色图像处理。
实验六文件夹中rgb2hsi()函数将RGB颜色空间转换为HSI空间并显示各分量,hsi2rgb()函数就是将HSI颜色空间转换为RGB颜色空间。
close all
x=imread(’flowers、tif');
figure
imshow(x)
title('RGB’)
x_hsi=rgb2hsi(x);%RGB颜色空间转换成HSI颜色空间,
%并显示H、S、I各分量
figure
imshow(x_hsi)
title('HSI')
x_h_r=hsi2rgb(x_hsi); figure
imshow(x_h_r)
title('HSI——>RGB')
(2)RGB与CMY颜色空间转换
CMY颜色空间运用在大多数在纸上沉积彩色颜料得设备,如彩色打印机与复印机。
CMY(青、深红、黄)就是RGB颜色空间得补色。
close all
x=imread('flowers、tif');
X =im2double(x);
R=X(:,:,1);
G=X(:,:,2);
B=X(:,:,3);
C=1-R;
M=1-G;
Y=1—B;
R1=1—C;
G1=1-M;
B1=1-Y;
CMY=cat(3,C,M,Y);
RGB1=cat(3,R,G,B);
subplot(1,3,1),imshow(X);title('RGB') ;
subplot(1,3,2),imshow(CMY);title(’CMY') ;
subplot(1,3,3),imshow(RGB1);title('CMY—-—>RGB') ;
思考:
如何将RGB图像分解出其R、G、B颜色分量?结果类似下图. close all
x=imread(’flowers、tif');
X = im2double(x);
R=X(:,:,1);
G=X(:,:,2);
B=X(:,:,3);
C1=R;
M1=G-G;
Y1=B-B;
C2=R-R;
M2=G;
Y2=B-B;
C3=R—R;
M3=G-G;
Y3=B;
R=cat(3,C1,M1,Y1);
G=cat(3,C2,M2,Y2);
B=cat(3,C3,M3,Y3);
subplot(1,3,1),imshow(R);title('R');
subplot(1,3,2),imshow(G);title(’G’);
subplot(1,3,3),imshow(B);title(’B');
3、彩色图像得直方图处理
(1)在HSI颜色空间对I(强度)分量进行调整及直方图均衡化。
close all
x=imread('flowers、tif’);
figure
imshow(x)
title(’RGB’)
x_hsi=rgb2hsi(x);% RGB颜色空间转换成HSI颜色空间,
%并显示H、S、I各分量
h=x_hsi(:,:,1);
s=x_hsi(:,:,2);
i=x_hsi(:,:,3);
i1=imadjust(i,[01],[],0、6);%对I分量进行灰度值调整,使图像更亮
x_hsi=cat(3,h,s,i1);
x_h_r=hsi2rgb(x_hsi);% HSI空间转换为RGB空间
figure
imshow(x_h_r)
title(’imadjust(i,[],[],0、6)')
i2=histeq(i); %对I分量进行直方图均衡化,加强对比度
x_hsi=cat(3,h,s,i2);
x_h_r=hsi2rgb(x_hsi); %HSI空间转换为RGB空间
figure
imshow(x_h_r)
title(’histeq(i)')
(2) RGB颜色空间对全彩色进行直方图处理
close all
x=imread('flowers、tif');
figure
imshow(x)
title('RGB’)
r=x(:,:,1); g=x(:,:,2);b=x(:,:,3);
r1=imadjust(r,[01],[],0、6);%对R分量进行灰度值调整
g1=imadjust(g,[0 1],[],0、6); %对G分量进行灰度值调整b1=imadjust(b,[0 1],[],0、6); %对B分量进行灰度值调整
x1=cat(3,r1,g1,b1);
figure; imshow(x1)
title(’imadjust(r/g/b,[],[],0、6)')
r2=histeq(r);%直方图均衡化
g2=histeq(g);
b2=histeq(b);
x2=cat(3,r2,g2,b2);%处理后得R、G、B分量合并回RGB图像figure;imshow(x2)
title(’histeq(r/g/b)')
思考:
ﻩ参考彩色图像得直方图处理方法,分别对RGB图像’flowers、tif’进行尺寸为5*5得均值平滑滤波及拉普拉斯锐化。
(在HIS空间或RGB空间都可以)结果类似下图.
拉普拉斯算子:h=[ -1 -1 -1;
—1 8 —1;
-1 -1—1;];(1)5*5均值平滑滤波
close all;
x=imread('flowers、tif');
h=fspecial('average',5);
y=imfilter(x,h);
subplot(1,2,1);
imshow(x);title('RGB');
subplot(1,2,2);
imshow(y);title(’5*5 均值平滑滤波');
(2)拉普拉斯锐化
close all;
x=imread('flowers、tif');
h=[-1—1 -1;
-1 8 —1;
—1 —1—1;];
y=imfilter(x,h);
subplot(1,2,1);
imshow(x);title('RGB');
subplot(1,2,2);
imshow(y);title(’拉普拉斯滤波’);
三、实验报告
1、按照实验步骤做实验;
2、记录实验结果,并作出总结;
3、按照实验报告格式写出报告。
四、实验心得及机会
通过这次实验,我学会并了解了许多有关数字图像处理方面得知识。
以前只就是瞧着课本上得内容学习,对很多知识只就是生分得了解,但就是不懂得如何应用,通过做实验,自己动手,对图像做一系列得处理与变换,体会到了各种参数对数字图像得影响。
通过此次实验也发现了自己得而许多问题,在对于MATLAB软件得应用上面我还有许多不足,尤其就是对如何编写M文件方面很难掌握,仍有待加强。