Nothing Special   »   [go: up one dir, main page]

JP5245771B2 - 符号化装置、符号化方法、プログラム及び記録媒体 - Google Patents

符号化装置、符号化方法、プログラム及び記録媒体 Download PDF

Info

Publication number
JP5245771B2
JP5245771B2 JP2008306265A JP2008306265A JP5245771B2 JP 5245771 B2 JP5245771 B2 JP 5245771B2 JP 2008306265 A JP2008306265 A JP 2008306265A JP 2008306265 A JP2008306265 A JP 2008306265A JP 5245771 B2 JP5245771 B2 JP 5245771B2
Authority
JP
Japan
Prior art keywords
image
pixel
divided
mask
encoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008306265A
Other languages
English (en)
Other versions
JP2010130622A (ja
Inventor
宏幸 作山
潤一 原
麻衣子 竹中
多聞 貞末
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008306265A priority Critical patent/JP5245771B2/ja
Publication of JP2010130622A publication Critical patent/JP2010130622A/ja
Application granted granted Critical
Publication of JP5245771B2 publication Critical patent/JP5245771B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

本発明は、文字・線画と写真等の混在文書のページ画像等を符号化する技術に関し、特に、原画像データを分解した背景データ、少なくとも一つの前景データとマスターデータのペアを符号化する符号化装置、符号化方法、プログラム及び記録媒体に関する。
本発明に関連する技術例としては、以下のものがある。
特許文献1には、画像データを第1の画像データと、第2の画像データと、第1、第2の画像データのいずれかを選択する選択データの3つのデータに分離し、それぞれ符号化した圧縮データを入力して、画像を合成復元する技術が開示されている。この特許文献1記載の発明は、後述するMRC(ミクストラスターコンテント)の基本的な構成の発明である。
特許文献2には、MRCにおいてマスクを分割し、部分画像へのアクセス性を向上させる技術が開示されている。なお、この特許文献2記載の発明は、マスクを分割するという点においてのみ、本発明と共通である。
特許文献3には、隣接するタイルのローパス係数とハイパス係数を利用して、タイル境界に隣接するハイパス係数を補正することによって、タイル境界歪みを除去する技術が開示されている。なお、この特許文献3記載の発明は、本発明と課題のみが共通である。
特許文献4には、タイル境界付近の係数の量子化の程度を抑え、タイル境界歪みを抑制する技術が開示されている。なお、この特許文献4記載の発明は、本発明と課題のみが共通である。
特許第3275807号公報 特開2007−5844号公報 特開2001−257596号公報 特許第4149144号公報
一般に文書は、文字・線画と絵柄の混在で構成されるが、近年こうした混在文書を効率的に符号化するために、文字・線画部分と絵柄部分とに分離し、各々に対して異なる符号化を施すことが提案されている。
例えば、MRC(ミクストラスターコンテント)モデルと呼ばれる手法がある。この手法は、図1に示すように、1ページの文書を文字の色情報(前景)、文字領域情報(マスク)、画像情報(背景)といった3レイヤに分けて、レイヤごとに符号化を行う方式である。特許文献1は、MRCモデルの典型例であり、画像データを第1の画像データと、第2の画像データと、第1、第2の画像データのいずれかを選択する選択データの3つのデータに分離し、それぞれ符号化した圧縮データを入力して、画像を合成復元することを提案している。特許文献1は、MRCモデルを採用する理由として、高圧縮率時の文字・線画の劣化防止を挙げている。
こうしたMRCモデル(MRC方式)では、1つの背景に対して、複数の「前景+マスク」を重ねあわせていく方式が一般的である。マスクとは前景を(例えば文字の形に)切り取るための形状情報を持つものであり、マスクの値が前景の透過率(前景と背景の混合比)を持つ場合もある。また、背景、マスク、前景の解像度は、任意に選択できることも多い。
また、MRCによる符号フォーマットは、MRC符号であること等を示す全体用のヘッダと、1つの背景符号及びそのヘッダと、それに重ね合わせる1つ若しくは複数の「前景符号とマスク符号のペア」及びそのペア用のヘッダで構成されるのが典型である(図2参照)。
例えば、前記MRCモデルの前景、マスク、背景の圧縮方式としてJPEG2000の選択を可能にしたJPM(JPEG2000 Multi Layer)という符号化方式が標準化されている。
図3は、JPM符号の構成例である。図3において、点線部分はオプションであるため、実線部分を中心に以下に説明する。
JPEG 2000 Signature Box は、この符号がJPEG2000ファミリーに属することを示す全体のヘッダである。File Type Boxは、本符号がJPMフォーマットである事を示す全体のヘッダである。Compound Image Header Boxは、当該MRC符号の全般的な情報を含む全体のヘッダである。Page Collection boxは、当該符号がマルチページからなる場合に各ページの順番を示す目次的なものである。Page Boxは、ページの解像度等を示す全体のヘッダである。ここで、ページとは、MRC画像を順次重ねて(合成して)いくためのキャンバスであり、合成が終わった後のMRC画像と同じ大きさを持つ。JPMの場合、ページには、前景とマスクのペアで構成されるlayout objectsが順次描画される。Layout Object box は、前景とマスクのサイズや位置等を示す、前景及びマスク用のヘッダである。Media Data box やContiguous Codestream boxは、前景やマスクの符号を含む部分である。なお、JPMでは、背景は、レイアウトオブジェクトが描画される前の初期的なページとして扱われる。
このJPMにおいては、背景に対して、前景とマスクのペアとして定義されるレイアウトオブジェクトを順次重ねて画像を合成する。背景と前景の合成法としては、
(i)前景か背景のいずれかを選択する
(ii)前景の値と背景の値の加重平均をとる
の2つの場合が可能であり、(i)の場合はマスクを二値にし、マスク値が1の場合に前景、0の場合に背景を対応させて選択を行うことが可能である。また、(ii)の場合には、マスクに8ビットの正の値を持たせ、以下の式で加重平均をとることが可能である。
合成画像=(マスク値/255)×前景+{(255−マスク値)/255}×背景
これらのいずれのタイプの合成をとるかは、前景とマスクのペアごとに指定可能であり、各ペア用のヘッダに記載する。
さて、以上のMRCモデルでの符号化では、高圧縮率化のために、前景や背景を高い圧縮率(ex.1/40)で圧縮する。こうした高い圧縮率では、従来のJPEG方式を用いた場合にブロックノイズが生じることがあり、問題となりやすい。
そこで、先のJPMを始め、前記前景や背景の圧縮方式に、高い圧縮率でも画質が維持できるJPEG2000が用いだされている。
ただし、高い圧縮率で画質が維持できるJPEG2000でも、タイリングという画像の分割処理を行い、かつ量子化を行って(=非可逆で)高圧縮率での圧縮を行った場合には、従来のJPEG同様、復号画像において分割の境界(タイル境界)が見えてしまうという周知の問題が生じる。タイリングとは、大きな画像を処理する場合に、画像を複数の矩形に分割し、該矩形毎に圧縮処理をすることで、消費メモリ量を減らす方法である(処理する画像の画素数が減れば、消費メモリ量は自然に減るからである。なお、タイリングを行っても、画像自体は1つのものとして符号化され、復号時にも1つの画像として復号される)。フィルタを用いて周波数変換を行う場合、タイルの境界に位置する画素に対しては、ある仮定に基づいて、フィルタを施すに足る分の画素補間(ex.ミラーリング)を行うのが通常である。しかし、前記仮定が実際の隣接タイルの画素値にそぐわない場合、その齟齬が量子化によって強調され、復号画像に大きな誤差を生じさせる。この結果、原画像には存在しないタイル境界が、エッジの様に見えてしまうというのである。該タイル境界の問題に関しては、「J. X. Wei、M. R. Pickering、M. R. Frater and J. F. Arnold、“A New Method for Reducing Boundary Artifacts in Block-Based Wavelet Image Compression、” in VCIP 2000、 K. N. Ngan、 T. Sikora、 M-T Sun Eds.、 Proc. of SPIE Vol. 4067、 pp. 1290-1295、 20-23 June 2000、 Perth、 Australia」や、特許文献3や特許文献4に詳しい。
こうしたタイル境界の問題は、タイリングさえしなければ生じないが、MFP(Multi Function Peripheral/Printer)のようなメモリ制約のある機器の内部でMRC符号を生成しようとする場合、消費メモリ上の制限からタイリングをせざるを得ない場合がある。また逆に、MFPのようなメモリ制約のある機器の内部からMRC符号を復号してプリントアウトしようとする場合、やはり消費メモリ上の制限から、タイリングした符号しか復号できない場合がある。
また、前記タイル境界の問題は、画像をオーバーラップしたタイルに分割すれば生じないのもよく知られている。境界の歪みをオーバーラップした部分に生じさせ、そのオーバーラップした部分を復号側で切り取るようにすればよいからである。
しかしこの場合、先の様に復号側では、オーバーラップした部分を復号側で切り取ることが必須となり、1つの画像をオーバーラップさせて分割し、かつ1つの画像として符号化するエンコーダと、オーバーラップを削除し、1つの画像として再構成するデコーダとがペアで動作することが前提となる。残念ながらJPEG2000のベースライン仕様では、エンコーダ側ではタイルをオーバーラップさせないことになっており、デコーダ側でもオーバーラップ部分を削除しない仕様(そもそもオーバーラップしていない前提の仕様)になっている。したがって、JPEG2000をベースライン仕様で用い、かつMRCのような圧縮率が高いケースで用いる場合、タイル境界歪みは不可避と考えられていた。
しかしながら本発明者及び出願人は、MRCの場合、前景とマスクを重ねあわせるという機構を利用することによって、前記オーバーラップを削除する機能と、1つの画像として再構成する機能とを同時に提供できることを見出した。前景はオーバーラップさせて複数の画像に分割し、かつ1つではなく複数の画像として別個に符号化するものの、これら複数の前景のうち、マスクによって選択される部分同士をオーバーラップさせないように構成すれば、マスクを、オーバーラップ部分を削除するものとして機能させることができるのである。また、前景とマスクのペアを複数用いれば、前記再構成する機能を同時に提供することができるのである。
つまり、切り取って重ねるというMRCの機構を用いれば、複数の画像として、ベースライン仕様で別個に符号化した画像を、オーバーラップを前提としないベースラインのデコーダで復号しつつも、オーバーラップ部分を取り除き、オーバーラップがないように再構成することが可能になるのである。
本発明は、上記事情に鑑みてなされたものであり、エンコード又はデコードのときの消費メモリを小さく抑えながら、画像の分割境界が見えない符号化又は復号を行うことができる符号化装置、符号化方法、プログラム及び記録媒体を提供することを目的とする。
かかる目的を達成するために、本発明の符号化装置は、背景画像及び前景画像の少なくとも1つを画素毎に選択する画像を符号化する符号化装置であって、前景画像をオーバーラップした複数の分割画像に分割する手段と、複数の分割画像を、周波数変換を用いて各々符号化する手段と、分割画像に重ね合わせるマスク画像を生成する手段と、を有し、分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップする部分の面積は、分割画像同士のオーバーラップした部分の面積の和よりも小さいことを特徴とする。
また、本発明の符号化装置において、分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップしないことを特徴とする。
また、本発明の符号化装置において、分割画像に重ね合わせるマスク画像の境界が直線ではない部分を有することを特徴とする。
また、本発明の符号化装置において、分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Aに生じる量子化誤差が、分割画像とは異なる別の分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Bに生じる量子化誤差よりも大きい場合に、画素Aから分割画像の端部であって画素Aに近い方に至る画素数を、画素Bから別の分割画像の端部であって画素Bに近い方に至る画素数よりも、大きくしたことを特徴とする。
また、本発明の符号化装置において、分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向の端部あるいは垂直方向の端部に位置する1つの画素に生じる量子化誤差が大きくなるほど、画素に隣接するオーバーラップ量を大きくすることを特徴とする。
また、本発明の符号化装置において、マスク画像の符号を、複数の分割画像の間で共有することを特徴とする。
本発明の符号化方法は、背景画像及び前景画像の少なくとも1つを画素毎に選択する画像を符号化する装置が行う符号化方法であって、前景画像をオーバーラップした複数の分割画像に分割するステップと、複数の分割画像を、周波数変換を用いて各々符号化するステップと、分割画像に重ね合わせるマスク画像を生成するステップと、を有し、分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップする部分の面積は、分割画像同士のオーバーラップした部分の面積の和よりも小さいことを特徴とする。
また、本発明の符号化方法において、分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップしないことを特徴とする。
また、本発明の符号化方法において、分割画像に重ね合わせるマスク画像の境界が直線ではない部分を有することを特徴とする。
また、本発明の符号化方法において、分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Aに生じる量子化誤差が、分割画像とは異なる別の分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Bに生じる量子化誤差よりも大きい場合に、画素Aから分割画像の端部であって画素Aに近い方に至る画素数を、画素Bから別の分割画像の端部であって画素Bに近い方に至る画素数よりも、大きくしたことを特徴とする。
また、本発明の符号化方法において、分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向の端部あるいは垂直方向の端部に位置する1つの画素に生じる量子化誤差が大きくなるほど、画素に隣接するオーバーラップ量を大きくすることを特徴とする。
また、本発明の符号化方法において、マスク画像の符号を、複数の分割画像の間で共有することを特徴とする。
本発明のプログラムは、コンピュータが読み取り可能なプログラムであって、本発明の符号化方法をコンピュータに実行させることを特徴とする。
本発明の記録媒体は、本発明のプログラムを記録したことを特徴とする。
本発明によれば、エンコード又はデコードのときの消費メモリを小さく抑えながら、画像の分割境界が見えない符号化又は復号を行うことが可能となる。
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
まず、本発明の実施形態の目的について説明する。
本実施形態では、エンコード又はデコード時の消費メモリを小さく抑えながら、画像の分割境界が見えない符号化又は復号を行うことを目的とする。その目的を達成するために、本実施形態では、第1の画像(背景)及び第2の画像(前景)の少なくとも1つを画素毎に選択する画像(マスク)を符号化する装置であって、前記第2の画像(前景)をオーバーラップした複数の第3の画像に分割する手段と、前記複数の第3の画像を、周波数変換を用いて各々符号化する手段と、前記第3の画像に対応したマスクを生成する手段を有し、前記第3の画像の、当該画像に対応したマスクによって選択される領域同士がオーバーラップする部分の面積が、前記第3の画像同士のオーバーラップした部分の面積の和よりも小さいことを特徴とする構成の装置を提案する。
なお、上記本実施形態の構成において、「第1画像(背景)及び第2の画像(前景)の少なくとも1つ」とは、第1又は第2の画像を択一的に選択してもよいし、あるいは、第1及び第2の両方の画像を選択し、両方の画素値を用いて加重平均等を行った画素値を用いてもよいことを意味している。
また、上記本実施形態の構成において、「前記第3の画像の、当該画像に対応したマスクによって選択される領域同士」とは、本来重なり合う必要はなく、オーバーラップは0でよいのであるが、オーバーラップが0でなければ本実施形態とは非類似との解釈を許容しないために、前記第3の画像の、当該画像に対応したマスクによって選択される領域同士において、オーバーラップする部分の面積が、前記第3の画像同士のオーバーラップした部分の面積の和よりも小さいという文言としている。
また、本実施形態では、エンコード又はデコード時の消費メモリを小さく抑え、かつ最小サイズのマスクを用いながら、画像の分割境界が見えない符号化又は復号を行うことを目的とする。その目的を達成するために、上記本実施形態の構成において、前記第3の画像の、当該画像に対応したマスクによって選択される領域同士がオーバーラップしないこと特徴とする装置を提案する。
なお、前記境界の歪みを全く生じさせないために必要となる前景のオーバーラップ量は、周波数変換に用いるフィルタのタップ長と、フィルタを(再帰的に)用いる回数によって決定される。ただし、該決定されるオーバーラップ量以下の量でも、境界の歪みを実用的に低減させること自体は可能である。オーバーラップさせればさせるほど、前景の画素数自体が大きくなってしまうため、全体の符号量が増えてしまうという副作用が生じる。したがって、オーバーラップ量は可能な限り少ない方がよい。
一方、オーバーラップ量を減らすと、境界が見えやすくなるわけだが、マスクの形状によって多少の緩和が可能である。人間の視覚は、規則的なものには敏感だが、不規則なものには鈍感である。したがって、マスクとマスクの境界(=前景の継ぎ目)を、直線よりも不規則な形状(例えば凹凸状)にすれば、若干の緩和が可能である。
また、本実施形態では、オーバーラップ量を少なくし、かつ境界の視認性を低下させることを目的とする。その目的を達成するために、上記本実施形態の構成において、前記第3の画像に対応したマスクの境界が直線ではない部分を有すること特徴とする装置を提案する。
また、前記第3の画像の、当該画像に対応したマスクによって選択されない領域、即ち切り取られるべきオーバーラップ部分は、例えば前記第3の画像の上下左右に帯状に位置するが、前記帯の幅は、必ずしも上下左右で均等である必要はない。後述するが、切り取られるべき幅は、その切り取られる部分に生じる量子化誤差と相関を持たせるべきだからである。
また、本実施形態では、画素に生じる量子化誤差の大小関係を利用して、前記オーバーラップ部分を少なくすることを目的とする。その目的を達成するために、上記本実施形態の構成において、前記第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向のオーバーラップ側の端部(あるいは垂直方向の端部)に位置する画素Aに生じる量子化誤差が、前記第3の画像とは異なる別の第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向のオーバーラップ側の端部(あるいは垂直方向の端部)に位置する画素Bに生じる量子化誤差よりも大きい場合に、画素Aから第3の画像の端部であって画素Aに近い方に至る画素数を、画素Bから前記別の第3の画像の端部であって画素Bに近い方に至る画素数よりも、大きくしたことを特徴とする装置を提案する。
また、前記タイル境界歪みは、係数の量子化の程度が大きいほど見えやすくなる。したがって、前記オーバーラップ部分は、量子化の程度が大きくなるほど、増やす必要がある。
また、本実施形態では、量子化の程度に対応してタイル境界歪みを見えにくくすることを目的とする。その目的を達成するために、上記本実施形態の構成において、前記第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向の端部(あるいは垂直方向の端部)に位置する1つの画素に生じる量子化誤差が大きくなるほど、前記画素に隣接する前記オーバーラップ量を大きくすることを特徴とする装置を提案する。
また、前記第3の画像の、当該画像に対応したマスクは、単純には第3の画像の数だけ存在するが、該マスク画像は、同じ大きさかつ同じ画素値になることも多い。マスク同士を重複させず、かつ同じ大きさのマスクに分割するのは容易だからである。この場合、マスク同士自体の符号は同じ物になる。
ここでMRCのフォーマット、例えばJPMでは、(マスクを含む)同じ画像の符号は1つだけをファイルに含み、かつ他のレイアウトオブジェクトからは、前記1つだけの符号を参照するようにすることができる。これにより、MRCのファイル容量全体を削減することができる。
また、本実施形態では、MRCのファイルフォーマットの共有機構を利用して、ファイル容量を削減することを目的とする。その目的を達成するために、上記本実施形態の構成において、前記マスクの符号を、前記複数の第3の画像の間で共有することを特徴とする装置を提案する。
また、本実施形態では、上記本実施形態の構成を有する装置のみならず、方法、コンピュータが読取可能なプログラム、そのプログラムを記録した記録媒体を提案する。
次に、本実施形態の符号化装置の構成について詳細に説明する。
図4は、本実施形態の符号化装置の構成例を示した図である。データバスを介して、CPU(Central Processing Unit)1、RAM(Random Access Memory)2、HDD(Hard Disk Drive)3が接続されている。なお、CPU1とRAM2は、例えばPC(Personal Computer)等に内蔵されるものである。このような構成において、以下の流れで、原画像が符号化される。
〈1〉HDD3上に記録された原画像(オリジナル画像)が、CPU1からの命令によってRAM2上に読み込まれる。
〈2〉CPU1は、RAM2上の画像を読み込み、後述する本実施形態の手法を用いてMRCモデルを用いた符号化を行う。
〈3〉CPU1は、符号化後のデータを、RAM2上の別の領域に書き込む。
〈4〉CPU1からの命令によって、符号化後のデータがHDD3上に記録される。
ここで、本実施形態中で使用するJPEG2000の符号化方式の概要について説明する。
JPEG2000とは、2001年に国際標準になった、JPEG後継の画像符号化方式であり、その符号化処理は、概ね図5の流れで行われる。
まず、画像は矩形のタイルに分割される(分割数≧1)。次に、各タイルは、例えばRGBの3コンポーネントで構成されるカラー画像の圧縮時には、DCレベルシフト後、輝度・色差コンポーネントへのコンポーネント変換(色変換)後ウェーブレット変換がなされ、必要に応じて量子化が行われ、ビットプレーンを単位としたエントロピー符号化がなされる。また伸張時には、ビットプレーン単位でのエントロピー復号後、逆量子化を経て得られたコンポーネント毎のウェーブレット係数に対して、逆ウェーブレット変換が施され、その後逆色変換がなされてRGBの画素値に戻ることを示している。
ここで、JPEG2000のDCレベルシフトの変換式と逆変換式は次の通りである。
I(x、y)←I(x、y)-2^Ssiz(i) 順変換
I(x、y)←I(x、y)+2^Ssiz(i) 逆変換
ただし、Ssiz(i)は原画像の各コンポーネントi(RGB画像ならi=0、1、2)のビット深さから1を減じたものである。また、2^Ssiz(i)は2のSsiz(i)乗を意味し、I(x、y)は座標(x、y)における原信号値(画素値)である。
このDCレベルシフトは、RGB信号値のような正の数である場合に、順変換では各信号値から信号のダイナミックレンジの半分を減算するレベルシフトを、逆変換では各信号値に信号のダイナミックレンジの半分を加算するレベルシフトを行うものである。ただし、このレベルシフトはYCbCr信号のCb、Cr信号のような符号付き整数には適用されない。
また、JPEG2000では、コンポ−ネント変換(色変換)として可逆変換(RCT)と非可逆変換(ICT)が定義されている。
RCTの順変換と逆変換は次式で表される。
〔順変換〕
Y0(x、y)=floor((I0(x、y)+2*(I1(x、y)+I2(x、y))/4)
Y1(x、y)=I2(x、y)-I1(x、y)
Y2(x、y)=I0(x、y)-I1(x、y)
〔逆変換〕
I1(x、y)=Y0(x、y)-floor((Y2(x、y)+Y1(x、y))/4)
I0(x、y)=Y2(x、y)+I1(x、y)
I2(x、y)=Y1(x、y)+I1(x、y)
式中のIは原信号、Yは変換後の信号を示し、IやYに続く0〜2はサフィックスである。RGB信号ならばI信号においてI0=R、I1=G、I2=B、Y信号においてY0=Y、Y1=Cb、Y2=Crと表される。またfloor(X)は実数Xを、Xを越えず、かつ、Xに最も近い整数に置換する関数である。
ICTの順変換と逆変換は次式で表される。
〔順変換〕
Y0(x、y)=0.299*I0(x、y)+0.587*I1(x、y)+0.144*I2(x、y)
Y1(x、y)=-0.16875*I0(x、y)-0.33126*I1(x、y)+0.5*I2(x、y)
Y2(x、y)=0.5*I0(x、y)-0.41869*I1(x、y)-0.08131*I2(x、y)
〔逆変換〕
I0(x、y)=Y0(x、y)+1.402*Y2(x、y)
I1(x、y)=Y0(x、y)-0.34413*Y1(x、y)-0.71414*Y2(x、y)
I2(x、y)=Y0(x、y)+1.772*Y1(x、y)
式中のIは原信号、Yは変換後の信号を示す。RGB信号ならばI信号においてI0=R、I1=G、I2=B、Y信号においてI0=Y、I1=Cb、I2=Crと表される。
そして変換後のコンポーネント(タイルコンポーネントと呼ばれる)は、ウェーブレット変換によって、LL、HL、LH、HHと略称される4つのサブバンドに分割される。そしてLLサブバンドに対して再帰的にウェーブレット変換(デコンポジション)を繰返すと、最終的に1つのLLサブバンドと複数のHL、LH、HHサブバンドが生成される。
ここで、JPEG2000で使用される5×3ウェーブレット変換及び9×7ウェーブレット変換(いずれか一方を選択して使用する)について説明する。
5×3ウェーブレット変換とは、5画素を用いて1つのローパスフィルタの出力(ローパス係数)が得られ、3画素を用いて1つのハイパスフィルタの出力(ハイパス係数)が得られる変換である。同様に9×7ウェーブレット変換とは、9画素を用いて1つのローパスフィルタの出力(ローパス係数)が得られ、7画素を用いて1つのハイパスフィルタの出力(ハイパス係数)が得られる変換である。主な違いはフィルタの範囲の違いであり、偶数位置中心にローパスフィルタ、奇数位置中心にハイパスフィルタが施されるのは同様である。
5×3ウェーブレット変換の変換式は次の通りである。
〔順変換〕
[step1] C(2i+1)=P(2i+1)-floor((P(2i)+P(2i+2))/2)
[step2] C(2i)=P(2i)+floor(((C(2i-1)+C(2i+1)+2)/4)
〔逆変換〕
[step1] P(2i)=C(2i)-floor((C(2i-1)+C(2i+1)+2)/4)
[step2] P(2i+1)=C(2i+1)+floor((P(2i)+P(2i+2))/2)
9×7ウェーブレット変換の変換式は次のとおりである。
〔順変換〕
[step1] C(2n+1)=P(2n+1)+α*(P(2n)+P(2n+2))
[step2] C(2n)=P(2n)+β*(C(2n-1)+C(2n+1))
[step3] C(2n+1)=C(2n+1)+γ*(C(2n)+C(2n+2))
[step4] C(2n)=C(2n)+δ*(C(2n-1)+C(2n+1))
[step5] C(2n+1)=K*C(2n+1)
[step6] C(2n)=(1/K)*C(2n)
〔逆変換〕
[step1] P(2n)=K*C(2n)
[step2] P(2n+1)=(1/K)*C(2n+1)
[step3] P(2n)=X(2n)-δ*(P(2n-1)+P(2n+1))
[step4] P(2n+1)=P(2n+1)-γ*(P(2n)+P(2n+2))
[step5] P(2n)=P(2n)-β*(P(2n-1)+P(2n+2))
[step6] P(2n)=P(2n+1)-α*(P(2n)+P(2n+2))
ただし、α=-1.586134342059924
β=-0.052980118572961
γ=0.882911075530934
δ=0.443506852043971
K=1.230174104914001
次に、ウェーブレット変換の手順及びデコンポジションレベル、解像度レベル、サブバンドの定義について説明する。
図6、図7、図8、図9は、16×16の画像(の輝度コンポーネント)に対して、5×3変換と呼ばれるウェーブレット変換を2次元(垂直方向及び水平方向)で施す過程の例を示したものである。図6の様にxy座標をとり、あるxについて、y座標がyである画素の画素値をP(y)(0≦y≦15)と表す。JPEG2000では、まず垂直方向(Y座標方向)に、y座標が奇数(y=2i+1)の画素を中心にハイパスフィルタを施して係数C(2i+1)を得、次にy座標が偶数(y=2i)の画素を中心にローパスフィルタを施して係数C(2i)を得る(これを全てのxについて行う)。ここで、ハイパスフィルタ、ローパスフィルタは、順に前記step1、step2式で表される。尚、画像の端部にフィルタを施す場合には、中心となる画素に対して隣接画素が十分に存在しないことがあり、この場合はミラーリングと呼ばれる方法によって適宜画素値を補うことになる。ミラーリングとは、画像端部の外側に仮想的な画素を想定し、画像端部の画素を対称軸として、端部の内側の画素値を、端部の外側の画素に対して線対称にコピーする周知の手法である(図6参照。ミラーリングは画像(タイル)の上下左右の4端全てで行われる)。
簡単のため、ハイパスフィルタで得られる係数をH、ローパスフィルタで得られる係数をLと表記すれば、前記垂直方向の変換によって図6の画像は図7のようなL係数、H係数の配列へと変換される。
続いて、今度は図7の係数配列に対して、水平方向に、x座標が奇数(y=2i+1)の係数を中心にハイパスフィルタを施し、次にx座標が偶数(x=2i)の係数を中心にローパスフィルタを施す(これを全てのyについて行う。この場合、step1、2のP(2i)等は係数値を表すものと読み替える)。
続いて、今度は図7の係数配列に対して、水平方向に、x座標が奇数(y=2i+1)の係数を中心にハイパスフィルタを施し、次にx座標が偶数(x=2i)の係数を中心にローパスフィルタを施す(これを全てのyについて行う。この場合、step1、2のP(2i)等は係数値を表すものと読み替える)。
簡単のため、前記L係数を中心にローパスフィルタを施して得られる係数をLL、前記L係数を中心にハイパスフィルタを施して得られる係数をHL、前記H係数を中心にローパスフィルタを施して得られる係数をLH、前記H係数を中心にハイパスフィルタを施して得られる係数をHH、と表記すれば、図7の係数配列は、図8の様な係数配列へと変換される。ここで同一の記号を付した係数群はサブバンドと呼ばれ、図8は4つのサブバンドで構成される。
以上で、垂直・水平の各方向に対して各1回のウェーブレット変換(1回のデコンポジション(分解))が終了し、上記LL係数だけを集めると(図9の様にサブバンド毎に集め、LLサブバンドだけ取り出すと)、ちょうど原画像の1/2の解像度の“画像”が得られる(このように、サブバンド毎に分類することをデインターリーブと呼び、図4のような状態に配置することを、インターリーブするという)。
また、2回目のウェーブレット変換は、該LLサブバンドを原画像と見なして、上記と同様の変換を行えばよい。この場合、並べ替えを行うと、模式的な図10が得られる(なお、図5、図6の係数の接頭の1や2は、水平・垂直に関し各何回のウェーブレット変換で該係数が得られたかを示しており、デコンポジションレベルと呼ばれる。また、デコンポジションレベルとほぼ逆の関係にある、解像度レベルの定義を図11に示す。なお、以上の議論において、1次元のみのウェーブレット変換をしたい場合には、いずれかの方向だけの処理を行えばよく、いずれかの方向に関してウェーブレット変換を行った回数がデコンポジションレベルとなる。
以上のようなデコンポジションとミラーリングを繰り返すと、ミラーリングの影響を受けた係数(ミラーリングを用いて算出された係数及びそれらの係数の値を用いて算出された係数)は指数的に増加し、タイルの内部に及んでいく。
例えば、画像の左端が偶数座標で、5×3フィルタの場合、フィルタのタップ長を元にした計算を行うと、左端から「2のデコンポジションレベル乗+1」だけの数の係数がミラーリングの影響を受ける(但し、デコンポジションレベル≧2の場合)ことがわかる。例えば、デコンポジションレベルが5の場合、2^5+1=33個の係数が、ミラーリングの影響を受けることになる。
また、画像の左端が奇数座標で、5×3フィルタの場合、左端から「2の(デコンポジションレベル−1)乗+1」だけの数の係数がミラーリングの影響を受ける(但し、デコンポジションレベル≧2の場合)。例えば、デコンポジションレベルが5の場合、2^4+1=17個の係数が、ミラーリングの影響を受けることになる。
さて一方、ウェーブレット逆変換は、図8の様なインターリーブされた係数の配列に対して、まず水平方向に、x座標が偶数(x=2i)の係数を中心に逆ローパスフィルタを施し、次にx座標が奇数(x=2i+1)の係数を中心に逆ハイパスフィルタを施す (これを全てのyについて行う)。ここで逆ローパスフィルタ、逆ハイパスフィルタは、順に前記step3、4式で表される。先と同様、画像の端部においては、中心となる係数に対して隣接係数が存在しないことがあり、この場合はも前記ミラーリングによって適宜係数値を補うことになる。
これにより、図8の係数配列は図7のような係数配列に変換(逆変換)される。続いて同様に、垂直方向に、y座標が偶数(y=2i)の係数を中心に逆ローパスフィルタを施し、次にy座標が奇数(y=2i+1)の係数を中心に逆ハイパスフィルタを施せば (これを全てのxについて行う)、1回のウェーブレット逆変換が終了し、図6の画像に戻る(再構成される)ことになる。尚ウェーブレット変換が複数回施されている場合は、やはり図6をLLサブバンドとみなし、HL等の他の係数を利用して同様の逆変換を繰り返せばよい。
以上のような逆変換(コンポジション)とミラーリングを繰り返すと、ミラーリングの影響を受けた係数の値を用いて逆ローパスフィルタ、逆ハイパスフィルタが施されて影響が伝搬される結果、ミラーリングの影響を受けた係数(ミラーリングを用いて算出された係数及びそれらの係数の値を用いて算出された係数)はさらに指数的に増加し、タイルの内部に及んでいく。
例えば、画像の左端が偶数座標の5×3フィルタの場合、逆変換によって、最終的に左端から「2の(デコンポジションレベル+1)乗」だけの数の画素(逆変換によって係数は最終的に画素になる)がミラーリングの影響を受ける(但し、デコンポジションレベル≧2の場合)。例えば、デコンポジションレベルが5の場合、2^6=64個の係数が、ミラーリングの影響を受けることになる。
また、画像の左端が奇数座標の5×3フィルタの場合、逆変換によって、最終的に左端から「2の(デコンポジションレベル+1)乗−1」だけの数の画素(逆変換によって係数は最終的に画素になる)がミラーリングの影響を受ける(但し、デコンポジションレベル≧2の場合)。例えば、デコンポジションレベルが5の場合、2^6−1=63個の係数が、ミラーリングの影響を受けることになる。
つまり、タイリングを行って5回デコンポジションを行う場合、タイルの境界から64又は63個の画素は、タイリングによる影響を受けており、タイリングを行わない場合の画素値とは異なる画素値となっていることになる。よって、タイリングによる影響を完全に除きたいのならば、タイルの周辺64又は63個の画素分を除去すればよいことになる。
しかし、5回デコンポジションを行う場合の典型的なタイルサイズは512画素×512画素であり、512に対して左端64画素、右端63画素を除く(あるいは除く分だけタイルサイズを大きくしておく)というのは、4割以上の画素を除くことになり、効率が悪い。
一方、タイリングによる影響(タイル境界の目立ち方)は、係数に施される量子化に伴って大きくなり(タイリングをしても量子化をしなければロスレスであることに注意されたい)、通常、偶数座標位置の係数(ローパス係数)に施される量子化は、奇数座標位置の係数(ハイパス係数)に施される量子化よりも遙かに小さい(画質への影響が、ローパス係数>>ハイパス係数だからである)。したがって、タイル境界の画素の奇偶によって、前記除去する数にはアクセントを付けることができる。
前記5×3フィルタでタイル左端境界の画素の座標が偶数(ローパスフィルタが施される位置)である場合、デコンポジションが5だと(理論的には)64画素を除去する必要があるが、タイル境界に位置するローパス係数に生じる量子化誤差は少なく、かつこの少ない誤差がタイル内部に伝搬される。
一方、前記5×3フィルタでタイル右端境界の画素の座標が奇数(ハイパスフィルタが施される位置)である場合、デコンポジションが5だと(理論的には)63画素を除去する必要があるが、タイル右端の境界に位置するハイパス係数に生じる量子化誤差は大きく、かつこの大きな誤差がタイル内部に伝搬される。
つまり、境界位置から除去する画素数は、
理論的には、 左64、右63画素 で左>右
であるが、誤差を考慮するなら、誤差の大小関係にあわせて、
左 << 右
と完全に逆転させていいのである。
さて、符号化処理の流れに戻るが、次に各サブバンドはプリシンクトとよばれる矩形に分割される。プリシンクトとは、サブバンドを矩形に分割したもの(をHL、LH、HHの3つのサブバンドについて集めた物。プリシンクトは3つで1まとまり。ただしLLサブバンドを分割したプリシンクトは1つで1まとまり)で、大まかには画像中の場所(Position)を表すものである。プリシンクトはサブバンドと同じサイズにでき、プリシンクトをさらに矩形に分割したものがコードブロックである(図12参照)。よって、物理的な大きさの序列は、画像≧タイル>サブバンド≧プリシンクト≧コードブロックとなる。
以上の分割の後、係数のエントロピー符号化(ビットプレーン単位でのMQ符号化)が、サブバンド単位で、コードブロック毎かつビットプレーン順に成される。本願実施例においては、図5の501のように、最上位ビットプレーンから、テーブルで予め規定された下位ビットプレーンまでをMQ符号化する。
本実施形態においては、前記「最上位ビットプレーンから、テーブルで予め規定された下位ビットプレーンまで」を必要な符号と見なすため、図5の502)において括弧で記載した不要な符号は存在しない。これら「最上位ビットプレーンから、テーブルで予め規定された下位ビットプレーンまで」の符号に対して、ヘッダをつけたものをパケットと呼ぶ。パケットヘッダには、当該パケットに含まれる符号に関する情報が含まれ、各パケットは独立に扱うことができる。いわばパケットは符号の単位である。
そして全てのプリシンクト(=全てのコードブロック=全てのサブバンド)に関して、必要なパケットのみを選択し、パケットを並べて符号を形成する。
以上をもとに、図13、図14は、本実施形態における具体例の概要及びその流れを図示したものである。本具体例では、原画像のサイズは横256×縦128画素である。
まず、原画像に対し、画素単位で、文字・線画を構成する画素(以下、文字画素)であるかどうかが判別される(ステップ1401)。
これは公知の像域判別技術によって行われ、本例では原画像の各画素に対し、エッジ検出オペレータとして周知のSobelフィルタを作用させる。Sobelフィルタは、注目画素を中心とした上下左右の9つの画素に対して、図15に示す第1の重みマトリクスを乗算して、その和HSを算出し、同様に図16に示す第2のマトリクスを乗算してその和VSを算する。そして、(HS^2+VS^2の)平方根をフィルタの出力値とする。
このフィルタ出力値が例えば30以上の場合に、注目画素が文字画素であると判断し、該注目画素位置の値を1にし、それ以外の画素の値を0にすることで、マスク3を生成する(二値画像の場合、黒=1、白=0が通例である)。
また、文字・線画領域に属さない画素(以下、非文字画素)の色を、当該画素の最も近傍に位置する文字画素の色で置換し、前景3を生成する(1402)。本例ではこの処理は、タイル内のすべての非文字画素に対して行われるため、図13のように、タイル内は文字の色で置換される。
次に、原画像おける文字・線画領域の画素の色を、当該画素の最も近傍に位置する非文字画素の色で置換し、前景fを生成する(1403)。
続いて、図17の中段の様に、前景Fを横133x縦128画素の画像1と、横130x縦128画素の画像2(画像1、2は、請求項1でいう第3の画像に相当)に2分割する(1404)。本例では、画像1の左端の画像のx座標は0(ローパスフィルタ位置)にとる。
続いて、原画像を128x128に2分割し、かつ画素値1の画像としてマスク1、2を作成する(1404)。マスク1、2はオーバーラップしていないため、上述した本実施形態の構成における「前記第3の画像の、当該画像に対応したマスクによって選択される領域同士」がオーバーラップする部分の面積は0であり、前記第3の画像同士のオーバーラップした部分の面積の和よりも小さい。
また、本例では、画像1の左端の画像のx座標は0(ローパスフィルタ位置)にとっているため、上述した本実施形態の構成における「前記第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向の端部(あるいは垂直方向の端部)に位置する画素Aに生じる量子化誤差」は、ローパス係数に生じる量子化誤差が基になる(“基になる"とは、逆ウェーブレット変換によって、1つの係数の誤差は周囲の係数に伝搬されるため、必ずしもイコールではないことを意味したものである)。
一方、画像2の左端の画像のx座標は0(ローパスフィルタ位置)にとっているため、上述した本実施形態の構成における「前記第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向のオーバーラップ側の端部(あるいは垂直方向の端部)に位置する画素A」とは、例えば図18で示した画素AAであり、この例においては、水平方向の座標は127(奇数)なので、請求項4でいう「画素Aに生じる量子化誤差」は、ハイパス係数に生じる量子化誤差が基になる(“基になる"とは、逆ウェーブレット変換によって1つの係数の誤差は周囲の係数に伝搬されるため、必ずしもイコールではないことを意味したものである)。
同様に、上述した本実施形態の構成における「前記第3の画像とは異なる別の第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向のオーバーラップ側の端部(あるいは垂直方向の端部)に位置する画素B」とは、例えば図18で示した画素BBであり、この例においては、水平方向の座標は128(偶数)なので、上述した本実施形態の構成における「画素Bに生じる量子化誤差」は、ローパス係数に生じる量子化誤差が基になる。
本例においては、一般的な例と同様に、ハイパス係数の量子化の程度はローパス係数よりも大きいため、上述した本実施形態の構成における「画素Aから第3の画像の端部であって画素Aに近い方に至る画素数」である(133−128=)5画素は、「画素Bから前記別の第3の画像の端部であって画素Bに近い方に至る画素数」である(130−128=)2画素よりも、大きくなっている。
ここで、5や2というオーバーラップ部分の画素数は、デコンポジションレベルから算出される理論計算値よりも小さくとっている。本例においては、オーバーラップ部分の符号量を最小にしたいからである。
なお、図18において、画像1のサイズを132ではなく、133にしたのには理由がある。132にした場合、画像1の右端は奇数座標になり、ハイパスフィルタが施される結果、大きな量子化が行われる。一方、133にすれば、画像1の右端は偶数座標になり、ローパスフィルタが施される結果、小さな量子化が行われる。よって画像右端からの「ミランリング+量子化誤差」の影響を小さくしようと思えば、画像右端を偶数座標にする方がよいのである。このように、画像サイズを奇数にし、かつ画像の両端にローパスフィルタが施されるような座標を用いる手法は、前記「J. X. Wei、 M. R. Pickering、 M. R. Frater and J. F. Arnold、 "A New Method for Reducing Boundary Artifacts in Block-Based Wavelet Image Compression、" in VCIP 2000、 K. N. Ngan、 T. Sikora、 M-T Sun Eds.、 Proc. of SPIE Vol. 4067、 pp. 1290-1295、 20-23 June 2000、 Perth、 Australia」に詳しい。
続いて、原画像と同じサイズの白い画像として背景画像を作成する(1406)。
そして、前景1と4つの前景画像を、5×3フィルタを用い、デコンポジションレベル=2としてJPEG2000で符号化する(1408)。本実施例においては、図5の501のように、最上位ビットプレーンから、図19のテーブルで予め規定されたビットプレーン数を除いたビットプレーンまでをMQ符号化する。図19のテーブルは、Y、Cb、Crのコンポ−ネント毎に、当該デコンポジションレベルの当該サブバンドにおいて、符号化しない下位ビットプレーンの数を示したものであある。例えは、Yコンポ−ネントのデコンポジションレベル1におけるHHサブバンドについては、下位の4枚分のビットプレーンの符号化を行わない。
続いて、マスク1、マスク2(ともに2値画像)を、周知のMMRで符号化する(1408)。最後に、背景をJPM仕様で符号化し(エントロピー符号化は行わず、符号として背景色を指定する。1409)、全ての前景、マスク、背景の符号を結合し、所望のヘッダを付してJPMの符号を得る。
図20、図21は、図18、19との関係で本実施形態における具体例を示したものである。上述した本実施形態の構成における「画素Aから第3の画像の端部であって画素Aに近い方に至る画素数」は、135−128=7画素に、「画素Bから前記別の第3の画像の端部であって画素Bに近い方に至る画素数」は132−128=4画素と、図18、19に比べて大きくなっている。
これは、図21の様に、符号化しないビットプレーン数を図19に比べて増やしているからである。
また、マスク1及びマスク2は、同じ画像サイズかつ同じ画素値を有するため、MMRの符号としては同じものになる。したがって、マスク2の符号を別個持つ必要はなく、典型的なMRC符号においては、図22のように、画像2に対応した間マスクの符号としては、マスク1への符号へのリンクを格納してやればよい。
上記リンクをJPMファイルで行う場合には、複数回参照される前記マスク1の符号を、Shared Data Entry Boxに格納し、画像2に対応したマスクの符号のリンク先として、Shared Data Refernce Box中に、前記Shared Data Entry BoxのIDを記載してやればよい(図23、図24、図25参照)。
なお、JPMにおける、背景に対する各レイアウトオブジェクトの配置や大きさの情報であるが、図26の様に、レイアウトオブジェクトのIDや重ね順、縦横の画素数、背景に対する配置上のオフセットは、Layout Object Header Boxに記載する。
また、各レイアウトオブジェクトを構成する前景、背景の配置や大きさの情報であるが、図27の様に、背景に対する配置上のオフセットは、Object Header Boxに記載する。各オブジェクトの画素数は、各オブジェクトの符号中に記載する。
図25のように、各オブジェクト(前景やマスク)は、背景に対する配置上のオフセットを設定できるため、マスク1の符号を参照しつつ、画像2の位置に配置することが可能である。
また、前景を4画像に分割する場合は、図28のように容易に構成できる。
また、図29に示すように構成してもよい。図29では、マスクの端部が1画素ずつの凹凸形状になっており、マスク1、マスク2の凹凸が互いにかみ合うように構成されている。
なお、上記説明ではファイルフォーマットとしてJPMを用いたが、MRCタイプであれば何でも良く、MRCタイプのPDFもその範疇であることは言うまでもない。
また、上述したフローチャートに示す動作は、ハードウェア、又は、ソフトウェア、あるいは、両者の複合構成によって実行することも可能である。
ソフトウェアによる処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させてもよい。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させてもよい。
例えば、プログラムは、記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことが可能である。あるいは、プログラムは、CD−ROM(Compact Disc Read Only Memory)、MO(Magneto optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的、あるいは、永続的に格納(記録)しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送してもよい。又は、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送してもよい。コンピュータでは、転送されてきたプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることが可能である。
また、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。
以上説明した本実施形態によれば、以下の効果を奏する。
本実施形態は、第1の画像(背景)及び第2の画像(前景)の少なくとも1つを画素毎に選択する画像(マスク)を符号化する装置であって、前記第2の画像(前景)をオーバーラップした複数の第3の画像に分割する手段と、前記複数の第3の画像を、周波数変換を用いて各々符号化する手段と、前記第3の画像に対応したマスクを生成する手段を有し、前記第3の画像の、当該画像に対応したマスクによって選択される領域同士がオーバーラップする部分の面積が、前記第3の画像同士のオーバーラップした部分の面積の和よりも小さいことを特徴とする。よって、エンコード又はデコードのときの消費メモリを小さく抑えながら、画像の分割境界が見えない符号化又は復号を行うことが可能となる。
また、上記本実施形態の構成において、前記第3の画像の、当該画像に対応したマスクによって選択される領域同士がオーバーラップしないこと特徴とする。よって、エンコード又はデコードのときの消費メモリを小さく抑え、かつ最小サイズのマスクを用いながら、画像の分割境界が見えない符号化又は復号を行うことが可能となる。
また、上記本実施形態の構成において、前記第3の画像に対応したマスクの境界が直線ではない部分を有することを特徴とする。よって、オーバーラップ量を少なくし、かつ境界の視認性を低下させることができる。
また、上記本実施形態の構成において、前記第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向のオーバーラップ側の端部(あるいは垂直方向の端部)に位置する画素Aに生じる量子化誤差が、前記第3の画像とは異なる別の第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向のオーバーラップ側の端部(あるいは垂直方向の端部)に位置する画素Bに生じる量子化誤差よりも大きい場合に、画素Aから第3の画像の端部であって画素Aに近い方に至る画素数を、画素Bから前記別の第3の画像の端部であって画素Bに近い方に至る画素数よりも、大きくしたことを特徴とする。よって、画素に生じる量子化誤差の大小関係を利用して、前記オーバーラップ部分を少なくすることができる。
また、上記本実施形態の構成において、前記第3の画像の当該画像に対応したマスクによって選択される部分の、水平方向の端部(あるいは垂直方向の端部)に位置する1つの画素に生じる量子化誤差が大きくなるほど、前記画素に隣接する前記オーバーラップ量を大きくすることを特徴とする。よって、量子化の程度に対応してタイル境界歪みを見えにくくすることができる。
また、上記本実施形態の構成において、前記マスクの符号を、前記複数の第3の画像の間で共有することを特徴とする。よって、MRCのファイルフォーマットの共有機構を利用して、ファイル容量を削減することができる。
本実施形態は、上記本実施形態の装置の構成を、方法、コンピュータが読取可能なプログラム、そのプログラムを記録した記録媒体にて実現することを特徴とする。よって、方法、プログラム、記録媒体においても、上記本実施形態の装置と同じ効果を得ることができる。
以上、本発明の実施形態について説明したが、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
本発明は、マルチレイヤの画像を符号化する装置、システム、方法、プログラム全般に応用できる。
MRCを説明するための概念図である。 MRC符号の構成例を示す図である。 JPM符号の構成例を示す図である。 本発明の一実施形態である符号化装置の構成を示す図である。 JPEG2000の圧縮・伸張の流れを示す図である。 DCレベルシフト後の原画像と座標系、ミラーリングを示す図である。 垂直方向へのフィルタリング後の係数の配列を示す図である。 水平方向へのフィルタリング後の係数の配列を示す図である。 並び替えた係数の配列を示す図である。 2回の変換後、並び替えた係数の配列を示す図である。 デコポジションレベルと解像度レベルの関係を示す図である。 画像、タイル、サブバンド、プリシンクト、コードブロックの関係を示す図である。 本発明の実施形態における具体例を説明するための概念図である。 本発明の実施形態における符号化処理を示すフローチャートである。 Sobelオペレータの例を示す図である。 Sobelオペレータの例を示す図である。 本発明の実施形態における、原画像、オーバーラップさせた画像、オーバーラップしないマスクの構成例を示す図である。 本発明の実施形態における、画素A及び画素Bの一例を示す図である。 本発明の実施形態における、符号化しないビットプレーン数の一例を示す図である。 本発明の実施形態における、画素A及び画素Bの一例を示す図である。 本発明の実施形態における、符号化しないビットプレーン数の一例を示す図である。 本発明の実施形態における、MRC符号ファイルの構成例を示す図である。 本発明の実施形態における、JPM符号ファイルの構成例を示す図である。 本発明の実施形態における、JPMファイルのShared Data Entry Boxの一例を示す図である。 本発明の実施形態における、JPMファイルのShared Data Reference Boxの一例を示す図である。 本発明の実施形態における、JPMファイルのLayout Object Header Boxの一例を示す図である。 本発明の実施形態における、JPMファイルのLayout Object Header Boxの一例を示す図である。 本発明の実施形態における、オーバーラップさせた画像、オーバーラップしないマスクの構成例を示す図である。 本発明の実施形態における、画素A及び画素Bの一例を示す図である。
符号の説明
1 CPU
2 RAM
3 HDD

Claims (14)

  1. 背景画像及び前景画像の少なくとも1つを画素毎に選択する画像を符号化する符号化装置であって、
    前記前景画像をオーバーラップした複数の分割画像に分割する手段と、
    前記複数の分割画像を、周波数変換を用いて各々符号化する手段と、
    前記分割画像に重ね合わせるマスク画像を生成する手段と、を有し、
    前記分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップする部分の面積は、前記分割画像同士のオーバーラップした部分の面積の和よりも小さいことを特徴とする符号化装置。
  2. 前記分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップしないことを特徴とする請求項1記載の符号化装置。
  3. 前記分割画像に重ね合わせるマスク画像の境界が直線ではない部分を有することを特徴とする請求項1又は2記載の符号化装置。
  4. 前記分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Aに生じる量子化誤差が、前記分割画像とは異なる別の分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Bに生じる量子化誤差よりも大きい場合に、前記画素Aから前記分割画像の端部であって前記画素Aに近い方に至る画素数を、前記画素Bから前記別の分割画像の端部であって前記画素Bに近い方に至る画素数よりも、大きくしたことを特徴とする請求項1から3のいずれか1項に記載の符号化装置。
  5. 前記分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向の端部あるいは垂直方向の端部に位置する1つの画素に生じる量子化誤差が大きくなるほど、前記画素に隣接する前記オーバーラップ量を大きくすることを特徴とする請求項1から4のいずれか1項に記載の符号化装置。
  6. 前記マスク画像の符号を、前記複数の分割画像の間で共有することを特徴とする請求項1から5のいずれか1項に記載の符号化装置。
  7. 背景画像及び前景画像の少なくとも1つを画素毎に選択する画像を符号化する装置が行う符号化方法であって、
    前記前景画像をオーバーラップした複数の分割画像に分割するステップと、
    前記複数の分割画像を、周波数変換を用いて各々符号化するステップと、
    前記分割画像に重ね合わせるマスク画像を生成するステップと、を有し、
    前記分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップする部分の面積は、前記分割画像同士のオーバーラップした部分の面積の和よりも小さいことを特徴とする符号化方法。
  8. 前記分割画像に重ね合わせるマスク画像によって選択される領域同士がオーバーラップしないことを特徴とする請求項7記載の符号化方法。
  9. 前記分割画像に重ね合わせるマスク画像の境界が直線ではない部分を有することを特徴とする請求項7又は8記載の符号化方法。
  10. 前記分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Aに生じる量子化誤差が、前記分割画像とは異なる別の分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向のオーバーラップ側の端部あるいは垂直方向の端部に位置する画素Bに生じる量子化誤差よりも大きい場合に、前記画素Aから前記分割画像の端部であって前記画素Aに近い方に至る画素数を、前記画素Bから前記別の分割画像の端部であって前記画素Bに近い方に至る画素数よりも、大きくしたことを特徴とする請求項7から9のいずれか1項に記載の符号化方法。
  11. 前記分割画像に重ね合わせるマスク画像によって選択される部分の、水平方向の端部あるいは垂直方向の端部に位置する1つの画素に生じる量子化誤差が大きくなるほど、前記画素に隣接する前記オーバーラップ量を大きくすることを特徴とする請求項7から10のいずれか1項に記載の符号化方法。
  12. 前記マスク画像の符号を、前記複数の分割画像の間で共有することを特徴とする請求項7から11のいずれか1項に記載の符号化方法。
  13. コンピュータが読み取り可能なプログラムであって、
    請求項7から12のいずれか1項に記載の符号化方法をコンピュータに実行させることを特徴とするプログラム。
  14. 請求項13記載のプログラムを記録したことを特徴とする記録媒体。
JP2008306265A 2008-12-01 2008-12-01 符号化装置、符号化方法、プログラム及び記録媒体 Expired - Fee Related JP5245771B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008306265A JP5245771B2 (ja) 2008-12-01 2008-12-01 符号化装置、符号化方法、プログラム及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008306265A JP5245771B2 (ja) 2008-12-01 2008-12-01 符号化装置、符号化方法、プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2010130622A JP2010130622A (ja) 2010-06-10
JP5245771B2 true JP5245771B2 (ja) 2013-07-24

Family

ID=42330617

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008306265A Expired - Fee Related JP5245771B2 (ja) 2008-12-01 2008-12-01 符号化装置、符号化方法、プログラム及び記録媒体

Country Status (1)

Country Link
JP (1) JP5245771B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019159820A1 (ja) * 2018-02-14 2019-08-22 シャープ株式会社 動画像符号化装置及び動画像復号装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1388815A3 (en) * 2002-04-25 2005-11-16 Microsoft Corporation Segmented layered image system
JP2007005844A (ja) * 2005-05-25 2007-01-11 Ricoh Co Ltd 符号化処理装置、符号化処理方法、プログラム及び情報記録媒体

Also Published As

Publication number Publication date
JP2010130622A (ja) 2010-06-10

Similar Documents

Publication Publication Date Title
US7577308B2 (en) Image data generation with reduced amount of processing
CN102640498B (zh) 通过纹理图案自适应分区块变换进行图像编解码的方法和设备
JP5017555B2 (ja) 画像符号化装置及び画像復号化装置
JP4902569B2 (ja) 画像符号化装置及びその制御方法
US7302105B2 (en) Moving image coding apparatus, moving image decoding apparatus, and methods therefor
US8295618B2 (en) Image processing apparatus, image processing method, and computer program product
JP5088607B2 (ja) プリントされるべきデジタル映像のデータへ導入される欠陥を減少する方法
JP4726040B2 (ja) 符号化処理装置、復号処理装置、符号化処理方法、復号処理方法、プログラム及び情報記録媒体
JP2007005844A (ja) 符号化処理装置、符号化処理方法、プログラム及び情報記録媒体
JP5245771B2 (ja) 符号化装置、符号化方法、プログラム及び記録媒体
JP3732674B2 (ja) カラー画像圧縮方法およびカラー画像圧縮装置
JP5267252B2 (ja) 画像符号化装置、画像符号化方法、画像符号化用記録媒体、画像符号化用プログラム
JP3973089B2 (ja) 画像処理装置、画像処理方法、プログラム及び記録媒体
JP2006340300A (ja) 信号処理方法及び信号処理装置、並びに信号処理プログラム及び情報記録媒体
JP4965534B2 (ja) 符号化装置、符号化方法、プログラム、および情報記録媒体
JP5191013B2 (ja) 画像符号化装置及び画像復号化装置
JP4988623B2 (ja) 画像符号化装置及び画像復号化装置
JP5594011B2 (ja) 符号化装置、符号化方法、プログラム及び情報記録媒体
JP4737663B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP2005151207A (ja) 画像符号化方法
JP4934081B2 (ja) 符号化装置、符号処理装置、符号化方法、符号処理方法、コンピュータプログラム及び記録媒体
JP5482177B2 (ja) 符号化装置、プログラム、記録媒体
JP4663489B2 (ja) 画像処理装置、デタイル方法、プログラム及び情報記録媒体
JP4743604B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP4194311B2 (ja) 動画像符号化装置及び動画像復号装置並びにそれらの方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121009

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121126

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130325

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

Free format text: PAYMENT UNTIL: 20160419

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees