JP7387333B2 - 符号化装置及びその制御方法 - Google Patents

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

Info

Publication number
JP7387333B2
JP7387333B2 JP2019152246A JP2019152246A JP7387333B2 JP 7387333 B2 JP7387333 B2 JP 7387333B2 JP 2019152246 A JP2019152246 A JP 2019152246A JP 2019152246 A JP2019152246 A JP 2019152246A JP 7387333 B2 JP7387333 B2 JP 7387333B2
Authority
JP
Japan
Prior art keywords
quantization parameter
feature
feature classification
correction
quantization
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
JP2019152246A
Other languages
English (en)
Other versions
JP2021034846A (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 JP2019152246A priority Critical patent/JP7387333B2/ja
Publication of JP2021034846A publication Critical patent/JP2021034846A/ja
Application granted granted Critical
Publication of JP7387333B2 publication Critical patent/JP7387333B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、画像を符号化する符号化装置に関するものである。
従来の撮像装置では、撮像センサーによって撮像された生の画像情報(RAW画像)をデベイヤー処理(デモザイク処理)し、輝度と色差から成る信号に変換して、各信号についてノイズ除去、光学的な歪補正、画像の適正化などの所謂現像処理を行っている。そして、現像処理された輝度信号及び色差信号を圧縮符号化し、記録媒体に記録するのが一般的である。
一方、撮像センサーで得られた直後の現像未処理の撮像データ(RAW画像)を記録媒体に格納する撮像装置もある。RAW画像は、撮像センサーからの色情報を損ねることなく豊富な色階調数を保ったまま記録するため、自由度の高い編集が可能である。しかし、RAW画像はデータ量が膨大であるため、記録メディアの空き領域を圧迫させてしまうという問題がある。そのため、RAW画像においても圧縮符号化を行い、データ量を抑えて記録することが望まれる。
ここで、RAW画像データの符号化において、符号化効率を高めるために、視覚特性に応じて量子化パラメータを補正して量子化する符号化方法が特許文献1に開示されている。
特開2007-243515号広報
しかしながら、特許文献1に記載される技術は、符号量制御を用いた画像符号化において、画像全体の画質を考慮した符号化方法となっていない。一般的に符号量制御では、所定の単位で目標符号量を設定し、発生符号量が目標符号量に近づくように量子化パラメータを制御する。ここで、量子化パラメータを下げて符号量が大きくなる箇所が画像全体に多く存在する画像が入力されると、先に符号量制御を行った画像上部で符号を多く使ってしまい、画像下部では割り振る符号量が不足し、量子化パラメータを下げられなくなる。そのため、特に圧縮率が高い場合に、画像の上部の画質と下部の画質との差が大きくなり、画像の下部の画質劣化が顕著に目立ってしまう。
そこで本発明は上記の問題点に鑑み、画像の特徴に応じて量子化することにより、画像全体の画質を考慮し、画質低下を抑制する符号化装置を提供することを目的とする。
上述の目的を達成するため、本発明の符号化装置は、
画像データを符号化する符号化装置であって、画像データを複数の周波数帯域に周波数変換して変換係数を生成する周波数変換手段と、周波数変換手段で生成した変換係数を量子化する量子化手段と、量子化手段で生成した量子化後の変換係数を符号化する符号化手段と、量子化手段で用いる量子化パラメータを制御する量子化制御手段と、を備え、量子化制御手段は、量子化パラメータを設定する量子化パラメータ設定手段と、画像データ対する複数の特徴情報をブロック毎に生成する特徴情報生成手段と、特徴情報生成手段により生成された特徴情報に基づき、ブロックが複数の特徴分類のうちのいずれの特徴分類であるかを判定する特徴分類手段と、ブロック毎に、特徴分類手段により判定された特徴分類に対応する量子化パラメータ補正量に基づいて、量子化パラメータ設定手段により設定された量子化パラメータを補正する量子化パラメータ補正手段とを備え、特徴分類手段は、ブロック内にエッジ領域が含まれるブロックを所定の特徴分類であると判定することを特徴する。
本発明によれば、画像の特徴に応じて量子化することにより、画像全体の画質を考慮し、画質低下を抑制する符号化装置を提供することが可能となる。
符号化装置の構成を示すブロック図である。 量子化制御部105の構成を示すブロック図である。 ベイヤー配列の画像データを示す図である。 ウェーブレット変換を説明するための図である。 発生符号量の推移を示す図である。 サブバンド係数を用いた特徴情報の生成処理の処理単位となるブロックを説明するための図である。 特徴情報を用いた特徴分類を説明するための図である。 エッジ有の場合の特徴分類の変更を説明するための図である。 第一の実施例に係る量子化パラメータ補正手順を示すフローチャートである。 特徴分類処理、量子化パラメータ変更処理を示すフローチャートである。 第二の実施例に係る量子化パラメータ補正手順を示すフローチャートである。 第三の実施例に係る量子化パラメータ補正手順を示すフローチャートである。 補正過多時の量子化パラメータ補正量の変更方法を示す図である。 補正過多時の量子化パラメータ補正方法量の変更を示す図である。 補正過多時の量子化パラメータ補正方法を量の変更示す図である。
[第1の実施例]
[符号化装置100の構成]
本発明を適用可能な実施形態である符号化装置100の構成及び処理の流れについて図1、図2に示すブロック図を参照しながら説明を行う。
制御部101は、符号化装置100を構成する各処理部を制御したり、各種演算処理等を実行する。制御部101は、不図示のプログラムメモリから読み出したプログラムに基づき、各処理部の制御及び演算処理などを実行する。また、制御部101は、ユーザが不図示の操作部を介して設定した撮影設定に応じて、記録するRAW画像の圧縮率を決定する。動画の場合は、ユーザにより設定されたビットレートに応じて圧縮率を算出する。圧縮率の算出式を式0に示す。
(式0)
圧縮率[%]={ビットレート/(水平画素数×垂直画素数×ビット深度×フレームレート)}×100
撮像部102は、光学レンズ、絞り、フォーカス制御及びレンズ駆動部を含む光学ズームが可能なレンズ光学系とレンズ光学系からの光情報を電気信号に変換するCCDイメージセンサー又は、CMOSセンサーなどの撮像素子を含み、撮像素子により得られた電気信号をディジタル信号に変換したRAWデータをプレーン変換部103へ出力する。本実施例における、RAWデータは、図3に示すベイヤー配列のR(赤)、G1(緑)、G2(緑)、B(青)の4つの色要素で構成されるものとして説明する。
プレーン変換部103は、撮像部102から入力されたRAWデータを読み出し、4つの独立したプレーンデータに変換する。そして、生成した4つのプレーンデータを周波数変換部104に出力する。ここで、プレーンデータへの変換式を式1に示す。式1は、近似的に輝度プレーン(Y)と、色差などを含むその他のプレーン(C0、C1、C2)に変換している。
(式1)
Y=(R+G1+G2+B)/4
C0=R-B
C1=(G0+G1)/2-(R+B)/2
C2=G0-G1
なお、プレーンデータへの変換方法はこれに限定されるものではなく、R、G1、G2、Bに分離して出力するなど別の方法を用いてもよい。また、静止画はR、G1、G2、Bに分離し、動画はY、C0、C1、C2に分離するなど、画像の用途や撮影モードによって切り替えてもよい。
周波数変換部104は、プレーン変換部103から入力されたプレーンデータを読み出し、周波数変換を施す。そして、得た変換係数を量子化制御部105と量子化部106に出力する。本実施形態では、ウェーブレット変換を用いた周波数変換を行う。ウェーブレット変換を行った場合の例を図4に示す。図4は、ウェーブレット変換を垂直方向、水平方向にそれぞれ1回施した、分解レベル1の場合のサブバンド形成図である。図4において、LLサブバンドは低周波成分を表し、それ以外のサブバンド(HL、LH、HH)は高周波成分を表す。また、階層的にウェーブレット変換を実行する場合(分解レベル2以降)は、分解レベル1と同様の処理を、LL成分に対してのみ実施する。つまり、分解レベル2の場合は、さらに、1LLサブバンドに対して垂直方向、水平方向にウェーブレット変換を実行する。
量子化制御部105は、図2に示すように量子化パラメータ設定部105a、特徴情報生成部105b、量子化パラメータ補正部105cで構成されており、量子化部106で使用する量子化パラメータを決定する。
量子化パラメータ設定部105aは、量子化パラメータを設定し、設定した量子化パラメータを量子化パラメータ補正部105cへ出力する。静止画の場合は、1つの画像に同一の量子化パラメータを設定するが、動画の場合は、1つのフレーム内の複数の領域で異なる量子化パラメータを設定する符号量制御処理を行う。動画の場合、量子化パラメータ設定部105aは、制御部101が算出した圧縮率に基づき目標符号量を設定し、発生符号量が目標符号量に近づくようにフレーム内の複数の領域毎に量子化パラメータを算出する。符号量制御処理の詳細は後述する。
特徴情報生成部105bは、周波数変換部104から入力される特定のプレーンのサブバンドデータを用いて、明度、複雑度、エッジ有無、3つの特徴情報を生成する。特徴情報を生成する際には、輝度成分のプレーンを使用する。本実施形態では、Yプレーンを用いる。生成した3つの特徴情報を量子化パラメータ補正部105cへ出力する。特徴情報の生成処理の詳細は後述する。なお、R、G1、G2、Bのプレーンデータを生成して、各プレーンについて、周波数変換、量子化、符号化する場合については、各画素についてR、G1、G2、Bの平均値から構成される疑似輝度プレーンを特徴情報算出用に生成する。そして、疑似輝度プレーンを周波数変換部104により周波数変換して各サブバンドデータの係数を取得し、疑似輝度プレーンの係数から特徴情報を生成するようにするとよい。
量子化パラメータ補正部105cは、撮影設定等に応じて、特徴情報生成部105bから入力される3つの特徴情報のうち使用する特徴情報を選択し、選択した特徴情報を用いて特徴分類する。そして、特徴分類に対応する量子化パラメータの補正量を用いて、量子化パラメータ設定部105aから入力される量子化パラメータを補正して量子化部106へ出力する。特徴情報と量子化パラメータ補正量の関係、ならびに、特徴分類処理の詳細は後述する。
量子化部106は、周波数変換部104から入力されるサブバンドデータに対して、量子化制御部105(量子化パラメータ補正部105c)から入力される量子化パラメータを用いて量子化を実行し、量子化後の係数をエントロピー符号化部107に出力する。量子化部106では、量子化制御部105から入力される量子化パラメータに対して、プレーン毎、サブバンド毎にあらかじめ設定されている重みづけを行うことで、全プレーンの全サブバンド毎に量子化パラメータを算出し、サブバンド毎に算出された量子化パラメータを用いて、サブバンドデータの係数を量子化する。
エントロピー符号化部107は、量子化部106で量子化した係数を圧縮符号化し、符号化データを記録媒体108に出力する。この圧縮符号化は、例えば、ゴロム符号化のようなエントロピー符号化を用いて実施する。
記録制御部108は、エントロピー符号化部107が出力した符号化データを記録媒体109にRAW画像ファイルとして記録する処理を行う。
記録媒体109は、例えば不揮発性メモリで構成される記録メディアである。本実施形態では、符号化装置100に着脱可能なメモリカードとするが、符号化装置100の内部に設けてもよい。
次に、量子化制御部105において実行される、符号量制御処理、特徴情報と量子化パラメータ補正量の関係、特徴情報の生成処理の詳細について説明する。
[符号量制御処理]
動画の場合に行う符号量制御処理について詳細に説明する。量子化パラメータ設定部105aでは、画面(1フレーム)内の発生符号量を制御部101が算出した圧縮率から求まる目標符号量に収束させるために、サブバンドのラインを設定単位として量子化パラメータを変更しながら量子化する。サブバンドのラインを目標符号量の設定単位として各ラインの量子化パラメータを変更して符号量を制御する。図5は、サブバンドをライン0から順に量子化、符号化を行った際の符号量の推移を示している。図5の右肩上がりの点線は、操作部101が算出した圧縮率から求まるピクチャの目標符号量と原点を結んだものである。また、第0ラインから第iラインまでの累積目標符号量をTA(i)とする。実際の発生符号量はTA(i)に沿って推移するとは限らず、TA(i)を上回ったり、下回ったりする。TA(i)は第iライン目までにおける目標符号量を意味するため、TA(i)を上回った場合、符号量の発生を抑制する必要がある。それ故、次ラインの量子化の際には、量子化パラメータを所定値だけ増加させる。一方、TA(i)を下回った場合には、符号量を増やして画質を高めても良い。それ故、次ラインの量子化の際には、量子化パラメータを所定値だけ減少させる。なお、累積発生符号量TA(i)は、エントロピー符号化部107が、ライン毎にフィードバックしてくる発生符号量を用いて算出する。なお、最初のフレームの最初のライン(第0ライン)には、圧縮率に応じて決定される動画用の量子化パラメータを用いて量子化し、次のライン(第1ライン)以降は、符号量制御処理により算出された量子化パラメータを使用して量子化する。2枚目以降のフレームの最初のライン(第0ライン)については、最初のフレームの最初のラインで使用した量子化パラメータを用いずに、前のフレームの量子化パラメータの平均値を用いるようにするとよい。
[各特徴情報と量子化パラメータ補正量の関係]
明度は、RAWデータの輝度レベルを表す。量子化処理では、輝度レベルが低い暗部領域に対して粗い量子化を施すと、量子化後の係数が0になりやすく、微細な情報を失いやすい。更に、RAWデータは、記録後のポスト処理にてガンマ補正処理、トーンカーブ補正処理といった輝度レベルの調整が行われる。ここでは、暗部領域の輝度レベルを持ち上げ、明部領域の輝度レベルを下げる調整が一般的である。仮に暗部領域と、明部領域とで同一の量子化パラメータで量子化を行っても、輝度レベルの増幅の大きい暗部は量子化歪みの増幅度も大きいため画質劣化が目立ちやすく、また、輝度レベルの増幅の小さい明部は量子化歪みの増幅度も小さいため画質劣化が目立ちにくい。従って、暗部領域では量子化歪みが少なくなるよう細かく量子化し、また、明部領域では符号量が増加しないよう粗く量子化することが望ましい。
複雑度は、RAWデータの空間周波数の高さを表し、空間周波数が低いほど平坦、空間周波数が高いほど複雑な領域を表す。画像圧縮においては、平坦領域の情報を削減すると、視覚的劣化が目立ちやすく、複雑領域の情報を削減しても視覚的に目立ちにくい。ただし、空間周波数が高い領域の中でも、輝度レベルが急激に変化しているエッジ箇所は視覚的劣化が目立ちやすい。従って、視覚的劣化の目立ちやすい平坦な領域やエッジを含む領域は細かく量子化を行い、視覚的劣化の目立ちにくい複雑な領域は粗く量子化を行うことが望ましい。
以上のように、暗部領域、平坦領域、エッジ領域ほど量子化パラメータを小さくし、明部領域、複雑領域ほど量子化パラメータが大きくなるように量子化パラメータの重み付けを行うことで、符号化効率を高めることが可能である。
[各特徴情報の生成処理]
特徴情報生成部105bでは、Yプレーンのサブバンド係数を使用して、明度、複雑度、エッジ有無、3つの特徴情報をブロック毎に生成する。本実施例ではブロックの単位を水平4係数とし、分解レベル1の各サブバンド(1LL、1LH、1HL、1HH)の同一空間座標となる水平方向の4係数、合計16係数を1つのブロックとする。このブロックごとに、特徴量情報の生成処理、及び、量子化パラメータの補正処理が行われる。
図6は、分解レベル1の各サブバンドと、ブロックの構成を説明するための図である。600は、分解レベル1のYプレーンのサブバンドを示す。601~604は、特徴情報の生成単位となるブロックを示している。1LLサブバンドの水平方向の4係数のブロック601、1Hサブバンドの水平方向の4係数のブロック602、1LHサブバンドの水平方向の4係数のブロック603、1HHサブバンドの水平方向の4係数のブロック604が、特徴情報の生成単位のブロックとなる。ブロック601~604は、それぞれ同一空間座標を指す。ここで、1LLサブバンドのブロック601内の4つの係数を、A0、A1、A2、A3とする。1HLサブバンドのブロック602内の4つの係数を、B0、B1、B2、B3とする。1LHサブバンドのブロック603内の4つの係数を、C0、C1、C2、C3とする。1HHサブバンドのブロック604内の4つの係数を、D0、D1、D2、D3とする。
<明度情報>
明度情報は輝度レベルの高さを表すため、DC成分である1LLサブバンド係数のブロック601を用いて生成する。明度情報P1は以下の式2で算出する。
(式2)
P1=(A0+A1+A2+A3+2)>>2
<複雑度情報>
複雑度情報は、画像のAC成分である1HLサブバンド係数のブロック602、1LHサブバンド係数のブロック603、1HHサブバンド係数のブロック604を用いて生成する。複雑度情報P2は以下の式3で算出する。
(式3)
P2=MAX(PHL,PLH,PHH)
式3におけるPHLは1HLサブバンド係数のブロック602で生成する中間評価値、PLHは1LHサブバンド係数のブロック603で生成する中間評価値、PHHは1HHサブバンド係数のブロック604で生成する中間評価値であり、複雑度情報P2は、高周波(HL、LH、HH)の各サブバンドブロック中間評価値の最大値とする。PHL、PLH、PHHの計算式をそれぞれ式4、式5、式6に示す。ABSは絶対値変換処理を表す。
(式4)
PHL={ABS(B0)+ABS(B1)+ABS(B2)+ABS(B3)+2}>>2
(式5)
PLH={ABS(C0)+ABS(C1)+ABS(C2)+ABS(C3)+2}>>2
(式6)
PHH={ABS(D0)+ABS(D1)+ABS(D2)+ABS(D3)+2}>>2
<エッジ有無情報>
エッジは、輝度が急峻に変化する箇所であるため、他のブロックと比べてブロック内係数間の輝度レベルの差が大きくなる。また、エッジは高周波成分に属するため、式3で算出する複雑度も自ずと高くなる。
まずは以下の式7~式10の計算フローによって輝度の急峻な変化を検出する。
始めに、式7を用いてブロック内の係数最大値MAX_VALを算出する。式7のMAXは最大値を選択する処理である。
(式7)
MAX_VAL=MAX(A0,A1,A2,A3)
次に、式8を用いてブロック内の係数最小値MIN_VALを算出する。式8のMINは最小値を選択する処理である。
(式8)
MIN_VAL=MIN(A0,A1,A2,A3)
次に、式7と式8の結果を用いて、ブロック内の輝度差分量の最大値DC_DIFFを算出する。
(式9)
DC_DIFF=(MAX_VAL)-(MIN_VAL)
最後にDC_DIFFと、予め設定されているDC用のエッジ判定のための閾値Tdとで大小比較を行い、ブロック内で輝度が急峻に変化するか否かを判定する。輝度が急峻に変化する領域であるか否かのフラグ情報DC_EDGE_FLGを式10に示す。DC_DIFFがTdよりも大きく輝度の差分量が大きい領域であればDC_EDGE_FLGを1とし、DC_DIFFがTdよりも小さく輝度の差分量が小さい領域であればDC_EDGE_FLGを0とする。
(式10)
DC_EDGE_FLG=(DC_DIFF>Td)?1:0
また、対象ブロックに高周波成分が含まれるか否かを判定する。高周波成分が含まれるか否かのフラグ情報AC_EDGE_FLGを式11に示す。ここでは、式3で算出した複雑度P2と予め設定されているAC用のエッジ判定のための閾値Taとで大小比較を行うことで判定する。P2がTaよりも大きく複雑度が高い領域であればAC_EDGE_FLGを1とし、P2がTaよりも小さく複雑度が低い領域であればAC_EDGE_FLGを0とする。
(式11)
AC_EDGE_FLG=(P2>Ta)?1:0
そして、式10と式11の結果を用いて、エッジ有無の情報を生成する。エッジ有無の情報P3は、以下の式12で算出する。
(式12)
P3=(DC_EDGE_FLG && AC_EDGE_FLG)?1:0
ここで、エッジ有無情報P3において、「1」はエッジ有を示し、「0」はエッジ無を示す。本実施例のエッジ有無情報P3は、DC_EDGE_FLGとAC_EDGE_FLGの両方が有効(「1」)である場合に、エッジ有りと判定する方法を説明した。しかし、ウェーブレット係数の性質として、高輝度箇所の係数値は大きく(複雑度高い)、低輝度箇所の係数値は小さく(複雑度低い)なる傾向がある。これは、高輝度箇所は、空間的に隣接する係数間の差分量が相対的に大きく、低輝度箇所は、空間的に隣接する係数間の差分量が相対的に小さいためである。このように、DC_EDGE_FLGとAC_EDGE_FLGは相関があるため、どちらか一方のフラグ情報のみでエッジの有無を判定することができ、より簡易的にエッジ有無の情報P3を生成することも可能である。つまり、DC_EDGE_FLGと、AC_EDGE_FLGのうちの一方のみを算出し、その値をエッジ有無情報P3としてもよい。また、DC_EDGE_FLGを生成する場合には、DC成分ブロック内の係数毎にTdと大小比較を行い、暗部係数の数と非暗部係数の数から輝度が急峻に変化する箇所かどうか判定する等して、DC_EDGE_FLGの計算コストを低減することも可能である。また、比較などをせずに、単に、暗部係数が所定の数以上ある場合にエッジ有りと判定することにより、エッジ有無情報の計算コストを低減することもできる。エッジ有無の特徴情報は、これらに限定されず、その他の生成方法によって実現されても良い。
[特徴分類]
ここで、図7に示す特徴分類表を用いて量子化パラメータ補正部105cが行う特徴分類について説明する。
図7(a)は、明度情報P1、複雑度情報P2を用いて特徴分類した場合の、各閾値(TH0~TH3)及び量子化パラメータの補正量(Q0~Q8)の関係を示している。
図7(a)において、TH0は低輝度と中輝度に分類するための閾値、TH1は中輝度と高輝度に分類するための閾値、TH2は低周波と中周波に分類するための閾値、TH3は中周波と高周波に分類するための閾値である。各閾値(TH0~TH3)は、画像のビット深度や圧縮率等の記録設定に応じて設定される。
明度を用いた特徴分類を行う場合は、前述した明度情報P1と、閾値TH0、TH1との大小関係に応じて、低輝度(暗部)、中輝度、高輝度(明部)のいずれかに特徴分類する。すなわち、明度に関しては、明度情報P1が閾値TH0より小さい場合は<低輝度>、明度情報P1が閾値TH0以上かつ閾値TH1未満の場合は<中輝度>、明度情報P1が閾値TH1以上の場合は<高輝度>に分類される。
また、複雑度を用いた特徴分類を行う場合は、前述した複雑度情報P2と、閾値TH2、TH3との大小関係に応じて、低周波(平坦)、中周波、高周波(複雑)のいずれかに特徴分類する。すなわち、複雑度に関しては、複雑度情報P2が閾値TH2より小さい場合は<低周波>、複雑度情報P2が閾値TH2以上かつ閾値TH3未満の場合は<中周波>、複雑度情報P2が閾値TH3以上の場合は<高周波>に分類される。
明度と複雑度の両方を用いた特徴分類を行う場合は、明度情報P1と、閾値TH0、TH1との大小関係、複雑度情報P2と、閾値TH2、TH3との大小関係から、<低輝度・低周波>、<低輝度・中周波>、<低輝度・高周波>、<中輝度・低周波>、<中輝度・中周波>、<中輝度・高周波>、<高輝度・低周波>、<高輝度・中周波>、<高輝度・高周波>、の9つに特徴分類される。
そして、特徴分類毎に、量子化パラメータの補正量が決定される。図7(a)に示すQ0~Q8は、明度情報P1、複雑度情報P2を用いて分類した場合に、特徴分類毎に適用する量子化パラメータの補正量である。
Q0は、<低輝度・低周波>に特徴分類された場合の量子化パラメータの補正量であり、Q1は、<低輝度・中周波>に特徴分類された場合の量子化パラメータの補正量であり、Q2は、<低輝度・高周波>に特徴分類された場合の量子化パラメータの補正量である。Q3は、<中輝度・低周波>に特徴分類された場合の量子化パラメータの補正量であり、Q4は、<中輝度・中周波>に特徴分類された場合の量子化パラメータの補正量であり、Q5は、<中輝度・高周波>に特徴分類された場合の量子化パラメータの補正量である。Q6は、<高輝度・低周波>に特徴分類された場合の量子化パラメータの補正量であり、Q7は、<高輝度・中周波>に特徴分類された場合の量子化パラメータの補正量であり、Q8は、<高輝度・高周波>に特徴分類された場合の量子化パラメータの補正量である。
特徴分類毎の補正量の大小関係の例を以下に示す。
Q0<Q1≦Q3≦Q2≦Q4≦Q6<Q5≦Q7<Q8
補正量は画像のビット深度や圧縮率に応じて変更するが、視覚特性を考慮して、暗部平坦な特徴分類である<低輝度・低周波>のQ0が最も補正量が小さく、明部複雑な特徴分類である<高輝度・高周波>のQ8が最も補正量が大きくなるように重み付けを設定することが望ましい。なお上記の例における補正量の大小関係は、補正量Q0となる特徴分類<低輝度・低周波>の領域からの各特徴分類の領域までの距離を基準に設定している。
続いて、複雑度情報P2を用いずに明度情報P1を用いて特徴分類する場合について、図7(b)を用いて説明する。複雑度情報P2を用いずに、明度情報P1を用いて特徴分類する場合は、明度情報P1と、閾値TH0、TH1との大小関係により特徴分類する。すなわち、明度情報P1が閾値TH0より小さい場合は<低輝度>、明度情報P1が閾値TH0以上かつ閾値TH1未満の場合は<中輝度>、明度情報P1が閾値TH1以上の場合は<高輝度>に特徴分類する。複雑度情報P2を用いずに明度情報P1のみを用いて特徴分類する場合は、<低輝度>、<中輝度>、<高輝度>の3つに特徴分類される。
<低輝度>に特徴分類された場合の量子化パラメータの補正量がQ0、<中輝度>に特徴分類された場合の量子化パラメータの補正量がQ1、<高輝度>に特徴分類された場合の量子化パラメータの補正量がQ2となる。そして、この時の補正量の関係は、Q0<Q1<Q2となる。
本実施形態では、明度情報P1により特徴分類する場合には、複雑度情報P2を用いずに3つの特徴分類に分類するものとした。しかし。図7(a)と同様に複雑度情報P2も用いて9つに特徴分類し、量子化パラメータの補正量を、Q0=Q3=Q6、Q1=Q4=Q7、Q2=Q5=Q8と設定することで、複雑度情報P2を用いない場合と同様の効果を得るようにしてもよい。
次に、エッジ有無情報を用いた場合の特徴分類の変更処理について、図8に示す特徴分類表を用いて説明する。
図8は、明度情報P1と複雑度情報P2と、閾値(TH0~TH3)によって特徴分類を行う点は図7(a)と同様である。ただし、エッジ有無情報がエッジ有の情報である「1」を示している場合は、その特徴分類を変更する処理を実行する。つまり、エッジ有無情報が「1」でエッジ有である場合、変更対象の特徴分類802(<中輝度・中周波>、<中輝度・高周波>、<高輝度・中周波>、<高輝度・高周波>)に分類されているときは、変更後の特徴分類801(<低輝度・低周波>)に特徴分類を変更する。こうすることで、エッジがあるブロックにおいて、暗部平坦な領域と同等の画質を保つことが可能になる。なお、エッジ無の場合は、特徴分類の変更処理は行わない。
本実施形態では、エッジ有の時に、変更対象となる複数の特徴領域802のいずれかに分類された場合には、変更後の特徴領域801<低輝度・低周波>に特徴分類を変更することにより、量子化パラメータ補正量を小さくしてエッジ領域の画質を保つようにした。しかし、特徴分類の変更方法はこれに限らない。例えば、変更対象となる複数の特徴領域802を、<中輝度・中周波>、<中輝度・高周波>、<高輝度・中周波>、<高輝度・高周波>の4つの特徴分類だけでなく、<中輝度・低周波>、<高輝度・低周波>を含む6つの特徴分類にしてもよい。この場合、変更対象となる特徴領域は、低輝度以外のすべての特徴分類となる。また、変更後の特徴分類を<低輝度・低周波>ではなく、他の特徴分類にしてもよい。ただしこの場合、エッジ領域の画質を保持するためには、変更後の特徴分類は、量子化パラメータの補正量が、変更対象の特徴分類の量子化パラメータの補正量よりも小さい特徴分類となるようにする必要がある。また、エッジ有の場合にエッジ領域専用の特徴分類を設け、エッジ有、かつ、変更対象の特徴分類に分類された場合に、エッジ領域専用の特徴分類に変更するようにしてもよい。
[量子化パラメータ補正手順]
量子化パラメータ補正部105cが行う量子化パラメータの補正手順を図9に示す。本実施例では、任意の圧縮率閾値TR0、TR1(TR0>TR1)が予め設定されている。そして、ユーザに設定された圧縮率と、閾値との大小関係に基づき、使用する特徴情報を選択し、選択された特徴情報に基づいて画像データの各ブロックを特徴分類する。そして特徴分類に応じて、量子化パラメータの補正量を決定して量子化パラメータを補正するように動作する。明度の特徴情報を用いた特徴分類を行うか否かを示すフラグ情報をdc_enable_flg、複雑度の特徴情報を用いた特徴分類を行うか否かを示すフラグ情報をac_enable_flg、エッジ有無の特徴情報を用いた特徴分類を行うか否かを示すフラグ情報をedge_enable_flgとする。各フラグ情報については、1の場合有効としてその特徴情報を用いた特徴分類を行い、0の場合無効としてその特徴分類を用いた特徴分類を行わないようにする。
図9A、図9Bは、量子化制御部105が行う量子化パラメータの補正手順であり、量子化制御部105は、予め組み込まれたプログラムに基づいて図9A、図9Bのフローチャートの各処理を実行する。量子化制御部105は、不図示のプログラムメモリからプログラムを読み出して、読み出したプログラムに基づいて図9の処理を実行するようにしてもよい。
S901では、量子化パラメータ補正部105cは、制御部101が前述のように算出した圧縮率Rを、制御部101から取得する。
前述の説明では、ビットレートに応じて圧縮率を算出するものとしたが、ユーザが操作部を介して圧縮率を設定できるようにし、ユーザにより設定された圧縮率を制御部101から取得してもよい。動画についてはビットレートに基づいて制御部101が圧縮率を算出し、静止画については、ユーザの設定に応じた圧縮率を制御部101から取得するようにしてもよい。また、ビットレートに対応する圧縮率を不図示のメモリに保持しておき、設定されたビットレートに対応する圧縮率を制御部101がメモリから読み出すようにして圧縮率を取得してもよい。あるいは、ビットレートではなく記録画質をユーザに設定させ、ユーザに設定された記録画質に対応する圧縮率をメモリから読み出すようにしてもよい。
S902では、量子化パラメータ補正部105cは、S901で取得した圧縮率Rと圧縮率閾値TR0との大小比較を行う。圧縮率Rのほうが大きい場合はS903に処理を進め、そうでない場合はS904に処理を進める。
S903では、量子化パラメータ補正部105cは、dc_enable_flg=0、ac_enable_flg=0、edge_enable_flg=0に設定する。そしてS907に処理を進める。ここで、S903では、S902において圧縮率が低圧縮であることが判定されたため、明度、複雑度、エッジ有無のすべての特徴情報を使用しないと決定する。この場合、特徴情報を用いた特徴分類及び量子化パラメータの補正処理は実行しない。
S904では、量子化パラメータ補正部105cは、S901で取得した圧縮率Rと圧縮率閾値TR1との大小比較を行う。圧縮率Rのほうが大きい場合はS905に処理を進める。また、そうでない場合はS906処理を進める。
S905では、量子化パラメータ補正部105cは、dc_enable_flg=1、ac_enable_flg=1、edge_enable_flg=1に設定する。そしてS907に処理を進める。ここで、S905では、S904において圧縮率が中圧縮であることが判定されたため、明度、複雑度、エッジ有無のすべての特徴情報を使用して、特徴分類及び量子化パラメータの補正処理を実行するように各フラグ情報を設定する。
S906では、量子化パラメータ補正部105cは、dc_enable_flg=1、ac_enable_flg=1、edge_enable_flg=0に設定する。そしてS907に処理を進める。ここで、S906では、S904において圧縮率が高圧縮であることが判定されたため、明度、複雑度の特徴情報を使用して、量子化パラメータの補正処理を実行し、エッジ有無の特徴情報は使用しないように各フラグ情報を設定する。エッジ有の場合に量子化パラメータを補正すると圧縮率が低下してしまうため、高圧縮の場合は、エッジ有無の特徴情報を用いた量子化パラメータの補正処理は行わないようにする。
S907では、量子化パラメータ補正部105cは、dc_enable_flg=0であるかを判定する。特徴情報を用いて量子化パラメータの補正処理を行う場合は、少なくとも明度情報は使用するため、dc_enable_flg=0の場合は、特徴情報を用いた量子化パラメータの補正処理は行わないこととなる。したがって、dc_enable_flg=0の場合は、特徴情報を用いた量子化パラメータの補正処理は行わずに本堤順を終了する。特徴情報を用いた量子化パラメータの補正処理を行わない場合は、量子化パラメータ補正部105cは、量子化パラメータ設定部105aで設定された量子化パラメータを補正せずにそのまま量子化部106に出力する。
S908では、量子化パラメータ補正部105cは、特徴分類毎の量子化パラメータの補正量Q0~Q8と、特徴分類の閾値TH0~TH3を設定する。これらは、撮影モード(静止画撮影、動画撮影)や、圧縮率に応じた値が設定される。また、S903,S905、S906で設定されるdc_enable_flg、ac_enable_flgの値に応じて異なる量子化パラメータの補正量Q0~Q8を設定するようにしてもよい。
S909では、特徴情報生成部105b及び量子化パラメータ補正部105cは、特徴分類処理及び量子化パラメータの補正処理を行う。特徴分類処理及び量子化パラメータの補正処理は、前述した画像データのブロック毎に実行する。まずは各サブバンドについて0ライン目の4係数を処理の対象ブロックとし、全ブロックについて処理を繰り返す。
図9Bを用いて特徴分類処理及び量子化パラメータの補正処理の処理手順について説明する。
まずS921では、特徴情報生成部105bは、周波数変換部104から出力される対象のブロックのサブバンドデータを用いて、前述の特徴情報の生成処理のように、明度情報P1、複雑度情報P2、エッジ有無情報P3を生成し、量子化パラメータ補正部105cに出力する。
S922では、量子化パラメータ補正部105cは、特徴情報生成部105bが生成した特徴情報である明度情報P1、複雑度情報P2と、S908で設定した閾値TH0~TH3を比較し、前に説明したように対象ブロックの特徴分類を決定する。なお、ac_enable_flg=0の場合は、複雑度情報P2による特徴分類を行わずに、図7(b)のように明度情報P1のみを用いて特徴分類を決定する。
S923では、量子化パラメータ補正部105cは、edge_enable_flg=1であるかを判定する。edge_enable_flg=1の場合はエッジ有無に応じた量子化パラメータの補正量の変更処理を行うためS924に進む。edge_enable_flg=0の場合は、エッジ有無にかかわらず量子化パラメータの補正量を決定するためS924、S925の処理を実行せずにS926に進む。
S924では、量子化パラメータ補正部105cは、特徴情報生成部105bから取得したエッジ有無情報P3が「1」であるか、つまり、対象ブロック内にエッジ領域が含まれているかを判定する。エッジ有無情報P3=1で、対象ブロック内にエッジ領域が含まれていると判定された場合はS925に進んで特徴分類の変更処理を行う。エッジ有無情報P3=1でなく、対象ブロック内にエッジ領域が含まれない場合は、特徴分類の変更処理は行なわずにS926に進む。
S925では、量子化パラメータ補正部105cは、前に図8で説明したように、S922で決定された特徴分類が、変更対象の特徴分類802である場合は、特徴分類を<低輝度・低周波>の特徴分類に変更する。変更対象の特徴分類802ではない場合は、エッジがあった場合でも、S922で決定された特徴分類を維持する。
S926では、S922及びS925の処理で決定された特徴分類に対応する量子化パラメータの補正量を用いて、量子化パラメータ設定部105aで設定された量子化パラメータを補正し、補正した量子化パラメータを、量子化部106に出力する。量子化部106では、特徴分類に対応する量子化パラメータの補正量は、S908で設定された補正量Q0~Q8である。
このように、特徴分類処理及び量子化パラメータの補正処理では、ブロックの特徴情報に応じて特徴分類を決定し、決定した特徴分類に対応する量子化パラメータの補正量を用いて、量子化パラメータ設定部105aで設定された量子化パラメータを補正する。本実施形態では、特徴情報と閾値(TH0~TH3)に基づいて特徴分類したが、特徴分類せずに、特徴情報と閾値(TH0~TH3)とから、対応する量子化パラメータ補正量を決定するような構成にしてもよい。
対象ブロックの特徴分類処理及び量子化パラメータの補正処理を実行した後は、S910に進む。
S910では、量子化パラメータ補正部105cは、フレーム内の全ブロックについてS909の特徴分類処理及び量子化パラメータの補正処理を実行したかを判定し、全ブロックについて処理完了している場合はS911に進む。未処理のブロックが残っている場合は、量子化パラメータ補正部105cは、処理の対象ブロックを次のブロックに変更し、対象ブロックについてS909の処理を実行する。
S910では、量子化パラメータ補正部105cは、記録対象となる全フレームについて処理が完了したかを判定し、処理が完了していない場合は、処理対象のフレームを次のフレームに設定し、S909に進み、特徴分類処理及び量子化パラメータの補正処理を繰り返す。記録対象の全フレームについて処理が完了していると判定した場合は、本処理を終了する。なお、静止画の単写撮影の場合は1枚分の画像つまり1フレームしか記録しないため、S911の処理を省略してもよい。
このように、全フレームの全ブロックについて特徴分類処理及び量子化パラメータの補正処理を実行する。
ここで、各圧縮分類に対する特徴情報の設定意図について説明する。
高圧縮時(R≦TR1)は、エッジ有無の情報を特徴情報として使わずに特徴を分類する。エッジは、視覚的劣化が目立ちやすい箇所であるため、量子化パラメータを下げる領域に分類する。入力画像の全域に視覚的劣化が目立ちやすい領域が存在し、画面上部で量子化パラメータのマイナス補正が大量に発生する(以下、補正過多)と画面下部の視覚的劣化が目立ちやすい領域で割り振る符号量が不足し、画面トータルとしての画質が低下する可能性がある。そのため、高圧縮時は、エッジ有無の特徴情報を使用せず、エッジに対する量子化パラメータの変更が無効となる設定を施すことで、画面下部の画質劣化を抑制するように動作させる。
中圧縮時(R>TR1)は、エッジ有無の情報を含む全ての特徴情報を使って特徴を分類する。中圧縮時は、高圧縮時と比べて目標符号量に余裕があり、画面下部の視覚的劣化が目立ちやすい領域に対しても高圧縮時と比べて多くの符号量を割り振ることができる。そのため、中圧縮時は、エッジに対する量子化パラメータの変更が有効となる設定を施すことで、視覚的劣化の目立ちやすい箇所の画質を向上するように動作させる。
低圧縮時(R>TR0)は、特徴分類を実施しない。量子化パラメータ設定部105aが決定する量子化パラメータがもともと小さく十分な画質が担保される。そこで、低圧縮時においては、符号量の制御性を重視し、特徴情報による量子化パラメータ補正を行わない。
以上のように、圧縮率に応じて特徴分類処理を切り替えて量子化パラメータを補正することで、符号量割り振りの偏りによって生じる画質劣化を抑制し、画面全体の画質を向上することが可能である。
本実施例では、明度情報によって3段階、複雑度情報によって3段階、計9つの領域に特徴を分類する例を用いて説明した。しかし、特徴分類する領域の数はこれに限定されるものではなく、明度情報、複雑度情報のみで特徴分類を行ってもよい。また各特徴の段階を更に増やしてもよい。
また、特徴分類に使用する各特徴情報の閾値を圧縮率に応じて変更することも可能である。例えば、高圧縮時は、図7に示すTH0とTH2を上げて、マイナス方向に量子化パラメータを補正する領域に分類されにくくする。そうすることで、補正過多による画面全体の画質劣化を抑制することが可能である。
また、図7では、エッジ有無によって、特徴分類結果をQ0領域に変更する例を説明したが、エッジ有無による分類結果の変更先はこれに限定されるものではない。エッジ領域に対する量子化パラメータの補正量を別途保持しておき、エッジ有りと判定した場合はその補正量を用いて量子化パラメータを補正するように動作してもよい。
[第2の実施例]
本発明の第2の実施例に係る符号化装置の構成および基本的な処理は、第1の実施例に示す符号化装置と同様であるため、説明は省略する。第1の実施例では、圧縮率に応じて特徴分類において使用する特徴情報を切り替えて量子化パラメータを補正する方法について説明した。本実施例では、静止画、動画等の記録モードに応じて使用する特徴情報、特徴分類処理を切り替えて量子化パラメータを補正する。
本実施例の量子化パラメータの補正手順を図10に示す。図10は、図9と同様に、量子化制御部105が行う量子化パラメータの補正手順であり、量子化制御部105は、予め組み込まれたプログラムに基づいて図10のフローチャートの各処理を実行する。量子化制御部105は、不図示のプログラムメモリからプログラムを読み出して、読み出したプログラムに基づいて図10の処理を実行するようにしてもよい。
S1001では、量子化パラメータ補正部105cは、符号化装置に設定されている記録モードを取得する。本実施例における記録モードとは、動画記録モードまたは静止画記録モードである。記録モードは不図示の操作部を介してユーザにより設定され、不図示のメモリに設定が保持されている。
S1002では、量子化パラメータ補正部105cは、S1001で取得した記録モードが、動画記録モードであるか否かを判定する。動画記録モードである場合は、S1003に処理を進め、そうでない場合、つまり、静止画記録モードの場合はS1004に処理を進める。
S1003では、量子化パラメータ補正部105cは、動画記録モード用の設定として、特徴分類で使用する特徴情報を示す各フラグ情報を、dc_enable_flg=1、ac_enable_flg=1、edge_enable_flg=0に決定する。
S1004では、量子化パラメータ補正部105cは、静止画記録モード用の設定として、特徴分類で使用する特徴情報を示す各フラグ情報を、dc_enable_flg=1、ac_enable_flg=1、edge_enable_flg=0に決定する。
S1005~S1009は、第1の実施例のS907~S911にそれぞれ相当するため、説明を省略する。
このように、第2の実施例では、圧縮率ではなく、記録モードに応じて、特徴分類処理及び量子化パラメータ補正処理に用いる特徴情報を切り替える。
ここで、各記録モードに対する特徴情報の設定意図について説明する。
動画記録モード時は、エッジ有無の情報を特徴情報として使わずに特徴を分類する。動画記録においては、記録時間を保証するために、ビットレートを超えないように記録しなければならない。特に、高圧縮時は、目標符号量の余裕が少ないことが想定されるため、量子化パラメータの補正過多が発生すると、符号量制御の結果、マイナス補正が発生した箇所以外の量子化パラメータが大きくなり、画面トータルとしての画質が低下する可能性がある。従って、動画記録モード時は、目標符号量の割り振りを考慮してエッジ有無の特徴情報を使用せず、エッジに対する量子化パラメータの変更を無効とすることで、画面全体の画質劣化を抑制するように動作する。
一方、静止画記録モード時は、記録フレームが1枚であるため、目標符号量に余裕があり、量子化パラメータの補正過多が発生しても所定のビットレートに収まりやすい。従って、静止画記録モード時は、目標符号量を考慮することなくエッジに対する量子化パラメータの変更を有効とすることで、エッジ領域に対する画質を高めるように動作する。
以上のように、記録モードに応じて特徴の分類方法を切り替えて量子化パラメータを補正することで、符号量割り振りの偏りによって生じる画質劣化を抑制し、画面全体の画質を向上することが可能である。
[第3の実施例]
第1、第2の実施例では、圧縮率や記録モード等の静的なパラメータから特徴分類及び量子化パラメータ変更処理において使用する特徴情報を決定し切り替えていた。これまでの実施例で述べた通り、画像トータルとして発生する画質劣化は、前半で量子化パラメータの補正過多が発生することで後に割り振る符号量が不足することが原因である。そのため、入力画像のほとんどの領域が視覚的劣化の目立ちやすい領域であったとすると、補正過多を防ぐことは難しく、そのような場合は量子化パラメータの補正量を減らして画像全体の画質劣化を抑制するように動作するのが望ましい。本実施例では、特徴分類結果を用いて補正過多が発生しているか否かをフレーム毎に動的に判定し、補正過多の判定結果に応じて量子化パラメータの補正量を変更する。
第3の実施例に係る符号化装置の構成は、第1、第2の実施例に示す符号化装置と同様であるが、量子化パラメータ補正部105cには、フレーム毎に、各特徴分類に分類したブロックの数をカウントする機能、及び、ブロック数のカウントに基づく補正過多検出機能が備わる。このカウント機能は補正過多が発生しているか否かを判定するために用いる。
本実施例の量子化パラメータの補正手順を図11に示す。なお、本実施例では、1フレーム内の量子化パラメータが大きく変化することによる画質劣化を防ぐため、フレーム単位で量子化パラメータの補正量を変更するものとする。また、補正過多が発生した場合に、次のフレームの量子化パラメータの補正量を変更するため、複数フレームを処理する動画記録モードを想定している。
図11のフローチャートは、図9、図10と同様に、量子化制御部105が行う量子化パラメータの補正手順(の一部の処理)であり、量子化制御部105は、予め組み込まれたプログラムに基づいて図9A、図9Bのフローチャートの各処理を実行する。量子化制御部105は、不図示のプログラムメモリからプログラムを読み出して、読み出したプログラムに基づいて図11の処理を実行するようにしてもよい。なお。図11の処理は、第1の実施例のS901~S908処理の後、または、第2の実施例のS1001~S1006の処理の後に実行される処理を示している。つまり、図11の処理は、第1の実施例のS909~S911、または、第2の実施例のS1007~S1009の代わりに実行される処理である。
S1101では、量子化パラメータ補正部105cは、S909、S1007と同様に、処理の対象となるブロックについて、特徴分類処理・量子化パラメータ補正処理を実行する。
S1102では、量子化パラメータ補正部105cは、S1101で決定した処理対象のブロックが分類された特徴分類について、ブロック数のカウントを1追加する。なお、各特徴分類に分類されたブロック数のカウントは、フレーム単位で行うため、フレームの最初のブロックの時は、カウントを初期化してからカウントを追加する。第1の実施例のように明度情報によって3段階、複雑度情報によって3段階で特徴分類を行う場合は、計9つの特徴分類毎に、分類されたブロック数をカウントすることになる。
S1103では、量子化パラメータ補正部105cは、フレーム内の全ての係数のブロックについて、S1101、S1102の処理が完了したか否かを判定する。全ブロックについて処理が完了した場合はS1104に処理を進め、そうでない場合はS1101に処理を戻し、次のブロックを処理対象ブロックとして、S1101、S1102の処理を実行する。
S1104では、量子化パラメータ補正部105cは、記録対象となるすべてのフレームについて量子化パラメータ補正処理が完了したか否かを判定する。全フレームの処理が完了した場合は処理を終了し、そうでない場合はS1105に処理を進める。
S1105では、量子化パラメータ補正部105cは、S1002でカウントした各特徴分類のブロック数に基づいて、処理対象のフレームにおける、各特徴分類に分類されたブロック数の割合を算出する。本実施例では、フレーム内の全ブロック数に対する、各特徴分類に分類されたブロック数の割合を算出するが、割合を算出せずに、各特徴分類のブロックのカウント数をそのまま使用するようにしてもよい。
S1106では、量子化パラメータ補正部105cは、補正過多が発生したか否かを判定する。具体的には、S1105で算出した割合が、予め設定してある所定の割合以上となる特徴分類があるか否かを判定し、所定の割合以上の特徴分類がある場合は、補正過多が発生したと判定する。なお、各特徴分類のブロックのカウント数をそのまま使用する場合は、ブロック数が所定数以上のブロックがある場合に、補正過多が発生したと判定する。補正過多が発生したと判定される場合はS1107に処理を進め、そうでない場合はS1101に処理を戻し、次のフレームについて、S1101以降の処理を実行する。
補正過多が発生したかどうかの判定は、上記の方法ではなく他の方法で行ってもよい。
例えば、S1105において、補正量がマイナスとなるマイナス補正の特徴分類に分類されたブロック数(つまり、補正量がマイナスとなったブロック数)をカウントし、マイナス補正のブロック数の割合が所定の割合以上の場合に補正過多と判定してもよい。
あるいは、特徴分類毎のブロック数の割合、又は、ブロック数だけでなく、特徴分類毎のブロック数の割合又はブロック数と、量子化パラメータ設定部105aから入力される次のフレームの画面先頭ラインの量子化パラメータ値と、に応じて、補正過多を判定してもよい。例えば、量子化パラメータ設定部105aから入力される次のフレームの画面先頭ラインの量子化パラメータ値と、処理対象のフレームにおける各量子化パラメータがマイナス補正される特徴分類のカウント数を用いて行うようにしてもよい。この場合、マイナス方向の補正を行う特徴分類に分類されたブロック数が所定値よりも多く、量子化パラメータ設定部105aから入力される量子化パラメータが所定値(例えば圧縮率に基づく統計値など)よりも大きい場合、補正過多であると判定する。マイナス補正される(量子化パラメータの補正量がマイナスである)特徴分類に分類されるブロック数が極端に多いと、補正過多が発生しやすく、次のフレームの先頭ラインの量子化パラメータは大きくなる可能性が高い。従って、各特徴分類のブロック数(又はブロック数の割合)と量子化パラメータ設定部105aから入力される量子化パラメータの大きさとを用いることで、補正過多が起きているかどうかを判定するようにしてもよい。
また、特徴分類のブロック数(又は割合)は使用せずに、量子化パラメータ設定部105aから入力される次のフレームの画面先頭ラインの量子化パラメータ値が所定値以上であるか基づいて、補正過多を判定することも考えられる。
また、量子化パラメータ設定部105aから入力される次のフレームの先頭ラインの量子化パラメータを用いず、量子化パラメータ設定部105aから入力される処理対象の現フレームの最終ラインの量子化パラメータや、量子化パラメータの平均値を用いてもよい。
S1107は、量子化パラメータ補正部105cは、各特徴分類に対する量子化パラメータの補正量を変更する。変更した量子化パラメータの補正量については、次のフレームから適応される。補正量を変更では、量子化パラメータ設定部105aから入力される量子化パラメータの上昇を防ぐため、少なくとも、マイナス方向に補正される(量子化パラメータの補正量がマイナスとなる)特徴分類における量子化パラメータの補正量の絶対量を減らす。
ここで、補正過多を検出したフレームをNフレーム目としたとき、N+1フレーム目の量子化パラメータの補正量の変更処理の例を図12に示す。補正過多を検出して量子化パラメータの補正量を変更する前のNフレームの量子化パラメータの補正量については、Q0、Q1、Q3については補正量がマイナスであり、Q2、Q4、Q6については補正量0、つまり、補正なしであり、Q5、Q7、Q8については補正量がプラスであるとする。Nフレームで補正過多を検出すると、補正過多検出前は補正量がマイナスであったQ0、Q1、Q3の補正量が0となるように量子化パラメータの補正量を変更し、次のN+1フレームからは、変更した量子化パラメータの補正量を使用する。図12の量子化パラメータの補正量の変更処理では、Q0、Q1、Q3の補正量が0となるように量子化パラメータの補正量を変更したが、補正量を0に変更せずに、補正量の絶対値が小さくなるようなマイナスの補正量に変更するようにしてもよい。あるいは、一度に補正量を0に変更せずに、2~4回に分けて段階的に補正量の絶対値を減少させて、2~4フレーム後に補正量が0となるように量子化パラメータの補正量を変更してもよい。
以上のように、本実施例では、各特徴分類に分類されたブロックのカウント数から補正過多の発生有無を判定し、補正過多に応じて各特徴領域に対する量子化パラメータの補正量を変更する。そのため、符号量割り振りの偏りによって生じる画質劣化を抑制し、フレーム内の画質を安定させると共に動画データ全体の画質を向上することが可能である。
本実施例の補正量の変更処理について、他の例を説明する。上記では、図12のようにマイナス方向の補正量であったQ0、Q1、Q3の補正量のみを変更する例を説明したが、全ての特徴領域に対する補正量の絶対量を減らすように動作させても良い。補正過多を検出したフレームをNフレーム目としたとき、N+1フレーム目に対する量子化パラメータの補正量の変更処理の他の例を図13に示す。図13の例においても図12と同様に、補正過多を検出して量子化パラメータの補正量を変更する前のNフレームの量子化パラメータの補正量については、Q0、Q1、Q3については補正量がマイナスであり、Q2、Q4、Q6については補正量0、つまり、補正なしであり、Q5、Q7、Q8については補正量がプラスであるとする。図13の例では、量子化パラメータの補正量の変更処理前に、マイナスの補正量となっているであるQ0、Q1、Q3だけでなく、プラスの補正量となっているQ5、Q7、Q8についても、補正量が0となるように量子化パラメータの補正量を変更する。なお、補正量を0に変更せずに、補正量の絶対値が小さくなるような補正量に変更するようにしてもよい。あるいは、1回の量子化パラメータの補正量の変更処理に補正量を0に変更せずに、2~4回に分けて段階的に補正量の絶対値を減少させて、2~4フレーム後に補正量が0となるように量子化パラメータの補正量を変更してもよい。
図12、図13の量子化パラメータの補正量の変更処理では、補正過多検出後、1フレームで補正量を変更するように動作する例を説明した。しかし、フレーム間で画質の変化が大きくなりユーザに違和感を与える可能性があるため、複数フレームかけて徐々に量子化パラメータの補正量の絶対値を減らすようにすることがより望ましい。そこで、図14では、補正過多を検出したフレームをNフレーム目としたとき、N+1フレーム目、N+2フレーム目と2フレームかけて量子化パラメータの補正量を変更する量子化パラメータの補正量の変更処理の例を示す。
図14の例においても、図12、図13と同様に、補正過多を検出して量子化パラメータの補正量を変更する前のNフレームの量子化パラメータの補正量については、Q0、Q1、Q3については補正量がマイナスであり、Q2、Q4、Q6については補正量0、つまり、補正なしであり、Q5、Q7、Q8については補正量がプラスであるとする。なお、前に説明したように、Q0<Q1≦Q3であり、Q5≦Q7<Q8である。
変更前であるNフレーム目においてマイナスの補正量であったQ1、Q3と、変更前であるNフレーム目においてプラスの補正量であったQ5、Q7の補正量が、変更後となるN+1フレーム目では0となるように量子化パラメータの補正量を変更する。Q0については、変更前であるNフレーム目においてマイナスの補正量ではあるものの、Nフレーム目のQ0と比べて補正量の絶対量が小さくなるように補正量を変更し、変更後となるN+1フレーム目の補正量とする。また、Q8についても変更前となるNフレーム目のQ8と比べて補正量の絶対量が小さくなるように補正量を変更し、変更後となるN+1フレーム目の補正量とする。
そして、次のN+2フレーム目では、全ての特徴領域に対応する補正量が0となるように量子化パラメータの補正量を変更する。このように量子化パラメータの補正量を段階的に変更することで、フレーム間の画質の大きな変化を減らし、ユーザに与える違和感を軽減することが可能となる。
本実施例では、補正過多が発生した時の量子化パラメータの補正量の変更処理についてのみ説明したが、各特徴分類へ分類されるブロック数の偏りによる補正過多の条件から外れれば、量子化パラメータの補正量は元の状態に復帰するように再度量子化パラメータの補正量を変更する処理を行ってもよい。図14を用いて説明したように、複数フレームかけて補正量を変更するのと同様に、複数フレームかけて補正量が元の状態に復帰するようにすると良い。
[その他の実施形態]
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。また、上述の実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線/無線通信を用いてプログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのプログラムを実行する場合も本発明に含む。従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。プログラムを供給するための記録媒体としては、例えば、ハードディスク、磁気テープ等の磁気記録媒体、光/光磁気記憶媒体、不揮発性の半導体メモリでもよい。また、プログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムを記憶し、接続のあったクライアントコンピュータはがコンピュータプログラムをダウンロードしてプログラムするような方法も考えられる。
101 制御部
102 撮像部
103 プレーン変換部
104 周波数変換部
105 量子化制御部
105a 量子化パラメータ設定部
105b 特徴情報生成部
105c 量子化パラメータ補正部
106 量子化部
107 エントロピー符号化部
108 記録制御部
109 記録媒体

Claims (20)

  1. 画像データを符号化する符号化装置であって、
    画像データを複数の周波数帯域に周波数変換して変換係数を生成する周波数変換手段と、
    前記周波数変換手段で生成した変換係数を量子化する量子化手段と、
    前記量子化手段で生成した量子化後の変換係数を符号化する符号化手段と、
    前記量子化手段で用いる量子化パラメータを制御する量子化制御手段と、を備え、
    前記量子化制御手段は、
    量子化パラメータを設定する量子化パラメータ設定手段と、
    前記画像データ対する複数の特徴情報をブロック毎に生成する特徴情報生成手段と、
    前記特徴情報生成手段により生成された特徴情報に基づき、ブロックが複数の特徴分類のうちのいずれの特徴分類であるかを判定する特徴分類手段と、
    前記ブロック毎に、前記特徴分類手段により判定された特徴分類に対応する量子化パラメータ補正量に基づいて、前記量子化パラメータ設定手段により設定された量子化パラメータを補正する量子化パラメータ補正手段とを備え、
    前記特徴分類手段は、ブロック内にエッジ領域が含まれるブロックを所定の特徴分類であると判定することを特徴する符号化装置。
  2. 前記特徴情報生成手段は、ブロック内にエッジ領域が含まれるかに関するエッジ情報を含む複数の特徴情報を生成し、
    前記特徴分類手段は、前記特徴情報生成手段により生成された前記エッジ情報が、ブロック内にエッジ領域が含まれることを示す場合は、当該ブロックを所定の特徴分類であると判定し、前記特徴情報生成手段で生成した前記エッジ情報が、ブロック内にエッジ領域が含まれることを示さない場合は、前記特徴情報生成手段で生成した特徴情報に基づき、当該ブロックの特徴分類を判定する、
    ことを特徴とする請求項1に記載の符号化装置。
  3. 前記所定の特徴分類は、前記複数の特徴分類のうちの、低輝度・低周波を示す特徴分類であり、量子化パラメータの補正量が最も小さい特徴分類であることを特徴とする請求項1または2に記載の符号化装置。
  4. 前記所定の特徴分類は、前記特徴分類手段により前記特徴情報に基づいて分類される前記複数の特徴分類とは異なる特徴分類であることを特徴とする請求項1乃至3のいずれか1項に記載の符号化装置。
  5. 前記複数の特徴情報の一つは明度情報であり、
    前記特徴情報生成手段は、前記周波数変換手段で生成した変換係数のDC成分を用いて前記明度情報を生成することを特徴とする請求項1乃至4のいずれか1項に記載の符号化装置。
  6. 前記複数の特徴情報の一つは複雑度情報であり、
    前記特徴情報生成手段は、前記周波数変換手段で生成した変換係数のAC成分を用いて前記複雑度情報を生成することを特徴とする請求項1乃至5のいずれか1項に記載の符号化装置。
  7. 画像データの記録に関する記録設定を行う設定手段を有し、
    前記記録設定に応じて、前記特徴分類手段は、ブロック内にエッジ領域が含まれるブロックを所定の特徴分類であると判定するか、ブロック内にエッジ領域が含まれるかに関わらず特徴分類を判定するかを切り替えることを特徴とする請求項1乃至6のいずれか1項に記載の符号化装置。
  8. 前記記録設定は、画像データの圧縮率であり、
    前記特徴分類手段は、前記圧縮率が第1の閾値よりも小さい場合は、ブロック内にエッジ領域が含まれるかに関わらず特徴分類を判定し、前記圧縮率が前記第1の閾値よりも大きい場合は、ブロック内にエッジ領域が含まれるブロックを所定の特徴分類であると判定することを特徴とする請求項7に記載の符号化装置。
  9. 前記記録設定は、静止画像データを記録するか、動画像データを記録するかに関する設定であることを特徴とする請求項8に記載の符号化装置。
  10. 前記特徴分類手段は、静止画像データを記録する設定の場合は、ブロック内にエッジ領域が含まれるブロックを所定の特徴分類であると判定し、動画像データを記録する設定の場合は、ブロック内にエッジ領域が含まれるかに関わらず特徴分類を判定することを特徴とする請求項9に記載の符号化装置。
  11. 画像データの記録に関する記録設定を行う設定手段を有し、
    前記記録設定が所定の設定の場合は、前記量子化パラメータ補正手段による特徴分類に応じた量子化パラメータの補正を行わず、前記量子化パラメータ設定手段により設定された量子化パラメータを用いて前記量子化手段により量子化することを特徴とする請求項1乃至6のいずれか1項に記載の符号化装置。
  12. 前記特徴分類手段は、画像データの明度に応じて特徴分類を判定し、
    明度が高い特徴分類に対応する量子化パラメータ補正量は、明度が低い特徴分類に対応する量子化パラメータ補正量よりも大きい値が設定されていることを特徴とする請求項1乃至11のいずれか1項に記載の符号化装置。
  13. 前記特徴分類手段は、画像データの複雑度に応じて特徴分類を判定し、
    複雑度が高い特徴分類に対応する量子化パラメータ補正量は、複雑度が低い特徴分類に対応する量子化パラメータ補正量よりも大きい値が設定されていることを特徴とする請求項1乃至12のいずれか1項に記載の符号化装置。
  14. 前記複数の特徴分類毎に、前記特徴分類手段により分類されたブロック数をカウントするカウント手段と、
    前記カウント手段によりカウントされた特徴分類のブロック数に応じて、前記特徴分類に対応する量子化パラメータの補正量を変更する補正量変更手段と、
    を有することを特徴とする請求項1乃至13のいずれか1項に記載の符号化装置。
  15. 所定以上のブロック数が前記カウント手段によりカウントされた特徴分類がある場合に、前記補正量変更手段は、量子化パラメータの補正量の絶対値が減少するように、特徴分類に対応する量子化パラメータの補正量を変更することを特徴とする請求項14に記載の符号化装置。
  16. 前記複数の特徴分類のうち、特徴分類に対応する量子化パラメータの補正量がマイナスである特徴分類に分類されたブロック数をカウントするカウント手段と、
    前記カウント手段によりカウントされたブロック数に応じて、前記特徴分類に対応する量子化パラメータの補正量を変更する補正量変更手段と、
    を有することを特徴とする請求項1乃至13のいずれか1項に記載の符号化装置。
  17. 前記カウント手段によりカウントされたブロック数が所定以上の場合に、前記補正量変更手段は、量子化パラメータの補正量の絶対値が減少するように、特徴分類に対応する量子化パラメータの補正量を変更することを特徴とする請求項16に記載の符号化装置。
  18. コンピュータを請求項1乃至17に記載の符号化装置の各手段として機能させるためのプログラム。
  19. 画像データを符号化する符号化装置の制御方法であって、
    画像データを複数の周波数帯域に周波数変換して変換係数を生成する周波数変換工程と、
    前記周波数変換により生成された変換係数を量子化する量子化工程と、
    量子化後の変換係数を符号化する符号化工程と、
    前記量子化工程で用いる量子化パラメータを制御する量子化制御工程と、を備え、
    前記量子化制御工程は、
    量子化パラメータを設定する量子化パラメータ設定工程と、
    前記画像データ対する複数の特徴情報をブロック毎に生成する特徴情報生成工程と、
    前記特徴情報に基づき、ブロックが複数の特徴分類のうちのいずれの特徴分類であるかを判定する特徴分類工程と、
    前記ブロック毎に、前記判定された特徴分類に対応する量子化パラメータ補正量に基づいて、前記量子化パラメータ設定工程で設定された量子化パラメータを補正する量子化パラメータ補正工程と、を備え、
    前記特徴分類工程では、ブロック内にエッジ領域が含まれるブロックを所定の特徴分類であると判定する、
    ことを特徴する符号化装置の制御方法。
  20. 請求項19に記載の符号化装置の制御方法をコンピュータに実行させるためのプログラム。
JP2019152246A 2019-08-22 2019-08-22 符号化装置及びその制御方法 Active JP7387333B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019152246A JP7387333B2 (ja) 2019-08-22 2019-08-22 符号化装置及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019152246A JP7387333B2 (ja) 2019-08-22 2019-08-22 符号化装置及びその制御方法

Publications (2)

Publication Number Publication Date
JP2021034846A JP2021034846A (ja) 2021-03-01
JP7387333B2 true JP7387333B2 (ja) 2023-11-28

Family

ID=74678365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019152246A Active JP7387333B2 (ja) 2019-08-22 2019-08-22 符号化装置及びその制御方法

Country Status (1)

Country Link
JP (1) JP7387333B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005244710A (ja) 2004-02-27 2005-09-08 Ricoh Co Ltd 画像処理装置、画像処理方法、プログラム及び情報記録媒体
US20180365863A1 (en) 2017-06-19 2018-12-20 Canon Kabushiki Kaisha Image coding apparatus, image decoding apparatus, image coding method, image decoding method, and non-transitory computer-readable storage medium
JP2019029802A (ja) 2017-07-28 2019-02-21 キヤノン株式会社 符号化装置、符号化方法、及び、プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0970043A (ja) * 1995-08-31 1997-03-11 Sony Corp 画像符号化装置および画像符号化方法並びに記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005244710A (ja) 2004-02-27 2005-09-08 Ricoh Co Ltd 画像処理装置、画像処理方法、プログラム及び情報記録媒体
US20180365863A1 (en) 2017-06-19 2018-12-20 Canon Kabushiki Kaisha Image coding apparatus, image decoding apparatus, image coding method, image decoding method, and non-transitory computer-readable storage medium
JP2019004428A (ja) 2017-06-19 2019-01-10 キヤノン株式会社 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、プログラム
JP2019029802A (ja) 2017-07-28 2019-02-21 キヤノン株式会社 符号化装置、符号化方法、及び、プログラム

Also Published As

Publication number Publication date
JP2021034846A (ja) 2021-03-01

Similar Documents

Publication Publication Date Title
JP6255063B2 (ja) Hdr画像のための画像処理
KR101939012B1 (ko) 하이 다이내믹 레인지 이미지들을 위한 콘텐츠 적응적 지각 양자화기
US8213500B2 (en) Methods and systems for processing film grain noise
JP5144202B2 (ja) 画像処理装置およびプログラム
US10771785B2 (en) Image encoding apparatus, method of controlling the same, and storage medium
CN104702926A (zh) 摄像机
KR20090100402A (ko) 이미지 압축 및 압축해제
US10123021B2 (en) Image encoding apparatus for determining quantization parameter, image encoding method, and program
US10497093B2 (en) Image processing apparatus for minimizing deterioration of image quality of a raw image
JP7001383B2 (ja) 符号化装置、符号化方法、及び、プログラム
US20180035091A1 (en) Imaging apparatus and control method thereof
JP7387333B2 (ja) 符号化装置及びその制御方法
JP7129326B2 (ja) 撮像装置及びその制御方法及びプログラム
JP2018088652A (ja) 撮像装置、画像処理方法、及び、プログラム
JP6916618B2 (ja) 画像符号化装置及びその制御方法及びプログラム
JPH08322041A (ja) ブロック歪み除去装置
JP7419044B2 (ja) 符号化装置、撮像装置、制御方法、およびプログラム
JP7469865B2 (ja) 画像処理装置および画像処理方法
JP6812214B2 (ja) 画像符号化装置、画像符号化方法、及びプログラム
WO2023096728A1 (en) Denoising for sdr-to-hdr local reshaping
JP6265705B2 (ja) 画像符号化装置及び画像符号化方法
JP2022077438A (ja) 符号化装置及び方法、撮像装置、プログラム、記憶媒体
JP2021039559A (ja) 画像処理装置
JP4001143B2 (ja) 係数生成装置および方法
JP2014220626A (ja) 撮像装置及びその制御方法、プログラム、記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231002

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231115

R151 Written notification of patent or utility model registration

Ref document number: 7387333

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151