(57)【要約】【課題】符号化後に破棄されることがほぼ確実なデータについてはそもそも符号化を行わないことで、処理の効率化（およびそれに伴う処理時間の短縮や消費電力の節減など）を図る。【解決手段】ＪＰＥＧ２０００ではウェーブレット変換後の係数データをコードブロックに分割し、各ブロック内のビットを３つのパスにより符号化している。コードブロック単位で出力される符号化データでは、画像品質への寄与度の大きいものから順にパスが配置されるので、末尾から優先的にパスを切り捨てることで符号量を任意の値に調整できる。ただ、せっかく符号化したパスを後で破棄するのは効率が悪いので、本発明では符号化されるパスごとにその画質値を監視して、コードブロックの画質値が閾値を超えた時点で、当該ブロックの符号化を中断（残りのパスによる符号化を省略）して次のコードブロックへ移行する。【選択図】        図１
2006115193.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理装置において、
前記画像データ中の各フレームを複数のブロックに分割する分割手段と、
前記分割手段により分割されたブロック中の各ビットを少なくとも一つのビットからなるグループごとに符号化する符号化手段と、
前記符号化手段により符号化された各グループの画質値を算出する第１の画質値算出手段と、
前記第１の画質値算出手段により算出された画質値にもとづいて前記ブロックの画質値を算出する第２の画質値算出手段と、
前記第２の画質値算出手段により算出された画質値が閾値を超えた時点で、前記符号化手段による前記ブロック中の各ビットの符号化を中止させる符号化中止手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
さらに、前記フレームの符号量を所定値とする場合の前記フレームの画質値を算出する第３の画質値算出手段と、
前記フレームの画質値を前記第３の画質値算出手段により算出された画質値とする場合に前記フレーム中の各ブロックに必要な前記グループの個数を算出するグループ数算出手段と、
前記各ブロックにつき、前記符号化手段により符号化されたグループのうち前記グループ数算出手段により算出された個数のグループのみを出力する出力手段と、
を備えることを特徴とする前記請求項１に記載の画像処理装置。
【請求項３】
前記閾値は前フレームについて前記第３の画質値算出手段により算出された画質値であることを特徴とする前記請求項２に記載の画像処理装置。
【請求項４】
前記符号化中止手段は、前フレームと現フレームとの間に差異がある場合は前記符号化手段による符号化を中止させないことを特徴とする前記請求項３に記載の画像処理装置。
【請求項５】
少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理方法において、
前記画像データ中の各フレームを複数のブロックに分割する分割工程と、
前記分割工程で分割されたブロック中の各ビットを少なくとも一つのビットからなるグループごとに符号化する符号化工程と、
前記符号化工程で符号化された各グループの画質値を算出する第１の画質値算出工程と、
前記第１の画質値算出工程で算出された画質値にもとづいて前記ブロックの画質値を算出する第２の画質値算出工程と、
前記第２の画質値算出工程で算出された画質値が閾値を超えた時点で、前記符号化工程における前記ブロック中の各ビットの符号化を中止させる符号化中止工程と、
を含むことを特徴とする画像処理方法。
【請求項６】
さらに、前記フレームの符号量を所定値とする場合の前記フレームの画質値を算出する第３の画質値算出工程と、
前記フレームの画質値を前記第３の画質値算出工程で算出された画質値とする場合に前記フレーム中の各ブロックに必要な前記グループの個数を算出するグループ数算出工程と、
前記各ブロックにつき、前記符号化工程で符号化されたグループのうち前記グループ数算出工程で算出された個数のグループのみを出力する出力工程と、
を含むことを特徴とする前記請求項５に記載の画像処理方法。
【請求項７】
前記閾値は前フレームについて前記第３の画質値算出工程で算出された画質値であることを特徴とする前記請求項６に記載の画像処理方法。
【請求項８】
少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理プログラムにおいて、
前記画像データ中の各フレームを複数のブロックに分割する分割工程と、
前記分割工程で分割されたブロック中の各ビットを少なくとも一つのビットからなるグループごとに符号化する符号化工程と、
前記符号化工程で符号化された各グループの画質値を算出する第１の画質値算出工程と、
前記第１の画質値算出工程で算出された画質値にもとづいて前記ブロックの画質値を算出する第２の画質値算出工程と、
前記第２の画質値算出工程で算出された画質値が閾値を超えた時点で、前記符号化工程における前記ブロック中の各ビットの符号化を中止させる符号化中止工程と、
をプロセッサに実行させることを特徴とする画像処理プログラム。
【請求項９】
さらに、前記フレームの符号量を所定値とする場合の前記フレームの画質値を算出する第３の画質値算出工程と、
前記フレームの画質値を前記第３の画質値算出工程で算出された画質値とする場合に前記フレーム中の各ブロックに必要な前記グループの個数を算出するグループ数算出工程と、
前記各ブロックにつき、前記符号化工程で符号化されたグループのうち前記グループ数算出工程で算出された個数のグループのみを出力する出力工程と、
をプロセッサに実行させることを特徴とする前記請求項８に記載の画像処理プログラム。
【請求項１０】
前記閾値は前フレームについて前記第３の画質値算出工程で算出された画質値であることを特徴とする前記請求項９に記載の画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理装置、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
ＩＳＯとＩＴＵ−ＴＳの共同組織、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）により２００１年１月に規格化されたＪＰＥＧ２０００は、従来のＪＰＥＧで採用されていた離散コサイン変換（ＤＣＴ）をウェーブレット変換（ＤＷＴ）に置き換えることで、圧縮率を高めた場合のブロックひずみを目立たなくさせたことで知られている。
【０００３】
図４は、従来のＪＰＥＧ２０００エンコーダ（ＪＰＥＧ２０００にもとづいて画像データを符号化する画像処理装置）の構成を機能的に示す説明図である。ＪＰＥＧ２０００においては、前処理（ＤＣレベルシフトやコンポーネント変換など）後の画像データを複数のタイルに分割し、このタイルごとにウェーブレット変換部４００によるウェーブレット変換を行う。
【０００４】
次にエントロピー符号化部４０１で、ウェーブレット変換後のタイルを複数のコードブロックに分割し、個々のコードブロックをビットプレーン展開するとともに、最上位ビットプレーンから最下位ビットプレーンに向かって、各ビットプレーン内のビットを
（１）ｓｉｇｎｉｆｉｃａｎｃｅ  ｐｒｏｐａｇａｔｉｏｎ
（２）ｍａｇｎｉｔｕｄｅ  ｒｅｆｉｎｅｍｅｎｔ
（３）ｃｌｅａｎｕｐ
の３つのパスにより符号化する。
【０００５】
これらのパスは、コードブロック内の各ビットを画像品質への寄与度に応じて分類する機能を有している。たとえば（１）は、上記ビットのうち画像品質への寄与度の大きいものを選択的に取り出して符号化するパスである。同様に（２）は寄与度が中程度のビット、（３）は寄与度が小さいビットを符号化するパスである。そしてエントロピー符号化部４０１から符号データ記憶部４０２に出力される各コードブロックの符号データでは、当該コードブロックを構成するビットプレーンの符号データが上位プレーンから下位プレーンの順に配置され、各ビットプレーンの符号データの中では、当該ビットプレーンを構成するビットの符号データが（１）、（２）、（３）の順に配置されている。
【０００６】
そのため各コードブロックについて、末尾から優先的にパスを切り捨ててゆくことで、画質の劣化を抑制しつつ発生する符号量を任意の値に調整することができる（Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ方式）。ＪＰＥＧ２０００は静止画だけでなく動画も対象とする規格であるが、画像データの中でも特に符号量が膨大となりやすい動画について、こうした符号量制御を要求される場合が多い。
【０００７】
そして符号量制御部４０３は、１フレーム（１画像）分の符号量をある値としたときのパスの個数をコードブロックごとに求める機能部である。すなわち、符号量制御部４０３はまずそのパス画質値演算部４０３ａで、エントロピー符号化部４０１により符号化されたパスごとの画質値を計算し、各パスのバイト数とともにパス情報記憶部４０４に保存する（図６）。そして、１フレーム分の全コードブロックの全パスについて上記処理を終えた時点で、そのフレーム画質値演算部４０３ｂにより、当該フレームの符号量をある値（以下では「目標符号量」という）とした場合の当該フレームの画質値を計算する。
【０００８】
この計算には、概念的には図６のようなグラフを用いる。図示する例は、上述のブロックひずみの値を画質値として採用した例であり、この値が大きいほど画像品質は良く、小さいほど悪くなる関係にある。図中、たとえばコードブロック０のパス２の位置における画質値とバイト数とは、コードブロック０についてパス２以前のパスを残し、パス３以降のパスを切り捨てた場合に実現される、コードブロック０の画質値とバイト数とを示している。
【０００９】
そこで現在処理中のフレームの仮の画質値として、たとえば要求される画像品質の最大値（図中「画質Ｍａｘ」）と最小値（同「画質Ｍｉｎ」）との中間点（同「１回目の仮画質値」）を設定すると、この画質値を達成するにはコードブロック０ではパス３まで、コードブロック１ではパス４まで、コードブロック２ではパス５までを残せばよいことになる。そしてその場合の１フレーム分の符号量は、コードブロック０でパス３までを残した場合の符号量＋コードブロック１でパス４までを残した場合の符号量＋コードブロック２でパス５までを残した場合の符号量・・・のように、当該フレームを構成する各コードブロックの符号量の総和となる。
【００１０】
このようにして計算された１フレーム分の符号量が、目標符号量の近傍になかった場合、たとえばパスを切り捨ててもまだ多すぎた場合は、仮の画質値をたとえば画質Ｍｉｎと１回目（前回）の仮画質値との中間点（図中「２回目の仮画質値」）に切り上げて、再度符号量を計算する。図６より、この場合の１フレーム分の符号量＝コードブロック０でパス２までを残した場合の符号量＋コードブロック１でパス３までを残した場合の符号量＋コードブロック２でパス３までを残した場合の符号量・・・となる。
【００１１】
そして、この符号量も目標符号量の近傍になかった場合、たとえば先ほどとは逆に少なすぎた場合は、仮の画質値をたとえば１回目（前々回）の仮画質値と２回目（前回）の仮画質値との中間点（図中「３回目の仮画質値」）に切り下げて、再度符号量を計算する。このように二分探索法で、１フレーム分の符号量が目標符号量に最も近くなるときのフレームの画質値、および当該画質値を達成するときの各コードブロックにおけるパスの切り捨て点とを割り出してゆく。
【００１２】
そして１フレーム中の全コードブロックについて、どのパスまでを残せばよいかが分かると、図４のファイル生成部４０５は符号データ記憶部４０２に蓄積された各コードブロックのパスのうち、符号量制御部４０３のフレーム画質値演算部４０３ｂからコードブロックごとに通知される個数分のパスのみを使用して（たとえばコードブロック０について個数２を通知された場合は、当該ブロックのパス３以降の符号データはないものとして）、ＪＰＥＧ２０００形式のファイルを生成する。
【００１３】
図７は、従来のＪＰＥＧ２０００エンコーダにおける、画像データの符号化処理の手順を示すフローチャートである。まず、前処理後の画像データをウェーブレット変換部４００で変換する（ステップＳ７０１）。次に、変換後のデータをエントロピー符号化部４０１でコードブロックに分割、さらにブロック内の各ビットプレーンのビットをパスごとに符号化して符号データ記憶部４０２に保存するとともに、符号量制御部４０３のパス画質値演算部４０３ａでパスごとの画質値を計算して、バイト数とともにパス情報記憶部４０４に保存する（ステップＳ７０２）。
【００１４】
そして、１コードブロック内の全パスにつきステップＳ７０２の処理を終えると（ステップＳ７０３：Ｙｅｓ）、次のコードブロックについて同様の処理を行い、１フレーム内の全コードブロックについてステップＳ７０１〜ステップＳ７０３の処理を終えると（ステップＳ７０４：Ｙｅｓ）、Ｒａｔｅ処理を行い（ステップＳ７０５）、１フレーム分の符号量が目標符号量に最も近くなるときの画質値と、コードブロックごとに残すパスの個数とを符号量制御部４０３のフレーム画質値演算部４０３ｂで求める。次にファイル生成部４０５が、Ｆｉｌｅ化処理を行い（ステップＳ７０６）、ステップＳ７０５で残すとされたパスのみを組み込んでＪＰＥＧ２０００形式のファイルを生成する。
【００１５】
また、図８は従来のＪＰＥＧ２０００エンコーダにおける、画像データの符号化処理のタイミングチャートである。上記処理は大別して３つの処理から構成され、まず処理１はエントロピー符号化部４０１で、１フレーム分の各コードブロックをパスごとに符号化するとともに、符号量制御部４０３で各パスの画質値を計算して、バイト数とともにパス情報記憶部４０４に保存する処理である。そしてこの処理１が１フレーム分終了した時点で、その符号量が目標値に最も近くなるときの画質値が符号量制御部４０３で計算され（処理２）、次に各コードブロックについて残すパスの個数が計算されるとともに、その結果にもとづいてファイル生成部４０５でファイル化が行われる（処理３）。
【００１６】
上記のようにして、ＪＰＥＧ２０００では画像データの一部（具体的には、画像品質への影響が少ないビット）を切り捨てることで、画質の劣化を抑制しつつ符号量を任意の値に調整している。なお、発生する符号量を抑制するための従来技術としては、上記のほかたとえば下記特許文献１〜特許文献２に示すものがある。
【００１７】
【特許文献１】特開２００１−２５８０３４号公報
【特許文献２】特開２００１−３０９３８１号公報
【特許文献３】特開２００１−４５４８５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１８】
しかしながら上述のＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ方式による符号量制御では、後段のファイル生成部４０５で最終的に切り捨てられるパスについても、その前段のエントロピー符号化部４０１で、切り捨てられないパスと区別なく符号化を行っている。そのため、後段で破棄されるパスの数が多いほど前段の処理に無駄が多くなってしまうという問題があった。
【００１９】
たとえば図９は、従来のＪＰＥＧ２０００において、１コードブロックあたり平均的に何個のパスが符号化後に破棄されていたかの一例を示す図表である。たとえば圧縮率が１００％（すなわち圧縮なし）の場合、サンプル画像１では１コードブロックあたり、平均して１６．８個のパスが破棄されていたことになる。また、図１０は図９中の各個数を圧縮率１００％のときに対する比で示した図表である。たとえばサンプル画像３を圧縮率１０％で符号化した場合に破棄されるパスの個数は、圧縮率１００％で符号化した場合に破棄されるパスの個数の半分である。このように、同じ画像でもよりコンパクトに圧縮した場合ほど破棄されるパスの個数は少ない。逆に言うと、同じ画像でもあまり圧縮をかけない場合ほど、せっかく符号化したパスの多くを最終的には破棄することになり、それだけ処理に無駄が多いことになる。
【００２０】
この発明は、上述した従来技術による問題点を解消するため、符号化後に破棄されることがほぼ確実なデータについてはそもそも符号化を行わないことで、処理の効率化を図ることが可能な画像処理装置、画像処理方法、および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２１】
上述した課題を解決し、目的を達成するため、この発明にかかる画像処理装置、画像処理方法、および画像処理プログラムは、少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理装置、画像処理方法、および画像処理プログラムにおいて、画像データ中の各フレームを複数のブロックに分割し、ブロック中の各ビットをグループごとに符号化するとともに、各グループの画質値にもとづいて算出された前記ブロックの画質値が閾値を超えた時点で、前記ブロック中の各ビットの符号化を中止させることを特徴とする。
【００２２】
この発明によれば、各ブロック内のビットのうち符号化されるのは、当該ブロックにつき閾値として与えられた画質値を達成するのに必要なグループのビットのみである。したがって、それ以外のグループのビットについては符号化が省略される。
【００２３】
また、この発明にかかる画像処理装置、画像処理方法、および画像処理プログラムは、さらに、前記フレームの符号量を所定値とする場合の当該フレームの画質値を算出するとともに、その場合に当該フレーム中の各ブロックに必要な前記グループの個数を算出し、前記各ブロックにつき、符号化済みのグループのうち上記個数のグループのみを出力することを特徴とする。
【００２４】
この発明によれば、符号化済みのグループの中からさらにいくつかが選択的に出力（たとえばファイル出力など）される。したがって、それ以外のグループは切り捨てられる。
【００２５】
また、この発明にかかる画像処理装置、画像処理方法、および画像処理プログラムは、前記閾値が前フレームについて算出された画質値であることを特徴とする。
【００２６】
この発明によれば、各ブロック内のビットのうち符号化されるのは、当該ブロックにつき閾値として与えられた前フレームの画質値を達成するのに必要なグループのビットのみである。したがって、それ以外のグループのビットについては符号化が省略される。
【００２７】
また、この発明にかかる画像処理装置は、前フレームと現フレームとの間に差異がある場合は前記符号化を中止させないことを特徴とする。
【００２８】
この発明によれば、シーンチェンジなどがあったにもかかわらず、前フレームの画質値を根拠として符号化を省略しすぎたために現フレームの画質が劣化するのを防止することができる。
【発明の効果】
【００２９】
本発明にかかる画像処理装置、画像処理方法、および画像処理プログラムによれば、符号化後に破棄されることがほぼ確実なデータについてはそもそも符号化を行わないことで、処理の効率化を図り、さらにそれに伴う処理時間の短縮や消費電力の節減などを図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００３０】
以下に添付図面を参照して、この発明にかかる画像処理装置、画像処理方法、および画像処理プログラムの好適な実施の形態を詳細に説明する。
【００３１】
上記装置は具体的には、入力した動画像データをＪＰＥＧ２０００により符号化して出力するマクロであり、デジタルビデオカメラなどに搭載されるものとする。図１は、上記装置の構成を機能的に示す説明図である。図示する各部のうち、符号量制御部１０３とフレーム間差異検出部１０６を除く各部の機能は図４に示した同名の各部と同一（すなわち従来技術と同一）である。また符号量制御部１０３中、パス画質値演算部１０３ａとフレーム画質値演算部１０３ｂの機能も図４の同名の各部と同一であり、ただ本発明では符号量制御部１０３に、新たに前フレーム画質値記憶部１０３ｃと画質値監視部１０３ｄを備えたことが特徴となっている。
【００３２】
前フレーム画質値記憶部１０３ｃは、フレーム画質値演算部１０３ｂで計算された直近の画質値を保持する機能部である。フレーム画質値演算部１０３ｂから新しい画質値が出力される都度、前フレーム画質値記憶部１０３ｃ内の古い画質値は上書きされるので、ここには常に現フレームの直前に符号化されたフレーム（前フレーム）の画質値が保持されることになる。なお、本実施の形態における画質値とは、具体的には上述のブロックひずみの値であるものとするが、逆に画質値はブロックひずみの値でなければならないわけではなく、画像品質の良し悪しの指標となる値であれば何を画質値として採用するのでもよい（ブロックひずみの値は画質値の一例に過ぎない）。
【００３３】
画質値監視部１０３ｄは、パス画質値演算部１０３ａで計算されるパスの画質値を監視して、「処理中のコードブロックの画質値＜前フレームの画質値−α」（αはマージンを意味する固定値または可変値）となった場合に、エントロピー符号化部１０１に指示して、当該コードブロックについての以後の符号化処理を停止させる機能部である。
【００３４】
たとえば前フレームについて、その符号量が目標値となるときの画質値が３００と計算されており、またαは１００に設定されていたとする。このとき現在のフレームのコードブロック０の各パスの画質値が図５のようであったとすると、コードブロック０の画質値は、
・パス１まで符号化した時点で５００
・パス２まで符号化した時点で４２０
・パス３まで符号化した時点で２３０
・パス４まで符号化した時点で１８０
である。
【００３５】
したがって画質値監視部１０３ｄは、パス画質値演算部１０３ａからパス４の画質値が入力した時点で、「コードブロック０の画質値（具体的には１８０）＜前フレームの画質値−α（同２００）」となったことを検出して、エントロピー符号化部１０１に対して、コードブロック０の符号化を中断（スキップ）して次のコードブロック１の符号化へ移行するよう指示する。その結果コードブロック０については、パス１〜パス４の符号化しか行われない、すなわちパス５以降で符号化されるはずのビットは無視されることになる。
【００３６】
このように、本実施の形態では前フレームについて目標符号量を達成したときのフレームの画質値を保持しておき、現在処理中のフレームのコードブロックの画質値が、上記画質値をαの幅以下に下回った時点で、当該ブロックの以後の符号化処理を省略している。これは前フレームと現フレームとの間にあまり差異がない場合、現フレームについて目標符号量を達成するときの画質値は、前フレームにつき計算された画質値と大差ないことが予想されるため、現フレーム内の各コードブロックについて前フレームより低い画質値（より高い画像品質、と言ってもよい）を達成できるだけのパスを符号化しても、最終的に切り捨てられる確率が高いことによる。
【００３７】
ただしシーンチェンジなど、前フレームと現フレームとの間に差異がある場合は、必ずしも現フレームについて計算される画質値が前フレームの画質値と近くなる保障はない。そこで本実施の形態ではフレーム間差異検出部１０６を設け、ここで前フレームと現フレームとの間に所定値以上の差異が検出されたときは、フレーム間差異検出部１０６から画質値監視部１０３ｄに対して、現フレームについては画質値の監視をしないよう指示する（監視がなされない結果、画質値監視部１０３ｄからエントロピー符号化部１０１へ符号化処理の省略が指示されることもなくなる）。なお、フレーム間差異検出部１０６におけるフレーム間の差異の検出手法としては、従来提案されている種々の手法を採用すればよい。本実施の形態では、どのようにしてフレーム間の差異を検出するかは特に問わない。
【００３８】
なお、本実施の形態では画質値としてブロックひずみの値を採用した結果、画質値が低いほど画像品質は高くなる関係にあるので、上記計算式の右辺では前フレームの画質値からαを減算するようにしている。しかし、画質値としてブロックひずみ以外の何らかの値を採用した結果、逆に画質値が高いほど画像品質も高くなる関係にある場合は、前フレームの画質値にαを加算することになる。したがって、上記式は一般的に記述すると「処理中のコードブロックの画質値＜前フレームの画質値±α」となり、処理中のコードブロックの画質値が前フレームの画質値をαの幅以上に下回った／上回った時点で、画質値監視部１０３ｄはエントロピー符号化部１０１に指示して、当該ブロック内のパスの符号化を中止させることになる。
【００３９】
なお、ある値を「下回る」ことを「下方向に超える」、ある値を「上回る」ことを「上方向に超える」と見れば、上記は処理中のコードブロックの画質値が前フレームの画質値±αを「超えた」時点で、当該ブロック内のパスの符号化を中止させると言い換えることもできる。もっとも上記計算式は、現フレームの画像品質と前フレームの画像品質との優劣を比較するための計算式の一例に過ぎず、上記比較が可能なのであれば計算式はどんなものであってもよい。
【００４０】
図２は、この発明の実施の形態にかかる画像処理装置における、画像データの符号化処理の手順を示すフローチャートである。まず、前処理後の画像データをウェーブレット変換部１００で変換する（ステップＳ２０１）。次に、Ｅｎｔｒｏｐｙ  Ｐａｓｓ処理を行い（ステップＳ２０２）、変換後のデータをエントロピー符号化部１０１でコードブロックに分割、さらにブロック内の各ビットプレーンのビットをパスごとに符号化して符号データ記憶部１０２に保存するとともに、符号量制御部１０３のパス画質値演算部１０３ａでパスごとの画質値を計算して、バイト数とともにパス情報記憶部１０４に保存する。
【００４１】
次に、符号量制御部１０３の画質値監視部１０３ｄが、現在処理中のコードブロックの画質値と前フレームの画質値−αとを比較して、前者が後者以上でありかつ当該ブロックに未処理のパスがある限りにおいて（ステップＳ２０３：Ｎｏ、ステップＳ２０４：Ｎｏ）、ステップＳ２０２に戻り当該ブロックの符号化を続ける。一方、前者が後者を下回った場合は（ステップＳ２０３：Ｙｅｓ）、次のコードブロックについて同様の処理を行う。
【００４２】
そして、１フレーム内の全コードブロックについてステップＳ２０１〜ステップＳ２０４の処理を終えると（ステップＳ２０５：Ｙｅｓ）、Ｒａｔｅ処理を行い（ステップＳ２０６）、１フレーム分の符号量が目標符号量に最も近くなるときの画質値と、コードブロックごとに残すパスの個数とを符号量制御部１０３のフレーム画質値演算部１０３ｂで求める。なお、ここで求められた画質値は前フレーム画質値記憶部１０３ｃに保存される。次にＦｉｌｅ化処理を行い（ステップＳ２０７）、ファイル生成部１０５が、ステップＳ２０６で残すとされたパスのみを組み込んでＪＰＥＧ２０００形式のファイルを生成する。
【００４３】
従来技術の図７と比較すると、図２で特徴的なのは各コードブロックの符号化処理のループに挿入されたステップＳ２０３であり、ここで現コードブロックの画質値を監視して、前フレームの画質値−αを下回った時点でループを抜けることで、当該ブロックの符号化を途中で終了している。
【００４４】
図３は、この発明の実施の形態にかかる画像処理装置における、画像データの符号化処理のタイミングチャートである。図８に示した従来技術のそれと、各処理のタイミングそのものは同一であるが、図８ではコードブロック内のすべてのビットを符号化するのに対し、図３では画像品質への寄与度の大きいビットから順に符号化して、これ以上は符号化しておいても最終的に切り捨てられることが確からしくなった時点で、以後の処理をスキップして次のコードブロックに移るので、処理１で処理されるパスの個数が図８に比べて少なくなっている。たとえば図３中、コードブロック０については、当該ブロック内のパスのうちパス１〜パス４の４個のパスしか符号化されていない。
【００４５】
以上説明した実施の形態によれば、後段のファイル生成部１０５で最終的に切り捨てられる（ファイル内に組み入れられない）ことがほぼ確実なパスについては、その前段のエントロピー符号化部１０１による符号化がそもそもなされないので、すべてのビットを符号化していた従来技術に比べて、処理時間の短縮や回路の消費電力の節減が実現できる。
【００４６】
なお、上述した実施の形態では、前フレームについて計算された画質値を目安として各コードブロックのパスの個数を求めたが、逆に目安となる画質値は前フレームの画質値に限定されない。
【００４７】
たとえば、目標の符号量がこの程度（圧縮率がこの程度）であればフレームの画質値はこの程度になるという値を統計的に求めておき、この値±αとの比較で符号化処理をスキップするようにしてもよい。たとえば各コードブロックにつき、符号化するのは１０番目のパスまでと決めると、パス情報記憶部１０４の容量は１フレーム内のコードブロック数×１０（ワード）あれば足りることになり、実装するメモリの節減にもつながる。なお、１コードブロックあたり何個のパスが必要かは、符号量（圧縮率）だけでなく他の要因（色成分、解像度、解像度成分など）にも影響されるため、これらの要因も考慮してパスの個数を決定すればより精度が向上する（後段で必要なパスまで前段で切り捨ててしまうことがなくなる）。
【００４８】
なお、上述した実施の形態で説明した画像処理方法は、予め用意されたプログラムをコンピュータで実行することによりソフト的に実現することもできる。このプログラムはＲＯＭ、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、プロセッサによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【００４９】
（付記１）少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理装置において、
前記画像データ中の各フレームを複数のブロックに分割する分割手段と、
前記分割手段により分割されたブロック中の各ビットを少なくとも一つのビットからなるグループごとに符号化する符号化手段と、
前記符号化手段により符号化された各グループの画質値を算出する第１の画質値算出手段と、
前記第１の画質値算出手段により算出された画質値にもとづいて前記ブロックの画質値を算出する第２の画質値算出手段と、
前記第２の画質値算出手段により算出された画質値が閾値を超えた時点で、前記符号化手段による前記ブロック中の各ビットの符号化を中止させる符号化中止手段と、
を備えることを特徴とする画像処理装置。
【００５０】
（付記２）さらに、前記フレームの符号量を所定値とする場合の前記フレームの画質値を算出する第３の画質値算出手段と、
前記フレームの画質値を前記第３の画質値算出手段により算出された画質値とする場合に前記フレーム中の各ブロックに必要な前記グループの個数を算出するグループ数算出手段と、
前記各ブロックにつき、前記符号化手段により符号化されたグループのうち前記グループ数算出手段により算出された個数のグループのみを出力する出力手段と、
を備えることを特徴とする前記付記１に記載の画像処理装置。
【００５１】
（付記３）前記閾値は前フレームについて前記第３の画質値算出手段により算出された画質値であることを特徴とする前記付記２に記載の画像処理装置。
【００５２】
（付記４）前記符号化中止手段は、前フレームと現フレームとの間に差異がある場合は前記符号化手段による符号化を中止させないことを特徴とする前記付記３に記載の画像処理装置。
【００５３】
（付記５）少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理方法において、
前記画像データ中の各フレームを複数のブロックに分割する分割工程と、
前記分割工程で分割されたブロック中の各ビットを少なくとも一つのビットからなるグループごとに符号化する符号化工程と、
前記符号化工程で符号化された各グループの画質値を算出する第１の画質値算出工程と、
前記第１の画質値算出工程で算出された画質値にもとづいて前記ブロックの画質値を算出する第２の画質値算出工程と、
前記第２の画質値算出工程で算出された画質値が閾値を超えた時点で、前記符号化工程における前記ブロック中の各ビットの符号化を中止させる符号化中止工程と、
を含むことを特徴とする画像処理方法。
【００５４】
（付記６）さらに、前記フレームの符号量を所定値とする場合の前記フレームの画質値を算出する第３の画質値算出工程と、
前記フレームの画質値を前記第３の画質値算出工程で算出された画質値とする場合に前記フレーム中の各ブロックに必要な前記グループの個数を算出するグループ数算出工程と、
前記各ブロックにつき、前記符号化工程で符号化されたグループのうち前記グループ数算出工程で算出された個数のグループのみを出力する出力工程と、
を含むことを特徴とする前記付記５に記載の画像処理方法。
【００５５】
（付記７）前記閾値は前フレームについて前記第３の画質値算出工程で算出された画質値であることを特徴とする前記付記６に記載の画像処理方法。
【００５６】
（付記８）前記符号化中止工程では、前フレームと現フレームとの間に差異がある場合は前記符号化工程における符号化を中止させないことを特徴とする前記付記７に記載の画像処理方法。
【００５７】
（付記９）少なくとも一つのフレームからなる画像データをＪＰＥＧ２０００にもとづいて符号化する画像処理プログラムにおいて、
前記画像データ中の各フレームを複数のブロックに分割する分割工程と、
前記分割工程で分割されたブロック中の各ビットを少なくとも一つのビットからなるグループごとに符号化する符号化工程と、
前記符号化工程で符号化された各グループの画質値を算出する第１の画質値算出工程と、
前記第１の画質値算出工程で算出された画質値にもとづいて前記ブロックの画質値を算出する第２の画質値算出工程と、
前記第２の画質値算出工程で算出された画質値が閾値を超えた時点で、前記符号化工程における前記ブロック中の各ビットの符号化を中止させる符号化中止工程と、
をプロセッサに実行させることを特徴とする画像処理プログラム。
【００５８】
（付記１０）さらに、前記フレームの符号量を所定値とする場合の前記フレームの画質値を算出する第３の画質値算出工程と、
前記フレームの画質値を前記第３の画質値算出工程で算出された画質値とする場合に前記フレーム中の各ブロックに必要な前記グループの個数を算出するグループ数算出工程と、
前記各ブロックにつき、前記符号化工程で符号化されたグループのうち前記グループ数算出工程で算出された個数のグループのみを出力する出力工程と、
をプロセッサに実行させることを特徴とする前記付記９に記載の画像処理プログラム。
【００５９】
（付記１１）前記閾値は前フレームについて前記第３の画質値算出工程で算出された画質値であることを特徴とする前記付記１０に記載の画像処理プログラム。
【００６０】
（付記１２）前記符号化中止工程では、前フレームと現フレームとの間に差異がある場合は前記符号化工程における符号化を中止させないことを特徴とする前記付記１１に記載の画像処理プログラム。
【産業上の利用可能性】
【００６１】
以上のように、本発明にかかる画像処理装置、画像処理方法、および画像処理プログラムは画像データの符号量制御に有用であり、特にすべてのデータを符号化しておいても結局無駄になってしまう（最終的には破棄されてしまう）データが多い場合に適している。
【図面の簡単な説明】
【００６２】
【図１】この発明の実施の形態にかかる画像処理装置の構成を機能的に示す説明図である。
【図２】この発明の実施の形態にかかる画像処理装置における、画像データの符号化処理の手順を示すフローチャートである。
【図３】この発明の実施の形態にかかる画像処理装置における、画像データの符号化処理のタイミングチャートである。
【図４】従来のＪＰＥＧ２０００エンコーダの構成を機能的に示す説明図である。
【図５】従来のＪＰＥＧ２０００エンコーダにおいて、各パスについて計算される画質値とバイト数の一例を示す説明図である。
【図６】従来のＪＰＥＧ２０００エンコーダにおける、目標符号量を達成するためのフレーム画質値の計算の原理を概念的に示す説明図である。
【図７】従来のＪＰＥＧ２０００エンコーダにおける、画像データの符号化処理の手順を示すフローチャートである。
【図８】従来のＪＰＥＧ２０００エンコーダにおける、画像データの符号化処理のタイミングチャートである。
【図９】従来のＪＰＥＧ２０００において、１コードブロックあたり平均的に何個のパスが符号化後に破棄されていたかの一例を示す図表である。
【図１０】図９中の各個数を圧縮率１００％のときに対する比で示した図表である。
【符号の説明】
【００６３】
１００，４００  ウェーブレット変換部
１０１，４０１  エントロピー符号化部
１０２，４０２  符号データ記憶部
１０３，４０３  符号量制御部
１０３ａ，４０３ａ  パス画質値演算部
１０３ｂ，４０３ｂ  フレーム画質値演算部
１０３ｃ  前フレーム画質値記憶部
１０３ｄ  画質値監視部
１０４，４０４  パス情報記憶部
１０５，４０５  ファイル生成部
１０６  フレーム間差異検出部
【図１】
2006115193.tif 000003
【図２】
2006115193.tif 000004
【図３】
2006115193.tif 000005
【図４】
2006115193.tif 000006
【図５】
2006115193.tif 000007
【図６】
2006115193.tif 000008
【図７】
2006115193.tif 000009
【図８】
2006115193.tif 000010
【図９】
2006115193.tif 000011
【図１０】
2006115193.tif 000012