数字图像处理课程设计.doc
《 数字图像处理 》课程设计 —— 指导教师:曹丽、周维达 班级:14 电科(1)班 学号:2014329600077 姓名:苏布艾提·艾克特然木信息工程学院数字图像处理实验 一、实验目的 1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理 与方法。 2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。 二、实验总体设计(流程图) 三、实验详细设计(各个功能模块设计及实现主要函数) 要求学生能够完成彩色图像的分析,能正确讨论彩色图像的亮度、色调等性质;会 对彩色图像进行直方图均衡,并能正确解释均衡处理后的结果;能够对单色图像进 行伪彩色处理、利用多波长图像进行假彩色合成、进行单色图像的彩色变换。 利用MATLAB软件实现彩色图像处理的程序: rgb_image=imread( flower1.tif ); %读取图像flower1.tif fR=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分量; 根据各个分量图像的情况讨论该彩色图像的亮度、色调等性质。 rgb_image=imread( 3.jpg ); fR=rgb_image(:,:,1); imwrite(fR, v1_red.jpg ); fG=rgb_image(:,:,2); imwrite(fR, v1_green.jpg ); fB=rgb_image(:,:,3); imwrite(fR, v1_blue.jpg ); figure(1); subplot(1,3,1),imshow(fR) subplot(1,3,2),imshow(fG) subplot(1,3,3),imshow(fB)信息工程学院数字图像处理实验 (2) 彩色图像的直方图均衡 接内容(1); 显示这幅图像的R,G,B分量的直方图,分别进行直方图均衡处理,并显示均衡 后的直方图和直方图均衡处理后的各分量; 将处理完毕的各个分量合成彩色图像并显示其结果; 观察处理前后图像的彩色、亮度、色调等性质的变化。 yiq_image=rgb2ntsc(rgb_image); fY=yiq_image(:,:,1); fI=yiq_image(:,:,2); fQ=yiq_image(:,:,3); figure(2); subplot(1,3,1),imshow(fY) subplot(1,3,2),imshow(fI) subplot(1,3,3),imshow(fQ)信息工程学院数字图像处理实验 (3) 假彩色处理 调入并显示红色可见光的灰度图像vl_red.jpg、绿色可见光的灰度图像 vl_green.jpg和蓝色可见光的灰度图像vl_blue.jpg;以及近红外灰度图像 infer_near.jpg和中红外灰度图像infer_mid.jpg; 以图像vl_red.jpg为R;图像vl_green.jpg为G;图像vl_blue.jpg为B,将这三 幅图像组合成可见光RGB彩色图像; 分别以近红外图像infer_near.jpg和中红外图像infer_mid替换R分量,形成假 彩色图像; 观察处理的结果,注意不同波长红外线图像组成图像的不同结果 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( v1_red.jpg ); ture_color=cat(3,f1,f2,f3); figure,imshow(ture_color) false_color=