(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024131117
(43)【公開日】2024-09-30
(54)【発明の名称】画像処理装置、画像処理方法、エンコーダ、デコーダ、画像処理プログラム、及び画像処理システム
(51)【国際特許分類】
H04N 1/417 20060101AFI20240920BHJP
H04N 19/50 20140101ALI20240920BHJP
【FI】
H04N1/417
H04N19/50
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023041192
(22)【出願日】2023-03-15
(71)【出願人】
【識別番号】398034168
【氏名又は名称】株式会社アクセル
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】小島 悠貴
【テーマコード(参考)】
5C159
5C178
【Fターム(参考)】
5C159LC09
5C159MA04
5C159PP14
5C159RC11
5C159TA33
5C159TB08
5C159TB10
5C159TC42
5C159UA02
5C159UA05
5C178AC10
5C178BC26
5C178BC29
5C178BC66
(57)【要約】
【課題】画像における輝度値についての交流成分の予測精度を向上できるようにする。
【解決手段】所定の画像中の所定の対象ブロックにおける鞍型交流成分の予測値を算出するエンコーダ10において、前記鞍型交流成分は、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分であり、所定の画像の複数のブロックの輝度値を生成する受け付けるDC変換部12と、前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックの前記鞍型交流成分を推定する交流成分予測部14と、を備えるように構成する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
所定の画像中の所定の対象ブロックにおける鞍型交流成分の予測値を算出する画像処理装置であって、
前記鞍型交流成分は、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分であり、
所定の画像の複数のブロックの輝度値を生成する直流成分生成部と、
前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックの前記鞍型交流成分を推定する鞍型交流成分推定部と、
を備える画像処理装置。
【請求項2】
前記鞍型交流成分推定部は、前記第1領域のブロックの輝度と前記第3領域のブロックの輝度との合計と、前記第2領域のブロックの輝度と前記第4領域のブロックの輝度との合計と、の差分に基づいて、前記対象ブロックにおける鞍型交流成分の予測値を算出する
請求項1に記載の画像処理装置。
【請求項3】
対象画像の圧縮データを生成するエンコーダであって、
対象画像の各ブロックを対象ブロックとして、前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分である鞍型交流成分を推定する鞍型交流成分推定部と、
それぞれの前記対象ブロックに対する鞍型交流成分から、推定された前記鞍型交流成分を減算することにより、それぞれの前記対象ブロックにおける前記鞍型交流成分についての予測残差を算出する予測残差算出部と、
前記対象画像中の最上位の対象ブロックの輝度と、それぞれの対象ブロックの鞍型交流成分に対する予測残差とを含むデータを圧縮して圧縮データとして出力する
圧縮データ出力部と、
を備える
エンコーダ。
【請求項4】
対象画像の圧縮データを伸長するデコーダであって、
前記圧縮データを入力する圧縮データ入力部と、
前記圧縮データを復号する復号部と、
復号されたデータに含まれる前記対象画像におけるそれぞれの対象ブロックについて、前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分である鞍型交流成分を推定する鞍型交流成分推定部と、
それぞれの前記対象ブロックの推定された鞍型交流成分と、前記圧縮データにより復元されたそれぞれの前記対象ブロックの前記鞍型交流成分に対する予測残差とに基づいて、それぞれの前記対象ブロックの鞍型交流成分を算出する鞍型交流成分算出部と、
算出された前記鞍型交流成分に基づいて前記対象ブロックに含まれる子ブロックの輝度値を算出する輝度値算出部と、
を備える
デコーダ。
【請求項5】
所定の画像中の所定の対象ブロックにおける鞍型交流成分の予測値を算出する画像処理装置による画像処理方法であって、
所定の画像中の所定の対象ブロックにおける鞍型交流成分の予測値を算出する画像処理装置であって、
前記鞍型交流成分は、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分であり、
所定の画像の複数のブロックの輝度値を生成させ、
前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックの前記鞍型交流成分を推定する
画像処理方法。
【請求項6】
所定の画像中の所定の対象ブロックにおける鞍型交流成分の予測値を算出させる処理をコンピュータに実行させる画像処理プログラムであって、
前記鞍型交流成分は、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分であり、
前記コンピュータに、
所定の画像の複数のブロックの輝度値を生成させ、
前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックの前記鞍型交流成分を推定させる
画像処理プログラム。
【請求項7】
対象画像の圧縮データを生成するエンコーダと、前記対象画像の前記圧縮データを伸長するデコーダとを備える画像処理システムであって、
前記エンコーダは、
対象画像の各ブロックを対象ブロックとして、前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分である鞍型交流成分を推定する鞍型交流成分推定部と、
それぞれの前記対象ブロックに対する鞍型交流成分から、推定された前記鞍型交流成分を減算することにより、それぞれの前記対象ブロックにおける前記鞍型交流成分についての予測残差を算出する予測残差算出部と、
前記対象画像中の最上位の対象ブロックの輝度と、それぞれの対象ブロックの鞍型交流成分に対する予測残差とを含むデータを圧縮して圧縮データとして出力する
圧縮データ出力部と、
を備え、
前記デコーダは、
前記圧縮データを入力する圧縮データ入力部と、
前記圧縮データを復号する復号部と、
復号されたデータに含まれる前記対象画像におけるそれぞれの対象ブロックについて、前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分である鞍型交流成分を推定する鞍型交流成分推定部と、
それぞれの前記対象ブロックの推定された鞍型交流成分と、前記圧縮データにより復元されたそれぞれの前記対象ブロックの前記鞍型交流成分に対する予測残差とに基づいて、それぞれの前記対象ブロックの鞍型交流成分を算出する鞍型交流成分算出部と、
算出された前記鞍型交流成分に基づいて前記対象ブロックに含まれる子ブロックの輝度値を算出する輝度値算出部と、
を備える
画像処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、静止画像や動画像等の画像を処理する技術に関する。
【背景技術】
【0002】
従来、画像データの容量を抑えるために画像圧縮処理が行われている。例えば、画像圧縮処理の要素技術として、交流成分予測が知られている。
【0003】
交流成分予測は、画像平面上に設定されたブロックのうち、対象ブロックおよびその周辺ブロックの直流成分を参照することにより対象ブロック上の交流成分を予測する処理である。交流成分予測により予測された交流成分は、対象ブロック上に存在する子ブロックの生成に用いることができる。これについては、例えば、非特許文献1に記載されている。
【0004】
また、既に求まった子ブロックの情報を対象ブロックの予測に逐次利用することで予測精度を高める方法が非特許文献2に開示されている。
【0005】
また、特許文献1には、水平方向・垂直方向以外の直交する交流成分についても予測することで予測精度を高める技術が開示されている。
【0006】
ここで、2×2ブロックのアダマール変換には、4つの基底が存在する。本明細書では、4つの基底について、それぞれΜ基底(直流の基底)、α基底(水平方向の基底)、β基底(垂直方向の基底)、γ基底(鞍型の基底)と呼び、それぞれの基底による成分を直流成分、α成分、β成分、γ成分と呼ぶ。ここで、α成分、β成分、γ成分は、交流成分である。例えば、γ成分を予測する交流成分予測について特許文献2に開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2011-239191号公報
【特許文献2】特開2013-51609号公報
【非特許文献】
【0008】
【非特許文献1】徳永 隆治、フラクタルと画像処理-差分力学系の基礎と応用、コロナ社、2002
【非特許文献2】星月優佑,田中英智,客野一樹,徳永隆治,“ブロック中心値補正及び直流成分保存型フィルタによる交流成分予測の改良,” 電子情報通信学会論文誌(A), Vol. J-92-A, No.1, pp. 62-66 (2009).
【発明の概要】
【発明が解決しようとする課題】
【0009】
画像圧縮処理においては、画像の圧縮率を向上することが要請されており、いかに画像の輝度値の予測精度を向上させるかが重要である。特に、画像における輝度値についての交流成分(例えば、アダマール変換に使用する各基底の成分)の予測精度を向上させることが必要である。
【0010】
本発明は、上記事情に鑑みなされたものであり、その目的は、画像における輝度値についての交流成分の予測精度を向上する技術を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するため、第1の観点に係る画像処理装置は、所定の画像中の所定の対象ブロックにおける鞍型交流成分の予測値を算出する画像処理装置であって、前記鞍型交流成分は、前記対象ブロックを2×2の子ブロックに分割した場合の前記対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分であり、所定の画像の複数のブロックの輝度値を生成する直流成分生成部と、前記対象ブロックの右斜め上方向の第1領域と、前記対象ブロックの左斜め上方向の第2領域と、前記対象ブロックの左斜め下方向の第3領域と、前記対象ブロックの右斜め下方向の第4領域とのそれぞれの領域における少なくとも一つのブロックの輝度値に基づいて、前記対象ブロックの前記鞍型交流成分を推定する鞍型交流成分推定部と、を備える。
【発明の効果】
【0012】
本発明によれば、画像における輝度値についての交流成分の予測精度を向上することができる。
【図面の簡単な説明】
【0013】
【
図1】
図1は、一実施形態に係る画像処理システムの全体構成図である。
【
図2】
図2は、一実施形態に係るブロック及び子ブロックを説明する図である。
【
図3】
図3は、一実施形態に係るブロックの表記及び領域を説明する図である。
【
図4】
図4は、一実施形態に係る縦長の2分ブロックの表記を説明する図である。
【
図5】
図5は、一実施形態に係る横長の2分ブロックの表記を説明する図である。
【
図6】
図6は、一実施形態に係るエンコード処理のフローチャートである。
【
図7】
図7は、一実施形態に係るデコード処理のフローチャートである。
【
図8】
図8は、一実施形態に係るコンピュータ装置の構成図である。
【発明を実施するための形態】
【0014】
実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0015】
まず、一実施形態に係る画像処理システムについて説明する。
【0016】
図1は、一実施形態に係る画像処理システムの全体構成図である。
【0017】
画像処理システム1は、画像処理装置の一例としてのエンコーダ10と、画像処理装置の一例としてのデコーダ30とを備える。エンコーダ10とデコーダ30とは、ネットワーク50を介して接続されている。ネットワーク50は、例えば、Local Area Netowork(LAN)や、Wide Area Network(WAN)等である。
【0018】
エンコーダ10は、対象画像入力部11と、DC変換部12と、アダマール変換部13と、交流成分予測部14と、予測残差算出部15と、符号化部16と、圧縮データ出力部17と、を有する。ここで、DC変換部12は、直流成分生成部の一例であり、交流成分予測部14は、鞍型交流成分推定部の一例である。
【0019】
対象画像入力部11は、圧縮対象の画像(対象画像)を入力する。対象画像は、例えば、静止画像であってもよく、動画像の1フレームの画像であってもよい。対象画像は、エンコーダ10内の補助記憶装置106(
図8参照)から取得するようにしてもよく、或いは、図示しない撮像装置から取得するようにしてもよい。
【0020】
DC変換部12は、対象画像の各画素の輝度値に基づいて、対象画像中の処理対象とするブロック(対象ブロック)における直流成分(M成分ともいう)を生成する。対象ブロックとしては、例えば、最上位階層(第1階層)のブロックは、16画素×16画素である。第1階層よりも下の階層のブロックについては、第2階層のブロックは、8画素×8画素であり、第3階層のブロックは、4画素×4画素であり、第4階層のブロックは、2画素×2画素である。対象ブロックにおける直流成分は、例えば、対象ブロックに含まれる画素の輝度値の平均値である。また、DC変換部12は、対象ブロックを構成する複数の子ブロックについての各画素の輝度値に基づいて、各子ブロックの直流成分を算出する。
【0021】
ここで、各ブロックと子ブロックとの関係と、本明細書でのブロックと、そのブロックとの表記について説明する。
【0022】
図2は、一実施形態に係るブロック及び子ブロックを説明する図である。
【0023】
ここで、ブロック60は、B[x、y]と表記される。ここで、[x、y]は、ブロックの中心位置を示す。ここで、ブロック60が対象ブロックの場合には、その中心位置が、原点である[0,0]とされ、B[0,0]と表記される。ブロック60は、例えば、2×2の4等分された子ブロックを含む。B[0,0]の子ブロックは、b[-1/4,1/4]、b[-1/4,-1/4]、b[1/4,1/4]、b[1/4,-1/4]と表記される。子ブロックについても、[]内の値は、子ブロックの中心位置(対象ブロックの中心を原点とする座標系での位置)を示す。ここで、ブロックB[]の直流成分(輝度値)は、M[]と表記され、子ブロックb[]の直流成分は、μ[]と表記される。
【0024】
図3は、一実施形態に係るブロックの表記を説明する図である。
【0025】
対象ブロックB[0,0]の周囲のブロックは、
図3に示すように、各ブロックの対象ブロックの中心を原点とした場合の中心位置の座標を使用して、B[x、y]のように表記される。なお、xは、横方向(第2方向)の位置を示し、yは、縦方向(第1方向)の位置を示す。なお、横方向を第2方向とし、縦方向を第1方向としているが、横方向を第1方向とし、縦方向を第2方向としてもよい。例えば、B[0,0]の左隣のブロックは、B[-1,0]であり、右隣のブロックは、B[1,0]であり、真上のブロックは、B[0,1]であり、真下のブロックは、B[0,-1]である。なお、対象ブロックB[0,0]が画像の端である場合等のように、画像に対応するブロックが存在しない場合があるが、この場合には、仮想的なブロックを想定するようにすればよい。また、この場合には、仮想的なブロックの直流成分の値としては、所定の値、例えば、黒に相当する値や、画像の端と同じ値としてもよい。
【0026】
図4は、一実施形態に係る縦長の2分ブロックの表記を説明する図である。
【0027】
ブロックBを横方向(第2方向)について2分した縦長の部分ブロック(2分ブロック:第1方向長2分ブロック)について、BH[x,y]と表記される。ここで、[x、y]は、2分ブロックの中心位置を示す。例えば、B[0,0]を横方向について2分した2分ブロックは、BH[-1/4,0]、BH[1/4,0]と表記され、B[0,1]を横方向について2分した2分ブロックは、BH[-1/4,1]、BH[1/4,1]と表記される。ここで、ブロックBH[]の直流成分(輝度値)は、MH[]と表記される。
【0028】
図5は、一実施形態に係る横長の2分ブロックの表記を説明する図である。
【0029】
ブロックBを縦方向(第1方向)について2分した横長の部分ブロック(2分ブロック:第2方向長2分ブロック)について、BV[x,y]と表記される。ここで、[x、y]は、2分ブロックの中心位置を示す。例えば、B[0,0]を縦方向について2分した2分ブロックは、BV[0,1/4]、BV[0,-1/4]と表記され、B[1,0]を縦方向について2分した2分ブロックは、BV[1,1/4]、BV[1,-1/4]と表記される。ここで、ブロックBV[]の直流成分(輝度値)は、MV[]と表記される。
【0030】
図1の説明に戻り、アダマール変換部13は、対象ブロックの直流成分Mと、横方向の交流成分であるα成分(第2方向交流成分)と、縦方向の交流成分であるβ成分(第1方向交流成分)と、斜め方向の交流成分であるγ成分(鞍型交流成分)とを算出するアダマール変換を行う。なお、直流成分Mは、対象ブロックの直流成分と同一であり、DC変換部12により算出されている。
【0031】
ここで、対象ブロックB[0,0]の直流成分M[0,0]、交流成分α[0,0]、交流成分β[0,0]、交流成分γ[0,0]は、対象ブロックの子ブロックb[-1/4,1/4]、b[-1/4,-1/4]、b[1/4,1/4]、b[1/4,-1/4]の直流成分μ[-1/4,1/4]、μ[-1/4,-1/4]、μ[1/4,1/4]、μ[1/4,-1/4]により、以下の式(1)に示すように表すことができる。なお、γ成分は、対象ブロックを2×2の子ブロックに分割した場合の対象ブロックの中心に対して対向する2つの子ブロックの組同士の輝度の差分ということができる。
【0032】
【0033】
交流成分予測部14は、交流成分予測により対象ブロックB[0,0]についての各交流成分の予測値α~[0,0]、β~[0,0]、γ~[0,0]を算出する。ここで、α~は、記号の直上に「~」を配置した記号と同様のものである。ここで、交流成分予測は、対象ブロックの子ブロックの直流成分μ[-1/4,1/4]、μ[-1/4,-1/4]、μ[1/4,1/4]、μ[1/4,-1/4]の少なくとも一部が未知である場合に、各交流成分を予測する技術である。
【0034】
交流成分予測部14は、対象ブロックB[0,0]についての交流成分の予測値α~[0,0]、β~[0,0]について、複数のブロックの直流成分を用いて、公知の技術により予測する。
【0035】
また、交流成分予測部14は、対象ブロックB[0,0]についてのγ成分の予測値γ~[0,0]を予測する。
【0036】
ここで、交流成分予測部14が、対象ブロックB[0,0]についてのγ成分の予測値γ~[0,0]を予測する方法について説明する。
【0037】
ブロックB[0,y]を、横方向において2分割した縦長の2分ブロックBH[-1/4,y]とBH[1/4,y]との直流成分の予測値であるM~
H[-1/4,y]とM~
H[1/4,y]とは、対象ブロックの横方向の両側に並ぶ、片側n(nは1以上の所定の値)個ずつのブロックの直流成分を用いると、以下の式(2)、式(3)に示すように表すことができる。
【0038】
【0039】
ここで、wα[x]は、縦長の2分ブロックBH[-1/4,y]、BH[1/4,y]の直流成分の予測値に対する、B[0,y]に対して横方向に対称な位置に存在するブロックの組{B[x,y]、B[-x,y]}の輝度値の差(M[x,y]-M[-x,y])についての重みであり、y軸方向においては一定の値である。wα[x]は、n=1とした場合には、例えば、1/8としてもよい。なお、wα[x]は、負の値であってもよい。
【0040】
各子ブロックb[-1/4,1/4]、b[-1/4,-1/4]、b[1/4,1/4]、b[1/4,-1/4]の直流成分の予測値μ~
H[-1/4,1/4]、μ~
H[-1/4,-1/4]、μ~
H[1/4,1/4]、μ~
H[1/4,-1/4]は、2分ブロックBH[-1/4,0]とBH[1/4,0]との直流成分の予測値であるM~
H[-1/4,0]とM~
H[1/4,0]と、2分ブロックBH[-1/4,0]とBH[1/4,0]とのそれぞれについての縦方向の両側に並ぶ、片側m(mは1以上の所定の値)個ずつの2分ブロックの直流成分と、を用いると、以下の式(4)~(7)に示すように表すことができる。
【0041】
【0042】
ここで、wβ[y]は、子ブロックb[-1/4,1/4]、b[-1/4,-1/4]、b[1/4,1/4]、b[1/4,-1/4]の直流成分の予測値に対する、2分ブロックBH[±1/4,0]に対して縦方向に対称な位置に存在する2分ブロックの組(BH[±1/4,y]、BH[±1/4,-y])のそれぞれの輝度値の差(M~
H[±1/4,y]-M~
H[±1/4,-y])についての重みであり、x軸方向においては一定の値である。wβ[y]は、m=1とした場合には、例えば、1/8としてもよい。なお、wβ[y]は、負の値であってもよい。
【0043】
対象ブロックB[0,0]についてのγ成分の予測値であるγ~[0,0]は、各子ブロックの直流成分の予測値μ~
H[-1/4,1/4]、μ~
H[-1/4,-1/4]、μ~
H[1/4,1/4]、μ~
H[1/4,-1/4]を式(1)に代入することにより、以下の式(8)に示すように表すことができる。
【0044】
【0045】
式(8)に、式(4)~(7)を代入すると、γ~[0,0]は、以下の式(9)に示すよう表すことができる。
【0046】
【0047】
式(9)を参照すると、対象ブロックB[0,0]のγ成分の予測値であるγ~[0,0]は、ブロックB[x,y](1≦x≦n,1≦y≦m)の直流成分M[x,y]と、ブロックB[x、-y](1≦x≦n,1≦y≦m)の直流成分M[x,-y]と、ブロックB[-x,y](1≦x≦n,1≦y≦m)の直流成分M[-x,y]と、ブロックB[-x,-y](1≦x≦n,1≦y≦m)の直流成分M[-x,-y]と、に基づいて算出できることが分かる。
【0048】
ここで、
図3に示すように、ブロックB[x,y](1≦x≦n,1≦y≦m)は、対象ブロックB[0,0]の右斜め上方向の領域である第1領域のブロックであり、ブロックB[-x,y](1≦x≦n,1≦y≦m)は、対象ブロックB[0,0]の左斜め上方向の領域である第2領域のブロックであり、ブロックB[-x,-y](1≦x≦n,1≦y≦m)は、対象ブロックB[0,0]の左斜め下方向の領域である第3領域のブロックであり、ブロックB[x,-y](1≦x≦n,1≦y≦m)は、対象ブロックB[0,0]の右斜め下方向の領域である第4領域のブロックである。
【0049】
したがって、対象ブロックB[0,0]のγ成分の予測値であるγ~[0,0]は、第1領域のブロックの輝度値と第3領域のブロックの輝度値との合計値と、第2領域の輝度値と第4領域の輝度値との合計値と、の差に基づいて算出できることが分かる。
【0050】
例えば、n=1,m=1とすると、対象ブロックB[0,0]のγ成分の予測値であるγ~[0,0]は、ブロックB[1,1]の直流成分M[1,1]とブロックB[-1,-1]の直流成分M[-1,-1]との合計値と、ブロックB[-1,1]の直流成分M[-1、1]とブロックB[1,-1]の直流成分M[1,-1]との合計値と、の差に基づいて算出できることが分かる。
【0051】
そこで、本実施形態に係る交流成分予測部14は、対象ブロックB[0,0]についてのγ成分の予測値γ~[0,0]を式(9)により予測する。したがって、対象ブロックBの子ブロックの輝度値を把握できなくても、γ成分の予測値γ~[0,0]を適切に予測することができる。
【0052】
予測残差算出部15は、各階層の各対象ブロックに対する各交流成分についての予測残差eを算出する。本実施形態では、各対象ブロックについてのα成分、β成分、γ成分に対する予測残差eα、eβ、eγは、以下の式(10)、(11)、(12)で算出している。なお、β成分に対する予測残差eβを算出する処理は、α成分に対する予測残差eαを算出する処理における座標系を90度回転させた状態で同様な処理を行うようにすればよい。
予測残差eα[0,0]=α[0,0]-α~[0,0] ・・・(10)
予測残差eβ[0,0]=β[0,0]-β~[0,0] ・・・(11)
予測残差eγ[0,0]=γ[0,0]-γ~[0,0] ・・・(12)
【0053】
符号化部16は、予測残差算出部15により算出された各階層の各ブロックの予測残差eα、eβ、eγに対して、例えば、量子化等の非可逆変換を行い、更に、ハフマン符号化や算術符号化といったエントロピ符号化を施すことにより、対象ブロックに対する圧縮データを生成する。
【0054】
本実施形態では、符号化部16は、各ブロックの予測残差eα、eβ、eγ、直流成分Mに対して、以下の式(13)に示す関数Q(x)を適用することにより、以下の式(14)~式(16)に示す各予測残差を量子化した値(α・[0,0]、β・[0,0]、γ・[0,0])と、式(17)に示す直流成分Mを量子化した値M・[0,0]を得る。
【0055】
【0056】
ここで、qは、圧縮率を調整する量子化パラメータである。
【0057】
α・[0,0]=Q(eα[0,0]) ・・・(14)
β・[0,0]=Q(eβ[0,0]) ・・・(15)
γ・[0,0]=Q(eγ[0,0]) ・・・(16)
M・[0,0]=Q(M[0,0]) ・・・(17)
【0058】
次いで、符号化部16は、各ブロックのα・[0,0]、β・[0,0]、γ・[0,0]をエントロピ符号化により圧縮データを作成する。また、符号化部16は、最上位の各ブロックの直流成分Mを量子化したM・[0,0]について公知の圧縮技術により圧縮データを生成する。
【0059】
圧縮データ出力部17は、符号化部16によって生成された圧縮データをデコーダ30に出力する。ここで、圧縮データには、最上位の各ブロックの直流成分Mと、各階層における各ブロックのα、β、γ成分の予測残差eα、eβ、eγとの量子化後の値について圧縮されたデータが含まれる。
【0060】
デコーダ30は、圧縮データ入力部31と、復号部32と、交流成分予測部33と、交流成分算出部34と、逆アダマール変換部35と、画像表示部36と、を有する。ここで、交流成分予測部33は、鞍型交流成分推定部の一例であり、交流成分算出部34は、鞍型交流成分算出部の一例である。
【0061】
圧縮データ入力部31は、ネットワーク50を介してエンコーダ10から送信される圧縮データを入力する。復号部32は、圧縮データ入力部31が入力した圧縮データに対して、符号化部18による符号化に対応する復号を実行することにより、圧縮データを復号する。次いで、符号化部18は、量子化後の値(α・[0,0]、β・[0,0]、γ・[0,0]、M・[0,0])に対して、逆量子化(Q-1)を行うことにより、eα’[0,0]、eβ’[0,0]、eγ’[0,0]、M’[0,0]を得る。ここで、逆量子化の式は、例えば、Q-1(x)=xqとしてもよい。これにより、最上位の各ブロックの直流成分Mと、各階層における各ブロックのα、β、γ成分の予測残差eα、eβ、eγの再現値を得ることができる。
【0062】
交流成分予測部33は、交流成分予測部14と同様な処理を実行する。
【0063】
交流成分算出部34は、対象ブロックについてのα、β、γ成分を算出する。具体的には、交流成分算出部34は、以下の式(18)、(19)、(20)に従って、α、β、γ成分の再現値α’[0,0],β’[0,0],γ’[0,0]を算出する。
α’[0,0]=eα’[0,0]+α~[0,0] ・・・(18)
β’[0,0]=eβ’[0,0]+β~[0,0] ・・・(19)
γ’[0,0]=eγ’[0,0]+γ~[0,0] ・・・(20)
【0064】
逆アダマール変換部35は、輝度値算出部の一例であり、交流成分算出部34により算出された対象ブロックについてのα成分、β成分、γ成分、及び直流成分Mに基づいて、対象ブロックに含まれる各子ブロックの直流成分を算出する逆アダマール変換を行う。具体的には、逆アダマール変換部35は、α’[0,0],β’[0,0],γ’[0,0],M’[0,0]に対して式(21)を適用することにより、対象ブロックに含まれる各子ブロックの直流成分の再現値μ’[-1/4,-1/4]、μ’[1/4,-1/4]、μ’[-1/4,1/4]、μ’[1/4,1/4]を算出する。
【0065】
【0066】
また、逆アダマール変換部35は、対象ブロックが最下位の対象ブロックである場合には、対象ブロックについてのα成分、β成分、γ成分、及び直流成分Mに基づいて、対象ブロックに含まれる各画素の直流成分を算出する。このようにして、逆アダマール変換部35の処理により、対象画像中の各画素の直流成分が算出される。
【0067】
画像表示部36は、表示装置108(
図8参照)に対して、逆アダマール変換部35により算出された対象画像中の各画素の輝度の直流成分に基づいて画像を表示する。
【0068】
次に、画像処理システム1における処理動作について説明する。
【0069】
まず、エンコーダ10によるエンコード処理について説明する。
【0070】
図6は、一実施形態に係るエンコード処理のフローチャートである。
【0071】
エンコード処理においては、まず、対象画像入力部11が、エンコード対象の画像(対象画像)を入力し、DC変換部12が、対象ブロックの子ブロックの輝度の直流成分を算出する(ステップS11)。なお、ステップS11を最初に実行する時には、最上位の階層のブロックを対象ブロックとして処理を実行する。
【0072】
次いで、アダマール変換部13は、アダマール変換を行って、対象ブロックの輝度の交流成分(α、β、γ成分)と、直流成分Mとを算出する(ステップS12)。
【0073】
次いで、交流成分予測部14は、対象ブロックについての交流成分(α、β、γ成分)の予測値を算出する(ステップS13)。本実施形態では、ステップS13以降の処理は、まずは、対象ブロックのα成分を対象に実行し、その後、β成分を対象に実行し、その後、γ成分を対象に実行する。
【0074】
次いで、予測残差算出部15は、対象ブロックに対する処理対象の交流成分の予測残差e(eα、eβ、又はeγ)を算出する(ステップS14)。具体的には、予測残差算出部15は、上述の式(10)、(11)、(12)に従って、予測残差eを算出する。
【0075】
次いで、符号化部16は、予測残差算出部15により算出された予測残差eに対して、例えば、量子化等の非可逆変換を行い、更に、ハフマン符号化や算術符号化といったエントロピ符号化を施すことにより、対象ブロックの予測残差eに対する圧縮データを生成する(ステップS15)。
【0076】
次いで、DC変換部12は、処理を実行している階層内の全てのブロックに対して処理済みか否かを判定し(ステップS16)、階層内の全てのブロックに対して処理済みでない場合(ステップS16:N)には、処理をステップS11に進めて、次の対象ブロックに対する処理を実行する。ここで、次の対象ブロックは、任意のブロックでよい。一方、階層内の全てのブロックに対して処理済みである場合(ステップS16:Y)には、DC変換部12は、1つ下の階層のブロックがあるか否かを判定する(ステップS17)。
【0077】
この結果、1つ下の階層のブロックがある場合(ステップS17:Y)には、DC変換部12は、処理する階層を下位の階層に変更し(ステップS18)、処理をステップS11に進めて、下位の階層におけるブロックに対する処理を実行する。
【0078】
一方、1つ下の階層のブロックがない場合(ステップS17:N)には、DC変換部12は、処理を終了する。これにより、まずは、α成分についての圧縮データが生成されたこととなる。
【0079】
次に、エンコーダ10は、上記したエンコード処理を、β成分を処理対象として実行することにより、β成分に対する圧縮データを生成する。
【0080】
次に、エンコーダ10は、上記したエンコード処理を、γ成分を処理対象として実行することにより、γ成分に対する圧縮データを生成する。
【0081】
次に、エンコーダ10は、最上位の階層の各ブロックについての直流成分M(最上位階層のブロックの直流成分M)について、圧縮データを生成する処理を実行する。直流成分Mの圧縮データを生成する処理は、公知の技術を用いることができる。
【0082】
この後、圧縮データ出力部20は、α、β、γ成分、及び最上位の階層の各ブロックについての直流成分Mについての圧縮データをまとめて、対象画像の圧縮データに含めて、デコーダ30に出力(送信)する。
【0083】
このエンコード処理では、上記したγ成分予測を行っているので、予測精度を向上することができる。これにより、予測残差の値を小さくすることができ、輝度の予測残差に対する圧縮効率を向上することができる。
【0084】
次に、デコーダ30によるデコード処理について説明する。
【0085】
図7は、一実施形態に係るデコード処理のフローチャートである。
【0086】
圧縮データ入力部31は、ネットワーク50を介してエンコーダ10から送信される圧縮データを入力する(ステップS31)。
【0087】
次いで、復号部32は、圧縮データ入力部31が入力した圧縮データを復号する(ステップS32)。これにより、最上位の各ブロックの直流成分Mと、各階層における各ブロックの交流成分α、β、γの予測残差eα、eβ、eγとを得ることができる。
【0088】
次いで、交流成分予測部33は、エンコーダ10で実行した交流成分予測と同様な処理により対象ブロックについてのα成分の予測値を算出する(ステップS33)。ここで、対象ブロックは、任意のブロックでよい。
【0089】
次いで、交流成分算出部34は、対象ブロックについてのα成分を算出する(ステップS34)。
【0090】
次いで、デコーダ30は、β成分及びγ成分を算出する(ステップS35)。具体的には、β成分については、ステップS33~ステップS34と同様な処理により、算出することができる。また、γ成分については、ステップS33~ステップS34と同様な処理により、算出することができる。
【0091】
次いで、交流成分予測部33は、処理を実行している階層内の全てのブロックに対して処理済みか否かを判定し(ステップS36)、階層内の全てのブロックに対して処理済みでない場合(ステップS36:N)には、処理をステップS33に進めて、次の対象ブロックに対する処理を実行する。一方、階層内の全てのブロックに対して処理済みである場合(ステップS36:Y)には、逆アダマール変換部35は、交流成分算出部34により算出された対象ブロックについてのα成分、β成分、γ成分、及び直流成分Mに基づいて、対象ブロックに含まれる各子ブロックの直流成分を算出する逆アダマール変換を行う(ステップS37)。なお、対象ブロックが最下位の対象ブロックである場合、すなわち、2画素×2画素のブロックである場合には、逆アダマール変換部35は、対象ブロックについてのα成分、β成分、γ成分、及び直流成分Mに基づいて、対象ブロックに含まれる各画素の直流成分を算出する。
【0092】
次いで、交流成分予測部33は、1つ下の階層のブロックがあるか否かを判定する(ステップS38)。この結果、1つ下の階層のブロックがある場合(ステップS38:Y)には、交流成分予測部33は、処理する階層を下位の階層に変更し(ステップS39)、処理をステップS33に進めて、下位の階層におけるブロックに対する処理を実行する。
【0093】
一方、1つ下の階層のブロックがない場合(ステップS38:N)には、画像表示部36は、表示装置108に対して、逆アダマール変換部35により算出された対象画像中の各画素の輝度の直流成分に基づいて画像を表示し(ステップS40)、処理を終了する。
【0094】
上記したデコード処理によると、エンコーダ10で作成された圧縮データに基づいて、適切に画像を表示することができる。
【0095】
上記したエンコーダ10及びデコーダ30は、それぞれコンピュータ装置により構成することができる。
【0096】
図8は、一実施形態に係るコンピュータ装置の構成図である。なお、本実施形態では、エンコーダ10及びデコーダ30は、別々のコンピュータ装置で構成されているが、これらコンピュータ装置は、同様な構成を有するものとすることができる。したがって、以下の説明では、便宜的に
図8に示すコンピュータ装置を用いて、エンコーダ10及びデコーダ30を構成するコンピュータ装置について説明することとする。
【0097】
コンピュータ装置100は、例えば、Central Processin Unit(CPU)101と、メインメモリ102と、Graphics Processing Unit(GPU)103と、リーダライタ104と、通信インターフェース(通信I/F)105と、補助記憶装置106と、入出力インターフェース(入出力I/F)107と、表示装置108と、入力装置109とを備える。CPU101、メインメモリ102、GPU103、リーダライタ104、通信I/F105、補助記憶装置106、入出力I/F107、及び表示装置108は、バス110を介して接続されている。エンコーダ10と、デコーダ30とは、それぞれコンピュータ装置100に記載の構成要素の一部または全てを適宜選択して構成される。
【0098】
エンコーダ10を構成するコンピュータ装置100において、CPU101は、補助記憶装置106に格納された画像処理プログラムを実行することにより、例えば、対象画像入力部11、DC変換部12、アダマール変換部13、交流成分予測部14、予測残差算出部15、符号化部16、及び圧縮データ出力部17を構成する。
【0099】
デコーダ30を構成するコンピュータ装置100において、CPU101は、補助記憶装置106に格納された画像処理プログラムを実行することにより、例えば、圧縮データ入力部31、復号部32、交流成分予測部33、交流成分算出部34、逆アダマール変換部35、及び画像表示部36を構成する。
【0100】
メインメモリ102は、例えば、RAM、ROM等であり、CPU101に実行されるプログラム(処理プログラム等)や、各種情報を記憶する。補助記憶装置106は、例えば、Hard DISK Drive(HDD)、Solid State Drive(SSD)等の非一時的記憶デバイス(不揮発性記憶デバイス)であり、CPU101で実行されるプログラムや、各種情報を記憶する。
【0101】
GPU103は、例えば、画像処理等の特定の処理の実行に適しているプロセッサであり、例えば、並列的に行われる処理の実行に適している。本実施形態では、GPU103は、CPU101の指示に従って所定の処理を実行する。
【0102】
リーダライタ104は、記録媒体111を着脱可能であり、記録媒体111からのデータの読み出し、及び記録媒体111へのデータの書き込みを行う。記録媒体111としては、例えば、SDメモリーカード、FD(フロッピーディスク:登録商標)、CD、DVD、BD(登録商標)、フラッシュメモリ等の非一時的記録媒体(不揮発性記録媒体)がある。本実施形態においては、記録媒体111に、処理プログラムを格納しておき、リーダライタ104により、これを読み出して、利用するようにしてもよい。また、エンコーダ10を構成するコンピュータ装置100において、記録媒体111に、処理対象の画像データを格納しておき、リーダライタ104により、これを読み出して使用するようにしてもよい。また、エンコーダ10を構成するコンピュータ装置100において、リーダライタ104により、圧縮データを記録媒体111に格納するようにしてもよい。また、デコーダ30を構成するコンピュータ装置100において、リーダライタ104により、記録媒体111から圧縮データを読み出して利用するようにしてもよい。
【0103】
通信I/F105は、ネットワーク50に接続されており、ネットワーク50に接続された他の装置との間でのデータの送受信を行う。
【0104】
入出力I/F107は、例えば、マウス、キーボード等の入力装置109と接続されている。エンコーダ10を構成するコンピュータ装置100において、入出力I/F107は、入力装置109を用いた、エンコーダ10のユーザによる操作入力を受け付ける。また、デコーダ30を構成するコンピュータ装置100において、入出力I/F107は、入力装置109を用いた、デコーダ30のユーザによる操作入力を受け付ける。
【0105】
表示装置108は、例えば、液晶ディスプレイ等のディスプレイ装置であり、各種情報を表示出力する。表示装置108は、例えば、デコーダ30において、画像表示部39による画像の表示に使用される。
【0106】
なお、本発明は、上述の実施形態及び変形例に限定されるものではなく、本発明の趣旨を逸脱しない範囲で、適宜変形して実施することが可能である。
【0107】
例えば、上記実施形態では、画像を圧縮する際において実施形態に係るγ成分予測を行うようにしていたが、例えば、画像を拡大する場合に、以下に示すように、γ成分予測を利用することもできる。この場合には、対象ブロックB[0,0]を、1つの画素として処理を行う。まず、対象ブロックBのα~[0,0]、b~[0,0]、γ~[0,0]を算出する。α~[0,0]と、b~[0,0]とは、既存の技術により予測してよく、例えば、以下の式(22)、(23)により算出してもよい。
【0108】
【0109】
γ成分の予測値γ~[0,0]は、例えば、上記実施形態における式(9)により算出する。
【0110】
次いで、M[0,0]、α~[0,0]、b~[0,0]、γ~[0,0]を、式(21)に代入することにより、対象ブロックBの子ブロックの輝度値を算出する。ここで、対象ブロックBは、画素であるので、子ブロックは、画素に含まれる2×2の部分画素の輝度値である。このため、全ての画素に対して、同様な処理をすることにより、各画素についての2×2の部分画素の輝度が得られることとなる。この部分画素を1つの画素とした画像を作成することにより、元の画像を縦横それぞれ2倍の画像に拡大することができる。
【0111】
また、上記実施形態では、エンコーダにおいて、各ブロックの予測残差eα、eβ、eγを量子化した後に符号化するようにしていたが、この場合には、デコーダ側で再現されるブロックB[x,y]の直流成分M’[x,y]を予め算出し、予測残差を算出するために用いたM[x,y]に代えて、M’[x,y]を用いるようにしてもよい。このようにすると、エンコーダ側でデコーダ側と同じ状態で予測残差を算出することができ、予測残差の予測精度を向上させることができる。
【0112】
また、上記実施形態では、各ブロックの予測残差eα、eβ、eγを量子化した後に符号化するようにしていたが、予測残差eα、eβ、eγを量子化せずに符号化するようにしてもよい。
【0113】
また、上記実施形態では、エンコード処理及びデコード処理において、すべての階層のブロックに対して同様な処理を行って、エンコード又はデコードするようにしていたが、本発明はこれに限られず、いずれかの階層に対して、異なる処理により、エンコード又はデコードするようにしてもよい。
【0114】
また、上記実施形態では、コンピュータ装置100がエンコーダ10又はデコーダ30のいずれか一方を備えている例を示していた。本発明はこれに限られず、コンピュータ装置100内にエンコーダ10とデコーダ30との両方を備えるようにしてもよい。
【符号の説明】
【0115】
1…画像処理システム、10…エンコーダ、11…対象画像入力部、12…DC変換部、13…アダマール変換部、14…交流成分予測部、15…予測残差算出部、16…符号化部、17…圧縮データ出力部、30…デコーダ、31…圧縮データ入力部、32…復号部、33…交流成分予測部、34…交流成分算出部、35…逆アダマール変換部、36…画像表示部、50…ネットワーク、100…コンピュータ装置、101…CPU、102…メインメモリ、108…表示装置、111…記録媒体