專利名稱:能夠實現高速和高精度的編碼的圖象壓縮裝置的制作方法
技術領域:
本發(fā)明涉及壓縮圖象數據的圖象壓縮裝置,特別是,涉及MPEG(MovingPicture Expert Group)視頻編碼器或者JPEG(Joint Photographic Goding ExpertGroup)編碼器。
近年來,取代使用19世紀以來的照相技術的照相機,電子靜像照相機的需要日益增加。在電子靜像照相機中,為了當傳送和存儲圖象數據時,壓縮圖象數據來減少數據量,而有效地進行處理,而使用「JPEG」方式作為數據的壓縮·擴展技術。該JPEG方式由ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission)下設的JPEG委員會(ISO/IEC 10918-1)進行了標準化。
JPEG方式被稱為JPEG算法,成為該技術的核心是離散余弦變換(以下稱為DCT)。而且,JPEG方式被廣泛用于電子靜像照相機和CD-ROM(CompactDisc-Read Only Memory)系統(tǒng)等的圖象數據的處理。
根據JPEG方式,為了能夠進行活動圖象數據的壓縮·擴展,在使用JPEG方式的電子靜像照相機中具有活動圖象的攝影功能。這樣,使用JPEG方式來進行活動圖象數據的壓縮·擴展的技術被稱為M-JPEG(Motion-JPEG)。
因此,用多媒體進行處理的信息是膨脹的量和多種多樣的,為了謀求多媒體的實用化,就必須高速地處理這些信息。為了高速處理信息,數據的壓縮·擴展技術是不可缺少的。作為這樣的數據的壓縮·擴展技術,可以舉出「MPEG」方式。該MPEG方式,由ISO/IEC下設的MPEG委員會(ISO/IECJTC1/SC29/WG11)進行了標準化。
MPEG方式由三個部分所構成。在部分1的「MPEG系統(tǒng)部分」(ISO/IECIS 11172 Part1Systems)中,規(guī)定了活動圖象數據(視頻數據)和聲音數據(音頻數據)的復用構造和同步方式。在部分2的「MPEG視頻部分」(ISO/IEC IS11172 Part2Video)中,規(guī)定了活動圖象數據的高效率編碼方式和活動圖象數據的格式。在部分3的「MPEG音頻部分」(ISO/IEC IS 11172 Part3Audio)中,規(guī)定了聲音數據的高效率編碼方式和聲音數據的格式。
成為在MPEG視頻部分中使用的技術的核心的是帶活動補償的預測(MCMotion Compensated Prediction)和DCT。并用MC和DCT的編碼技術被稱為混合編碼技術。即,MPEG方式是把MC同JPEG方式進行組合的技術。
MPEG方式適合于各種存儲媒體,例如,視頻CD(Compact Disc)、CD-ROM、DVD(Digital Video Disc)、錄象帶、使用非易失性半導體存儲器的存儲卡等以及LAN(Local Area Network)等各種通信媒體、包含各種廣播媒體(地面波廣播、衛(wèi)星廣播、CATV(Community Antenna Television))的傳輸媒體。
圖11是使用JPEG方式的現有的電子靜像照相機101的方框圖。
電子靜像照相機101包括JPEG核心電路102、攝像裝置103、信號處理電路104、幀緩沖器105、顯示器106、顯示電路107、存儲卡108、輸入輸出電路109、數據總線110,111、控制核心電路136。
JPEG核心電路102包括DCT電路121、量化電路122、霍夫曼編碼電路123、代碼量計數器124、霍夫曼解碼電路131、逆量化電路132、逆DCT(IDCT)電路133、RAM(Random Access Memory)134和135。
控制核心電路136控制電子靜像照相機101的各個電路102~111。
攝像裝置103由CCD等構成,拍攝被攝體圖象,而生成輸出信號。信號處理電路104根據攝像裝置103的輸出信號來生成每一個畫面的圖象數據。信號處理電路104生成的每一個畫面的圖象數據通過數據總線110被傳輸給幀緩沖器105或者顯示電路107至少一方。
顯示電路107根據通過數據總線110所傳輸的每一個畫面的圖象數據來生成圖象信號。顯示器106顯示由顯示電路107生成的圖象信號來作為被攝體圖象。
幀緩沖器105由能夠重寫的半導體存儲器(例如,SDRAM(SynchronousDynamic Random Access Memory)、DRAM(Dynamic Random Access Memory)、隨機總線(Rambus)DRAM等所構成,通過寫入經過數據總線110所傳輸的每一個畫面(1幀)的圖象數據來進行存儲。而且,從幀緩沖器105讀出每一個畫面的所存儲的圖象數據。從幀緩沖器105所讀出的每一個畫面的圖象數據通過數據總線110而傳輸給JPEG核心電路102的DCT電路121。
在JPEG核心電路102中,一個畫面的圖象數據被分割成由JPEG方式的標準所規(guī)定的多個宏塊,對每個塊進行壓縮·擴展處理。
其中,DCT電路121、量化電路122、霍夫曼編碼電路123構成JPEG編碼器,進行圖象數據的壓縮處理。并且,霍夫曼解碼電路131、逆量化電路132、逆DCT電路133構成JPEG解碼器,進行圖象數據的擴展處理。
DCT電路121對從幀緩沖器105所讀出的每一個畫面的圖象數據以1塊單位讀取一幅畫面的圖象數據,對該1塊的圖象數據進行二維的離散余弦變換,而生成DCT系數。
量化電路122參照在RAM134中所存儲的量化表中所包含的量化閾值來對由DCT電路121所提供的DCT系數進行量化。
霍夫曼編碼電路123參照在RAM135中所存儲的霍夫曼表中所包含的霍夫曼代碼來對由量化電路122所量化的DCT系數進行可變長度編碼,由此,生成每一個畫面的壓縮的圖象數據(以下稱為壓縮圖象數據)。
代碼量計數器124對霍夫曼編碼電路123生成的每一個畫面的壓縮圖象數據的代碼量進行計數。
霍夫曼編碼電路123生成的壓縮圖象數據通過數據總線111而傳輸給存儲卡108或者輸入輸出電路109中的至少一個。存儲卡108可裝卸地裝入電子靜像照相機101中,在存儲卡108內設置快速存儲器108a。
快速存儲器108a通過寫入經過數據總線111所傳輸的每一個畫面的圖象數據來進行存儲,同時,讀出每一個畫面的存儲的壓縮圖象數據并傳輸給數據總線111。
輸入輸出電路109把通過數據總線111所傳輸的每一個畫面的壓縮圖象數據輸出到與電子靜像照相機101相連接的外部機器(例如,外部顯示器、個人計算機、打印機等),同時,把從相應外部機器所輸入的壓縮圖象數據傳送給數據總線111。
從存儲卡108所讀出的壓縮圖象數據或者通過輸入輸出電路109所輸入的壓縮圖象數據通過數據總線111傳送給JPEG核心電路102的霍夫曼解碼電路131。
霍夫曼解碼電路131參照在RAM135中所存儲的霍夫曼表中所包含的霍夫曼代碼對通過數據總線111所傳輸的每一個畫面的壓縮圖象數據進行可變長度解碼,由此,生成每一個畫面的擴展的圖象數據(以下稱為擴展圖象數據)。
逆量化電路132參照在RAM134中所存儲的量化表中所包含的量化閾值來對霍夫曼解碼電路131生成的每一個畫面的擴展圖象數據進行逆量化,由此生成DCT系數。
逆DCT電路133對逆量化電路132生成的DCT系數進行二維的離散余弦逆變換。
由逆DCT電路133進行了離散余弦逆變換的每一個畫面的擴展圖象數據通過數據總線110傳送給幀緩沖器105。接著,幀緩沖器105通過寫入從逆DCT電路133通過數據總線110所傳輸的每一個畫面的圖象數據來進行存儲。并且,顯示電路107根據從逆DCT電路133通過數據總線110所傳輸的每一個畫面的圖象數據來生成圖象數據,該圖象信號作為被攝體圖象而顯示在顯示器106上。
其中,在RAM134中所存儲的量化表中所包含的量化閾值決定了壓縮圖象數據的壓縮率和擴展壓縮圖象數據的重放圖象(顯示器106的顯示圖象、從存儲卡108讀出到外部機器中并進行重放的重放圖象、由連接在輸入輸出電路109上的外部機器所重放的重放圖象)的畫質。并且,在RAM135中所存儲的霍夫曼表中所包含的霍夫曼代碼是預先根據所預測的出現頻率而分配給量化的DCT系數或者擴展圖象數據的可變長度的代碼,對于出現頻率高的,其所分配的代碼長度較短。
因此,霍夫曼編碼電路123生成的每一個畫面的壓縮圖象數據的代碼量,根據預先設定在電子靜像照相機101中的畫質方式,來規(guī)定其最大值。這是因為能夠存儲在存儲卡108中的畫面的數量(照片的張數)由電子靜像照相機101的畫質方式所決定,例如,能夠存儲在存儲卡108中的照片的張數在高畫質方式下被設定為幾張,而在低畫質方式下可以設定為十幾張。
即,在高畫質方式下,由于壓縮圖象數據的壓縮率被設定得較低,則一幅畫面的壓縮圖象數據的代碼量較大,能夠存儲在存儲卡108中的照片的張數較少。而且,在低畫質方式下,由于壓縮圖象數據的壓縮率被設定得較高,則一幅畫面的壓縮圖象數據的代碼量較少,能夠存儲在存儲卡108中的照片的張數較多。
因此,必須優(yōu)化量化閾值和霍夫曼代碼,以使霍夫曼編碼電路123生成的每一個畫面的壓縮圖象數據的代碼量為所規(guī)定的最大值以下。其中,從幀緩沖器105所讀出的每一個畫面的圖象數據(即,信號處理電路104生成的每一個畫面的圖象數據)的數據量與攝像裝置103拍攝的被攝體圖象無關是恒定的。因此,霍夫曼編碼電路123生成的壓縮圖象數據的壓縮率對應于其壓縮圖象數據的代碼量被唯一地算出,其代碼量越大,壓縮率越低。即,所謂使壓縮圖象數據的代碼量為所規(guī)定的最大值以下,無非就是使壓縮圖象數據的壓縮率為所規(guī)定的最小值以上。
但是,壓縮圖象數據的壓縮率(代碼量)被量化閾值和霍夫曼代碼與被攝體圖象的組合所大大地左右。因此,即使量化閾值和霍夫曼代碼相同,在拍攝不同的被攝體圖象時,在壓縮圖象數據的壓縮率上也會產生較大的差別。
例如,在被攝體圖象是許多的群體這樣的復雜而且細微的圖象的情況下,就必須提高壓縮率來降低代碼量,而在被攝體圖象是晴朗無云的天空這樣的單純的圖象的情況下,必須降低壓縮率而提高代碼量。因此,為了求出壓縮圖象數據的壓縮率,必須預先進行由構成JPEG編碼器的各電路121~123所進行的壓縮處理來實際生成壓縮圖象數據,而在進行這樣的壓縮處理之前是難于預測壓縮率的。
因此,在現有的電子靜像照相機101中,首先,把量化閾值和霍夫曼代碼設定為既定值,進行由構成JPEG編碼器的各電路121~123所進行的壓縮處理,來生成壓縮圖象數據,由代碼量計數器124來對該代碼量進行計數。其結果,當壓縮圖象數據的代碼量為所規(guī)定的最大值以下時,為了優(yōu)化設定的量化閾值和霍夫曼代碼,由該設定值來決定量化閾值和霍夫曼代碼。
接著,根據決定的量化閾值和霍夫曼代碼所制成的壓縮圖象數據通過數據總線111傳送給存儲卡108或者輸入輸出電路109。
但是,當壓縮圖象數據的代碼量超過所規(guī)定的最大值時,把量化閾值和霍夫曼代碼重新設定為比上述既定值稍大的值上,進行各電路121~123所進行的壓縮處理,再次生成壓縮圖象數據,由代碼量計數器124對該代碼量進行計數。其結果,當壓縮圖象數據的代碼量為最大值以下時,為了優(yōu)化重新設定的量化閾值和霍夫曼代碼,由該重新設定的值決定量化閾值和霍夫曼代碼。
但是,即使這樣,當壓縮圖象數據的代碼量超過最大值時,把量化閾值和霍夫曼代碼重新設定為更大的值,再次進行壓縮處理。
這樣,在現有的電子靜像照相機101中,為了優(yōu)化量化閾值和霍夫曼代碼以使壓縮圖象數據的代碼量為所規(guī)定的最大值以下(即,使壓縮圖象數據的壓縮率為所規(guī)定的最小值以上),就要重復進行由構成JPEG編碼器的各電路121~123所進行的上述壓縮處理。因此,為了決定量化閾值和霍夫曼代碼就需要一定程度的時間。
在現有的電子靜像照相機101中存在以下問題i)為了優(yōu)化量化閾值和霍夫曼代碼,就要重復進行由構成JPEG編碼器的各電路121~123所進行的壓縮處理,因此,從由攝像裝置103進行拍攝到把壓縮圖象數據存儲到存儲卡108中為止所需要的時間(以下稱為記錄等待時間)延長了在該壓縮處理中所需要的時間。
為了避免該問題,考慮預先把上述記錄等待時間設定得較短,但是,在此情況下,由于重復進行由上述各電路102~123所進行的上述壓縮處理的次數變少,就不能優(yōu)化量化閾值和霍夫曼代碼,而引起擴展壓縮圖象數據的重放圖象的畫質降低的問題。
ii)每當進行由構成JPEG編碼器的各電路121~123所進行的壓縮處理時,必須從幀緩沖器105讀出每一個畫面的圖象數據,把該圖象數據通過數據總線110傳送給DCT電路121。即,每當進行由各電路121~123所進行的壓縮處理時,必須通過數據總線110對幀緩沖器105進行讀出存取。因此,對幀緩沖器105的存取發(fā)生混雜,與上述i)的問題相應,上述記錄等待時間進一步變長。
而且,當對幀緩沖器105的存取發(fā)生混雜時,從信號處理電路104和顯示電路107對幀緩沖器105進行的存取的性能降低。
為了避免該問題,可以加大幀緩沖器105和數據總線110的總線寬度,來實現高速化,但是,由于這樣的幀緩沖器105是昂貴的并且消耗功率較大,而引起了電子靜像照相機101的成本上升以及消耗功率增大的問題。特別是,由于電子靜像照相機101是由電池進行驅動的,消耗功率的增大就是很大的問題。
因此,在使用銀鹽照相技術的照相機中,由于幾乎在拍攝后瞬時地把圖象記錄到膠片上,而能夠依次連續(xù)拍攝。與此相對,在電子靜像照相機101中,由于需要上述記錄等待時間,而不能進行依次連續(xù)拍攝,使用戶感到壓力。為了緩和該壓力,近年來,要求把上述記錄等待時間縮短到現有技術以下。
上述i)和ii)的問題不僅在JPEG編碼器中而且在MPEG編碼器中同樣會發(fā)生。即,如上述那樣,MPEG方式是把MC與JPEG方式相組合的技術,由于MPEG編碼器是在進行JPEG編碼器上(DCT電路121、量化電路122、霍夫曼編碼電路123)附加MC電路而構成的,則JPEG編碼器的上述i)和ii)的問題與MPEG編碼器相當。
本發(fā)明的目的是提供一種圖象壓縮裝置,能夠在使編碼的壓縮后的圖象數據的代碼量為預定值的基礎上,實現圖象數據的高速和高精度的編碼。
本發(fā)明提供一種用于壓縮圖象數據的圖象壓縮裝置,包括離散余弦變換電路、量化電路、霍夫曼編碼電路、代碼量計數器、控制電路。
離散余弦變換電路對構成一幅畫面的圖象的圖象數據進行二維的離散余弦變換,而生成離散余弦變換系數。
量化電路參照包含在預先設定的量化表中的量化閾值來對由離散余弦變換電路所提供的離散余弦變換系數進行量化。
霍夫曼編碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據。
代碼量計數器對霍夫曼編碼電路生成的壓縮圖象數據的代碼量進行計數。
控制電路在代碼量計數器計數的壓縮圖象數據的代碼量變?yōu)轭A定值以下之前,一邊變更由量化閾值和霍夫曼代碼組成的參數的設定,一邊重復進行由離散余弦變換電路和量化電路以及霍夫曼編碼電路所進行的壓縮處理,由此,決定最佳參數來使壓縮圖象數據的代碼量為預定值以下。
控制電路把一幅畫面的圖象分割成多個塊,一邊變更從多塊中選擇的塊數一邊選擇塊,對選擇的塊的圖象數據反復進行壓縮處理,由此,決定最佳參數。
根據本發(fā)明的另一個方案,提供一種用于壓縮圖象數據的圖象壓縮裝置,包括編碼器和控制電路。
編碼器對所輸入的圖象數據進行壓縮并進行編碼。
控制電路通過編碼器來對抽樣圖象數據進行處理,決定最佳參數以使所壓縮的一幅畫面的圖象的壓縮后的圖象數據的代碼量為預定值以下。
控制電路把將要進行壓縮的一幅畫面的圖象分割成多個塊,采用每一畫面均等地進行抽出的規(guī)則來從多塊中抽出預定的塊,來生成抽樣圖象數據。
根據本發(fā)明的另一個方案,提供一種用于壓縮圖象數據的圖象壓縮裝置,包括離散余弦變換電路、量化電路、霍夫曼編碼電路、代碼量計數器、霍夫曼解碼電路、逆量化電路、控制電路。
離散余弦變換電路對構成一幅畫面的圖象的圖象數據進行二維的離散余弦變換,而生成離散余弦變換系數。
量化電路參照包含在預先設定的量化表中的量化閾值來對由離散余弦變換電路所提供的離散余弦變換系數進行量化。
霍夫曼編碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據。
代碼量計數器對霍夫曼編碼電路生成的壓縮圖象數據的代碼量進行計數。
霍夫曼解碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對霍夫曼編碼電路生成的壓縮圖象數據進行可變長度解碼,由此生成擴展圖象數據。
逆量化電路參照包含在預先設定的量化表中的量化閾值來對霍夫曼解碼電路生成的擴展圖象數據進行逆量化,由此,生成離散余弦變換系數,把所生成的離散余弦變換系數返回量化電路。量化電路參照包含在預先設定的量化表中的量化閾值來對從逆量化電路所返回的離散余弦變換系數進行量化。
控制電路在代碼量計數器計數的壓縮圖象數據的代碼量變?yōu)轭A定值以下之前,一邊變更由量化閾值和霍夫曼代碼組成的參數的設定,一邊對離散余弦變換電路和量化電路以及霍夫曼編碼電路重復進行由逆量化電路所進行的處理,由此,決定最佳參數來使壓縮圖象數據的代碼量為預定值以下。
根據本發(fā)明的另一個方案,提供一種用于壓縮圖象數據的圖象壓縮裝置,包括離散余弦變換電路、量化電路、霍夫曼編碼電路、代碼量計數器、霍夫曼解碼電路、逆量化電路、控制電路。
離散余弦變換電路對構成一幅畫面的圖象的圖象數據進行二維的離散余弦變換,而生成離散余弦變換系數。
量化電路使用包含在預先設定的量化表中的量化閾值來對由離散余弦變換電路所提供的離散余弦變換系數進行量化。
霍夫曼編碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據。
代碼量計數器對霍夫曼編碼電路生成的壓縮圖象數據的代碼量進行計數。
霍夫曼解碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對霍夫曼編碼電路生成的壓縮圖象數據進行可變長度解碼,由此生成擴展圖象數據,把擴展圖象數據返回霍夫曼編碼電路。霍夫曼編碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對從霍夫曼解碼電路所返回的擴展圖象數據進行可變長度編碼。
控制電路在代碼量計數器計數的壓縮圖象數據的代碼量變?yōu)轭A定值以下之前,一邊變更霍夫曼代碼的設定,一邊重復進行由霍夫曼編碼電路和霍夫曼解碼電路所進行的處理,由此,決定最佳參數來使壓縮圖象數據的代碼量為預定值以下。
因此,本發(fā)明的重要優(yōu)點是由于對選擇的塊的圖象數據反復進行壓縮處理,與對一幅畫面的全部圖象數據反復進行壓縮處理的情況相比,能夠在優(yōu)化參數的基礎上,縮短壓縮處理中需要的時間,因此,能夠實現圖象數據的高速和高精度的編碼。
本發(fā)明的另一個優(yōu)點是一邊在每個區(qū)域中變更從各個區(qū)域的塊選擇的塊數,一邊選擇預定的塊,對該選擇的塊的圖象數據反復進行壓縮處理,因此,與在一幅畫面中把圖象分割為多個區(qū)域的情況相比,能夠在優(yōu)化參數的基礎上,縮短壓縮處理中需要的時間,因此,能夠實現圖象數據的高速和高精度的編碼。
本發(fā)明的另一個優(yōu)點是把一幅畫面的圖象數據一次傳送給離散余弦變換電路之后,在決定參數時,不使用離散余弦變換電路,因此,與每當重復進行處理時都把一幅畫面的圖象數據傳送給離散余弦變換電路的情況相比,能夠在優(yōu)化參數的基礎上,縮短傳送中需要的時間,因此,能夠實現圖象數據的高速和高精度的編碼。
本發(fā)明的這些和其他的目的、優(yōu)點及特征將通過結合附圖對本發(fā)明的實施例的描述而得到進一步說明。在這些附圖中圖1是本發(fā)明所涉及的第一實施例的電子靜像照相機的簡要方框圖;圖2是本發(fā)明所涉及的第二實施例的電子靜像照相機的簡要方框圖;圖3是本發(fā)明所涉及的第三實施例的電子靜像照相機的簡要方框圖4A和圖4B是用于說明在第三實施例的動作中所生成的畫面P2的模式圖;圖5A和圖5B是用于說明在第三實施例的動作中所生成的畫面P3的模式圖;圖6A和圖6B是用于說明構成畫面P2,畫面P3的各塊Bs1,Bs2的關系的模式圖;圖7A和圖7B是用于說明在第三實施例的動作中所生成的畫面P4的模式圖;圖8A和圖8B是用于說明構成畫面P3,畫面P4的各塊Bs2,Bs3的關系的模式圖;圖9是用于說明第三實施例的動作的流程圖;圖10是 用于說明第三實施例的變形例動作的模式圖;圖11是 現有的電子靜像照相機的簡要方框圖。
第一實施例下面參照附圖來對本發(fā)明所涉及的第一實施例進行說明。
在第一實施例中,對與圖11所示的現有例子相同的部件使用相同的標號,而省略其詳細的說明。
圖1是使用JPEG方式的本發(fā)明所涉及的第一實施例的電子靜像照相機1的簡要方框圖。
在電子靜像照相機1的構成中,與圖11所示的現有的電子靜像照相機101不同之處為以下幾點(1)在電子靜像照相機1中具有JPEG核心電路2以取代電子靜像照相機101的JPEG核心電路102。
(2)在JPEG核心電路2中,具有RAM4a、4b、5a、5b,以取代電子靜像照相機101中的保持量化表的RAM134和保持霍夫曼表的RAM135。
RAM4a、4b存儲包含量化閾值的量化表。RAM5a、5b存儲包含霍夫曼代碼的霍夫曼表。
(3)在電子靜像照相機1中具有RAM6。RAM6通過寫入來存儲通過數據總線111所傳送的一幅畫面的壓縮圖象數據。而且,從RAM6讀出所存儲的一幅畫面的壓縮圖象數據而傳送給數據總線111。
(4)在電子靜像照相機1中具有控制核心電路3,以取代電子靜像照相機101的控制核心電路136??刂坪诵碾娐?控制電子靜像照相機1的各個電路2、103~111。
(5)在電子靜像照相機1中,逆量化電路132生成的DCT系數不僅輸出給逆DCT電路133而且輸出給量化電路122。
下面對本發(fā)明的實施例1的電子靜像照相機1中決定量化閾值和霍夫曼代碼的動作進行說明。
首先,從幀緩沖器105讀出一幅畫面的圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑來傳送該一幅畫面的圖象數據,進行由構成JPEG編碼器的各電路121~123所進行的壓縮處理,來生成壓縮圖象數據。代碼量計數器124對所生成的壓縮圖象數據的代碼量進行計數。
此時,量化電路122參照在RAM4a中所存儲的量化表中所包含的量化閾值進行量化,同時,把該量化閾值設定在所規(guī)定的值中的盡可能小的值(初始值)上。在本實施例的情況下,量化閾值的最小值為「a111」,最大值為「a11255」。其中,當使量化閾值為最小值時,壓縮圖象數據的壓縮率相當低,因此,希望把大于最小值的值作為量化閾值的初始值。
霍夫曼編碼電路123參照在RAM5a中所存儲的霍夫曼表中包含的霍夫曼代碼來進行可變長度編碼,但把該霍夫曼代碼設定為所規(guī)定的初始值(例如,JPEG推薦表等)上。
接著,當霍夫曼編碼電路123生成的壓縮圖象數據的代碼量為所規(guī)定的最大值以下時,為了優(yōu)化設定的量化閾值和霍夫曼代碼,而決定量化閾值和霍夫曼代碼為該設定值。
但是,當霍夫曼編碼電路123生成的壓縮圖象數據的代碼量超過所規(guī)定的最大值時,該壓縮圖象數據通過數據總線111而傳送給RAM6來進行存儲,同時,通過數據總線111而以霍夫曼解碼電路131→逆量化電路132的路徑進行傳送。
接著,根據霍夫曼解碼電路131和逆量化電路132的處理結果,把逆量化電路132生成的DCT系數輸出返回逆DCT電路133和量化電路122。
此時,霍夫曼解碼電路131參照在RAM5b中所存儲的霍夫曼表中包含的霍夫曼代碼來進行可變長度編碼,但使用在由霍夫曼編碼電路123所進行的可變長度編碼中所參照的霍夫曼代碼(即,初始值的霍夫曼代碼)來作為該霍夫曼代碼。
而且,逆量化電路132參照在RAM4b中所存儲的量化表包含的量化閾值來進行逆量化,但使用在由量化電路122所進行的量化中所參照的量化閾值(即,初始值的量化閾值)來作為該量化閾值。
另一方面,根據由控制核心電路3所進行的控制,以RAM4a的量化閾值和RAM5a的霍夫曼代碼為基礎,重新設定為比上述初始值稍大的值上。
在此基礎上,量化電路122參照在RAM4a中所存儲的量化表包含的量化閾值來對從逆量化電路132所輸入的DCT系數進行量化。并且,霍夫曼編碼電路123參照在RAM5a中所存儲的霍夫曼表中包含的霍夫曼代碼來對由量化電路122所量化的DCT系數進行可變長度編碼,而再次生成壓縮圖象數據。
其結果,當霍夫曼編碼電路123再次生成的壓縮圖象數據的代碼量為最大值以下時,為了優(yōu)化重新設定的量化閾值和霍夫曼代碼,而決定量化閾值和霍夫曼代碼為該重新設定的值。
但是,當壓縮圖象數據的代碼量超過最大值時,在霍夫曼解碼電路131→逆量化電路132的路徑中通過數據總線111來傳送從RAM6讀出的壓縮圖象數據。接著,再次進行各電路131、132所進行的處理,把逆量化電路132生成的DCT系數再次輸出返回量化電路122。
此時,霍夫曼解碼電路131參照在RAM5b中所存儲的霍夫曼表中所包含的霍夫曼代碼來進行可變長度解碼,并且,使用在由霍夫曼編碼電路123所進行的上一次的可變長度編碼中參照的霍夫曼代碼(即重新設定為比上述初始值稍大的值的霍夫曼代碼)來作為該霍夫曼代碼。
逆量化電路132參照在RAM4b中所存儲的量化表中包含的量化閾值來進行逆量化,并且,使用在由量化電路122所進行的上一次的量化中所參照的量化閾值(即,重新設定為比上述初始值稍大的值的量化閾值)來作為該量化閾值。
在本發(fā)明的第一實施例中,若歸納用于決定量化閾值和霍夫曼代碼的數據傳送的路徑,為以下這樣第一次的路徑幀緩沖器105→數據總線110→DCT電路121→量化電路122→霍夫曼編碼電路123→數據總線111→RAM6和霍夫曼解碼電路131。
第二次的路徑接著第一次的路徑,霍夫曼解碼電路131→逆量化電路132→量化電路122→霍夫曼編碼電路123。
第三次的路徑RAM6→霍夫曼解碼電路131→逆量化電路132→量化電路122→霍夫曼編碼電路123。
第四次以后的路徑與第三次的相同。
即,反復進行與第三次相同的路徑,直到壓縮圖象數據的代碼量為所規(guī)定的最大值以下而決定出量化閾值和霍夫曼代碼為止。
此時,每當重復與第三次相同的路徑時,以RAM4a的量化閾值和RAM5a的霍夫曼代碼為基礎,重新設定為稍大的值上。接著,RAM4b的量化閾值使用在上一次的路徑中的量化中在RAM4a中所設定的量化閾值。RAM5b的霍夫曼代碼使用在上一次的路徑中的可變長度編碼中在RAM5a中所設定的霍夫曼代碼。
這樣,如果量化閾值和霍夫曼代碼被決定,再次從幀緩沖器105讀出一幅畫面的圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑來傳送該一幅畫面的圖象數據,通過構成JPEG編碼器的各電路121~123來進行壓縮處理,而生成壓縮圖象數據,把該壓縮圖象數據傳送給數據總線111。
如上述那樣,根據本發(fā)明第一實施例的電子靜像照相機1,能夠得到以上的作用·效果。
(1-1)在由攝像裝置103進行了拍攝以后,能夠縮短把壓縮圖象數據存儲到存儲卡108中所需要的時間(記錄等待時間)。
即,在上述第二次的路徑以后的路徑中,不從幀緩沖器105讀出圖象數據。因此,從幀緩沖器105讀出圖象數據的過程,只是出現在根據上述第一次的路徑以及決定的量化閾值和霍夫曼代碼來生成壓縮圖象數據時。即,對幀緩沖器105的讀出存取為2次。
從幀緩沖器105讀出一幅畫面的圖象數據所需要的時間與在JPEG核心電路2的處理中所需要的時間相比是非常的長。因此,如果對幀緩沖器105的讀出存取為2次,就能縮短上述記錄等待時間。
而且,如果對幀緩沖器105的讀出存取為2次,就不會增大幀緩沖器105和數據總線110的總線寬度,而能夠避免對幀緩沖器105的存取的混雜。因此,能夠提高從信號處理電路104和顯示電路107對幀緩沖器105進行的存取的性能。
(1-2)在縮短上述記錄等待時間的基礎上,能夠充分增多反復進行由霍夫曼編碼電路123所進行的壓縮處理的次數。因此,能夠優(yōu)化量化閾值和霍夫曼代碼,而能夠生成高精度的壓縮圖象數據,因此,能夠防止擴展壓縮圖象數據的重放圖象的畫質的降低。
本發(fā)明并不僅限于上述第一實施例的構成,也可以變更為以下這樣,在此情況下,能夠獲得與上述第一實施例相等或者更好的作用·效果。
「第一實施例的變形例1」在上述第一實施例的構成中,在上述第三次以后的路徑中,把從RAM6讀出的壓縮圖象數據傳送給霍夫曼解碼電路131。這是為了防止由于因各電路122、123的處理而發(fā)生的壓縮精度的降低與因各電路131、132的處理而發(fā)生的擴展精度的降低的相乘作用而使壓縮圖象數據的精度降低的情況。即,在第三次以后的路徑中,當把霍夫曼編碼電路123生成的壓縮圖象數據直接傳送給霍夫曼解碼電路131時,每當重復與第三次相同的路徑時,就會有壓縮圖象數據的精度降低以及所決定的量化閾值和霍夫曼代碼沒有優(yōu)化的問題。
但是,在各電路122、123、131、132的處理所引起的精度降低較少的情況下,在第三次以后的路徑中,可以把霍夫曼編碼電路123生成的壓縮圖象數據直接傳送給霍夫曼解碼電路131,在此情況下,能夠省略RAM6。
「第一實施例的變形例2」在上述第一實施例的構成中,在量化閾值和霍夫曼代碼被決定之后,再次從幀緩沖器105讀出圖象數據,根據該圖象數據生成壓縮圖象數據。這與上述第一實施例的變形例1中說明的情況相同,是為了防止因各電路122、123、131、132的處理所引起的精度降低而導致壓縮圖象數據的精度降低的情況。
但是,在各電路122、123、131、132的處理所引起的精度降低較少的情況下,在量化閾值和霍夫曼代碼被決定之后,不必從幀緩沖器105讀出圖象數據,在最后的路徑中,可以把由霍夫曼編碼電路123所生成的壓縮圖象數據作為完成的壓縮圖象數據而傳送給數據總線111。
在此情況下,從幀緩沖器105讀出圖象數據的過程僅為上述第一次的路徑,對幀緩沖器105的讀出存取僅為1次。因此,能夠進一步提高第一實施例的效果。而且,在第一次的路徑結束之后,能夠立即重寫幀緩沖器105,因此,即使在連續(xù)拍攝的情況下和用于M-JPEG的情況下,不需要增加幀緩沖器105的容量也能實現。
如果相對于幀緩沖器的重寫的速度,JPEG壓縮是足夠的高速,可以沒有幀緩沖器而用較少的容量的線存儲器來代替。這樣,能夠降低產品成本。
「第一實施例的變形例3」通過把RAM6的功能替換為存儲卡108的快速存儲器108a,就可以省略RAM6。
「第一實施例的變形例4」除了電子靜像照相機外,可以把JPEG核心電路2用于CD-ROM系統(tǒng)等的圖象數據的編碼器。
「第一實施例的變形例5」除了JPEG編碼器外,可以把JPEG核心電路2用于MPEG編碼器。如上述那樣,MPEG方式是與JPEG方式相組合的技術,MPEG編碼器是在JPEG編碼器(DCT電路121、量化電路122、霍夫曼編碼電路123)上附加MC電路而構成的。
「第二實施例」圖2是用于說明本發(fā)明的第二實施例的構成的簡要方框圖。并且,在本發(fā)明的第二實施例中,與第一實施例相同的部分使用相同的標號而省略其說明。
在第二實施例的電子靜像照相機11的構成中,與圖1所示的第一實施例的電子靜像照相機1不同之處為設置以下說明的JPEG核心電路2’,來取代JPEG核心電路2。
(1)在電子靜像照相機11中,逆量化電路132生成的DCT系數僅輸出給逆DCT電路133。
(2)在電子靜像照相機11中,霍夫曼解碼電路131生成的擴展圖象數據不僅輸出給逆量化電路132還輸出返回霍夫曼編碼電路123。
在第二實施例中,若歸納用于決定量化閾值和霍夫曼代碼的數據傳送的路徑,為以下這樣第一次的路徑與第一實施例相同(幀緩沖器105→數據總線110→DCT電路121→量化電路122→霍夫曼編碼電路123→數據總線111→RAM6和霍夫曼解碼電路131)。
第二次的路徑接著第一次的路徑,霍夫曼解碼電路131→霍夫曼編碼電路123。
第三次的路徑RAM6→霍夫曼解碼電路131→霍夫曼編碼電路123。
第四次以后的路徑與第三次的相同。
即,在第二實施例的動作中,與第一實施例的動作的不同之處為在第二次以后的路徑中,不僅把逆量化電路132生成的DCT系數輸出給量化電路122,還把霍夫曼解碼電路131生成的擴展圖象數據輸出返回給霍夫曼編碼電路123,由此來決定優(yōu)化的霍夫曼代碼。
因此,即使在第二實施例的電子靜像照相機11中,也能得到與第一實施例相同的作用·效果。
而且,也可以同時使用第一實施例和第二實施例,在此情況下,能夠得到相乘的效果。即,在預定次數之前,從霍夫曼解碼電路131向霍夫曼編碼電路123輸出處理結果,然后,從逆量化電路132向量化電路122輸出處理結果。或者,在預定次數之前,從逆量化電路132向量化電路122輸出處理結果,然后,從霍夫曼解碼電路131向霍夫曼編碼電路123輸出處理結果。
「第三實施例」圖3是用于說明本發(fā)明的第三實施例的電子靜像照相機20的構成的簡要方框圖。
第三實施例的電子靜像照相機20的構成與圖11所示的現有的電子靜像照相機101的不同之處為以下說明的取代控制核心電路136而設置的控制核心電路3進行的控制動作。
在現有的電子靜像照相機101中,當決定量化閾值和霍夫曼代碼時,通過幀緩沖器105→數據總線110→DCT電路121的路徑所傳送的圖象數據是一幅畫面所有的圖象數據。
與此相對,在第三實施例的電子靜像照相機20中,當決定量化閾值和霍夫曼代碼時,把從幀緩沖器105所讀出的圖象數據的一幅畫面分解為多個塊,通過幀緩沖器105→數據總線110→DCT電路121的路徑僅傳送該塊中的預定塊的圖象數據。
即,如圖4A所示的那樣,把從幀緩沖器105所讀出的圖象數據的一幅畫面P1分解為縱橫16個(16行×16列)的256個塊Ba。以宏塊為單位來設定塊Ba,一個塊Ba由縱m個橫n個(m行×n行,m,n是自然數)的宏塊所構成。
接著,從各個塊Ba中選擇從一幅畫面P1的左上端部向縱橫方向每隔3個配置的塊Ba(以下使用標號「Bs1」來進行區(qū)別),如圖4B所示的那樣,制成該(4行×4列)16個塊Bs1組成的畫面P2。
接著,從幀緩沖器105僅讀出畫面P2的圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑僅傳送該畫面P2的圖象數據,把量化閾值和霍夫曼代碼設定為與畫面P2相對應的預定的設定值,進行由各電路121~123所進行的壓縮處理,而生成壓縮圖象數據,由代碼量計數器124對該代碼量進行計數。在該壓縮圖象數據的代碼量成為相對于畫面P2所規(guī)定的最大值以下之前,重復進行由各電路121~123所進行的壓縮處理,由此,暫時決定根據畫面P2的圖象數據的量化閾值和霍夫曼代碼。
接著,如圖5A所示的那樣,從畫面P1的各個塊Ba中選擇從畫面P1的左上端部向縱橫方向每隔一個配置的塊Ba(以下使用標號「Bs2」來進行區(qū)別),如圖5B所示的那樣,制成該(8行×8列)64個塊Bs2組成的畫面P3。
接著,從幀緩沖器105僅讀出畫面P3的圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑僅傳送該畫面P3的圖象數據,參照根據畫面P2的圖象數據而暫時決定的量化閾值和霍夫曼代碼,來生成進行了由各電路121~123所進行的壓縮處理的壓縮數據,由代碼量計數器124對該代碼量進行計數。在該壓縮圖象數據的解碼量成為相對于畫面P3所規(guī)定的最大值以下之前,重復進行由各電路121~123所進行的壓縮處理,由此,暫時決定根據畫面P3的圖象數據的量化閾值和霍夫曼代碼。
其中,在各個畫面P1,P2的圖象數據的代碼量之間,具有式(1)所示的關系SP1=SP2×16+E1 …(1)其中,SP1畫面P1的圖象數據的代碼量SP1畫面P2的圖象數據的代碼量E1各個畫面P1,P2的圖象數據之間的壓縮誤差即,通過在由256個塊Ba組成的畫面P1上均等配置的16個塊Bs1(=Ba)來構成畫面P2,因此,畫面P2的尺寸為畫面P1的1/16。但是,由于在從畫面P1中除去構成畫面P2的各個塊Bs1的部分中存在的被攝體圖象的信息并不包含在畫面P2的圖象數據中,則單純地把畫面P2的圖象數據的代碼量SP2乘以16倍的值不會與畫面P1的圖象數據的代碼量SP1相同。
因此,把由在從畫面P1中除去構成畫面P2的各個塊Bs1的部分中存在的被攝體圖象的信息所引起的壓縮誤差E1與把代碼量SP2乘以16倍的值相加的值才是代碼量SP1的值。
其中,構成畫面P2,畫面P3的各個塊Bs1,Bs2的關系為圖6A和圖6B所示的那樣。即,如圖6A所示的那樣,從畫面P3的64個塊Bs2中選擇從畫面P3的左上端部向縱橫方向每隔一個配置的塊Bs2來作為塊Bs,如圖6B所示的那樣,由該16個塊Bs1所構成的是畫面P2。
因此,在各個畫面P2,P3的圖象數據的代碼量之間,具有式(2)所示的關系SP3=SP2×4+E2 …(2)其中,SP3畫面P3的圖象數據的代碼量E2各個畫面P2,P3的圖象數據之間的壓縮誤差即,通過在由64個塊Bs2組成的畫面P3均等配置的16個塊Bs1來構成畫面P2,因此,畫面P2的尺寸為畫面P3的1/4。但是,由于在從畫面P3中除去構成畫面P2的各個塊Bs1的部分中存在的被攝體圖象的信息并不包含在畫面P2的圖象數據中,則單純地把畫面P2的圖象數據的代碼量SP2乘以16倍的值不會與畫面P3的圖象數據的代碼量SP3相同。
因此,把由在從畫面P3中除去構成畫面P2的各個塊Bs1的部分中存在的被攝體圖象的信息所引起的壓縮誤差E2與把代碼量SP2乘以4倍的值相加的值才是代碼量SP3的值。
在第三實施例中,當壓縮誤差E2在允許值以內時,對于壓縮誤差E1視為在允許值范圍內,決定把根據畫面P2的圖象數據暫時決定的量化閾值和霍夫曼代碼作為相對于畫面P1的圖象數據的優(yōu)化的量化閾值和霍夫曼代碼。
接著,從幀緩沖器105讀出畫面P1的所有圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑來傳送該畫面P1的圖象數據,如上述那樣,參照所決定的量化閾值和霍夫曼代碼,進行由各電路121~123所進行的壓縮處理,而生成壓縮圖象數據。該壓縮圖象數據通過數據總線111而被傳送給存儲卡108或者輸入輸出電路109。
當壓縮誤差E2超過允許值時,如圖7A所示的那樣,從畫面P1的各個塊Ba中選擇從畫面P1的左上端部向縱橫方向每隔3個連續(xù)配置的塊Ba(以下使用標號「Bs3」來進行區(qū)別),如圖7B所示的那樣,制成該(12行×12列)144個塊Bs3組成的畫面P4。
接著,從幀緩沖器105僅讀出畫面P4的圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑僅傳送該畫面P4的圖象數據,參照根據畫面P3的圖象數據而暫時決定的量化閾值和霍夫曼代碼,進行由各電路121~123所進行的壓縮處理,來生成壓縮數據,由代碼量計數器124對該代碼量進行計數。在該壓縮圖象數據的代碼量成為相對于畫面P4所規(guī)定的最大值以下之前,重復進行由各電路121~123所進行的壓縮處理,由此,暫時決定根據畫面P4的圖象數據的量化閾值和霍夫曼代碼。
其中,構成畫面P3,畫面P4的各個塊Bs2,Bs3的關系為圖8A和圖8B所示的那樣。即,如圖8A所示的那樣,從畫面P4的144個塊Bs3中選擇從畫面P4的左上端部向縱橫方向每隔兩個連續(xù)配置的塊Bs3來作為塊Bs2,如圖8B所示的那樣,由該64個塊Bs1所構成的是畫面P3。
因此,在各個畫面P3,P4的圖象數據的代碼量之間,具有式(3)所示的關系SP4=SP3×144/64+E3 …(3)其中,SP4畫面P4的圖象數據的代碼量E3各個畫面P3,P4的圖象數據之間的壓縮誤差即,通過在由144個塊Bs3組成的畫面P4均等配置的64個塊Bs2來構成畫面P3,因此,畫面P3的尺寸為畫面P4的64/144。但是,由于在從畫面P4中除去構成畫面P3的各個塊Bs2的部分中存在的被攝體圖象的信息并不包含在畫面P3的圖象數據中,則單純地把畫面P3的圖象數據的代碼量SP3乘以144/64倍的值不會與畫面P4的圖象數據的代碼量SP4相同。因此,把由在從畫面P4中除去構成畫面P3的各個塊Bs2的部分中存在的被攝體圖象的信息所引起的壓縮誤差E3與把代碼量SP3乘以144/64倍的值相加的值才是代碼量SP4的值。
在第三實施例的構成中,當壓縮誤差E3在允許值以內時,對于壓縮誤差E1視為在允許值范圍內,決定把根據畫面P3而暫時決定的量化閾值和霍夫曼代碼作為相對于畫面P1的圖象數據的優(yōu)化的量化閾值和霍夫曼代碼。
接著,從幀緩沖器105讀出畫面P1的所有圖象數據,通過幀緩沖器105→數據總線110→DCT電路121的路徑來傳送該畫面P1的圖象數據,參照上述決定的量化閾值和霍夫曼代碼,進行由各電路121~123所進行的壓縮處理,而生成壓縮圖象數據。該壓縮圖象數據通過數據總線111而被傳送給存儲卡108或者輸入輸出電路109。
當壓縮誤差E3超過允許值時,與現有的電子靜像照相機101相同,根據畫面P1的全部圖象數據來決定量化閾值和霍夫曼代碼,通過該決定的量化閾值和霍夫曼代碼來生成壓縮圖象數據,并傳送給數據總線111。
圖9是用于說明第三實施例的動作的流程圖。
首先,在步驟ST1中,對于畫面P1的圖象數據,參照對畫面P2所設定的量化閾值和霍夫曼代碼來生成壓縮圖象數據,來求出其代碼量SP2,同時,暫時決定根據畫面P2的圖象數據的量化閾值和霍夫曼代碼。
接著,在步驟ST2中,對于畫面P3的圖象數據,參照根據畫面P2的圖象數據而暫時決定的量化閾值和霍夫曼代碼來生成壓縮圖象數據,來求出其代碼量SP3,同時,暫時決定根據畫面P3的圖象數據的量化閾值和霍夫曼代碼。
接著,在步驟ST3中,從各個代碼量SP2,SP3算出壓縮誤差E2,當壓縮誤差E2在允許值以內時(步驟ST3YES),移到步驟ST4,當超過允許值時(步驟ST3NO),移到步驟ST5。
當從步驟ST3移到步驟ST4時,在步驟ST4中,決定把根據畫面P2的圖象數據而暫時決定的量化閾值和霍夫曼代碼作為對畫面P1的圖象數據所優(yōu)化的量化閾值和霍夫曼代碼,然后,移到步驟ST6。
在步驟ST6中,對于畫面P1的圖象數據,根據由步驟ST4所決定的量化閾值和霍夫曼代碼來生成壓縮圖象數據,把該壓縮圖象數據傳送給數據總線111,而結束編碼處理。
在步驟ST5中,對于畫面P4的圖象數據,參照根據畫面P3的圖象數據而暫時決定的量化閾值和霍夫曼代碼來生成壓縮圖象數據,求出其代碼量SP4,同時,暫時決定根據畫面P4的圖象數據的量化閾值和霍夫曼代碼。
接著,在步驟ST7中,從各個代碼量SP3,SP4來算出壓縮誤差E3,當壓縮誤差E3在允許值以內時(步驟ST7YES),移到步驟ST4,當超過允許值時(步驟ST7NO),移到步驟ST8。
當從步驟ST7移到步驟ST4時,在步驟ST4中,決定把根據畫面P3的圖象數據而暫時決定的量化閾值和霍夫曼代碼作為對畫面P1的圖象數據所優(yōu)化的量化閾值和霍夫曼代碼。
在步驟ST8中,對于畫面P1的圖象數據,與現有的電子靜像照相機101相同,根據畫面P1的全部圖象數據來決定量化閾值和霍夫曼代碼,然后移到步驟ST6。
在步驟ST6中,對于畫面P1的圖象數據,根據由步驟ST8所決定的量化閾值和霍夫曼代碼來生成壓縮圖象數據,把該壓縮圖象數據傳送給數據總線111,而結束編碼處理。
因此,上述步驟ST1~ST8的處理是通過用控制核心電路3來控制各電路102~111而進行的。即,控制核心電路3把畫面P1的圖象分割成多個塊Ba,從這些塊Ba中一邊變更選擇數塊數一邊選擇預定的塊Ba,對該選擇的塊Ba的圖象數據重復進行壓縮處理,由此,來進行這樣的動作為了使壓縮圖象數據的代碼量為所規(guī)定的最大值以下,而決定由最佳的量化閾值和霍夫曼代碼組成的參數。
即,控制核心電路3具有例如RISC-CPU的功能,控制核心電路3的上述動作是RISC-CPU通過軟件來處理的。而且,對于第一、第二實施例的控制核心電路3,與第三實施例的控制核心電路3相同,具有RISC-CPU的功能。
如上述那樣,根據第三實施例,能夠獲得以下作用·效果。
(3-1)能夠縮短上述記錄等待時間。
即,在上述步驟ST1,ST2,ST5中,分別從幀緩沖器105讀出畫面P2,P3,P4的圖象數據,該圖象數據通過數據總線110傳送給DCT電路121。各個畫面P2,P3,P4的畫面尺寸比畫面P1的畫面尺寸小,圖象數據的數據量與畫面尺寸成比例。因此,相對于畫面P1的圖象數據量,畫面P2的圖象數據量為1/16,畫面P3的圖象數據量為1/4,畫面P4的圖象數據量為144/256。
接著,在各電路121~123所進行的壓縮處理中所需要的時間與圖象數據的數據量成比例。因此,步驟ST1,ST2,ST5的處理時間比步驟ST8的處理時間短。對于通常的被攝體圖象,以步驟ST1→步驟ST2→步驟ST3→步驟ST4→步驟ST6的順序進行處理,移到步驟ST5的情況比較少見,移到步驟ST8的情況極為少見。因此,在第三實施例的構成中,在量化閾值和霍夫曼代碼的最終決定中所需要的時間比現有的電子靜像照相機101短。
通過進行步驟ST1~ST8的處理,在縮短了上述記錄等待時間的基礎上,能夠使重復進行由各電路121~123所進行的上述壓縮處理的次數足夠多。因此,能夠優(yōu)化量化閾值和霍夫曼代碼,能夠生成高精度的壓縮圖象數據,因此,能夠防止擴展壓縮圖象數據的重放圖象的畫質的降低。
(3-2)由于各畫面P2,P3,P4的圖象數據量比畫面P1的圖象數據量少,則在步驟ST1,ST2,ST5中,在幀緩沖器105的讀出存取中所需要的時間短于在步驟ST8中的幀緩沖器105的讀出存取中所需要的時間。因此,削減了對幀緩沖器105的存取,而不會增大幀緩沖器105和數據總線110的總線寬度,能夠避免對幀緩沖器105的存取的混雜。
因此,與上述(1)的效果相結合,能夠進一步縮短上述記錄等待時間。而且,能夠提高從信號處理電路104和顯示電路107對幀緩沖器105進行的存取的性能。
(3-3)由于各畫面P2,P3,P4抽出了均等配置在畫面P1上的塊Bs1(在畫面P4中,為塊群Bs3),而能夠平均地取出畫面的特征,無論被攝體圖象的信息是哪種的,也能把各個壓縮誤差E1,E2,E3抑制到較小。其結果,能夠實現高精度的編碼。
本發(fā)明并不僅限于上述第三實施例的構成,也可以按以下這樣變更,在此情況下,能夠得到與上述第三實施例相等或者更好的作用·效果。
「第三實施例的變形例1」當從步驟ST3移到ST4時,在步驟ST4中,決定把不是根據畫面P2而是根據畫面P3的圖象數據而暫時決定的量化閾值和霍夫曼代碼作為對畫面P1的圖象數據所優(yōu)化的量化閾值和霍夫曼代碼。
接著,當從步驟ST7移到步驟ST4時,在步驟ST4中,決定把不是根據畫面P3而是根據畫面P4的圖象數據而暫時決定的量化閾值和霍夫曼代碼作為對畫面P1的圖象數據所優(yōu)化的量化閾值和霍夫曼代碼。
「第三實施例的變形例2」在上述第三實施例的構成中,把畫面P1分割成(16行×16行)的256個塊Ba,但也可以把畫面P1分割成縱r個橫s個(r行×s行。r,s是自然數)的塊Ba。而且,在此情況下,塊Ba必須把宏塊作為單位來進行設定。
「第三實施例的變形例3」在上述第三實施例的構成中,用(4行×4行)的16個塊Ba構成畫面P2,用(8行×8行)的64個塊Ba構成畫面P3,用(12行×12行)的144個塊Ba構成畫面P4,但是,構成各畫面P2~P4的塊Ba的數量可以設定為除此之外的值。
例如,用(8行×8行)的塊Ba構成畫面P2,用(12行×12行)的塊Ba構成畫面P3,省去畫面P4。在此情況下,省去了步驟ST5,步驟ST7的處理,在步驟ST3NO的情況下,移到步驟ST8。
而且,用(2行×2行)的塊Ba構成畫面P2,用(4行×4行)的塊Ba構成畫面P3,用(8行×8行)的塊Ba構成畫面P4,再加上由(12行×12行)的144個塊Ba所構成的畫面P5。在此情況下,在步驟ST7中,當壓縮誤差E3超過允許值時,求出畫面P5的圖象數據的代碼量SP5,同時,根據畫面P5的圖象數據暫時決定量化閾值和霍夫曼代碼。接著,算出各畫面P4,P5的圖象數據之間的壓縮誤差E4,在壓縮誤差E4為允許值以內時,移到步驟ST4,當超過允許值時,移到步驟ST8。
而且,構成各畫面P2~P4的塊Ba的縱橫數可以是不同的,例如,可以用(6行×4行)的塊Ba構成畫面P2,用(8行×10行)的塊Ba構成畫面P3,用(14行×12行)的塊Ba構成畫面P4。
「第三實施例的變形例4」如圖10所示的那樣,把畫面P1分割為在縱橫上每隔3個(3行×3行)的9個區(qū)域Bb,把該區(qū)域Bb分割為在縱橫上每隔16個(16行×16列)的256個塊Ba。而且,與上述第三實施例的構成相同,在每個區(qū)域Bb中,進行與步驟ST1~ST5、步驟ST7、步驟ST8相同的處理,由此,在各個區(qū)域Bb中決定量化閾值和霍夫曼代碼。
在此情況下,僅對于壓縮誤差E2超過允許值的區(qū)域Bb,進行步驟ST5的處理,僅對于壓縮誤差E3超過允許值的區(qū)域Bb,進行步驟ST8的處理。因此,當壓縮誤差E2為允許值以內的區(qū)域Bb較多時以及當壓縮誤差E3為允許值以內的區(qū)域Bb較多時,如上述第三實施例那樣,與未把畫面P1分割為區(qū)域Bb的情況相比,在量化閾值和霍夫曼代碼的最終決定中需要的時間變短,能夠進一步提高上述第三實施例的效果。
而且,并不僅限于把畫面P1分割為(3行×3行)的9個區(qū)域Bb,也可以把畫面P1分害為縱p個橫q個(p行×q行。p,q為自然數)的區(qū)域Bb。
「第三實施例的變形例5」JPEG核心電路102和控制核心電路3不僅可以用在電子靜像照相機中,也可以用于CD-ROM系統(tǒng)等的圖象數據的編碼器。
「第三實施例的變形例6」JPEG核心電路102和控制核心電路3的構成不僅可以用在JPEG編碼器中,也可以用于MPEG編碼器。如上述那樣,MPEG方式是把MC與JPEG方式相結合的技術,MPEG編碼器是在JPEG編碼器(DCT電路121、量化電路122、霍夫曼編碼電路123)上附加MC電路而構成的。
「第三實施例的變形例7」可以把第三實施例的構成與第一實施例或者第二實施例的構成同時使用,也可以同時使用第一實施例~第三實施例的全部構成。在此情況下,能夠得到同時使用的各個實施例的相疊加的效果。
權利要求
1.一種用于壓縮圖象數據的圖象壓縮裝置(20),包括離散余弦變換電路(121),對構成一幅畫面的圖象的圖象數據進行二維的離散余弦變換,而生成離散余弦變換系數;量化電路(122),參照包含在預先設定的量化表中的量化閾值來對由上述離散余弦變換電路所提供的離散余弦變換系數進行量化;霍夫曼編碼電路(123),參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由上述量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據;代碼量計數器(124),對上述霍夫曼編碼電路生成的壓縮圖象數據的代碼量進行計數;控制電路(3),在上述代碼量計數器計數的壓縮圖象數據的代碼量變?yōu)轭A定值以下之前,一邊變更由上述量化閾值和上述霍夫曼代碼組成的參數的設定,一邊重復進行由上述離散余弦變換電路和上述量化電路以及上述霍夫曼編碼電路所進行的壓縮處理,由此,決定最佳的上述參數來使壓縮圖象數據的代碼量為預定值以下,上述控制電路把上述一幅畫面的圖象分割成多個塊,一邊變更從上述多塊中選擇的塊數一邊選擇塊,對選擇的塊的圖象數據反復進行上述壓縮處理,由此,決定上述最佳參數。
2.根據權利要求1所述的圖象壓縮裝置,其特征在于,上述控制電路,i)對從上述塊中選擇預定的塊而構成的第一塊群的圖象數據反復進行上述壓縮處理,由此,生成第一壓縮圖象數據,同時,求出對第一塊群的圖象數據進行優(yōu)化的上述參數,ii)對從上述第一塊群中選擇多塊而構成的第二塊群的圖象數據反復進行上述壓縮處理,由此,生成第二壓縮圖象數據,同時,求出對第二塊群的圖象數據進行優(yōu)化的上述參數,iii)根據第一塊群和第二塊群的塊數,根據第一壓縮圖象數據和第二壓縮圖象數據的代碼量算出兩者的壓縮誤差,當上述壓縮誤差在允許值以內時,把從上述一幅畫面的圖象的圖象數據所生成的壓縮圖象數據與第一壓縮圖象數據的壓縮誤差視為允許值以內,決定對第一塊群或者第二塊群的圖象數據進行優(yōu)化的上述參數來作為上述最佳參數。
3.根據權利要求1所述的圖象壓縮裝置,其特征在于,上述控制電路,把上述一幅畫面的圖象分割成多個區(qū)域,把各個上述區(qū)域分割成上述多塊,一邊在每個區(qū)域中變更從各個區(qū)域的塊中選擇的塊數,一邊選擇預定的塊,對選擇的塊的圖象數據反復進行上述壓縮處理,由此,在每個區(qū)域中決定上述最佳參數。
4.根據權利要求1所述的圖象壓縮裝置,其特征在于,上述控制電路,i)把上述將要壓縮的一幅畫面的圖象分割成多塊,采用每一畫面均等地進行抽出的規(guī)則來從上述多塊中抽出預定的塊,來生成抽樣圖象數據,ii)由上述離散余弦變換電路和上述量化電路以及上述霍夫曼編碼電路對上述抽樣圖象數據進行處理,決定最佳的上述參數來使將要壓縮的一幅畫面的圖象的壓縮后的圖象數據的代碼量為上述預定值以下。
5.一種用于壓縮圖象數據的圖象壓縮裝置(20),包括編碼器(102),對所輸入的圖象數據進行壓縮并進行編碼;控制電路(3),通過上述編碼器來對抽樣圖象數據進行處理,決定最佳壓縮參數以使所壓縮的一幅畫面的圖象的壓縮后的圖象數據的代碼量為預定值以下,上述控制電路,把上述將要進行壓縮的一幅畫面的圖象分割成多個塊,采用每一畫面均等地進行抽出的規(guī)則來從上述多塊中抽出預定的塊,來生成上述抽樣圖象數據。
6.根據權利要求5所述的圖象壓縮裝置,其特征在于,進一步包括代碼量計數器(124),對由上述編碼器所生成的壓縮圖象數據的代碼量進行計數。
7.根據權利要求5所述的圖象壓縮裝置,其特征在于,上述控制電路每隔預定間隔從上述多塊中抽出預定的塊,來生成上述抽樣圖象數據。
8.根據權利要求5所述的圖象壓縮裝置,其特征在于,上述控制電路每隔預定間隔從上述多塊中抽出相鄰的塊群,來生成上述抽樣圖象數據。
9.根據權利要求5所述的圖象壓縮裝置,其特征在于,上述控制電路,對從上述多塊中抽出預定塊而構成的第一塊群的抽樣圖象數據進行上述壓縮處理,由此,生成第一壓縮圖象數據,同時,求出對上述第一塊群的抽樣圖象數據進行優(yōu)化的上述壓縮參數,對從上述第一塊群有規(guī)則地抽出多個塊而構成的第二塊群的抽樣圖象數據進行上述壓縮處理,由此,生成第二壓縮圖象數據,同時,求出對第二塊群的抽樣圖象數據進行優(yōu)化的上述壓縮參數,根據第一塊群和第二塊群的塊數,從第一壓縮圖象數據和第二壓縮圖象數據的代碼量算出兩者的壓縮誤差,當上述壓縮誤差在允許值以內時,把從上述一幅畫面的圖象的圖象數據所生成的壓縮圖象數據與第一壓縮圖象數據的壓縮誤差視為允許值以內,決定對第一塊群或者第二塊群的圖象數據進行優(yōu)化的壓縮參數來作為上述最佳壓縮參數。
10.根據權利要求5所述的圖象壓縮裝置,其特征在于,上述編碼器包括離散余弦變換電路(121),對構成一幅畫面的圖象的圖象數據進行離散余弦變換,而生成離散余弦變換系數;量化電路(122),參照包含在預先設定的量化表中的量化閾值來對由上述離散余弦變換電路所提供的離散余弦變換系數進行量化;霍夫曼編碼電路(123),參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由上述量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據。
11.根據權利要求10所述的圖象壓縮裝置,其特征在于,上述壓縮參數至少包含上述量化閾值和霍夫曼代碼之一。
12.一種用于壓縮圖象數據的圖象壓縮裝置(1),包括離散余弦變換電路(121),對構成一幅畫面的圖象的圖象數據進行二維的離散余弦變換,而生成離散余弦變換系數;量化電路(122),參照包含在預先設定的量化表中的量化閾值來對由上述離散余弦變換電路所提供的離散余弦變換系數進行量化;霍夫曼編碼電路(123),參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由上述量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據;代碼量計數器(124),對上述霍夫曼編碼電路生成的壓縮圖象數據的代碼量進行計數;霍夫曼解碼電路(131),參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對上述霍夫曼編碼電路生成的壓縮圖象數據進行可變長度解碼,由此生成擴展圖象數據;逆量化電路(132),參照包含在預先設定的量化表中的量化閾值來對上述霍夫曼解碼電路生成的擴展圖象數據進行逆量化,由此,生成離散余弦變換系數,把所生成的離散余弦變換系數返回上述量化電路,上述量化電路參照包含在預先設定的量化表中的量化閾值來對從上述逆量化電路所返回的離散余弦變換系數進行量化;控制電路(3),在上述代碼量計數器計數的壓縮圖象數據的代碼量變?yōu)轭A定值以下之前,一邊變更由上述量化閾值和霍夫曼代碼組成的參數的設定,一邊對上述量化電路和上述霍夫曼編碼電路以及上述霍夫曼解碼電路重復進行由上述逆量化電路所進行的處理,由此,決定最佳的上述參數來使壓縮圖象數據的代碼量為預定值以下。
13.根據權利要求12所述的圖象壓縮裝置,其特征在于,上述逆量化電路在參照包含在上述量化表中的量化閾值時,使用在由上述量化電路所進行的上一次量化中所參照的量化閾值來作為量化閾值。
14.根據權利要求12所述的圖象壓縮裝置,其特征在于,上述霍夫曼編碼電路在參照包含在上述霍夫曼表中的霍夫曼代碼時,使用在由上述霍夫曼編碼電路在上一次可變長度編碼中所參照的霍夫曼代碼來作為霍夫曼代碼。
15.根據權利要求12所述的圖象壓縮裝置,其特征在于,進一步包括存儲器(6),存儲上述霍夫曼編碼電路生成的壓縮圖象數據,讀出存儲的圖緣數據并傳送給上述霍夫曼解碼電路。
16.根據權利要求12所述的圖象壓縮裝置,其特征在于,進一步包括幀緩沖器(105),存儲上述上述一幅畫面的圖象的圖象數據,讀出存儲的圖象數據并傳送給上述離散余弦變換電路。
17.一種用于壓縮圖象數據的圖象壓縮裝置(11),包括離散余弦變換電路(121),對構成一幅畫面的圖象的圖象數據進行二維的離散余弦變換,而生成離散余弦變換系數;量化電路(122),使用包含在預先設定的量化表中的量化閾值來對由上述離散余弦變換電路所提供的離散余弦變換系數進行量化;霍夫曼編碼電路(123),參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對由上述量化電路所量化的離散余弦變換系數進行可變長度編碼,由此生成壓縮圖象數據;代碼量計數器(124),對上述霍夫曼編碼電路生成的壓縮圖象數據的代碼量進行計數;霍夫曼解碼電路(131),參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對上述霍夫曼編碼電路生成的壓縮圖象數據進行可變長度解碼,由此,生成擴展圖象數據,把上述擴展圖象數據返回霍夫曼編碼電路,上述霍夫曼編碼電路參照包含在預先設定的霍夫曼表中的霍夫曼代碼來對從上述霍夫曼解碼電路所返回的擴展圖象數據進行可變長度編碼;控制電路(3),在上述代碼量計數器計數的壓縮圖象數據的代碼量變?yōu)轭A定值以下之前,一邊變更上述霍夫曼代碼的設定,一邊重復進行由上述霍夫曼編碼電路和上述霍夫曼解碼電路所進行的處理,由此,決定最佳的上述霍夫曼代碼來使壓縮圖象數據的代碼量為預定值以下。
18.根據權利要求17所述的圖象壓縮裝置,其特征在于,上述霍夫曼編碼電路在參照包含在上述霍夫曼表中的霍夫曼代碼時,使用在由上述霍夫曼編碼電路在上一次可變長度編碼中所參照的霍夫曼代碼來作為霍夫曼代碼。
19.根據權利要求17所述的圖象壓縮裝置,其特征在于,進一步包括存儲器(6),存儲上述霍夫曼編碼電路生成的壓縮圖象數據,讀出存儲的圖象數據并傳送給上述霍夫曼解碼電路。
20.根據權利要求19所述的圖象壓縮裝置,其特征在于,進一步包括幀緩沖器(105),存儲上述一幅畫面的圖象的圖象數據,讀出存儲的圖象數據并傳送給上述離散余弦變換電路。
全文摘要
霍夫曼編碼電路123生成的壓縮圖象數據的代碼量為隨畫質所規(guī)定的最大值以下,在量化閾值和霍夫曼代碼被決定之前,以圖象保持RAM6→霍夫曼解碼電路131→逆量化電路132→量化電路122→霍夫曼編碼電路123的路徑重復進行數據傳送。每當該重復進行時,把在與量化電路122和霍夫曼編碼電路123相對應的第一RAM4a的表中所包含的量化閾值和第二RAM5a的表中所包含的霍夫曼代碼重新設定為稍大的值。在與逆量化電路132相對應的第三RAM4b的表中所設定的量化閾值使用在上一次的量化中在第一RAM4a中所設定的量化閾值。
文檔編號H04N7/30GK1273491SQ00108319
公開日2000年11月15日 申請日期2000年3月23日 優(yōu)先權日1999年3月23日
發(fā)明者岡田茂之 申請人:三洋電機株式會社