JP2004350158A - Method and device for decoding image - Google Patents

Method and device for decoding image Download PDF

Info

Publication number
JP2004350158A
JP2004350158A JP2003146855A JP2003146855A JP2004350158A JP 2004350158 A JP2004350158 A JP 2004350158A JP 2003146855 A JP2003146855 A JP 2003146855A JP 2003146855 A JP2003146855 A JP 2003146855A JP 2004350158 A JP2004350158 A JP 2004350158A
Authority
JP
Japan
Prior art keywords
layer
background
image
foreground
pixel 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
JP2003146855A
Other languages
Japanese (ja)
Other versions
JP3845390B2 (en
Inventor
Koichiro Hirao
浩一郎 平尾
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.)
NEC Platforms Ltd
Original Assignee
NEC AccessTechnica 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 NEC AccessTechnica Ltd filed Critical NEC AccessTechnica Ltd
Priority to JP2003146855A priority Critical patent/JP3845390B2/en
Publication of JP2004350158A publication Critical patent/JP2004350158A/en
Application granted granted Critical
Publication of JP3845390B2 publication Critical patent/JP3845390B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method and device for decoding images for reducing or suppressing appearing of pseudo lines when compositing a compressed background layer or foreground layer after scaling, in a process for expanding and compositing codes of object base. <P>SOLUTION: An input code 201 of an image decoding device 200 is inputted in a code analyzing/separating part 202 and separated into a mask layer, background layer, and foreground layer, which are decoded at a mask layer decoding part 207, a background layer decoding part 208, and a foreground layer decoding part 209, respectively. A background layer horizontal scaling part 214 corrects the color of an adjoining pixel based on the state of a pixel block adjoining the pixel block to be processed, for horizontal scaling. A background layer vertical scaling part 219 does in the same way. The background layer and the foreground layer after scaling are composited at a layer compositing part 228 to provide images corrected in color. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は画像の復号化処理を行う画像復号化装置および画像の復号化処理を行うための画像復号化方法に係わり、たとえは符号データを伸張して画像を利用するディスプレイ等の装置やプリンタ、携帯端末等の各種機器に使用可能な画像復号化装置および画像の復号化処理を行うための画像復号化方法に関する。
【0002】
【従来の技術】
カラー画像の符号化に際しては、ディスプレイの高精細化やプリンタの印字品質の向上に伴い、高品位で圧縮率の高い処理が望まれている。このような要望に応えて、近年、オブジェクトベース符号化方式が注目されている。オブジェクトベース符号化方式は、画面内の被写体や背景などの対象(オブジェクト)を見極めて、これらに応じて符号化を行う方式である。この方式では、オブジェクトごとに適した処理が行えるため、高い圧縮率で符号化が可能である。
【0003】
オブジェクトベース符号化方式では、画像を背景と、文字やエッジ等の位置情報を表わしたマスクと、そのマスクの色情報を表わす前景等の複数のレイヤに分割するようにしている。そして、それぞれのレイヤをそれぞれ最適な符号化方式を使用して圧縮する。ITU−T(International Telecommunications Union − Telecommunications Standardization Sector:国際電気通信連合の電気通信標準化部門)では、そのT.44でオブジェクトベースの符号フォーマットを規定するMRC(Mixed Raster Content)が制定されている。また、ISO/IECJTC1/SC29/WG1(国際標準化機構国際電気標準化会議の国際標準化機関のSC29/WG1)では、JPEG2000(Joint Photographic Experts Group 2000)を使用したオブジェクトベース符号化のファイルフォーマットがそのパート6(part6)で勧告化されようとしている。
【0004】
オブジェクトベース符号化方式では、データの圧縮効率を特に考慮する必要のない場合、背景レイヤ、前景レイヤおよびマスクレイヤの3つのレイヤをともに同じサイズで分離するようにしている。一方、画像全体の圧縮効率を向上させる必要のある場合には、文字やエッジ等の位置情報を表わすマスクレイヤの画像サイズ自体は保持しつつ、背景レイヤや前景レイヤの画像サイズを意図的に縮小して効率的な圧縮を図ることが多い。
【0005】
一例としては、背景レイヤである面画像色情報および前景レイヤとしての線画像色情報について、水平方向に対してn分の1に、また垂直方向に対してm分の1(n、mはそれぞれ2以上の整数)にスケーリングする提案が行われている(たとえば特許文献1)。
【0006】
図15は、この提案の画像符号化装置の要部を表わしたものである。この画像符号化装置100で入力原画像101は、像域分離部102と線画像生成部103および面画像生成部104に並列に入力される。ここで入力原画像101は、RGB(レッド、グリーン、ブルー)共に8ビットずつの24ビットで構成された画素単位の信号であり、たとえばカラー写真の組み込まれた新聞紙面を図示しないスキャナで読み取って得られたような画像データである。像域分離部102は、入力原画像101が線画像(前景レイヤ)か面画像(背景レイヤ)かを画素ごとに判断し、これらの判別結果を示す画像符号化装置を出力するようになっている。分離情報105は、線画像を“1”、面画像を“0”とする2値情報である。
【0007】
線画像生成部103は、入力原画像101と分離情報105との論理を対応する画素ごとにとって、入力原画像101のうち対応する分離情報105が線画像であることを示している画素についてRGBの各8ビットデータをそのまま通過させる。また、対応する分離情報105が面画像であることを示している画素についてはRGBの各8ビットデータを白色としての「0xFF」(先頭の0xは16進表記であることを示す)でマスクして出力する。このようにして線画像色情報106が生成される。線画像色情報106は分離情報105と共に線画像色情報量子化部108に入力される。
【0008】
図16は、この線画像生成部による線画像の生成の様子を表わしたものである。ここでは8画素×8画素の1ブロック分の線画像の生成の様子を示している。図で左上は1ブロック分の入力原画像101を示している。たとえばこの1ブロック分の入力原画像101の左上の画素は「EE EF FF」となっている。これはB(ブルー)が「0xEE」、G(グリーン)が「0xEF」、R(レッド)が「0xFF」を意味している。先頭の“0x”は、前記したように16進表記である。この図の右上に示した分離情報105も8画素×8画素の1ブロック分を示しており、ここでは“1”が線画像を、また“0”が面画像を表わしている。
【0009】
線画像生成部103は、分離情報105が“0”の箇所をマスクすることで面画像の画素部分をブロックし、線画像に対応する分離情報105で“1”の箇所の入力原画像101をそのまま通過させる。分離情報105が“0”の面画像の画素部分は、この例ではRGB共に“FF”(16進表記)となる。このようにして線画像色情報106が得られる。
【0010】
図15に戻って説明を続ける。線画像色情報量子化部108は、線画像色情報106を量子化圧縮して線画像量子化後色情報109を出力する。量子化方法には種々あるが、ここでは8画素×8画素のブロックごとに線画像の色平均をとり、求めた平均色を当該画素ブロックの代表色とすることで線画像色情報106の情報量を量子化圧縮するようにしている。
【0011】
更に、線画像色情報量子化部108では、代表色による量子化に加えて、RGBの各データの下位ビットを削除することで、階調性の量子化圧縮も行っている。ここではRGBの各色共に下位2ビットを削減している。こうして、色の量子化と階調性の量子化を行った結果が線画像量子化後色情報109として出力される。線画像色情報符号部111は、線画像色情報量子化部108から出力された線画像量子化後色情報109を符号化した線画像色情報符号112を出力する。ここでは線画像量子化後色情報109の値をそのまま符号語としている。
【0012】
一方、面画像生成部104は、入力原画像101と分離情報105とから面画像色情報115を出力する。面画像生成部104は、入力原画像101と分離情報105との論理を対応する画素ごとにとり、入力原画像101のうち対応する分離情報105が面画像であることを示している画素についてはRGBの各8ビットデータをそのまま通過させる。また、対応する分離情報105が線画像であることを示している画素についてはRGBの各8ビットデータを白色となる「0xFF」でマスクして出力する。このようにして、面画像色情報115が生成される。
【0013】
図17はこの面画像生成部による面画像の生成の様子を表わしたものである。ここでも図16と同様に8画素×8画素の1ブロック分について面画像の生成の様子を示している。図で左上は1ブロック分の入力原画像101を示している。この図の右上に示した分離情報105も8画素×8画素の1ブロック分を示しており、これは図16の分離情報105と同一である。
【0014】
面画像生成部104は、分離情報105が“1”の箇所をマスクすることで線画像の画素部分をブロックし、入力原画像101のうち分離情報105で“0”の箇所の面画像に対応する部分をそのまま通過させる。分離情報105が“1”の線画像の画素部分は、この例ではRGB共に“FF”(16進表記)となる。このようにして面画像色情報115が得られる。
【0015】
再び図15に戻って説明を続ける。面画像量子化部116は、面画像色情報115と分離情報105とを入力し、面画像色情報115を量子化圧縮して面画像量子化後情報117を出力する。ここでは4画素×4画素の画素ブロックごとに面画像の色平均をとり、求めた平均色を当該画素ブロックの代表色とすることで面画像色情報115の情報量を量子化圧縮している。分離情報105は、面画像色情報115の対応する画素が線画像か面画像かを判断するのに使用されている。
【0016】
面画像符号部118は、面画像量子化後情報117を符号化圧縮して面画像色情報符号119を出力する。ここではITUにて勧告化されている“T.81”を使用している。ただし、面画像量子化後情報117を1/4縮小画像と見なし、代表点を1画素としてDCT(Discrete Cosine Transform)変換を行って符号化している。
【0017】
このように図15に示した画像符号化装置100では、面画像としての背景レイヤのスケーリングでは、n×mの画素ブロック内ではマスクレイヤである線画位置情報の各値が、背景領域を表わす“0”である箇所の画素値の平均を求め、n×mの画素ブロック内でマスクレイヤの各画素の値が、線画像としての前景領域を表わす“1”である箇所の画素値の平均を求める。そして、それぞれ背景レイヤ、前景レイヤのスケーリング後の値とされて圧縮が行われることになる。
【0018】
画像符号化装置100でスケーリングおよび圧縮した各レイヤを伸張して元の画像を再構成する際には、画像復号化装置を使用して、スケーリングされた背景レイヤおよび前景レイヤを元のサイズに戻す必要がある。
【0019】
図18は、図15に示した画像符号化装置で符号化された画像情報を用いて復元画像を生成する画像復号化装置の構成を表わしたものである。画像復号化装置131は、分離情報105を入力するマスクレイヤ判定部132と、背景レイヤの面画像色情報符号119を入力する背景レイヤスケーリング部133と、前景レイヤの線画像色情報符号112を入力する前景レイヤスケーリング部134を備えている。マスクレイヤ判定部132の判定結果135と背景レイヤスケーリング部133および前景レイヤスケーリング部134のスケーリング後の符号136、137を共に入力してレイヤを合成するレイヤ合成部138を備えている。レイヤ合成部138からは復元画像139が出力されることになる。
【0020】
ところで画像復号化装置131側の背景レイヤスケーリング部133ではマスクレイヤのn×mの画素ブロック(ただし、図15に示した例では値n、mは共に“8”。)に対して、対応する背景レイヤの画素値を使用し、マスクレイヤが“0”の箇所、すなわち面画像の箇所の画素に背景レイヤの画素値を代入する。同様に、前景レイヤスケーリング部134ではマスクレイヤのn×mの画素ブロックに対して、対応する前景レイヤの画素値を使用し、マスクレイヤが“1”の箇所、すなわち線画像の箇所の画素に背景レイヤの画素値を代入する。ところが、対応するn×mの画素ブロック内の画素が全部面画像あるいは線画像であれば問題ないが、両者が混在している場合には、その画素ブロック全体に前景レイヤの画素値を使用するか背景レイヤの画素値を使用するかが問題となる。これを次に具体的に説明する。
【0021】
図19〜図23は、n×mの画素ブロックの分割と再構成の例を説明するためのものである。この図では説明を簡単にするために各画素値を8ビットの1コンポーネントとして表わしている。すなわち、本来はR、G、Bの3色で表示すべきであるが、簡単に1つのコンポーネントとして1つ色に対応した値で表示することにしている。画素値として表わした符号に付された「h」はこれらの値が16進数で表わされていることを示している。
【0022】
このうち図19は、図15に示した入力原画像101の一部を示している。この図に示すようにオリジナル画像では、図示の画像部分で2つの色の画素“0h”と“FFh”が所定の境界によって区分けされているものとする。また、図20はオリジナル画像に対するマスクレイヤの分離情報105を表わしているものとする。ただし、値n、mが共に“4”の場合について説明を行う。
【0023】
図21はこの例の場合の背景レイヤの圧縮後の色情報を示しており、図22は前景レイヤの圧縮後の色情報を示している。これらについては4×4の画素ブロックごとにそれぞれ1つの色情報が平均化して演算される結果として、図19および図20で太線で囲んだ4×4の画素ブロックにおける背景レイヤのスケーリング後の符号136の値は“94h”となり、前景レイヤのスケーリング後の符号137の値は“FFh”となったとする。すなわち、背景レイヤ(面画像)については、圧縮の結果として、4×4の画素ブロックに対して1つの値“94h”が割り当てられ、前景レイヤ(線画像)については、同様に圧縮の結果として、4×4の画素ブロックに対して1つの値“FFh”が割り当てられる。
【0024】
【特許文献1】
特開2002−369010号公報(第0023段落、図1)
【0025】
【発明が解決しようとする課題】
【0026】
図23は、図18に示した従来のレイヤ合成部が合成した復元画像を示したものである。図18に示したレイヤ合成部138は、図20に示した面画像であるか線画像であるかの判定結果135を用いて色情報を決定する。したがって、図20に示したマスクレイヤの分離情報105が“0”すなわち面画像の部分については図21に示した値“94h”を色情報として割り当て、線画像の部分については図22に示した値“FFh”を色情報として割り当てる。このようにして得られた復元画像139を、図19に示した入力原画像101と対比してみると、本来、値“0h”であるべき箇所の色情報が値“94h”となっている。すなわち、背景レイヤの値はその色の境界を跨いだ色の間で平均化された値(この例では“94h”)となっており、オリジナル画像の色とは異なった変色が発生する。
【0027】
このように、従来の画像復号化装置131の場合には面画像の境界に、画像の符号化の際に生じた本来の色とは異なる色が再現される結果、この変色部分が擬似的な線のようになった画像が再現されることになった。この結果として、再構成画像の画質が劣化してしまう。
【0028】
以上、オブジェクトベースの符号を伸張し合成する処理で、縮小(圧縮)された背景レイヤと同じく縮小(圧縮)された前景レイヤについて、マスクレイヤを使用してスケーリングする場合の再構成画像の画質の劣化について説明した。このように背景レイヤや前景レイヤに代表されるイメージレイヤを一度圧縮した後、マスクレイヤを使用してスケーリングし合成して再構成画像を生成する他の場合についても、同様に擬似的な線が出現するという問題があり、画質劣化の原因となっていた。
【0029】
そこで本発明の目的は、オブジェクトベースの符号を伸張し合成する処理で、圧縮された背景レイヤや前景レイヤ等のイメージレイヤをマスクレイヤを使用してスケーリング後に合成する場合に、符号の高圧縮性を損なうことなく、擬似的な線の出現を軽減あるいは抑制するようにした画像復号化装置および画像復号化方法を提供することにある。
【0030】
【課題を解決するための手段】
請求項1記載の発明では、(イ)画像を面画像の色情報を表わした背景レイヤと、文字や線、エッジ等の色情報を表わした前景レイヤと、これら背景レイヤおよび前景レイヤの画素単位の位置を表わす情報としてのマスクレイヤの3種類のレイヤを少なくとも含む複数のレイヤに分割し、このうちの背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1(ただしn、mは互いに同一の値を含む正の整数)の色情報に縮小してなる画像を表わした符号化後の画像情報を入力する符号入力手段と、(ロ)この符号入力手段の入力した符号を解析して前記した複数のレイヤのそれぞれに分離する符号解析分離手段と、(ハ)この符号解析分離手段によって分離された背景レイヤを復号する背景レイヤ復号手段と、(ニ)符号解析分離手段によって分離された前景レイヤを復号する前景レイヤ復号手段と、(ホ)符号解析分離手段によって分離されたマスクレイヤを復号するマスクレイヤ復号手段と、(へ)このマスクレイヤ復号手段によって復号されたマスクレイヤを基にしてm×nの画素ブロックごとにブロックを構成するそれぞれの画素が背景レイヤに該当するか前景レイヤに該当するかを判定するマスクレイヤ判定手段と、(ト)背景レイヤを伸張する背景レイヤ伸張手段と、(チ)前景レイヤを伸張する前景レイヤ伸張手段と、(リ)隣接する画素ブロック同士におけるマスクレイヤ判定手段の判定した背景レイヤと前景レイヤの画素の配置パターンを基にして背景レイヤ伸張手段の伸張後の背景レイヤの色を補正する色補正手段と、(ヌ)背景レイヤ伸張手段で伸張し色補正手段で補正した背景レイヤと前景レイヤ伸張手段によって伸張した前景レイヤとをマスクレイヤ判定手段の判定したこれらの位置情報を基にして合成することで画像を復元するレイヤ合成手段とを画像復号化装置に具備させる。
【0031】
すなわち請求項1記載の発明では、画像を面画像の色情報を表わした背景レイヤと、文字や線、エッジ等の色情報を表わした前景レイヤと、これら背景レイヤおよび前景レイヤの画素単位の位置を表わす情報としてのマスクレイヤの3種類のレイヤを少なくとも含む複数のレイヤに分割し、このうちの背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1(ただしn、mは互いに同一の値を含む正の整数)の色情報に縮小してなる画像を表わした符号化後の画像情報を復号化する画像復号化装置に関する。この画像復号化装置では、符号入力手段に入力された符号を符号解析分離手段によって元のレイヤに分離するが、マスクレイヤを除いては圧縮(符号化)時に画像サイズを画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1に縮小して、それぞれに色情報を割り当てている。このためこれを単純に復号化すると背景レイヤや前景レイヤの各画素の位置はマスクレイヤによって正しく特定されるが、それぞれの色はm×nの画素ブロックごとに1つずつしか割り当てられないので、従来技術で説明したように各画素ブロックの特に境界部分(周辺部分)で背景色同士が異なってしまい擬似的な線が出現するという不都合が発生する。そこで本発明では、色補正手段が隣接する画素ブロック同士におけるマスクレイヤ判定手段の判定した背景レイヤと前景レイヤの画素の配置パターンを基にして背景レイヤ伸張手段の伸張後の背景レイヤの色を補正するようにしている。すなわち、隣接する画素ブロック同士における背景レイヤと前景レイヤの画素の配置パターンに対応付けた背景レイヤの色補正を行うことで画素ブロックにおける境界部分の色を元画像のそれに近づけている。この結果、レイヤ合成手段の合成後の復元画像における擬似的な線の出現を軽減あるいは抑制することが可能になる。
【0032】
請求項2記載の発明では、請求項1記載の画像復号化装置で、背景レイヤ伸張手段は、背景レイヤを水平方向に伸張する背景レイヤ水平スケーリング手段とこの背景レイヤ水平スケーリング手段によって伸張後の背景レイヤを垂直方向に伸張する背景レイヤ垂直スケーリング手段を備え、前景レイヤ伸張手段は、前景レイヤを水平方向に伸張する前景レイヤ水平スケーリング手段とこの前景レイヤ水平スケーリング手段によって伸張後の前景レイヤを垂直方向に伸張する前景レイヤ垂直スケーリング手段を備えることを特徴としている。
【0033】
すなわち請求項2記載の発明では、背景レイヤ伸張手段と前景レイヤ伸張手段が共にそれらのレイヤを水平方向と垂直方向に分けてスケーリングを行って元の画像サイズに戻すことにしている。水平方向と垂直方向はどちらを先に処理しても構わない。
【0034】
請求項3記載の発明では、請求項1記載の画像復号化装置で、色補正手段は、色補正を行う対象となるm×nの現画素ブロック内の周辺部分の画素の背景レイヤの色を隣接するm×nの画素ブロックに配置される前景レイヤを構成する画素の有無によって決定する背景色補正手段を具備することを特徴としている。
【0035】
すなわち請求項3記載の発明では、処理の対象となるm×nの現画素ブロック内の周辺部分の画素の背景レイヤの色をこの現画素ブロックに隣接するm×nの他の画素ブロックに配置される前景レイヤを構成する画素の有無によって決定することにしている。たとえば現画素ブロックに隣接する次画素ブロックが背景レイヤのみで構成される場合や隣接する画素ブロックにおける現画素ブロックと近い位置に前景レイヤの画素が配置されている場合等、各種状況に応じて現画素ブロック内の周辺部分の画素の背景レイヤの色が補正されることになる。
【0036】
請求項4記載の発明では、請求項1記載の画像復号化装置で、色補正手段は、色補正を行うm×nの現画素ブロック内の所定のラインの画素がすべて背景レイヤの画素であり、この現画素ブロックに隣接する次に処理する次画素ブロック内の前記した所定のラインと同一のラインの画素がすべて背景レイヤの画素であるときには、現画素ブロックのこのライン上で次画素ブロックに隣接する画素は、次画素ブロックについての背景レイヤの画素と色の平均化を行い、現画素ブロック内のそのライン上の残りの画素におけるこの平均化を行った画素と反対側に位置する画素を更に除いた全画素については少なくとも現画素ブロックに背景レイヤとして与えられた色を背景色として割り当てる手段であることを特徴としている。
【0037】
すなわち請求項4記載の発明では、請求項3記載の発明を更に具体化したものである。色補正手段は、色補正を行うm×nの現画素ブロック内の所定のラインの画素がすべて背景レイヤの画素であり、この現画素ブロックに隣接する次に処理する次画素ブロック内の前記した所定のラインと同一のラインの画素がすべて背景レイヤの画素であるときには、次画素ブロックに隣接する背景レイヤの画素は互いの色の平均化を行うことで、両者の色が相違する場合の色の違いを軽減することにしている。また、前のブロックとしての前画素ブロック側に隣接する画素を除いた残りの画素については本来の背景レイヤで表わされた色を設定することにしている。
【0038】
請求項5記載の発明では、請求項4記載の画像復号化装置で、反対側に位置する画素は、これに隣接する前に処理した前画素ブロックに背景レイヤとして与えられた色との平均化を行うことを特徴としている。
【0039】
すなわち請求項5記載の発明では、請求項4の説明で前記した前画素ブロック側に隣接する画素については前画素ブロックとの平均化を行うことにしている。これにより両者の色が相違する場合の色の違いを軽減できる。
【0040】
請求項6記載の発明では、請求項1記載の画像復号化装置で、色補正手段は、色補正を行うm×nの現画素ブロックにおける次に処理する次画素ブロックに隣接する背景レイヤの画素とこの画素と同一ライン上で次画素ブロック内に位置する前景レイヤの現画素ブロックに一番近い側に位置する画素の色距離を所定の閾値と比較する比較手段と、この比較手段で閾値よりも小さいと判定したとき背景レイヤの画素の色をこの前景レイヤの画素の色で平均化する背景レイヤ前景レイヤ平均化手段を具備することを特徴としている。
【0041】
すなわち請求項6記載の発明では、次画素ブロックに隣接する背景レイヤの画素と前景レイヤの現画素ブロックに一番近い側に位置する画素との間の色距離(あるいは色差)を閾値(しきい値)と比較する。比較には一般的にはユークリッド距離を使用する。色距離が閾値よりも小さく色が近似している場合には、背景レイヤのその画素の色をこの前景レイヤの画素の色で平均化する。これは、前景色の場合は、前後の色が混ざることがないので、色の劣化が生ぜず、前景色を用いて平滑化することで、画素ブロック間の色の変化がスムーズになるからである。
【0042】
請求項7記載の発明では、請求項1記載の画像復号化装置で、色補正手段は、色補正を行うm×nの現画素ブロックに前景レイヤで挟まれる背景レイヤが存在するとき、この部分の画素の色を隣接した画素ブロックの色の状態にかかわらず現画素ブロックの背景レイヤの色として設定し、次に処理する次画素ブロックに近い側の背景レイヤについては次画素ブロックの状態によって画素の色を平滑化することを特徴としている。
【0043】
すなわち請求項7記載の発明では、現画素ブロックにおいて前景レイヤで挟まれた背景レイヤについての画素値は、すべて現画素ブロックの背景色を割り当てることとしている。
【0044】
請求項8記載の発明では(イ)画像を面画像の色情報を表わした背景レイヤと、文字や線、エッジ等の色情報を表わした前景レイヤと、これら背景レイヤおよび前景レイヤの画素単位の位置を表わす情報としてのマスクレイヤの3種類のレイヤを少なくとも含む複数のレイヤに分割し、このうちの背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1(ただしn、mは互いに同一の値を含む正の整数)の色情報に縮小してなる画像を表わした符号化後の画像情報を入力する符号入力ステップと、(ロ)この符号入力ステップで入力した符号を解析して前記した複数のレイヤのそれぞれに分離する符号解析分離ステップと、(ハ)この符号解析分離ステップによって分離された背景レイヤを復号する背景レイヤ復号ステップと、(ニ)符号解析分離ステップによって分離された前景レイヤを復号する前景レイヤ復号ステップと、(ホ)符号解析分離ステップによって分離されたマスクレイヤを復号するマスクレイヤ復号ステップと、(へ)このマスクレイヤ復号ステップによって復号されたマスクレイヤを基にしてm×nの画素ブロックごとにブロックを構成するそれぞれの画素が背景レイヤに該当するか前景レイヤに該当するかを判定するマスクレイヤ判定ステップと、(ト)背景レイヤを伸張する背景レイヤ伸張ステップと、(チ)前景レイヤを伸張する前景レイヤ伸張ステップと、(リ)隣接する画素ブロック同士におけるマスクレイヤ判定ステップで判定した背景レイヤと前景レイヤの画素の配置パターンを基にして背景レイヤ伸張手段の伸張後の背景レイヤの色を補正する色補正ステップと、(ヌ)背景レイヤ伸張ステップで伸張し色補正ステップで補正した背景レイヤと前景レイヤ伸張手段によって伸張した前景レイヤとをマスクレイヤ判定手段の判定したこれらの位置情報を基にして合成することで画像を復元するレイヤ合成ステップとを画像復号化方法に具備させる。
【0045】
すなわち請求項8記載の発明では、画像を面画像の色情報を表わした背景レイヤと、文字や線、エッジ等の色情報を表わした前景レイヤと、これら背景レイヤおよび前景レイヤの画素単位の位置を表わす情報としてのマスクレイヤの3種類のレイヤを少なくとも含む複数のレイヤに分割し、このうちの背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1(ただしn、mは互いに同一の値を含む正の整数)の色情報に縮小してなる画像を表わした符号化後の画像情報を復号化する画像復号化方法に関する。この画像復号化方法では、符号入力ステップで入力された符号を符号解析分離ステップで元のレイヤに分離するが、マスクレイヤを除いては圧縮(符号化)時に画像サイズを画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1に縮小して、それぞれに色情報を割り当てている。このためこれを単純に復号化すると背景レイヤや前景レイヤの各画素の位置はマスクレイヤによって正しく特定されるが、それぞれの色はm×nの画素ブロックごとに1つずつしか割り当てられないので、従来技術で説明したように各画素ブロックの特に境界部分(周辺部分)で背景色同士が異なってしまい擬似的な線が出現するという不都合が発生する。そこで本発明では、色補正ステップで隣接する画素ブロック同士におけるマスクレイヤ判定ステップにおいて判定した背景レイヤと前景レイヤの画素の配置パターンを基にして背景レイヤ伸張手段の伸張後の背景レイヤの色を補正するようにしている。すなわち、隣接する画素ブロック同士における背景レイヤと前景レイヤの画素の配置パターンに対応付けた背景レイヤの色補正を行うことで画素ブロックにおける境界部分の色を元画像のそれに近づけている。この結果、レイヤ合成手段の合成後の復元画像における擬似的な線の出現を軽減あるいは抑制することが可能になる。
【0046】
【発明の実施の形態】
まず本発明の実施の形態を説明する。
【0047】
図1は本発明の一実施の形態における画像復号化装置の構成を表わしたものである。本実施の形態では先に説明した画像符号化装置100(図15参照)で符号化した情報を使用して画像の復元を行うものとする。画像復号化装置200で入力符号201は符号解析・分離部202に入力されるようになっている。符号解析・分離部202は、この入力符号201を解析して、マスクレイヤ、背景レイヤおよび前景レイヤの各レイヤの符号データ203〜205ならびにその他の必要なパラメータを出力する。ここでマスクレイヤは文字やエッジ等の位置情報を表わしたレイヤであり、前景レイヤは線画像を、背景レイヤは面画像をそれぞれ表わしたレイヤである。
【0048】
このうちのマスクレイヤの符号データ203はマスクレイヤ復号部207に入力される。マスクレイヤ復号部207は、マスクレイヤの符号データ203を使用してマスクレイヤの伸張を行う。背景レイヤの符号データ204は背景レイヤ復号部208に入力される。背景レイヤ復号部208は、背景レイヤの符号データ204を使用して背景レイヤの伸張を行う。前景レイヤの符号データ205は前景レイヤ復号部209に入力される。前景レイヤ復号部209は、前景レイヤの符号データ205を使用して前景レイヤの伸張を行う。
【0049】
マスクレイヤ復号部207によって伸張されたマスクレイヤの画像データ211はマスクレイヤ判定部212に入力されるようになっている。マスクレイヤ判定部212は、伸張されたマスクレイヤの画像データ211の画像を使用して、対応する画像が背景画像か前景画像かを判定する。なお、マスクレイヤ自体の画像データは画像符号化装置100(図15参照)で縮小を行っていないので、伸張されたマスクレイヤの画像データ211の劣化は生じていない。
【0050】
マスクレイヤ判定部212の判定結果213は、背景レイヤ水平スケーリング部214および前景レイヤ水平スケーリング部215にそれぞれ入力されるようになっている。背景レイヤ水平スケーリング部214には背景レイヤ復号部208によって伸張された背景レイヤ画像216ならびに前景レイヤ復号部209によって伸張された前景レイヤ画像217も入力され、これらを用いて水平方向のスケーリングが行われる。前景レイヤ水平スケーリング部215は判定結果213と前景レイヤ画像217ならびに背景レイヤ画像216を入力して前景レイヤのスケーリングを行うようになっている。背景レイヤ水平スケーリング部214で処理された画素値218は背景レイヤ垂直スケーリング部219に入力され、前景レイヤ水平スケーリング部215で処理された画素値221は前景レイヤ垂直スケーリング部222に入力される。
【0051】
背景レイヤ垂直スケーリング部219と前景レイヤ垂直スケーリング部222には、マスクレイヤ判定部212の判定結果223も入力されるようになっている。背景レイヤ垂直スケーリング部219は、背景レイヤ水平スケーリング部214で処理された画素値218を垂直方向にスケーリングする。同様に前景レイヤ垂直スケーリング部222は、前景レイヤ水平スケーリング部215で処理された画素値221を垂直方向にスケーリングする。これら垂直方向にスケーリングされた背景レイヤ225および前景レイヤ226は、マスクレイヤ判定部212の判定したマスクレイヤ227に従ってレイヤ合成部228で合成され、擬似的な線の出現を抑止した復元画像229が得られるようになっている。
【0052】
次にこの画像復号化装置200の動作を更に具体的に説明する。符号解析・分離部202に入力される入力符号201は、図15に示した画像符号化装置100で符号化した情報である。もちろん、このような情報は画像符号化装置100から直接入力される必要はない。たとえばインターネットに接続された図示しないパーソナルコンピュータあるいは図示しない通信回線に接続された同じく図示しないファイル転送装置等の通信機器や通信モジュールを経由して入手されてもよいし、同様の手法でパーソナルコンピュータ等の装置によって符号化した符号データであってもよい。また、入力符号201はこれらの符号データを一度蓄積した図示しないメモリやこれらを書き込んだCD(Compact Disc)あるいはDVD(Digital Versatile Disc)等の記録媒体から再生装置によって再生されて画像復号化装置200に入力されるものであってもよい。
【0053】
符号解析・分離部202は、入力符号201を解析して、マスクレイヤ、背景レイヤおよび前景レイヤの各レイヤに分離する。本実施の形態では背景レイヤおよび前景レイヤの画像サイズは共に縮小されており、マスクレイヤのそれよりも小さなものとなっている。
【0054】
マスクレイヤ復号部207は、入力された符号データ203を用いてマスクレイヤの伸張処理を行う。一般的にマスクレイヤは2値画像となっている。このため、マスクレイヤ復号部207自体はMH(Modified Huffman)、MR(Modified READ(Relative Element ADdress))、MMR(Modified Modified Read)、JBIG(Joint Bi−level Image experts Group)、JBIG2(Joint Bi−level Image experts Group 2)といった2値符号化方式に対応した復号器となる。なお、画像符号化装置100(図15参照)で符号化を行う際にマスクレイヤについて圧縮を行っていない場合には、マスクレイヤの伸張を行う必要はない。
【0055】
図1に示す背景レイヤ復号部208では符号解析・分離部202によって分離された背景レイヤの符号データ204(図15における背景レイヤの面画像色情報符号119に相当。)を用いて背景レイヤの伸張処理を行う。同様に前景レイヤ復号部209では符号解析・分離部202によって分離された前景レイヤの符号データ205(図15における前景レイヤの線画像色情報符号112に相当。)を用いて前景レイヤの伸張処理を行う。ここで背景レイヤおよび前景レイヤは一般的に多値画像として構成されている。このためJPEG(Joint Photographic Experts Group)あるいはJPEG2000(Joint Photographic Experts Group 2000)等の多値符号化方式に対応した復号器が使用される。
【0056】
マスクレイヤ復号部207によって伸張されたマスクレイヤの画像データ211はマスクレイヤ判定部212に入力され、対応する画像が背景画像か前景画像かの判定が行われる。ここでは、画素ごとの判定と共に画素ブロック単位での判定も行われる。たとえば背景レイヤが水平方向にm分の1に縮小され、垂直方向にn分の1に縮小されているものとする。この例の場合、背景レイヤの1画素がマスクレイヤのm×n画素に対応する。ここで、m×n画素の集合が1画素ブロックである。本実施の形態のマスクレイヤ判定部212では、画素ブロックを構成する水平方向のm画素がすべて背景レイヤに属するか、あるいは背景レイヤと前景レイヤが混在しているかを判定する。また、垂直方向についてもn画素がすべて背景レイヤに属するか、あるいは背景レイヤと前景レイヤが混在しているかを判定する。これらの判定結果213、223は、以後の処理で使用されるため、画像復号化装置200の一部を構成する図示しないメモリに格納されるようになっている。
【0057】
マスクレイヤ判定部212の判定結果213を用いて、背景レイヤ水平スケーリング部214では背景レイヤの水平方向のスケーリングが行われる。このスケーリングの様子を具体例を挙げて説明する。この例では値m、nが共に“8”であり、背景レイヤが水平および垂直方向にそれぞれ8分の1に縮小されている場合を説明する。
【0058】
図2は画像の復元処理の対象となる対象ライン上の画素の配置を画素ブロック単位で幾つか示したものである。ここで現画素ブロックとは、処理の対象となる8×8の画素からなる1画素ブロックであり、図ではこのうちの特定の対象ライン上の8個の画素が示されている。次画素ブロックとは現画素ブロックの次に位置する図で右隣りに隣接した画素ブロックをいい、図2では同一対象ライン上に存在する8個の画素が示されている。これらの図で白地の四角(□)は背景レイヤの位置、すなわち面画像が存在する画素の位置を示している。網点の四角は前景レイヤの位置、すなわち線画像が存在する画素の位置を示している。また、現画素ブロックにおける背景レイヤの画素をCb(x,y)として表わすことにし、現画素ブロックにおける前景レイヤの画素をCf(x,y)として表わすことにする。また、次画素ブロックの背景レイヤの画素をCb(x+1,y)とし、次画素ブロックの前景レイヤの画素をCf(x+1,y)として表わすことにする。ここで、(x,y)で示される画素は最終的に復号される画像の画素に対応するのではなく、この場合には8分の1に縮小されている画素に対応している。すなわち、マスクレイヤの8画素分に対して、背景レイヤや前景レイヤの1画素が対応するようになっている。
【0059】
まず、図2(a)に示すように対象ライン上の現画素ブロックに面画像の背景レイヤしか含まれていない場合を考える。この例の場合には前景レイヤが存在しない。したがって、現画素ブロックに対して図で右側に隣接する次画素ブロックと隣接する境界画素部分241および現画素ブロックに対して図で左側に隣接する図示しない前画素ブロックと隣接する境界画素部分242を除いた各画素に対して、対応する背景レイヤの色Cb(x,y)を割り当てる。また、境界画素部分241に対しては次画素ブロックを参照して境界部分の背景レイヤの画素値を用いて平均化を行う。同様に、境界画素部分242に対しては前画素ブロックを参照して境界部分の背景レイヤの画素値を用いて平均化を行う。たとえば境界画素部分241の画素の画素値がREだとすると、平均化後の右端境界値RE′については次の(1)式で表わされる。また、境界画素部分242の画素の画素値がLEだとすると、平均化後の左端境界値LE′については、2対1で平均化を行う場合には次の(2)式で表わされる。もちろん平均化の比率はこれに限るものではない。一般にI対Jで平均化を行う場合には(1)式および(2)式は(1)′式および(2)′式となる。
【0060】
RE′=(RE+2*Cb(x,y))/3 ……(1)
LE′=(LE+2*Cb(x,y))/3 ……(2)
RE′=(J*RE+I*Cb(x,y))/(I+J) ……(1)′
LE′=(J*LE+I*Cb(x,y))/(I+J) ……(2)′
【0061】
これが画像の復元の原則である。ただし、本実施の形態の画像復号化装置200では、次の同図(b)〜(d)で説明するように対象ライン上の現画素ブロックがすべて背景レイヤの画素で構成されている場合でも、現画素ブロックに対して図で右側に隣接する次画素ブロック、ならびに現画素ブロックに対して図で左側に隣接する図示しない前画素ブロックとの関係を考察する。そしてこれにより、現画素ブロックとこれら次画素ブロックあるいは前画素ブロックとの境界部分に位置する境界画素部分241、242で従来発生した擬似的な線あるいは変色を防止あるいは抑制するようにしている。
【0062】
このために本実施の形態で採用している手法は次の2点である。まず、現画素ブロックよりも時間的に処理が先行する前画素ブロックに対しては、その前画素ブロックの処理で生成された右端境界値と現画素ブロックの背景値を使用して境界画素部分242の背景レイヤの色Cb(x,y)を割り当てる。次に、現画素ブロックの次に処理が行われる次画素ブロックに対しては、現画素ブロックの背景値と次画素ブロックの左端境界値を使用して他の境界画素部分241の背景レイヤの色Cb(x,y)を割り当てるようにしている。すなわち、現画素ブロックの図で右端部分については次画素ブロックにおける隣接する1画素を参考にして境界画素部分241の背景色Cb(x,y)を決定し、現画素ブロックの図で左端部分については前画素ブロックにおける隣接する1画素を参考にして境界画素部分242の背景色Cb(x,y)を決定するようにしている。これを現画素ブロックと次画素ブロックの例を挙げて更に具体的に説明する。
【0063】
まず、図2(b)に示すように現画素ブロックも次画素ブロックもすべての画素が面画像としての背景のみを表わす画素から構成されている場合を説明する。この場合には、次画素ブロックの左端は当然、背景色となる。このため、現画素ブロックの境界画素部分241の右端境界値REは、次の(3)式で示す内容となる。
【0064】
RE=Cb(x+1,y) ……(3)
【0065】
次に、同図(c)または(d)に示すように次画素ブロックに少なくとも1画素以上の前景レイヤすなわち線画像を含んでいる場合を説明する。これは、次画素ブロックの少なくとも1画素以上が、マスクレイヤの値が“1”となる画素を有している場合である。本実施の形態ではこの場合に現画素ブロックの背景レイヤの画素Cb(x,y)と次画素ブロックの前景レイヤの画素Cf(x+1,y)の色距離が所定の閾値よりも小さい場合とそれ以外の場合に分けている。
【0066】
まず、現画素ブロックの背景レイヤの画素Cb(x,y)と次画素ブロックの前景レイヤの画素Cf(x+1,y)の色距離が所定の閾値よりも小さい場合について説明する。ここで、所定の閾値よりも小さいとは、現画素ブロックの背景色と次画素ブロックの前景色が色が近似していると見なすことができることをいう。このような場合には、次画素ブロックの左端から見て最初の前景に対応する画素(網で示している画素)は、現画素ブロックから続いている背景色との事実上の境界(変化点)と見なすことができる。画像の像域分離処理では、色の変化点について色の変化する前後の画素が認識される。したがって、前景として抽出されても、それよりも前か後ろの背景色と同じ色の場合がある。そこでこのような場合、本実施の形態では次画素ブロックの背景色でなく、前景色を使用するようにしている。その理由は、エンコーダ側の縮小処理において、前景色ではなく背景色を使用したとすると、その境界の前後の色も合わせて画素ブロック内で平均化されてしまい、前後の色が混じりあってしまい色の劣化が生じるからである。前景色の場合は、前後の色が混じりあうことがないので、このような色の劣化が生じない。そこで、前景色を用いて平滑化することで、画素ブロック間の色の変化がスムーズになる。このような理由で、境界画素部分241における右端境界値を次画素ブロックの前景値として計算することになる。そこで、現画素ブロックの境界画素部分241の右端境界値REは、次の(4)式で示す内容となる。ただし、これは平均化の比率が1対1の場合である。それ以外の比率の場合には(1)′式および(2)′式で示したように右辺の係数および分母の値が異なってくる。
【0067】
RE=(Cf(x+1,y)+Cb(x+1,y))/2 ……(4)
【0068】
次に、現画素ブロックの背景レイヤの画素Cb(x,y)と次画素ブロックの前景レイヤの画素Cf(x+1,y)の色距離が所定の閾値と等しいか、これよりも大きい場合について説明する。これは、現画素ブロックの背景色と次画素ブロックの前景色が近似していないと見なすことができる場合である。この場合、次画素ブロックの左から見て最初の前景に対応する画素は、現画素ブロックから続いている背景色の境界(変化点)ではない。したがって、この場合には単純に次画素ブロックの背景色として、右端境界値REを次画素ブロックの背景値として計算する。この場合の現画素ブロックの境界画素部分241の右端境界値REは、次の(5)式で示す内容となる。
【0069】
RE=Cb(x+1,y) ……(5)
【0070】
なお、図2(d)で示したように次画素ブロックの先頭(左端位置)に前景画素がある場合、現画素ブロックの右端境界値は現画素ブロックの背景値とされる。すなわち、この場合には平滑化を行わない。この場合には、現画素ブロックの背景から続く領域は、現画素ブロックで終わりとなっている。この例の場合、現画素ブロックには背景しか存在しない。したがって、次画素ブロックのための左端境界値(LE)の計算は、単純に現画素ブロックの背景色を代入する。この場合の現画素ブロックの境界画素部分241の右端境界値REは、次の(6)式で示す内容となる。
【0071】
RE=Cb(x,y) ……(6)
【0072】
以上のようにして求めた境界画素部分241の右端境界値REおよび境界画素部分242の左端境界値LEを使用して、現画素ブロックの背景レイヤについてスケーリング後の値を決定する。
【0073】
次に、図2(e)に示すように、現画素ブロックに少なくとも1画素以上の前景レイヤが含まれている場合を説明する。現画素ブロックに少なくとも1画素以上の前景レイヤが含まれる場合の原則は次の通りである。マスクレイヤ上で前景レイヤを示す“1”がある画素には前画素ブロックの前景色(Cf(x,y))が割り当てられる。マスクレイヤ上で背景レイヤを示す“0”がある画素には背景色(Cb(x,y))が割り当てられる。
【0074】
更に画質を向上させるためには、前景色で区切られた領域(f)、(g)、(h)ごとに処理を行う。具体的には以下のような処理を行う。
【0075】
まず、同図(f)に示すように現画素ブロックの左端から見て最初の前景レイヤ(網点部分)の直前までの背景レイヤについては、両端を除いて前画素ブロックで求めた境界画素部分241の右端境界値REとなる。すなわち前画素ブロックの演算で求められた前画素ブロックにおける右端境界値の値を割り当てる。ただし、現画素ブロックの同図(f)に示す左端の境界画素部分242については、この前画素ブロックの演算で求められた前画素ブロックに対する右端境界値と、前画素ブロックの処理後に更新された現画素ブロックに対する左端境界値とを使用して平滑化する。同図(f)に示す境界画素部分の右端の画素については平滑化を行わない。演算終了後に次の背景レイヤの演算が行われる。
【0076】
なお、左端境界値は前画素ブロックで更新された画素値Lとし、右端境界値は前画素ブロックで使用された右端境界値とし、左端境界値の更新は行わなくても良い。同図(f)の部分における左から見て最初の前景画素は、前の画素ブロックの処理で、エッジかどうかの判定が行われており、すでに前画素ブロックの右端境界値に反映されているので、それを使用する。
【0077】
同図(g)に示したように現画素ブロックにおいて前景レイヤで挟まれた背景レイヤについての画素値は、すべて現画素ブロックの背景色である(Cb(x,y))が割り当てられる。そして次の背景レイヤの演算が行われる。すなわち、これら前景レイヤで挟まれた背景レイヤについては平滑化処理が行われず、次画素ブロックの左端境界値や前画素ブロックの右端境界値は使用されない。また、左端境界値の更新を行う必要はない。この場合には単純に背景色を割り当てることになる。
【0078】
同図(h)の領域の画素の場合には、次画素ブロックの状態によって図(i)〜(k)のように場合分けされる。まず、図(i)に示すように次画素ブロックが背景レイヤのみの場合、現画素ブロックの境界画素部分241の右端境界値REは、次の(7)式で示す内容となる。
【0079】
RE=Cb(x+1,y) ……(7)
すなわち、次画素ブロックが背景しかないので、次画素ブロックの背景色とする。そして、色距離の比較によって、次のように平滑化処理が選択される。
【0080】
まず、現画素ブロックの前景レイヤ値Cf(x,y)と次画素ブロックの背景レイヤ値Cb(x+1,y)の色距離が閾値より小さいとき、現画素ブロックの同図(f)の部分の左側に隣接する前景レイヤ画素は、次画素ブロックの背景レイヤへと続く領域への境界(変化点:エッジ)と見なされる。そこで同図(h)に示す領域の左端境界値として、現画素ブロックの前景値が選択される。この理由はすでに説明した。この場合には、次画素ブロックの左端境界値がこの領域の画素の色とされる。また、同図(h)に示す領域の右端の平滑化処理は、現画素ブロックの前景値と次画素ブロックの背景値との間で次の(8)式のように行われる。ただし、これは平均化の比率が1対1の場合である。それ以外の比率の場合には(1)′式および(2)′式で示したように右辺の係数および分母の値が異なってくる。
【0081】
LE=(Cf(x,y)+Cb(x,y))/2 ……(8)
【0082】
現画素ブロックの前景レイヤ値Cf(x,y)と次画素ブロックの背景レイヤ値Cb(x+1,y)の色距離が閾値以上のときには、同図(d)で説明したと同様に次画素ブロックの左端境界値が現画素ブロックの背景値とされ、この左端境界値が同図(h)に示す領域の画素の色とされる。これは(9)式で表わされる。
【0083】
LE=Cb(x,y)……(9)
【0084】
また、同図(h)に示す領域の右端の平滑化処理は、現画素ブロックの背景値と次画素ブロックの背景値との間で行われる。次画素ブロックのための左端境界値(LE)の計算については同図(h)に示す領域で求めた、左端境界値を次画素ブロックの左端境界値として代入する。
【0085】
次に同図(j)に示すように次画素ブロックに少なくとも1画素以上の前景レイヤを含む場合を説明する。これは、換言すると、少なくとも1画素以上、マスクレイヤの値が“1”となる画素がある場合である。この場合には、まず現画素ブロックの前景レイヤの画素値Cf(x,y)と次画素ブロックの背景レイヤにおける画素値Cb(x+1,y)との間の色距離の比較が行われる。
【0086】
この結果、これらの間の色距離が閾値より小さいときには、現画素ブロックの最後の前景レイヤ画素は、次画素ブロックの背景レイヤへと続く領域への境界(変化点)と見なされる。同図(h)に示す領域の左端境界値は(10)式で表わされる。ただし、これは平均化の比率が1対1の場合である。それ以外の比率の場合には(1)′式および(2)′式で示したように右辺の係数および分母の値が異なってくる。
【0087】
LE=(Cf(x,y)+Cb(x,y))/2 ……(10)
【0088】
現画素ブロックの前景レイヤ値Cf(x,y)と次画素ブロックの背景レイヤ値Cb(x+1,y)の色距離が閾値以上のときには、同図(h)に示す領域の左端境界値は次の(11)式で表わされる。
【0089】
LE=Cb(x,y)……(11)
【0090】
次に、次画素ブロックの前景レイヤの画素値Cf(x+1,y)と現画素ブロックの背景レイヤの画素値Cb(x,y)の色距離の比較が行われる。この結果、次画素ブロックの前景レイヤ値Cf(x+1,y)と現画素ブロックの背景レイヤ値Cb(x,y)の色距離が閾値より小さいときには、次画素ブロックの最初の前景レイヤ画素は、現画素ブロックの背景レイヤから続く領域の境界(変化点)と見なされる。そこで、同図(h)に示す領域の右端境界値は次の(12)式で表わされる。ただし、これは平均化の比率が1対1の場合である。それ以外の比率の場合には(1)′式および(2)′式で示したように右辺の係数および分母の値が異なってくる。
【0091】
RE=(Cf(x+1,y)+Cb(x+1,y))/2 ……(12)
【0092】
次画素ブロックの前景レイヤ値Cf(x+1,y)と現画素ブロックの背景レイヤ値Cb(x,y)の色距離が閾値以上のときには、先と同じ理由により、右端境界値が次画素ブロックの背景値とされる。これを次の(13)式で表わす。
【0093】
RE=Cb(x+1,y)……(13)
【0094】
ただし、同図(k)のように、次画素ブロックの先頭に前景画素があるような場合には、現画素ブロックの右端の境界画素部分241の画素値は現画素ブロックの背景値とされる。
【0095】
以上のようにして求めた現画素ブロックの左端境界値LE、REを使用して、現画素ブロックの背景レイヤのスケーリング後の画素値を決定する。現画素ブロックの背景レイヤの値は、その右端の境界画素部分241を除いて左端境界値LEで表わされる。右端の境界画素部分241については、左端境界値LEと右端境界値REを用いて平均化された値となる。
【0096】
図1に戻って説明を続ける。前景レイヤ水平スケーリング部215では、マスクレイヤ判定部212の判定結果213を用いて、前景レイヤについて水平方向のスケーリングを行う。この一例を説明する。前景レイヤの基本的なスケーリングでは、現画素ブロックの前景レイヤの画素は現画素ブロックの前景レイヤの画素値Cf(x,y)で与えられる。ただし、画素ブロック間で前景レイヤが連続する場合、現画素ブロックの右端の前景レイヤの画素値は、現画素ブロックの前景レイヤの画素値Cf(x,y)と次画素ブロックの画素値Cf(x+1,y)を用いた平均化した値で与えられる。また、左端の前景レイヤの画素値は、現画素ブロックの前景レイヤの画素値Cf(x,y)と前景レイヤの画素値Cf(x−1,y)を用いて平均化した値で与えられる。
【0097】
背景レイヤ水平スケーリング部214および前景レイヤ水平スケーリング部215で水平方向にスケーリングされた各レイヤは、垂直方向の画素ブロック分の処理が終了すると、背景レイヤ垂直スケーリング部219および前景レイヤ垂直スケーリング部222でそれぞれ垂直方向のスケーリング処理が行われる。基本的なスケーリング方式は、前記した水平方向と同様である。ただし場合分け等の条件の判定は、水平スケーリング前の値を使用して、実際に各画素に値を代入するときには水平スケーリング後の値との平均値をとることになる。
【0098】
以上のようにして背景レイヤ垂直スケーリング部219および前景レイヤ垂直スケーリング部222で処理されて得られた背景レイヤ225および前景レイヤ226は、マスクレイヤ判定部212の判定したマスクレイヤ227に従ってレイヤ合成部228で合成され、擬似的な線の出現を抑止した復元画像229が得られることになる。
【0099】
以上が本実施の形態における画像復号化装置200の説明である。この画像復号化装置200では、画素ブロックの端部だけしか平滑処理を行っていない。これに対して、画素ブロック内の各部で段階的に変化するような画像処理を加えることが可能であり、これにより更に画質を向上させることができる。
【0100】
更にこの実施の形態ではスケーリングの処理を水平スケーリングと垂直スケーリングに分離して行うようにしたが、これらを同時に行うことで画質を向上させることもできる。この場合、現画素ブロックに対して水平方向の次画素ブロックならびに垂直方向の次画素ブロックおよび斜め方向の次画素ブロックについて状態を考慮して、領域の判定を行うことになる。
【0101】
更にこの実施の形態では画像復号化装置200をハードウェアとして説明したが、画像復号化処理をソフトウェアで実現することも可能である。これについては次の実施例で具体的に説明する。
【0102】
【実施例】
次に本発明の一実施例を説明する。なお、この実施例で使用する画像復号化装置は図1で説明した画像復号化装置200をソフトウェアで実現するものである。その構成は図示しないCPU(中央処理装置)と制御プログラムを格納した記憶媒体およびデータの入出力用のインターフェイス回路等からなるが、これはパーソナルコンピュータあるいはワークステーション等の装置に制御プログラムを格納しこれを実行することで実現する。そこで、本実施例の画像復号化装置の図示は省略し、先の実施の形態等で使用した図を適宜使用して説明を行う。また、各画素ブロックはn×m画素で構成されているものとする。
【0103】
図3は図15に示したオリジナル画像としての入力画像の一例を示したものである。この入力画像301は比較的太いピンク色の文字「2002 NO.363」で構成されている。
【0104】
図4〜図6は入力画像に対するマスクレイヤ、背景レイヤおよび前景レイヤの画像をそれぞれ表わしている。図4に示したマスクレイヤの画像302に対して、図5に示した背景レイヤの画像303および図6に示した前景レイヤの画像304はそれぞれ縮小されている。ただし図5および図6は図示の都合で実際の縮小率よりは大きく表している。
【0105】
図7は本実施例における図2で説明した水平(ライン)方向のスケーリング処理の流れを表わしたものである。まず、入力画像における最初の画素ブロックの左端の画像の開始点の境界値を初期化する(ステップS401)。ラインの先頭では、左側は画像外になるため、強制的に初期化が行われる。そして、画素ブロック内の全画素値を背景色とする(ステップS402)。このように本実施例の画像復号化装置では、復元する画像の全領域をまず背景色で埋めてから、マスクレイヤで示される位置を前景色で置き換えていくという処理を基本的に行うようになっている。これにより、後に背景についての処理を施す必要がない。
【0106】
ステップS402による処理が行われたら、次に現画素ブロックの該当するラインが背景のみで構成されているかどうかをチェックする(ステップS403)。図2(a)のように現画素ブロックが背景のみで構成されている場合には(Y)、背景画素ブロック時の第1の現画素ブロック処理が行われる(ステップS404)。これについては後に具体的な処理の流れを説明する。これに対して図2(e)のように現画素ブロックが背景と前景で構成されているときには(ステップS403:N)、背景と前景画素ブロック時の第1の現画素ブロック処理が行われる(ステップS405)。これについても後に具体的な処理の流れを説明する。
【0107】
ステップS404またはS405の処理が行われたら前景色の配置をその画素ブロックの該当するラインについて行って(ステップS406)、該当するラインに係わる全画素ブロックの処理が終了したかどうかをチェックして(ステップS407)、終了していなければ(N)、ステップS402に戻ってそのラインの次画素ブロックについて同様の処理が行われる。このようにして右端の画素ブロックまでの該当するラインの処理が終了する(ステップS407:Y)。
【0108】
図8および図9は図7のステップS404で示した現画素ブロックが背景のみで構成されている背景画素ブロック時の第1の現画素ブロック処理の流れを表わしたものである。この処理では、まず左端境界値と現画素ブロックの背景値を使用して左端についての画素値を演算する(図8ステップS421)。そして、次画素ブロックも背景のみで構成されているかどうかを判別する(ステップS422)。図2(b)に示したように次画素ブロックも背景のみで構成されている場合には(Y)、現画素ブロックの背景値と次画素ブロックの背景値との色差(色距離)DBBを計算する(ステップS423)。そして、この色差DBBが所定の閾値THBBよりも大きい場合には(ステップS424:Y)、左端境界値を次画素ブロックの背景値とする(ステップS425)。
【0109】
これに対してステップS424で色差DBBが閾値THBB未満であった場合には(N)、右端境界値を次画素ブロックの背景値とする。また、右端境界値と現画素ブロックの背景値を使用して右端の画素値を演算する。左端境界値については現画素ブロックの背景値とする(ステップS426)。
【0110】
一方、図2(c)あるいは図2(d)で示したように次画素ブロックが前景を含んでいるような場合には(ステップS422:N)、次画素ブロックの先頭画素が前景画素であるかどうかを判別する(図9ステップS427)。そうである場合には(Y)、左端境界値を次画素ブロックの背景値とする(ステップS428)。
【0111】
これに対して次画素ブロックの先頭画素が前景画素ではない場合には(ステップS427:N)、現画素ブロックの背景値と次画素ブロックの前景値との色差DBFを計算する(ステップS429)。そして、この色差DBFが所定の閾値THBFよりも大きい場合には(ステップS430:Y)、左端境界値を次画素ブロックの背景値とする(ステップS431)。
【0112】
一方、色差DBFが所定の閾値THBF未満の場合には(ステップS430:N)、右端境界値REを次の(21)式の通りとする。ただし、値i、jは2画素間で平滑化(平均化)を行うときの2画素の比を表わしている。
【0113】
RE=(現画素ブロックの背景値×i+次画素ブロックの前景値×j)/(i+j) ……(21)
【0114】
また、右端境界値と現画素ブロックの背景値を使用して右端を演算する。更に左端境界値LEを次の(22)式の通りとする(ステップS432)。
【0115】
LE=(現画素ブロックの背景値×j+次画素ブロックの前景値×i)/(i+j) ……(22)
【0116】
図10および図11は、図7のステップS405で示した背景と前景画素ブロック時の第1の現画素ブロック処理の流れを表わしたものである。この場合にはまず、画素ブロック内の最初の前景画素の位置を左端側から探索する(図10ステップS451)。そして前景画素が現画素ブロックの先頭画素かどうかをチェックして(ステップS452)、そうでない場合には(N)、色差DBFが所定の閾値THBF未満の場合には(ステップS453:N)、先頭から前景画素の手前までの画素を右端境界値とする。そして右端境界値と左端境界値を使用して左端を演算する。左端境界値を現画素ブロックの背景値とする(ステップS454)。そして、次の前景画素の位置を探索し(ステップS455)、これが画素ブロック内の最後の前景画素でない場合には(ステップS456:N)、ステップS455に戻って探索を行う。なお、ステップS452で前景画素が現画素ブロックの先頭画素であった場合(Y)、ならびにステップS453で色差DBFが所定の閾値THBF以上であった場合(Y)にも、ステップS455の処理に進む。
【0117】
ステップS456で画素ブロック内の最後の前景画素であるとされた場合には(Y)、それがその画素ブロックの最右端に位置するか否かの判別が行われる(図11ステップS457)。最右端に位置する場合には(Y)、その時点で処理が終了する(エンド)。そうでない場合には(N)、次画素ブロックが背景のみで構成されているかどうかの判別が行われる(ステップS458)。次画素ブロックが背景のみで構成されている場合には(Y)、背景画素ブロック時の第2の現画素ブロック処理が実行される(ステップS459)。これに対して次画素ブロックに前景画素ブロックが含まれている場合には(ステップS458:N)、背景と前景画素ブロック時の第2の現画素ブロック処理が実行される(ステップS460)。
【0118】
図12は、図10のステップS459で示した背景画素ブロック時の第2の現画素ブロック処理の内容を示したものである。この処理ではまず現画素ブロックの前景値と次画素ブロックの背景値との色差DFBを計算する(ステップS471)。そしてこの色差DFBが所定の閾値THFB以上であるかどうかを判別する(ステップS472)。閾値THFB以上であれば(Y)、現画素ブロックの背景値と次画素ブロックの背景値の色差DBBを計算する(ステップS473)。そしてこの色差DBBが閾値THBB以上であれば(ステップS474:Y)、左端境界値を次画素ブロックの背景値とする(ステップS475)。
【0119】
これに対してステップS474で色差DBBが閾値THBB未満の場合には(N)、右端境界値を次画素ブロックの背景値とする。また、右端境界値と現画素ブロックの背景値を使用して右端の演算を行い、左端境界値を現画素ブロックの背景値とする(ステップS476)。
【0120】
最後にステップS472で色差DFBが所定の閾値THFB未満とされた場合には(N)、左端境界値LEを次の(23)式の通りとする。
【0121】
LE=(現画素ブロックの前景値×i+次画素ブロックの背景値×j)/(i+j) ……(23)
【0122】
また、最終の前景以降の画素ブロック内の画素を左端境界値とする。右端境界値を次画素ブロックの背景値とし、左端境界値と右端境界値を使用して右端を演算し、左端境界値LEを次の(24)式の通りとする(ステップS477)。
【0123】
LE=(現画素ブロックの前景値×j+次画素ブロックの背景値×i)/(i+j) ……(24)
【0124】
図13および図14は、図11のステップS460における背景と前景画素ブロック時の第2の現画素ブロック処理の流れを表わしたものである。この処理ではまず次画素ブロックの先頭画素が前景画素であるか否かの判別が行われる(図13ステップS491)。前景画素である場合には(Y)、左端境界値を次画素ブロックの背景値とする(ステップS492)。
【0125】
次画素ブロックの先頭画素が前景画素ではない場合には(ステップS491:N)、現画素ブロックの前景値と次画素ブロックの背景値の色差DFBを計算すると共に、現画素ブロックの背景値と次画素ブロックの前景値の色差DBFを計算する(ステップS493)。そして、前者の色差DFBが所定の閾値THFB以上であった場合には(ステップS494:Y)、後者の色差DBFが所定の閾値THBF以上であるかどうかを判別し(ステップS495)、閾値THBF以上である場合には(Y)、左端境界値を次画素ブロックの背景値とする(ステップS496)。閾値THBF未満であった場合には(ステップS495:N)、右端境界値REを次の(25)式の通りとする。
【0126】
RE=(現画素ブロックの背景値×i+次画素ブロックの前景値×j)/(i+j) ……(25)
【0127】
また、右端境界値と現画素ブロックの背景値を使用して右端の演算を行い、左端境界値LEを次の(26)式の通りとする(ステップS497)。
【0128】
LE=(現画素ブロックの背景値×j+次画素ブロックの前景値×i)/(i+j) ……(26)
【0129】
一方、ステップS494で前者の色差DFBが所定の閾値THFB未満と判別された場合には(N)、後者の色差DBFが所定の閾値THBF以上であるかどうかを判別し(図14ステップS498)、閾値THBF以上である場合には(Y)、左端境界値LEを次の(27)式の通りとする。
【0130】
LE=(現画素ブロックの前景値×i+次画素ブロックの背景値×j)/(i+j) ……(27)
【0131】
また、最終前景以降の画素ブロック内の画素を左端境界値とし、右端境界値を次画素ブロックの背景値とする。更に左端境界値と右端境界値を使用して右端を演算し、左端境界値LEを次の(28)式の通りとする(ステップS499)。
【0132】
LE=(現画素ブロックの前景値×j+次画素ブロックの背景値×i)/(i+j) ……(28)
【0133】
最後にステップS498で後者の色差DBFが所定の閾値THBF未満である場合(N)を説明する。この場合には左端境界値LEを次の(29)式の通りとする。
【0134】
LE=(現画素ブロックの前景値×i+次画素ブロックの背景値×j)/(i+j) ……(29)
【0135】
また、最終前景以降の画素ブロック内の画素を左端境界値とし、右端境界値REを次の(30)式の通りとする。
【0136】
RE=(現画素ブロックの背景値×i+次画素ブロックの前景景値×j)/(i+j) ……(30)
【0137】
また、左端境界値と右端境界値を使用して右端を演算し、左端境界値LEを次の(31)式の通りとする(ステップS500)。
【0138】
LE=(現画素ブロックの前景値×j+次画素ブロックの背景値×i)/(i+j) ……(31)
【0139】
【発明の効果】
以上説明したように請求項1および請求項8記載の発明によれば、背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1に縮小した符号を復号して画像を復元するときに伸張後のm×nの画素ブロックの周辺画素の色を隣接する画素ブロックの状態によって補正することにしたので、擬似的な線の出現を軽減あるいは抑制することができる。したがって、符号の高圧縮性を損なうことなく品位の高い復元画像を得ることができる。
【0140】
また、請求項4〜請求項6記載の発明では隣接した画素ブロックとの間で平均化処理を行うので、ブロック間の歪を低減することができる。これにより、高圧縮性を損なうことなく圧縮時に失われた色情報を可能な限り復元し、良好な復元画像を得ることが可能になる。
【図面の簡単な説明】
【図1】本発明の一実施の形態における画像復号化装置の構成を表わしたブロック図である。
【図2】画像の復元処理の対象となる対象ライン上の画素の配置をブロック単位で幾つか示した説明図である。
【図3】図15に示したオリジナル画像としての入力画像の一例を示した平面図である。
【図4】図3の入力画像に対するマスクレイヤの画像を表わした平面図である。
【図5】図3の入力画像に対する背景レイヤの画像を表わした平面図である。
【図6】図3の入力画像に対する前景レイヤの画像を表わした平面図である。
【図7】実施例における水平方向のスケーリング処理の流れを表わした流れ図である。
【図8】図7のステップS404で示した第1の現ブロック処理の流れの前半を表わした流れ図である。
【図9】図7のステップS404で示した第1の現ブロック処理の流れの後半を表わした流れ図である。
【図10】図7のステップS405で示した背景と前景ブロック時の第1の現ブロック処理の流れの前半を示した流れ図である。
【図11】図7のステップS405で示した背景と前景ブロック時の第1の現ブロック処理の流れの後半を示した流れ図である。
【図12】図10のステップS459における背景ブロック時の第2の現ブロック処理の流れ図である。
【図13】図10のステップS460における背景と前景ブロック時の第2の現ブロック処理の前半を示す流れ図である。
【図14】図10のステップS460における背景と前景ブロック時の第2の現ブロック処理の後半を示す流れ図である。
【図15】従来提案された画像復号化装置の要部を表わしたブロック図である。
【図16】図15における入力原画像の一部を示した説明図である。
【図17】図15の面画像生成部による面画像の生成の様子を表わした説明図である。
【図18】図15に示した画像符号化装置で符号化された画像情報を用いて復元画像を生成する画像復号化装置の構成を表わしたブロック図である。
【図19】図15に示した入力原画像の一部を示した説明図である。
【図20】図19のオリジナル画像に対するマスクレイヤの分離情報を表わした説明図である。
【図21】背景レイヤの圧縮後の色情報の一例を示した説明図である。
【図22】前景レイヤの圧縮後の色情報の一例を示した説明図である。
【図23】図18に示した従来のレイヤ合成部が合成した復元画像の一例を示した説明図である。
【符号の説明】
201 入力符号
202 符号解析・分離部
203〜205 符号データ
207 マスクレイヤ復号部
208 背景レイヤ復号部
209 前景レイヤ復号部
212 マスクレイヤ判定部
214 背景レイヤ水平スケーリング部
215 前景レイヤ水平スケーリング部
219 背景レイヤ垂直スケーリング部
222 前景レイヤ垂直スケーリング部
228 レイヤ合成部
241 次ブロックと隣接する境界画素部分
242 前ブロックと隣接する境界画素部分
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image decoding apparatus for performing image decoding processing and an image decoding method for performing image decoding processing, for example, a device such as a display or the like that expands code data and uses an image, a printer, The present invention relates to an image decoding device usable for various devices such as a mobile terminal and an image decoding method for performing image decoding processing.
[0002]
[Prior art]
When encoding a color image, processing with high quality and a high compression rate is demanded along with higher definition of a display and improvement of printing quality of a printer. In response to such a demand, in recent years, an object-based coding scheme has been receiving attention. The object-based encoding method is a method in which a target (object) such as a subject or a background in a screen is identified, and encoding is performed in accordance with the object. In this method, processing suitable for each object can be performed, so that encoding can be performed at a high compression rate.
[0003]
In the object-based coding method, an image is divided into a plurality of layers such as a background, a mask representing positional information such as characters and edges, and a foreground representing color information of the mask. Then, each layer is compressed using an optimal coding method. ITU-T (International Telecommunications Union-Telecommunications Standardization Sector: Telecommunications Standardization Sector of the International Telecommunication Union) has a T.I. 44 defines an MRC (Mixed Raster Content) that defines an object-based code format. In ISO / IECJTC1 / SC29 / WG1 (SC29 / WG1 of the International Standards Organization of the International Organization for Standardization), the file format of object-based encoding using JPEG2000 (Joint Photographic Experts Group 2000) is part 6. (Part 6).
[0004]
In the object-based coding method, the background layer, the foreground layer, and the mask layer are all separated by the same size when it is not necessary to particularly consider the data compression efficiency. On the other hand, if it is necessary to improve the compression efficiency of the entire image, the image size of the background layer and foreground layer is intentionally reduced while maintaining the image size of the mask layer representing the positional information such as characters and edges. To achieve efficient compression.
[0005]
As an example, the surface image color information as the background layer and the line image color information as the foreground layer are reduced to 1 / n in the horizontal direction and 1 / m in the vertical direction (n and m are respectively Proposals have been made for scaling to an integer of 2 or more (for example, Patent Document 1).
[0006]
FIG. 15 shows a main part of the proposed image coding apparatus. In the image encoding device 100, an input original image 101 is input in parallel to an image area separation unit 102, a line image generation unit 103, and a plane image generation unit 104. Here, the input original image 101 is a signal of a pixel unit composed of 24 bits of 8 bits each for RGB (red, green, blue). Image data as obtained. The image area separation unit 102 determines, for each pixel, whether the input original image 101 is a line image (foreground layer) or a plane image (background layer), and outputs an image encoding device indicating the determination results. I have. The separation information 105 is binary information that sets a line image to “1” and a plane image to “0”.
[0007]
The line image generation unit 103 sets the logic of the input original image 101 and the separation information 105 for each of the corresponding pixels, and calculates the RGB values of the pixels of the input original image 101 that indicate that the corresponding separation information 105 is a line image. Each 8-bit data is passed as it is. For the pixels for which the corresponding separation information 105 indicates a plane image, each 8-bit data of RGB is masked with “0xFF” as white (0x at the head indicates hexadecimal notation). Output. Thus, the line image color information 106 is generated. The line image color information 106 is input to the line image color information quantization unit 108 together with the separation information 105.
[0008]
FIG. 16 shows how a line image is generated by the line image generation unit. Here, a state of generating a line image of one block of 8 pixels × 8 pixels is shown. In the figure, the upper left shows the input original image 101 for one block. For example, the upper left pixel of the input original image 101 for one block is “EE EF FF”. This means that B (blue) is "0xEE", G (green) is "0xEF", and R (red) is "0xFF". The leading “0x” is in hexadecimal notation as described above. The separation information 105 shown at the upper right of this figure also shows one block of 8 pixels × 8 pixels, where “1” represents a line image and “0” represents a plane image.
[0009]
The line image generation unit 103 blocks the pixel portion of the plane image by masking the portion where the separation information 105 is “0”, and converts the input original image 101 of the portion “1” with the separation information 105 corresponding to the line image. Let through as it is. In this example, the pixel portion of the plane image for which the separation information 105 is “0” is “FF” (hexadecimal notation) for both RGB. Thus, the line image color information 106 is obtained.
[0010]
Returning to FIG. 15, the description will be continued. The line image color information quantization unit 108 quantizes and compresses the line image color information 106 and outputs line image quantized color information 109. There are various quantization methods. Here, the color image of the line image is averaged for each block of 8 pixels × 8 pixels, and the obtained average color is used as the representative color of the pixel block to obtain the information of the line image color information 106. The amount is quantized and compressed.
[0011]
Further, the line image color information quantization unit 108 also performs gradation quantization compression by deleting the lower bits of each of the RGB data in addition to the quantization using the representative color. Here, the lower two bits are reduced for each of the RGB colors. Thus, the result of the color quantization and the gradation quantization is output as the line image quantized color information 109. The line image color information encoding unit 111 outputs a line image color information code 112 obtained by encoding the color information 109 after the line image quantization output from the line image color information quantization unit 108. Here, the value of the color information 109 after line image quantization is used as it is as a code word.
[0012]
On the other hand, the plane image generation unit 104 outputs plane image color information 115 from the input original image 101 and the separation information 105. The plane image generation unit 104 takes the logic of the input original image 101 and the separation information 105 for each corresponding pixel, and outputs RGB data for the pixels of the input original image 101 indicating that the corresponding separation information 105 is a plane image. Is passed as it is. For each pixel for which the corresponding separation information 105 indicates a line image, RGB 8-bit data is masked with white “0xFF” and output. Thus, the surface image color information 115 is generated.
[0013]
FIG. 17 shows how a plane image is generated by the plane image generation unit. Here, as in FIG. 16, a state of generating a plane image for one block of 8 pixels × 8 pixels is shown. In the figure, the upper left shows the input original image 101 for one block. The separation information 105 shown at the upper right of this figure also shows one block of 8 pixels × 8 pixels, which is the same as the separation information 105 of FIG.
[0014]
The plane image generation unit 104 blocks the pixel portion of the line image by masking the part where the separation information 105 is “1”, and corresponds to the plane image of the part “0” in the separation information 105 in the input original image 101. Pass the part to be used as it is. In this example, the pixel portion of the line image whose separation information 105 is “1” is “FF” (hexadecimal notation) for both RGB. Thus, the surface image color information 115 is obtained.
[0015]
Returning to FIG. 15, the description will be continued. The plane image quantization unit 116 receives the plane image color information 115 and the separation information 105, and performs quantization and compression on the plane image color information 115 to output post-plane image quantization information 117. Here, the color average of the surface image is obtained for each pixel block of 4 pixels × 4 pixels, and the obtained average color is used as the representative color of the pixel block to quantize and compress the information amount of the surface image color information 115. . The separation information 105 is used to determine whether the pixel corresponding to the plane image color information 115 is a line image or a plane image.
[0016]
The plane image encoding unit 118 encodes and compresses the plane image quantized information 117 and outputs a plane image color information code 119. Here, "T.81" recommended by the ITU is used. However, the information 117 after the plane image quantization is regarded as a 縮小 reduced image, and DCT (Discrete Cosine Transform) transformation is performed and encoded using the representative point as one pixel.
[0017]
As described above, in the image coding apparatus 100 illustrated in FIG. 15, in the scaling of the background layer as the plane image, each value of the line drawing position information that is the mask layer in the n × m pixel block represents the background area. The average of the pixel values at the location of “0” is calculated, and the average of the pixel values of the location at which the value of each pixel of the mask layer is “1” representing the foreground area as a line image in the n × m pixel block is calculated. Ask. Then, compression is performed by setting the values after scaling of the background layer and the foreground layer, respectively.
[0018]
When the original image is reconstructed by decompressing each layer that has been scaled and compressed by the image encoding device 100, the scaled background layer and foreground layer are returned to the original size using the image decoding device. There is a need.
[0019]
FIG. 18 illustrates a configuration of an image decoding device that generates a restored image using the image information encoded by the image encoding device illustrated in FIG. The image decoding device 131 receives the mask layer determination unit 132 that receives the separation information 105, the background layer scaling unit 133 that receives the plane image color information code 119 of the background layer, and the line image color information code 112 that receives the foreground layer. Foreground layer scaling unit 134 is provided. A layer combining unit 138 is provided which receives the determination result 135 of the mask layer determining unit 132 and the scaled codes 136 and 137 of the background layer scaling unit 133 and the foreground layer scaling unit 134 and combines the layers. A restored image 139 is output from the layer combining unit 138.
[0020]
By the way, the background layer scaling unit 133 on the image decoding apparatus 131 side corresponds to an n × m pixel block of the mask layer (however, in the example shown in FIG. 15, both the values n and m are “8”). Using the pixel value of the background layer, the pixel value of the background layer is substituted for the pixel where the mask layer is “0”, that is, the pixel of the plane image. Similarly, the foreground layer scaling unit 134 uses the pixel value of the corresponding foreground layer for the n × m pixel block of the mask layer, and assigns the pixel at the position of the mask layer “1”, that is, the pixel of the line image. Substitute the pixel value of the background layer. However, if all the pixels in the corresponding n × m pixel block are a plane image or a line image, there is no problem. However, when both are mixed, the pixel value of the foreground layer is used for the entire pixel block. The problem is whether to use the pixel value of the background layer. This will be specifically described below.
[0021]
FIGS. 19 to 23 are diagrams for explaining examples of division and reconstruction of an n × m pixel block. In this figure, each pixel value is represented as one 8-bit component for the sake of simplicity. That is, although it should be originally displayed in three colors of R, G, and B, it is simply displayed as a component with a value corresponding to one color. The "h" attached to the code represented as a pixel value indicates that these values are represented in hexadecimal.
[0022]
FIG. 19 shows a part of the input original image 101 shown in FIG. As shown in this figure, in the original image, it is assumed that pixels “0h” and “FFh” of two colors are separated by a predetermined boundary in the illustrated image portion. FIG. 20 shows mask layer separation information 105 for the original image. However, the case where the values n and m are both “4” will be described.
[0023]
FIG. 21 shows the color information of the background layer after compression in this example, and FIG. 22 shows the color information of the foreground layer after compression. As a result of averaging and calculating one piece of color information for each 4 × 4 pixel block, codes obtained by scaling the background layer in the 4 × 4 pixel blocks surrounded by thick lines in FIGS. 19 and 20 are obtained. Assume that the value of 136 is “94h”, and the value of the code 137 after scaling of the foreground layer is “FFh”. That is, for the background layer (plane image), one value “94h” is assigned to a 4 × 4 pixel block as a result of compression, and for the foreground layer (line image), the same result is obtained as a result of compression. One value “FFh” is assigned to a 4 × 4 pixel block.
[0024]
[Patent Document 1]
JP 2002-369010 A (Paragraph 0023, FIG. 1)
[0025]
[Problems to be solved by the invention]
[0026]
FIG. 23 shows a restored image synthesized by the conventional layer synthesizing unit shown in FIG. The layer combining unit 138 illustrated in FIG. 18 determines the color information using the determination result 135 indicating whether the image is the plane image or the line image illustrated in FIG. Therefore, the separation information 105 of the mask layer shown in FIG. 20 is “0”, that is, the value “94h” shown in FIG. 21 is assigned as the color information for the plane image portion, and the line image portion is shown in FIG. 22 for the line image portion. The value “FFh” is assigned as color information. When the restored image 139 obtained in this way is compared with the input original image 101 shown in FIG. 19, the color information of the portion that should originally be the value “0h” has the value “94h”. . That is, the value of the background layer is a value averaged between the colors straddling the color boundary ("94h" in this example), and a discoloration different from the color of the original image occurs.
[0027]
As described above, in the case of the conventional image decoding apparatus 131, a color different from the original color generated at the time of image encoding is reproduced at the boundary of the plane image, and this discolored portion is pseudo-colored. The line-like image was to be reproduced. As a result, the image quality of the reconstructed image deteriorates.
[0028]
As described above, in the process of expanding and combining the object-based code, the image quality of the reconstructed image when the foreground layer reduced (compressed) as well as the reduced (compressed) background layer is scaled using the mask layer is used. Deterioration has been described. Similarly, in the other case where the image layer represented by the background layer or the foreground layer is once compressed, and then scaled and combined using the mask layer to generate a reconstructed image, a pseudo line is similarly generated. There is a problem of appearance, which causes deterioration of image quality.
[0029]
Therefore, an object of the present invention is to expand and synthesize an object-based code. In a case where a compressed image layer such as a background layer or a foreground layer is synthesized after scaling using a mask layer, the code has high compressibility. It is an object of the present invention to provide an image decoding device and an image decoding method that reduce or suppress the appearance of pseudo lines without impairing the image.
[0030]
[Means for Solving the Problems]
According to the first aspect of the present invention, (a) a background layer that represents color information of a plane image, a foreground layer that represents color information such as characters, lines, and edges, and a pixel unit of the background layer and the foreground layer Is divided into a plurality of layers including at least three types of mask layers as information representing the position of the image, and the image sizes of the background layer and the foreground layer among these are determined in the horizontal direction as a predetermined line direction of the image at the time of encoding. An encoded image representing an image reduced to 1 / m or 1 / n (where n and m are positive integers including the same value) color information in the vertical direction orthogonal to the above. Code input means for inputting information; (b) code analysis / separation means for analyzing the code input by the code input means and separating it into each of the plurality of layers; Background layer decoding means for decoding the background layer separated by the separation means, (d) foreground layer decoding means for decoding the foreground layer separated by the code analysis separation means, and (e) separation by the code analysis separation means. A mask layer decoding means for decoding the mask layer, and (f) each pixel constituting each m × n pixel block based on the mask layer decoded by the mask layer decoding means corresponds to a background layer. (G) a background layer extending means for extending the background layer, (h) a foreground layer extending means for extending the foreground layer, and (i) adjacent pixels. The background layer and the foreground layer, determined by the mask layer determining means between the blocks, are arranged based on the pixel arrangement pattern. Color correction means for correcting the color of the background layer after expansion by the ear expansion means; and (u) masking the background layer expanded by the background layer expansion means and corrected by the color correction means and the foreground layer expanded by the foreground layer expansion means. The image decoding apparatus is provided with a layer synthesizing unit for restoring an image by synthesizing based on the position information determined by the layer determining unit.
[0031]
That is, according to the first aspect of the present invention, an image is a background layer representing color information of a plane image, a foreground layer representing color information of characters, lines, edges, and the like, and the positions of the background layer and the foreground layer in pixel units. Are divided into a plurality of layers including at least three types of mask layers as information representing the image size, and the image sizes of the background layer and the foreground layer among these are determined in the horizontal direction as the predetermined line direction of the image during encoding, and Encoded image information representing an image reduced to 1 / m or 1 / n (where n and m are positive integers containing the same value) color information in the orthogonal vertical direction, respectively. The present invention relates to an image decoding device for decoding. In this image decoding apparatus, the code input to the code input unit is separated into the original layer by the code analysis / separation unit. However, except for the mask layer, the image size is reduced in the predetermined line direction of the image during compression (encoding). Are reduced to 1 / m or 1 / n in the horizontal direction and the vertical direction perpendicular thereto, and color information is assigned to each of them. For this reason, if this is simply decoded, the position of each pixel of the background layer and the foreground layer is correctly specified by the mask layer, but since each color is assigned only one by m × n pixel block, As described in the related art, the background colors are different from each other particularly at the boundary portion (peripheral portion) of each pixel block, which causes a problem that a pseudo line appears. Therefore, in the present invention, the color correction unit corrects the color of the background layer after expansion by the background layer expansion unit based on the arrangement pattern of the pixels of the background layer and the foreground layer determined by the mask layer determination unit in adjacent pixel blocks. I am trying to do it. That is, by performing color correction of the background layer corresponding to the arrangement pattern of the pixels of the background layer and the foreground layer in adjacent pixel blocks, the color of the boundary portion in the pixel block is made closer to that of the original image. As a result, it becomes possible to reduce or suppress the appearance of pseudo lines in the restored image after the synthesis by the layer synthesis means.
[0032]
In the image decoding apparatus according to the second aspect, in the image decoding apparatus according to the first aspect, the background layer expanding unit includes a background layer horizontal scaling unit that expands the background layer in a horizontal direction and a background that has been expanded by the background layer horizontal scaling unit. Background layer vertical scaling means for extending the layer in the vertical direction, foreground layer stretching means foreground layer horizontal scaling means for extending the foreground layer in the horizontal direction, and foreground layer stretched by the foreground layer horizontal scaling means in the vertical direction. And a foreground layer vertical scaling means for expanding the foreground layer.
[0033]
In other words, in the second aspect of the present invention, both the background layer decompression means and the foreground layer decompression means divide the layers in the horizontal direction and the vertical direction, perform scaling, and return to the original image size. Either the horizontal direction or the vertical direction may be processed first.
[0034]
According to a third aspect of the present invention, in the image decoding apparatus according to the first aspect, the color correction means converts the color of the background layer of the peripheral pixel in the m × n current pixel block to be subjected to the color correction. It is characterized by comprising a background color correcting means which is determined by the presence / absence of pixels constituting a foreground layer arranged in adjacent m × n pixel blocks.
[0035]
That is, according to the third aspect of the present invention, the color of the background layer of the peripheral pixel in the m × n current pixel block to be processed is arranged in another m × n pixel block adjacent to the current pixel block. It is determined based on the presence or absence of the pixels constituting the foreground layer to be set. For example, when the next pixel block adjacent to the current pixel block is composed of only the background layer, or when the pixel of the foreground layer is arranged at a position close to the current pixel block in the adjacent pixel block, the current pixel block depends on various situations. The color of the background layer of the peripheral pixel in the pixel block is corrected.
[0036]
According to a fourth aspect of the present invention, in the image decoding device according to the first aspect, the color correction unit is configured such that all pixels of a predetermined line in the m × n current pixel block for performing color correction are pixels of the background layer. When all pixels on the same line as the above-mentioned predetermined line in the next pixel block to be processed next to the current pixel block are all pixels of the background layer, the next pixel block on this line of the current pixel block The adjacent pixel averages the color of the pixel in the background layer for the next pixel block and the color of the pixel on the opposite side of the averaged pixel in the remaining pixels on the line in the current pixel block. Further, all the pixels except for the present pixel are characterized in that at least the color given as the background layer to the current pixel block is assigned as the background color.
[0037]
That is, the invention described in claim 4 is a further embodiment of the invention described in claim 3. The color correction unit is configured such that all pixels on a predetermined line in the m × n current pixel block for which color correction is performed are pixels of the background layer, and the above-described pixel in the next pixel block to be processed next which is adjacent to this current pixel block. When all the pixels on the same line as the predetermined line are the pixels on the background layer, the pixels on the background layer adjacent to the next pixel block average each other's colors, so that the colors when the colors are different from each other are obtained. The difference is decided to be reduced. In addition, for the remaining pixels excluding the pixels adjacent to the previous pixel block side as the previous block, the color represented by the original background layer is set.
[0038]
According to a fifth aspect of the present invention, in the image decoding apparatus according to the fourth aspect, a pixel located on the opposite side is averaged with a color given as a background layer to a previous pixel block processed before and adjacent thereto. It is characterized by performing.
[0039]
That is, in the fifth aspect of the present invention, the pixels adjacent to the previous pixel block described in the fourth aspect are averaged with the previous pixel block. As a result, the difference in color between the two colors can be reduced.
[0040]
According to a sixth aspect of the present invention, in the image decoding apparatus according to the first aspect, the color correction means includes a pixel of a background layer adjacent to a next pixel block to be processed next in the m × n current pixel block for performing color correction. And a comparing means for comparing the color distance of a pixel located on the same line as the pixel and located on the side closest to the current pixel block of the foreground layer in the next pixel block with a predetermined threshold value. The background layer foreground layer averaging means for averaging the color of the pixel of the background layer with the color of the pixel of the foreground layer when it is determined that the background layer is small.
[0041]
In other words, in the invention according to claim 6, the color distance (or color difference) between the pixel of the background layer adjacent to the next pixel block and the pixel located closest to the current pixel block of the foreground layer is set to the threshold (the threshold). Value). Generally, the Euclidean distance is used for the comparison. If the color distance is smaller than the threshold and the colors are similar, the color of the pixel in the background layer is averaged with the color of the pixel in the foreground layer. This is because, in the case of the foreground color, the colors before and after do not mix, so that color deterioration does not occur, and smoothing using the foreground color makes the color change between pixel blocks smooth. is there.
[0042]
According to a seventh aspect of the present invention, in the image decoding apparatus according to the first aspect, when the background layer sandwiched between the foreground layers is present in the m × n current pixel block for performing the color correction, Is set as the color of the background layer of the current pixel block irrespective of the state of the color of the adjacent pixel block, and for the background layer near the next pixel block to be processed next, the pixel depends on the state of the next pixel block. Is smoothed.
[0043]
That is, in the invention according to claim 7, the background color of the current pixel block is all assigned to the pixel values of the background layer sandwiched between the foreground layers in the current pixel block.
[0044]
According to the invention of claim 8, (a) the image is a background layer representing the color information of the plane image, a foreground layer representing the color information of characters, lines, edges and the like, and a pixel unit of the background layer and the foreground layer. The image is divided into a plurality of layers including at least three types of mask layers as information representing the position, and the image sizes of the background layer and the foreground layer among these are determined in the horizontal direction as the predetermined line direction of the image at the time of encoding. Coded image information representing an image reduced to 1 / m or 1 / n (where n and m are positive integers including the same value) color information in the vertical direction orthogonal to (B) a code analysis separating step of analyzing the code input in the code input step and separating the codes into a plurality of layers, respectively. A background layer decoding step of decoding the background layer separated by the code analysis separation step, a foreground layer decoding step of decoding the foreground layer separated by the code analysis separation step, and a (e) code analysis separation step. A mask layer decoding step of decoding the separated mask layer; and (f) each pixel forming a block of m × n pixel blocks based on the mask layer decoded by the mask layer decoding step is a background layer. (G) a background layer extending step for extending the background layer; (h) a foreground layer extending step for extending the foreground layer; Background determined in the mask layer determination step between adjacent pixel blocks A color correction step of correcting the color of the background layer after expansion by the background layer expansion means based on the arrangement pattern of the pixels of the layer and the foreground layer; and (nu) a background expanded by the background layer expansion step and corrected by the color correction step A layer synthesizing step of synthesizing the layer and the foreground layer decompressed by the foreground layer decompression means based on the position information determined by the mask layer determination means to restore an image is provided in the image decoding method.
[0045]
That is, in the invention according to claim 8, an image is a background layer representing color information of a plane image, a foreground layer representing color information of characters, lines, edges, and the like, and positions of the background layer and the foreground layer in pixel units. Are divided into a plurality of layers including at least three types of mask layers as information representing the image size, and the image sizes of the background layer and the foreground layer among these are determined in the horizontal direction as the predetermined line direction of the image during encoding, and Encoded image information representing an image reduced to 1 / m or 1 / n (where n and m are positive integers containing the same value) color information in the orthogonal vertical direction, respectively. The present invention relates to an image decoding method for decoding. In this image decoding method, a code input in a code input step is separated into an original layer in a code analysis separation step. Except for a mask layer, the image size is reduced during compression (coding) in a predetermined line direction of the image. Are reduced to 1 / m or 1 / n in the horizontal direction and the vertical direction perpendicular thereto, and color information is assigned to each of them. For this reason, if this is simply decoded, the position of each pixel of the background layer and the foreground layer is correctly specified by the mask layer, but since each color is assigned only one by m × n pixel block, As described in the related art, the background colors are different from each other particularly at the boundary portion (peripheral portion) of each pixel block, which causes a problem that a pseudo line appears. Therefore, in the present invention, the color of the background layer after expansion by the background layer expansion unit is corrected based on the arrangement pattern of the pixels of the background layer and the foreground layer determined in the mask layer determination step between adjacent pixel blocks in the color correction step. I am trying to do it. That is, by performing color correction of the background layer corresponding to the arrangement pattern of the pixels of the background layer and the foreground layer in adjacent pixel blocks, the color of the boundary portion in the pixel block is made closer to that of the original image. As a result, it becomes possible to reduce or suppress the appearance of pseudo lines in the restored image after the synthesis by the layer synthesis means.
[0046]
BEST MODE FOR CARRYING OUT THE INVENTION
First, an embodiment of the present invention will be described.
[0047]
FIG. 1 shows the configuration of an image decoding apparatus according to an embodiment of the present invention. In the present embodiment, it is assumed that an image is restored using information encoded by the image encoding device 100 (see FIG. 15) described above. In the image decoding apparatus 200, an input code 201 is input to a code analysis / separation unit 202. The code analysis / separation unit 202 analyzes the input code 201 and outputs code data 203 to 205 of each of the mask layer, the background layer and the foreground layer, and other necessary parameters. Here, the mask layer is a layer representing positional information such as characters and edges, the foreground layer is a layer representing a line image, and the background layer is a layer representing a plane image.
[0048]
The code data 203 of the mask layer is input to the mask layer decoding unit 207. The mask layer decoding section 207 expands the mask layer using the code data 203 of the mask layer. Background layer code data 204 is input to background layer decoding section 208. The background layer decoding unit 208 expands the background layer using the encoded data 204 of the background layer. Code data 205 of the foreground layer is input to foreground layer decoding section 209. The foreground layer decoding unit 209 expands the foreground layer using the code data 205 of the foreground layer.
[0049]
The image data 211 of the mask layer expanded by the mask layer decoding unit 207 is input to the mask layer determination unit 212. The mask layer determination unit 212 determines whether the corresponding image is a background image or a foreground image using the image of the expanded mask layer image data 211. Since the image data of the mask layer itself has not been reduced by the image encoding device 100 (see FIG. 15), the expanded image data 211 of the mask layer has not deteriorated.
[0050]
The determination result 213 of the mask layer determination unit 212 is input to the background layer horizontal scaling unit 214 and the foreground layer horizontal scaling unit 215, respectively. The background layer image 216 expanded by the background layer decoding unit 208 and the foreground layer image 217 expanded by the foreground layer decoding unit 209 are also input to the background layer horizontal scaling unit 214, and horizontal scaling is performed using these. . The foreground layer horizontal scaling unit 215 receives the determination result 213, the foreground layer image 217 and the background layer image 216, and performs scaling of the foreground layer. The pixel value 218 processed by the background layer horizontal scaling unit 214 is input to the background layer vertical scaling unit 219, and the pixel value 221 processed by the foreground layer horizontal scaling unit 215 is input to the foreground layer vertical scaling unit 222.
[0051]
The determination result 223 of the mask layer determination unit 212 is also input to the background layer vertical scaling unit 219 and the foreground layer vertical scaling unit 222. The background layer vertical scaling unit 219 vertically scales the pixel value 218 processed by the background layer horizontal scaling unit 214. Similarly, the foreground layer vertical scaling unit 222 vertically scales the pixel value 221 processed by the foreground layer horizontal scaling unit 215. The vertically scaled background layer 225 and foreground layer 226 are synthesized by the layer synthesizing unit 228 according to the mask layer 227 determined by the mask layer determining unit 212, and a restored image 229 in which the appearance of pseudo lines is suppressed is obtained. It is supposed to be.
[0052]
Next, the operation of the image decoding apparatus 200 will be described more specifically. The input code 201 input to the code analysis / separation unit 202 is information encoded by the image encoding device 100 shown in FIG. Of course, such information need not be directly input from the image encoding device 100. For example, it may be obtained through a communication device or a communication module such as a personal computer (not shown) connected to the Internet or a file transfer device (not shown) connected to a communication line (not shown), or a personal computer or the like by the same method. May be code data encoded by the device of (1). The input code 201 is reproduced by a reproducing apparatus from a recording medium such as a memory (not shown) in which the code data is once stored or a CD (Compact Disc) or a DVD (Digital Versatile Disc) in which the code data is written. May be input.
[0053]
The code analysis / separation unit 202 analyzes the input code 201 and separates the input code 201 into each of a mask layer, a background layer, and a foreground layer. In the present embodiment, the image sizes of the background layer and the foreground layer are both reduced, and are smaller than those of the mask layer.
[0054]
The mask layer decoding unit 207 performs a mask layer decompression process using the input code data 203. Generally, the mask layer is a binary image. For this reason, the mask layer decoding unit 207 itself includes MH (Modified Huffman), MR (Modified READ (Relative Element Address)), MMR (Modified Modified Read), JBIG (Joint Bio-Jig-Bi-Je-Gig-Bridge, JBIG (Joint-Bi-Jo-Bug-Jo-Bi-J-Bi-Gi-J-Bi-J-Bi-Gi-Bi-J-Bi-Gi-Bi-J-Bi-Gi-Jo-Bi-Gi-Jo-Bi-J-Bi-Gi-Jo-Bi-J-Bi-Gi-Bi-Jo-Big-JoBi-Jo-Big-Jo-BiG)). The decoder is compatible with a binary coding scheme such as level Image experts group 2). In addition, when the image coding apparatus 100 (see FIG. 15) performs the coding, if the mask layer is not compressed, it is not necessary to expand the mask layer.
[0055]
The background layer decoding unit 208 shown in FIG. 1 expands the background layer using the code data 204 of the background layer separated by the code analysis / separation unit 202 (corresponding to the plane image color information code 119 of the background layer in FIG. 15). Perform processing. Similarly, the foreground layer decoding unit 209 uses the foreground layer code data 205 (corresponding to the line image color information code 112 of the foreground layer in FIG. 15) separated by the code analysis / separation unit 202 to expand the foreground layer. Do. Here, the background layer and the foreground layer are generally configured as a multi-valued image. For this reason, a decoder compatible with a multi-level encoding method such as JPEG (Joint Photographic Experts Group) or JPEG2000 (Joint Photographic Experts Group 2000) is used.
[0056]
The image data 211 of the mask layer decompressed by the mask layer decoding unit 207 is input to the mask layer determination unit 212, and it is determined whether the corresponding image is a background image or a foreground image. Here, the determination for each pixel block is performed together with the determination for each pixel. For example, it is assumed that the background layer is reduced to 1 / m in the horizontal direction and 1 / n in the vertical direction. In this example, one pixel of the background layer corresponds to m × n pixels of the mask layer. Here, a set of m × n pixels is one pixel block. The mask layer determination unit 212 according to the present embodiment determines whether all of the horizontal m pixels forming the pixel block belong to the background layer, or whether the background layer and the foreground layer are mixed. Also, in the vertical direction, it is determined whether all the n pixels belong to the background layer or whether the background layer and the foreground layer are mixed. Since these determination results 213 and 223 are used in the subsequent processing, they are stored in a memory (not shown) constituting a part of the image decoding device 200.
[0057]
The background layer horizontal scaling unit 214 performs horizontal scaling of the background layer using the determination result 213 of the mask layer determination unit 212. The state of this scaling will be described with a specific example. In this example, a case will be described in which the values m and n are both “8”, and the background layer is reduced to 1/8 in both the horizontal and vertical directions.
[0058]
FIG. 2 shows some pixel arrangements on a target line to be subjected to image restoration processing in pixel block units. Here, the current pixel block is a one-pixel block composed of 8 × 8 pixels to be processed, and in the drawing, eight pixels on a specific target line are shown. The next pixel block is a pixel block located next to the current pixel block on the right side in the drawing next to the current pixel block, and FIG. 2 shows eight pixels existing on the same target line. In these figures, a white square (□) indicates the position of the background layer, that is, the position of the pixel where the plane image exists. The square of the halftone dot indicates the position of the foreground layer, that is, the position of the pixel where the line image exists. Also, the pixels of the background layer in the current pixel block are represented as Cb (x, y), and the pixels of the foreground layer in the current pixel block are represented as Cf (x, y). Also, let the pixels of the background layer of the next pixel block be represented by Cb (x + 1, y) and the pixels of the foreground layer of the next pixel block be represented by Cf (x + 1, y). Here, the pixel indicated by (x, y) does not correspond to a pixel of an image to be finally decoded, but in this case corresponds to a pixel that is reduced to one eighth. That is, one pixel of the background layer or the foreground layer corresponds to eight pixels of the mask layer.
[0059]
First, consider the case where the current pixel block on the target line includes only the background layer of the plane image as shown in FIG. In this example, there is no foreground layer. Therefore, the boundary pixel portion 241 adjacent to the next pixel block adjacent to the current pixel block on the right side in the drawing and the boundary pixel portion 242 adjacent to the previous pixel block (not shown) adjacent to the current pixel block on the left side in the drawing with respect to the current pixel block. A color Cb (x, y) of the corresponding background layer is assigned to each of the removed pixels. The border pixel portion 241 is averaged using the pixel value of the background layer of the border portion with reference to the next pixel block. Similarly, averaging is performed on the boundary pixel portion 242 using the pixel value of the background layer of the boundary portion with reference to the previous pixel block. For example, if the pixel value of the pixel in the boundary pixel portion 241 is RE, the rightmost boundary value RE 'after averaging is expressed by the following equation (1). Further, assuming that the pixel value of the pixel in the boundary pixel portion 242 is LE, the left end boundary value LE 'after averaging is expressed by the following equation (2) when averaging is performed on a two-to-one basis. Of course, the averaging ratio is not limited to this. Generally, when averaging is performed on an I-to-J basis, equations (1) and (2) become equations (1) 'and (2)'.
[0060]
RE '= (RE + 2 * Cb (x, y)) / 3 (1)
LE '= (LE + 2 * Cb (x, y)) / 3 (2)
RE '= (J * RE + I * Cb (x, y)) / (I + J) (1)'
LE '= (J * LE + I * Cb (x, y)) / (I + J) (2)'
[0061]
This is the principle of image restoration. However, in the image decoding apparatus 200 according to the present embodiment, even if the current pixel block on the target line is entirely composed of pixels of the background layer, as described in the following FIGS. Consider the relationship between the next pixel block adjacent to the current pixel block on the right side in the figure and the previous pixel block not shown adjacent to the current pixel block on the left side in the figure. This prevents or suppresses a pseudo line or discoloration which has conventionally occurred in the boundary pixel portions 241 and 242 located at the boundary between the current pixel block and the next pixel block or the previous pixel block.
[0062]
For this reason, the following two methods are employed in the present embodiment. First, for the previous pixel block whose processing precedes the current pixel block in time, the boundary pixel portion 242 is generated using the right edge boundary value generated in the processing of the previous pixel block and the background value of the current pixel block. Of the background layer Cb (x, y). Next, for the next pixel block to be processed next to the current pixel block, the color of the background layer of the other boundary pixel portion 241 is determined using the background value of the current pixel block and the left edge boundary value of the next pixel block. Cb (x, y) is assigned. That is, the background color Cb (x, y) of the boundary pixel portion 241 is determined with reference to one adjacent pixel in the next pixel block for the right end portion in the drawing of the current pixel block. Determines the background color Cb (x, y) of the boundary pixel portion 242 with reference to one adjacent pixel in the previous pixel block. This will be described more specifically with examples of the current pixel block and the next pixel block.
[0063]
First, as shown in FIG. 2B, a case will be described in which both the current pixel block and the next pixel block are all composed of pixels representing only the background as a plane image. In this case, the left end of the next pixel block naturally has the background color. Therefore, the right end boundary value RE of the boundary pixel portion 241 of the current pixel block has the content shown by the following equation (3).
[0064]
RE = Cb (x + 1, y) (3)
[0065]
Next, a case will be described in which the next pixel block includes at least one pixel or more of a foreground layer, that is, a line image, as shown in FIG. This is a case where at least one pixel of the next pixel block has a pixel whose value of the mask layer is “1”. In this embodiment, in this case, the color distance between the pixel Cb (x, y) of the background layer of the current pixel block and the pixel Cf (x + 1, y) of the foreground layer of the next pixel block is smaller than a predetermined threshold value, and It is divided into cases other than.
[0066]
First, a case where the color distance between the pixel Cb (x, y) of the background layer of the current pixel block and the pixel Cf (x + 1, y) of the foreground layer of the next pixel block is smaller than a predetermined threshold will be described. Here, being smaller than the predetermined threshold means that the background color of the current pixel block and the foreground color of the next pixel block can be regarded as having similar colors. In such a case, the pixel corresponding to the first foreground as viewed from the left end of the next pixel block (the pixel shown by a halftone dot) is a virtual boundary (change point) with the background color continuing from the current pixel block. ). In the image area separation processing of an image, pixels before and after a color change at a color change point are recognized. Therefore, even if it is extracted as the foreground, it may be the same color as the background color before or after it. Therefore, in such a case, the present embodiment uses the foreground color instead of the background color of the next pixel block. The reason is that if the background color is used instead of the foreground color in the reduction process on the encoder side, the colors before and after the boundary are also averaged in the pixel block together, and the colors before and after are mixed. This is because color deterioration occurs. In the case of the foreground color, the colors before and after do not mix with each other, so that such color deterioration does not occur. Therefore, by performing smoothing using the foreground color, a change in color between pixel blocks becomes smooth. For this reason, the right end boundary value in the boundary pixel portion 241 is calculated as the foreground value of the next pixel block. Accordingly, the right end boundary value RE of the boundary pixel portion 241 of the current pixel block has the content shown by the following equation (4). However, this is the case where the averaging ratio is 1: 1. In the case of other ratios, the coefficients on the right side and the values of the denominator differ as shown in the equations (1) 'and (2)'.
[0067]
RE = (Cf (x + 1, y) + Cb (x + 1, y)) / 2 (4)
[0068]
Next, a case where the color distance between the pixel Cb (x, y) of the background layer of the current pixel block and the pixel Cf (x + 1, y) of the foreground layer of the next pixel block is equal to or larger than a predetermined threshold will be described. I do. This is a case where the background color of the current pixel block and the foreground color of the next pixel block can be regarded as not approximate. In this case, the pixel corresponding to the first foreground as viewed from the left of the next pixel block is not the boundary (change point) of the background color continuing from the current pixel block. Therefore, in this case, the right edge boundary value RE is simply calculated as the background color of the next pixel block and the background value of the next pixel block. In this case, the right end boundary value RE of the boundary pixel portion 241 of the current pixel block has the content shown by the following equation (5).
[0069]
RE = Cb (x + 1, y) (5)
[0070]
When a foreground pixel is located at the head (left end position) of the next pixel block as shown in FIG. 2D, the right end boundary value of the current pixel block is set to the background value of the current pixel block. That is, in this case, no smoothing is performed. In this case, the area continuing from the background of the current pixel block ends with the current pixel block. In this case, only the background exists in the current pixel block. Therefore, calculation of the left edge value (LE) for the next pixel block simply substitutes the background color of the current pixel block. In this case, the right end boundary value RE of the boundary pixel portion 241 of the current pixel block has the content shown by the following equation (6).
[0071]
RE = Cb (x, y) (6)
[0072]
Using the right edge boundary value RE of the boundary pixel portion 241 and the left edge boundary value LE of the boundary pixel portion 242 obtained as described above, a value after scaling is determined for the background layer of the current pixel block.
[0073]
Next, a case where the current pixel block includes at least one pixel in the foreground layer as shown in FIG. The principle in the case where the current pixel block includes at least one pixel in the foreground layer is as follows. The foreground color (Cf (x, y)) of the previous pixel block is assigned to a pixel having “1” indicating the foreground layer on the mask layer. A background color (Cb (x, y)) is assigned to a pixel having “0” indicating the background layer on the mask layer.
[0074]
In order to further improve the image quality, processing is performed for each of the regions (f), (g), and (h) separated by the foreground color. Specifically, the following processing is performed.
[0075]
First, as shown in FIG. 11 (f), for the background layer immediately before the first foreground layer (halftone dot portion) as viewed from the left end of the current pixel block, the boundary pixel portion obtained from the previous pixel block excluding both ends is excluded. 241 is the right end boundary value RE. That is, the value of the right end boundary value in the previous pixel block obtained by the operation of the previous pixel block is assigned. However, the leftmost boundary pixel portion 242 of the current pixel block shown in FIG. 7F is updated after the processing of the previous pixel block and the rightmost boundary value for the previous pixel block obtained by the calculation of the previous pixel block. Smoothing is performed using the left boundary value for the current pixel block. No smoothing is performed on the rightmost pixel of the boundary pixel portion shown in FIG. After the calculation, the calculation of the next background layer is performed.
[0076]
Note that the left end boundary value is the pixel value L updated in the previous pixel block, the right end boundary value is the right end boundary value used in the previous pixel block, and the left end boundary value need not be updated. The first foreground pixel as viewed from the left in the part (f) of FIG. 9 is determined as an edge in the processing of the previous pixel block, and is already reflected in the right end boundary value of the previous pixel block. So use it.
[0077]
As shown in FIG. 11G, the pixel values of the background layer sandwiched between the foreground layers in the current pixel block are all assigned the background color (Cb (x, y)) of the current pixel block. Then, the calculation of the next background layer is performed. That is, the smoothing process is not performed on the background layer sandwiched between these foreground layers, and the left boundary value of the next pixel block and the right boundary value of the previous pixel block are not used. Also, there is no need to update the left end boundary value. In this case, a background color is simply assigned.
[0078]
In the case of the pixels in the area shown in FIG. 11H, the cases are classified as shown in FIGS. First, when the next pixel block is only the background layer as shown in FIG. 7I, the right end boundary value RE of the boundary pixel portion 241 of the current pixel block has the content shown by the following equation (7).
[0079]
RE = Cb (x + 1, y) (7)
That is, since the next pixel block has only the background, the background color of the next pixel block is used. Then, by comparing the color distances, a smoothing process is selected as follows.
[0080]
First, when the color distance between the foreground layer value Cf (x, y) of the current pixel block and the background layer value Cb (x + 1, y) of the next pixel block is smaller than the threshold value, the portion of the current pixel block shown in FIG. The foreground layer pixel adjacent to the left side is regarded as a boundary (change point: edge) to an area following the background layer of the next pixel block. Therefore, the foreground value of the current pixel block is selected as the left end boundary value of the area shown in FIG. The reason for this has already been explained. In this case, the left end boundary value of the next pixel block is used as the color of the pixel in this area. The smoothing process of the right end of the area shown in FIG. 11H is performed between the foreground value of the current pixel block and the background value of the next pixel block as in the following equation (8). However, this is the case where the averaging ratio is 1: 1. In the case of other ratios, the coefficients on the right side and the values of the denominator differ as shown in the equations (1) 'and (2)'.
[0081]
LE = (Cf (x, y) + Cb (x, y)) / 2 (8)
[0082]
When the color distance between the foreground layer value Cf (x, y) of the current pixel block and the background layer value Cb (x + 1, y) of the next pixel block is equal to or larger than the threshold, the next pixel block is explained in the same way as described with reference to FIG. Is set as the background value of the current pixel block, and this left end boundary value is set as the color of the pixel in the area shown in FIG. This is represented by equation (9).
[0083]
LE = Cb (x, y) (9)
[0084]
Further, the smoothing processing of the right end of the area shown in FIG. 11H is performed between the background value of the current pixel block and the background value of the next pixel block. In calculating the left edge boundary value (LE) for the next pixel block, the left edge boundary value obtained in the area shown in FIG. 11H is substituted as the left edge boundary value of the next pixel block.
[0085]
Next, a case where the next pixel block includes at least one pixel or more of the foreground layer as shown in FIG. In other words, there is a case where at least one pixel has a pixel whose mask layer value is “1”. In this case, first, the color distance between the pixel value Cf (x, y) of the foreground layer of the current pixel block and the pixel value Cb (x + 1, y) of the background layer of the next pixel block is compared.
[0086]
As a result, when the color distance between them is smaller than the threshold value, the last foreground layer pixel of the current pixel block is regarded as a boundary (change point) to an area following the background layer of the next pixel block. The left end boundary value of the area shown in FIG. 11H is expressed by equation (10). However, this is the case where the averaging ratio is 1: 1. In the case of other ratios, the coefficients on the right side and the values of the denominator differ as shown in the equations (1) 'and (2)'.
[0087]
LE = (Cf (x, y) + Cb (x, y)) / 2 (10)
[0088]
When the color distance between the foreground layer value Cf (x, y) of the current pixel block and the background layer value Cb (x + 1, y) of the next pixel block is equal to or larger than the threshold, the left end boundary value of the area shown in FIG. (11).
[0089]
LE = Cb (x, y) (11)
[0090]
Next, the color distance between the pixel value Cf (x + 1, y) of the foreground layer of the next pixel block and the pixel value Cb (x, y) of the background layer of the current pixel block is compared. As a result, when the color distance between the foreground layer value Cf (x + 1, y) of the next pixel block and the background layer value Cb (x, y) of the current pixel block is smaller than the threshold, the first foreground layer pixel of the next pixel block is It is regarded as a boundary (change point) of a region following the background layer of the current pixel block. Therefore, the boundary value at the right end of the area shown in FIG. 7H is expressed by the following equation (12). However, this is the case where the averaging ratio is 1: 1. In the case of other ratios, the coefficients on the right side and the values of the denominator differ as shown in the equations (1) 'and (2)'.
[0091]
RE = (Cf (x + 1, y) + Cb (x + 1, y)) / 2 (12)
[0092]
When the color distance between the foreground layer value Cf (x + 1, y) of the next pixel block and the background layer value Cb (x, y) of the current pixel block is equal to or larger than the threshold, the right end boundary value of the next pixel block is set for the same reason as above. Background value. This is represented by the following equation (13).
[0093]
RE = Cb (x + 1, y) (13)
[0094]
However, when the foreground pixel is located at the head of the next pixel block as shown in FIG. 9K, the pixel value of the rightmost boundary pixel portion 241 of the current pixel block is set as the background value of the current pixel block. .
[0095]
Using the left end boundary values LE and RE of the current pixel block obtained as described above, the pixel value of the background layer of the current pixel block after scaling is determined. The value of the background layer of the current pixel block is represented by the left end boundary value LE except for the right end boundary pixel portion 241. The rightmost boundary pixel portion 241 is a value averaged using the leftmost boundary value LE and the rightmost boundary value RE.
[0096]
Returning to FIG. 1, the description will be continued. The foreground layer horizontal scaling unit 215 performs horizontal scaling on the foreground layer using the determination result 213 of the mask layer determination unit 212. This example will be described. In the basic scaling of the foreground layer, the pixels of the foreground layer of the current pixel block are given by the pixel values Cf (x, y) of the foreground layer of the current pixel block. However, when the foreground layer is continuous between the pixel blocks, the pixel value of the rightmost foreground layer of the current pixel block is the pixel value Cf (x, y) of the foreground layer of the current pixel block and the pixel value Cf (x) of the next pixel block. x + 1, y). The pixel value of the leftmost foreground layer is given by a value averaged using the pixel value Cf (x, y) of the foreground layer of the current pixel block and the pixel value Cf (x-1, y) of the foreground layer. .
[0097]
Each layer horizontally scaled by the background layer horizontal scaling unit 214 and the foreground layer horizontal scaling unit 215 is processed by the background layer vertical scaling unit 219 and the foreground layer vertical scaling unit 222 when the processing for the pixel blocks in the vertical direction ends. Vertical scaling processing is performed for each. The basic scaling method is the same as in the horizontal direction described above. However, in the determination of the condition such as the case classification, the value before the horizontal scaling is used, and when actually assigning a value to each pixel, an average value with the value after the horizontal scaling is taken.
[0098]
As described above, the background layer 225 and the foreground layer 226 obtained by being processed by the background layer vertical scaling unit 219 and the foreground layer vertical scaling unit 222 are combined with the layer combination unit 228 according to the mask layer 227 determined by the mask layer determination unit 212. To obtain a restored image 229 in which the appearance of pseudo lines is suppressed.
[0099]
The above is the description of the image decoding device 200 according to the present embodiment. In the image decoding device 200, only the end of the pixel block is subjected to the smoothing process. On the other hand, it is possible to add image processing that changes step by step in each part in the pixel block, thereby further improving the image quality.
[0100]
Furthermore, in this embodiment, the scaling process is performed separately for horizontal scaling and vertical scaling. However, by performing these processes simultaneously, the image quality can be improved. In this case, the area is determined in consideration of the state of the next pixel block in the horizontal direction, the next pixel block in the vertical direction, and the next pixel block in the oblique direction with respect to the current pixel block.
[0101]
Further, in this embodiment, the image decoding device 200 has been described as hardware, but the image decoding process can be realized by software. This will be specifically described in the following embodiment.
[0102]
【Example】
Next, an embodiment of the present invention will be described. Note that the image decoding apparatus used in this embodiment implements the image decoding apparatus 200 described in FIG. 1 with software. The configuration includes a CPU (Central Processing Unit) (not shown), a storage medium storing a control program, an interface circuit for data input / output, and the like. The control program is stored in a device such as a personal computer or a workstation. Is realized by executing. Therefore, the illustration of the image decoding apparatus according to the present embodiment is omitted, and the description will be given with reference to the drawings used in the above embodiments and the like as appropriate. Each pixel block is assumed to be composed of n × m pixels.
[0103]
FIG. 3 shows an example of the input image as the original image shown in FIG. The input image 301 is composed of relatively thick pink characters “2002 NO. 363”.
[0104]
4 to 6 show images of a mask layer, a background layer, and a foreground layer for an input image, respectively. The image 303 of the background layer shown in FIG. 5 and the image 304 of the foreground layer shown in FIG. 6 are respectively reduced from the image 302 of the mask layer shown in FIG. However, FIGS. 5 and 6 are shown larger than the actual reduction ratio for convenience of illustration.
[0105]
FIG. 7 shows the flow of the scaling process in the horizontal (line) direction described in FIG. 2 in this embodiment. First, the boundary value of the start point of the leftmost image of the first pixel block in the input image is initialized (step S401). At the beginning of the line, the left side is outside the image, so the initialization is compulsorily performed. Then, all the pixel values in the pixel block are set as the background color (step S402). As described above, the image decoding apparatus according to the present embodiment basically performs processing of first filling the entire area of the image to be restored with the background color, and then replacing the position indicated by the mask layer with the foreground color. Has become. This eliminates the need for performing background processing later.
[0106]
After the processing in step S402 is performed, it is next checked whether or not the corresponding line of the current pixel block is composed of only the background (step S403). If the current pixel block is composed of only the background as shown in FIG. 2A (Y), the first current pixel block processing for the background pixel block is performed (step S404). Regarding this, a specific processing flow will be described later. On the other hand, when the current pixel block is composed of the background and foreground as shown in FIG. 2E (step S403: N), the first current pixel block processing for the background and foreground pixel blocks is performed (step S403). Step S405). For this, a specific processing flow will be described later.
[0107]
When the processing of step S404 or S405 is performed, the foreground color is arranged for the corresponding line of the pixel block (step S406), and it is checked whether the processing of all the pixel blocks related to the relevant line has been completed (step S406). If it is not completed (N in step S407), the process returns to step S402, and the same processing is performed for the next pixel block of the line. In this way, the processing of the corresponding line up to the rightmost pixel block is completed (step S407: Y).
[0108]
FIGS. 8 and 9 show the flow of the first current pixel block process at the time of the background pixel block in which the current pixel block shown in step S404 of FIG. 7 is composed of only the background. In this process, first, a pixel value for the left end is calculated using the left end boundary value and the background value of the current pixel block (step S421 in FIG. 8). Then, it is determined whether the next pixel block is also composed only of the background (step S422). As shown in FIG. 2B, when the next pixel block also includes only the background (Y), the color difference (color distance) D between the background value of the current pixel block and the background value of the next pixel block is D. BB Is calculated (step S423). And this color difference D BB Is a predetermined threshold TH BB If it is larger than (step S424: Y), the left end boundary value is set as the background value of the next pixel block (step S425).
[0109]
On the other hand, in step S424, the color difference D BB Is the threshold TH BB If it is less than (N), the right end boundary value is set as the background value of the next pixel block. Also, the rightmost pixel value is calculated using the rightmost boundary value and the background value of the current pixel block. The left end boundary value is set as the background value of the current pixel block (step S426).
[0110]
On the other hand, when the next pixel block includes the foreground as shown in FIG. 2C or FIG. 2D (step S422: N), the first pixel of the next pixel block is the foreground pixel. It is determined whether or not it is (step S427 in FIG. 9). If so (Y), the left end boundary value is set as the background value of the next pixel block (step S428).
[0111]
On the other hand, if the first pixel of the next pixel block is not a foreground pixel (step S427: N), the color difference D between the background value of the current pixel block and the foreground value of the next pixel block is obtained. BF Is calculated (step S429). And this color difference D BF Is a predetermined threshold TH BF If it is larger than (step S430: Y), the left end boundary value is set as the background value of the next pixel block (step S431).
[0112]
On the other hand, the color difference D BF Is a predetermined threshold TH BF If it is less than (step S430: N), the right end boundary value RE is set as the following equation (21). However, the values i and j represent the ratio of two pixels when smoothing (averaging) is performed between the two pixels.
[0113]
RE = (background value of current pixel block × i + foreground value of next pixel block × j) / (i + j) (21)
[0114]
The right end is calculated using the right end boundary value and the background value of the current pixel block. Further, the left end boundary value LE is set as the following expression (22) (step S432).
[0115]
LE = (background value of current pixel block × j + foreground value of next pixel block × i) / (i + j) (22)
[0116]
FIGS. 10 and 11 show the flow of the first current pixel block process at the time of the background and foreground pixel blocks shown in step S405 of FIG. In this case, first, the position of the first foreground pixel in the pixel block is searched from the left end (step S451 in FIG. 10). Then, it is checked whether the foreground pixel is the first pixel of the current pixel block (step S452). If not (N), the color difference D BF Is a predetermined threshold TH BF If it is less than (step S453: N), the pixels from the head to just before the foreground pixel are set as the right edge boundary values. Then, the left end is calculated using the right end boundary value and the left end boundary value. The left end boundary value is set as the background value of the current pixel block (step S454). Then, the position of the next foreground pixel is searched (step S455). If this is not the last foreground pixel in the pixel block (step S456: N), the process returns to step S455 to perform the search. If the foreground pixel is the first pixel of the current pixel block in step S452 (Y), and if the color difference D BF Is a predetermined threshold TH BF If the above is the case (Y), the process proceeds to step S455.
[0117]
If it is determined in step S456 that the pixel is the last foreground pixel in the pixel block (Y), it is determined whether or not it is located at the rightmost end of the pixel block (step S457 in FIG. 11). If it is located at the rightmost end (Y), the process ends at that point (end). Otherwise (N), it is determined whether or not the next pixel block is composed of only the background (step S458). If the next pixel block is composed of only the background (Y), the second current pixel block process for the background pixel block is executed (step S459). On the other hand, when the next pixel block includes the foreground pixel block (step S458: N), the second current pixel block process for the background and the foreground pixel block is executed (step S460).
[0118]
FIG. 12 shows the contents of the second current pixel block processing at the time of the background pixel block shown in step S459 of FIG. In this process, first, the color difference D between the foreground value of the current pixel block and the background value of the next pixel block is calculated. FB Is calculated (step S471). And this color difference D FB Is a predetermined threshold TH FB It is determined whether this is the case (step S472). Threshold value TH FB If (Y), the color difference D between the background value of the current pixel block and the background value of the next pixel block BB Is calculated (step S473). And this color difference D BB Is the threshold TH BB If so (step S474: Y), the left end boundary value is set as the background value of the next pixel block (step S475).
[0119]
On the other hand, in step S474, the color difference D BB Is the threshold TH BB If it is less than (N), the right end boundary value is set as the background value of the next pixel block. Further, the right edge calculation is performed using the right edge boundary value and the background value of the current pixel block, and the left edge boundary value is set as the background value of the current pixel block (step S476).
[0120]
Finally, at step S472, the color difference D FB Is a predetermined threshold TH FB If it is less than (N), the left end boundary value LE is set as in the following equation (23).
[0121]
LE = (foreground value of current pixel block × i + background value of next pixel block × j) / (i + j) (23)
[0122]
In addition, pixels in the pixel block after the last foreground are set as left end boundary values. The right end boundary value is set as the background value of the next pixel block, the right end is calculated using the left end boundary value and the right end boundary value, and the left end boundary value LE is set as the following equation (24) (step S477).
[0123]
LE = (foreground value of current pixel block × j + background value of next pixel block × i) / (i + j) (24)
[0124]
FIGS. 13 and 14 show the flow of the second current pixel block process at the time of the background and foreground pixel blocks in step S460 of FIG. In this process, it is first determined whether or not the first pixel of the next pixel block is a foreground pixel (step S491 in FIG. 13). If the pixel is a foreground pixel (Y), the left end boundary value is set as the background value of the next pixel block (step S492).
[0125]
If the first pixel of the next pixel block is not the foreground pixel (step S491: N), the color difference D between the foreground value of the current pixel block and the background value of the next pixel block is obtained. FB And the color difference D between the background value of the current pixel block and the foreground value of the next pixel block. BF Is calculated (step S493). And the former color difference D FB Is a predetermined threshold TH FB If the above is the case (step S494: Y), the latter color difference D BF Is a predetermined threshold TH BF It is determined whether it is the above or not (step S495), and the threshold value TH is determined. BF If the above is the case (Y), the left end boundary value is set as the background value of the next pixel block (step S496). Threshold value TH BF If it is less than (step S495: N), the right end boundary value RE is set as the following equation (25).
[0126]
RE = (background value of current pixel block × i + foreground value of next pixel block × j) / (i + j) (25)
[0127]
Further, the right end calculation is performed using the right end boundary value and the background value of the current pixel block, and the left end boundary value LE is set as the following equation (26) (step S497).
[0128]
LE = (background value of current pixel block × j + foreground value of next pixel block × i) / (i + j) (26)
[0129]
On the other hand, in step S494, the former color difference D FB Is a predetermined threshold TH FB If it is determined to be less than (N), the latter color difference D BF Is a predetermined threshold TH BF It is determined whether the above is the case (step S498 in FIG. 14), and the threshold value TH is determined. BF If this is the case (Y), the left end boundary value LE is set as the following equation (27).
[0130]
LE = (foreground value of current pixel block × i + background value of next pixel block × j) / (i + j) (27)
[0131]
Further, the pixels in the pixel block after the last foreground are set as the left edge boundary value, and the right edge boundary value is set as the background value of the next pixel block. Further, the right end is calculated using the left end boundary value and the right end boundary value, and the left end boundary value LE is set as the following equation (28) (step S499).
[0132]
LE = (foreground value of current pixel block × j + background value of next pixel block × i) / (i + j) (28)
[0133]
Finally, in step S498, the latter color difference D BF Is a predetermined threshold TH BF The case (N) where the value is less than the following will be described. In this case, the left end boundary value LE is set as the following equation (29).
[0134]
LE = (foreground value of current pixel block × i + background value of next pixel block × j) / (i + j) (29)
[0135]
Further, the pixels in the pixel block after the final foreground are set as the left end boundary value, and the right end boundary value RE is set as the following equation (30).
[0136]
RE = (background value of current pixel block × i + foreground value of next pixel block × j) / (i + j) (30)
[0137]
Also, the right end is calculated using the left end boundary value and the right end boundary value, and the left end boundary value LE is set as the following equation (31) (step S500).
[0138]
LE = (foreground value of current pixel block × j + background value of next pixel block × i) / (i + j) (31)
[0139]
【The invention's effect】
As described above, according to the first and eighth aspects of the present invention, the image sizes of the background layer and the foreground layer are respectively set in the horizontal direction as the predetermined line direction of the image at the time of encoding and the vertical direction orthogonal thereto. When decoding a code reduced to 1 / m or 1 / n to restore an image, the colors of the peripheral pixels of the expanded m × n pixel block are corrected according to the state of the adjacent pixel block. Therefore, the appearance of pseudo lines can be reduced or suppressed. Therefore, a high-quality restored image can be obtained without impairing the high compressibility of the code.
[0140]
Further, in the inventions according to claims 4 to 6, since the averaging process is performed between adjacent pixel blocks, distortion between blocks can be reduced. As a result, color information lost during compression can be restored as much as possible without impairing high compressibility, and a good restored image can be obtained.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an image decoding device according to an embodiment of the present invention.
FIG. 2 is an explanatory diagram showing some arrangements of pixels on a target line to be subjected to image restoration processing in units of blocks.
FIG. 3 is a plan view showing an example of an input image as an original image shown in FIG.
FIG. 4 is a plan view illustrating an image of a mask layer with respect to the input image of FIG. 3;
FIG. 5 is a plan view illustrating an image of a background layer with respect to the input image of FIG. 3;
FIG. 6 is a plan view illustrating an image of a foreground layer with respect to the input image of FIG. 3;
FIG. 7 is a flowchart showing a flow of horizontal scaling processing in the embodiment.
FIG. 8 is a flowchart showing the first half of the flow of the first current block process shown in step S404 of FIG. 7;
FIG. 9 is a flowchart showing the second half of the flow of the first current block process shown in step S404 of FIG. 7;
FIG. 10 is a flowchart showing the first half of the flow of the first current block process at the time of the background and foreground blocks shown in step S405 of FIG. 7;
11 is a flowchart showing the latter half of the flow of the first current block process at the time of the background and foreground blocks shown in step S405 of FIG. 7;
FIG. 12 is a flowchart of a second current block process at the time of a background block in step S459 of FIG. 10;
FIG. 13 is a flowchart showing the first half of the second current block processing at the time of the background and foreground blocks in step S460 of FIG. 10;
14 is a flowchart showing the latter half of the second current block process at the time of the background and foreground blocks in step S460 of FIG.
FIG. 15 is a block diagram illustrating a main part of a conventionally proposed image decoding device.
16 is an explanatory diagram showing a part of the input original image in FIG.
FIG. 17 is an explanatory diagram showing how a plane image is generated by the plane image generation unit in FIG. 15;
18 is a block diagram illustrating a configuration of an image decoding device that generates a restored image using the image information encoded by the image encoding device illustrated in FIG.
FIG. 19 is an explanatory diagram showing a part of the input original image shown in FIG.
20 is an explanatory diagram showing mask layer separation information for the original image of FIG.
FIG. 21 is an explanatory diagram showing an example of compressed color information of a background layer.
FIG. 22 is an explanatory diagram showing an example of compressed color information of a foreground layer.
FIG. 23 is an explanatory diagram showing an example of a restored image synthesized by the conventional layer synthesizing section shown in FIG.
[Explanation of symbols]
201 input code
202 Code analysis / separation unit
203-205 Code data
207 Mask layer decoding section
208 Background layer decoding unit
209 Foreground layer decoding unit
212 Mask Layer Determination Unit
214 Background layer horizontal scaling unit
215 Foreground layer horizontal scaling unit
219 Background layer vertical scaling unit
222 Foreground layer vertical scaling unit
228 Layer Composition Unit
241 Border pixel part adjacent to the next block
242 Boundary pixel part adjacent to previous block

Claims (8)

画像を面画像の色情報を表わした背景レイヤと、文字や線、エッジ等の色情報を表わした前景レイヤと、これら背景レイヤおよび前景レイヤの画素単位の位置を表わす情報としてのマスクレイヤの3種類のレイヤを少なくとも含む複数のレイヤに分割し、このうちの背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1(ただしn、mは互いに同一の値を含む正の整数)の色情報に縮小してなる前記画像を表わした符号化後の画像情報を入力する符号入力手段と、
この符号入力手段の入力した符号を解析して前記複数のレイヤのそれぞれに分離する符号解析分離手段と、
この符号解析分離手段によって分離された背景レイヤを復号する背景レイヤ復号手段と、
前記符号解析分離手段によって分離された前景レイヤを復号する前景レイヤ復号手段と、
前記符号解析分離手段によって分離されたマスクレイヤを復号するマスクレイヤ復号手段と、
このマスクレイヤ復号手段によって復号されたマスクレイヤを基にしてm×nの画素ブロックごとにブロックを構成するそれぞれの画素が背景レイヤに該当するか前景レイヤに該当するかを判定するマスクレイヤ判定手段と、
前記背景レイヤを伸張する背景レイヤ伸張手段と、
前記前景レイヤを伸張する前景レイヤ伸張手段と、
隣接する画素ブロック同士における前記マスクレイヤ判定手段の判定した背景レイヤと前景レイヤの画素の配置パターンを基にして前記背景レイヤ伸張手段の伸張後の背景レイヤの色を補正する色補正手段と、
前記背景レイヤ伸張手段で伸張し色補正手段で補正した背景レイヤと前景レイヤ伸張手段によって伸張した前景レイヤとをマスクレイヤ判定手段の判定したこれらの位置情報を基にして合成することで画像を復元するレイヤ合成手段
とを具備することを特徴とする画像復号化装置。
An image is a background layer that represents color information of a plane image, a foreground layer that represents color information such as characters, lines, edges, and the like, and a mask layer as information that represents the positions of these background layer and foreground layer in pixel units. The image is divided into a plurality of layers including at least layers of different types, and the image sizes of the background layer and the foreground layer are divided by m in the horizontal direction as the predetermined line direction of the image and the vertical direction orthogonal thereto at the time of encoding. Code input means for inputting encoded image information representing the image, which has been reduced to 1 or 1 / n (where n and m are positive integers including the same value) color information;
Code analysis separating means for analyzing the code input by the code input means and separating the code into each of the plurality of layers;
Background layer decoding means for decoding the background layer separated by the code analysis separation means,
Foreground layer decoding means for decoding the foreground layer separated by the code analysis separation means,
Mask layer decoding means for decoding the mask layer separated by the code analysis separation means,
Mask layer determining means for determining whether each pixel constituting each block of m × n pixels corresponds to a background layer or a foreground layer based on the mask layer decoded by the mask layer decoding means When,
Background layer stretching means for stretching the background layer;
Foreground layer stretching means for stretching the foreground layer;
Color correction means for correcting the color of the background layer after expansion of the background layer expansion means based on the arrangement pattern of the pixels of the background layer and the foreground layer determined by the mask layer determination means in adjacent pixel blocks;
The image is restored by combining the background layer expanded by the background layer expansion unit and corrected by the color correction unit and the foreground layer expanded by the foreground layer expansion unit based on the position information determined by the mask layer determination unit. An image decoding apparatus, comprising:
前記背景レイヤ伸張手段は、背景レイヤを水平方向に伸張する背景レイヤ水平スケーリング手段とこの背景レイヤ水平スケーリング手段によって伸張後の背景レイヤを垂直方向に伸張する背景レイヤ垂直スケーリング手段を備え、前記前景レイヤ伸張手段は、前景レイヤを水平方向に伸張する前景レイヤ水平スケーリング手段とこの前景レイヤ水平スケーリング手段によって伸張後の前景レイヤを垂直方向に伸張する前景レイヤ垂直スケーリング手段を備えることを特徴とする請求項1記載の画像復号化装置。The background layer stretching means includes a background layer horizontal scaling means for horizontally stretching a background layer, and a background layer vertical scaling means for vertically stretching the background layer after stretching by the background layer horizontal scaling means, wherein the foreground layer The foreground layer horizontal scaling means for extending the foreground layer in the horizontal direction, and the foreground layer vertical scaling means for extending the foreground layer after expansion by the foreground layer horizontal scaling means in the horizontal direction. 2. The image decoding device according to 1. 前記色補正手段は、色補正を行う対象となるm×nの現画素ブロック内の周辺部分の画素の背景レイヤの色を隣接するm×nの画素ブロックに配置される前景レイヤを構成する画素の有無によって決定する背景色補正手段を具備することを特徴とする請求項1記載の画像復号化装置。The color correction unit is configured to change a color of a background layer of a peripheral pixel in an m × n current pixel block to be subjected to color correction by a pixel forming a foreground layer arranged in an adjacent m × n pixel block. 2. The image decoding apparatus according to claim 1, further comprising a background color correction unit that determines the presence or absence of the image. 前記色補正手段は、色補正を行うm×nの現画素ブロック内の所定のラインの画素がすべて背景レイヤの画素であり、この現画素ブロックに隣接する次に処理する次画素ブロック内の前記所定のラインと同一のラインの画素がすべて背景レイヤの画素であるときには、現画素ブロックのこのライン上で次画素ブロックに隣接する画素は、次画素ブロックについての背景レイヤの画素と色の平均化を行い、現画素ブロック内のそのライン上の残りの画素におけるこの平均化を行った画素と反対側に位置する画素を更に除いた全画素については少なくとも現画素ブロックに背景レイヤとして与えられた色を背景色として割り当てる手段であることを特徴とする請求項1記載の画像復号化装置。The color correction unit is configured such that all pixels on a predetermined line in the current pixel block of m × n for which color correction is performed are pixels of the background layer, and the pixel in the next pixel block to be processed next which is adjacent to the current pixel block. When the pixels on the same line as the predetermined line are all pixels on the background layer, the pixels adjacent to the next pixel block on this line of the current pixel block are averaged with the background layer pixels and colors of the next pixel block. And for all the remaining pixels on the line in the current pixel block except for the pixel located on the opposite side to the averaged pixel, at least the color given as the background layer to the current pixel block 2. The image decoding device according to claim 1, wherein the image decoding device is a unit for assigning a background color. 前記反対側に位置する画素は、これに隣接する前に処理した前画素ブロックに背景レイヤとして与えられた色との平均化を行うことを特徴とする請求項4記載の画像復号化装置。The image decoding apparatus according to claim 4, wherein the pixel located on the opposite side performs averaging with a color given as a background layer to a previous pixel block processed before the pixel adjacent thereto. 前記色補正手段は、色補正を行うm×nの現画素ブロックにおける次に処理する次画素ブロックに隣接する背景レイヤの画素とこの画素と同一ライン上で次画素ブロック内に位置する前景レイヤの現画素ブロックに一番近い側に位置する画素の色距離を所定の閾値と比較する比較手段と、この比較手段で閾値よりも小さいと判定したとき背景レイヤの画素の色をこの前景レイヤの画素の色で平均化する背景レイヤ前景レイヤ平均化手段を具備することを特徴とする請求項1記載の画像復号化装置。The color correction means includes a pixel of a background layer adjacent to a next pixel block to be processed next in an m × n current pixel block to be subjected to color correction and a foreground layer positioned in the next pixel block on the same line as this pixel. Comparing means for comparing the color distance of the pixel closest to the current pixel block with a predetermined threshold value, and when the comparing means determines that the color distance is smaller than the threshold value, the color of the pixel of the background layer is changed to the pixel of the foreground layer. 2. The image decoding apparatus according to claim 1, further comprising a background layer foreground layer averaging means for averaging the background and foreground layers. 前記色補正手段は、色補正を行うm×nの現画素ブロックに前景レイヤで挟まれる背景レイヤが存在するとき、この部分の画素の色を隣接した画素ブロックの色の状態にかかわらず現画素ブロックの背景レイヤの色として設定し、次に処理する次画素ブロックに近い側の背景レイヤについては次画素ブロックの状態によって画素の色を平滑化することを特徴とする請求項1記載の画像復号化装置。When the background layer sandwiched between the foreground layers is present in the m × n current pixel block for which color correction is to be performed, the color correction unit changes the color of the pixel in this portion regardless of the color state of the adjacent pixel block. 2. The image decoding method according to claim 1, wherein the background color of the block is set as the color of the background layer, and the color of the pixel is smoothed according to the state of the next pixel block for the background layer close to the next pixel block to be processed next. Device. 画像を面画像の色情報を表わした背景レイヤと、文字や線、エッジ等の色情報を表わした前景レイヤと、これら背景レイヤおよび前景レイヤの画素単位の位置を表わす情報としてのマスクレイヤの3種類のレイヤを少なくとも含む複数のレイヤに分割し、このうちの背景レイヤおよび前景レイヤの画像サイズを符号化時に画像の所定のライン方向としての水平方向およびこれと直交する垂直方向にそれぞれm分の1あるいはn分の1(ただしn、mは互いに同一の値を含む正の整数)の色情報に縮小してなる前記画像を表わした符号化後の画像情報を入力する符号入力ステップと、
この符号入力ステップで入力した符号を解析して前記複数のレイヤのそれぞれに分離する符号解析分離ステップと、
この符号解析分離ステップによって分離された背景レイヤを復号する背景レイヤ復号ステップと、
前記符号解析分離ステップによって分離された前景レイヤを復号する前景レイヤ復号ステップと、
前記符号解析分離ステップによって分離されたマスクレイヤを復号するマスクレイヤ復号ステップと、
このマスクレイヤ復号ステップによって復号されたマスクレイヤを基にしてm×nの画素ブロックごとにブロックを構成するそれぞれの画素が背景レイヤに該当するか前景レイヤに該当するかを判定するマスクレイヤ判定ステップと、
前記背景レイヤを伸張する背景レイヤ伸張ステップと、
前記前景レイヤを伸張する前景レイヤ伸張ステップと、
隣接する画素ブロック同士における前記マスクレイヤ判定ステップで判定した背景レイヤと前景レイヤの画素の配置パターンを基にして前記背景レイヤ伸張手段の伸張後の背景レイヤの色を補正する色補正ステップと、
前記背景レイヤ伸張ステップで伸張し色補正ステップで補正した背景レイヤと前景レイヤ伸張手段によって伸張した前景レイヤとをマスクレイヤ判定手段の判定したこれらの位置情報を基にして合成することで画像を復元するレイヤ合成ステップ
とを具備することを特徴とする画像復号化方法。
An image is a background layer that represents color information of a plane image, a foreground layer that represents color information such as characters, lines, edges, and the like, and a mask layer as information that represents the positions of these background layer and foreground layer in pixel units. The image is divided into a plurality of layers including at least layers of different types, and the image sizes of the background layer and the foreground layer are divided by m in the horizontal direction as the predetermined line direction of the image and the vertical direction orthogonal thereto at the time of encoding. A code input step of inputting encoded image information representing the image, which is reduced to 1/1 / n (where n and m are positive integers including the same value) color information;
A code analysis / separation step of analyzing the code input in the code input step and separating each of the plurality of layers;
A background layer decoding step of decoding the background layer separated by the code analysis separation step;
A foreground layer decoding step of decoding the foreground layer separated by the code analysis separation step;
A mask layer decoding step of decoding the mask layer separated by the code analysis separation step;
A mask layer determining step of determining whether each pixel constituting a block of m × n pixel blocks corresponds to a background layer or a foreground layer based on the mask layer decoded by the mask layer decoding step When,
A background layer expanding step of expanding the background layer;
A foreground layer stretching step of stretching the foreground layer;
A color correction step of correcting the color of the background layer after expansion of the background layer expansion unit based on the arrangement pattern of the pixels of the background layer and the foreground layer determined in the mask layer determination step between adjacent pixel blocks;
The image is restored by combining the background layer expanded in the background layer expansion step and corrected in the color correction step and the foreground layer expanded by the foreground layer expansion unit based on the position information determined by the mask layer determination unit. An image decoding method, comprising:
JP2003146855A 2003-05-23 2003-05-23 Image decoding apparatus and image decoding method Expired - Fee Related JP3845390B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003146855A JP3845390B2 (en) 2003-05-23 2003-05-23 Image decoding apparatus and image decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003146855A JP3845390B2 (en) 2003-05-23 2003-05-23 Image decoding apparatus and image decoding method

Publications (2)

Publication Number Publication Date
JP2004350158A true JP2004350158A (en) 2004-12-09
JP3845390B2 JP3845390B2 (en) 2006-11-15

Family

ID=33533591

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003146855A Expired - Fee Related JP3845390B2 (en) 2003-05-23 2003-05-23 Image decoding apparatus and image decoding method

Country Status (1)

Country Link
JP (1) JP3845390B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006311200A (en) * 2005-04-28 2006-11-09 Ricoh Co Ltd Method of transferring structured document code, image processing system, server unit, program and information recording medium
JP2007005949A (en) * 2005-06-22 2007-01-11 Fuji Xerox Co Ltd Image forming apparatus, method and program
WO2017034311A1 (en) * 2015-08-24 2017-03-02 삼성전자 주식회사 Image processing device and method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006311200A (en) * 2005-04-28 2006-11-09 Ricoh Co Ltd Method of transferring structured document code, image processing system, server unit, program and information recording medium
JP4618676B2 (en) * 2005-04-28 2011-01-26 株式会社リコー Structured document code transfer method, image processing system, server device, program, and information recording medium
US7912324B2 (en) 2005-04-28 2011-03-22 Ricoh Company, Ltd. Orderly structured document code transferring method using character and non-character mask blocks
JP2007005949A (en) * 2005-06-22 2007-01-11 Fuji Xerox Co Ltd Image forming apparatus, method and program
WO2017034311A1 (en) * 2015-08-24 2017-03-02 삼성전자 주식회사 Image processing device and method
US11051042B2 (en) 2015-08-24 2021-06-29 Samsung Electronics Co., Ltd. Image processing device and method

Also Published As

Publication number Publication date
JP3845390B2 (en) 2006-11-15

Similar Documents

Publication Publication Date Title
KR102036175B1 (en) Adaptive partition coding
KR102062696B1 (en) Effective prediction using partition coding
KR100257614B1 (en) Image signal padding method, image signal coding apparatus, image signal decoding apparatus
JPH1155667A (en) Image coder, image decoder, and recording medium recorded with image coded data
JPH10164619A (en) Encoder, decoder, recording medium, encoding method, and decoding method
US8295618B2 (en) Image processing apparatus, image processing method, and computer program product
US6636644B1 (en) Image processing suitable for use with MPEG4, avoiding false-color problems in extraction of portions of an image
JPH11150660A (en) Information compressing method and its device, information processing method and its device, and recording medium
JP2024019496A (en) Image encoding device, image decoding device, image encoding method, image decoding method
JP2024019495A (en) Image encoding device, image decoding device, image encoding method, image decoding method
US8699804B2 (en) Lossless image compression and decompression method for high definition image and electronic device using the same
JP3845390B2 (en) Image decoding apparatus and image decoding method
KR100717002B1 (en) Apparatus for encoding and decoding image, and method thereof, and a recording medium storing program to implement the method
JPH09205647A (en) Image coder, image decoder and image processor
JPH10108011A (en) Data-processing unit
TW202114411A (en) Image encoding device, image encoding method, image decoding device, image decoding method, and program
KR20220034141A (en) point cloud processing
JP3320282B2 (en) Multi-value image processing device
KR20210134041A (en) Processing of intermediate points in the point cloud
JP3822512B2 (en) Image data compression apparatus, image data compression method, recording medium, and program
JPH10336643A (en) Image coder and image decoder
JP7358136B2 (en) Image encoding device, image encoding method, and program; image decoding device, image decoding method, and program
JP2005236723A (en) Device and method for encoding moving image, and device and method for decoding the moving image
JPH11196415A (en) Device and method for encoding/decoding shape information by adaptive bordering
JP2891251B2 (en) Image encoding device and image decoding device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060718

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060818

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090825

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100825

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110825

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110825

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120825

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130825

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees