JP2004023666A - 画像処理装置、プログラムおよび記録媒体 - Google Patents
画像処理装置、プログラムおよび記録媒体 Download PDFInfo
- Publication number
- JP2004023666A JP2004023666A JP2002178984A JP2002178984A JP2004023666A JP 2004023666 A JP2004023666 A JP 2004023666A JP 2002178984 A JP2002178984 A JP 2002178984A JP 2002178984 A JP2002178984 A JP 2002178984A JP 2004023666 A JP2004023666 A JP 2004023666A
- Authority
- JP
- Japan
- Prior art keywords
- low
- pass filter
- tile
- boundary
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009499 grossing Methods 0.000 claims abstract description 23
- 230000006835 compression Effects 0.000 claims description 33
- 238000007906 compression Methods 0.000 claims description 33
- 238000000034 method Methods 0.000 description 34
- 238000006243 chemical reaction Methods 0.000 description 15
- 238000000354 decomposition reaction Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 238000013139 quantization Methods 0.000 description 8
- 230000006837 decompression Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
【課題】タイル境界の方向に応じてローパスフィルタの周波数特性を適応的に制御してタイル境界歪みを抑制する。
【解決手段】タイル境界平滑化部6では、縦方向のタイル境界に対しては、横方向の周波数成分を除去するようなローパスフィルタをかけ、横方向のタイル境界に対しては、縦方向の周波数成分を除去するようなローパスフィルタをかけ、タイル境界の交点に対しては、縦方向横方向ともに周波数成分を除去するようなローパスフィルタをかける。
【選択図】 図8
【解決手段】タイル境界平滑化部6では、縦方向のタイル境界に対しては、横方向の周波数成分を除去するようなローパスフィルタをかけ、横方向のタイル境界に対しては、縦方向の周波数成分を除去するようなローパスフィルタをかけ、タイル境界の交点に対しては、縦方向横方向ともに周波数成分を除去するようなローパスフィルタをかける。
【選択図】 図8
Description
【0001】
【発明の属する技術分野】
本発明は、タイル境界歪みを抑制した画像処理装置に関し、例えばデジタルカメラ、インターネット、医療用画像、衛星通信用画像などに好適な技術である。
【0002】
【従来の技術】
高精細画像の取扱いを容易にする画像圧縮方式の一つとして、高圧縮率でも高画質な画像を復元可能なJPEG2000がある。JPEG2000では、画像を一般に矩形領域(タイル)に分割し、個々のタイルが圧縮伸長プロセスを実行する際の基本単位となる。従って、圧縮伸長動作はタイル毎に独立に行なわれる。この際、圧縮率の高い条件で圧縮伸長処理を行うと、「タイルの境界」が目立ってくるという問題が発生する。
【0003】
そこで、従来、この問題を解決するために、隣接するタイル同士で境界を互いにオーバーラップさせる方法が提案されている。ただし、JPEG2000のベースラインでは、隣接するタイル境界を重複させない規約になっている。
【0004】
また、他の方法として、タイル境界からの距離に応じて、ローパスフィルタの平滑化度を制御する方法がある。すなわち、例えば、タイル境界からの距離が大きくなるにつれてローパスフィルタの平滑化度を徐々に弱くする。また、タイル境界の近傍の画素に対してエッジ量を算出し、そのエッジ量に応じてローパスフィルタの平滑化度を制御する。例えば、エッジ量が大きくなるにつれてローパスフィルタの平滑化度を徐々に弱くする。さらに、タイル境界からの距離とその画素でのエッジ量に応じてローパスフィルタを制御する。つまり、タイル境界から離れるにつれて、また、エッジ量が大きくなるにつれてローパスフィルタの平滑化度を弱くする。
【0005】
これらの処理により、タイル境界歪みを抑制しつつ、タイル境界付近でのエッジ量が大きい場合にも帯状のぼやけた画像を発生させないように制御する。
【0006】
【発明が解決しようとする課題】
しかし、上記した方法では、タイル境界の方向に関わらず一様なローパスフィルタをかけているので、必要のないところまでローパスフィルタをかけている可能性もあり、これがコスト高となる。
【0007】
本発明は上記した問題点に鑑みてなされたもので、
本発明の目的は、タイル境界の方向に応じてローパスフィルタの周波数特性を適応的に制御することにより、無駄な部分にローパスフィルタをかけることなく、低コストで高速にタイル境界歪みを抑制した画像処理装置、プログラムおよび記録媒体を提供することにある。
【0008】
【課題を解決するための手段】
本発明では、画像をブロック(タイル)に分割し、ブロック(タイル)毎に圧縮伸長した画像データに対し、ブロック(タイル)境界の近傍の画素に適応的ローパスフィルタを施しブロック境界歪みを補正する手段を有する画像処理装置において、圧縮された信号にはブロック(タイル)境界の方向を特定する情報が含まれており、該ブロック(タイル)境界の方向に応じてローパスフィルタの周波数特性を適応的に制御する。
【0009】
本発明では、画像をブロック(タイル)に分割し、ブロック(タイル)毎に圧縮伸長した画像データに対し、ブロック(タイル)境界の近傍の画素に適応的ローパスフィルタを施しブロック(タイル)歪みを補正する手段を有する画像処理装置において、圧縮された信号にはブロック(タイル)境界の方向と位置を特定する情報が含まれており、ブロック(タイル)境界の方向とブロック(タイル)境界からの画素間距離とブロック(タイル)境界近傍画素におけるエッジ量に応じてローパスフィルタの強度を制御する。
【0010】
本発明では、縦方向のブロック(タイル)境界には、横方向の周波数成分を落とすようなローパスフィルタをかけ、横方向のブロック(タイル)境界には、縦方向の周波数成分を落とすようなローパスフィルタをかけ、ブロック(タイル)境界の交点には縦方向横方向ともに周波数成分を落とすようなローパスフィルタをかけることにより、ブロック(タイル)境界歪みを目立たなくする。
【0011】
本発明では、ローパスフィルタの平滑化される周波数成分がブロック(タイル)境界と垂直である。
【0012】
本発明では、縦方向のブロック(タイル)境界と横方向のブロック(タイル)境界でローパスフィルタを切り換える。
【0013】
本発明では、ブロック(タイル)境界の方向に応じてローパスフィルタの周波数成分を制御する。また、ブロック(タイル)境界の方向に応じて無駄なくローパスフィルタをかけることにより、従来に比べてコスト削減を図る。
【0014】
本発明では、例えば横方向のブロック(タイル)境界に対しては、縦長のローパスフィルタ(例えば1画素×5画素)をかけ、縦方向のブロック(タイル)境界に対しては、横長のローパスフィルタ(例えば5画素×1画素)をかけるというように、ブロック(タイル)境界の方向に応じてフィルタを切り換えることにより、無駄なローパスフィルタをかけることなく、演算量も減らすことができ、かつ、従来方式と同等なタイル境界歪みの効果が得られる。
【0015】
【発明の実施の形態】
以下、本発明の実施例を図面を用いて具体的に説明する。
本発明を説明する前に、JPEG2000についてその概要を説明する。
【0016】
図1は、JPEG2000アルゴリズムの基本を説明するための図である。JPEG2000アルゴリズムは、色空間変換・逆変換部111、2次元ウエーブレット変換・逆変換部112、量子化・逆量子化部113、エントロピー符号化・復号化部114、タグ処理部115で構成されている。
【0017】
図2は、タイル分割されたカラー画像の各コンポーネントの例を示す。カラー画像は、一般に、図2に示すように、原画像の各コンポーネント201、202、203(ここではRGB原色系)が、矩形領域(タイル)に分割される。そして、個々のタイル、例えば、R00,R01,…,R15/G00,G01,…,G15/B00,B01,…,B15が、圧縮伸長プロセスを実行する際の基本単位となる。従って、圧縮伸長動作は、コンポーネント毎、そしてタイル毎に、独立に行なわれる。
【0018】
符号化時には、各コンポーネントの各タイルのデータが、図1の色空間変換部111に入力され、色空間変換を施されたのち、2次元ウェーブレット変換部112で2次元ウェーブレット変換(順変換)が適用されて周波数帯に空間分割される。
【0019】
図3は、デコンポジション・レベル数が3の場合の、各デコンポジション・レベルにおけるサブ・バンドを示している。すなわち、原画像のタイル分割によって得られたタイル原画像(0LL)(デコンポジション・レベル0(300))に対して、2次元ウェーブレット変換を施し、デコンポジション・レベル1(301)に示すサブ・バンド(1LL,1HL,1LH,1HH)を分離する。そして引き続き、この階層における低周波成分1LLに対して、2次元ウェーブレット変換を施し、デコンポジション・レベル2(302)に示すサブ・バンド(2LL,2HL,2LH,2HH)を分離する。順次同様に、低周波成分2LLに対しても、2次元ウェーブレット変換を施し、デコンポジション・レベル3(303)に示すサブ・バンド(3LL,3HL,3LH,3HH)を分離する。更に図3では、各デコンポジション・レベルにおいて符号化の対象となるサブ・バンドを、グレーで表してある。例えば、デコンポジション・レベル数を3とした時、グレーで示したサブ・バンド(3HL,3LH,3HH,2HL,2LH,2HH,1HL,1LH,1HH)が符号化対象となり、3LLサブ・バンドは符号化されない。
【0020】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、図1の量子化部113で対象ビット周辺のビットからコンテキストが生成される。
【0021】
量子化処理が終わったウェーブレット係数は、個々のサブバンド毎に、「プレシンクト」と呼ばれる重複しない矩形に分割される。これは、インプリメンテーションでメモリを効率的に使うために導入されたものである。図5に示すように、一つのプレシンクトは、空間的に一致した3つの矩形領域からなっている。更に、個々のプレシンクトは、重複しない矩形の「コード・ブロック」に分けられる。これは、エントロピー・コーディングを行う際の基本単位となる。
【0022】
ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、JPEG2000では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素あるいはコード・ブロック毎に「ビットプレーン」に順位付けを行うことができる。図6は、その手順を簡単に示す。この例では、原画像(32×32画素)を16×16画素のタイル4つで分割した場合で、デコンポジション・レベル1のプレシンクトとコード・ブロックの大きさは、各々8×8画素と4×4画素としている。プレシンクトとコード・ブロックの番号は、ラスター順に付けられる。タイル境界外に対する画素拡張にはミラーリング法を使い、可逆(5,3)フィルタでウェーブレット変換を行い、デコンポジションレベル1のウェーブレット係数値を求めている。また、タイル0/プレシンクト3/コード・ブロック3について、代表的な「レイヤー」についての概念図をも併せて示している。レイヤーの構造は、ウェーブレット係数値を横方向(ビットプレーン方向)から見ると理解し易い。1つのレイヤーは任意の数のビットプレーンから構成される。この例では、レイヤー0、1、2、3は、各々、1、3、1、3つのビットプレーンから成っている。そして、LSBに近いビットプレーンを含むレイヤー程、先に量子化の対象となり、逆に、MSBに近いレイヤーは最後まで量子化されずに残ることになる。LSBに近いレイヤーから破棄する方法はトランケーションと呼ばれ、量子化率を細かく制御することが可能である。
【0023】
エントロピー符号化部114(図1参照)では、コンテキストと対象ビットから確率推定によって、各コンポーネントのタイルに対する符号化を行う。こうして、原画像の全てのコンポーネントについて、タイル単位で符号化処理が行われる。最後にタグ処理部115は、エントロピー符号化部114からの全符号化データを1本のコード・ストリームに結合するとともに、それにタグを付加する処理を行う。
【0024】
図4は、コードストリームの構造を簡単に示す。コード・ストリームの先頭と各タイルを構成する部分タイルの先頭にはヘッダと呼ばれるタグ情報が付加され、その後に、各タイルの符号化データが続く。そして、コード・ストリームの終端には、再びタグが置かれる。
【0025】
一方、復号化時には、符号化時とは逆に、各コンポーネントの各タイルのコード・ストリームから画像データを生成する。図1を用いて簡単に説明する。この場合、タグ処理部115は、外部より入力したコード・ストリームに付加されたタグ情報を解釈し、コード・ストリームを各コンポーネントの各タイルのコード・ストリームに分解し、その各コンポーネントの各タイルのコード・ストリーム毎に復号化処理が行われる。コード・ストリーム内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、逆量子化部113で、その対象ビット位置の周辺ビット(既に復号化を終えている)の並びからコンテキストが生成される。エントロピー復号化部114で、このコンテキストとコード・ストリームから確率推定によって復号化を行い対象ビットを生成し、それを対象ビットの位置に書き込む。このようにして復号化されたデータは各周波数帯域毎に空間分割されているため、これを2次元ウェーブレット逆変換部112で2次元ウェーブレット逆変換を行うことにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータは色空間逆変換部111によって元の表色系のデータに変換される。
【0026】
図7は、ミラーリング法を用いた画素拡張の一例を示す図である。図7に示すように、注目するタイル401のある列に「ABCDE」という文字が並んでいる。各文字が1画素の値に対応し、最初の文字「A」がk番目、最後の文字「E」がm番目の画素であるとする。ウェーブレット変換をこのタイル401に対して行うときには、k番目以前の画素とm番目以降の画素がそれぞれ数画素必要になるので、図7に示すように、ミラーリング法によってタイル境界401aの外に画素を拡張する必要がある。画素402は拡張された画素を示す。
【0027】
(実施例1)
図8は、本発明の実施例1に係る伸長部の構成を示す。タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。本実施例では、色空間逆変換部5の後段にタイル境界平滑化部6が設けられている。色空間逆変換部5によって得られたRGBデータに対し、タイル境界平滑化部6でタイル境界の近傍の画素を平滑化して、タイル境界の歪みを目立たなくする。
【0028】
図9は、タイル境界平滑化部の具体例を示す。入力画像が4つのタイル0〜3に分割され、タイル境界の近傍の画素(図9(a)の灰色の領域の画素(例えば境界を挟んだ計8画素))に対してローパスフィルタをかける。
【0029】
図9(b)は、縦方向タイル境界におけるローパスフィルタの一例を示す。(b)に示すように、タイル境界に垂直なローパスフィルタをかけることにより、縦方向のタイル境界歪みを抑制する。本実施例では、1次元の横長のフィルタ(5画素×1画素)の例で説明したが、横方向の周波数成分を除去するような周波数特性を有するローパスフィルタであればいかなるフィルタであってもよい。
【0030】
図9(c)は、横方向タイル境界におけるローパスフィルタの一例を示す。(c)に示すように、タイル境界に垂直なローパスフィルタをかけることにより、横方向のタイル境界歪みを抑制する。本実施例では、1次元の縦長のフィルタ(1画素×5画素)の例で説明したが、縦方向の周波数成分を除去するような周波数特性を有するローパスフィルタであればいかなるフィルタであってもよい。
【0031】
図9(d)は、タイル境界とタイル境界の交点の近傍におけるローパスフィルタの一例を示す。(d)に示すように、十字型のローパスフィルタをかけることにより、タイル境界交点付近のタイル境界歪みを抑制する。本実施例では、十字型のフィルタの例で説明したが、縦方向と横方向の周波数成分ともに除去するような周波数特性を有するローパスフィルタであればいかなるフィルタであってもよい。
【0032】
なお、上記した実施例はJPEG2000の圧縮伸長方式を例に説明したが、圧縮伸長方式はこれに限定されず、圧縮符号にブロック境界位置情報が含まれるような圧縮伸長方式であれば、いかなる圧縮伸長方式を用いても良い。
【0033】
(実施例2)
図10は、本発明の実施例2に係る伸長部の構成を示す。タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。本実施例では、タイル境界からの画素間距離とタイル境界近傍の画素のエッジ量を算出する距離/エッジ量算出部7を設け、算出された距離とエッジ量がタイル境界平滑化部6aに入力される構成を採る。
【0034】
まず、本実施例では、タイル境界からの画素間距離に応じてタイル境界平滑化部6aのローパスフィルタ強度を切り換える。
【0035】
図11は、タイル境界からの距離の算出方法を説明する図である。各画素において、上下左右のタイル境界からの距離が算出される。それらの最小値を該画素におけるタイル境界からの距離とする。なお、タイル境界の位置、タイル境界の方向は符号化データに含まれる情報により取得する。
【0036】
図12に示すように、本実施例では縦方向のタイル境界の近傍の画素に対しては、1次元の横方向のローパスフィルタを用いる(図12(a))。横方向のタイル境界の近傍の画素に対しては、1次元の縦方向のローパスフィルタを用いる(図12(b))。タイル境界の交点の近傍画素に対しては、十字型のローパスフィルタを用いる(図12(c))。実施例1と同様に、これは一例であり、縦方向のタイル境界近傍の画素には横方向の周波数成分を除去するようなフィルタであればいかなるフィルタであってもよいし、同様に、横方向のタイル境界近傍の画素には縦方向の周波数成分を除去するようなフィルタならばいかなるフィルタであってもよいし、タイル境界の交点近傍の画素には縦方向周波数成分と横方向の周波数成分をともに除去するようなフィルタであればいかなるフィルタであってもよい。
【0037】
本実施例では、タイル境界からの画素間距離を用いて図12のローパスフィルタを適応的に処理する。すなわち、この例では、ローパスフィルタは注目画素の位置の係数(フィルタの中央の係数m)のみ変化させる。画素間距離が大きくなるにつれて、徐々に係数mの値を大きくする。図12の例では、中央の係数mは、m=4+64*dで算出される。ここでdは画素間距離を表す。これは、タイル境界からの画素間距離が大きくなるにつれて施すローパスフィルタの平滑化度を弱くすることを意味する。
【0038】
また、本実施例では、タイル境界からの画素間距離とタイル境界近傍の画素のエッジ量に応じて、タイル境界平滑化部6aのローパスフィルタ強度を切り換える処理も行う。図13は、タイル境界からの画素間距離とエッジ量によるローパスフィルタ制御を説明する図である。
【0039】
距離/エッジ量算出部7はタイル境界近傍の画素に対し、
(1)タイル境界からの画素間距離(図13(a))
(2)エッジ量算出フィルタ(図13(b))でエッジ量
を算出する。
【0040】
本実施例では、タイル境界が縦方向の近傍画素ならば、図13(c)に示すような横長のローパスフィルタをかける。タイル境界が横方向の近傍画素ならば図13(d)に示すような縦長のローパスフィルタをかける。タイル境界の交点近傍の画素ならば、図13(e)に示すような十字型のローパスフィルタをかける。これは一例であり、縦方向のタイル境界近傍の画素には横方向の周波数成分を除去するようなフィルタであればいかなるフィルタであってもよいし、横方向のタイル境界近傍の画素には縦方向の周波数成分を除去するようなフィルタならばいかなるフィルタであってもよいし、タイル境界の交点近傍の画素には縦方向周波数成分と横方向の周波数成分をともに除去するようなフィルタであればいかなるフィルタであってもよい。
【0041】
そして、算出された画素間距離と斜め方向のエッジ量に応じて、タイル境界平滑部6aのローパスフィルタ強度を制御する。なお、エッジ量として斜め方向のエッジ量を算出する理由は、縦、横方向のタイル境界をエッジとして検出しないためである。
【0042】
本実施例では、画素間距離が大きいほど、またエッジ量の絶対値が大きいほど、ローパスフィルタの中央値mを大きくする。図13(c)〜(e)に示す適応的ローパスフィルタの例では、中央の係数値をmとし、画素間距離をdとし、上記したエッジ量をEとするとき、
d=0 ならば
abs(E)>=255 ならば m=4+abs(E)
abs(E)< 255 ならば m=4
d>0 ならば m=max(4+64*d,4+abs(E))
によって、中央の係数値mを算出する。
【0043】
これは、タイル境界からの画素間距離dが大きいほど、タイル境界近傍の画素のエッジ量の絶対値abs(E)が大きいほど、施すローパスフィルタの平滑化度を小さくする、ということを意味する。d=0の場合のみ独立に制御した理由は、タイル境界の最近傍の画素に対してはある程度平滑化度の強いローパスフィルタを施さないと、タイル境界が目立ってしまうからである。
【0044】
なお、本実施例では、JPEG2000の圧縮伸長方式を例に説明したが、圧縮伸長方式はこれに限定されず、圧縮符号にブロック境界位置情報が含まれるような圧縮伸長方式であれば、いかなる圧縮伸長方式を用いても良い。
【0045】
(実施例3)
実施例3に係る伸長部の構成は実施例1と同様である。また、タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。
【0046】
本実施例では、圧縮率に応じてタイル境界平滑化部6のローパスフィルタ強度を可変にする。一般に圧縮率が大きい画像ほどタイル境界歪みが目立つ。従って、圧縮率の小さい画像に強いローパスフィルタをかけると、ローパスフィルタをかけた部分がぼやけて目立ってしまう。逆に、圧縮率の大きな画像に弱いローパスフィルタをかけてもタイル境界歪み抑制の効果がでにくい。
【0047】
そこで、本実施例では、図14に示すように、圧縮率に応じてローパスフィルタの強度を可変にする。例えば、比較的圧縮率の大きい圧縮率1/40の場合には、図14(a)に示すような平滑化度の強いローパスフィルタを用いる。また、例えば、比較的圧縮率の小さい圧縮率1/20の場合には、図14(b)に示すような平滑化の弱いローパスフィルタを用いるような構成にする。
【0048】
また、ウェーブレット変換の階層数(デコンポジションレベル)に応じてローパスフィルタをかけるタイル境界からの画素間距離のしきい値を制御できる。例えば、3階層のウェーブレット変換を用いて符号化されたデータは、ミラーリングによりタイル境界の内側8画素がその影響を受ける。このため、タイル境界の内側8画素に対してローパスフィルタをかける。
【0049】
また、例えば、2階層のウェーブレット変換を用いて符号化されたデータは、ミラーリングによりタイル境界の内側の4画素がその影響を受ける。このため、タイル境界の内側4画素に対してローパスフィルタをかける。
【0050】
つまり、n階層のウェーブレット変換を用いて符号化されたデータは、タイル境界の内側2のn乗の画素までローパスフィルタをかけるような構成にする。このように、符号時のウェーブレット階層数に応じてローパスフィルタをかける範囲を最適にすることができる。また、タイル境界の内側何画素までローパスフィルタをかけるかは、コストや処理時間、画像品質などを考慮して調整することもできる。
【0051】
さらに、ウェーブレット変換方法に応じてローパスフィルタを切り換えても良い。例えば、5×3フィルタでのウェーブレット変換と9×7フィルタでのウェーブレット変換があるが、それぞれの変換方法で圧縮伸長された画像に対し、周波数特性の異なるローパスフィルタを施してもよい。
【0052】
なお、上記実施例は、JPEG2000の圧縮伸長方式を例に説明したが、圧縮伸長方式はこれに限定されず、圧縮符号にブロック境界位置情報が含まれるような圧縮伸長方式であれば、いかなる圧縮伸長方式を用いても良い。
【0053】
(実施例4)
図15は、本発明の実施例4に係る伸長部の構成を示す。実施例1の構成にさらに補正タイル境界限定部8が追加されている。タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。
【0054】
本実施例では、すべてのタイル境界近傍画素にローパスフィルタをかけるのではなく、ローパスフィルタをかけるべきタイル境界を限定して、そのタイル境界近傍画素にのみにローパスフィルタをかける。図16、図17はその例を示し、ROI領域内のタイル境界の近傍画素のみにローパスフィルタをかける。ROI領域とは、画像全体から切り出して拡大したり、他の部分に比べて強調したりする場合の、画像全体から見たある一部分である。
【0055】
図16は、ROI領域がタイル境界に沿った領域である場合の例である。図のようにROI領域が設定されたら、ローパスフィルタをかけるタイル境界は図の右側の点線部とする。
【0056】
図17は、ROI領域がタイル境界に沿っていない領域である場合の例である。図のようにROI領域が設定されたら、ローパスフィルタをかけるタイル境界は図の右側の点線部のようにする。タイル境界近傍の画素がROI内部か否かを演算によって算出し、該タイル境界近傍の画素がROI内部であればその画素にローパスフィルタをかける。該タイル境界近傍の画素がROI外部であれば、その画素にはローパスフィルタをかけない構成にする。
【0057】
なお、上記したように本発明はハードウェアによって実施できるが、汎用のコンピュータシステムを利用し、ソフトウェアによっても実施できることは言うまでもない。ソフトウェアで実施する場合には、本発明の画像処理装置の各手段(ブロック分割、圧縮伸長、ブロック境界歪み補正など)として、コンピュータを機能(動作)させるためのプログラムが記録媒体などに記録されていて、該記録媒体などからプログラムがコンピュータシステムに読み込まれてCPUによって実行されることにより、本発明が実施される。
【0058】
【発明の効果】
以上、説明したように、本発明によれば、以下のような効果が得られる。
(1)ブロック境界の方向に応じてローパスフィルタを切り換えることにより、ブロック境界の方向を考慮しない場合に比べて、無駄なローパスフィルタをかけずに済み、ブロック境界歪みに対して、最適でしかも低コストなフィルタを自動的に選択できる。
(2)ブロック境界の方向とブロック境界からの距離と注目画素におけるエッジ量に応じてローパスフィルタの強度を適応的に制御することにより、ブロック境界歪みを抑制しつつ、ブロック境界近傍でエッジが強い場合の画質劣化をより目立たなくすることができる。
(3)圧縮率に応じて最適な強度のローパスフィルタをかけることにより、いかなる圧縮率においてもタイル境界歪みを抑制することができる。
(4)ローパスフィルタをかけるべきタイル境界画素を制御することにより、例えば、ROI領域の内側のみにローパスフィルタなどの制御ができ、タイル境界歪み抑制のための処理時間を短縮することができる。
【図面の簡単な説明】
【図1】JPEG2000アルゴリズムの基本を説明するための図である。
【図2】タイル分割されたカラー画像の各コンポーネントの例を示す。
【図3】デコンポジション・レベル数が3の場合の、各デコンポジション・レベルにおけるサブ・バンドを示す。
【図4】コードストリームの構造を示す。
【図5】プレシンクトとコード・ブロックの関係を説明する図である。
【図6】ウエーブレット係数値をビットプレーンに順位付けする手順を示す。
【図7】ミラーリング法を用いた画素拡張の一例を示す。
【図8】本発明の実施例1に係る伸長部の構成を示す。
【図9】タイル境界平滑化部の具体例を示す。
【図10】本発明の実施例2に係る伸長部の構成を示す。
【図11】タイル境界からの距離の算出方法を説明する図である。
【図12】画素間距離によるローパスフィルタ制御を説明する図である。
【図13】タイル境界からの距離とエッジ量によるローパスフィルタ制御を説明する図である。
【図14】圧縮率に応じたローパスフィルタ制御を説明する図である。
【図15】本発明の実施例4に係る伸長部の構成を示す。
【図16】補正タイル境界限定部でローパスフィルタをかけるタイル境界を限定する第1の例を示す。
【図17】補正タイル境界限定部でローパスフィルタをかけるタイル境界を限定する第2の例を示す。
【符号の説明】
1 タグ処理部
2 エントロピー復号化部
3 逆量子化部
4 2次元ウェーブレット逆変換部
5 色空間逆変換部
6 タイル境界平滑化部
【発明の属する技術分野】
本発明は、タイル境界歪みを抑制した画像処理装置に関し、例えばデジタルカメラ、インターネット、医療用画像、衛星通信用画像などに好適な技術である。
【0002】
【従来の技術】
高精細画像の取扱いを容易にする画像圧縮方式の一つとして、高圧縮率でも高画質な画像を復元可能なJPEG2000がある。JPEG2000では、画像を一般に矩形領域(タイル)に分割し、個々のタイルが圧縮伸長プロセスを実行する際の基本単位となる。従って、圧縮伸長動作はタイル毎に独立に行なわれる。この際、圧縮率の高い条件で圧縮伸長処理を行うと、「タイルの境界」が目立ってくるという問題が発生する。
【0003】
そこで、従来、この問題を解決するために、隣接するタイル同士で境界を互いにオーバーラップさせる方法が提案されている。ただし、JPEG2000のベースラインでは、隣接するタイル境界を重複させない規約になっている。
【0004】
また、他の方法として、タイル境界からの距離に応じて、ローパスフィルタの平滑化度を制御する方法がある。すなわち、例えば、タイル境界からの距離が大きくなるにつれてローパスフィルタの平滑化度を徐々に弱くする。また、タイル境界の近傍の画素に対してエッジ量を算出し、そのエッジ量に応じてローパスフィルタの平滑化度を制御する。例えば、エッジ量が大きくなるにつれてローパスフィルタの平滑化度を徐々に弱くする。さらに、タイル境界からの距離とその画素でのエッジ量に応じてローパスフィルタを制御する。つまり、タイル境界から離れるにつれて、また、エッジ量が大きくなるにつれてローパスフィルタの平滑化度を弱くする。
【0005】
これらの処理により、タイル境界歪みを抑制しつつ、タイル境界付近でのエッジ量が大きい場合にも帯状のぼやけた画像を発生させないように制御する。
【0006】
【発明が解決しようとする課題】
しかし、上記した方法では、タイル境界の方向に関わらず一様なローパスフィルタをかけているので、必要のないところまでローパスフィルタをかけている可能性もあり、これがコスト高となる。
【0007】
本発明は上記した問題点に鑑みてなされたもので、
本発明の目的は、タイル境界の方向に応じてローパスフィルタの周波数特性を適応的に制御することにより、無駄な部分にローパスフィルタをかけることなく、低コストで高速にタイル境界歪みを抑制した画像処理装置、プログラムおよび記録媒体を提供することにある。
【0008】
【課題を解決するための手段】
本発明では、画像をブロック(タイル)に分割し、ブロック(タイル)毎に圧縮伸長した画像データに対し、ブロック(タイル)境界の近傍の画素に適応的ローパスフィルタを施しブロック境界歪みを補正する手段を有する画像処理装置において、圧縮された信号にはブロック(タイル)境界の方向を特定する情報が含まれており、該ブロック(タイル)境界の方向に応じてローパスフィルタの周波数特性を適応的に制御する。
【0009】
本発明では、画像をブロック(タイル)に分割し、ブロック(タイル)毎に圧縮伸長した画像データに対し、ブロック(タイル)境界の近傍の画素に適応的ローパスフィルタを施しブロック(タイル)歪みを補正する手段を有する画像処理装置において、圧縮された信号にはブロック(タイル)境界の方向と位置を特定する情報が含まれており、ブロック(タイル)境界の方向とブロック(タイル)境界からの画素間距離とブロック(タイル)境界近傍画素におけるエッジ量に応じてローパスフィルタの強度を制御する。
【0010】
本発明では、縦方向のブロック(タイル)境界には、横方向の周波数成分を落とすようなローパスフィルタをかけ、横方向のブロック(タイル)境界には、縦方向の周波数成分を落とすようなローパスフィルタをかけ、ブロック(タイル)境界の交点には縦方向横方向ともに周波数成分を落とすようなローパスフィルタをかけることにより、ブロック(タイル)境界歪みを目立たなくする。
【0011】
本発明では、ローパスフィルタの平滑化される周波数成分がブロック(タイル)境界と垂直である。
【0012】
本発明では、縦方向のブロック(タイル)境界と横方向のブロック(タイル)境界でローパスフィルタを切り換える。
【0013】
本発明では、ブロック(タイル)境界の方向に応じてローパスフィルタの周波数成分を制御する。また、ブロック(タイル)境界の方向に応じて無駄なくローパスフィルタをかけることにより、従来に比べてコスト削減を図る。
【0014】
本発明では、例えば横方向のブロック(タイル)境界に対しては、縦長のローパスフィルタ(例えば1画素×5画素)をかけ、縦方向のブロック(タイル)境界に対しては、横長のローパスフィルタ(例えば5画素×1画素)をかけるというように、ブロック(タイル)境界の方向に応じてフィルタを切り換えることにより、無駄なローパスフィルタをかけることなく、演算量も減らすことができ、かつ、従来方式と同等なタイル境界歪みの効果が得られる。
【0015】
【発明の実施の形態】
以下、本発明の実施例を図面を用いて具体的に説明する。
本発明を説明する前に、JPEG2000についてその概要を説明する。
【0016】
図1は、JPEG2000アルゴリズムの基本を説明するための図である。JPEG2000アルゴリズムは、色空間変換・逆変換部111、2次元ウエーブレット変換・逆変換部112、量子化・逆量子化部113、エントロピー符号化・復号化部114、タグ処理部115で構成されている。
【0017】
図2は、タイル分割されたカラー画像の各コンポーネントの例を示す。カラー画像は、一般に、図2に示すように、原画像の各コンポーネント201、202、203(ここではRGB原色系)が、矩形領域(タイル)に分割される。そして、個々のタイル、例えば、R00,R01,…,R15/G00,G01,…,G15/B00,B01,…,B15が、圧縮伸長プロセスを実行する際の基本単位となる。従って、圧縮伸長動作は、コンポーネント毎、そしてタイル毎に、独立に行なわれる。
【0018】
符号化時には、各コンポーネントの各タイルのデータが、図1の色空間変換部111に入力され、色空間変換を施されたのち、2次元ウェーブレット変換部112で2次元ウェーブレット変換(順変換)が適用されて周波数帯に空間分割される。
【0019】
図3は、デコンポジション・レベル数が3の場合の、各デコンポジション・レベルにおけるサブ・バンドを示している。すなわち、原画像のタイル分割によって得られたタイル原画像(0LL)(デコンポジション・レベル0(300))に対して、2次元ウェーブレット変換を施し、デコンポジション・レベル1(301)に示すサブ・バンド(1LL,1HL,1LH,1HH)を分離する。そして引き続き、この階層における低周波成分1LLに対して、2次元ウェーブレット変換を施し、デコンポジション・レベル2(302)に示すサブ・バンド(2LL,2HL,2LH,2HH)を分離する。順次同様に、低周波成分2LLに対しても、2次元ウェーブレット変換を施し、デコンポジション・レベル3(303)に示すサブ・バンド(3LL,3HL,3LH,3HH)を分離する。更に図3では、各デコンポジション・レベルにおいて符号化の対象となるサブ・バンドを、グレーで表してある。例えば、デコンポジション・レベル数を3とした時、グレーで示したサブ・バンド(3HL,3LH,3HH,2HL,2LH,2HH,1HL,1LH,1HH)が符号化対象となり、3LLサブ・バンドは符号化されない。
【0020】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、図1の量子化部113で対象ビット周辺のビットからコンテキストが生成される。
【0021】
量子化処理が終わったウェーブレット係数は、個々のサブバンド毎に、「プレシンクト」と呼ばれる重複しない矩形に分割される。これは、インプリメンテーションでメモリを効率的に使うために導入されたものである。図5に示すように、一つのプレシンクトは、空間的に一致した3つの矩形領域からなっている。更に、個々のプレシンクトは、重複しない矩形の「コード・ブロック」に分けられる。これは、エントロピー・コーディングを行う際の基本単位となる。
【0022】
ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、JPEG2000では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素あるいはコード・ブロック毎に「ビットプレーン」に順位付けを行うことができる。図6は、その手順を簡単に示す。この例では、原画像(32×32画素)を16×16画素のタイル4つで分割した場合で、デコンポジション・レベル1のプレシンクトとコード・ブロックの大きさは、各々8×8画素と4×4画素としている。プレシンクトとコード・ブロックの番号は、ラスター順に付けられる。タイル境界外に対する画素拡張にはミラーリング法を使い、可逆(5,3)フィルタでウェーブレット変換を行い、デコンポジションレベル1のウェーブレット係数値を求めている。また、タイル0/プレシンクト3/コード・ブロック3について、代表的な「レイヤー」についての概念図をも併せて示している。レイヤーの構造は、ウェーブレット係数値を横方向(ビットプレーン方向)から見ると理解し易い。1つのレイヤーは任意の数のビットプレーンから構成される。この例では、レイヤー0、1、2、3は、各々、1、3、1、3つのビットプレーンから成っている。そして、LSBに近いビットプレーンを含むレイヤー程、先に量子化の対象となり、逆に、MSBに近いレイヤーは最後まで量子化されずに残ることになる。LSBに近いレイヤーから破棄する方法はトランケーションと呼ばれ、量子化率を細かく制御することが可能である。
【0023】
エントロピー符号化部114(図1参照)では、コンテキストと対象ビットから確率推定によって、各コンポーネントのタイルに対する符号化を行う。こうして、原画像の全てのコンポーネントについて、タイル単位で符号化処理が行われる。最後にタグ処理部115は、エントロピー符号化部114からの全符号化データを1本のコード・ストリームに結合するとともに、それにタグを付加する処理を行う。
【0024】
図4は、コードストリームの構造を簡単に示す。コード・ストリームの先頭と各タイルを構成する部分タイルの先頭にはヘッダと呼ばれるタグ情報が付加され、その後に、各タイルの符号化データが続く。そして、コード・ストリームの終端には、再びタグが置かれる。
【0025】
一方、復号化時には、符号化時とは逆に、各コンポーネントの各タイルのコード・ストリームから画像データを生成する。図1を用いて簡単に説明する。この場合、タグ処理部115は、外部より入力したコード・ストリームに付加されたタグ情報を解釈し、コード・ストリームを各コンポーネントの各タイルのコード・ストリームに分解し、その各コンポーネントの各タイルのコード・ストリーム毎に復号化処理が行われる。コード・ストリーム内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、逆量子化部113で、その対象ビット位置の周辺ビット(既に復号化を終えている)の並びからコンテキストが生成される。エントロピー復号化部114で、このコンテキストとコード・ストリームから確率推定によって復号化を行い対象ビットを生成し、それを対象ビットの位置に書き込む。このようにして復号化されたデータは各周波数帯域毎に空間分割されているため、これを2次元ウェーブレット逆変換部112で2次元ウェーブレット逆変換を行うことにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータは色空間逆変換部111によって元の表色系のデータに変換される。
【0026】
図7は、ミラーリング法を用いた画素拡張の一例を示す図である。図7に示すように、注目するタイル401のある列に「ABCDE」という文字が並んでいる。各文字が1画素の値に対応し、最初の文字「A」がk番目、最後の文字「E」がm番目の画素であるとする。ウェーブレット変換をこのタイル401に対して行うときには、k番目以前の画素とm番目以降の画素がそれぞれ数画素必要になるので、図7に示すように、ミラーリング法によってタイル境界401aの外に画素を拡張する必要がある。画素402は拡張された画素を示す。
【0027】
(実施例1)
図8は、本発明の実施例1に係る伸長部の構成を示す。タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。本実施例では、色空間逆変換部5の後段にタイル境界平滑化部6が設けられている。色空間逆変換部5によって得られたRGBデータに対し、タイル境界平滑化部6でタイル境界の近傍の画素を平滑化して、タイル境界の歪みを目立たなくする。
【0028】
図9は、タイル境界平滑化部の具体例を示す。入力画像が4つのタイル0〜3に分割され、タイル境界の近傍の画素(図9(a)の灰色の領域の画素(例えば境界を挟んだ計8画素))に対してローパスフィルタをかける。
【0029】
図9(b)は、縦方向タイル境界におけるローパスフィルタの一例を示す。(b)に示すように、タイル境界に垂直なローパスフィルタをかけることにより、縦方向のタイル境界歪みを抑制する。本実施例では、1次元の横長のフィルタ(5画素×1画素)の例で説明したが、横方向の周波数成分を除去するような周波数特性を有するローパスフィルタであればいかなるフィルタであってもよい。
【0030】
図9(c)は、横方向タイル境界におけるローパスフィルタの一例を示す。(c)に示すように、タイル境界に垂直なローパスフィルタをかけることにより、横方向のタイル境界歪みを抑制する。本実施例では、1次元の縦長のフィルタ(1画素×5画素)の例で説明したが、縦方向の周波数成分を除去するような周波数特性を有するローパスフィルタであればいかなるフィルタであってもよい。
【0031】
図9(d)は、タイル境界とタイル境界の交点の近傍におけるローパスフィルタの一例を示す。(d)に示すように、十字型のローパスフィルタをかけることにより、タイル境界交点付近のタイル境界歪みを抑制する。本実施例では、十字型のフィルタの例で説明したが、縦方向と横方向の周波数成分ともに除去するような周波数特性を有するローパスフィルタであればいかなるフィルタであってもよい。
【0032】
なお、上記した実施例はJPEG2000の圧縮伸長方式を例に説明したが、圧縮伸長方式はこれに限定されず、圧縮符号にブロック境界位置情報が含まれるような圧縮伸長方式であれば、いかなる圧縮伸長方式を用いても良い。
【0033】
(実施例2)
図10は、本発明の実施例2に係る伸長部の構成を示す。タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。本実施例では、タイル境界からの画素間距離とタイル境界近傍の画素のエッジ量を算出する距離/エッジ量算出部7を設け、算出された距離とエッジ量がタイル境界平滑化部6aに入力される構成を採る。
【0034】
まず、本実施例では、タイル境界からの画素間距離に応じてタイル境界平滑化部6aのローパスフィルタ強度を切り換える。
【0035】
図11は、タイル境界からの距離の算出方法を説明する図である。各画素において、上下左右のタイル境界からの距離が算出される。それらの最小値を該画素におけるタイル境界からの距離とする。なお、タイル境界の位置、タイル境界の方向は符号化データに含まれる情報により取得する。
【0036】
図12に示すように、本実施例では縦方向のタイル境界の近傍の画素に対しては、1次元の横方向のローパスフィルタを用いる(図12(a))。横方向のタイル境界の近傍の画素に対しては、1次元の縦方向のローパスフィルタを用いる(図12(b))。タイル境界の交点の近傍画素に対しては、十字型のローパスフィルタを用いる(図12(c))。実施例1と同様に、これは一例であり、縦方向のタイル境界近傍の画素には横方向の周波数成分を除去するようなフィルタであればいかなるフィルタであってもよいし、同様に、横方向のタイル境界近傍の画素には縦方向の周波数成分を除去するようなフィルタならばいかなるフィルタであってもよいし、タイル境界の交点近傍の画素には縦方向周波数成分と横方向の周波数成分をともに除去するようなフィルタであればいかなるフィルタであってもよい。
【0037】
本実施例では、タイル境界からの画素間距離を用いて図12のローパスフィルタを適応的に処理する。すなわち、この例では、ローパスフィルタは注目画素の位置の係数(フィルタの中央の係数m)のみ変化させる。画素間距離が大きくなるにつれて、徐々に係数mの値を大きくする。図12の例では、中央の係数mは、m=4+64*dで算出される。ここでdは画素間距離を表す。これは、タイル境界からの画素間距離が大きくなるにつれて施すローパスフィルタの平滑化度を弱くすることを意味する。
【0038】
また、本実施例では、タイル境界からの画素間距離とタイル境界近傍の画素のエッジ量に応じて、タイル境界平滑化部6aのローパスフィルタ強度を切り換える処理も行う。図13は、タイル境界からの画素間距離とエッジ量によるローパスフィルタ制御を説明する図である。
【0039】
距離/エッジ量算出部7はタイル境界近傍の画素に対し、
(1)タイル境界からの画素間距離(図13(a))
(2)エッジ量算出フィルタ(図13(b))でエッジ量
を算出する。
【0040】
本実施例では、タイル境界が縦方向の近傍画素ならば、図13(c)に示すような横長のローパスフィルタをかける。タイル境界が横方向の近傍画素ならば図13(d)に示すような縦長のローパスフィルタをかける。タイル境界の交点近傍の画素ならば、図13(e)に示すような十字型のローパスフィルタをかける。これは一例であり、縦方向のタイル境界近傍の画素には横方向の周波数成分を除去するようなフィルタであればいかなるフィルタであってもよいし、横方向のタイル境界近傍の画素には縦方向の周波数成分を除去するようなフィルタならばいかなるフィルタであってもよいし、タイル境界の交点近傍の画素には縦方向周波数成分と横方向の周波数成分をともに除去するようなフィルタであればいかなるフィルタであってもよい。
【0041】
そして、算出された画素間距離と斜め方向のエッジ量に応じて、タイル境界平滑部6aのローパスフィルタ強度を制御する。なお、エッジ量として斜め方向のエッジ量を算出する理由は、縦、横方向のタイル境界をエッジとして検出しないためである。
【0042】
本実施例では、画素間距離が大きいほど、またエッジ量の絶対値が大きいほど、ローパスフィルタの中央値mを大きくする。図13(c)〜(e)に示す適応的ローパスフィルタの例では、中央の係数値をmとし、画素間距離をdとし、上記したエッジ量をEとするとき、
d=0 ならば
abs(E)>=255 ならば m=4+abs(E)
abs(E)< 255 ならば m=4
d>0 ならば m=max(4+64*d,4+abs(E))
によって、中央の係数値mを算出する。
【0043】
これは、タイル境界からの画素間距離dが大きいほど、タイル境界近傍の画素のエッジ量の絶対値abs(E)が大きいほど、施すローパスフィルタの平滑化度を小さくする、ということを意味する。d=0の場合のみ独立に制御した理由は、タイル境界の最近傍の画素に対してはある程度平滑化度の強いローパスフィルタを施さないと、タイル境界が目立ってしまうからである。
【0044】
なお、本実施例では、JPEG2000の圧縮伸長方式を例に説明したが、圧縮伸長方式はこれに限定されず、圧縮符号にブロック境界位置情報が含まれるような圧縮伸長方式であれば、いかなる圧縮伸長方式を用いても良い。
【0045】
(実施例3)
実施例3に係る伸長部の構成は実施例1と同様である。また、タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。
【0046】
本実施例では、圧縮率に応じてタイル境界平滑化部6のローパスフィルタ強度を可変にする。一般に圧縮率が大きい画像ほどタイル境界歪みが目立つ。従って、圧縮率の小さい画像に強いローパスフィルタをかけると、ローパスフィルタをかけた部分がぼやけて目立ってしまう。逆に、圧縮率の大きな画像に弱いローパスフィルタをかけてもタイル境界歪み抑制の効果がでにくい。
【0047】
そこで、本実施例では、図14に示すように、圧縮率に応じてローパスフィルタの強度を可変にする。例えば、比較的圧縮率の大きい圧縮率1/40の場合には、図14(a)に示すような平滑化度の強いローパスフィルタを用いる。また、例えば、比較的圧縮率の小さい圧縮率1/20の場合には、図14(b)に示すような平滑化の弱いローパスフィルタを用いるような構成にする。
【0048】
また、ウェーブレット変換の階層数(デコンポジションレベル)に応じてローパスフィルタをかけるタイル境界からの画素間距離のしきい値を制御できる。例えば、3階層のウェーブレット変換を用いて符号化されたデータは、ミラーリングによりタイル境界の内側8画素がその影響を受ける。このため、タイル境界の内側8画素に対してローパスフィルタをかける。
【0049】
また、例えば、2階層のウェーブレット変換を用いて符号化されたデータは、ミラーリングによりタイル境界の内側の4画素がその影響を受ける。このため、タイル境界の内側4画素に対してローパスフィルタをかける。
【0050】
つまり、n階層のウェーブレット変換を用いて符号化されたデータは、タイル境界の内側2のn乗の画素までローパスフィルタをかけるような構成にする。このように、符号時のウェーブレット階層数に応じてローパスフィルタをかける範囲を最適にすることができる。また、タイル境界の内側何画素までローパスフィルタをかけるかは、コストや処理時間、画像品質などを考慮して調整することもできる。
【0051】
さらに、ウェーブレット変換方法に応じてローパスフィルタを切り換えても良い。例えば、5×3フィルタでのウェーブレット変換と9×7フィルタでのウェーブレット変換があるが、それぞれの変換方法で圧縮伸長された画像に対し、周波数特性の異なるローパスフィルタを施してもよい。
【0052】
なお、上記実施例は、JPEG2000の圧縮伸長方式を例に説明したが、圧縮伸長方式はこれに限定されず、圧縮符号にブロック境界位置情報が含まれるような圧縮伸長方式であれば、いかなる圧縮伸長方式を用いても良い。
【0053】
(実施例4)
図15は、本発明の実施例4に係る伸長部の構成を示す。実施例1の構成にさらに補正タイル境界限定部8が追加されている。タグ処理部1から色空間逆変換部5までの処理は前述したJPEG2000と同様である。
【0054】
本実施例では、すべてのタイル境界近傍画素にローパスフィルタをかけるのではなく、ローパスフィルタをかけるべきタイル境界を限定して、そのタイル境界近傍画素にのみにローパスフィルタをかける。図16、図17はその例を示し、ROI領域内のタイル境界の近傍画素のみにローパスフィルタをかける。ROI領域とは、画像全体から切り出して拡大したり、他の部分に比べて強調したりする場合の、画像全体から見たある一部分である。
【0055】
図16は、ROI領域がタイル境界に沿った領域である場合の例である。図のようにROI領域が設定されたら、ローパスフィルタをかけるタイル境界は図の右側の点線部とする。
【0056】
図17は、ROI領域がタイル境界に沿っていない領域である場合の例である。図のようにROI領域が設定されたら、ローパスフィルタをかけるタイル境界は図の右側の点線部のようにする。タイル境界近傍の画素がROI内部か否かを演算によって算出し、該タイル境界近傍の画素がROI内部であればその画素にローパスフィルタをかける。該タイル境界近傍の画素がROI外部であれば、その画素にはローパスフィルタをかけない構成にする。
【0057】
なお、上記したように本発明はハードウェアによって実施できるが、汎用のコンピュータシステムを利用し、ソフトウェアによっても実施できることは言うまでもない。ソフトウェアで実施する場合には、本発明の画像処理装置の各手段(ブロック分割、圧縮伸長、ブロック境界歪み補正など)として、コンピュータを機能(動作)させるためのプログラムが記録媒体などに記録されていて、該記録媒体などからプログラムがコンピュータシステムに読み込まれてCPUによって実行されることにより、本発明が実施される。
【0058】
【発明の効果】
以上、説明したように、本発明によれば、以下のような効果が得られる。
(1)ブロック境界の方向に応じてローパスフィルタを切り換えることにより、ブロック境界の方向を考慮しない場合に比べて、無駄なローパスフィルタをかけずに済み、ブロック境界歪みに対して、最適でしかも低コストなフィルタを自動的に選択できる。
(2)ブロック境界の方向とブロック境界からの距離と注目画素におけるエッジ量に応じてローパスフィルタの強度を適応的に制御することにより、ブロック境界歪みを抑制しつつ、ブロック境界近傍でエッジが強い場合の画質劣化をより目立たなくすることができる。
(3)圧縮率に応じて最適な強度のローパスフィルタをかけることにより、いかなる圧縮率においてもタイル境界歪みを抑制することができる。
(4)ローパスフィルタをかけるべきタイル境界画素を制御することにより、例えば、ROI領域の内側のみにローパスフィルタなどの制御ができ、タイル境界歪み抑制のための処理時間を短縮することができる。
【図面の簡単な説明】
【図1】JPEG2000アルゴリズムの基本を説明するための図である。
【図2】タイル分割されたカラー画像の各コンポーネントの例を示す。
【図3】デコンポジション・レベル数が3の場合の、各デコンポジション・レベルにおけるサブ・バンドを示す。
【図4】コードストリームの構造を示す。
【図5】プレシンクトとコード・ブロックの関係を説明する図である。
【図6】ウエーブレット係数値をビットプレーンに順位付けする手順を示す。
【図7】ミラーリング法を用いた画素拡張の一例を示す。
【図8】本発明の実施例1に係る伸長部の構成を示す。
【図9】タイル境界平滑化部の具体例を示す。
【図10】本発明の実施例2に係る伸長部の構成を示す。
【図11】タイル境界からの距離の算出方法を説明する図である。
【図12】画素間距離によるローパスフィルタ制御を説明する図である。
【図13】タイル境界からの距離とエッジ量によるローパスフィルタ制御を説明する図である。
【図14】圧縮率に応じたローパスフィルタ制御を説明する図である。
【図15】本発明の実施例4に係る伸長部の構成を示す。
【図16】補正タイル境界限定部でローパスフィルタをかけるタイル境界を限定する第1の例を示す。
【図17】補正タイル境界限定部でローパスフィルタをかけるタイル境界を限定する第2の例を示す。
【符号の説明】
1 タグ処理部
2 エントロピー復号化部
3 逆量子化部
4 2次元ウェーブレット逆変換部
5 色空間逆変換部
6 タイル境界平滑化部
Claims (11)
- 画像をブロックに分割し、ブロック毎に圧縮伸長する手段と、ブロック境界の歪みを補正する補正手段とを備えた画像処理装置であって、前記補正手段は、ブロック境界の方向に応じて、ブロック境界近傍に対するローパスフィルタの周波数特性を適応的に制御することを特徴とする画像処理装置。
- 前記補正手段は、前記ブロック境界の方向が縦方向のとき、横方向の周波数成分を除去するようにローパスフィルタの周波数特性を制御し、前記ブロック境界の方向が横方向のとき、縦方向の周波数成分を除去するようにローパスフィルタの周波数特性を制御することを特徴とする請求項1記載の画像処理装置。
- 前記補正手段は、前記ブロック境界が交差するとき、縦方向と横方向ともに周波数成分を除去するようにローパスフィルタの周波数特性を制御することを特徴とする請求項1記載の画像処理装置。
- 前記ブロック境界からの画素間距離とブロック境界近傍画素におけるエッジ量を算出する手段を備え、前記補正手段は、前記ブロック境界の方向、前記画素間距離、前記エッジ量に応じてローパスフィルタの強度を制御することを特徴とする請求項1記載の画像処理装置。
- 前記補正手段は、前記エッジ量の絶対値が大きいほど、前記画素間距離が大きいほどローパスフィルタの平滑化度を弱くすることを特徴とする請求項4記載の画像処理装置。
- 前記補正手段は、圧縮率に応じてローパスフィルタの強度を制御することを特徴とする請求項1〜3のいずれか一つに記載の画像処理装置。
- 前記補正手段は、圧縮率が高いほどローパスフィルタの平滑化度を強くすることを特徴とする請求項6記載の画像処理装置。
- 前記補正手段は、前記ブロック境界近傍の特定領域にローパスフィルタを施すことを特徴とする請求項1〜7のいずれか一つに記載の画像処理装置。
- 前記特定領域はROI領域であることを特徴とする請求項8記載の画像処理装置。
- 請求項1〜8のいずれか1つに記載の画像処理装置の各手段として、コンピュータを機能させるためのプログラム。
- 請求項1〜8のいずれか1つに記載の画像処理装置の各手段として、コンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記憶媒体。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002178984A JP2004023666A (ja) | 2002-06-19 | 2002-06-19 | 画像処理装置、プログラムおよび記録媒体 |
EP02028798A EP1335607A3 (en) | 2001-12-28 | 2002-12-27 | Image smoothing apparatus and method |
US10/330,588 US7302104B2 (en) | 2001-12-28 | 2002-12-27 | Smoothing tile boundaries of images encoded and decoded by JPEG 2000 |
US11/975,506 US20080152244A1 (en) | 2001-12-28 | 2007-10-19 | Image-processing apparatus, image-processing method, program and computer readable information recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002178984A JP2004023666A (ja) | 2002-06-19 | 2002-06-19 | 画像処理装置、プログラムおよび記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004023666A true JP2004023666A (ja) | 2004-01-22 |
Family
ID=31176550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002178984A Pending JP2004023666A (ja) | 2001-12-28 | 2002-06-19 | 画像処理装置、プログラムおよび記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004023666A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011523235A (ja) * | 2008-01-08 | 2011-08-04 | クゥアルコム・インコーポレイテッド | 水平対称性および垂直対称性に基づくフィルタ係数のビデオ符号化 |
-
2002
- 2002-06-19 JP JP2002178984A patent/JP2004023666A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011523235A (ja) * | 2008-01-08 | 2011-08-04 | クゥアルコム・インコーポレイテッド | 水平対称性および垂直対称性に基づくフィルタ係数のビデオ符号化 |
US8638852B2 (en) | 2008-01-08 | 2014-01-28 | Qualcomm Incorporated | Video coding of filter coefficients based on horizontal and vertical symmetry |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7302104B2 (en) | Smoothing tile boundaries of images encoded and decoded by JPEG 2000 | |
US7330596B2 (en) | Image decoding technique for suppressing tile boundary distortion | |
JP4254017B2 (ja) | 画像符号化装置及び方法 | |
JP2003046785A (ja) | 圧縮された画像の画質の向上 | |
JPH09182069A (ja) | 画像圧縮方法および画像圧縮装置 | |
JP3952459B2 (ja) | 画像処理装置、プログラム、記憶媒体及び画像処理方法 | |
JP2021175090A (ja) | 画像符号化装置、画像復号装置及びこれらのプログラム | |
JP2004064190A (ja) | 画像処理装置、方法、プログラムおよび記録媒体 | |
JP2004046583A (ja) | 画像処理装置、方法、プログラムおよび記録媒体 | |
JP4726040B2 (ja) | 符号化処理装置、復号処理装置、符号化処理方法、復号処理方法、プログラム及び情報記録媒体 | |
JP4118049B2 (ja) | 画像処理装置及び方法 | |
JP2004023666A (ja) | 画像処理装置、プログラムおよび記録媒体 | |
JP4201163B2 (ja) | 画像処理装置、方法、プログラムおよび記録媒体 | |
JP2004023316A (ja) | 画像処理装置 | |
JP4111273B2 (ja) | 画像復号装置、プログラム、記憶媒体及び画像復号方法 | |
JP4145086B2 (ja) | 画像復号装置、画像処理装置、動画像表示システム、プログラム、記憶媒体及び画像復号方法 | |
JP2004040670A (ja) | 画像処理装置、方法、プログラムおよび記録媒体 | |
JP6611562B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP4266195B2 (ja) | 画像処理装置、画像処理方法、プログラム及び情報記録媒体 | |
JP3934687B2 (ja) | 画像データ復号方法及びその装置 | |
JP2004056260A (ja) | 画像復号装置、画像処理装置、プログラム、記憶媒体及び画像復号方法 | |
JP2002369202A (ja) | 画像圧縮装置、画像伸長装置、画像圧縮方法、画像伸長方法、プログラム、及び該プログラムを記録した記録媒体 | |
JP4124436B2 (ja) | 動き量推定装置、プログラム、記憶媒体および動き量推定方法 | |
JP2004040252A (ja) | 画像処理装置、プログラムおよび記録媒体 | |
JP4067460B2 (ja) | 画像復号装置、プログラム、記憶媒体及び画像復号方法 |