JP2009130467A - 画像符号化装置、及び、その制御方法 - Google Patents

画像符号化装置、及び、その制御方法 Download PDF

Info

Publication number
JP2009130467A
JP2009130467A JP2007300972A JP2007300972A JP2009130467A JP 2009130467 A JP2009130467 A JP 2009130467A JP 2007300972 A JP2007300972 A JP 2007300972A JP 2007300972 A JP2007300972 A JP 2007300972A JP 2009130467 A JP2009130467 A JP 2009130467A
Authority
JP
Japan
Prior art keywords
encoding
data
pixel
sub
block
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.)
Granted
Application number
JP2007300972A
Other languages
English (en)
Other versions
JP5086777B2 (ja
JP2009130467A5 (ja
Inventor
Kenta Takarazaki
健太 寳▲崎▼
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2007300972A priority Critical patent/JP5086777B2/ja
Priority to US12/211,886 priority patent/US8238437B2/en
Publication of JP2009130467A publication Critical patent/JP2009130467A/ja
Publication of JP2009130467A5 publication Critical patent/JP2009130467A5/ja
Application granted granted Critical
Publication of JP5086777B2 publication Critical patent/JP5086777B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

【課題】 2値画像を効率良く符号化することが可能になる。
【解決手段】 符号化処理部110、130内の分配部111、131は、入力した16×16画素で構成される画素ブロック内の画素データを、それぞれ異なるアルゴリズムに従って4つの8×8画素を格納するサブブロックSB0乃至SB3に分配する。そして、符号化処理部110、130内の圧縮部は各サブブロックを符号化し、連結部で連結し、1ブロック分の符号化データを出力する。比較部160は、各符号化データのデータ量を比較し、最小となる符号化データがいずれの符号化処理部で生成されたのかを示す識別情報を生成する。選択部170は、識別情報で特定された符号化処理部からの符号化データを選択し、選択した符号化データと識別情報とを出力する。
【選択図】 図1

Description

本発明は画像データの圧縮符号化技術に関するものである。
従来、文字や線画など高い解像度が要求される画像(以下、文字線画)と、写真画像や背景などの画像(以下、階調画像)とに分離し、それぞれ別の圧縮方式で圧縮し、圧縮後にそれらのデータを結合し、固定長の符号化データを生成する試みが行われていた。文字線画は、各画素が文字線画を構成する画素であるか否かを識別する2値の識別情報と、その画素値を可逆可変長符号化する。一方、階調画像は固定長の残りの符号量に収まるように非可逆圧縮を行う。このような固定長符号化の画像品質を確保するためには、2値の識別情報の可変長符号化をあらゆるパターンに対して効率的に行うこと、即ち、圧縮効率の最悪値を改善することが最も重要な指針とされていた。
従来、2値データに対して圧縮を行うものとしては、ITU−TSのG3ファクシミリで規格化されているMH(Modified Huffman)やMR(Modified READ)、MMR(Modified MR)などが一般的であった。これらの方式はランレングス符号化を基本とした圧縮アルゴリズムであり、例えばMHはラスタ方向のランレングスを予め定められた符号語で符号化するという方式である。
また、ブロック化された2値画像を圧縮する技術として特許文献1が提案されている。この文献には、2値画像を4×4から16×16画素のブロックに分割し、ブロックのサイズの符号と、4×4のサイズに対しては原画像におけるブロック内の画素パターン情報の符号する点が開示されている。また、その他のサイズに対しては、ブロック内の黒画素数をカウントすることにより求めた、ブロックの階調情報の符号を合成して圧縮を行うことが開示されている。
特許第2936042号公報
これらの圧縮方式は文字や線画など連続性が高く単純な画像に対しては効率的な圧縮が可能であるが、より複雑な画像の圧縮には不向きである。例えば、PCのアプリケーションソフトにおいて中間濃度の画像や半透明の画像を用いて文書を作成した場合に、その文書をPCでレンダリングすると図5(a),(b)に示すようなパターンが表れることが多くあった。図5(a),(b)を見ると、中間濃度や半透明の部分は、必ずしも中間濃度値の画素で表現されるわけではなく高濃度値と低濃度値の画素の発生する割合によって濃度表現される場合があるということが分かる。そして、図5のように濃度の変化点が多い画像は、ランを稼ぐことができず、MHやMRなどの圧縮アルゴリズムは不向きである場合が多かった。
また、特許文献1においても4×4以外のサイズに対してはブロックの濃度のみを保証するアルゴリズムであり、その形状までは保証できず、復号化後に形状が変わってしまうという問題があった。
本発明は上記のような複雑な画像に対しても、効率的な圧縮が可能となる技術を提供しようとするものである。
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
画像データを符号化する画像符号化装置であって、
複数の画素を含むサイズの画素ブロックを単位に、画像データを入力する入力手段と、
前記入力手段で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/K(Kは2以上の整数)の画素数で構成されるK個のサブブロックSB(0)乃至SB(K−1)のいずれかに分配する分配手段であって、互いに異なるアルゴリズムに従って分配を行なう複数の分配手段と、
前記分配手段の分配処理で作成されたサブブロックSB(0)乃至SB(K−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する複数の符号化手段と、
前記符号化手段それぞれで生成された符号化データのデータ量を比較し、最小符号量となる符号化データがいずれの符号化手段で生成されたのかを示す識別情報を生成する比較手段と、
前記比較手段で生成された識別情報で特定された符号化手段からの符号化データを選択し、選択した符号化データと前記識別情報とを出力する選択手段とを備える。
本発明によれば、複雑な2値画像を効率的に符号化することが可能となる。
以下、添付図面に従って本発明に係る実施形態を説明する。本実施形態での符号化対象の画像データは2値画像データであるものとする。但し、ここで言う2値画像とは、例えば画素値が0、1のみを言うのでない。すなわち、例えば、8ビットで表わされる画素値のうち、出現する濃度が50と150の2種類である場合にも適用できる。
[第1の実施形態]
図1は第1の実施形態における可逆画像符号化装置のブロック構成図である。
本装置は、符号化処理部110、120、130、140と、それぞれの符号量を検出する符号量検出部151乃至154、比較部160、及び、選択部170を有する。
符号化処理部110、120、130、140は、入力した16×16画素ブロックを符号化し、生成した符号化データを選択部170に出力する(詳細後述)。符号量検知部151乃至154は、それぞれの符号化データのデータ量を検出し、その検出した結果を比較部160に出力する。比較部160は、符号量検知部151乃至154からの符号量を比較し、最も小さい符号量がいずれであるのかを判定し、その判定結果を制御信号として選択部170に出力する。選択部170は、比較部160から制御信号に従い、符号化処理部110、120、130、140のいずれか1つからの符号化データを選択し、出力する。このとき、選択部170は、どの符号化処理部の符号化データであるかを示す識別情報を、選択した符号化データのヘッダに付加して出力する。実施形態の場合、符号化処理部は4つであるので、この識別情報は2ビットで良い。なお、符号化処理部110、120、130、140で生成された符号化データのデータ量が最小となるものが2つ存在することも起こり得る。この場合、符号化処理部110、120、130、140の優先順位に1つの符号化データを選択対象として決定する。
次に、各符号化処理部110、120、130、140について説明する。
符号化処理部110は、分配部111、圧縮部112乃至115、連結部116を有する。
分配部111は、入力した16×16画素ブロック内の各画素データを、図3(a)のテーブルを参照し、4つの8×8画素のサブブロックのいずれかに分配する。具体的には、次の通りである。
分配部111は、図3(a)の“0”で示される位置の画素データを、8×8画素のサブブロック(以下、サブブロックSB0という)に分配し、そのサブブロックSB0を圧縮部112に出力する。
同様に、分配部111は、同様に、図3(a)の“1”で示される位置の画素データをサブブロックSB1に分配し、圧縮部113に出力する。また、分配部111は、図3(a)の“2”で示される位置の画素データをサブブロックSB2に分配し、圧縮部114に出力する。そして、分配部111は図3(a)の“3”で示される位置の画素データをサブブロックSB3に分配し、圧縮部115に出力する。
より分かりやすく説明するのであれば、次の通りである。今、入力した16×16画素ブロック内の座標(x,y)の画素値をB(x,y)と定義する。そして、サブブロックSB0、SB1、SB2,SB3の座標(x,y)の画素値をSB0(x,y)、SB1(x,y)、SB2(x,y)、SB3(x,y)と定義する。この場合、分配部111は、入力したブロック画像B内の各画素データを以下のようにして、4つのサブブロックSB0,SB1,SB2,SB3に分配する。
SB0(x,y)←B(2x,2y)
SB1(x,y)←B(2x+1,2y)
SB2(x,y)←B(2x,2y+1)
SB3(x,y)←B(2x+1,2y+1) …(1)
ここでx、yは0乃至7の整数である。
要するに、画素ブロックのサイズをM×N画素とし、それをK(=p×q)個のサブブロックに分配するとする。この場合、分配部111は、画素ブロック内の座標(x,y)の画素データを、xをpで除算したときの余りと、y座標をqで除算したときの余りで示されるサブブロックの1つに分配する。
圧縮部112乃至115は、それぞれに供給されたサブブロックSB0乃至SB3を圧縮符号化し、連結部116に出力する。圧縮部の圧縮符号化アルゴリズムは如何なるものでも構わないが、実施形態ではサブブロック内をスキャンし、ランを求め、ハフマン符号表に従ってランの符号語を生成するものとする(可変長可逆符号化)。連結部116は、各サブブロックの符号化データを予め設定された順番、例えば、サブブロックSB0、SB1、SB2、SB3の順番に符号化データを連結し、選択部170及び符号量検知部151に出力する。
次に、符号化処理部120について説明する。符号化処理部120内における分配部121、圧縮部122乃至125、及び、連結部126は、符号化処理部110における分配部111、圧縮部112乃至115、連結部116と同じである。異なる点は、差分予測部127を設けた点にある。それ故、以下では、差分予測部127について説明する。
差分予測部127は、分配部121から入力したK個のサブブロック中の1つのサブブロックについては加工せずそのまま出力する。そして、その1つのサブブロックをリファレンスとし、そのリファレンス以外の、K−1個のサブブロックについては、リファレンスに対する差分予測値を演算し、その演算結果を出力する。
実施形態における差分予測部127は、具体的には、分配部121から入力したサブブロックSB0はそのまま圧縮部122に出力する。そして、そのサブブロックSB0をリファレンスとする。差分予測部127は、リファレンスであるサブブロックSB0と残りの3つのサブブロックSB1、SB2、SB3との排他的論理和演算を、同位相位置の画素単位に行なう。そして、その論理演算結果をSB1’、SB2’、SB3’として圧縮部123乃至125に出力する。
SB1’←XOR{SB0(x,y),SB1(x,y)}
SB2’←XOR{SB0(x,y),SB2(x,y)}
SB3’←XOR{SB0(x,y),SB3(x,y)} …(2)
ここでXOR{a,b}は、値a,bのビット同士の排他的論理和演算を表わす。
従って、符号化処理部120は、サブブロックSB0、SB1’、SB2’、SB3’それぞれの符号化データを結合して出力することになる。
要するに、符号化処理部110と120との違いは、符号化処理部110は上記論理演算前のサブブロックを符号化し、符号化処理部120は上記論理演算後のサブブロックを符号化するものである。
次に、符号化処理部130について説明する。符号化処理部130内における圧縮部132乃至135、及び、連結部136は、符号化処理部110内の圧縮部112乃至115、連結部116と同じである。異なる点は、分配部131による分配の仕方である。それ故、以下では、分配部131について説明する。
分配部131は、図3(b)の“0”で示される位置の画素データをサブブロックSB0に分配し、圧縮部132に出力する。
同様に、分配部131は、同様に、図3(b)の“1”で示される位置の画素データをサブブロックSB1に分配し、圧縮部133に出力する。また、分配部131は、図3(b)の“2”で示される位置の画素データをサブブロックSB2に分配し、圧縮部134に出力する。そして、分配部131は、図3(a)の“3”で示される位置の画素データをサブブロックSB3に分配し、圧縮部135に出力する。
要するに、分配部131は、入力した画素ブロックBを、水平方向にp等分、垂直方向にq等分した各分割領域(p×q個)をサブブロックとして定義する。そして、入力した画素ブロックB内の画素データを各サブブロックに分配する。なお、ここで、p、及び、qは1以上の整数であり、いずれか一方は少なくとも2以上の整数である。
実施形態における分配部131は、入力した16×16画素のブロックBを、水平、垂直方向とも2等分して、4つのサブブロックSB0、SB1、SB2、SB3を構築する。式で示せば次式(3)の通りである。
SB0(x,y)←B(x,y)
SB1(x,y)←B(x+8,y)
SB2(x,y)←B(x,y+8)
SB3(x,y)←B(x+8,y+8) …(3)
ここでx、yは0乃至7の整数である。
符号化処理部130は、上記式(3)で示されるサブブロックSB0、SB1、SB2、SB3それぞれの符号化データを結合して出力することになる。
次に、符号化処理部140について説明する。符号化処理部140内の分配部141は符号化処理部130内の分配部131と同じである(図3(b)参照)。また、分配部140内の圧縮部142乃至145、連結部146、及び、差分予測部147は、符号化処理部120内の圧縮部122乃至125、連結部126、及び、差分予測部127と同じである。それ故、差分予測部127は、サブブロックSB0については、そのまま圧縮部142に出力し、他のサブブロックSB1,SB2,SB3について次式(4)によってサブブロックSB1’、SB2’、SB3’を演算し、圧縮部143乃至145に出力する。
SB1’←XOR{SB0(x,y),SB1(x,y)}
SB2’←XOR{SB0(x,y),SB2(x,y)}
SB3’←XOR{SB0(x,y),SB3(x,y)} …(4)
上記の式(4)は、先に示した式(2)と同じであるが、式(4)内におけるサブブロックSB1、SB2、SB3は、式(3)によって得られた結果である点に注意されたい。
以上、符号化処理部110、120、130、140について説明した。
各符号化処理部は、生成した符号化データを、先に説明したように、選択部170に出力されると共に、対応する符号量検知部151、152、153、154にも出力する。そして、選択部170は、4つの符号化データの中で最もデータ量の少ない符号化データを選択して、出力する。この際、選択部170は、どの符号化処理部からの符号化データが選択されたのかを示す識別情報(実施形態では4種類であるので2ビット)を、ヘッダに格納する。つまり、選択部170から出力される16×16画素のブロックBの符号化データのフォーマットは、図4に示す様になる。図示の如く、識別情報がヘッダとなり、それに後続してサブブロックSB0の符号化データ、SB1又はSB1’の符号化データ、SB2又はSB2’の符号化データ、SB3又はSB3’の符号化データが配置される。
以上、実施形態における画像符号化装置を説明した。次に、実施形態における画像復号装置を説明する。なお、以下の説明における表記は、符号化装置での表記を用いるものとし、その説明は省略する。
図2は、画像復号装置のブロック構成図である。本装置は、識別情報分離部201、伸長部202、サブブロック復元部203、サブブロック統合部204で構成される。
符号化データが本装置に入力されると、識別情報分離部201は符号化データのヘッダの識別情報(2ビット)を分離、抽出し、その識別情報をサブブロック復元部203、サブブロック統合部204に出力する。
伸長部202は、識別情報に後続する符号化データを入力し、伸長処理(復号処理)を行ない、{SB0、SB1、SB2、SB3}、もしくは、{SB0、SB1’、SB2’、SB3’}を生成し、サブブロック復元部203に出力する。
識別情報が、符号化処理部110、130のいずれかにより符号化されたことを示す情報である場合、入力したデータは{SB0、SB1、SB2、SB3}であることになる。この場合、サブブロック復元部203は、入力したデータをそのままサブブロック統合部204に出力する。
一方、識別情報が、符号化処理部120、140のいずれかにより符号化されたことを示す情報で場合、伸長部202から入力したデータは{SB0、SB1’、SB2’、SB3’}であることになる。この場合、サブブロック復元部203は、サブブロックSB0については、そのままサブブロック統合部204に出力する。そして、サブブロック復元部203は、残りのSB1’、SB2’、SB3’について、次式(5)によりサブブロックSB1、SB2、SB3を復元する。
SB1←XOR{SB0(x,y),SB1’(x,y)}
SB2←XOR{SB0(x,y),SB2’(x,y)}
SB3←XOR{SB0(x,y),SB3’(x,y)} …(5)
サブブロック統合部204は、サブブロック復元部203からのサブブロックSB0,SB1,SB2,SB3を入力し、識別情報に基づき16×16画素のブロックBを構築する。具体的には、次の通りである。
識別情報が符号化処理部130、140のいずれかにより符号化されたことを示す情報であったとする。この場合、サブブロック統合部204は、単純にサブブロックSB0、SB1、SB2、SB3を、図3(b)に示す形式、すなわち、次式に従って16×16画素の画素ブロックBの各画素を統合し、出力する。
B(x,y) ← SB0(x,y)
B(x+8,y) ← SB1(x,y)
B(x,y+8) ← SB2(x,y)
B(x+8,y+8)← SB3(x,y)
ここで、x,yは0乃至7の整数である。
また、識別情報が符号化処理部110、120のいずれかにより符号化されたことを示す情報であったとする。この場合、サブブロック統合部204は、サブブロックSB0、SB1、SB2、SB3を、図3(a)に示す形式で統合し、16×16画素の画素ブロックBとして出力する。具体的には次式の通りである。
B(2x,2y) ← SB0(x,y)
B(2x+1,2y) ← SB1(x,y)
B(2x,2y+1) ← SB2(x,y)
B(2x+1,2y+1)← SB3(x,y)
ここで、x,yは0乃至7の整数である。
以上の結果、符号化対象の画像データを効率良く、符号化することが可能になり、その符号化データから画像を復元することが可能になる。
ここで、符号化対象の画像データ中の16×16画素のブロックが、例えば図5(a)に示す画像であったとする。この場合、画像符号化装置における符号化処理部110、120、130、140内の圧縮部112乃至115、122乃至125、132乃至134、142乃至145に入力されるサブブロック{SB0,SB1,SB2,SB3}又は{SB0、SB1’,SB2’,SB3’}は図6乃至図9のようになる。
図6(a)乃至(d)は符号化処理部110における圧縮部112乃至115に供給されるサブブロックSB0、SB1、SB2、SB3を示している。また、図7(a)乃至(d)は符号化処理部120における圧縮部122乃至125に供給されるサブブロックSB0、SB1’、SB2’、SB3’を示している。図8(a)乃至(d)は符号化処理部130における圧縮部132乃至135に供給されるサブブロックSB0、SB1、SB2、SB3を示している。また、図9(a)乃至(d)は符号化処理部140における圧縮部142乃至145に供給されるサブブロックSB0、SB1’、SB2’、SB3’を示している。ここで、図7、図9では、サブブロックSB1,SB2,SB3ではなく、SB1’,SB2’,SB3’である点に注意されたい。
図5(a)の画像の場合、ランが稼げるのは、図6か図7のいずれかである。すなわち、最終的に選択される符号化データは符号化処理部110、120のいずれかで生成されたものとなるであろう。
また、符号化対象の画像データ中の16×16画素のブロックが、例えば図5(b)に示す画像であったとする。この場合、画像符号化装置における符号化処理部110、120、130、140のそれぞれの4つの圧縮部に入力されるサブブロック{SB0,SB1,SB2,SB3}又は{SB0、SB1’,SB2’,SB3’}は図10乃至図13のようになる。
図10(a)乃至(d)は符号化処理部110における圧縮部112乃至115に供給されるサブブロックSB0、SB1、SB2、SB3を示している。また、図11(a)乃至(d)は符号化処理部120における圧縮部122乃至125に供給されるサブブロックSB0、SB1’、SB2’、SB3’を示している。図12(a)乃至(d)は符号化処理部130における圧縮部132乃至135に供給されるサブブロックSB0、SB1、SB2、SB3を示している。また、図13(a)乃至(d)は符号化処理部140における圧縮部142乃至145に供給されるサブブロックSB0、SB1’、SB2’、SB3’を示している。ここでも、図11、図13では、サブブロックSB1,SB2,SB3ではなく、SB1’,SB2’,SB3’である点に注意されたい。
図5(b)の画像の場合、ランが稼げるのは、図13である。すなわち、最終的に選択される符号化データは符号化処理部14で生成されたものとなる。
なお、上記実施形態では、16×16画素の画素ブロック内の画素を、4つの8×8画素のサブブロックに分配する例を2つ(図3(a),(b))を示したが、3つ以上でも構わないし、その数に限定はされない。要するに、M×N画素の画素ブロック内の画素データを、その画素ブロックに含まれる画素数の1/K(Kは2以上の整数)個の画素数を格納するK個のサブブロックに分配する複数のアルゴリズムを用いるようにすればよい。例えば、16×16画素の画素ブロック内のライン番号をi(i=0乃至15のいずれか)としたとき、iを4で除算した際の余りをjとしたとき、第iラインの画像データをサブブロックSB(j)に分配するようにしても構わないであろう。
また、各符号化処理部には、分配部が設けられるものとして説明したが、いくつかはその構成を省くことができる。例えば、符号化処理部110、120内の分配部111、121は同じであるので、符号化処理部120内の分配部121を無くし、差分予測部127と第1の符号化処理部110内の分配部111とを接続しても構わない。
[第2の実施形態]
以下、本発明に係る第2の実施形態を説明する。
上記第1の実施形態では、符号化対象の画素ブロック内の画素データを、その画素ブロックに含まれる画素数の1/Kの画素数で構成されるK個のサブブロックSB(0)乃至SB(K−1)のいずれかに分配し、符号化するものであった。本第2の実施形態では、更に、同じ符号化対象の画素ブロック内の画素データを、その画素ブロックに含まれる画素数の1/Jの画素数で構成されるJ個のサブブロックSB(0)乃至SB(J−1)のいずれかに分配する構成を加える例を説明する。ここで、Jは2以上の整数であり、J≠Kの関係にある。サブブロックのサイズが異なる、第1の分配方法と、第2の分配方法を有する点を特徴とする。
図14は第2の実施形態の画像符号化装置のブロック構成図である。図1と同様の構成については同じ参照符号を付し、その説明は省略する(詳細は図1を参照されたい)。
図14では、図1の構成に、符号化処理部300、400、及び、符号量検知部155、156を追加した点である。
なお、第1の実施形態では、符号化対象の画素ブロックは16×16画素のサイズである例を説明したが、本第2の実施形態では符号化対象の画素ブロックは12×12画素のサイズであるものとする。
従って、図14における符号化処理部110、120、130、140におけるサブブロックのサイズは6×6画素サイズとなる点に注意されたい。
すなわち、本第2の実施形態における符号化処理部110内の分配部111は、図15(a)に示すように、12×12画素のブロックB中の“0”で示される画素データを、6×6画素のサブブロックSB0に分配し、生成する。同様にして、サブブロックSB1、SB2、SB3を生成する。そして、符号化処理部110は、サブブロックSB0、SB1、SB2、SB3の符号化データを連結して選択部170に出力する。
符号化処理部120は、符号化処理部110とほぼ同じである。但し、符号化処理部120は、サブブロックSB0、SB1’,SB2’,SB3’の符号化データを生成し、それらを連結して出力する。
また、本第2の実施形態における符号化処理部130内の分配部131(符号化処理部140内の分配部141も同様)は、図15(b)に示すように、12×12画素のブロックB中の“0”で示される画素データを、6×6画素のサブブロックSB0に分配する。同様にして、サブブロックSB1、SB2、SB3を生成する。そして、符号化処理部130は、サブブロックSB0、SB1、SB2、SB3の符号化データを連結して選択部170に出力する。
符号化処理部140は、符号化処理部130とほぼ同じである。但し、符号化処理部140は、サブブロックSB0、SB1’,SB2’,SB3’の符号化データを生成し、それらを連結して出力する。
なお、本第2の実施形態における符号化処理部110、120、130、140内の各圧縮部で圧縮符号化するサブブロックのサイズは、第1の実施形態と異なるので、第1の実施形態とは異なるハフマン符号表を用いることが望ましい。これは、以下に説明する符号化処理部300、400についても同様である。
次に、本第2の実施形態にて新に追加した符号化処理部300、400について説明する。
符号化処理部300は、図示の如く、分配部301、圧縮部311乃至319、連結部320で構成される。
分配部301は、入力した12×12画素の画素ブロックB内の各画素データを、9個の4×4画素サイズのサブブロックSB0乃至SB8のいずれかに分配する。そして、生成されたサブブロックSB0乃至SB8の画像データは圧縮部311乃至319に供給される。図15(c)は、画素ブロックBと、各サブブロックSB0乃至SB8との対応関係を示しており、式で示すのであれば次の通りである。
SB0(x,y)←B(3x,3y)
SB1(x,y)←B(3x+1,3y)
SB2(x,y)←B(3x+2,3y)
SB3(x,y)←B(3x,3y+1)
SB4(x,y)←B(3x+1,3y+1)
SB5(x,y)←B(3x+2,3y+1)
SB6(x,y)←B(3x,3y)+2
SB7(x,y)←B(3x+1,3y+2)
SB8(x,y)←B(3x+2,3y+2) …(6)
ここでx、yは0乃至3の整数である。
圧縮部311乃至319は、上記のようにして生成されたサブブロックSB0乃至SB8をそれぞれ符号化し、連結部320に出力する。連結部320は、サブブロックSB0乃至SB8の符号化データ、この順番に連結し、選択部170及び符号量検知部155に出力する。
次に、符号化処理部400を説明する。この符号化処理部400は、分配部401、圧縮部411乃至419、連結部420、及び、差分予測部430で構成される。このうち、分配部401、圧縮部411乃至419、連結部420は、符号化処理部300の分配部301、圧縮部311乃至319、連結部320と同じ機能とし、その説明は省略する。以下は差分予測部430の説明である。
差分予測部430は、9個のサブブロックSB0乃至SB8のうちの1つをそのまま通過させる。そして、差分予測部430は、その1つのサブブロックと、残りの8のサブブロックとの差分を算出し、その差分結果を出力する。具体的な例として、差分予測部430は、分配部401で生成されたサブブロックSB0については、そのまま圧縮部411に出力する。残りのサブブロックSB1乃至SB8については、次式に従って、差分を算出し、その結果をサブブロックSB1’乃至SB8’として圧縮部412乃至419に出力する。
SB1’(x,y)←XOR{SB0(x,y),SB1(x,y)}
SB2’(x,y)←XOR{SB0(x,y),SB2(x,y)}
SB3’(x,y)←XOR{SB0(x,y),SB3(x,y)}
SB4’(x,y)←XOR{SB0(x,y),SB4(x,y)}
SB5’(x,y)←XOR{SB0(x,y),SB5(x,y)}
SB6’(x,y)←XOR{SB0(x,y),SB6(x,y)}
SB7’(x,y)←XOR{SB0(x,y),SB7(x,y)}
SB8’(x,y)←XOR{SB0(x,y),SB8(x,y)}
圧縮部411はサブブロックSB0を圧縮符号化し、符号化データを生成する。圧縮部412乃至419はサブブロックSB1’乃至SB8’を符号化し、符号化データを生成する。連結部420は、サブブロックSB0の符号化データ、サブブロックSB1’乃至SB8’の符号化データを、この順番に連結し、選択部170及び符号量検知部156に出力する。
比較部160は、符号量検知部151乃至156から出力された符号量を示す値を比較し、最小符号量がいずれであるか判定する。そして、比較部160は、どの符号化処理部の符号化データは最小であったかを示す制御信号を選択部170に出力する。選択部170は、比較部160からの制御信号で特定された、符号化処理部110、120、130、140、300、400のいずれか1つの符号化データを選択し、出力する。このとき、どの符号化処理部からの符号化データを選択したのかを示す識別情報をヘッダに付加する。本第2の実施形態の場合、符号化処理部は全部で6個存在するので、識別情報は少なくとも3ビットが必要となる。
従って、選択部170が符号化処理部110、120、130、140のいずれかからの符号化データを選択した場合、符号化対象の12×12画素の符号化データのデータ構造は図16(a)に示す様になる。一方、選択部170が符号化処理部300、400のいずれかからの符号化データを選択した場合、符号化対象の12×12画素の符号化データのデータ構造は図16(b)に示す様になる。
以上、第2の実施形態における画像符号化装置を説明した。次に、第2の実施形態における画像復号装置を説明する。なお、以下の説明における表記は、符号化装置での表記を用いるものとし、その説明は省略する。
図17は、画像復号装置のブロック構成図である。本装置は、識別情報分離部501、伸長部502、サブブロック復元部503、サブブロック統合部504で構成される。
符号化データが本装置に入力されると、識別情報分離部501は符号化データのヘッダの識別情報(3ビット)を分離、抽出し、その識別情報を伸長部502、サブブロック復元部203、サブブロック統合部204に出力する。
ここで、識別情報分離部501からの識別情報が、図16(a)の符号化データのデータ構造であることを示しているとする。即ち、復号対象の符号化データが符号化処理部110、120、130、140のいずれかによって生成されたかを示しているとする。この場合、伸長部502は、識別情報に後続して4つのサブブロックの符号化データが存在するものとし、{SB0,SB1,SB2,SB3}、もしくは{SB0、SB1’,SB2’,SB3’}を復号する。そして、伸長部502は、その復号結果をサブブロック復元部503に出力する。
また、識別情報分離部501からの識別情報が、図16(b)の符号化データのデータ構造を示しているとする。すなわち、復号対象の符号化データが符号化処理部300、400のいずれかによって生成されたかを示しているとする。この場合、識別情報に後続して9つのサブブロックの符号化データが存在することになる。そこで、伸長部502は、9個のサブブロック{SB0,SB1,SB2,SB3、SB4、SB5、SB6、SB7、SB8}、又は、{SB0,SB1’,SB2’,SB3’、SB4’、SB5’、SB6’、SB7’、SB8’}を復号し、サブブロック復元部503に出力する。
識別情報が、符号化処理部110、130のいずれかにより符号化されたことを示す情報であるとする。この場合、サブブロック復元部503は、入力したデータは{SB0、SB1、SB2、SB3}であることになるので、そのままサブブロック統合部204に出力する。
識別情報が、符号化処理部300により符号化されたことを示す情報である場合には、入力したデータは{SB0,SB1,SB2,SB3、SB4、SB5、SB6、SB7、SB8}であることになる。そこで、サブブロック復元部503は、そのままサブブロック統合部204に出力する。
また、識別情報が、符号化処理部120、140のいずれかにより符号化されたことを示す情報である場合には、入力したデータは{SB0、SB1’、SB2’、SB3’}であることになる。そこで、サブブロック復元部503は、サブブロックSB0を用いて、サブブロックSB1、SB2、SB3を構築する。具体的には、第1の実施形態における式(5)を参照されたい。
また、識別情報が、符号化処理部400により符号化されたことを示す情報である場合には、入力したデータは{SB0,SB1’,SB2’,SB3’、SB4’、SB5’、SB6’、SB7’、SB8’}であることになる。そこで、サブブロック復元部503は、SB0を用いて、サブブロックSB1乃至SB8を次式に従って構築する。
SB1←XOR{SB0(x,y),SB1’(x,y)}
SB2←XOR{SB0(x,y),SB2’(x,y)}
SB3←XOR{SB0(x,y),SB3’(x,y)}
SB4←XOR{SB0(x,y),SB4’(x,y)}
SB5←XOR{SB0(x,y),SB5’(x,y)}
SB6←XOR{SB0(x,y),SB6’(x,y)}
SB7←XOR{SB0(x,y),SB7’(x,y)}
SB8←XOR{SB0(x,y),SB8’(x,y)} …(7)
サブブロック統合部504は、サブブロック復元部503からのサブブロックSB0乃至SB3、又は、SB0乃至SB8を入力し、識別情報に基づき12×12画素のブロックBを構築する。
より具体的には、識別情報が符号化処理部130、140のいずれかにより符号化されたことを示す情報で場合、サブブロック統合部504は、単純にサブブロックSB0、SB1、SB2、SB3を、図15(b)に示す形式、すなわち、次式に従って12×12画素の画素ブロックBの各画素を求め、出力する。
B(x,y) ← SB0(x,y)
B(x+6,y) ← SB1(x,y)
B(x,y+6) ← SB2(x,y)
B(x+6,y+6)← SB3(x,y)
ここで、x,yは0乃至5の整数である。
また、識別情報が符号化処理部110、120のいずれかにより符号化されたことを示す情報で場合、サブブロック統合部504は、サブブロックSB0、SB1、SB2、SB3を、図15(a)に示す形式で統合し、12×12画素の画素ブロックBとして出力する。具体的には次式の通りである。
B(2x,2y) ← SB0(x,y)
B(2x+1,2y) ← SB1(x,y)
B(2x,2y+1) ← SB2(x,y)
B(2x+1,2y+1)← SB3(x,y)
ここで、x,yは0乃至5の整数である。
また、識別情報が符号化処理部300、又は400により符号化されたことを示す情報で場合、サブブロック統合部504は、単純にサブブロックSB0乃至SB8を図15(c)に示す形式、すなわち、次式に従って12×12画素の画素ブロックBの各画素を求め、出力する。
B(3x,3y) ← SB0(x,y)
B(3x+1,3y) ← SB1(x,y)
B(3x+2,3y) ← SB2(x,y)
B(3x,3y+1) ← SB3(x,y)
B(3x+1,3y+1)← SB4(x,y)
B(3x+2,3y+1)← SB5(x,y)
B(3x,3y+2) ← SB6(x,y)
B(3x+1,3y+2)← SB7(x,y)
B(3x+2,3y+2)← SB8(x,y)
ここで、x,yは0乃至3の整数である。
以上説明したように、本第2の実施形態によれば、第1の実施形態の作用効果に加えて、3画素周期で変化する画像データについても圧縮効率を上げることが可能となる。
なお、第2の実施形態においても、符号化部130、140と同様の構成、すなわち、12×12画素のブロックを水平、垂直方向とも3等分にしたサブブロックに分配し、それぞれを符号化する2つの符号化処理部を更に追加しても構わない。
さらに、この分配方法以外にも別の分配方法を追加することで、様々な種類の画像に対して効率的な圧縮を行うことが可能である。
[第3の実施形態]
第3の実施形態を説明する。本第3の実施形態は、先に示した第1の実施形態の2値画像用の符号化装置を組み込んだ、固定長符号化データを生成する画像符号化装置を例に説明する。なお、2値画像用の符号化装置として、第2の実施形態を適用しても構わないことは以下の説明から明らかであることを付言しておく。
本第3の実施形態における符号化装置のブロック構成図を図18に示す。本装置は、装置全体の制御を司る制御部2150、ブロック化部2101、抽出色決定部2102、第1の符号化部2103、符号量検出部2104、多重化部2105、置換部2106、第2の符号化部2107、符号量調整部2108で構成される。
上記構成において、第1の符号化部2103が、第1の実施形態で示した構成(図1)を有するものものである。また、各処理部における処理に要する時間は、互いに異なるので、各処理部の前段には互いに同期するためのバッファメモリが設けられているものとする。
以下、同図の構成における処理内容を説明する。
ブロック化部2101は、符号化対象の多値画像データから、複数画素で構成されるブロック(M×N画素)単位に入力し、後段に出力する。本第3の実施形態における第1の符号化部2103は第1の実施形態の構成を有するものであるので、M=N=16となる。
本第3の実施形態では、説明を簡単なものとするため、符号化対象の画像データの各画素は、R,G,Bの成分で構成され、各成分は8ビット(256階調)とする。また、1ブロックは上記の通り16×16画素のサイズとする。ブロック化部2101は、R成分のブロックデータ、G成分のブロックデータ、B成分のブロックデータの順に出力する。ただし、色成分の種類はRGBに限らず、YMCでも良いし、成分の数、ビット数もこれに限定されるものではない。
抽出色決定部2102は、入力した1つの色成分のブロック内の16×16(=256)の画像データに、高周波成分となる画素があるか否かを判定し、その画素の色を抽出色として抽出し、多重化部2105に出力する。また、抽出色決定部2102は、抽出色を持つ画素と、非抽出色を持つ画素を識別するための2値データを置換色算出部2109、第1の符号化部2103に出力する。この2値のデータが“1”の場合、該当する画素は抽出色を持つ画素であるものとし、“0”の場合には該当する画素は非抽出色の画素とする。実施形態では、1つのブロックは16×16個の画素で構成されるわけであるから、抽出色決定部2102は16×16個の2値データを生成することになる。この2値データは、ブロック内の各画素が抽出色、非抽出色のいずれであるかを識別するために用いられるので、これ以降、画素識別情報と呼ぶ。
抽出色決定部2102における抽出色、画素識別情報を求めるアルゴリズムの一例を示すのであれば次の通りである。
先ず、ブロック内の画素の平均値を算出する。そして、その平均値よりも大きな値を持つ画素群(以下、第1の画素群という)と、その平均値以下の画素群(以下、第2の画素群という)とに分類する。更に、第1の画素群の平均値(第1の平均値)と第2の画素群の平均値(第2の平均値)を求め、それらの差の絶対値が、予め設定された閾値を超えるか否かを判定する。
第1、第2の平均値の差の絶対値が、上記の閾値を超えている場合、抽出色決定部2102は、抽出色有りを示す抽出色有無情報を多重化部2105に通知する。そして、第2の画素群を、抽出色を持つ画素として見なし、その色情報を抽出色情報として多重化部2105に出力する。また、抽出色を持つ画素の位置では“1”、非抽出色の画素の位置では“0”とする画素識別情報を第1の符号化部2103、置換部2106に出力する。なお、画素識別情報はラスタースキャン順に出力するものとする。
一方、第1、第2の平均値の差の絶対値が、上記の閾値以下の場合、抽出色決定部2102は、抽出色無しを示す抽出色有無情報を多重化部2105に通知する。また、抽出色決定部2102は全てが“0”の位置情報を出力する。また、抽出色決定部2102は、抽出色情報は出力してもしなくても構わない。多重化部2105は、抽出色無しを示す抽出色有無情報を受信した場合、抽出色決定部2102からの抽出色情報は無視するからである。
以上、抽出色決定部2102における処理内容を説明したが、これは一例である点に注意されたい。詳細は後述する説明から明らかになるが、抽出色決定部2102は、着目ブロック内の高周波成分を抽出するようにすればよい。
第1の符号化部2103は、抽出色決定部2102から出力された16×16個の2値の画素識別情報を符号化し、その符号化データを多重化部2105に出力する。第1の符号化部2103の符号化する対象の画素識別情報は、0、1のいずれかの値を持つ16×16個の情報であるので、第1の実施形態で説明した符号化処理がそのまま適用できるのは理解できよう。
符号量検出部2104は、第1の符号化部2103から出力された1ブロック分の画素識別情報の符号化データ量(ビット数)を検出し、その結果を符号量調整部2108に出力する。この符号量調整部2108の詳細は後述する。
次に、置換部2106について説明する。置換部2106内の置換色算出部2109は、画素識別情報が“0”の画素(非抽出色の画素)の各成分の平均値を算出し、その算出した色を置換色データとしてセレクタ2110に出力する。具体的には、着目ブロックの座標(x,y)(x、y=0、1、…、15)の位置にある色成分の値をP(x,y)、画素識別情報をI(x,y)(=0、又は1のいずれか)、画素識別情報が“0”の個数をNとしたとき、平均値Aveは次式の通りである。
Ave=ΣΣP(i,j)×(1−I(i,j))/N
ここで、ΣΣは、変数i,jの取り得る範囲(0乃至15)での合算関数である。
そして、置換色算出部2109は、算出したAveを置換色データとしてセレクタ2110に出力する。なお、着目ブロック内に、画素識別情報が“0”となる個数が0の場合、つまり、N=0となる場合には上記算出は行なわず、適当な値を出力して構わない。理由は、N=0の場合、セレクタ2110は、ブロック化部2101からの256個の画素データを選択し、出力するからである。
セレクタ2110は、画素識別情報が“1”の場合、置換色算出部2109から出力された置換色情報Aveを選択し、画素識別情報が“0”の場合にはブロック化部2101からの画素データを選択し、出力する。
実施形態における置換部2106は、要するに、抽出色と判定された画素の各成分の値を、非抽出色の画素の平均値で置換して、第2の符号化部2107に出力する。この結果、置換部2106から出力される16×16画素のブロックの画像は、空間周波数の低い画像に変換されることになる。
第2の符号化部2107は、例えば、非可逆の符号化の代表であるJPEG符号化部(DCT変換、量子化、エントロピー符号化)であり、置換部106から出力された16×16画素の画像データを4つの8×8画素のサブブロックに分配する。そして、第2の符号化部2107は、4つのサブブロックそれぞれについて、公知のDCT変換、量子化、エントロピー符号化を行なう。このとき、1つのサブブロックには、1つのDC成分と、63個のAC成分が含まれる。そこで、データの並びとしては、4つのDC成分の符号化データを先ず出力する。そして、4つのサブブロックのAC成分については、それぞれを低周波から高周波に向かうジグザグスキャン順し、互い違いに出力する。このようにする理由は、後述する符号量調整によって各サブブロックのDC成分がカットされることを防ぐためである。
第2の符号化部2107は、上記のようにして生成した符号化データ(16×16画素のブロックの符号化データ)を、符号量調整部108に出力する。
符号量調整部2108は、符号量検出部2104から出力された画素識別情報の符号化データ量に従い、第2の符号化部から出力された階調画像データの符号化データのデータ量抑制手段として機能する。これにより1ブロック当たりの符号化データ量を、画質劣化の少ない固定長Lとする。
ここで、第1の符号化部2103で生成される最大符号化データ量を仮にL0、第2の符号化部2107で生成される4つのDC成分の最大符号化データ量をL1としたとき、本第3の実施形態における固定長Lは、最低でも、L≧ブロックヘッダ長+L0+L1を満たすものとする。
1ブロックの符号化データを固定長Lを上記のように定めると、文字線画等の解像度が要求される情報は可逆となり、尚且つ、階調画像についてもそのDC成分が確実に維持させることができる。また、仮に、第2の符号化部2107で生成された符号化データの全てが、固定長L内に納めることができない場合には、その位置でカット(破棄)する。この結果、固定長であるが故に、どの画素ブロックからでも復号することができる。
図19は第3の実施形態における画像符号化装置の多重化部2105より出力された符号化データで構成される画像データファイル2200の構造を示している。
多重化部2105は、符号化データを出力するに先立ち、ファイルヘッダを生成し、出力する。ファイルヘッダには、画像のサイズ(水平、垂直方向の画素数)、色空間を特定する情報、及び、各色成分を表わすビット数、及び、1ブロック分の符号化データのデータ長等、復号処理に必要な情報が含まれている。また、各ブロックの符号化データは、図示の如く、参照番号2201、2202のタイプのいずれかである。符号化データ2201は抽出色無しのデータ構造を示し、符号化データ2202は抽出色有りのデータ構造を示している。抽出色無しの1ブロック分のデータ構造は、抽出色無しを示す情報を格納したブロックヘッダと、第2の符号化部2107で生成された階調画像の符号化データで構成される。一方、符号化データ2202は、抽出色有りを示す情報を格納したブロックヘッダと、抽出色情報、画素識別情報の符号化データ、及び、階調画像の符号化データで構成される。いずれの場合でも、符号化データ2201、2202は共に同じデータ長である。
なお、本第3の実施形態の符号化データを復号する装置は、1ブロック分の非可逆符号化データをエントロピー復号する際、カットされ、復号できなかったAC成分については適当な値(例えば0)と見なし、復号処理し、階調画像を復元すればよい。そして、画素識別情報を復号した結果、“1”の画素位置には、抽出色の画素値で置換すればよい。
以上説明したように、本第3の実施形態によれば、ブロック画像の固定長符号化に本発明を適用することにより、識別情報が複雑であっても効率的な圧縮が可能となり、置換画像の圧縮に与えられる符号量が増すことによって画像品質の向上を図ることが出来る。
[第4の実施形態]
以上説明した第1乃至第3の実施形態は、コンピュータ内のマイクロプロセッサが読込み実行するコンピュータプログラムでもって実現しれも構わない。この場合、コンピュータプログラムは、図1、図2、図14、図17、図18に示す各処理部に相当する関数プログラムをマージして構成すれば良い。また、通常、コンピュータプログラムは、CD−ROM等のコンピュータ可読記憶媒体に格納されており、それをコンピュータが有する読取り装置(CD−ROMドライブ等)にセットし、システムにコピーもしくはインストールすることで実行可能になる。従って、かかるコンピュータ可読記憶媒体も本発明の範疇に入ることは明らかである。
第1の実施形態における画像符号化装置のブロック構成図である。 第1の実施形態における画像復号装置のブロック構成図である。 第1の実施形態における各分配部の画素データの分配を行なう際に参照するテーブルを示す図である。 第1の実施形態における1ブロック分の符号化データのデータフォーマットを示す図である。 符号化対象の画像データの示す図である。 第1の実施形態の装置における符号化処理部110で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部120で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部130で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部140で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部110で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部120で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部130で符号化するサブブロックを示す図である。 第1の実施形態の装置における符号化処理部140で符号化するサブブロックを示す図である。 第2の実施形態における画像符号化装置のブロック構成図である。 第2の実施形態における各分配部の画素データの分配を行なう際に参照するテーブルを示す図である。 第2の実施形態に係る1ブロック分の符号化データのデータフォーマットを示す図である。 第2の実施形態における画像復号装置のブロック構成図である。 第3の実施形態における画像符号化装置のブロック構成図である。 第3の実施形態に係る1ブロック分の符号化データのデータフォーマットを示す図である。

Claims (14)

  1. 画像データを符号化する画像符号化装置であって、
    複数の画素を含むサイズの画素ブロックを単位に、画像データを入力する入力手段と、
    前記入力手段で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/K(Kは2以上の整数)の画素数で構成されるK個のサブブロックSB(0)乃至SB(K−1)のいずれかに分配する分配手段であって、互いに異なるアルゴリズムに従って分配を行なう複数の分配手段と、
    前記分配手段の分配処理で作成されたサブブロックSB(0)乃至SB(K−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する複数の符号化手段と、
    前記符号化手段それぞれで生成された符号化データのデータ量を比較し、最小符号量となる符号化データがいずれの符号化手段で生成されたのかを示す識別情報を生成する比較手段と、
    前記比較手段で生成された識別情報で特定された符号化手段からの符号化データを選択し、選択した符号化データと前記識別情報とを出力する選択手段と
    を備えることを特徴とする画像符号化装置。
  2. 更に、前記サブブロックSB(0)乃至(K−1)の中の1つをリファレンスとし、当該リファレンス以外のK−1個のサブブロックと前記リファレンスの画素データどうしの排他的論理和を演算する論理演算手段とを備え、
    前記複数の符号化手段には、前記論理演算手段による論理演算前の各サブブロックを符号化する符号化手段と、前記リファレンスのサブブロックと前記論理演算後のK−1個のサブブロックを符号化する符号化手段が含まれることを特徴とする請求項1に記載の画像符号化装置。
  3. 前記複数の分配手段の1つは、
    前記Kがp×q(p、及び、qはいずれも1以上の整数であって、いずれか一方は2以上の整数)で表わせ、前記画素ブロックを水平方向にp等分、垂直方向にq等分した場合の各分割領域を前記サブブロックSB(0)乃至SB(K−1)として、前記画素ブロック内の画素データを分配し、
    前記複数の分配手段のもう1つは、
    前記画素ブロック内の座標(x,y)の画素データを、xをpで除算したときの余りと、y座標をqで除算したときの余りで示されるサブブロックの1つに分配する
    ことを特徴とする請求項1又は2に記載の画像符号化装置。
  4. 更に、前記入力手段で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/J(Jは2以上の整数であって、J≠K)の画素数で構成されるJ個のサブブロックSB(0)乃至SB(J−1)のいずれかに分配する第2の分配手段と、
    前記第2の分配手段で生成されたサブブロックSB(0)乃至SB(J−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する第2の符号化手段とを備え、
    前記比較手段は、前記第2の符号化手段で生成された符号化データを含めて、最小となる符号化データを生成したのが前記複数の符号化手段、前記第2の符号化手段のいずれであるかを示す識別情報を生成し、
    前記選択手段は、前記比較手段で生成された識別情報で特定された前記複数の符号化手段及び前記第2の符号化手段の1つからの符号化データを選択し、選択した符号化データと前記識別情報とを出力する
    ことを特徴とする請求項1乃至3のいずれか1項に記載の画像符号化装置。
  5. 画像データを符号化する画像符号化装置であって、
    複数の画素を含むサイズの画素ブロックを単位に、画像データを入力する入力手段と、
    前記入力手段で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/K(Kは2以上の整数)の画素数で構成されるK個のサブブロックSB(0)乃至SB(K−1)のいずれかに分配する第1の分配手段と、
    該第1の分配手段の分配処理によって生成されたサブブロックSB(0)乃至SB(K−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する第1の符号化手段と、
    前記入力手段で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/J(Jは2以上の整数であって、J≠K)の画素数で構成されるJ個のサブブロックSB(0)乃至SB(J−1)のいずれかに分配する第2の分配手段と、
    該第2の分配手段で生成されたサブブロックSB(0)乃至SB(J−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する第2の符号化手段と、
    前記第1の符号化手段、前記第2の符号化手段それぞれで生成された符号化データのデータ量を比較し、最小となる符号化データが前記第1の符号化手段、前記第2の符号化手段のいずれで生成されたのかを示す識別情報を生成する比較手段と、
    前記比較手段で生成された識別情報で特定された前記第1の符号化手段、前記第2の符号化手段のいずれかからの符号化データを選択し、選択した符号化データと前記識別情報とを出力する選択手段と
    を備えることを特徴とする画像符号化装置。
  6. 複数の画素を含むサイズの画素ブロックを単位に画像データを入力し、固定長の符号化データを生成する画像符号化装置であって、
    入力したブロックの画像データに、高周波成分となる画素があるか否かを判定し、前記画素の色を抽出色として抽出する抽出手段と、
    前記ブロックの各画素が、前記抽出色を持つ画素であるか、非抽出色を持つ画素であるかを識別するための2値の識別情報を生成する生成手段と
    前記識別情報を2値の画像データとして、請求項1乃至5のいずれか1項に記載の装置に従い符号化する第1の符号化手段と、
    前記ブロック内の前記非抽出色の画素データに基づき、前記抽出色を持つ画素データを置換するための置換色データを算出する算出手段と、
    前記算出手段で算出した置換色データで、前記抽出色を持つ画素データを置換する置換手段と、
    前記置換手段で置換して得られたブロックの画像データを符号化する第2の符号化手段と、
    前記第1の符号化手段で生成された符号化データのデータ量を検出する検出手段と、
    前記検出手段で検出したデータ量に基づき、前記第2の符号化手段で生成される符号化データのデータ量を抑制するデータ量抑制手段と、
    前記抽出色の情報、前記第1の符号化手段で生成された符号化データ、及び、前記データ量抑制手段で得られたの符号化データ量とを多重化し、出力する多重化手段と
    を備えることを特徴とする画像符号化装置。
  7. 画像データを符号化する画像符号化装置の制御方法であって、
    複数の画素を含むサイズの画素ブロックを単位に、画像データを入力する入力工程と、
    前記入力工程で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/K(Kは2以上の整数)の画素数で構成されるK個のサブブロックSB(0)乃至SB(K−1)のいずれかに分配する分配工程であって、互いに異なるアルゴリズムに従って分配を行なう複数の分配工程と、
    前記分配工程の分配処理で生成されたサブブロックSB(0)乃至SB(K−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する複数の符号化工程と、
    前記符号化工程それぞれで生成された符号化データのデータ量を比較し、最小となる符号化データがいずれの符号化工程で生成されたのかを示す識別情報を生成する比較工程と、
    前記比較工程で生成された識別情報で特定された符号化工程からの符号化データを選択し、選択した符号化データと前記識別情報とを出力する選択工程と
    を備えることを特徴とする画像符号化装置の制御方法。
  8. 更に、サブブロックSB(0)乃至(K−1)の中の1つをリファレンスとし、当該リファレンス以外のK−1個のサブブロックと前記リファレンスの画素データどうしの排他的論理和を演算する論理演算工程とを備え、
    前記複数の符号化工程には、前記論理演算工程による論理演算前の各サブブロックを符号化する符号化工程と、前記リファレンスのサブブロックと論理演算後のK−1個のサブブロックを符号化する符号化工程が含まれることを特徴とする請求項7に記載の画像符号化装置の制御方法。
  9. 前記複数の分配工程の1つは、
    前記Kはp×q(p、及び、qはいずれも1以上の整数であって、いずれか一方は2以上の整数)で表わせ、前記画素ブロックを水平方向にp等分、垂直方向にq等分した場合の各分割領域を前記サブブロックSB(0)乃至SB(K−1)として、前記画素ブロック内の画素データを分配し、
    前記複数の分配工程のもう1つは、
    前記画素ブロック内の座標(x,y)の画素データを、xをpで除算したときの余りと、y座標をqで除算したときの余りで示されるサブブロックの1つに分配する
    ことを特徴とする請求項7又は8に記載の画像符号化装置の制御方法。
  10. 更に、前記入力工程で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/J(Jは2以上の整数であって、J≠K)の画素数で構成されるJ個のサブブロックSB(0)乃至SB(J−1)のいずれかに分配する第2の分配工程と、
    前記第2の分配工程で生成されたサブブロックSB(0)乃至SB(J−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する第2の符号化工程とを備え、
    前記比較工程は、前記第2の符号化工程で生成された符号化データを含めて、最小となる符号化データを生成したのが前記複数の符号化工程、前記第2の符号化工程のいずれであるかを示す識別情報を生成し、
    前記選択工程は、前記比較工程で生成された識別情報で特定された前記複数の符号化工程及び前記第2の符号化工程の1つからの符号化データを選択し、選択した符号化データと前記識別情報とを出力する
    ことを特徴とする請求項7乃至9のいずれか1項に記載の画像符号化装置の制御方法。
  11. 画像データを符号化する画像符号化装置の制御方法であって、
    複数の画素を含むサイズの画素ブロックを単位に、画像データを入力する入力工程と、
    前記入力工程で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/K(Kは2以上の整数)の画素数で構成されるK個のサブブロックSB(0)乃至SB(K−1)のいずれかに分配する第1の分配工程と、
    該第1の分配工程で生成されたサブブロックSB(0)乃至SB(K−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する第1の符号化工程と、
    前記入力工程で入力した画素ブロック内の各画素データを、前記画素ブロックに含まれる画素数の1/J(Jは2以上の整数であって、J≠K)の画素数で構成されるJ個のサブブロックSB(0)乃至SB(J−1)のいずれかに分配する第2の分配工程と、
    該第2の分配工程で生成されたサブブロックSB(0)乃至SB(J−1)の画像データを符号化し、各サブブロックの符号化データを結合し、前記画素ブロックの符号化データとして出力する第2の符号化工程と、
    前記第1の符号化工程、前記第2の符号化工程それぞれで生成された符号化データのデータ量を比較し、最小となる符号化データが前記第1の符号化工程、前記第2の符号化工程のいずれで生成されたのかを示す識別情報を生成する比較工程と、
    前記比較工程で生成された識別情報で特定された前記第1の符号化工程、前記第2の符号化工程のいずれかからの符号化データを選択し、選択した符号化データと前記識別情報とを出力する選択工程と
    を備えることを特徴とする画像符号化装置の制御方法。
  12. 複数の画素を含むサイズの画素ブロックを単位に画像データを入力し、固定長の符号化データを生成する画像符号化装置の制御方法であって、
    入力したブロックの画像データに、高周波成分となる画素があるか否かを判定し、前記画素の色を抽出色として抽出する抽出工程と、
    前記ブロックの各画素が、前記抽出色を持つ画素であるか、非抽出色を持つ画素であるかを識別するための2値の識別情報を生成する生成工程と
    前記識別情報を2値の画像データとして、請求項7乃至11のいずれか1項に記載の装置に従い符号化する第1の符号化工程と、
    前記ブロック内の前記非抽出色の画素データに基づき、前記抽出色を持つ画素データを置換するための置換色データを算出する算出工程と、
    前記算出工程で算出した置換色データで、前記抽出色を持つ画素データを置換する置換工程と、
    前記置換工程で置換して得られたブロックの画像データを符号化する第2の符号化工程と、
    前記第1の符号化工程で生成された符号化データのデータ量を検出する検出工程と、
    前記検出工程で検出したデータ量に基づき、前記第2の符号化工程で生成される符号化データのデータ量を抑制するデータ量抑制工程と、
    前記抽出色の情報、前記第1の符号化工程で生成された符号化データ、及び、前記データ量抑制工程で得られたの符号化データ量とを多重化し、出力する多重化工程と
    を備えることを特徴とする画像符号化装置の制御方法。
  13. コンピュータが読込み実行することで、前記コンピュータを、請求項1乃至6のいずれか1項に記載の画像符号化装置として機能させるコンピュータプログラム。
  14. 請求項13に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
JP2007300972A 2007-09-20 2007-11-20 画像符号化装置及びその制御方法、コンピュータプログラム並びにコンピュータ可読記憶媒体 Expired - Fee Related JP5086777B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007300972A JP5086777B2 (ja) 2007-11-20 2007-11-20 画像符号化装置及びその制御方法、コンピュータプログラム並びにコンピュータ可読記憶媒体
US12/211,886 US8238437B2 (en) 2007-09-20 2008-09-17 Image encoding apparatus, image decoding apparatus, and control method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007300972A JP5086777B2 (ja) 2007-11-20 2007-11-20 画像符号化装置及びその制御方法、コンピュータプログラム並びにコンピュータ可読記憶媒体

Publications (3)

Publication Number Publication Date
JP2009130467A true JP2009130467A (ja) 2009-06-11
JP2009130467A5 JP2009130467A5 (ja) 2010-10-14
JP5086777B2 JP5086777B2 (ja) 2012-11-28

Family

ID=40820987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007300972A Expired - Fee Related JP5086777B2 (ja) 2007-09-20 2007-11-20 画像符号化装置及びその制御方法、コンピュータプログラム並びにコンピュータ可読記憶媒体

Country Status (1)

Country Link
JP (1) JP5086777B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013018806A1 (ja) * 2011-08-01 2013-02-07 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
JP2014107857A (ja) * 2012-11-30 2014-06-09 Nintendo Co Ltd 圧縮データのデータ構造、記録媒体、データ圧縮装置、データ圧縮システム、データ圧縮プログラム、およびデータ圧縮方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01240088A (ja) * 1988-03-22 1989-09-25 Sony Corp データ伝送方法
JPH0937261A (ja) * 1995-07-14 1997-02-07 Canon Inc 符号化方式及び装置
JP2002300407A (ja) * 2001-03-30 2002-10-11 Ricoh Co Ltd 画像処理装置、画像処理方法および画像処理プログラム、並びにそのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004253889A (ja) * 2003-02-18 2004-09-09 Canon Inc 画像処理装置及び方法
JP2005057750A (ja) * 2003-07-24 2005-03-03 Matsushita Electric Ind Co Ltd 符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラム
JP2006080933A (ja) * 2004-09-10 2006-03-23 Kyushu Institute Of Technology 画像信号処理装置及びその方法
JP2006080793A (ja) * 2004-09-08 2006-03-23 Canon Inc 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2006246374A (ja) * 2005-03-07 2006-09-14 Toshiba Corp 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01240088A (ja) * 1988-03-22 1989-09-25 Sony Corp データ伝送方法
JPH0937261A (ja) * 1995-07-14 1997-02-07 Canon Inc 符号化方式及び装置
JP2002300407A (ja) * 2001-03-30 2002-10-11 Ricoh Co Ltd 画像処理装置、画像処理方法および画像処理プログラム、並びにそのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004253889A (ja) * 2003-02-18 2004-09-09 Canon Inc 画像処理装置及び方法
JP2005057750A (ja) * 2003-07-24 2005-03-03 Matsushita Electric Ind Co Ltd 符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラム
JP2006080793A (ja) * 2004-09-08 2006-03-23 Canon Inc 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2006080933A (ja) * 2004-09-10 2006-03-23 Kyushu Institute Of Technology 画像信号処理装置及びその方法
JP2006246374A (ja) * 2005-03-07 2006-09-14 Toshiba Corp 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013018806A1 (ja) * 2011-08-01 2013-02-07 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
JP2013034042A (ja) * 2011-08-01 2013-02-14 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
US9491455B2 (en) 2011-08-01 2016-11-08 Nippon Telegraph And Telephone Corporation Picture encoding method, picture decoding method, picture encoding apparatus, picture decoding apparatus, picture encoding program, and picture decoding program
JP2014107857A (ja) * 2012-11-30 2014-06-09 Nintendo Co Ltd 圧縮データのデータ構造、記録媒体、データ圧縮装置、データ圧縮システム、データ圧縮プログラム、およびデータ圧縮方法

Also Published As

Publication number Publication date
JP5086777B2 (ja) 2012-11-28

Similar Documents

Publication Publication Date Title
US8238437B2 (en) Image encoding apparatus, image decoding apparatus, and control method therefor
JP4418762B2 (ja) 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
US8213727B2 (en) Image encoding apparatus and image decoding apparatus, and control method thereof
US8270716B2 (en) Selectively compressing picture and text areas of an image to maintain highest quality and effective compaction
US7903888B2 (en) Image encoding apparatus and image decoding apparatus
US20060210176A1 (en) Image encoding apparatus, image decoding apparatus, control method therefor, computer program, and computer-readable storage medium
US8031954B2 (en) Image encoding apparatus and control method thereof using prediction encoding and pixel classification
JP4956304B2 (ja) 画像符号化装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
RU2567988C2 (ru) Кодер, способ кодирования данных, декодер, способ декодирования данных, система передачи данных, способ передачи данных и программный продукт
JP2008072624A (ja) 画像符号化装置及びその制御方法
JP2005323326A (ja) 画像符号化装置及び復号装置及びそれらの制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP2006180456A (ja) 画像圧縮装置と画像復号装置と画像変換装置と画像処理方法
JP5101962B2 (ja) 画像符号化装置及びその制御方法並びにコンピュータプログラム
JP4829836B2 (ja) 画像符号化装置、画像符号化装置の制御方法、コンピュータプログラム、復号装置、及びコンピュータ可読記憶媒体
JP2006093958A (ja) プログレッシブjpeg復号化システム
JP5086777B2 (ja) 画像符号化装置及びその制御方法、コンピュータプログラム並びにコンピュータ可読記憶媒体
CN114009029A (zh) 图像数据编码和解码
CA2436437A1 (en) Moving picture information compressing method and its system
JP4173498B2 (ja) データ圧縮装置およびデータ圧縮プログラム
JP5235850B2 (ja) 画像符号化装置、画像復号化装置、画像符号化・復号化システム及びその方法
JP4743884B2 (ja) 画像符号化装置及びその制御方法
JP4971881B2 (ja) 画像符号化装置及び画像復号装置、並びにそれらの制御方法
JP2009260747A (ja) 画像符号化装置及びその制御方法
JP4757172B2 (ja) 画像符号化装置及びその制御方法
JP2009005016A (ja) 画像符号化装置及びその制御方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100827

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111021

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111220

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: 20120810

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: 20120907

R151 Written notification of patent or utility model registration

Ref document number: 5086777

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: 20150914

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees