彩色图像处理
- 格式:docx
- 大小:15.78 KB
- 文档页数:5
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设计环境中,图像处理工具箱提供一套全方位的参照标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。
基于HSI和LAB颜色空间的彩色图像分割一、本文概述随着科技的发展,图像处理技术在众多领域中的应用日益广泛,如医疗影像分析、卫星遥感、机器视觉等。
在这些应用中,彩色图像分割作为图像处理的核心技术之一,其重要性不言而喻。
彩色图像分割旨在将图像中的像素划分为若干个具有相似特性的区域,从而便于后续的图像分析和理解。
本文主要探讨基于HSI(Hue, Saturation, Intensity)和LAB (Lightness, a, b)颜色空间的彩色图像分割方法。
HSI颜色空间更接近人类视觉感知,能够较好地反映颜色的本质特征,而LAB颜色空间则具有感知均匀性,能够更好地适应不同光照条件下的图像分割。
本文首先介绍HSI和LAB颜色空间的基本原理及其在彩色图像分割中的应用优势。
接着,详细阐述基于这两种颜色空间的彩色图像分割算法,包括预处理、特征提取、分割策略等关键步骤。
通过实验验证所提方法的有效性和准确性,并与现有方法进行比较分析,以展示其在彩色图像分割领域的应用潜力。
二、相关技术研究综述彩色图像分割是计算机视觉领域的一个重要任务,旨在将图像划分为多个具有相似性质的区域。
这一过程的实现依赖于颜色空间的选择和相应的分割算法。
在众多颜色空间中,HSI(色调、饱和度、强度)和LAB(亮度、a通道、b通道)因其与人类视觉感知的紧密关联而受到广泛关注。
HSI颜色空间以人类视觉系统对颜色的感知为基础,其中色调(Hue)描述了颜色的基本属性,如红色、绿色或蓝色饱和度(Saturation)表示颜色的纯度或鲜艳程度强度(Intensity)则与颜色的亮度或明暗程度相关。
这种颜色空间对于颜色分割特别有用,因为它与人类对颜色的直观感知更为接近。
LAB颜色空间则是一种基于人眼对颜色亮度和色差的感知而设计的颜色模型。
L通道表示亮度信息,而a和b通道则分别表示绿色到红色以及蓝色到黄色的色差。
LAB颜色空间的一个显著优点是它的色域比RGB更广,且其亮度通道与色度通道是分离的,这有助于在分割过程中保持颜色的一致性。
数字图像处理----彩色图像处理杨淑莹教授天津理工大学计算机与通信工程学院彩色图像处理彩色图像的灰度化处理 彩色图像马赛克处理 彩色图像的浮雕处理彩色图像的灰度化处理1. 理论分析(1) BMP位图文件类型(2) 24位真彩色图像文件结构(3) 彩色图像的灰度化处理方法2. 理论验证(1)UltraEdit软件对真彩色文件数据剖析(2) 教学软件验证3. 实现步骤4. 编程代码(1) CDib类库的建立(2) CDib派生类的建立----彩色图像处理(3) 灰度化处理代码1.24位真彩色图像(1)每一像素由RGB三个分量组成。
(2)每个分量各占8位,取值范围为0~255,每个像素24位。
(207,137,130) (220,179,163) (215,169,161) (210,179,172) (210,179,172) (207,154,146) (217,124,121) (215,169,161) (216,179,170) (216,179,170) (207,137,120) (159, 51, 71) (213,142,135) (216,179,170) (221,184,170) (190, 89, 89) (204,109,113) (204,115,118) (216,179,170) (220,188,176) (190, 77, 84) (206, 95, 97) (217,113,113) (189, 85, 97) (222,192,179) (150, 54, 71) (177, 65, 73) (145, 39, 65) (150, 47, 67) (112, 20, 56)(136, 38, 65) (112, 20, 56) (112, 20, 56) (109, 30, 65) (112, 20, 56) ( 95, 19, 64)(136, 38, 65) ( 91, 11, 56) (113, 25, 60) (103, 19, 59) ( 81, 12, 59) (126, 62, 94)(138, 46, 71) (103, 19, 59) (158, 65, 83) (124, 40, 70) (145, 62, 79) (130, 46, 73)2.理论分析--24位真彩色图像文件结构位图像素数据位图信息头结构BITMAPINFOHEADER 位图文件头结构BITMAPFILEHEADER 位图像素数据颜色表位图信息头结构BITMAPINFOHEADER位图文件头结构BITMAPFILEHEADER8位位图文件结构24位位图文件结构1)BMP文件头结构typedef struct tagBITMAPFILEHEADER{WORD bfType; // BM,2byteDWORD bfSize;// 文件大小,4byteWORD bfReserved1;// 0WORD bfReserved2;// 0DWORD bfOffBits; // 位图数据的起始位置,}TMAPFILEHEADER;//(14byte)2)位图信息头结构typedef struct tagBITMAPINFOHEADER{DWORD biSize; // biSize=40byteLONG biWidth;LONG biHeight;WORD biPlanes; // 1WORD biBitCount;// 每个像素所需的位数,24 DWORD biCompression; // 位图压缩类型,0DWORD biSizeImage; // 位图的大小,LONG biXPelsPerMeter; // 0LONG biYPelsPerMeter; // 0DWORD biClrUsed; // 颜色数0DWORD biClrImportant; // 重要的颜色数0} BITMAPINFOHEADER;3)位图像素数据(207,137,130) (220,179,163) (215,169,161) (210,179,172) (210,179,172) (207,154,146) (217,124,121) (215,169,161) (216,179,170) (216,179,170) (207,137,120) (159, 51, 71) (213,142,135) (216,179,170) (221,184,170) (190, 89, 89) (204,109,113) (204,115,118) (216,179,170) (220,188,176) (190, 77, 84) (206, 95, 97) (217,113,113) (189, 85, 97) (222,192,179) (150, 54, 71) (177, 65, 73) (145, 39, 65) (150, 47, 67) (112, 20, 56) (136, 38, 65) (112, 20, 56) (112, 20, 56) (109, 30, 65) (112, 20, 56) ( 95, 19, 64) (136, 38, 65) ( 91, 11, 56) (113, 25, 60) (103, 19, 59) ( 81, 12, 59) (126, 62, 94) (138, 46, 71) (103, 19, 59) (158, 65, 83) (124, 40, 70) (145, 62, 79) (130, 46, 73)1.理论分析--彩色图像的灰度化处理使颜色的R、G、B分量值相等。
1种颜色
颜色定义:颜色是对象的一种属性,它取决于三个因素。
(1)光源-照射光的光谱特性或光谱能量分布
(2)物体-被照射物体的反射特性
(3)成像接收器(眼睛或成像传感器)-光谱能量吸收特性
2色模型
颜色模型,也称为颜色空间或颜色系统,是用于精确校准和生成各种颜色的一组规则和定义。
其目的是在某些标准下以通常可接受的方式简化颜色规格。
可以通过坐标系描述颜色模型,并且系统中的每种颜色都可以由坐标空间中的单个点表示。
RGB模型:此模型是行业中的颜色标准。
通过更改红色和绿色蓝色三种颜色的亮度及其叠加,可以获得各种颜色。
该标准几乎涵盖了人类视觉可以感知的所有颜色,并且是目前使用最广泛的颜色模型之一。
CMY模型:颜色合成方法由绿色,品红色和黄色三种基本原色组成。
因为彩色显示不是直接来自光的颜色,而是光被对象吸收并被产生的残留光反射,所以CMY模型也称为减法混合模型。
CMYK模型:将黑色添加到CMY模型。
RGB和CMY之间的转换:在MATLAB中,可以通过imcompliance()函数轻松实现RGB和CMY之间的转换
cmy = imcomplement(rgb);
rgb = imcomplement(cmy);
HSI模型:HSI模型基于人类视觉系统,并通过使用色相,饱和度和强度三个元素直接描述颜色
@亮度是指人们感到光亮的阴影。
光的能量越大,亮度越大。
@Hue是颜色的最重要属性,它决定颜色的本质,颜色的本质由反射光的主波长确定。
不同的波长产生不同的色彩感觉。
@饱和度是指颜色的深度和强度,饱和度越高,颜色越深。
饱和深度与白色的比率有关,白色比率越大,饱和度越低。
从RGB到HSI的颜色转换及其实现
数字;
子图(1,2,1);
rgb = imread('plane.bmp)。
imshow(rgb); title('rgb');
子图(1,2,2);
hsi = rgb2hsi(rgb);
imshow(hsi); title('hsi');
从HSI到RGB的颜色转换及其实现
数字
子图(1,2,1);
hsi = imread('plane.bmp)。
imshow(hsi); title('hsi');
子图(1,2,2);
rgb = hsi2rgb(hsi);
imshow(rgb); title('rgb');
HSV模型:人们用来从调色板或色轮中选择颜色(例如颜料,墨水等)的颜色系统之一。
HSV表示色相,饱和度和值。
该系统比RGB更接近人们的色彩体验和感知从RGB到HSV的转换和实现:RGB图像输入可以是uint8,uint16或double类型,而输出图像HSV是M * n * 3的double类型。
YUV模型:Y代表亮度,u,V代表色差,它是颜色的两个组成部分。
YUV模型的主要优点之一是亮度信号Y和色度信号u和V是分开的。
如果只有Y信号分量而没有u 和V分量,则图像为黑白灰度
YIQ模型:它是北美NTSC色彩系统,主要用于美国的电视系统中。
这种形式具有与欧洲YUV模式相同的优点:灰色信息和颜色信息是分开的。
亮度表示灰度,而色相和饱和度则存储颜色信息。
Matlab函数rgbcntsc()可以实现从RGB到NTSC的转换。
调用形式如下:YIQ = rgbcntsc (RGB);
RGB图像输入可以是uint8
实验室模型:由CIE(国际照明委员会)开发的颜色模型。
该模型与设备无关,弥补了RGB模型和CMYK模型必须依靠设备的色彩特性的不足;此外,自然界中的任何颜色都可以在实验室空间中表达,这意味着RGB和CMYK可以描述可以在实验室中映射的颜色信息。
其中l代表亮度;a的整数表示红色,负端表示绿色;B的正数表示黄色,而负数表示蓝色。