2010-04-29 130 views
2

我正在設計一個jpeg to bmp解碼器來縮放圖像。我已經提供瞭解碼器的源代碼,所以我的實際工作是設計一個縮放器。我不知道從哪裏開始。我已經在互聯網上搜索了各種縮放算法,但我不確定在哪裏介紹縮放。所以我應該在圖像轉換爲bmp之後進行縮放,或者我應該在MCU級解碼期間進行縮放。很困惑:(C中的圖像縮放比例

如果你們有一些信息來幫助我,它的讚賞。任何材料閱讀,源代碼分析等....

哦,我忘了提一兩件事,這是從PC平臺到FPGA一個移植項目,所以,不是所有的庫文件都可以在目標平臺上。

回答

2

有很多方式來縮放圖像。

最簡單的方法是解碼圖像,然後使用天真縮放算法進行縮放,例如:

dest_pixel [x,y] = src_pixel [x * x_scale_factor, y * y_scale_factor] 

,其中x/y_scale_factor是

src_size/dest_size 

一旦你的工作,你可以考慮更復雜的縮放系統,像雙線性過濾。例如,目標像素是在減小尺寸時增加尺寸時幾個源像素的平均值,以及幾個源像素的插值。

+0

比例因子應該與您在那裏的相反。否則,您將訪問源圖像中的超出邊界的像素。 (想象一下,src_size是1,dest_size是2,結果如何。) – 2010-04-29 14:12:54

+0

@Jim:我覺得那裏沒有足夠的睡眠。現在修復它。 – Skizz 2010-04-29 14:22:48

+0

感謝Skizz和jim,我做了一個簡單的數組縮放,它工作。如果你有一些複雜的縮放源代碼,請發佈它,以便我可以研究它們。 (任何語言,任何平臺)。 – Gan 2010-04-29 15:57:49