以下に、本発明の実施例を添付の図面を用いて詳細に説明する。それらの図面において、同一又は対応する構成要素は同一又は対応する番号で参照し、その説明は適宜省略する。
図1は、簡易な振戦計測及び診断補助を可能とするための情報処理装置の概念図を示す図である。図1において、例えばタブレットである情報処理装置11には撮像ユニットが内蔵されており、患者の身体の一部(例えば指等)に取り付けられた対象物体10の動画像を撮像する。情報処理装置11は、動画像を解析することにより動画像中における対象物体10の位置を検出し、検出した位置に基づいて、対象物体10の移動や振動に関する種々の情報、即ち患者の身体の振戦に関する情報を計算により求める。情報処理装置11は、求められた種々の情報を表示画面12に表示することにより、診断の補助となる情報を提供する。なお情報処理装置11は、動画を撮像している最中に表示画面12に撮像中の動画を表示してよく、また撮像した動画をメモリに格納し、撮像終了後にメモリから読み出した動画を表示画面12に表示してよい。
対象物体10は、例えば所定の大きさ及び色を有するマーカーであってよい。所定の大きさ及び色を有するマーカーを用いることにより、画像処理による対象物体10の位置検出や移動量計算等を、高精度で容易に実行することが可能となる。なお以後の説明においては、対象物体10として球形のマーカーを一例として用いるが、マーカーの形状は球形に限られるものではない。また画像処理により対象物体の位置検出や移動量計算が満足できる精度で行えるのであれば、対象物体は身体の一部(例えば爪等)であってもよい。
図2は、情報処理装置11により実行される処理の流れの一例を示すフローチャートである。図2に示される各ステップは、情報処理装置11により実行される。なお図2及び以降の図において、フローチャートに記載された各ステップの実行順序は一例にすぎず、本願の意図する技術範囲が、記載された実行順番に限定されるものではない。例えば、Aステップの次にBステップが実行されるように本願に説明されていたとしても、Aステップの次にBステップを実行することが可能なだけでなく、Bステップの次にAステップを実行することが、物理的且つ論理的に可能である場合がある。この場合、どちらの順番でステップを実行しても、当該フローチャートの処理に影響する全ての結果が同一であるならば、本願に開示の技術の目的のためには、Bステップの次にAステップが実行されてもよいことは自明である。Aステップの次にBステップが実行されるように本願に説明されていたとしても、上記のような自明な場合を本願の意図する技術範囲から除外することを意図するものではなく、そのような自明な場合は、当然に本願の意図する技術範囲内に属する。
図2において、撮影処理が開始されると、ステップS1において、情報処理装置11は動画像データを取り込む。ステップS2において、情報処理装置11は対象物体10の輪郭抽出及び描画処理を行う。ステップS3において、情報処理装置11は周波数計算処理を行う。ステップS4において、情報処理装置11は解析処理を行う。ステップS5において、情報処理装置11は移動量と増減情報の計算処理を行う。ステップS6において、情報処理装置11は上記処理により求められた周波数の表示、移動量及び増減情報のグラフ表示、及び解析結果の表示を行う。各処理については、後ほど詳細に説明する。
なお図2に示す撮影処理を開始する前に、情報処理装置11に対する初期設定情報の入力を行う。初期設定情報を入力しない限り、撮影処理が実行できないように情報処理装置11が制御されていてもよい。
図3は、初期設定情報の第1の例を示す図である。図3に示すのは、振戦分類毎の振戦の周波数範囲である。振戦分類の「姿勢時」の振戦とは、重力に逆らって随意的に姿勢を保った状態で観察される振戦のことを意味する。また振戦分類の「安静時(静止時)」の振戦とは、重力に逆らわない安静な状態で観察される振戦のことを意味する。他の分類としては、「運動時」や「混合性」等がある。図3に示す例では、「姿勢時」に対して「3〜6」の周波数範囲が指定され、「安静時(静止時)」に対して「4〜7」の周波数範囲が指定されている。
図4は、初期設定情報の第2の例を示す図である。図4に示すのは、症状の重篤度に対応する振戦の振幅の大きさである。例えば振戦の振幅が1cm以上且つ3cm未満である場合には、軽度の振戦であると分類される。また例えば振戦の振幅が10cm以上である場合には、重度の振戦であると分類される。
図5は、初期設定情報の第3の例を示す図である。図5に示すのは、症状の重篤度に対応する振動時間の割合である。ここで振動時間の割合とは、所定の判定時間(例えば10秒間)において振動している時間の割合(%)のことである。例えば判定時間の26〜50%において振動している場合には、軽度の振戦であると分類される。また例えば判定時間の75%以上において振動している場合には、重度の振戦であると分類される。
図6は、初期設定情報の設定画面の一例を示す図である。情報処理装置11の表示画面12に、図6に示すように、マーカー情報設定画面15及び振戦情報設定画面16とが表示されてよい。マーカー情報設定画面15と振戦情報設定画面16とは、逐次1つずつ表示画面12に表示されてもよい。情報処理装置11の入力機能は、例えば情報処理装置11の表示画面12がタッチパネルであり、表示画面12の表面を指等で直接に触れることにより、入力対象欄を指定し、指等の接触に起因して重畳表示されるキーパッド等を用いて情報を入力してよい。また或いは、マウス及びキーボード等の入力装置を用いて情報を入力してよい。
マーカー情報設定画面15において、長方形枠内に数値が示されてる領域が情報入力欄であってよい。ユーザは、マーカー色のU値の最小値と最大値、V値の最小値と最大値とを、情報処理装置11の入力機能を利用して入力する。ユーザは更に、マーカーサイズとして、直径をcm単位で入力する。
振戦情報設定画面16の振戦分類設定20において、振戦分類の欄及び周波数の数値欄が、情報入力欄であってよい。ユーザは、振戦分類として例えば「姿勢時」及び「安静時(静止時)」を、情報処理装置11の入力機能を利用して入力してよい。ユーザは更に、各振戦分類に対する周波数範囲として、「最小周波数3Hz、最大周波数6Hz」及び「最小周波数4Hz、最大周波数7Hz」を、情報処理装置11の入力機能を利用して入力してよい。
更に、振戦情報設定画面16の振戦による重み付け21において、重みの欄及び振幅の数値欄が、情報入力欄であってよい。ユーザは、重みとして例えば「正常」、「軽度」、「重度」等を、情報処理装置11の入力機能を利用して入力してよい。ユーザは更に、各重みに対する振幅範囲として、最小振幅及び最大振幅を、情報処理装置11の入力機能を利用して入力してよい。
更に、振戦情報設定画面16の振動時間による重み付けにおいて、判定時間の数値欄23、重み及び振動時間22に示される重みの欄及び振動時間の数値欄が、情報入力欄であってよい。ユーザは、判定時間として例えば200秒を、情報処理装置11の入力機能を利用して入力してよい。ユーザは更に、重みとして例えば「正常」、「軽度」、「重度」等を、情報処理装置11の入力機能を利用して入力してよい。ユーザは更に、各重みに対する振動時間の割合(%)の範囲として、最小のパーセント値及び最大のパーセント値を、情報処理装置11の入力機能を利用して入力してよい。
図7は、入力情報設定画面の一例を示す図である。図3乃至図6を用いて説明した初期設定情報以外に、図7に示されるような患者や診断条件に関する情報を入力設定してよい。図7において、情報処理装置11の表示画面12には、ユーザが情報を入力するための入力欄25乃至29が表示される。
ユーザは、情報処理装置11の入力機能を利用して、入力欄25に患者氏名を入力し、入力欄26に患者の年齢を入力してよい。ユーザは更に、情報処理装置11の入力機能を利用して、入力欄27に診断対象(測定対象である振戦の分類)として例えば「姿勢時振戦」を入力してよい。ユーザは更に、情報処理装置11の入力機能を利用して、入力欄28に薬の服用履歴を入力し、入力欄29にマーカー装着部位を入力してよい。なお入力欄27に「姿勢時振戦」を入力した場合には、情報処理装置11により振戦を撮像する際には、重力に逆らって随意的に姿勢を保った状態での身体の部位の撮影を行うことになる。
図8は、撮像された動画像中のマーカーの検出について説明するための図である。図8に示される動画像中の1つのフレーム30において、所定の色及び所定のサイズを有する球形のマーカーを撮像したマーカー画像31が示されている。後ほど説明するように、所定の色を検出することにより、各フレーム中においてマーカー画像31の位置及び大きさを検出する。
図9は、図8のフレーム30中のマーカー画像31の部分を拡大して示す図である。図9において、縦横にマトリクス上に配列される正方形の枠32の各々は、例えば4画素×4画素のブロックである。
図10は、4画素×4画素のブロックを示す図である。情報処理装置11は、フレーム30中に配列される4画素×4画素である各ブロック32について、例えば左上隅の画素(図10においてマーキングしてある画素)の色を検出し、図6に示すマーカー情報設定画面15で設定された色に一致するか否かを判定する。色が一致すると判定された場合は、当該ブロック32がマーカー画像31に属するブロックであると判断する。
図11は、各ブロックがマーカー画像31に属するか否かを判定した結果を示す図である。図11において、マーカー画像31に属すると判定されたブロックはハッチングで示されており、これらのブロック全体が位置計算用のマーカー画像31Aとして用いられる。具体的には、マーカー画像31Aの中心位置35を求めることにより、この中心位置35をマーカーの位置として以後の計算に用いてよい。なお検出するマーカーの位置は必ずしも中心位置である必要はないが、例えば球形のマーカーであれば、中心位置が最も安定して検出可能である。
図12は、輪郭抽出と描画処理の一例を示すフローチャートである。ステップS21において、情報処理装置11は、撮影した動画像の明るさ及びコントラストを調整する。これによりマーカーを抽出し易くする。ステップS22において、情報処理装置11は撮影した動画の各フレームの画像を4画素×4画素のブロックに分割する。ステップS23において、情報処理装置11は、マーカーの所定の色がブロック内に存在するか否かを、各ブロックについて判定する。何れのブロックにも当該所定の色が存在しない場合、情報処理装置11は処理を終了する。所定の色が存在するブロックが見つかった場合、ステップS24において、情報処理装置11は所定の色が存在するブロックの情報を待避する。即ち、情報処理装置11は、所定の色が存在するブロックを特定する情報をメモリに格納する。
ステップS25において、情報処理装置11は、待避したブロックが占める画像領域の中心位置を求めることによりマーカーの中心座標を求め、待避したブロックが占める画像領域の最大幅を求めることによりマーカーの半径を求める。求められた中心座標及び半径を示すデータはメモリに格納される。ステップS26において、情報処理装置11は、待避したブロックが占める画像領域の外縁に沿って線を描くことにより、動画データ中のマーカーの輪郭を線で示す。以上で処理を終了する。
上述のように図12に示す処理では、動画像中において対象物体(マーカー)の位置を色情報に基づいて検出する。このように色情報に基づいて対象物体を特定することで、容易に且つ高精度で対象物体の領域及び位置を検出することができる。なおマーカーの色と同様の色の服等を身につけた状態で撮影を行わない等、撮影条件にはある程度の注意が必要である。
図13は、マーカーの振動を検出する処理を説明するための図である。図13に示すように、患者の右手41の人差し指に装着されたマーカー42は、患者の右手の震えに伴い、例えば矢印43で示すように振動する。情報処理装置11は、撮影された動画像においてマーカー42の位置(中心位置)の移動を検出し、移動が矢印44に示すように振動の一周期分を示した時点で、この振動の周期に基づいて振動の周波数を求めることができる。
図14は、周波数計算処理の一例を示すフローチャートである。周波数計算処理が開始されると、ステップS31で、情報処理装置11は、着目フレームのマーカー位置座標を取得する(メモリから読み出す)。なお周波数計算処理が開始された直後のステップS31の実行においては、着目フレームとしては動画像中の2番目のフレームであってよい。このとき情報処理装置11は更に、動画像中の最初のフレームを参照フレームとして、参照フレームにおけるマーカー位置座標を取得して保持してよい。
ステップS32で、参照フレームから着目フレームまでの間にマーカーが一定距離以上の位置移動をしたか否かを判定する。一定距離以上の位置移動をしていないと判定された場合には、現在の着目フレームの次のフレームを新たな着目フレームとして、ステップS31に戻り、ステップS31以降の処理を繰り返す。ステップS32において、一定距離以上の位置移動をしたと判定された場合には、処理はステップS33に進む。ステップS33において、情報処理装置11は、着目フレームと参照フレームとの間のマーカー位置座標の差分をX,Y,Z座標のそれぞれについて計算することにより、移動の方向を示すデータを取得する。なおZ座標方向(画面奥行き方向)については、情報処理装置11が、マーカーの大きさの変化(例えば球形のマーカーの半径の変化)に基づいて移動を検出してよい。
ステップS34において、情報処理装置11は、X軸、Y軸、及びZ軸を纏めるか否かを判断する。X軸、Y軸、及びZ軸を纏めるか否かは、予め初期設定情報の1つとして設定されていてよい。X軸、Y軸、及びZ軸を纏める場合、ステップS35で、情報処理装置11は、X,Y,Z座標のそれぞれについて計算した差分を、移動方向を示すXYZの3座標値を有するベクトル値として扱う。X軸、Y軸、及びZ軸を纏めない場合、ステップS36で、情報処理装置11は、X軸、Y軸、及びZ軸の各々について別々に移動の方向の正負を求める。なお場合によっては、Z軸(画面奥行き方向)に関する移動については検出対象としなくともよい。
ステップS37において、情報処理装置11は、マーカーが一周期移動したか否かを判定する。この際、一周期の振動の始点としては始点フレームを用いる。始点フレームは、周波数計算処理が開始された直後においては、動画像中の最初のフレームである。情報処理装置11は、始点フレームから現在の着目フレームまでの間に、正、負、正の方向の移動がこの順番に検出、或いは、負、正、負の方向の移動がこの順番に検出された場合に、マーカーが一周期移動したと判断する。なお移動の方向を検出したときに、現在の移動方向が前回の移動方向と同一方向である場合には、一周期移動したか否かの判断対象から前回の移動方向のデータを外すようにしてよい。一周期の移動が検出されない場合、現在の着目フレームを参照フレームとし、更に現在の着目フレームの次のフレームを新たな着目フレームとして、ステップS31に戻り、ステップS31以降の処理を繰り返す。なおステップS37及びそれ以降の処理は、X軸、Y軸、及びZ軸を纏める場合にはベクトルで示される一方向についてのみ実行され、X軸、Y軸、及びZ軸を纏めない場合には各軸について独立に実行されてよい。
一周期の移動が検出された場合、ステップS38において、情報処理装置11は現在の始点フレームから着目フレームまでのマーカーの振動の瞬時周波数を計算する。具体的には、始点フレームから着目フレームまでの時間間隔の逆数を瞬時周波数とすればよい。一周期の瞬時周波数の計算が終了すると、現在の着目フレームを始点フレーム且つ参照フレームとし、更に現在の着目フレームの次のフレームを新たな着目フレームとして、ステップS31に戻り、ステップS31以降の処理を繰り返す。
ここで初期設定情報の一部として、平均周波数の計算期間が、ユーザにより情報処理装置11に設定されていてよい。計算期間として第1の期間がユーザにより設定されている場合、ステップS38において、動画像中の最初のフレームから現在の着目フレームまでに当該第1の期間が経過した時点で、情報処理装置11は、それまでに計算した瞬時周波数の平均値を計算してよい。また第1の期間とは異なる第2の期間がユーザにより指定されている場合、それに応じて、情報処理装置11は第2の期間における振動の平均周波数を計算してよい。即ち、動画像中の最初のフレームから現在の着目フレームまでに第2の期間が経過した時点で、情報処理装置11は、それまでに計算した瞬時周波数の平均値を計算してよい。なお計算された瞬時周波数及び平均周波数はメモリに格納されてよい。
なおステップS32において、情報処理装置11は、振動の周波数を計算するのみでなく、振動の瞬時振幅及び平均振幅も計算してよい。例えば、移動の方向が反転したときの参照フレームにおけるマーカー位置座標とその次に移動の方向が反転したときの参照フレームにおけるマーカー位置座標との間で、座標間の距離を求めることにより、振幅を計算してよい。
動画像中の全てのフレームについて、ステップS38迄の処理が終了すると、処理はステップS39に進む。ステップS39において、情報処理装置11は、計算した平均周波数を表示画面12に表示する。以上で、周波数計算処理を終了する。
図15は、解析処理の一例を示す図である。なお図15に示す処理は、図6に示す振戦情報設定画面16で設定した姿勢時の周波数範囲が3Hz〜6Hzであり、安静時の周波数範囲が4Hz〜7Hzである例を前提としている。
ステップS41において、情報処理装置11は、瞬時周波数データと平均周波数データとを取得する(メモリから読み出す)。ステップS42において、情報処理装置11は、診断対象の平均周波数が3Hz〜6Hzの範囲にあるか否かを判定する。平均周波数が3Hz〜6Hzの範囲にある場合、処理はステップS43に進む。平均周波数が3Hz〜6Hzの範囲にない場合、処理はステップS44に進む。なお図7に示す入力欄27に「姿勢時振戦」が入力されており、且つ、診断対象の平均周波数が3Hz〜6Hzの範囲にある場合にのみ、処理がステップS43に進み、それ以外の場合に、処理がステップS44に進むのでもよい。ステップS43において、情報処理装置11は、撮像した患者の震えに関して、姿勢時振戦の可能性がある旨を表示画面12に表示する。
ステップS44において、情報処理装置11は、診断対象の平均周波数が4Hz〜7Hzの範囲にあるか否かを判定する。平均周波数が4Hz〜7Hzの範囲にある場合、処理はステップS45に進む。平均周波数が4Hz〜7Hzの範囲にない場合、解析処理は終了する。なお図7に示す入力欄27に「安静(静止)時振戦」が入力されており、且つ、診断対象の平均周波数が4Hz〜7Hzの範囲にある場合にのみ、処理がステップS45に進み、それ以外の場合に、処理が終了するのでもよい。ステップS45において、情報処理装置11は、撮像した患者の震えに関して、安静(静止)時振戦の可能性がある旨を表示画面12に表示する。
ステップS46において、情報処理装置11は、検出したマーカーの振動の振幅に基づいて重みの判定を行う。具体的には、情報処理装置11は、図6に示す振戦情報設定画面16において入力された振幅データと、図14に示す処理により検出された振幅とを照合することにより、検出された振幅が何れの症状の重み(重篤度)に対応するかを判定する。ステップS47において、情報処理装置11は、振幅による重み付け判定結果を表示画面12に表示する。
ステップS48において、情報処理装置11は、撮像された振戦がステップS45において安静(静止)時振戦と分類されたか否かを判定する。安静(静止)時振戦と分類された場合、処理はステップS49に進む。安静(静止)時振戦と分類されていない場合、処理はステップS49に進む。
ステップS49において、情報処理装置11は、検出したマーカーの振動の時間に基づいて重みの判定を行う。具体的には、情報処理装置11は、例えば動画の開始時を始点として、図6に示す振戦情報設定画面16の判定時間数値欄23に入力された判定時間内において、図14に示す処理で求められた瞬時周波数が存在する区間が何%あるかを計算してよい。情報処理装置11は、計算により得られたパーセンテージと振戦情報設定画面16にて入力された振動時間のパーセンテージとを比較し、計算により得られたパーセンテージに対応する症状の重み(重篤度)を判定結果とする。ステップS50において、情報処理装置11は、振動の時間による重み付け判定結果を表示画面12に表示する。
図16は、移動量と増減情報の計算処理の一例を示すフローチャートである。移動量と増減情報の計算処理が開始されると、ステップS51で、情報処理装置11は、着目フレームのマーカー位置座標を取得する(メモリから読み出す)。なお移動量と増減情報の計算処理が開始された直後のステップS31の実行においては、着目フレームとしては動画像中の2番目のフレームであってよい。このとき情報処理装置11は更に、動画像中の最初のフレームを参照フレームとして、参照フレームにおけるマーカー位置座標を取得して保持してよい。
ステップS52で、参照フレームから着目フレームまでの間にマーカーが一定距離以上の位置移動をしたか否かを判定する。一定距離以上の位置移動をしていないと判定された場合には、現在の着目フレームの次のフレームを新たな着目フレームとして、ステップS31に戻り、ステップS31以降の処理を繰り返す。ステップS52において、一定距離以上の位置移動をしたと判定された場合には、処理はステップS53に進む。ステップS53において、情報処理装置11は、着目フレームと参照フレームとの間のマーカー位置座標の差分をX,Y,Z座標のそれぞれについて計算することにより、移動方向及び移動距離を示すデータを取得する。情報処理装置11は更に、現在の着目フレームの時間を記録してよい。なおZ座標方向(画面奥行き方向)については、情報処理装置11が、マーカーの大きさの変化(例えば球形のマーカーの半径の変化)に基づいて移動を検出してよい。
ステップS54において、情報処理装置11は、X軸、Y軸、及びZ軸を纏めるか否かを判断する。X軸、Y軸、及びZ軸を纏めるか否かは、予め初期設定情報の1つとして設定されていてよい。X軸、Y軸、及びZ軸を纏める場合、ステップS55で、情報処理装置11は、X,Y,Z座標のそれぞれについて計算した差分を、移動方向及び移動距離を示すXYZの3座標値を有するベクトル値として扱う。X軸、Y軸、及びZ軸を纏めない場合、ステップS56で、情報処理装置11は、X軸、Y軸、及びZ軸の各々について別々に移動方向及び移動距離を求める。なお場合によっては、Z軸(画面奥行き方向)に関する移動については検出対象としなくともよい。
ステップS57において、情報処理装置11は、初期登録情報で設定したマーカーの大きさを基準として用いて、マーカーの移動量を計算する。例えば、マーカーの半径が3cmである場合には、動画像中のマーカー画像の最大幅が3cmに等しいことが分かる。従って、このマーカー画像の最大幅を物差しとして用いることにより、情報処理装置11はマーカーの移動量をcm単位で計測することができる。
マーカー移動量の計算が終了すると、現在の着目フレームを参照フレームとし、更に現在の着目フレームの次のフレームを新たな着目フレームとして、ステップS51に戻り、ステップS51以降の処理を繰り返す。以上で処理を終了する。
以上の処理により、一定値以上の移動がある度に移動の絶対量とその方向を記録していくことができる。移動の絶対量のデータのサンプル数を少なくしたい場合には、以下のような処理を行ってもよい。例えば、移動の方向を検出したときに、現在の移動方向が前回の移動方向と同一方向である場合には、情報処理装置11は、前回の移動のデータを破棄し、前回の移動の絶対量と現在の移動の絶対量との和を現在の移動の絶対量としてよい。また例えば、移動の方向が反転したときの参照フレームにおけるマーカー位置座標とその次に移動の方向が反転したときの参照フレームにおけるマーカー位置座標との間で、座標間の距離を求め、計算した距離を移動の絶対量として記録していってもよい。
図17は、情報処理装置の表示画面の一例を示す図である。図17に示す表示画面12は、動画像表示領域51、再生ボタン52、停止ボタン53、振動周波数表示領域54、振戦分類表示領域57、重み付け表示領域58、及び移動データ表示領域59を含む。
移動データ表示領域59において図面水平方向は時間の推移を示し、図面垂直方向は移動の絶対量及び振動方向におけるマーカーの位置を示す。移動データ表示領域59には、対象物体(マーカー)の移動の絶対量を時間軸上での複数の点において示す第1の情報61と、対象物体(マーカー)の移動に関して少なくとも方向の正負を時間軸上において示す第2の情報60とが別個に表示される。第1の情報61は、この例では、移動方向が反転する毎に検出した前回の方向反転の位置からのマーカー移動の絶対量であり、棒グラフ形式にて表示されている。第2の情報60は、この例では表示対象としたマーカーの振動方向におけるマーカーの位置(図面垂直方向)を時間推移(図面水平方向)とともに示したものであり、折れ線グラフ形式にて表示されている。
図18は、移動データ表示領域59の詳細の一例を示す図である。図17に示した例と同様に、第2の情報60を示す折れ線グラフは、振動方向におけるマーカーの位置を時間推移とともに示し、第1の情報61を示す棒グラフは、移動方向が反転する各点における移動の絶対量(振動の振幅)である。第2の情報60の折れ線の各セグメントが上向きの部分は移動方向が正方向であり、第2の情報60の折れ線の各セグメントが下向きの部分は移動方向が負方向であることを示している。第2の情報60として移動の方向のみを示したいのであれば、例えば、一直線に水平方向に延びる線が、正方向の移動区間においては第1の色で表示され、負方向の移動区間においては第2の色で表示される、等の表示形式を採用してもよい。第1の情報61は、移動方向反転が起きた時間上の着目位置(画像フレーム)におけるマーカー位置と、前回の移動方向反転が起きた時間上の位置(画像フレーム)におけるマーカー位置との間の移動の絶対量を、当該時間上の着目位置において棒グラフとして示す。
移動データ表示領域59には、第1の情報61及び第2の情報60の少なくとも一方の情報についてグラフ形式にて表示してよい。他方の情報については、単に数値(例えば移動量のcmでの表示)又はシンボル(例えば正負の方向についての記号又は文字による表示)を用いて表示してもよい。
なおここで移動データ表示領域59において振動の情報が表示対象となる振動の方向とは、X軸、Y軸、及びZ軸を纏めた場合であれば、例えば振動を示すベクトルの平均ベクトルの方向であってよい。或いは、振動の方向としては特定の方向に限定せずに、3次元空間上での振動における方向反転から方向反転までの各移動を示すベクトルの方向及び長さ(移動絶対量)を表示してもよい。或いは、X軸、Y軸、及びZ軸のうちの選択された軸方向についての振動について、移動の方向及び絶対量を表示してもよい。図17の振動周波数表示領域54において振動の情報が表示対象となる振動の方向についても同様である。
移動データ表示領域59の縦軸には、振動方向の座標値及び移動の絶対量(例えばcm)を示す表示をしてよい。軸上の表示と同時に或いは代替的に、グラフ形式にて表示された情報上の複数の点のそれぞれに対して、検出した位置に応じた数値情報を隣接或いは重畳させて表示してよい。そのような表示の例として、図18では、第2の情報60の折れ線グラフ上の各方向反転点の近傍には、当該方向反転点における振動方向での座標値が表示されている。また更に、第1の情報61の棒グラフの上端の近傍には、当該棒グラフの棒が示す移動量が数値として表示されている。
図17に戻り、表示画面12の振動周波数表示領域54は、第1期間における対象物体(マーカー)の振動の平均周波数を示す第3の情報55を表示する。振動周波数表示領域54は更に、第1の期間とは異なる第2の期間が指定された場合、第3の情報55を表示するとともに第4の情報56を表示する。ここで第4の情報56は、第2の期間における振動の平均周波数である。第2の期間は第1の期間よりも長くてよい。
動画像表示領域51は、第1の情報61、第2の情報60、第3の情報55、及び第4の情報56とは別に、撮影されメモリに格納された動画像を動画として又は静止画として表示する。再生ボタン52及び停止ボタン53は、指によるタッチ等のユーザ動作により、動画像表示領域51に表示される動画再生及び停止を指示するために用いられる。
動画像表示領域51は、移動データ表示領域59において複数の点のそれぞれに対して表示された数値情報のうちの1つが選択されると、当該選択された1つの数値情報に対応する動画像中のフレームを静止画として表示してよい。即ち、図18において第1の情報61の棒グラフの上端の近傍に示された数値の何れか又は第2の情報60のの折れ線グラフ上の各方向反転点の近傍に示された数値の何れかを選択すると、図17に示す動画像表示領域51にその数値に対応する静止画が表示される。例えば図17の移動データ表示領域59において棒グラフの棒の1つの上端を選択すると円形マーク62により当該選択状態が表示され、その選択点に対応する動画データが動画像表示領域51に表示される。なお選択対象は数値である必要はなく、例えば第2の情報60中の1つの方向反転点や第1の情報61中の1つの棒グラフ等を選択するのでもよい。
表示画面12の動画像表示領域51は、第1の期間及び第2の期間のうちの何れか選択された一方の期間に対応する動画像を表示してよい。即ち例えば、振動周波数表示領域54において第3の情報55をユーザが選択すると、ユーザ選択状態が第3の情報55に引かれた下線により示され、第3の情報55に対応する第1期間の動画像が動画像表示領域51に表示されてよい。
表示画面12の振戦分類表示領域57は、情報処理装置11により振動周波数に基づいて計算された振戦分類(例えば振動周波数が3〜6Hzの場合には姿勢時振戦の可能性有り)を表示してよい。また表示画面12の重み付け表示領域58は、情報処理装置11により計算された重み付け(患者振戦状態の重篤度)を表示してよい。
図19は、情報処理装置11の構成の一例及び情報の流れを示す図である。図19に示す情報処理装置11は、カメラ70、入力端末71、ディスプレイ72、メモリ73、及び計算ユニット74を含む。情報処理装置11がタブレットである場合、カメラ70は内蔵撮像ユニットでよく、入力端末71及びディスプレイ72はタッチパネルであってよい。なおディスプレイ72として図19に示される部分は、表示画面だけではなく画面表示を制御するための制御回路も含めた部分であってよい。メモリ73の一部は揮発性のRAM(Random Access Memory)であってよく、他の一部は不揮発性のRAM、ハードディスク、取り外し可能なカードメモリ媒体等であってよい。
計算ユニット74は、CPU(Central Processing Unit)に基づく制御及び演算ユニットやASIC(Application Specific Integrated Circuit)に基づく制御及び演算ユニットであってよい。計算ユニット74は、輪郭抽出&輪郭描画処理ユニット81、移動量及び増減情報計算処理ユニット82、周波数計算処理ユニット83、及び解析処理ユニット84を含む。計算ユニット74はメモリ73に格納されるプログラムを実行することにより、輪郭抽出&輪郭描画処理ユニット81、移動量及び増減情報計算処理ユニット82、周波数計算処理ユニット83、及び解析処理ユニット84の各処理を実行してよい。計算ユニット74は、ASIC等により実現された専用のハードウェアであってもよい。
図19の計算ユニット74において、各ボックスで示される各機能ブロックと他の機能ブロックとの境界は、基本的には機能的な境界を示すものであり、物理的な位置の分離、電気的な信号の分離、制御論理的な分離等に対応するとは限らない。計算ユニット74は、各機能ブロックの機能を有する電子回路ブロックを組み合わせて実現したハードウェア構成でもよいし、電子回路である汎用のプロセッサにおいてソフトウェアを実行することにより各機能ブロックの機能を実現したソフトウェア構成でもよい。ハードウェアの場合、各機能ブロックは、他のブロックと物理的にある程度分離された1つのハードウェアモジュールであってもよいし、或いは他のブロックと物理的に一体となったハードウェアモジュール中の1つの機能を示したものであってもよい。ソフトウェアの場合、各機能ブロックは、他のブロックと論理的にある程度分離された1つのソフトウェアモジュールであってもよいし、或いは他のブロックと論理的に一体となったソフトモジュール中の1つの機能を示したものであってもよい。
なおここまで説明した情報処理装置11が実行する機能は、後述するようにネットワークに接続された複数の装置により実現することが可能である。その場合、カメラ70はビデオカメラ等の独立した撮像装置であってよく、計算ユニット74はサーバーコンピュータであってよい。メモリ73の一部は撮像装置の内蔵メモリであり、他の一部はサーバーの格納装置(データベース)であってよい。また入力端末71はタブレットやスマートフォン等の携帯機器であってもよいし、ユーザ側のコンピュータであってもよい。またディスプレイ72もまた、タブレットやスマートフォン等の携帯機器であってもよいし、ユーザ側のコンピュータの表示装置であってもよいし、診断する医療従事者側のコンピュータの表示装置であってもよい。
図19において、カメラ70が取得した動画像は、ディスプレイ72、計算ユニット74、及びメモリ73に供給される。入力端末71が取得した初期設定情報及び入力情報はメモリ73に供給される。計算ユニット74は、カメラ70から動画撮影と共に並行して供給される動画像データ又はメモリ73から読み出された動画像データを解析する。計算ユニット74の輪郭抽出&輪郭描画処理ユニット81は、図12に示す処理に基づいて動画像データを解析することにより、動画像中における対象物体(マーカー)の位置を検出する。輪郭抽出&輪郭描画処理ユニット81が検出した位置情報は、ディスプレイ72、移動量及び増減情報計算処理ユニット82、周波数計算処理ユニット83、及びメモリ73に供給される。
計算ユニット74の移動量及び増減情報計算処理ユニット82は、検出された位置に基づいて、対象物体の移動の絶対量を時間軸上での複数の点において示す第1の情報と、移動に関して少なくとも方向の正負を時間軸上において示す第2の情報とを求める。第1の情報と第2の情報とは、ディスプレイ72及びメモリ73に供給される。
計算ユニット74の周波数計算処理ユニット83は、図14に示す処理に基づいて種々の周波数を計算する。具体的には、周波数計算処理ユニット83は、第1期間における対象物体の振動の平均周波数を示す第3の情報を求める。また周波数計算処理ユニット83は、第2の期間が指定されている場合には、第2の期間における振動の平均周波数を示す第4の情報を求める。また周波数計算処理ユニット83は瞬時周波数を計算する。周波数計算処理ユニット83が求めた周波数情報は、ディスプレイ72、解析処理ユニット84、及びメモリ73に供給される。
計算ユニット74の解析処理ユニット84は、図15に示す処理に基づいて、振戦分類を示すデータ及び重み付けを示すデータを計算する。計算された振戦分類を示すデータ及び重み付けを示すデータは、ディスプレイ72及びメモリ73に供給される。
図20は、メモリに格納されるデータ構造の一例を示す図である。図20に示されるメモリ73は、データ構造73A及びデータ構造73Bを含む。データ構造73Aは、初期登録の設定値情報を保持するデータ構造であり、振戦分類と周波数、振幅と重み付け情報、振動時間と重み付け情報、及びマーカー情報を含む。データ構造73Bは、撮影時の入出力情報を保持するデータ構造であり、患者名、マーカー接着部位、輪郭情報、周波数情報、移動量と増減情報、振戦の分類や重み判定等の結果情報、動画像データを含む。
図21は、情報処理システムの一例を説明する図である。前述のように、情報処理装置11が実行する各機能は、ネットワークに接続される複数の機器を含む情報処理システムにより実行されてもよい。
図21に示す情報処理システムは、ネットワーク90、携帯機器91、撮像装置92、格納装置93、及びコンピュータ94を含む。撮像装置92は、振戦の動画像を撮像するために用いられてよい。或いは携帯機器91が、内蔵カメラを用いて振戦の動画像を撮像するために用いられてもよい。コンピュータ94は、図20等に示される初期設定情報及び入力情報等を入力又は登録するために用いられてよい。或いは携帯機器91が、初期設定情報及び入力情報等を入力又は登録するために用いられてよい。また携帯機器91は、動画像や解析結果の表示に基づいて医療従事者が診断をするために用いられてもよい。格納装置93は、動画像、初期設定情報、入力情報、及び解析結果等のデータを格納するデータベースであってよい。
コンピュータ94は、図2に示されるステップS2乃至S5の処理を実行することにより、動画像に対する種々の解析データを求めるために用いられてよい。コンピュータ94が計算により求めたデータは、格納装置93(データベース)に格納されたり、携帯機器91に送信されたりしてよい。例えば、振戦診断を受けたい被験者側で撮像装置92により振戦の動画像を取得し、ネットワーク90を介して動画像をコンピュータ94に送信し、コンピュータ94で動画像を解析し、解析結果をネットワーク90を介して携帯機器91に送信し、携帯機器91を用いて医療従事者が診断を行ってよい。
図22は、ネットワークを介してのデータのやり取りの一例を示す図である。ステップS61において、パソコン(図21のコンピュータ94)で初期登録情報(初期設定情報)及びマーカー情報等を含む入力情報を入力すると、これら情報がネットワークを介してパソコンからデータベース(図21の格納装置93)に送信される。ステップS62において、カメラで動画像を取得し、取得した動画像がネットワークを介してカメラからデータベースに送信される。ステップS63において、パソコンからネットワークを介してデータベースにリクエストを送信し、当該リクエストに応じて動画像、初期登録情報、及び入力情報がネットワークを介してデータベースからパソコンに送信される。パソコンでは、これらの取得した情報に基づいて描画及び解析処理を実行する。ステップS64において、パソコンで計算された撮像データに関する入出力情報(描画情報、グラフ情報、重み、振動数、移動量等)が、ネットワークを介してパソコンからデータベースに送信される。
図23は、患者毎の解析データを表示する画面の一例を示す図である。情報処理装置11や図21に示す情報処理システムでは、複数の患者の各々に対して撮影された複数の動画像について、動画像データ、初期設定情報、解析結果等を、患者の識別子及び動画像の識別子等と対応付けてメモリ(データベース)に格納して管理してよい。情報処理装置11の表示画面12等の表示ユニットや表示装置は、メモリ(データベース)に蓄積された情報に基づいて、患者毎に異なる日時に撮像された動画像に基づく解析結果を表示してよい。図23の例において、解析結果表示領域100には、患者Aに対する重み付け(重篤度)の時間推移を示す折れ線グラフ101と、患者Bに対する重み付け(重篤度)の時間推移を示す折れ線グラフ102とが示される。
図24は、患者毎の解析データを表示する画面の別の一例を示す図である。情報処理装置11の表示画面12等の表示ユニットや表示装置は、メモリ(データベース)に蓄積された情報に基づいて、患者毎に異なる日時に撮像された動画像に基づく解析結果を表示してよい。例えば好ましくは、情報処理装置11の表示画面12等の表示ユニットや表示装置は、複数の動画像が撮像された場合に、複数の動画像のそれぞれに対応する振動周波数を表示してよい。
図24の例において、周波数表示領域105には、横軸にX軸方向周波数をとり縦軸にY軸方向周波数をとった平面が示される。この平面におけるプロット(平面上での点)として、ある選択された1人の患者に関して測定された各動画像毎のX軸方向の平均周波数とY軸方向の平均周波数とが示されている。日時データ表示領域106には、周波数表示領域105にプロットされた各点に対応する動画像の撮像日時のデータが示されている。具体的には、周波数表示領域105に示される1番から8番までのプロットに対応する1番から8番までの8つの動画像の各々に対して、撮像日時のデータが日時データ表示領域106に示されている。
図23や図24に示されるような解析データの表示を行うことにより、患者の病状変化や患者間での比較を行うことが容易となる。
図25は、動画像撮影時のマーカーサイズ調整処理の一例を示すフローチャートである。図9乃至図11を用いて説明したように例えば4画素×4画素のようなブロックを用いてマーカーの画像領域検出及び位置検出を行う場合、撮影する動画像中でのマーカーの大きさが異ってしまうと、動画像毎に領域検出や位置検出の精度が異なってしまう。従って、各動画像の撮影時に、撮影画像中でのマーカーの見かけの大きさが所定の一定値になるように、撮像ユニットからマーカーまでの距離やズームの度合い等を調整することが好ましい。
ステップS71において、情報処理装置11は最適な描画サイズV1を保存する。最適な描画サイズV1は例えばユーザにより指定されてよい。ステップS72において、情報処理装置11は今回の動画像撮影が初回の撮影であるか否かを判定する。初回の撮影である場合、処理はステップS73に進む。
ステップS73において、情報処理装置11は、試行的に撮影された静止画等から画像中のマーカー半径を図12に示される処理と同様にして求め、求めた半径と描画サイズV1とが同一サイズとなるように、メッセージ出力或いはズームの自動調整をする。メッセージとしては、例えば表示画面上に撮像ユニットにて現在撮像されているマーカーの画像に重畳してサイズV1の大きさの参照マークを表示し、両者が同一サイズとなるように、撮影距離又はズームを調整するようにユーザに促してよい。また自動調整としては、求めた半径と描画サイズV1とが同一サイズとなるように、撮影ユニットのズーム機能を利用してマーカーの撮影画像中のサイズを調整すればよい。
ステップS72において初回撮影でないと判定された場合、処理はステップS75に進む。ステップS75において、情報処理装置11は、試行的に撮影された静止画等から画像中のマーカー半径を図12に示される処理と同様にして求め、求めた半径と描画サイズV1とが同一サイズとなるように、メッセージ出力或いはズームの自動調整をする。ステップS75の処理はステップS73の処理と同様であってよい。以上で処理を終了する。
図26は、露光調整処理の一例を示すフローチャートである。前述のように、情報処理装置11では、色情報に基づいて対象物体(マーカー)の検出を行う。撮像時毎にEV値(露出量)が異なると、所定の色のマーカーが各撮像データにおいて若干異なった色として撮影されてしまう。従って、撮影したマーカーの色が所望の色となるように、撮影時のEV値を適宜調整することが好ましい。
ステップS81において、情報処理装置11は今回の動画像撮影が初回の撮影であるか否かを判定する。初回の撮影である場合、処理はステップS82に進む。ステップS82において、情報処理装置11は、EV値が増加する方向又は減少する方向に撮像ユニットの撮影条件(絞りやシャッター速度等)を調整し、マーカーをテスト撮影する。なおテスト撮影自体が初回である場合には、EV値が増加する方向又は減少する方向に撮影条件を調整する前後で一回ずつテスト撮影を行ってよい。
ステップS83において、情報処理装置11は、前回のテスト撮影データ(撮影条件調整前のテスト撮影のデータ)のマーカーのU値及びV値と、今回のテスト撮影データ(撮影条件調整後のテスト撮影のデータ)のマーカーのU値及びV値とを比較する。なお撮影データ中でマーカーのU値及びV値を検出するためには、表示画面上でユーザが指等で触れてマーカー位置を指定し、当該指定された位置でのU値及びV値を計算すればよい。情報処理装置11は、登録されているマーカーの真のU値及びV値に、前回よりも今回の方が、撮影データのU値及びV値が近づいたか否かを判定する。
ステップS84において、情報処理装置11は、撮影データのU値及びV値が登録されているU値及びV値に最大限近づいたか否かを判定する。最大限近づいていない場合には、処理はステップS82に戻り、以降の処理を繰り返す。ここで例えば、EV値が増加する方向にEV値を順次変化させていくと、撮影データのU値及びV値が登録されているU値及びV値に近づいていく状態であるとする。このとき、ある時点においてEV値を増加する方向に変化させると、逆に、撮影データのU値及びV値が登録されているU値及びV値から遠ざかるようなEV値が観察される。この点のEV値の直前のEV値が、最大限近づいているEV値となる。最大限近づいた状態が得られた場合、ステップS85において、情報処理装置11は最大限近づいた状態でのU値及びV値をメモリに値V1として保存する。
ステップS81において初回撮影でないと判定された場合、処理はステップS86に進む。ステップS86において、情報処理装置11は、試行的に撮影された静止画等から画像中のマーカーのU値及びV値を求め、これらの値がメモリ中の値V1と同一になるようにEV値を調整する。以上で処理を終了する。
図27は、手ぶれ調整処理の概要を説明する図である。図27に示される撮影画面において、マーカー111は、マーカーに付随する矢印により示されるように左方向に移動している。それに対し、背景にあるマーカー以外の色を有する他の物体112乃至114は、マーカーに付随する矢印により示されるように右方向に移動している。このとき、背景にある他の物体112乃至114の移動は、マーカーを撮像している撮像ユニットに手ぶれがあることを示している。従って、物体112乃至114の移動データに基づいて、マーカー111の移動データを補正することが考えられる。即ち、情報処理装置11の計算ユニット74(図19参照)は、動画像中において対象物体の色とは異なる色を有する他の物体の移動に関する情報を検出し、他の物体の移動に関する情報に基づいて対象物体の移動及び振動に関するデータを補正してよい。
図28は、手ぶれ補正処理の一例を示すフローチャートである。ステップS91において、情報処理装置11は、撮影された動画像中でのマーカー色の画像領域の移動量MAをサンプリングする。ステップS92において、情報処理装置11は、撮影された動画像中でのマーカー色以外の色の画像領域の移動量MBをサンプリングする。マーカー色以外の色の画像領域としては、1個であってもよいが複数個であることが好ましい。複数個の画像領域について移動量をサンプリングした場合、各画像領域(各物体)についての移動量の平均値を計算し、当該平均値を移動量MBとしてよい。
ステップS93において、情報処理装置11は、マーカー色以外の色の画像領域の移動量MBがゼロ以外であるか否かを判定する。移動量MBがゼロである場合、手ぶれは存在しないと考えられるので、手ぶれ補正処理を終了する。移動量MBがゼロでない場合、処理はステップS94に進む。ステップS94において、情報処理装置11は、移動量MBを手ぶれ量として、検出されたマーカーの移動量MAから手ぶれによる移動量MBを減算する。この減算処理により、手ぶれの影響が除去された実際の振戦データが得られる。以上で処理を終了する。
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。