JP4971881B2 - Image encoding apparatus, image decoding apparatus, and control method thereof - Google Patents
Image encoding apparatus, image decoding apparatus, and control method thereof Download PDFInfo
- Publication number
- JP4971881B2 JP4971881B2 JP2007163016A JP2007163016A JP4971881B2 JP 4971881 B2 JP4971881 B2 JP 4971881B2 JP 2007163016 A JP2007163016 A JP 2007163016A JP 2007163016 A JP2007163016 A JP 2007163016A JP 4971881 B2 JP4971881 B2 JP 4971881B2
- Authority
- JP
- Japan
- Prior art keywords
- encoded data
- value
- block
- image
- data
- 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
Images
Landscapes
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
本発明は、画像の符号化、復号技術に関するものである。 The present invention relates to an image encoding / decoding technique.
従来、分割されたブロック画像に対して符号化処理を実行するものとしては、直交変換を用いた圧縮技術が一般的であった。直交変換を用いた符号化は自然画像に対しては有効な圧縮方法であるが、他方、文字や線画などの含まれる画像に対しては、画像の高周波成分が失われることを原因としてモスキートノイズやブロック歪が起こり、良好な結果を得られないことが知られていた。このような問題を解決するため、文字や線画の描かれた画像など、階調性よりも解像度が重要な画像に関して、ブロック画像内の画素を二色で近似することで解像度を保持しようとする二色化処理が提案されていた(例えば特許文献1)。この特許文献1には、ブロック内の画像が2つの色からなる画像と見なし、その2つの色を表わすデータと、各画素がいずれの色に対応するのかを識別する識別データを生成し、1つにパッキングし、符号化データとして出力する技術が開示されている。
ところで、文字線画の場合、その画像を背景色と文字線画が示す色に2分し、その2つの色データと、各画素がいずれに属するのかを示す識別情報を生成することで、解像度が維持された符号化データを生成することが可能になる。1画素が8ビットであり、m×n画素のブロック単位に符号化することを想定すると、その符号化データは、2つの色データを表わす16ビット+識別情報を表わすm×nビットのデータ量となる。 By the way, in the case of a character line drawing, the resolution is maintained by dividing the image into two colors, the background color and the color indicated by the character line drawing, and generating identification information indicating the two color data and each pixel. The encoded data can be generated. Assuming that one pixel is 8 bits and encoding is performed in block units of m × n pixels, the encoded data has a data amount of 16 bits representing two color data + m × n bits representing identification information It becomes.
本発明は、1ブロックの符号化データを更に少ないビット数に符号化することで、画像全体に対する符号化データ量を更に少なくする技術を提供しようとするものである。 The present invention intends to provide a technique for further reducing the amount of encoded data for the entire image by encoding one block of encoded data to a smaller number of bits.
また、他の発明は、上記作用効果に加えて、1ブロックの符号化データのサイズを8の整数倍のビット数、すなわち、電子機器やコンピュータプログラムでアクセスするのに都合の良い1バイトの整数倍の符号化データを生成する技術も提案する。 In addition to the above-described effects, another invention provides the size of one block of encoded data as an integer multiple of 8 bits, that is, a 1-byte integer convenient for access by an electronic device or a computer program. A technique for generating double encoded data is also proposed.
上記課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
1画素が複数ビットで表わされる多値の画像データを符号化する画像符号化装置であって、
複数画素で構成されるブロックを単位に画像データを入力する入力手段と、
着目ブロック内の画素値の平均値AVEを算出し、算出した前記平均値AVE以下の値を持つ画素群を第1グループ、前記平均値AVEよりも大きい値を持つ画素群を第2グループとしたとき、前記第1グループ、前記第2グループのそれぞれの画素値の平均値を、前記着目ブロックの代表画素値C0、C1として抽出する抽出手段と、
前記着目ブロック内の各画素が前記代表画素値C0、C1のいずれに属するかを示すための2値の識別情報を生成する識別情報生成手段と、
前記代表画素値C0、C1の予め設定された一方の画素値の最下位ビット、及び、前記代表画素値C0、C1それぞれの最下位ビットを除くC0’、C1’のデータを生成する生成手段と、
前記一方の画素値の最下位ビット、前記C0’、C1’、及び、前記識別情報をまとめて前記着目ブロックの符号化データを生成し、出力する出力手段とを備え、
前記出力手段は、前記代表画素値C0、C1の他方の代表画素値の最下位ビットの値に応じて、前記符号化データに配置する前記C0’、C1’の順番を、C0’、C1’、又は、C1’、C0’のいずれかにして出力することを特徴とする。
In order to solve the above problems, for example, an image encoding device of the present invention has the following configuration. That is,
An image encoding device for encoding multi-value image data in which one pixel is represented by a plurality of bits,
An input means for inputting image data in units of blocks composed of a plurality of pixels;
An average value AVE of the pixel values in the block of interest is calculated, a pixel group having a value equal to or less than the calculated average value AVE is a first group, and a pixel group having a value larger than the average value AVE is a second group. Extraction means for extracting an average value of the pixel values of the first group and the second group as representative pixel values C0 and C1 of the block of interest ;
Identification information generating means for generating binary identification information for indicating which of the representative pixel values C0 and C1 each pixel in the block of interest belongs to;
Generating means for generating data of C0 ′ and C1 ′ excluding the least significant bit of one of the preset pixel values of the representative pixel values C0 and C1 and the least significant bit of each of the representative pixel values C0 and C1; ,
An output unit that generates and outputs encoded data of the block of interest by combining the least significant bit of the one pixel value, the C0 ′, C1 ′, and the identification information;
The output means determines the order of the C0 ′ and C1 ′ to be arranged in the encoded data according to the value of the least significant bit of the other representative pixel value of the representative pixel values C0 and C1, and C0 ′ and C1 ′. Or C1 ′ or C0 ′.
本発明によれば、1ブロックの符号化データを更に少ないビット数に符号化することで、画像全体に対する符号化データ量を更に少なくすることが可能になる。 According to the present invention, it is possible to further reduce the amount of encoded data for the entire image by encoding the encoded data of one block to a smaller number of bits.
また、他の発明によれば、上記作用効果に加えて、1ブロックの符号化データのサイズを8の整数倍のビット数、すなわち、電子機器やコンピュータプログラムでアクセスするのに都合の良い1バイトの整数倍の符号化データを生成することが可能になる。 According to another aspect of the invention, in addition to the above-described effects, the size of one block of encoded data is an integer multiple of 8 bits, that is, one byte convenient for access by an electronic device or a computer program. It becomes possible to generate encoded data of an integer multiple of.
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。 Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
なお、実施形態では、1画素が複数ビットで表わされる多値画像データ中の8m×8n画素(m、nは1以上の整数)で構成されるブロックを単位に符号化する例を説明する。また、1画素は8ビット(256階調)のグレイスケールであるものとして説明する。そして、実施形態では、1ブロック分の符号化データを、固定長Lビット(L=16+8m×8n)として生成する。なお、カラー画像の場合、複数の色成分を有する。カラー画像の場合には、各成分毎に、上記の固定長の符号化データを生成すればよい。 In the embodiment, an example will be described in which a block composed of 8m × 8n pixels (m and n are integers of 1 or more) in multi-valued image data in which one pixel is represented by a plurality of bits is encoded. In the following description, it is assumed that one pixel is a gray scale of 8 bits (256 gradations). In the embodiment, encoded data for one block is generated as fixed-length L bits (L = 16 + 8m × 8n). Note that a color image has a plurality of color components. In the case of a color image, the above-described fixed length encoded data may be generated for each component.
図1は実施形態における画像符号化装置のブロック構成図である。本装置は、ブロック化部101、2色抽出部102、2色符号化部103、多値符号化部104、及びセレクタ105を有する。
FIG. 1 is a block diagram of an image encoding apparatus according to the embodiment. This apparatus includes a
ブロック化部101は、符号化対象の画像データから8m×8n画素で構成される部分画像データ(以下、ブロックデータという)を入力する。なお、符号化対象の画像データの発生源は、イメージスキャナであるものとして説明するが、非圧縮の画像データを格納した記憶装置でも構わず、その種類は問わない。なお、説明を簡単なものとするため、以下では、ブロックのサイズを8×8画素(m=n=1)として説明する。従って、以下の説明における1ブロックの符号化データの固定長は16+8×8=80ビットとなる。詳細は以下の説明から明らかにするが、固定長80ビットの先頭の1ビットは、符号化の種類を示すデータである。それ故、残りの79ビットが1ブロックの符号化データを格納する容量となる。
The
2色抽出部102は、入力したブロックデータから2つの代表色(もしくは代表値)C0、C1を抽出する。具体的には、2色抽出部102は、ブロック内の各画素の値の平均値AVEを算出する。そして、算出した平均値AVE以下の画素値を持つ画素群(第1グループ)と、平均値よりも大きな画素値を持つ画素群(第2グループ)に分類する。そして、2色抽出部102は、第1グループに属する各画素の平均値を算出し、それを代表色C0として決定する。また、同様に、2色抽出部102は、第2グループに属する各画素の平均値を算出し、それを代表色C1として決定する。そして、2色抽出部102は、決定した代表色C0、C1と、平均値AVEを2色符号化部103に出力する。
The two-
また、2色抽出部102は、代表色C0、C1の差D(=C1−C0)と予め設定された閾値Th(Th>1)とを比較し、その比較結果を判定信号(1ビット)として、2色符号化部103、多値符号化部104、及び、セレクタ部105に出力する。ここで、D>Thであるとき判定信号は“1”、D≦Thの場合には判定信号は“0”とする。
Further, the two-
2色符号化部103は、判定信号が“1”の場合に符号化処理を行なう。一方、多値符号化部104は判定信号が“0”の場合に符号化処理を行なう。そして、セレクタ105は、判定信号が“1”の場合には、2色符号化部103で生成された符号化データを選択して出力し、判定信号が“0”の場合には多値符号化部104で生成された符号化データを選択し、出力する。なお、セレクタ105は判定信号に応じて、いずれか一方の符号化データを選択するので、2つの符号化部は、判定信号とは無関係に符号化処理を行なっても構わない。
The two-
多値符号化部104は、公知の非可逆のJPEG符号化を利用するものとした。すなわち、多値符号化部104は、DCT変換、量子化、エントロピー符号化(直流成分、交流成分の順に符号化するものとする)を行なう。
The
実施形態では、1ブロック分の符号化データを固定長“80”ビットにする例を説明している。本実施形態では、符号化の種類は2種類であるので、符号化データがいずれの種類の符号化データであるかを示す必要がある。それ故、多値符号化部104は、生成した符号化データが多値符号化部104によって生成されたことを示す符号化種別情報(1ビット)を付加し、それに後続して79ビットの符号化データを出力する。
In the embodiment, an example has been described in which encoded data for one block is set to a fixed length of “80” bits. In this embodiment, since there are two types of encoding, it is necessary to indicate which type of encoded data the encoded data is. Therefore, the
ここで、注目する点は、多値符号化部104で生成された符号化データをセレクタ105が選択するのは、判定信号が“0”の場合である。すなわち、着目ブロック内の各画素の代表色C0、C1の差Dが閾値以下(D≦Th)の場合である。D≦Thであるのは、着目ブロック内には、文字線画等の高周波成分が含まれない、或いは少ないことを示している。従って、DCT変換による交流(AC)成分の各変換係数は小さな値となり、且つ、量子化処理によってほとんどのDCT変換係数が“0”に量子化されることを意味する。それ故、多値符号化部104からの符号化データのデータ量が十分に小さいと言える。
Here, it should be noted that the
実際の符号化データ量は、閾値Thの値に応じて変動する。しかしながら、閾値Thを或る程度以下の値にするのであれば、多値符号化部104からの符号化データが選択される場合、その符号化データのデータ量は、固定長以内とすることが可能である。なお、符号化データ量は何ビットになるかは実際に符号化処理を行なわないとわからない。そこで、多値符号化部104は、生成した符号化データのビット数が79ビットに満たない場合にはダミーのビットを符号化データに後続して付加する。
The actual amount of encoded data varies according to the threshold value Th. However, if the threshold value Th is set to a certain value or less, when encoded data from the
また、仮に、多値符号化部104からの符号化データが79ビットを超えた場合には、多値符号化部104は、先頭から79ビットまでを符号化結果として出力する。79ビットよりも後のデータは破棄されるが、そもそもそのような事態になることは希であり、あったとしても高周波成分のデータであるので、画質に与える影響は小さい。
If the encoded data from the
次に実施形態における2色符号化部103を説明する。図2は、2色符号化部103のブロック構成図である。2色符号化部103は、比較部201、パック部202で構成される。
Next, the two-
比較部201は、ブロック化部101からのブロックデータをラスタースキャンし、1画素単位に入力する。そして、比較部201は、入力した着目画素値と、2色抽出部102からの平均値AVEと比較し、着目画素値がその平均値以下である場合に“0”、着目画素値がその平均値より大きい場合に“1”の2値の信号をパック部202に出力する。要するに、比較部201は、各画素が、先に示した2色抽出部102における第1グループに属するのか、第2グループに属するのかを識別する識別情報(2値)を生成する識別情報生成部として機能する。以降、この比較部201が生成するデータを識別情報という。実施形態の場合、1ブロックは8×8画素としているので、識別情報は全部で8×8=64ビットとなる。
The
パック部202は、代表色C0、C1と、識別情報を結合し、出力する。但し、代表色C0、C1は共に8ビットであるので、単純に結合してしまうと、8×2+64=80ビットとなってしまい、符号化種別を示す1ビットを除く79ビットに納めることができない。
The
そこで、本実施形態におけるパック部202は以下に示すようにして、2色C0、C1を15ビットで表わすようにした。なお、既に説明したように、C0<C1の関係にある点に注意されたい。また、代表色C0の最下位ビット(ビット0)を除くビット1乃至7で表わされる値をC0’、代表色C1の最下位ビット(ビット0)を除くビット1乃至7で表わされる値をC1’と表現する。C0’(C1’も同様)は、C0を下位方向に1ビットシフトした後、そのビット0乃至6を用いれば簡単に生成することができる。即ち、“+”をビット結合を表すとすると、データの並びは以下のようになる。
・代表色C1のビット0が“0”の場合:
代表色C0のビット0+C0’+C1’
・代表色C1のビット0が“1”の場合:
代表色C0のビット0+C1’+C0’
Therefore, the
When bit 0 of representative color C1 is “0”:
Bit 0 + C0 '+ C1' of representative color C0
When bit 0 of representative color C1 is “1”:
Bit 0 + C1 '+ C0' of representative color C0
図3(a),(b)は、符号化種別情報(1ビット)と、識別情報(64ビット)を含めた2色符号化部103の符号化データのデータ構造を示している。復号処理の詳細は後述するが、このデータから代表色C0、C1それぞれの8ビットのデータを復元できる。符号化データ中の、7ビットで表わされる2つの代表色の最初の値をデータV0、その次のデータV1としたとき、仮にV0<V1であったとする。この場合、その符号化データ中の代表色はC0、C1の順番であり、図3(a)のケースであることが一義的に決まる。つまり、7ビットの代表色C1を1ビットだけ左(上位)にシフトし、その最下位ビット(LSB)に“0”を設定(追加)することで、元の8ビットの代表色C1を復元できる。また、代表色C0は単純に、1ビット分だけ左シフトし、そのLSBに、符号化データの2ビット目(C0のビット0)を格納すれば復元できる。
FIGS. 3A and 3B show the data structure of encoded data of the two-
また、V0>V1である場合、その符号化データ中の7ビットで表わされる代表色はC1、C0の順番であり、図3(b)のケースであることが一義的に決まる。つまり、7ビットの代表色C1を1ビットだけ左(上位)にシフトし、そのLSBに“1”を設定(追加)することで、元の8ビットの代表色C1を復元できる。また、代表色C0は単純に、1ビット分だけ左シフトし、そのLSBに、符号化データの2ビット目(C0のビット0)を格納すれば復元できる。 When V0> V1, the representative colors represented by 7 bits in the encoded data are in the order of C1 and C0, and the case of FIG. 3B is uniquely determined. That is, the original 8-bit representative color C1 can be restored by shifting the 7-bit representative color C1 to the left (upper) by 1 bit and setting (adding) 1 to the LSB. The representative color C0 can be restored by simply shifting left by one bit and storing the second bit (bit 0 of C0) of the encoded data in the LSB.
上記のように、データV0,V1の大小比較と、その大小の並びに従って、2つの代表色復元が可能になる。 As described above, two representative colors can be restored according to the size comparison of the data V0 and V1 and the arrangement of the sizes.
なお、代表色C0が偶数の値(最下位ビットが0の場合)であり、代表色C1がC0より“1”だけ大きい場合(最下位ビットが1の場合)に限って、V0=V1となる。換言すれば、V0=V1となるのは、代表色C0が偶数の値であり、代表色C1がC0より“1”だけ大きい場合のみと言える。かかる状況は、符号化データの2番目のビット(C0のビット0)が“0”であり、V0=V1となる場合のみであるので、V0(又はV1)を上位方向に1ビットシフトし、最下位ビットに0をセットしたものがC0と特定できる。また、C1はC0に“1”を加算すれば得られる。 Note that V0 = V1 only when the representative color C0 is an even value (when the least significant bit is 0) and the representative color C1 is larger than C0 by “1” (when the least significant bit is 1). Become. In other words, V0 = V1 can be said only when the representative color C0 is an even value and the representative color C1 is larger by “1” than C0. Since this situation is only when the second bit (bit 0 of C0) of the encoded data is “0” and V0 = V1, V0 (or V1) is shifted by 1 bit in the upper direction, A device in which 0 is set in the least significant bit can be specified as C0. C1 can be obtained by adding “1” to C0.
また、実施形態では、2色符号化部103が生成する符号化データのデータ構造が図3(a),(b)のいずれかであるとした。しかしながら、これによって本発明が限定されるものではない。例えば、識別情報(64ビット)、{C0’、C1’}、代表色の一方の最下位ビットの順番でも構わない。要は、符号化装置側と復号装置側で共通の配置のデータ構造となるようにすればよい。
In the embodiment, it is assumed that the data structure of the encoded data generated by the two-
以上説明したように本実施形態における2色符号化部103は、2つの代表色を表わす16ビット、識別情報を表わす64ビットをパックした際、16+64ビットではなく、それより1ビット少ない符号化データを生成することが可能になる。昨今のイメージスキャナやデジタルカメラの解像度は高くなる一方であるので、必然、その中に含まれるブロック数は増える一方である。従って、1ブロックにつき1ビットを減らすことは、画像全体の符号化データ量を大幅に減らすことを意味する。
As described above, the two-
また、実施形態における多値符号化部104を除く構成で符号化装置を構成するのであれば、1画素が8ビット、1ブロックが8m×8nである必要はなく、1ブロックが複数画素であればよい。当然、符号化種別情報も不要となることも容易に理解できるであろう。
Further, if the encoding apparatus is configured with the configuration excluding the
また、上記実施形態の如く、2色符号化部103と多値符号化部104を混在して、1画素8ビットの画像データを8×8画素のブロック単位に符号化する場合、1ブロックの画像を固定長80ビットの符号化データを生成することが可能になる。また、1ブロックのデータが8の整数倍、すなわち、バイトの整数倍で表わされるので、アクセス効率も高くなることも約束されることになる。
Further, as in the above embodiment, when the two-
なお、上記実施形態では、モノクロ多値画像を例にしたが、カラー画像に適用しても良い。カラー画像、例えば、R、G、Bの3成分が各8ビットで表わされる場合、各成分毎に上記実施形態の処理を行なえばよい。 In the above embodiment, a monochrome multi-value image is taken as an example, but it may be applied to a color image. In the case where a color image, for example, three components of R, G, and B are represented by 8 bits each, the processing of the above embodiment may be performed for each component.
また、実施形態では、符号化種別情報は、各符号化部が生成するものとして説明したが、セレクタ105が、2色抽出部からの情報に基づき、符号化種別情報を付加するようにしても構わない。
In the embodiment, the encoding type information is described as being generated by each encoding unit. However, the
次に、実施形態における画像復号装置について説明する。図4は実施形態における画像復号装置のブロック構成図である。本装置は、符号化種別判定部301、2色復号部302、多値復号部303、及び、セレクタ部304を有する。
Next, the image decoding apparatus in the embodiment will be described. FIG. 4 is a block configuration diagram of the image decoding apparatus according to the embodiment. This apparatus includes an encoding
符号化種別判定部301は、80ビットの符号化データの先頭の1ビット(符号化種別情報)が“0”であるか“1”であるか判定する。換言すれば、符号化種別判定部301は、着目符号化データが2色符号化部103、多値符号化部104のいずれによって生成された符号化データであるのかを判定する。符号化種別判定部301は、その判定結果を制御信号として、2色復号部302、多値復号部303、及び、セレクタ部304に出力する。
The encoding
2色復号部302は、符号化種別判定部301からの制御信号が2色符号化部103で符号化されていることを示す場合に、着目符号化データが2色符号化データであるものとして復号する。
The two-
この2色復号部302は、入力した符号化データが図3(a)、(b)のいずれかであるかを判定する。すなわち、7ビットで表わされる2つの代表色の値を比較し、図3(a),(b)のいずれのタイプであるかを判定し、8ビットの代表色C0、C1を復元する。この復元のアルゴリズムは先に説明した通りである。そして、後続する64ビットの識別情報がラスタースキャン順に並んでいるものとし、個々の識別情報が“0”の画素位置に対しては代表色C0をその画素値として出力する。そして、識別情報が“1”の画素位置に対しては代表色C1をその画素値として出力する。これを64ビットについて行なうことで、8×8画素の画像データを復元する。
The two-
一方、多値復号部303は、符号化種別判定部301からの制御信号が多値符号化部104で符号化されていることを示す場合に、着目符号化データが多値符号化データであるものとしてJPEG復号する。復号処理は、エントロピー復号、逆量子化、逆DCT変換の順に行われる。このとき、符号化種別情報を除く79ビットを順にエントロピー復号した結果、EOB(End Of Block)が検出できた場合には、EOB以降のデータはダミーとして無視する。また、エントロピー復号処理でEOBが検出できなかった場合には、不足する個数の量子化後のDCT係数は“0”であるものとして、復号処理を続ける。
On the other hand, when the
セレクタ部304は、符号化種別判定部301からの制御信号が2色符号化部103で符号化されていることを示す場合には、2色復号部302からの8×8画素のデータを選択し、出力する。一方、符号化種別判定部301からの制御信号が多値符号化部104で符号化されていることを示す場合には、多値復号部303からの8×8画素のデータを選択し、出力する。これを繰り返すことで、画像復元(復号)が行われる。
The
以上説明したように本実施形態の2色復号部は、15+64ビットを単位に入力し、
そこから2つの代表色C0、C1を決定し、8×8画素の1ブロックの符号化データを復元できる。
As described above, the two-color decoding unit of this embodiment inputs 15 + 64 bits as a unit,
From there, two representative colors C0 and C1 are determined, and the encoded data of one block of 8 × 8 pixels can be restored.
なお、2色復号部を単独で備える復号装置の場合、1ブロックの符号化データは79ビットで良い。すなわち、一般論で言えば、1画素がMビットで表わされ、m×n画素ブロックの符号化データの場合、1ブロックの符号化データのデータ量(データ長)は2M−1+m×nビットとなる。 Note that in the case of a decoding apparatus that includes a two-color decoding unit alone, the encoded data of one block may be 79 bits. That is, in general terms, when one pixel is represented by M bits and the encoded data of an m × n pixel block, the data amount (data length) of the encoded data of one block is 2M−1 + m × n bits. It becomes.
また、本実施形態によれば、先に説明した符号化装置で生成された多値符号化データ、2色符号化データが混在した符号化データを復号することも可能になる。 Further, according to the present embodiment, it is possible to decode encoded data in which multi-level encoded data and 2-color encoded data generated by the encoding apparatus described above are mixed.
なお、1ブロックの符号化データのデータ長を8の整数倍にするのであれば、1ブロックのサイズは8n×8m画素で良い。また、1ブロックのサイズが8n×8mの場合の固定符号長をLとしたとする。多値符号化部104は、そのブロック内に8×8画素のサブブロックがn×m個存在するものとして、8×8画素についてJPEG符号化をm×n回行なう。このとき、1つのサブブロックのJPEG符号化データについては、L/(m×n)−1、それ以外のサブブロックのJPEG符号化データについてはL/(m×n)の固定長になるようにすればよい。
If the data length of the encoded data of one block is an integer multiple of 8, the size of one block may be 8n × 8m pixels. Also, let L be the fixed code length when the size of one block is 8n × 8m. The
また、実施形態では、符号化種別情報の後に、色C0のビット0を格納したが、色C1のビット0を格納しても構わない。この場合、色C0のビット0の値に応じて、色C0、C1の順番を決定すればよい。 In the embodiment, bit 0 of color C0 is stored after the encoding type information, but bit 0 of color C1 may be stored. In this case, the order of the colors C0 and C1 may be determined according to the value of bit 0 of the color C0.
<変形例の説明>
上記実施形態と同様の処理を、コンピュータプログラムによって実現する例を以下に説明する。コンピュータプログラムは、例えばパーソナルコンピュータで良く、そのハードウェア資源はCPU、ROM、RAM、HDD、表示装置(表示制御部)、及び、画像入力装置(イメージスキャナ)で構成すれば良く、その説明は不要であろう。そこで、以下では、符号化、復号を行なうアプリケーションプログラムによる処理手順を図面に従って説明する。
<Description of modification>
An example in which the same processing as in the above embodiment is realized by a computer program will be described below. The computer program may be, for example, a personal computer, and its hardware resources may be constituted by a CPU, ROM, RAM, HDD, display device (display control unit), and image input device (image scanner), and the description thereof is unnecessary. Will. Therefore, hereinafter, a processing procedure by an application program for encoding and decoding will be described with reference to the drawings.
先ず、CPUが実行するアプリケーションプログラムにおける符号化の処理手順を図5のフローチャートに従って説明する。なお、このアプリケーションプログラムは、ハードディスク装置等の記憶媒体に格納されているものであり、OS(オペレーティングシステム)の制御下で、RAMにロードされ実行されるものである。また、符号化対象の画像データの発生源は特に問わないが、イメージスキャナであるものとして説明し、符号化結果はハードディスクにファイルとして保存するものとして説明する。 First, an encoding process procedure in an application program executed by the CPU will be described with reference to the flowchart of FIG. The application program is stored in a storage medium such as a hard disk device, and is loaded into the RAM and executed under the control of the OS (Operating System). The generation source of the image data to be encoded is not particularly limited, but will be described as an image scanner, and the encoding result will be described as being stored as a file on the hard disk.
先ず、ステップS1にて、符号化対象の画像データを1ブロック分(8×8画素)を入力する。次いで、ステップS2にて、入力したブロック内の画素の平均値AVEを算出する。そして、その平均値AVE以下の値を持つ画素群の平均値を代表色C0、平均値AVEを超える値を持つ画素群の平均値を代表色C1として算出する。このとき、ブロック内の全画素が同一の画素値である場合、C0=C1となる。 First, in step S1, one block (8 × 8 pixels) of image data to be encoded is input. Next, in step S2, an average value AVE of the pixels in the input block is calculated. Then, the average value of the pixel group having a value equal to or less than the average value AVE is calculated as the representative color C0, and the average value of the pixel group having a value exceeding the average value AVE is calculated as the representative color C1. At this time, if all the pixels in the block have the same pixel value, C0 = C1.
ステップS3では、「C1−C0」が閾値Thより大きいか否かを判定する。「C1−C0」が閾値Th以下であると判定した場合、すなわち、着目ブロックに高周波成分が少ないと判断した場合、処理はステップS4に進む。このステップS4では、多値符号化(JPEG符号化)を行ない、先頭に多値符号化されたことを示す1ビットのデータを付加し、それに後続する79ビットの符号化データを生成する。この後、ステップS5にて、生成された固定長80ビットの符号化データ(多値符号化データ)を出力する。 In step S3, it is determined whether “C1-C0” is greater than a threshold value Th. If it is determined that “C1-C0” is equal to or smaller than the threshold Th, that is, if it is determined that the high frequency component is small in the block of interest, the process proceeds to step S4. In step S4, multi-level encoding (JPEG encoding) is performed, 1-bit data indicating that multi-level encoding has been performed is added to the head, and subsequent 79-bit encoded data is generated. Thereafter, in step S5, the generated encoded data with a fixed length of 80 bits (multi-level encoded data) is output.
一方、ステップS3では、「C1−C0」が閾値Thより大きいと判定した場合、着目ブロックには文字線画が含まれると判定できる。そこで、ステップS6に進み、2色符号化処理を行なう。すなわち、2色符号化されたことを示す1ビットのデータ、色C0のビット0、そして、色C1のビット0の値に応じた順番で色C0、C1の上位7ビットを生成する。そして、先のステップS2で算出した平均値AVEとブロック内の各画素値とを比較し、各画素が2つのグループのいずれに属するのかを示す識別情報を生成する。そして、これらのデータをまとめ、図3(a)又は図3(b)のデータを構築する。 On the other hand, in step S3, when it is determined that “C1-C0” is greater than the threshold value Th, it can be determined that the target block includes a character line drawing. Then, it progresses to step S6 and a two-color encoding process is performed. That is, 1-bit data indicating that the two-color encoding is performed, bit 0 of color C0, and upper 7 bits of colors C0 and C1 are generated in the order corresponding to the value of bit 0 of color C1. Then, the average value AVE calculated in the previous step S2 is compared with each pixel value in the block, and identification information indicating which of the two groups each pixel belongs to is generated. And these data are put together and the data of Fig.3 (a) or FIG.3 (b) is constructed | assembled.
この後、ステップS7にて、構築したデータを出力する。 Thereafter, in step S7, the constructed data is output.
ステップS5又はステップS7の処理を終えると、処理はステップS8に進み、全ブロックの符号化処理が完了したか否かを判定する。未完であると判定した場合には、ステップS1以降の処理を繰り返す。 When the process of step S5 or step S7 is completed, the process proceeds to step S8, and it is determined whether or not the encoding process for all blocks has been completed. If it is determined that the process is incomplete, the processes after step S1 are repeated.
こうして、ステップS8にて、全ブロックの符号化処理が完了したと判断した場合、符号化処理を終了する。 Thus, when it is determined in step S8 that the encoding process for all blocks has been completed, the encoding process is terminated.
次に、CPUが実行するアプリケーションプログラムにおける復号処理を説明する。ここでは、ハードディスクに格納された圧縮符号化データファイル(既にユーザがGUIを介して選択しているものとする)を復号し、表示する例を説明する。復号結果を表示するわけであるから、復号した画像データの出力先は、表示制御部が有するビデオメモリとなる。 Next, the decoding process in the application program executed by the CPU will be described. Here, an example of decoding and displaying a compression-encoded data file (assuming that the user has already selected via the GUI) stored in the hard disk will be described. Since the decoding result is displayed, the output destination of the decoded image data is a video memory included in the display control unit.
先ず、ステップS11で、1ブロック分の符号化データ(固定長80ビット)を符号化データファイルからRAM内に入力する。次いで、ステップS12にて、その先頭の1ビットの符号化種別情報が“0”か“1”かを判定する。すなわち、入力した符号化データが2色符号化データであるか、多値符号化データであるかを判定する。 First, in step S11, one block of encoded data (fixed length 80 bits) is input from the encoded data file into the RAM. Next, in step S12, it is determined whether the leading 1-bit encoding type information is “0” or “1”. That is, it is determined whether the input encoded data is two-color encoded data or multi-level encoded data.
多値符号化データであると判定した場合には、ステップS13に処理を進め、JPEG復号処理を行なう。このJPEG復号処理は、公知のエントロピー復号、逆量子化、逆DCT変換の順に行われる。ただし、符号化種別情報を除く79ビットを順にエントロピー復号した結果、EOBは検出できた場合には、EOB以降のデータはダミーとして無視する。また、エントロピー復号処理でEOBが検出できなかった場合には、不足する個数の量子化後のDCT係数は“0”であるものとして、復号処理を続ける。こうして、8×8画素のブロック画像データが復号されると、ステップS14にて、そのブロック画像データを出力する。 If it is determined that the data is multi-level encoded data, the process proceeds to step S13 to perform JPEG decoding. This JPEG decoding process is performed in the order of known entropy decoding, inverse quantization, and inverse DCT transform. However, if EOB can be detected as a result of entropy decoding of 79 bits excluding the encoding type information in order, the data after EOB is ignored as a dummy. If EOB cannot be detected by the entropy decoding process, the decoding process is continued assuming that the insufficient number of DCT coefficients after quantization is “0”. When the 8 × 8 pixel block image data is decoded in this way, the block image data is output in step S14.
一方、入力した符号化データが2色符号化データであると判定した場合、処理はステップS15に進み。このステップS15では、入力した符号化データが図3(a)、(b)のいずれかであるかを判定する。すなわち、7ビットで表わされる2つの代表色の値を比較し、図3(a),(b)のいずれのタイプであるかを判定し、8ビットの代表色C0、C1を復元する。そして、後続する64ビットの識別情報がラスタースキャン順に並んでいるものとし、個々の識別情報が“0”の画素位置に対しては代表色C0をその画素値として置き換える。そして、識別情報が“1”の画素位置に対しては代表色C1をその画素値として置き換える。これを64ビットについて行なうことで、8×8画素の画像データを復元する。この後、ステップS16にて、復元した8×8画素の画像データを出力する。 On the other hand, if it is determined that the input encoded data is two-color encoded data, the process proceeds to step S15. In step S15, it is determined whether the input encoded data is one of FIGS. 3A and 3B. That is, the values of two representative colors represented by 7 bits are compared to determine which type is shown in FIGS. 3A and 3B, and the 8-bit representative colors C0 and C1 are restored. Then, it is assumed that the subsequent 64-bit identification information is arranged in the raster scan order, and the representative color C0 is replaced with the pixel value for the pixel position where the individual identification information is “0”. The representative color C1 is replaced with the pixel value for the pixel position whose identification information is “1”. By performing this for 64 bits, image data of 8 × 8 pixels is restored. Thereafter, in step S16, the restored 8 × 8 pixel image data is output.
ステップS14、又は、ステップS16の処理を終えると、処理はステップS17に進み、全ブロックの復号処理を完了したか否かを判定する。未完であると判定した場合には、ステップS11以降の処理を繰り返す。 When the process of step S14 or step S16 is completed, the process proceeds to step S17, and it is determined whether or not the decoding process for all blocks has been completed. If it is determined that the process is incomplete, the processes after step S11 are repeated.
以上説明したように先に説明した符号化及び復号処理を、コンピュータプログラムによっても実現できるようになり、同様の作用効果を奏することが可能になる。 As described above, the encoding and decoding processes described above can be realized by a computer program, and the same operational effects can be achieved.
<第2の実施形態>
上記第1の実施形態、及び、その変形例では、2つの符号化データのいずれかを選択するための基準を、代表色C0、C1の差が閾値Th以下であるか否かに従うものとしたが、これによって本発明が限定されるものではない。
<Second Embodiment>
In the first embodiment and the modification thereof, the criterion for selecting one of the two encoded data is based on whether or not the difference between the representative colors C0 and C1 is equal to or less than the threshold Th. However, this does not limit the present invention.
例えば、一旦、2色符号化データを復号した結果とオリジナルの8×8画素の画像データとの誤差と、多値符号化データを復号した結果とオリジナルの8×8画素の画像データとの誤差を求める。そして、2つの誤差の小さい方を出力対象の符号化データとして決定しても構わない。より詳しく説明すると次の通りである。 For example, an error between the result of decoding the two-color encoded data and the original 8 × 8 pixel image data, and an error between the result of decoding the multi-level encoded data and the original 8 × 8 pixel image data Ask for. Then, the smaller of the two errors may be determined as encoded data to be output. More detailed description is as follows.
オリジナル(符号化前)の8×8画素の各画素値X(i,j)(i,j=0、1,2,…7)と定義する。また、2色符号化データを復号して得られた8×8画素の各画素値をY(i,j)、多値符号化データを復号した8×8画素の各画素値をZ(i,j)と定義する。そして、セレクタ部105は、次式に従って誤差D1、誤差D2を算出する。
D1=Σ|X(i,j)−Y(i,j)|
D2=Σ|X(i,j)−Z(i,j)|
なお、|p|は値pの絶対値を示し、Σはi,j=0,1、…7の合算を示している。また、画素間の差の絶対値を求めるのではなく、次式のように画素間の差を2乗和を求めても構わない。
D1=Σ{X(i,j)−Y(i,j)}^2
D2=Σ{X(i,j)−Z(i,j)}^2
(P^2は、Pの2乗を示す)
Each pixel value X (i, j) (i, j = 0, 1, 2,... 7) of 8 × 8 pixels of the original (before encoding) is defined. Further, each pixel value of 8 × 8 pixels obtained by decoding the two-color encoded data is Y (i, j), and each pixel value of 8 × 8 pixels obtained by decoding the multi-value encoded data is Z (i , J). Then,
D1 = Σ | X (i, j) −Y (i, j) |
D2 = Σ | X (i, j) −Z (i, j) |
Here, | p | represents the absolute value of the value p, and Σ represents the sum of i, j = 0, 1,. Further, instead of obtaining the absolute value of the difference between the pixels, the sum of squares of the difference between the pixels may be obtained as in the following equation.
D1 = Σ {X (i, j) −Y (i, j)} ^ 2
D2 = Σ {X (i, j) −Z (i, j)} ^ 2
(P ^ 2 indicates the square of P)
いずれの場合であっても、セレクタ部105は、D1≦D2を満たす場合、2色符号化データを選択し、D1>D2の場合には多値符号化データを選択する。
In any case, the
また、2色抽出部102は、着目ブロック内の全画素値が同一であった場合、2色抽出部102は2つの代表色C0、C1のうち、一方を実在する色とする。そして、もう一方を、ダミーデータとする。そして、その中央値をAVEとして2色符号化部103に出力すればよい。一例を挙げるなら、次の通りである。
Further, when all the pixel values in the block of interest are the same, the two-
今、着目ブロック内の全画素の値が仮に“255”であったとする。この場合、2色抽出部102は、C0=255(実在する色)、C1=0(ダミーデータ)、その中央値の“128”をAVEとして2色符号化部103に出力する。2色符号化部103は、図3の構成によって、全画素の識別情報を“1”として決定することになるだけであり、何等矛盾は生じない。
Now, it is assumed that the values of all the pixels in the block of interest are “255”. In this case, the two-
以上説明したように本第2の実施形態に従えば、第1の実施形態の作用効果に加えて、より正確にオリジナル画像に近似する画像を復号可能な符号化データを生成することが可能になる。 As described above, according to the second embodiment, in addition to the operational effects of the first embodiment, it is possible to generate encoded data capable of decoding an image that approximates the original image more accurately. Become.
なお、本第2の実施形態における復号装置は、第1の実施形態と同じであるので、その説明は省略する。また、本第2の実施形態に相当する機能を、先に説明した第1の実施形態の変形例と同様に、コンピュータプログラムによって実現できることは明らかである。 Note that the decoding device in the second embodiment is the same as that in the first embodiment, and a description thereof will be omitted. Further, it is obvious that the function corresponding to the second embodiment can be realized by a computer program as in the modification of the first embodiment described above.
通常、コンピュータプログラムは、CD−ROM等のコンピュータ可読記憶媒体に格納され、それをコンピュータが有する読取り装置(CD−ROMドライブ等)にセットし、システムにコピーもしくはインストールすることで実行可能になる。従って、このようなコンピュータ可読記憶媒体も本発明の範疇にあることも明らかである。 Usually, the computer program is stored in a computer-readable storage medium such as a CD-ROM, and is set in a reading device (such as a CD-ROM drive) included in the computer, and can be executed by copying or installing in the system. Therefore, it is obvious that such a computer-readable storage medium is also within the scope of the present invention.
Claims (11)
複数画素で構成されるブロックを単位に画像データを入力する入力手段と、
着目ブロック内の画素値の平均値AVEを算出し、算出した前記平均値AVE以下の値を持つ画素群を第1グループ、前記平均値AVEよりも大きい値を持つ画素群を第2グループとしたとき、前記第1グループ、前記第2グループのそれぞれの画素値の平均値を、前記着目ブロックの代表画素値C0、C1として抽出する抽出手段と、
前記着目ブロック内の各画素が前記代表画素値C0、C1のいずれに属するかを示すための2値の識別情報を生成する識別情報生成手段と、
前記代表画素値C0、C1の予め設定された一方の画素値の最下位ビット、及び、前記代表画素値C0、C1それぞれの最下位ビットを除くC0’、C1’のデータを生成する生成手段と、
前記一方の画素値の最下位ビット、前記C0’、C1’、及び、前記識別情報をまとめて前記着目ブロックの符号化データを生成し、出力する出力手段とを備え、
前記出力手段は、前記代表画素値C0、C1の他方の代表画素値の最下位ビットの値に応じて、前記符号化データに配置する前記C0’、C1’の順番を、C0’、C1’、又は、C1’、C0’のいずれかにして出力することを特徴とする画像符号化装置。 An image encoding device for encoding multi-value image data in which one pixel is represented by a plurality of bits,
An input means for inputting image data in units of blocks composed of a plurality of pixels;
An average value AVE of the pixel values in the block of interest is calculated, a pixel group having a value equal to or less than the calculated average value AVE is a first group, and a pixel group having a value larger than the average value AVE is a second group. Extraction means for extracting an average value of the pixel values of the first group and the second group as representative pixel values C0 and C1 of the block of interest ;
Identification information generating means for generating binary identification information for indicating which of the representative pixel values C0 and C1 each pixel in the block of interest belongs to;
Generating means for generating data of C0 ′ and C1 ′ excluding the least significant bit of one of the preset pixel values of the representative pixel values C0 and C1 and the least significant bit of each of the representative pixel values C0 and C1; ,
An output unit that generates and outputs encoded data of the block of interest by combining the least significant bit of the one pixel value, the C0 ′, C1 ′, and the identification information;
The output means determines the order of the C0 ′ and C1 ′ to be arranged in the encoded data according to the value of the least significant bit of the other representative pixel value of the representative pixel values C0 and C1, and C0 ′ and C1 ′. Or an image encoding apparatus that outputs the data as either C1 ′ or C0 ′.
更に、
前記着目ブロック内の8×8画素のサブブロックを単位にJPEG符号化をm×n回行なうことで、JPEG符号化データを生成し、1つのサブブロックのJPEG符号化データをL/(m×n)−1ビット、それ以外のサブブロックのJPEG符号化データをL/(m×n)ビットの固定長にすることで、前記着目ブロックからL−1ビットのJPEG符号化データを生成するJPEG符号化手段と、
前記出力手段が出力する符号化データと、前記JPEG符号化手段で生成されたJPEG符号化データのいずれか一方を選択すると共に、選択した符号化データがいずれの符号化データであるかを示す1ビットの符号化種別情報に後続して、選択した符号化データを出力する選択手段と
を備えることを特徴とする請求項1又は2に記載の画像符号化装置。 The block is composed of 8m × 8n (m, n is an integer of 1 or more) pixels, and when the number of bits of encoded data output by the output unit is defined as L-1 bits,
Furthermore,
JPEG encoding is performed m × n times for each 8 × 8 pixel sub-block in the block of interest to generate JPEG encoded data, and the JPEG encoded data of one sub-block is converted to L / (m × n) JPEG for generating L-1 bit JPEG encoded data from the block of interest by setting the JPEG encoded data of the other sub-blocks to a fixed length of L / (m × n) bits. Encoding means;
1 indicating whether the selected encoded data is one of the encoded data output from the output means and the JPEG encoded data generated by the JPEG encoding means. and subsequent to the bits of the encoded type information, the image encoding apparatus according to claim 1 or 2, characterized in that it comprises a selection means for outputting the selected coded data.
前記代表画素値C1とC0との差と、予め設定された閾値とを比較し、前記差が前記閾値以下であった場合、前記JPEG符号化手段で生成された符号化データを選択し、前記差が前記閾値より大きい場合に前記出力手段が出力する符号化データを選択することを特徴とする請求項3に記載の画像符号化装置。 The selection means includes
The difference between the representative pixel values C1 and C0 is compared with a preset threshold value. If the difference is less than or equal to the threshold value, the encoded data generated by the JPEG encoding means is selected, and 4. The image encoding apparatus according to claim 3 , wherein when the difference is larger than the threshold value, the encoded data output by the output unit is selected.
前記JPEG符号化手段で生成される符号化データを復号した結果の画像と、符号化前の前記着目ブロックの画像の各画素間の画素値の差分の合計である誤差D1を算出し、
前記出力手段から出力される符号化データを復号した結果の画像と、符号化前の前記着目ブロックの画像の各画素間の画素値の差分の合計である誤差D2を算出し、
D2≦D1
の関係にあるとき、前記出力手段が出力する符号化データを選択し、
D2>D1の関係にあるとき、前記JPEG符号化手段で生成された符号化データを選択する
ことを特徴とする請求項3に記載の画像符号化装置。 The selection means includes
Calculating an error D1 that is the sum of pixel value differences between each pixel of the image obtained by decoding the encoded data generated by the JPEG encoding means and the image of the target block before encoding;
Calculating an error D2 that is the sum of the pixel value differences between each pixel of the image obtained by decoding the encoded data output from the output means and the image of the block of interest before encoding;
D2 ≦ D1
When the relationship is, select the encoded data output by the output means,
The image encoding device according to claim 3 , wherein when the relationship of D2> D1 is satisfied, the encoded data generated by the JPEG encoding unit is selected.
入力手段が、複数画素で構成されるブロックを単位に画像データを入力する入力工程と、
抽出手段が、着目ブロック内の画素値の平均値AVEを算出し、算出した前記平均値AVE以下の値を持つ画素群を第1グループ、前記平均値AVEよりも大きい値を持つ画素群を第2グループとしたとき、前記第1グループ、前記第2グループのそれぞれの画素値の平均値を、前記着目ブロックの代表画素値C0、C1として抽出する抽出工程と、
識別情報生成手段が、前記着目ブロック内の各画素が前記代表画素値C0、C1のいずれに属するかを示すための2値の識別情報を生成する識別情報生成工程と、
生成手段が、前記代表画素値C0、C1の予め設定された一方の代表画素値の最下位ビット、及び、前記代表画素値C0、C1それぞれの最下位ビットを除くC0’、C1’のデータを生成する生成工程と、
出力手段が、前記一方の画素値の最下位ビット、前記C0’、C1’、及び、前記識別情報をまとめて前記着目ブロックの符号化データを生成し、出力する出力工程とを備え、
前記出力工程は、前記代表画素値C0、C1の他方の代表画素値の最下位ビットの値に応じて、前記符号化データに配置する前記C0’、C1’の順番を、C0’、C1’、又は、C1’、C0’のいずれかにして出力することを特徴とする画像符号化装置の制御方法。 A control method of an image encoding device for encoding multi-value image data in which one pixel is represented by a plurality of bits,
An input step in which the input means inputs image data in units of blocks composed of a plurality of pixels;
The extraction means calculates an average value AVE of the pixel values in the block of interest, a first group of pixels having a value equal to or less than the calculated average value AVE, and a first group of pixels having a value greater than the average value AVE. An extraction step of extracting an average value of the pixel values of the first group and the second group as representative pixel values C0 and C1 of the block of interest when two groups are provided ;
An identification information generating step in which identification information generating means generates binary identification information for indicating which of the representative pixel values C0 and C1 each pixel in the block of interest belongs to;
The generating means obtains the data of C0 ′ and C1 ′ excluding the least significant bit of one representative pixel value set in advance of the representative pixel values C0 and C1 and the least significant bit of each of the representative pixel values C0 and C1. A generation process to generate;
An output unit comprising: an output step of generating and outputting encoded data of the block of interest by combining the least significant bit of the one pixel value, the C0 ′, C1 ′, and the identification information;
In the output step, the order of the C0 ′ and C1 ′ arranged in the encoded data is changed to C0 ′ and C1 ′ according to the value of the least significant bit of the other representative pixel value of the representative pixel values C0 and C1. Or a control method for an image encoding apparatus, wherein the output is performed as either C1 ′ or C0 ′.
1ブロック分の符号化データを単位に入力する入力手段と、
入力した符号化データ中の予め設定された位置から、1ビットのデータ、及び、ブロックの代表画素値C0、C1の最下位ビットを除いたデータV0,V1、及び、ブロック内の各画素が前記代表画素値C0、C1のいずれに属するのかを示す識別情報を抽出する抽出手段と、
前記データV0とV1とを比較することで決まる前記データV0、V1の一方の最下位ビットに、前記1ビットのデータを追加することで、前記代表画素値C0、C1の一方の代表画素値を復元し、
前記データV0とV1の値の大小の並び順に従って、前記代表画素値C0、C1の他方の代表画素値を復元する代表画素値復元手段と、
前記識別情報の値に従って、前記代表画素値復元手段で復元された代表画素値C0、C1のいずれか一方を選択し、出力することで、複数の画素で構成されるブロックの画像を復元する画像復元手段と
を備えることを特徴とする画像復号装置。 An image decoding device for decoding encoded data generated by the image encoding device according to claim 1,
Input means for inputting encoded data for one block in units;
From the preset position in the input encoded data, 1-bit data and the data V0, V1 excluding the least significant bit of the representative pixel values C0 and C1 of the block and each pixel in the block are Extraction means for extracting identification information indicating which of the representative pixel values C0 and C1 belongs;
By adding the 1-bit data to one least significant bit of the data V0 and V1 determined by comparing the data V0 and V1, one representative pixel value of the representative pixel values C0 and C1 is obtained. Restore,
Representative pixel value restoring means for restoring the other representative pixel value of the representative pixel values C0 and C1 in accordance with the order of arrangement of the values of the data V0 and V1;
An image for restoring an image of a block composed of a plurality of pixels by selecting and outputting one of the representative pixel values C0 and C1 restored by the representative pixel value restoration unit according to the value of the identification information An image decoding apparatus comprising: a restoration unit.
入力手段が、1ブロック分の符号化データを単位に入力する入力工程と、
抽出手段が、入力した符号化データ中の予め設定された位置から、1ビットのデータ、及び、ブロックの代表画素値C0、C1の最下位ビットを除いたデータV0,V1、及び、ブロック内の各画素が前記代表画素値C0、C1のいずれに属するのかを示す識別情報を抽出する抽出工程と、
復元手段が、前記データV0とV1とを比較することで決まる前記データV0、V1の一方の最下位ビットに、前記1ビットのデータを追加することで、前記代表画素値C0、C1の一方の代表画素値を復元し、
前記データV0とV1の値の大小の並び順に従って、前記代表画素値C0、C1の他方の代表画素値を復元する代表画素値復元工程と、
画像復元手段が、前記識別情報の値に従って、前記代表画素値復元工程で復元された代表画素値C0、C1のいずれか一方を選択し、出力することで、複数の画素で構成されるブロックの画像を復元する画像復元工程と
を備えることを特徴とする画像復号装置の制御方法。 A control method for an image decoding device for decoding encoded data generated by the image encoding device according to claim 1, comprising:
An input step in which the input means inputs encoded data for one block in units;
The extraction means removes 1-bit data and the data V0, V1 excluding the least significant bits of the representative pixel values C0 and C1 of the block from the preset position in the input encoded data, An extraction step of extracting identification information indicating which of the representative pixel values C0 and C1 each pixel belongs to;
The restoring means adds the 1-bit data to the least significant bit of one of the data V0 and V1 determined by comparing the data V0 and V1, so that one of the representative pixel values C0 and C1 Restore the representative pixel value,
A representative pixel value restoring step of restoring the other representative pixel value of the representative pixel values C0 and C1 according to the order of arrangement of the values of the data V0 and V1;
The image restoration unit selects and outputs one of the representative pixel values C0 and C1 restored in the representative pixel value restoration step according to the value of the identification information, and thereby outputs a block composed of a plurality of pixels. A method for controlling an image decoding apparatus, comprising: an image restoration step for restoring an image.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007163016A JP4971881B2 (en) | 2007-06-20 | 2007-06-20 | Image encoding apparatus, image decoding apparatus, and control method thereof |
US12/142,314 US8213727B2 (en) | 2007-06-20 | 2008-06-19 | Image encoding apparatus and image decoding apparatus, and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007163016A JP4971881B2 (en) | 2007-06-20 | 2007-06-20 | Image encoding apparatus, image decoding apparatus, and control method thereof |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009005018A JP2009005018A (en) | 2009-01-08 |
JP2009005018A5 JP2009005018A5 (en) | 2010-07-08 |
JP4971881B2 true JP4971881B2 (en) | 2012-07-11 |
Family
ID=40320934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007163016A Expired - Fee Related JP4971881B2 (en) | 2007-06-20 | 2007-06-20 | Image encoding apparatus, image decoding apparatus, and control method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4971881B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150256842A1 (en) * | 2014-03-07 | 2015-09-10 | Silicon Image, Inc. | Compressed Video Transfer over a Multimedia Link |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3843581B2 (en) * | 1998-03-05 | 2006-11-08 | 富士ゼロックス株式会社 | Image encoding device, image decoding device, image processing device, image encoding method, image decoding method, and image processing method |
JP3940986B2 (en) * | 2001-10-18 | 2007-07-04 | ソニー株式会社 | Data processing apparatus, data processing method, and program |
US20060044576A1 (en) * | 2004-07-30 | 2006-03-02 | Kabushiki Kaisha Toshiba | Apparatus for image processing |
-
2007
- 2007-06-20 JP JP2007163016A patent/JP4971881B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009005018A (en) | 2009-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8213727B2 (en) | Image encoding apparatus and image decoding apparatus, and control method thereof | |
JP4418762B2 (en) | Image encoding apparatus, image decoding apparatus, control method thereof, computer program, and computer-readable storage medium | |
JP5179889B2 (en) | Method and apparatus for effectively compressing and restoring binary video | |
US7903888B2 (en) | Image encoding apparatus and image decoding apparatus | |
JP4956304B2 (en) | Image encoding apparatus, control method therefor, computer program, and computer-readable storage medium | |
JP4522199B2 (en) | Image encoding apparatus, image processing apparatus, control method therefor, computer program, and computer-readable storage medium | |
JP4829836B2 (en) | Image encoding apparatus, control method for image encoding apparatus, computer program, decoding apparatus, and computer-readable storage medium | |
JP5101962B2 (en) | Image coding apparatus, control method therefor, and computer program | |
JP4871822B2 (en) | Image coding apparatus and control method thereof | |
JP4971881B2 (en) | Image encoding apparatus, image decoding apparatus, and control method thereof | |
JP4684701B2 (en) | Scramble processing device, descramble processing device, scramble processing method, and descramble processing method | |
JP5086777B2 (en) | Image encoding apparatus, control method therefor, computer program, and computer-readable storage medium | |
JP4462360B2 (en) | Image compression apparatus and image expansion apparatus | |
JP4743884B2 (en) | Image coding apparatus and control method thereof | |
JP2005151312A (en) | Image coding and decoding device | |
Zhou et al. | A reversible data hiding scheme for AMBTC images using gray code and exclusive-or approaches | |
JP2009260747A (en) | Image encoding device, and control method thereof | |
JP4093867B2 (en) | Image encoding apparatus, image encoding method, image encoding program, and computer-readable recording medium recording the image encoding program | |
JP3695330B2 (en) | Image compression method and apparatus, and recording medium | |
JP4944833B2 (en) | Image coding apparatus and control method thereof | |
JP4971880B2 (en) | Image encoding apparatus, image decoding apparatus, and control method thereof | |
JP4743883B2 (en) | Image coding apparatus and control method thereof | |
Ya et al. | High-Capacity Reversible Data Hiding in Encrypted Image Based on Hierarchical Quad-Tree Coding and Multi-MSB Prediction. Electronics 2021, 10, 664 | |
Akhtar et al. | A Novel Image Compression Technique using Simple Arithmetic Addition | |
JP2008228229A (en) | Image encoding apparatus and control method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100520 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100520 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110701 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110822 |
|
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: 20120309 |
|
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: 20120406 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150413 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4971881 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150413 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |