TWI407794B - 檔案壓縮方法及檔案壓縮系統 - Google Patents

檔案壓縮方法及檔案壓縮系統 Download PDF

Info

Publication number
TWI407794B
TWI407794B TW098139054A TW98139054A TWI407794B TW I407794 B TWI407794 B TW I407794B TW 098139054 A TW098139054 A TW 098139054A TW 98139054 A TW98139054 A TW 98139054A TW I407794 B TWI407794 B TW I407794B
Authority
TW
Taiwan
Prior art keywords
matrix
data
quantization
digital sequence
file
Prior art date
Application number
TW098139054A
Other languages
English (en)
Other versions
TW201119395A (en
Inventor
Cheng Ta Chiang
Chien Wei Cheng Chang
wei hao Yuan
Chieh Yuan Hsu
Te Wei Lee
Tzu Yun Kuo
Wei Cheng Chang
Original Assignee
Alpha Imaging Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alpha Imaging Technology Corp filed Critical Alpha Imaging Technology Corp
Priority to TW098139054A priority Critical patent/TWI407794B/zh
Priority to US12/938,676 priority patent/US8755621B2/en
Publication of TW201119395A publication Critical patent/TW201119395A/zh
Application granted granted Critical
Publication of TWI407794B publication Critical patent/TWI407794B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field

Description

檔案壓縮方法及檔案壓縮系統
本發明係關於一種檔案壓縮方法及使用該檔案壓縮方法的檔案壓縮系統;特別是關於一種影像檔案壓縮方法以及影像檔案壓縮系統。
在數位相機將獲得的影像以數位方式轉換成資料以供儲存後,數位相機已幾乎完全取代傳統相片式相機。此外,目前已有越來越多如手機等行動裝置也同時具有數位相機的功能,以供使用者擷取影像並將影像以數位資料的形式儲存於行動裝置之記憶體中。為了有效率地使用記憶體之容量以供儲存影像數位資料,數位相機及其他具數位相機功能之電子裝置通常具有數位影像壓縮系統,以供在不減低影像畫質的同時,壓縮影像並減少影像所佔據之儲存空間。此外,電子裝置所包含之記憶體皆具有不同之記憶空間,因此為了使影像能存入不同之記憶體中,數位影像壓縮系統通常係根據記憶體空間之大小設定一資料壓縮率。此外,每一影像皆具有一原始資料量,因此數位影像壓縮系統係根據影像之原始資料量及資料壓縮率對影像進行壓縮以控制影像所具有之資料量。上述資料壓縮率係為原始資料量及壓縮後影像資料量之比例,舉例來說,如影像具有10M之原始資料量,在資料壓縮率設定為5的情況下,數位影像壓縮系統將壓縮影像已使其最終具有2M的資料量。
圖1所示為習知數位影像壓縮系統10之方塊圖。如圖1所示,習知數位影像壓縮系統10具有一影像處理模組20、一空間轉換模組30、一量化模組40、一序列轉換模組50及一記憶體60,其中記憶體60包含一原始影像檔70。此外,如圖1所示,影像處理模組20、空間轉換模組30、量化模組40、序列轉換模組50及記憶體60形成一迴圈;換言之,影像處理模組20、空間轉換模組30、量化模組40及序列轉換模組50將於壓縮完原始影像檔70後將壓縮後之最終影像檔儲存於記憶體60中。影像處理模組20、空間轉換模組30、量化模組40及序列轉換模組50係為串連。此外,記憶體60包含一原始影像檔70,其中原始影像檔70具有複數畫素資料且每一畫素資料代表著影像所包含畫素中紅綠藍三色比重之資料。
在圖1所示之習知數位影像壓縮系統10中,影像處理模組20係由記憶體60讀取原始影像檔70並對原始影像檔70進行影像處理,以將原始影像檔70從紅綠藍三色比重之資料轉換至一個8X8之矩陣,其中原始影像檔70中的每一個係數都具有著影像之色度資料。原始影像檔70之後將由空間轉換模組30根據離散式餘弦轉換Discrete Cosine Transform)理論進行空間轉換;換言之,空間轉換模組30將原始影像檔70自空間域轉換至頻率域中。圖1所示之量化模組40包含一量化表,其中量化表係為一個尺寸與原始影像檔70相同之矩陣,且每一量化表所包含之係數係對應於原始影像檔70中係數其中之一,以供量化模組40根據量化表對原始影像檔70進行量化轉換。序列轉換模組50最後將對原始影像檔70進行編碼以將原始影像檔70轉換成一資料序碼並將資料序碼儲存於記憶體60中。
在習知數位影像壓縮系統10包含一壓縮率,以供習知數位影像壓縮系統10根據原始影像檔70之資料量取得一目標資料量。此外,在將資料序碼存入記憶體60之前,序列轉換模組50將拿資料序碼之資料量來跟目標資料量進行比較。如資料序碼之資料量並未達到目標資料量,序列轉換模組50將捨棄原有的資料序碼並控制量化模組40修改量化表,之後影像處理模組20、空間轉換模組30、量化模組40及序列轉換模組50將重新執行資料序碼之產生程序直到資料序碼之資料量達到目標資料量。
然而,在資料序列之資料量達到目標資料量之前,記憶體60將需要較大之記憶空間來儲存原始影像檔70;此外,由於上述習知資料序碼產生程序將重複對記憶體60進行資料讀取之動作,也因此將持續佔用記憶體60之部分頻寬。此外,在資料序碼達到目標資料量前,習知資料序碼產生程序之重覆資料讀取及影像檔案轉換亦將無可避免的增加習知數位影像壓縮系統10之電源使用量。
本發明之目的在於提供一種檔案壓縮方法及使用該檔案壓縮方法的檔案壓縮系統,用於節省記憶體之空間及使用頻寬。
本發明之另一目的在於提供一種檔案壓縮方法及使用該檔案壓縮方法的檔案壓縮系統,用於節省電力之使用量。
本發明之檔案壓縮方法包含自記憶體取得原始資料檔,其中原始資料檔包含YUV格式資料及其他原始影像檔。檔案壓縮方法包含對原始資料檔進行影像處理並產生轉化矩陣,其中轉化矩陣包含一個8X8之矩陣,但不限於此;轉化矩陣亦可包含其他尺寸之矩陣。檔案壓縮方法將根據一量化表對轉化矩陣中的係數進行量化以將轉化矩陣轉換成量化矩陣,並在之後根據一編碼表將量化矩陣轉換成數碼序列。檔案壓縮方法將比較數碼序列之資料量與一目標資料量之間的差別並根據上述兩者的差別產生一資料量差異。
在本發明檔案壓縮方法之實施例中,如資料量差異係大於一預定差異值,檔案壓縮方法將根據量化表對數碼序列進行逆量化轉換以將數碼序列轉換成一逆量化矩陣。同時,檔案壓縮方法亦將根據資料量差異修改量化表中的各個係數並將量化表轉換成一修正量化表,並在之後根據修正量化表對逆量化矩陣進行量化。然後,檔案壓縮方法將根據編碼表將修正矩陣轉換成修正數碼序列,並重複執行逆量化轉換、修正量化表修改、逆量化矩陣量化以及將逆量化矩陣轉換成修正矩陣轉換之步驟,直到修正數碼序列之資料量小於預定差異值。
本發明係提供一種檔案壓縮方法及使用該檔案壓縮方法的檔案壓縮系統;特別是關於一種影像檔案壓縮方法以及影像檔案壓縮系統。本發明檔案壓縮方法可用於一影像擷取系統中,以對影像擷取系統所產生之原始影像進行處理及壓縮,以在保持原始影像之前提下減少原始影像所包含之資料量,以儲存於記憶體中或供顯示於螢幕上,但不限於此;在不同實施例中,本發明亦可用於行動通訊系統或其他具有影像擷取功能或影像顯示功能之電子裝置。
圖2A及圖2B所示為本發明檔案壓縮方法之步驟流程圖,其中檔案壓縮方法中使用的電子元件係揭示於圖5;換言之,本實施例所使用電子元件間的連接關係係揭露於圖5。如圖2A所示,檔案壓縮方法包含步驟S700,自一記憶體取得一原始資料檔。本實施例之記憶體包含一記憶卡(Memory Card)或其他電子資料儲存裝置,可用於儲存如影像檔或其他種類之電子資料。此外,本實施例之原始資料檔係為JPEG(Joint Photographic Experts Group)影像檔,但不限於此;在不同實施例中,原始資料檔亦包含MPEG-1、MPEG-2、MPEG-4及其他視頻壓縮格式之電子資料檔。檔案壓縮方法另包含步驟S720,對原始資料檔進行影像處理並產生一轉化矩陣,其中自記憶體取得之原始資料檔將被送入一訊號處理模組中進行數位影像處理,並產生對應於原始資料檔之轉化矩陣。此外,訊號處理模組包含一影像處理模組及一空間轉換模組,分別具有不同之功能。
如圖2A所示,此外,步驟S720另包含步驟S721,根據一第一轉換方式處理原始資料檔並取得對應之轉化矩陣。在本實施例中,原始資料檔包含複數取樣點資料(Sample Data),其中每一取樣點資料包含影像中每一單位面積具有紅、綠及藍三色之資料。步驟S721則是根據一計算公式將原始資料檔的每一取樣點資料轉換成亮度(Luminance)、色度(Chrominance)及濃度(Chroma)等資訊,其中亮度、色度及濃度分別代表著一影像區塊之影像資料。本實施例之步驟S721將每一取樣點資料或對應之影像區塊所包含之色彩資訊藉由編碼方式轉換至一YUV色空間(Color Space)中,但不限於此;在不同實施例中,步驟S721亦可將色彩資訊轉換至Y'UV色空間、YCbCr色空間或YPbPr色空間。步驟S721另包含在取樣點資料轉換完成後,將每一取樣點資料之亮度、色度及濃度資料分別轉換成一8X8之轉化矩陣。此外,本實施例之轉化矩陣係為一個8X8之矩陣,但不限於此;在不同實施例中,步驟S721亦可根據影像解析度之要求、原始資料檔之格式或其他要求來選擇性地根據取樣點資料之亮度、色度及濃度資料產生複數16X8或16X16之矩陣。
在圖2A所示之實施例中,步驟S720另包含步驟S722,根據一第二轉換方式將該轉化矩陣自該空間域(Spatial Domain)轉換至一頻率域(Frequency Domain)中。在實行步驟S722之前,每一轉化矩陣中所包含的係數皆代表著影像在空間中某一位置的亮度、色度及濃度。第二轉換方式將轉化矩陣之每一係數轉化成頻率域中一個頻譜(Spectrum)之幅度(Weight)。換言之,藉由實施第二轉換方式,轉化矩陣中的係數在檔案壓縮方法的不同階段中分別位於空間域或頻率域。此外,本實施例之第二轉換方式係為離散餘弦變換(discrete cosine transform或DCT),但不限於此;在不同實施例中,第二轉換方式亦包含小波變換(Wavelet Transformation)、傅立葉變換(Fourier Transformation)或其他用於將訊號自空間域轉換至頻率域之方法。
在圖2A所示之實施例中,檔案壓縮方法另包含步驟S740,根據一量化表220將該轉化矩陣轉換成一量化矩陣。在本實施例中,在被轉換至頻率域之後,轉化矩陣之每一係數之幅度代表著某部分影像亮度、色度或濃度隨著時間變換之頻率。由於人眼對於影像的亮度變化較不敏感;因此在保持影像品質的前提下,轉化矩陣中對應亮度之係數所包含的資料可藉由量化來減少,以達到檔案壓縮之目的。步驟S740之量化動作旨在於根據上述人眼之特徵減少轉化矩陣中具有幅度較大的係數之資料量。步驟S740之量化動作包含將轉化矩陣中的係數除以一常數,並在之後藉由捨入(Round Off)將該係數調整到最近的整數。在本實施例中,大部分具有較高幅度之係數通常將在實行步驟S740後被調整至0,故本實施例之量化動作不僅減少轉化矩陣所包含之資料量,也同時節省記憶體200儲存資料所需之空間。
如圖2A所示,檔案壓縮方法包含步驟S760,根據編碼表230將量化矩陣轉換成一數碼序列,以供儲存於記憶體200中。在本實施例中,數碼序列與原始資料檔210具有相同之格式,但經過量化步驟而產生之數碼序列具有較少之資料量,也因此記憶體200可用較少的記憶空間來儲存數碼序列。
此外,由於量化矩陣包含性質有所不同的係數,因此步驟S760包含使用不同的編碼方法來對量化矩陣之不同部分轉化成數碼序列。量化矩陣的第一個係數係為直流係數;換言之,量化矩陣的第一個係數代表著亮度、色度或濃度不變動的部分。在本實施例中,上述步驟S760係用一預估編碼法(Predictive Coding)加上一熵編碼法(Entropy Coding)來對直流係數進行編碼,但不限於此;在不同實施例中,步驟S760亦可使用預估編碼法加上霍夫曼編碼法(Huffman Coding)或是算術式編碼(Arithmetic Coding)來對直流係數進行編碼。此外,在本實施例中,量化矩陣的其他係數係用長度編碼法(Run length coding)及熵編碼法(Entropy coding)來進行編碼,但不限於此;在不同實施例中,量化矩陣除了直流係數之外的其他係數亦可使用長度編碼法加上霍夫曼編碼法(Huffman Coding)或是算術式編碼(Arithmetic Coding)來進行編碼。
在圖2A所示之實施例中,檔案壓縮方法包含步驟S780,比較該數碼序列之資料量及目標資料量並產生資料量差異。上述目標資料量係為檔案壓縮程序中,希望數碼序列最後能達到的檔案資料量大小。如圖2所示,步驟S780包含設定目標資料量,其中本實施例之目標資料量係為一個固定的數值;換言之,本實施例之檔案壓縮方法旨在壓縮所有轉化矩陣並使得該等轉化矩陣最終皆包含相同大小之資料量,但不限於此。在不同實施例中,檔案壓縮方法亦可根據轉化矩陣最初包含的資料量或其他條件來設定目標資料量;換言之,該等轉化矩陣可根據自身最初所包含的資料量而對應於不同之目標資料量。
如圖2B所示,檔案壓縮方法包含步驟S800,根據資料量差異將數碼序列轉換成一逆量化矩陣。步驟S800包含將資料量未達到目標資料量之數碼序列轉換回一個矩陣,以供重新被資料壓縮處理。基於將資料量差異將該數碼序列轉換成一逆量化矩陣,步驟S800使得本發明檔案壓縮方法不需重新實行步驟S700以及步驟S720,因此節省了步驟S700中自記憶體讀取原始資料檔所需的頻寬以及電力並進一步提升資料處理上的效率。
步驟S800另包含根據量化表對每一個資料量大於目標資料量之數碼序列逆轉換成一個矩陣。在本實施例中,步驟S800包含步驟S801,如數碼序列之資料量係大於目標資料量,根據編碼表將數碼序列轉換成逆編碼矩陣,其中逆編碼矩陣與步驟S760中的量化矩陣具有相同數目之係數。此外,步驟S800另包含步驟S802,根據量化表對逆編碼矩陣進行逆量化,以將逆編碼矩陣轉換成逆量化矩陣,以供量化並進一步轉換成數碼序列,以期該數碼序列所包含資料達到一目標資料量。在本實施例中,步驟S802係旨於根據量化表將逆量化矩陣實質上轉換成被量化前之狀態;換言之,步驟S802係在於將原本逆量化矩陣中之量化後係數實質上回復成被量化前的狀態。如圖2B所示,步驟S800使得本發明檔案壓縮方法僅需各自實行一次步驟S720。此外,藉由省略實行步驟S720之次數,本發明檔案壓縮方法同時省略了步驟S700中對記憶體進行資料讀取及儲存之次數、電力消耗及相關之計算成本。
此外,本發明檔案壓縮方法另包含步驟S820,根據該資料量差異將該逆量化矩陣轉換成一修正數碼序列。在本實施例中,步驟S820係旨於根據一個新的量化表來對逆量化矩陣進行量化動作並在之後將逆量化矩陣轉換成資料量達到目標資料量的一個修正數碼序列。如圖2B所示,步驟S820包含步驟S821,根據資料量差異將量化表轉換成一修正量化表以及步驟S822,根據修正量化表將逆量化矩陣轉換成一修正矩陣,其中量化表與修正量化表係為具有相同尺寸的矩陣。上述資料量差異係為S780中測出數碼序列之資料量與目標資料量之間的差異。
此外,圖2B所示步驟S820另包含步驟S823,根據編碼表將修正矩陣轉換成修正數碼序列。在取得修正數碼序列後,步驟S823包含測量修正數碼序列之資料量並將其與目標資料量進行比較並根據兩者之差產生一個修正資料量差異。上述修正資料量差異將與目標資料量作比較,其中如果修正資料差異係大於目標資料量,步驟S823會將修正數碼序列送回步驟S800作進一步的處理。
最後,如圖2B所示,檔案壓縮方法進一步包含步驟S840,將修正數碼序列儲存於記憶體200,其中檔案壓縮方法將於確認修正數碼序列之資料量係達到目標資料量240後實行步驟S840。如此一來,在檔案壓縮的過程中,本發明僅需對計憶體各自進行一次資料的讀取及儲存。本發明之檔案壓縮方法減少對記憶體200進行讀取或儲存的次數並藉此節省記憶體200之使用頻寬以及相關之電力消耗。
圖3A及圖3B所示係為圖2所示檔案壓縮方法之變化實施例。如圖3B所示,檔案壓縮方法進一步包含步驟S900,設定一預定差異值。在本實施例中,由於目標資料量係設定為一個明確的數值,因此如欲將檔案壓縮成資料量完全符合預定的大小,其所需之運算將耗費大量的時間以及運算資源並因此影響到檔案壓縮方法之運算效率。為此,步驟S900欲藉由設定預定差異值來界定修正數碼序列與目標資料量之間可接受之差異範圍。檔案壓縮方法另包含步驟S910,如資料量差異係大於預定差異值,檔案壓縮方法將根據編碼表將數碼序列轉換成逆編碼矩陣。在本實施例中,檔案壓縮方法藉由設定一預定差異值作為判斷是否已成功將修正數碼序列壓縮成預定大小之依據。因此,修正數碼序列不需被壓縮到資料量完全等於目標資料量。如此一來,本實施例之檔案壓縮方法不須為了將修正數碼序列壓縮至目標資料量而重複進行過多之運算及增加資料壓縮的運算成本;換言之,本實施例之檔案壓縮方法係藉由步驟S900及步驟S910來減少資料壓縮所需之運算次數並同時減少資料壓縮所需之運算成本。
圖4A及圖4B所示為圖2A及圖2B所示檔案壓縮方法之變化實施例。在本實施例中,檔案壓縮方法另包含步驟S1000,設定資料壓縮率及步驟S1010,根據原始資料檔210之資料量及資料壓縮率得到該目標資料量240。上述資料壓縮率係為一個百分比,用於界定被壓縮前檔案資料量與壓縮後檔案資料量之間的關係。舉例來說,當資料壓縮率被設定成10%時,一個10Megabyte大的檔案在檔案壓縮後實質上將具有1Megatbyte之大小。如此一來,對於具有原始資料檔210步驟S1010所產生之目標資料量240的大小係根據原始資料檔210之資料量而有所改變,因此檔案壓縮方法最後產生之修正數碼序列之資料量亦將隨著原始資料檔210之資料量而有所改變。如此一來,藉由實行步驟S1000及步驟S1010,本實施例之檔案壓縮方法可將原始資料檔210及修正數碼序列之資料量維持在一定的比例內。
圖5所示為本發明檔案壓縮系統100之方塊圖。如圖5所示,檔案壓縮系統100包含記憶體200、訊號處理模組300、量化模組400、序列轉換模組500及一比較模組600。如圖5所示,記憶體200包含原始資料檔210、量化表220、編碼表230及目標資料量240。此外,記憶體200係訊號連接於訊號處理模組300、量化模組400、序列轉換模組500及比較模組600以供上述模組對原始資料檔210、量化表220、編碼表230及目標資料量240等資料進行存取及修改。訊號處理模組300係用於對原始資料檔210進行影像處理並產生轉化矩陣。
如圖5所示,訊號處理模組300包含影像處理模組310及空間轉換模組320。影像處理模組310係用於自記憶體200取得原始資料檔210並將原始資料檔210轉換成一個轉化矩陣,其中本實施例之轉化矩陣係為一個8X8之矩陣,但不限於此。原始資料檔210包含複數取樣點資料,其中影像處理模組310係將每一取樣點資料轉換成亮度(Luminance)、色度(Chrominance)及濃度(Chroma)等資訊。此外,在取樣點資料轉換完成後,影像處理模組310將每一取樣點資料之亮度、色度及濃度資料分別轉換成一8X8之轉化矩陣,其中上述轉化矩陣所包含的資料係位於一空間域中。
在圖5所示之實施例中,空間轉換模組320係用於將上述轉化矩陣自空間域轉換至頻率域中。原本轉化矩陣所包含的係數皆代表著影像在空間中某一位置的亮度、色度及濃度。空間轉換模組320將轉化矩陣之每一係數轉化成頻率域中一個頻譜之幅度。本實施例之空間轉換模組320運用離散餘弦變換來進行上述空間的轉換,但不限於此;在不同實施例中,空間轉換模組320亦可包含小波變換、傅立葉變換或其他用於將訊號自空間域轉換至頻率域之方法。
在圖5所示之實施例中,量化模組400係用於根據記憶體200所包含之量化表220將空間轉換模組320所輸出之轉化矩陣轉換成一個量化矩陣。由於人眼對於影像的亮度變化較不敏感,故量化模組400旨在於根據上述人眼對亮度變化的特徵去減少轉化矩陣中具有幅度較大的係數之資料量。量化模組400將轉化矩陣中的係數除以一常數,並在之後藉由捨入(Round Off)將該係數調整到最近的整數。在本實施例中,大部分原本具有較高幅度之係數通常量化步驟後將被調整至0,故本實施例之量化動作不僅減少轉化矩陣所包含之資料量,也同時節省記憶體200儲存資料所需之空間。
如圖5所示,序列轉換模組500包含編碼模組510以及解碼模組520,其中編碼模組510係用於根據編碼表230將量化矩陣轉換成一個數碼序列。此外,本實施例之數碼序列具有與原始資料碼相同的資料格式且同樣可被儲存至記憶體200中。在本實施例中,由於量化矩陣所包含直流係數等具有不同性質的係數,因此本實施例之序列轉換模組500根據係數之種類使用不同的編碼方法來產生編碼表230,並之後根據編碼表230來轉換量化矩陣。在本實施例中,序列轉換模組500使用霍夫曼編碼法及長度編碼法來對量化矩陣中不同的係數進行編碼,但不限於此;在不同實施例中,序列轉換模組500亦可使用算術式編碼或熵編碼法來對量化矩陣中不同的係數進行編碼。
比較模組600將比較數碼序列的資料量及目標資料量240之間的差異並計算出一個資料量差異。目標資料量240係為檔案壓縮系統100希望數碼序列最後能達到的檔案資料量大小,其中本實施例之目標資料量240係為一個固定的數值。當數碼序列之資料量係大於目標資料量240時,比較模組600將控制序列轉換模組500之解碼模組520使用相同於編碼模組510之編碼表230及編碼方法,將編碼模組510所輸出的數碼序列轉換成逆量化矩陣。在本實施例中,逆編碼矩陣與轉化矩陣具有相同之尺寸,但由於逆編碼矩陣已經過量化處理因此其包含的資料量係小於轉化矩陣所包含之資料量。
此外,在圖5所示之實施例中,目標資料量240係為一個固定的數值,換言之,本實施例之檔案壓縮系統100欲將所有原始資料檔210壓縮成相同的大小,但不限於此;在不同實施例中,目標資料量240的數值亦可根據原始資料檔210而有所修改。舉例來說,不同實施例中的記憶體200可設定一資料壓縮率,其中資料壓縮率係為一個百分比,用於界定被壓縮前檔案資料量與壓縮後檔案資料量之間的關係。換言之,記憶體200係根據原始資料檔210之資料量及資料壓縮率得到該目標資料量240。此外,在另一不同實施例中,記憶體200包含一預定差異值來界定修正數碼序列與目標資料量240之間可接受之差異範圍。比較模組600將於資料量差異大於預定差異值時控制解碼模組520將數碼序列轉換成逆編碼矩陣。預定差異值係作為一個判斷是否已成功將修正數碼序列壓縮成預定大小之依據。因此,預定差異值使得修正數碼序列不需被壓縮到資料量完全小於目標資料量240並同時減少資料壓縮所需之運算次數。
在圖5所示之實施例中,量化模組400將取得逆編碼矩陣並根據原有之量化表220對逆編碼矩陣進行逆量化處理(Inverse-Quantization)並產生一個逆量化矩陣,其中逆量化矩陣中量化後之係數(頻率較高之係數)實質上回復成被量化前的狀態。此外,在量化模組400產生逆量化矩陣後,比較模組600將根據資料量差異來修改量化表220並取得一個修正量化表220,以供量化模組400根據修正量化表220來對逆量化矩陣進行量化處理並將逆量化矩陣轉換成一個資料量小於或等於目標資料量240的修正矩陣。序列轉換模組500接著將根據編碼表230將修正矩陣轉換成一個修正數碼序列並將修正數碼序列輸入比較模組600作進一步的處理。如比較模組600發現修正數碼序列之資料量仍然大於目標資料量240,比較模組600將重複上述訊號處理步驟直到修正數碼序列之資料量實質上等於或小於目標資料量240。但如果比較模組600發現修正數碼序列之資料量實質上等於或小於目標資料量240,比較模組600會將修正數碼序列儲存至記憶體200。如圖5所示,本實施例之比較模組600包含一電性連接於記憶體200之記憶體200控制模組,供實際將修正數碼序列傳輸至記憶體200中。
雖然前述的描述及圖式已揭示本發明之較佳實施例,必須瞭解到各種增添、許多修改和取代可能使用於本發明較佳實施例,而不會脫離如所附申請專利範圍所界定的本發明原理之精神及範圍。熟悉該技藝者將可體會本發明可能使用於很多形式、結構、佈置、比例、材料、元件和組件的修改。因此,本文於此所揭示的實施例於所有觀點,應被視為用以說明本發明,而非用以限制本發明。本發明的範圍應由後附申請專利範圍所界定,並涵蓋其合法均等物,並不限於先前的描述。
100...檔案壓縮系統
200...記憶體
210...原始資料檔
220...量化表
230...編碼表
240...目標資料量
300...訊號處理模組
310...影像處理模組
320...空間轉換模組
400...量化模組
500...序列轉換模組
510...編碼模組
520...解碼模組
600...比較模組
圖1所示為習知數位影像壓縮系統之方塊圖;
圖2A及圖2B所示為本發明檔案壓縮方法之步驟流程圖;
圖3A及圖3B所示為圖2A及圖2B所示檔案壓縮方法之變化實施例;
圖4A及圖4B所示為圖2A及圖2B所示檔案壓縮方法之變化實施例;以及
圖5所示為本發明檔案壓縮系統之方塊圖。
100...檔案壓縮系統
200...記憶體
210...原始資料檔
220...量化表
230...編碼表
240...目標資料量
300...訊號處理模組
310...影像處理模組
320...空間轉換模組
400...量化模組
500...序列轉換模組
510...編碼模組
520...解碼模組
600...比較模組

Claims (17)

  1. 一種檔案壓縮方法,包含:自一記憶體取得一原始資料檔;對該原始資料檔進行影像處理並產生一轉化矩陣;根據一量化表將該轉化矩陣轉換成一量化矩陣;根據一編碼表將該量化矩陣轉換成一數碼序列;比較該數碼序列之資料量及一目標資料量並產生一資料量差異;根據該資料量差異將該數碼序列轉換成一逆量化矩陣;以及根據該資料量差異將該逆量化矩陣轉換成一修正數碼序列;其中該逆量化矩陣轉換步驟包含:如該數碼序列之資料量係相異於該目標資料量,根據該編碼表將該數碼序列轉換成一逆編碼矩陣;以及根據該量化表對該逆編碼矩陣進行逆量化。
  2. 如請求項1所述之檔案壓縮方法,其中該矩陣產生步驟包含:根據一第一轉換方式處理該原始資料檔並取得對應之該轉化矩陣,其中該轉化矩陣係位於一空間域中;以及根據一第二轉換方式將該轉化矩陣自該空間域轉換至一頻率域中。
  3. 如請求項1所述之檔案壓縮方法,其中該資料量差異產生步驟包含:設定一資料壓縮率;根據該原始資料檔之資料量及該資料壓縮率得到該目標資料量;以及比較該數碼序列之資料量及該目標資料量以產生該資料量差異。
  4. 如請求項1所述之檔案壓縮方法,其中該逆量化矩陣轉換步驟包含:設定一預定差異值;以及如該資料量差異係大於該預定差異值,根據該編碼表將該數碼序列轉換成一逆編碼矩陣。
  5. 如請求項4所述之檔案壓縮方法,其中該逆量化矩陣轉換步驟包含:根據該量化表對該逆編碼矩陣進行逆量化。
  6. 如請求項1所述之檔案壓縮方法,其中該修正數碼序列轉換步驟包含:根據該資料量差異將該量化表轉換成一修正量化表;根據該修正量化表將該逆量化矩陣轉換成一修正矩陣;以及根據該編碼表將該修正矩陣轉換成該修正數碼序列。
  7. 如請求項1所述之檔案壓縮方法,進一步包含將該修正數碼序列儲存於該記憶體。
  8. 一種檔案壓縮系統,包含:一記憶體,包含一原始資料檔、一量化表、一編碼表及一目標資料量;一訊號處理模組,電性連接於該記憶體並自該記憶體取得該原始資料檔,其中該訊號處理模組係用於根據該原始資料檔產生一轉化矩陣;一量化模組,電性連接於該訊號處理模組並根據該量化表將該轉化矩陣轉換成一量化矩陣;以及一序列轉換模組,電性連接於該量化模組並根據該編碼表將該量 化矩陣轉換成一數碼序列;以及一比較模組,比較該數碼序列之資料量及一目標資料量並產生一資料量差異;其中該量化模組及該序列轉換模組將根據該資料量差異將該數碼序列轉換成一逆量化矩陣,之後該比較模組、該量化模組及該序列轉換模組係根據該資料量差異將該逆量化矩陣轉換成一修正數碼序列,該記憶體另包含一預定差異值,當該資料量差異係大於一預定差異值時,該比較模組將控制該序列轉換模組根據該編碼表將該數碼序列轉換成一逆編碼矩陣,該量化模組將根據該量化表對該逆編碼矩陣進行逆量化並獲得該逆量化矩陣。
  9. 如請求項8所述之檔案壓縮系統,其中該訊號處理模組包含:一影像處理模組,用於根據一第一轉換方式處理該原始資料檔並取得對應之該矩陣,其中該矩陣係位於一空間域中;以及一空間轉換模組,用於根據一第二轉換方法將該矩陣自該空間域轉換至一頻率域。
  10. 如請求項8所述之檔案壓縮系統,其中該比較模組將根據該資料量差異將該量化表轉換成一修正量化表,以供該量化模組將根據該修正量化表將該逆量化矩陣轉換成一修正矩陣。
  11. 如請求項8所述之檔案壓縮系統,其中該記憶體另包含一資料壓縮率,該比較模組將根據該原始資料檔之資料量及該資料壓縮率得到該目標資料量。
  12. 如請求項10所述之檔案壓縮系統,其中該序列轉換模組將根據該編碼表將該修正矩陣轉換成該修正數碼序列。
  13. 如請求項8所述之檔案壓縮系統,其中該比較模組包含一記憶體控制模組,用於接受該修正數碼序列並將該修正數碼序列儲存於該記憶體。
  14. 一種檔案壓縮方法,包含:(a)自一記憶體取得一原始資料檔;(b)對該原始資料檔進行影像處理並取得一矩陣;(c)根據一量化表將該矩陣轉換成一量化矩陣(d)根據一編碼表將該量化矩陣轉換成一數碼序列並將該數碼序列儲存於記億體中;(e)比較該數碼序列之資料量及一目標資料量以產生一資料量差異並根據該資料量差異調整該量化表;(f)如該數碼序列之資料量係異於設定之目標資料量,重新取得儲存於該記憶體中的數碼序列,並將該數碼序列轉換成該逆量化矩陣;(g)根據重新調整後之量化表將該逆量化矩陣轉換成一修正量化矩陣;以及根據該編碼表將該修正量化矩陣轉換成該修正數碼序列;以及(h)如該修正數碼序列之資料量係異於設定之目標資料量,捨棄該修正數碼序列,並重複步驟(e)、(f)及(g)直到該數碼序列之資料量達到設定之目標資料量;其中步驟(f)更包含:設定一預定差異值;如該資料量差異係大於該預定差異值,根據該編碼表將該數碼序列轉換成一逆編碼矩陣;以及 根據該量化表對該逆編碼矩陣進行逆量化。
  15. 如請求項14所述之檔案壓縮方法,其中步驟(b)包含:根據一第一轉換方式處理該原始資料檔並取得對應之該矩陣,其中該矩陣係位於一空間域中;以及根據一第二轉換方式將該矩陣自該空間域轉換至一頻率域中。
  16. 如請求項14所述之檔案壓縮方法,其中步驟(e)包含:設定該目標資料量;根據該數碼序列之資料量及該目標資料量之差異產生該資料量差異;以及根據該資料量差異調整該量化表中所包含之複數影像係數。
  17. 如請求項14所述之檔案壓縮方法,其中步驟(e)包含:設定一資料壓縮率;根據該資料壓縮率及該原始資料檔之資料量獲得該目標資料量;比較該數碼序列及該目標資料量以產生該資料量差異;以及根據該資料量差異調整該量化表。
TW098139054A 2009-11-17 2009-11-17 檔案壓縮方法及檔案壓縮系統 TWI407794B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW098139054A TWI407794B (zh) 2009-11-17 2009-11-17 檔案壓縮方法及檔案壓縮系統
US12/938,676 US8755621B2 (en) 2009-11-17 2010-11-03 Data compression method and data compression system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098139054A TWI407794B (zh) 2009-11-17 2009-11-17 檔案壓縮方法及檔案壓縮系統

Publications (2)

Publication Number Publication Date
TW201119395A TW201119395A (en) 2011-06-01
TWI407794B true TWI407794B (zh) 2013-09-01

Family

ID=44011339

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098139054A TWI407794B (zh) 2009-11-17 2009-11-17 檔案壓縮方法及檔案壓縮系統

Country Status (2)

Country Link
US (1) US8755621B2 (zh)
TW (1) TWI407794B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI639926B (zh) * 2015-05-11 2018-11-01 上海兆芯集成電路有限公司 在輸入區塊掃描時維持分類符號列之硬體資料壓縮器

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016049327A1 (en) * 2014-09-26 2016-03-31 Dolby Laboratories Licensing Corporation Encoding and decoding perceptually-quantized video content
US11037330B2 (en) 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
CN109788289B (zh) * 2019-02-26 2021-01-01 北京大学深圳研究生院 一种反量化方法、系统、设备及计算机可读介质
US11552650B2 (en) 2019-10-03 2023-01-10 Raytheon Company Methods to compress range doppler map (RDM) values from floating point to decibels (dB)
CN116977454B (zh) * 2023-09-21 2023-12-12 北京点聚信息技术有限公司 一种电子印章数据优化存储方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW367661B (en) * 1998-07-10 1999-08-21 Ind Tech Res Inst DPCM CODAC with compression control function
US6697529B2 (en) * 1998-10-06 2004-02-24 Nikon Corporation Data compression method and recording medium with data compression program recorded therein
US6915014B1 (en) * 1990-07-31 2005-07-05 Canon Kabushiki Kaisha Image processing apparatus and method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5260808A (en) * 1991-04-23 1993-11-09 Canon Kabushiki Kaisha Image processing apparatus
US7292782B2 (en) * 2000-09-27 2007-11-06 Victor Company Of Japan, Limited MPEG picture data recording apparatus, MPEG picture data recording method, MPEG picture data recording medium, MPEG picture data generating apparatus, MPEG picture data reproducing apparatus, and MPEG picture data reproducing method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6915014B1 (en) * 1990-07-31 2005-07-05 Canon Kabushiki Kaisha Image processing apparatus and method
TW367661B (en) * 1998-07-10 1999-08-21 Ind Tech Res Inst DPCM CODAC with compression control function
US6697529B2 (en) * 1998-10-06 2004-02-24 Nikon Corporation Data compression method and recording medium with data compression program recorded therein

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI639926B (zh) * 2015-05-11 2018-11-01 上海兆芯集成電路有限公司 在輸入區塊掃描時維持分類符號列之硬體資料壓縮器

Also Published As

Publication number Publication date
TW201119395A (en) 2011-06-01
US20110116725A1 (en) 2011-05-19
US8755621B2 (en) 2014-06-17

Similar Documents

Publication Publication Date Title
US11375139B2 (en) On-chip image sensor data compression
US8588536B2 (en) Guaranteed-rate tiled image data compression
TW201921928A (zh) 在視訊寫碼中跨分量動態範圍調整之系統及方法
US8619866B2 (en) Reducing memory bandwidth for processing digital image data
EP1894413B1 (en) Image processing of dct-based video sequences in compressed domain
US11076164B2 (en) Video camera with rate control video compression
JP4641892B2 (ja) 動画像符号化装置、方法、及びプログラム
TWI407794B (zh) 檔案壓縮方法及檔案壓縮系統
KR20190029796A (ko) 디스플레이 스트림 압축 (dsc) 을 위한 엔트로피 코딩 기법들
US20070147510A1 (en) Method and module for altering color space parameters of video data stream in compressed domain
US20080193028A1 (en) Method of high quality digital image compression
GB2421137A (en) Image compression using a quantization parameter determined according to a focus value
US7702161B2 (en) Progressive differential motion JPEG codec
US7146055B2 (en) Image processing decompression apparatus and method of using same different scaling algorithms simultaneously
TWI436649B (zh) 處理原始高解析影像資料之影像處理裝置及其影像處理晶片和方法
CN116828200B (zh) 一种图像处理方法、处理装置、设备及介质
WO2023138562A1 (zh) 图像解码方法、图像编码方法及相应的装置
KR100786413B1 (ko) 이미지 데이터 처리 시스템
KR100634568B1 (ko) 제이펙 파일 크기 제어 가능한 영상 처리 방법 및 그 장치
JP2023070055A (ja) 画像符号化装置及びその制御方法及びプログラム
JPH04150279A (ja) 画像データ記録装置
Dwivedi Design of JPEG Compressor
KR20070099347A (ko) 영상 데이터의 압축 장치 및 방법
KR20040046319A (ko) 화상 통신 시스템

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees
MM4A Annulment or lapse of patent due to non-payment of fees