Download presentation
Presentation is loading. Please wait.
Published byJason Riley Modified 4年之前
1
第四章 點處理 4.1 前言 只要是影像處理運算就會轉換像素的灰階值。 影像處理運算可以按照進行轉換時所需的資訊分成三個等級。
第四章 點處理 4.1 前言 只要是影像處理運算就會轉換像素的灰階值。 影像處理運算可以按照進行轉換時所需的資訊分成三個等級。 複雜度由高至低可排列如下: 轉換(transforms) 鄰域處理(neighborhood processing ) 點運算(point operations) 第四章 點處理 第72頁
2
圖 4.1 (點運算) 第四章 點處理 第72頁 圖4.1
3
圖 4.1
4
4.2 數學運算 數學運算對影像中的每個像素灰階值會進行下列簡單的函數運算。 ex: y=x±C, y=Cx
4.2 數學運算 數學運算對影像中的每個像素灰階值會進行下列簡單的函數運算。 ex: y=x±C, y=Cx 不管是哪一種情況都必須稍微調整輸出結果,讓結果為落在 的範圍之內的整數。 第四章 點處理 第73頁
5
圖 4.3 第四章 點處理 第74.75頁 圖4.3
6
圖 4.4、表 4.1 第四章 點處理 第75頁 圖4.4
7
4.2 數學運算 補色 灰階影像的補色(complement)就是對應到相片的負片。
4.2 數學運算 補色 灰階影像的補色(complement)就是對應到相片的負片。 若影像矩陣m 屬於double 形態(0.0 至1.0): 1-m 若為uint8形態影像(0至255): 255-m 第四章 點處理 第76頁
8
圖 4.6 第四章 點處理 第76.77頁 圖4.6
9
4.3 直方圖(灰階值分布圖) 灰階影像的直方圖(histogram)是由其灰階值統計量所構成,也就是一張標示每個灰階值在影像中出現次數的圖表。>>imhist函數 對比不明顯的影像可透過擴展其灰階分布來加強對比: -直方圖擴展法。 -直方圖等化。 第四章 點處理 第78頁
10
4.3.1 直方圖擴展法(對比擴展法) 假設現有如圖4.9 所示影像直方圖,其灰階分布ni 如下表:
直方圖擴展法(對比擴展法) 假設現有如圖4.9 所示影像直方圖,其灰階分布ni 如下表: 在此可執行圖4.9 右半部之片段線性函數。 第四章 點處理 第79頁
11
4.3.1 直方圖擴展法(對比擴展法) 此函數可依照下列方程式將灰階層次5 至9 擴展成灰階層次2 至14。
直方圖擴展法(對比擴展法) 此函數可依照下列方程式將灰階層次5 至9 擴展成灰階層次2 至14。 i 是原始灰階層次,j 是轉換後的結果。 第四章 點處理 第79頁
12
圖 4.10 imadjust 的用法 imadjust對於double、uint8或uint16 形態的影像執行效果一樣好。
圖 4.10 imadjust 的用法 imadjust對於double、uint8或uint16 形態的影像執行效果一樣好。 a、b、c 和d 的數值必須介於0與1 之間。 此函數會在必要的時候自動將影像im 轉換為double形態。 imadjust(im,[a,b],[c,d]) 注意:imadjust與圖4.9 顯示的運算方式不盡相同。 第四章 點處理 第80頁 圖4.10
13
直方圖擴展法(對比擴展法) imadjust函數還有另一個可選用的參數:gamma值 第四章 點處理 第80.81頁
14
圖 & 4.13 第四章 點處理 第81.82頁 圖4.12
15
4.3.1 直方圖擴展法(對比擴展法) 片段線性擴展函數 函數的核心便為如下所示的程式片段: 其中im 是輸入的影像,out是輸出的影像。
直方圖擴展法(對比擴展法) 片段線性擴展函數 函數的核心便為如下所示的程式片段: 其中im 是輸入的影像,out是輸出的影像。 第四章 點處理 第83頁
16
圖 4.16 參考圖 4.15 第四章 點處理 第83.84頁 圖4.16
17
Function histpwl function out = histpwl(im,a,b) % % HISTPWL(IM,A,B) applies a piecewise linear transformation to the pixel values % of image IM, where A and B are vectors containing the x and y coordinates % of the ends of the line segments. IM can be of type UINT8 or DOUBLE, % and the values in A and B must be between 0 and 1. % For example: % histpwl(x,[0,1],[1,0]) % simply inverts the pixel values. classChanged = 0; if ~isa(im, 'double'), classChanged = 1; im = im2double(im); end if length(a) ~= length (b) error('Vectors A and B must be of equal size'); N=length(a); out=zeros(size(im)); for i=1:N-1 pix=find(im>=a(i) & im<a(i+1)); out(pix)=(im(pix)-a(i))*(b(i+1)-b(i))/(a(i+1)-a(i))+b(i); end pix=find(im==a(N)); out(pix)=b(N); if classChanged==1 out = uint8(255*out);
18
直方圖等化 完全自動的處理方式。 假設影像中有L 個不同的灰階值0, 1, 2, , L – 1。在影像中出現ni 次灰階值i n0 + n1 + n nL-1 = n 範例: 假設一個4 位元灰階影像灰階直方圖如圖4.17 所示,其灰階值分布ni如下表: 第四章 點處理 第85頁
19
直方圖等化 (L-1)/n 第四章 點處理 第86頁
20
圖 4.19 histeq 第四章 點處理 第87頁 圖4.19
21
圖 4.20 第四章 點處理 第88頁 圖4.20
22
圖 4.21 第四章 點處理 第88.89頁 圖4.21
23
直方圖等化 運作原理 如果可以將影像視為連續函數f(x, y),將直方圖視為某一範圍灰階值出現次數的積分,就可以將直方圖當作機率密度函數來處理。 第四章 點處理 第89頁
24
4.4 查詢表格 使用查詢表格(lookup table)(縮寫LUT)來執行點運算會十分有效率。 舉例來說,「除以2」的LUT 表格如下:
4.4 查詢表格 使用查詢表格(lookup table)(縮寫LUT)來執行點運算會十分有效率。 舉例來說,「除以2」的LUT 表格如下: 若T 為MATLAB的查詢表格,im為影像,則可使用下列簡單指令執行表格查詢: 第四章 點處理 第90頁
25
4.4 查詢表格 例如 再舉一個例子,假設我們要用圖4.23 的對比擴展函數執行LUT。 代入4.3.1節中的方程式,得到三個直線方程式為:
4.4 查詢表格 例如 >> b = b+1; 再舉一個例子,假設我們要用圖4.23 的對比擴展函數執行LUT。 代入4.3.1節中的方程式,得到三個直線方程式為: 第四章 點處理 第90頁
26
圖 4.23 第四章 點處理 第91頁 圖4.23
Similar presentations