1. 程式人生 > >影象上取樣和降取樣

影象上取樣和降取樣

 轉自:http://baike.baidu.com/view/3038019.htm和http://blog.sina.com.cn/s/blog_672c5a470100pmj6.html

   縮小影象(或稱為下采樣(subsampled)或降取樣(downsampled))的主要目的有兩個:1、使得影象符合顯示區域的大小;2、生成對應圖像的縮圖。放大影象(或稱為上取樣(upsampling)或影象插值(interpolating))的主要目的是放大原影象,從而可以顯示在更高解析度的顯示裝置上。對影象的縮放操作並不能帶來更多關於該影象的資訊, 因此影象的質量將不可避免地受到影響。然而,確實有一些縮放方法能夠增加影象的資訊,從而使得縮放後的影象質量超過原圖質量的。

      下采樣原理:對於一幅影象I尺寸為M*N,對其進行s倍下采樣,即得到(M/s)*(N/s)尺寸的得解析度影象,當然s應該是M和N的公約數才行,如果考慮的是矩陣形式的影象,就是把原始影象s*s視窗內的影象變成一個畫素,這個畫素點的值就是視窗內所有畫素的均值:


上取樣原理:影象放大幾乎都是採用內插值方法,即在原有影象畫素的基礎上在畫素點之間採用合適的插值演算法插入新的元素。

插值演算法分類

對插值演算法分類比較混亂,各人有各人的分類演算法。文獻《影象插值技術綜述》中簡略的將插值演算法分為傳統插值、 基於邊緣的插值和基於區域的插值3類,作為初學者入門明晰插值演算法還是有幫助。 1.傳統差值原理和評價 在傳統影象插值演算法中,鄰插值較簡單,容易實現,早期的時候應用比較普遍。但是,該方法會在新影象中產生明顯的鋸齒邊緣和馬賽克現象。雙線性插值法具有平滑功能,能有效地克服鄰法的不足,但會退化影象的高頻部分,使影象細節變模糊。在放大倍數比較高時,高階插值,如雙三次和三次樣條插值等比低階插值效果好。這些插值演算法可以使插值生成的畫素灰度值延續原影象灰度變化的連續性,從而使放大影象濃淡變化自然平滑。但是在影象中,有些畫素與相鄰畫素間灰度值存在突變,即存在灰度不連續性。這些具有灰度值突變的畫素就是影象中描述物件的輪廓或紋理影象的邊緣畫素。在影象放大中,對這些具有不連續灰度特性的畫素,如果採用常規的插值演算法生成新增加的畫素,勢必會使放大影象的輪廓和紋理模糊,降低影象質量。 2.基於邊緣的影象插值演算法 為了克服傳統方法的不足, 提出了許多邊緣保護的插值方法,對插值影象的邊緣有一定的增強, 使得影象的視覺效果更好, 邊緣保護的插值方法可以分為兩類: 基於原始低分辨影象邊緣的方法和基於插值後高解析度影象邊緣的方法。基於原始低解析度影象邊緣的方法:( 1)
首先檢測低解析度影象的邊緣, 然後根據檢測的邊緣將畫素分類處理, 對於平坦區域的畫素,採用傳統方法插值;對於邊緣區域的畫素, 設計特殊插值方法, 以達到保持邊緣細節的目的。(2)基於插值後高解析度影象邊緣的方法這類插值方法:首先採用傳統方法插值低解析度影象,然後檢測高解析度影象的邊緣,最後對邊緣及附近畫素進行特殊處理, 以去除模糊, 增強影象的邊緣。 3.基於區域的影象插值演算法 首先將原始低解析度影象分割成不同區域,然後將插值點對映到低解析度影象, 判斷其所屬區域, 最後根據插值點的鄰域畫素設計不同的插值公式, 計算插值點的值。