數(shù)字圖像處理課程設(shè)計報告報告
《數(shù)字圖像處理課程設(shè)計報告報告》由會員分享,可在線閱讀,更多相關(guān)《數(shù)字圖像處理課程設(shè)計報告報告(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、. 數(shù)字圖像處理 課程設(shè)計報告 姓 名: 學(xué) 號: 班 級: .net 設(shè)計題目:圖像處理 教 師:哲 教師 提交日期: 12月29日 一、設(shè)計容: 主題:"圖像處理" 詳細(xì)說明:對圖像進(jìn)展處理〔簡單濾鏡,模糊,銳化,高斯模糊等〕,對圖像進(jìn)展處理〔上下對稱,左右對稱,單雙色顯示,亮暗程度調(diào)整等〕,對圖像進(jìn)展特效處理〔反色,實(shí)色混合,色彩平衡,浮雕效果,素描效果,霧化效果等〕, 二、涉及知識容: 1、二值化 2、各種濾波 3、算法等 三、設(shè)計流程圖 插入圖片
2、 對圖片進(jìn)展處理 二值化處理 重復(fù) 輸出兩幅圖 完畢 四、實(shí)例分析及截圖效果: 運(yùn)行效果截圖: 第一步:讀取原圖,并顯示 close all;clear;clc; % 清楚工作窗口clc 清空變量clear 關(guān)閉翻開的窗口close all I=imread('1.jpg'); % 插入圖片1.jpg 賦給I imshow(I);% 輸出圖I I1=rgb2gray(I);%圖片變灰度圖 f
3、igure%新建窗口 subplot(321);% 3行2列第一幅圖 imhist(I1);%輸出圖片 title('原圖直方圖');%圖片名稱 一,圖像處理 模糊 H=fspecial('motion',40); %% 濾波算子 模糊程度40 motion運(yùn)動 q=imfilter(I,H,'replicate');%imfilter實(shí)現(xiàn)線性空間濾波函數(shù),I圖經(jīng)過H濾波處理,replicate反復(fù)復(fù)制 q1=rgb2gray(q); imhist(q1); title('模糊圖直方圖'); 二,圖像處理 銳化 H=fspecial('unsharp')
4、;%銳化濾波算子,unsharp不清晰的 qq=imfilter(I,H,'replicate'); qq1=rgb2gray(qq); imhist(qq1); title('銳化圖直方圖'); 三,圖像處理 浮雕(來源網(wǎng)絡(luò)) %浮雕圖 l=imread('1.jpg'); f0=rgb2gray(l);%變灰度圖 f1=imnoise(f0,'speckle',0.01); %高斯噪聲 參加密度為0.01的高斯乘性噪聲 imnoise噪聲污染圖像函數(shù) speckle斑點(diǎn) f1=im2double(f1);%把圖像數(shù)據(jù)類型轉(zhuǎn)換為雙精度浮點(diǎn)類型 h3=1/9.*[1
5、1 1;1 1 1;1 1 1]; %采用h3對圖像f2進(jìn)展卷積濾波 f4=conv2(f1,h3,'same'); %進(jìn)展sobel濾波 h2=fspecial('sobel'); g3=filter2(h2,f1,'same');%卷積和多項(xiàng)式相乘 same一樣的 k=mat2gray(g3);% 實(shí)現(xiàn)圖像矩陣的歸一化操作 四,圖像處理 素描(來源網(wǎng)絡(luò)) f=imread('1.jpg'); [VG,A,PPG] = colorgrad(f); ppg = im2uint8(PPG); ppgf = 255 - ppg; [M,N] = size(ppgf);T=
6、200;
ppgf1 = zeros(M,N);
for ii = 1:M
for jj = 1:N
if ppgf(ii,jj) 7、
function [VG, A, PPG] = colorgrad(f, T)
if (ndims(f)~=3) || (size(f,3)~=3)
error('Input image must be RGB');
end
sh = fspecial('sobel');
sv = sh';
R* = imfilter(double(f(:,:,1)), sh, 'replicate');
Ry = imfilter(double(f(:,:,1)), sv, 'replicate');
G* = imfilter(double(f(:,:,2)), sh, 'rep 8、licate');
Gy = imfilter(double(f(:,:,2)), sv, 'replicate');
B* = imfilter(double(f(:,:,3)), sh, 'replicate');
By = imfilter(double(f(:,:,3)), sv, 'replicate');
g** = R*.^2 + G*.^2 + B*.^2;
gyy = Ry.^2 + Gy.^2 + By.^2;
g*y = R*.*Ry + G*.*Gy + B*.*By;
A = 0.5*(atan(2*g*y./(g**-gyy+eps)));
G1 = 9、 0.5*((g**+gyy) + (g**-gyy).*cos(2*A) + 2*g*y.*sin(2*A));
A = A + pi/2;
G2 = 0.5*((g**+gyy) + (g**-gyy).*cos(2*A) + 2*g*y.*sin(2*A));
G1 = G1.^0.5;
G2 = G2.^0.5;
VG = mat2gray(ma*(G1, G2));
RG = sqrt(R*.^2 + Ry.^2);
GG = sqrt(G*.^2 + Gy.^2);
BG = sqrt(B*.^2 + By.^2);
PPG = mat2gray(RG + GG 10、+ BG);
if nargin ==2
VG = (VG>T).*VG;
PPG = (PPG>T).*PPG;
end
f1=rgb2gray(f);
imhist(f1);
title('素描圖直方圖');
五,圖像處理 實(shí)色混合(來源網(wǎng)絡(luò))
%實(shí)色混合
I(I<=127)=0; %對像素進(jìn)展處理,假設(shè)值小于等于127,置0
I(I>127)=255; %對像素進(jìn)展處理,假設(shè)值大于127,置255
imshow(I);
title('像素圖');
I1=rgb2gray(f);
imhi 11、st(I1);
title('像素圖直方圖');
六,圖像處理 反色圖
f=imread('1.jpg');
q=255-q;
imshow(q);
title('反色圖');
imhist(q1);
title('反色圖直方圖');
七,圖像處理 上下對稱
A=imread('1.jpg');
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)
ti 12、tle('上下對稱');
A=rgb2gray(A);
figure
imhist(A)
title('上下對稱直方圖');
八,圖像處理類 左右對稱
C=imread('1.jpg');
A=C;
C(1:a,1:b1,1:c)=A(1:a,b:-1:b+1-b1,1:c);
figure
imshow(C)
title('左右對稱');
A=rgb2gray(A);
figure
imhist(A);
title('左右對稱直方圖');
九,圖像處理 單雙色顯示
a=imread('1.jpg');
a1=a(:,:,1); 13、a2=a(:,:,2); a3=a(:,:,3);
aa=rgb2gray(a);
a4=cat(3,a1,aa,aa); a5=cat(3,a1,a2,aa);
figure
subplot(121);
imshow(a4);
title('單色顯示');
subplot(122);
imshow(a5);
title('雙色顯示');
a4=rgb2gray(a4);
a5=rgb2gray(a5);
figure
subplot(121);
imhist(a4);
title('單色顯示直方圖 14、');
subplot(122);
imhist(a5);
title('雙色顯示直方圖');
十,圖像處理 亮暗度調(diào)整
a=imread('1.jpg');
a1=0.8*a;
a2=2*a;
figure
subplot(121);imshow(a1);
title('暗圖');
subplot(122);
imshow(a2);
title('亮圖')
q3=rgb2gray(a1);q4=rgb2gray(a2);
figure
subplot(121);mhist(q3);title('暗圖直方圖')
subplot(122);
i 15、mhist(q4);
title('亮圖直方圖')
十一,圖像處理 霧化處理
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-10
k=rand(1)*10;%產(chǎn)生一個隨機(jī)數(shù)作為半徑
di=i+round(mod(k,33));%得到隨機(jī)橫坐標(biāo)
dj=j+round(mod(k,33));%得到隨機(jī)縱坐標(biāo)
r(i,j)=r(di,dj);%將原像素點(diǎn)用隨機(jī)像素點(diǎn)代替
g(i, 16、j)=g(di,dj);
b(i,j)=b(di,dj);
end
end
a(:,:,1)=r;a(:,:,2)=g;a(:,:,3)=b;
imshow(a)
title('霧化處理圖');
q=rgb2gray(a);
figure
imhist(q);
title('霧化處理圖直方圖');
十二,圖像處理 高斯濾波
I = imread('1.jpg');
G =fspecial('gaussian', [5 5], 2);
% fspecial生成一個高斯濾波器
Ig =imfilter(I,G,'same');
%imfilter使用該濾波器 17、處理圖片
imshow(Ig);
title('高斯濾波');
I1=rgb2gray(Ig);
figure
imhist(I1);
title('高斯濾波直方圖');
十三,圖像處理 色彩平衡〔來自網(wǎng)絡(luò)〕
im=imread('1.jpg');
im2=im;%存儲元圖像
im1=rgb2ycbcr(im);
%將im RGB圖像轉(zhuǎn)換為YCbCr空間。YCbCr空間 Y亮度信息。 Cb是藍(lán)色分量和一個參考值得差
%Cr是紅色分量和一個參考值得差。"
%im1是一個M*N*3的矩陣。
Lu=im1(:,:,1);%獲取亮度分量 "是一個M*N矩陣
Cb=im1 18、(:,:,2);%獲取藍(lán)色偏差量 "Cb是一個M*N的矩陣
Cr=im1(:,:,3);%獲取紅色偏差量 "Cr是一個M*N的矩陣
[* y z]=size(im);%獲得im的size將值賦給*=M y=N z=3.
tst=zeros(*,y); %建立一個M*N的0矩陣tst
Mb=sum(sum(Cb));
%sum(Cb)將每一列相加得到一個N維行向量。 sum(sum(Cb))將行向量元素相加。得到一個數(shù)Mb
Mr=sum(sum(Cr));%同理得到Mr
Mb=Mb/(**y);
Mr=Mr/(**y);%Mb,Mr分別除以**y. 得到藍(lán)色和紅色的均值。
D 19、b=sum(sum(Cb-Mb))/(**y);
Dr=sum(sum(Cr-Mr))/(**y); %得到b,r的方差
t=1;
for i=1:*
for j=1:y
b1=Cb(i,j)-(Mb+Db*sign(Mb));
b2=Cr(i,j)-(1.5*Mr+Dr*sign(Mr));
if (b1<(1.5*Db) & b2<(1.5*Dr));
Ciny(t)=Lu(i,j); %獲得一個列向量Ciny維度為t-1
tst(i,j)=Lu(i,j);
t=t+1;
end
end
end
t=t-1;
iy=sort(Ciny,'descend') 20、;%將列向量Ciny元素降序排列
nn=round(t/10);
Ciny2(1:nn)=iy(1:nn); %將iy的1到nn個元素復(fù)制給Ciny2
mn=min(Ciny2);
c=0;
for i=1:*
for j=1:y
if tst(i,j) 21、).*tst;
Rav=mean(mean(R));%求均值先列后行
Gav=mean(mean(G));
Bav=mean(mean(B));
Yma*=double(ma*(ma*(Lu)))/15;
Rgain=Yma*/Rav;
Ggain=Yma*/Gav;
Bgain=Yma*/Bav;
im(:,:,1)=im(:,:,1)*Rgain;
im(:,:,2)=im(:,:,2)*Ggain;
im(:,:,3)=im(:,:,3)*Bgain;
W=im;
figure,imshow(im2,[]),title('原始圖像');
figure,imsho 22、w(im,[]),title('色彩平衡處理后的圖像');
im1=rgb2gray(im);
% subplot(326);
figure
imhist(im1);
title('色彩平衡處理后直方圖');
十四,圖像處理 明暗反轉(zhuǎn)〔網(wǎng)絡(luò)〕
f = imread('1.jpg');
% f = rgb2gray(f);
g1 = imadjust(f, [0 1], [1 0]);
g2 = imadjust(f, [0.5 0.75], [0 1]);
imshow(g2);
title('明暗反轉(zhuǎn)');
figure
g = rgb2gray(g2);
i 23、mhist(g);
title('明暗反轉(zhuǎn)直方圖');
十五,圖像處理 反轉(zhuǎn)負(fù)沖效果〔負(fù)片圖片〕
f = imread('1.jpg');
g =implement(f);%IPT函數(shù)implement
imshow(g);
title('負(fù)片圖片');
g1=rgb2gray(g);
figure
imhist(g1);
title('負(fù)片圖片直方圖');
%明暗反轉(zhuǎn)功能讓這種獲得明暗反轉(zhuǎn)圖像的過程可用于增強(qiáng)潛入在大片黑色區(qū)域中的白色或灰色細(xì)節(jié)
十六,圖像處理 直方圖均衡化
a=imread('1.jpg');
b=rgb2gray(a);
im 24、show(b);
c=histeq(b); %直方圖均衡化
imshow(c);
title('直方圖均衡化');
figure
imhist(c);
title('直方圖均衡化直方圖');
十七,圖像處理 椒鹽噪聲
M=imread('1.jpg') ;
P2=imnoise(M,'salt & pepper',0.02); %參加椒鹽噪聲
imshow(P2);
title('椒鹽噪聲 ');
qq=rgb2gray(P2);
figure
imhist(qq);
title('椒鹽噪聲直方圖');
25、
十八,圖像處理 高斯噪聲
M=imread('1.jpg') ;
P1=imnoise(M,'gaussian',0.02); %參加高斯噪聲
imshow(P1) ;
title('高斯噪聲 ');
qq=rgb2gray(P1);
figure
imhist(qq);
title('高斯噪聲直方圖');
十九,圖像處理類一
二十,圖像處理類一
二十一,圖像處理類一
二十二,圖像處理類一
二十三,圖像處理類一
二十四,圖像處理類一
二十五,圖像處理類一
五,
六、心得體會
這次實(shí)驗(yàn)有很多效果都沒做出來,木刻效果沒有找到代碼也沒頭緒,剪紙效果做了很久做 26、不出來,只知道要先變成灰度圖,調(diào)整比照度,只顯示黑白兩色,去掉黑色,變成只有紅白色的圖片就回具有剪紙效果。很多知識都想不起來代碼,過程忘了,尤其是轉(zhuǎn)換色彩空間做冰凍連環(huán)畫效果,做了很久,也百度了很久,找不到轉(zhuǎn)換。
這次實(shí)驗(yàn)最大認(rèn)知就是知道的Matlab有多么的高大上,可以做動漫,可以做PS里的幾乎所有功能,比PS更加細(xì)致化,數(shù)字化,對圖像處理的特效,可以隨心所欲的做處理。
可惜時間不多,也沒有做出更多的效果,深表遺憾,對知識的掌握不熟練,書上得來終覺淺,課下會更多的實(shí)踐,去了解,去學(xué)習(xí),去實(shí)踐,去對Matlab做更深入的學(xué)習(xí)。
七、程序資料清單和源代碼
均來自百度百科
. >
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。