Re: [問題] 該怎樣子找影像處理中縮圖的相關資料
看板C_and_CPP (C/C++)作者littleshan (我要加入劍道社!)時間16年前 (2009/06/07 21:01)推噓3(3推 0噓 1→)留言4則, 3人參與討論串3/3 (看更多)
※ 引述《VictorTom (鬼翼&娃娃魚)》之銘言:
: 這個比例數學上都算得出來, 就可以代入雙線性內差法求值....
: 相對於總是取相臨四個點, 也有用二次函數取九個點的算法的樣子....
: 但是有一個最簡單的問題是, 只取臨近的幾個點的縮圖總是可能不夠....
: 所以另外一種平均法, 也可以把範圍內所有pixel都拿進來取平均....
: 同樣的example, 假如這次我要縮成2 x 1的大小....
: 01 02 03 04 05 06 07 08
: 03 04 05 06 07 08 09 10 把16個值都拿來取平均....
: 05 06 07 08 09 10 11 12 算出來的縮圖顯然會比只取四個還有鑑別性....
: 07 08 09 10 11 12 13 14 這個例子可能看不出來是因為我數字取得差....
: 取平均 取平均
: 那假如又不是剛剛好比例均等呢??(而且resize也不見得width和height比例要一樣)
: 考倒我了, 事實上這種case在3D要fetch texel的話, 已經會換一層mipmap取了XD
做個補充
當我們要縮小某張影像時
就 signal processing 的角度來看,其實就是降低 sampling rate
而在做 resample 之前,必須先對原本的訊號做一次 low-pass filter
否則會因為 sampling rate 比 signal frequency 還低而產生 aliasing
這裡有一篇非常棒的教學文章
http://www.csie.ntu.edu.tw/~r89004/hive/mipmap/page_1.html
而這個 low-pass filter
其實有許多種做法
像是 VictorTom 板友說的,拿 16 個值來平均 (其實就是 box filter)
或是 mipmap (這其實是建立一系列的 low-frequency signal)
或是影像處理最常用的 gaussian filter
如果不是等比例的縮放
可以考慮依照縮放比例使用適當大小的 gaussian filter 來作為 low-pass filter
尤其當 x/y 縮放比例不同時,mipmap 可能就幫不上忙
(需要 anisotropic filtering)
但使用 gaussian filter 的情況下,只要在 x/y 方向上使用不同的σ即可
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.115.150.194
推
06/07 21:11, , 1F
06/07 21:11, 1F
推
06/07 21:17, , 2F
06/07 21:17, 2F
推
06/07 21:58, , 3F
06/07 21:58, 3F
→
06/07 21:59, , 4F
06/07 21:59, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章