3

Kinectを使用してインタラクティブなインスタレーションを作成しており、インスタレーションの前に何人の人がゆっくりと立っているか歩いているかを知る必要があります。

気にしない人がもっといれば、5人まで数えます。

これを行うには、Kinectによって検出されたブロブの総量を取得し、それを1人の概算量で割ります。

count = Vtotal / Vperson;

最後に、カウントをスムーズにするために、2秒間の平均カウントを計算します。

countAvg = Vtotalavg / Vperson;

これは2〜3人で問題なく機能しますが、それ以上になると、ブロブが重なり、合計ボリュームはもはや適切ではないように見えます。

誰かがこれをどのように解決し、信頼できるカウントを得ることができるかについての考えを持っていますか...同じブロブボリュームメソッドを使用するか、よりスマートなものを使用することによって!?

4

2 に答える 2

6

天井-kinectをマウントします。床にまっすぐ下に向けます。生の深度データを取得し、頭と肩だけをキャプチャする傾向がある特定のしきい値よりも遠くにあるピクセルをフィルタリングします。(4フィートより高いすべてを試してください。)これらのピクセルのうち、隣接するピクセルの各グループを調べて、そのグループの合計ピクセル数を取得します。グループのピクセル数が最小しきい値未満の場合は、無視してください。これで、各グループを1人として数えることができますが、さらに改良すると、非常に近くに立っている人を捕らえることができます。グループのピクセル数を1人あたりの平均ピクセル数の定数で割り、最も近い値に丸めます。

できます。

于 2012-09-07T00:10:13.527 に答える
2

しかし、なぜあなたはそれをするのですか?Kinectは、追跡される彼の前の各スケルトンにスケルトンIDを与えます。単純に配列(サイズ5)を作成し、追跡されたスケルトンをそこに配置します。それらを数えるには、配列内の要素の数を取得するだけです

于 2012-09-06T15:07:30.987 に答える