(57)【要約】      （修正有）【課題】ＪＰＥＧ−ＸＲに代表される、ブロック毎に量子化値や係数予測方法が変更できる画像符号化装置、画像符号化方法において、その処理速度を従来に比べ飛躍的に向上させる。【解決手段】並列スキャン変換処理を可能にして、一のスキャン変換処理で先のデータブロックを受け付ける一方で、他のスキャン変換処理で次のデータブロックを受け付けるように構成しておき、前記先のデータブロックに基づいて蓄積非ゼロ情報を逐次更新し、該更新された一部の蓄積非ゼロ情報に基づいて次のデータブロックのための新たなスキャン順序を部分的に決定し、該スキャン順序が決定された一部の画素位置に対応するデータを前記次のデータブロックから取得し、該一部の画素位置における蓄積非ゼロ情報を更新するとともに、更新された一部の蓄積非ゼロ情報に基づいてさらに次のデータブロックのための新たなスキャン順序を部分的に決定するようにした。【選択図】図１４
2012129888.tif 000002
【特許請求の範囲】
【請求項１】
所定の大きさの分割画像ブロックの画素位置に対応して設定された複数のデータからなるデータブロックを受け付けるとともに、受け付けたデータブロックにおける各データを、その画素位置の順番で表される所定のスキャン順序でスキャンして出力するスキャン変換部と、
過去に受け付けたデータブロックにおける各データの非ゼロ情報を画素位置毎に積算して算出した蓄積非ゼロ情報に、前記受け付けたデータブロックにおける各データの非ゼロ情報を積算し、画素位置毎の蓄積非ゼロ情報を更新して保持するスキャン状態保持部と、
更新された前記画素位置毎の蓄積非ゼロ情報を、前記スキャン順序で検索し、その値が昇順（又は降順）となる箇所があった場合に、当該昇順（又は降順）となる２つの蓄積非ゼロ情報のスキャン順序を入れ替えて、次のデータブロックで用いられる新たなスキャン順序を決定して保持するスキャンオーダー保持部とを具備するものであって、
前記スキャン変換部を複数具備し、一のスキャン変換部で先のデータブロックを受け付ける一方で、他のスキャン変換部が次のデータブロックを受け付けるように構成しておき、前記スキャン状態保持部が、該先のデータブロックに基づいて蓄積非ゼロ情報を逐次更新し、該更新された一部の蓄積非ゼロ情報に基づいて前記スキャンオーダー保持部が次のデータブロックのための新たなスキャン順序を部分的に決定すると、該スキャン順序が決定された一部の画素位置に対応するデータを前記スキャン状態保持部が前記次のデータブロックから取得し、該一部の画素位置における蓄積非ゼロ情報を更新するとともに、更新された一部の蓄積非ゼロ情報に基づいて前記スキャンオーダー保持部がさらに次のデータブロックのための新たなスキャン順序を部分的に決定することを特徴とする画像符号化装置。
【請求項２】
ＪＰＥＧ−ＸＲ形式の画像符号化に適用されることを特徴とする請求項１記載の画像符号化装置。
【請求項３】
前記スキャン変換部がブロックデータを構成するデータの数だけあることを特徴とする請求項１又は２記載の画像符号化装置。
【請求項４】
所定の大きさの分割画像ブロックの画素位置に対応して設定された複数のデータからなるデータブロックを受け付けるとともに、受け付けたデータブロックにおける各データを、その画素位置の順番で表される所定のスキャン順序でスキャンして出力するスキャン変換処理と、
過去に受け付けたデータブロックにおける各データの非ゼロ情報を画素位置毎に積算して算出した蓄積非ゼロ情報に、前記受け付けたデータブロックにおける各データの非ゼロ情報を積算し、画素位置毎の蓄積非ゼロ情報を更新して保持するスキャン状態保持処理と、
更新された前記画素位置毎の蓄積非ゼロ情報を、前記スキャン順序で検索し、その値が昇順（又は降順）となる箇所があった場合に、当該昇順（又は降順）となる２つの蓄積非ゼロ情報のスキャン順序を入れ替えて、次のデータブロックで用いられる新たなスキャン順序を決定して保持するスキャンオーダー保持処理とを行うものであって、
並列スキャン変換処理を可能にして、一のスキャン変換処理で先のデータブロックを受け付ける一方で、他のスキャン変換処理で次のデータブロックを受け付けるように構成しておき、
前記先のデータブロックに基づいて蓄積非ゼロ情報を逐次更新し、該更新された一部の蓄積非ゼロ情報に基づいて次のデータブロックのための新たなスキャン順序を部分的に決定し、該スキャン順序が決定された一部の画素位置に対応するデータを前記次のデータブロックから取得し、該一部の画素位置における蓄積非ゼロ情報を更新するとともに、更新された一部の蓄積非ゼロ情報に基づいてさらに次のデータブロックのための新たなスキャン順序を部分的に決定することを特徴とする画像符号化方法。
【請求項５】
ＪＰＥＧ−ＸＲ形式の画像符号化に適用されることを特徴とする請求項４記載の画像符号化方法。
【請求項６】
前記スキャン変換処理が、ブロックデータのデータ数だけ並列可能であることを特徴とする請求項４又は５記載の画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＪＰＥＧ−ＸＲに係る画像符号化方法及びこれを実現する画像符号化装置に関するものである。
【背景技術】
【０００２】
画像データを取り扱うための標準フォーマットの1つとしてＪＰＥＧ−ＸＲが知られている。このＪＰＥＧ−ＸＲは、ＪＰＥＧに存在した色情報の不足感を改善すべく提案され、２００９年に国際標準化されたものである。このＪＰＥＧ−ＸＲで生画像データを符号化ストリームとする画像符号化装置又は画像符号化シーケンスの全体構成は、図１に示すようなものである。
【０００３】
すなわち、撮像素子などで撮影されたデジタル入力画像は、予め定められた２次元のブロックに分割される。各ブロックのデータは直交変換が施され、色空間データから周波数空間の変換係数に変換される。さらに必要に応じて、変換係数に対して量子化処理が施される。さらに、画像のデータパターンが複数ブロックにまたいでいる場合は、量子化された変換係数を各周波数帯に応じてフレーム内予測することで、更に変換係数の強度を削減する。
【０００４】
そして、量子化、および、係数予測が施された２次元の変換係数は、有意係数を前方に、ラン(ゼロ)を後方に連続するように１次元データとして並びかえられる。このようにして並びかえた１次元データをエントロピー符号化することで符号化ストリームが生成される。
【０００５】
ところで、このＪＰＥＧ−ＸＲに代表されるように、ブロック毎に量子化値や係数予測方法が変更できる画像符号化方式においては、ブロック毎にスキャン順序を変更することができる。
このスキャン順序変更するスキャン変換部の詳細構成及びシーケンスは、ＪＰＥＧ−ＸＲの規格書によれば、図２、図３に示すようなものである。
その動作を図４〜図９を参照して具体的に説明する。
処理単位となるデータブロックとして、例えば図４に示すような４ｘ４の画素に対応する変換係数を考える。
【０００６】
このデータブロックは、画素に対応する複数のデータの集合で、左上のデータは除かれる。各データの値は、有意係数を示している。なお、ここでは、同図に示すように、データブロック内のデータ位置（以下、ブロック位置とも言う）をＰｊ（ｊ＝１〜１５）で示すこととする。
【０００７】
一方、過去にスキャンしたデータブロックにおけるブロック位置毎のデータの蓄積非ゼロ情報（ここでは有意係数を一律１として積算した値）が、図５に示す集合であったとする。これは、スキャン状態と言われ、スキャン順序決定の評価関数を示している。スキャン順序が小さいほど大きな値をとる。また、この図５で、スキャン順序は、ブロック位置で示している。
【０００８】
ここで、図６に示すような値を有するデータブロックが入力されたとする。
そうすると、スキャン変換部は、ブロック位置の係数、すなわちデータ値を、非ゼロのもののみ１に変換して、前記蓄積非ゼロ情報にスキャン順序の順で逐次加えていく。このようにして蓄積非ゼロ情報を更新した結果を図７に示す。
【０００９】
次に、スキャン変換部は、この蓄積非ゼロ情報において、スキャン順序が隣り合うブロック位置の値を次々比較する。本来その値は降順になるはずであるが、昇順になっている部分（図７影部）があると、降順となるように逐次入れ替える（図８、図９参照）。
【００１０】
このようにして、全ての比較及び入れ替えが終了した時点での、そのブロック位置の並びの順序、つまりここでは、図９に示すスキャン順序が、次に入力されるデータブロックのスキャン順序を示すものとなる。
【００１１】
しかして、この構成では次のデータブロックのスキャン順序が決定するのは先のデータブロックの変換終了後なので、逐次的にしか処理ができない。そのためスキャン変換以降の処理が遅くなり、例えばデジタルカメラでは連写速度を一定以上上げられないといった問題が生じ得る。
【００１２】
そこで、このような問題を解決すべく、特許文献１では、並列処理判定部で連続する２つのブロックデータの入力の結果、スキャン順が変わらないことを検出し、変わらなければ並列処理を行う一方、スキャン順が変わった場合は、従来通り、逐次処理を行う。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２０１０−１９３０９７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、このようなものでは、スキャン順が変わらない場合にのみ、処理速度が向上するため、実際のところ、大幅な処理速度の向上を期待することはできない。
【００１５】
また、並列度を上げて処理速度をあげるべく、ブロックデータの数を増やすとスキャン順が変わる確率が高くなるので、やはり、処理速度が速くなるとは必ずしも限らない。
【００１６】
本発明は、これらの課題を解決すべくなされたものであって、その主たる目的は、ＪＰＥＧ−ＸＲに代表される、ブロック毎に量子化値や係数予測方法が変更できる画像符号化装置、画像符号化方法において、画像品質を担保しながら、その処理速度を従来に比べ飛躍的に向上させることにある。
【課題を解決するための手段】
【００１７】
すなわち、本発明に係る画像符号化装置は、所定の大きさの分割画像ブロックの画素位置に対応して設定された複数のデータからなるデータブロックを受け付けるとともに、受け付けたデータブロックにおける各データを、その画素位置の順番で表される所定のスキャン順序でスキャンして出力するスキャン変換部と、過去に受け付けたデータブロックにおける各データの非ゼロ情報を画素位置毎に積算して算出した蓄積非ゼロ情報に、前記受け付けたデータブロックにおける各データの非ゼロ情報を積算し、画素位置毎の蓄積非ゼロ情報を更新して保持するスキャン状態保持部と、更新された前記画素位置毎の蓄積非ゼロ情報を、前記スキャン順序で検索し、その値が昇順（又は降順）となる箇所があった場合に、当該昇順（又は降順）となる２つの蓄積非ゼロ情報のスキャン順序を入れ替えて、次のデータブロックで用いられる新たなスキャン順序を決定して保持するスキャンオーダー保持部とを具備するものである。
【００１８】
そして、前記スキャン変換部を複数具備し、一のスキャン変換部で先のデータブロックを受け付ける一方で、他のスキャン変換部が次のデータブロックを受け付けるように構成しておき、前記スキャン状態保持部が、該先のデータブロックに基づいて蓄積非ゼロ情報を逐次更新し、該更新された一部の蓄積非ゼロ情報に基づいて前記スキャンオーダー保持部が次のデータブロックのための新たなスキャン順序を部分的に決定すると、該スキャン順序が決定された一部の画素位置に対応するデータを前記スキャン状態保持部が前記次のデータブロックから取得し、該一部の画素位置における蓄積非ゼロ情報を更新するとともに、更新された一部の蓄積非ゼロ情報に基づいて前記スキャンオーダー保持部がさらに次のデータブロックのための新たなスキャン順序を部分的に決定することを特徴とする。
【００１９】
このようなものであれば、先のブロックデータの全てのスキャン変換を待つことなく、そのスキャン順序で読み込まれる該ブロックデータの最初の一部をまつだけで、その一部のブロックデータによって定まった部分的なスキャン順序で、次のデータブロックのスキャン変換を始められるので、言わばパイプライン処理が可能になり、処理速度の大幅な向上を見込めることとなる。
具体的な態様としては、ＪＰＥＧ−ＸＲ形式の画像符号化に適用されることが好ましい。
処理速度を最も向上させるには、前記スキャン変換部がブロックデータを構成するデータの数だけあればよい。
また、本発明は、以下のような方法に適用して、同様の作用効果を生じるものである。
【００２０】
すなわち、所定の大きさの分割画像ブロックの画素位置に対応して設定された複数のデータからなるデータブロックを受け付けるとともに、受け付けたデータブロックにおける各データを、その画素位置の順番で表される所定のスキャン順序でスキャンして出力するスキャン変換処理と、過去に受け付けたデータブロックにおける各データの非ゼロ情報を画素位置毎に積算して算出した蓄積非ゼロ情報に、前記受け付けたデータブロックにおける各データの非ゼロ情報を積算し、画素位置毎の蓄積非ゼロ情報を更新して保持するスキャン状態保持処理と、更新された前記画素位置毎の蓄積非ゼロ情報を、前記スキャン順序で検索し、その値が昇順（又は降順）となる箇所があった場合に、当該昇順（又は降順）となる２つの蓄積非ゼロ情報のスキャン順序を入れ替えて、次のデータブロックで用いられる新たなスキャン順序を決定して保持するスキャンオーダー保持処理とを行うものであって、並列スキャン変換処理を可能にして、一のスキャン変換処理で先のデータブロックを受け付ける一方で、他のスキャン変換処理で次のデータブロックを受け付けるように構成しておき、前記先のデータブロックに基づいて蓄積非ゼロ情報を逐次更新し、該更新された一部の蓄積非ゼロ情報に基づいて次のデータブロックのための新たなスキャン順序を部分的に決定し、該スキャン順序が決定された一部の画素位置に対応するデータを前記次のデータブロックから取得し、該一部の画素位置における蓄積非ゼロ情報を更新するとともに、更新された一部の蓄積非ゼロ情報に基づいてさらに次のデータブロックのための新たなスキャン順序を部分的に決定することを特徴とする画像符号化方法である。
【発明の効果】
【００２１】
以上に述べた本発明によれば、先のブロックデータの全てのスキャン変換を待つことなく、次のデータブロックのスキャン変換をパイプライン処理できるので、変換処理速度の大幅なＵＰが可能となり、例えばデジタルカメラの連写速度の向上やＶＬＣ処理の高速化が可能になるといった効果を得られる。また、データブロック単位でみれば、規格通りの画像符号化処理が施されているので、画像劣化を招くこともない。
【図面の簡単な説明】
【００２２】
【図１】ＪＰＥＧ−ＸＲで生画像データを符号化ストリームとする画像符号化装置又は画像符号化シーケンスの全体構成を示す構成図である。
【図２】前記画像符号化装置でのスキャン変換部の詳細構成を示す構成図である。
【図３】前記画像符号化装置でのスキャン変換部の詳細シーケンスを示すフローチャートである。
【図４】データブロックの構成を示すブロック構成図である。
【図５】ある状態でのスキャン順序、蓄積非ゼロ情報を示す例示図である。
【図６】データブロックの値の一例を示す例示図である。
【図７】ブロックデータの入力によって変化するスキャン順序、蓄積非ゼロ情報の状態遷移図である。
【図８】ブロックデータの入力によって変化するスキャン順序、蓄積非ゼロ情報の状態遷移図である。
【図９】ブロックデータの入力によって変化するスキャン順序、蓄積非ゼロ情報の状態遷移図である。
【図１０】本発明の一実施形態における画像符号化装置が適用されデジタルカメラの全体構成図である。
【図１１】本発明の一実施形態における画像符号化装置の全体構成を示す構成図である。
【図１２】同実施形態における画像符号化装置の動作概要を示すフローチャートである。
【図１３】同実施形態における画像符号化装置の動作の一部を詳細に示す詳細フローチャートである。
【図１４】本発明の他の実施形態における画像符号化装置の全体構成を示す構成図である。
【図１５】同実施形態における画像符号化装置の動作概要を示すフローチャートである。
【図１６】同実施形態における画像符号化装置の動作のタイミングチャートである。
【発明を実施するための形態】
【００２３】
以下、本発明の一実施形態を、図面を参照して説明する。
【００２４】
本実施形態に係る画像処理装置は、例えば、デジタルカメラに搭載されて用いられるものである。まず、このデジタルカメラの概要を図１０を参照して簡単に説明する。
【００２５】
このデジタルカメラにおいて、被写体はレンズ１を通して、ＣＣＤ２上に結像され、電気信号としてアナログフロントエンド部３へ送られる。アナログフロントエンド部３ではまず、自動ゲインコントロール部３１により、信号が増幅され、ＡＤコンバータ３２でデジタル信号に変換される。
デジタル信号に変換された画像（ベイヤ配列原画像）はＳＤＲＡＭなどのメモリ４に保存される。
【００２６】
メモリ４に保存されたベイヤ配列原画像は、イメージプロセス部５でＹＣｂＣｒ画像に変換された後、画像圧縮部６に順におくられ、例えばＪＰＥＧ形式で符号化される。符号化された圧縮画像はメモリーカード７に記憶される。
しかして、この画像圧縮部６が、請求項における画像符号化装置に該当するものである。以下に詳述する。
【００２７】
この画像圧縮部６は、例えばハードウェア及びソフトウェアの協働によって実現されるものであり、図１１にその機能ブロック図を示すように、スキャン変換部６１、スキャン状態保持部６２及びスキャンオーダー保持部６３を具備する。
【００２８】
スキャン変換部６１は、所定の大きさの分割画像ブロックの画素位置に対応して設定された複数のデータからなるデータブロックを受け付けるとともに、受け付けたデータブロックにおける各データを、その画素位置（以下、ブロック位置とも言う。）の順番で表される所定のスキャン順序でスキャンして出力するものである。
【００２９】
スキャン状態保持部６２は、過去に受け付けたデータブロックにおける各データの非ゼロ情報を画素位置毎に積算して算出した蓄積非ゼロ情報に、前記受け付けたデータブロックにおける各データの非ゼロ情報を積算し、画素位置毎の蓄積非ゼロ情報を更新してメモリ４の所定領域に保持するものである。
【００３０】
スキャンオーダー保持部６３は、更新された前記画素位置毎の蓄積非ゼロ情報を、前記スキャン順序で検索し、その値が昇順（又は降順）となる箇所があった場合に、当該昇順（又は降順）となる２つの蓄積非ゼロ情報のスキャン順序を入れ替えて、次のデータブロックで用いられる新たなスキャン順序を決定して保持するものである。
ここで、データブロックや、ブロック位置、蓄積非ゼロ情報については、背景技術ですでに説明しているので、ここでの説明は省略する。
【００３１】
しかしてこの実施形態では、前記画像圧縮部６がスキャン変換部６１を２つ具備し、一方のスキャン変換部６１（１）で先のデータブロックを受け付ける一方で、他方のスキャン変換部６１（２）が次のデータブロックを受け付けるように構成してある。
【００３２】
そして、図１２、図１３に示すように、前記スキャン状態保持部６２が、該先のデータブロックに基づいて蓄積非ゼロ情報を逐次更新し、該更新された一部の蓄積非ゼロ情報に基づいて前記スキャンオーダー保持部６３が次のデータブロックのための新たなスキャン順序を部分的に決定すると、該スキャン順序が決定された一部のブロック位置に対応するデータを前記スキャン状態保持部が前記次のデータブロックから取得し、該一部のブロック位置における蓄積非ゼロ情報を更新するとともに、更新された一部の蓄積非ゼロ情報に基づいて前記スキャンオーダー保持部がさらに次のデータブロックのための新たなスキャン順序を部分的に決定する。
より詳細に説明する。
【００３３】
なお、図でスキャン状態と記載されていれば、スキャン状態保持部６３が動作し、スキャン変換と記載されていれば、スキャン変換部６１が動作し、スキャンオーダーと記載されていれば、スキャンオーダー保持部６２が動作する意味を表している。
【００３４】
図１２が２つのブロックデータをブロック位置単位でパイプライン処理した時のフローチャートである。ここでは、１ブロックより短い遅延時間でブロックデータ＃２を入力する。そのため、スキャン状態とスキャンオーダーの処理は同時に行うことになるが、ブロック位置の単位の処理ではパイプライン的に処理を行っている。それを図１３で示している。
【００３５】
ブロックデータの処理はブロック位置Ｐ１〜Ｐ１５毎の処理に分かれている。図１３は左のブロックから、
“ブロックデータ＃１の入力”、
“ブロックデータ＃１におけるスキャン順序１番目、２番目、・・・のブロック位置のスキャン変換”、
“ブロックデータ＃１、＃２、・・・におけるスキャン順序１番目のブロック位置のスキャン状態、スキャンオーダ処理”、
“ブロックデータ＃１、＃２、・・・におけるスキャン順序２番目のブロック位置のスキャン状態、スキャンオーダーの処理”、
“ブロックデータ＃１、＃２、・・・におけるスキャン順序３番目のブロック位置のスキャン状態、スキャンオーダーの処理”、
“ブロックデータ＃２におけるスキャン順序１番目、２番目、・・・のブロック位置のスキャン変換”、
“ブロックデータ＃２の入力”
に分けており、下のブロックのものほど時間が経過している処理を示している。
【００３６】
例えば、ブロックデータ＃１におけるスキャン順序１番目のブロック位置のデータは入力されてから、スキャン変換、スキャン状態、スキャンオーダーの処理が行われる。
【００３７】
一方ブロックデータ＃２は２処理分遅れて入力されており、そのスキャン順序１番目のブロック位置のデータが入力されて、スキャン変換の処理をする際に、ブロックデーター＃１のスキャンオーダーの情報が必要なのだが、この情報は２サイクル前のブロックデータ＃１のスキャンオーダーの処理で生成済みである。
【００３８】
そのためこの入力タイミングでスキャン変換が可能である。また、スキャン順序２番目以降のブロック位置の処理に関してはパイプラインで処理しているので、スキャン順序１番目ブロック位置と同じ方式で処理が可能である。
【００３９】
また、図１３ではスキャン状態とスキャンオーダーの処理は分けて描いているが、原理的に同時に処理が可能なので、ブロックデータ＃２はブロックデータ＃１の1サイクル後に入力しても上記の処理が可能である。
なお、本発明は、前記実施形態に限られるものではない。
この別実施形態での構成を図１４に示す。
【００４０】
ここでは、ブロック位置単位のパイプライン処理をN個のブロックデータに対応させるためにスキャン変換部６１をN個有し、N個の入力に対して、N個のスキャン状態を出力するスキャン状態保持部６２を有する。また、N個のスキャン状態に対してスキャンオーダーを出力するスキャンオーダ保持部６３を有する。
【００４１】
図１５にN個のブロックデータを処理する時のフローチャート、図１６にタイミングチャートを示す。
ここではブロック位置単位のパイプライン処理をN個のブロックデータ入力に拡張しており、それぞれのブロックデータ入力は少しずつ入力タイミングをずらして、スキャン状態、スキャンオーダー処理を行う事により一つ前のブロックデータで処理されたスキャンオーダーでスキャン変換が行われるようにしてある。
【００４２】
図１５のフローチャート、図１６のタイミングチャートでもわかるようにN個のブロックデータをほぼ同時に処理を行っており、N個のブロックデータを並列で処理を行っている。なお、Ｎは、データブロックにおけるデータ数分乃至それより１つ少ない数であれば、処理速度は最速となる。
【００４３】
なお、本発明は前記実施形態に限られるものではない。例えば、ＪＰＥＧ−ＸＲ形式以外の類似の画像符号化方法にも適用可能であり、その趣旨を逸脱しない範囲に於いて種々の変形が可能である。
【符号の説明】
【００４４】
６・・・画像符号化装置
６１・・・スキャン変換部
６２・・・スキャン状態保持部
６３・・・スキャンオーダー保持部
【図１】
2012129888.tif 000003
【図２】
2012129888.tif 000004
【図３】
2012129888.tif 000005
【図４】
2012129888.tif 000006
【図５】
2012129888.tif 000007
【図６】
2012129888.tif 000008
【図７】
2012129888.tif 000009
【図８】
2012129888.tif 000010
【図９】
2012129888.tif 000011
【図１０】
2012129888.tif 000012
【図１１】
2012129888.tif 000013
【図１２】
2012129888.tif 000014
【図１３】
2012129888.tif 000015
【図１４】
2012129888.tif 000016
【図１５】
2012129888.tif 000017
【図１６】
2012129888.tif 000018