(57)【特許請求の範囲】
【請求項１】
入力画像データから所定数のピクセルよりなるインデックスビットマップを生成するインデックス作成部と、
前記インデックスビットマップに対して、第一主成分基底ベクトルとの内積を演算して第一主成分を算出し、第二主成分基底ベクトルとの内積を演算して第二主成分を算出する内積演算部と、
前記第一主成分及び前記第二主成分を用いて辞書テーブルを検索し、前記第一主成分及び前記第二主成分に最も近いレコードを得る比較部と、
前記レコードに含まれている高周波成分と前記インデックスビットマップを用いて超解像ビットマップを算出する超解像ビットマップ生成部と
を具備する超解像画像処理装置。
【請求項２】
前記比較部は、前記辞書テーブルを前記第一主成分で絞り込み検索した後、前記第二主成分でレコードを特定する、
請求項１記載の超解像画像処理装置。
【請求項３】
一時テーブルと、
サンプル画像ファイルから所定のアドレスのピクセルを含む一つの範囲に含まれる複数のピクセルを分割ビットマップとして取り出した後、前記分割ビットマップを四以上の数の領域である分解ビットマップとして等分して、複数の前記分解ビットマップをそれぞれ前記一時テーブルの分解ビットマップ格納フィールド群に格納する分解処理部と、
前記分解ビットマップ格納フィールド群に格納されている複数の前記分解ビットマップに対して所定の代数変換処理を施して、得られた演算結果である変換ビットマップをそれぞれ前記一時テーブルの変換ビットマップ格納フィールド群に格納する代数変換処理部と、
前記変換ビットマップ格納フィールド群に格納されている複数の前記変換ビットマップからインデックスとなるデータ列に対して主成分分析を実行して、超解像画像処理装置に用いる第一主成分基底ベクトルと第二主成分基底ベクトルを算出する主成分分析処理部と、
前記一時テーブルの各レコードの前記インデックスと前記第一主成分基底ベクトルを内積演算して前記インデックスの第一主成分を算出して前記一時テーブルの第一主成分フィールドに格納すると共に、前記インデックスと前記第二主成分基底ベクトルを内積演算して前記インデックスの第二主成分を算出して前記一時テーブルの第二主成分フィールドに格納する内積演算部と、
前記一時テーブルのレコードを前記第一主成分フィールドの値及び前記第二主成分フィールドの値でグルーピングする頻度分割処理部と、
前記頻度分割処理部によってグルーピングされた前記一時テーブルの複数のレコードに含まれる各スカラ値に対して平均値を算出して、前記超解像画像処理装置に用いる辞書テーブルを作成する平均値演算部と
を具備する超解像画像処理用辞書作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、超解像画像処理装置及び超解像画像処理用辞書作成装置に適用して好適な技術に関する。
より詳細には、低解像度の原画像から高解像度の画像を出力する、超解像画像処理装置と、この超解像画像処理装置が利用する辞書テーブルを作成する超解像画像処理用辞書作成装置に関する。
【背景技術】
【０００２】
超解像技術とは、低解像度の原画像から高解像度の画像を生成することで、違和感の少ない拡大画像を得るための技術である。この超解像技術は、テレビやパソコン等といった画像閲覧装置の高解像度化に伴い、注目され、一部の民生機器等で採用されている。
例えば、携帯電話に付属する比較的低解像度のカメラで撮影した画像を高解像度のディスプレイで閲覧する場合や、アナログテレビ時代に作成された低解像度の動画コンテンツを高解像度のテレビで閲覧する場合、或は低解像度の動画ストリーミングデータを高解像度のディスプレイで閲覧する場合等に、この超解像技術が用いられる。
更には、監視カメラ等の撮影画像データを高詳細化することで、社会基盤の安全性向上に寄与できる可能性もある。
【０００３】
前述のように、超解像技術は違和感のない拡大画像を得るための技術であるが、これは転じて「失われた高周波成分を類推する」技術である。
例えば、ある画像データのピクセルサイズを縦横半分ずつ、１／４倍に縮小する場合、隣り合う二つのピクセルの平均値を算出して、一つのピクセルに変換する。この平均値演算は、積分の一種といえる。そして、ピクセルの羅列を信号として捉えた場合、平均値演算を行ってピクセルを間引くことは、信号の高周波成分を除去することと等価である。
逆に、ある画像データのピクセルサイズを縦横４倍ずつ、４倍に拡大する場合、一番簡単な方法としては、隣り合う二つのピクセルの中間値を算出して、間のピクセルを得る方法であるが、この算出方法では失われた高周波成分が再現されない。このため、中間値演算による拡大画像はあたかもピンぼけのような、境界線が曖昧な画像になる。
つまり、超解像技術は、ピクセルのパターンを解析して、適切と思われるピクセルを算出し、元画像の隣接するピクセル同士の間に埋めることで、「失われた高周波成分を類推する」技術である。
【０００４】
発明者は、超解像画像処理をリアルタイムで処理できるための技術を開発している。より詳細には、画像データを位置とスケールで指定される小さな波の重ね合わせに分解し解析する手法である「モルフォロジカル・ウェーブレット変換」を、整数であるマックスプラス代数で記述することで、全体の見通しをよくすると共に数式を簡素化した「ＭＰウェーブレット変換」を開発している。ＭＰウェーブレット変換の概要については非特許文献１に開示されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】「2次元Max-Plus ウェーブレット変換・逆変換実証回路の作製」小野  雅晃、延原  肇［２０１１年６月１０日検索］、インターネット＜URL:http://www.tech.tsukuba.ac.jp/2010/report/n03_report2010.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１に開示されるウェーブレット変換・逆変換実証回路は、ＭＰウェーブレット変換の再現性を確認するための実験であり、実応用に必要な技術的課題を解決出来ていなかった。それは、データ量及び計算量を減らすことである。
【０００７】
本発明はかかる課題を解決し、少ないハードウェアリソースで高速に処理できる、極めて実用的な超解像画像処理装置と、この超解像画像処理装置が利用する辞書テーブルを作成する超解像画像処理用辞書作成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の超解像画像処理装置は、入力画像データから所定数のピクセルよりなるインデックスビットマップを生成するインデックス作成部と、インデックスビットマップに対して、第一主成分基底ベクトルとの内積を演算して第一主成分を算出し、第一主成分基底ベクトルとの内積を演算して第二主成分を算出する内積演算部と、第一主成分及び第二主成分を用いて辞書テーブルを検索し、第一主成分及び第二主成分に最も近いレコードを得る比較部と、レコードに含まれている高周波成分とインデックスビットマップを用いて超解像ビットマップを算出する超解像ビットマップ生成部とを具備する。
【０００９】
上記課題を解決するために、本発明の超解像画像処理装置は、入力画像データから所定数のピクセルよりなるインデックスビットマップを生成するインデックス作成部と、インデックスビットマップに対して、第一主成分基底ベクトルとの内積を演算して第一主成分を算出し、第二主成分基底ベクトルとの内積を演算して第二主成分を算出する内積演算部と、第一主成分及び第二主成分を用いて辞書テーブルを検索し、第一主成分及び第二主成分に最も近いレコードを得る比較部と、レコードに含まれている高周波成分とインデックスビットマップを用いて超解像ビットマップを算出する超解像ビットマップ生成部とを具備する。
【００１０】
汎用性の高い超解像画像処理を短時間に実行するため、本発明の超解像画像処理装置は、処理対象とする画像をシーンに分けて、そのシーンに適合する辞書テーブルを用いて、失われた高周波成分を辞書に対するツリー検索にて類推する。
辞書テーブルは検索を高速化するため、主成分分析を用いて、検索キーとなるインデックスビットマップをスカラ値である第一主成分及び第二主成分に変換すると共に、第一主成分と第二主成分とでグルーピングを施し、その平均値を算出することで、辞書テーブルの必要レコード数が大幅に低減されている。
【発明の効果】
【００１１】
本発明により、少ないハードウェアリソースで高速に処理できる、極めて実用的な超解像画像処理装置と、この超解像画像処理装置が利用する辞書テーブルを作成する超解像画像処理用辞書作成装置を提供できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態の例である、超解像画像処理装置と辞書作成装置の概略図である。
【図２】辞書作成装置の機能ブロック図である。
【図３】一時テーブルのフィールド構成図である。
【図４】辞書作成装置による辞書作成処理のフローチャートである。
【図５】辞書作成装置が実行する辞書作成処理による、画像データから辞書テーブルが生成される過程を示す概要図である。
【図６】辞書作成装置が実行する辞書作成処理による、画像データから辞書テーブルが生成される過程を示す概要図である。
【図７】分割ビットマップと分解ビットマップとの関係を示す概略図である。
【図８】分割ビットマップと分解ビットマップとの関係を示す概略図である。
【図９】辞書テーブルの構成を示す概略図である。
【図１０】超解像画像処理装置の機能ブロック図である。
【図１１】超解像画像処理装置による超解像画像処理のフローチャートである。
【図１２】辞書作成装置による辞書検索及びＭＰウェーブレット逆変換処理のフローチャートである。
【図１３】辞書作成装置による辞書検索及びＭＰウェーブレット逆変換処理のフローチャートである。
【図１４】比較部が実行する、辞書テーブルのツリー検索の仕組みを示す概略図である。
【発明を実施するための形態】
【００１３】
［全体構成］
図１は、本発明の実施形態の例である、超解像画像処理装置と辞書作成装置の概略図である。
超解像画像処理装置１０１は、デジタルカメラ１０２や画像ファイル１０３等から、縦ｍピクセル×横ｎピクセルの入力画像データ１０４を受け取ると、縦ｋ・ｍピクセル×横ｌ・ｎピクセルの出力画像データ１０５を生成する。ここで、ｋ、ｌ、ｍ及びｎは２以上の自然数である。したがって、超解像画像処理装置１０１は、最低限、縦２倍及び横２倍の、４倍に拡大した画像を生成する。
超解像画像処理装置１０１が処理する画像は、静止画像であっても動画像であってもよい。本実施形態では説明を簡単にするため、静止画像を中心に説明する。
【００１４】
超解像画像処理装置１０１は、入力画像データ１０４に対して超解像画像処理を施して出力画像データ１０５を生成する際、失われた高周波成分を類推するために、辞書テーブル１０６と、第一主成分基底ベクトル１０７と、第二主成分基底ベクトル１０８を用いる。これらのデータは辞書作成装置１０９によって生成され、予め超解像画像処理装置１０１に組み込まれる。
辞書作成装置１０９は、一つ以上のサンプル画像ファイル１１０を受け取ると、後述する所定の演算処理を行うことで、辞書テーブル１０６と、第一主成分基底ベクトル１０７と、第二主成分基底ベクトル１０８を生成する。
ここで、辞書テーブル１０６、第一主成分基底ベクトル１０７及び第二主成分基底ベクトル１０８は、これら三つで一つの組である。これ以降、辞書テーブル１０６、第一主成分基底ベクトル１０７及び第二主成分基底ベクトル１０８をまとめて「辞書テーブル等」と呼ぶ。
【００１５】
図１では、超解像画像処理装置１０１の具体的な実装形態について明記していないが、超解像画像処理装置１０１は画像データを処理する演算装置であるので、如何様にも実装可能である。
例えば、周知のパソコンにインストールするプログラムとして実現することができる。その際、辞書テーブル等はハードディスク装置等の不揮発性ストレージに格納されるであろう。
また、デジタルカメラ１０２のファームウェアとして、デジタルカメラ１０２に組み込むこともできる。
更には、ＦＰＧＡ（Field Programmable Gate Array）等のＰＬＤ（programmable logic device）やＡＳＩＣ（Application Specific Integrated Circuit）等を用いて実現することもできる。特に本実施形態の超解像画像処理装置１０１は、そのベースとなるＭＰウェーブレット変換が整数の加減算及び比較演算のみで構成されるため、これらハードウェアの実装面積は極めて少なく済む。
【００１６】
図１では、辞書作成装置１０９の具体的な実装形態について明記していないが、辞書作成装置１０９はサンプル画像ファイル１１０から辞書テーブル等を生成する演算装置であるので、如何様にも実装可能である。辞書作成装置１０９は、例えばパソコン等にインストールされて実行されるプログラムで実現され、超解像画像処理装置１０１が製造される工場等の生産現場に設けられ、シーンに応じた辞書テーブル等を生成する。
シーンとは、画像の特色である。例えば風景の撮影画像であったり、医療用レントゲン画像であったり、或はアニメーション等である。風景の撮影画像の場合、そのピクセルパターンには中間色や中間輝度が多く現れる。一方、アニメーションの画像の場合、輪郭が明確であり、色彩や輝度がある境界で急激に変化する（エッジの効いた）ピクセルパターンが多く見受けられる。このように、画像にはそのシーンに応じた特色がある。そこで、サンプル画像ファイル１１０はシーンに応じた画像が集められ、辞書テーブル等の基となる。どのようなシーンに対しても最適な超解像処理ができる万能な辞書テーブル等を作成することは困難であるが、シーンに最適化した辞書テーブル等を作成することで、超解像画像処理装置１０１が適用されるシーンに適した辞書テーブル等を与えることができる。勿論、複数の辞書テーブル等を用意して、超解像画像処理装置１０１がシーンに応じて辞書テーブル等を切り替えることで、シーンに最適な超解像画像処理を実現することができる。また、シーンを細分化すればするほど、そのシーンにより適合した辞書テーブル等を作成することができ、以てより再現度の高い超解像画像処理を実現することができる。
【００１７】
辞書テーブル等、つまり辞書テーブル１０６、第一主成分基底ベクトル１０７及び第二主成分基底ベクトル１０８は、その名称から明らかなように、周知の主成分分析を経て形成されている。このため、辞書テーブル１０６と、第一主成分基底ベクトル１０７及び第二主成分基底ベクトル１０８は密接な関係を有する。この関係の詳細は、辞書作成装置１０９の説明にて後述する。
【００１８】
なお、説明を容易にするために、これ以降の実施形態の説明では、辞書作成装置１０９及び超解像画像処理装置１０１が取り扱う画像は白黒の静止画像であり、一つのピクセルは８ビットであるものとする。このため、一つのピクセルは０〜２５５の輝度データである。
【００１９】
［辞書作成装置１０９：全体構成］
図２は、辞書作成装置１０９の機能ブロック図である。
図３は、一時テーブルのフィールド構成図である。
一以上のサンプル画像ファイル１１０は、分解処理部２０１によって所定の大きさの分割ビットマップに分解されて、一時テーブル２０２の「分解ビットマップ−１」フィールド、「分解ビットマップ−２」フィールド、「分解ビットマップ−３」フィールド及び「分解ビットマップ−４」フィールドに格納される。
次に、代数変換処理部ともいえるＭＰウェーブレット変換部２０３は、一時テーブル２０２の「分解ビットマップ−１」フィールドのデータを読み込み、ＭＰウェーブレット変換を施して、得られた変換ビットマップを「変換ビットマップ−１」フィールドに格納する。
同様に、ＭＰウェーブレット変換部２０３は、一時テーブル２０２の「分解ビットマップ−２」フィールドのデータを読み込み、ＭＰウェーブレット変換を施して、得られた変換ビットマップを「変換ビットマップ−２」フィールドに格納する。
同様に、ＭＰウェーブレット変換部２０３は、一時テーブル２０２の「分解ビットマップ−３」フィールドのデータを読み込み、ＭＰウェーブレット変換を施して、得られた変換ビットマップを「変換ビットマップ−３」フィールドに格納する。
同様に、ＭＰウェーブレット変換部２０３は、一時テーブル２０２の「分解ビットマップ−４」フィールドのデータを読み込み、ＭＰウェーブレット変換を施して、得られた変換ビットマップを「変換ビットマップ−４」フィールドに格納する。
【００２０】
次に、並べ替え処理部２０４は、一時テーブル２０２の「変換ビットマップ−１」フィールド、「変換ビットマップ−２」フィールド、「変換ビットマップ−３」フィールド及び「変換ビットマップ−４」フィールドのデータを読み込み、並べ替え処理を施して、夫々「インデックス」フィールド、「第一高周波」フィールド、「第二高周波」フィールド及び「第三高周波」フィールドに格納する。
次に、主成分分析処理部２０５は、一時テーブル２０２の全レコードの「インデックス」フィールドのデータを読み込み、周知の主成分分析を行い、第一主成分基底ベクトル１０７と、第二主成分基底ベクトル１０８を算出する。
次に、内積演算部２０６は、一時テーブル２０２の「インデックス」フィールドのデータと、第一主成分基底ベクトル１０７とを内積演算し、得られた第一主成分データを「第一主成分」フィールドに格納する。
同様に、内積演算部２０６は、一時テーブル２０２の「インデックス」フィールドのデータと、第二主成分基底ベクトル１０８とを内積演算し、得られた第二主成分データを「第二主成分」フィールドに格納する。
【００２１】
次に、頻度分割処理部２０７は、一時テーブル２０２の全てのレコードについて、「第一主成分」フィールドのデータでソートした上で、予め定めたレコード数でグルーピングを施し、同一グループについて番号を付す。この番号は、一時テーブル２０２の「第一主成分グループ番号」フィールドに格納される。
更に頻度分割処理部２０７は、一時テーブル２０２の「第一主成分グループ番号」フィールドの値が等しいレコードについて、「第二主成分」フィールドのデータでソートした上で、予め定めたレコード数でグルーピングを施し、同一グループについて番号を付す。この番号は、一時テーブル２０２の「第二主成分グループ番号」フィールドに格納される。
【００２２】
最後に、平均値演算部２０８は、一時テーブル２０２の「第一主成分グループ番号」フィールドの値と「第二主成分グループ番号」フィールドの値が等しいレコードについて、「第一主成分」フィールドの値の平均値を算出して、辞書テーブル１０６の「第一主成分」フィールドに格納する。
同様に、「第二主成分」フィールドの値の平均値を算出して、辞書テーブル１０６の「第二主成分」フィールドに格納する。
同様に、「第一高周波」フィールドに格納される各スカラ値毎にそれぞれ平均値を算出して、辞書テーブル１０６の「第一高周波」フィールドに格納する。
同様に、「第二高周波」フィールドに格納される各スカラ値毎にそれぞれ平均値を算出して、辞書テーブル１０６の「第二高周波」フィールドに格納する。
同様に、「第三高周波」フィールドに格納される各スカラ値毎にそれぞれ平均値を算出して、辞書テーブル１０６の「第三高周波」フィールドに格納する。
【００２３】
以上説明したように、辞書作成装置１０９は、サンプル画像ファイル１１０から処理対象とする分割ビットマップを得て、これを複数の分解ビットマップに分けて一時テーブル２０２のレコードに格納した上で、ＭＰウェーブレット変換部２０３、並べ替え処理部２０４、主成分分析処理部２０５、内積演算部２０６、そして頻度分割処理部２０７と、順番に処理を施すことで、一時テーブル２０２の各フィールドに演算結果を格納する。そして最後に平均値演算部２０８によって、一時テーブル２０２よりレコード数の少ない辞書テーブル１０６を作成する。
【００２４】
［辞書作成装置１０９：フローチャート］
図４は、辞書作成装置１０９による辞書作成処理のフローチャートである。
処理を開始すると（Ｓ４０１）、分解処理部２０１はサンプル画像ファイル１１０を読み込み、ｋｍ×ｌｎピクセルの分割ビットマップに分割する。更にこの分割ビットマップを、ｍ×ｎピクセルの分解ビットマップに分解して、一時テーブル２０２の「分解ビットマップ−１」フィールド、「分解ビットマップ−２」フィールド、…「分解ビットマップ−（ｋ×ｌ）」フィールドに格納する（Ｓ４０２）。
次に、ＭＰウェーブレット変換部２０３は、一時テーブル２０２の分解ビットマップが格納されているフィールドのデータを読み込み、ＭＰウェーブレット変換を施して、得られた変換ビットマップを変換ビットマップを格納するフィールドに格納する。この動作をｋ×ｌ回繰り返す（Ｓ４０３）。
【００２５】
次に、並べ替え処理部２０４は、一時テーブル２０２の「変換ビットマップ−１」フィールド、「変換ビットマップ−２」フィールド、…「変換ビットマップ−（ｋ×ｌ）」フィールドのデータを読み込み、並べ替え処理を施して、夫々「インデックス」フィールド、「第一高周波」フィールド、「第二高周波」フィールド…「第（ｋ×ｌ）高周波」フィールドに格納する（Ｓ４０４）。
次に、主成分分析処理部２０５は、一時テーブル２０２の全レコードの「インデックス」フィールドのデータを読み込み、周知の主成分分析を行い、第一主成分基底ベクトル１０７と、第二主成分基底ベクトル１０８を算出する（Ｓ４０５）。
次に、内積演算部２０６は、一時テーブル２０２の「インデックス」フィールドのデータと第一主成分基底ベクトル１０７とを内積演算して、得られた第一主成分データを「第一主成分」フィールドに格納し、一時テーブル２０２の「インデックス」フィールドのデータと第二主成分基底ベクトル１０８とを内積演算して、得られた第二主成分データを「第二主成分」フィールドに格納する（Ｓ４０６）。
【００２６】
次に、頻度分割処理部２０７は、一時テーブル２０２の全てのレコードについて「第一主成分」フィールドのデータでソートした上で、予め定めたレコード数でグルーピングを施し、同一グループについて番号を付す（Ｓ４０７）。この番号は、一時テーブル２０２の「第一主成分グループ番号」フィールドに格納される。
更に頻度分割処理部２０７は、一時テーブル２０２の「第一主成分グループ番号」フィールドの値が等しいレコードについて、「第二主成分」フィールドのデータでソートした上で、予め定めたレコード数でグルーピングを施し、同一グループについて番号を付す（Ｓ４０８）。この番号は、一時テーブル２０２の「第二主成分グループ番号」フィールドに格納される。
【００２７】
最後に、平均値演算部２０８は、一時テーブル２０２の「第一主成分グループ番号」フィールドの値と「第二主成分グループ番号」フィールドの値が等しいレコードについて、「第一主成分」フィールドの値の平均値を算出して、辞書テーブル１０６の「第一主成分」フィールドに格納する。
同様に、「第二主成分」フィールドの値の平均値を算出して、辞書テーブル１０６の「第二主成分」フィールドに格納する。
同様に、「第一高周波」フィールドに格納される各スカラ値毎にそれぞれ平均値を算出して、辞書テーブル１０６の「第一高周波」フィールドに格納する。
同様に、「第二高周波」フィールドに格納される各スカラ値毎にそれぞれ平均値を算出して、辞書テーブル１０６の「第二高周波」フィールドに格納する。
同様に、「第（ｋ×ｌ−１）高周波」フィールドに格納される各スカラ値毎にそれぞれ平均値を算出して、辞書テーブル１０６の「第（ｋ×ｌ−１）高周波」フィールドに格納する（Ｓ４０９）。そして、一連の処理を終了する（Ｓ４１０）。
【００２８】
［辞書作成装置１０９：データ処理の詳細］
図５（ａ）、（ｂ）、（ｃ）、（ｄ）及び（ｅ）と、図６（ｆ）及び（ｇ）は、辞書作成装置１０９が実行する辞書作成処理による、画像データから辞書テーブル１０６が生成される過程を示す概要図である。なお、図５及び図６では説明を簡単にするため、ｋ、ｌ、ｍ及びｎは「２」に設定して説明する。
先ず、分解処理部２０１は図５（ａ）に示す、サンプル画像ファイル１１０から縦４ピクセル×横４ピクセルよりなる、１６ピクセルの分割ビットマップ５０１を抜き出す。これが一時テーブル２０２の１レコード分に相当する。なお、分解処理部２０１はサンプル画像ファイル１１０から1ピクセルずつずらして分割ビットマップ５０１を抜き出して、一時テーブル２０２のレコードとして追記する。
次に、分解処理部２０１は図５（ｂ）に示すように、分割ビットマップ５０１を縦と横に二等分して、合計４個の分解ビットマップ５０２ａ、５０２ｂ、５０２ｃ及び５０２ｄを作成する。そして、この分解ビットマップ５０２ａ、５０２ｂ、５０２ｃ及び５０２ｄが、分解処理部２０１によって一時テーブル２０２のフィールドとして格納される。
「分解ビットマップ−１」フィールドには、分割ビットマップ５０１の「１、２、５、６」番目のピクセルである分解ビットマップ５０２ａが格納される。
「分解ビットマップ−２」フィールドには、分割ビットマップ５０１の「３、４、７、８」番目のピクセルである分解ビットマップ５０２ｂが格納される。
「分解ビットマップ−３」フィールドには、分割ビットマップ５０１の「９、１０、１３、１４」番目のピクセルである分解ビットマップ５０２ｃが格納される。
「分解ビットマップ−４」フィールドには、分割ビットマップ５０１の「１１、１２、１５、１６」番目のピクセルである分解ビットマップ５０２ｄが格納される。
こうして、一時テーブル２０２の「分解ビットマップ−１」フィールド、「分解ビットマップ−２」フィールド、「分解ビットマップ−３」フィールド及び「分解ビットマップ−４」フィールドに、分解処理部２０１による分解処理されたデータ列が記録される。
【００２９】
次に、ＭＰウェーブレット変換部２０３は図５（ｃ）に示すように、分解ビットマップ５０２にＭＰウェーブレット変換を施す。
今、分解ビットマップ５０２が「ｘ、ｙ、ｚ、ｗ」というピクセルで構成されている場合、ＭＰウェーブレット変換は、以下の（１）式で変換ビットマップ５０３に変換する。
【００３０】
ａ＝ｍｉｎ（ｘ，ｙ，ｚ，ｗ）
ｈ＝ｙ−ｘ
ｖ＝ｚ−ｘ
ｄ＝ｗ−ｘ    （１）
【００３１】
したがって、ＭＰウェーブレット変換部２０３は図５（ｄ）に示すように、分割ビットマップ５０１の「１、２、５、６」番目のピクセルよりなる「分解ビットマップ−１」フィールドに格納されている分解ビットマップ５０２ａのデータを読み込み、「ａ１、ｈ１、ｖ１、ｄ１」という「変換ビットマップ−１」データを作成する。
同様に、ＭＰウェーブレット変換部２０３は、分割ビットマップ５０１の「３、４、７、８」番目のピクセルよりなる「分解ビットマップ−２」フィールドに格納されている分解ビットマップ５０２ｂのデータを読み込み、「ａ２、ｈ２、ｖ２、ｄ２」という「変換ビットマップ−２」データを作成する。
同様に、ＭＰウェーブレット変換部２０３は、分割ビットマップ５０１の「９、１０、１３、１４」番目のピクセルよりなる「分解ビットマップ−３」フィールドに格納されている分解ビットマップ５０２ｃのデータを読み込み、「ａ３、ｈ３、ｖ３、ｄ３」という「変換ビットマップ−３」データを作成する。
同様に、ＭＰウェーブレット変換部２０３は、分割ビットマップ５０１の「１１、１２、１５、１６」番目のピクセルよりなる「分解ビットマップ−４」フィールドに格納されている分解ビットマップ５０２ｄのデータを読み込み、「ａ４、ｈ４、ｖ４、ｄ４」という「変換ビットマップ−３」データを作成する。
こうして、一時テーブル２０２の「変換ビットマップ−１」フィールド、「変換ビットマップ−２」フィールド、「変換ビットマップ−３」フィールド及び「変換ビットマップ−４」フィールドに、ＭＰウェーブレット変換部２０３による演算結果の値であるデータ列が記録される。
【００３２】
次に、並べ替え処理部２０４は図５（ｅ）に示すように、「変換ビットマップ−１」フィールドのデータ、「変換ビットマップ−２」フィールドのデータ、「変換ビットマップ−３」フィールドのデータ及び「変換ビットマップ−４」フィールドのデータから、各々の同じ位置に配置されているスカラ値を集めて並べ替えを行う。
具体的には、「変換ビットマップ−１」フィールドのデータの「ａ１」と、「変換ビットマップ−２」フィールドのデータの「ａ２」と、「変換ビットマップ−３」フィールドのデータの「ａ３」と、「変換ビットマップ−４」フィールドのデータの「ａ４」とを集めて、「ａ１、ａ２、ａ３、ａ４」よりなる「インデックス」を作成し、一時テーブル２０２の「インデックス」フィールドに格納する。
同様に、「変換ビットマップ−１」フィールドのデータの「ｈ１」と、「変換ビットマップ−２」フィールドのデータの「ｈ２」と、「変換ビットマップ−３」フィールドのデータの「ｈ３」と、「変換ビットマップ−４」フィールドのデータの「ｈ４」とを集めて、「ｈ１、ｈ２、ｈ３、ｈ４」よりなる「第一高周波」を作成し、一時テーブル２０２の「第一高周波」フィールドに格納する。
同様に、「変換ビットマップ−１」フィールドのデータの「ｖ１」と、「変換ビットマップ−２」フィールドのデータの「ｖ２」と、「変換ビットマップ−３」フィールドのデータの「ｖ３」と、「変換ビットマップ−４」フィールドのデータの「ｖ４」とを集めて、「ｖ１、ｖ２、ｖ３、ｖ４」よりなる「第二高周波」を作成し、一時テーブル２０２の「第二高周波」フィールドに格納する。
同様に、「変換ビットマップ−１」フィールドのデータの「ｄ１」と、「変換ビットマップ−２」フィールドのデータの「ｄ２」と、「変換ビットマップ−３」フィールドのデータの「ｄ３」と、「変換ビットマップ−４」フィールドのデータの「ｄ４」とを集めて、「ｄ１、ｄ２、ｄ３、ｄ４」よりなる「第三高周波」を作成し、一時テーブル２０２の「第三高周波」フィールドに格納する。
こうして、一時テーブル２０２の「インデックス」フィールド、「第一高周波」フィールド、「第二高周波」フィールド及び「第三高周波」フィールドに、並べ替え処理部２０４による並べ替え処理されたデータ列が記録される。
【００３３】
次に、主成分分析処理部２０５は、一時テーブル２０２の全レコードの「インデックス」フィールドを読み込み、主成分分析を行い、第一主成分基底ベクトル１０７と、第二主成分基底ベクトル１０８を算出する。
次に、内積演算部２０６は、一時テーブル２０２の「インデックス」フィールドのデータと、第一主成分基底ベクトル１０７とを内積演算し、得られた第一主成分データを「第一主成分」フィールドに格納する。
同様に、内積演算部２０６は、一時テーブル２０２の「インデックス」フィールドのデータと、第二主成分基底ベクトル１０８とを内積演算し、得られた第二主成分データを「第二主成分」フィールドに格納する。
こうして、一時テーブル２０２の「第一主成分」フィールド及び「第二主成分」フィールドに、内積演算部２０６による演算結果のスカラ値が記録される。
【００３４】
次に、頻度分割処理部２０７は、一時テーブル２０２の全てのレコードについて、「第一主成分」フィールドのデータでソートした上で、予め定めたレコード数でグルーピングを施し、同一グループについて番号を付す。この番号は、一時テーブル２０２の「第一主成分グループ番号」フィールドに格納される。
更に頻度分割処理部２０７は、一時テーブル２０２の「第一主成分グループ番号」フィールドの値が等しいレコードについて、「第二主成分」フィールドのデータでソートした上で、予め定めたレコード数でグルーピングを施し、同一グループについて番号を付す。この番号は、一時テーブル２０２の「第二主成分グループ番号」フィールドに格納される。
こうして、一時テーブル２０２の「第一主成分グループ番号」フィールド及び「第二主成分グループ番号」フィールドに、頻度分割処理部２０７によるグループ番号が記録される。
【００３５】
最後に、平均値演算部２０８は、図６（ｆ）に示すように、一時テーブル２０２の「第一主成分グループ番号」フィールドの値と「第二主成分グループ番号」フィールドの値が等しいレコードについて、「第一主成分」フィールドの値の平均値を算出して、辞書テーブル１０６の「第一主成分」フィールドに格納する。
同様に、「第二主成分」フィールドの値の平均値を算出して、辞書テーブル１０６の「第二主成分」フィールドに格納する。
同様に、「第一高周波」フィールドに格納される「ｈ１」データの平均値を算出し、「ｈ２」データの平均値を算出し、「ｈ３」データの平均値を算出し、「ｈ４」データの平均値を算出して、これら「ｈ１、ｈ２、ｈ３、ｈ４」の平均値を辞書テーブル１０６の「第一高周波」フィールドに格納する。
同様に、「第二高周波」フィールドに格納される「ｖ１」データの平均値を算出し、「ｖ２」データの平均値を算出し、「ｖ３」データの平均値を算出し、「ｖ４」データの平均値を算出して、これら「ｖ１、ｖ２、ｖ３、ｖ４」の平均値を辞書テーブル１０６の「第二高周波」フィールドに格納する。
同様に、「第三高周波」フィールドに格納される「ｄ１」データの平均値を算出し、「ｄ２」データの平均値を算出し、「ｄ３」データの平均値を算出し、「ｄ４」データの平均値を算出して、これら「ｄ１、ｄ２、ｄ３、ｄ４」の平均値を辞書テーブル１０６の「第三高周波」フィールドに格納する。
こうして、図６（ｇ）に示すように、平均値である「第一主成分」フィールドと、平均値である「第二主成分」フィールドと、平均値の集合である「第一高周波」フィールドと、平均値の集合である「第二高周波」フィールドと、平均値の集合である「第三高周波」フィールドよりなる、辞書テーブルのレコードが作成される。
【００３６】
図７（ａ）、（ｂ）及び（ｃ）と、図８（ｄ）は、分割ビットマップ５０１と分解ビットマップ５０２との関係を示す概略図である。図７及び図８では、一例としてｋ＝２、ｌ＝４、ｍ＝３、ｎ＝２として説明する。
図７（ａ）に示すように、分割ビットマップ５０１は、縦が２×３＝６ピクセル、横が２×４＝８ピクセルの、合計４８ピクセルで構成される。
分解ビットマップ５０２は、縦（＝ｍ）が３ピクセル、横（＝ｎ）が２ピクセルの、合計６ピクセルで構成される。分解ビットマップ５０２は（ｘ、ｙ、ｚ、ｗ、ｕ、ｔ）というピクセルで構成される。
この分解ビットマップ５０２は、図７（ｂ）に示すように、ＭＰウェーブレット変換部２０３によって、縦（＝ｍ）が３個、横（＝ｎ）が２個の、合計６個の変換ビットマップ５０３に変換される。変換ビットマップ５０３の数は分解ビットマップ５０２の数と等しい。図７（ａ）の場合、分解ビットマップ５０２が８個あるので、図７（ｃ）に示すように変換ビットマップ５０３は８個生成される。
次に、図８（ｄ）に示すように、並べ替え処理部２０４は、変換ビットマップ５０３の同じ位置に配置されているデータを集めて、インデックス、第一高周波、第二高周波、第三高周波、第四高周波、及び第五高周波を作成する。これらのデータは、縦２個（＝ｋ）、横４個（＝ｌ）の要素で構成され、６個（＝ｍ×ｎ）形成される。
【００３７】
［辞書作成装置１０９：辞書テーブル１０６の構成］
図９は、辞書テーブル１０６の構成を示す概略図である。
辞書テーブル１０６のフィールド構成は図６（ｇ）に示したように、平均値である「第一主成分」フィールドと、平均値である「第二主成分」フィールドと、平均値の集合である「第一高周波」フィールドと、平均値の集合である「第二高周波」フィールドと、平均値の集合である「第三高周波」フィールドよりなる。
今、「第一主成分」フィールドの値をｆ（ｉ）（ｉは１以上且つ辞書テーブル１０６の全レコード数までの自然数）とし、「第二主成分」フィールドの値をｇｉ（ｊ）（ｊは１以上の自然数）とすると、辞書テーブル１０６には「第一主成分」フィールドの値ｆ（ｉ）が等しい複数のレコードが存在する。そして、それらのレコードは「第二主成分」フィールドの値でユニークである（一意性を有する）。
「第一主成分」フィールドの値と、「第二主成分」フィールドの値は、後述する超解像画像処理装置１０１がツリー検索を実行するための検索キーである。
【００３８】
［超解像画像処理装置１０１：全体構成］
図１０は、超解像画像処理装置１０１の機能ブロック図である。
デジタルカメラ１０２や、不揮発性ストレージに格納されている画像ファイル１０３等から得られる入力画像データ１０４は、インデックス作成部１００１に供給される。インデックス作成部１００１は、入力画像データ１０４から縦ｍピクセル×横ｎピクセルのインデックスビットマップを生成する。このインデックスビットマップは、辞書テーブル１０６の仕様に合わせて作られる。例えば、図５及び図６の例の場合、２×２＝４ピクセルのインデックスビットマップをつくることとなる。インデックス作成部１００１は、２×２＝４ピクセルのインデックスビットマップを、入力画像データ１０４から横に２ピクセルずつ、縦に２ピクセルずつずらしながら連続的に作成する。
なお、周知のＢＭＰ、ＪＰＥＧ、ＧＩＦ或はＰＮＧ等、所定の圧縮処理を含むものもある、複数の異なるフォーマットの画像データを図示しないＲＡＭ内にビットマップとして展開する処理は、このインデックス作成部１００１に含まれるものとする。
【００３９】
インデックス作成部１００１が作成するインデックスビットマップは、内積演算部２０６によって、第一主成分基底ベクトル１０７と、第二主成分基底ベクトル１０８と、夫々に内積演算が行われる。この結果、インデックスビットマップから第一主成分と第二主成分が算出される。
ここで、インデックスビットマップは縦ｍピクセル×横ｎピクセル（本例の場合は４ピクセル）の「行列データ」であるのに対し、第一主成分及び第二主成分は夫々「スカラ値」である。この、行列データをスカラ値に変換することが、本実施形態の超解像画像処理装置１０１における大きな特色の一つであり、高速動作のために必要な技術である。
【００４０】
内積演算部２０６によって算出された第一主成分及び第二主成分は、比較部１００２に入力される。比較部１００２は、辞書テーブル１０６の「第一主成分」フィールドと「第二主成分」フィールドを見てツリー検索を行い、内積演算部２０６によって算出された第一主成分及び第二主成分に最も近いレコードを見つける。そして、見つけたレコードに含まれている「第一高周波」フィールド、「第二高周波」フィールド及び「第三高周波」フィールドのデータを、インデックス作成部１００１が作成したインデックスと共にマッピング処理部１００３に引き渡す。
マッピング処理部１００３は、内積演算部２０６から引き渡されたインデックス、第一高周波、第二高周波及び第三高周波のデータを並べ替えて、図示しないＲＡＭ内に配置する。配置は、図５（ｄ）に示すように、インデックス、第一高周波、第二高周波及び第三高周波の同じ配置のデータを一つの組とする。
図５（ｄ）の場合、インデックスの第一番目のデータ、第一高周波の第一番目のデータ、第二高周波の第一番目のデータ及び第三高周波の第一番目のデータを一つの組にする。
同様に、インデックスの第二番目のデータ、第一高周波の第二番目のデータ、第二高周波の第二番目のデータ及び第三高周波の第二番目のデータを一つの組にする。
同様に、インデックスの第三番目のデータ、第一高周波の第三番目のデータ、第二高周波の第三番目のデータ及び第三高周波の第三番目のデータを一つの組にする。
同様に、インデックスの第四番目のデータ、第一高周波の第四番目のデータ、第二高周波の第四番目のデータ及び第三高周波の第四番目のデータを一つの組にする。
【００４１】
こうして組にされたデータは、超解像ビットマップ生成部ともいえるＭＰウェーブレット逆変換部１００４によってＭＰウェーブレット逆変換演算処理が施され、インデックスビットマップのｋ×ｌ倍のピクセル数である（本実施形態の場合は４×２×２＝１６ピクセル）超解像ビットマップが生成される。
今、変換ビットマップ５０３が「ａ、ｈ、ｖ、ｄ」というピクセルで構成されている場合、ＭＰウェーブレット逆変換は、以下の（２）式で分解ビットマップ５０２に逆変換する。
【００４２】
ｘ＝ａ＋ｍａｘ（−ｄ，−ｈ，−ｖ，０）
ｙ＝ａ＋ｍａｘ（ｈ−ｖ，ｈ−ｄ，ｈ，０）
ｚ＝ａ＋ｍａｘ（ｖ−ｈ，ｖ−ｄ，ｖ，０）
ｗ＝ａ＋ｍａｘ（ｄ−ｈ，ｄ−ｖ，ｄ，０）  （２）
【００４３】
こうして、インデックス作成部１００１が入力画像データ１０４から生成するインデックスビットマップは、ＭＰウェーブレット逆変換部１００４から順次超解像ビットマップに変換され、最終的に入力画像データ１０４のｋ×ｌ倍のピクセル数である出力画像データ１０５である超解像画像ファイル１００５が生成される。
【００４４】
［超解像画像処理装置１０１：フローチャート］
図１１は、超解像画像処理装置１０１による超解像画像処理のフローチャートである。
処理を開始すると（Ｓ１１０１）、インデックス作成部１００１は、入力画像データ１０４を図示しないＲＡＭ内にビットマップ展開した後、そのビットマップの最初のアドレスを注目する（Ｓ１１０２）。
【００４５】
これ以降はループである。
インデックス作成部１００１は、現在注目しているＲＡＭ内のアドレスから、インデックスビットマップを作成する（Ｓ１１０３）。
作成したインデックスビットマップは、辞書検索及びＭＰウェーブレット逆変換処理が施される（Ｓ１１０４）。
そして、現在処理を終えたインデックスビットマップは、入力画像データ１０４のビットマップの、処理すべき最後のアドレスのものなのか否かを確認する（Ｓ１１０５）。未だ処理対象とすべきインデックスビットマップが存在するのであれば（Ｓ１１０５のＮＯ）、入力画像データ１０４のビットマップの、次のアドレスに移動して（Ｓ１１０６）、再びステップＳ１１０３から処理を繰り返す。
ステップＳ１１０５において、処理対象とすべきインデックスビットマップが存在しないのであれば（Ｓ１１０５のＹＥＳ）、一連の処理を終了する（Ｓ１１０７）。
【００４６】
図１２及び図１３は、辞書作成装置１０９による辞書検索及びＭＰウェーブレット逆変換処理のフローチャートである。図１１のステップＳ１１０４の処理の詳細である。
処理を開始すると（Ｓ１２０１）、内積演算部２０６は、インデックス作成部１００１から引き渡されたインデックスビットマップを、第一主成分基底ベクトル１０７と内積演算を行い、第一主成分を算出する。同様に、インデックスビットマップを、第二主成分基底ベクトル１０８と内積演算を行い、第二主成分を算出する（Ｓ１２０２）。
【００４７】
次に、比較部１００２は内積演算部２０６から引き渡された第一主成分と、辞書テーブル１０６の第一主成分フィールドの値との比較を行う。
先ず、比較部１００２は辞書テーブル１０６のレコードを第一主成分フィールドでグルーピングして、更にソートした上で、第一主成分フィールドの最小値のグループを注目する（Ｓ１２０３）。
【００４８】
これ以降はループである。
比較部１００２は辞書テーブル１０６の現在注目しているグループにおける第一主成分フィールドの値と、内積演算部２０６から引き渡された第一主成分との距離（以下「現在距離」）を算出する。
次に、比較部１００２は辞書テーブル１０６の現在注目しているグループの、隣のグループにおける第一主成分フィールドの値と、内積演算部２０６から引き渡された第一主成分との距離（以下「隣接距離」）を算出する（Ｓ１２０４）。そして、算出した距離同士を比較する（Ｓ１２０５）。
現在距離が隣接距離より大きい値である場合（Ｓ１２０５のＮＯ）は、比較対象とする辞書テーブル１０６のグループを次のグループに移動して（Ｓ１２０６）、再びステップＳ１２０４から繰り返す。
現在距離が隣接距離以下の値になった場合（Ｓ１２０５のＹＥＳ）は、現在注目している第一主成分のグループを選択する（Ｓ１２０７）。
【００４９】
図１３を参照して、引き続きフローチャートの説明を続ける。
比較部１００２は、ステップＳ１２０７で選択した、辞書テーブル１０６の第一主成分のグループに対し、内積演算部２０６から引き渡された第二主成分を用いて更に絞り込みを行う。
つまり、内積演算部２０６から引き渡された第二主成分と、ステップＳ１２０７で選択した辞書テーブル１０６における第一主成分のグループに属するレコードの、第二主成分フィールドの値との比較を行う。
先ず、比較部１００２はステップＳ１２０７で選択した辞書テーブル１０６における第一主成分のグループに属する辞書テーブル１０６のレコードを第二主成分フィールドでソートした上で、第二主成分フィールドの最小値のレコードを注目する（Ｓ１３０８）。
【００５０】
これ以降はループである。
比較部１００２は辞書テーブル１０６の現在注目しているレコードにおける第二主成分フィールドの値と、内積演算部２０６から引き渡された第二主成分との距離（以下「現在距離」）を算出する。
次に、比較部１００２は辞書テーブル１０６の現在注目しているレコードの、次のレコードにおける第二主成分フィールドの値と、内積演算部２０６から引き渡された第二主成分との距離（以下「隣接距離」）を算出する（Ｓ１３０９）。そして、算出した距離同士を比較する（Ｓ１３１０）。
現在距離が隣接距離より大きい値である場合（Ｓ１３１０のＮＯ）は、比較対象とする辞書テーブル１０６のレコードを次のレコードに移動して（Ｓ１３１１）、再びステップＳ１３０９から繰り返す。
現在距離が隣接距離以下の値になった場合（Ｓ１３１０のＹＥＳ）は、現在注目している第二主成分のレコードに属する、第一高周波フィールド、第二高周波フィールド及び第三高周波フィールドの値を選択する（Ｓ１３１２）。
【００５１】
比較部１００２の絞込み検索によって選択された第一高周波、第二高周波及び第三高周波のデータはマッピング処理部１００３に引き渡される。マッピング処理部１００３は、インデックスと共に第一高周波、第二高周波及び第三高周波のデータを並べ替える（Ｓ１３１３）。
並べ替えられたデータはＭＰウェーブレット逆変換処理部に引き渡される。
ＭＰウェーブレット逆変換処理部は並べ替えられたデータにＭＰウェーブレット逆変換処理を施し、超解像ビットマップを出力して（Ｓ１３１４）、一連の処理を終了する（Ｓ１３１５）。
【００５２】
［超解像画像処理装置１０１：辞書テーブル１０６のツリー検索］
図１４（ａ）、（ｂ）及び（ｃ）は、比較部１００２が実行する、辞書テーブル１０６のツリー検索の仕組みを示す概略図である。
内積演算部２０６によって算出されたインデックスビットマップの第一主成分と第二主成分が、それぞれ（Ｐ，Ｑ）であるとする。
第一主成分Ｐは、辞書テーブル１０６の第一主成分フィールドの値ｆ（ｉ）との距離、すなわち｜Ｐ−ｆ（ｉ）｜が算出される。ｉは１番目から順にインクリメントされ、第一主成分Ｐとの距離が算出されると共に、直前の距離と比較され、直前の距離が短い場合に、その直前の第一主成分フィールドのグループが採用される。
図１４（ｂ）及び（ｃ）は、横軸が第一主成分の数直線である。第一主成分Ｐがｆ（ｉ）に最も近く、且つｆ（ｉ）より大きな値である場合、第一主成分Ｐがｆ（ｉ）に最も近く、且つｆ（ｉ）より小さな値である場合の、いずれの場合であっても、以下の式（２）が成り立つ。
【００５３】
｜Ｐ−ｆ（ｉ−１）｜＞｜Ｐ−ｆ（ｉ）｜
｜Ｐ−ｆ（ｉ）｜≦｜Ｐ−ｆ（ｉ＋１）｜    （２）
【００５４】
図１４（ｂ）の場合、距離Ｄ１４０２を直前の距離Ｄ１４０１と比較すると、Ｄ１４０１＞Ｄ１４０２という関係である。次に、距離Ｄ１４０３を直前の距離Ｄ１４０２と比較すると、Ｄ１４０２＜Ｄ１４０３という関係であり、現在注目している距離と直前の距離との大小関係が反転する。
図１４（ｃ）の場合、距離Ｄ１４０５を直前の距離Ｄ１４０４と比較すると、Ｄ１４０４＞Ｄ１４０５という関係である。次に、距離Ｄ１４０６を直前の距離Ｄ１４０５と比較すると、Ｄ１４０５＜Ｄ１４０６という関係であり、現在注目している距離と直前の距離との大小関係が反転する。
このように、第一主成分Ｐに対し、辞書テーブル１０６の第一主成分フィールドの値ｆ（ｉ）を最小値から上げていく（ｉを０からインクリメントする）と、第一主成分Ｐとの大小関係が途中で変わる。この時点の辞書テーブル１０６の第一主成分フィールドの値ｆ（ｉ）が、第一主成分Ｐに最も近い距離のグループである。
【００５５】
［辞書作成装置１０９及び超解像画像処理装置１０１の仕組み］
画像を微視的に観察すると、画像の種類に応じて、隣接するビットマップにはある種の相関性が見受けられる。そこで、微視的にビットマップを抜き出して、その相関性に基づいてビットマップを補完することで、失われた高周波成分を類推することができる。相関性を有する、ということは、ビットマップの補完に用いるデータを辞書テーブル１０６にして検索をかけることで実現できることを意味する。更に、相関性を有する、ということは、相関性の類似する同一のカテゴリやグループに属するパターンが多いことを示している。
発明者は、ＭＰウェーブレット逆変換処理に辞書を用いて超解像画像処理を実現することを最初に思いついた。予め、辞書に極小なビットマップのパターンと、これに対応する、補完用ビットマップパターンを組にして保持しておく。そして、入力画像データ１０４から極小なビットマップを抜き出して辞書検索を行い、検索にヒットした補完用ビットマップパターンを用いて、超解像画像処理を実現する。
【００５６】
入力画像データ１０４から作成される極小なビットマップの数は膨大なものとなり、その数はそのまま辞書に対する検索と超解像画像処理の回数となる。したがって、辞書アクセス及び超解像画像処理に要する時間は極力短いことが望ましい。
発明者は、超解像画像処理に要する時間を短縮するために、ＭＰウェーブレット変換を開発した。
そして発明者は今般、超解像画像処理に用いる辞書アクセスに要する時間を短縮するために、主成分分析を用いた辞書の最適化を開発した。
【００５７】
説明を簡単にするため、図５及び図６を例にして説明する。
辞書のレコード数を低減する最も素朴な方法としては、クラスタリングが挙げられる。インデックス、第一高周波、第二高周波及び第三高周波の数値パターンが類似するレコードを複数集めて、各々の平均値を取る。しかし、この場合、インデックスに含まれるデータは４個の要素を持つ行列である。複数の要素を持ち、それぞれの要素に重み付けがない場合、検索速度の向上は期待できない。また、クラスタリングの場合、インデックスに含まれる要素数が多くなればなるほど、指数関数的に検索速度が遅くなることが容易に想像できる。
【００５８】
前述の検索速度の問題に関し、発明者は、多次元のデータをより少ない次元のデータに置き換える主成分分析が有効であることに気が付いた。主成分分析を用いれば、どれほど要素数の多い行列データの集合であっても、第一主成分及び第二主成分というスカラ値で表現することができる。なお、必要であれば第三主成分以降も設けることができる。
【００５９】
主成分分析は、多次元の行列データの集合に対して重心を算出した後、その重心を通過して全ての行列データが最も大きく散らばる軸、すなわち分散が最大になる軸を第一主成分軸として算出する。なお、実際に算出するものは第一主成分軸の基底ベクトルである。この第一主成分基底ベクトル１０７に、目的となる行列とを内積演算すると、第一主成分軸上における重心からの距離を算出できる。
そして更に、重心を通過し、第一主成分軸と直交し、且つ分散が最大になる軸を第二主成分軸として算出する。これも実際に算出するものは第二主成分軸の基底ベクトルである。この第二主成分基底ベクトル１０８も、目的となる行列とを内積演算すると、第二主成分軸上における重心からの距離を算出できる。
【００６０】
実際に画像データのビットマップに主成分分析を行うと、第一主成分軸及び第二主成分軸上のそれぞれに、データが密集する箇所が幾つか発生する。これは、画像データの性質に基づく傾向で、類似するビットマップが頻出するところである。このように、ばらつき具合に特徴ある傾向を示すデータ群に対し、主成分軸上で均等な数によるグルーピングを行う。そして、グルーピングを行った結果、同じグループに属するデータ群に対し、平均値を算出して、そのグループの代表値とする。
第一主成分軸と第二主成分軸は直交関係にあるので、最初に第一主成分で検索してレコードの絞り込みを行い、次に同じ第一主成分に属する複数のレコードに対して第二主成分で更に絞り込みを行う。これは周知のツリー検索であり、辞書に対するアクセス回数を効果的に低減する方法である。
【００６１】
本実施形態は、以下のような応用例が考えられる。
（１）上述の実施形態では、白黒の静止画を対象とする装置を説明したが、超解像画像処理装置１０１の入力画像データ１０４（ソース）は動画像であってもよい。この場合、インデックスビットマップは時間軸を考慮したものとなる。例えば、時間軸上で隣り合う２枚の画像を対象にして、縦２ピクセル×横２ピクセル×２サンプル数＝８ピクセルをインデックスとし、第一高周波、第二高周波及び第三高周波を生成する。
【００６２】
（２）上述の実施形態では、白黒の静止画を対象とする装置を説明したが、超解像画像処理装置１０１の入力画像データ１０４（ソース）はカラー画像であってもよい。この場合、インデックスビットマップは三原色を考慮したものとなる。つまり、各々のビットマップを構成するピクセルの個数が単純に三倍になる。
勿論、扱う画像はカラーの動画像であってもよい。
【００６３】
（３）例えば、アニメーションやコンピュータグラフィックス等の別の映像に実写の人物を合成する、周知のクロマキー合成によって生成される画像データの場合、一つの画像データ内に複数の全く異なる特徴を備えた部分が混在することとなる。このような画像データの場合は、予め異なる特徴の画像部分とを切り分けて、夫々に適した辞書テーブル等を用いて超解像画像処理を施すことが望ましい。
【００６４】
（４）周知のように、主成分分析では、主成分分析の対象となる行列の要素数が膨大で、第一主成分軸と第二主成分軸だけでは集合の絞り込みを良好に実施できない場合に、第一主成分軸及び第二主成分軸の双方に直交し、最も分散が大きい第三主成分軸を算出することが行われる。そして、主成分軸は第四、第五…と、その用途に応じて増やすことも可能である。これは本実施形態の超解像画像処理装置１０１及び辞書作成装置１０９にも同じことが言える。つまり、辞書テーブル等に含まれる主成分軸の基底ベクトルは、必ずしも第一主成分軸と第二主成分軸だけではなく、必要に応じて第三主成分軸を含めることができる。そして、その際、辞書テーブル１０６にもこれに応じて「第三主成分」フィールド等が追加されることとなる。
【００６５】
（５）本実施形態の辞書作成装置１０９では、並べ替え処理部２０４という処理手順を設けているが、これは説明の便宜上、データの扱いを理解し易くするために明示的に記述した処理内容である。実際の装置では、このような実データのコピーを行わずとも、周知のポインタ操作で同等の処理をより高速に実現できる。
同様のことは、超解像画像処理装置１０１のマッピング処理部１００３にも当てはまる。
【００６６】
本実施形態においては、超解像画像処理装置１０１と、これに用いる辞書作成装置１０９を開示した。
汎用性の高い超解像画像処理を短時間に実行するため、本実施形態の超解像画像処理装置１０１は、先ず、処理対象とする画像をシーンに分けた。そして、シーンに適合する辞書テーブル１０６を用いて、失われた高周波成分を辞書に対するツリー検索にて類推した。
そして、辞書テーブル１０６の検索を高速化するため、主成分分析を用いて、検索キーとなるインデックスビットマップをスカラ値である第一主成分及び第二主成分に変換すると共に、第一主成分と第二主成分とでグルーピングを施し、その平均値を算出することで、辞書テーブル１０６の必要レコード数を大幅に低減することに成功した。
これらの技術の採用により、少ない計算量で高速に実行できる、汎用性が高く実用的な超解像画像処理装置１０１を実現できる。
【００６７】
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含む。
【符号の説明】
【００６８】
１０１…超解像画像処理装置、１０２…デジタルカメラ、１０３…画像ファイル、１０４…入力画像データ、１０５…出力画像データ、１０６…辞書テーブル、１０７…第一主成分基底ベクトル、１０８…第二主成分基底ベクトル、１０９…辞書作成装置、１１０…サンプル画像ファイル、２０１…分解処理部、２０２…一時テーブル、２０３…ＭＰウェーブレット変換部、２０４…処理部、２０５…主成分分析処理部、２０６…内積演算部、２０７…頻度分割処理部、２０８…平均値演算部、５０１…分割ビットマップ、５０２…分解ビットマップ、５０３…変換ビットマップ、１００１…インデックス作成部、１００２…比較部、１００３…マッピング処理部、１００４…ＭＰウェーブレット逆変換部、１００５…超解像画像ファイル
【図１】
0005769241.tif 000002
【図２】
0005769241.tif 000003
【図３】
0005769241.tif 000004
【図４】
0005769241.tif 000005
【図５】
0005769241.tif 000006
【図６】
0005769241.tif 000007
【図７】
0005769241.tif 000008
【図８】
0005769241.tif 000009
【図９】
0005769241.tif 000010
【図１０】
0005769241.tif 000011
【図１１】
0005769241.tif 000012
【図１２】
0005769241.tif 000013
【図１３】
0005769241.tif 000014
【図１４】
0005769241.tif 000015