第6章是說影像幾何主要是可以對一張影像做改變其形狀、大小或方向
6.1數據內插法
這節是講解內插法,課本說必需以已知的鄰近f(Xj)值來估算函數值f(X'i)這種以周圍數值估算函數值的方法稱為內插法,若f(X'i)=f(Xj),Xj為原來的點裡面最接近X'i的稱為近鄰內插法,而已直線連結原始函數值,然後取落在線上的值為內插值稱為線性內插法,這節介紹了好多的內插法,到底是要怎麼去運用呢??這些內插法差在哪裡??
6.2影像內插法
課本一開始就先推導雙線性內插法的公式,然後藉由圖6.6和圖6.7說明圖6.6為何從一張4X4的影像放大成8X8的影像就是利用最後推導出來的方程式-雙線性內插法去做成的,對這個公式看不是很懂,縮放係數小於1會得到比原來的圖片還要更小,可以利用resize(A,k,'method')這個指令來達成,圖6.9也舉了一個例子,若用近鄰內插法來進行放大,則圖片會呈現馬賽克的效果,而用雙線性內插法的話,則會感覺有點模糊。
6.3一般性內插法
若先對行執行內插,再對列執行內插,也就是說,只要對行與列兩個方向對影像執行立方內插法??什麼是立方內插法阿??就稱為雙立方內插法??看了課本的圖6.15和6.9的(b)感覺好像效果一樣,沒差太大的差異?!
6.4使用空間濾波器放大影像
課文好像是說如果想要對一張影像放大2的次方倍就是使用線性濾波器,原理就是對影像執行零交錯,就是在原始矩陣的行列之間插入數值為0的行與列,如此一來就可以把原始圖片達到放大2倍的效果,圖6.17就有舉例說明結果,可是如果真的使用0交錯,那在行與列都插入0,這樣圖片不是會一點一點的嗎??
6.5縮小
這節和上節正好相反,這結是說明把圖片縮小,課本說了2種方法,但第1種的方法不好就如圖6.18的(a)這樣會造成圖的邊緣線斷斷續續,不是很完整,她的原理是取走間隔的像素,用imresize指令可以做到,為何取走間隔的像素就可以縮小圖片??課本改良第1種方法是先對影像執行低通濾波,然後再運算轉換為二元影像這樣就不會造成邊緣線斷斷續續了。
6.6旋轉
內容說要將影像旋轉的話,必須保證旋轉後像素值要落在網格上,圖6.20有舉例說明,但是我不懂的是為什麼從圖6.20的6X4矩陣,經過旋轉30度後變成圖6.22所示的點會和原來圖的大小不同??感覺縮小了!可以利用imrotate進行對圖片作旋轉的指令!為什麼使用近鄰內插法會造成鋸齒化更加明顯?使用flipud指令可進行90度倍數旋轉(也就是造成圖片上下顛倒),而使用fliplr則可以進行左右倒轉。
6.7歪像
使用rgb2gray指令好像可以扭曲圖片,透過pixval函數可以單獨取出骷顱頭影像。
沒有留言:
張貼留言