JP4531871B2 - 画像情報処理装置及び符号装置 - Google Patents
画像情報処理装置及び符号装置 Download PDFInfo
- Publication number
- JP4531871B2 JP4531871B2 JP29870297A JP29870297A JP4531871B2 JP 4531871 B2 JP4531871 B2 JP 4531871B2 JP 29870297 A JP29870297 A JP 29870297A JP 29870297 A JP29870297 A JP 29870297A JP 4531871 B2 JP4531871 B2 JP 4531871B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- data
- coefficient
- quantization
- output
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 18
- 238000013139 quantization Methods 0.000 claims description 201
- 238000000034 method Methods 0.000 claims description 139
- 230000008569 process Effects 0.000 claims description 130
- 238000012545 processing Methods 0.000 claims description 118
- 238000004364 calculation method Methods 0.000 claims description 110
- 238000006243 chemical reaction Methods 0.000 claims description 73
- 238000012856 packing Methods 0.000 claims description 66
- 238000012360 testing method Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 description 97
- 230000004913 activation Effects 0.000 description 24
- 238000007906 compression Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 230000006835 compression Effects 0.000 description 12
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 12
- 238000012546 transfer Methods 0.000 description 6
- 230000006837 decompression Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000001454 recorded image Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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 block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/18—Methods 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 a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods 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/192—Methods 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
- H04N19/194—Methods 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 involving only two passes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
【発明の属する技術分野】
本発明は、画像データの圧縮・伸長などを目的とした画像処理装置及び符号装置に関するものである。
【0002】
近年、デジタルスチルカメラ等の画像を処理するシステムには、画像データの圧縮・伸長を目的として例えばJPEG等の処理を行う符号・復号装置が含まれている。そして、符号・復号装置の処理時間と画像データの圧縮率は、デジタルカメラ等の操作性に影響を及ぼすため、高圧縮率で処理時間の短い符号・復号装置が要求されている。
【0003】
【従来の技術】
図11は、デジタルスチルカメラ等に用いられる符号・復号部のブロック図を示す。
【0004】
符号・復号回路91は、CCD等の図示しない撮像素子により得られる画像データをメモリ等に格納するために、所定の方式(例えばJPEG方式)により符号及び圧縮処理して圧縮画像データを作成する。また、符号・復号回路91は、予めメモり等に記憶された圧縮画像データをLCD等の図示しない表示装置に表示するために復号及び伸長処理して画像データを生成する。
【0005】
符号・復号回路91は、DCT演算部92、量子化部93、符号・復号検索部94、パッキング部95を備えている。CCD等の撮像素子により得られる画像データは、8×8画素のブロック単位に分割され、各ブロック毎にDCT演算部92に入力される。DCT演算部92は1ブロックの画像データを受け、その画像データを2次元離散コサイン変換(DCT)等の演算により直交変換したDCT係数データを作成する。DCT演算部92は、生成したDCT係数データをDCT係数バッファ96に格納し、量子化部93に終了信号を出力して1ブロック分の画像データの処理終了を通知する。
【0006】
量子化部93は、終了信号に応答してDCT係数バッファ96に格納された1ブロック分のDCT係数データを受け取る。量子化部93は、第1バッファ97aに格納された量子化係数データによりDCT係数データを除算演算して量子化データを生成する。量子化部93は、量子化データを符号・復号検索部94に出力する。
【0007】
符号・復号検索部94は、ハフマン符号化部であり、複数のハフマンデータが予め格納されたハフマンテーブル98を備えている。符号・復号検索部94は、量子化部93から入力した量子化データに基づいてハフマンテーブル98を検索し、量子化データを可変長符号データに変換する。符号・復号検索部94は、生成した可変長符号データをパッキング部95に出力する。
【0008】
パッキング部95は、入力される複数ブロックの可変長符号データをまとめて所定のビット長の固定長符号データを作成する。この固定長符号データは、圧縮画像データとして図示しないメモリに格納される。これは、メモリに対するデータの入出力が所定のビット長にて行われるためである。
【0009】
上記の符号・復号回路91は、CPU等の制御回路により制御される。制御回路は、2度固定長符号データを生成する2パス処理を行うように符号・復号回路91を制御する。このとき、制御回路は、1パス目に生成された1画面分の固定長符号データのデータ量に基づいて、画像の状態に最適な第2の量子化係数データを作成して第2バッファ97bに格納する。量子化部93は、2パス目に第2バッファ97bに格納された第2の量子化係数データを用いてDCT係数データから量子化データを生成する。
【0010】
2パス目に生成された量子化データは、画像の状態に最適に対応しているため、この量子化データに基づいて符号・復号検索部94,パッキング部95を介して生成される1画面分の固定長符号データのデータ量が1パス目に比べて少なくなる。このことは、画像データのデータ量に対する圧縮画像データのデータ量の比率である圧縮率を高め、圧縮画像データを格納するメモリの使用量を低減するうえで有効である。使用メモリの低減は、同じ容量のメモリで格納可能な画面数を増加させる。
【0011】
また、各部91〜94は、ブロック単位の画像データをパイプライン動作して圧縮処理を実行する。例えば、量子化部93が1ブロック分のDCT係数データを量子化しているとき、DCT演算部92は次の1ブロック分の画像データをDCT演算してDCT係数データを生成する。この構成により、1画面分の画像データ全体の処理時間を短縮する。
【0012】
【発明が解決しようとする課題】
ところで、上記の2パス処理による圧縮処理に要する処理時間は、デジタルスチルカメラ等の操作性に影響を与える。デジタルカメラは、圧縮処理が終了しないと次の画像データに対する圧縮処理を行うことができない。即ち、圧縮処理における処理時間は、次に撮影可能となるまでの撮影間隔と等価となる。そのため、処理時間が長くなると、次に次に撮影可能となるまでに長時間を要するため、操作性が悪くなるという問題がある。
【0013】
本発明は上記問題点を解決するためになされたものであって、その目的は、圧縮率を低下させることなく処理時間の短縮を図ることができる画像情報処理装置及び符号装置を提供することにある。
【0014】
【課題を解決するための手段】
図1は請求項1に記載の発明の原理説明図である。即ち、画像情報処理装置は、変換部1、入出力部2、量子化部3、係数演算部4、記憶部5、及び、制御部6を備える。変換部1は、ブロック単位の画像データに対してブロック単位の直交変換を施して変換係数を生成する。量子化部3は、符号処理の1パス目には予め設定された第1量子化係数を用いて変換係数を量子化した第1符号データを生成し、2パス目には第2量子化係数を用いて変換係数を量子化した第2符号データを生成する。係数演算部4は、第1符号データに基づいて、画像の状態に対応した第2量子化係数を演算する。入出力部2には変換係数を少なくとも1画面分記憶する記憶部5が接続される。入出力部2は、変換部1と量子化部3の間に接続されている。制御部6は、入出力部2を制御して、符号処理の1パス目には変換部1が出力するブロック単位の変換係数を順次記憶部5に出力させて該記憶部5に記憶させる。制御部6は、符号処理の2パス目には記憶部5に記憶させブロック単位で読み出した変換係数を量子化部3に出力させる。
【0015】
また、前記ブロック単位の変換係数を1ブロック分記憶する係数バッファを前記入出力部に接続し、前記変換部は生成した前記ブロック単位の変換係数を前記係数バッファに格納し、前記量子化部は前記係数バッファからジグザグスキャンにて前記変換係数を読み出し、前記制御部は、前記量子化部の読み出しに先立って、符号処理の1パス目には前記係数バッファに格納された前記変換係数を読み出して前記記憶部に格納し、2パス目には前記記憶部からブロック単位で読み出した前記変換係数を前記係数バッファに格納するようにした。
【0016】
請求項2に記載の発明は、請求項1に記載の画像情報処理装置において、前記制御部は、符号処理の2パス目に前記変換部の動作を停止させるようにした。
【0017】
請求項3に記載の発明は、請求項1に記載の画像情報処理装置において、前記変換部は、保持した情報を前記量子化部に通信するための制御回路を備え、前記制御部は、符号処理の2パス目に前記変換部のうち前記制御回路を除く部分の動作を停止させるようにした。
【0018】
請求項4に記載の発明は、請求項1乃至3のうちの何れか1項に記載の画像情報処理装置において、前記量子化部が生成する量子化データを符号検索処理して可変長符号データを出力する符号検索部と、前記1又は複数の可変長符号データから固定長符号データを生成するパッキング部とを備え、前記係数演算部は、前記パッキング部の出力する固定長符号データに基づいて前記第2量子化係数を演算するようにした。
【0019】
請求項5に記載の発明は、請求項1乃至4のうちの何れか1項に記載の画像情報処理装置において、前記変換部は、該変換部内の信号を出力するテスト回路を備え、前記制御部は、前記テスト回路の出力する信号に基づいて、前記変換部の故障を判断するようにした。
【0020】
請求項6に記載の発明は、1画面分の画像データを複数の画素からなる複数のブロックに分割し、各ブロック毎にJPEG方式により圧縮した符号データを生成する符号処理を2度繰り返す2パス処理して画像の状態に適したデータ量の符号データを生成するために備えられる符号装置であって、前記画像データをブロック単位で順次入力し、該画像データに対して直交変換を施してブロック単位の変換係数を生成する変換部と、1パス目には予め設定された第1量子化係数を用いて前記変換係数を量子化した第1符号データを生成し、2パス目には前記第1符号データに基づいて演算された、画像の状態に対応した第2量子化係数を用いて前記変換係数を量子化した第2符号データを生成する量子化部とを備えた符号装置において、外部には前記変換係数を少なくとも1画面分記憶する記憶部が接続され、前記変換部と量子化部の間には入出力部が接続され、前記入出力部は、外部から入力される制御信号に基づいて、符号処理の1パス目には前記変換部が出力するブロック単位の変換係数を前記記憶部に出力し、符号処理の2パス目には前記記憶部からブロック単位で読み出される前記変換係数を量子化部に出力するようにした。
【0021】
また、前記入出力部に接続され、前記ブロック単位の変換係数を1ブロック分記憶する係数バッファを備え、前記変換部は生成した前記ブロック単位の変換係数を前記係数バッファに格納し、前記量子化部は前記係数バッファからジグザグスキャンにて前記変換係数を読み出し、前記入出力部は、前記制御信号に基づいて、前記量子化部の読み出しに先立って、符号処理の1パス目には前記係数バッファから読み出された前記変換係数を前記記憶部に出力し、2パス目には前記記憶部からブロック単位で読み出された前記変換係数を前記係数バッファに出力するようにした。
【0022】
請求項7に記載の発明は、請求項6に記載の符号装置において、前記変換部は、外部から入力される制御信号に基づいて、符号処理の2パス目に前記変換部の動作を停止するようにした。
【0023】
請求項8に記載の発明は、請求項6に記載の符号装置において、前記変換部は、保持した情報を前記量子化部に通信するための制御回路を備え、外部から入力される制御信号に基づいて符号処理の2パス目に前記制御回路を除く部分の動作を停止するようにした。
【0024】
請求項9に記載の発明は、請求項6乃至8のうちの何れか1項に記載の符号装置において、前記量子化部が生成する量子化データを符号検索処理して可変長符号データを出力する符号検索部と、前記1又は複数の可変長符号データから固定長符号データを生成するパッキング部とを備えた。
【0025】
請求項10に記載の発明は、請求項6乃至9のうちの何れか1項に記載の符号装置において、前記変換部は、外部から入力されるテストモード信号に基づいて該変換部内の信号を出力するテスト回路を備えた。
【0026】
(作用)
従って、請求項1に記載の発明によれば、入出力部2は、制御部6により制御され、符号処理の1パス目には変換部1が出力する変換係数を記憶部5に出力し、2パス目には記憶部5から読み出した変換係数を量子化部3に出力する。これにより、2パス目に変換部1を動作させる必要がなく、その分だけ処理時間が短くなる。
【0027】
また、入出力部には変換係数を少なくとも1ブロック分記憶する係数バッファが接続される。変換部は生成したブロック単位の変換係数を係数バッファに格納し、量子化部は係数バッファからジグザグスキャンにて変換係数を読み出し、制御部は、量子化部の読み出しに先立って、符号処理の1パス目には係数バッファに格納された変換係数を読み出して記憶部に格納し、2パス目には記憶部からブロック単位で読み出した変換係数を係数バッファに格納する。これにより、量子化部は係数バッファから変換係数を読み出せばよく、その読み出し動作が単純になる。
【0028】
請求項2に記載の発明によれば、制御部は、符号処理の2パス目に変換部の動作を停止させることにより、装置の消費電力が低減する。
請求項3に記載の発明によれば、変換部は、保持した情報を量子化部に通信するための制御回路を備える。制御部は、符号処理の2パス目に変換部のうち制御回路を除く部分の動作を停止させることにより、装置の消費電力が低減する。
【0029】
請求項4に記載の発明によれば、符号検索部は、量子化部が生成する量子化データを符号検索処理して可変長符号データを出力する。パッキング部は、1又は複数の可変長符号データから固定長符号データを生成する。そして、係数演算部は、パッキング部の出力する固定長符号データに基づいて、固定長符号データのデータ量を最適にする第2量子化係数を演算することができる。
【0030】
請求項5に記載の発明によれば、制御部は、変換部に備えられその変換部内の信号を出力するテスト回路の出力する信号に基づいて、変換部の故障を容易に判断できる。
【0031】
請求項6に記載の発明によれば、符号装置の外部には変換係数を少なくとも1画面分記憶する記憶部が接続され、変換部と量子化部の間には入出力部が接続される。入出力部は、外部から入力される制御信号に基づいて、符号処理の1パス目には変換部が出力するブロック単位の変換係数を記憶部に出力し、符号処理の2パス目には記憶部からブロック単位で読み出される変換係数を量子化部に出力する。これにより、2パス目に変換部を動作させる必要がなく、その分処理時間が短くなる。
【0032】
また、入出力部に接続され、変換係数を少なくとも1ブロック分記憶する係数バッファを備える。変換部は生成したブロック単位の変換係数を係数バッファに格納し、量子化部は係数バッファからジグザグスキャンにて変換係数を読み出す。そして、入出力部は、制御信号に基づいて、量子化部の読み出しに先立って、符号処理の1パス目には係数バッファから読み出された変換係数を記憶部に出力し、2パス目には記憶部からブロック単位で読み出された変換係数を係数バッファに出力する。これにより、量子化部は係数バッファから変換係数を読み出せば良く、量子化部の読み出し動作が単純になる。
【0033】
請求項7に記載の発明によれば、変換部は、外部から入力される制御信号に基づいて、符号処理の2パス目に変換部の動作を停止することにより、消費電力が低減する。
【0034】
請求項8に記載の発明によれば、変換部は、保持した情報を量子化部に通信するための制御回路を備える。そして、外部から入力される制御信号に基づいて符号処理の2パス目に制御回路を除く部分の動作を停止することにより、消費電力が低減する。
【0035】
請求項9に記載の発明によれば、符号検索部は量子化部が生成する量子化データを符号検索処理して可変長符号データを出力する。パッキング部は1又は複数の可変長符号データから固定長符号データを生成する。
【0036】
請求項10に記載の発明によれば、制御部は、変換部に備えられたテスト回路にテストモード信号を出力したときに、テスト回路から出力される変換部内部の信号に基づいてその変換部が故障か否かを容易に判断できる。
【0037】
【発明の実施の形態】
以下、本発明を具体化した一実施の形態を図2〜図9に従って説明する。
図2は、デジタルスチルカメラ等の画像情報処理装置11の概略構成を示すブロック図である。
【0038】
処理装置11は、CCD12、フレームメモリ13、LCD14、符号・復号部15、CPU16、記憶部としてのDCT係数メモリ19、フラッシュメモリ20を備えているまた、処理装置11は、画像専用バス21、システムバス22を備えている。画像専用バス21は、CCD12、フレームメモリ13、LCD14、符号・復号部15を相互に接続する。システムバス22は、符号・復号部15、CPU16、DCT係数メモリ19、フラッシュメモリ20を相互に接続する。
【0039】
CCD12は撮像素子であり、画像を取り込むために利用される。CCD12は、入射する画像の色調,濃淡等の情報に応じた画像データを生成する。1画面分の画像データは、CCD12から画像専用バス21を介してフレームメモリ13に転送される。
【0040】
フレームメモリ13は、少なくとも1画面分の画像データを格納する容量を持つ。フレームメモリ13は、CCD12又は符号・復号部15から画像専用バス21を介して入力される画像データを記憶する。LCD14は表示素子であり、フレームメモリ13に記憶された画像データを画像専用バス21を介して読み出し、画像を表示する。
【0041】
符号・復号部15は、所定の方式(本実施形態ではJPEG方式)により符号・復号処理(圧縮・伸長処理)を行うために備えられている。符号処理は、DCT演算処理、量子化処理、エントロピー符号化処理を含む。符号・復号部15は、画像データを符号処理して圧縮した圧縮データを生成する。
【0042】
即ち、符号・復号部15は、フレームメモリ13から画像専用バス21を介して画像データを所定の画素数(本実施形態では8×8画素)のブロック単位で読み出す。符号・復号部15は、読み出した画像データをDCT演算処理してDCT係数データを生成する。次に、符号・復号部15は、予め記憶した量子化係数データを用いてDCT係数データを量子化処理して量子化データを生成する。更に、符号・復号部15は、予め記憶した符号化係数データを用いて量子化データをエントロピー符号処理して圧縮データを生成する。圧縮データはフラッシュメモリ20に記録される。
【0043】
圧縮データは、処理に用いられる量子化係数データ,符号化係数データの情報を含む。画像データのデータ量に対する圧縮データのデータ量を圧縮率という。尚、エントロピー符号化処理の少なくとも一部をソフトウェアにて実施する、即ちCPU16が予め記憶された符号化のための処理プログラムデータに基づいて量子化データを圧縮データに変換する構成としても良い。
【0044】
符号・復号部15が行う復号処理は、エントロピー復号化処理、逆量子化処理、逆DCT演算処理を含む。符号・復号部15は、圧縮データを復号処理して伸長した画像データを生成する。
【0045】
即ち、符号・復号部15は、フラッシュメモリ20に記録された圧縮データをシステムバス22を介して読み出す。符号・復号部15は、読み出した圧縮データに含まれる符号化係数データを用いて圧縮データをエントロピー復号処理して量子化データを生成する。次に、符号・復号部15は、圧縮データに含まれる量子化係数データを用いて量子化データを逆量子化処理してDCT係数データを生成する。更に、符号・復号部15は、DCT係数を逆量子化処理して伸長データを生成する。尚、エントロピー復号処理の少なくとも一部をソフトウェアにて実施する、即ちCPU16が予め記憶された復号化のための処理プログラムデータに基づいて圧縮データを量子化データに変換する構成としても良い。
【0046】
伸長データは、画像専用バス21を介してフレームメモリ13に入力される。LCD14は、フレームメモリ13に記憶された伸長データに基づく画像を表示する。
【0047】
CPU16は、ROM17,RAM18を備えている。ROM17には、画像処理装置11のシステムプログラムデータが予め記憶される。RAM18は、システムプログラムデータに基づいて動作するCPU16の一時的なデータが格納される。
【0048】
システムプログラムデータは、図示しないレリーズボタンやモード切替スイッチ等の操作に対するCPU16の動作プログラムデータを含む。CPU16は、その動作プログラムデータに基づいて、画像処理装置11全体の制御を行う。その制御は、画像の記録、記録した画像の表示・消去等の動作を含む。
【0049】
上記システムプログラムデータは、符号・復号部15を制御するための制御プログラムデータを含む。画像を記録する場合、CPU16は、制御プログラムデータに基づいて、符号処理を行わせるための制御信号を符号・復号部15に出力する。画像を表示する場合、CPU16は、制御プログラムデータに基づいて、復号処理を行わせるための制御信号を符号・復号部15に出力する。
【0050】
符号・復号部15は、符号処理のための制御信号に応答して符号処理(圧縮処理)を実行する。符号・復号部15は、フレームメモリ13から8×8画素のブロック単位で画像データを読み込む。符号・復号部15は、読み込んだ画像データに対してJPEG方式に基づいた符号処理を施し圧縮画像データを作成する。その圧縮画像データはシステムバス22を介してフラッシュメモリ20に転送され、フラッシュメモリ20は転送された圧縮画像データを記録する。
【0051】
符号・復号部15は、復号処理のための制御信号に応答して復号処理(伸長処理)を実行する。符号・復号部15は、フラッシュメモリ20に記録されている圧縮画像データを読み出す。符号・復号部15は、読み出した圧縮画像データに対してJPEG方式に基づいた復号処理(伸長処理)を施し伸長画像データを作成する。その伸長画像データは画像専用バス21を介してフレームメモリ13に転送される。LCD14は、フレームメモリ13に記憶された伸長画像データに基づく画像を表示する。
【0052】
ROM17に予め記憶されたシステムプログラムデータは、量子化係数データを演算するための演算プログラムデータを含む。画像を記録する場合に、CPU16は、符号・復号部15に対して符号処理を2度実行する2パス処理を施すべく制御信号を出力する。1パス目において、符号・復号部15は、予め設定され記憶された第1量子化係数データを用いて符号処理を施し第1圧縮画像データを作成する。前記第1量子化係数データは、輝度成分、色差成分等に対応して設定される。本実施形態では、第1量子化係数データは、複数の画像情報による平均値等に設定され記憶されている。
【0053】
CPU16は、演算プログラムに基づいて、1パス目に符号・復号部15にて作成された圧縮画像データのデータ量に基づいて第2量子化係数データを演算する。この第2量子化係数データは、その時に処理する画像の状態に対応している。画像の状態は、圧縮画像データのデータ量に影響を与える。即ち、同じ量子化係数データを用いて圧縮処理を実施しても、その時々の画像の濃淡、画面構成等の状態によって圧縮画像データのデータ量に差が生じる。画像の状態は、撮影毎に異なるため、予め最適な量子化係数データを用意することは難しい。
【0054】
従って、CPU16は、1画面毎に、所定の第1量子化係数データを用いて画像データに符号処理を施して圧縮画像データを作成することにより、圧縮画像データからその時の画像の状態を判断する。そして、CPU16は、画像の状態に対応した第2量子化係数データを算出し、その演算結果の第2量子化係数データを符号・復号部15に格納する。符号・復号部15は、2パス目に第2量子化係数データを用いて再度符号処理を施して新たな圧縮画像データを生成する。このようにして生成された圧縮画像データのデータ量は画像に対して最適な量となる。そして、第2圧縮画像データのデータ量は、平均的な第1量子化係数データを用いた第1圧縮画像データのデータ量に比べて少なくなる。尚、第2量子化係数データを演算するための専用の演算部が備えられても良い。
【0055】
DCT係数メモリ19は、少なくとも1画面分のDCT係数データを格納する容量を持つ。1パス目の処理において、符号・復号部15は、画像データをブロック単位で入力し、DCT演算処理,量子化処理,エントロピー符号化処理の各処理をパイプライン処理して圧縮画像データを生成する。
【0056】
即ち、図8(a)に示すように、先ず、符号・復号部15は、1ブロック目の画像データに対してDCT演算処理を行い、DCT係数データを生成する。次に、符号・復号部15は、1ブロック目のDCT係数データに対する量子化処理と、2ブロック目の画像データに対するDCT演算処理を平行して実行する。量子化処理はDCT演算処理に比べて処理時間が短いので、早く終了する。そのため、符号・復号部15は、2ブロック目のDCT演算処理を行っている間に1ブロック目のデータに対する符号・復号検索処理を平行して実行する。
【0057】
符号・復号検索処理はDCT演算処理に比べて処理時間が短い。更に、符号・復号検索処理は、DCT演算処理に比べて早く終了する。そのため、符号・復号部15は1ブロック目のデータに対するパッキング処理を平行して実行する。そして、このパッキング処理は、同時に実行しているDCT演算処理よりも早く終了する。そのため、符号・復号部15は、DCT演算の終了を待つ。そして、符号・復号部15は、2ブロック目の画像データに対するDCT演算処理が終了すると、3ブロック目の画像データに対するDCT演算処理と2ブロック目のデータに対する量子化以降の処理を並列に実行する。
【0058】
符号・復号部15は、DCT演算によってその時々に得られるブロック単位のDCT係数データをDCT係数メモリ19に格納する。1パス目の符号処理を終了すると、DCT係数メモリ19は1画面分のDCT係数データを格納する。
【0059】
2パス目の処理において、符号・復号部15は、DCT係数メモリ19に格納されたDCT係数データをブロック単位にて読み出し、その読み出したDCT係数データに対して量子化処理以降の各処理をパイプライン処理して圧縮データを生成する。この構成により、2パス目におけるDCT演算処理を省略することができるため、DCT演算処理にかかる時間はDCT係数データを読み出す時間だけとなる。DCT係数データの読み出しに必要な時間は、DCT演算処理を実行する時間に比べて非常に短い。このことは、パイプライン処理を実行するにあたり、DCT演算処理以外の処理における待ち時間が短くなる。
【0060】
即ち、図8(b)に示すように、先ず、符号・復号部15は、1ブロック目のDCT係数データをDCT係数メモリ19から読み出すDCT係数転送処理を実行する。次に、符号・復号部15は、1ブロック目のDCT係数データに対する量子化処理を実行する。そして、1ブロック目のデータに対する量子化処理を終了すると、符号・復号部15は、2ブロック目のDCT係数データの転送処理と1ブロック目のデータに対する符号・復号検索処理を平行して実行する。
【0061】
DCT係数転送処理は、符号・復号検索処理に比べて処理時間が短いので、転送処理が早く終了する。そのため、符号・復号部15は、1ブロック目のデータに対する符号・復号検索処理を行っている間に2ブロック目のデータに対する量子化処理を平行して実行する。従って、符号・復号部15は、1パス目の処理に比べて、量子化処理を開始する時間が早くなる。即ち、量子化処理の待ち時間が短くなるので、各処理を実行するまでの時間(サイクル)が短くなる。
【0062】
このようにして、符号・復号部15が実行する符号処理の2パス目にかかる処理時間は、1パス目にかかる処理時間に比べて短くなる。これにより、1画面分の画像データに対する符号処理の処理時間が短くなる。
【0063】
次に、符号・復号部15の構成を図3に従って詳述する。
図3に示すように、符号・復号部15は、変換部としてのDCT演算部31、量子化部32、符号・復号検索部33、パッキング部34、バス・インタフェース35を備えている。また、符号・復号部15は、画像バッファ36、DCT係数バッファ37、量子化係数バッファ38、符号バッファ39を備えている。更に、符号・復号部15は、複数の入出力部41〜46を備えている。
【0064】
DCT演算部31は、DCT演算処理,逆DCT演算処理を行うために設けられている。量子化部32は、量子化処理,逆量子化処理を行うために設けられている。量子化部32は、少なくとも1ブロック分のDCT係数を格納する容量のレジスタ32aを備えている。
【0065】
符号・復号検索部33は、エントロピー符号化処理,復号化処理を行うために設けられている。符号・復号検索部33は、少なくとも1ブロック分の量子化データを格納する容量のレジスタ33aと、複数の符号化係数データを格納する容量の記憶部33bを備えている。本実施形態では、符号化係数データは予め出現頻度に応じて可変長の符号を割り当ててあるハフマン符号データである。パッキング部34は、パッキング処理,逆パッキング処理を行うために設けられている。
【0066】
パッキング部34のパッキング処理は、符号・復号検索部33にて生成された可変長符号データを圧縮画像データとして効率よく図2のフラッシュメモリ20に格納するために行われる。可変長符号データは、0〜16ビットの任意のビット長を持つ。フラッシュメモリ20は、データの読み出し、書き込みを所定のデータ量(ビット数、例えば8ビット)にて行う。そのため、パッキング部34は、入力する複数の可変長符号データをまとめて所定のビット数のデータに成形する。逆に、パッキング部34の逆パッキング処理は、フラッシュメモリ20から読み出したデータを可変長符号データに分割する。この構成により、フラッシュメモリ20に対して効率の良いアクセスを行うことができる。
【0067】
バス・インタフェース35はシステムバス22に接続され、図2のCPU16,DCT係数メモリ19,フラッシュメモリ20との間でデータ、制御信号等の入出力を行うために設けられている。バス・インタフェース35には、各入出力部41〜46が接続されている。
【0068】
第1入出力部41は、DCT演算部31、量子化部32に接続されている。また、第1入出力部41には、少なくとも1ブロック分のDCT係数データを格納する容量を持つDCT係数バッファ37が接続されている。
【0069】
DCT演算部31と量子化部32は、第1入出力部41を介してパイプライン動作を制御するための制御信号、制御に必要なデータ等を通信する制御回路47a,47b(図6,9参照)を備えている。尚、図9に示すように、DCT演算部31,量子化部32と同様に、符号・復号検索部33は制御回路47cを、パッキング部34は制御回路47dを備えている。
【0070】
DCT演算部31と量子化部32の制御回路47a,47bは、パイプライン処理を実行するために互いに通信する。即ち、量子化部32は、DCT演算部31がDCT演算処理を行っている間、その演算終了を待機する。DCT演算部31は、DCT演算処理を終了すると、その演算結果であるDCT係数データを第1入出力部41を介してDCT係数バッファ37に格納する。DCT演算部31の制御回路47aは、第1入出力部41を介して量子化部32にDCT係数データの引き取りを要求する要求信号を出力する。量子化部32は、要求信号が入力されるまで待機する。
【0071】
量子化部32は、制御回路47bが入力する要求信号に応答してDCT係数バッファ37からDCT係数データを読み出す。即ち、量子化部32は、DCT係数バッファ37からジグザグスキャンにてDCT係数データを読み出し、レジスタ32aに格納する。量子化部32は、DCT係数データの引き取りを終了すると、制御回路47bから応答信号を第1入出力部41を介してDCT演算部31に出力する。DCT演算部31は、制御回路47aが入力する応答信号に応答して、次のブロックの画像データに対するDCT演算処理を開始する。
【0072】
また、第1入出力部41は、DCT演算部31と量子化部32の動作状態をCPU16が監視するために設けられている。このCPU16による監視は、復号処理の1パス目においては、DCT係数データを図2のDCT係数メモリ19に格納するためである。また、監視は、復号処理の2パス目においては、格納しておいたDCT係数データを用いて量子化以降の処理を行わせるためである。
【0073】
CPU16は、上記のDCT演算部31と量子化部32との間で通信される制御信号等を第1入出力部41からバス・インタフェース35とシステムバス22を介して入力する。CPU2は、入力した信号に基づいてDCT演算部31と量子化部32の動作を監視する。
【0074】
先ず、復号処理の1パス目における各部の動作について説明する。
CPU16は、DCT演算部31が引き取りのための要求信号を出力すると、バス・インタフェース35と先ず第1入出力部41を制御して量子化部32に引き取りのための要求信号が入力されるのを禁止する。この状態で、CPU16は、DCT係数バッファ37に格納された1ブロック分のDCT係数データを読み出し、DCT係数メモリ19に格納する。即ち、CPU16は、その時々のDCT係数データをDCT係数メモリ19に複写する。
【0075】
CPU16は、DCT係数メモリ19にDCT係数データの格納を終了すると、量子化部32に対して先に禁止しておいた引き取り要求信号に対応する疑似要求信号を量子化部32に出力する。量子化部32は、この疑似要求信号に応答してDCT係数データの読み出しを開始する。そして、量子化部32は、DCT係数データの引き取りを終了すると、応答信号を第1入出力部41を介してDCT演算部31に出力する。DCT演算部31は、応答信号に応答して、次のブロックの画像データに対するDCT演算処理を開始する。
CPU16等は、上記の処理を繰り返し実行する。これにより、1画面分のDCT係数データがDCT係数メモリ19に格納される。
【0076】
次に、復号処理の2パス目における各部の動作について説明する。
CPU16は、先ずDCT係数メモリ19に格納してあるDCT係数データをブロック単位にて読み出し、システムバス22,バス・インタフェース35,第1入出力部41を介してDCT係数バッファ37に格納する。そして、CPU16は、量子化部32にDCT係数データの引き取りの疑似要求信号を出力する。
【0077】
量子化部32は、疑似要求信号に応答してDCT係数バッファ37からDCT係数データを読み出し、レジスタ32aに格納する。量子化部32は、DCT係数データの読み出しを終了すると、応答信号を第1入出力部41に出力する。CPU16は、応答信号を入力し、次のブロックのDCT係数データをDCT係数バッファ37に格納する。
【0078】
CPU16等は、上記の処理を繰り返し実行する。これにより、DCT係数メモリ19に格納された1画面分のDCT係数データがブロック単位で読み出されて量子化以降の処理が行われる。
【0079】
このようにして、第1入出力部41にてDCT演算部31と量子化部32との通信を監視し、量子化部32がDCT係数データを引き取るのを一時的に禁止することにより、DCT係数バッファ37に格納されたDCT係数データをDCT係数メモリ19に格納することが確実にできる。そして、符号処理の2パス目において、DCT係数メモリ19に格納した1画面分のDCT係数データをブロック単位で読み出して量子化以降の処理を行うことができるため、DCT演算を行う必要がない。そのため、DCT演算処理が必要ない分だけ2パス目の処理時間を短縮することができる。しかも、量子化部32がDCT係数データを引き取るのを一時的に禁止するだけであるので、DCT演算部31と量子化部32の構成を変更することなく容易に行うことができる。
【0080】
第2入出力部42は、量子化部32と符号・復号検索部33の間に接続されている。符号・復号検索部33は、量子化部32の制御回路47bと第2入出力部42を介してパイプライン動作を制御するための制御信号、制御に必要なデータ等を通信する制御回路47cを備えている。
【0081】
量子化部32と符号・復号検索部33は、パイプライン処理を実行するために、制御回路47b,47cが第2入出力部42を介して互いに通信する。量子化部32は、量子化処理を終了すると、その処理結果である量子化データの引き取りを要求する信号を第2入出力部42を介して符号・復号検索部33に出力する。そして、量子化部32は、符号・復号検索部33がデータの受け取り可能な状態にあるとき、量子化データを含むデータを符号・復号検索部33に出力する。データには、量子化の際に使用した量子化係数データ等の付加情報を含む。
【0082】
符号・復号検索部33は、量子化部32から入力するデータをレジスタ33aに格納する。符号・復号検索部33は、量子化データの引き取りを終了すると、応答信号を量子化部32に出力する。量子化部32は、応答信号に応答して、次のブロックのDCT係数データに対する量子化処理を開始する。
【0083】
第3入出力部43は、符号・復号検索部33とパッキング部34の間に接続されている。パッキング部34は、符号・復号検索部33と第3入出力部43を介してパイプライン動作を制御するための制御信号、制御に必要なデータ等を通信する制御回路47dを備えている。
【0084】
符号・復号検索部33とパッキング部34は、パイプライン処理を実行するために、制御回路47c,47dが互いに通信する。符号・復号検索部33は、符号検索処理を終了すると、その演算結果である可変長符号化データの引き取りを要求する信号を第3入出力部43を介してパッキング部34に出力する。そして、符号・復号検索部33は、パッキング部34がデータの受け取り可能な状態にあるとき、可変長符号化データを含むデータをパッキング部34に出力する。このデータには、符号化の際に使用したハフマン符号データ等の付加情報を含む。
【0085】
パッキング部34は、符号・復号検索部33から入力するデータを格納する。パッキング部34は、データの引き取りを終了すると、応答信号を符号・復号検索部まに出力する。符号・復号検索部33は、応答信号に応答して、次のブロックの量子化データに対する符号検索処理を開始する。
【0086】
第1〜第3入出力部41〜43は、上記の各部31〜34間において情報の付加を可能にする。例えば、第3入出力部43は、符号・復号検索部33からパッキング部34に出力されるデータに対して図2のCPU16が情報を付加することを可能にする。
【0087】
画像データ及び符号・復号部15が復号処理にて生成するデータ、例えば、符号・復号検索部33にて生成される可変長符号データは、画像の輝度,色差等の画像情報に関する符号(MCU:Minimum Coded Unit)により構成される。これに対し、図2のフラッシュメモリ19に格納される圧縮画像データは、他の圧縮画像データを扱う装置への互換性を持つために、データの先頭,終了を示す情報や量子化,符号化処理に用いられる係数データの情報等の付加情報を含む必要がある。そのため、図9に示すように、CPU16は、データの流れを実線の矢印に示すように変更して付加情報を可変長符号データに付加する。
【0088】
CPU16は、バス・インタフェース35,第3入出力部43を制御して、符号・復号検索部33が出力する要求信号の伝達を禁止するとともに、パッキング部34が出力する応答信号に代わる疑似応答信号を符号・復号検索部33に出力させる。これにより、パッキング部34の状態に関わらず、符号・復号検索部33は生成した可変長符号データを出力する。
【0089】
CPU16は、符号・復号検索部33が出力する可変長符号データを第3入出力部43、バス・インタフェース35、システムバス22を介して入力する。CPU16は、入力した可変長符号データに対して、そのデータを構成する任意のMCU間に付加情報を付加した新たな符号データを生成する。尚、付加する情報は、予め設定されROM18等に格納されている。
【0090】
CPU16は、バス・インタフェース35,第3入出力部43を制御して、符号・復号検索部33が出力する要求信号に代わる疑似要求信号をパッキング部34に出力するとともに、その疑似要求信号に応答してパッキング部34が出力する応答信号の伝達を禁止する。これにより、符号・復号検索部33の状態に関わらず、パッキング部34はデータの入力が可能となる。
【0091】
CPU16は、新たな符号データをシステムバス22,バス・インタフェース35,第3入出力部43を介してパッキング部34に出力する。パッキング部34は、入力する新たな符号データに対してパッキング処理を実行する。
【0092】
このように構成することにより、付加情報を容易に付加することが可能となる。尚、CPU16は、各入出力部41〜43を適宜制御して、各入出力部41〜43を介して伝達されるデータに画像補正等の情報を付加するようにしてもよい。
【0093】
尚、復号処理の際の動作は、上記の符号処理の際と単にデータが転送される経路が逆である。即ち、パッキング部34は逆パッキング処理を実行して符号データを生成する。CPU16は、パッキン部34にて生成された符号データを入力し、その符号データから付加情報を除いた可変長符号データを符号・復号検索部33に出力する。符号・復号検索部33は、入力した可変長符号データに対して復号検索処理を実行して量子化データを生成する。
【0094】
また、第1〜第3入出力部41〜43は、上記各部31〜34が実行する処理の代替を可能にする。例えば、第2,第3入出力部42,43は、符号・復号検索部33が行う符号・復号検索処理をCPU16が行うことを可能にする。
【0095】
CPU16は、バス・インタフェース35,第2入出力部42を制御して、符号・復号検索部33が出力する応答信号に代わる疑似応答信号を量子化部32に出力させる。また、CPU16は、バス・インタフェース35,第3入出力部43を制御して、符号・復号検索部33が出力する要求信号に代わる疑似要求信号をパッキング部34に出力させる。これにより、符号・復号検索部33が動作していなくても、量子化部32とパッキング部34に対するデータ等の入出力が可能となる。即ち、データが伝達される経路が、図9の点線で示す経路となる。
【0096】
量子化部32は、疑似応答信号に応答して生成した量子化データを第2入出力部42に出力する。CPU16は、量子化データを第2入出力部42,バス・インタフェース35,システムバス22を介して入力する。CPU16は、入力した量子化データを、記憶した符号化のためのデータを用いて符号データを生成する。符号化のためのデータは、CPU16のRAM18,DCT係数メモリ19に設けた記憶領域、等に記憶される。
【0097】
CPU16は、生成した符号データをシステムバス22,バス・インタフェース35,第3入出力部43を介してパッキング部34に出力する。パッキング部34は、第3入出力部43から入力する疑似要求信号に応答し、第3入出力部43から出力される符号データを入力する。そして、パッキング部34は、入力した符号データに対してパッキング処理を実行する。
【0098】
このことは、符号・復号検索部33に格納されたハフマン符号化データ以外のデータを用いた符号・復号検索処理を可能とする。即ち、ハフマン符号化データ以外のデータを予め記憶する。この記憶したデータを用いてCPU16が量子化データに対して符号検索処理を行う。また、CPU16は、パッキング部34から符号化の際に使用したデータを付加情報として予め入力しRAM18等に記憶する。そして、CPU16は、記憶した符号化のためのデータを用いて復号検索処理を実行する。
【0099】
尚、各入出力部41〜43を適宜制御して、各部31〜34のいずれか1つ又は任意の組み合わせにて行う処理をCPU16に代替させてもよい。例えば、第1入出力部41を制御して、DCT演算部31が行うDCT演算処理をCPU16に代替させる。第1,第2入出力部41,42を制御して、量子化部32が行う量子化処理をCPU16に代替させる。第3入出力部43を制御して、パッキング部34が行うパッキング処理をCPU16に代替させてもよい。
【0100】
尚、復号処理の際の動作は、上記の符号処理の際と単にデータが転送される経路が逆である。即ち、パッキング部34は逆パッキング処理を実行して符号データを生成する。CPU16は、パッキング部34にて生成された符号データを入力し、その符号データに対して復号処理を実行して量子化データを生成する。量子化部32はCPU16にて生成された量子化データを入力し、その量子化データに対して逆量子化処理を実行してDCT係数を生成する。
【0101】
また、符号・復号処理において、各入出力部41〜43を適宜制御して、上記の符号処理の間に付加情報を付加することと、処理を代替させることを同時に行う構成としてもよい。
【0102】
第4入出力部44は、DCT演算部31、画像専用バス21に接続されている。また、第4入出力部44は、少なくとも1ブロック分の画像データを格納する容量を持つ画像バッファ36に接続されている。
【0103】
第4入出力部44は、図2のCPU16から入力する制御信号に応答し、画像バッファ36、図2のフレームメモリ13に対して画像データのアクセスを行う。符号処理を実行する時、第4入出力部44は、画像専用バス21を介して図2のフレームメモリ13に格納された画像データをブロック単位にて読み出し、画像バッファ36に格納する。
【0104】
次に、第4入出力部44は、画像バッファ36に対するDCT演算部31のアクセスを許容する。DCT演算部31は、画像バッファ36をアクセスし、その画像バッファ36に格納された画像データに対してDCT演算を施してDCT係数データを生成する。
【0105】
復号処理を実行する時、第4入出力部44は、画像バッファ36に対するDCT演算部31のアクセスを許容する。DCT演算部31は、画像バッファ36をアクセスし、逆DCT演算を施して生成した伸長画像データを画像バッファ36に格納する。次に、第4入出力部44は、DCT演算部31に対してアクセスを禁止する。そして、第4入出力部44は、画像バッファ36に格納された伸長画像データを読み出し、画像専用バス21を介して図2のフレームメモリ13に格納する。このような処理が繰り返し実行され、フレームメモリ13には1画面分の伸長画像データが格納される。
【0106】
第5入出力部45は、量子化部32に接続されている。また、第5入出力部45には、量子化係数バッファ38が接続されている。量子化係数バッファ38は、第1量子化係数データを格納する第1バッファ38aと、第2量子化係数データを格納する第2バッファ38bとを備えている。第1バッファ38aは不揮発性メモリよりなり、予め設定された第1量子化係数データが格納される。第2バッファ38bは書き換え可能なメモリよりなり、図2のCPU16により演算された第2量子化係数データがシステムバス22、バス・インタフェース35、第5入出力部45を介して格納される。
【0107】
第5入出力部45は、図2のCPU16から入力する制御信号に応答し、量子化部32に第1バッファ38aと第2バッファ38bを切り替えて接続する。
符号処理の1パス目において、図2のCPU16は、第1バッファ38aに格納された第1量子化係数データを利用するための制御信号を出力する。第5入出力部45は、CPU16から入力される制御信号に応答し、量子化部32に第1バッファ38aを接続する。量子化部32は、第1バッファ38aから第1量子化係数データを読み出し、そのデータに基づいて、レジスタ32aに格納したDCT係数データを量子化処理して1パス目の量子化データを生成する。
【0108】
符号処理の2パス目において、CPU16は、第2バッファ38bに格納した第2量子化係数データを利用するための制御信号を出力する。第5入出力部45は、CPU16から入力される制御信号に応答し、量子化部32に第2バッファ38bを接続する。量子化部32は、第2バッファ38bから第2量子化係数データを読み出し、そのデータに基づいて、レジスタ32aに格納したDCT係数データを量子化処理して2パス目の量子化データを生成する。
【0109】
第6入出力部46は、パッキング部34に接続されている。また、第6入出力部46には、符号バッファ39が接続されている。符号バッファ39は、1ブロック分の可変長符号データを格納する容量を持つ。
【0110】
第6入出力部46は、図2のCPU16から入力する制御信号に応答し、符号バッファ39に対するアクセスを行う。符号処理を実行する時、第6入出力部46は、符号バッファ39に対するパッキング部34のアクセスを許容する。パッキング部34は、符号バッファ39をアクセスし、符号・復号検索部33から入力される複数の可変長符号データを所定のデータ量にまとめた圧縮画像データを符号バッファ39に格納する。
【0111】
次に、第6入出力部46は、パッキング部34のアクセスを禁止する。そして、第6入出力部46は、符号バッファ39に格納された圧縮画像データを読み出し、バス・インタフェース35とシステムバス22を介してフラッシュメモリ19に格納する。このような処理が繰り返し実行され、フラッシュメモリ19には、1画面分の圧縮画像データが格納される。
【0112】
復号処理を実行する時、第6入出力部46は、システムバス22とバス・インタフェース35を介してフラッシュメモリ19に格納された圧縮画像データを第2のブロック単位にて読み出し、符号バッファ39に格納する。次に、第6入出力部46は、符号バッファ39に対するパッキング部34のアクセスを許容する。パッキング部34は、符号バッファ39の圧縮画像データをアクセスし、圧縮画像データを複数の可変長符号データに分割する。
【0113】
次に、バス・インタフェース35と第1入出力部41の構成を図4,5に従って説明する。
図4,5は、バス・インタフェース35、第1入出力部41の一部回路図である。図4は、DCT演算部35と量子化部32の間で通信される信号を監視及び制御するための回路部分を示し、図5はDCT係数バッファ37に対する入力信号を選択するための回路部分を示す。
【0114】
バス・インタフェース35は、第1入出力部41に対する第1インタフェース部51を備える。尚、バス・インタフェース35は、図3の第2〜第6入出力部42〜45に対するインタフェース部を備えている。
【0115】
第1インタフェース部51は、要求信号R1と応答信号に対応した2つのデータラッチ52,53、2つのバス・ドライバ54,55を備えている。また、第1インタフェース部51は、選択信号生成回路56と起動信号生成回路57を備えている。
【0116】
第1入出力部41は第1選択回路61を備えている。第1選択回路61は、DCT演算部31が出力する要求信号、量子化部32が出力する応答信号と、CPU16から入力する疑似要求信号、疑似応答信号を選択するために設けられている。
【0117】
第1選択回路61は、選択する信号に対応した数、2つのセレクタ62,63を備えている。第1セレクタ62は、要求信号R1又は疑似要求信号を選択するために設けられている。第2セレクタ63は、応答信号又は疑似応答信号を選択するために設けられている。
【0118】
第1データラッチ52は、CPU16が出力する疑似要求信号R2がシステムバス22を介して入力される。第1データラッチ52は、疑似要求信号R2をラッチするとともに、第1バス・ドライバ54と第1選択回路61の第1セレクタ62に出力する。第1データラッチ52はリセット端子に応答信号A1が入力される。第1データラッチ52は、応答信号A1がアクティブ(例えばHレベルの応答信号A1)に応答して内容をクリアして出力信号をインアクティブ(例えばLレベルの信号)にする。第1バス・ドライバ54は、入力される信号を増幅して出力し、その出力信号はシステムバス22を介してCPU16に入力される。CPU16は、第1バス・ドライバ54の出力する信号がインアクティブになると、量子化部32が応答信号A1を出力したことを検出する。
【0119】
第2データラッチ53は、CPU16が出力する疑似応答信号A2がシステムバス22を介して入力される。第2データラッチ53は、疑似応答信号A2をラッチするとともに、第1選択回路61の第2セレクタ63に出力する。
【0120】
第2バス・ドライバ55は、DCT演算部31が出力する要求信号R1が入力される。第2バス・ドライバ55は、要求信号R1を増幅して出力し、その出力信号はシステムバス22を介してCPU16に入力される。
【0121】
選択信号生成回路56は、CPU16が出力する制御信号がシステムバス22を介して入力される。選択信号生成回路56は、制御信号に応答して第1選択回路61の第1,第2セレクタ62,63に選択動作を行わせるための第1,第2選択信号S1,S2を出力する。
【0122】
起動信号生成回路57には第1,第2選択信号S1,S2が入力される。起動信号生成回路57は、第1,第2選択信号S1,S2がアクティブ、例えばHレベルの第1,第2選択信号S1,S2に応答して第1,第2起動信号W1,W2アクティブ(例えばHレベルの第1,第2起動信号W1,W2)をDCT演算部31,量子化部32に出力する。
【0123】
DCT演算部31,量子化部32は、それぞれ第1,第2起動信号W1,W2に応答して、その動作を起動又は停止する。例えば、DCT演算部31,量子化部32は第1,第2起動信号W1,W2がアクティブ(Hレベルの第1,第2起動信号W1,W2)に応答して動作を起動し、両信号W1,W2がインアクティブ(Lレベルの第1,第2起動信号W1,W2)に応答して動作を停止する。DCT演算部31,量子化部32は動作を停止した場合、電力を消費しない。このことは、符号・復号部15の消費電力を低減する。
【0124】
尚、DCT演算部31の制御回路47aと量子化部32の制御回路47bは、動作を停止しない。これは、DCT演算部31の量子化部32の通信を継続させる。DCT演算部31の制御回路47aは、量子化部32の量子化処理に必要な情報、例えばDCT演算処理における画素の輝度,色差に関するインターリーブ等の情報を保持している。これらの情報を量子化部32に保持する構成にすると、DCT演算部31と量子化部32の両方に情報を保持するための回路がそれぞれに必要となる。このように複数の回路を持つことは冗長であり、符号・復号部15のチップサイズを大きくする。そのため、情報を保持する回路をDCT演算部31のみに持たせ、その情報を量子化部32に通信することにより、回路の冗長をなくしてチップ面積の増加を抑えている。
【0125】
第1選択回路61の第1セレクタ62は、選択信号生成回路56からの第1選択信号S1に応答して、DCT演算部31が出力する要求信号R1又は疑似要求信号R2を選択する。例えば、第1セレクタ62は、Hレベルの第1選択信号S1に応答して疑似要求信号R2を選択し、Lレベルの第1選択信号S1に応答して要求信号R1を選択する。第1セレクタ62は、選択した信号を量子化部32に出力する。
【0126】
第1選択回路61の第2セレクタ63は、選択信号生成回路56からの第2選択信号S2に応答して、量子化部32が出力する応答信号A1又は疑似応答信号を選択する。例えば、第2セレクタ63は、Hレベルの第2選択信号S2に応答して疑似応答信号A2を選択し、Lレベルの第2選択信号S2に応答して応答信号A1を選択する。第2セレクタ63は、選択した信号をDCT演算部31に出力する。
【0127】
尚、第1インタフェース部51と第1選択回路61の各回路が動作する信号のレベルは、上記と逆であってもよい。
次に、図5に従ってDCT係数バッファ37に対するアクセス信号の選択について説明する。
【0128】
第1入出力部41は、第2選択回路64を備える。DCT係数バッファ37は、図4のDCT演算部31、量子化部32、図2のCPU16の3つからアクセスされる。そのため、第2選択回路64は、3つの回路から入力されるアクセスのための信号S11,S12,S13を選択するために2つのセレクタ65,66を備える。
【0129】
第1セレクタ65は、図5のDCT演算部31が出力する要求信号R1に応答してDCT演算部31がDCT係数バッファ37をアクセスするための信号S11と、他からアクセスするための信号S14を選択し、その選択結果を信号S15としてDCT係数バッファ37に出力する。例えば、第1セレクタ65は、要求信号R1がインアクティブ(例えばLレベルの要求信号R1)のときにDCT演算部31が出力する信号S11を選択する。
【0130】
第2セレクタ66は、疑似要求信号R2に応答し、図2のCPU16がDCT係数バッファ37をアクセスするための信号S12と、図4の量子化部32がDCT係数バッファ37をアクセスするための信号S13を選択し、その選択結果を信号S14として第1セレクタ65に出力する。例えば、第2セレクタ66は、疑似要求信号R2がインアクティブ(例えばLレベルの疑似要求信号R2)の時にCPU16が出力する信号S12を選択する。
【0131】
上記のように構成された第1インタフェース部51と第1選択回路61の符号処理における動作を説明する。
[符号処理の1パス目]
図7(a)は1パス目における各部の波形を示す。
【0132】
先ず、図2のCPU16は、Lレベルの疑似要求信号R2,疑似応答信号W2を第1,第2データラッチ52,53に出力する。CPU16は、DCT演算部31及び量子化部32を起動させるための制御信号を選択信号生成回路56に出力し、同回路56は、制御信号に応答してHレベルの第1,第2選択信号S1,S2を出力する。起動信号生成回路57は、Hレベルの第1,第2選択信号S1,S2に応答してHレベルの第1,第2起動信号W1,W2を生成する。DCT演算部31,量子化部32は、Hレベルの第1,第2起動信号W1,W2に応答して起動する。
【0133】
DCT演算部31は、1ブロック分の画像データに対するDCT演算処理を行っている間、要求信号R1をインアクティブ、即ちLレベルの要求信号R1を出力する。第2選択回路64の第1セレクタ65は、Lレベルの要求信号R1に応答してDCT演算部31が出力する信号S1を選択してDCT係数バッファ37に出力する。これにより、DCT係数バッファ37は信号S11が入力されるため、DCT演算部31のアクセスが許容される。
【0134】
DCT演算部31は、1ブロック分の画像データに対するDCT演算処理を終了すると、その処理結果のDCT係数データをDCT係数バッファ37に格納する。そして、DCT係数データの格納が終了すると、DCT演算部31は要求信号R1をアクティブ、即ちHレベルの要求信号R1を出力する。この時、第1選択回路61の第1セレクタ62は、Hレベルの第1選択信号S1に応答して疑似要求信号R2を選択している。そのため、要求信号R1は、量子化部32に伝達されないので、量子化部32は待機状態を維持する。
【0135】
また、要求信号R1がアクティブになることにより、第2選択回路64の第1セレクタ65は、信号S14を選択する。また、第2セレクタ66は、疑似要求信号R2がインアクティブ(Lレベル)であるため、CPU16が出力する信号S12を選択している。これにより、DCT係数バッファ37は信号S12が入力されるため、CPU16のアクセスが許容される。CPU16は、DCT係数バッファ37に格納された1ブロック分のDCT係数データを読み出し、図2のDCT係数メモリ19に格納する。
【0136】
CPU16は、DCT係数データの格納を終了すると、疑似要求信号R2をアクティブに、即ちHレベルの疑似要求信号R2を出力する。第1データラッチ52はこの疑似要求信号R2をラッチするとともに、第1バス・ドライバ54と第1選択回路61の第1セレクタ62に出力する。
【0137】
第2選択回路64の第2セレクタ66は、Hレベルの疑似要求信号R2に応答して量子化部32が出力する信号S13を選択する。これにより、DCT係数バッファ37は信号S13が入力されるため、量子化部32のアクセスが許容される。
【0138】
第1選択回路61の第1セレクタ62は、Hレベルの第1選択信号S1に応答して疑似要求信号R2を選択しているため、Hレベルの疑似要求信号R2が量子化部32に入力される。量子化部32は、Hレベルの疑似要求信号R2に応答してDCT係数バッファ37に格納されている1ブロック分のDCT係数データの読み出しを開始する。
【0139】
量子化部32は、DCT係数データの読み出しを終了すると、要求をリセットするために応答信号A1をアクティブ、即ちHレベルの応答信号A1を出力する。しかし、第2セレクタ63は、Hレベルの第2選択信号S2に応答して疑似応答信号A2を選択している。そのため、応答信号A1は、DCT演算部31に伝達されないので、DCT演算部31は待機状態を維持する。
【0140】
応答信号A1がアクティブになることにより、第1データラッチ52は内容をクリアし、Lレベルの信号を出力する。CPU16は、この第1データラッチ52が出力するLレベルの信号に基づいて、量子化部32によるDCT係数データの読み出しが終了したのを検出する。その検出に基づいて、CPU16は、疑似応答信号A2をアクティブ、即ちHレベルの疑似応答信号A2を出力する。第2データラッチ53はこの疑似応答信号A2をラッチするとともに、第1選択回路61の第2セレクタ63に出力する。
【0141】
第2セレクタ63は、Hレベルの第2選択信号S2に応答して疑似応答信号A2を選択しているため、Hレベルの疑似応答信号A2がDCT演算部31に入力される。DCT演算部31は、Hレベルの疑似応答信号A2に応答して次のブロックの画像データに対するDCT演算処理を開始する。
【0142】
CPU16等は、上記の動作を繰り返し実行する。これにより、1画面分の画像データに対するDCT演算処理が行われ、その処理結果であるDCT係数データがブロック単位でDCT係数バッファ37から量子化部32に読み出される。それに伴い、ブロック単位でDCT係数バッファ37に格納されるDCT係数データが読み出され、DCT係数メモリ19に1画面分のDCT係数データが格納される。
【0143】
[符号処理の2パス目]
図7(b)は2パス目における各部の波形を示す。
先ず、CPU16は、Lレベルの疑似要求信号R2,擬助応答信号W2を第1,第2データラッチ52,53に出力する。また、CPU16は、DCT演算部31の動作を停止させ、量子化部32を起動するための制御信号を選択信号生成回路56に出力する。同回路56は、制御信号に応答してLレベルの第1選択信号S1、Hレベルの第2選択信号S2を出力する。起動信号生成回路57は、Lレベルの第1選択信号S1に応答してLレベルの第1起動信号W1を、Hレベルの第2選択信号S2に応答してHレベルの第2起動信号W2を生成する。DCT演算部31はLレベルの第1起動信号W1に応答して動作を停止しするが、制御回路47aは、動作してHレベルの要求信号R1を出力する。量子化部32はHレベルの第2起動信号W2に応答して起動する。
【0144】
要求信号R1がアクティブであることにより、第2選択回路64の第1セレクタ65は信号S14を選択する。また、第2セレクタ66は、疑似要求信号R2がインアクティブ(Lレベル)であるため、CPU16が出力する信号S12を選択している。これにより、DCT係数バッファ37は、信号S12が入力されるため、CPU16のアクセスが許容される。CPU16は、図2のDCT係数メモリ19に格納されたDCT係数データを1ブロック分読み出し、DCT係数バッファ37に格納する。
【0145】
CPU16は、DCT係数データの格納を終了すると、疑似要求信号R2をアクティブに、即ちHレベルの疑似要求信号R2を出力する。第1データラッチ52はこの疑似要求信号R2をラッチするとともに、第1バス・ドライバ54と第1選択回路61の第1セレクタ62に出力する。
【0146】
第2選択回路64の第2セレクタ66は、Hレベルの疑似要求信号R2に応答して量子化部32が出力する信号S13を選択する。これにより、DCT係数バッファ37は信号S13が入力されるため、量子化部32のアクセスが許容される。
【0147】
第1選択回路61の第1セレクタ62は、Hレベルの第1選択信号S1に応答して疑似要求信号R2を選択しているため、Hレベルの疑似要求信号R2が量子化部32に入力される。量子化部32は、Hレベルの疑似要求信号R2に応答してDCT係数バッファ37に格納されている1ブロック分のDCT係数データの読み出しを開始する。
【0148】
量子化部32は、DCT係数データの読み出しを終了すると、要求をリセットするために応答信号A1をアクティブ、即ちHレベルの応答信号A1を出力する。応答信号A1がアクティブになることにより、第1データラッチ52は内容をクリアし、Lレベルの信号を出力する。CPU16は、この第1データラッチ52が出力するLレベルの信号に基づいて、量子化部32によるDCT係数データの読み出しが終了したのを検出する。その検出に基づいて、CPU16は、図5のDCT係数メモリ37から次のブロックのDCT係数データの読み出しを開始する。
【0149】
CPU16等は、上記の動作を繰り返し実行する。これにより、DCT演算処理を行うことなく、1画面分のDCT係数データに対して量子化以降の処理が実行される。
【0150】
以上記述したように、本実施形態によれば以下の効果を奏する。
(1)画像情報処理装置11のDCT演算部31は、ブロック単位の画像データに対して直交変換を施してDCT係数データを生成する。量子化部32は、符号処理の1パス目には予め設定された第1量子化係数を用いてDCT係数データを量子化した第1符号データを生成し、2パス目には第2量子化係数を用いてDCT係数データを量子化した第2符号データを生成する。CPU16は、第2符号データのデータ量が最適となるような第2量子化係数を演算する。第1入出力部41にはDCT係数データを少なくとも1画面分記憶するDCT係数メモリ19が接続される。第1入出力部41は、DCT演算部31と量子化部32の間に接続されている。CPU16は、第1入出力部41を制御して、符号処理の1パス目にはDCT演算部31が出力するブロック単位のDCT係数データを順次DCT係数メモリ19に出力させて該DCT係数メモリ19に記憶させる。CPU16は、符号処理の2パス目にはDCT係数メモリ19に記憶させブロック単位で読み出したDCT係数データを量子化部32に出力させるようにした。その結果、2パス目にDCT演算部31を動作させる必要がなく、その分だけ処理時間が短くなる。
【0151】
(2)第1入出力部41にはDCT係数データを少なくとも1ブロック分記憶するDCT係数バッファ37が接続される。DCT演算部31は生成したブロック単位のDCT係数データをDCT係数バッファ37に格納し、量子化部32はDCT係数バッファ37からジグザグスキャンにてDCT係数データを読み出す。CPU16は、量子化部32の読み出しに先立って、符号処理の1パス目にはDCT係数バッファ37に格納されたDCT係数データを読み出してDCT係数メモリ19に格納し、2パス目にはDT係数メモリ19からブロック単位で読み出したDCT係数データをDCT係数バッファ37に格納する。これにより、量子化部32は常にDCT係数バッファ37からDCT係数データを読み出せばよく、その読み出し動作が単純になる。
【0152】
(3)DCT演算部31は、保持した情報を量子化部32に通信するための制御回路47aを備える。CPU16は、符号処理の2パス目にDCT演算部31のうち制御回路47aを除く部分の動作を停止させるようにした。この結果、装置11の消費電力を低減することができる。
【0153】
尚、本発明は前記実施の形態の他、以下の態様で実施してもよい。
○上記実施形態において、DCT演算部31,量子化部32,符号・復号検索部33,パッキング部34にそれぞれ備えた制御回路47a〜47dにテストのための機能を持たせる構成としても良い。図9に示すように、CPU16は、各制御回路47a〜47dにテストモード信号TMを出力する。各制御回路47a〜47dは、テストモード信号TMに応答して各部31〜34の内部信号を出力する。CPU16は、各部31〜34に接続されている第1〜第3入出力部41〜43、バス・インタフェース35、システムバス22を介して各部31〜34から出力される内部信号を入力する。そして、CPU16は、入力した内部信号に基づいて、各部31〜34が正常か故障しているかを判断する。このように構成することによって、複雑な回路で構成された各部31〜34における機能試験を容易に実行することができる。
【0154】
○上記実施形態では、DCT係数バッファ31と量子化部32に対する起動信号W1,W2についてのみ説明したが、図2の符号・復号検索部33,パッキング部34に対して起動信号を生成し出力する構成としてもよい。例えば、CPU16にて各部の処理を代替した場合、その処理を行う部分の動作を停止させるようにする。例えば、上記実施形態にて説明したように、CPU16にて符号・復号検索部33が行う符号・復号検索処理を代替する場合、CPU16は符号・復号検索部33に対する起動信号をインアクティブにする。符号・復号検索部33は起動信号がインアクティブであるため起動しないので、その分符号・復号部15の消費電力を低くすることができる。
【0155】
○上記実施形態では、DCT演算部31と量子化部32に対応して第1,第2起動信号W1,W2を生成するようにしたが、図10に示すように、起動信号を共通化する。そして、各部31,32にスイッチSW1,SW2を介して起動信号を入力するようにする。スイッチSW1,SW2は、MOSトランジスタ等よりなり、CPU16がオンオフ制御する。これにより、各部31,32に対応して起動信号を生成する必要がない分、符号・復号部15の回路構成が簡単になる。
【0156】
また、図10のDCT制御回路71を符号・復号部15の中に設ける。DCT制御回路71は、DCT係数バッファ37に対するアクセスを制御するとともに、起動信号を各部31,32に入力するためのスイッチSW1,SW2をオンオフ制御する。DCT制御回路71は、2パス方式の符号処理における1パス目にはスイッチSW1をオンに制御して起動信号をDCT演算部31に供給し、DCT演算部31は起動信号に応答して動作する。そして、DCT制御回路71は、2パス目においてスイッチSW2をオフに制御する。DCT演算部31は起動信号を入力しないので動作を停止する。これにより、2パス目における消費電力を低減することができる。
【0157】
○上記実施形態では、圧縮データを記録するためにフラッシュメモリ(フラッシュEEPROM)20を用いたが、通常のEEPROM,強誘電体メモリ(FeRAM),バッテリバックアップされたSRAM等を用いて実施してもよい。また、画像情報処理装置11をカード型のメモリを装着可能な構成とし、そのメモリと圧縮データを直接転送する、又はフラッシュメモリ20に一旦記録した圧縮データを転送する構成として実施してもよい。
【0158】
【発明の効果】
以上詳述したように、請求項1乃至5に記載の発明によれば、圧縮率を低下させることなく処理時間の短縮を図ることが可能な画像情報処理装置を提供することができる。
【0159】
また、請求項6乃至10に記載の発明によれば、圧縮率を低下させることなく処理時間の短縮を図ることが可能な符号装置を提供することができる。
【図面の簡単な説明】
【図1】 本発明の原理説明図。
【図2】 一実施形態の画像情報処理装置の概略ブロック図。
【図3】 一実施形態の符号・復号部のブロック図。
【図4】 バス・インタフェースと第1入出力部の一部回路図。
【図5】 第1入出力部の一部回路図。
【図6】 DCT演算部と量子化部の間の通信の説明図。
【図7】 (a)は1パス目,(b)は2パス目の符号処理を示す波形図。
【図8】 (a)は1パス目,(b)は2パス目のパイプライン処理を示す説明図。
【図9】 処理を代替する時と情報を付加する時の動作を示す説明図。
【図10】 別の符号・復号部の一部ブロック図。
【図11】 従来の符号・復号回路のブロック図。
【符号の説明】
1 変換部
2 入出力部
3 量子化部
4 係数演算部
5 記憶部
6 制御部
Claims (10)
- 1画面分の画像データを複数の画素からなる複数のブロックに分割し、各ブロック単位毎にJPEG方式により圧縮した符号データを生成する符号処理を2度繰り返す2パス処理して画像の状態に応じた符号データを生成する画像情報処理装置であって、
ブロック単位の画像データに対して直交変換を施してブロック単位の変換係数を生成する変換部と、
1パス目には予め設定された第1量子化係数を用いて前記変換係数を量子化した第1符号データを生成し、2パス目には第2量子化係数を用いて前記変換係数を量子化した第2符号データを生成する量子化部と、
前記第1符号データに基づいて、画像の状態に対応した前記第2量子化係数を演算する係数演算部と、
前記変換係数を少なくとも1画面分記憶する記憶部と、
前記変換部と前記量子化部の間に設けられ、前記記憶部との間で前記変換係数の入出力を行う入出力部と、
前記入出力部を制御して、符号処理の1パス目には前記変換部が出力するブロック単位の変換係数を順次前記記憶部に出力させて該記憶部に記憶させ、2パス目には前記記憶部に記憶させブロック単位で読み出した前記変換係数を量子化部に出力させる制御部と、を備え、
前記ブロック単位の変換係数を1ブロック分記憶する係数バッファを前記入出力部に接続し、
前記変換部は生成した前記ブロック単位の変換係数を前記係数バッファに格納し、
前記量子化部は前記係数バッファからジグザグスキャンにて前記変換係数を読み出し、
前記制御部は、前記量子化部の読み出しに先立って、符号処理の1パス目には前記係数バッファに格納された前記変換係数を読み出して前記記憶部に格納し、2パス目には前記記憶部からブロック単位で読み出した前記変換係数を前記係数バッファに格納するようにした画像情報処理装置。 - 前記制御部は、符号処理の2パス目に前記変換部の動作を停止させるようにした請求項1に記載の画像情報処理装置。
- 前記変換部は、保持した情報を前記量子化部に通信するための制御回路を備え、
前記制御部は、符号処理の2パス目に前記変換部のうち前記制御回路を除く部分の動作を停止させるようにした請求項1に記載の画像情報処理装置。 - 前記量子化部が生成する量子化データを符号検索処理して可変長符号データを出力する符号検索部と、
前記1又は複数の可変長符号データから固定長符号データを生成するパッキング部とを備え、
前記係数演算部は、前記パッキング部の出力する固定長符号データに基づいて前記第2量子化係数を演算するようにした請求項1乃至3のうちの何れか1項に記載の画像情報処理装置。 - 前記変換部は、該変換部内の信号を出力するテスト回路を備え、
前記制御部は、前記テスト回路の出力する信号に基づいて、前記変換部の故障を判断するようにした請求項1乃至4のうちの何れか1項に記載の画像情報処理装置。 - 1画面分の画像データを複数の画素からなる複数のブロックに分割し、各ブロック単位毎にJPEG方式により圧縮した符号データを生成する符号処理を2度繰り返す2パス処理して画像の状態に応じた符号データを生成するために備えられる符号装置であって、
前記画像データをブロック単位で順次入力し、該画像データに対して直交変換を施してブロック単位の変換係数を生成する変換部と、
1パス目には予め設定された第1量子化係数を用いて前記変換係数を量子化した第1符号データを生成し、2パス目には前記第1符号データに基づいて演算された、画像の状態に対応した第2量子化係数を用いて前記変換係数を量子化した第2符号データを生成する量子化部とを備えた符号装置において、
外部には前記変換係数を少なくとも1画面分記憶する記憶部が接続され、
前記変換部と量子化部の間には入出力部が接続され、
前記入出力部は、外部から入力される制御信号に基づいて、符号処理の1パス目には前記変換部が出力するブロック単位の変換係数を前記記憶部に出力し、符号処理の2パス目には前記記憶部からブロック単位で読み出される前記変換係数を量子化部に出力するようにし、
前記入出力部に接続され、前記ブロック単位の変換係数を1ブロック分記憶する係数バッファを備え、
前記変換部は生成した前記ブロック単位の変換係数を前記係数バッファに格納し、
前記量子化部は前記係数バッファからジグザグスキャンにて前記変換係数を読み出し、
前記入出力部は、前記制御信号に基づいて、前記量子化部の読み出しに先立って、符号処理の1パス目には前記係数バッファから読み出された前記変換係数を前記記憶部に出力し、2パス目には前記記憶部からブロック単位で読み出された前記変換係数を前記係数バッファに出力するようにした符号装置。 - 前記変換部は、外部から入力される制御信号に基づいて、符号処理の2パス目に前記変換部の動作を停止するようにした請求項6に記載の符号装置。
- 前記変換部は、保持した情報を前記量子化部に通信するための制御回路を備え、外部から入力される制御信号に基づいて符号処理の2パス目に前記制御回路を除く部分の動作を停止するようにした請求項6に記載の符号装置。
- 前記量子化部が生成する量子化データを符号検索処理して可変長符号データを出力する符号検索部と、
前記1又は複数の可変長符号データから固定長符号データを生成するパッキング部とを備えた請求項6乃至8のうちの何れか1項に記載の符号装置。 - 前記変換部は、外部から入力されるテストモード信号に基づいて該変換部内の信号を出力するテスト回路を備えた請求項6乃至9のうちの何れか1項に記載の符号装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29870297A JP4531871B2 (ja) | 1997-10-30 | 1997-10-30 | 画像情報処理装置及び符号装置 |
US09/071,992 US6167091A (en) | 1997-10-30 | 1998-05-05 | Image data encoding apparatus |
TW087107233A TW376662B (en) | 1997-10-30 | 1998-05-11 | Image data encoding apparatus |
KR1019980017309A KR100277422B1 (ko) | 1997-10-30 | 1998-05-14 | 화상 정보 처리 장치 및 부호 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29870297A JP4531871B2 (ja) | 1997-10-30 | 1997-10-30 | 画像情報処理装置及び符号装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11136677A JPH11136677A (ja) | 1999-05-21 |
JP4531871B2 true JP4531871B2 (ja) | 2010-08-25 |
Family
ID=17863187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29870297A Expired - Fee Related JP4531871B2 (ja) | 1997-10-30 | 1997-10-30 | 画像情報処理装置及び符号装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6167091A (ja) |
JP (1) | JP4531871B2 (ja) |
KR (1) | KR100277422B1 (ja) |
TW (1) | TW376662B (ja) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7590178B2 (en) * | 2001-03-12 | 2009-09-15 | Robert Bosch Gmbh | Method of multiplexing a number of video signals with a compressor |
US7133926B2 (en) * | 2001-09-28 | 2006-11-07 | Hewlett-Packard Development Company, L.P. | Broadcast compressed firmware flashing |
US7424019B1 (en) | 2001-11-27 | 2008-09-09 | Marvell Israel (M.I.S.L) Ltd. | Packet header altering device |
US7529471B2 (en) * | 2002-06-25 | 2009-05-05 | International Business Machines Corporation | Personal video recording with storage space loans |
US7366398B2 (en) * | 2002-06-25 | 2008-04-29 | International Business Machines Corporation | Personal video recording with storage space requirement checking |
US7295753B2 (en) * | 2002-06-25 | 2007-11-13 | International Business Machines Corporation | Personal video recording with further compression of recorded shows |
US7433582B2 (en) | 2002-06-25 | 2008-10-07 | International Business Machines Corporation | Personal video recording with machine learning for messaging |
US8417781B2 (en) | 2002-06-25 | 2013-04-09 | International Business Machines Corporation | Personal video recording with messaging |
US8867904B2 (en) * | 2002-06-25 | 2014-10-21 | Google Inc. | Personal video recording with apportioned loans of storage space |
US7532809B2 (en) * | 2002-06-25 | 2009-05-12 | International Business Machines Corporation | Personal video recording with pools and groups |
JP4182343B2 (ja) * | 2002-08-26 | 2008-11-19 | セイコーエプソン株式会社 | 液体噴射データのデータ転送装置、液体噴射装置 |
US7474832B2 (en) * | 2002-11-21 | 2009-01-06 | International Business Machines Corporation | Personal video recording with storage space distributed among remote personal video recorders |
JP3680845B2 (ja) | 2003-05-28 | 2005-08-10 | セイコーエプソン株式会社 | 圧縮動画像の伸張装置及びそれを用いた画像表示装置 |
JP3680846B2 (ja) | 2003-05-28 | 2005-08-10 | セイコーエプソン株式会社 | 動画像の圧縮装置及びそれを用いた撮像装置 |
US7738554B2 (en) | 2003-07-18 | 2010-06-15 | Microsoft Corporation | DC coefficient signaling at small quantization step sizes |
US7580584B2 (en) | 2003-07-18 | 2009-08-25 | Microsoft Corporation | Adaptive multiple quantization |
US10554985B2 (en) | 2003-07-18 | 2020-02-04 | Microsoft Technology Licensing, Llc | DC coefficient signaling at small quantization step sizes |
US7602851B2 (en) | 2003-07-18 | 2009-10-13 | Microsoft Corporation | Intelligent differential quantization of video coding |
US8218624B2 (en) | 2003-07-18 | 2012-07-10 | Microsoft Corporation | Fractional quantization step sizes for high bit rates |
US7801383B2 (en) | 2004-05-15 | 2010-09-21 | Microsoft Corporation | Embedded scalar quantizers with arbitrary dead-zone ratios |
KR100604986B1 (ko) * | 2004-07-26 | 2006-07-28 | 삼성전자주식회사 | 4단계 파이프라인 방식의 계수 가변장 부호화방법 및 계수가변장 부호화기 |
JP4442891B2 (ja) * | 2004-11-30 | 2010-03-31 | キヤノン株式会社 | 可変長符号化装置及び可変長符号化方法 |
JP4302661B2 (ja) * | 2005-05-02 | 2009-07-29 | 富士通マイクロエレクトロニクス株式会社 | 画像処理システム |
US8422546B2 (en) | 2005-05-25 | 2013-04-16 | Microsoft Corporation | Adaptive video encoding using a perceptual model |
WO2007000869A1 (ja) * | 2005-06-28 | 2007-01-04 | Sharp Kabushiki Kaisha | 情報処理装置、テレビジョン放送受像表示機、テレビジョン放送記録再生機、情報処理プログラム、および、記録媒体 |
US8503536B2 (en) | 2006-04-07 | 2013-08-06 | Microsoft Corporation | Quantization adjustments for DC shift artifacts |
US8130828B2 (en) | 2006-04-07 | 2012-03-06 | Microsoft Corporation | Adjusting quantization to preserve non-zero AC coefficients |
US7995649B2 (en) | 2006-04-07 | 2011-08-09 | Microsoft Corporation | Quantization adjustment based on texture level |
US7974340B2 (en) | 2006-04-07 | 2011-07-05 | Microsoft Corporation | Adaptive B-picture quantization control |
US8059721B2 (en) | 2006-04-07 | 2011-11-15 | Microsoft Corporation | Estimating sample-domain distortion in the transform domain with rounding compensation |
US8711925B2 (en) | 2006-05-05 | 2014-04-29 | Microsoft Corporation | Flexible quantization |
JP4861929B2 (ja) * | 2006-08-28 | 2012-01-25 | パナソニック株式会社 | カメラ、カメラシステム、及び画像処理回路 |
TW200833115A (en) * | 2007-01-30 | 2008-08-01 | Beyond Innovation Tech Co Ltd | Apparatus and method for compressing data |
US8238424B2 (en) | 2007-02-09 | 2012-08-07 | Microsoft Corporation | Complexity-based adaptive preprocessing for multiple-pass video compression |
US8498335B2 (en) | 2007-03-26 | 2013-07-30 | Microsoft Corporation | Adaptive deadzone size adjustment in quantization |
US8243797B2 (en) | 2007-03-30 | 2012-08-14 | Microsoft Corporation | Regions of interest for quality adjustments |
US8442337B2 (en) | 2007-04-18 | 2013-05-14 | Microsoft Corporation | Encoding adjustments for animation content |
US8331438B2 (en) | 2007-06-05 | 2012-12-11 | Microsoft Corporation | Adaptive selection of picture-level quantization parameters for predicted video pictures |
US8189933B2 (en) | 2008-03-31 | 2012-05-29 | Microsoft Corporation | Classifying and controlling encoding quality for textured, dark smooth and smooth video content |
US8897359B2 (en) | 2008-06-03 | 2014-11-25 | Microsoft Corporation | Adaptive quantization for enhancement layer video coding |
JP2011244031A (ja) * | 2010-05-14 | 2011-12-01 | Fujifilm Corp | 画像データ伸張装置および画像データ圧縮装置,ならびにそれらの動作制御方法 |
JP6046488B2 (ja) * | 2012-12-28 | 2016-12-14 | ラピスセミコンダクタ株式会社 | データ通信システム、半導体装置及びデータ通信方法 |
KR102004797B1 (ko) | 2014-10-31 | 2019-10-01 | 삼성전기주식회사 | 센서 패키지 및 그 제조 방법 |
US9762912B2 (en) * | 2015-01-16 | 2017-09-12 | Microsoft Technology Licensing, Llc | Gradual updating using transform coefficients for encoding and decoding |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04324779A (ja) * | 1991-04-24 | 1992-11-13 | Olympus Optical Co Ltd | 画像処理装置 |
JPH0564143A (ja) * | 1991-06-26 | 1993-03-12 | Toshiba Corp | 電子スチルカメラ |
JPH0898177A (ja) * | 1994-09-29 | 1996-04-12 | Sony Corp | 画像符号化装置 |
JPH08275161A (ja) * | 1995-03-30 | 1996-10-18 | Oki Electric Ind Co Ltd | 画像変換装置 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6429083A (en) * | 1987-07-23 | 1989-01-31 | Oki Electric Ind Co Ltd | Fault monitor system for video processor |
JPH02141088A (ja) * | 1988-11-21 | 1990-05-30 | Nippon Telegr & Teleph Corp <Ntt> | 動画像符号化方式 |
US5444490A (en) * | 1992-07-07 | 1995-08-22 | U.S. Philips Corporation | Television system for transmitting pictures in a digital form |
JPH0654203A (ja) * | 1992-07-30 | 1994-02-25 | Canon Inc | ファクシミリ装置及び画像処理装置 |
US5426463A (en) * | 1993-02-22 | 1995-06-20 | Rca Thomson Licensing Corporation | Apparatus for controlling quantizing in a video signal compressor |
US5703646A (en) * | 1993-04-09 | 1997-12-30 | Sony Corporation | Picture encoding method, picture encoding apparatus and picture recording medium |
US5874999A (en) * | 1993-04-28 | 1999-02-23 | Fukuyama & Associates | Image processing apparatus with multiple data modes |
JP2979900B2 (ja) * | 1993-05-26 | 1999-11-15 | 日本ビクター株式会社 | 記録媒体 |
JP2626521B2 (ja) * | 1993-11-29 | 1997-07-02 | 日本電気株式会社 | 画像符号変換装置 |
JP3153404B2 (ja) * | 1994-02-02 | 2001-04-09 | 松下電器産業株式会社 | ディジタルビデオ・ビットストリームコーダ |
JP3525353B2 (ja) * | 1994-09-28 | 2004-05-10 | 株式会社リコー | デジタル電子スチル・カメラ |
JPH08116447A (ja) * | 1994-10-18 | 1996-05-07 | Fuji Xerox Co Ltd | 画像信号の符号化装置 |
TW311322B (ja) * | 1995-10-11 | 1997-07-21 | Nippon Steel Corp | |
US5801779A (en) * | 1995-12-26 | 1998-09-01 | C-Cube Microsystems, Inc. | Rate control with panic mode |
-
1997
- 1997-10-30 JP JP29870297A patent/JP4531871B2/ja not_active Expired - Fee Related
-
1998
- 1998-05-05 US US09/071,992 patent/US6167091A/en not_active Expired - Lifetime
- 1998-05-11 TW TW087107233A patent/TW376662B/zh not_active IP Right Cessation
- 1998-05-14 KR KR1019980017309A patent/KR100277422B1/ko not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04324779A (ja) * | 1991-04-24 | 1992-11-13 | Olympus Optical Co Ltd | 画像処理装置 |
JPH0564143A (ja) * | 1991-06-26 | 1993-03-12 | Toshiba Corp | 電子スチルカメラ |
JPH0898177A (ja) * | 1994-09-29 | 1996-04-12 | Sony Corp | 画像符号化装置 |
JPH08275161A (ja) * | 1995-03-30 | 1996-10-18 | Oki Electric Ind Co Ltd | 画像変換装置 |
Also Published As
Publication number | Publication date |
---|---|
TW376662B (en) | 1999-12-11 |
KR19990036491A (ko) | 1999-05-25 |
US6167091A (en) | 2000-12-26 |
JPH11136677A (ja) | 1999-05-21 |
KR100277422B1 (ko) | 2001-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4531871B2 (ja) | 画像情報処理装置及び符号装置 | |
US7343043B2 (en) | Image compression apparatus, method and recording medium storing an image compression program | |
JP4682102B2 (ja) | 画像符号化装置及び画像符号化方法 | |
US7102551B2 (en) | Variable length decoding device | |
JP3285331B2 (ja) | 画像記録装置および電子カメラ装置 | |
US5818524A (en) | Digital still camera having an image data compression function | |
JP2000295577A (ja) | 画像記録装置および電子カメラ装置 | |
US7747090B2 (en) | Scan line to block re-ordering buffer for image compression | |
JPH08186814A (ja) | 画像圧縮装置 | |
JP2006203270A (ja) | 画像圧縮方法および画像圧縮装置 | |
JP2006352335A (ja) | 画像符号化装置 | |
JPH10276402A (ja) | 画像記録装置 | |
US8463055B2 (en) | Method for progressive JPEG image decoding and method for controlling decoder | |
JP3394619B2 (ja) | 画像圧縮システム | |
US6636639B1 (en) | Image recording apparatus, image recording method and storage medium | |
JP2007124075A (ja) | 画像処理装置、画像処理方法、撮像記録装置および撮像記録方法 | |
JP4094832B2 (ja) | 画像データ圧縮装置およびその制御方法 | |
JP2984342B2 (ja) | 画像信号記録装置 | |
JP2000125254A (ja) | 画像圧縮装置 | |
JP2006340045A (ja) | 画像処理装置及び画像処理方法 | |
JP2005176217A (ja) | 撮像装置及びその制御方法 | |
JP2000224539A (ja) | 電子的撮像装置 | |
JP2004289601A (ja) | 動画像符号化装置、動画像符号化方法及びプログラム | |
JP2004064455A (ja) | 画像符号化装置 | |
JPH10126813A (ja) | 撮像装置、記録媒体及び画像処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041014 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20050830 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071127 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080125 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20080730 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090407 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090707 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20090729 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100608 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100610 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130618 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140618 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |