1.一種基于FPGA的圖像縮放處理方法,其特征在于,包括如下步驟:
獲取原圖像數(shù)據(jù),并以預(yù)設(shè)放入速度將所述原圖像數(shù)據(jù)放入FPGA內(nèi)部緩存;
以與所述預(yù)設(shè)放入速度對(duì)應(yīng)的讀取速度從所述內(nèi)部緩存中讀取原圖像數(shù)據(jù),并根據(jù)插值算法以及讀取的原圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得圖像插值數(shù)據(jù);
根據(jù)所述圖像插值數(shù)據(jù),獲得縮放后的圖像數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的基于FPGA的圖像縮放處理方法,其特征在于,所述FPGA內(nèi)部緩存包括第一內(nèi)部緩存、第二內(nèi)部緩存以及第三內(nèi)部緩存,且所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存分別只存儲(chǔ)單位行圖像數(shù)據(jù);
所述獲取原圖像數(shù)據(jù),并將所述原圖像數(shù)據(jù)放入FPGA內(nèi)部緩存的步驟包括:獲取原圖像數(shù)據(jù);以單位行為步長(zhǎng)以及預(yù)設(shè)行順序方向,將所述原圖像數(shù)據(jù)的單位行圖像數(shù)據(jù)放入所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存中空閑的緩存;
所述以與所述預(yù)設(shè)放入速度對(duì)應(yīng)的讀取速度從所述內(nèi)部緩存中讀取原圖像數(shù)據(jù),并根據(jù)插值算法對(duì)讀取的原圖像數(shù)據(jù)進(jìn)行插值計(jì)算,獲得圖像數(shù)據(jù)插值數(shù)據(jù)的步驟包括:
當(dāng)所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存均存儲(chǔ)有單位行圖像數(shù)據(jù)時(shí),以所述讀取速度從所述FPGA內(nèi)部緩存中讀取存儲(chǔ)時(shí)間較長(zhǎng)的前兩個(gè)單位行圖像數(shù)據(jù),并將存儲(chǔ)時(shí)間最長(zhǎng)的單位行圖像數(shù)據(jù)從所述FPGA內(nèi)部緩存中刪除;
根據(jù)所述插值算法以及讀取的存儲(chǔ)時(shí)間較長(zhǎng)的前兩個(gè)單位行圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得初始圖像插值數(shù)據(jù);
判斷所述原圖像數(shù)據(jù)是否放入完畢;
若否,返回所述以單位行為步長(zhǎng)以及預(yù)設(shè)行順序方向,將所述原圖像數(shù)據(jù)的單位行圖像數(shù)據(jù)放入所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存中空閑的緩存的步驟;
若是,讀取所述FPGA內(nèi)部緩存中剩余的兩個(gè)單位行圖像數(shù)據(jù),根據(jù)所述插值算法以及讀取的所述FPGA內(nèi)部緩存中剩余的兩個(gè)單位行圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得剩余圖像數(shù)據(jù)插值數(shù)據(jù),所述圖像數(shù)據(jù)插值數(shù)據(jù)為所述剩余圖像數(shù)據(jù)插值數(shù)據(jù)和各所述初始圖像插值數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的基于FPGA的圖像縮放處理方法,其特征在于,所述以與所述預(yù)設(shè)放入速度對(duì)應(yīng)的讀取速度從所述內(nèi)部緩存中讀取原圖像數(shù)據(jù)之前,還包括步驟:
獲取所述原圖像數(shù)據(jù)的初始大小以及所述原圖像數(shù)據(jù)縮放后的預(yù)設(shè)目標(biāo)大小,并根據(jù)所述預(yù)設(shè)放入速度、所述原圖像數(shù)據(jù)的初始大小以及所述預(yù)設(shè)目標(biāo)大小,獲取從所述FPGA內(nèi)部緩存中讀取所述原圖像數(shù)據(jù)的所述讀取速度。
4.根據(jù)權(quán)利要求1所述的基于FPGA的圖像縮放處理方法,其特征在于,所述插值算法包括雙線性插值算法,所述FPGA內(nèi)部緩存為FPGA內(nèi)部SRAM,所述第一內(nèi)部緩存為第一內(nèi)部SRAM、所述第二內(nèi)部緩存為第二內(nèi)部SRAM以及所述第三內(nèi)部緩存為第三內(nèi)部SRAM。
5.根據(jù)權(quán)利要求1所述的基于FPGA的圖像縮放處理方法,其特征在于,所述根據(jù)插值算法以及讀取的原圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得圖像插值數(shù)據(jù)之前,還包括步驟:
將每個(gè)所述讀取的原圖像數(shù)據(jù)的位寬調(diào)整為預(yù)設(shè)的位寬,更新所述讀取的原圖像數(shù)據(jù)。
6.一種基于FPGA的圖像縮放處理裝置,其特征在于,包括:
存放模塊,用于獲取原圖像數(shù)據(jù),并以預(yù)設(shè)放入速度將所述原圖像數(shù)據(jù)放入FPGA內(nèi)部緩存;
圖像插值數(shù)據(jù)獲取模塊,用于以與所述預(yù)設(shè)放入速度對(duì)應(yīng)的讀取速度從所述內(nèi)部緩存中讀取原圖像數(shù)據(jù),并根據(jù)插值算法以及讀取的原圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得圖像插值數(shù)據(jù);
縮放后的圖像數(shù)據(jù)獲取模塊,用于根據(jù)所述圖像插值數(shù)據(jù),獲得縮放后的圖像數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的基于FPGA的圖像縮放處理裝置,其特征在于,所述FPGA內(nèi)部緩存包括第一內(nèi)部緩存、第二內(nèi)部緩存以及第三內(nèi)部緩存,且所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存分別只存儲(chǔ)單位行圖像數(shù)據(jù);
所述存放模塊包括:
獲取模塊,用于獲取原圖像數(shù)據(jù);
存儲(chǔ)模塊,用于以單位行為步長(zhǎng)以及預(yù)設(shè)行順序方向,將所述原圖像數(shù)據(jù)的單位行圖像數(shù)據(jù)放入所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存中空閑的緩存;
所述圖像插值數(shù)據(jù)獲取模塊包括:
讀取模塊,用于當(dāng)所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存均存儲(chǔ)有單位行圖像數(shù)據(jù)時(shí),以所述讀取速度從所述FPGA內(nèi)部緩存中讀取存儲(chǔ)時(shí)間較長(zhǎng)的前兩個(gè)單位行圖像數(shù)據(jù),并將存儲(chǔ)時(shí)間最長(zhǎng)的單位行圖像數(shù)據(jù)從所述FPGA內(nèi)部緩存中刪除;
初始圖像插值數(shù)據(jù)獲取模塊,用于根據(jù)所述插值算法以及讀取的存儲(chǔ)時(shí)間較長(zhǎng)的前兩個(gè)單位行圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得初始圖像插值數(shù)據(jù);
判斷模塊,用于判斷所述原圖像數(shù)據(jù)是否放入完畢;
返回模塊,用于所述判斷模塊的判斷結(jié)果為否時(shí),返回所述存儲(chǔ)模塊以單位行為步長(zhǎng)以及預(yù)設(shè)行順序方向,將所述原圖像數(shù)據(jù)的單位行圖像數(shù)據(jù)放入所述第一內(nèi)部緩存、所述第二內(nèi)部緩存以及所述第三內(nèi)部緩存中空閑的緩存;
剩余圖像數(shù)據(jù)插值獲取模塊,用于所述判斷模塊的判斷結(jié)果為是時(shí),讀取所述FPGA中剩余的兩個(gè)單位行圖像數(shù)據(jù),根據(jù)所述插值算法以及讀取的所述FPGA中剩余的兩個(gè)單位行圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得剩余圖像數(shù)據(jù)插值數(shù)據(jù),所述圖像數(shù)據(jù)插值數(shù)據(jù)為所述剩余圖像數(shù)據(jù)插值數(shù)據(jù)和各所述初始圖像插值數(shù)據(jù)。
8.根據(jù)權(quán)利要求6所述的基于FPGA的圖像縮放處理裝置,其特征在于,還包括:
速度獲取模塊,用于所述圖像插值數(shù)據(jù)獲取模塊以與所述預(yù)設(shè)放入速度對(duì)應(yīng)的讀取速度從所述內(nèi)部緩存中讀取原圖像數(shù)據(jù)之前獲取所述原圖像數(shù)據(jù)的初始大小以及所述原圖像數(shù)據(jù)縮放后的預(yù)設(shè)目標(biāo)大小,并根據(jù)所述預(yù)設(shè)放入速度、所述原圖像數(shù)據(jù)的初始大小以及所述預(yù)設(shè)目標(biāo)大小,獲取從所述FPGA內(nèi)部緩存中讀取所述原圖像數(shù)據(jù)的所述讀取速度。
9.根據(jù)權(quán)利要求6所述的基于FPGA的圖像縮放處理裝置,其特征在于,所述插值算法包括雙線性插值算法,所述FPGA內(nèi)部緩存為FPGA內(nèi)部SRAM,所述第一內(nèi)部緩存為第一內(nèi)部SRAM、所述第二內(nèi)部緩存為第二內(nèi)部SRAM以及所述第三內(nèi)部緩存為第三內(nèi)部SRAM。
10.根據(jù)權(quán)利要求6所述的基于FPGA的圖像縮放處理裝置,其特征在于,還包括:
更新模塊,用于所述圖像插值數(shù)據(jù)獲取模塊根據(jù)插值算法以及讀取的原圖像數(shù)據(jù),進(jìn)行插值計(jì)算,獲得圖像插值數(shù)據(jù)之前將每個(gè)所述讀取的原圖像數(shù)據(jù)的位寬調(diào)整為預(yù)設(shè)的位寬,更新所述讀取的原圖像數(shù)據(jù)。