數(shù)字圖像處理(MATLAB版)-課件_第1頁
數(shù)字圖像處理(MATLAB版)-課件_第2頁
數(shù)字圖像處理(MATLAB版)-課件_第3頁
數(shù)字圖像處理(MATLAB版)-課件_第4頁
數(shù)字圖像處理(MATLAB版)-課件_第5頁
已閱讀5頁,還剩201頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

數(shù)字圖像處理浙江大學數(shù)字圖像處理浙江大學1/1、圖像的讀取和顯示/2、圖像的點運算/4、空間域圖像增強/5、頻率域圖像增強/6、彩色圖像處理/7、形態(tài)學圖像處理/8、圖像分割/9、特征提取/3、圖像的幾何變換/1、圖像的讀取和顯示/2、圖像的點運算/4、空間域圖像增強2/1、圖像的讀取和顯示一、圖像的讀取A=imread()

指定圖像文件的完整路徑和文件名。如果在work工作目錄下只需提供文件名。FMT為圖像文件的格式對應的標準擴展名。I_1=imread('D:\10.06.08nir\TTC10377.BMP');%讀入圖像二、圖像的寫入imwrite(A,)參數(shù)指定文件名。FMT為保存文件采用的格式。imwrite(I6,'nirdilatedisk2TTC10373.bmp');/1、圖像的讀取和顯示一、圖像的讀取A=imread()指3/1、圖像的讀取和顯示三、圖像的顯示imshow(I,[lowhigh])I為要顯示的圖像矩陣。[lowhigh]為指定顯示灰度圖像的灰度范圍。高于high的像素被顯示成白色;低于low的像素被顯示成黑色;介于High和low之間的像素被按比例拉伸后顯示為各種等級的灰色。

figure;imshow(I6);title('TheMainPassPartofTTC10373');figure;%創(chuàng)建一個新的窗口figure;subplot(m,n,p);imshow(I);Subplot(m,n,p)含義為:打開一個有m行n列圖像位置的窗口,并將焦點位于第p個位置上。/1、圖像的讀取和顯示三、圖像的顯示imshow(I,[lo4/1、圖像的讀取和顯示四、圖像的格式轉(zhuǎn)換im2bw(I,LEVEL);rgb2gray;從RGB圖創(chuàng)建灰度圖,存儲類型不變。im2uint8將圖像轉(zhuǎn)換成uint8類型閾值法從灰度圖、RGB圖創(chuàng)建二值圖。LEVEL為指定的閾值;(0,1)。im2double將圖像轉(zhuǎn)換成double類型/1、圖像的讀取和顯示四、圖像的格式轉(zhuǎn)換im2bw(I,LE5/2、圖像的點運算灰度直方圖描述了一副圖像的灰度級統(tǒng)計信息,主要應用于圖像分割和圖像灰度變換等處理過程中。從數(shù)學角度來說,圖像直方圖描述圖像各個灰度級的統(tǒng)計特性,它是圖像灰度值的函數(shù),統(tǒng)計一幅圖像中各個灰度級出現(xiàn)的次數(shù)或概率。歸一化直方圖可以直接反映不同灰度級出現(xiàn)的比率。橫坐標為圖像中各個像素點的灰度級別,縱坐標表示具有各個灰度級別的像素在圖像中出現(xiàn)的次數(shù)或概率。imhist(I);%灰度直方圖I=imread(‘red.bmp’);%讀入圖像

figure;%打開新窗口[M,N]=size(I);%計算圖像大小[counts,x]=imhist(I,32);%計算有32個小區(qū)間的灰度直方圖counts=counts/M/N;%計算歸一化灰度直方圖各區(qū)間的值stem(x,counts);%繪制歸一化直方圖一、圖像直方圖圖像直方圖歸一化/2、圖像的點運算灰度直方圖描述了一副圖像6數(shù)字圖像處理(MATLAB版)-課件7/2、圖像的點運算二、灰度的線性變換Fa>1時,輸出圖像的對比度將增大;Fa<1時,輸出圖像對比度將減小。Fa=1且Fb非零時,所有像素的灰度值上移或下移,使整個圖像更暗或更亮。Fa<0,暗區(qū)變亮,亮區(qū)變暗。/2、圖像的點運算二、灰度的線性變換Fa>1時,輸出圖像的對8數(shù)字圖像處理(MATLAB版)-課件9數(shù)字圖像處理(MATLAB版)-課件10/2、圖像的點運算三、灰度的對數(shù)變換c為尺度比例常數(shù),s為源灰度值,t為變換后的目標灰度值。k為常數(shù)?;叶鹊膶?shù)變換可以增強一幅圖像中較暗部分的細節(jié),可用來擴展被壓縮的高值圖像中的較暗像素。廣泛應用于頻譜圖像的顯示中。Warning:log函數(shù)會對輸入圖像矩陣s中的每個元素進行操作,但僅能處理double類型的矩陣。而從圖像文件中得到的圖像矩陣大多是uint8類型的,故需先進行im2double數(shù)據(jù)類型轉(zhuǎn)換。/2、圖像的點運算三、灰度的對數(shù)變換c為尺度比例常數(shù),s為源11I=imread('nir.bmp');%讀入圖像F=fft2(im2double(I));%FFTF=fftshift(F);%FFT頻譜平移F=abs(F);T=log(F+1);%頻譜對數(shù)變換figure;imshow(F,[]);title('未經(jīng)變換的頻譜');figure;imshow(T,[]);title('對數(shù)變換后');I=imread('nir.bmp');%讀入圖像12/2、圖像的點運算三、灰度的Gamma變換其中,x、y的取值范圍為[0,1]。esp為補償系數(shù),r則為Gamma系數(shù)。Gamma變換是根據(jù)r的不同取值選擇性的增強低灰度區(qū)域的對比度或者高灰度區(qū)域的對比度。/2、圖像的點運算三、灰度的Gamma變換其中,x、y的取值13J=imadjust(I,[low_inhigh_in],[low_outhigh_out],gamma)I=imread('nir.bmp');figure;imshow(imadjust(I,[],[],0.75));%gamma=0.5title('Gamma0.5');原NIR圖像Gamma0.5J=imadjust(I,[low_inhigh_in14四、灰度閾值變換及二值化Gamma1.5T為指定閾值BW=im2bw(I,level);%level為人工設定閾值范圍為[0,1]thresh=graythresh(I);%自動設定所需的最優(yōu)化閾值四、灰度閾值變換及二值化Gamma1.5T為指定閾值BW15OTSU算法:最大類間方差法自動單閾值分割。Kapur算法:一維直方圖熵閾值算法niblack算法:局部閾值分割閾值的計算公式是T=m+k*v,其中m為以該像素點為中心的區(qū)域的平均灰度值,v是該區(qū)域的標準差,k是一個系數(shù)。kittlerMet:表示kittler最小分類錯誤(minimumerrorthresholding)全局二值化算法。

原圖像直接閾值分割0.25OTSU算法:最大類間方差法自動單閾值分割。Kapur算法:16自動閾值分割OTSU算法分割KittlerMet算法Niblack算法Kapur算法自動閾值分割OTSU算法分割KittlerMet算法Nibl17/2、圖像的點運算五、直方圖均衡化[J,T]=histeq(I);%J為輸出圖像,T為變換矩陣圖像易受光照、視角、方位、噪聲等的影響。使得同一類圖像的不同變形體之間的差距有時大于該類圖像與另一類圖像之間的差距,影響圖像識別、分類。圖像歸一化就是將圖像轉(zhuǎn)換到唯一的標準形式以抵抗各種變換,從而消除同類圖像不同變形體之間的外觀差異。也稱為圖像灰度歸一化。原圖像及直方圖/2、圖像的點運算五、直方圖均衡化[J,T]=histeq(18圖像變亮后灰度均衡化圖像變暗后灰度均衡化圖像變亮后灰度均衡化圖像變暗后灰度均衡化19/3、圖像的幾何變換一、圖像平移正變換逆變換strel%用來創(chuàng)建形態(tài)學結(jié)構(gòu)元素translate(SE,[yx])%原結(jié)構(gòu)元素SE上y和x方向平移imdilate%形態(tài)學膨脹/3、圖像的幾何變換一、圖像平移正變換逆變換20/3、圖像的幾何變換I=imread('nir.bmp');se=translate(strel(1),[180190]);B=imdilate(I,se);figure;subplot(1,2,1),subimage(I);title('原圖像');subplot(1,2,2),subimage(B);title('平移后圖像');/3、圖像的幾何變換I=imread('nir.bmp');21/3、圖像的幾何變換二、圖像鏡像B=imtransform(A,TFORM,method);TFORM=makeform(transformtype,Matrix);%空間變換結(jié)構(gòu)參數(shù)transformtype指定了變換的類型,常見的’affine’為二維或多維仿射變換,包括平移、旋轉(zhuǎn)、比例、拉伸和錯切等。Matrix為相應的仿射變換矩陣。/3、圖像的幾何變換二、圖像鏡像參數(shù)transformtyp22A=imread('nir.bmp');[height,width,dim]=size(A);tform=maketform('affine',[-100;010;width01]);B=imtransform(A,tform,'nearest');tform2=maketform('affine',[100;0-10;0height1]);C=imtransform(A,tform2,'nearest');figure;imshow(A);figure;imshow(B);imwrite(B,'nir水平鏡像.bmp');figure;imshow(C);imwrite(B,'nir垂直鏡像.bmp');原圖像水平鏡像圖像垂直鏡像圖像A=imread('nir.bmp');原圖像水平鏡像圖像垂23A=imread('nir.bmp');tform=maketform('affine',[010;100;001]);B=imtransform(A,tform,'nearest');figure;imshow(A);figure;imshow(B);imwrite(B,'nir轉(zhuǎn)置后圖像.bmp');/3、圖像的幾何變換三、圖像轉(zhuǎn)置A=imread('nir.bmp');/3、圖像的幾何變換24/3、圖像的幾何變換四、圖像中心旋轉(zhuǎn)B=imrotate(A,angle,method,’crop’);angle為旋轉(zhuǎn)角度,正值為逆時針旋轉(zhuǎn)??蛇x參數(shù)method為imrotate函數(shù)指定插值方法。‘crop’選項會裁減旋轉(zhuǎn)后增大的圖像,保持和原圖像同樣大小。

A=imread('nir.bmp');B=imrotate(A,30,'nearest','crop');figure;imshow(B);imwrite(B,'逆時針中心旋轉(zhuǎn)30度.bmp');逆時針30度/3、圖像的幾何變換四、圖像中心旋轉(zhuǎn)angle為旋轉(zhuǎn)角度,正25/4、空間域圖像增強一、噪聲添加h=imnoise(I,type,parameters);type為噪聲類型,合法值如下:添加高斯白噪聲添加椒鹽噪聲/4、空間域圖像增強一、噪聲添加h=imnoise(I,ty26/4、空間域圖像增強二、空間域濾波濾波過程就是在圖像f(x,y)中逐點移動模板,使模板中心和點(x,y)重合,濾波器在每一點(x,y)的響應是根據(jù)模板的具體內(nèi)容并通過預先定義的關(guān)系來計算的。/4、空間域圖像增強二、空間域濾波濾波過程就是在圖像f(x,27B=imfilter(f,w,option1,option2,…);f為要進行濾波操作的圖像。w為濾波操作使用的模板,為一個二維數(shù)組,可自己定義。option1……是可選項,包括:1、邊界選項(’symmetric’、’replicate’、’circular’)2、尺寸選項(’same’、’full’)3、模式選項(’corr’、’conv’)原圖像濾波后圖像f為要進行濾波操作的圖像。原圖像濾波后圖像28三、濾波器設計/4、空間域圖像增強h=fspecial(type,parameters)parameters為可選項,是和所選定的濾波器類型type相關(guān)的配置參數(shù),如尺寸和標準差等。type為濾波器的類型。其合法值如下:三、濾波器設計/4、空間域圖像增強h=fspecial(ty29/4、空間域圖像增強四、中值濾波h=medfilt2(I1,[m,n]);m和n為中值濾波處理的模板大小,默認3*3中值濾波本質(zhì)上是一種統(tǒng)計排序濾波器。中值不同于均值,是指排序隊列中位于中間位置的元素的值。中值濾波并非線性濾波器。對于某些類型的隨機噪聲具有非常理想的降噪能力。典型的應用就是消除椒鹽噪聲。/4、空間域圖像增強四、中值濾波h=medfilt2(I1,30/4、空間域圖像增強五、圖像銳化圖像銳化主要用于增強圖像的灰度跳變部分,主要通過運算導數(shù)(梯度)或有限差分來實現(xiàn)。主要方法有:Robert交叉梯度,Sobel梯度,拉普拉斯算子,高提升濾波,高斯-拉普拉斯變換。Robert交叉梯度w1對接近正45°邊緣有較強響應,w2對接近負45°邊緣有較強響應。/4、空間域圖像增強五、圖像銳化圖像銳化主要用于增強圖像的灰31Sobel交叉梯度對水平邊緣有較大響應對垂直邊緣有較大響應拉普拉斯算子Sobel交叉梯度對水平邊緣有較大響應對垂直邊緣有較大響應拉32I=imread('nir.bmp');I=double(I);%雙精度化w1=[-10;01];w2=[0-1;10];G1=imfilter(I,w1,‘corr’,‘replicate’);%正45°梯度G2=imfilter(I,w2,‘corr’,‘replicate’);%負45°梯度G=abs(G1)+abs(G2);%計算Robert梯度figure;imshow(G,[]);figure;imshow(abs(G1),[]);figure;imshow(abs(G2),[]);Robert交叉梯度I=imread('nir.bmp');Id=double(I);%雙精度化h_1=fspecial('log',5,0.5);%大小為5,sigma=0.5的LOG算子I_1=imfilter(Id,h_1,'corr','replicate');figure;imshow(uint8(abs(I_1)),[]);h_2=fspecial('log',5,2);%大小為5,sigma=2的LOG算子I_2=imfilter(Id,h_2,'corr','replicate');figure;imshow(uint8(abs(I_2)),[]);高斯-拉普拉斯銳化I=imread('nir.bmp');Robert交叉梯度33/5、頻率域圖像增強用傅里葉變換表示的函數(shù)特征可以完全通過傅里葉反變換進行重建而不丟失任何信息吉布斯現(xiàn)象Gibbsphenomenon(又叫吉布斯效應):將具有不連續(xù)點的周期函數(shù)(如矩形脈沖)進行傅立葉級數(shù)展開后,選取有限項進行合成。當選取的項數(shù)越多,在所合成的波形中出現(xiàn)的峰起越靠近原信號的不連續(xù)點。當選取的項數(shù)很大時,該峰起值趨于一個常數(shù),大約等于總跳變值的9%。這種現(xiàn)象稱為吉布斯現(xiàn)象。/5、頻率域圖像增強用傅里葉變換表示的函數(shù)特征可以完全通過傅34幅度譜相位譜功率譜幅度譜相位譜功率譜35一、傅里葉變換/5、頻率域圖像增強I=fft2(x);%快速傅里葉變換I=fft2(x,m,n);x為輸入圖像;m和n分別用于將x的第一和第二維規(guī)整到指定的長度。當m和n均為2的整數(shù)次冪時算法的執(zhí)行速度要比m和n均為素數(shù)時快。I1=abs(I);%計算I的幅度譜I2=angle(I);%計算I的相位譜Y=fftshift(I);%頻譜平移I=ifft2(x);%快速傅里葉逆變換I=ifft2(x,m,n);一、傅里葉變換/5、頻率域圖像增強I=fft2(x);%快速36幅度譜相位譜平移后的相位譜幅度譜相位譜平移后的相位譜37functionout=imidealflpf(I,freq)%imidealflpf函數(shù)構(gòu)造高斯頻域低通濾波器[M,N]=size(I);out=ones(M,N);fori=1:Mforj=1:Nif(sqrt(((i-M/2)^2+(j-N/2)^2))>freq)out(i,j)=0;endendend理想低通functionout=imgaussflpf(I,sigma)%imgaussflpf函數(shù)構(gòu)造高斯頻域低通濾波器[M,N]=size(I);out=ones(M,N);fori=1:Mforj=1:Nout(i,j)=exp(-((i-M/2)^2+(j-N/2)^2)/2/sigma^2);endend高斯低通functionout=imidealflpf(I,f38/6、彩色圖像處理色彩模型:RGB模型、CMY模型、CMYK模型、HIS模型、HSV模型、YUV模型、YIQ模型。RGB模型國際照明委員會(CIE)規(guī)定以藍(435.8nm)、綠(546.1nm)和紅(700nm)作為主原色。/6、彩色圖像處理色彩模型:RGB模型、CMY模型、CMYK39RGB_image=cat(3,PR,PG,PB);%將PR、PG、PB三個矩陣在第3個維度上進行級聯(lián),進行圖像合成PR=RGB_image(:,:,1);%提取紅色分量PG=RGB_image(:,:,2);%提取綠色分量PB=RGB_image(:,:,3);%提取藍色分量Matlab中一幅RGB圖像可表示為一個M*N*3的3維矩陣。其中每一個彩色像素都在特定空間位置的彩色圖像中對應紅、綠、藍3個分量。CMY模型CMY模型是采用(Cyan、Magenta、Yellow)青、品紅、黃色3中基本原色按一定比例合成顏色。由于色彩的顯示是由光線被物體吸收掉一部分之后反射回來的剩余光線產(chǎn)生,故CMY模型又稱為減色法混色模型。當光都被吸收時成為黑色,都被反射時為白色。RGB_image=cat(3,PR,PG,PB);%將PR40CMY模型主要用于彩色打印機和復印機等。CMYK模型CMY模型在實際使用中,青、品紅和黃色等比例混合后的黑色并不純,為產(chǎn)生真正的黑色,專門加入第四種顏色—黑色。得到CMYK模型。用于四色打印。cmy=imcomplement(rgb);%rgb轉(zhuǎn)成cmyrgb=imcomplement(cmy);cmy轉(zhuǎn)成rgbCMY模型主要用于彩色打印機和CMYK模型CMY模型在實際使41HSI模型HIS模型是從人的視覺系統(tǒng)出發(fā),直接使用顏色三要素色調(diào)(Hue)、飽和度(Saturation)和亮度(Intensity)來描述顏色。亮度指人眼感覺光的明暗程度。光的能量越大,亮度越大。色調(diào)由物體反射光線中占優(yōu)勢的波長決定。反映顏色的本質(zhì)。飽和度指顏色的深淺和濃淡程度,飽和度越高,顏色越深。HIS色彩空間比RGB彩色空間更符合人的視覺特性。亮度和色度具有可分離特性,使得圖像處理和機器視覺中大量灰度處理算法都可在HIS彩色空間中方便使用。HSI模型HIS模型是從人的視覺系統(tǒng)出發(fā),直接使用顏色三要素42色調(diào)亮度飽和度其中色調(diào)亮度飽和度其中43/7、形態(tài)學圖像處理一、二值圖像腐蝕I2=imerode(I,SE);SE=strel(shape,parameters);I為原始圖像,可以是二值或者灰度圖像。shape指定了結(jié)構(gòu)元素的形狀。parameters是和輸入shape有關(guān)的參數(shù)。/7、形態(tài)學圖像處理一、二值圖像腐蝕I2=imerode(I44/7、形態(tài)學圖像處理二、二值圖像膨脹I2=imdilate(I,SE);SE=strel(shape,parameters);I為原始圖像,可以是二值或者灰度圖像。shape指定了結(jié)構(gòu)元素的形狀。parameters是和輸入shape有關(guān)的參數(shù)。原圖像腐蝕后膨脹后/7、形態(tài)學圖像處理二、二值圖像膨脹I2=imdilate(45/7、形態(tài)學圖像處理三、其他二值圖像運算SE=strel(shape,parameters);I2=imopen(I,SE);%開運算I3=imclose(I,SE);%閉運算Ihm=bwhitmiss(I,SE1,SE2);%擊中擊不中變換四、連通分量提取[Lnum]=bwlabel(Ibw,conn);Ibw為一幅輸入二值圖像。conn為可選參數(shù),指明提取連通分量是4連通還是8連通。默認為8。L為連通分量標注圖像。num為二值圖像Ibw中連通分量個數(shù)。/7、形態(tài)學圖像處理三、其他二值圖像運算SE=strel(s46/7、形態(tài)學圖像處理五、bwmorph函數(shù)Iout=bwmorph(I,operation,n)/7、形態(tài)學圖像處理五、bwmorph函數(shù)Iout=bwmo47/7、形態(tài)學圖像處理六、頂帽變換解決非均勻光照問題。頂帽變換定義為圖像f與圖像f的開運算之差。a=imread('red.bmp');I=rgb2gray(a);figure,surf(double(I(1:8:end,1:8:end))),zlim([0255]),colormapgray;%顯示圖像I的三維可視化效果bg=imopen(I,strel(‘disk’,15));%開運算Itophat=imsubtract(I,bg);%頂帽變換figure,imshow(Itophat);figure,surf(double(Itophat(1:8:end,1:8:end))),zlim([0255]);I2=imadjust(Itophat);figure,imshow(I2);/7、形態(tài)學圖像處理六、頂帽變換解決非均勻光照問題。頂帽變換48原圖像三維可視化效果頂帽變換后的三維可視化效果頂帽變換后圖像對比度拉伸后效果原圖像三維可視化效果頂帽變換后的三維可視化效果頂帽變換后圖像49/8、圖像分割一、圖像分割概述圖像分割一般采用的方法有邊緣檢測(edgedetection)、邊界跟蹤(edgetracing)、區(qū)域生長(regiongrowing)、區(qū)域分離和聚合等。

圖像分割算法一般基于圖像灰度值的不連續(xù)性或其相似性。

不連續(xù)性是基于圖像灰度的不連續(xù)變化分割圖像,如針對圖像的邊緣有邊緣檢測、邊界跟蹤等算法。

相似性是依據(jù)事先制定的準則將圖像分割為相似的區(qū)域,如閾值分割、區(qū)域生長等。二、邊緣檢測圖像的邊緣點是指圖像中周圍像素灰度有階躍變化或屋頂變化的那些像素點,即灰度值導數(shù)較大或極大的地方。

邊緣檢測可以大幅度的減少數(shù)據(jù)量,并且剔除不相關(guān)信息,保留圖像重要的結(jié)構(gòu)屬性。

邊緣檢測基本步驟:平滑濾波、銳化濾波、邊緣判定、邊緣連接。/8、圖像分割一、圖像分割概述圖像分割一般采50邊緣檢測算法:基于一階導數(shù):Roberts算子、Sobel算子、Prewitt算子基于二階導數(shù):高斯-拉普拉斯邊緣檢測算子Canny邊緣檢測算法Matlab實現(xiàn)1)、基于梯度算子的邊緣檢測BW=edge(I,type,thresh,direction,’nothinning’)thresh是敏感度閾值參數(shù),任何灰度值低于此閾值的邊緣將不會被檢測到。默認值為空矩陣[],此時算法自動計算閾值。邊緣檢測算法:Matlab實現(xiàn)1)、基于梯度算子的邊緣檢測B51direction指定了我們感興趣的邊緣方向,edge函數(shù)將只檢測direction中指定方向的邊緣,其合法值如下:可選參數(shù)’nothinning’,指定時可以通過跳過邊緣細化算法來加快算法運行的速度。默認是’thinning’,即進行邊緣細化。2)、基于高斯-拉普拉斯算子的邊緣檢測BW=edge(I,’log’,thresh,sigma)sigma指定生成高斯濾波器所使用的標準差。默認時,標準差為2。濾鏡大小n*n,n的計算方法為:n=ceil(sigma*3)*2+1。direction指定了我們感興趣的邊緣方向,edge函數(shù)將523)、基于Canny算子的邊緣檢測BW=edge(I,’canny’,thresh,sigma)thresh是敏感度閾值參數(shù),默認值為空矩陣[]。此處為一列向量,為算法指定閾值的上下限。第一個元素為閾值下限,第二個元素為閾值上限。如果只指定一個閾值元素,則默認此元素為閾值上限,其0.4倍的值作為閾值下限。如閾值參數(shù)沒有指定,則算法自行確定敏感度閾值上下限。b1=imread('nir.bmp');h58=fspecial('gaussian',5,0.8);b=imfilter(b1,h58);bw1=edge(b,‘sobel’);%sobel算子bw2=edge(b,‘prewitt’);%prewitt算子bw3=edge(b,‘roberts’);%roberts算子bw4=edge(b,‘log’);%log算子bw5=edge(b,‘canny’);%canny算子figure;imshow(bw1);imwrite(bw1,'nirbwsobel.bmp');figure;imshow(bw2);imwrite(bw2,'nirbwprewitt.bmp');figure;imshow(bw3);imwrite(bw3,'nirbwroberts.bmp');figure;imshow(bw4);imwrite(bw4,'nirbwlog.bmp');figure;imshow(bw5);imwrite(bw5,'nirbwcanny.bmp');3)、基于Canny算子的邊緣檢測BW=edge(I,’ca53Sobel算子roberts算子prewitt算子log算子canny算子Sobel算子roberts算子prewitt算子log算子54分析1、邊緣定位精度方面:Roberts算子和Log算子定位精度較高。Roberts算子簡單直觀,Log算子利用二階導數(shù)零交叉特性檢測邊緣。但Log算子只能獲得邊緣位置信息,不能得到邊緣方向信息。2、邊緣方向的敏感性:Sobel算子、Prewitt算子檢測斜向階躍邊緣效果較好,Roberts算子檢測水平和垂直邊緣效果較好。Log算子不具有邊緣方向檢測功能。Sobel算子能提供最精確的邊緣方向估計。3、去噪能力:Roberts算子和Log算子雖然定位精度高,但受噪聲影響大。Sobel算子和Prewitt算子模板相對較大因而去噪能力較強,具有平滑作用,能濾除一些噪聲,去掉一部分偽邊緣,但同時也平滑了真正的邊緣,降低了其邊緣定位精度??傮w來講,Canny算子邊緣定位精確性和抗噪聲能力效果較好,是一個折中方案。

分析1、邊緣定位精度方面:55三、Hough變換直線檢測/8、圖像分割步驟:利用hough()函數(shù)執(zhí)行霍夫變換,得到霍夫矩陣;利用houghpeaks()函數(shù)在霍夫矩陣中尋找峰值點;利用houghlines()函數(shù)在之前兩步結(jié)果的基礎上得到原二值圖像中的直線信息。[H,theta,rho]=hough(BW,param1,val1,param2,val2)1、霍夫變換(針對二值圖像)三、Hough變換直線檢測/8、圖像分割步驟:[H,thet562、尋找峰值—houghpeakspeaks=houghpeaks(H,numpeaks,param1,val1,param2,val2)peaks是一個Q*2的矩陣,每行的兩個元素分別為某一峰值點在Hough矩陣中的行、列索引,Q為找到的峰值點的數(shù)目。3、提取直線段—houghlineslines=houghlines(BW,theta,rho,peaks,param1,val1,param2,val2)2、尋找峰值—houghpeakspeaks=houghpe57返回值lines的結(jié)構(gòu)返回值lines的結(jié)構(gòu)58I1=imread('004.jpg');I=rgb2gray(I1);%旋轉(zhuǎn)圖像并尋找邊緣rotI=imrotate(I,33,'crop');BW=edge(rotI,'canny');%執(zhí)行Hough變換并顯示Hough矩陣[H,T,R]=hough(BW);figure;imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');xlabel('\theta'),ylabel('\rho');axison,axisnormal,holdon;%在Hough矩陣中尋找前5個大于Hough矩陣中最大值0.3倍的峰值P=houghpeaks(H,5,'threshold',ceil(0.3*max(H(:))));x=T(P(:,2));y=R(P(:,1));%由行、列索引轉(zhuǎn)換成實際坐標plot(x,y,'s','color','white');%在Hough矩陣圖像中標出峰值位置%找出并繪制直線lines=houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);%合并距離小于5的線段,丟棄所有長度小于7的直線段figure,imshow(rotI),holdonmax_len=0;I1=imread('004.jpg');59fork=1:length(lines)%依次標出各條直線段

xy=[lines(k).point1;lines(k).point2];plot(xy(:,1),xy(:,2),'x','LineWidth',2,'Color','green');

%繪制線段端點

plot(xy(1,1),xy(1,2),'x','LineWidth',2,'Color','yellow');plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','red');%確定最長的線段

len=norm(lines(k).point1-lines(k).point2);if(len>max_len)max_len=len;xy_long=xy;endend%高亮顯示最長線段plot(xy_long(:,1),xy_long(:,2),'LineWidth',2,'Color','cyan');fork=1:length(lines)%依次標出各條60原圖像Hough矩陣旋轉(zhuǎn)并檢測最長直線段原圖像Hough矩陣旋轉(zhuǎn)并檢測最長直線段61/9、特征提取特征提取的一般原則:選擇在同類圖像之間差異較?。ㄝ^小的類內(nèi)距),在不同類別的圖像之間差異較大(較大的類間距)的圖像特征。一、簡單區(qū)域描繪子周長:區(qū)域邊界上的像素數(shù)目。面積:區(qū)域中像素數(shù)目。致密性:(周長)^2/面積。區(qū)域的質(zhì)心?;叶染担簠^(qū)域中所有像素的平均值?;叶戎兄担簠^(qū)域中所有像素的排序中值。包含區(qū)域的最小矩形。最小或最大灰度級。大于或小于均值的像素數(shù)。歐拉數(shù):區(qū)域中的對象數(shù)減去這些對象的孔洞數(shù)。/9、特征提取特征提取的一般原則:一、簡單區(qū)域描繪子周長:區(qū)62D=regionprops(L,properties);L為一個標記矩陣,通過連通1區(qū)域標注函數(shù)bwlabel得到。二、主成分分析(PrincipalComponentAnalysis,PCA)[COEFF,SCORE,latent]=pincomp(X);D=regionprops(L,properties);L為63X為原始樣本組成n*d的矩陣,其每一行是一個樣本特征向量,每一列表示樣本特征向量的一維。COEFF:主成分分量,也是樣本協(xié)方差矩陣的本征向量。SCORE:主成分,X的低維表示。latent:一個包含著樣本協(xié)方差矩陣本征值的向量。X=[1,2;3,3;3,5;4,5;5,6;6,5;8,7;9,3;7,6];X[COEFF,SCORE,latent]=princomp(X);%主成分分析COEFF%主成分分量SCORE%主成分latent%X樣本協(xié)方差矩陣的本征值X為原始樣本組成n*d的矩陣,其每一行是一個樣本64圖像分割圖像分割65Contents

8.1圖像分割定義

8.2使用閾值進行圖像分割

8.3基于梯度的圖像分割方法8.4邊緣檢測和連接Contents8.1圖像分割定義8.2使用閾值66Contents

8.5區(qū)域增長(RegionGrowing)

8.6二值圖像處理(BinaryImageProcessing)

8.7分割圖像的結(jié)構(gòu)小結(jié)Contents8.5區(qū)域增長(RegionGrow678.1圖像分割定義

圖像分割處理定義:將數(shù)字圖像劃分成互不相交(不重疊)區(qū)域的過程.區(qū)域(region)定義:像素的連通集。連通(connectedness)定義:在一個連通集中的任意兩個像素之間,存住一條完全由這個集合的元素構(gòu)成的連通路徑。8.1圖像分割定義圖像分割處理定義:68

8.2.1全局閾值化思想:整個圖像中將灰度閾值的值設置為常數(shù)。前提條件:如果背景的灰度值在整個圖像中可合理地看作為恒定,而且所有物體與背景都具有幾乎相同的對比度,那么,只要選擇了正確的閾值,使用一個固定的全局閾值一般會有較好的效果。

8.2.1全局閾值化思想:整個圖像中將灰度閾值的值設置698.2.2自適應閾值改進方法:在許多的情況下,背景的灰度值并不是常數(shù),物件和背景的對比度在圖像中也有變化,這時,一個在圖像中某一區(qū)域效果良好的閾值在其它區(qū)域卻可能效果很差。在這種情況下,把灰度閾值取成一個隨圖像中位置緩慢變化的函數(shù)值是適宜的。8.2.2自適應閾值改進方法:在許多的情況下,背景的灰度708.2.3最佳閾值的選擇

除非圖像中的物體有陡峭的邊沿,否則灰度閾值的取值對所抽取物體的邊界的定位和整體的尺寸有很大的影響。這意味著后續(xù)的尺寸(特別是面積)的測量對于灰度閾值的選擇很敏感。由于這個原因,我們需要一個最佳的,或至少是具有一致性的方法確定閾值。8.2.3最佳閾值的選擇除非圖像中的物體有陡峭的邊沿,711.直方圖技術(shù)含有一個與背景明顯對比的物體的圖像其有包含雙峰的灰度直方圖1.直方圖技術(shù)含有一個與背景明顯對比的物體的圖像其有包含雙72直方圖生成a=imread('d:\pic\i_boat_gray.bmp');imshow(a)figureimhist(a)利用灰度閾值T對物體面積進行計算的定義是:直方圖生成732.最大類間方差法(OTSU)OTSU算法定義:該算法是在灰度直方圖的基礎上用最小二乘法原理推導出來的,具有統(tǒng)計意義上的最佳分割閾值。2.最大類間方差法(OTSU)OTSU算法定義:該算法是74OTSU基本原理:以最佳閾值將圖像的灰度直方圖分割成兩部分,是兩部分之間的方差取最大值,即分離性最大。OTSU基本原理:以最佳閾值將圖像的灰度直方圖分割成兩部分,753.迭代法求閾值

原理:圖像中前景與背景之間的灰度分布為相互不重疊,在該前提下,實現(xiàn)對兩類對象的閾值分割方法。3.迭代法求閾值768.3基于梯度的圖像分割方法思路對比:

區(qū)域分割方法:通過將圖像劃分為內(nèi)部點集和外部點集來實現(xiàn)分割。邊界方法:利用邊界具有高梯度值的性質(zhì)直接把邊界找出來。8.3基于梯度的圖像分割方法778.3.1邊界跟蹤

算法步驟1:我們從一個梯度幅值圖像著手進行處理,這個圖像是從一幅處于和物體具有反差的背景中的單一物體的圖像進行計算得來的。2:搜索以邊界起始點為中心的3×3鄰域,找出具有最大灰度級的鄰域點作為第2個邊界點。8.3.1邊界跟蹤

算法步驟788.3.2梯度圖像二值化如果用適中的閾值對一幅梯度圖像進行二值化,Kirsch的分割法利用了這種現(xiàn)象。算法步驟用一個中偏低的灰度閾值對梯度圖像進行二值化從而檢測出物體和背景,物體與背景被處于閾值之上的邊界點帶分開。隨著閾值逐漸提高,就引起物體和背景的同時增長。當它們接觸上而又不至于合并時,可用接觸點來定義邊界。這是分水嶺算法在梯度圖像中的應用。

8.3.2梯度圖像二值化如果用適中的閾值對一幅梯度圖像進行二79Kirsch的分割算法數(shù)字圖像處理(MATLAB版)-課件808.3.3拉普拉斯邊緣檢測

拉普拉斯算于是對二維函數(shù)進行運算的二階導數(shù)標量算子。它定義為:8.3.3拉普拉斯邊緣檢測

拉普拉斯算于是對二維函數(shù)進行運算81

一個無噪聲圖像具有陡峭的邊緣,可用拉普拉斯算子將它們找出來。對經(jīng)拉普拉斯算子濾波后的圖像用零灰度值進行二值化會產(chǎn)生閉合的、連通的輪廓并消除了所有的內(nèi)部點。但是由于噪聲的存在,在運用拉普拉斯算子之前需要先進行低通濾波。一個無噪聲圖像具有陡峭的邊緣,可用拉普拉斯算子將它們找82選用高斯低通濾波器進行預先平滑是很合適的。由卷積的結(jié)合律可以將拉普拉斯算子和高斯脈沖響應組合成一個單一的高斯拉普拉斯核:這個脈沖響應對x和y是可分離的,因此可以有效地加以實現(xiàn)。選用高斯低通濾波器進行預先平滑是很合適的。由卷積的結(jié)合律可以838.4邊緣檢測和連接邊緣點:確定圖像中的物體邊界的另一種方法是先檢測每個像素和其直接鄰域的狀態(tài),以決定該像素是否確實處于一個物體的邊界上。具有所需特性的像素被標為邊緣點。邊緣圖像:當圖像中各個像素的灰度級用來反映各像素符合邊緣像素要求的程度時,這種圖像被稱為邊緣圖像。8.4邊緣檢測和連接邊緣點:確定圖像中的物體邊界的另一848.4.1邊緣檢測

邊緣檢測算子檢查每個像素的鄰域并對灰度變化率進行量化,通常也包括方向的確定。有若干種方法可以使用,其中大多數(shù)是基于方向?qū)?shù)掩模求卷積的方法。8.4.1邊緣檢測邊緣檢測算子檢查每個像素的鄰域并對灰度85Roherts邊緣算子

其中,f(x,y)是具有整數(shù)像素坐標的輸入圖像。其中的平方根運算使該處理類似于人類視覺系統(tǒng)中發(fā)生的過程。Roherts邊緣算子86Sobel邊緣算子

兩個卷積核形成了Sobel邊緣算子。圖像中的每個點都用這兩個核做卷積。一個核對通常的垂直邊緣響應最大而另一個對水平邊緣響應最大。兩個卷積的最大值作為該點的輸出值。運算結(jié)果是一幅邊緣幅度圖像。Sobel邊緣算子87Sobel邊緣算子圖Sobel邊緣算子圖88Prewitt邊緣算子

Prewitr邊緣算子Prewitt邊緣算子89Kirsch邊緣算子

圖像中的每個點均與這8個模板進行卷積,每個掩模對某個特定邊緣方向作出最大響應。所有8個方向中的最大值作為邊緣幅度圖像的輸出。最大響應掩模的序號構(gòu)成了對邊緣方向的編碼。Kirsch算子的梯度幅度值Kirsch邊緣算子圖像中的每個點均與這8個模板進行90Kirsch邊緣算子Kirsch邊緣算子91Kirsch邊緣算子Kirsch邊緣算子92邊緣檢測器性能:使用兩個掩模板組成邊緣檢測器時,通常取較大得幅度作為輸出值。這使得它們對邊緣的走向有些敏感。取它們的平方和的開方可以獲得性能更‘致的全方位響應。這與真實的梯度值更接近。邊緣檢測器性能:使用兩個掩模板組成邊緣檢測93

邊緣提取方法原圖數(shù)字圖像處理(MATLAB版)-課件94

邊緣提取方法邊緣提取后數(shù)字圖像處理(MATLAB版)-課件958.4.2邊緣連接問題:如果邊緣很明顯,而且噪聲級低,那么可以將邊緣圖像二值化并將其細化為單像素寬的閉合連通邊界圖。然而在非理想條件下,這種邊緣圖像會有間隙出現(xiàn),需要加以填充。8.4.2邊緣連接問題:96填充小的間隙可以簡單地實現(xiàn),通過搜索一個以某端點為中心的5×5或更大的鄰域,在鄰域中找出其它端點并填充上必要的邊界像素,從而將它們連接起來。對具有許多邊緣點的復雜場景,這種方法可能會對圖像過度分割。為了避免過度的分割,可以規(guī)定:兩個端點只有在邊緣強度和走向相近的情況下才能連接。填充小的間隙可以簡單地實現(xiàn),通過搜索一個以某端點為中心的5×97解決方法啟發(fā)式搜索曲線擬合Hough變換解決方法啟發(fā)式搜索98(1)啟發(fā)式搜索

假定在一幅邊緣圖像的某條邊界上有一個像間隙的缺口,但是這個缺口太長而不能僅用一條直線填充,它還可能不是同一條邊界上的缺口,可能在兩條邊界上。作為質(zhì)量的度量,我們可以建立一個可以在任意連接兩端點(稱為A,B)的路徑上進行計算的函數(shù)。。

(1)啟發(fā)式搜索

99

如果邊緣質(zhì)量函數(shù)很復雜而且要評價的缺口既多又長,啟發(fā)式搜索技術(shù)的計算會很復雜。這樣的技術(shù)在相對簡單的圖像中性能很好,但不一定能找出兩端點間的全局最佳路徑。

100(2)曲線擬合假定有一組散布在兩個特定邊緣點A和B之間的邊緣點,我們希望從中選取一個子集作為從A到B一條分段線性路徑上的結(jié)點集。首先:從A到B引一條直線。其次:接著計算其它的每個邊緣點到該直線的垂直距離。(2)曲線擬合101(3)Hough變換

直線y=mx+b可用極坐標表示為其中定義了一個從原點到線上最近點的向量。這個向量與該直線垂直。(3)Hough變換

直線y=mx+b可用極坐標表示為102如果有一組位于由參數(shù)確定的直線上的邊緣點,則每個邊緣點對應了空間的一條正弦型曲線。所有這些曲線必交于點,因為這是它們共享的一條直線的參數(shù)。建立一個在空間的二維直方圖。對每個邊緣點,我們將給所有與該點的Hough變換(正弦曲線)對應的空間的直方圖方格一個增量。當對所有邊緣點施行完這種操作后,包含的方格將具有局部最大值。然后對空間的直方圖進行局部最大值搜索可以獲得邊界線段的參數(shù)。如果有一組位于由參數(shù)確定的直線上的邊緣點,則每個邊緣點對應了103hough直線檢測結(jié)果

原圖直線檢測結(jié)果hough直線檢測結(jié)果1048.5區(qū)域增長

方法:從把一幅圖像分成許多小區(qū)域開始的。這些初始的區(qū)域可能是小的鄰域甚至是單個像素。在每個區(qū)域中,對經(jīng)過適當定義的能反映一個物體內(nèi)成員隸屬程度的性質(zhì)(度量)進行計算。用于區(qū)分不同物體內(nèi)像素的性質(zhì)(度量)包括平均灰度值,紋理,或顏色信息。8.5區(qū)域增長

105區(qū)域增長算法主要分成兩類(1)簡單連接這是基于單個像素的區(qū)域增長法,它從滿足的檢測的點(連接核)開始,考察其周圍(4鄰域或8鄰域)的不屬于任何一個區(qū)域的點,如果其特性符合接收準則,就把它作為同一個區(qū)域加以合并,形成連接核,繼而檢測周圍的點,并把符合接入準則的點并入,產(chǎn)生新的核。重復上述過程,直到?jīng)]有可并入的點時,生產(chǎn)過程結(jié)束。

區(qū)域增長算法主要分成兩類(1)簡單連接106(2)子區(qū)合并法合并過程:首先:將圖像分割成個,大小為的小區(qū)域(簡稱子區(qū))。其次:從左上角第一個子區(qū)開始,分別計算子區(qū)和相鄰子區(qū)的灰度統(tǒng)計量,然后做相似性判定。若兩者的灰度分布相似且符合接收準則。相鄰子區(qū)并入當前子區(qū),形成下一輪判定合并時的當前子區(qū)。(2)子區(qū)合并法107

如果某個相鄰子區(qū)不符合接收準則,就打上“未分割標記”。繼續(xù)新一輪判定,使當前子區(qū)不斷“生長”,知道沒有可歸并的子區(qū)為止,一個區(qū)域分割完畢。最后:搜索圖像全域,對凡具有“未分割標記”的子區(qū)重復上述步驟。如果某個相鄰子區(qū)不符合接收準則,就打上“未分割標記”108相似性判定準則一般是:相似性判定準則一般是:1098.6二值圖像處理

二值圖像也就是只具有兩個灰度級的圖像,它是數(shù)字圖像的一個重要子集。一個二值圖像(例如,一個剪影像或一個輪廓圖)通常是由一個圖像分割操作產(chǎn)生的。如果初始的分割不夠令人滿意,對二值圖像的某些形式的處理通常能提高其質(zhì)量。8.6二值圖像處理110

形態(tài)學圖像處理數(shù)字圖像處理(MATLAB版)-課件111術(shù)語1.集合論術(shù)語(Definition)形態(tài)學處理語言中,二值圖像B和結(jié)構(gòu)元素S都是定義在二維笛卡兒網(wǎng)格上的集合,“1”是這些集合中的元素。當一個結(jié)構(gòu)元素的原點位移到點(x,y)處時,我們將其記作。形態(tài)學運算的輸出是另一個集合,這個運算可用一個集合論方程來確定。術(shù)語1.集合論術(shù)語(Definition)1122.腐蝕和膨脹(DilationandErosion)2.腐蝕和膨脹(DilationandErosion)113(1)腐蝕一般意義的腐蝕概念定義為:E=BS={x,y|B}如果S的原點位移到點(x,y),那么S將完全包含于B中。使用基本的3×3結(jié)構(gòu)元素時,一般意義的腐蝕簡化為簡單腐蝕。(1)腐蝕114(2)膨脹一般膨脹定義為:E=BS={x,y|B}S對B膨脹產(chǎn)生的二值圖像D是由這樣的點(x,y)組成的集合,如果S的原點位移到(x,y),那么它與B的交集非空。采用基本的3×3結(jié)構(gòu)造元素時,一般膨脹簡化為簡單膨脹。(2)膨脹一般膨脹定義為:1158.6.2開運算和閉運算開運算:先腐蝕后膨脹的過程稱為開運算。它具有消除細小物體、在纖細點處分離物體、和平滑較大物體的邊界時又不明顯改變其面積的作用。開運算定義為:8.6.2開運算和閉運算開運算:先腐蝕后膨脹的過程稱為開運116閉運算:先膨脹后腐蝕的過程稱為閉運算。它具有填充物體內(nèi)細小空洞、連接鄰近物體、在不明顯改變物體面積的情況下平滑其邊界的作用。閉運算定義為:閉運算:先膨脹后腐蝕的過程稱為閉運算。它具有填充物體內(nèi)細小1178.6.3腐蝕和膨脹的變體

通常反復施以腐蝕運算,將使一個物體變得不存在。類似地,反復膨脹將把一幅圖像中的所有物體合并為一個。然而,這些過程可以改變一下,以便在一些應用中產(chǎn)生更合適的結(jié)果。8.6.3腐蝕和膨脹的變體118(1)收縮定義:當腐蝕以一種不觸及單像素物件的方式執(zhí)行時,這個過程稱為收縮。收縮可以迭代方式為一個包含近似圓形物體的二值圖像生成物體尺寸的分布。收縮時會使非常不圓的物體(如啞鈴狀的物體)分解,因此這種技術(shù)存它的局限性。(1)收縮119(2)細化定義:將一個曲線形物體細化為一條單像素寬的線,從而圖形化地顯示出其拓撲性質(zhì)。腐蝕可編程過程:第一步:足一個正常的腐蝕。第二步:只將那些消除后并不破壞連通性的點消除,否則保留。(2)細化定義:將一個曲線形物體細化為一條單像素寬的120(3)抽骨架定義:一個與細化有關(guān)的運算,也稱為中軸變換(Medialaxistransform)或焚燒草地技術(shù)(grass-firetechnigue)。抽骨架的實現(xiàn)與細化相似.可采用一個兩步有條件腐蝕實現(xiàn),但是刪除像素的規(guī)則略有不同。(3)抽骨架121(4)剪裁細化和抽骨架過程會在所生成的阿中留下毛刺。毛刺是由邊界上單像素尺寸的起伏造成的,這些起伏產(chǎn)生了小的分支。它們可通進一系列的消除端點的3×3運算(導致所有的分支縮短)除去,然后再重建那些留下的分支。(4)剪裁細化和抽骨架過程會在所生成的阿中留下毛刺。122(5)粗化一些分割技術(shù)傾向于用緊貼的邊界擬臺物體以避免錯誤地合并它們。通常孤立物體的最佳邊界太緊貼并不利于后續(xù)測量。粗化可在不合并彼此分離的物體的前提下擴大邊界,從而修正了這種不足。(5)粗化123

原圖腐蝕數(shù)字圖像處理(MATLAB版)-課件124

膨脹開操作數(shù)字圖像處理(MATLAB版)-課件125

閉操作數(shù)字圖像處理(MATLAB版)-課件1268.7分割圖像的結(jié)構(gòu)希望制作一幅新圖像,以顯示物體是如何調(diào)整的,或者用單獨的圖像顯示每個物體。甚至還可能希望對單個物體逐個地進行進一步的測量或其它處理。在這些情況下,就需要抽取并以更方便的形式存儲各個物體。通常,每個物體在被檢測時都應該標以一個序號。這個物體編號可用來識別和跟蹤景物中的物體。在這一節(jié),我們討論三種對分割圖像進行結(jié)構(gòu)化的方法。8.7分割圖像的結(jié)構(gòu)希望制作一幅新圖像,以顯示物體是如何1278.7.1分水嶺算法

分水嶺算法8.7.1分水嶺算法

128

分水嶺算法不是簡單地將圖像在最佳灰度級進行閾值處理,而是從一個偏低但仍然能正確分割各個物體的閾值開始。然后隨著閾值逐漸上升到最佳值,使各個物體不會被合并。這個方法可以解決那些由于物體靠得太近而不能用全局閾值解決的問題。如果初始的閾值太低,那么低對比度的物體開始時會被丟失,然后隨著閾值的增加就會和相鄰的物體合并。如果初始閾值太高,物體一開始便會被合并。最終的閾值決定了最后的邊界與實際物體的吻合程度。分水嶺算法不是簡單地將圖像在最佳灰度級進行閾值處理,而是從129分水嶺方法和距離變換方法分割相互連接圖像

二進制圖像距離變換方法分水嶺方法分水嶺方法和距離變換方法分割相互連接圖像1308.7.2物體隸屬關(guān)系圖在物體隸屬關(guān)系圖中,每個像素的灰度級按其在原始圖像中所對應的像素所屬的物體序號進行編碼。隸屬關(guān)系圖技術(shù)通用性很強,但它不是一種對保存分割信息特別緊湊的方法。它需要一幅附加的全尺寸的數(shù)字圖像來描述甚至只包含一個小物體的場景。如果僅對物體的大小和形狀感興趣,分割后可舍棄原始圖像。如果僅有一個物體或物體不需要區(qū)分,還可以進一步減少數(shù)據(jù)量。8.7.2物體隸屬關(guān)系圖在物體隸屬關(guān)系圖中,每個像素的灰1318.7.3邊界鏈碼

鏈碼是從在物體邊界上任意選取的某個起始點的(x,y)坐標開始的。這個起始點有8個鄰接點,其中至少有一個是邊界點。邊界鏈碼規(guī)定了從當前邊界點走到下一個邊界點這一步驟必須采用的方向。生成邊界鏈碼時,由于必須在整幅圖像中跟蹤邊界,所叫常常需要對輸入圖像進行隨機存取。采用圖像分割中的邊界跟蹤技術(shù)時,鏈碼的生成是一個自然的副產(chǎn)品。采用二值方法確定邊界時,鏈碼的生成不適于對存儲在磁盤上的圖像進行逐行處置。8.7.3邊界鏈碼

鏈碼是從在物體邊界上任意選取的某個起始點132小結(jié)(ChapterSummary)

圖像分割是一個將一幅數(shù)字圖像劃分為不交疊的、連通的像素集的過程,其中一個對應于背景,其它的則對應于圖像中的各個物體。利用為物體指定其像差或找出物體之間(或物體和背景之間)邊界的方法來實現(xiàn)圖像分割;在圖像分割之間進行背景平滑和噪聲消除,常常能改善分割時的性能。圖像分割中采用自適應閾值方法較采用直方圖分割具有較好的分割效果。針對較為復雜的圖像我們則可以采用區(qū)域分割技術(shù)來實現(xiàn),針對圖像分割結(jié)果我們則可以通過采用隸屬關(guān)系圖,邊界鏈碼,或線段編碼來存儲。小結(jié)(ChapterSummary)

圖像分割是一個133ThankYou!ThankYou!134第9章彩色圖像處理

(ColorImageProcessing)

9.1彩色基礎(FundamentalsofColorandVision)

9.2彩色模型(ColorModels)9.3

偽彩色處理(PseudocolorImageProcessing)9.4全彩色圖像處理(Full-ColorImageProcessing)9.5彩色圖像分割(ColorImageSegmentation)第9章彩色圖像處理

(ColorImageProces1359.1彩色基礎

(FundamentalsofColorandVision)白光

在17世紀,牛頓通過三棱鏡研究對白光的折射就已發(fā)現(xiàn):

白光可被分解成一系列從紫到紅的連續(xù)光譜,從而證明白光是由不同顏色(而且這些顏色并不能再進一步被分解)的光線相混合而組成的。9.1彩色基礎

(FundamentalsofColo136可見光

可見光是由電磁波譜中相對較窄的波段組成,如果一個物體比較均衡地反射各種光譜,則人看到的物體是白的;而如果一個物體對某些可見光譜反射的較多,則人看到的物體就呈現(xiàn)相對應的顏色。例如,綠色物體反射具有500~570nm(納米)范圍的光,吸收其他波長光的多數(shù)能量。9.1彩色基礎

(FundamentalsofColorandVision)可見光9.1彩色基礎

(Fundamentalsof137圖9.1可見范圍電磁波譜的波長組成9.1彩色基礎

(FundamentalsofColorandVision)圖9.1可見范圍電磁波譜的波長組成9.1彩色基礎

(Fu138人眼的吸收特性:

人眼的錐狀細胞是負責彩色視覺的傳感器,人眼的錐狀細胞可分為三個主要的感覺類別。大約65%的錐狀細胞對紅光敏感,33%對綠光敏感,只有2%對藍光敏感。由于人眼的這些吸收特性,被看到的彩色是所謂的原色紅(R,red)、綠(G,green)和藍(B,blue)的各種組合。

9.1彩色基礎

(FundamentalsofColorandVision)人眼的吸收特性:9.1彩色基礎

(Fundamentals139三原色原理

其基本內(nèi)容是:任何顏色都可以用3種不同的基本顏色按照不同比例混合得到,即

C=aC1+bC2+cC3(9.1)

式中a,b,c>=0為三種原色的權(quán)值或者比例,C1、C2、C3為三原色(又稱為三基色)。9.1彩色基礎

(FundamentalsofColorandVision)三原色原理9.1彩色基礎

(Fundamentalsof140三原色原理指出自然界中的可見顏色都可以用三種原色按一定比例混合得到;反之,任意一種顏色都可以分解為三種原色。作為原色的三種顏色應該相互獨立,即其中任何一種都不能用其他兩種混合得到。9.1彩色基礎

(FundamentalsofColorandVision)三原色原理指出9.1彩色基礎

(Fundamentals141三原色原理為了標準化起見,國際照明委員會(CIE)規(guī)定用波長為700nm、546.1nm、435.8nm的單色光分別作為紅(R)、綠(G)、藍(B)三原色。紅綠藍三原色按照比例混合可以得到各種顏色,其配色方程為:

C=aR+bG+cB

(9.2)9.1彩色基礎

(FundamentalsofColorandVision)三原色原理9.1彩色基礎

(Fundamentalsof142三原色原理原色相加可產(chǎn)生二次色。

例如:紅色+藍色=深紅色(M,magenta),綠色+藍色=青色(C,cyan),紅色+綠色=黃色(Y,yellow)。以一定的比例混合光的三種原色或者以一種二次色與其相反的原色相混合可以產(chǎn)生白色(W,white),即:紅色+綠色+藍色=白色。9.1彩色基礎

(FundamentalsofColorandVision)三原色原理9.1彩色基礎

(Fundamentalsof143彩色到灰度的轉(zhuǎn)換相同亮度的三原色,人眼看去的感覺是,綠色光的亮度最亮,而紅色光其次,藍色光最弱。如果用Y來表示白色光,即光的亮度(灰度),則有如下關(guān)系:Y=0.299R+0.587G+0.114B

9.1彩色基礎

(FundamentalsofColorandVision)彩色到灰度的轉(zhuǎn)換9.1彩色基礎

(Fundamentals144區(qū)分顏色常用三種基本特性量

亮度:如果無彩色就只有亮度一個維量的變化。色調(diào):是光波混合中與主波長有關(guān)的屬性,色調(diào)表示觀察者接收的主要顏色。這樣,當我們說一個物體是紅色、橘黃色、黃色時,是指它的色調(diào)。

飽和度:與一定色調(diào)的純度有關(guān),純光譜色是完全飽和的,隨著白光的加入飽和度逐漸減少。9.1彩色基礎

(FundamentalsofColorandVision)區(qū)分顏色常用三種基本特性量9.1彩色基礎

(Fundame145色調(diào)和飽和度一起稱為彩色,因此,顏色用亮度和彩色表征。形成任何特殊顏色需要的紅、綠、藍的量稱做三色值,并分別表示為X,Y,Z。進一步,一種顏色可用它的3個色系數(shù)表示,它們分別是:從以上公式可得:

x+y+z=1色調(diào)和飽和度一起稱為彩色,因此,顏色用亮度和彩色表征1461931年CIE制定了一個色度圖,如圖9.4所示,圖中波長單位是nm,用組成某種顏色的三原色的比例來規(guī)定這種顏色。圖中橫軸代表紅色色系數(shù),縱軸代表綠色色系數(shù),藍色系數(shù)可由z=1-(x+y)求得。例如,圖9.4中標記為綠的點有62%的綠和25%的紅成分,從而得到藍的成分約為13%。1931年CIE制定了一個色度圖,如圖9.4所示,圖1479.2彩色模型(ColorModels)彩色模型(也稱彩色空間或彩色系統(tǒng))的用途是在某些標準下用通??山邮艿姆绞胶喕噬?guī)范。本質(zhì)上,彩色模型是坐標系統(tǒng)和子空間的規(guī)范。位于系統(tǒng)中的每種顏色都由單個點來表示。本節(jié)主要討論幾種圖像處理應用的主要模型。9.2彩色模型(ColorModels)彩色模型(也稱彩1489.2.1RGB模型(RGBColorModel)RGB模型RGB模型是目前常用的一種彩色信息表達方式,它使用紅、綠、藍三原色的亮度來定量表示顏色。該模型也稱為加色混色模型,是以RGB三色光相互疊加來實現(xiàn)混色的方法,因而適合于顯示器等發(fā)光體的顯示。

9.2.1RGB模型(RGBColorModel)RG1499.2.1RGB模型(RGBColorModel)圖9.2RGB混色效果圖

9.2.1RGB模型(RGBColorModel)圖91509.2.1RGB模型(RGBColorModel)

圖9.3中,R,G,B位于三個角上;二次色深紅(Magenta)、青(Cyan)、黃(Yellow)位于另外3個角上,黑色在原點處,白色位于離原點最遠的角上(點(1,1,1))。在本模型中,不同的顏色處在立方體上或其內(nèi)部,并可用從原點分布的向量來定義。為方便起見,假定所有的顏色值都歸一化,即所有R,G,B的值都在[0,1]范圍

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論