文档详情

数字图像处理-课程设计报告-matlab

jiups****uk12
实名认证
店铺
DOC
9.42MB
约27页
文档ID:40183526
数字图像处理-课程设计报告-matlab_第1页
1/27

《数字图像处理》课程设计报告 - 0 -数字图像处理数字图像处理课程设计报告课程设计报告姓姓 名:名: 学学 号:号: 班班 级:级: .net 设计题目:设计题目: 图像处理 教教 师:师: 赵哲 老师 提交日期提交日期:: 12 月 29 日 《数字图像处理》课程设计报告 - 1 -一、设计内容:一、设计内容:主题:《图像处理》详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,,浮雕效果,素描效果,雾化效果等),二、涉及知识内容:二、涉及知识内容:1、二值化2、各种滤波3、算法等三、设计流程图三、设计流程图 插入图片 对图片进行处理二值化处理 重复输出两幅图 结束 四、实例分析及截图效果:四、实例分析及截图效果:《数字图像处理》课程设计报告 - 2 -运行效果截图:运行效果截图:第一步:读取原图第一步:读取原图, ,并显示并显示close all;clear;clc;% 清楚工作窗口 clc 清空变量 clear 关闭打开的窗口 close all I=imread('1.jpg');% 插入图片 1.jpg 赋给 Iimshow(I);% 输出图 II1=rgb2gray(I);%图片变灰度图figure%新建窗口subplot(321);% 3 行 2 列第一幅图imhist(I1);%输出图片title('原图直方图');%图片名称《数字图像处理》课程设计报告 - 3 -一,图像处理一,图像处理 模糊模糊 H=fspecial('motion',40);%% 滤波算子 模糊程度 40 motion 运动q=imfilter(I,H,'replicate');%imfilter 实现线性空间滤波函数,I 图经过 H 滤波处理,replicate 反复复制q1=rgb2gray(q);imhist(q1);title('模糊图直方图');《数字图像处理》课程设计报告 - 4 -二,图像处理二,图像处理 锐化锐化H=fspecial('unsharp');%锐化滤波算子,unsharp 不清晰的 =imfilter(I,H,'replicate');1=rgb2gray();imhist(1);title('锐化图直方图');《数字图像处理》课程设计报告 - 5 -三,图像处理三,图像处理 浮雕浮雕( (来源网络来源网络) )%浮雕图 l=imread('1.jpg');f0=rgb2gray(l);%变灰度图 f1=imnoise(f0,'speckle',0.01);%高斯噪声 加入密度为 0.01 的高斯乘性噪声 imnoise 噪声污染图像函数 speckle 斑点f1=im2double(f1);%把图像数据类型转换为双精度浮点类型 h3=1/9.*[1 1 1;1 1 1;1 1 1];%采用 h3 对图像 f2 进行卷积滤波 f4=conv2(f1,h3,'same');%进行 sobel 滤波 h2=fspecial('sobel');g3=filter2(h2,f1,'same');%卷积和多项式相乘 same 相同的k=mat2gray(g3);% 实现图像矩阵的归一化操作四,图像处理四,图像处理 素描素描( (来源网络来源网络) )f=imread('1.jpg');[VG,A,PPG] = colorgrad(f);ppg = im2uint8(PPG);ppgf = 255 - ppg;[M,N] = size(ppgf);T=200;ppgf1 = zeros(M,N);for ii = 1:Mfor jj = 1:Nif ppgf(ii,jj)T).*VG;《数字图像处理》课程设计报告 - 7 -PPG = (PPG>T).*PPG;endf1=rgb2gray(f);imhist(f1);title('素描图直方图');五,图像处理五,图像处理 实色混合实色混合( (来源网络来源网络) )%实色混合《数字图像处理》课程设计报告 - 8 -I(I127)=255; %对像素进行处理,若值大于 127,置 255 imshow(I);title('像素图');I1=rgb2gray(f);imhist(I1);title('像素图直方图');六,图像处理六,图像处理 反色图反色图f=imread('1.jpg');《数字图像处理》课程设计报告 - 9 -q=255-q;imshow(q);title('反色图');imhist(q1);title('反色图直方图');七,图像处理七,图像处理 上下对称上下对称A=imread('1.jpg');《数字图像处理》课程设计报告 - 10 -B=A;[a,b,c]=size(A);a1=floor(a/2); b1=floor(b/2); c1=floor(c/2);B(1:a1,1:b,1:c)=A(a:-1:a-a1+1,1:b,1:c);figure imshow(B)title('上下对称');A=rgb2gray(A);figureimhist(A)title('上下对称直方图');八,图像处理类八,图像处理类 左右对称左右对称C=imread('1.jpg');《数字图像处理》课程设计报告 - 11 -A=C; C(1:a,1:b1,1:c)=A(1:a,b:-1:b+1-b1,1:c);figureimshow(C)title('左右对称');A=rgb2gray(A);figureimhist(A);title('左右对称直方图');九,图像处理九,图像处理 单双色显示单双色显示a=imread('1.jpg'); 《数字图像处理》课程设计报告 - 12 -a1=a(:,:,1);a2=a(:,:,2); a3=a(:,:,3);aa=rgb2gray(a);a4=cat(3,a1,aa,aa); a5=cat(3,a1,a2,aa);figuresubplot(121);imshow(a4);title('单色显示');subplot(122);imshow(a5);title('双色显示');a4=rgb2gray(a4);a5=rgb2gray(a5);figuresubplot(121);imhist(a4);title('单色显示直方图');subplot(122);imhist(a5);title('双色显示直方图');十,图像处理十,图像处理 亮暗度调整亮暗度调整a=imread('1.jpg');《数字图像处理》课程设计报告 - 13 -a1=0.8*a;a2=2*a;figuresubplot(121);imshow(a1);title('暗图'); subplot(122);imshow(a2);title('亮图')q3=rgb2gray(a1);q4=rgb2gray(a2);figuresubplot(121);mhist(q3);title('暗图直方图') subplot(122);imhist(q4);title('亮图直方图')十一,图像处理十一,图像处理 雾化处理雾化处理《数字图像处理》课程设计报告 - 14 -q=imread('1.jpg');m=size(q,1);n=size(q,2);r=q(:,:,1);g=q(:,:,2);b=q(:,:,3);for i=2:m-10 for j=2:n-10k=rand(1)*10;%产生一个随机数作为半径di=i+round(mod(k,33));%得到随机横坐标dj=j+round(mod(k,33));%得到随机纵坐标r(i,j)=r(di,dj);%将原像素点用随机像素点代替g(i,j)=g(di,dj);b(i,j)=b(di,dj);endenda(:,:,1)=r;a(:,:,2)=g;a(:,:,3)=b;imshow(a)title('雾化处理图');q=rgb2gray(a);figureimhist(q);title('雾化处理图直方图');《数字图像处理》课程设计报告 - 15 -十二,图像处理十二,图像处理 高斯滤波高斯滤波I = imread('1.jpg');G =fspecial('gaussian', [5 5], 2);% fspecial 生成一个高斯滤波器 Ig =imfilter(I,G,'same');%imfilter 使用该滤波器处理图片 imshow(Ig);title('高斯滤波');I1=rgb2gray(Ig);figureimhist(I1);title('高斯滤波直方图');《数字图像处理》课程设计报告 - 16 -十三,图像处理十三,图像处理 色彩平衡(来自网络)色彩平衡(来自网络)im=imread('1.jpg');im2=im;%存储元图像 im1=rgb2ycbcr(im);%将 im RGB 图像转换为 YCbCr 空间。

YCbCr 空间 Y 亮度信息 Cb 是蓝色分量和一个参考值得差%Cr 是红色分量和一个参考值得差im1 是一个 M*N*3 的矩阵Lu=im1(:,:,1);%获取亮度分量 ?是一个 M*N 矩阵Cb=im1(:,:,2);%获取蓝色偏差量 ?Cb 是一个 M*N 的矩阵Cr=im1(:,:,3);%获取红色偏差量 ?Cr 是一个 M*N 的矩阵[x y z]=size(im);%获得 im 的 size 将值赋给 x=M y=N z=3.tst=zeros(x,y); %建立一个 M*N 的 0 矩阵 tst Mb=sum(sum(Cb)); %sum(Cb)将每一列相加得到一个 N 维行向量 sum(sum(Cb))将行向量元素相加得到一个数 MbMr=sum(sum(Cr));%同理得到 MrMb=Mb/(x*y);Mr=Mr/(x*y);%Mb,Mr 分别除以 x*y. 得到蓝色和红色的均值Db=sum(sum(Cb-Mb))/(x*y); Dr=sum(sum(Cr-Mr))/(x*y); %得到 b,r 的方差《数字图像处理》课程设计报告 - 17 -cnt=1; for i=1:xfor j=1:yb1=Cb。

下载提示
相似文档
正为您匹配相似的精品文档