專利名稱:一種圖像縮放方法、裝置及芯片的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字圖像處理技術(shù)領(lǐng)域,特別是涉及一種圖像縮放方法、裝置 及芯片。
背景技術(shù):
隨著科技的飛速發(fā)展,數(shù)碼相機、帶有攝像功能的手機、DV攝像機以及 手機移動電視等高科技產(chǎn)品已經(jīng)日趨廣泛地走進人們的生活和工作當中。同 時,我們也經(jīng)常會遇到攝像頭采集到的圖像大小和最終想要播放的畫面大小不 匹配的問題。上述問題就需要利用圖像縮放技術(shù)來解決,圖像縮放技術(shù)是數(shù)字 圖像處理中的常見技術(shù)之一,通過圖像縮放技術(shù)可以利用同一源圖像,即采集 到的圖像的源數(shù)據(jù),生成不同分辨率的目標圖像,從而使得一幅畫面圖像能夠 在不同分辨率的終端設(shè)備上顯示。
比如,在視頻會議應(yīng)用領(lǐng)域,經(jīng)常會遇到需要將一個輸入源圖像以不同的 分辨率顯示在不同的終端設(shè)備上的情況,此時就需要對源圖像進行圖像縮放處 理,生成不同分辨率的目標圖像,以便在不同終端設(shè)備上顯示。例如,在視頻 會議中,將一個輸入源為1080P(圖像分辨率為1920xl080)的圖像,經(jīng)過圖像 縮放處理后,顯示在支持4CIF (圖像分辨率為704x576)和720P(圖像分辨率 為1280x720)的終端設(shè)備上。
現(xiàn)有技術(shù)中,圖像縮放技術(shù)使用理想濾波器對插值后的圖像進行濾波,然 后再抽取需要的點組成目標圖像的數(shù)據(jù)。具體包括以下步驟
步驟ll、使用理想濾波器縮放處理每一行數(shù)據(jù),得到每一行臨時數(shù)據(jù); 步驟12、采用6行行緩存(Line buffer, Lbuf)存儲上述縮放處理后的每一 4亍臨時凝L凈居;
步驟13、利用理想濾波器縮放處理上述6行Lbuf中的每一列數(shù)據(jù); 步驟14、將縮放處理后的數(shù)據(jù)輸入到目標數(shù)據(jù)存放區(qū)域。 循環(huán)執(zhí)行步驟11 14,直到圖像的原始數(shù)據(jù)中的每一行、每一列數(shù)據(jù)都縮 放處理完畢,縮放處理后的數(shù)據(jù)全部保存在上述目標數(shù)據(jù)存;^文區(qū)域中,用于目標圖像的顯示。
由此可見,現(xiàn)有縮放技術(shù)使用6行LBuf存儲行縮放處理后的臨時數(shù)據(jù), 消耗了較大的內(nèi)存面積。相應(yīng)地,在縮放裝置中,對大內(nèi)存的縮放控制需要較 為復(fù)雜的縮放控制電路,增加了系統(tǒng)的功耗。同時,復(fù)雜的縮放控制電路的成 本也較高,因而,采用現(xiàn)有技術(shù)提供的縮放技術(shù)又進一步增加了縮放裝置的生 產(chǎn)成本。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種圖像縮放方法、裝置及芯片,能夠 有效減少圖像縮放處理過程中占用的緩存面積,進而降低芯片的成本和功耗。 為了解決上述問題,本發(fā)明公開了一種圖像縮放方法,包括 選取需要縮放的當前行;
依次將所述需要縮放的當前行的每列數(shù)據(jù)縮放處理成一列臨時像素值,將 所述一列臨時像素值的第一個像素值存儲于一行Lbuf中,并對所述一行Lbuf 中的像素值進行縮放處理,得到目的數(shù)據(jù);
重復(fù)上述操作,存儲每一行所述目的數(shù)據(jù)。
優(yōu)選的,所述縮放處理為理想低通濾波器縮放處理。
優(yōu)選的,所述選取需要縮放的當前行的行數(shù)是由所述理想低通濾波器需要 的垂直方向的抽頭個數(shù)確定。
對應(yīng)上述圖像縮放方法,本發(fā)明還提供了一種圖像縮放裝置,包括
數(shù)據(jù)讀取控制模塊,用于選取需要縮放的當前行數(shù)據(jù);
圖像縮放處理模塊,用于依次將所述當前行數(shù)據(jù)的每列數(shù)據(jù)縮放處理成一 列臨時像素值,將所述一列臨時像素值的第一個像素值存儲至一行Lbuf中,并 對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù);
數(shù)據(jù)存放模塊,用于存儲圖像數(shù)據(jù)。
優(yōu)選的,所述圖像縮放處理模塊,具體包括
像素緩存單元,用于存儲需要縮放的當前行數(shù)據(jù)中的一列數(shù)據(jù);
列縮放處理單元,用于將所述一列數(shù)據(jù)縮放處理為一列臨時像素值;
一行Lbuf緩存單元,用于存儲每一列所述列臨時像素值的第 一個像素值,
5形成一行像素值;
行縮放處理單元,用于對所述一行像素值進行縮放處理,得到目的數(shù)據(jù)。
優(yōu)選的,所述數(shù)據(jù)存放模塊,具體包括
原始圖像存儲單元,用于存儲原始圖像的數(shù)據(jù);
目的圖係存儲單元,用于存儲縮放處理后的目的數(shù)據(jù);
緩存單元,用于緩存每一列剩余臨時像素值。
優(yōu)選的,所述列縮放處理單元和行縮放處理單元采用理想低通濾波器縮放 處理。
優(yōu)選的,所述數(shù)據(jù)讀取控制模塊選取需要縮放的當前行的行數(shù)是由所述理 想低通濾波器需要的垂直方向的抽頭個數(shù)確定。
另外,本發(fā)明還提供了一種芯片,所述芯片包括一圖像縮放裝置,該裝置 包括
數(shù)據(jù)讀取控制模塊,用于選取需要縮放的當前行數(shù)據(jù);
圖像縮放處理模塊,用于依次將所述當前行數(shù)據(jù)的每列數(shù)據(jù)縮放處理成一 列臨時像素值,將所述一列臨時像素值的第一個像素值存儲至一行Lbuf中,并 對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù);
數(shù)據(jù)存放模塊,用于存儲圖像數(shù)據(jù)。
優(yōu)選的,所述圖像縮放處理模塊具體包括
像素緩存單元,用于存儲需要縮放的當前行數(shù)據(jù)中的一列數(shù)據(jù);
列縮放處理單元,用于將所述一列數(shù)據(jù)縮放處理為一列臨時像素值;
一行Lbuf緩存單元,用于存儲每一列所述列臨時像素值的第一個像素值, 形成一行像素值;
行縮放處理單元,用于對所述一行像素值進行縮放處理,得到目的數(shù)據(jù)。
優(yōu)選的,所述數(shù)據(jù)存放模塊具體包括
原始圖像存儲單元,用于存儲原始圖像的數(shù)據(jù);
目的圖像存儲單元,用于存儲縮放處理后的目的數(shù)據(jù);
緩存單元,用于緩存每一列剩余臨時像素值。
優(yōu)選的,所述列縮放處理單元和行縮放處理單元采用理想低通濾波器縮放 處理。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點
本發(fā)明提供的圖像縮放方法先使用列濾波,將待處理數(shù)據(jù)塊的 一列數(shù)據(jù)進 行濾波縮放處理得到每一列臨時像素,使用一行Lbuf存儲每一列臨時像素的 第一個像素值,然后對一行Lbuf中的一行像素值進行縮放處理就能得到每一 行目的數(shù)據(jù)。本發(fā)明提供的圖像縮放方法、裝置及芯片,只需要使用一行Lbuf 就能實現(xiàn)對原始圖像的縮放,有效減少了系統(tǒng)的緩存面積,進而減低了芯片的 生產(chǎn)成本,減少了芯片系統(tǒng)的功耗。
圖l是本發(fā)明一種圖像縮放方法實施例的流程圖; 圖2是本發(fā)明圖像縮放裝置實施例的結(jié)構(gòu)示意圖; 圖3是本發(fā)明圖像縮放處理模塊實施例的結(jié)構(gòu)示意圖; 圖4是本發(fā)明數(shù)據(jù)存放模塊實施例的結(jié)構(gòu)示意圖。
具體實施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進一步詳細的說明。
本發(fā)明提供了一種圖像縮放方法,包括以下步驟
51, 選取需要縮放的當前行;
52, 依次將所述需要縮放的當前行的每列數(shù)據(jù)縮放處理成一列臨時像素 值,將所述一列臨時像素值的第一個像素值存儲于一行Lbuf中,并對所述一 行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù);
53, 重復(fù)上述操作,存儲每一行所述目的數(shù)據(jù)。
參照圖1,示出了本發(fā)明一種圖像縮放方法實施例的流程圖,具體包括 步驟IOI,選取需要縮放的當前行;
步驟102,縮放處理所述當前行的一列數(shù)據(jù),得到一列臨時像素值;
步驟103,讀取所述一列臨時像素值的第一個像素值,存儲于一行Lbuf
中;
步驟104,存儲所述一列臨時像素值中的剩余像素; 即存儲為 一列剩余臨時像素值。步驟105,從上述步驟102開始,重復(fù)執(zhí)行以上步驟,直至處理完所述當 前行中的每一列,得到存儲于一行Lbuf中的一行像素值;
步驟106,縮放處理所述一行Lbuf中的一行像素值,輸出一行目的數(shù)據(jù);
步驟107,讀取每一列所述剩余臨時像素值中的第一個像素,形成一行像 素值存儲于一行Lbuf中;
返回執(zhí)行步驟106,直至所述當前行的圖像數(shù)據(jù)縮放完畢,得到目標圖像 數(shù)據(jù)。
在本發(fā)明提供的圖像縮放方法實施例中,所述縮放處理方法優(yōu)選采用理想 低通濾波器縮放處理,所述選取需要縮放的當前行的行數(shù),是由上述理想低通 濾波器需要的垂直方向的抽頭個數(shù)確定。如采用6階低通濾波器對圖像的原始 數(shù)據(jù)進行縮放處理,則上述需要縮放的當前行的行數(shù)應(yīng)為6,即對圖像的每一 行原始數(shù)據(jù)進行縮放處理時,則要選取與該待處理數(shù)據(jù)行相鄰的5行數(shù)據(jù)。
上述理想低通濾波處理過程為選取待處理數(shù)據(jù),這些待處理數(shù)據(jù)為一些 離散數(shù)據(jù);利用插值方法在上述離散數(shù)據(jù)的基礎(chǔ)上補插連續(xù)函數(shù),即根據(jù)這些 離散數(shù)據(jù)耦合出 一連續(xù)函數(shù),使得該連續(xù)函數(shù)的曲線通過全部的離散數(shù)據(jù)點; 然后再根據(jù)該連續(xù)函數(shù),計算需要的數(shù)據(jù)點的值。利用插值可以通過上述耦合 出的連續(xù)函數(shù)在有限點的取值狀況,估算出函數(shù)在其他點處的近似值,從而選 取圖像縮放處理時需要的像素點的值。
下面結(jié)合具體例子對上述圖像縮放方法進行說明假設(shè)圖像的原始數(shù)據(jù)為 300 (30行xlO列)個像素值。
第一實施例將上述原始圖像縮小為75 ( 15行x5列)個像素大小的圖像。
首先,從第一行開始進行縮放處理,在對第l行數(shù)據(jù)進行縮放時,選擇第 2、 3、 4、 5、 6行,讀取第l-6行數(shù)據(jù)中的第1列數(shù)據(jù),該列數(shù)據(jù)中共包含6 個像素值。
本發(fā)明實施例中,定義上述第l-6行原始圖像數(shù)據(jù)為原始圖像的第一塊待 處理數(shù)據(jù)。那么,上述包含300個像素值的原始圖像共可以劃分為5塊待處理數(shù)據(jù)。
利用6階低通濾波器對上述第1列數(shù)據(jù)進行縮放處理后,抽取需要的3個 像素值,得到第一列臨時像素值,該列臨時像素值包含3個像素。讀取該列臨時像素值的第一個像素,存儲進一行Lbuf,緩存第一列剩余臨時像素。接著讀
取第2列數(shù)據(jù),對該列數(shù)據(jù)的6個像素進行6階低通濾波器縮放處理得到第二 列臨時像素,上述第二列臨時像素同樣包含3個像素。將所述第二列臨時像素 的第一個像素值存儲于一行Lbuf中,緩存第二列剩余臨時像素。依此類推, 計算第3列、第4列......第10列,直到第1-6行數(shù)據(jù)中的10列數(shù)據(jù)處理完畢,
則一行Lbuf中存儲進10個像素值。然后,對一行Lbuf中的10個像素進行6 階低通濾波器縮放處理,抽取需要的5個像素點,得到一行包含5個像素的目 的數(shù)據(jù)。輸出該行目的數(shù)據(jù),存儲為目的圖像的第一行數(shù)據(jù)。
然后將上述第一列剩余臨時像素中的第一個像素值、第二列剩余臨時像素 中的第一個像素值、第三列剩余臨時像素中的第一個像素值......第十列剩余臨
時像素中的第一個像素值依次存入一行Lbuf中,得到l行像素值,該行像素 值包含10個臨時像素。接著對一行Lbuf中的10個像素進行6階低通濾波器 縮放處理,抽取需要的5個像素點,得到一行包含5個像素的目的數(shù)據(jù)。輸出 該行目的數(shù)據(jù),存儲為目的圖像的第二行數(shù)據(jù)。
依此類推,將原始圖像的第1-6行(6行xlO列)數(shù)據(jù)縮小為(3行x5列) 大小的目的數(shù)據(jù)。
接著,對原始圖像的第二塊待處理數(shù)據(jù)進行縮放處理
選擇原始圖像的第7、 8、 9、 10、 11、 12行,讀取第7-12行數(shù)據(jù)中的第1 列數(shù)據(jù),該列數(shù)據(jù)中共包含6個像素值。上述第l-6行數(shù)據(jù)為圖像的原始數(shù)據(jù)。 利用6階低通濾波器對上述第1列數(shù)據(jù)進行縮放處理后,抽取需要的3個像素 值,得到一列臨時像素值,該列臨時像素值包含3個像素。讀取該列臨時像素 值的第一個像素,存儲進一行Lbuf中,緩存第一列剩余臨時像素。接著讀取 第2列數(shù)據(jù),對該列數(shù)據(jù)的6個像素進行6階低通濾波器縮放處理得到第二列 臨時像素,上述第二列臨時像素同樣包含3個像素,將所述第二列臨時像素的 第一個像素值存儲于一行Lbuf中,緩存第二列剩余臨時像素。依此類推,計 算第3列、第4列......第10列,直到第7-12行數(shù)據(jù)中的IO列數(shù)據(jù)處理完畢,
則一行Lbuf中存儲進10個像素值。然后,對一行Lbuf中的10個像素進行6 階低通濾波器縮放處理,抽取需要的5個像素點,得到一行包含5個像素的目 的數(shù)據(jù)。輸出該行目的數(shù)據(jù),成為目的圖像的第四行數(shù)據(jù)。
9然后將上述第 一列剩余臨時像素中的第 一個像素值、第二列剩余臨時像素 中的第一個像素值、第三列剩余臨時像素中的第一個像素值......第十列剩余臨
時像素中的第一個像素值依次存入一行Lbuf中,得到l行像素值,該行像素 值包含10個臨時像素。然后,對一行Lbuf中的10個像素進行6階低通濾波 器縮放處理,抽取需要的5個像素點,得到一行包含5個像素的目的數(shù)據(jù)。輸 出該行目的數(shù)據(jù),成為目的圖像的第五行數(shù)據(jù)。
依此類推,將讀取的第7-12行數(shù)據(jù)中(6行xl0列)像素縮小為(3行x5 列)大小的目的數(shù)據(jù)。
接著選擇圖像原始數(shù)據(jù)的第13、 14、 15、 16、 17、 18行,按照上述方法 進4亍處理。
依此類推,直至將圖像的30行原始數(shù)據(jù)處理完畢,得到一幅(15行x5列) 像素大小的圖像。
第二實施例將上述大小為300 (30行xlO列)個像素值的原始圖像放大 為1200 ( 60行x20列)個像素大小的圖像。
首先,從第一行開始進行縮放處理,在對第l行數(shù)據(jù)進行縮放時,選擇第 2、 3、 4、 5、 6行,讀取第l-6行數(shù)據(jù)中的第1列數(shù)據(jù),該列數(shù)據(jù)中共包含6 個像素值。
本發(fā)明實施例中,定義上述第l-6行原始圖像數(shù)據(jù)為原始圖像的第一塊待 處理數(shù)據(jù)。那么,上述包含300個像素值的原始圖像共可以劃分為5塊待處理數(shù)據(jù)。
利用6階低通濾波器對上述第1列數(shù)據(jù)進行縮放處理后,抽取需要的12 個像素值,得到第一列臨時像素值,該列臨時像素值包含12個像素。讀取該 列臨時像素值的第一個像素,存儲進一行Lbuf,緩存第一列剩余臨時像素。接 著讀取第2列數(shù)據(jù),對該列數(shù)據(jù)的6個像素進行6階低通濾波器縮放處理得到 第二列臨時像素,上述第二列臨時像素同樣包含12個像素。將所述第二列臨 時像素的第一個像素值存儲于一行Lbuf中,緩存第二列剩余臨時像素。依此 類推,計算第3列、第4列......第10列,直到第l-6行數(shù)據(jù)中的IO列數(shù)據(jù)處
理完畢,則一行Lbuf中存儲進10個像素值。然后,對一行Lbuf中的IO個像 素進行6階低通濾波器縮放處理,抽取需要的20個像素點,得到一行包含20個像素的目的數(shù)據(jù)。輸出該行目的數(shù)據(jù),存儲為目的圖像的第一行數(shù)據(jù)。
然后將上述第 一列剩余臨時像素中的第 一個像素值、第二列剩余臨時像素 中的第 一個像素值、第三列剩余臨時像素中的第 一個像素值......第十列剩余臨
時像素中的第一個像素值依次存入一行Lbuf中,得到l行像素值,該行像素 值包含10個臨時像素。接著對一行Lbuf中的10個像素進行6階低通濾波器 縮放處理,抽取需要的20個像素點,得到一行包含20個像素的目的數(shù)據(jù)。輸 出該行目的數(shù)據(jù),存儲為目的圖像的第二行數(shù)據(jù)。
依此類推,將原始圖像的第1-6行(6行x10列)數(shù)據(jù)放大為(12行x20 列)大小的目的數(shù)據(jù)。
接著,對原始圖像的第二塊待處理數(shù)據(jù)進行縮放處理
選擇原始圖像的第7、 8、 9、 10、 11、 12行,讀取第7-12行數(shù)據(jù)中的第1 列數(shù)據(jù),該列數(shù)據(jù)中共包含6個像素值。上述第1-6行數(shù)據(jù)為圖像的原始數(shù)據(jù)。 利用6階低通濾波器對上述第1列數(shù)據(jù)進行縮放處理后,抽取需要的12個像 素值,得到一列臨時像素值,該列臨時像素值包含12個像素。讀取該列臨時 像素值的第一個像素,存儲進一行Lbuf中,緩存第一列剩余臨時像素。接著 讀取第2列數(shù)據(jù),對該列數(shù)據(jù)的6個像素進行6階低通濾波器縮;故處理得到第 二列臨時像素,上述第二列臨時像素同樣包含12個像素,將所述第二列臨時 像素的第一個像素值存儲于一行Lbuf中,緩存第二列剩余臨時像素。依此類 推,計算第3列、第4列......第10列,直到第7-12行數(shù)據(jù)中的10列數(shù)據(jù)處
理完畢,則一行Lbuf中存儲進IO個像素值。然后,對一行Lbuf中的IO個像 素進行6階低通濾波器縮放處理,抽取需要的20個像素點,得到一行包含20 個像素的目的數(shù)據(jù)。輸出該行目的數(shù)據(jù),成為目的圖像的第十三行數(shù)據(jù)。
然后將上述第一列剩余臨時像素中的第一個像素值、第二列剩余臨時像素 中的第一個像素值、第三列剩余臨時像素中的第一個像素值......第十列剩余臨
時像素中的第一個像素值依次存入一行Lbuf中,得到1行像素值,該行像素 值包含10個臨時像素。然后,對一行Lbuf中的10個像素進行6階低通濾波 器縮放處理,抽取需要的20個像素點,得到一行包含20個像素的目的數(shù)據(jù)。 輸出該行目的數(shù)據(jù),成為目的圖像的第十四行數(shù)據(jù)。
依此類推,將原始圖像的第7-12行數(shù)據(jù)(6行x10列)像素放大為(12行x20列)大小的目的數(shù)據(jù)。
接著選擇圖像原始數(shù)據(jù)的第13、 14、 15、 16、 17、 18行,按照上述方法 進行處理。
依此類推,直至將圖像的30行原始數(shù)據(jù)處理完畢,得到一幅(60行x20 列)像素大小的圖像。
對應(yīng)上述圖像縮放方法,本發(fā)明還提供了一種圖像縮放裝置,參照圖2, 示出了本發(fā)明圖像縮放裝置實施例的結(jié)構(gòu)示意圖,包括
數(shù)據(jù)讀取控制模塊201,用于選取需要縮放的當前行數(shù)據(jù);
圖像縮放處理模塊202,用于依次將所述當前行數(shù)據(jù)的每列數(shù)據(jù)縮放處理 成一列臨時像素值,使用一行Lbuf存儲縮放的臨時數(shù)據(jù),并對所述一行Lbuf 中的像素值進行縮放處理,得到目的數(shù)據(jù);
數(shù)據(jù)存放模塊203,用于存儲圖像數(shù)據(jù)。
作為本發(fā)明圖像縮放裝置的另一實施例,參照圖3,示出了本發(fā)明圖像縮 放處理模塊實施例的結(jié)構(gòu)示意圖,上述圖像縮放處理模塊202還可以包括 像素緩存單元301 ,用于存儲需要縮放的當前行數(shù)據(jù)中的一列數(shù)據(jù); 列縮放處理單元302,用于將所述一列數(shù)據(jù)縮放處理為一列臨時像素值; 一行Lbuf緩存單元303,用于存儲每一列所述列臨時像素值的第一個像素 值,形成一行像素值;
行縮放處理單元304,用于對所述一行像素值進行縮放處理,得到目的數(shù)據(jù)。
作為本發(fā)明圖像縮放裝置的另一實施例,參照圖4,示出了本發(fā)明數(shù)據(jù)存 放模塊實施例的結(jié)構(gòu)示意圖,上述數(shù)據(jù)存放模塊203還可以具體包括 原始圖^^儲單元401,用于存儲原始圖像的數(shù)據(jù); 目的圖像存儲單元402,用于存儲縮放處理后的目的數(shù)據(jù); 緩存單元403,用于緩存每一列剩余臨時像素值。
在本發(fā)明提供的圖像縮放裝置實施例中,所述列縮放處理單元302和行縮 放處理單元304優(yōu)選采用理想低通濾波器縮放處理。
所述數(shù)據(jù)讀取控制模塊201選取需要縮放的當前行數(shù)據(jù)的行數(shù)是由所述理 想低通濾波器需要的垂直方向的抽頭個數(shù)確定。如采用6階低通濾波器對圖像的原始數(shù)據(jù)進行縮放處理,則上述行數(shù)應(yīng)為6。
下面結(jié)合具體例子對上述圖像縮放裝置的實施方式進行說明假設(shè)圖像的 原始數(shù)據(jù)為300 (30行x10列)個像素值,目的是將上述原始圖像縮小為75 (15行x5列)個像素大小的圖像。
首先,從第一行開始進行縮放處理,數(shù)據(jù)讀取控制模塊201從原始圖像存 儲單元401中選取原始圖像的第1、 2、 3、 4、 5、 6行作為第一待處理數(shù)據(jù)塊, 讀取第l-6行數(shù)據(jù)中的第1列數(shù)據(jù)存入像素緩存單元301中,該列數(shù)據(jù)中共包 含6個像素值。
列縮放處理單元302利用6階低通濾波器對上述第1列數(shù)據(jù)進行縮放處理 后,抽取需要的3個像素值,得到第一列臨時像素值,該列臨時像素值包含3 個像素。讀取該列臨時像素值的第一個像素,存儲進一行Lbuf緩存單元303 中。第一列剩余臨時像素緩存至緩存單元403中。
接著數(shù)據(jù)讀取控制模塊201讀取第2列數(shù)據(jù)存入像素緩存單元301中。列 縮放處理單元302對該列數(shù)據(jù)的6個像素進行6階低通濾波器縮放處理得到第 二列臨時像素,上述第二列臨時像素同樣包含3個像素。將所述第二列臨時像 素的第一個像素值存儲于一行Lbuf緩存單元303中。緩存第二列剩余臨時像 素至緩存單元403中。依此類推,處理第3列、第4列......第10列,直到第
l-6行數(shù)據(jù)中的IO列數(shù)據(jù)處理完畢,則一行Lbuf緩存單元303中存儲進10個 像素值。然后,行縮放處理單元304對一行Lbuf緩存單元303中的IO個像素 進行6階低通濾波器縮放處理,抽取需要的5個像素點,得到一行包含5個像 素的目的數(shù)據(jù)。輸出該行目的數(shù)據(jù),作為目的圖像的第一行數(shù)據(jù)存儲至目的圖 像存儲單元402中。
然后將存儲于緩存單元403中的第一列剩余臨時像素的第一個像素值、第 二列剩余臨時像素的第 一個像素值、第三列剩余臨時像素的第 一個像素值......
第十列剩余臨時像素中的第 一個像素值依次存入一行Lbuf緩存單元303中, 得到1行像素值,該行像素值包含10個臨時像素。接著行縮放處理單元304 對一行Lbuf緩存單元303中的10個像素進行6階低通濾波器縮放處理,抽取 需要的5個像素點,得到一行包含5個像素的目的數(shù)據(jù)。輸出該行目的數(shù)據(jù), 作為目的圖像的第二行數(shù)據(jù)存儲到目的圖像存儲單元402中。依此類推,將原始圖像存儲單元401中原始圖像的第l-6行(6行xl0列) 數(shù)據(jù)縮小為(3行x5列)大小的目的數(shù)據(jù),存儲到目的圖像存儲單元402。
按照同樣的方法,對原始圖像的第二塊待處理數(shù)據(jù)、第三塊待處理數(shù)據(jù)、 第四塊待處理數(shù)據(jù)、第五塊待處理數(shù)據(jù)進行縮放處理,將縮放處理后的目的數(shù) 據(jù)存儲至目的圖像存儲單元402中,構(gòu)成目的圖像。
本發(fā)明還提供了 一種包括上述圖像縮放裝置的芯片,該芯片的圖像縮放裝 置包括
數(shù)據(jù)讀取控制模塊,用于選取需要縮放的當前行數(shù)據(jù);
圖像縮放處理模塊,用于依次將所述當前行數(shù)據(jù)的每列數(shù)據(jù)縮放處理成一 列臨時像素值,將所述一列臨時像素值的第一個像素值存儲至一行Lbuf中, 并對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù);
數(shù)據(jù)存放模塊,用于存儲圖像數(shù)據(jù)。
在本發(fā)明提供的芯片另 一實施例中,圖像縮放處理模塊具體包括 像素緩存單元,用于存儲需要縮放的當前行數(shù)據(jù)中的一列數(shù)據(jù); 列縮放處理單元,用于將所述一列數(shù)據(jù)縮放處理為一列臨時像素值; 一行Lbuf緩存單元,用于存儲每一列所述列臨時像素值的第 一個像素值, 形成一行像素值;
行縮放處理單元,用于對所述一行像素值進行縮放處理,得到目的數(shù)據(jù)。 在本實施例中,上述列縮放處理單元和行縮放處理單元優(yōu)選采用理想低通 濾波器對圖像數(shù)據(jù)進行縮放處理。
在本發(fā)明提供的芯片另一實施例中,數(shù)據(jù)存放模塊具體包括 原始圖像存儲單元,用于存儲原始圖像的數(shù)據(jù); 目的圖像存儲單元,用于存儲縮放處理后的目的數(shù)據(jù); 緩存單元,用于緩存每一列剩余臨時像素值。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的 都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即 可。對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡 單,相關(guān)之處參見方法實施例的部分說明即可。
以上對本發(fā)明所提供的一種圖像縮放方法、裝置及芯片進行了詳細介紹,
14以上實施例的
說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般 技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處, 綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1、一種圖像縮放方法,其特征在于,包括選取需要縮放的當前行;依次將所述需要縮放的當前行的每列數(shù)據(jù)縮放處理成一列臨時像素值,將所述一列臨時像素值的第一個像素值存儲于一行Lbuf中,并對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù);重復(fù)上述操作,存儲每一行所述目的數(shù)據(jù)。
2、 根據(jù)權(quán)利要求1所述的圖像縮放方法,其特征在于,所述縮放處理為理 想低通濾波器縮放處理。
3、 根據(jù)權(quán)利要求2所述的圖像縮放方法,其特征在于,所述選取需要縮放 的當前行的行數(shù)是由所述理想低通濾波器需要的垂直方向的抽頭個數(shù)確定。
4、 一種圖像縮放裝置,其特征在于,包括 數(shù)據(jù)讀取控制模塊,用于選取需要縮放的當前行數(shù)據(jù); 圖像縮放處理模塊,用于依次將所述當前行數(shù)據(jù)的每列數(shù)據(jù)縮放處理成一列臨時像素值,將所述一列臨時像素值的第一個像素值存儲至一行Lbuf中,并 對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù); 數(shù)據(jù)存放模塊,用于存儲圖像數(shù)據(jù)。
5、 根據(jù)權(quán)利要求4所述的圖像縮放裝置,其特征在于,所述圖像縮放處理 模塊,具體包括像素緩存單元,用于存儲需要縮放的當前行數(shù)據(jù)中的一列數(shù)據(jù); 列縮放處理單元,用于將所述一列數(shù)據(jù)縮放處理為 一列臨時像素值; 一行Lbuf緩存單元,用于存儲每一列所述列臨時像素值的第一個像素值, 形成一行像素值;行縮放處理單元,用于對所述一行像素值進行縮放處理,得到目的數(shù)據(jù)。
6、 根據(jù)權(quán)利要求4所述的圖像縮放裝置,其特征在于,所述數(shù)據(jù)存放模塊, 具體包括原始圖像存儲單元,用于存儲原始圖像的數(shù)據(jù);目的圖像存儲單元,用于存儲縮放處理后的目的數(shù)據(jù);緩存單元,用于緩存每一列剩余臨時像素值。
7、 根據(jù)權(quán)利要求4所述的圖像縮放裝置,其特征在于,所述列縮放處理單元和行縮放處理單元采用理想低通濾波器縮放處理。
8、 根據(jù)權(quán)利要求7所述的圖像縮放裝置,其特征在于,所述數(shù)據(jù)讀取控制 模塊選取需要縮放的當前行的行數(shù)是由所述理想低通濾波器需要的垂直方向的 抽頭個數(shù)確定。
9、 一種芯片,其特征在于,所述芯片包括一圖像縮放裝置,該裝置包括 數(shù)據(jù)讀取控制模塊,用于選取需要縮放的當前行數(shù)據(jù); 圖像縮放處理模塊,用于依次將所述當前行數(shù)據(jù)的每列數(shù)據(jù)縮放處理成一列臨時像素值,將所述一列臨時像素值的第一個像素值存儲至一行Lbuf中,并 對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù); 數(shù)據(jù)存放模塊,用于存儲圖像數(shù)據(jù)。
10、 根據(jù)權(quán)利要求9所述的芯片,其特征在于,所述圖像縮放處理模塊具 體包括像素緩存單元,用于存儲需要縮放的當前行數(shù)據(jù)中的一列數(shù)據(jù); 列縮放處理單元,用于將所述一列數(shù)據(jù)縮放處理為一列臨時像素值; 一行Lbuf緩存單元,用于存儲每一列所述列臨時像素值的第一個像素值, 形成一行像素值;行縮放處理單元,用于對所述一行像素值進行縮放處理,得到目的數(shù)據(jù)。
11、 根據(jù)權(quán)利要求9所述的芯片,其特征在于,所述數(shù)據(jù)存放模塊具體包括原始圖像存儲單元,用于存儲原始圖像的數(shù)據(jù);目的圖像存儲單元,用于存儲縮放處理后的目的數(shù)據(jù);緩存單元,用于緩存每一列剩余臨時像素值。
12、 根據(jù)權(quán)利要求10所述的芯片,其特征在于,所述列縮放處理單元和行 縮放處理單元采用理想低通濾波器縮放處理。
全文摘要
本發(fā)明提供了一種圖像縮放方法、裝置及芯片,其中,圖像縮放方法包括選取需要縮放的當前行;依次將所述需要縮放的當前行的每列數(shù)據(jù)縮放處理成一列臨時像素值,將所述一列臨時像素值的第一個像素值存儲于一行Lbuf中,并對所述一行Lbuf中的像素值進行縮放處理,得到目的數(shù)據(jù);重復(fù)上述操作,存儲每一行所述目的數(shù)據(jù)。依據(jù)此方法,本發(fā)明還提供了一種圖像縮放裝置和芯片。本發(fā)明提供的圖像縮放方法、裝置及芯片,只需要使用一行Lbuf就能實現(xiàn)對原始圖像的縮放,有效減少了系統(tǒng)的緩存面積,進而減低了芯片的生產(chǎn)成本,減少了芯片系統(tǒng)的功耗。
文檔編號H04N7/18GK101520887SQ20091008096
公開日2009年9月2日 申請日期2009年3月30日 優(yōu)先權(quán)日2009年3月30日
發(fā)明者浩 張, 李國新 申請人:北京中星微電子有限公司