week10_CH6
Chap6 IMAGE GEOMETRY 影像幾何學
我們可能在很多情況下會去改變影像的形狀,大小或方向.
可能想符合一個特別的位置或for printing而放大影像;
可能為了可以放在Web page上而減少它的size.
或希望透過旋轉調整原本不正確的角度或simply for effect.
旋轉和scaling都是affine transformation(仿射的變換)的例子,
其中線轉變成線,特別的是,平行線在轉變後依然保持平行.
非仿射幾何轉換包含warping(彎曲歪斜),但在此章不討論.
6.1 Interpolation of Data
從一個簡單的問題開始:設有一4個數值的集合,我們希望延展成8個.
除了頭尾的原點和延展後的點會相同之外,其餘的點都不同.
interpolation:根據周圍數值估算出函數值.
有以下三種方法:
(1)Nearest-neighbor interpolation:
每個延展後的點和它距離最近的原點相同
(2)Linear interpolation:
每個原點間用筆直的線相連,延展後的點對應到的距離即是.
(3)Calculating linearly interpolated values:
設兩原點之間一延展點為F,則(F-f(x1))/λ=(f(x2)-f(x1))/1
[幾何相似定理].
6.2 Image Interpolation
從線改為看平面,創一個4x4影像經過interpolated後成為8x8影像.
P122&P123算式最後導出f(x',y')稱為bilinear interpolation.
現在可以更容易scaling影像了.給一影像和一個scaling factor,
或一個我們要scale的size,先創一個符合要求大小的矩陣.
給一(x',y')矩陣,我們可一點接一點的從(x,y)對應周圍的點經由
nearest-neighbor或bilinear interpolation計算出一個
interpolated數值.
MATLAB中有函數imresize可以做到上述動作,可被表示為
resize(A,k,'method')
其中A是一個影像的型態,k is ascaling factor,method是
nearest或bilinear.
實做後發現nearest-neighbor有邊緣呈現鋸齒狀的效果.
bilinear interpolation雖然平坦多了,但有程度上的模糊.
Interpolation不能預測數值:不能從什麼也沒有的情況下創出data.
只能猜出最合原點的數值.
6.3 General Interpolation
利用三種函數方程式表示6.2所示的方法
(1)Nearest-neighbor interpolation
{0 if u≦-0.5
R0(u)={1 if -0.50.5
(2)Linear interpolation
R1(u)={1+u if u≦0
{1-u if u≧0
(3)Cubic interpolation
R3(u)={1.5∣u∣^3-2.5∣u∣^2+1 if ∣u∣≦1,
{-0.5∣u∣^3+2.5∣u∣^2-4∣u∣+2 if 1<∣u∣≦2
6.4 Enlargement by Spatial Filtering
用linear filtering也可以放大影像
6.5 Scaling Smaller
●image minimization:把間隔的點減少以達縮小影像這個目的
●subsampling
●tr=imresize(t,0.25);
使用Nearest-neighbor interpolation產生一個有缺口的圓
●trc=imresize(t,0.25,'bicubic');
經由Bicubic interpolation可修補上一種方法所產生的缺口
6.6 Rotation
利用矩陣旋轉圖形的公式可知旋轉後的點為何.
●在MATLAB中有imrotate(image,angle,'method')可用
其中method和前述相同,表示nearest、bilinear或bicubic
angle是指定的旋轉角度
●ipud可以顛倒(使相反)行跟列
●iplr讓影像上下相反
●左右相反: 90° flipud(c');
180° fliplr(flipud(c));
270° fliplr(c');
6.7 Anamorphosis
從某一程度的角度看影像,在MATLAB中的指令為rgb2gray
指定範圍:skull=a(566:743,157:586);
消除這種歪斜效果的指令:
skull2=imresize(imrotate(skull,-22,'bicubic'),[500,150],'bicubic');
因為對那個骷髏頭非常感興趣想實做這部份
但是竟然沒有這張圖>_<
標籤: 影像處理