(57)【要約】【課題】画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化法【解決手段】画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化のための組み込みコーデック（ＥＢＣ）回路が提供される。ＥＢＣ回路は、第１画像ブロックを格納するメモリと、画素領域での行方向残差値の第１予測ブロックからの第１差分絶対値和（ＳＡＤ）と列方向残差値の第２予測ブロックからの第２ＳＡＤをコンピュータ計算する符号化回路とを含む。符号器回路は、第１符号化モード及び第２符号化モードの各々に対する最適残差予測タイプとして残差予測タイプのセットから残差予測タイプ及び最適量子化パラメータとして量子化パラメータのセットを選択する。符号器回路は、選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて、第１符号化モード及び第２符号化モードそれぞれで符号化第１画像ブロックのビットストリームのセットを生成する。【選択図】図１
2020123947.tif 000002
【特許請求の範囲】
【請求項１】
組み込みコーデック（ＥＢＣ）回路であって、
入力画像フレームの複数の画像ブロックのうちの第１画像ブロックを格納するメモリと、
符号器回路と、
を備え、前記符号器回路は、
画素領域において行方向残差値の第１予測ブロックからの第１差分絶対値和（ＳＡＤ）と列方向残差値の第２予測ブロックからの第２ＳＡＤを計算する段階であって、前記第１予測ブロック及び前記第２予測ブロックが前記第１画像ブロックに対応する、段階と、
前記計算された第１ＳＡＤ及び前記計算された第２ＳＡＤに基づいて、第１符号化モード及び第２符号化モードの各々に対する最適残差予測タイプとして、残差予測タイプのセットから残差予測タイプを選択する段階と、
前記計算された第１ＳＡＤ及び前記計算された第２ＳＡＤに基づいて、前記第１符号化モード及び前記第２符号化モードの各々に対する最適量子化パラメータとして、量子化パラメータのセットを選択する段階と、
前記第１符号化モード及び前記第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて、前記第１符号化モード及び前記第２符号化モードにて符号化第１画像ブロックのビットストリームのセットを生成する段階と、
を実行するよう構成される、組み込みコーデック（ＥＢＣ）回路。
【請求項２】
前記符号器回路は更に、前記入力画像フレームを前記複数の画像ブロックに区分するよう構成され、前記各画像ブロックが複数の画素値を含む、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項３】
前記第１ＳＡＤ及び前記第２ＳＡＤの計算並びに前記残差予測タイプ及び量子化パラメータの選択は、変換領域での前記第１画像ブロックへの逐次符号化方式の適用前の前記画素領域での前記第１画像ブロックに関連付けられる前処理動作に対応する、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項４】
前記符号器回路は更に、前処理動作において、前記第１画像ブロックへの残差予測方式の行方向の適用に基づいて、前記第１予測ブロックを生成するよう構成される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項５】
前記符号器回路は更に、前記第１画像ブロックへの前記残差予測方式の列方向の適用に基づいて、前記前処理動作において前記第２予測ブロックを生成するよう構成される、ことを特徴とする請求項４に記載のＥＢＣ回路。
【請求項６】
前記残差予測方式は、差分パルスコード変調（ＤＰＣＭ）方式、適応ＤＰＣＭ方式、又はＰＣＭ方式のうちの少なくとも１つである、ことを特徴とする請求項５に記載のＥＢＣ回路。
【請求項７】
前記第１予測ブロックは、残差画素値の水平ＤＰＣＭブロックに対応し、前記第２予測ブロックは、残差画素値の垂直ＤＰＣＭブロックに対応する、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項８】
前記符号器回路は更に、前記第１符号化モードに対して、前記計算された第１ＳＡＤが前記計算された第２ＳＡＤより大きいか又は等しいかをチェックするよう構成される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項９】
前記計算された第１ＳＡＤが前記計算された第２ＳＡＤより大きいか又は等しいときに、前記残差予測タイプが全周波数ＤＰＣＭタイプである、ことを特徴とする請求項８に記載のＥＢＣ回路。
【請求項１０】
前記計算された第１ＳＡＤが前記計算された第２ＳＡＤより小さいときに、前記残差予測タイプが、直流（ＤＣ）のみのＤＰＣＭタイプである、ことを特徴とする請求項８に記載のＥＢＣ回路。
【請求項１１】
前記残差予測タイプのセットは、ＤＣのみのＤＰＣＭタイプ及び全周波数ＤＰＣＭタイプを含む、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項１２】
前記第１画像ブロックは、ＹＣｂＣｒカラースペースにおける少なくとも１つのルーマブロック及び、クローマブロックのペアとして表される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項１３】
前記符号器回路は更に、前記ルーマブロック及び前記クローマブロックのペアに対する特定のビット深度に従って、前記ルーマブロック及び前記クローマブロックのペアに対するオフセットパラメータを決定するよう構成される、ことを特徴とする請求項１２に記載のＥＢＣ回路。
【請求項１４】
前記符号器回路は、前記第２符号化モードに対して、前記計算された第１ＳＡＤが、前記計算された第２ＳＡＤと前記決定されたオフセットパラメータの和よりも小さいか又は等しいかどうかをチェックするよう構成される、ことを特徴とする請求項１３に記載のＥＢＣ回路。
【請求項１５】
前記計算された第１ＳＡＤが前記和よりも小さいか又は等しいときに、前記残差予測タイプが全周波数ＤＰＣＭタイプである、ことを特徴とする請求項１４に記載のＥＢＣ回路。
【請求項１６】
前記計算された第１ＳＡＤが前記和より大きいときに、前記残差予測タイプがＤＣのみのＤＰＣＭタイプである、ことを特徴とする請求項１４に記載のＥＢＣ回路。
【請求項１７】
前記符号器回路は更に、
前記計算された第１ＳＡＤと前記計算された第２ＳＡＤの比較に基づいて最小ＳＡＤ値を決定し、
前記決定された最小ＳＡＤ値が閾値よりも小さいかどうかをチェックする、
よう構成される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項１８】
前記第１符号化モード及び前記第２符号化モードの各々に対する量子化パラメータのセットの選択は、前記チェックに基づく、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項１９】
前記符号器回路は更に、前処理動作後に、前記第１画像ブロックに対して第１逐次符号化方式を適用し、前記符号化第１画像ブロックのビットストリームのセットから前記第１符号化モードにて第１ビットストリームを生成するよう構成され、前記第１ビットストリームは、前記第１符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項２０】
前記第１逐次符号化方式は、第１タイプの順方向変換、量子化、残差予測、及びエントロピー符号化方式の逐次適用を含み、前記第１タイプの順方向変換は、１次元行離散的コサイン変換（１Ｄ行ＤＣＴ）である、ことを特徴とする請求項１９に記載のＥＢＣ回路。
【請求項２１】
前記符号器回路は、前処理動作後に、前記第１画像ブロックに第２逐次符号化方式を適用して、前記符号化第１画像ブロックのビットストリームのセットから前記第２符号化モードにて第２ビットストリームを生成するよう構成され、前記第２ビットストリームは、前記第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項２２】
前記第２逐次符号化方式は、第２タイプの順方向変換、量子化、残差予測、及びエントロピー符号化方式の逐次適用を含み、前記第２タイプの順方向変換は、１Ｄ列ＤＣＴである、ことを特徴とする請求項２１に記載のＥＢＣ回路。
【請求項２３】
前記符号器回路は更に、
前記符号化第１画像ブロックのビットストリームのセットから、前記第１符号化モードに対するビット損失値の第１セット及び前記第２符号化モードに対するビット損失値の第２セットを計算し、
前記計算されたビット損失値の第１セット及び前記計算されたビット損失値の第２セットに基づいて、前記第１画像ブロックの最良符号化モードとして前記第１符号化モード又は前記第２符号化モードの１つを選択する、
よう構成される、ことを特徴とする請求項１に記載のＥＢＣ回路。
【請求項２４】
メモリ及び符号器回路を備えた組み込みコーデック（ＥＢＣ）回路において、
前記メモリによって、入力画像フレームの複数の画像ブロックのうちの第１画像ブロックを格納する段階と、
前記符号器回路によって、画素領域における行方向残差値の第１予測ブロックから第１差分絶対値和（ＳＡＤ）と列方向残差値の第２予測ブロックからの第２ＳＡＤを計算する段階であって、前記第１予測ブロック及び前記第２予測ブロックは、前記第１画像ブロックに対応する、段階と、
前記符号器回路によって、前記計算された第１ＳＡＤ及び前記計算された第２ＳＡＤに基づいて、第１符号化モード及び第２符号化モードの各々の最適残差予測タイプとして残差予測タイプのセットから残差予測タイプを選択する段階と、
前記符号器回路によって、前記計算された第１ＳＡＤ及び前記計算された第２ＳＡＤに基づいて、前記第１符号化モード及び前記第２符号化モードの各々に対する最適量子化パラメータとして量子化パラメータのセットを選択する段階と、
前記符号器回路によって、前記第１符号化モード及び前記第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて、前記第１符号化モード及び前記第２符号化モードにて符号化第１画像ブロックのビットストリームのセットを生成する段階と、
を含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照／引用による組み入れ
なし
【０００２】
本開示の様々な実施形態は、組み込みコーデック回路における画像及びビデオ圧縮及び解凍技術に関する。より具体的には、本開示の様々な実施形態は、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化のための組み込みコーデック（ＥＢＣ）回路及びその方法に関する。
【背景技術】
【０００３】
画像圧縮のための画像化技術における最近の進歩は、視覚品質の有意な劣化及び／又はメモリ使用への影響を生じることなく、様々な解像度（例えば、フル高解像度（ＨＤ）４Ｋ解像度、及び８Ｋ解像度）を備えた画像を格納することができる画像取り込み及びディスプレイデバイスにおいてオンチップコーデックの需要の増加をもたらしている。典型的には、従来の画像符号化回路は、異なる符号化方式によって画像ブロックを符号化し、符号化画像ブロックのマルチビットストリームから異なる画像ブロックを完全に再構成するように構成することができる。このような動作は、符号化画像ブロックから再構成された画像ブロックが最小圧縮アーティファクトを有するように画像ブロックを符号化する最適モードを決定する目的で実行することができる。再構成画像ブロックは、オリジナル画像ブロックと比較して最適符号化モードを選択することができる。最適符号化モードを見付けるための各画像ブロックの繰り返しの符号化、再構成、及び比較の欠点のあるサイクルは、コンピューティング資源及びメモリ資源の過度な利用につながり、画像ブロックの符号化動作における遅延を引き起こす可能性がある。
【０００４】
従来の伝統的方法の制限及び欠点は、記述されてきたシステムと本出願の残りに図面に関して示す本開示の一部の態様との比較を通して当業者に明らかになるであろう。
【発明の概要】
【課題を解決するための手段】
【０００５】
画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化のための組み込みコーデック（ＥＢＣ）回路及び方法は、請求項にて完全に記載されるように、図面のうちの少なくとも１つに関して図示及び／又は説明されて実質的に提供される。
【０００６】
本開示のこれらの及び他の特徴及び利点は、同じ参照数字が全体を通して同じ部分を示す添付の図面と共に本開示の以下の詳細な説明を精査することで理解することができる。
【図面の簡単な説明】
【０００７】
【図１】本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化のための組み込みコーデック（ＥＢＣ）回路及び他の回路を備えた例示的なメディアデバイスを示すブロック図である。
【図２】本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化のための様々な周辺構成要素を備えた図１のＥＢＣ回路を示すブロック図である。
【図３Ａ】本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく図２のＥＢＣ回路による画像ブロック符号化の例示的シナリオを示す図である。
【図３Ｂ】本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく図２のＥＢＣ回路による画像ブロック符号化の例示的シナリオを示す図である。
【図４Ａ】本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化の例示的な動作を示す流れ図である。
【図４Ｂ】本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化の例示的な動作を示す流れ図である。
【発明を実施するための形態】
【０００８】
本開示の様々な実施形態は、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化の方法及び組み込みコーデック（ＥＢＣ）回路に見出すことができる。本開示のＥＢＣ回路は、画像ブロックの変換領域符号化段階の後に取得されたビットストリームからの画像ブロックのフル再構成なしで画像ブロックを符号化するための最良（すなわち、最適）モードを選択する解決手法を提供する。従来の技術は、画像ブロックを符号化する最良モードを選択するために全画像ブロックを再構成しなければならないので、本開示のＥＢＣ回路は、オリジナル画像ブロックの画素領域前処理段階（変換領域符号化段階の前）にて画像ブロックを符号化する最良モードを決定する。本開示のＥＢＣ回路はまた、画素領域前処理段階にて最適量子化パラメータ値及び残差予測タイプ（例えば、ＤＣのみ又は全周波数の残差）の選択に対処する。従って、本開示のＥＢＣ回路は、画像ブロックの視覚的に損失のない画像品質を依然として維持しながら最良モードを選択する。画素領域前処理段階により、コンピューティング資源及びメモリ資源の最小限で効率的な使用が可能となり、従来技術よりも大幅に高速な処理時間で異なる画像ブロックに対して符号化動作を実行する。
【０００９】
図１は、本開示の一実施形態による、画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化のための組み込みコーデック（ＥＢＣ）回路及び他の回路を備えた例示的なメディアデバイスを示すブロック図である。図１を参照すると、プロセッサ１０６、ＥＢＣ回路１０８、及び外部メモリ１１０を含むメディアデバイス１０２が示されている。一部の実施形態では、画像センサ１０４は、プロセッサ１０６、ＥＢＣ回路１０８、及び外部メモリ１１０とインタフェース接続することができる。更に、画像センサ１０４、プロセッサ１０６、ＥＢＣ回路１０８、及び外部メモリ１１０を相互接続するシステムバス１１２が示されている。
【００１０】
メディアデバイス１０２は、符号化（すなわち、圧縮された）画像及び／又はビデオとして未圧縮生画像及び／又はビデオを外部メモリ１１０に格納するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。メディアデバイス１０２は、媒体コンテンツ（例えば、符号化画像及び／又はビデオ）の符号化並びに復号、及びメディアデバイス１０２での復号媒体コンテンツの再生を管理するよう構成することができる。メディアデバイス１０２は、メディアデバイス１０２の媒体コンテンツのオフライン（ネットワークなし）符号化のための他のコンピュータ回路と共に、専用オンチップコーデック回路（ＥＢＣ回路１０８など）、及び画像（生未圧縮又は符号化）のストレージのための外部メモリ１１０を含むことができる。一部の実施形態では、メディアデバイス１０２は、未圧縮ファイルフォーマットである生画像ファイルフォーマットの画像を取り込むために１又は２以上の画像センサ（画像センサ１０４など）を含むこともできる。このような場合、取り込まれた画像は、メディアデバイス１０２のＥＢＣ回路１０８によって符号化することができる。メディアデバイス１０２の実施例は、限定されないが、デジタルカメラ、携帯式通信デバイス（例えば、ラップトップ、スマートフォン、タブレット、ファブレット、スマートウォッチ、スマートグラスなど）、媒体サーバ、ワークステーション、デスクトップコンピュータ、及び拡張現実／仮想現実／混合現実（ＡＲ／ＶＲ／ＭＲ）デバイスを含むことができる。
【００１１】
図１には示していないが、メディアデバイス１０２は、通信ネットワーク（図示せず）を介して他の周辺又はピア接続デバイスとの符号化及び／又は未圧縮の生画像及び／又はビデオの共有を管理するよう構成することができるネットワークインタフェースを含むこともできる。ネットワークインタフェース及び通信ネットワークの詳細な説明は、簡潔にするために本開示から省略されている。
【００１２】
画像センサ１０４は、画像センサ１０４の視野（ＦＯＶ）におけるシーンの未圧縮の生画像又は未圧縮の生画像のシーケンスを取り込むよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。画像センサ１０４は、相補型金属酸化膜半導体（ＣＭＯＳ）センサなどのアクティブ画素センサとして実施することができる。このような実施では、画像センサ１０４を、ＣＭＯＳセンサのセンサコアでの画素の各行又は列（１次元（１Ｄ）画素アレイ又は１Ｄ画像ブロック）のプログレッシブ走査（１ラインずつ）を実行するよう構成することができる。プログレッシブ走査は、垂直走査（列方向）又は水平走査（行方向）とすることができる。一部の実施形態では、アクティブ画素センサの代わりに、画像センサ１０４を、パッシブ画素センサ（電荷結合デバイス（ＣＣＤ）センサ、オーバーサンプルバイナリ画像センサ、平面フーリエキャプチャアレイ（ＰＦＣＡ）、バック照明（ＢＳＩ又はＢＩ）センサなど）の１つとして実施することができる。図示してないが画像センサ１０４は、画像センサ１０４からの画像データに従って図形処理ユニット（ＧＰＵ）を動作し、フレームバッファ、及び／又は画像センサ１０４に一体化したメモリに格納された画像を処理するよう構成された専用マイクロプロセッサ（又はマイクロコントローラ）を含むこともできる。
【００１３】
プロセッサ１０６は、専用メモリ（例えば、外部メモリ１１０又はＥＢＣ回路１０８のオンチップメモリ）に格納された命令のセットを実行するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。プロセッサ１０６は、当技術で公知の幾つかのプロセッサ技術に基づいて実施することができる。プロセッサ１０６の例は、限定されないが、グラフィカル処理ユニット（ＧＰＵ）、プロセッサのためのコプロセッサ（専用画像コプロセッサなど）、専用デジタル信号プロセッサ、中央処理ユニット（ＣＰＵ）、ｘ８６ベースのプロセッサ、ｘ６４ベースのプロセッサ、縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、特定用途向け集積回路（ＡＳＩＣ）プロセッサ、複数命令セットコンピュータ（ＣＩＳＣ）プロセッサを含むことができる。
【００１４】
ＥＢＣ回路１０８は、第１画像ブロックに対する画素領域前処理動作に基づいて選択された特定の符号化モードに基づいて第１画像ブロック（例えば、特定の圧縮係数に対して８×４又は１６×８画像ブロック）を符号化するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。ＥＢＣ回路１０８は更に、ＥＢＣ回路１０８で受信された命令に応じて、符号化第１画像ブロックを復号するよう構成することができる。第１画像ブロックは、画像センサ１０４による行方向又は列方向走査に続いて画像センサ１０４の読み出しレジスタから直接取り出された入力画像フレーム（すなわち、未圧縮の生画像フレーム）又は画素アレイ（行又は列）の一部とすることができる。ＥＢＣ回路１０８は、外部メモリ１１０への符号化第１画像ブロックのビットストリームのストレージを管理することができるか、又は専用通信ネットワークを介して他のメディアデバイスへの符号化第１画像のビットストリームの転送を管理することができる。
【００１５】
ＥＢＣ回路１０８は、メディアデバイス１０２の他のコンピュータ回路に接続された専用ハードウェア符号器／復号器として実施することができる。このような実施では、ＥＢＣ回路１０８は、特定のコンピュータ回路での固有の形式因子に関連付けることができる。特定のコンピュータ回路の例は、限定されないが、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブル論理デバイス（ＰＬＤ）、特定用途向け集積回路（ＡＳＩＣ），プログラマブルＡＳＩＣ（ＰＬ−ＡＳＩＣ）、特定用途向け集積部品（ＡＳＳＰ）、及び標準的マイクロプロセッサ（ＭＰＵ）又はデジタル信号プロセッサ（ＤＳＰ）に基づくシステムオンチップ（ＳＯＣ）を含むことができる。別の実施形態により、ＥＢＣ回路１０８は、グラフィカル処理ユニット（ＧＰＵ）に接続してＥＢＣ回路１０８の動作を並列処理にすることができる。別の実施形態により、ＥＢＣ回路１０８を、メディアデバイス１０２のハードウェア回路のメモリ及び論理ユニット（又はプログラマブル論理ユニット）に格納されたプログラマブル命令の組合せとして実施することができる。
【００１６】
外部メモリ１１０は、入力画像フレーム（未圧縮の生の又は符号化された）又は入力画像のシーケンスを格納するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。外部メモリ１１０は、画像センサ１０４から取り出された生の未圧縮画像ブロックを格納するための画像バッファとして動作するよう構成することができる。加えて、外部メモリ１１０は、画像ブロックに対する画素領域前処理動作に基づいて選択することができる逐次符号化／復号方式（最適符号化モードに対応する）に関連付けられる命令を格納することができる。例示的実施形態では、外部メモリ１１０を、ＥＢＣ回路１０８に外部から接続することができる動的ランダムアクセスメモリ（ＤＲＡＭ）回路とすることができる。別の例示的実施形態では、外部メモリ１１０は、ＥＢＣ回路１０８に外部から接続することができる静的ランダムアクセスメモリ（ＳＲＡＭ）回路とすることができる。外部メモリ１１０の実施の例は、限定されないが、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、電子的消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ）、ハードディスクドライブ（ＨＤＤ）、固体ドライブ（ＳＳＤ）、ＣＰＵキャッシュ、又はセキュアデジタル（ＳＤ）カードを含むことができる。
【００１７】
図１に示していないが、メディアデバイス１０２は、アドバンスドビデオコーデック（ＡＶＣ）／媒体エキスパートグループ（ＭＰＥＧ−４／ＡＶＣ）又はＨ．２６４、ＭＰＥＧ−４／ＨＥＶＣ又はＨ．２６５などを含むことができる公知のコーデック規格と互換性がありこれをサポートすることができるビデオコーデックを含むことができる。加えて、ビデオコーデックは、ＦＦｍｐｅｇ、Ｘｖｉｄ、ＤＩＶｘ、ＶＰ１−９、Ｗｉｎｄｏｗｓメディアコーデック、ＦＦａｖｓなどを含むことができる他のコーデックライブラリによって支援することができる。
【００１８】
システムバス１１２は、メディアデバイス１０２の異なる構成要素へのデータチャネルのセット（又は導電性経路）を含むことができるハードウェアバスとすることができる。つまり、システムバス１１２は、メディアデバイス１０２の異なる構成要素の少なくともデータポート、アドレスポート、及び制御信号ポートを相互接続することができる。例えばシステムバス１１２は、画像センサ１０４、プロセッサ１０６、ＥＢＣ回路１０８、外部メモリ１１０、及び他の回路を互いに相互接続することができる。システムバス１１２は、メディアデバイス１０２上の異なる構成要素間のシリアルデータ通信又はパラレルデータ通信を容易にするよう構成することができる。システムバス１１２の例は、８ビットパラレルシングルシステムバス、１６ビットパラレルシングルシステムバス、３２ビットパラレルシングルシステムバス、６４ビットパラレルシングルシステムバス、シリアルデータバスなどを含むことができる。
【００１９】
動作中、入力画像フレームの複数の画像ブロック（例えば２Ｄ画像ブロック）は、メディアデバイス１０２の外部メモリ１１０によって受信することができる。一部の実施形態では、第１画像ブロックを、メディアデバイス１０２に接続されたオンチップ画像センサ（画像センサ１０４など）又はカメラデバイスから逐次、複数の画像ブロックから取り出すことができる。他の実施形態では、複数の画像ブロックは、メディアデバイス１０２の永続ストレージに格納された未圧縮生画像の論理的区分から取り出すことができるか、又はカメラ、データサーバなどの他の媒体ストレージデバイスから外部から受信することができる。
【００２０】
１つの実施形態によれば、ＥＢＣ回路１０８は、複数の画像ブロックからの第１画像ブロックを外部メモリ１１０又は画像センサ１０４から逐次的に受信するよう構成することができる。メディアデバイス１０２は、メディアデバイス１０２の外部メモリ１１０などのメモリの第１ストレージスペースに第１画像ブロックを格納するよう構成することができる。ＥＢＣ回路１０８は、第１画像ブロックに対して逐次符号化方式を実行し符号化第１画像ブロックのビットストリームを生成するよう構成することができる。しかしながら、逐次符号化方式を適用するために、第１画像ブロックへの実際の変換領域符号化動作の前に前処理動作の一部として画素領域における最適符号化モードを決定することができる。最適符号化モードは、従来の技術で実施されるような異なる符号化モードによる符号化第１画像ブロックの再構成なしで決定することができる。画素領域の差分絶対値和（ＳＡＤ）は、ハードウェアの不都合な逆変換動作を必要とする。しかしながら、開示する方法は、各画像ブロックの再構成が必要ないのでハードウェアでの実施が容易である。
【００２１】
１つの実施形態によれば、ＥＢＣ回路１０８は、入力画像フレームを複数の画像ブロックに区分化するよう構成することができる。複数の画像ブロックの各画像ブロックは、複数の画素値を含むことができる。各画像ブロックのサイズは、「８×４画素」又は「１６×４画素」など、予め決められた値に基づくことができる。各画像ブロックにおける各画素は、８ビットの組合せなどのビット深度によって表すことができる。ＥＢＣ回路１０８は、画素領域において入力画像フレームの第１画像ブロックに対して前処理動作を実行するよう構成することができる。この前処理動作は、符号化モードのセットの中の１つの符号化モードを決定するために実行することができ、ここで決定された符号化モードを用いて、要求されたビット深度で第１画像ブロックを符号化することができる。符号化モードのセットは、第１符号化モード及び第２符号化モードを含むことができる。第１符号化モード及び第２符号化モードは、第１逐次符号化方式及び第２逐次符号化方式にそれぞれ対応することができる。第１逐次符号化方式及び第２逐次符号化方式の各逐次符号化方式は、順方向変換動作、量子化動作、残差予測動作、ＤＰＣＭ動作、及びエントロピー符号化動作などの動作シーケンスを含むことができる。ここで、順方向変換の適用は、第１画像ブロックの各行への１次元行離散コサイン変換（１Ｄ行ＤＣＴ）の適用又は第１画像ブロックの各列への１Ｄ列ＤＣＴの適用に対応し、複数の変換係数を生成することができる。
【００２２】
一部の実施形態では、順方向変換のタイプは、正弦ユニタリー変換のファミリー（正規直交ベース又は固有ベクトルのファミリーを含む）に基づくことができる。順方向変換の例は、限定ではないが、タイプＩ−ＶＩＩＩＤＣＴ、タイプＩ−ＶＩＩＩ離散正弦変換（ＤＳＴ）、離散ウェーブレット変換（ＤＷＴ）、及びデュアルツリー複素ウェーブレット変換（ＤＣＷＴ）を含むことができる。同様に、エントロピー符号化方式は、可変長符号化（ＶＬＣ）方式、又はコンテキスト適応可変長符号化（ＣＡＶＬＣ）方式又はコンテキスト適応バイナリアリ算術符号化（ＣＡＢＡＣ）方式の１つとすることができる。ＶＬＣ方式の例は、限定ではないが、Ｌｅｍｐｅｌ−Ｚｉｖ（ランペルジブ）符号化、ハフマン符号化、算術符号化、ｅｘｐ−Ｇｏｌｏｍｂ（指数ゴロム）符号化、Ｇｏｌｏｍｂ符号化、及びプログレッシブＧｏｌｏｍｂ符号化を含むことができる。
【００２３】
前処理動作では、ＥＢＣ回路１０８は、第１画像ブロックに対する残差予測方式の行方向の適用に基づいて第１予測ブロックを生成するよう構成することができる。同様にＥＢＣ回路１０８は更に、第１画像ブロックにおける残差予測方式の列方向の適用に基づいて第２予測ブロックを生成するよう構成することができる。残差予測方式は、差分パルス符号変調（ＤＰＣＭ）方式、適応ＤＰＣＭ方式、又はＰＣＭ方式のうちの少なくとも１つとすることができる。ＥＢＣ回路１０８は更に、第１画像ブロックの異なる残差予測値から画素領域の差分絶対値和（ＳＡＤ）をコンピュータ計算するよう構成することができる。詳細には、ＥＢＣ回路１０８は、画素領域における行方向残差値の第１予測ブロックから第１ＳＡＤと、列方向残差値の第２予測ブロックから第２ＳＡＤとをコンピュータ計算するよう構成することができる。第１ＳＡＤ及び第２ＳＡＤは、行方向及び列方向それぞれが走査された時の第１画像ブロックの画素値における空間変動の尺度を提供することができる。一部の実施形態では、ＳＡＤの代わりに、画像ブロック間の他の類似性尺度、例えば差分二乗和（ＳＳＤ）は、本開示の範囲を限定することなく用いることができる。
【００２４】
ＥＢＣ回路１０８は更に、符号化モードのセットの各符号化モードに対する残差予測方式のパラメータとして、残差予測タイプのセットの中から１つの残差予測タイプを選択するよう構成することができる。例えば、残差予測方式がＤＰＣＭ方式である場合、残差予測タイプは、全周波数ＤＰＣＭ又は直流（ＤＣ）のみＤＰＣＭの何れかとして選択することができる。或いは、第１符号化モード及び第２符号化モードにて第１画像ブロックの周波数成分（ＤＣ及び交流ＡＣ））レベルの全て又はＤＣレベルのみにＤＰＣＭ方式を実行するかどうか決定することができる。
【００２５】
ＥＢＣ回路１０８は、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて、第１符号化モード及び第２符号化モードの各々に対する最適量子化パラメータとして量子化パラメータのセットを選択するよう構成することができる。前処理動作は、例えば図２、３Ａ及び３Ｂに関して更に詳しく説明している。
【００２６】
第１符号化モード及び第２符号化モードでは、選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて、ＥＢＣ回路１０８は、第１画像ブロックを別々に符号化して符号化第１画像ブロックのビットストリームのセットを生成することができる。ビットストリームのセットからの各ビットストリームは、逐次符号化方式のセットの異なる逐次符号化方式に対応することができる。換言すると、各ビットストリームが異なる圧縮モードに対応することができ、個々の方式及び動作の異なるパラメータを変えることができる。例えば、第１符号化モードは、第１逐次符号化方式に対応することができ、１Ｄ行ＤＣＴ、選択された量子化パラメータによる量子化、残差予測方式（選択された残差予測タイプを持つ）、及びエントロピー符号化方式のシーケンスを含むことができる。第２符号化モードは、第２逐次符号化方式に対応することができ、１Ｄ列ＤＣＴ、選択された量子化パラメータによる量子化、残差予測方式（選択された残差予測タイプを持つ）、及びエントロピー符号化方式のシーケンスを含むことができる。
【００２７】
ＥＢＣ回路１０８は、ビットストリームの各々に関連付けられるビット損失値をコンピュータ計算するよう構成することができる。１つの実施形態によれば、このビット損失値は、ビットストリームのセットの各々に対するビットカバレージ値からコンピュータ計算することができる。このような場合、ビット損失値は、ビットストリームのビットの総数から対応するビットストリームのビットカバレージ値を引いた差とすることができる。ビットカバレージ値は、第１符号化モード又は第２符号化モードにて損失なしで符号化された第１画像ブロックの全サンプルのビットの数を表すことができる。同様に、ビット損失値は、損失のある方式で符号化された第１画像ブロックのサンプルのセットに対応するビットストリームのビットの数を表すことができる。従って、ビットカバレージ値とビット損失値の両方は、第１符号化モード及び第２符号化モードから最適符号化モードを決定するために用いられる符号化品質の尺度を表すことができる。ＥＢＣ回路１０８は、ビットストリームのセットの他のビットストリームと比較してビットストリームのセットから最小ビット損失値を有するビットストリームを識別するよう構成することができる。換言すると、ビットストリームのセットから識別されたビットストリームは、損失のある方式で符号化されたサンプルの最小数（第１画像ブロックに対応する）を有するビットストリームである。識別されたビットストリームは、第１符号化モード又は第２符号化モードの１つから選択された好ましい符号化モードに対応することができる。従って、ＥＢＣ回路１０８は、ビットストリームのセットの各々に関連付けられるビット損失値のコンピュータ計算に基づいて、最適符号化モードとして第１符号化モード又は第２符号化モードの１つを選択するよう構成することができる。
【００２８】
従来の符号化回路は、異なる逐次符号化方式に基づいて符号化された第１画像ブロックの異なるビットストリームから画像ブロックのセットを完全に再構成する必要がある。従って、完全に再構成するために、従来の符号化回路は、異なるビットストリームの全セットを復号して画像ブロックの完全に再構成された第１セットの各々と第１画像ブロックを比較する必要がある。これは、最小圧縮アーティファクト、最大圧縮係数、及び符号化第１画像ブロックに対する全体的なビット深度の低減を起こすことができる最適符号化モードとして符号化モードを識別するために行われる。画像ブロックの第１セットのフル再構成が、コンピュータ計算時間（符号化／復号時間を含む）を増加させることがあるコンピューティング資源に集中する処理になることがあり、処理に多くのメモリを必要とする。対照的に、ＥＢＣ回路１０８は、複数の圧縮ビットストリームの各々に関連付けられるビット損失値のコンピュータ計算に基づいて最適符号化モードを識別することができる。最適符号化モードは、第１画像ブロックの異なるビットストリームから異なる画像ブロックを完全に再構成する必要なく選択することができる。画素領域の絶対差の和（ＳＡＤ）は、一般的にハードウェアの不便な逆変換動作を必要とする。しかしながら、本開示のＥＢＣ回路１０８は、ブロックの完全再構成が前処理段階のために必要ないのでハードウェアで実施するのが容易である。
【００２９】
ＥＢＣ回路１０８は、最適符号化モードに対応する最適逐次符号化方式の適用により第１画像ブロックを符号化し符号化第１画像ブロックのビットストリームを生成するよう構成することができる。メディアデバイス１０２は、第１画像ブロックを格納するのに必要なスペースより小さなストレージスペースに圧縮第１画像ブロックのストリームとしてビットストリームを格納するよう構成することができる。
【００３０】
１つの実施形態によれば、ＥＢＣ回路１０８のＥＢＣ復号器回路（図１には図示せず）は、異なる符号化テーブル、例えば、エントロピー符号化方式のための符号化テーブル及び量子化テーブルを事前に格納するよう構成することができる。従って、符号化第１画像ブロックのビットストリームが様々な符号化テーブル及び量子化テーブルを含む必要はない。１つの実施形態によれば、ＥＢＣ回路１０８は、符号化第１画像ブロックのビットストリームを復号するために異なる復号方式を利用できる外部復号器によってビットストリームを復号できるように符号化画像ブロックのビットストリームを生成するよう構成することができる。このような場合、ＥＢＣ回路１０８は、符号化第１画像ブロックのビットストリームに関連付けられるヘッダ情報又は異なるメタストリームに、異なる符号化テーブル（例えば、エントロピー符号化方式の符号化テーブル）及び量子化テーブルを追加するよう構成することができる。ビットストリームへのこのようなカスタムテーブル及び量子化テーブルの追加によって、ＥＢＣ回路１０８の出力を他の復号器回路によって復号できるようにする。
【００３１】
１つの実施形態によれば、符号化第１画像ブロックのビットストリームは、外部メモリ１１０又はＥＢＣ回路１０８のオンチップメモリなどのメモリに入力画像の一部（２Ｄ画像）として格納することができる。符号化第１画像ブロックのビットストリームは、異なる応用における複数の実施を有することができる。１つの例示的実施では、符号化第１画像ブロックのビットストリームをシステムバス１１２を介して、メディアデバイス１０２のシステムバス１１２に通信可能に結合された（又は接続された）ディスプレイ回路（例えば、ビデオカード）のフレームバッファ（又はフレームストア）に転送するようプロセッサ１０６を構成することができる。このフレームバッファは、ディスプレイ回路の圧縮フレームバッファとして動作することができる。メディアデバイス１０２（又は復号回路（図１には図示せず）が符号化第１画像ブロックのビットストリームを復号して用い、メディアデバイス１０２のディスプレイ画面に画像のパッチを表示することができる。別の例示的実施では、符号化第１画像ブロックのビットストリームをシステムバス１１２を介して、メディアデバイス１０２のビデオ復号器の復号器ピクチャバッファ（ＤＰＢ）、画像復号器のためのバッファメモリ、又はビデオコーデックの符号化ピクチャバッファ（ＣＰＢ）に転送するようプロセッサ１０６を構成することができる。
【００３２】
例示的実施では、メディアデバイス１０２は、デジタルビデオカメラ又はデジタル画像カメラなどのカメラとすることができ、符号化第１画像ブロックのビットストリームは、カメラのＣＭＯＳセンサから直接受信される画素値の２Ｄアレイに対応することができる。特定のシナリオでは、ＥＢＣ回路１０８をＣＭＯＳセンサ回路に実施することができる。ＥＢＣ回路１０８の詳細な説明は、例えば図２、３Ａ及び３Ｂに詳しく説明している。
【００３３】
図２は、本開示の一実施形態による画像ブロックでの画素領域前処理動作に基づく画像ブロック符号化のための様々な周辺構成要素を備えた図１のＥＢＣ回路を示すブロック図である。図２は、図１からの要素に関して記述されている。図２を参照すると、ＥＢＣ回路１０８のブロック図２００が示されている。ＥＢＣ回路１０８は、入力／出力（Ｉ／Ｏ）インタフェース２０２、オンチップメモリ２０４、符号器回路２０６、及び復号器回路２０８を含むことができる。ブロック図２００には、システムバス１１２を介して通信可能にＥＢＣ回路１０８に結合された画像センサ１０４、プロセッサ１０６、及び外部メモリ１１０が示されている。一部の実施形態では、プロセッサ１０６及び外部メモリ１１０を本開示の範囲から逸脱することなくＥＢＣ回路１０８の内側に実施することができる。
【００３４】
Ｉ／Ｏインタフェース２０２は、システムバス１１２を介して、他の周辺回路、例えば、外部メモリ１１０、プロセッサ１０６、又は画像センサ１０４からの通信データの交換を容易にするために複数のＩ／Ｏポートを管理するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。通信データは、符号化画像ブロックのビットストリーム、制御信号、ＣＰＵ命令などを含むことができる。Ｉ／Ｏポートの構成は、ＥＢＣ回路１０８の仕様、例えばＡＳＩＣ、ＦＰＧＡ、又はＳｏＣチップの物理的Ｉ／Ｏピンに依存することができる。
【００３５】
オンチップメモリ２０４は、ＥＢＣ回路１０８の異なる構成要素によって利用できる異なる動作データ（例えば、変換領域データ、残差レベル、量子化レベル、エントロピー符号化ビットなど）を格納し、入力画像フレームの複数の画像ブロックを符号化するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。格納するようオンチップメモリ２０４を構成できる動作データの例は、限定ではないが、符号化第１画像ブロックのビットストリーム、変換領域データ、量子化変換レベル、量子化変換残差レベル、及び１Ｄ／２Ｄ画像ブロックを含むことができる。オンチップメモリ２０４は、Ｒ／Ｗ速度、メモリサイズ、製造因子などの定義されるメモリ仕様によって設計される特定のメモリとして実施することができる。オンチップメモリ２０４の例は、限定ではないが、静的ランダムアクセスメモリ（ＳＲＡＭ）、動的アクセスメモリ（ＤＲＡＭ）、及び静的動的ＲＡＭ（ＳＤ−ＲＡＭ）を含むことができる。
【００３６】
符号器回路２０６は、オンチップメモリ２０４又は外部メモリ１１０などのメモリに格納された最適逐次符号化方式の適用により符号化第１画像ブロックのビットストリームを生成するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。最適逐次符号化方式は、第１画像ブロックでの画素領域前処理動作に基づいて選択することができる最適符号化モードに対応することができる。符号器回路２０６は、符号化動作で第１画像ブロックの量子化変換残差レベルのブロックを符号化するために用いることができるビットの数（すなわち、１つのサンプル当たりのビットのビット深度（ｂｐｓ））を低減するよう最適化することができる。好ましい値へのビット深度の低減は、第１画像ブロックに対するコンパクション効率及び／又は圧縮係数の向上を起こすことができる。一部の実施形態では、符号器回路２０６は、ＡＳＩＣ、プログラマブル論理デバイス（ＰＬＤ）、ＳＯＣ、ＦＰＧＡ、デジタル信号プロセッサ（ＤＳＰ）又は他の専用回路の１つに基づいて実施することができるハードウェア符号器チップとすることができる。他の実施形態では、符号器回路２０６は、ハードウェアとオンチップメモリ２０４内の格納された命令のセット（例えば、超高速集積回路（ＶＨＳＩＣ）ハードウェア記述言語（ＶＨＤＬ）又はＨＤＬ論理に基づく命令）の組合せとして実施することができる。
【００３７】
復号器回路２０８は、ビットストリーム内のヘッダ情報に基づいて符号化第１画像ブロックのビットストリームを復号するよう構成することができる適当な論理、回路、及びインタフェースを含むことができる。復号動作で、ビットストリームを復号器回路２０８によって処理しビットストリームから第１画像ブロックを再構成することができる。復号第１画像ブロックは、再構成された第１画像ブロックの向上した視覚品質から明らかになる大幅に低減された圧縮アーティファクトを提示することができる。復号器回路２０８は、復号器回路２０８に対する基準として動作することができる量子化テーブル及び符号化テーブルを事前に格納して、符号化第１画像ブロックのビットストリームを復号することができる。一部の実施形態では、復号器回路２０８は、ＡＳＩＣ、プログラマブル論理デバイス（ＰＬＤ）、ＳＯＣ、ＦＰＧＡ、デジタル信号プロセッサ（ＤＳＰ）又は他の専用回路の１つに基づいて実施することができるハードウェア符号器チップとすることができる。他の実施形態では、復号器回路２０８は、ハードウェアとオンチップメモリ２０４内の格納された命令のセット（例えば、ＶＨＤＬ又はＨＤＬ論理に基づく命令）の組合せとして実施することができる。
【００３８】
動作中、プロセッサ１０６は、外部メモリ１１０（又はオンチップメモリ２０４）に格納された入力画像フレームを複数の画像ブロックに区分するよう構成することができる。複数の画像ブロックの中から、第１画像ブロックを符号器回路２０６によって外部メモリ１１０（又はオンチップメモリ２０４）から取り出すことができる。場合によっては、第１画像ブロックの取り出しは、複数の画像ブロックからの第１画像ブロックの選択に基づくことができる。符号器回路２０６は、最適符号化モードの選択の前に画素領域における入力画像フレームの第１画像ブロックに対して前処理動作を実行するよう構成することができる。一定の実施形態では、第１画像ブロックがＹＣｂＣｒカラースペースで表され、第１画像ブロックは、ルーマブロック（すなわちクローマ成分）、クローマ−Ｕ（すなわち、クロミナンス青差成分）、及びクローマ−Ｖブロック（すなわち、クロミナンス赤差成分）によって表される。このような場合、符号器回路２０６は、画素領域のルーマブロック、クローマ−Ｕブロック、クローマ−Ｖブロックで別々に前処理動作を実行するよう構成することができる。前処理動作は、最適量子化パラメータ（適応量子化方式の一部として）及び最適残差予測タイプ（例えば、全周波数ＤＰＣＭ又はＤＣのみのＤＰＣＭ）の選択を結果として生じることができる。最適残差予測タイプは、符号化画像ブロックのビットストリームの最小ビット損失値を生じることができる残差予測方式のパラメータに対応することができ、このようなビットストリームからの復号画像ブロックは、視覚的にロスレスになり、圧縮アーティファクトの影響が最も小さい。
【００３９】
前処理動作後に、符号器回路２０６は、第１逐次符号化方式及び第２逐次符号化方式それぞれに対応することができる第１符号化モード及び第２符号化モードを通して第１画像ブロックに符号化動作を実行するよう構成することができる。第１符号化モード及び第２符号化モードは、順方向変換、量子化、残差予測の逐次適用、及び続く第１画像ブロックへのエントロピー符号化方式の適用を含むことができる。エントロピー符号化方式は、可変長符号化（ＶＬＣ）方式、又はコンテキスト適応可変長符号化（ＣＡＶＬＣ）方式又はコンテキスト適応バイナリ算術符号化（ＣＡＢＡＣ）方式の１つとすることができる。ＶＬＣ方式の例は、限定ではないが、ランペルジブ符号化、ハフマン符号化、算術符号化、指数ゴロム符号化、ゴロム符号化、及びプログレッシブゴロム符号化を含むことができる。
【００４０】
順方向変換のタイプ、量子化パラメータ、及び残差予測タイプは、第１符号化モードと第２符号化モードの間で変えることができる。符号器回路２０６は、第１符号化モード及び第２符号化モードによって生成されるビットストリームからのビット損失値に基づいて、第１符号化モードと第２符号化モードの１つから最適符号化モードを選択するよう構成することができる。前処理動作は本明細書に詳しく説明している。
【００４１】
前処理動作では、符号器回路２０６は、第１画像ブロックへの残差予測方式の行方向の適用に基づいて第１予測ブロックを生成するよう構成することができる。符号器回路２０６は、第１画像ブロックにおける残差予測方式の列方向の適用に基づいて第２予測ブロックを生成するよう構成することができる。残差予測方式は、差分パルス符号変調（ＤＰＣＭ）方式、適応ＤＰＣＭ方式、又はＰＣＭ方式のうちの少なくとも１つとすることができる。
【００４２】
例示的実施形態では、第１予測ブロックが残差画素値の水平ＤＰＣＭブロックに対応することができ、第２予測ブロックが残差画素値の垂直ＤＰＣＭブロックに対応することができる。第１予測ブロックは、第１画像ブロックの画素の各行の連続画素値の各ペアの間の差に基づいて生成することができる。同様に、第２予測ブロックは、第１画像ブロックの画素の各列の連続画素値の各ペア間の差に基づいて生成することができる。
【００４３】
符号器回路２０６は、画像ブロックの対応する画素値に基づいて、第１予測ブロックと第２予測ブロックの特定の残差値を設定するよう構成することができる。例えば、全ての青画素のＤＰＣＭ残差値は、水平予測ブロック及び垂直予測ブロックで「０」に設定することができる。符号器回路２０６は、画素領域での行方向残差値の第１予測ブロックから第１ＳＡＤ及び列方向残差値の第２予測ブロックから第２ＳＡＤをコンピュータ計算するよう構成することができる。第１予測ブロック及び第２予測ブロックは第１画像ブロックに対応することができる。第１ＳＡＤ及び第２ＳＡＤは、第１予測ブロック及び第２予測ブロックの差の絶対和（すなわち画素領域の残差値）を表すことができる。第１ＳＡＤ及び第２ＳＡＤは、異なる走査方向（又は走査順序）、例えば左から右の行方向水平走査又は上から下の列方向垂直走査に沿った強力な端の項の入力画像ブロックの空間複雑性の尺度を示すことができる。
【００４４】
符号器回路２０６は更に、第１画像ブロックでの第１符号化モード及び第２符号化モードにて適用することができる残差予測方式の最適パラメータを決定するよう構成することができる。最適パラメータは、残差予測方式に基づいて処理することができる量子化変換レベルの一部を指定することができる残差予測タイプパラメータを含むことができる。符号器回路２０６は、第１符号化モード及び第２符号化モードの各々の最適残差予測タイプとして、残差予測タイプのセットから残差予測タイプを選択するよう構成することができる。残差予測タイプのセットは、限定ではないが、ＤＣのみのＤＰＣＭタイプ及び全周波数ＤＰＣＭタイプを含むことができる。最適残差予測タイプは、符号化画像ブロックのビットストリームの最小ビット損失値を結果として生じることができる残差予測方式のパラメータに対応することができ、このようなビットストリームからの復号画像ブロックは視覚的にロスがなく、圧縮アーティファクトの影響が最も小さい。残差予測タイプの選択は、第１符号化モード及び第２符号化モードそれぞれに指示された第１タイプの順方向変換及び第２タイプの順方向変換などの順方向変換のタイプに依存することができる。従って、残差予測タイプの選択は、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づくことができる。
【００４５】
例示的実施形態では、第１タイプの順方向変換は、第１符号化モードの１Ｄ列ＤＣＴとすることができる。符号器回路２０６は、第１符号化モードに対して、コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤより大きいか又は等しいかどうかをチェックするよう構成することができる。コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤより大きいか又は等しい時に、残差予測タイプを全周波数ＤＰＣＭタイプとすることができる。そうでなければ、コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤより小さい時に、残差予測タイプをＤＣのみのＤＰＣＭタイプにすることができる。
【００４６】
ＤＣのみのＤＰＣＭタイプでは、符号器回路２０６は、第１画像ブロックに対してＤＣ量子化変換レベルのみにＤＰＣＭ方式を適用するよう構成することができる。残りのＡＣ量子化変換残差レベルは、ＤＰＣＭ方式の適用後に影響を受けないまま維持することができる。同様に、全周波数ＤＰＣＭタイプでは、量子化変換残差レベルの全て（ＤＣ及びＡＣレベルを含む）がＤＰＣＭ方式を受けることができる。
【００４７】
例示的実施形態では、第２タイプの順方向変換を、第２符号化モードの１Ｄ行ＤＣＴとすることができる。このような場合、符号器回路２０６は、ルーマブロック及びクローマブロックのペアに対する特定のビット深度に従って、第１画像ブロックのルーマブロック及びクローマブロックのペア（すなわち、クローマＵ及びクローマ−Ｖ成分）に対するオフセットパラメータを決定するよう構成することができる。特定のビット深度は、符号化輝度又はクローマブロックの目標ビット深度とすることができる。オフセットパラメータは、クローマブロック値からのルーマブロック値のオフセットを示すことができる適応オフセット値に対応することができる。オフセットパラメータの値は、ルーマブロック及びクローマブロックのペアに対する目標ビット深度に基づいて決定することができる。オフセットパラメータの値は、目標ビット深度に関係なくクローマブロックのペアに対して「０」によって初期化することができ、オフセットパラメータの値は、ルーマブロックに対して０以外の値にすることができる。
【００４８】
異なる目標ビット深度に対するオフセットパラメータの異なる値の例を、以下の表１に示す。
2020123947.tif 000003
表１  異なるブロックタイプのオフセット値
【００４９】
表１では、オフセットパラメータの値が、目標ビット深度に関わらずクローマブロックのペアに対して「０」である。ルーマブロックの０以外の値は、「４ｂｐｓ」（サンプルごとのビット）のビット深度で「３５」及び「６ｂｐｓ」のビット深度で「７５」である。ここで、オリジナルビット深度は、第１画像ブロックのルーマ成分又はクローマ成分を表すために用いられるビットの数を表す。目標ビット深度は、好ましいビットバジェット内で所望の圧縮率を達成するための同じルーマ成分又はクローマ成分を符号化するために要求されるビットの数を表す。
【００５０】
符号器回路２０６は、コンピュータ計算された第１ＳＡＤが、コンピュータ計算された第２ＳＡＤと決定されたオフセットパラメータの和よりも小さいか又は等しいかどうか、第２符号化モードに対してチェックするよう構成することができる。例示的実施形態では、残差予測タイプは、コンピュータ計算された第１ＳＡＤが、コンピュータ計算された第２ＳＡＤと決定されたオフセットパラメータの和よりも小さいか又は等しい時に全周波数ＤＰＣＭタイプとすることができる。そうでなければ、コンピュータ計算された第１ＳＡＤが、コンピュータ計算された第２ＳＡＤと決定されたオフセットパラメータの和より大きい時に残差予測タイプをＤＣのみのＤＰＣＭタイプとすることができる。
【００５１】
符号器回路２０６は、コンピュータ計算された第１ＳＡＤとコンピュータ計算された第２ＳＡＤの比較に基づいて最小ＳＡＤ値を決定するよう構成することができる。従って、決定された最小ＳＡＤ値が閾値よりも小さいかどうかをチェックすることができる。第１符号化モードと第２符号化モードの各々に対する量子化パラメータのセットの選択は、決定された最小ＳＡＤ値が閾値よりも小さいかどうか決定するチェックに基づくことができる。この閾値は、ブロックタイプ（すなわち、ルーマ（輝度）成分及びクローマ（色度）成分で異なる）及び目標ビット深度に基づいて変えることができる。
【００５２】
量子化パラメータのセットの選択に対する異なるブロックタイプの異なる閾値の例を以下の表２に示す。
2020123947.tif 000004
表２  異なるブロックタイプの閾値
表２には、「４ｂｐｓ」及び「６ｂｐｓ」の目標ビット深度及びルーマ（輝度）のブロックタイプに対する閾値が「５２５」として設定されており、「４ｂｐｓ」及び「６ｂｐｓ」の目標ビット深度及びクローマ（色度）のブロックタイプの閾値が、それぞれ「２５０」及び「３００」として設定されている。
【００５３】
符号器回路２０６は、第１符号化モード及び第２符号化モードの各々に対する最適量子化パラメータとして量子化パラメータのセットを選択するよう構成することができる。第１符号化モード及び第２符号化モードの各々の量子化パラメータのセットを、最小ＳＡＤ値と閾値の比較に基づいて選択することができる。量子化パラメータの特定の値を、第１符号化モード及び第２符号化モードに対して、ＤＣＴタイプ、ブロックタイプ、及び目標ビット深度から決定することができる。異なる目標ビット深度及び異なるブロックタイプに対する量子化パラメータの異なるセットの例を以下の表３に示す。
2020123947.tif 000005
表３  異なる目標ビット深度及び異なるブロックタイプに対する量子化パラメータの異なるセット
【００５４】
表３から、第１符号化モード及び第２符号化モードに対する量子化パラメータのセットは、表３の４つの与えられた量子化パラメータ（ＱＮ0、ＱＮ1、ＱＮ2、及びＱＮ3）の中の３つの異なる量子化パラメータの異なる組合せを含むことができる。例えば、第１符号化モード及び第２符号化モードの最小ＳＡＤが閾値よりも小さい時、量子化パラメータのセットは、例にある（ａ）ＱＮ0、ＱＮ1、及びＱＮ2の組合せ、又は（ｂ）ＱＮ1、ＱＮ2、及びＱＮ3の組合せの何れかから選択することができる。量子化パラメータの特定の値は、表３に示されるように、第１符号化モード及び第２符号化モードに対して、ＤＣＰタイプ、ブロックタイプ、及び目標ビット深度から決定することができる。
【００５５】
第１ＳＡＤ及び第２ＳＡＤのコンピュータ計算及び残差予測タイプ及び量子化パラメータのセットの選択は、画素領域の第１画像ブロックに関連付けられる前処理動作に対応する。この前処理動作は、符号化動作の前に実行され、異なる逐次符号化方式が、変換領域における第１画像ブロックに適用される。ここで第１画像ブロックでの異なる符号化モードを介した異なる逐次符号化方式の適用を説明する。
【００５６】
前処理動作後に、一部の実施形態では、符号器回路２０６は、第１符号化モードにて、第１画像ブロックに対して第１逐次符号化方式を適用して、符号化第１画像ブロックのビットストリームのセットから第１ビットストリームを生成するよう構成することができる。第１ビットストリームは、第１符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成することができる。第１逐次符号化方式は、第１タイプの順方向変換（例えば、１Ｄ行ＤＣＴ）、量子化、残差予測（例えば、ＤＰＣＭ方式）、及びエントロピー符号化方式の逐次適用を含むことができる。符号器回路２０６は、第２符号化モードにて第１画像ブロックに第２逐次符号化方式を適用して、符号化第１画像ブロックのビットストリームのセットの第２ビットストリームを生成するよう構成することができる。第２ビットストリームは、第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成することができる。第２逐次符号化方式は、第２タイプの順方向変換（例えば、１Ｄ列ＤＣＴ）、量子化、残差予測（例えば、ＤＰＣＭ方式）、及びエントロピー符号化方式の逐次適用を含むことができる。
【００５７】
第１符号化モード及び第２符号化モードから最良符号化モードを選択するために、符号器回路２０６は、符号化第１画像ブロックのビットストリームのセットからビット損失値の第１セット及びビット損失値の第２セットをコンピュータ計算するよう構成することができる。ビット損失値の第１セット及びビット損失値の第２セットは、第１符号化モード及び第２符号化モードそれぞれに対してコンピュータ計算することができる。１つの実施形態によれば、ビット損失値は、ビットストリームのセットの各々のビットカバレージ値からコンピュータ計算することができる。このような場合、ビット損失値は、ビットストリームのビットの総数から対応するビットストリームのビットカバレージ値を引いた差とすることができる。ビットカバレージ値は、第１符号化モード又は第２符号化モードにて損失なしで符号化された第１画像ブロックの全サンプルのビットの数を表すことができる。同様に、ビット損失値は、損失のある方式で符号化された第１画像ブロックのサンプルのセットに対応するビットストリームのビットの数を表すことができる。従って、ビットカバレージ値とビット損失値の両方は、第１符号化モード及び第２符号化モードから最適符号化モードを決定するために用いられる符号化品質の尺度を表すことができる。
【００５８】
１つの実施形態によれば、符号器回路２０６は、符号化第１画像ブロックのビットストリームのセットからビット損失値の第１セット及びビット損失値の第２セットをスケールするよう構成することができる。このスケーリングは、第１符号化モードのビット損失値と第２符号化モードに対するビット損失値の間の比較を標準化スケールで行うことができるように実行することができる。詳細には、第１画像ブロックの入力ビット深度が第１符号化モード及び第２符号化モードで同じである時でも、符号化第１画像ブロックの動作ビット深度（エントロピー符号化段階後）は、第１符号化モード及び第２符号化モードに対して異なるものにできる（か又はそうでなくてもよい）。例えば、「８」ビットパーサンプル（ｂｐｓ）の入力ビット深度では、第１符号化モード及び第２符号化モードを介した符号化第１画像ブロックの動作ビット深度を、それぞれ「６ｂｐｓ」及び「４ｂｐｓ」とすることができる。従って、第１符号化モード及び第２符号化モードを介した符号化第１画像ブロックのあらゆるサンプルを、「６ビット」及び「４ビット」によってそれぞれ表すことができる。公平な比較に対して、符号器回路２０６は、符号化第１画像ブロックのビットストリームのセットからビット損失値の第１セット及びビット損失値の第２セットをスケールするよう構成することができる。
【００５９】
従って、第１符号化モード又は第２符号化モードの１つを、第１画像ブロックの最良符号化モードとして符号器回路２０６によって選択することができる。最良符号化モードは、画像ブロックを最小ビット損失値で符号化できる符号化モードに対応することができ、符号化画像ブロックからの画像ブロックの再構成／復号は、視覚的に損失のない画像ブロックの生成をもたらすことができる。この選択は、コンピュータ計算されたビット損失値の第１セット及びコンピュータ計算されたビット損失値の第２セットに基づいて行うことができる。換言すると、合計ビット損失値が最小である符号化モードが、最良符号化モードとして選択される。符号器回路２０６は、最良符号化モードを介して、第１画像ブロックに最適逐次符号化方式を適用し符号化画像ブロックのビットストリームを生成するよう構成することができる。図１及び２に示すＥＢＣ回路１０８によって実行される機能及び／又は動作は、例えば図３Ａ及び３Ｂに詳しく説明している。
【００６０】
図３Ａ及び３Ｂは、本開示の一実施形態による画像ブロックに対する画素領域前処理動作に基づく図２のＥＢＣ回路による画像ブロック符号化の例示的シナリオを示す。図３Ａ及び３Ｂは、図１及び図２からの要素に関して記述している。
【００６１】
３０４で、前処理動作を、画素領域の入力画像フレーム３０２の第１画像ブロック３０２Ａに実行することができる。符号器回路２０６は、前処理動作を実行し最適符号化モードとして第１符号化モード及び第２符号化モードから符号化モードを選択して第１画像ブロック３０２Ａを符号化第１画像ブロックのビットストリームに符号化するよう構成することができる。各符号化モードは、順方向変換動作、量子化動作、残差予測動作（例えば、ＤＰＣＭ動作）、及びエントロピー符号化動作を含むことができる。
【００６２】
３０６Ａで、第１画像ブロック３０２Ａの第１変換ブロックを生成することができる。符号器回路２０６は、第１画像ブロック３０２Ａへの第１タイプの順方向変換（１Ｄ行ＤＣＴなど）の適用により第１画像ブロック３０２Ａから第１変換ブロックを生成するよう構成することができる。
【００６３】
３０６Ｂで、第１画像ブロック３０２Ａの第２変換ブロックを生成することができる。符号器回路２０６は、第１画像ブロック３０２Ａにおける第２タイプの順方向変換（１Ｄ列ＤＣＴなど）の適用により第１画像ブロック３０２Ａから第２変換ブロックを生成するよう構成することができる。
【００６４】
３０８で、第１変換ブロック及び第２変換ブロックを量子化することができる。符号器回路２０６は、第１変換ブロック及び第２変換ブロックを量子化して量子化変換レベルの第１ブロック及び量子化変換レベルの第２ブロックを生成するよう構成することができる。量子化は、第１符号化モード及び第２符号化モードに対して決定された量子化パラメータのセットの各々に基づいて行うことができる。３０６Ａの行ＤＣＴ変換の適用後に取得された変換ブロックに３０８Ａ、３０８Ｂ、及び３０８Ｃの量子化動作を実行することができる。符号器回路２０６は、第２変換ブロックを量子化して第２タイプの順方向変換に対して決定された量子化パラメータの第２セットの各々に基づいて量子化変換ブロックの第２セットを生成するよう構成することができる。３０８Ａの列ＤＣＴ変換の適用後に取得された変換ブロックに３０８Ｄ、３０８Ｅ、及び３０８Ｆの量子化動作を実行することができる。
【００６５】
３１０で、量子化変換レベルの第１ブロック及び量子化変換レベルの第２ブロックを、量子化変換残差レベルの第１ブロック及び量子化変換残差レベルの第２ブロックに変換することができる。この変換は、量子化変換レベルの第１ブロック及び量子化変換レベルの第２ブロックへの最適ＤＰＣＭ方式の適用によって起こすことができる。符号器回路２０６は、量子化変換レベルの第１ブロック及び量子化変換レベルの第２ブロックに最適ＤＰＣＭ方式を適用して量子化変換レベルの第１ブロック及び量子化変換レベルの第２ブロックを生成するよう構成することができる。ＤＰＣＭ動作の適用は、３１０Ａ、３１０Ｂ、及び３１０Ｃで量子化変換レベルの第１ブロックに、３１０Ｄ、３１０Ｅ、及び３１０Ｆで量子化変換レベルの第２ブロックに実行することができる。
【００６６】
３１２で、第１画像ブロック３０２ＡへのＰＣＭ方式に適用に基づいて複数の画素領域残差値をコンピュータ計算することができる。符号器回路２０６は、第１画像ブロック３０２ＡへのＰＣＭ方式に適用に基づいて複数の画素領域残差値をコンピュータ計算するよう構成することができる。
【００６７】
３１４で、量子化変換残差レベルの第１ブロック及び量子化変換残差レベルの第２ブロックをエントロピー符号化することができる。符号器回路２０６は、量子化変換残差レベルの第１ブロック及び量子化変換残差レベルの第２ブロックをエントロピー符号化して符号化第１画像ブロックのビットストリームのセットを生成するよう構成することができる。
【００６８】
３１４Ａ、３１４Ｂ、及び３１４Ｃでの量子化変換残差レベルの第１ブロックへのエントロピー符号化方式の適用に基づいて第１ビットストリームを生成することができる。同様に、第２ビットストリームは、３１４Ｄ、３１４Ｅ、及び３１４Ｆでの量子化変化残差レベルの第２ブロックへのエントロピー符号化方式の適用に基づいて第２ビットストリームを生成することができる。エントロピー符号化方式は、可変長符号化（ＶＬＣ）方式、又はコンテキスト適応可変長符号化（ＣＡＶＬＣ）方式又はコンテキスト適応バイナリ算術符号化（ＣＡＢＡＣ）方式の１つとすることができる。ＶＬＣ方式の例は、限定ではないが、ランペルジブ符号化、ハフマン符号化、算術符号化、指数ゴロム符号化、ゴロム符号化、及びプログレッシブゴロム符号化を含むことができる。
【００６９】
３１６で、ビット損失値の第１セット及びビット損失値の第２セットを、第１ビットストリーム及び第２ビットストリームそれぞれに対してコンピュータ計算することができる。符号器回路２０６は、第１ビットストリーム及び第２ビットストリームそれぞれに対するビット損失値の第１セット及びビット損失値の第２セットをコンピュータ計算するよう構成することができる。
【００７０】
３１８で、最適符号化モードが第１符号化モード及び第２符号化モードから選択される。符号器回路２０６は、図１及び図２に示すように、第１ビットストリーム及び第２ビットストリームの各々のビット損失値のコンピュータ計算に基づいて、第１符号化モード及び第２符号化モードから最適符号化モードを選択するよう構成することができる。最良符号化モードは、画像ブロックを最小ビット損失値によって符号化でき且つ符号化画像ブロックからの画像ブロックの再構成／復号が視覚的に損失のない画像ブロックの生成をもたらすことができる符号化モードに対応することができる。
【００７１】
図４Ａ及び４Ｂは、本開示の一実施形態による画像ブロックに対する画素領域前処理動作に基づく画像ブロック符号化の例示的な動作を示す流れ図を図示している。図４を参照すると、流れ図４００が示されている。流れ図４００は、例えば図１、２、３Ａ及び３Ｂに関して記述されている。ＥＢＣ回路１０８で実施される動作は４０２で開始し４０４に進む。
【００７２】
４０４で、入力画像フレームを、サーバ、外部デバイス、又は画像センサ１０４から受信することができる。ＥＢＣ回路１０８は、サーバ、外部デバイス、又は画像センサ１０４から入力画像フレームを受信するよう構成することができる。例えば、入力画像フレームはビデオの画像フレームとすることができる。一定のシナリオでは、入力画像フレームを、メディアデバイス１０２に関連付けられる画像取り込みデバイスによって取り込まれた画像とすることができる。
【００７３】
４０６で、入力画像フレームを格納することができる。オンチップメモリ２０４又は外部メモリ１１０は、図１に示すように入力画像フレームを格納するよう構成することができる。
【００７４】
４０８で、入力画像フレームを、各々が複数の画素値を含む複数の画像ブロックに区分することができる。ＥＢＣ回路１０８は、図１に示すように入力画像フレームを複数の画像ブロックに区分するよう構成することができる。
【００７５】
４１０で、複数の画像ブロックの第１画像ブロックを格納することができる。オンチップメモリ２０４又は外部メモリ１１０は、複数の画像ブロックの第１画像ブロックを格納するよう構成することができる。
【００７６】
４１２で、第１画像ブロックへの残差予測方式の行方向の適用に基づく前処理動作で第１予測ブロックを生成することができる。符号器回路２０６は、第１画像ブロックへの残差予測方式の行方向の適用に基づいて前処理動作で第１予測ブロックを生成するよう構成することができる。
【００７７】
４１４で、第１画像ブロックへの残差予測方式の列方向の適用に基づく前処理動作で第２予測ブロックを生成することができる。符号器回路２０６は、第１画像ブロックへの残差予測方式の列方向の適用に基づいて前処理動作で第２予測ブロックを生成するよう構成することができる。
【００７８】
４１６で、行方向残差値の第１予測ブロックからの第１ＳＡＤ及び列方向残差値の第２予測ブロックからの第２ＳＡＤを画素領域においてコンピュータ計算することができる。符号器回路２０６は、画素領域での行方向残差値の第１予測ブロックからの第１ＳＡＤ及び列方向残差値の第２予測ブロックからの第２ＳＡＤをコンピュータ計算するよう構成することができる。
【００７９】
４１８で、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて第１符号化モード及び第２符号化モードの各々の最適残差予測タイプとして残差予測タイプのセットから１つの残差予測タイプを選択することができる。符号器回路２０６は、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて第１符号化モード及び第２符号化モードの各々の最適残差予測タイプとして残差予測タイプのセットから１つの残差予測タイプを選択するよう構成することができる。最適残差予測タイプは、符号化画像ブロックのビットストリームの最小ビット損失値を結果として生じ且つこのようなビットストリームからの復号画像ブロックが圧縮アーティファクトの影響が最も小さい視覚的に損失のないものとすることができる残差予測方式のパラメータに対応することができる。
【００８０】
４２０で、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて第１符号化モード及び第２符号化モードの各々に対する最適量子化パラメータとして量子化パラメータのセットを選択することができる。符号器回路２０６は、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて第１符号化モード及び第２符号化モードの各々に対する最適量子化パラメータとして量子化パラメータのセットを選択するよう構成することができる。
【００８１】
４２２で、第１符号化モード及び第２符号化モードの各々の選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて第１符号化モード及び第２符号化モードにて号化第１画像ブロックのビットストリームのセットを生成することができる。符号器回路２０６は、第１符号化モード及び第２符号化モードの各々の選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて、第１符号化モード及び第２符号化モードにて号化第１画像ブロックのビットストリームのセットを生成するよう構成することができる。
【００８２】
４２４で、第１符号化モードに対するビット損失値の第１セット及び第２符号化モードに対するビット損失値の第２セットを、第１符号化画像ブロックのビットストリームからコンピュータ計算することができる。符号器回路２０６は、第１符号化画像ブロックのビットストリームから第１符号化モードに対するビット損失値の第１セット及び第２符号化モードに対するビット損失値の第２セットをコンピュータ計算するよう構成することができる。
【００８３】
４２６で、コンピュータ計算されたビット損失値の第１セット及びビット損失値の第２セットに基づいて、第１画像ブロックの最良符号化モードとして第１符号化モード又は第２符号化モードの１つを選択することができる。符号器回路２０６は、コンピュータ計算されたビット損失値の第１セット及びビット損失値の第２セットに基づいて、第１画像ブロックの最良符号化モードとして第１符号化モード又は第２符号化モードの１つを選択するよう構成することができる。
【００８４】
４２８で、第１画像ブロックを選択された最適符号化モードの逐次符号化方式の適用によって符号化し符号化第１画像ブロックのビットストリームを取得することができる。符号器回路２０６は、選択された最適符号化モードの逐次符号化方式の適用によって第１画像ブロックを符号化し符号化第１画像ブロックのビットストリームを取得するよう構成することができる。制御は終了に移る。
【００８５】
本開示の様々な実施形態は、デジタル画像データを圧縮する機械及び／又はコンピュータによって実行可能な少なくとも１つのコードセクションを備えた機械コード及び／又はコンピュータプログラムを格納している非一時的コンピュータ可読媒体及び／又は非一時的ストレージ媒体、及び／又は非一時的機械可読媒体及び／又は非一時的ストレージ媒体を提供することができる。少なくとも１つのコードセクションは、入力画像フレームの複数の画像ブロックの第１画像ブロックのストレージを含むステップを機械及び／又はコンピュータに実行させることができる。画素領域での行方向残差値の第１予測ブロックからの第１の絶対差の和（ＳＡＤ）と列方向残差値の第２予測ブロックからの第２ＳＡＤのコンピュータ計算。第１予測ブロック及び第２予測ブロックは第１画像ブロックに対応することができる。第１符号化モード及び第２符号化モードの各々の最適残差予測タイプとして残差予測タイプのセットからの残差予測タイプの選択。コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて残差予測タイプを選択することができる。一部の実施形態では、残差予測タイプのセットは、ＤＣのみのＤＰＣＭタイプ及び全周波数ＤＰＣＭタイプを含むことができる。第１符号化モード及び第２符号化モードの各々に対する最適量子化パラメータとしての量子化パラメータのセットの選択。第１符号化モード及び第２符号化モードの各々の量子化パラメータのセットは、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて選択することができる。第１符号化モード及び第２符号化モードそれぞれにおける符号化第１画像ブロックのビットストリームのセットの生成。ビットストリームのセットは、第１符号化モード及び第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成することができる。
【００８６】
本開示の一定の実施形態を組み込みコーデック（ＥＢＣ）回路に見出すことができる。本開示の様々な実施形態は、メモリ及びメモリに通信可能に結合された符号器回路を含むことができるＥＢＣ回路を提供することができる。このメモリは、入力画像フレームの複数の画像ブロックの第１画像グロックを格納するよう構成することができる。符号器回路は、画素領域における行方向残差値の第１予測ブロックからの第１の絶対差の和（ＳＡＤ）と列方向残差値の第２予測ブロックからの第２ＳＡＤをコンピュータ計算するよう構成することができる。第１予測ブロック及び第２予測ブロックは第１画像ブロックに対応することができる。符号器回路は、第１符号化モード及び第２符号化モードの各々の最適残差予測タイプとして残差予測タイプのセットから残差予測タイプを選択するよう構成することができる。残差予測タイプは、コンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて選択することができる。一部の実施形態では、残差予測タイプのセットは、ＤＣのみのＤＰＣＭタイプ及び全周波数ＤＰＣＭタイプを含むことができる。符号器回路は、第１符号化モード及び第２符号化モードの各々に対する最適量子化パラメータとして量子化パラメータのセットを選択するよう構成することができる。第１符号化モード及び第２符号化モードの各々の量子化パラメータのセットをコンピュータ計算された第１ＳＡＤ及びコンピュータ計算された第２ＳＡＤに基づいて選択することができる。符号器回路は、第１符号化モード及び第２符号化モードそれそれで符号化第１画像ブロックのビットストリームのセットを生成するよう構成することができる。ビットストリームのセットは、第１符号化モード及び第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成することができる。
【００８７】
１つの実施形態によれば、符号器回路は、入力画像フレームを複数の画像ブロックに区分するよう構成することができる。各画像ブロックは、複数の画素値を含むことができる。１つの実施形態によれば、第１ＳＡＤ及び第２ＳＡＤのコンピュータ計算及び残差予測タイプ及び量子化パラメータのセットの選択は、変換領域での第１画像ブロックへの逐次符号化方式の適用前の画素領域での第１画像ブロックに関連付けられる前処理動作に対応する。
【００８８】
１つの実施形態によれば、符号器回路は、前処理動作で、第１画像ブロックへの残差予測方式の行方向の適用に基づいて第１予測ブロックを生成するよう構成することができる。符号器回路は、第１画像ブロックへの残差予測方式の列方向の適用に基づいて第２予測ブロックを前処理動作で生成するよう構成することができる。残差予測方式は、差分パルスコード変調（ＤＰＣＭ）方式、適応ＤＰＣＭ方式、又はＰＣＭ方式のうちの少なくとも１つとすることができる。１つの実施形態によれば、第１予測ブロックは、残差画素値の水平ＤＰＣＭブロックに対応することができ、第２予測ブロックは、残差画素値の垂直ＤＰＣＭブロックに対応することができる。
【００８９】
１つの実施形態によれば、符号器回路は、コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤより大きいか又は等しいかどうか、第１符号化モードにてチェックするよう構成することができる。コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤより大きいか又は等しい時に残差予測タイプは全周波数ＤＰＣＭタイプとすることができる。コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤより小さい時に残差予測タイプはＤＣのみのＤＰＣＭタイプとすることができる。
【００９０】
１つの実施形態によれば、第１画像ブロックを、ＹＣｂＣｒカラースペースにおける少なくとも１つのルーマブロック及びクローマブロックのペアとして表すことができる。符号器回路は、ルーマブロック及びクローマブロックのペアに対する特定のビット深度に従ってルーマブロック及びクローマブロックのペアに対してオフセットパラメータを決定するよう構成することができる。符号器回路は、コンピュータ計算された第１ＳＡＤがコンピュータ計算された第２ＳＡＤと決定されたオフセットパラメータの和よりも小さいか又は等しいかどうか第２符号化モードをチェックするよう構成することができる。残差予測タイプは、コンピュータ計算された第１ＳＡＤが和よりも小さいか又は等しい時に、全周波数ＤＰＣＭタイプとすることができる。そうでなければ、コンピュータ計算された第１ＳＡＤが和より大きい時に残差予測タイプはＤＣのみのＤＰＣＭタイプとすることができる。
【００９１】
１つの実施形態によれば、本符号器回路は、コンピュータ計算された第１ＳＡＤとコンピュータ計算された第２ＳＡＤの比較に基づいて最小ＳＡＤ値を決定するよう構成することができる。従って、決定された最小ＳＡＤ値が閾値よりも小さいかどうかをチェックすることができる。第１符号化モード及び第２符号化モードの各々の量子化パラメータのセットの選択は、このチェックに基づくことができる。
【００９２】
１つの実施形態によれば、本符号器回路は、前処理動作後に第１画像ブロックに対して第１逐次符号化方式を適用して、符号化第１画像ブロックのビットストリームのセットから第１符号化モードにて第１ビットストリームを生成するよう構成することができる。第１ビットストリームは、第１符号化モードに対して選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成することができる。１つの実施形態によれば、第１逐次符号化方式は、第１タイプの順方向変換、量子化、残差予測、及びエントロピー符号化方式の逐次適用を含むことができる。第１タイプの順方向変換は、１Ｄ行ＤＣＴとすることができる。
【００９３】
１つの実施形態によれば、符号器回路は、前処理動作後に第１画像ブロックに第２逐次符号化方式を適用して、符号化第１画像ブロックのビットストリームのセットから第２符号化モードにて第２ビットストリームを生成するよう構成することができる。第２ビットストリームは、第２符号化モードに対する選択された残差予測タイプ及び選択された量子化パラメータのセットに基づいて生成することができる。第２逐次符号化方式は、第２タイプの順方向変換、量子化、残差予測、及びエントロピー符号化方式の逐次適用を含むことができる。第２タイプの順方向変換は１Ｄ列ＤＣＴとすることができる。
【００９４】
１つの実施形態によれば、本符号器回路は、符号化第１画像ブロックのビットストリームのセットから第１符号化モードに対するビット損失値の第１セット及び第２符号化モードに対するビット損失値の第２セットをコンピュータ計算するよう構成することができる。従って、第１画像ブロックに対する最良符号化モードとして第１符号化モード又は第２符号化モードの１つを符号器回路によって選択することができる。この選択は、コンピュータ計算されたビット損失値の第１セット及びコンピュータ計算されたビット損失値の第２セットに基づいて行うことができる。
【００９５】
本開示は、ハードウェア、又はハードウェアとソフトウェアの組合せで実現することができる。本開示は、集中化方式で、少なくとも１つのコンピュータシステムで、又は分散方式で実現することができ、異なる要素を幾つかの相互接続されたコンピュータシステムに渡って分散させることができる。本明細書で説明した方法を実行するよう適応されたコンピュータシステム又は他の装置を一組にすることができる。ハードウェアとソフトウェアの組合せは、ロード及び実行された時に本明細書で説明する方法を実行するようコンピュータシステムを制御することができるコンピュータプログラムを備えた汎用コンピュータシステムとすることができる。本開示は、他の機能を実行する集積回路の一部を含むハードウェアで実現することができる。
【００９６】
本開示は、本明細書で説明する方法の実施を可能にする特徴の全てを含み、コンピュータシステムにロードされた時にこれらの方法を実行できるコンピュータプログラム製品に組み入れることができる。
【００９７】
本開示を一定の実施形態に関して説明してきたが、本開示の範囲から逸脱することなく様々な変更を行い得ること及び等価物を置き換えられることが当業者によって理解されるであろう。加えて、本開示の教示の範囲から逸脱することなく本開示の教示に特定の状況又は材料を適応させるよう多くの修正を行い得る。従って、本開示は、開示した特定の実施形態に制限されず、本開示は添付の請求項の範囲内に入る全ての実施形態を含むものとする。
【符号の説明】
【００９８】
１０２  メディアデバイス
１０４  画像センサ
１０６  プロセッサ
１０８  組み込みコーデック回路
１１０  外部メモリ
１１２  システムバス
【図１】
2020123947.tif 000006
【図２】
2020123947.tif 000007
【図３Ａ】
2020123947.tif 000008
【図３Ｂ】
2020123947.tif 000009
【図４Ａ】
2020123947.tif 000010
【図４Ｂ】
2020123947.tif 000011
【外国語明細書】
2020123947000001.pdf