JPH10136360A - Image data compression system - Google Patents

Image data compression system

Info

Publication number
JPH10136360A
JPH10136360A JP28427596A JP28427596A JPH10136360A JP H10136360 A JPH10136360 A JP H10136360A JP 28427596 A JP28427596 A JP 28427596A JP 28427596 A JP28427596 A JP 28427596A JP H10136360 A JPH10136360 A JP H10136360A
Authority
JP
Japan
Prior art keywords
data
code data
data compression
dct
code
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.)
Pending
Application number
JP28427596A
Other languages
Japanese (ja)
Inventor
Masanari Asano
眞成 浅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Holdings Corp
Fujifilm Microdevices Co Ltd
Original Assignee
Fujifilm Microdevices Co Ltd
Fuji Photo Film Co Ltd
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 Fujifilm Microdevices Co Ltd, Fuji Photo Film Co Ltd filed Critical Fujifilm Microdevices Co Ltd
Priority to JP28427596A priority Critical patent/JPH10136360A/en
Publication of JPH10136360A publication Critical patent/JPH10136360A/en
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an image data compression system by which fixed length processing is conducted at high speed with high accuracy in the case of compressing a digital image to reduce a data amount. SOLUTION: This system is provided with a DCT means 2 that applies discrete cosine transformation(DCT) to image data in the unit of blocks to generate a DCT coefficient, code data generating means 4, 5 that generate code data at 1st and 2nd data compression degrees as to the DCT coefficient every time the DCT coefficient of one block is generated, and a data compression degree estimate means 7 that accumulates amount of code data of the 1st and 2nd data compression degrees generated by the code data generating means 4, 5 as to all blocks to be received and estimates a 3rd data compression degree and a 4th data compression degree higher than the 3rd data compression degree to generate code data with an object data amount in response to the code data amount of both the 1st and 2nd data compression degrees.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、デジタル画像処理
システムに関し、特に、デジタル画像データを圧縮して
データ量を少なくすることができる画像データ圧縮シス
テムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital image processing system, and more particularly to an image data compression system capable of compressing digital image data to reduce the amount of data.

【0002】[0002]

【従来の技術】画像データ圧縮システムを用いるものの
一つに、デジタルスチルカメラがある。デジタルスチル
カメラは、被写体にレンズを向けて、シャッタボタンを
押すことにより、デジタル静止画像の撮影を行う。レン
ズを介して結像される画像は、電気信号に変換され、デ
ータ圧縮されて、取り替え可能なメモリカード等に記憶
される。データ圧縮は、データ量を減らして、メモリカ
ードに多くの画像データを記憶させるための処理であ
る。
2. Description of the Related Art A digital still camera is one of those using an image data compression system. A digital still camera shoots a digital still image by pointing a lens at a subject and pressing a shutter button. The image formed via the lens is converted into an electric signal, compressed, and stored in a replaceable memory card or the like. Data compression is a process for reducing the amount of data and storing a large amount of image data in a memory card.

【0003】デジタル画像データをデータ圧縮すること
により得られる符号データの量は、デジタル画像が有す
る空間的周波数分布等により異なる。例えば、高周波成
分を多く含むデジタル画像については、符号データの量
をあまり少なくすることができない。一方、高周波成分
の少ないデジタル画像については、符号データの量をか
なり少なくすることができる。つまり、データ圧縮の方
式により異なるが、一般的にデータ圧縮により生成され
る符号データの量は、デジタル画像の種類により異な
る。
The amount of code data obtained by compressing digital image data differs depending on the spatial frequency distribution of the digital image. For example, for a digital image containing many high-frequency components, the amount of code data cannot be reduced much. On the other hand, with respect to a digital image having few high frequency components, the amount of code data can be considerably reduced. That is, the amount of code data generated by data compression generally differs depending on the type of digital image, although it differs depending on the data compression method.

【0004】データ圧縮された符号データは、メモリカ
ード等の記憶媒体に記憶される。メモリカードは、例え
ば1Mバイトの記憶容量を有するものであり、その場合
1Mバイト以上のデータを記憶させることができない。
[0004] Code data obtained by data compression is stored in a storage medium such as a memory card. The memory card has a storage capacity of, for example, 1 Mbyte, and in that case, data of 1 Mbyte or more cannot be stored.

【0005】メモリカードに1Mバイトを越えて、符号
データを書き込まないようにするため、または撮影者の
便宜のために、記録可能な残り枚数を撮影者に知らせる
ことが望まれる。データ圧縮される符号データがデジタ
ル画像の種類によらず、各画像当たり全て同じデータ量
であるならば、メモリカードに記録可能なデジタル画像
の枚数を撮影者に容易に知らせることができる。
[0005] It is desirable to notify the photographer of the remaining recordable number in order to prevent writing of code data exceeding 1 Mbyte in the memory card or for the convenience of the photographer. If the code data to be data-compressed has the same data amount for each image regardless of the type of digital image, the number of digital images that can be recorded on the memory card can be easily notified to the photographer.

【0006】しかし、符号データ量が可変である場合に
は、残り枚数を撮影者に知らせることができない。これ
から撮影する画像の符号データ量が少なければ、多くの
枚数を記録可能であり、撮影する画像の符号データ量が
多ければ、少ない枚数しか記録することができない。
However, when the amount of code data is variable, it is impossible to notify the photographer of the remaining number. If the code data amount of the image to be captured is small, a large number of images can be recorded, and if the code data amount of the image to be captured is large, only a small number can be recorded.

【0007】そこで、デジタル画像データをデータ圧縮
する際に、符号データの固定長化処理を行うことが望ま
れる。固定長化処理を行うことにより、どんな種類のデ
ジタル画像であってもほぼ一定量の符号データに変換す
ることができる。固定長化処理は、1枚(1フレーム)
のデジタル画像をデータ圧縮し、固定長の符号データを
生成するための処理である。符号データが固定長であれ
ば、残り枚数を撮影者に知らせることができる。
Therefore, it is desired to perform a fixed length process of the code data when compressing the digital image data. By performing the fixed length processing, any kind of digital image can be converted into a substantially constant amount of code data. Fixed length processing is one piece (one frame)
This is a process for compressing the digital image data and generating fixed-length code data. If the code data has a fixed length, the photographer can be notified of the remaining number.

【0008】次に、固定長化処理について説明する。固
定長化処理を行うには、まず前処理として統計処理を行
い、その統計処理の結果に応じて、データ圧縮のデータ
圧縮度を調整し、固定長の符号データを生成する。
Next, the fixed length processing will be described. To perform the fixed-length processing, first, statistical processing is performed as preprocessing, and the data compression degree of data compression is adjusted according to the result of the statistical processing to generate fixed-length code data.

【0009】撮影者がシャッタボタンを押すと、デジタ
ル画像が取り込まれる。次に、取り込まれたデジタル画
像に対して、統計処理を行う。統計処理とは、取り込ま
れたデジタル画像データについてデータ圧縮を行った場
合にどの位の量の符号データが生成されるのかを推測す
る処理である。
When the photographer presses the shutter button, a digital image is captured. Next, statistical processing is performed on the captured digital image. Statistical processing is processing for estimating how much code data is generated when data compression is performed on captured digital image data.

【0010】統計処理が終了すると、データ圧縮処理お
よび記憶処理が行われる。統計処理の結果、符号データ
が多めに生成されそうであると推測されれば、データ圧
縮度を高めに設定してデータ圧縮を行えばよい。符号デ
ータが少なめに生成されそうであると推測されれば、デ
ータ圧縮度を低めに設定して圧縮を行えばよい。データ
圧縮により生成される符号データは、常にほぼ一定のデ
ータ量となる。
When the statistical processing is completed, data compression processing and storage processing are performed. As a result of the statistical processing, if it is estimated that a large amount of code data is likely to be generated, the data compression may be performed by setting a high data compression degree. If it is estimated that code data is likely to be generated in a small amount, compression may be performed by setting the data compression degree to a low level. Code data generated by data compression always has a substantially constant data amount.

【0011】その後、記憶処理により、データ圧縮され
た符号データは、メモリカードに記録される。以上で、
デジタル画像の取り込みから、メモリカードへの記録ま
での一連の処理は終了する。
[0011] After that, the code data that has been subjected to the data compression by the storage process is recorded on the memory card. Above,
A series of processes from capture of the digital image to recording on the memory card ends.

【0012】[0012]

【発明が解決しようとする課題】画像圧縮処理におい
て、固定長化処理を行う方法として、以下の方法があ
る。まず、統計処理として、基準のデータ圧縮度でデー
タ圧縮処理を1回行ってみる。その結果、目標のデータ
量より多いデータ量が生成されたときには、基準のデー
タ圧縮度よりも高いデータ圧縮度を設定する。一方、目
標のデータ量より少ない量の符号データが生成されたと
きには、基準のデータ圧縮度よりも低いデータ圧縮度を
設定する。その設定されたデータ圧縮度で、正式なデー
タ圧縮処理を行い、画像の符号データを生成する。
In the image compression processing, there is the following method for performing the fixed length processing. First, as statistical processing, data compression processing is performed once at a reference data compression degree. As a result, when a data amount larger than the target data amount is generated, a data compression degree higher than the reference data compression degree is set. On the other hand, when the amount of code data smaller than the target data amount is generated, a data compression degree lower than the reference data compression degree is set. Formal data compression processing is performed at the set data compression degree, and code data of an image is generated.

【0013】しかし、データ圧縮度と符号データ量の関
係は一定でないため、画像の種類により、目標データ量
と生成される符号データ量との間にばらつきを有する差
が生じる。統計処理を1回行っただけでは、固定長化の
精度は低い。
However, since the relationship between the degree of data compression and the amount of code data is not constant, there is a difference between the target data amount and the generated code data amount depending on the type of image. The accuracy of the fixed length is low only by performing the statistical processing once.

【0014】より高精度の固定長化を行うため、統計処
理を2回以上行って、データ圧縮度を決める方法があ
る。統計処理を2回行う場合を例に説明する。まず、1
回目の統計処理として、第1の基準データ圧縮度で圧縮
処理を行い、符号データ量を見積もる。次に、2回目の
統計処理として、第1の基準データ圧縮度とは異なる第
2の基準データ圧縮度でデータ圧縮処理を行い、符号デ
ータ量を見積もる。以上の2つの符号データ量を考慮し
て、正式なデータ圧縮度を設定する。例えば、目標デー
タ量が当該2つの符号データ量の間にあるときには、第
1の基準データ圧縮度と第2の基準データ圧縮度の間に
正式なデータ圧縮度を設定すればよい。その設定された
データ圧縮度で、正式なデータ圧縮処理を行い、画像の
符号データを生成する。
There is a method of performing a statistical process two or more times to determine the data compression degree in order to achieve a more precise fixed length. The case where the statistical processing is performed twice will be described as an example. First, 1
As the third statistical processing, the compression processing is performed at the first reference data compression degree, and the code data amount is estimated. Next, as a second statistical process, a data compression process is performed at a second reference data compression degree different from the first reference data compression degree, and the code data amount is estimated. A formal data compression degree is set in consideration of the above two code data amounts. For example, when the target data amount is between the two code data amounts, a formal data compression degree may be set between the first reference data compression degree and the second reference data compression degree. Formal data compression processing is performed at the set data compression degree, and code data of an image is generated.

【0015】しかし、この方法では、統計処理を2回行
い、正式なデータ圧縮処理を1回行うため、合計3回の
データ圧縮処理を行うことになり、多大な時間を必要と
する。
However, in this method, since statistical processing is performed twice and formal data compression processing is performed once, a total of three times of data compression processing are performed, which requires a large amount of time.

【0016】本発明の目的は、高速かつ高精度の固定長
化処理を行う画像データ圧縮システムを提供することで
ある。
An object of the present invention is to provide an image data compression system that performs high-speed and high-precision fixed length processing.

【0017】[0017]

【課題を解決するための手段】本発明の画像データ圧縮
システムは、ブロック単位に分割して画像データを供給
する画像データ供給手段と、前記画像データ供給手段か
ら供給されるブロック単位の画像データを離散コサイン
変換(DCT)してブロック単位のDCT係数を生成す
るDCT手段と、前記DCT手段が1つのブロックのD
CT係数を生成する毎に、そのDCT係数について第1
および第2のデータ圧縮度で符号データを生成する符号
データ生成手段と、前記符号データ生成手段が生成する
第1および第2のデータ圧縮度のそれぞれについての符
号データの量を、供給される全てのブロックについて累
算するカウンタと、前記カウンタにより生成される第1
および第2のデータ圧縮度の両者の符号データ量に応じ
て、目標とするデータ量の符号データを生成するために
適当と考えられる第3のデータ圧縮度および該第3のデ
ータ圧縮度より高いデータ圧縮度の第4のデータ圧縮度
を推定するデータ圧縮度推定手段(7)とを有する。
An image data compression system according to the present invention comprises an image data supply means for supplying image data by dividing the image data into blocks, and an image data supply means for supplying the image data in blocks supplied from the image data supply means. DCT means for generating DCT coefficients for each block by performing a discrete cosine transform (DCT);
Each time a CT coefficient is generated, a first
And code data generating means for generating code data with the second data compression degree, and the amount of code data for each of the first and second data compression degrees generated by the code data generation means. A counter that accumulates for the block of
A third data compression degree considered to be appropriate for generating code data of a target data amount, and a third data compression degree higher than the third data compression degree, in accordance with both the code data amounts of the first and second data compression degrees Data compression degree estimating means (7) for estimating a fourth data compression degree of the data compression degree.

【0018】DCT手段が第1のブロックのDCT係数
を生成し終わると、符号データ生成手段は、当該DCT
係数について、第1のデータ圧縮度で符号データを生成
し続いて第2のデータ圧縮度で符号データを生成する。
DCT手段は、第1のブロックのDCT係数を生成した
後、第2のブロックのDCT係数を生成することができ
る。DCT手段が第1のブロックのDCT係数を生成し
終われば、符号データ生成手段が少なくとも2種類のデ
ータ圧縮度で符号データを生成する工程と、DCT手段
が第2のブロックのDCT係数を生成する工程を並列化
させることができる。当該工程を並列化させることによ
り、圧縮処理の高速化を図ることができる。また、デー
タ圧縮度推定手段は、目標符号データ量を生成するため
の第3のデータ圧縮度および該第3のデータ圧縮度より
高いデータ圧縮度の第4のデータ圧縮度を推定すること
ができる。第3のデータ圧縮度が適切であれば、第3の
データ圧縮度を用いて正式な圧縮を行えばよい。第3の
データ圧縮度では目標符号データ量より多い符号データ
が生成されてしまうときには、第4のデータ圧縮度を用
いれば、少なめの符号データを生成することができる。
When the DCT means has finished generating the DCT coefficients of the first block, the code data generating means executes the DCT coefficient processing.
For the coefficients, code data is generated at a first data compression degree, and subsequently, code data is generated at a second data compression degree.
After generating the DCT coefficients of the first block, the DCT means can generate the DCT coefficients of the second block. When the DCT means has finished generating the DCT coefficients of the first block, the code data generating means generates code data with at least two types of data compression, and the DCT means generates the DCT coefficients of the second block. Processes can be parallelized. By performing the steps in parallel, the speed of the compression processing can be increased. Further, the data compression degree estimating means can estimate a third data compression degree for generating the target code data amount and a fourth data compression degree higher than the third data compression degree. . If the third data compression degree is appropriate, formal compression may be performed using the third data compression degree. When code data larger than the target code data amount is generated at the third data compression degree, a smaller code data can be generated by using the fourth data compression degree.

【0019】[0019]

【発明の実施の形態】図2は、本発明の実施例による画
像データ圧縮システムが行う処理手順を示すフローチャ
ートである。
FIG. 2 is a flowchart showing a processing procedure performed by an image data compression system according to an embodiment of the present invention.

【0020】ステップS1では、統計処理を行う。この
統計処理は、1回の圧縮時間の間に2種類のデータ圧縮
度についての符号データ量を算出する。通常、2種類の
データ圧縮度についての符号データ量を算出するには、
最低でも2回のデータ圧縮処理の時間が必要になる。こ
こでの統計処理の特徴は、2種類のデータ圧縮度につい
ての符号データを効率的に生成し、短時間で処理するこ
とである。符号データを生成した後、当該2種類の符号
データの量を基にして、正式なデータ圧縮度を2種類決
定する。
In step S1, statistical processing is performed. This statistical processing calculates the amount of code data for two types of data compression during one compression time. Usually, to calculate the amount of code data for two types of data compression,
At least two data compression times are required. The feature of the statistical processing here is that code data for two types of data compression is efficiently generated and processed in a short time. After generating the code data, two formal data compression degrees are determined based on the amounts of the two types of code data.

【0021】当該2種類のデータ圧縮度は、第1候補の
データ圧縮度と第2候補のデータ圧縮度である。第1候
補のデータ圧縮度は、最適値として算出されるデータ圧
縮度である。第2候補のデータ圧縮度は、第1候補のデ
ータ圧縮度では不適切な場合に用いられる。
The two types of data compression are a first candidate data compression and a second candidate data compression. The data compression degree of the first candidate is a data compression degree calculated as an optimum value. The data compression degree of the second candidate is used when the data compression degree of the first candidate is inappropriate.

【0022】ステップS2では、統計処理で決定された
第1および第2候補のデータ圧縮度で正式なデータ圧縮
処理を行う。このデータ圧縮処理により、画像の符号デ
ータが2種類生成される。第1候補のデータ圧縮度によ
り生成される符号データの量は、目標のデータ量に高精
度で近づけることができる。
In step S2, formal data compression processing is performed using the data compression degrees of the first and second candidates determined by the statistical processing. By this data compression processing, two types of code data of an image are generated. The amount of code data generated based on the data compression degree of the first candidate can approach the target data amount with high accuracy.

【0023】統計処理は、概ねの符号データ量を見積も
るものであるので、第1候補のデータ圧縮度でデータ圧
縮を行っても、目標符号データ量と同一の符号データ量
が生成されるとは限らない。場合により、生成される符
号データ量は、目標符号データ量よりも多かったり少な
かったりする。
Since the statistical processing estimates the approximate code data amount, even if data compression is performed at the first candidate data compression degree, the same code data amount as the target code data amount is generated. Not exclusively. In some cases, the generated code data amount is larger or smaller than the target code data amount.

【0024】符号データは、最終的に例えばメモリカー
ド等の記憶媒体に記憶される。記憶媒体は、記憶容量が
有限であり、最大記憶可能容量を越えて、符号データを
記憶させることはできない。画像データ圧縮システムで
は、目標符号データ量より多い符号データ量を生成しな
いように留意する必要がある。
The code data is finally stored in a storage medium such as a memory card. The storage medium has a finite storage capacity, and cannot store code data exceeding the maximum storable capacity. In the image data compression system, care must be taken not to generate a code data amount larger than the target code data amount.

【0025】そこで、第1候補のデータ圧縮度でデータ
圧縮を行った結果、目標符号データ量より多い符号デー
タ量が生成されてしまった場合には、第2候補のデータ
圧縮度により生成される符号データを採用する。第2候
補のデータ圧縮度は、第1候補のデータ圧縮度より高い
データ圧縮度である。第2候補のデータ圧縮度によれ
ば、少量の符号データを生成することができる。
Therefore, as a result of performing data compression at the data compression degree of the first candidate, if a code data amount larger than the target code data amount is generated, the data is generated based on the data compression degree of the second candidate. Use coded data. The data compression degree of the second candidate is higher than the data compression degree of the first candidate. According to the data compression degree of the second candidate, a small amount of code data can be generated.

【0026】第2候補のデータ圧縮度によっても、目標
符号データ量より多い符号データが生成されてしまう場
合は、第1および第2候補のデータ圧縮度を参照して新
たなデータ圧縮度を決定する。その後、当該新たなデー
タ圧縮度を用いて、再度データ圧縮を行う。再度データ
圧縮を行うことにより、目標符号データ量により近いデ
ータ量の符号データを生成することができる。
If code data larger than the target code data amount is generated even by the data compression degree of the second candidate, a new data compression degree is determined with reference to the data compression degrees of the first and second candidates. I do. Then, data compression is performed again using the new data compression degree. By performing data compression again, it is possible to generate code data having a data amount closer to the target code data amount.

【0027】以上で、固定長データ圧縮処理は終了す
る。第1および第2候補のデータ圧縮度を算出し、当該
データ圧縮度を用いてデータ圧縮を行うことにより、高
精度の固定長圧縮を行うことができる。
Thus, the fixed-length data compression processing ends. By calculating the data compression degrees of the first and second candidates and performing data compression using the data compression degrees, high-precision fixed-length compression can be performed.

【0028】図1は、本実施例による画像データ圧縮シ
ステムの構成を示すブロック図である。この画像データ
圧縮システムは、デジタル静止画像の標準的な圧縮方式
であるJPEG(joint photographic expert group )
方式の符号データを生成する。従来のJPEG方式のシ
ステムの資源をそのまま活用することができる。
FIG. 1 is a block diagram showing the configuration of an image data compression system according to this embodiment. This image data compression system uses a JPEG (joint photographic expert group) which is a standard compression method for digital still images.
Generate code data of the system. The resources of the conventional JPEG system can be used as they are.

【0029】画像データ圧縮システムは、画像メモリ
1、離散コサイン変換(以下、DCTという)部2、D
CT係数メモリ3、量子化部4、符号化部5、符号デー
タ量カウント部6、スケールファクタ決定部7、および
コントローラ8を有する。コントローラ8は、他の全て
の処理ブロックとの間でタイミング信号の受け渡しを行
い、処理ブロック間のタイミングを調整する。
The image data compression system includes an image memory 1, a discrete cosine transform (hereinafter referred to as DCT) unit 2, D
It has a CT coefficient memory 3, a quantization unit 4, an encoding unit 5, a code data amount counting unit 6, a scale factor determination unit 7, and a controller 8. The controller 8 exchanges timing signals with all other processing blocks and adjusts timing between the processing blocks.

【0030】次に、各処理ブロックについて説明する。
画像メモリ1は、例えば、DRAMやフラッシュメモリ
であり、1フレームの画像データを記憶することができ
る。画像メモリ1には、通常ラスタ形式で画像データが
記憶される。画像データは、複数の画素データからな
る。
Next, each processing block will be described.
The image memory 1 is, for example, a DRAM or a flash memory, and can store one frame of image data. The image memory 1 usually stores image data in a raster format. The image data is composed of a plurality of pixel data.

【0031】ラスタ形式とは、1フレームの画像につい
ての以下の画素データの並びである。まず、画像の左上
隅の画素から始まって右水平方向に向かい順次並ぶ。右
端の画素まで行ったら、続いて、次のラインの左端の画
素から始まり、右水平方向に向かい順次並ぶ。以下、同
様にして、1番下のラインまで行う。右下隅の画素が最
後のデータとなる。
The raster format is an arrangement of the following pixel data for one frame image. First, the images are arranged sequentially starting from the pixel at the upper left corner of the image toward the right horizontal direction. After reaching the rightmost pixel, subsequently, starting from the leftmost pixel of the next line, the pixels are sequentially arranged in the right horizontal direction. Hereinafter, the process is similarly performed up to the bottom line. The pixel at the lower right corner is the last data.

【0032】画像データ圧縮システムは、基本的に、8
×8画素のブロック毎に処理を行うため、画像メモリ1
は、画像データをラスタ形式からブロック形式に変換
し、DCT部2に供給する。白黒画像は、画像データが
1種類である。カラー画像は、輝度データと色データと
に別れるが、それぞれを別の画像データとしてラスタ/
ブロック変換する。
The image data compression system basically has an 8
Since processing is performed for each block of × 8 pixels, the image memory 1
Converts the image data from the raster format to the block format and supplies the data to the DCT unit 2. A monochrome image has one type of image data. A color image is divided into luminance data and color data.
Perform block conversion.

【0033】ブロック形式とは、1フレームの画像につ
いての以下の画素データの並びである。1フレームの画
像は、複数のブロックに領域分割される。1ブロック
は、8×8画素である。1フレームにおけるブロックの
順番は、上記のラスタ形式と同様に、左上隅のブロック
から始まり、右水平方向に並ぶ。最後のブロックは、右
下隅のブロックである。ブロック内の画素データの並び
は、やはりラスタ形式と同様であり、ブロック内の左上
隅の画素データから始まり、右水平方向に並ぶ。最後の
画素データは、ブロック内の右下隅の画素データであ
る。
The block format is an arrangement of the following pixel data for one frame image. One frame image is divided into a plurality of blocks. One block is 8 × 8 pixels. The order of the blocks in one frame starts from the block at the upper left corner and is arranged in the right horizontal direction as in the above-mentioned raster format. The last block is the block in the lower right corner. The arrangement of the pixel data in the block is also the same as in the raster format, starting from the pixel data at the upper left corner in the block and lining up in the right horizontal direction. The last pixel data is the pixel data at the lower right corner in the block.

【0034】DCT部2には、ブロック形式の画像デー
タIが供給される。以下は、1ブロックの画像データを
1単位として処理を行う。つまり、JPEG圧縮は、1
枚の画像を8×8画素のブロックに分割し、当該ブロッ
クを単位に、以下の処理を行う。
The DCT unit 2 is supplied with image data I in block format. Hereinafter, processing is performed with one block of image data as one unit. In other words, JPEG compression is 1
The image is divided into blocks of 8 × 8 pixels, and the following processing is performed for each block.

【0035】DCT部2は、ブロック単位の画像データ
IについてDCT処理を行う。DCT処理は、画像デー
タIを、転置コサイン係数行列Dt とコサイン係数行列
Dとで挟み、行列演算を行うことによって、DCT係数
Fを得る。
The DCT unit 2 performs a DCT process on the image data I in block units. In the DCT processing, the image data I is interposed between a transposed cosine coefficient matrix Dt and a cosine coefficient matrix D, and a matrix operation is performed to obtain a DCT coefficient F.

【0036】F=Dt ID ここで、DCT係数Fは、8×8の行列であり、空間周
波数成分を示す。
F = D t ID Here, the DCT coefficient F is an 8 × 8 matrix and indicates a spatial frequency component.

【0037】DCT係数メモリ3は、例えばDRAMや
SRAMであり、DCT部2で生成されるDCT係数F
を記憶する。
The DCT coefficient memory 3 is, for example, a DRAM or an SRAM, and has a DCT coefficient F generated by the DCT unit 2.
Is stored.

【0038】次に、量子化部4の構成を説明する。量子
化テーブル4は、基準量子化テーブルメモリ11と乗算
器12とマルチプレクサ71と除算器15を有する。メ
モリ11は、基準量子化テーブルQを記憶する。
Next, the configuration of the quantization unit 4 will be described. The quantization table 4 includes a reference quantization table memory 11, a multiplier 12, a multiplexer 71, and a divider 15. The memory 11 stores a reference quantization table Q.

【0039】図3は、基準量子化テーブルQの例を示
す。前述のように、画像データ圧縮システムは、8×8
のブロック単位でデータ圧縮を行うので、それに対応し
量子化テーブルQは、8×8の行列により構成される。
FIG. 3 shows an example of the reference quantization table Q. As described above, the image data compression system is 8 × 8
, The quantization table Q is configured by an 8 × 8 matrix.

【0040】基準量子化テーブルQは、標準のデータ圧
縮度でデータ圧縮を行うための量子化テーブルである。
量子化処理は、8×8のDCT係数Fに対して、量子化
テーブルQ内の対応する係数で除算を行う。DCT係数
は、行列の左上方向ほど空間的周波数成分が低く、右下
方向ほど周波数成分が高い。基準量子化テーブルQは、
全体として低い周波数成分ほど細かく、高い周波数成分
ほど粗く量子化を行うことを示している。一般的に、デ
ータ圧縮は、人間の視覚特性を考慮して、また高周波成
分にノイズが多いことを考慮して、画像データの高周波
成分の情報を削ることにより行う。
The reference quantization table Q is a quantization table for performing data compression at a standard data compression degree.
The quantization process divides the 8 × 8 DCT coefficient F by the corresponding coefficient in the quantization table Q. The DCT coefficients have lower spatial frequency components in the upper left direction of the matrix, and higher frequency components in the lower right direction. The reference quantization table Q is
As a whole, a lower frequency component performs finer quantization and a higher frequency component performs coarser quantization. Generally, data compression is performed by removing information on high-frequency components of image data in consideration of human visual characteristics and high-frequency components having a lot of noise.

【0041】図1において、マルチプレクサ71は、コ
ントローラ8の制御の下、第1のスケールファクタSF
aまたは第2のスケールファクタSFbのいずれかを乗
算器12に供給する。乗算器12は、基準量子化テーブ
ルQとスケールファクタSFaまたはSFbの乗算を行
い、第1の量子化テーブルQ×SFaまたは第2の量子
化テーブルQ×SFbを出力する。
In FIG. 1, a multiplexer 71 controls a first scale factor SF under the control of a controller 8.
a or the second scale factor SFb is supplied to the multiplier 12. The multiplier 12 multiplies the reference quantization table Q by a scale factor SFa or SFb, and outputs a first quantization table Q × SFa or a second quantization table Q × SFb.

【0042】第1の量子化テーブルと第2の量子化テー
ブルとでは、スケールファクタSFが異なる。符号デー
タのデータ圧縮度は、スケールファクタSFの値により
決まる。つまり、第1の量子化テーブルと第2の量子化
テーブルの違いは、データ圧縮度の違いを示す。
The scale factor SF differs between the first quantization table and the second quantization table. The data compression degree of the code data is determined by the value of the scale factor SF. That is, a difference between the first quantization table and the second quantization table indicates a difference in data compression degree.

【0043】マルチプレクサ71が第1のスケールファ
クタSFaを乗算器12に供給すると、除算器15は、
以下の演算を行い、量子化データRuvを出力する。当
該量子化データRuvは、第1の量子化テーブルにより
量子化されるデータである。丸め込みroundは、最
も近い整数への整数化を意味し、DCT係数FuvはD
CT係数メモリ3に記憶されている係数である。
When the multiplexer 71 supplies the first scale factor SFa to the multiplier 12, the divider 15
The following operation is performed to output the quantized data Ruv. The quantized data Ruv is data that is quantized by the first quantization table. Rounding round means rounding to the nearest integer, and the DCT coefficient Fuv is D
The coefficients are stored in the CT coefficient memory 3.

【0044】 Ruv=round〔Fuv/(SFa×Quv)〕 一方、マルチプレクサ71が第2のスケールファクタS
Fbを乗算器12に供給すると、除算器15は、以下の
演算を行い、量子化データRuvを出力する。当該量子
化データRuvは、第2の量子化テーブルにより量子化
されるデータである。
Ruv = round [Fuv / (SFa × Quv)] On the other hand, the multiplexer 71 sets the second scale factor S
When Fb is supplied to the multiplier 12, the divider 15 performs the following operation and outputs quantized data Ruv. The quantized data Ruv is data that is quantized by the second quantization table.

【0045】 Ruv=round〔Fuv/(SFb×Quv)〕 符号化部5は、量子化データRuvに対して符号化処理
を行う。符号化処理は、ランレングス符号化およびハフ
マン符号化の処理を含む。ランレングス符号化は、0の
値が連続して続くようなデータに対して、高圧縮を行う
ことができる。量子化データRuvは、行列の右下部分
(高周波成分)に多くの0が集まりやすい。この性質を
利用して、量子化データの行列Ruvをジグザグスキャ
ンでランレングス符号化を行えば、高圧縮を行うことが
できる。ジグザグスキャンとは、低周波成分から高周波
成分へ向けて順次スキャンを行う方法である。
Ruv = round [Fuv / (SFb × Quv)] The encoding unit 5 performs an encoding process on the quantized data Ruv. The encoding process includes processes of run-length encoding and Huffman encoding. The run-length encoding can perform high compression on data in which a value of 0 continuously follows. In the quantized data Ruv, many zeros tend to be collected in the lower right part (high-frequency component) of the matrix. By utilizing this property and performing run-length encoding of the matrix Ruv of quantized data by zigzag scanning, high compression can be performed. Zigzag scanning is a method of sequentially scanning from low frequency components to high frequency components.

【0046】符号化部5は、ランレングス符号化を行っ
た後に、ハフマン符号化を行い、符号データを生成す
る。
The encoding unit 5 performs Huffman encoding after performing run-length encoding, and generates encoded data.

【0047】符号データ量カウント部6は、カウンタA
とカウンタBを有する。カウンタAは、第1の量子化テ
ーブル(スケールファクタSFa)で量子化を行い符号
データを生成したときの符号データ量NAをカウントす
る。カウンタBは、第2の量子化テーブル(スケールフ
ァクタSFb)で量子化を行い符号データを生成したと
きの符号データ量NBをカウントする。
The code data amount counting section 6 has a counter A
And a counter B. The counter A counts a code data amount NA when the code data is generated by performing quantization using the first quantization table (scale factor SFa). The counter B counts a code data amount NB when code data is generated by performing quantization using the second quantization table (scale factor SFb).

【0048】言い換えれば、統計処理時において、カウ
ンタAは、第1の基準データ圧縮度(スケールファクタ
SFa)で圧縮したときの符号データ量NAをカウント
する。カウンタBは、第2の基準データ圧縮度(スケー
ルファクタSFb)で圧縮したときの符号データ量NB
をカウントする。
In other words, in the statistical processing, the counter A counts the code data amount NA when compressed at the first reference data compression degree (scale factor SFa). The counter B has a code data amount NB when compressed at the second reference data compression degree (scale factor SFb).
Count.

【0049】図4は、符号データ量カウント部6が符号
データ量をカウントする方法を示す。1フレームの画像
は、例えば、n個のブロックから構成される。符号デー
タは、ブロック単位で生成される。カウンタAとカウン
タBは、全てのブロック(n個のブロック)の符号デー
タの量を累算し、1フレームの画像の符号データの量を
算出する。
FIG. 4 shows a method in which the code data amount counting section 6 counts the code data amount. One frame image is composed of, for example, n blocks. Code data is generated in block units. The counters A and B accumulate the amount of code data of all blocks (n blocks) and calculate the amount of code data of one frame image.

【0050】カウンタAは、第1の量子化テーブルを用
いて圧縮を行ったときの符号データ量NAを算出する。
カウンタBは、第2の量子化テーブルを用いて圧縮を行
ったときの符号データ量NBを算出する。
The counter A calculates the code data amount NA when the compression is performed using the first quantization table.
The counter B calculates the code data amount NB when the compression is performed using the second quantization table.

【0051】ここでは、第1の量子化テーブルについて
のスケールファクタSFaが、第2の量子化テーブルに
ついてのスケールファクタSFbよりも大きいときの例
を示す。つまり、第1の量子化テーブルを使えば、第2
の量子化テーブルを使ったときよりも高圧縮を行うこと
ができる。
Here, an example is shown in which the scale factor SFa for the first quantization table is larger than the scale factor SFb for the second quantization table. That is, if the first quantization table is used, the second
Higher compression than when using the quantization table of

【0052】同じ画像データについて、第1の量子化テ
ーブルを用いて圧縮を行ったときの符号データ量NA
は、第2の量子化テーブルを用いて圧縮を行ったときの
符号データ量NBよりも小さくなる。
Code data amount NA when the same image data is compressed using the first quantization table
Is smaller than the code data amount NB when compression is performed using the second quantization table.

【0053】図1において、スケールファクタ決定部7
は、2種類の符号データ量NAとNBを基にして、第1
および第2候補のスケールファクタSFxを決定する。
第1候補のスケールファクタSFxは、目標データ量N
Xの符号データを生成するためのデータ圧縮度として推
定される。
In FIG. 1, the scale factor determining unit 7
Is based on two types of code data amounts NA and NB.
And a second candidate scale factor SFx is determined.
The scale factor SFx of the first candidate is the target data amount N
It is estimated as a data compression degree for generating the code data of X.

【0054】スケールファクタ決定部7は、第1候補の
スケールファクタSFxの他、第2候補のスケールファ
クタSFxxを決定する。この後の処理で第1候補のス
ケールファクタSFxを用いてデータ圧縮を行った際、
目標データ量NXに近くかつ目標データ量NXより小さ
い符号データを生成できれば、第2候補のスケールファ
クタSFxxを用いた符号データは使用されない。ただ
し、第1候補のスケールファクタSFxを用いてデータ
圧縮を行った際、目標データ量NXよりも大きい符号デ
ータが生成されてしまったときには、第1候補のスケー
ルファクタSFxによる符号データを用いることは適切
ではないので、第2候補のスケールファクタSFxxを
用いる。詳細は、後に説明する。
The scale factor determining section 7 determines the second candidate scale factor SFxx in addition to the first candidate scale factor SFx. In the subsequent processing, when data compression is performed using the first candidate scale factor SFx,
If code data close to the target data amount NX and smaller than the target data amount NX can be generated, the code data using the second candidate scale factor SFxx is not used. However, when data compression is performed using the first candidate scale factor SFx and code data larger than the target data amount NX is generated, it is not possible to use the code data based on the first candidate scale factor SFx. Since it is not appropriate, the second candidate scale factor SFxx is used. Details will be described later.

【0055】第1および第2の候補のスケールファクタ
SFx,SFxxが求まると、統計処理(図2のステッ
プS1)は終了する。
When the scale factors SFx and SFxx of the first and second candidates are obtained, the statistical processing (step S1 in FIG. 2) ends.

【0056】図5は、スケールファクタ決定部7の処理
を説明するためのグラフである。縦軸はスケールファク
タであり、横軸は符号データ量である。スケールファク
タ決定部7は、スケールファクタを符号データ量の関数
として保持する。一例として、スケールファクタが符号
データ量に比例する場合について説明する。
FIG. 5 is a graph for explaining the processing of the scale factor determining section 7. The vertical axis is the scale factor, and the horizontal axis is the code data amount. The scale factor determination unit 7 holds the scale factor as a function of the amount of code data. As an example, a case where the scale factor is proportional to the code data amount will be described.

【0057】第1のスケールファクタSFaを用いて圧
縮を行ったときには符号データ量NAが得られる。第2
のスケールファクタSFbを用いて圧縮を行ったときに
は符号データ量NBが得られる。これらのデータに基づ
き、図5に示すような特性(直線で近似)を設定する。
When compression is performed using the first scale factor SFa, a code data amount NA is obtained. Second
When the compression is performed using the scale factor SFb, the code data amount NB is obtained. Based on these data, characteristics (approximate by a straight line) as shown in FIG. 5 are set.

【0058】目標データ量NXは、外部から指示され
る。この目標データ量に対応するスケールファクタを上
述の特性から求める。目標データ量NXを得るために
は、第1候補のスケールファクタSFxを用いて圧縮を
行えばよいことが判る。
The target data amount NX is designated externally. A scale factor corresponding to the target data amount is obtained from the above-described characteristics. It can be seen that in order to obtain the target data amount NX, compression should be performed using the first candidate scale factor SFx.

【0059】第1候補のスケールファクタSFxは、図
5より、以下のようにして求めることができる。
The first candidate scale factor SFx can be obtained from FIG. 5 as follows.

【0060】 (NB−NA):(NX−NA)=(SFa−SFb):(SFa−SFx) (NB−NA)×(SFa−SFx)=(NX−NA)×(SFa−SFb) (SFa−SFx)=(NX−NA)×(SFa−SFb)/(NB−NA) SFx=SFa−{(NX−NA)×(SFa−SFb)/(NB−NA)}(NB-NA): (NX-NA) = (SFa-SFb): (SFa-SFx) (NB-NA) × (SFa-SFx) = (NX-NA) × (SFa-SFb) ( SFa−SFx) = (NX−NA) × (SFa−SFb) / (NB−NA) SFx = SFa − {(NX−NA) × (SFa−SFb) / (NB−NA)}

【0061】なお、上式を用いて、スケールファクタS
Fxを求める他、上式の近似式によりスケールファクタ
SFxを求めてもよい。また、計算式により求める他、
ルックアップテーブルを用いてスケールファクタSFx
を決定してもよい。さらに、スケールファクタと符号デ
ータ量の関係は、比例関係に限らず反比例等、他の関係
に設定することもできる。ただし、短時間かつ簡単な構
成で、スケールファクタSFxを決定できることが望ま
しい。
Note that, using the above equation, the scale factor S
In addition to obtaining Fx, the scale factor SFx may be obtained by the above approximate expression. In addition, in addition to the calculation formula,
Scale factor SFx using lookup table
May be determined. Further, the relationship between the scale factor and the code data amount is not limited to the proportional relationship, but may be set to another relationship such as an inverse proportionality. However, it is desirable that the scale factor SFx can be determined with a short and simple configuration.

【0062】また、スケールファクタSFxを用いてデ
ータ圧縮処理を行い符号データを生成する際、当該符号
データ量が目標データ量を越えないようにするため、上
記で求めたスケールファクタにさらに安全率を掛けるよ
うにしてもよい。
Further, when code data is generated by performing data compression processing using the scale factor SFx, a safety factor is further added to the scale factor obtained above in order to prevent the code data amount from exceeding the target data amount. You may make it hang.

【0063】次に、第2候補のスケールファクタSFx
xを決定する方法を説明する。第2候補のスケールファ
クタSFxxは、第1候補のスケールファクタSFxで
は目標データ量NXよりも多いデータ量が生成されてし
まうときに用いられる。第2候補のスケールファクタS
Fxxを用いた符号データ量は、第1候補のスケールフ
ァクタSFxを用いた符号データ量よりも少なくなるよ
うに、第2候補のスケールファクタSFxxを設定する
必要がある。すなわち、スケールファクタを1以下の範
囲で設定する場合、第2候補のスケールファクタSFx
xは、第1候補のスケールファクタSFxよりも小さく
(高いデータ圧縮度に)設定する必要がある。
Next, the second candidate scale factor SFx
A method for determining x will be described. The second candidate scale factor SFxx is used when a data amount larger than the target data amount NX is generated with the first candidate scale factor SFx. Second candidate scale factor S
It is necessary to set the second candidate scale factor SFxx so that the code data amount using Fxx is smaller than the code data amount using the first candidate scale factor SFx. That is, when the scale factor is set in a range of 1 or less, the second candidate scale factor SFx
x needs to be set smaller (to a higher data compression degree) than the first candidate scale factor SFx.

【0064】スケールファクタは、1以上の値に設定す
ることもできるが、以下、説明の便宜のため、1以下の
範囲で設定する場合を例に説明する。
The scale factor can be set to a value of 1 or more, but for convenience of explanation, an example in which the scale factor is set to a value of 1 or less will be described below.

【0065】第2候補のスケールファクタSFxxは、
上記で求めた第1候補のスケールファクタSFxを基に
例えば次式により求めることができる。
The second candidate scale factor SFxx is
Based on the first candidate scale factor SFx obtained above, for example, it can be obtained by the following equation.

【0066】SFxx=0.9×SFx また、他の方法により第2候補のスケールファクタSF
xxを求めることもできる。例えば、目標データ量NX
よりも小さい目標データ量NXXを、NXX=0.9×
NXにより設定し、図5に示すような特性線を用いて、
目標データ量NXXに対応するスケールファクタを求
め、それを第2候補のスケールファクタSFxxとして
もよい。
SFxx = 0.9 × SFx Further, the second candidate scale factor SF is obtained by another method.
xx can also be determined. For example, the target data amount NX
A target data amount NXX smaller than NXX = 0.9 ×
NX, and using a characteristic line as shown in FIG.
A scale factor corresponding to the target data amount NXX may be obtained and used as the second candidate scale factor SFxx.

【0067】図1に戻り、統計処理が終了した後、デー
タ圧縮処理(図2のステップS2)を行う。データ圧縮
処理では、第1候補のスケールファクタSFxを第1の
スケールファクタSFaとして、第2候補のスケールフ
ァクタSFxxを第2のスケールファクタSFbとし
て、量子化部4に入力する。第1候補のスケールファク
タSFxを用いて圧縮を行えば、目標データ量NXに近
い符号データが生成されることが推定できる。
Returning to FIG. 1, after the statistical processing is completed, data compression processing (step S2 in FIG. 2) is performed. In the data compression process, the quantization unit 4 inputs the first candidate scale factor SFx as the first scale factor SFa and the second candidate scale factor SFxx as the second scale factor SFb. If compression is performed using the first candidate scale factor SFx, it can be estimated that code data close to the target data amount NX is generated.

【0068】第1および第2候補のスケールファクタS
Fx,SFxxを用いて正式なデータ圧縮処理を行う。
データ圧縮処理は、スケールファクタの値が異なること
を除けば、基本的に上記の統計処理と同じ処理である。
The scale factor S of the first and second candidates
Formal data compression processing is performed using Fx and SFxx.
The data compression processing is basically the same as the above-described statistical processing except that the value of the scale factor is different.

【0069】符号化部5は、第1候補のスケールファク
タSFxによる符号データDと第2候補のスケールファ
クタSFxxによる符号データDを時分割で交互に出力
する。詳細は、後に図6および図7を参照しながら説明
する。
The encoding section 5 alternately outputs the code data D based on the first candidate scale factor SFx and the code data D based on the second candidate scale factor SFxx in a time-division manner. Details will be described later with reference to FIGS.

【0070】符号データDは、マルチプレクサ83を介
して時分割でメモリ81またはメモリ82に記憶され
る。メモリ81には、第1候補のスケールファクタSF
xによる第1の符号データが記憶される。メモリ82に
は、第2候補のスケールファクタSFxxによる第2の
符号データが記憶される。
The code data D is stored in the memory 81 or 82 in a time-division manner via the multiplexer 83. The memory 81 has a first candidate scale factor SF.
The first code data according to x is stored. The memory 82 stores the second code data based on the second candidate scale factor SFxx.

【0071】符号データ量カウント部6は、符号データ
量NAとNBを出力する。符号データ量NAは、第1候
補のスケールファクタSFxを用いたときの符号データ
量である。符号データ量NBは、第2候補のスケールフ
ァクタSFxxを用いたときの符号データ量である。
The code data amount counting section 6 outputs the code data amounts NA and NB. The code data amount NA is the code data amount when the first candidate scale factor SFx is used. The code data amount NB is a code data amount when the second candidate scale factor SFxx is used.

【0072】符号データ量NAとNBの大きさにより、
以下のような場合に分けることができる。各場合によ
り、マルチプレクサ84は、メモリ81に記憶されてい
る第1の符号データまたはメモリ82に記憶されている
第2の符号データのいずれかを符号データDDとして外
部に出力する。符号データDDは、例えばメモリカード
に記憶される。
According to the code data amount NA and the size of NB,
It can be divided into the following cases. In each case, the multiplexer 84 outputs either the first code data stored in the memory 81 or the second code data stored in the memory 82 to the outside as the code data DD. The code data DD is stored in, for example, a memory card.

【0073】(1)符号データ量NAが目標データ量N
Xより小さいかまたは同じ場合 第1候補のスケールファクタSFxを用いて圧縮を行う
と、符号データ量がNAになる。この場合、符号データ
量NAは、目標データ量NXよりも小さいかまたは同じ
なので、第1候補のスケールファクタSFxによる符号
データを採用する。すなわち、符号化部5から出力され
る符号データのうち、第1候補のスケールファクタSF
xにより生成される第1の符号データを正式な符号デー
タDDとして出力する。
(1) Code data amount NA is equal to target data amount N
When the compression factor is smaller than or equal to X When the compression is performed using the first candidate scale factor SFx, the code data amount becomes NA. In this case, since the code data amount NA is smaller than or equal to the target data amount NX, the code data based on the first candidate scale factor SFx is employed. That is, among the code data output from the encoding unit 5, the first candidate scale factor SF
The first code data generated by x is output as formal code data DD.

【0074】(2)符号データ量NAが目標データ量N
Xより大きい、かつ符号データ量NBが目標データ量N
Xより小さいかまたは同じ場合 符号データ量NAは、目標データ量NXより大きいの
で、第1候補のスケールファクタSFxによる符号デー
タを採用することができない。一方、符号データ量NB
は、目標データ量NXよりも小さいかまたは同じなの
で、第2候補のスケールファクタSFxxによる符号デ
ータを採用する。すなわち、符号化部5から出力される
符号データのうち、第2候補のスケールファクタSFx
xにより生成される第2の符号データを正式な符号デー
タDDとして出力する。
(2) The code data amount NA is equal to the target data amount N
X and the code data amount NB is equal to the target data amount N
When the code data amount is smaller than or equal to X Since the code data amount NA is larger than the target data amount NX, the code data with the first candidate scale factor SFx cannot be adopted. On the other hand, the code data amount NB
Is smaller than or equal to the target data amount NX, the code data based on the second candidate scale factor SFxx is adopted. That is, of the code data output from the encoding unit 5, the second candidate scale factor SFx
The second code data generated by x is output as formal code data DD.

【0075】(3)符号データ量NAおよびNBが共に
目標データ量NXより大きい場合 符号データ量NAおよびNBは、共に目標データ量NX
より大きいので、第1および第2候補のスケールファク
タSFx,SFxxによる符号データのいずれも採用す
ることができない。その場合、新たに第3候補のスケー
ルファクタSFxと第4候補のスケールファクタSFx
xを決定する。具体的には、スケールファクタ決定部7
が符号データ量NAとNBを基にして第3および第4候
補のスケールファクタSFx,SFxxを決定する。第
3および第4候補のスケールファクタSFx,SFxx
は、第1および第2候補のスケールファクタよりも小さ
な値にする必要がある。
(3) When both the code data amounts NA and NB are larger than the target data amount NX The code data amounts NA and NB are both the target data amount NX
Therefore, neither of the code data based on the first and second candidate scale factors SFx and SFxx can be adopted. In this case, a third candidate scale factor SFx and a fourth candidate scale factor SFx are newly added.
Determine x. Specifically, the scale factor determining unit 7
Determines the scale factors SFx and SFxx of the third and fourth candidates based on the code data amounts NA and NB. Third and fourth candidate scale factors SFx, SFxx
Needs to be smaller than the scale factors of the first and second candidates.

【0076】その後、第3候補および第4候補のスケー
ルファクタSFx,SFをそれぞれ第1および第2のス
ケールファクタSFa,SFbとして量子化部4に入力
し、再び圧縮を行い、符号データを生成する。その後の
処理は、上記の第1および第2候補のスケールファクタ
の場合と同じである。それでも、目標データ量NXを越
える符号データが生成されたときには、上記の処理を繰
り返す。
Thereafter, the scale factors SFx and SF of the third and fourth candidates are input to the quantization unit 4 as first and second scale factors SFa and SFb, respectively, and compressed again to generate code data. . Subsequent processing is the same as the above-described case of the first and second candidate scale factors. Still, when code data exceeding the target data amount NX is generated, the above processing is repeated.

【0077】次に、図1の画像データ圧縮システムにお
いて、統計処理とデータ圧縮処理について処理手順を説
明する。統計処理とデータ圧縮処理は、基本的に同じ処
理である。
Next, the processing procedure of the statistical processing and the data compression processing in the image data compression system of FIG. 1 will be described. The statistical processing and the data compression processing are basically the same processing.

【0078】まず、統計処理について説明する。(1)統計処理 統計処理は、ほぼ1回のデータ圧縮処理の時間で2種類
の符号データの量NAとNBを算出する。これは、デー
タ圧縮処理の中でDCT部2における処理時間が圧倒的
に長いことの性質を利用して可能ならしめたものであ
る。
First, the statistical processing will be described. (1) Statistical Processing In statistical processing, the amounts NA and NB of two types of code data are calculated in approximately one data compression process. This is made possible by taking advantage of the overwhelmingly long processing time in the DCT unit 2 in the data compression processing.

【0079】DCT部2における処理時間は、全体の5
〜8割を占めている。1ブロック(8×8画素)の画像
データを、DCT処理(DCT部2)するのに要する時
間と量子化処理(量子化部4)するのに要する時間を比
較してみる。
The processing time in the DCT unit 2 is 5
It accounts for ~ 80%. The time required for DCT processing (DCT unit 2) and the time required for quantization processing (quantization unit 4) of one block (8 × 8 pixels) of image data will be compared.

【0080】DCT部2では、以下の回数の演算を行
う。ここでは、通常のDCTアルゴリズムを用いる場合
を示す。
The DCT unit 2 performs the following calculations. Here, a case where a normal DCT algorithm is used is shown.

【0081】 乗算 1024回 加算 896回 量子化部4では、以下の回数の演算を行う。Multiplication 1024 times Addition 896 times The quantization unit 4 performs the following number of calculations.

【0082】乗算 64(=8×8)回 以上のように、DCT部2が行う演算回数は、量子化部
4に比べ桁違いに多く、処理時間が圧倒的に長い。
Multiplication 64 (= 8 × 8) As described above, the number of operations performed by the DCT unit 2 is orders of magnitude larger than that of the quantization unit 4, and the processing time is overwhelmingly long.

【0083】図6は、図1の画像データ圧縮システムが
統計処理を行うタイミングを示すタイミングチャートで
ある。横軸は時間を示す。
FIG. 6 is a timing chart showing the timing at which the image data compression system of FIG. 1 performs statistical processing. The horizontal axis indicates time.

【0084】DCT部2は、処理α1、処理α2、処理
α3の順番で処理を行う。処理α1は、ブロック1(1
番目のブロック)の画像データについて行うDCT処理
である。処理α2はブロック2(2番目のブロック)の
画像データについて、処理α3はブロック3(3番目の
ブロック)の画像データについて行うDCT処理であ
る。
The DCT unit 2 performs processing in the order of processing α1, processing α2, and processing α3. The processing α1 is performed in block 1 (1
This is a DCT process performed on the image data of the (th block). Process α2 is a DCT process performed on image data of block 2 (second block), and process α3 is performed on image data of block 3 (third block).

【0085】DCT部2は、時刻t0において、ブロッ
ク1の画像データについてのDCT処理α1を開始す
る。コントローラ8は、時刻t10において、DCT処
理α1の終了を検知すると、DCT部2に、ブロック2
の画像データについてのDCT処理α2の開始を指示す
る。続いて、時刻t20において、DCT処理α2の終
了を検知すると、DCT部2に、ブロック3の画像デー
タについてのDCT処理α3の開始を指示する。時刻t
30において、DCT処理α3が終了する。DCT部2
は、画像データをブロック1からブロックn(最終ブロ
ック)まで連続して処理する。
At time t0, DCT unit 2 starts DCT processing α1 on the image data of block 1. When detecting the end of the DCT processing α1 at time t10, the controller 8 sends the block 2 to the DCT unit 2.
To start the DCT process α2 for the image data. Subsequently, when the end of the DCT process α2 is detected at time t20, the DCT unit 2 is instructed to start the DCT process α3 for the image data of the block 3. Time t
At 30, the DCT process α3 ends. DCT unit 2
Processes image data continuously from block 1 to block n (final block).

【0086】次に、量子化部4と符号化部5の処理につ
いて説明する。コントローラ8は、時刻t10におい
て、ブロック1の画像データIについてのDCT処理α
1の終了を検知すると、DCT処理α1により生成され
たDCT係数Fについて量子化処理β1Aを開始するこ
とを量子化部4に指示する。量子化部4は、第1の量子
化テーブル(スケールファクタSFa)を用いて量子化
処理β1Aを行う。量子化処理β1Aは、ブロック1の
DCT係数Fを第1の量子化テーブルで量子化する処理
である。
Next, the processing of the quantization unit 4 and the encoding unit 5 will be described. At time t10, the controller 8 performs the DCT processing α on the image data I of the block 1.
When the end of 1 is detected, the quantization unit 4 is instructed to start the quantization process β1A for the DCT coefficient F generated by the DCT process α1. The quantization unit 4 performs a quantization process β1A using the first quantization table (scale factor SFa). The quantization process β1A is a process of quantizing the DCT coefficient F of the block 1 using the first quantization table.

【0087】コントローラ8は、時刻t11において、
量子化処理β1Aの終了を検知すると、量子化処理β1
Aにより生成された量子化データRについて符号化処理
γ1Aを開始することを符号化部5に指示する。符号化
処理γ1Aは、ブロック1について第1の量子化テーブ
ルを用いたデータについての符号化処理である。
At time t11, the controller 8
When the end of the quantization processing β1A is detected, the quantization processing β1
The encoding unit 5 is instructed to start the encoding process γ1A for the quantized data R generated by A. The encoding process γ1A is an encoding process for data of the block 1 using the first quantization table.

【0088】時刻t12において、符号化処理γ1Aが
終了すると、第1の量子化テーブルを用いた符号データ
が生成される。その後、図6には図示しないが、符号デ
ータ量カウント部6(図1)のカウンタAがその符号デ
ータの量をカウントする。
At time t12, when the encoding process γ1A is completed, encoded data using the first quantization table is generated. Thereafter, although not shown in FIG. 6, the counter A of the code data amount counting unit 6 (FIG. 1) counts the amount of the code data.

【0089】以上は、第1の量子化テーブル(スケール
ファクタSFa)を用いて、量子化処理と符号化処理を
行った。次に、第2の量子化テーブル(スケールファク
タSFb)を用いて、量子化処理と符号化処理を行う。
In the above, the quantization process and the encoding process were performed using the first quantization table (scale factor SFa). Next, quantization processing and encoding processing are performed using the second quantization table (scale factor SFb).

【0090】コントローラ8は、時刻t12において、
符号化処理γ1Aの終了を検知すると、DCT処理α1
により生成されたDCT係数Fについて量子化処理β1
Bを開始することを量子化部4に指示する。ただし、コ
ントローラ8は、その際、第2の量子化テーブルを用い
て量子化処理β1Bを行うことを指示する。量子化処理
β1Bは、ブロック1のDCT係数Fを第2の量子化テ
ーブルで量子化する処理である。
At time t12, the controller 8
When the end of the encoding process γ1A is detected, the DCT process α1
Quantization process β1 for the DCT coefficient F generated by
Instruct the quantization unit 4 to start B. However, at this time, the controller 8 instructs to perform the quantization process β1B using the second quantization table. The quantization process β1B is a process for quantizing the DCT coefficient F of the block 1 using the second quantization table.

【0091】コントローラ8は、時刻t13において、
量子化処理β1Bの終了を検知すると、量子化処理β1
Bにより生成された量子化データRについて符号化処理
γ1Bを開始することを符号化部5に指示する。符号化
処理γ1Bは、ブロック1について第2の量子化テーブ
ルを用いたデータについての符号化処理である。
At time t13, the controller 8
When the end of the quantization process β1B is detected, the quantization process β1
The encoding unit 5 is instructed to start the encoding process γ1B for the quantized data R generated by B. The encoding process γ1B is an encoding process for data of the block 1 using the second quantization table.

【0092】時刻t14において、符号化処理γ1Bが
終了すると、第2の量子化テーブルを用いた符号データ
が生成される。その後、図6には図示しないが、符号デ
ータ量カウント部6(図1)のカウンタBがその符号デ
ータの量をカウントする。
At time t14, when the encoding process γ1B is completed, encoded data using the second quantization table is generated. Thereafter, although not shown in FIG. 6, the counter B of the code data amount counting unit 6 (FIG. 1) counts the amount of the code data.

【0093】時刻t12において、第1の量子化テーブ
ルによる符号データの生成が終了し、時刻t14におい
て、第2の量子化テーブルによる符号データの生成が終
了する。その後、時刻t20において、DCT処理α2
が終了する。すなわち、DCT処理α2を行っている間
に、量子化処理β1Aとβ1Bおよび符号化処理γ1A
とγ1Bが終了する。
At time t12, the generation of code data by the first quantization table ends, and at time t14, generation of code data by the second quantization table ends. Thereafter, at time t20, the DCT processing α2
Ends. That is, while performing the DCT processing α2, the quantization processing β1A and β1B and the encoding processing γ1A
And γ1B end.

【0094】以上は、ブロック1について、量子化処理
と符号化処理を行った。次に、ブロック2について、量
子化処理と符号化処理を行う。
In the above, the quantization process and the encoding process have been performed on the block 1. Next, quantization processing and encoding processing are performed on the block 2.

【0095】コントローラ8は、時刻t20において、
ブロック2の画像データIについてのDCT処理α2の
終了を検知すると、DCT処理α2により生成されたD
CT係数Fについて量子化処理β2Aを開始することを
量子化部4に指示する。コントローラ8は、その際、第
1の量子化テーブルを用いて量子化処理β2Aを行うこ
とを指示する。量子化処理β2Aは、ブロック2のDC
T係数Fを第1の量子化テーブルで量子化する処理であ
る。
At time t20, the controller 8
When the end of the DCT process α2 for the image data I of the block 2 is detected, the DT generated by the DCT process α2 is detected.
The quantization unit 4 is instructed to start the quantization process β2A for the CT coefficient F. At this time, the controller 8 instructs to perform the quantization process β2A using the first quantization table. The quantization process β2A is performed by the DC
This is a process for quantizing the T coefficient F using the first quantization table.

【0096】コントローラ8は、時刻t21において、
量子化処理β2Aの終了を検知すると、量子化処理β2
Aにより生成された量子化データRについて符号化処理
γ2Aを開始することを符号化部5に指示する。符号化
処理γ2Aは、ブロック2に対して第1の量子化テーブ
ルを用いたデータについての符号化処理である。
At time t21, the controller 8
When the end of the quantization process β2A is detected, the quantization process β2
The encoding unit 5 is instructed to start the encoding process γ2A for the quantized data R generated by A. The encoding process γ2A is an encoding process for data using the first quantization table for block 2.

【0097】時刻t22において、符号化処理γ2Aが
終了すると、第1の量子化テーブルを用いた符号データ
が生成される。その後、図6には図示しないが、符号デ
ータ量カウント部6(図1)のカウンタAがその符号デ
ータの量をカウントする。
At time t22, when the encoding process γ2A ends, encoded data using the first quantization table is generated. Thereafter, although not shown in FIG. 6, the counter A of the code data amount counting unit 6 (FIG. 1) counts the amount of the code data.

【0098】次に、第2の量子化テーブルを用いて量子
化処理と符号化処理を行う。コントローラ8は、時刻t
22において、符号化処理γ2Aの終了を検知すると、
DCT処理α2により生成されたDCT係数Fについて
量子化処理β2Bを開始することを量子化部4に指示す
る。ただし、コントローラ8は、その際、第2の量子化
テーブルを用いて量子化処理β2Bを行うことを指示す
る。量子化処理β2Bは、ブロック2のDCT係数Fを
第2の量子化テーブルで量子化する処理である。
Next, quantization processing and encoding processing are performed using the second quantization table. The controller 8 sets the time t
At 22, when the end of the encoding process γ2A is detected,
The quantization unit 4 is instructed to start the quantization process β2B for the DCT coefficient F generated by the DCT process α2. However, at this time, the controller 8 instructs to perform the quantization process β2B using the second quantization table. The quantization process β2B is a process for quantizing the DCT coefficient F of the block 2 using the second quantization table.

【0099】コントローラ8は、時刻t23において、
量子化処理β2Bの終了を検知すると、量子化処理β2
Bにより生成された量子化データRについて符号化処理
γ2Bを開始することを符号化部5に指示する。符号化
処理γ2Bは、ブロック2に対して第2の量子化テーブ
ルを用いたデータについての符号化処理である。
At time t23, the controller 8
When the end of the quantization process β2B is detected, the quantization process β2B
The encoding unit 5 is instructed to start the encoding process γ2B for the quantized data R generated by B. The encoding process γ2B is an encoding process for data on the block 2 using the second quantization table.

【0100】時刻t24において、符号化処理γ2Bが
終了すると、第2の量子化テーブルを用いた符号データ
が生成される。その後、図6には図示しないが、符号デ
ータ量カウント部6(図1)のカウンタBがその符号デ
ータの量をカウントする。
At time t24, when the encoding process γ2B is completed, encoded data using the second quantization table is generated. Thereafter, although not shown in FIG. 6, the counter B of the code data amount counting unit 6 (FIG. 1) counts the amount of the code data.

【0101】時刻t22において、第1の量子化テーブ
ルによる符号データの生成が終了し、時刻t24におい
て、第2の量子化テーブルによる符号データの生成が終
了する。その後、時刻t30において、DCT処理α3
が終了する。DCT処理α3を行っている間に、量子化
処理β2Aとβ2Bおよび符号化処理γ2Aとγ2Bが
終了する。
At time t22, the generation of code data using the first quantization table ends, and at time t24, generation of code data using the second quantization table ends. Thereafter, at time t30, the DCT processing α3
Ends. While the DCT process α3 is being performed, the quantization processes β2A and β2B and the encoding processes γ2A and γ2B are completed.

【0102】以下、同様にして、最後のブロックnまで
処理を続ける。この一連の統計処理の時間は、DCT部
2が全てのブロックについてDCT処理する時間、すな
わち実質的に通常の1回分のデータ圧縮処理の時間に相
当する。
Hereinafter, similarly, the processing is continued up to the last block n. The time for this series of statistical processing corresponds to the time for the DCT unit 2 to perform the DCT processing on all the blocks, that is, substantially the time for one ordinary data compression process.

【0103】統計処理の時間は1回分のデータ圧縮処理
の時間でありながら、画像データ圧縮システムは、第1
の量子化テーブルと第2の量子化テーブルによる2種類
の符号データを生成し、符号データ量NAとNBを算出
することができる。
Although the time for the statistical processing is the time for one data compression processing, the image data compression system uses the first data compression processing.
And the second quantization table, two types of code data are generated, and the code data amounts NA and NB can be calculated.

【0104】図6では、各処理部におけるタイミングを
示した。次に、ブロック毎の処理のタイミングを示す。
FIG. 6 shows the timing in each processing unit. Next, the processing timing for each block will be described.

【0105】図7は、統計処理を行うブロック単位のタ
イミングを示すタイミングチャートである。横軸は時間
を示し、図6の時間に対応している。
FIG. 7 is a timing chart showing the timing of performing the statistical processing in units of blocks. The horizontal axis indicates time and corresponds to the time in FIG.

【0106】まず、ブロック1の処理について説明す
る。時刻t0において、ブロック1の画像データについ
てのDCT処理α1が開始し、時刻t10において、D
CT処理α1が終了する。DCT処理α1が終了する
と、第1の量子化テーブルを用いた符号データの生成処
理51Aを行い、その後、第2の量子化テーブルを用い
た符号データの生成処理51Bを行う。
First, the processing of block 1 will be described. At time t0, DCT processing α1 for the image data of block 1 starts, and at time t10,
The CT processing α1 ends. When the DCT process α1 ends, a code data generation process 51A using the first quantization table is performed, and then a code data generation process 51B using the second quantization table is performed.

【0107】処理51Aは、第1の量子化テーブルを用
いた量子化処理β1Aと、当該量子化処理β1Aにより
生成される量子化データの符号化処理γ1Aを含む。処
理51Bは、第2の量子化テーブルを用いた量子化処理
β1Bと、当該量子化処理β1Bにより生成される量子
化データの符号化処理γ1Bを含む。
The process 51A includes a quantization process β1A using the first quantization table and a coding process γ1A of the quantized data generated by the quantization process β1A. The process 51B includes a quantization process β1B using the second quantization table and an encoding process γ1B of the quantized data generated by the quantization process β1B.

【0108】次に、ブロック2の処理について説明す
る。時刻t10において、ブロック2の画像データにつ
いてのDCT処理α2が開始し、時刻t20において、
DCT処理α2が終了する。DCT処理α2が終了する
と、第1の量子化テーブルを用いた符号データの生成処
理52Aを行い、その後、第2の量子化テーブルを用い
た符号データの生成処理52Bを行う。処理51Aは、
量子化処理β2Aと符号化処理γ2Aを含む。処理51
Bは、量子化処理β2Bと符号化処理γ2Bを含む。
Next, the processing of block 2 will be described. At time t10, DCT processing α2 for the image data of block 2 starts, and at time t20,
The DCT process α2 ends. When the DCT process α2 ends, a code data generation process 52A using the first quantization table is performed, and then a code data generation process 52B using the second quantization table is performed. Process 51A is
It includes a quantization process β2A and an encoding process γ2A. Process 51
B includes a quantization process β2B and an encoding process γ2B.

【0109】以上のように、DCTの処理時間は長いの
で、1ブロックについてのDCT処理(例えばα2)の
間に、2回の量子化処理と符号化処理(例えば51Aと
51B)を行うことができる。これにより、1フレーム
の画像についてのほぼ1回のデータ圧縮処理の間に、実
質的に2回の統計処理を行うことができる。1つの統計
処理は、第1の量子化テーブルを用いたものであり、符
号データ量NAが算出される。もう1つの統計処理は、
第2の量子化テーブルを用いたものであり、符号データ
量NBが算出される。
As described above, since the DCT processing time is long, two quantization processing and coding processing (for example, 51A and 51B) can be performed during DCT processing (for example, α2) for one block. it can. Thereby, substantially two times of statistical processing can be performed during almost one data compression processing for one frame image. One statistical process uses the first quantization table, and calculates the code data amount NA. Another statistical process is
The second quantization table is used, and the code data amount NB is calculated.

【0110】統計処理は、符号データ量NAとNBを算
出した後、第1および第2候補のスケールファクタSF
x,SFxxを求める。次に、データ圧縮処理について
説明する。(2)データ圧縮処理 統計処理が終了すると、続いて、第1および第2候補の
スケールファクタSFx,SFxxを用いて、データ圧
縮処理を行う。データ圧縮処理は、スケールファクタの
値が異なる点を除けば、上記の統計処理と同じである。
統計処理と同様に、1フレームの画像データの圧縮を行
う。データ圧縮により、第1候補のスケールファクタS
Fxを用いた符号データと第2候補のスケールファクタ
SFxxを用いた符号データが生成される。
In the statistical processing, after calculating the code data amounts NA and NB, the scale factors SF of the first and second candidates are calculated.
x and SFxx are obtained. Next, the data compression processing will be described. (2) Data compression processing When the statistical processing is completed, data compression processing is subsequently performed using the first and second candidate scale factors SFx and SFxx. The data compression processing is the same as the above-described statistical processing except that the value of the scale factor is different.
As with the statistical processing, compression of one frame of image data is performed. By the data compression, the first candidate scale factor S
Code data using Fx and code data using the second candidate scale factor SFxx are generated.

【0111】第1候補のスケールファクタが適切な値で
あれば、第1候補のスケールファクタを用いた符号デー
タを採用する。第1候補のスケールファクタが適切でな
いときには、第2候補のスケールファクタが適切か否か
を判断する。第2候補のスケールファクタが適切であれ
ば、第2候補のスケールファクタを用いた符号データを
採用する。第1および第2候補のスケールファクタが共
に不適切であるときには、新たなスケールファクタを決
定し、再びデータ圧縮処理を行う。
If the scale factor of the first candidate is an appropriate value, code data using the scale factor of the first candidate is adopted. When the scale factor of the first candidate is not appropriate, it is determined whether the scale factor of the second candidate is appropriate. If the second candidate scale factor is appropriate, code data using the second candidate scale factor is adopted. If the scale factors of the first and second candidates are both inappropriate, a new scale factor is determined and the data compression process is performed again.

【0112】図8は、図1の符号データ量カウント部6
の他の例を示す。符号データ量カウント部6は、第1の
量子化テーブル(スケールファクタSFa)を用いた符
号データ量NAと、第2の量子化テーブル(スケールフ
ァクタSFb)を用いた符号データ量NBをカウントす
る。
FIG. 8 shows the code data amount counting section 6 in FIG.
Here is another example. The code data amount counting unit 6 counts the code data amount NA using the first quantization table (scale factor SFa) and the code data amount NB using the second quantization table (scale factor SFb).

【0113】符号データカウント部6は、カウンタ61
とレジスタAとレジスタBを有する。カウンタ61は、
図1のコントローラ8の制御の下、時分割で第1の量子
化テーブルを用いた符号データの量と第2の量子化テー
ブルを用いた符号データの量をカウントする。
The code data counting section 6 includes a counter 61
And a register A and a register B. The counter 61
Under the control of the controller 8 of FIG. 1, the amount of code data using the first quantization table and the amount of code data using the second quantization table are counted in a time division manner.

【0114】レジスタAには、第1の量子化テーブルを
用いたブロック単位の符号データ量が加算されていく。
全てのブロックについての加算が終了したとき、レジス
タAには符号データ量NAが記憶されている。符号デー
タ量NAは、第1の量子化テーブルを用いたときの1フ
レームの画像の符号データ量である。
The amount of code data in block units using the first quantization table is added to the register A.
When the addition for all the blocks is completed, the register A stores the code data amount NA. The code data amount NA is the code data amount of one frame image when the first quantization table is used.

【0115】一方、レジスタBには、第2の量子化テー
ブルについてのブロック単位の符号データ量が加算され
ていく。全てのブロックについての加算が終了したと
き、レジスタBには符号データ量NBが記憶されてい
る。符号データ量NBは、第2の量子化テーブルを用い
たときの1フレームの画像の符号データ量である。
On the other hand, to the register B, the code data amount of the second quantization table in block units is added. When the addition for all the blocks is completed, the register B stores the code data amount NB. The code data amount NB is the code data amount of one frame image when the second quantization table is used.

【0116】図9は、図1の量子化テーブル4の他の例
を示す。量子化部4は、量子化テーブル用メモリ11,
13,14と乗算器12と除算器15を有する。
FIG. 9 shows another example of the quantization table 4 of FIG. The quantization unit 4 includes a quantization table memory 11,
13 and 14, a multiplier 12, and a divider 15.

【0117】メモリ11は、基準量子化テーブルQ(図
3)を記憶する。乗算器12は、基準量子化テーブルQ
にスケールファクタSFを乗じる。つまり、基準量子化
テーブルQの行列の全ての要素にスケールファクタSF
を乗じる。乗算器12は、量子化テーブルSF×Qを出
力する。量子化テーブルSF×Qは、メモリ13または
メモリ14のいずれかに記憶される。
The memory 11 stores a reference quantization table Q (FIG. 3). The multiplier 12 has a reference quantization table Q
Is multiplied by a scale factor SF. That is, the scale factor SF is assigned to all elements of the matrix of the reference quantization table Q.
Multiply by The multiplier 12 outputs a quantization table SF × Q. The quantization table SF × Q is stored in either the memory 13 or the memory 14.

【0118】メモリ13には、第1の量子化テーブルが
記憶され、メモリ14には第2の量子化テーブルが記憶
される。第1の量子化テーブルと第2の量子化テーブル
とでは、スケールファクタSFが異なる。符号データの
データ圧縮度は、スケールファクタSFの値により決ま
る。第1の量子化テーブルは、Q×SFaで表され、第
2の量子化テーブルはQ×SFbで表される。
The memory 13 stores a first quantization table, and the memory 14 stores a second quantization table. The scale factor SF is different between the first quantization table and the second quantization table. The data compression degree of the code data is determined by the value of the scale factor SF. The first quantization table is represented by Q × SFa, and the second quantization table is represented by Q × SFb.

【0119】除算器15には、第1の量子化テーブルま
たは第2の量子化テーブルのいずれかがSF×Qとして
供給される。
Either the first quantization table or the second quantization table is supplied to the divider 15 as SF × Q.

【0120】除算器15は、下式で示されるように、D
CT係数メモリ3(図1)に記憶されているDCT係数
Fuvを、量子化テーブルSF×Quvで割り、量子化
係数Ruvを出力する。丸め込みroundは、最も近
い整数への整数化を意味する。
As shown by the following equation, the divider 15
The DCT coefficient Fuv stored in the CT coefficient memory 3 (FIG. 1) is divided by a quantization table SF × Quv to output a quantization coefficient Ruv. Rounding round means rounding to the nearest integer.

【0121】 Ruv=round〔Fuv/(SF×Quv)〕 図1の量子化部4は、図9の量子化部4と異なり、量子
化テーブルQとスケールファクタSFを乗じた値を記憶
するための2つのメモリ13と14を有さない。図1の
量子化部は、図9の量子化部に比べ、メモリ容量を削減
することができるので、システムの小型化およびコスト
の低減を図ることができる。
Ruv = round [Fuv / (SF × Quv)] Unlike the quantization unit 4 of FIG. 9, the quantization unit 4 of FIG. 1 stores a value obtained by multiplying the quantization table Q by the scale factor SF. Does not have the two memories 13 and 14. The quantizing unit in FIG. 1 can reduce the memory capacity as compared with the quantizing unit in FIG. 9, so that the size and cost of the system can be reduced.

【0122】ただし、図1の量子化部は、マルチプレク
サ71が乗算器12にスケールファクタSFを供給し、
乗算器12で演算を行ってから、Q×SFaまたはQ×
SFbが除算器15に供給される。つまり、乗算器12
の演算で1クッションだけタイミングが遅れる。そのタ
イミングの遅れを調整する必要がある。
However, in the quantizing section of FIG. 1, the multiplexer 71 supplies the scale factor SF to the multiplier 12 and
After performing the operation in the multiplier 12, Q × SFa or Q × SFa
SFb is supplied to the divider 15. That is, the multiplier 12
The timing is delayed by one cushion. It is necessary to adjust the timing delay.

【0123】それに対し、図9の量子化部は、量子化テ
ーブルメモリ13または量子化テーブルメモリ14から
読み出したデータが直接除算器15に供給されるので、
タイミングの調整が容易であり、演算の遅れは生じな
い。
On the other hand, in the quantization unit of FIG. 9, the data read from the quantization table memory 13 or the quantization table memory 14 is directly supplied to the divider 15,
Adjustment of timing is easy, and there is no delay in calculation.

【0124】次に、サンプルブロックについてのみ統計
処理を行う例を説明する。上記の統計処理では、1フレ
ームの画像の全てのブロックについて処理を行った。し
かし、統計処理は、あくまでも符号データ量を見積もる
ためのものであるので、必ずしも全てのブロックについ
て処理を行う必要はない。そこで、全てのブロックにつ
いて処理を行うのではなく、サンプルブロックについて
のみ処理を行い、処理時間の短縮を図ることができる。
Next, an example in which statistical processing is performed only on sample blocks will be described. In the above-described statistical processing, processing was performed on all blocks of the image of one frame. However, since the statistical processing is only for estimating the amount of code data, it is not always necessary to perform the processing for all blocks. Therefore, processing is not performed for all blocks, but is performed only for sample blocks, so that processing time can be reduced.

【0125】図10(A)〜(C)は、サンプルブロッ
クのサンプル例を示す。図は2次元のブロックの集まり
を示す。斜線を施したブロックがサンプルブロックであ
る。
FIGS. 10A to 10C show sample examples of sample blocks. The figure shows a collection of two-dimensional blocks. The hatched blocks are sample blocks.

【0126】図10(A)は、市松模様状のサンプルブ
ロックを示す。図10(B)は、縦ストライプ状のサン
プルブロックを示す。図10(C)は、横ストライプ状
のサンプルブロックを示す。例えば、図10(A)の場
合、ブロック1、ブロック3、ブロック5、・・・の順
番で1つおきに統計処理を行う。
FIG. 10A shows a checkerboard-shaped sample block. FIG. 10B shows a sample block in the form of a vertical stripe. FIG. 10C shows a horizontal stripe-shaped sample block. For example, in the case of FIG. 10A, statistical processing is performed on every other block in the order of block 1, block 3, block 5,.

【0127】これらのサンプルブロックは、全ブロック
の半分の数である。これらのサンプルブロックについて
のみ統計処理を行えば、統計処理の時間を約半分にする
ことができる。ただし、統計処理により算出される符号
データの量は、1フレームの画像の符号データの量の半
分である。符号データ量が半分であることを考慮して、
スケールファクタSFx,SFxxを決定する必要があ
る。
[0127] These sample blocks are half the number of all blocks. If the statistical processing is performed only on these sample blocks, the time required for the statistical processing can be reduced to about half. However, the amount of code data calculated by the statistical processing is half of the amount of code data of one frame image. Considering that the code data amount is half,
It is necessary to determine scale factors SFx and SFxx.

【0128】なお、統計処理において、2種類の量子化
テーブルを用いる場合について説明したが、3種類以上
の量子化テーブルを用いてもよい。スケールファクタを
3個以上用いて処理を行う場合、図1のメモリ81、8
2や図9のメモリ13、14の数も3個以上とする。
In the statistical processing, a case has been described in which two types of quantization tables are used. However, three or more types of quantization tables may be used. When processing is performed using three or more scale factors, the memories 81 and 8 in FIG.
2 and the number of memories 13 and 14 in FIG. 9 are also three or more.

【0129】ただし、1ブロックについてのDCT処理
時間の間に、量子化処理と符号化処理が完了する範囲内
であることが望ましい。通常、2種類の量子化テーブル
を用いる場合であれば、DCT処理の時間内に納まる。
使用する量子化テーブルの種類を増やせば、高精度の統
計処理、すなわち、より最適なスケールファクタSF
x,SFxxを求めることができる。
However, it is desirable that the quantization processing and the encoding processing be completed within the DCT processing time for one block. Normally, if two types of quantization tables are used, they will fit within the DCT processing time.
If the type of quantization table used is increased, statistical processing with high precision, that is, a more optimal scale factor SF
x, SFxx can be obtained.

【0130】また、データ圧縮度を調整する方法とし
て、スケールファクタを変える方法について説明した
が、スケールファクタによらず量子化テーブルそのもの
を変える方法でもよいし、その他の方法でもよい。
Also, as a method of adjusting the data compression degree, a method of changing the scale factor has been described. However, a method of changing the quantization table itself regardless of the scale factor may be used, or another method may be used.

【0131】上記複数の実施例によれば、実質的に1フ
レームの画像についての1回のデータ圧縮処理の時間内
で、実質的に2回以上の統計処理を行うことができる。
統計処理は、高速にかつ精度よく最適なスケールファク
タを求めることができる。画像データ圧縮システムは、
高速にかつ精度よく目標とするデータ量の符号データを
生成することができる。
According to the plurality of embodiments, statistical processing can be performed substantially two or more times within the time of one data compression processing for substantially one frame image.
In the statistical processing, an optimum scale factor can be obtained at high speed and with high accuracy. Image data compression system
Code data of a target data amount can be generated quickly and accurately.

【0132】さらに、統計処理により、第1および第2
候補のスケールファクタを求めることができる。第1候
補のスケールファクタが適切であれば、第1候補のスケ
ールファクタによる符号データを採用すればよい。第1
候補のスケールファクタが不適切な場合であっても、第
2候補のスケールファクタを用いて適切な符号データを
生成することができる。
Further, the first and second data are statistically processed.
Candidate scale factors can be determined. If the scale factor of the first candidate is appropriate, code data based on the scale factor of the first candidate may be adopted. First
Even when the scale factor of the candidate is inappropriate, it is possible to generate appropriate code data using the scale factor of the second candidate.

【0133】以上実施例に沿って本発明を説明したが、
本発明はこれらに制限されるものではない。例えば、種
々の変更、改良、組み合わせ等が可能なことは当業者に
自明であろう。
Although the present invention has been described in connection with the preferred embodiments,
The present invention is not limited to these. For example, it will be apparent to those skilled in the art that various modifications, improvements, combinations, and the like can be made.

【0134】[0134]

【発明の効果】以上説明したように、本発明によれば、
DCT手段が第1のブロックのDCT係数を生成し終え
た後、符号データ生成手段が2種類のデータ圧縮度で符
号データを生成する工程と、DCT手段が第2のブロッ
クのDCT係数を生成する工程を並列させることができ
る。当該工程を並列化させることにより、データ圧縮処
理の高速化を図ることができる。また、少なくとも2種
類のデータ圧縮度で符号データを生成することにより、
高精度の固定長化処理を行うことができる。
As described above, according to the present invention,
After the DCT means has finished generating the DCT coefficients of the first block, the code data generating means generates the code data at two types of data compression, and the DCT means generates the DCT coefficients of the second block. The steps can be performed in parallel. By parallelizing the process, the speed of the data compression process can be increased. Also, by generating code data with at least two types of data compression,
High-precision fixed length processing can be performed.

【0135】さらに、目標符号データ量を生成するため
の第3のデータ圧縮度および該第3のデータ圧縮度より
高いデータ圧縮度の第4のデータ圧縮度を推定すること
により、第3または第4のデータ圧縮度のうちいずれか
適切な方を用いて、正式な圧縮を行うことができる。第
3のデータ圧縮度では目標符号データ量より多い符号デ
ータが生成されてしまうときには、第4のデータ圧縮度
を用いた少なめの符号データを採用することができる。
Further, by estimating the third data compression degree for generating the target code data amount and the fourth data compression degree higher than the third data compression degree, the third or the third data compression degree is estimated. Formal compression can be performed using any appropriate one of the four data compression degrees. When the third data compression degree generates more code data than the target code data amount, it is possible to employ a smaller code data using the fourth data compression degree.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施例による画像データ圧縮システム
の構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of an image data compression system according to an embodiment of the present invention.

【図2】本実施例による画像データ圧縮システムが行う
処理手順を示すフローチャートである。
FIG. 2 is a flowchart illustrating a processing procedure performed by the image data compression system according to the embodiment.

【図3】図1の基準量子化テーブルの例を示す図であ
る。
FIG. 3 is a diagram illustrating an example of a reference quantization table of FIG. 1;

【図4】図1の符号データ量カウント部が符号データ量
をカウントする方法を示す図である。
FIG. 4 is a diagram illustrating a method in which the code data amount counting unit of FIG. 1 counts the code data amount.

【図5】図1のスケールファクタ決定部の処理を説明す
るためのグラフである。
FIG. 5 is a graph for explaining processing of a scale factor determination unit in FIG. 1;

【図6】画像データ圧縮システムが処理を行う処理部単
位のタイミングを示すタイミングチャートである。
FIG. 6 is a timing chart showing the timing of each processing unit in which the image data compression system performs processing.

【図7】画像データ圧縮システムが処理を行うブロック
単位のタイミングを示すタイミングチャートである。
FIG. 7 is a timing chart showing the timing of each block in which the image data compression system performs processing.

【図8】図1の符号データ量カウント部の他の例を示す
図である。
FIG. 8 is a diagram illustrating another example of the code data amount counting unit in FIG. 1;

【図9】図1の量子化部の他の例を示す図である。FIG. 9 is a diagram illustrating another example of the quantization unit in FIG. 1;

【図10】サンプルブロックのサンプル例を示す。図1
0(A)は市松模様状のサンプルブロック、図10
(B)は縦ストライプ状のサンプルブロック、図10
(C)は横ストライプ状のサンプルブロックを示す図で
ある。
FIG. 10 shows a sample example of a sample block. FIG.
0 (A) is a checkered sample block, FIG.
(B) is a vertical striped sample block, FIG.
(C) is a diagram showing a sample block in the form of a horizontal stripe.

【符号の説明】[Explanation of symbols]

1 画像メモリ 2 離散コサイン変換(DCT)部 3 DCT係数メモリ 4 量子化部 5 符号化部 6 符号データ量カウント部 7 スケールファクタ決定部 8 コントローラ 11 基準量子化テーブルメモリ 12 乗算器 13 第1の量子化テーブルメモリ 14 第2の量子化テーブルメモリ 15 除算器 61 カウンタ 71 マルチプレクサ 81 第1の符号データメモリ 82 第2の符号データメモリ 83,84 マルチプレクサ DESCRIPTION OF SYMBOLS 1 Image memory 2 Discrete cosine transform (DCT) part 3 DCT coefficient memory 4 Quantization part 5 Encoding part 6 Code data amount counting part 7 Scale factor determination part 8 Controller 11 Reference quantization table memory 12 Multiplier 13 First quantum Quantization table memory 14 second quantization table memory 15 divider 61 counter 71 multiplexer 81 first code data memory 82 second code data memory 83,84 multiplexer

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 ブロック単位に分割して画像データを供
給する画像データ供給手段(1)と、 前記画像データ供給手段から供給されるブロック単位の
画像データを離散コサイン変換(DCT)してブロック
単位のDCT係数を生成するDCT手段(2)と、 前記DCT手段が1つのブロックのDCT係数を生成す
る毎に、そのDCT係数について第1および第2のデー
タ圧縮度で符号データを生成する符号データ生成手段
(4,5)と、 前記符号データ生成手段が生成する第1および第2のデ
ータ圧縮度のそれぞれについての符号データの量を、供
給される全てのブロックについて累算するカウンタ
(6)と、 前記カウンタにより生成される第1および第2のデータ
圧縮度の両者の符号データ量に応じて、目標とするデー
タ量の符号データを生成するために適当と考えられる第
3のデータ圧縮度および該第3のデータ圧縮度より高い
データ圧縮度の第4のデータ圧縮度を推定するデータ圧
縮度推定手段(7)とを有する画像データ圧縮システ
ム。
An image data supply means (1) for supplying image data by dividing the image data into blocks, and a discrete cosine transform (DCT) of the block-wise image data supplied from the image data supply means. DCT means (2) for generating a DCT coefficient for each block; and code data for generating code data at the first and second data compression degrees for the DCT coefficient each time the DCT means generates a DCT coefficient for one block. Generating means (4, 5); and a counter (6) for accumulating the amount of code data for each of the first and second data compression degrees generated by the code data generating means for all supplied blocks. And code data of a target data amount according to both the code data amounts of the first and second data compression degrees generated by the counter. Image data having a third data compression degree considered to be suitable for generation and a data compression degree estimating means (7) for estimating a fourth data compression degree higher than the third data compression degree Compression system.
【請求項2】 さらに、前記データ圧縮度推定手段が推
定する第3および第4のデータ圧縮度で2種類の符号デ
ータを生成することを前記符号データ生成手段に指示す
る手段を有する請求項1記載の画像データ圧縮システ
ム。
2. The apparatus according to claim 1, further comprising means for instructing said code data generation means to generate two types of code data with the third and fourth data compression degrees estimated by said data compression degree estimation means. Image data compression system as described.
【請求項3】 前記符号データ生成手段は、DCT係数
を量子化するための量子化手段を含み、第1および第2
のデータ圧縮度の符号データは、それぞれ第1および第
2の量子化テーブルを用いて量子化を行うことにより生
成される請求項1または2記載の画像データ圧縮システ
ム。
3. The code data generating means includes a quantizing means for quantizing DCT coefficients, and includes first and second code data.
3. The image data compression system according to claim 1, wherein the code data of the data compression degree is generated by performing quantization using the first and second quantization tables, respectively.
【請求項4】 前記符号データ生成手段は、基準量子化
テーブルに第1および第2のスケールファクタを乗じる
ことにより第1および第2の量子化テーブルを生成する
手段を含む請求項3記載の画像データ圧縮システム。
4. The image according to claim 3, wherein said code data generating means includes means for generating first and second quantization tables by multiplying a reference quantization table by first and second scale factors. Data compression system.
【請求項5】 前記符号データ生成手段は、DCT係数
を量子化した後にハフマン符号化を行う符号化手段を含
む請求項3または4記載の画像データ圧縮システム。
5. The image data compression system according to claim 3, wherein said code data generation means includes coding means for performing Huffman coding after quantizing DCT coefficients.
【請求項6】 前記DCT手段は、画像データをブロッ
ク単位でDCTする手段であって、 前記符号データ生成手段は、前記DCT手段があるブロ
ックについての画像データのDCTを完了する前に、1
つ前のブロックについての第1および第2のデータ圧縮
度の符号データの生成を完了する請求項1〜5のいずれ
かに記載の画像データ圧縮システム。
6. The DCT means for performing DCT on image data in units of blocks, wherein the code data generating means performs one of the following steps before the DCT means completes DCT of image data for a certain block.
The image data compression system according to any one of claims 1 to 5, wherein the generation of the code data of the first and second data compression degrees for the immediately preceding block is completed.
【請求項7】 前記画像データ供給手段は、1フレーム
の画像のうちのサンプルブロックについての画像データ
を供給する請求項1〜6のいずれかに記載の画像データ
圧縮システム。
7. The image data compression system according to claim 1, wherein said image data supply means supplies image data of a sample block in an image of one frame.
JP28427596A 1996-10-25 1996-10-25 Image data compression system Pending JPH10136360A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28427596A JPH10136360A (en) 1996-10-25 1996-10-25 Image data compression system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28427596A JPH10136360A (en) 1996-10-25 1996-10-25 Image data compression system

Publications (1)

Publication Number Publication Date
JPH10136360A true JPH10136360A (en) 1998-05-22

Family

ID=17676429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28427596A Pending JPH10136360A (en) 1996-10-25 1996-10-25 Image data compression system

Country Status (1)

Country Link
JP (1) JPH10136360A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003179926A (en) * 1999-06-14 2003-06-27 Nikon Corp Method for compression encoding, recording medium recording compression coding program, and electronic camera for conducting method for compression coding
US6643402B1 (en) 1999-03-23 2003-11-04 Sanyo Electric Co., Ltd Image compression device allowing rapid and highly precise encoding while suppressing code amount of image data after compression

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6643402B1 (en) 1999-03-23 2003-11-04 Sanyo Electric Co., Ltd Image compression device allowing rapid and highly precise encoding while suppressing code amount of image data after compression
JP2003179926A (en) * 1999-06-14 2003-06-27 Nikon Corp Method for compression encoding, recording medium recording compression coding program, and electronic camera for conducting method for compression coding

Similar Documents

Publication Publication Date Title
US5291282A (en) Image data coding apparatus and method capable of controlling amount of codes
US5838826A (en) Image processing apparatus and method using plural amounts corresponding to encoded data to control encoding
EP0447247A2 (en) Image encoding method and apparatus
JPH09130802A (en) Image compressing method
JPH07107300A (en) Picture encoding device
US6014467A (en) High speed, high precision image compression
JPH0832037B2 (en) Image data compression device
JPH09247675A (en) Image compression method and image compression system
JP4407055B2 (en) Electronic camera
JP6806466B2 (en) Image coding device and its control method
JP2000261805A (en) Picture compression system
JP3222780B2 (en) Image compression device
JPH10136360A (en) Image data compression system
JPH09284767A (en) Picture compression system and picture compression method
US6671411B1 (en) Image encoding apparatus, method and memory medium therefor
JP3795932B2 (en) Image data compression encoding method and apparatus
CN1321523C (en) Two-step image compression with compression parameter adjustment
JP2959831B2 (en) Image data encoding device
JP2793402B2 (en) Image coding device
EP0758513B1 (en) Device and method for coding video pictures
JP3645689B2 (en) Image compression apparatus and quantization table creation apparatus
JP3450357B2 (en) Image processing apparatus and method
JPH02104180A (en) Compression processing method for image data compressor
JPH0537901A (en) Image recorder
JP3076081B2 (en) Image signal processing device

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20030909