(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022044393
(43)【公開日】2022-03-17
(54)【発明の名称】画像分析方法および画像分析装置
(51)【国際特許分類】
G01N 21/17 20060101AFI20220310BHJP
G06T 7/246 20170101ALI20220310BHJP
G01N 21/45 20060101ALI20220310BHJP
【FI】
G01N21/17 A
G06T7/246
G01N21/45 Z
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2020149993
(22)【出願日】2020-09-07
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 開催年月日:令和2年8月3日 集会名、開催場所: 第23回 画像の認識・理解シンポジウム MIRU2020 オンライン開催 https://sites.google.com/view/miru2020/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0#h.p_vdNjmJ1fY_NX
(71)【出願人】
【識別番号】301021533
【氏名又は名称】国立研究開発法人産業技術総合研究所
(71)【出願人】
【識別番号】504145342
【氏名又は名称】国立大学法人九州大学
(71)【出願人】
【識別番号】510108951
【氏名又は名称】公立大学法人広島市立大学
(74)【代理人】
【識別番号】110001243
【氏名又は名称】特許業務法人 谷・阿部特許事務所
(72)【発明者】
【氏名】佐川 立昌
(72)【発明者】
【氏名】川崎 洋
(72)【発明者】
【氏名】樋口 雄介
(72)【発明者】
【氏名】古川 亮
【テーマコード(参考)】
2G059
5L096
【Fターム(参考)】
2G059AA05
2G059EE02
2G059EE09
2G059FF01
2G059FF04
2G059GG01
2G059KK03
2G059KK04
2G059MM01
5L096AA06
5L096BA18
5L096CA04
5L096CA05
5L096DA02
5L096FA66
(57)【要約】
【課題】撮影対象の動きを判定する。
【解決手段】制御装置は、第1の撮影信号に基づいて、第1のスペックルパターンを含む第1の画像を生成し、撮像装置が第2の時間に撮影対象を撮影することによって生成された第2の撮影信号に基づいて、第2のスペックルパターンを含む第2の画像を生成し、第1の画像内の第1の画素集合の間で第1の特徴ベクトルの変位を近似させ、第2の画像内の第2の画素集合の間で第2の特徴ベクトルの変位を近似させ、第1の特徴ベクトルと第2の特徴ベクトルとの間で、画素ごとに画素間の距離を計算することによって、第1のスペックルパターンと第2のスペックルパターンとの間の変化を判定する。
【選択図】
図5
【特許請求の範囲】
【請求項1】
撮影対象の動きを判定するコンピュータデバイスであって、
撮像装置が第1の時間に前記撮影対象を撮影することによって生成された第1の撮影信号に基づいて、第1のスペックルパターンを含む第1の画像を生成し、
前記撮像装置が第2の時間に前記撮影対象を撮影することによって生成された第2の撮影信号に基づいて、第2のスペックルパターンを含む第2の画像を生成し、
前記第1の画像内の第1の画素集合における輝度から第1の特徴ベクトルを計算し、前記第1の画素集合の間で前記第1の特徴ベクトルの変位を近似させ、
前記第2の画像内の第2の画素集合における輝度から第2の特徴ベクトルを計算し、前記第2の画素集合の間で前記第2の特徴ベクトルの変位を近似させ、
前記近似させた第1の特徴ベクトルと前記近似させた第2の特徴ベクトルとの間で、画素ごとに画素間の距離を計算することによって、前記第1のスペックルパターンと前記第2のスペックルパターンとの間の変化を判定する、
ように構成された制御装置を備えたことを特徴とするコンピュータデバイス。
【請求項2】
前記制御装置は、
第1の次元数で前記第1の特徴ベクトルおよび前記第2の特徴ベクトルを計算し、
前記第1の特徴ベクトルに基づいて、前記第1の次元数よりも少ない第2の次元数で前記第1の特徴ベクトルを計算し、
前記第2の特徴ベクトルに基づいて、前記第2の次元数で前記第2の特徴ベクトルを計算する、
ように更に構成されている、ことを特徴とする請求項1に記載のコンピュータデバイス。
【請求項3】
前記制御装置は、拡散マップによって、前記第1の特徴ベクトルおよび前記第2の特徴ベクトルを計算するように更に構成されている、ことを特徴とする請求項2に記載のコンピュータデバイス。
【請求項4】
前記第2の次元数は、3~20のいずれかである、ことを特徴とする請求項2または3に記載のコンピュータデバイス。
【請求項5】
前記制御装置は、
前記第1の画像から、特定の領域を判定することによって第1の局所平面を抽出し、
前記第2の画像から、前記第1の局所平面に対応する領域を判定することによって第2の局所平面を抽出する、ように更に構成され、
前記第1の画素集合は、前記第1の局所平面内の画素集合であり、
前記第2の画素集合は、前記第2の局所平面内の画素集合である、
ことを特徴とする請求項1乃至3のいずれか一項に記載のコンピュータデバイス。
【請求項6】
前記制御装置は、
前記第1の特徴ベクトルに線形変換を適用することによって、前記第1の画素集合の間で前記第1の特徴ベクトルの変位を近似させ、
前記第2の特徴ベクトルに線形変換を適用することによって、前記第2の画素集合の間で前記第2の特徴ベクトルの変位を近似させる、
ように更に構成されている、ことを特徴とする請求項1に記載のコンピュータデバイス。
【請求項7】
前記制御装置は、前記第1の画素集合と前記第2の画素集合との間の画素ごとの画素間の距離が近似するという制約の下、前記第1の特徴ベクトルおよび前記第2の特徴ベクトルに前記線形変換を適用するように更に構成されている、ことを特徴とする請求項6に記載のコンピュータデバイス。
【請求項8】
前記制御装置は、前記第1のスペックルパターンと前記第2のスペックルパターンとの間の前記変化に基づいて、前記撮影対象の動きを表示装置に表示する、ことを特徴とする請求項1乃至7のいずれか一項に記載のコンピュータデバイス。
【請求項9】
撮影対象の動きを判定するコンピュータデバイスによって実行される方法であって、
撮像装置が第1の時間に前記撮影対象を撮影することによって生成された第1の撮影信号に基づいて、第1のスペックルパターンを含む第1の画像を生成するステップと、
前記撮像装置が第2の時間に前記撮影対象を撮影することによって生成された第2の撮影信号に基づいて、第2のスペックルパターンを含む第2の画像を生成するステップと、
前記第1の画像内の第1の画素集合における輝度から第1の特徴ベクトルを計算し、前記第1の画素集合の間で前記第1の特徴ベクトルの変位を近似させるステップと、
前記第2の画像内の第2の画素集合における輝度から第2の特徴ベクトルを計算し、前記第2の画素集合の間で前記第2の特徴ベクトルの変位を近似させるステップと、
前記近似させた第1の特徴ベクトルと前記近似させた第2の特徴ベクトルとの間で、画素ごとに画素間の距離を計算することによって、前記第1のスペックルパターンと前記第2のスペックルパターンとの間の変化を判定するステップと、
を備えたことを特徴とする方法。
【請求項10】
コンピュータ実行可能命令を含むコンピュータプログラムであって、前記コンピュータ実行可能命令は、コンピュータデバイスによって実行されるとき、前記コンピュータデバイスに、請求項9に記載の方法を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像分析方法および画像分析装置に関し、特に、撮影対象から反射した光の干渉から生じるスペックルに基づいて、撮影対象のわずかな動きを判定する画像分析方法および画像分析装置に関する。
【背景技術】
【0002】
物体の表面にレーザ光などの光を照射すると、物体の照射面の凹凸形状などによって反射した光が散乱および干渉し、照射面上に斑点状のパターンが出現する。このパターンをスペックルと称する。コヒーレント光を照射した物体から生成された画像を観察すると、画像内にスペックルが観測される。そして、物体が動くと、その動きに応じて、スペックルパターンにも変化が生じる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
画像内のスペックルパターンを分析することによって、光が照射された物体の動きを判定する技術が従来から提案されている。特許文献1は、二次的スペックルパターンに関連した画像データ片を収集することによって、生物学的検体に関連した機械的および/または音響学的振動のような、機械的および/または音響学的信号をモニタリングする技術を開示している。
【0005】
特許文献1に開示された技術は、スペックルパターンの間の空間的相関を示す相関関数を決定し、周波数で生ずる相関の変化を選択するために、決定された相関関数にフィルタリングを適用している。
【0006】
例えば、カメラと物体との間の距離が短い場合、物体がわずかに動いた場合でさえ、スペックルパターンが急激に変化することがある。このような場合、スペックルパターンを連続して観察した場合、変化の前後でパターンが無相関になり、物体の連続したわずかな動きを判定することができない。特許文献1は、上述した物体のわずかな動きを判定するための解決手段を何ら提示していない。
【課題を解決するための手段】
【0007】
一実施形態に係るコンピュータデバイスは、撮影対象の動きを判定するコンピュータデバイスであって、撮像装置が第1の時間に前記撮影対象を撮影することによって生成された第1の撮影信号に基づいて、第1のスペックルパターンを含む第1の画像を生成し、前記撮像装置が第2の時間に前記撮影対象を撮影することによって生成された第2の撮影信号に基づいて、第2のスペックルパターンを含む第2の画像を生成し、前記第1の画像内の第1の画素集合における輝度から第1の特徴ベクトルを計算し、前記第1の画素集合の間で前記第1の特徴ベクトルの変位を近似させ、前記第2の画像内の第2の画素集合における輝度から第2の特徴ベクトルを計算し、前記第2の画素集合の間で前記第2の特徴ベクトルの変位を近似させ、前記近似させた第1の特徴ベクトルと前記近似させた第2の特徴ベクトルとの間で、画素ごとに画素間の距離を計算することによって、前記第1のスペックルパターンと前記第2のスペックルパターンとの間の変化を判定する、ように構成された制御装置を含む。
【0008】
また、別の実施形態に係る方法は、撮影対象の動きを判定するコンピュータデバイスによって実行される方法であって、撮像装置が第1の時間に前記撮影対象を撮影することによって生成された第1の撮影信号に基づいて、第1のスペックルパターンを含む第1の画像を生成するステップと、前記撮像装置が第2の時間に前記撮影対象を撮影することによって生成された第2の撮影信号に基づいて、第2のスペックルパターンを含む第2の画像を生成するステップと、前記第1の画像内の第1の画素集合における輝度から第1の特徴ベクトルを計算し、前記第1の画素集合の間で前記第1の特徴ベクトルの変位を近似させるステップと、前記第2の画像内の第2の画素集合における輝度から第2の特徴ベクトルを計算し、前記第2の画素集合の間で前記第2の特徴ベクトルの変位を近似させるステップと、前記近似させた第1の特徴ベクトルと前記近似させた第2の特徴ベクトルとの間で、画素ごとに画素間の距離を計算することによって、前記第1のスペックルパターンと前記第2のスペックルパターンとの間の変化を判定するステップと、を含む。
【発明の効果】
【0009】
実施形態に係る画像分析システムによれば、スペックルパターンの変化の前後で相関性を維持することができ、物体のわずかな動きを精度よく判定することができる。
【図面の簡単な説明】
【0010】
【
図1】画像分析システムの構成の例を示すブロック図である。
【
図2】コンピュータデバイスの構成の例を示すブロック図である。
【
図5】画像分析システムが実行する処理の例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付した図面を参照して、一実施形態に係る画像分析方法および画像分析装置を詳細に説明する。本実施形態では、画像分析方法および画像分析装置は、画像分析システムにおいて実装される。また、本実施形態では、光が照射され、動きなどを判定される対象となるいずれかの物体を「撮影対象」と称する。
【0012】
まず、
図1を参照して、画像分析システム100の構成の例を説明する。本実施形態では、画像分析システム100は、コンピュータデバイス1、撮像装置2a、2b、および2c(総称して、撮像装置2)、投光装置3a、3b、および3c(総称して、投光装置3)、ならびに表示装置4を含む。コンピュータデバイス1は、少なくとも撮像装置2および表示装置4と、バスまたはネットワークなどを介して相互に結合され、任意選択で、投光装置3と結合されている。
【0013】
コンピュータデバイス1は、少なくとも演算機能を含むいずれかの情報処理装置である。コンピュータデバイス1は、撮像装置2から受信した撮影信号に基づいて画像を生成し、画像内のスペックルパターンに基づいて撮影対象Oの動きを判定する。
【0014】
撮像装置2は、1つまたは複数のCCDイメージセンサまたはCMOSイメージセンサなどを含み、撮影対象Oを撮影し、撮影信号をコンピュータデバイス1に送信する。本実施形態では、撮像装置2は、カメラによって実装される。撮像装置2は、高画素の画像を生成するために、より多くのイメージセンサが配列されることが望ましい。
【0015】
なお、本実施形態では、撮影対象Oの連続した動きを判定するために、複数の異なる位置にある撮影対象Oを撮影する複数の撮像装置2(撮像装置2a、2b、および2c)が設けられるが、撮像装置2の数は、1以上のいずれかの数であってもよい。例えば、1台の撮像装置2が設けられる場合、撮像装置2は、あらゆる方向において撮影対象Oを撮影することができるような回転式および/または可動式光源であってもよい。
【0016】
投光装置3は、撮影対象Oに向けてコヒーレント光を照射する光源である。コヒーレント光は、光束内の任意の二点における光波の位相関係が時間的に不変で一定であり、任意の方法で光束を分割した後、大きな光路差を与えて再び重ねあわせても完全な干渉性を示す光をいう。本実施形態では、投光装置3は、コヒーレント光としてレーザ光を放射する。
【0017】
なお、撮像装置2と同様に、撮影対象Oの連続した動きを判定するために、複数の異なる位置にある撮影対象Oにレーザ光を照射する複数の投光装置3(投光装置3a、3b、および3c)が設けられるが、投光装置3の数は、1以上のいずれかの数であってもよい。例えば、1台の投光装置3が設けられる場合、投光装置3は、あらゆる方向にレーザ光を放射することができるような回転式および/または可動式光源であってもよい。
【0018】
表示装置4は、コンピュータデバイス1が物体の動きを判定した結果、その動きを表示するディスプレイである。表示装置4は、本実施形態での必須の構成要素ではないが、本実施形態が、例えば、物体に伝わる音の振動を観察するために適用される場合、その音の振動を視覚的に表現することができる。
【0019】
なお、本実施形態では、コンピュータデバイス1、撮像装置2、投光装置3、および表示装置4がそれぞれ独立した装置によって実装されるが、そのような構成に限定されない。それらが全て統合された単一の装置が設けられてもよく、またはそれらのうちのいずれかが組み合わされた装置が存在してもよい。
【0020】
次に、
図2を参照して、コンピュータデバイス1の詳細な構成要素を説明する。コンピュータデバイス1は、制御装置11、メモリ12、記憶装置13、入力ドライバ14、および出力ドライバ15を含む。メモリ12、記憶装置13、入力ドライバ14、および出力ドライバ15はそれぞれ、内部バスを通じて制御装置11に結合され、制御装置11によって制御される。
【0021】
制御装置11は、プロセッサとも称され、中央処理装置(CPU)およびグラフィックプロセシングユニット(GPU)などを含む。制御装置11は、撮像装置2から受信した撮影信号に基づいて画像を生成し、画像内のスペックルパターンに基づいて、撮影対象Oの動きを判定するなどの演算を実行する。なお、制御装置11は、コンピュータデバイス1に結合された撮像装置2および投光装置3を制御してもよい。この場合、例えば、制御装置11は、投光装置3が撮影対象Oにレーザ光を照射するタイミング、および撮像装置2が撮影対象Oを撮影するタイミングなどを制御してもよい(撮像装置2および投光装置3に制御信号を送信することによって)。
【0022】
メモリ12は、制御装置11が処理する、コンピュータ実行可能命令、および当該命令による演算処理後のデータなどを記憶した揮発性データ記憶装置である。メモリ12は、RAM(ランダムアクセスメモリ)(例えば、SRAM(スタティックRAM)およびDRAM(ダイナミックRAM))などで実装されてもよい。
【0023】
記憶装置13は、上述したコンピュータ実行可能命令を含むプログラムなどを記憶した不揮発性データ記憶装置である。記憶装置13は、ROM(リードオンリメモリ)などの不揮発性半導体メモリ、磁気記憶装置(ハードディスクドライブなど)、および光ディスクなどで実装されてもよい。なお、プログラムなどのデータは、記憶装置13に加えまたはその代わりに、NAS(Network Attached Storage)および/またはSAN(Storage Area Network)などに記憶されてもよい。
【0024】
入力ドライバ14は、撮像装置2から撮影信号を受信するなど、コンピュータデバイス1と結合された外部機器からの入力を受信し、その入力を制御装置11に送信する。出力ドライバ15は、表示装置4に画像信号を送信するなど、コンピュータデバイス1と結合された外部機器への出力を制御装置から受信し、その出力を外部機器に送信する。
【0025】
次に、
図3を参照して、撮像装置2が撮影対象Oを撮影することによって生成された画像内のスペックルパターンを説明する。上述したように、撮影対象Oが動くと、その動きに応じて投光装置3が照射したレーザ光が散乱および干渉し、スペックルパターンにも変化が生じる。
【0026】
図3は、破線矢印Aに示す方向に動いている撮影対象Oを3つの撮影ポイントで撮影し、対応して生成された3つの画像を示す。撮像装置2aは、撮影対象Oを撮影ポイントS1において撮影し、撮像装置2bは、撮影対象Oを撮影ポイントS2において撮影し、撮像装置2cは、撮影対象Oを撮影ポイントS3において撮影する。本実施形態では、撮影対象Oは、3つの異なる位置である撮影ポイントS1~S3のそれぞれにおいて撮影されるが、撮影対象Oは、同一の位置において撮影されてもよい。つまり、撮影対象Oは、異なる時間点において、異なる位置または同一の位置において複数回撮影される。
【0027】
撮像装置2aが撮影対象Oを撮影することによって(制御装置11により)生成された画像は、画像I1に対応する。同様に、撮像装置2bが撮影対象Oを撮影することによって生成された画像は、画像I2に対応し、撮像装置2cが撮影対象Oを撮影することによって生成された画像は、画像I3に対応する。
【0028】
上述したように、撮影対象Oの連続した動きを、スペックルパターンを分析することによって判定する場合、複数の撮影ポイントにおいて撮影対象Oを撮影することになる。それぞれの撮影ポイントにおいて、投光装置3から照射したレーザ光が散乱および干渉することになり、スペックルパターンに変化を生じさせる。
図3に示すように、3つの画像I1~I3内のスペックルパターンはそれぞれ異なる。
【0029】
本実施形態では、スペックルパターンを含む画像内の特定の領域を平面と見なし、平面内の特定の画素(x,y)の周りの3D平面パラメータを推定する。本実施形態では、この特定の平面領域を「局所平面」と称する。
図4を参照して、動いている撮影対象Oを(3回)撮影することによって生成された3つの画像内の局所平面を説明する。
【0030】
図4は、3つの局所平面LP1~LP3を示している。局所平面LP1は、
図3に示した画像I1内の特定の局所平面に相当する。局所平面LP2は、
図3に示した画像I2内の、局所平面LP1に対応する局所平面に相当する。局所平面LP3は、
図3に示した画像I3内の、局所平面LP1および局所平面LP2に対応する局所平面に相当する。
【0031】
図3で説明したように、画像I1~I3は、動いている撮影対象Oを撮影することによって生成された画像であるので、局所平面LP2は、局所平面LP1に対して画像内の座標位置において変位している。局所平面LP3も同様に、局所平面LP1および局所平面LP2に対して画像内の座標位置において変位している。
【0032】
図4は、局所平面LP1を基準に、局所平面LP2および局所平面LP3の変位を示している。変位は、2つの局所平面内の画素間の距離によって表される。
図4に示す例では、局所平面LP1内の特定の画素P1aおよび画素P1aの周りの隣接した画素P1bを基準とする。
【0033】
まず、局所平面をフレームiとみなし、フレームi内の画素P1a(x,y)の周りの3D平面パラメータを、式(1)に従って推定する。
【0034】
【0035】
【数2】
は、3次元ベクトル、すなわち、(x,y)の各点で局所平面を定義する3次元パラメータを表す関数であり、
【0036】
【数3】
は、(x,y)の近隣の画素P1bを表す。
【0037】
図4に示す通り、局所平面LP2内の画素P2aの周りの3D平面パラメータは、ψ
i(x,y)として表し、局所平面LP3内の画素P3bの周りの3D平面パラメータは、
【0038】
【0039】
として表す。
【0040】
上述したように、
図3に示した画像I1~I3は、撮影対象Oの動きを表すので、局所平面LP1内の画素P1aと局所平面LP2内の画素P2aと間のオフセットは、変位d1(d(x,y))として表される。変位d1は、
図3に示した、撮影ポイントS1と撮影ポイントS2との間の撮影対象Oの移動に対応する。
【0041】
変位d1は、式(2)に従って計算される。
【0042】
【0043】
同様に、局所平面LP1内の画素P1bと局所平面LP3内の画素P2bと間のオフセットは、変位d2(
【0044】
【0045】
)として表される。変位d2は、
図3に示した、撮影ポイントS1と撮影ポイントS3との間の撮影対象Oの移動に対応する。
【0046】
上述した変位d1およびd2を計算することによって、画像内のスペックルパターンの変化を分析することができる。スペックルパターンは、撮像装置2と撮影対象Oとの間の相対位置に影響を受けやすい。よって、撮影対象Oを複数回撮影することにより生成されたそれぞれの画像内のスペックルパターンの変化を分析することによって、撮影対象Oの動きを判定することができる。
【0047】
スペックルパターンが急激に変化すると、変化の前後でスペックルパターンが無相関になる。このことは、撮影対象Oの連続した動きを判定することができず、わずかな変化を正確に判定することができないことにつながる。本実施形態に係る画像分析システム100は、スペックルパターンの変化に関わらず、スペックルパターンの一貫性を維持しながら、スペックルパターンに基づいて撮影対象Oの動きを判定する。
【0048】
図5のフローチャートを参照して、画像分析システム100が実行する処理を説明する。
図5において説明する処理は、動いている撮影対象Oを撮影ポイントS1およびS2において撮影することによって生成された画像I1およびI2内のスペックルパターンの変化を分析する。
【0049】
まず、投光装置3aおよび投光装置3bがそれぞれ、撮影対象Oにレーザ光を照射する(ステップS501)。次に、撮像装置2aが撮影ポイントS1において撮影対象Oを撮影し、撮影信号をコンピュータデバイス1に送信し、コンピュータデバイス1の制御装置11が撮影信号に基づいて画像I1を生成する(ステップS502)。撮像装置2bが撮影ポイントS2において撮影対象Oを撮影し、撮影信号をコンピュータデバイス1に送信し、制御装置11が撮影信号に基づいて画像I2を生成する(ステップS503)。
【0050】
次に、制御装置11は、画像I1から局所平面LP1を抽出する(ステップS504)。局所平面LP1は、例えば、ハフ変換などの技術を使用して、特定の領域を特定することによって抽出される。なお、以下では、局所平面LP1をフレームiとみなす。本実施形態では、局所平面LP1は、矩形領域に相当するが、その領域の形状は任意の形状を有してもよい。
【0051】
また、制御装置11は、局所平面LP1に基づいて、局所平面LP1(フレームi)に対応する局所平面LP2を抽出する(ステップS505)。局所平面LP2は、例えば、射影行列を使用した射影変換を使用して、局所平面LP1に対応する領域を特定することによって抽出される。なお、以下では、局所平面LP1をフレームjと見なす。ステップS505の処理によって、フレームi内の画素P1aおよびP1bに対応する、フレームj内の画素P2aおよびP2bも特定される。
【0052】
次に、制御装置11は、フレームiとフレームjとの間の変位を求めるよう、それぞれのフレーム内の画素ごとに、画素の間の距離を計算する(ステップS506)。ここで、フレームi内の特定の画素P1a(x,y)についての輝度をIi(x,y)とし、画素集合(xk,yk)についての輝度集合をIi(xk,yk)とする。kは、フレーム内の画素の次元数を表す。本実施形態では、k=112とする。
【0053】
また、フレームj内の画素P1aに対応する画素P2a(x,y)についての輝度をIj(x,y)とし、画素集合(xk,yk)についての輝度集合をIj(xk,yk)とする。ステップS506における画素間の距離は、上述した特徴ベクトルの間のユークリッド距離によって計算される。
【0054】
【0055】
輝度集合Ii(xk,yk)は、フレームiの状態を示す特徴ベクトルFi=Ii(x1,y1),…,Ii(xk,yk)を形成する。また、輝度集合Ij(xk,yk)は、フレームjの状態を示す特徴ベクトルFj=Ij(x1,y1),…,Ij(xk,yk)を形成する。
【0056】
次に、制御装置11は、フレームiの3D平面パラメータψi(x,y)に基づいて、次元数kを次元数l(l<k)に削減する次元削減技術によって、フレームiについての低次元ベクトルΨiを計算する(ステップS507)。
【0057】
上述した次元数削減技術は、例えば、拡散マップ(Diffusion map)およびIsomapなどを含む。本実施形態では、拡散マップによって、式(4)に従って、削減した次元数lでのフレームiについての特徴ベクトルである低次元ベクトルΨiが計算される。
【0058】
【0059】
次元削減の入力は、特徴ベクトルの集合Fi(x,y)(i=1,…,N)である。Nは、フレームi内の画素数である。
【0060】
また、制御装置11は、フレームjの3D平面パラメータψj(x,y)に基づいて、次元数kを次元数lに削減する次元削減技術(拡散マップ)によって、フレームjについての低次元ベクトルΨjを計算する(ステップS508)。
【0061】
上述した次元数削減技術も同様に、拡散マップおよびIsomapなどを含む。本実施形態では、拡散マップによって、式(5)に従って、削減した次元数lでのフレームiについての特徴ベクトルである低次元ベクトルΨjが計算される。なお、ステップS507およびステップS508において削減した次元数であるlは、例えば、3~20のうちのいずれかの値であることが望ましい。
【0062】
【0063】
次元削減の入力は、特徴ベクトルの集合Fj(x,y)(j=1,…,N’)である。N’は、フレームj内の画素数である。
【0064】
削減した次元数lによって、式(3)に従って距離を計算することは、式(3)の代わりに、式(6)に従って計算される。
【0065】
【0066】
ステップS507およびステップS508における処理は、次元数kで計算したフレームiについての特徴ベクトルとフレームjについての特徴ベクトルとの間の変位(ユークリッド距離)に基づいて、削減した次元数lでフレームiについての特徴ベクトルとフレームjについての特徴ベクトルとの間の変位を計算することになる。
【0067】
ステップS507およびステップS508における次元数の削減によって、後述するように削減した次元数lにおいて距離が計算される。例えば、物体の動きが撮像装置2に対して奥行方向の動きがなく、撮像装置2に対して平行な動きのみを含む場合、高い次元数で変位を計算すると、計算においてノイズが発生する。削減した次元数lにおいて距離(式(6)に従って)を計算することによって、このノイズを除去することができる。
【0068】
また、削減した次元数lにおいて変位を計算することによって、フレームi内およびフレームj内のそれぞれの画素の間の特徴ベクトルの変位が小さくなるので、スペックルパターンの線形性を維持することができる。
【0069】
更に、削減した次元数lにおいて距離を計算することによって、上述し距離を計算する際の計算量を削減することができる。特に、式(3)では、画素ごとに距離を計算するので、次元数を削減しないで距離を計算することは、莫大な計算量を要することになる。
【0070】
次に、制御装置11は、式(7)に従って、フレームiについての低次元ベクトルΨiに線形変換を適用する(ステップS509)。また、制御装置11は、式(8)に従って、フレームiについての低次元ベクトルΨiに線形変換を適用する(ステップS510)。
【0071】
ステップS509の処理は、フレームi内の輝度集合をIi(xl,yl)(lは、ステップS507において次元数削減が適用された次元数を表す)のそれぞれの画素の間で、特徴ベクトルの変位を近似させる。同様に、ステップS510の処理は、フレームj内の輝度集合をIj(xl,yl)のそれぞれの画素の間で、特徴ベクトルの変位を近似させる。
【0072】
【0073】
【0074】
式(7)および式(8)におけるM(x,y)は、3×lの変換行列であり、Ψi(x,y)は、画素P1a(x,y)についてのl×1列ベクトルである。
【0075】
式(7)および式(8)において、フレーム内で、特定の画素とその画素の特定の範囲内にある画素との間で特徴ベクトルの変位を近似させるように、式(9)および(10)に従った制約E
Sが課される。この制約は、例えば、
図6に示すように、局所平面LP2(フレームj)内の画素P2a(x
1,y
1)と局所平面LP1(フレームi)内の画素P1aとの間の距離(画素間の距離(変位)d1)および画素P2b(x
2,y
2)と画素P1bとの間の距離(画素間の距離(変位)d2)を近似させる制約である。この例では、画素間の距離d1および画素間の距離d2は,撮像装置2から見て同一画素に対応する実在の点までの距離の変化(変位)に対応するが、画素間の距離を表す別の定義であってもよい。
【0076】
【0077】
【0078】
フレームj内の画素P2a(x1,y1)および画素P2b(x2,y2)のペアについての制約は、式(11)に従った制約が課される。
【0079】
【0080】
【0081】
は、要素単位の積である。
【0082】
式(10)では、全ての画素のベクトルについて線形行列M(x,y)を適用することによって得られる列ベクトルをmとする。制約がAm=0によって表現され、Aは、式(11)から計算された係数行列であるので、mは、ATAの最小固有値と関連付けられた固有ベクトルとして与えられる。線形行列M(x,y)が計算されると、式(7)および式(8)に従って計算された、線形変換が適用された、低次元ベクトルψi(x,y)および低次元ベクトルψj(x,y)は、空間的に一貫性が保持される(つまり、低次元ベクトルによって表される、フレーム内の画素の特徴ベクトルの変位が一定の範囲内にある)。
【0083】
固有ベクトルを計算する際の問題の1つは、例えば、フレームi内の画素についての低次元ベクトルΨi(x,y)の時間的分布が異なることである。画素(x,y)のΨi(x,y)がほぼゼロである場合、M(x,y)の大きさが固有ベクトルにおいて支配的であってもΨi(x,y)が誤差に影響を与えないため、M(x,y)の大きさは、1にほぼ等しく、他の画素についてのパラメータは、ほぼゼロになる。したがって、式(12)に従って、時間軸に沿って係数行列Aを計算する前にΨi(x,y)の標準偏差を正規化する。
【0084】
【0085】
Ψikは、Ψiのk番目の成分であり、
【0086】
【0087】
は、Ψikの平均値であり、εは、ゼロ割り算を回避するための小さい数である。
【0088】
例えば、高解像度を有する撮像装置2によって撮影して生成された画像から固有ベクトルを計算する負荷が高いので、画素をサブサンプリングした後に変換行列M(x,y)が計算される。
【0089】
図5の説明に戻ると、制御装置11は、ステップS509において線形変換が適用された低次元ベクトルψ
i(x,y)およびステップS510において線形変換が適用された低次元ベクトルψ
j(x,y)に基づいて、フレームiとフレームjとの間の変位を画素ごとに計算する(ステップS511)。
【0090】
上記説明した変換行列M(x,y)の計算は、式(3)によって計算された変位を考慮しない。フレームiについて、上述した低次元ベクトルψi(x,y)が特徴ベクトルFi(x,y)の間の距離を保存するように変換行列M(x,y)が最適化される。
【0091】
フレームiとフレームjとの距離(変位)が非常に短いと想定することによって、低次元ベクトルψi(x,y)によって示される距離が特徴ベクトルFi(x,y)によって示される距離を保存するような制約が、式(13)および式(14)に従って、最小化されることになる誤差関数に追加される。
【0092】
【0093】
【0094】
Esは、式(10)によって定義された空間的制約であり、λはその重みである。変換行列M(x,y)が最適化されると、平面パラメータψi(x,y)が最適化され、画素ごとの変位は、ψi(x,y)の第3の要素として与えられる。
【0095】
式(13)の非線形最小化のための初期推測値ψi
'は、式(15)、式(16)、および式(17)に従って、画素ごとの大きさを正規化した後に、上記計算されたψi(x,y)によって与えられる。
【0096】
【0097】
【0098】
【0099】
計算された変換行列M(x,y)がサブサンプリングされるので、変換行列M(x,y)は、元の解像度の画像についての変位を取得するよう、パラメータを最適化する前に補間される。補間は、初期推測値ψi
'を使用することによって計算された、サブサンプリングされた特徴ベクトルの変位を補間することによって行われる。元の解像度の画素P1a(x,y)および変換行列M(x,y)は、画素P1b
【0100】
【数24】
に対して式(18)を満たす必要がある。
【0101】
【0102】
この変換行列M(x,y)の線形式が局所パッチ内の全ての画素に対して取得されるので、変換行列M(x,y)は最小2乗法による解法として取得される。変換行列M(x,y)が全ての画素に対して取得されると、元の解像度の画像に最適化が適用される。
【0103】
図5に示した処理によって、フレームiとフレームjとの間の変位を計算することができる。
図5で説明した例では、2つのフレームの間の変位のみを計算しているが、物体Oの連続した動きを判定する際は、ステップS501乃至ステップS511の処理が繰り返される。つまり、動いている物体を任意の回数で撮影し、対応する数の画像の局所平面の間の変位を計算する。
【0104】
上述したように、物体Oの動きがわずかであっても、物体Oと撮像装置2との間の距離によっては、スペックルパターンが大きく変化することがある。本実施形態によれば、それぞれの局所平面内の画素に対し、特徴ベクトルの変位を近似させるので、局所平面内での特徴ベクトルの変化が小さくなる。そして、後続の局所平面内の画素に対しても、特徴ベクトルの変位を近似させるので、局所平面の間でも特徴ベクトルの変化が小さくなる。このことは、スペックルパターンの変化の前後で相関性を維持することにつながる。
【0105】
また、変位を計算する際に、次元数を削減するので(kからlに、lは3~20の任意の数が望ましい)、高い次元数で変位を計算することによって生じるノイズを削減することができ、計算量を削減することができる。
【0106】
本実施形態に係る処理によって、変化するスペックルパターンの変化に従って、例えば、物体の動きを視覚的に表現することができる。
図7および
図8を参照して、その例を説明する。
図7は、キャンバス性の布の表面を指で押している状態を示す。布の表面を指で押すと、指の力によって、押した箇所から振動が伝達する。
【0107】
このような状態で、振動を伝達している布の任意の箇所(同一または異なる箇所)において複数回に布の表面を撮影し、
図5で説明した処理に従ってスペックルパターンの変化を分析することによって、例えば、
図8に示すように、振動の変化を表現することができる。
図8に示すグラフの横軸は、x軸(つまり、振動による波が横方向に進んだ距離)を示し、縦軸は、変位(つまり、2つの画像についての局所平面の間の変位)を示す。
【0108】
図8に示すグラフは、制御装置11による制御の下、計算した変位に基づいて、表示装置4に表示される。変位は、振動の振幅に対応し、x軸は、変位を加算することによって導出される。このようにして、動いている物体から生成された画像内のスペックルパターンを分析することによって、物体のわずから動きの変化を視覚的に表現することができる。
【0109】
以上のように、本実施形態に係る画像分析システム100を説明した。本実施形態によれば、物体のわずかな動きを精度よく判定することができる。また、スペックルパターンの変化に応じて、動いている撮影対象O(物体)を表現することができる。例えば、判定したスペックルパターンの変化に応じて、対応する撮影対象Oの動きを表示装置4において動的に表示してもよい。
【0110】
上記実施形態で説明したハードウェアの構成要素は例示的なものにすぎず、その他の構成も可能であることに留意されたい。また、上記実施形態で説明した処理の順序は、必ずしも説明した順序で実行される必要がなく、任意の順序で実行されてもよい。更に、本発明の基本的な概念から逸脱することなく、追加のステップが新たに加えられてもよい。
【0111】
また、本発明の一実施形態に係る画像判定、コンピュータデバイス1によって実行されるコンピュータプログラムによって実装されるが、当該コンピュータプログラムは、非一時的記憶媒体に記憶されてもよい。非一時的記憶媒体の例は、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、レジスタ、キャッシュメモリ、半導体メモリ装置、内蔵ハードディスクおよび取外可能ディスク装置などの磁気媒体、光磁気媒体、ならびにCD-ROMディスクおよびデジタル多用途ディスク(DVD)などの光学媒体などを含む。