JP7001383B2 - 符号化装置、符号化方法、及び、プログラム - Google Patents

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

Info

Publication number
JP7001383B2
JP7001383B2 JP2017146798A JP2017146798A JP7001383B2 JP 7001383 B2 JP7001383 B2 JP 7001383B2 JP 2017146798 A JP2017146798 A JP 2017146798A JP 2017146798 A JP2017146798 A JP 2017146798A JP 7001383 B2 JP7001383 B2 JP 7001383B2
Authority
JP
Japan
Prior art keywords
subband
determined
coefficient
quantization
quantization parameter
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.)
Active
Application number
JP2017146798A
Other languages
English (en)
Other versions
JP2019029802A (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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017146798A priority Critical patent/JP7001383B2/ja
Publication of JP2019029802A publication Critical patent/JP2019029802A/ja
Application granted granted Critical
Publication of JP7001383B2 publication Critical patent/JP7001383B2/ja
Active 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

本発明は、符号化装置、符号化方法、及び、プログラムに関する。
高効率な画像圧縮を実現するために様々な符号化手法が提案されている。代表的な画像の符号化方式として、JPEG2000がある。このJPEG2000では、DWT(離散ウェーブレット変換:Discrete Wavelet Transform)と呼ばれる周波数変換手法を用いて画像を複数の周波数成分に分割し、周波数成分毎に量子化して符号化する。こうした周波数変換を用いた符号化方式では、一般的に、視覚的な劣化の目立ちにくい高周波成分の符号量を削減することで高い符号化効率を得ている。特許文献1は周波数変換を用いた符号化において、視覚周波数特性に基づく量子化制御によって符号化効率を高める方法を提案している。
特開2007-49582号公報
しかし、特許文献1の提案手法では、高周波成分に含まれるエッジ成分に対しても他の高周波成分と同様な量子化処理が実行されてしまう。一般的にエッジは視覚的な劣化が目立ちやすい箇所であるため、エッジに対する量子化処理は他の高周波成分と比べて細かいステップで実行することが望ましい。
そこで本発明は、周波数変換を用いた画像符号化処理において、エッジの画質劣化を抑えつつ符号化効率を高めることを可能とする技術を提供する。
上記課題を解決するための本発明は、符号化装置であって、
画像から複数のサブバンドデータを生成する生成手段と、
前記複数のサブバンドデータに含まれる各サブバンド係数に割り当てる量子化パラメータを決定する決定手段と、
前記決定手段が決定した前記量子化パラメータを用いて前記複数のサブバンドデータを量子化する量子化手段と、
前記量子化手段における量子化結果を符号化する符号化手段と
を備え、
前記決定手段は、
前記複数のサブバンドデータに含まれるサブバンド係数のうち、高周波成分を含むサブバンド係数に基づき、画像の複雑度を判定し、
前記複数のサブバンドデータに含まれるサブバンド係数のうち、水平方向に対する高周波成分に関連するサブバンド係数から垂直エッジを検出するか、
前記複数のサブバンドデータに含まれるサブバンド係数のうち、垂直方向に対する高周波成分に関連するサブバンド係数から水平エッジを検出するか、または
前記垂直エッジ及び前記水平エッジの両方を検出する
ことによりエッジ検出を行い、
前記エッジ検出の結果に基づいて前記複雑度が高いと判定されたサブバンド係数がエッジ部に分類されるかどうかを判定し、
前記判定により前記複雑度が高いと判定されたサブバンド係数について、該サブバンド係数がエッジ部に分類される場合に、前記サブバンド係数がエッジ部に分類されない場合よりも値が小さくなるように、前記割り当てる量子化パラメータを決定することを特徴とする。
本発明によれば、周波数変換を用いた画像符号化処理において、エッジの画質劣化を抑えつつ符号化効率を高めることができる。
発明の実施形態に係る符号化装置の構成例を示す図、及び、ベイヤー配列の画像データの色分離及びプレーン形成方法を説明するための図。 ウェーブレット変換処理を説明するための図、及び、ウェーブレット変換後のサブバンド形成結果の一例を示す図。 発明の実施形態1に係る処理の一例を示すフローチャート。 発明の実施形態1に係るエッジ検出方法、及び、エッジ部の有無を判定する方法を説明するための図。 発明の実施形態に係る量子化パラメータの設定方法を説明するための図。 発明の実施形態2に係る処理の一例を示すフローチャート。 発明の実施形態2に係るエッジ検出方法、及び、エッジ部の有無を判定する方法を説明するための図。 発明の実施形態3に係る処理の一例を示すフローチャート。
[実施形態1]
まず、発明の第1の実施形態について説明する。発明の実施形態に対応する符号化装置100の構成及び処理の流れについて図面を参照しながら説明を行う。まず、図1(A)に示す符号化装置100は、例えばデジタルカメラ、デジタルビデオカメラとして実現することができる。また、それ以外に、例えばパーソナルコンピュータ、携帯電話、スマートフォン、PDA、タブレット端末、携帯型メディアプレーヤなどの任意の情報処理端末或いは撮像装置として実現することもできる。なお、図1(A)は、デジタルカメラ等として機能する場合を考慮して、画像を取得するための構成として撮像部102を含む例を示した。しかし、発明の実施形態として、例えば記録媒体109に記録されている非圧縮のRAWデータを処理対象の画像として取得し、これを圧縮・記録することが可能な画像符号化装置、画像記録装置、画像圧縮装置等として、撮像部102を有しない構成で実現してもよい。
図1(A)の符号化装置100において、各ブロックは専用ロジック回路やメモリを用いてハードウェア的に構成されてもよい。或いは、メモリに記憶されている処理プログラムをCPU等のコンピュータが実行することにより、ソフトウェア的に構成されてもよい。
図1(A)に示す符号化装置100において、制御部101は、符号化装置100を構成する各処理部を制御する。撮像部102は、光学レンズ、絞り、フォーカス制御及びレンズ駆動部を含む光学ズームが可能なレンズ光学系とレンズ光学系からの光情報を電気信号に変換するCCDイメージセンサ又は、CMOSセンサなどの撮像素子を含む。撮像部102は、撮像素子により得られた電気信号をディジタル信号に変換したRAWデータをプレーン変換部103へ出力する。なお、RAWデータは、ベイヤー配列のR(赤)、G1(緑)、G2(緑)、B(青)の4つの色要素で構成されるものとして説明する。
プレーン変換部103は、撮像部102から入力されたRAWデータを読み出し、4つの独立したプレーンデータに変換する。ここで、プレーンデータへの変換例を図1(B)に示す。図1(B)の例では、ベイヤー配列をR、G1、G2、Bに分離して、4つの画素プレーンデータを生成する。そして、生成した4つのプレーンデータを周波数変換部104に出力する。
周波数変換部104は、プレーン変換部103から出力されたプレーンデータを読み出してそれぞれに対して周波数変換を施して、それぞれがサブバンド係数からなる複数のサブバンドデータを生成する。そして、得た変換係数をメモリ105に出力する。本実施形態の周波数変換では、分解レベル1のサブバンド分割処理に関わるウェーブレット変換を実施するものとして説明する。図2(A)は、lev=1のサブバンド分割処理に関わる離散ウェーブレット変換を実現するためのフィルタバンク構成を示しており、離散ウェーブレット変換処理を水平、垂直方向に実行した結果、図2(B)に示すように1つの低周波成分係数(LL)と3つの高周波成分係数(HL、LH、HH)からなる4種類のサブバンド係数で構成されるサブバンドデータへ分割される。図2(A)に示すローパスフィルタ(以降、lpfと呼ぶ)及びハイパスフィルタ(以降、hpfと呼ぶ)の伝達関数をそれぞれ下式1,2に示す。
lpf(z)=(-z-2+2z-1+6+2z-z2)/8 式1
hpf(z)=(-z-1+2-z)/2 式2
また、「↓2」は2対1のダウンサンプリングを表す。従って、水平方向と垂直方向とで1回ずつのダウンサンプリングが実行されるので、サブバンドのサイズは元のサイズの1/4となる。levが1よりも大きい場合には、低周波成分係数(LL)に対して階層的にサブバンド分割が実行されてもよい。ここでは離散ウェーブレット変換は上記式1、2に示すように5タップのlpfと3タップのhpfで構成しているが、これとは異なるタップ数及び異なる係数のフィルタ構成であっても良い。
メモリ105は、周波数変換部104から出力される各プレーンデータの変換係数を格納するための例えば揮発性メモリで構成される記憶領域である。量子化制御部106は、メモリ105に格納される高周波成分係数(HL、LH、HH)を用いた画像の複雑度の算出とエッジ検出による特徴分類を行い、分類結果に応じて量子化部107で使用する、各サブバンドデータのサブバンド係数に割り当てられる量子化パラメータを決定する。量子化パラメータの決定方法の詳細は後述する。量子化部107は、メモリ105に格納される変換係数を読み出し、量子化制御部106から入力される量子化パラメータを用いて量子化処理を実行し、量子化後の係数をエントロピー符号化部108に出力する。
エントロピー符号化部108は、量子化部107における量子化結果として得られた係数を圧縮符号化し、符号化データを記録媒体109に出力する。この圧縮符号化は、例えば、ハフマン符号化、ゴロム符号化等のエントロピー符号化方式を用いて実施する。記録媒体109は、例えば不揮発性メモリで構成される記録メディアである。エントロピー符号化部108が出力した符号化データを保持する。
次に、量子化制御部106が行う量子化パラメータ決定処理について、図3に示すフローチャートを用いて説明する。該フローチャートに対応する処理は、例えば、量子化制御部106として動作・機能する専用ロジック回路、または、量子化制御部106として動作・機能する1以上のプロセッサが対応するプログラム(ROM等に格納)を実行すること、により実現できる。
まずS301において、量子化制御部106は、メモリ105に格納した各プレーンデータを周波数変換して得られた高周波成分係数(HL、LH、HH)を読み出して、画像の複雑度を算出する。画像の複雑度とは、画像にどの程度の高周波成分が含まれるかを示す指標であって、例えば、空間的に同一位置にあるHLサブバンド係数、LHサブバンド係数、HHサブバンド係数、それぞれを絶対値化した3係数の平均であり、算出した複雑度はサブバンド間共通の評価値となる。本実施形態の複雑度は、絶対値化した3係数の平均値として説明するが、絶対値化した3係数の最大値であってもよい。また、これらに限定されるものではない。
次にS302では、量子化制御部106はS301で算出した複雑度の高さに基づいて、各プレーンのサブバンド係数を複雑部と非複雑部に分類する。分類においては、例えば、複雑度の閾値を予め設けておき、閾値との大小関係によって分類すればよい。具体的には、複雑度の値が閾値より大きい場合は複雑度が高いとして「複雑部」と分類し、閾値以下となる場合は複雑度が高くないとして「非複雑部」と分類することができる。複雑部と判定された部分は、高周波成分が多く含まれており、視覚的な劣化の目立ち難いといえる。一方、非複雑部と判定された部分は、低周波成分が多く含まれており、視覚的な劣化の目立ちやすいといえる。本実施形態では複雑部に分類されたサブバンド係数の量子化パラメータをエッジ検出結果に応じて調整するため、複雑部に分類される場合は、処理はS303に進む。一方、非複雑部に分類される場合は、処理はS307に進む。
続くS303では、量子化制御部106はS302で複雑部に分類された高周波成分係数に対して垂直エッジ検出を行う。ここで、垂直エッジ検出方法を図4を参照して説明する。垂直エッジ検出に用いる高周波成分を図4(A)に示す。垂直エッジは水平方向に対する高周波成分であるため、水平方向に対する高周波成分に関連するHLサブバンドの係数をメモリ105から読み出して垂直エッジ検出を行う。また、垂直エッジ検出では、振幅強度の連続性からエッジの有無を判定するため、判定対象の係数の近傍の係数もメモリ105から読み出す。
本実施形態では、判定対象の係数と同一方向に隣接して連続する左右2係数(エッジ検出対象係数の水平座標を起点nとして、1係数ずれた位置にある係数はn±1、2係数ずれた位置にある係数は±2)による垂直エッジの有無を判定する例を示す。次に、垂直エッジ有りと判定する係数の並びを図4(B)に示す。図4(B)の水平軸は水平座標、垂直軸は各水平座標の係数値であり、水平座標については図4(A)と対応付けている。
まず、係数毎に振幅の強度を判定する。判定においては、予め係数の閾値を設け、閾値より大きい場合は振幅値大、閾値以下の場合は振幅値小と分類すれば良い。そして、振幅値の大小分類の並びから垂直エッジの有無を判定する。図4(B)に示す通り、エッジ有りと判定される振幅値の関係は以下の2通りである。
[条件1]n-2:振幅値小、n-1:振幅値小、n:振幅値大
[条件2]n:振幅値大、n+1:振幅値小、n+2:振幅値小
条件1と条件2を満たす場合は、判定対象の係数nにおいて、閾値を跨いだ振幅値の変化が発生しており、振幅値に急峻な変化があって連続性が保たれないケースに該当するため、垂直エッジ有りと判定する。一方、判定対象の係数nにおいて閾値を跨いだ振幅値の変化が発生していない場合は垂直エッジ無しと判定する。そして、空間的に同一位置にあるLLサブバンド係数、LHサブバンド係数、HHサブバンド係数に対して、エッジ有無の判定結果を共通して付加する。
続くS304では、量子化制御部106はS303の垂直エッジ検出によるエッジ有無の判定結果に基づいて、各サブバンド係数をエッジ部と非エッジ部に分類する。S303で垂直エッジ有りと判定されたサブバンド係数はエッジ部として、処理はS305に進む。一方、垂直エッジ無しと判定されたサブバンド係数は非エッジ部として、処理はS306に進む。
S305、S306、S307は、S302における複雑部であるか否かの判定結果と、S304でのエッジ部であるか否かの判定結果に応じて、各サブバンド係数に対して割り当てる量子化パラメータを決定する。本実施形態では、各サブバンド係数に対して割り当てる候補となる量子化パラメータを量子化マトリクス(量子化テーブル)として予め用意しておき、判定結果に従っていずれか1つの量子化パラメータを選択する。
図5(A)は、本実施形態に対応する量子化マトリクスのデータ構成の一例を示す図である。量子化マトリクス500には非複雑部、エッジ部、非エッジ部の各分類について、LL、HL、LH、HHのサブバンド係数毎の量子化パラメータの値が登録されている。非複雑部に分類される場合の量子化パラメータは、A0(LL)、A1(HL)、A2(LH)、A3(HH)である。また、エッジ部に分類される場合の量子化パラメータは、B0(LL)、B1(HL)、B2(LH)、B3(HH)である。さらに、非エッジ部に分類される場合の量子化パラメータは、C0(LL)、C1(HL)、C2(LH)、C3(HH)とする。
このとき、非複雑部と複雑部では、非複雑部の量子化パラメータの方が小さくなるようにする。但し、エッジ部と判定されたサブバンド係数については、非複雑部と同等の量子化パラメータとしてもよい。その場合、分類間の量子化パラメータの大小関係は、例えばA≦B<C(非複雑部≦エッジ部<非エッジ部)と表現することができる。また、サブバンド間の関係については、低周波成分が多いほど視覚的な劣化が目立ちやすくなるので量子化パラメータを小さくする。そこでサブバンド間では「LL≦HL=LH≦HH」の大小関係を満たすように量子化パラメータが設定される。
S305、S306、S307では、判定対象のサブバンド係数が属する分類と、該サブバンド係数の種類に応じて、量子化マトリクス500に登録されているいずれかの量子化パラメータが選択される。S305では、量子化制御部106は、サブバンド係数に対する量子化パラメータを、上述したエッジ部の量子化パラメータB0からB3のいずれかに決定する。例えば、エッジ部のHLについては、S305において量子化パラメータB1が選択される。S306では、量子化制御部106はサブバンド係数に対する量子化パラメータを、上述した非エッジ部用の量子化パラメータC0からC3のいずれかに決定する。S307は、量子化制御部106はサブバンド係数に対する量子化パラメータを、上述した非複雑部用の量子化パラメータA0からA3のいずれかに決定する。
上記処理は、RAWデータを変換して得られたR、G1、G2、Bの各プレーンについて実行する。その際、4つのプレーンのサブバンド係数について並列に処理を実行してもよいし、プレーン毎の処理を4回繰り返すようにしてもよい。
なお、上記の実施形態においては、プレーンに含まれる全てのサブバンド係数について複雑部か非複雑部かを判定して、量子化パラメータの調整を行ったが、これ以外にも量子化パラメータの調整は以下のように行ってもよい。例えば、複雑部か非複雑部か判定を所定サイズの画素領域に相当するブロック単位に行うこととし、複雑部と判定されたブロックに属するサブバンド係数についてエッジ検出結果に応じた量子化パラメータの調整を行ってもよい。具体的に、RAWデータがR、G1、G2、Bに分離され4つの画素プレーンデータで処理される場合、1画素プレーンにつき所定サイズのブロックが処理対象となる。ブロックサイズは、例えば要求される画質等に応じた任意の大きさとすることができる。このとき、ブロック単位の複雑度は、例えばブロック内に含まれる高周波成分のサブバンド係数の平均値、最大値、最大値と最小値との差分、又は、分散として算出することができる。また、複雑部と非複雑部とのいずれに属するかは、算出した複雑度と所定の閾値との比較により判定することができる。
また、量子化パラメータを調整する単位はブロック単位でなくてもよい。例えば、高周波成分のサブバンド係数で所定の閾値以上の値を有する係数を包含する領域を設定することで、高周波成分がより多く含まれる領域を特定する。そして、当該領域に含まれるサブバンド係数についてエッジ検出結果に応じた量子化パラメータの調整を行ってもよい。
これらの変形例では、複雑度の高い部分においてエッジ部と非エッジ部とで量子化パラメータを切替えて量子化処理を実行することで画質の劣化を抑制しつつ、複雑部か否かの判定処理の負荷を軽減することができる。
上記の実施形態では、量子化パラメータ決定処理において、画像の特徴の分類結果やエッジ部か否かの判定結果に基づき固定的に量子化パラメータを決定する場合を説明した。この場合、割り当てられる量子化パラメータは固定されているので、先に実行された符号化処理で発生した符号量が多かった場合に、符号量の収束性を考慮して後の符号化処理で使用する量子化パラメータを調整し発生符号量を下げることができない。この場合、上記実施形態の変形例として、量子化パラメータ自体を保持しておくのではなく、画像特徴やエッジの有無に応じた量子化パラメータの補正値をマトリクスとして予め保持しておくことができる。この場合、符号量制御に基づく可変の量子化パラメータに対して補正を実行することで、符号量の収束性を考慮しつつ、エッジの画質劣化を抑えることができる。
図5(B)は、量子化パラメータ補正値のマトリクスの一例を示す。マトリクスに登録される各補正値は、図5(A)の各量子化パラメータの相対的関係に対応した値とすることができる。図5(B)においては、非複雑部LL成分を基準となる量子化パラメータとしている。よって、非複雑部LLであるサブバンド係数以外の他のサブバンド係数のための他の量子化パラメータは、非複雑部LL成分の量子化パラメータの値との差分に基づく補正値として表すことができる。まず、非複雑部のLL成分は補正値0となる。マトリクスの横方向は、HL、LHの補正値を等しくし、HHの補正値が最大となるようにしている。また、縦方向については、下に行くほど、補正値が大きくなるようにしている。これにより、符号量制御を行なう場合であっても、エッジの画質劣化を抑えつつ符号化効率を高めることが可能となる。
また、符号量制御に基づく可変の量子化パラメータについては、例えば以下のようにして算出することができる。まず、量子化制御部106は、符号化対象のサブバンドを複数の領域に分割し、領域毎にLL成分の量子化パラメータを決定する。領域の分割方法は、例えば、サブバンドをそれぞれ垂直方向に所定のラインごとに分割することができるが、これに限定されないものであって、より細かく分割してもよいし、より粗く分割してもよい。次に量子化制御部106は、分割により得られた各領域に目標符号量を割り当てる。目標符号量は、各領域に対して均一に割り当ててもよいし、或いは、画像の特徴に応じて、例えば高周波成分の多い領域により多くの目標符号量を割り当ててもよい。
次に、量子化制御部106は、処理対象の領域に対応する目標符号量と発生符号量とを比較し、次の処理対象の領域の符号化処理における発生符号量を目標発生符号量に近づけるようにフィードバック制御を行い、各サブバンドに共通の量子化パラメータを生成する。このときの符号量の制御は、例えば以下の式3に従って実行することができる。
Qp(i)=Qp(0)+r×Σ{S(i-1)-T(i-1)} 式3
Qp(0) : 初期量子化パラメータ
Qp(i):i番目の量子化パラメータ(i>0)
r:制御感度
S:発生符号量
T:目標符号量
式3では、サブバンドデータに設定された各領域のうちの先頭の領域に対して設定した初期量子化パラメータを基準とし、発生符号量と目標符号量との差分の大きさに応じて当該初期量子化パラメータを調整する。具体的に、先頭領域以降に発生した符号量の合計(総発生符号量)と、対応する目標符号量の合計(総目標符号量)との符号量差分が小さくなるように初期量子化パラメータの値を調整して、処理対象の領域のための量子化パラメータを決定する。先頭領域に対して設定される初期量子化パラメータは、圧縮率などに基づいて量子化制御部106が決定したパラメータを用いることができる。
以上のように、本実施形態では、画像が有する複雑度や垂直エッジ有無の特徴に応じた量子化パラメータを選択するので、複雑度の高い部分においても、エッジ部と非エッジ部とで量子化パラメータを切替えて量子化処理を実行することができる。これにより、エッジの画質劣化を抑えつつ符号化効率を高めることが可能となる。
[実施形態2]
次に、発明の第2の実施形態を説明する。上述の実施形態1では、垂直エッジ検出によってエッジ有無を判定して量子化パラメータを決定していたが、本実施形態では、水平エッジ検出によってエッジ有無を判定して量子化パラメータを決定する方法について説明する。本実施形態に係る符号化装置の構成は、図1(A)に示す符号化装置100と同じであるため、構成に関する説明は省略する。
次に、図6に示すフローチャートに基づいて、本実施形態における量子化制御部106が行う量子化パラメータ決定手順について説明する。該フローチャートに対応する処理は、例えば、量子化制御部106として動作・機能する専用ロジック回路、または、量子化制御部106として動作・機能する1以上のプロセッサが対応するプログラム(ROM等に格納)を実行すること、により実現できる。なお、本実施形態は、実施形態1の処理を包含しており、実施形態1と同様の処理に関しては詳細な説明を省略する。
まずS601において、量子化制御部106は、メモリ105に格納されている各プレーンデータを周波数変換して得られた高周波成分係数(HL、LH、HH)を読み出して、複雑度を算出する。当該処理は、実施形態1のS301に相当する。続くS602では、量子化制御部106はS601で算出した複雑度に基づいて、各プレーンのサブバンド係数を複雑部と非複雑部に分類する。当該処理は、実施形態1のS302に相当する。複雑部に分類される場合、処理はS603に進み、非複雑部に分類される場合、処理はS607に進む。
続くS603は、量子化制御部106はS602で複雑部に分類された高周波成分係数に対して水平エッジ検出を行う。ここで、水平エッジ検出方法を図7を参照して説明する。水平エッジ検出に用いる高周波成分を図7(A)に示す。水平エッジは垂直方向に対する高周波成分であるため、垂直方向に対する高周波成分に関連するLHサブバンドの係数をメモリ105から読み出して水平エッジ検出を行う。また、水平エッジ検出では、振幅強度の連続性からエッジの有無を判定するため、判定対象の係数の近傍の係数もメモリ105から読み出す。
本実施形態では、判定対象の係数と同一方向に隣接して連続する上下2係数(エッジ検出対象係数の垂直座標を起点nとして、1係数ずれた位置にある係数はn±1、2係数ずれた位置にある係数は±2)による水平エッジの有無を判定する例を示す。次に、水平エッジ有りと判定する係数の並びを図7(B)に示す。図7(B)の水平軸は垂直座標、垂直軸は各垂直座標の係数値であり、垂直座標については図7(A)と対応付けている。
まず、係数毎に振幅の強度を判定する。判定においては、予め係数の閾値を設け、閾値より大きい場合は振幅値大、閾値以下の場合は振幅値小と分類すれば良い。そして、振幅値の大小分類の並びから垂直エッジの有無を判定する。図7(B)に示す通り、エッジ有りと判定される振幅値の関係は以下の2通りである。
[条件1]n-2:振幅値小、n-1:振幅値小、n:振幅値大
[条件2]n:振幅値大、n+1:振幅値小、n+2:振幅値小
条件1と条件2を満たす場合は、判定対象の係数nの前後において、閾値を跨いだ振幅の変化が発生しており、振幅値に急峻な変化があって連続性が保たれないケースに該当するため、水平エッジ有りと判定する。一方、判定対象の係数nの前後において、閾値を跨いだ振幅の変化が発生していない場合は水平エッジ無しと判定する。そして、空間的に同一位置にあるLLサブバンド係数、HLサブバンド係数、HHサブバンド係数に対して、エッジ有無の判定結果を共通して付加する。
続くS604では、量子化制御部106はS603の水平エッジ検出によるエッジ有無の判定結果に基づいて、各サブバンド係数をエッジ部と非エッジ部に分類する。当該処理は、実施形態1のS304に相当する。S603で垂直エッジ有りと判定されたサブバンド係数はエッジ部として、処理はS605に進む。一方、垂直エッジ無しと判定されたサブバンド係数は非エッジ部として、処理はS606に進む。
S605、S606、S607では、S602における複雑部であるか否かの判定結果と、S604でのエッジ部であるか否かの判定結果に応じて、各サブバンド係数に対して割り当てる量子化パラメータを決定する。これらのステップにおける処理は、それぞれ実施形態1のS305、S306、S307に対応する。本実施形態でも、各サブバンド係数に対して割り当てる候補となる量子化パラメータを量子化マトリクスとして予め用意しておき、判定結果に従っていずれか1つの量子化パラメータを選択することができる。
S605、S606、S607では、それぞれ処理対象のサブバンド係数が属する分類と、サブバンド係数の種類に応じて、量子化マトリクス500に登録されているいずれかの量子化パラメータが選択される。S605では、量子化制御部106は、サブバンド係数に対する量子化パラメータを、上述したエッジ部の量子化パラメータB0からB3のいずれかに決定する。S606では、量子化制御部106はサブバンド係数に対する量子化パラメータを、上述した非エッジ部用の量子化パラメータC0からC3のいずれかに決定する。S607は、量子化制御部106はサブバンド係数に対する量子化パラメータを、上述した非複雑部用の量子化パラメータA0からA3のいずれかに決定する。
また、本実施形態でも実施形態1と同様に、符号量の収束性を考慮し、画像の特徴に応じた量子化パラメータの補正値をマトリクスとして予め保持しておき、符号量制御に基づく可変の量子化パラメータに対して補正を実行する構成としてもよい。また、本実施形態においても実施形態1と同様に、量子化パラメータの調整を、所定サイズのブロック単位、或いは、高周波成分がより多く含まれると判定された領域について行ってもよい。
以上のように、本実施形態では、画像が有する複雑度や水平エッジ有無の特徴に応じた量子化パラメータを選択するので、複雑度の高い部分においても、エッジ部と非エッジ部とで量子化パラメータを切替えて量子化処理を実行することができる。これにより、エッジの画質劣化を抑えつつ符号化効率を高めることが可能となる。
[実施形態3]
次に、発明の第3の実施形態を説明する。上述の実施形態1では垂直エッジ検出、実施形態2では水平エッジ検出によってエッジ有無を判定して量子化パラメータを決定していたが、本実施形態では、水平エッジ検出と垂直エッジ検出の両方を用いてエッジ有無を判定して量子化パラメータを決定する方法について説明する。本実施形態に係る符号化装置の構成は、図1(A)に示す符号化装置100と同じであるため、構成に関する説明は省略する。
次に、図8に示すフローチャートに基づいて、本実施形態における量子化制御部106が行う量子化パラメータ決定手順について説明する。該フローチャートに対応する処理は、例えば、量子化制御部106として動作・機能する専用ロジック回路、または、量子化制御部106として動作・機能する1以上のプロセッサが対応するプログラム(ROM等に格納)を実行すること、により実現できる。なお、本実施形態は、実施形態1及び実施形態2の処理を包含しており、実施形態1及び実施形態2と同様の処理に関しては詳細な説明を省略する。
まず、S801において、量子化制御部106は、メモリ105に格納されている各プレーンデータを周波数変換して得られた高周波成分係数(HL、LH、HH)を読み出して、画像の複雑度を算出する。当該処理は、実施形態1のS301、実施形態2のS601に相当する。続くS802では、量子化制御部106はS801で算出した複雑度に基づいて、各プレーンのサブバンド係数を複雑部と非複雑部に分類する。当該処理は、実施形態1のS302、実施形態2のS602に相当する。複雑部に分類される場合、処理はS803に進み、非複雑部に分類される場合、処理はS808に進む。
S803は、量子化制御部106はS802で複雑部に分類された高周波成分係数に対して垂直エッジ検出を行う。当該処理は実施形態1のS303に相当する。続くS804では、量子化制御部106はS802で複雑部に分類された高周波成分係数に対して水平エッジ検出を行う。当該処理は、実施形態2のS603に相当する。続くS805では、量子化制御部106はS803の垂直エッジ検出によるエッジ有無の判定結果と、S804の水平エッジ検出によるエッジ有無の判定結果に基づいて、処理対象のサブバンド係数をエッジ部と非エッジ部に分類する。ここでは、垂直エッジ、水平エッジの少なくともいずれかが有ると判定されたサブバンド係数はエッジ部として、処理はS806に進む。一方、垂直エッジ、水平エッジ、いずれも無いと判定された係数は、非エッジ部として処理はS807に進む。
S806、S807、S808では、S802における複雑部であるか否かの判定結果と、S805でのエッジ部であるか否かの判定結果に応じて、各サブバンド係数に対して割り当てる量子化パラメータを決定する。これらのステップにおける処理は、それぞれ実施形態1のS305、S306、S307、実施形態2のS605、S606、S607に対応する。本実施形態でも、各サブバンド係数に対して割り当てる候補となる量子化パラメータを量子化マトリクスとして予め用意しておき、判定結果に従っていずれか1つの量子化パラメータを選択することができる。
S806、S807、S808では、それぞれ処理対象のサブバンド係数が属する分類と、サブバンド係数の種類に応じて、量子化マトリクス500に登録されているいずれかの量子化パラメータが選択される。S806では、量子化制御部106は、サブバンド係数に対する量子化パラメータを、上述したエッジ部の量子化パラメータB0からB3のいずれかに決定する。S807では、量子化制御部106はサブバンド係数に対する量子化パラメータを、上述した非エッジ部用の量子化パラメータC0からC3のいずれかに決定する。S808は、量子化制御部106はサブバンド係数に対する量子化パラメータを、上述した非複雑部用の量子化パラメータA0からA3のいずれかに決定する。
なお、本実施形態でも実施形態1と同様に、符号量の収束性を考慮し、画像の特徴に応じた量子化パラメータの補正値をマトリクスとして予め保持しておき、符号量制御に基づく可変の量子化パラメータに対して補正を実行するような構成としてもよい。また、本実施形態においても実施形態1と同様に、量子化パラメータの調整を、所定サイズのブロック単位、或いは、高周波成分がより多く含まれると判定された領域について行ってもよい。
以上のように、本実施形態では、画像が有する複雑度、エッジ有無の特徴に応じた量子化パラメータを選択するので、複雑度の高い部分においても、エッジ部と非エッジ部とで量子化パラメータを切替えて量子化処理を実行することができる。特に、本実施形態では垂直エッジ検出と水平エッジ検出の両方を用いてエッジ有無の判定を行うことで、より高い精度でエッジと非エッジを分類することが可能となり、画質劣化の目立ちやすいエッジの画質を保護することができる。これにより、エッジの画質劣化を更に抑えつつ符号化効率を高めることが可能となる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100:符号化装置、101:制御部、102:撮像部、103:プレーン変換部、104:周波数変換部、105:メモリ、106:量子化制御部、107:量子化部、108:エントロピー符号化部、109:記録媒体

Claims (15)

  1. 画像から複数のサブバンドデータを生成する生成手段と、
    前記複数のサブバンドデータに含まれる各サブバンド係数に割り当てる量子化パラメータを決定する決定手段と、
    前記決定手段が決定した前記量子化パラメータを用いて前記複数のサブバンドデータを量子化する量子化手段と、
    前記量子化手段における量子化結果を符号化する符号化手段と
    を備え、
    前記決定手段は、
    前記複数のサブバンドデータに含まれるサブバンド係数のうち、高周波成分を含むサブバンド係数に基づき、画像の複雑度を判定し、
    前記複数のサブバンドデータに含まれるサブバンド係数のうち、水平方向に対する高周波成分に関連するサブバンド係数から垂直エッジを検出するか、
    前記複数のサブバンドデータに含まれるサブバンド係数のうち、垂直方向に対する高周波成分に関連するサブバンド係数から水平エッジを検出するか、または
    前記垂直エッジ及び前記水平エッジの両方を検出する
    ことによりエッジ検出を行い、
    前記エッジ検出の結果に基づいて前記複雑度が高いと判定されたサブバンド係数がエッジ部に分類されるかどうかを判定し、
    前記判定により前記複雑度が高いと判定されたサブバンド係数について、該サブバンド係数が前記エッジ部に分類される場合に、前記サブバンド係数が前記エッジ部に分類されない場合よりも値が小さくなるように、前記割り当てる量子化パラメータを決定する
    ことを特徴とする符号化装置。
  2. 前記決定手段は、前記複雑度が高いと判定されたサブバンド係数についてのみ、前記エッジ部に分類されるかどうかを判定することを特徴とする請求項に記載の符号化装置。
  3. 前記決定手段は、前記複雑度が高いと判定されなかったサブバンド係数について、前記複雑度が高いと判定されたサブバンド係数よりも小さい量子化パラメータを割り当てることを特徴とする請求項またはに記載の符号化装置。
  4. 前記決定手段は、前記高周波成分を含むサブバンド係数の平均値、又は、最大値に基づき前記複雑度を判定することを特徴とする請求項からのいずれか1項に記載の符号化装置。
  5. 前記画像は、所定サイズのブロックに分割され、
    前記決定手段は、
    前記画像の複雑度を前記所定サイズのブロックを単位として判定し、
    前記判定により前記複雑度が高いと判定されたブロックに含まれるサブバンド係数を、前記複雑度が高いと判定されたサブバンド係数として、前記エッジ部に分類されるか否かを更に判定することを特徴とする請求項に記載の符号化装置。
  6. 前記決定手段は、
    前記画像において複雑度の高い領域を特定し、
    前記複雑度が高いと判定された領域に含まれるサブバンド係数を、前記複雑度が高いと判定されたサブバンド係数として、前記エッジ部に分類されるか否かを更に判定することを特徴とする請求項に記載の符号化装置。
  7. 前記決定手段は、前記割り当てる量子化パラメータを決定しようとするサブバンド係数の前記複雑度の高さ、及び、該サブバンド係数が前記エッジ部に分類されるかどうかに応じて、前記複数のサブバンドデータのそれぞれについて予め定められた量子化パラメータから、前記割り当てる量子化パラメータを決定することを特徴とする請求項からのいずれか1項に記載の符号化装置。
  8. 前記決定手段は、前記複数のサブバンドデータを量子化し、符号化した場合の、符号化の目標符号量と符号化した結果の発生符号量との差分に基づいて決定される基準となる量子化パラメータに基づいて、前記割り当てる量子化パラメータを決定することを特徴とする請求項からのいずれか1項に記載の符号化装置。
  9. 前記決定手段は、前記基準となる量子化パラメータを、前記割り当てる量子化パラメータを決定しようとするサブバンド係数の前記複雑度の高さ、及び、該サブバンド係数が前記エッジ部に分類されるかどうかに応じて補正することにより、前記割り当てる量子化パラメータを決定することを特徴とする請求項に記載の符号化装置。
  10. 前記決定手段は、前記基準となる量子化パラメータの補正を、前記割り当てる量子化パラメータを決定しようとするサブバンド係数の前記複雑度の高さ、及び、該サブバンド係数が前記エッジ部に分類されるか否かに応じて、予め決定された補正値を選択して行うことを特徴とする請求項に記載の符号化装置。
  11. 前記決定手段は、前記複雑度が高いと判定されていない低周波成分のサブバンド係数には前記基準となる量子化パラメータを割り当て、
    前記複雑度が高いと判定されていない低周波成分の前記サブバンド係数以外の他のサブバンド係数の量子化パラメータを前記補正値により補正することにより、前記割り当てる量子化パラメータを決定することを特徴とする請求項10に記載の符号化装置。
  12. 前記生成手段は、ウェーブレット変換により前記複数のサブバンドデータを生成することを特徴とする請求項1から11のいずれか1項に記載の符号化装置。
  13. 前記画像を取得する取得手段を更に備えることを特徴とする請求項1から12のいずれか1項に記載の符号化装置。
  14. 符号化装置が実行する符号化方法であって、
    画像から複数のサブバンドデータを生成する生成工程と、
    前記複数のサブバンドデータに含まれる各サブバンド係数に割り当てる量子化パラメータを決定する決定工程と、
    前記決定工程において決定された前記量子化パラメータを用いて前記複数のサブバンドデータを量子化する量子化工程と、
    前記量子化工程における量子化結果を符号化する符号化工程と
    を含み、
    前記決定工程では、
    前記複数のサブバンドデータに含まれるサブバンド係数のうち、高周波成分を含むサブバンド係数に基づき、画像の複雑度を判定し、
    前記複数のサブバンドデータに含まれるサブバンド係数のうち、水平方向に対する高周波成分に関連するサブバンド係数から垂直エッジを検出するか、
    前記複数のサブバンドデータに含まれるサブバンド係数のうち、垂直方向に対する高周波成分に関連するサブバンド係数から水平エッジを検出するか、または
    前記垂直エッジ及び前記水平エッジの両方を検出する
    ことによりエッジ検出を行い、
    前記エッジ検出の結果に基づいて前記複雑度が高いと判定されたサブバンド係数がエッジ部に分類されるかどうかを判定し、
    前記判定により前記複雑度が高いと判定されたサブバンド係数について、該サブバンド係数が前記エッジ部に分類される場合に、前記サブバンド係数が前記エッジ部に分類されない場合よりも値が小さくなるように、前記割り当てる量子化パラメータが決定される
    ことを特徴とする符号化方法。
  15. コンピュータを請求項1から12のいずれか1項に記載の符号化装置の各手段として動作させるためのプログラム。
JP2017146798A 2017-07-28 2017-07-28 符号化装置、符号化方法、及び、プログラム Active JP7001383B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017146798A JP7001383B2 (ja) 2017-07-28 2017-07-28 符号化装置、符号化方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017146798A JP7001383B2 (ja) 2017-07-28 2017-07-28 符号化装置、符号化方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2019029802A JP2019029802A (ja) 2019-02-21
JP7001383B2 true JP7001383B2 (ja) 2022-01-19

Family

ID=65476658

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017146798A Active JP7001383B2 (ja) 2017-07-28 2017-07-28 符号化装置、符号化方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP7001383B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7387333B2 (ja) * 2019-08-22 2023-11-28 キヤノン株式会社 符号化装置及びその制御方法
JP7469865B2 (ja) 2019-10-25 2024-04-17 キヤノン株式会社 画像処理装置および画像処理方法
JP7419044B2 (ja) 2019-12-02 2024-01-22 キヤノン株式会社 符号化装置、撮像装置、制御方法、およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120466A (ja) 2002-09-27 2004-04-15 Mitsubishi Electric Corp 画像符号化装置、画像符号化方法、および画像処理装置
JP2004165982A (ja) 2002-11-13 2004-06-10 Ricoh Co Ltd 動き量推定装置、プログラム、記憶媒体および動き量推定方法
JP2009071388A (ja) 2007-09-10 2009-04-02 Fujifilm Corp 画像処理装置、画像処理方法、およびプログラム
JP2016154374A (ja) 2016-04-18 2016-08-25 株式会社Jvcケンウッド 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120466A (ja) 2002-09-27 2004-04-15 Mitsubishi Electric Corp 画像符号化装置、画像符号化方法、および画像処理装置
JP2004165982A (ja) 2002-11-13 2004-06-10 Ricoh Co Ltd 動き量推定装置、プログラム、記憶媒体および動き量推定方法
JP2009071388A (ja) 2007-09-10 2009-04-02 Fujifilm Corp 画像処理装置、画像処理方法、およびプログラム
JP2016154374A (ja) 2016-04-18 2016-08-25 株式会社Jvcケンウッド 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム

Also Published As

Publication number Publication date
JP2019029802A (ja) 2019-02-21

Similar Documents

Publication Publication Date Title
US10638162B2 (en) Coding method and decoding processing method
CN113228646A (zh) 具有非线性限幅的自适应环路滤波(alf)
JP2022036084A (ja) 符号化装置、復号装置、符号化方法、及び復号方法
US10032252B2 (en) Image processing apparatus, image capturing apparatus, image processing method, and non-transitory computer readable storage medium
US11012698B2 (en) Image encoding apparatus and method for controlling the same
US10776956B2 (en) Image coding apparatus, image decoding apparatus, image coding method, image decoding method, and non-transitory computer-readable storage medium
JP7001383B2 (ja) 符号化装置、符号化方法、及び、プログラム
US10897615B2 (en) Image encoding apparatus and control method therefor
JP2015115903A (ja) 撮像装置、撮像装置の制御方法、コンピュータプログラム
US10484679B2 (en) Image capturing apparatus, image processing method, and non-transitory computer-readable storage medium
US11082698B2 (en) Image capturing apparatus having a function for encoding raw image control method therof, and non-transitory computer-readable storage medium
US11140392B2 (en) Image encoding apparatus, image decoding apparatus, control methods thereof, and non- transitory computer-readable storage medium
US20180035091A1 (en) Imaging apparatus and control method thereof
US20170155902A1 (en) Image encoding apparatus and method of controlling the same
US20230133895A1 (en) Image encoding apparatus and method for controlling the same and non-transitory computer-readable storage medium
US10951891B2 (en) Coding apparatus capable of recording raw image, control method therefor, and storage medium storing control program therefor
JP6875817B2 (ja) 画像処理装置、撮像装置、画像処理方法及びプログラム
US11508036B2 (en) Image processing apparatus and image processing method for decoding raw image data encoded with lossy encoding scheme
US9942569B2 (en) Image encoding apparatus and control method of the same
US11032547B2 (en) Image encoding apparatus, control method thereof, and non-transitory computer-readable storage medium
JP7321237B2 (ja) 画像符号化装置、画像符号化方法、プログラム
JP2018101907A (ja) 画像符号化装置及びその制御方法及びプログラム
JP6812214B2 (ja) 画像符号化装置、画像符号化方法、及びプログラム
JP2020109923A (ja) 画像符号化装置及びその制御方法及びプログラム
JP2021103818A (ja) 画像符号化装置、撮像装置、画像符号化装置の制御方法、及び、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200602

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211021

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211224

R151 Written notification of patent or utility model registration

Ref document number: 7001383

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151