JP2013131789A - 情報処理装置と情報処理方法とプログラムおよび記録媒体 - Google Patents

情報処理装置と情報処理方法とプログラムおよび記録媒体 Download PDF

Info

Publication number
JP2013131789A
JP2013131789A JP2011277761A JP2011277761A JP2013131789A JP 2013131789 A JP2013131789 A JP 2013131789A JP 2011277761 A JP2011277761 A JP 2011277761A JP 2011277761 A JP2011277761 A JP 2011277761A JP 2013131789 A JP2013131789 A JP 2013131789A
Authority
JP
Japan
Prior art keywords
image
low bit
motion vector
reference image
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011277761A
Other languages
English (en)
Inventor
Akira Tokunaga
陽 徳永
Takefumi Nagumo
武文 名雲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2011277761A priority Critical patent/JP2013131789A/ja
Publication of JP2013131789A publication Critical patent/JP2013131789A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】簡単な構成で精度よく動きベクトルを検出できるようにする。
【解決手段】低ビット基準画像生成部は基準画像から低ビット基準画像を生成して、低ビット参照画像生成部は参照画像から低ビット参照画像を生成する。低ビットパターン基準画像生成部は基準画像に基づいた低ビットパターン基準画像を生成して、低ビットパターン参照画像生成部は、参照画像に基づいた低ビットパターン参照画像を生成する。低ビット画像マッチング部は、低ビット基準画像と低ビット参照画像のブロックマッチング処理で第1の動きベクトルを算出する。低ビットパターン画像マッチング部は、低ビットパターン基準画像と低ビットパターン参照画像から第2の動きベクトルを算出する。対象ブロックが高域画像と判定されたときは第1の動きベクトル、低域画像と判定されたときは第2の動きベクトルを出力する。
【選択図】 図3

Description

この技術は、情報処理装置と情報処理方法とプログラムおよび記録媒体に関し、低ビット画像でも精度よく動きベクトルを検出できるようにする。
従来、時間的に異なる画像中の物体の動きベクトルを検出して、検出した動きベクトルに基づき、例えば画像の高能率符号化における動き補償フレーム間符号化や、フレーム間時間領域フィルタによる雑音低減化等が行われている。
このような動きベクトルを検出でする方法としては、例えばブロックマッチング法が用いられている。ブロックマッチング法では、1つの画面を数画素からなるブロックに分割する。次に、ブロック化された画像データと、この画像データが動いた領域を検索するために時間的に異なる画面の画像データがブロック化されてなる探索領域との間で、所定の評価関数を用いて画素単位で評価値を算出する。さらに、算出した評価値を最小とする最適値を求めることにより、最適値が得られたときのブロックの位置から動きベクトルを検出する。
また、特許文献1の発明では、画素に割り当てるビット数が削減されている基準画像と参照画像を用いたブロックマッチングによって動きベクトルの粗検出が行われている。さらに、粗検出で検出した動きベクトルに基づき、動きベクトルの詳細検出における探索範囲を決定して動きベクトルの詳細検出が行われている。
特開2011−166266号公報
ところで、画素に割り当てるビット数が削減されている低ビット画像を用いて動きベクトルの検出を行う場合、高域成分が少ない画像では信号レベルの変化が少ないことから、動きベクトルの検出が高域成分の多い画像に比べて困難となる。
図1は、例えば8ビット画像を1ビット画像に変換する従来の情報処理装置90の構成を例示している。情報処理装置90は、平滑化部91と減算部92と量子化部93を有している。情報処理装置90に入力された8ビットの入力画像は、平滑化部91と減算部92に供給される。平滑化部91は、入力画像のフィルタリングを行い平滑化画像の画像データを生成して減算部92に出力する。減算部92は、例えば入力画像の画像データから平滑化画像の画像データを減算して差分画像の画像データを生成して量子化部93に出力する。量子化部93は差分画像の量子化を行い、低ビット出力画像例えば1ビット画像を生成する。
このような処理を行う場合、図2の(A)に示す入力画像における高域成分が多い画像(以下「高域画像」という)の領域では、図2の(B)に示すように、被写体のエッジ等を示す1ビット画像を得ることができる。しかし、入力画像における高域成分が少ない画像(以下「低域画像」という)の領域では、ノイズに応じた1ビット画像となり、低域画像の領域では1ビット画像に基づく動きベクトルの検出が困難である。
そこで、この技術では高域成分が少ない画像が含まれていても簡単な構成で精度よく動きベクトルを検出できる情報処理装置と情報処理方法およびプログラムを提供する。
この技術の第1の側面は、基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う低ビット画像生成部と、前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う置換画像生成部と、前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する第1動きベクトル算出部と、前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する第2動きベクトル算出部と、前記対象ブロックが高域成分の多い画像であるか否かを判定する判定部と、前記判定部の判定結果に基づき前記第1の動きベクトルと前記第2の動きベクトルから前記対象ブロックの動きベクトルを決定する動きベクトル決定部とを有する情報処理装置にある。
この情報処理装置において、低ビット画像生成部は、基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う。また、置換画像生成部は、基準画像に基づいた置換基準画像の生成と、参照画像に基づいた置換参照画像の生成を行う。例えば、置換画像生成部は、画像選択値に応じた低ビットのパターン画像から対象ブロックの画像に基づいた画像選択値に対応するパターン画像を選択して置換基準画像とし、参照画像のブロック毎にブロックの画像に基づいた画像選択値に対応するパターン画像を選択して置換参照画像とする。選択されるパターン画像は、ブロックサイズと等しいサイズとする。また、画像選択値の差に対応する相違を有した画像とする。第1動きベクトル算出部は、低ビット基準画像と低ビット参照画像を用いて例えばブロックマッチング処理を行い、基準画像における対象ブロックの第1の動きベクトルを算出する。第2動きベクトル算出部は、置換基準画像と置換参照画像を用いて例えばブロックマッチング処理を行い対象ブロックの第2の動きベクトルを算出する。第2動きベクトル算出部は、ブロックマッチング処理において、パターン画像単位で探索を行うことにより得られた評価値を用いて補間演算を行い、パターン画像単位よりも高精度で動きベクトルの算出を行う。また、置換画像生成部は、対象ブロックを複数ブロックに分割して、分割ブロック毎にブロック内の画像に基づいた画像選択値に対応するパターン画像を選択して置換基準画像とし、参照画像のブロックを複数ブロックに分割して、分割ブロック毎にブロックの画像に基づいた画像選択値に対応するパターン画像を選択して置換参照画像としてもよい。また、置換画像生成部は、置換基準画像と置換参照画像を複数の置換画像、例えばブロックの低ビット縮小画像とブロックの画像に基づいた画像選択値に対応するパターン画像で構成するようにしてもよい。さらに、置換画像生成部は、基準画像を縮小した画像を置換基準画像とし、参照画像を縮小した画像を置換参照画像としてもよい。
判定部は、対象ブロックが高域成分の多い画像であるか否かの判定を行い、判定結果に基づき動きベクトル決定部は、第1の動きベクトルと第2の動きベクトルから対象ブロックの動きベクトルを決定する。動きベクトル決定部は、対象ブロックが高域成分の多い画像であると判別された場合に第2の動きベクトルよりも第1の動きベクトルの重み付けを高くして、高域成分の多い画像であると判別されない場合に第1の動きベクトルよりも第2の動きベクトルの重み付けを高くして、対象ブロックの動きベクトルを決定する。
この技術の第2の側面は、基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う工程と、前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う工程と、前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する工程と、前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する工程と、前記対象ブロックが高域成分の多い画像であるか否かを判定する工程と、前記第1の動きベクトルと前記第2の動きベクトルと前記判定結果に基づいて、前記対象ブロックの動きベクトルを決定する工程とを有する情報処理方法にある。
この技術の第3の側面は、基準画像と参照画像を用いて動きベクトルの算出をコンピュータで実行させるプログラムであって、前記基準画像から各画素のビット数を削減した低ビット基準画像の生成と、前記参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う手順と、前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う手順と、前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する手順と、前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する手順と、前記対象ブロックが高域成分の多い画像であるか否かを判定する手順と、前記第1の動きベクトルと前記第2の動きベクトルと前記判定結果に基づいて、前記対象ブロックの動きベクトルを決定する手順とを前記コンピュータで実行させるプログラムにある。
この技術の第4の側面は、基準画像と参照画像を用いて動きベクトルの算出をコンピュータで実行させるプログラムを記録した記録媒体であって、前記基準画像から各画素のビット数を削減した低ビット基準画像の生成と、前記参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う手順と、前記基準画像に基づき置換画像を生成する置換基準画像の生成と、前記参照画像に基づき置換画像を生成する置換参照画像の生成を行う手順と、前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する手順と、前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する手順と、前記対象ブロックが高域成分の多い画像であるか否かを判定する手順と、前記第1の動きベクトルと前記第2の動きベクトルと前記判定結果に基づいて、前記対象ブロックの動きベクトルを決定する手順とを前記コンピュータで実行させるプログラムを記録した記録媒体にある。
なお、本技術のプログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ上でプログラムに応じた処理が実現される。
この技術によれば、基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成が行われる。また、基準画像に基づいた置換基準画像の生成と、参照画像に基づいた置換参照画像の生成が行われる。さらに、低ビット基準画像と低ビット参照画像を用いて基準画像における対象ブロックの第1の動きベクトルの算出が行われて、置換基準画像と置換参照画像を用いて対象ブロックの第2の動きベクトルの算出が行われる。また、対象ブロックが高域成分の多い画像であるか否かの判定と第1の動きベクトルと第2の動きベクトルに基づいて、対象ブロックの動きベクトルが決定される。このため、対象ブロックが高域成分の多い画像である場合には低ビット画像に基づいて算出された第1の動きベクトル、対象ブロックが高域成分の多い画像でない場合には置換画像に基づいて算出された第2の動きベクトルの重みを高くして、高域成分が少ない画像が含まれていても簡単な構成で精度よく動きベクトルを検出することができるようになる。
従来の構成を例示した図である。 従来の動作を説明するための図である。 第1の実施の形態の構成を例示した図である。 第1の実施の形態の動作を示すフローチャートである。 低ビットパターン基準画像生成部の構成を例示した図である。 低ビットパターン基準画像生成部の動作を示すフローチャートである。 パターン画像を例示した図である。 低ビット基準画像生成部の構成を例示した図である。 低ビット基準画像生成部の動作を示すフローチャートである。 低ビット基準画像生成部の他の構成を例示した図である。 低ビット基準画像生成部における他の動作を示すフローチャートである。 比較結果と画素値の関係を例示した図である。 高域/低域判定部の構成を例示した図である。 高域/低域判定部の動作を示すフローチャートである。 マッチング動作を示す図である。 低ビットパターン画像マッチング部の構成を例示した図である。 補間演算の説明図である。 低ビットパターン画像マッチング部の動作を示すフローチャートである。 XOR値計算処理を示すフローチャートである。 第1の実施の形態の動作を例示した図である。 第1の実施の形態の他の構成を例示した図である。 第2の実施の形態の構成を例示した図である。 第2の実施の形態の他の構成を例示した図である。 第2の実施の形態の他の構成を例示した図である。 ブロック内の画素値分布が異なる場合を例示した図である。 第3の実施の形態の構成を例示した図である。 低ビット設定サイズパターン画像の生成動作を説明するための図である。 1/32分割ブロックの画素平均値のLSB側から3ビットの情報を8画素で表現する場合のパターン画像を例示している。 低ビット設定サイズパターン基準画像生成部の構成を例示した図である。 ブロックを分割する場合のマッチング動作を示す図である。 第3の実施の形態の他の構成を例示した図である。 第4の実施の形態の構成を例示した図である。 第5の実施の形態の構成を例示した図である。 縮小画像の生成動作を説明するための図である。 マッチング処理に用いる画像の他の例を示す図である。 分割ブロック毎に高域画像であるか低域画像であるかを判別してマッチング処理を行う場合に用いる画像を示す図である。
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態
1−1.第1の実施の形態の構成
1−2.第1の実施の形態の動作
1−3.低ビットパターン基準画像生成部の構成と動作
1−4.低ビット基準画像生成部の構成と動作
1−5.高域/低域判定部の構成と動作
1−6.低ビットパターン画像マッチング部の構成と動作
1−7.低ビット画像マッチング部の構成と動作
1−8.動きベクトル選択部の動作
1−9.第1の実施の形態の他の構成と動作
2.第2の実施の形態
2−1.第2の実施の形態の構成と動作
2−2.第2の実施の形態の他の構成
2−3.第2の実施の形態の他の構成
3.第3の実施の形態
3−1.第3の実施の形態の構成
3−2.第3の実施の形態の動作
3−3.第3の実施の形態の他の構成と動作
4.第4の実施の形態
4−1.第4の実施の形態の構成
5.第5の実施の形態
5−1.第5の実施の形態の構成
5−2.第5の実施の形態の動作
6.その他の形態
<1.第1の実施の形態>
本技術の情報処理装置では、画素に割り当てるビット数を削減するビット数削減処理を基準画像と参照画像に対して行い、低ビットの基準画像と参照画像を生成する。また、基準画像に基づいた置換基準画像と参照画像に基づいた置換参照画像を生成する。さらに、情報処理装置は、低ビット基準画像と低ビット参照画像を用いて基準画像における対象ブロックの第1の動きベクトルの算出を行い、置換基準画像と置換参照画像を用いて対象ブロックの第2の動きベクトルの算出を行う。また、高域成分の少ない低域画像の低ビット画像ではブロックマッチング処理により動きベクトルを検出することが困難であることから、情報処理装置は、対象ブロックが高域成分の多い画像であるか否かを判定する。この判定結果に基づき第1の動きベクトルと第2の動きベクトルから対象ブロックの動きベクトルを決定することで、高域成分が少ない画像が含まれていても簡単な構成で精度よく動きベクトルを検出することができるようにする。
なお、以下の説明において、低ビットの基準画像と参照画像は画素に割り当てるビット数を1ビットとした画像、および置換基準画像と置換参照画像は2値のパターン画像としている。
[1−1.第1の実施の形態の構成]
図3は、情報処理装置の第1の実施の形態の構成を例示している。情報処理装置10-1aは、低ビットパターン基準画像生成部11-c、低ビット基準画像生成部12-c、低ビットパターン参照画像生成部11-r、低ビット参照画像生成部12-r、高域/低域判定部15、低ビットパターン画像マッチング部31、低ビット画像マッチング部32、動きベクトル選択部41を有している。
低ビットパターン基準画像生成部11-cは、基準画像の画像データを所定画像サイズのブロック単位に分割して、ブロック毎にブロック内の画像データに基づいて低ビットパターン基準画像の画像データを生成する。例えば、基準画像の画像データは8ビットであり、低ビットパターン基準画像生成部11-cは、ブロック内の画像データの画素平均値に基づいて、予め設定されている生成規則に応じた1ビットパターン基準画像の画像データを生成する。低ビットパターン基準画像生成部11-cは、生成したパターン基準画像の画像データを低ビットパターン画像マッチング部31に出力する。
低ビット基準画像生成部12-cは、基準画像の画像データを所定画像サイズのブロック単位に分割して、各ブロックの基準画像の画像データに対してビット数削減処理を行い、低ビット基準画像の画像データを生成する。例えば、低ビット基準画像生成部12-cは、基準画像の8ビットの画像データに対してビット数削減処理を行い、1ビットである低ビット基準画像の画像データを生成する。低ビット基準画像生成部12-cは、生成した低ビット基準画像の画像データを低ビット画像マッチング部32に出力する。
低ビットパターン参照画像生成部11-rは、参照画像の画像データを所定画像サイズのブロック単位に分割して、ブロック毎にブロック内の画像データに基づいて低ビットパターン参照画像の画像データを生成する。例えば、基準画像の画像データは8ビットであり、低ビットパターン参照画像生成部11-rは、ブロック内の画像データの画素平均値に基づいて、予め設定されている生成規則に応じた1ビットパターン参照画像の画像データを生成する。低ビットパターン参照画像生成部11-rは、生成したパターン参照画像の画像データを低ビットパターン画像マッチング部31に出力する。
低ビット参照画像生成部12-rは、参照画像の画像データを所定画像サイズのブロック単位に分割して、各ブロックの基準画像の画像データに対してビット数削減処理を行い、低ビット参照画像の画像データを生成する。例えば、低ビット参照画像生成部12-rは、参照画像の8ビットの画像データに対してビット数削減処理を行い、1ビットである低ビット参照画像の画像データを生成する。低ビット参照画像生成部12-rは、生成した低ビット参照画像の画像データを低ビット画像マッチング部32に出力する。
高域/低域判定部15は、動きベクトルを算出する対象ブロックの基準画像が低域の画像であるか高域の画像であるか判定する。例えば、高域/低域判定部15は、対象ブロックの基準画像が青空や単一色の滑らかな壁面等の画像の一部である場合、高域成分が少ないことから低域画像と判定する。また、高域/低域判定部15は、対象ブロックの基準画像が森林や建物等の画像の一部でエッジを含むような場合、高域成分を多く含むことから高域画像と判定する。高域/低域判定部15は、判定結果を示す判定信号を動きベクトル選択部41に出力する。
低ビットパターン画像マッチング部31は、低ビットパターン基準画像生成部11-cで生成された低ビットパターン基準画像と、低ビットパターン参照画像生成部11-rで生成された低ビットパターン参照画像との画像データを用いて、動きベクトルを算出する。すなわち、低ビットパターン画像マッチング部31は、低ビットパターン基準画像と低ビットパターン参照画像の画像データを用いて、パターン画像サイズのブロック単位でブロックマッチング処理を行い、動きベクトルを算出する。例えば、対象ブロックに対応した1ビットパターン基準画像と1ビットパターン参照画像とのマッチング誤差をブロック単位で算出して、算出したマッチング誤差に基づき対象ブロックの動きベクトルを算出する。低ビットパターン画像マッチング部31は、算出した動きベクトルを動きベクトル選択部41に出力する。
低ビット画像マッチング部32は、低ビット基準画像生成部12-cで生成された低ビット基準画像の画像データと、低ビット参照画像生成部12-rで生成された低ビット参照画像の画像データを用いて、ブロックマッチング処理を行い動きベクトルを算出する。例えば、対象ブロックの低ビット基準画像と低ビット参照画像とのマッチング誤差を画素単位で算出して、算出したマッチング誤差に基づき対象ブロックの動きベクトルを算出する。低ビット画像マッチング部32は、算出した動きベクトルを動きベクトル選択部41に出力する。
動きベクトル決定部である動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が低域画像と判定された場合には、低ビットパターン画像マッチング部31で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
[1−2.第1の実施の形態の動作]
図4は、第1の実施の形態の動作を示すフローチャートである。図4のステップST1で低ビットパターン基準画像生成部11-c,低ビットパターン参照画像生成部11-rは、低ビットパターン画像の生成を行う。低ビットパターン基準画像生成部11-cは、基準画像の画像データからブロック毎の低ビットパターン基準画像を生成する。低ビットパターン参照画像生成部11-rは、参照画像の画像データからブロック毎の低ビットパターン参照画像の画像データを生成する。このように、低ビットパターン基準画像生成部11-c,低ビットパターン参照画像生成部11-rは、低ビットパターン画像の生成を行ってステップST2に進む。
ステップST2で低ビット基準画像生成部12-c,低ビット参照画像生成部12-rは、低ビット画像の生成を行う。低ビット基準画像生成部12-cは、基準画像の画像データに対してビット数削減処理を行い、低ビット基準画像の画像データを生成する。低ビット参照画像生成部12-rは、参照画像の画像データに対してビット数削減処理を行い、低ビット参照画像の画像データを生成する。このように、低ビット基準画像生成部12-c,低ビット参照画像生成部12-rは、低ビット画像の生成を行ってステップST3に進む。
ステップST3で低ビットパターン画像マッチング部31は、低ビットパターン画像を用いたブロックマッチング処理を行う。低ビットパターン画像マッチング部31は、低ビットパターン基準画像の画像データと低ビットパターン参照画像の画像データを用いてブロックマッチング処理を行い、対象ブロックの動きベクトルを算出してステップST4に進む。
ステップST4で低ビット画像マッチング部32は、低ビット画像を用いたブロックマッチング処理を行う。低ビット画像マッチング部32は、低ビット基準画像と低ビット参照画像とを用いてブロックマッチング処理を行い、対象ブロックの動きベクトルを検出する。
ステップST5で高域/低域判定部15は、高域画像/低域画像の判定を行う。高域/低域判定部15は、動きベクトルの算出を行う対象ブロックの画像が高域画像であるか低域画像であるかを判定してステップST6に進む。
ステップST6で動きベクトル選択部41は、動きベクトルの選択を行う。動きベクトル選択部41は、対象ブロックの画像が低域画像であると判定されている場合、低ビットパターン画像を用いて算出した動きベクトルを選択して出力する。また、動きベクトル選択部41は、対象ブロックの画像が高域画像であると判定されている場合、低ビット画像を用いて算出した動きベクトルを選択して出力する。
[1−3.低ビットパターン基準画像生成部の構成と動作]
次に、低ビットパターン基準画像の生成について説明する。なお、低ビットパターン参照画像の生成は、低ビットパターン基準画像と同様にして生成できることから、低ビットパターン基準画像の生成についてのみ説明する。
図5は、低ビットパターン基準画像生成部11-cの構成を例示している。低ビットパターン基準画像生成部11-cは、画像分割部111、画像選択値算出部112、パターン画像決定部113を有している。
画像分割部111は、基準画像をブロック単位に分割する。画像分割部111は、例えば16画素×16画素のサイズに基準画像を分割して、ブロック単位の画像データを画像選択値算出部112に出力する。
画像選択値算出部112は、ブロック単位の画像データからブロック毎にブロック内の画素値(例えば画素毎の輝度値)に基づいた画像選択値を算出する。画像選択値算出部112は、例えばブロック内の画素平均値を画像選択値として算出する。また、画像選択値算出部112は、ブロック内の画素中央値等を画像選択値としてもよい。画像選択値算出部112は、算出した画像選択値をパターン画像決定部113に出力する。
パターン画像決定部113は、画像選択値算出部112で算出された画像選択値に応じたパターン基準画像を決定する。例えばパターン画像決定部113は、画像選択値毎の1ビットパターン画像を記憶したデータベース114と接続されている。パターン画像決定部113は、画像選択値算出部112で算出された画像選択値に応じたパターン画像をデータベース114から読み出すことで、基準画像のブロックに対応するパターン基準画像を決定する。
図6は、低ビットパターン基準画像生成部11-cの動作を示すフローチャートである。ステップST11で低ビットパターン基準画像生成部11-cは、基準画像分割処理を行う。低ビットパターン基準画像生成部11-cは、基準画像を所定のブロックサイズ例えば16画素×16画素のサイズに分割してステップST12に進む。
ステップST12で低ビットパターン基準画像生成部11-cは、画像選択値の算出を行う。低ビットパターン基準画像生成部11-cは、ブロック毎にブロック内の画素平均値等を画像選択値として算出してステップST13に進む。
ステップST13で低ビットパターン基準画像生成部11-cは、低ビットパターン画像の生成を行う。低ビットパターン基準画像生成部11-cは、画像選択値毎に予め設定されている低ビットパターン画像からステップST12で算出した画像選択値に対応する低ビットパターン画像を選択する。
このようにして、基準画像を分割したブロック毎に、ブロックの画像に基づいた画像選択値に対応するパターン画像を選択して低ビットパターン基準画像の生成を行う。
低ビットパターン画像は、ブロックサイズと等しいサイズのパターン画像とする。例えばブロックサイズが16×16画素である場合、パターン画像のサイズは16×16画素とする。また、パターン画像は低ビット画像、例えば2値のパターン画像とする。さらに、パターン画像は、パターン形状を画像選択値に応じた形状とする。例えば画素平均値が「195」である場合、図7に示すように「1(白)=195画素、0(黒)=61画素のパターンとする。また、画像選択値に応じたパターン画像は、パターン画像間における画素値の相違する画素数を前記画像選択値の差に対応させたパターン画像として、パターンの違いによって画像選択値の相違を判別できるようにしてもよい。
このような処理を、低ビットパターン基準画像生成部11-cで行うと、ブロック単位の基準画像は、ブロック内の画素値に応じた空間解像度の高い低ビットパターン画像に置き換えられることになる。
[1−4.低ビット基準画像生成部の構成と動作]
次に、低ビット基準画像の生成について説明する。なお、低ビット参照画像の生成は、低ビット基準画像と同様にして生成できることから、低ビット基準画像の生成についてのみ説明する。
低ビット基準画像生成部12-cは、基準画像のフィルタ処理を行い、フィルタ処理前とフィルタ処理後で画像データの比較を画素毎に行って、比較結果からビット数を削減した低ビット基準画像を生成する。
図8は、1ビット画像を生成するときの低ビット基準画像生成部12-cの構成を例示している。低ビット基準画像生成部12-cは、フィルタ処理部121と画像比較部122を有している。フィルタ処理部121は、基準画像の画像データのフィルタ処理を行う。フィルタ処理部121は、例えば平均フィルタ(Mean Filter)やバンドパスフィルタ(Band-pass Filter)あるいは疑似平均フィルタ等のいずれかを用いて、基準画像の画像データのフィルタ処理を行う。
フィルタ処理部121は、平均フィルタを用いる場合、式(1)の演算を行い、画素位置(x,y)のフィルタ処理後の画素データI'(x,y)を算出する。なお、I(i,j)は基準画像の画素データを示しており、Nは画素数である。
フィルタ処理部121は、バンドパスフィルタを用いる場合、式(2)の演算を行い、画素位置(x,y)のフィルタ処理後の画素データI'(x,y)を算出する。なお、式(2)において「K」はフィルタ特性を決定するための係数であり、例えば式(3)に示す値とする。
フィルタ処理部121は、疑似平均フィルタを用いる場合、式(4)の演算を行い、画素位置(x,y)のフィルタ処理後の画素データI'(x,y)を算出する。
画像比較部122は、基準画像の画像データとフィルタ処理後の画像データを比較して、比較結果を示す1ビットの信号を低ビット基準画像の画像データとする。
図9は、1ビット画像を生成する低ビット基準画像生成部12-cの動作を示すフローチャートである。ステップST21で低ビット基準画像生成部12-cは、基準画像のフィルタ処理を行う。低ビット基準画像生成部12-cは、基準画像の画像データに対して平均フィルタやバンドパスフィルタ等のフィルタ処理を行ってステップST22に進む。
ステップST22で低ビット基準画像生成部12-cは、フィルタ処理結果が基準画像以下であるか否か判別する。低ビット基準画像生成部12-cは、フィルタ処理後の画像データと基準画像の画像データに対して、各画像位置での画素データの比較を行う。低ビット基準画像生成部12-cは、フィルタ処理結果の画素データが基準画像の画素データ以下であるときステップST23に進む。また、低ビット基準画像生成部12-cは、フィルタ処理結果の画素データが基準画像の画素データよりも大きいときステップST24に進む。 ステップST23で低ビット基準画像生成部12-cは、画素値を「1」に設定してステップST25に進む。
ステップST24で低ビット基準画像生成部12-cは、画素値を「0」に設定してステップST25に進む。
ステップST25で低ビット基準画像生成部12-cは、全画素の比較が完了したか否か判別する。低ビット基準画像生成部12-cは、全画素の比較が完了していないときステップST12に戻り、次の画素について比較を行う。また、低ビット基準画像生成部12-cは、全画素の比較が完了したとき処理を終了する。
このように、フィルタ処理前とフィルタ処理後で画像データの比較を画素毎に行って、比較結果から画素に割り当てるビット数が1ビットとされた画像を生成できる。
次に、低ビット基準画像生成部12-cで、nビットの画像を生成する場合について説明する。図10は、低ビット基準画像生成部12-cの他の構成を例示している。
低ビット基準画像生成部12-cは、フィルタ処理部121と、閾値設定部123と画像比較部124を有している。フィルタ処理部121は、基準画像の画像データのフィルタ処理を行う。フィルタ処理部121は、上述のように平均フィルタやバンドパスフィルタあるいは疑似平均フィルタ等のいずれかを用いて、基準画像のフィルタ処理を行う。
閾値設定部123は、フィルタ処理後の画像データのシフト処理を行い、フィルタ処理後の画像データやシフト処理後の画像データを閾値として設定する。また、閾値設定部123は、設定した閾値を画像比較部124に出力する。
画像比較部124は、基準画像の画像データと閾値設定部123から出力された閾値を画素毎に比較して、比較結果を示すnビットの信号を低ビット基準画像の画像データとする。
図11は、低ビット基準画像生成部における他の動作、すなわち低ビット基準画像生成部12-cでnビット画像を生成するときの動作を示すフローチャートである。ステップST31で低ビット基準画像生成部12-cは、基準画像のフィルタ処理を行う。低ビット基準画像生成部12-cは、基準画像の画像データに対して平均フィルタやバンドパスフィルタ等のフィルタ処理を行ってステップST32に進む。
ステップST32で低ビット基準画像生成部12-cは閾値の設定を行う。低ビット基準画像生成部12-cは、フィルタ処理後の画像データのシフト処理を行い、フィルタ処理後の画像データやシフト処理後の画像データを閾値として設定してステップST33に進む。例えば2ビットの画像を生成する場合、低ビット基準画像生成部12-cは、フィルタ処理後の画像データから予め設定したシフト量だけ減少させた画像データを第1の閾値とする。また、低ビット基準画像生成部12-cは、フィルタ処理後の画像データを第2の閾値、フィルタ処理後の画像データから予め設定したシフト量だけ増加させた画像データを第3の閾値とする。また、nビットの画像を生成する場合、低ビット基準画像生成部12-cは、フィルタ処理後の画像データに基づき(2−1)個の閾値を設定する。
ステップST33で低ビット基準画像生成部12-cは、基準画像の画像データと閾値を画素毎に比較する。低ビット基準画像生成部12-cは、基準画像の画像データが第1の閾値Th1よりも小さい場合、ステップST34に進む。低ビット基準画像生成部12-cは、基準画像の画像データが第1の閾値Th1以上で第2の閾値Th2よりも小さい場合、ステップST35に進む。低ビット基準画像生成部12-cは、基準画像の画像データが第2の閾値Th2以上で第3の閾値Th3よりも小さい場合、ステップST36に進む。低ビット基準画像生成部12-cは、基準画像の画像データが第3の閾値Th3以上である場合、ステップST37に進む。
ステップST34で低ビット基準画像生成部12-cは、画素値を「0」に設定してステップST38に進む。
ステップST35で低ビット基準画像生成部12-cは、画素値を「1」に設定してステップST38に進む。
ステップST36で低ビット基準画像生成部12-cは、画素値を「2」に設定してステップST38に進む。
ステップST37で低ビット基準画像生成部12-cは、画素値を「3」に設定してステップST38に進む。
ステップST38で低ビット基準画像生成部12-cは、全画素の比較が完了したか否か判別する。低ビット基準画像生成部12-cは、全画素の比較が完了していないときステップST33に戻り、次の画素について比較を行う。また、低ビット基準画像生成部12-cは、全画素の比較が完了したとき処理を終了する。
図12は、比較結果と画素値の関係を例示している。画素位置が領域PA1である場合、基準画像の画素値は第2の閾値Th2以上で第3の閾値Th3よりも小さい。したがって、低ビット基準画像生成部12-cは、領域PA1の画素値を「2」とする。画素位置が領域PA2である場合、基準画像の画素値は第3の閾値Th3以上である。したがって、低ビット基準画像生成部12-cは、領域PA2の画素値を「3」とする。画素位置が領域PA3である場合、基準画像の画素値は第2の閾値Th2以上で第3の閾値Th3よりも小さい。したがって、低ビット基準画像生成部12-cは、領域PA3の画素値を「2」とする。画素位置が領域PA4である場合、基準画像の画素値は第1の閾値Th1以上で第2の閾値Th2よりも小さい。したがって、低ビット基準画像生成部12-cは、領域PA4の画素値を「1」とする。画素位置が領域PA5である場合、基準画像の画素値は第1の閾値Th1よりも小さい。したがって、低ビット基準画像生成部12-cは、領域PA5の画素値を「0」とする。
このように、フィルタ処理後の画像データに換えて、フィルタ処理後の画像データに基づいて設定した閾値を用いて、閾値とフィルタ処理前の画素レベルの比較を画素毎に行って、比較結果から画素に割り当てるビット数がnビットとされた画像を生成できる。
[1−5.高域/低域判定部の構成と動作]
図13は、高域/低域判定部15の構成を例示している。高域/低域判定部15は、ノイズ除去部151、平滑化部152、減算部153、判定部154を有している。
ノイズ除去部151は、基準画像のノイズを除去して、ノイズ除去後の基準画像の画像データを、平滑化部152と減算部153に出力する
平滑化部152は、例えばボックスフィルタを用いて構成されており、基準画像の画像データの平滑化を行う。平滑化部152は、平滑化後の画像データを減算部153に出力する。
減算部153は、基準画像の画像データから平滑化後の画像データを減算することで、差分画像データを生成して判定部154に出力する。
判定部154は、動きベクトルの検出を行う基準画像のブロック毎に、ブロック内の差分画像データに基づき、基準画像のブロックが高域成分の多い画像であるか否かを判定する。判定部154は、例えば差分画像データに基づき分散値を算出して、分散値が予め設定した閾値よりも大きい場合には高域画像、閾値以下である場合には低域画像と判定する。また、判定部154は、例えば差分画像データのダイナミックレンジを算出して、ダイナミックレンジが予め設定した閾値よりも大きい場合には高域成分の多い画像すなわち高域画像と判定する。また、閾値以下である場合には高域成分の少ない画像すなわち低域画像と判定する。さらに、判定部154は、例えば差分画像データの各画素位置のデータの合計値や各画素位置のデータの絶対値の合計値を算出して、合計値が予め設定した閾値よりも大きい場合には高域画像、閾値以下である場合には低域画像と判定してもよい。このようにして判定部154は、基準画像のブロックが高域画像であるか低域画像であるか判定して、判定結果を動きベクトル選択部41に出力する。
図14は、高域/低域判定部の動作を示すフローチャートである。ステップST41で高域/低域判定部15は、ノイズ除去処理を行う。高域/低域判定部15は、基準画像のノイズ除去処理を行いステップST42に進む。なお、ステップST41の処理は、必須の処理ではない。
ステップST42で高域/低域判定部15は、平滑化処理を行う。高域/低域判定部15は、例えば上述のようにボックスフィルタを用いて基準画像の平滑化を行ってステップST43に進む。
ステップST43で高域/低域判定部15は、差分算出処理を行う。高域/低域判定部15は、基準画像と平滑化処理後の基準画像との差分を算出することで、基準画像における高域成分を抽出してステップST44に進む。
ステップST44で高域/低域判定部15は、高域/低域識別値算出処理を行う。高域/低域判定部15は、基準画像の高域成分に基づき、基準画像のブロックが高域画像であるか低域画像であるかを判別するための高域/低域識別値を算出する。例えば、分散やダイナミックレンジ、画素値の合計、絶対値の合計等の少なくとも何れかを高域/低域識別値として算出してステップST45に進む。
ステップST45で高域/低域判定部15は、判定処理を行う。高域/低域判定部15は、高域/低域識別値と閾値を比較して、基準画像のブロックが高域画像であるか低域画像であるか判定する。高域/低域判定部15は、例えば高域/低域識別値が閾値よりも大きい場合に高域画像、閾値以下である場合に低域画像と判定する。
[1−6.低ビットパターン画像マッチング部の構成と動作]
次に、低ビットパターン画像マッチング部31について説明する。低ビットパターン基準画像生成部11-cと低ビットパターン参照画像生成部11-rは、ブロック単位でブロック内の画像に応じたパターン画像を生成している。したがって、低ビットパターン画像マッチング部31は、図15の(A)に示すように、パターン画像単位(ブロック単位)で探索を行い、図15の(B)に示すように画素単位での探索を行わないようにする。なお、図15において、斜線部は探索位置を例示している。さらに、低ビットパターン画像マッチング部31は、低ビットパターン基準画像のブロックと低ビットパターン参照画像のブロックとの間の誤差を示す評価値の算出を行い、評価値に基づき動きベクトルを算出する。また、低ビットパターン画像マッチング部31は、ブロック単位で探索を行うと、動きベクトルはブロック単位の精度となる。したがって、ブロック単位の探索で算出された評価値を利用して補間演算を行い、ブロック単位よりも高い精度で動きベクトルを算出する。
図16は、低ビットパターン画像マッチング部31の構成を例示している。低ビットパターン画像マッチング部31は、基準ブロック指定部311、参照ブロック指定部312、評価値算出部313、動きベクトル算出部314を有している。
基準ブロック指定部311は、動きベクトルの検出を行う対象ブロックを指定して、指定したブロックの低ビットパターン基準画像の画像データを評価値算出部313に出力する。
参照ブロック指定部312は、動きベクトルの探索範囲から参照画像のブロックを指定して、指定したブロックの低ビットパターン参照画像の画像データを評価値算出部313に出力する。
評価値算出部313は、基準ブロック指定部311で指定されたブロックの低ビットパターン基準画像と、参照ブロック指定部312で指定された探索範囲内のブロックの低ビットパターン参照画像との誤差を示す評価値を算出する。評価値算出部313は、評価値として差分絶対値和SADやXOR加算値SOXを用いる。
評価値算出部313は、評価値として差分絶対値和SADを用いる場合、式(5)の演算を行う。なお、式(5)において、T(i,j)は低ビットパターン基準画像のブロック内おける位置(i,j)の画素データ、S(i,j)は低ビットパターン参照画像のブロック内おける位置(i,j)の画素データを示している。
評価値算出部313は、評価値としてXOR加算値SOXを用いる場合、低ビットパターン基準画像と低ビットパターン参照画像の画像データが1ビットであるときは、式(6)(7)の演算を行う。なお、XOR値を求める式(7)において、T(i,j)は低ビットパターン基準画像のブロック内おける位置(i,j)の画素データ、S(i,j)は低ビットパターン参照画像のブロック内おける位置(i,j)の画素データを示している。
また、評価値算出部313は、評価値としてXOR加算値SOXを用いる場合、低ビットパターン基準画像と低ビットパターン参照画像の画像データがnビットであるときは、nビットのXOR値の計算として式(8)の演算を行う。すなわち式(8)の演算によって、画素データが等しいときは「XOR=0」、等しくないときは「XOR=1」とする。なお、式(8)において、「k」は画素に割り当てるビット数の第k位を示している。
動きベクトル算出部314は、低ビットパターン基準画像のブロックに対して評価値が最小となるブロックの位置を検出する。さらに、低ビットパターン基準画像のブロックと評価値が最小となるブロック位置の座標差から動きベクトルを算出する。ここで、評価値は、低ビットパターン参照画像のブロック単位で算出されていることから、動きベクトル算出部314は、算出された評価値に基づき例えば補間演算等を行い、ブロック単位よりも高精度で評価値が最小となるブロック位置を推定する。
図17は、補間演算の説明図である。例えば、座標(n−1)の低ビットパターン参照画像を用いたブロックマッチング処理における評価値を「S0」とする。また、座標(n)の低ビットパターン参照画像を用いたブロックマッチング処理における評価値を「S1」、座標(n+1)の低ビットパターン参照画像を用いたブロックマッチング処理における評価値を「S2」とする。動きベクトル算出部314は、式(9)の演算を行うことで評価値が最小となる位置Pxを推定する。また、動きベクトル算出部314は、垂直方向に対しても同様な処理を行い、評価値が最小となる位置を推定する。さらに、動きベクトル算出部314は、低ビットパターン基準画像のブロックと水平方向および垂直方向の評価値が最小となるブロック位置の座標差から動きベクトルを算出して動きベクトル選択部41に出力する。
図18は、低ビットパターン画像マッチング部31の動作を示すフローチャートである。ステップST51で低ビットパターン画像マッチング部31は、基準ブロック位置の指定を行う。低ビットパターン画像マッチング部31は、動きベクトルの検出を行う基準画像のブロックに対応する低ビットパターン基準画像のブロックの位置を指定してステップST52に進む。
ステップST52で低ビットパターン画像マッチング部31は、探索範囲の設定を行う。低ビットパターン画像マッチング部31は、低ビットパターン参照画像に対して探索範囲を設定してステップST53に進む。
ステップST53で低ビットパターン画像マッチング部31は、参照ブロック位置の指定を行う。低ビットパターン画像マッチング部31は、探索範囲の参照ブロックの位置を指定してステップST54に進む。
ステップST54で低ビットパターン画像マッチング部31は、評価値の算出を行う。低ビットパターン画像マッチング部31は、基準ブロックと参照ブロックのパターン画像から誤差を示す評価値を算出する。低ビットパターン画像マッチング部31は、例えば評価値として差分絶対値和SADやXOR加算値SOXを算出する。
ステップST55で低ビットパターン画像マッチング部31は、探索範囲内の全ブロックについて評価値の算出が完了したか否か判別する。低ビットパターン画像マッチング部31は、探索範囲の全ブロックについて評価値の算出が完了していないときにはステップST56に進み、全ブロックについて評価値の算出が完了したときにはステップST57に進む。
ステップST56で低ビットパターン画像マッチング部31は、参照ブロックの新たな位置の指定を行う。低ビットパターン画像マッチング部31は、参照範囲内で評価値の算出が完了していない参照ブロックの位置を新たに指定してステップST54に戻る。
ステップST57で低ビットパターン画像マッチング部31は、基準ブロックに対する動きブロックの算出を行う。低ビットパターン画像マッチング部31は、算出した評価値を用いて補間演算を行い、水平方向および垂直方向の評価値が最小となるブロック位置を推定する。低ビットパターン画像マッチング部31は、低ビットパターン基準画像のブロック位置と推定したブロック位置と座標差から動きベクトルを算出してステップST58に進む。
ステップST58で低ビットパターン画像マッチング部31は、全ての基準ブロックについて処理が完了したか否か判別する。低ビットパターン画像マッチング部31は、処理が完了していない基準ブロックが残っているときステップST59に進む、また、低ビットパターン画像マッチング部31、全ての基準ブロックについて処理が完了したとき、ブロックマッチング処理を終了する。
ステップST59で低ビットパターン画像マッチング部31は、基準ブロックの新たな位置の指定を行う。低ビットパターン画像マッチング部31は、動きベクトルの検出が完了していない基準ブロックの位置を新たに指定してステップST52に戻る。
このような処理を行うものとすれば、低ビットパターン基準画像における各ブロックについて動きベクトルを算出できる。
[1−7.低ビット画像マッチング部の構成と動作]
次に、低ビット画像マッチング部32について説明する。低ビット画像マッチング部32は、低ビット基準画像のブロックと低ビット参照画像のブロックを用いてブロックマッチング処理を行い、ブロック間の誤差を示す評価値を算出する。また、低ビット画像マッチング部32は、評価値が最小となる低ビット参照画像のブロック位置を探索して、探索結果から動きベクトルを算出する。
低ビット画像マッチング部32は、図16に示す低ビットパターン画像マッチング部31と同様に構成されている。低ビット画像マッチング部32の参照ブロック指定部312は、低ビットパターン画像のブロックマッチング処理を行う場合、動きベクトルの探索範囲からパターン画像単位で参照ブロックを指定した。しかし、参照ブロック指定部312は、低ビット画像のブロックマッチング処理を行う場合、マッチングに用いる画像はブロック単位の画像に基づいた置換画像でないことから、探索範囲で例えば参照ブロックの位置を画素単位で順に移動させて指定する。
評価値算出部313は、基準ブロック指定部311で指定されたブロックの低ビット基準画像と、参照ブロック指定部312で指定された探索範囲内の低ビット参照画像との誤差を示す評価値を算出する。評価値の算出は、探索範囲内のブロックを探索範囲内で順次移動させて各位置で行う。評価値算出部313は、評価値として上述のように差分絶対値和SADやXOR加算値SOXを用いる。
動きベクトル算出部314は、低ビット基準画像のブロックに対して評価値が最小となる低ビット参照画像のブロックの位置を検出する。さらに、低ビット基準画像のブロックと評価値が最小となる低ビット参照画像のブロックとの座標差から動きベクトルを算出する。さらに、動きベクトル算出部314は、算出した動きベクトルを動きベクトル選択部41に出力する。
低ビット画像マッチング部32における処理は、図18に示す低ビットパターン画像マッチング部31の処理と同様に行えばよい。また、低ビット画像を用いた動きベクトルの検出では、低ビット参照画像のブロックを画像単位で移動して評価値を算出することから、画素単位の精度で動きベクトルを検出する場合には、補間演算を行う必要がない。
ところで、上述のブロックマッチング処理を行う場合、画像がnビットの画像である場合には、図19に示すXOR値計算処理を行い、ブロック内の画素毎にXOR値を決定すればよい。なお、図19は、低ビット基準画像と低ビット参照画像の各画素がnビットである場合を示している。
ステップST61で画像マッチング部は、ビット位置を示すパラメータkを「k=1」とする。画像マッチング部は、ビット位置を示すパラメータkを、低ビット基準画像と低ビット参照画像における画素データの最下位ビットを示す値「k=1」に設定してステップST62に進む。
ステップST62で画像マッチング部は、パラメータkがn以上となったか否か判別する。画像マッチング部は、パラメータkが低ビット基準画像と低ビット参照画像における画素データの最上位ビットよりも大きくないときはステップST63に進む。また、画像マッチング部は、パラメータkが低ビット基準画像と低ビット参照画像における画素データの最上位ビットよりも大きくなったときステップST68に進む。
ステップST63で画像マッチング部は、第k位ビットの読み出しを行う。画像マッチング部は、低ビット基準画像と低ビット参照画像における画素データから第k位ビットのデータを読み出してステップST64に進む。
ステップST64で画像マッチング部は、XOR計算を行う。画像マッチング部は、ステップST63で読み出した第k位ビットのデータについて排他論理和を算出してステップST65に進む。
ステップST65で画像マッチング部は、第k位が「XOR=1」であるか否か判別する。画像マッチング部は、ステップST64で計算した第k位ビットの排他論理和が「0」であるときステップST66に進む。また、画像マッチング部は、ステップST44で計算した第k位ビットの排他論理和が「1」であるときステップST67に進む。
ステップST66で画像マッチング部は、「k=k+1」の演算を行い、パラメータkを更新してステップST62に戻る。
ステップST67で画像マッチング部は、nビットのXOR値として「XOR=1」として処理を終了する。
ステップST68で画像マッチング部は、nビットのXOR値として「XOR=0」として処理を終了する。
このような処理を行うと、低ビットの基準画像と参照画像における画素データは、最下位ビットから最上位ビット方向に、各ビットの値が等しいか否かが判別される。ここで、ビットの値が等しくないとき、XOR値は「XOR=1」となる。また、全ビットの値が等しいとき、XOR値は「XOR=0」となる。すなわち、低ビットの基準画像と参照画像におけるnビットの画素データが等しくないとき、nビットのXOR値は「XOR=1」、nビットの画素データが等しいとき、nビットのXOR値は「XOR=0」となる。
このようにして、低ビット画像や低ビットパターン画像の画像データがnビットであるときも、XOR値を得ることができる。
[1−8.動きベクトル選択部の動作]
動きベクトル選択部41は、高域/低域判定部15の判定結果に基づき、低ビットパターン画像マッチング部31で算出された動きベクトルと低ビット画像マッチング部32で算出された動きベクトルから対象ブロックの動きベクトルを決定する。具体的には、基準画像のブロックが低域画像と判定された場合、動きベクトル選択部41は、低ビットパターン画像マッチング部31で算出された動きベクトルを選択して出力する。また、基準画像のブロックが高域画像と判定された場合、動きベクトル選択部41は、低ビット画像マッチング部32で生成された動きベクトルを選択して出力する。
以上のような第1の実施の形態によれば、情報処理装置では、図20の(A)に示すように基準画像と参照画像がブロック単位で分割される。また、情報処理装置では、図20の(B)に示すように、低域画像と判別されたブロックに対して、このブロック内の画像に応じたパターン画像を用いたブロックマッチング処理によって算出した動きベクトルが選択される。ここで、低域画像のブロックでは、ブロックの画像に基づいた空間解像度の高いパターン画像を用いることで、低ビット画像を用いる場合に比べて評価値が動きに応じた値を示すようになる。すなわち、低域画像の動きベクトルを精度よく算出できるようになることから、高域成分が少ない画像が含まれていても簡単な構成で精度よく動きベクトルを検出できる。
[1−9.第1の実施の形態の他の構成と動作]
上述の第1の実施の形態の構成では、高域/低域判定部15の判定結果に基づき、動きベクトル選択部41によって、低ビットパターン画像マッチング部31または低ビット画像マッチング部32で算出された動きベクトルの何れかを選択している。しかし、出力する動きベクトルは、低ビットパターン画像マッチング部31で算出された動きベクトルと低ビット画像マッチング部32で算出された動きベクトルの何れかに限られない。例えば高域/低域判定部15の判定結果に基づき、低ビットパターン画像マッチング部31で算出された動きベクトルと低ビット画像マッチング部32で算出された動きベクトルの重み付けを行い、重み付け後の動きベクトルを加算して出力してもよい。
図21は、情報処理装置の第1の実施の形態の他の構成を例示している。なお、図21において、図3と対応する部分については同一符号を付している。また、第1の実施の形態の他の構成では、図3に示す動きベクトル選択部41に替えて、重み付け加算部42を用いている。
情報処理装置10-1bの重み付け加算部42は、低域画像と判定された場合、低ビットパターン画像マッチング部31で算出された動きベクトルの重み付けを高くして低ビット画像マッチング部32で算出された動きベクトルの重み付けを低くする。また、重み付け加算部42は、高域画像と判定された場合、低ビットパターン画像マッチング部31で算出された動きベクトルの重み付けを低くして低ビット画像マッチング部32で算出された動きベクトルの重み付けを高くする。このようにして重み付けがなされた動きベクトルを加算して出力するようにしてもよい。なお、動きベクトル選択部41を用いた場合は、低域画像と判定された場合に低ビット画像マッチング部32で算出された動きベクトルの重み付けを「0」とした処理に相当する。また、高域画像と判定された場合に低ビットパターン画像マッチング部31で算出された動きベクトルの重み付けを「0」とした処理に相当する。
<2.第2の実施の形態>
上述の第1の実施の形態では、基準画像が高域成分の多い画像であるか否かに係らず、低ビットパターン画像と低ビット画像を生成して、低ビットパターン画像マッチング処理と低ビット画像マッチング処理を行う場合を示している。しかし、ブロックの画像が高域画像である場合には低ビット画像のブロックマッチング処理を行い、ブロックの画像が低域画像である場合には低ビットパターン画像のブロックマッチング処理を行えば、第1の実施の形態と同様に精度よく動きベクトルを算出できる。そこで、第2の実施の形態として、ブロックの画像が高域画像である場合には低ビット画像のブロックマッチング処理を行い、ブロックの画像が低域画像である場合には低ビットパターン画像のブロックマッチング処理を行う場合について説明する。
[2−1.第2の実施の形態の構成と動作]
図22は、情報処理装置の第2の実施の形態の構成を例示した図である。なお、図22において、図3と対応する部分については同一符号を付している。
情報処理装置10-2aは、低ビットパターン基準画像生成部11-c、低ビット基準画像生成部12-c、低ビットパターン参照画像生成部11-r、低ビット参照画像生成部12-r、高域/低域判定部15、画像選択部21-c,21-r、低ビットパターン画像マッチング部31、低ビット画像マッチング部32、動きベクトル選択部41を有している。
低ビットパターン基準画像生成部11-cは、基準画像の画像データを所定画像サイズのブロック単位に分割して、ブロック毎にブロック内の画像データに基づいて低ビットパターン基準画像の画像データを生成する。低ビットパターン基準画像生成部11-cは、生成したパターン基準画像の画像データを画像選択部21-cに出力する。
低ビット基準画像生成部12-cは、基準画像の画像データを所定画像サイズのブロック単位に分割して、各ブロックの基準画像の画像データに対してビット数削減処理を行い、低ビット基準画像の画像データを生成する。低ビット基準画像生成部12-cは、生成した低ビット基準画像の画像データを画像選択部21-cに出力する。
低ビットパターン参照画像生成部11-rは、参照画像の画像データを所定画像サイズのブロック単位に分割して、ブロック毎にブロック内の画像データに基づいて低ビットパターン参照画像の画像データを生成する。低ビットパターン参照画像生成部11-rは、生成したパターン参照画像の画像データを画像選択部21-rに出力する。
低ビット参照画像生成部12-rは、参照画像の画像データを所定画像サイズのブロック単位に分割して、各ブロックの基準画像の画像データに対してビット数削減処理を行い、低ビット参照画像の画像データを生成する。低ビット参照画像生成部12-rは、生成した低ビット参照画像の画像データを画像選択部21-rに出力する。
高域/低域判定部15-cは、基準画像のブロック毎に高域画像であるか低域画像であるかを判定する。高域/低域判定部15-cは、判定結果を示す判定信号を画像選択部21-cと動きベクトル選択部41に出力する。
高域/低域判定部15-rは、参照画像のブロック毎に高域画像であるか低域画像であるかを判定する。高域/低域判定部15-rは、判定結果を示す判定信号を画像選択部21-rに出力する。
画像選択部21-cは、基準画像のブロックが低域画像と判定された場合、低ビットパターン基準画像生成部11-cで生成された当該ブロックの画像に基づく低ビットパターン基準画像の画像データを選択する。画像選択部21-cは、選択した画像データを低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。また、画像選択部21-cは、基準画像のブロックが高域画像と判定された場合、低ビット基準画像生成部12-cで生成された当該ブロックの低ビット基準画像の画像データを選択する。画像選択部21-cは、選択した画像データを低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。
画像選択部21-rは、参照画像のブロックが低域画像であると判定された場合、低ビットパターン参照画像生成部11-rで生成された当該ブロックの画像に基づく低ビットパターン参照画像の画像データを選択する。画像選択部21-rは、選択した画像データを低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。また、画像選択部21-rは、参照画像のブロックが高域画像であると判定された場合、低ビット参照画像生成部12-rで生成された当該ブロックの低ビット参照画像の画像データを選択する。画像選択部21-rは、選択した画像データを低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。
低ビットパターン画像マッチング部31は、画像選択部21-c,21-rで選択された画像データを用いて、ブロックマッチング処理を行い動きベクトルを算出する。
低ビット画像マッチング部32は、画像選択部21-c,21-rで選択された画像データを用いて、ブロックマッチング処理を行い動きベクトルを算出する。
動きベクトル選択部41は、高域/低域判定部15-cからの判定信号によって、対象ブロックの基準画像が低域画像と判定された場合には、低ビットパターン画像マッチング部31で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
このような第2の実施の形態では、高域/低域判定部からの判定信号によって、ブロックの画像が低域画像と判定された場合には低ビットパターン画像が選択されて、高域画像と判定された場合には低ビット画像が選択される。また、ブロックの画像が低域画像と判定された場合には低ビットパターン画像のマッチング処理によって算出された動きベクトルが選択されて出力される。さらに、ブロックの画像が高域画像と判定された場合には低ビット画像のマッチング処理によって算出された動きベクトルが選択されて出力される。したがって、第1の実施の形態のように、基準画像と参照画像のそれぞれについて低ビット画像と低ビットパターン画像を保持しておき、低ビット画像を用いたブロックマッチング処理と低ビットパターン画像を用いたマッチング処理をブロック毎に行う必要がない。このため、第1の実施の形態に比べて情報処理装置の構成および処理を簡易とすることができる。
[2−2.第2の実施の形態の他の構成]
ところで、上述の第2の実施の形態では、情報処理装置に基準画像と参照画像が並列して入力される場合を例示したが、基準画像と参照画像が交互に入力されても、同様な処理を行うことができる。
図23は、第2の実施の形態の他の構成として、基準画像の後に参照画像が入力される場合の情報処理装置の構成を例示している。なお、図23において、図3,22と対応する部分については同一符号を付している。
情報処理装置10-2bは、低ビットパターン画像生成部11、低ビット画像生成部12、高域/低域判定部15、画像選択部21、遅延バッファ部22、低ビットパターン画像マッチング部31、低ビット画像マッチング部32、動きベクトル選択部41を有している。
低ビットパターン画像生成部11は、低ビットパターン基準画像生成部11-cや低ビットパターン参照画像生成部11-rと同様に、基準画像(参照画像)の画像データを所定画像サイズのブロック単位に分割する。また、低ビットパターン画像生成部11は、ブロック毎にブロック内の画像データに基づいて低ビットパターン画像の画像データを生成する。低ビットパターン画像生成部11は、生成したパターン画像の画像データを画像選択部21に出力する。
低ビット画像生成部12は、低ビット基準画像生成部12-cや低ビット参照画像生成部12-rと同様に基準画像(参照画像)の画像データに対してビット数削減処理を行い、低ビット画像の画像データを生成する。低ビット画像生成部12は、生成した低ビット画像の画像データを画像選択部21に出力する。
高域/低域判定部15は、基準画像(参照画像)のブロックが低域画像であるか高域画像であるか判定する。高域/低域判定部15は、判定結果を示す判定信号を画像選択部21と動きベクトル選択部41に出力する。
画像選択部21は、基準画像(参照画像)のブロックが低域画像であると判定された場合、低ビットパターン画像生成部11で生成された低ビットパターン画像の画像データを選択する。画像選択部21は、選択した画像を遅延バッファ部22と低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。また、画像選択部21は、基準画像(参照画像)のブロックが高域画像であると判定された場合、低ビット画像生成部12で生成された低ビット画像の画像データを選択する。画像選択部21は、選択した画像データを遅延バッファ部22と低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。
遅延バッファ部22は、基準画像から生成した低ビットパターン基準画像を1フレーム遅延して、基準画像から生成した低ビットパターン基準画像と参照画像から生成した低ビットパターン参照画像の画像データを用いたブロックマッチング処理を行えるようにする。また、遅延バッファ部22は、基準画像から生成した低ビット基準画像を1フレーム遅延して、基準画像から生成した低ビット基準画像と参照画像から生成した低ビット参照画像の画像データを用いてブロックマッチング処理を行うことができるようにする。
低ビットパターン画像マッチング部31と低ビット画像マッチング部32は、遅延バッファ部22から供給された画像データと画像選択部21で選択された画像データを用いて、マッチング処理を行い動きベクトルを算出する。基準画像(参照画像)のブロックが低域画像であると判定された場合、低ビットパターン画像マッチング部31は、低ビットパターン基準画像と低ビットパターン参照画像の画像データを用いてブロックマッチング処理を行い低域画像の動きベクトルを算出する。また、基準画像(参照画像)のブロックが高域画像であると判定された場合、低ビット画像マッチング部32は、低ビット基準画像と低ビット参照画像の画像データを用いてブロックマッチング処理を行い高域画像の動きベクトルを算出する。
動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が低域画像と判定された場合には、低ビットパターン画像マッチング部31で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
このような構成とすることで、基準画像と参照画像のそれぞれに対して低ビットパターン画像生成部と低ビット画像生成部を設ける必要がないので、情報処理装置の構成が簡単となる。
[2−3.第2の実施の形態の他の構成]
図24は、第2の実施の形態の他の構成として、参照画像の後に基準画像が入力される場合の情報処理装置の構成を例示している。なお、図24において、図3,22と対応する部分については同一符号を付している。
情報処理装置10-2cは、低ビットパターン画像生成部11、低ビット画像生成部12、高域/低域判定部15、画像選択部21、遅延バッファ部23、低ビットパターン画像マッチング部31、低ビット画像マッチング部32、動きベクトル選択部41を有している。
低ビットパターン画像生成部11は、低ビットパターン基準画像生成部11-cや低ビットパターン参照画像生成部11-rと同様に、参照画像(基準画像)の画像データを所定画像サイズのブロック単位に分割する。また、低ビットパターン画像生成部11は、ブロック毎にブロック内の画像データに基づいて低ビットパターン画像の画像データを生成する。低ビットパターン画像生成部11は、生成したパターン画像の画像データを画像選択部21に出力する。
低ビット画像生成部12は、低ビット基準画像生成部12-cや低ビット参照画像生成部12-rと同様に参照画像(基準画像)の画像データに対してビット数削減処理を行い、低ビット画像の画像データを生成する。低ビット画像生成部12は、生成した低ビット画像の画像データを画像選択部21に出力する。
高域/低域判定部15は、参照画像(基準画像)のブロックが低域画像であるか高域画像であるか判定する。高域/低域判定部15は、判定結果を示す判定信号を画像選択部21と遅延バッファ部24に出力する。
画像選択部21は、参照画像(基準画像)のブロックが低域画像である場合、低ビットパターン画像生成部11で生成された低ビットパターン画像の画像データを選択する。画像選択部21は、選択した画像データを遅延バッファ部23と低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。また、画像選択部21は、参照画像(基準画像)のブロックが高域画像である場合、低ビット画像生成部12で生成された低ビット画像の画像データを選択する。画像選択部21は、選択した画像データを遅延バッファ部23と低ビットパターン画像マッチング部31と低ビット画像マッチング部32に出力する。
遅延バッファ部23は、参照画像から生成した低ビットパターン参照画像を1フレーム遅延して、基準画像から生成した低ビットパターン基準画像と参照画像から生成した低ビットパターン参照画像の画像データを用いたブロックマッチング処理を行えるようにする。また、遅延バッファ部23は、参照画像から生成した低ビット参照画像を1フレーム遅延して、基準画像から生成した低ビット基準画像と参照画像から生成した低ビット参照画像の画像データを用いてブロックマッチング処理を行うことができるようにする。
遅延バッファ24は、高域/低域判定部15からの判定信号をブロックマッチング処理で算出された動きベクトルと同期するように遅延させて動きベクトル選択部41に出力する。
低ビットパターン画像マッチング部31と低ビット画像マッチング部32は、遅延バッファ部23から供給された画像データと画像選択部21で選択された画像データを用いて、ブロックマッチング処理を行い動きベクトルを算出する。参照画像(基準画像)のブロックが低域画像であると判定された場合、低ビットパターン画像マッチング部31は、低ビットパターン基準画像と低ビットパターン参照画像の画像データを用いてブロックマッチング処理を行い低域画像の動きベクトルを算出する。また、参照画像(基準画像)のブロックが高域画像であると判定された場合、低ビット画像マッチング部32は、低ビット基準画像と低ビット参照画像の画像データを用いてブロックマッチング処理を行い高域画像の動きベクトルを算出する。
動きベクトル選択部41は、遅延バッファ部24によって遅延された判定信号によって、対象ブロックの基準画像が低域画像と判定された場合には、低ビットパターン画像マッチング部31で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、判定信号によって、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
このような構成とすることで、基準画像と参照画像のそれぞれに対して低ビットパターン画像生成部と低ビット画像生成部を設ける必要がないので、情報処理装置の構成が簡単となる。
<3.第3の実施の形態>
上述の第1の実施の形態では、1ブロックの画像の例えば画素平均値に応じて低ビットパターン画像のパターンが決定される。このため、第1の実施の形態において低ビットパターン画像を用いて算出される動きベクトルは、ブロック内の画像の違いが考慮されていない。
図25は、ブロック内の輝度分布が異なる場合を例示している。例えば図25の(A)に示すように左上が明るい場合と図25の(B)に示すように左下が明るい場合、輝度平均値が等しいと、輝度分布が異なっていても同じパターン画像となってしまう。
しかし、図25の(C)(D)に示すように、ブロック内の画像を更に分割して、分割ブロックの画像に基づいた画像選択値に対応するパターン画像を選択すれば、図25の(A)に示す画像と図25の(B)に示す画像の識別が可能となる。そこで、第3の実施の形態では、ブロック内の画像の違い例えば輝度分布の違いを考慮したパターン画像を生成することにより、精度の高い動きベクトルの算出を可能とする場合について説明する。
[3−1.第3の実施の形態の構成]
図26は、情報処理装置の第3の実施の形態の構成を例示している。情報処理装置10-3aは、低ビット基準画像生成部12-c、低ビット参照画像生成部12-r、低ビット設定サイズパターン基準画像生成部13-c、低ビット設定サイズパターン参照画像生成部13-r、高域/低域判定部15、低ビットパターン画像マッチング部31、低ビット画像マッチング部32、動きベクトル選択部41を有している。
低ビット基準画像生成部12-cは、基準画像の画像データに対してビット数削減処理を行い、低ビット基準画像の画像データを生成する。例えば、低ビット基準画像生成部12-cは、基準画像の8ビットの画像データに対してビット数削減処理を行い、1ビットである低ビット基準画像の画像データを生成する。低ビット基準画像生成部12-cは、生成した低ビット基準画像の画像データを低ビット画像マッチング部32に出力する。
低ビット参照画像生成部12-rは、参照画像の画像データに対してビット数削減処理を行い、低ビット参照画像の画像データを生成する。例えば、低ビット参照画像生成部12-rは、参照画像の8ビットの画像データに対してビット数削減処理を行い、1ビットである低ビット参照画像の画像データを生成する。低ビット参照画像生成部12-rは、生成した低ビット参照画像の画像データを低ビット画像マッチング部32に出力する。
低ビット設定サイズパターン基準画像生成部13-cは、基準画像の画像データを所定画像サイズのブロック単位に分割する。さらに、所定画像サイズのブロックを、ブロックサイズの設定指示に応じて分割する。低ビット設定サイズパターン基準画像生成部13-cは、所定画像サイズのブロックを分割した分割ブロック毎に分割ブロック内の画像データに基づいて低ビット設定サイズパターン基準画像の画像データを生成する。ブロックサイズの設定指示は、ユーザが行ってもよく情報処理装置を用いる機器が設定指示を行うようにしてもよい。
低ビット設定サイズパターン参照画像生成部13-rは、参照画像の画像データを所定画像サイズのブロック単位に分割する。さらに、所定画像サイズのブロックを、指示されたブロックサイズに分割する。低ビット設定サイズパターン参照画像生成部13-rは、所定画像サイズのブロックを分割した分割ブロック毎に分割ブロック内の画像データに基づいて低ビット設定サイズパターン参照画像の画像データを生成する。
高域/低域判定部15は、動きベクトルを算出する対象ブロックの基準画像が高域画像であるか低域画像であるか判定する。高域/低域判定部15は、判定結果を示す判定信号を動きベクトル選択部41に出力する。
低ビットパターン画像マッチング部31は、低ビット設定サイズパターン基準画像生成部13-cで生成された低ビット設定サイズパターン基準画像の画像データと、低ビット設定サイズパターン参照画像生成部13-rで生成された低ビット設定サイズパターン参照画像の画像データを用いて、パターン画像サイズのブロック単位でブロックマッチング処理を行い、動きベクトルを算出する。例えば、対象ブロックに対応した1ビットパターン基準画像と1ビットパターン参照画像との誤差を示す評価値を算出して、算出した評価値に基づき対象ブロックの動きベクトルを算出する。低ビットパターン画像マッチング部31は、算出した動きベクトルを動きベクトル選択部41に出力する。
低ビット画像マッチング部32は、低ビット基準画像生成部12-cで生成された低ビット基準画像の画像データと、低ビット参照画像生成部12-rで生成された低ビット参照画像の画像データを用いて、ブロックマッチング処理を行い動きベクトルを算出する。例えば、対象ブロックの低ビット基準画像と低ビット参照画像との誤差を示す評価値を算出して、算出した評価値に基づき対象ブロックの動きベクトルを算出する。低ビット画像マッチング部32は、算出した動きベクトルを動きベクトル選択部41に出力する。
動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が低域画像と判定された場合には、低ビットパターン画像マッチング部31で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
[3−2.第3の実施の形態の動作]
図27は、低ビット設定サイズパターン画像の生成動作を説明するための図である。例えば図27の(A)に示すようにブロックサイズが16×16画素である場合、画像選択値例えば8ビットの画素平均値を256画素で表現できる。また、16×16画素のブロックサイズを図27の(B)に示すように4分割すると、1/4分割ブロックの画素平均値のLSB側から6ビットの情報を64画素で表現できる。また、16×16画素のブロックサイズを図27の(C)に示すように8分割すると、1/8分割ブロックの画素平均値のLSB側から5ビットの情報を32画素で表現できる。同様に、16×16画素のブロックサイズを図27の(D)に示すように32分割すると、1/32分割ブロックの画素平均値のLSB側から3ビットの情報を8画素で表現できる。
このように、ブロックを分割して、分割ブロック(分割後のブロック)内の画素平均値のLSB側からブロックサイズに応じた情報を分割ブロックの画素で表現すれば、分割ブロックのパターン画像は、低域画像における高域成分を示すことになる。したがって、16×16画像のブロックサイズにおける画素値分布を、分割ブロックのパターン画像で示すことができる。
ここで、分割ブロックの画素平均値のLSB側から分割ブロックサイズに応じた所定ビットの情報をパターン画像として表現する場合、低域画像では周辺ブロックとの差分が大きくないので、隣り合った値の差分を例えば排他論理和演算で算出できるようにする。図28は、1/32分割ブロックの画素平均値のLSB側から3ビットの情報を8画素で表現する場合のパターン画像を例示している。図28の(A)は、1/32分割ブロックの画素平均値のLSB側から3ビットの情報とパターン画像の関係を例示している。パターン画像では、3ビットの情報の差分が所定範囲内である場合に、排他論理和が差分を示すようにパターン画像が設定されている。すなわち、パターン画像は、パターン画像間における画素値の相違する画素数が画像選択値の差を示すように設定されている。例えば、図28の(A)では、3ビットの情報の差分が±8の範囲である場合、排他論理和が差分を示すようにパターン画像が設定されている。ここで、1/32分割ブロックの画素平均値のLSB側から3ビットの情報が値「20」である場合、低ビットパターン画像は「00001111」であり、値「17」である場合、低ビットパターン画像は「00000001」である。したがって、低ビットパターン画像の排他論理和を算出すると、図28の(B)に示すように、排他論理和で画素平均値の差分値を示すことができる。
図29は、低ビット設定サイズパターン基準画像生成部13-cの構成を例示している。なお、低ビット設定サイズパターン参照画像生成部13-rも同様に構成される。
低ビット設定サイズパターン基準画像生成部13-cは、画像分割部131、画像選択値算出部132、パターン画像決定部133、データベース134を有している。
画像分割部131は、基準画像を所定画像サイズのブロック単位に分割する。さらに、画像分割部131は、所定画像サイズのブロックを設定指示に応じたブロックサイズに分割して、分割ブロック単位の画像データを画像選択値算出部132に出力する。
画像選択値算出部132は、分割ブロック単位の画像データからブロック毎にブロックの画像に基づいた画像選択値を算出する。例えば画像選択値算出部132は、分割ブロック内の画素平均値から分割ブロックのサイズに応じてLSB側から所定ビット数を選択して、この選択されたビットで示される値を画像選択値とする。また、画像選択値算出部132は、分割ブロック内の画素中央値等から画像選択値を算出してもよい。画像選択値算出部132は、算出した画像選択値をパターン画像決定部133に出力する。
パターン画像決定部133は、画像選択値算出部132で算出された画像選択値に応じたパターン基準画像を決定する。例えばパターン画像決定部133は、画像選択値毎の1ビットパターン画像を記憶したデータベース134と接続されている。パターン画像決定部133は、画像選択値算出部132で算出された画像選択値に応じたパターン画像をデータベース134から読み出すことで、分割ブロックに対応するパターン基準画像を決定する。
このようにして決定されたパターン基準画像を用いるブロックマッチング処理は、パターン画像が分割ブロック単位生成されていることから分割ブロックに対応するパターン画像単位の探索を行い評価値を算出する。すなわち、低ビット設定サイズパターン基準画像生成部13-cや低ビット設定サイズパターン参照画像生成部13-rは、設定された分割ブロックサイズの画像に応じたパターン画像を生成している。したがって、低ビットパターン画像マッチング部31は、例えば図30の(A)に示すように、16×16画素のブロックを8×4画素のサイズで分割して分割ブロック毎のパターン画像を生成する場合、図30の(B)に示すようにパターン画像単位(分割ブロック単位)で探索を行う。また、図30の(C)に示すように画素単位で探索を行わないようにする。なお、評価値の算出は分割前の所定画像サイズのブロック単位で行う。
このようにして算出された評価値に基づき動きベクトルを算出すると、所定画像サイズのブロック内の画素値分布を考慮して動きベクトルが算出される。したがって、所定画像サイズのブロックの画像に基づいて生成されたパターン画像を用いて動きベクトルを算出する場合に比べて、精度よく動きベクトルを算出てきるようになる。
動きベクトル選択部41は、設定サイズ高域/低域判定部16からの判定信号によって、分割ブロックの基準画像が低域画像と判定された場合には、低ビット設定サイズパターン画像マッチング部33で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、設定サイズ高域/低域判定部16からの判定信号によって、分割ブロックの基準画像が高域画像と判定された場合には、低ビット設定サイズ画像マッチング部34で算出された動きベクトルを選択して出力する。
以上のような第3の実施の形態によれば、所定画像サイズのブロックが分割されて分割ブロックの画像に基づいた画像選択値に対応するパターン画像が用いられる。このため、所定画像サイズのブロック内の画像の違い例えば画素値分布の違いを考慮した動きベクトルの算出を行うことが可能となる。したがって、所定画像サイズのブロックの画像に基づいてパターン画像を生成する場合に比べて、動きベクトルを精度よく算出できる。
[3−3.第3の実施の形態の他の構成と動作]
ところで、上述の第3の実施の形態では、分割ブロックのパターン画像を生成していることから、分割ブロック毎に動きベクトルを算出するようにしてもよい。次に、第3の実施の形態の他の構成と動作として、分割ブロック毎に動きベクトルを算出する場合について説明する。
図31は、情報処理装置の第3の実施の形態の他の構成を例示した図である。なお、図31において、図26と対応する部分については同一符号を付している。
情報処理装置10-3bは、低ビット基準画像生成部12-c、低ビット参照画像生成部12-r、低ビット設定サイズパターン基準画像生成部13-c、低ビット設定サイズパターン参照画像生成部13-r、設定サイズ高域/低域判定部16、低ビット設定サイズパターン画像マッチング部33、低ビット設定サイズ画像マッチング部34、動きベクトル選択部41を有している。
低ビット基準画像生成部12-cは、基準画像の画像データに対してビット数削減処理を行い、低ビット基準画像の画像データを生成する。低ビット基準画像生成部12-cは、生成した低ビット基準画像の画像データを低ビット設定サイズ画像マッチング部34に出力する。
低ビット参照画像生成部12-rは、参照画像の画像データに対してビット数削減処理を行い、低ビット参照画像の画像データを生成する。低ビット参照画像生成部12-rは、生成した低ビット参照画像の画像データを低ビット設定サイズ画像マッチング部34に出力する。
低ビット設定サイズパターン基準画像生成部13-cは、基準画像の画像データを所定画像サイズのブロック単位に分割して、さらにブロックを設定指示されたブロックサイズに分割する。この分割ブロック毎にブロック内の画像データに基づいて低ビットパターン基準画像の画像データを生成する。低ビット設定サイズパターン基準画像生成部13-cは、生成したパターン基準画像の画像データを低ビット設定サイズパターン画像マッチング部33に出力する。
低ビット設定サイズパターン参照画像生成部13-rは、参照画像の画像データを所定画像サイズのブロック単位に分割して、さらにブロックを設定指示されたブロックサイズに分割する。この分割ブロック毎にブロック内の画像データに基づいて低ビットパターン参照画像の画像データを生成する。低ビット設定サイズパターン参照画像生成部13-rは、生成したパターン参照画像の画像データを低ビット設定サイズパターン画像マッチング部33に出力する。
設定サイズ高域/低域判定部16は、分割ブロック単位で基準画像が高域画像であるか低域画像であるか判定する。設定サイズ高域/低域判定部16は、判定結果を示す判定信号を動きベクトル選択部41に出力する。
低ビット設定サイズパターン画像マッチング部33は、低ビット設定サイズパターン基準画像生成部13-cで生成された低ビット設定サイズパターン基準画像の画像データと、低ビット設定サイズパターン参照画像生成部13-rで生成された低ビット設定サイズパターン参照画像の画像データを用いて、分割ブロックについてブロックマッチング処理を行い、動きベクトルを基準画像の分割ブロック毎に算出する。低ビット設定サイズパターン画像マッチング部33は、算出した動きベクトルを動きベクトル選択部41に出力する。
低ビット設定サイズ画像マッチング部34は、低ビット基準画像生成部12-cで生成された低ビット基準画像の画像データと、低ビット参照画像生成部12-rで生成された低ビット参照画像の画像データを用いて、分割ブロックについてブロックマッチング処理を行い、動きベクトルを基準画像の分割ブロック毎に算出する。低ビット設定サイズ画像マッチング部34は、算出した動きベクトルを動きベクトル選択部41に出力する。
動きベクトル選択部41は、基準画像における分割ブロックが低域画像と判定された場合には、低ビット設定サイズパターン画像マッチング部33で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、設定サイズ高域/低域判定部16からの判定信号によって、基準画像における分割ブロックが高域画像と判定された場合には、低ビット設定サイズ画像マッチング部34で算出された動きベクトルを選択して出力する。
このように、設定されたサイズの分割ブロック単位で動きベクトルの検出を行えば、所定画像サイズのブロック単位で動きベクトルを検出する場合に比べて、より詳細に動きベクトルを検出できる。
また、第3の実施の形態において、設定サイズ高域/低域判定部16や低ビット設定サイズパターン画像マッチング部33や低ビット設定サイズ画像マッチング部34は、分割前のブロック毎または分割ブロック毎に判定やマッチング処理を行う場合に限られない。例えば1/8分割の分割ブロック単位である場合、1/4分割のブロックサイズで判定やマッチング処理を行うようにしてもよい。
また、ブロックサイズの設定指示は、上述のように情報処理装置を用いる機器が設定指示を行うようにすれば、機器に適したブロックサイズで動きベクトルを算出できる。例えば画像符号化装置に用いる場合、ブロックサイズを符号化処理単位のブロックサイズとすることで、符号化処理に適した動きベクトルの算出を行うことができる。また、撮像画像から例えばグローバル動きベクトルを求める場合、ブロックサイズを小さくすれば撮像画像に対して詳細に動きベクトルを算出することが可能となり、精度よくグローバル動きベクトルを算出できるようになる。
<4.第4の実施の形態>
上述の第3の実施の形態は、第1の実施の形態の低ビットパターン基準画像生成部11-cに替えて、低ビット設定サイズパターン基準画像生成部13-cが用いられている。同様に、低ビットパターン参照画像生成部11-rに替えて低ビット設定サイズパターン参照画像生成部13-rが用いられている。この低ビット設定サイズパターン基準画像生成部13-cや低ビット設定サイズパターン参照画像生成部13-rは、第2の実施の形態の情報処理装置に設けることもできる。次に、第4の実施の形態として、低ビット設定サイズパターン基準画像生成部13-cと低ビット設定サイズパターン参照画像生成部13-rを第2の実施の形態の情報処理装置に設けた場合について説明する。
[4−1.第4の実施の形態の構成と動作]
図32は、情報処理装置の第4の実施の形態の構成を例示した図である。なお、図32において、図3と対応する部分については同一符号を付している。
情報処理装置10-4は、低ビット基準画像生成部12-c、低ビット参照画像生成部12-r、低ビット設定サイズパターン基準画像生成部13-c、低ビット設定サイズパターン参照画像生成部13-r、設定サイズ高域/低域判定部16-c,16-r、画像選択部21-c,21-r、画像マッチング部35を有している。
低ビット基準画像生成部12-cは、基準画像の画像データに対してビット数削減処理を行い、低ビット基準画像の画像データを生成する。低ビット基準画像生成部12-cは、生成した低ビット基準画像の画像データを画像選択部21-cに出力する。
低ビット参照画像生成部12-rは、参照画像の画像データに対してビット数削減処理を行い、低ビット参照画像の画像データを生成する。低ビット参照画像生成部12-rは、生成した低ビット参照画像の画像データを画像選択部21-rに出力する。
低ビット設定サイズパターン基準画像生成部13-cは、基準画像の画像データを設定されたサイズのブロック単位に分割して、ブロック毎にブロック内の画像データに基づいて低ビットパターン基準画像の画像データを生成する。低ビット設定サイズパターン基準画像生成部13-cは、生成したパターン基準画像の画像データを画像選択部21-cに出力する。
低ビット設定サイズパターン参照画像生成部13-rは、参照画像の画像データを設定されたサイズのブロック単位に分割して、ブロック毎にブロック内の画像データに基づいて低ビットパターン参照画像の画像データを生成する。低ビット設定サイズパターン参照画像生成部13-rは、生成したパターン参照画像の画像データを画像選択部21-rに出力する。
設定サイズ高域/低域判定部16-cは、基準画像の設定されたサイズのブロック毎に低域画像であるか高域画像であるか判定する。設定サイズ高域/低域判定部16-cは、判定結果を示す判定信号を画像選択部21-cに出力する。
設定サイズ高域/低域判定部16-rは、参照画像の設定されたサイズのブロック毎に低域画像であるか高域画像であるか判定する。設定サイズ高域/低域判定部16-rは、判定結果を示す判定信号を画像選択部21-rに出力する。
画像選択部21-cは、基準画像のブロックが低域画像である場合、低ビット設定サイズパターン基準画像生成部13-cで生成された低ビットパターン基準画像の画像データを選択して画像マッチング部35に出力する。また、画像選択部21-cは、基準画像のブロックが高域画像である場合、低ビット基準画像生成部12-cで生成された低ビット基準画像の画像データを選択して画像マッチング部35に出力する。
画像選択部21-rは、参照画像のブロックが低域画像である場合、低ビット設定サイズパターン参照画像生成部13-rで生成された低ビットパターン参照画像の画像データを選択して、画像マッチング部35に出力する。また、画像選択部21-rは、参照画像のブロックが高域画像である場合、低ビット参照画像生成部12-rで生成された低ビット参照画像の画像データを選択して画像マッチング部35に出力する。
画像マッチング部35は、画像選択部21-c,21-rで選択された画像データを用いて、マッチング処理を行い動きベクトルを算出する。
このような第4の実施の形態によれば、所定画像サイズのブロックの画像に基づいてパターン画像を生成する場合に比べて、動きベクトルを精度よく算出できる。また、情報処理装置の構成が簡単となる。
<5.第5の実施の形態>
上述の第1乃至第4の実施の形態では、基準画像に基づいた置換基準画像として低ビットパターン基準画像、参照画像に基づいた置換参照画像として低ビットパターン参照画像を生成する場合について説明した。しかし、置換基準画像や置換参照画像は、低域画像の動きベクトルを容易に精度よく算出できる画像であれば、低ビットパターン画像に限らず他の画像を用いてもよい。次に、第5の実施の形態として、基準画像に基づいた置換基準画像として縮小基準画像、参照画像に基づいた置換参照画像として縮小参照画像を用いる場合について説明する。
[5−1.第5の実施の形態の構成]
図33は、情報処理装置の第5の実施の形態の構成を例示した図である。なお、図33において、図3と対応する部分については同一符号を付している。
情報処理装置10-5は、低ビット基準画像生成部12-c、低ビット参照画像生成部12-r、縮小基準画像生成部14-c、縮小参照画像生成部14-r、高域/低域判定部15、低ビット画像マッチング部32、縮小画像マッチング部36、動きベクトル選択部41を有している。
縮小基準画像生成部14-cは、基準画像の画像データに対して画素数削減処理を行い、縮小基準画像を生成する。縮小基準画像生成部14-cは、生成した縮小基準画像の画像データを縮小画像マッチング部36に出力する。例えば、縮小基準画像生成部14-cは、参照画像の8ビットの画像データに対して画素数削減処理を行い、水平方向や垂直方向の画素数が削減された縮小基準画像の画像データを縮小画像マッチング部36に出力する。
縮小参照画像生成部14-rは、参照画像の画像データに対して画素数削減処理を行い、縮小基準画像と等しい画素数の縮小参照画像を生成する。また、縮小参照画像生成部14-rは、生成した縮小参照画像の画像データを縮小画像マッチング部36に出力する。
縮小画像マッチング部36は、縮小基準画像生成部14-cから出力された縮小基準画像の画像データと、縮小参照画像生成部14-rから出力された縮小参照画像の画像データを用いて動きベクトルの算出を行う。縮小画像マッチング部36は、ブロックマッチング処理によって算出した評価値が最小となるブロックを検出して、2つのブロックの位置から動きベクトルを算出する。さらに、縮小画像マッチング部36は、検出した動きベクトルを動きベクトル選択部41に出力する。
動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が低域画像と判定された場合には、縮小画像マッチング部36で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、高域/低域判定部15からの判定信号によって、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
[5−2.第5の実施の形態の動作]
次に、縮小画像の生成について説明する。縮小画像生成部は、隣接する複数画素から複数画素を代表する1つの画素を生成することで、あるいは画素の間引きを行うことで、画素数削減処理を行い、縮小画像を生成する。
図34は、縮小画像の生成動作を説明するための図である。図34の(A)は、画像を(1/2)倍とするときの縮小処理単位を示している。また、図34の(B)は、画像を(1/4)倍、図34の(C)は、画像を(1/8)倍とするときの縮小処理単位を示している。縮小画像生成部は、画像を(1/2)倍とするとき、隣接する2×2画素を縮小処理単位とする。また、縮小画像生成部は、画像を(1/4)倍とするとき隣接する4×4画素を縮小処理単位、画像を(1/8)倍とするとき隣接する8×8画素を縮小処理単位とする。さらに、縮小画像生成部は、縮小処理単位に含まれる複数の画素データから、縮小処理単位を1画素とした画素データを算出する。例えば、縮小画像生成部は、縮小処理単位に含まれる複数の画素データの平均値を算出して、縮小処理単位を1画素としたときの画素データとする。このように、縮小画像生成部は、縮小処理単位に含まれる複数の画素から1画素を生成する処理を行う。したがって、図34の(A)に示すように縮小処理単位を設定したとき、縮小画像生成部は、水平方向および垂直方向の画素数を(1/2)倍とした縮小画像を生成する。また、図34の(B)に示すように縮小処理単位を設定したとき、縮小画像生成部は、水平方向および垂直方向の画素数を(1/4)倍とした縮小画像を生成する。さらに、図34の(C)に示すように縮小処理単位を設定したとき、縮小画像生成部は、水平方向および垂直方向の画素数を(1/8)倍とした縮小画像を生成する。なお、縮小画像生成部の処理は、図34に示す処理に限られない。縮小画像生成部は、例えば画素間引き等を行うことで縮小画像を生成するようにしてもよい。
縮小画像マッチング部36は、縮小基準画像と縮小参照画像に基づき動きベクトルを算出して動きベクトル選択部41に出力する。ここで、縮小基準画像と縮小参照画像に基づき算出された動きベクトルは、画像が縮小されていることから画像の縮小割合に応じて小さくなる。そこで、縮小画像マッチング部36は、縮小基準画像と縮小参照画像に基づき算出した動きベクトルを、縮小画像を縮小前の画像に戻す拡大率で拡大してから動きベクトル選択部41に出力する。
動きベクトル選択部41は、対象ブロックの基準画像が低域画像と判定された場合には、縮小画像マッチング部36で算出された動きベクトルを選択して出力する。また、動きベクトル選択部41は、対象ブロックの基準画像が高域画像と判定された場合には、低ビット画像マッチング部32で算出された動きベクトルを選択して出力する。
このような第5の実施の形態によれば、置換画像としてデータ量の削減されている縮小画像が用いられているので、従来から用いられている例えば8ビット画像のブロックマッチング処理を行うマッチング部を流用して、少ない演算量で動きベクトルを算出できる。また、低ビット画像に比べて各画素のビット数が大きいので、低ビット画像を用いた場合に比べて低域画像でも精度よく動きベクトルを算出できる。したがって、高域成分が少ない画像が含まれていても簡単な構成で精度よく動きベクトルを検出することができるようになる。
なお、情報処理装置は、縮小画像の画像データに対してフィルタ処理を行い、ビット数削減処理が行われた縮小画像の画像データを用いて動きベクトルの検出を行うようにしてもよい。
<6.その他の形態>
ところで、上述の第1乃至第4の実施の形態では、ブロック内の画像が低域画像である場合、ブロック内の画像の輝度に応じたパターン画像を用いてマッチング処理を行っている。しかし、マッチング処理に用いる画像は、ブロックの画像に基づいた画像選択値に対応するパターン画像とブロックの低ビット画像を用いてもよい。例えば、図35に示すように、ブロック内を高域情報領域と低域情報領域に区分して、低域情報領域は、ブロックの画像に基づいた画像選択値に対応するパターン画像とする。また、高域情報領域は、ブロックの低ビット縮小画像とする。さらに、ブロックマッチング処理では、ブロック単位で高域情報領域と低域情報領域のマッチング処理を個々に行い、高域情報領域における誤差と低域情報領域における誤差の加算結果を評価値として用いる。このようにすれば、低域画像だけでなく高域画像を考慮したブロックマッチング処理を行うことができるようになる。
さらに、上述の実施の形態では、分割ブロックの画像に基づいた画像選択値に対応するパターン画像を用いてマッチング処理を行っている。しかし、マッチング処理は、分割ブロック毎に高域画像であるか低域画像であるかを判別して、高域画像と判別された場合は分割ブロックの低ビット画像、低域画像と判別された場合はパターン画像を用いてもよい。例えば図36の(A)に示すように、ブロック内の左側の分割ブロックが高域画像、右側の分割ブロックが低域画像である場合、図36の(B)に示すように、左側の分割ブロックに対しては低ビット画像(斜線で示す)を用いる。また、右側の分割ブロックに対してはパターン画像を用いる。このようにすれば、低ビット画像マッチング部と低ビットパターン画像マッチング部を個別に設ける必要がない。したがって、情報処理装置の構成を簡易とすることができる。
また、種々の低域画像について最適なパターン画像の学習を行い、学習結果に基づいたパターン画像をデータベースに記憶すれば、精度よく動きベクトルを算出できるようになる。
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからLAN(Local Area Network)やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
また、本技術は、上述した技術の実施の形態に限定して解釈されるべきではない。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。
また、本技術の情報処理装置は以下のような構成も取ることができる。
(1) 基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う低ビット画像生成部と、
前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う置換画像生成部と、
前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する第1動きベクトル算出部と、
前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する第2動きベクトル算出部と、
前記対象ブロックが高域成分の多い画像であるか否かを判定する判定部と、
前記判定部の判定結果に基づき前記第1の動きベクトルと前記第2の動きベクトルから前記対象ブロックの動きベクトルを決定する動きベクトル決定部と
を有する情報処理装置。
(2) 前記置換画像生成部は、画像選択値に応じた低ビットのパターン画像から前記対象ブロックの画像に基づいた画像選択値に対応するパターン画像を選択して前記置換基準画像とし、参照画像のブロック毎にブロックの画像に基づいた画像選択値に対応するパターン画像を選択して前記置換参照画像とする(1)に記載の情報処理装置。
(3) 前記画像選択値に応じたパターン画像は、パターン画像間における画素値の相違する画素数を前記画像選択値の差に対応させたパターン画像である(2)に記載の情報処理装置。
(4) 前記第2動きベクトル算出部は、前記置換基準画像と前記置換参照画像を用いたブロックマッチング処理で前記第2の動きベクトルの算出を行い、前記ブロックマッチング処理では、パターン画像単位で探索を行う(2)または(3)の何れかに記載の情報処理装置。
(5) 前記第2動きベクトル算出部は、前記パターン画像単位で探索を行うことにより得られた評価値を用いて補間演算を行い、前記パターン画像単位よりも高精度で動きベクトルの算出を行う(4)に記載の情報処理装置。
(6) 前記置換画像生成部は、前記対象ブロックを複数ブロックに分割して、分割ブロック毎にブロックの画像に基づいた画像選択値に対応するパターン画像を選択して前記置換基準画像とし、参照画像のブロックを前記複数ブロックに分割して、分割ブロック毎の画像に基づいた画像選択値に対応するパターン画像を選択して前記置換参照画像とする(2)乃至(5)の何れかに記載の情報処理装置。
(7) 前記選択されるパターン画像は、前記画像選択値の算出に用いた画像と等しいサイズである(2)乃至(6)の何れかに記載の情報処理装置。
(8) 前記対象ブロックが高域成分の多い画像であると判別された場合には低ビット基準画像、前記参照画像のブロックが高域成分の多い画像であると判別された場合には低ビット参照画像を第1動きベクトル算出部に供給し、前記対象ブロックが高域成分の多い画像であると判別されない場合には置換基準画像、前記参照画像のブロックが高域成分の多い画像であると判別されない場合には置換参照画像を第2動きベクトル算出部に供給する画像切替部を有する(1)乃至(7)の何れかに記載の情報処理装置。
(9) 前記置換画像生成部は、前記置換基準画像と前記置換参照画像を複数の置換画像で構成する(1)乃至(8)の何れかに記載の情報処理装置。
(10) 前記置換画像生成部は、前記複数の置換画像として、ブロックの低ビット縮小画像とブロックの画像に基づいた画像選択値に対応するパターン画像を用いる(9)に記載の情報処理装置。
(11) 前記置換画像生成部は、前記ブロックを複数ブロックに分割して、分割ブロックが高域成分の多い画像であると判別された場合には分割ブロックの低ビット縮小画像を用い、分割ブロックが高域成分の多い画像であると判別されない場合には分割ブロックの画像に基づいた画像選択値に対応するパターン画像を用いる(10)に記載の情報処理装置。
(12) 前記動きベクトル決定部は、前記対象ブロックが高域成分の多い画像であると判別された場合に前記第2の動きベクトルよりも前記第1の動きベクトルの重み付けを高くして、高域成分の多い画像であると判別されない場合に前記第1の動きベクトルよりも前記第2の動きベクトルの重み付けを高くして、前記対象ブロックの動きベクトルを決定する(1)乃至(11)の何れかに記載の情報処理装置。
(13) 前記置換画像生成部は、前記基準画像を縮小した画像を前記置換基準画像とし、前記参照画像を縮小した画像を前記置換参照画像とする(1)に記載の情報処理装置。
この技術の情報処理装置と情報処理方法とプログラムおよび記録媒体では、基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成が行われる。また、基準画像に基づいた置換基準画像の生成と、参照画像に基づいた置換参照画像の生成が行われる。さらに、低ビット基準画像と低ビット参照画像を用いて基準画像における対象ブロックの第1の動きベクトルの算出が行われて、置換基準画像と置換参照画像を用いて対象ブロックの第2の動きベクトルの算出が行われる。また、対象ブロックが高域成分の多い画像であるか否かの判定と第1の動きベクトルと第2の動きベクトルに基づいて、対象ブロックの動きベクトルが決定される。このため、対象ブロックが高域成分の多い画像である場合には低ビット画像に基づいて算出された第1の動きベクトル、対象ブロックが高域成分の多い画像でない場合には置換画像に基づいて算出された第2の動きベクトルの重みを高くして、高域成分が少ない画像が含まれていても簡単な構成で精度よく動きベクトルを検出することができる。したがって、動きベクトルを利用して種々の処理を行う電子機器、例えば撮像装置や画像記録再生装置等に適している。
10-1a,10-1b,10-2a,10-2b,10-2c,10-3a,10-3b,10-4,10-5,90・・・情報処理装置、11・・・低ビットパターン画像生成部、11-c・・・低ビットパターン基準画像生成部、11-r・・・低ビットパターン参照画像生成部、12・・・低ビット画像生成部、12-c・・・低ビット基準画像生成部、12-r・・・低ビット参照画像生成部、13-c・・・低ビット設定サイズパターン基準画像生成部、13-r・・・低ビット設定サイズパターン参照画像生成部、14-c・・・縮小基準画像生成部、14-r・・・縮小参照画像生成部、15,15-c,15-r・・・高域/低域判定部、16,16-c,16-r・・・設定サイズ高域/低域判定部、21,21-c,21-r・・・画像選択部、22,23・・・遅延バッファ部、31・・・低ビットパターン画像マッチング部、32・・・低ビット画像マッチング部、33・・・低ビット設定サイズパターン画像マッチング部、34・・・低ビット設定サイズ画像マッチング部、36・・・縮小画像マッチング部、35・・・画像マッチング部、41・・・動きベクトル選択部、42・・・重み付け加算部、91,152・・・平滑化部、92,153・・・減算部、93・・・量子化部、111,131・・・画像分割部、112,132・・・画像選択値算出部、113,133・・・パターン画像決定部、114,134・・・データベース、121・・・フィルタ処理部、122・・・画像比較部、123・・・閾値設定部、124・・・画像比較部、151・・・ノイズ除去部、154・・・判定部、311・・・基準ブロック指定部、312・・・参照ブロック指定部、313・・・評価値算出部、314・・・動きベクトル算出部

Claims (16)

  1. 基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う低ビット画像生成部と、
    前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う置換画像生成部と、
    前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する第1動きベクトル算出部と、
    前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する第2動きベクトル算出部と、
    前記対象ブロックが高域成分の多い画像であるか否かを判定する判定部と、
    前記判定部の判定結果に基づき前記第1の動きベクトルと前記第2の動きベクトルから前記対象ブロックの動きベクトルを決定する動きベクトル決定部と
    を有する情報処理装置。
  2. 前記置換画像生成部は、画像選択値に応じた低ビットのパターン画像から前記対象ブロックの画像に基づいた画像選択値に対応するパターン画像を選択して前記置換基準画像とし、参照画像のブロック毎にブロックの画像に基づいた画像選択値に対応するパターン画像を選択して前記置換参照画像とする請求項1記載の情報処理装置。
  3. 前記画像選択値に応じたパターン画像は、パターン画像間における画素値の相違する画素数を前記画像選択値の差に対応させたパターン画像である請求項2記載の情報処理装置。
  4. 前記第2動きベクトル算出部は、前記置換基準画像と前記置換参照画像を用いたブロックマッチング処理で前記第2の動きベクトルの算出を行い、前記ブロックマッチング処理では、パターン画像単位で探索を行う請求項2記載の情報処理装置。
  5. 前記第2動きベクトル算出部は、前記パターン画像単位で探索を行うことにより得られた評価値を用いて補間演算を行い、前記パターン画像単位よりも高精度で動きベクトルの算出を行う請求項4記載の情報処理装置。
  6. 前記置換画像生成部は、前記対象ブロックを複数ブロックに分割して、分割ブロック毎にブロックの画像に基づいた画像選択値に対応するパターン画像を選択して前記置換基準画像とし、参照画像のブロックを前記複数ブロックに分割して、分割ブロック毎の画像に基づいた画像選択値に対応するパターン画像を選択して前記置換参照画像とする請求項2記載の情報処理装置。
  7. 前記選択されるパターン画像は、前記画像選択値の算出に用いた画像と等しいサイズである請求項2記載の情報処理装置。
  8. 前記対象ブロックが高域成分の多い画像であると判別された場合には低ビット基準画像、前記参照画像のブロックが高域成分の多い画像であると判別された場合には低ビット参照画像を第1動きベクトル算出部に供給し、前記対象ブロックが高域成分の多い画像であると判別されない場合には置換基準画像、前記参照画像のブロックが高域成分の多い画像であると判別されない場合には置換参照画像を第2動きベクトル算出部に供給する画像切替部を有する請求項1記載の情報処理装置。
  9. 前記置換画像生成部は、前記置換基準画像と前記置換参照画像を複数の置換画像で構成する請求項1記載の情報処理装置。
  10. 前記置換画像生成部は、前記複数の置換画像として、ブロックの低ビット縮小画像とブロックの画像に基づいた画像選択値に対応するパターン画像を用いる請求項9記載の情報処理装置。
  11. 前記置換画像生成部は、前記ブロックを複数ブロックに分割して、分割ブロックが高域成分の多い画像であると判別された場合には分割ブロックの低ビット縮小画像を用い、分割ブロックが高域成分の多い画像であると判別されない場合には分割ブロックの画像に基づいた画像選択値に対応するパターン画像を用いる請求項10記載の情報処理装置。
  12. 前記動きベクトル決定部は、前記対象ブロックが高域成分の多い画像であると判別された場合に前記第2の動きベクトルよりも前記第1の動きベクトルの重み付けを高くして、高域成分の多い画像であると判別されない場合に前記第1の動きベクトルよりも前記第2の動きベクトルの重み付けを高くして、前記対象ブロックの動きベクトルを決定する請求項1記載の情報処理装置。
  13. 前記置換画像生成部は、前記基準画像を縮小した画像を前記置換基準画像とし、前記参照画像を縮小した画像を前記置換参照画像とする請求項1記載の情報処理装置。
  14. 基準画像から各画素のビット数を削減した低ビット基準画像の生成と、参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う工程と、
    前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う工程と、
    前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する工程と、
    前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する工程と、
    前記対象ブロックが高域成分の多い画像であるか否かを判定する工程と、
    前記第1の動きベクトルと前記第2の動きベクトルと前記判定結果に基づいて、前記対象ブロックの動きベクトルを決定する工程と
    を有する情報処理方法。
  15. 基準画像と参照画像を用いて動きベクトルの算出をコンピュータで実行させるプログラムであって、
    前記基準画像から各画素のビット数を削減した低ビット基準画像の生成と、前記参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う手順と、
    前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う手順と、
    前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する手順と、
    前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する手順と、
    前記対象ブロックが高域成分の多い画像であるか否かを判定する手順と、
    前記第1の動きベクトルと前記第2の動きベクトルと前記判定結果に基づいて、前記対象ブロックの動きベクトルを決定する手順と
    を前記コンピュータで実行させるプログラム。
  16. 基準画像と参照画像を用いて動きベクトルの算出をコンピュータで実行させるプログラムを記録した記録媒体であって、
    前記基準画像から各画素のビット数を削減した低ビット基準画像の生成と、前記参照画像から各画素のビット数を削減した低ビット参照画像の生成を行う手順と、
    前記基準画像に基づいた置換基準画像の生成と、前記参照画像に基づいた置換参照画像の生成を行う手順と、
    前記低ビット基準画像と低ビット参照画像を用いて前記基準画像における対象ブロックの第1の動きベクトルを算出する手順と、
    前記置換基準画像と前記置換参照画像を用いて前記対象ブロックの第2の動きベクトルを算出する手順と、
    前記対象ブロックが高域成分の多い画像であるか否かを判定する手順と、
    前記第1の動きベクトルと前記第2の動きベクトルと前記判定結果に基づいて、前記対象ブロックの動きベクトルを決定する手順と
    を前記コンピュータで実行させるプログラムを記録した記録媒体。
JP2011277761A 2011-12-20 2011-12-20 情報処理装置と情報処理方法とプログラムおよび記録媒体 Pending JP2013131789A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011277761A JP2013131789A (ja) 2011-12-20 2011-12-20 情報処理装置と情報処理方法とプログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011277761A JP2013131789A (ja) 2011-12-20 2011-12-20 情報処理装置と情報処理方法とプログラムおよび記録媒体

Publications (1)

Publication Number Publication Date
JP2013131789A true JP2013131789A (ja) 2013-07-04

Family

ID=48909062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011277761A Pending JP2013131789A (ja) 2011-12-20 2011-12-20 情報処理装置と情報処理方法とプログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP2013131789A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015122573A (ja) * 2013-12-20 2015-07-02 キヤノン株式会社 動き検出装置、動き検出方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015122573A (ja) * 2013-12-20 2015-07-02 キヤノン株式会社 動き検出装置、動き検出方法及びプログラム
US10063880B2 (en) 2013-12-20 2018-08-28 Canon Kabushiki Kaisha Motion detecting apparatus, motion detecting method and program

Similar Documents

Publication Publication Date Title
TWI455588B (zh) 以雙向、局部及全域移動評估為基礎之框率轉換
KR101130060B1 (ko) 일시적 움직임 벡터 필터링
JP4398925B2 (ja) 補間フレーム生成方法、補間フレーム生成装置および補間フレーム生成プログラム
WO2005084036A1 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにコンピュータ・プログラム
JP2005210697A (ja) 動き補償フレームレート変換
JP2004221838A (ja) 画像処理装置および方法、記録媒体、並びにプログラム
WO2007029640A1 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
WO2007029764A1 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
US10269099B2 (en) Method and apparatus for image processing
JP2011071986A (ja) 低解像度ビデオから高解像度ビデオを生成する方法
JP2010087867A (ja) フレーム周波数変換装置、フレーム周波数変換方法、その方法を実行するためのプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体並びに動きベクトル検出装置及び予測係数生成装置
JP2013188341A (ja) 画像処理装置と画像処理方法およびプログラム
JP4626158B2 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにコンピュータ・プログラム
JP2012227669A (ja) 情報処理装置と情報処理方法およびプログラム
US8385430B2 (en) Video signal processing apparatus and video signal processing method
WO2011074121A1 (ja) 動きベクトル検出装置及び方法
JP2013131789A (ja) 情報処理装置と情報処理方法とプログラムおよび記録媒体
JP2010055252A (ja) 動きベクトル検出装置および画像処理装置
JP4525064B2 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにコンピュータ・プログラム
JP4622264B2 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにコンピュータ・プログラム
JP6090430B2 (ja) 符号化装置、方法、プログラム、コンピュータシステム、記録媒体
JP4622265B2 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにプログラム
JP2013005400A (ja) 情報処理装置と情報処理方法およびプログラムと記録媒体
JP4207764B2 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにコンピュータ・プログラム
JP5400655B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム、及び、電子機器