15
KinectV2の限界を突破する】 ~自分で新機能を作る~ 上田 智章 KMCNNeo Tech Lab

Hiroshima Motion Control Network 12, September, 2015

Embed Size (px)

Citation preview

Page 1: Hiroshima Motion Control Network   12, September, 2015

【KinectV2の限界を突破する】~自分で新機能を作る~

上田 智章 (KMCN)

NeoTechLab

Page 2: Hiroshima Motion Control Network   12, September, 2015

赤外線レーザー赤外線カメラRGBカメラ

【KinectV2の概略構造】

・3個の赤外線レーザーと赤外線カメラの組み合わせで画素単位に距離を測定できるデプスカメラを構成。・画面解像度は512×424画素、フレーム速度は30FPS、距離分解能は1mm・実用的な測定範囲は50cmから4m50cmまでの範囲

NeoTechLab

Page 3: Hiroshima Motion Control Network   12, September, 2015

パルス光源t

On On On

Off Off

距離L [m]受光素子 j

飛行時間c

Lt

2

光速 ]/[103 8 smc

測定対象

t

Off Off

飛行時間分だけ信号が遅延する

On On Ont

【ToF方式デプスカメラ】

tOn On On

Off Off

受光素子 j

照射オンのタイミング

G

A B

受光素子の出力電流を

ゲート(スイッチ)信号のオンのタイミングでコンデンサに蓄積する

On On On

Off Off tゲート通過オンのタイミング

Time of Flight方式とはレーザーで光パルスを照射して、物体で反射して戻ってくるまでの時間遅れを測定して、画素単位に距離を求める。

Page 4: Hiroshima Motion Control Network   12, September, 2015

【ステップ①】赤外線ブラスター照射オフで環境光だけの赤外線画像(環境光オフセット)を取得する

t

【ステップ②】赤外線ブラスター照射連続オンで環境光+照明光の照射時赤外線画像を取得する

t

【ステップ③】赤外線ブラスターパルス照射時にオフ時の環境光+反射パルス光の赤外線画像を取得する

t

照射オンのタイミング

t蓄積ゲートオンのタイミング

受光素子出力と蓄積される電荷量(赤線)

NeoTechLab

Page 5: Hiroshima Motion Control Network   12, September, 2015

環境光オフセット

アクティブ赤外線

環境光オフセット 環境光オフセット

遅延分

( A ) ( B ) ( C )

【ステップ①】 【ステップ②】 【ステップ③】

・3つのステップで取得できる情報は…

・B-Aで アクティブ赤外線

環境光オフセット

( B )

環境光オフセット

( A )

アクティブ赤外線

・C-Aで環境光オフセット

遅延分

( C )

環境光オフセット

( A )

遅延分

( D )

( E )

・E/Dは距離に比例遅延分( E )

アクティブ赤外線( D )

反射率に影響を受けない

NeoTechLab

Page 6: Hiroshima Motion Control Network   12, September, 2015

NeoTechLab【デプス画像のモノクロ表示とカラー表示】

256階調

深度に応じた色による多階調表示が可能

テーブルで定義した色の割り当てが行える

Page 7: Hiroshima Motion Control Network   12, September, 2015

【実際の距離精度】1mで2~3mmのばらつき。法線方向や吸光度によって精度は悪化。最大50mmのばらつきが存在する。このままでは3Dスキャンには適さない。

Page 8: Hiroshima Motion Control Network   12, September, 2015

8

【Kinect V2の限界を突破】

【DepthFusion】①Depthデータを長時間露光(時間軸方向に加算平均)②3次元座標に変換⇒法線ベクトル演算③光源計算(環境光+拡散反射光+鏡面反射光)

100フレーム使えば、ToFノイズを抑制して0.3mm程度の解像度が得られる。

NeoTechLab

Page 9: Hiroshima Motion Control Network   12, September, 2015

x

z

y

z

【Kinect V2の限界を突破】

隣接する画素のZ値(デプス値)を使って

z

x

y jiz ,

1, jiz 1, jiz

jiz ,1

jiz ,1

y

z10

x

z01

1

1x

y

と を求め、

x

z01

y

z10

法線ベクトルを求める。

2つの接線ベクトル と の外積から

Page 10: Hiroshima Motion Control Network   12, September, 2015

【Appendix A】『光源計算について』

【環境光】Ambient実際の空間では光源以外の様々な構造物、雲、地面等から反射した光で満ちている。そこで全方向から均質な光が入射して、一定の明るさで物体色が見えると考える。

【拡散反射】Diffuse一般物質の表面は鏡面(つるつる)ではなく、乱反射が発生する。乱反射強度は光源の存在する方向と物体の法線ベクトルのなす角で与えられ、物体色の明るさが変わると考える。

【鏡面反射】Specular光源の存在する方向と法線ベクトルから反射光の方向ベクトルを求める。

【発光】Emissive自ら発光している部分の明るさを与える。

視線と反射光ベクトルのなす角のpower乗nで反射強度を求める

10

NeoTechLab【Kinect V2の限界を突破】

Page 11: Hiroshima Motion Control Network   12, September, 2015

【Kinect V2の限界を突破】

・床面の法線ベクトルに基づいて、座標回転を行い、センサの仰角を補正することができる。(加速度センサ不要)

ここの法線ベクトルから床面の法線方向を求める

NeoTechLab

Page 12: Hiroshima Motion Control Network   12, September, 2015

【Kinect V2の限界を突破】 NeoTechLab

【加速度センシング】

・骨格トラッキングで取得できる関節座標の時間履歴曲線x(t), y(t), z(t)を放物線at2+bt+cで補間すれば、加速度2aも得られる。

Page 13: Hiroshima Motion Control Network   12, September, 2015

【Kinect V2の限界を突破】 心拍センシング NeoTechLab

赤外線脈波センサによる計測事例

Kinect V2の赤外線カメラによる計測事例

Page 14: Hiroshima Motion Control Network   12, September, 2015

【Kinect V2の限界を突破】 心拍センシング NeoTechLab

毛細血管の動脈側は心拍に伴う圧力変動で赤外線吸収率が1/200程度変化する。

Page 15: Hiroshima Motion Control Network   12, September, 2015

【Kinect V2の限界を突破】 呼吸センシング NeoTechLab

呼吸に伴って胸部までの距離が2mmから10mm程度変化。さらに、心拍動に伴って、0.3mm程度変化。

服の上からでも呼吸・心拍を測定可能

分厚い布団の上からでも呼吸を測定可能