36

屋内エリアに向けられた、静止したカメラがあります。人々は、カメラから約 5 メートル以内で、カメラのそばを通り過ぎます。OpenCVを使用して、過去を歩いている個人を検出したい - 私の理想的な戻り値は、検出された個人の配列であり、四角形で囲まれています。

いくつかの組み込みサンプルを見てきました。

  • 実際に適用されるPythonサンプルはありません
  • Cブロブ追跡サンプルは有望に見えますが、ライブ ビデオを受け入れないため、テストが困難です。また、これはサンプルの中で最も複雑であり、関連する知識を抽出して Python API に変換することが問題になります。
  • C 'motempl' サンプルも、後続のビデオ フレームからシルエットを計算するという点で有望に見えます。おそらく、それを使用して、強く接続されたコンポーネントを見つけ、個々のブロブとその境界ボックスを抽出できますが、後続のフレームで見つかったブロブを同じブロブとして識別する方法を見つけようとしている.

これを行うためのガイダンスやサンプルを提供できる人はいますか?

4

4 に答える 4

28

OpenCV の最新の SVN バージョンには、HOG ベースの歩行者検出の (文書化されていない) 実装が含まれています。事前にトレーニングされた検出器と python ラッパーも付属しています。基本的な使い方は以下の通りです。

from cv import *

storage = CreateMemStorage(0)
img = LoadImage(file)  # or read from camera

found = list(HOGDetectMultiScale(img, storage, win_stride=(8,8),
                padding=(32,32), scale=1.05, group_threshold=2))

したがって、追跡する代わりに、各フレームで検出器を実行し、その出力を直接使用することができます。

src/cvaux/cvhog.cpp実装とsamples/python/peopledetect.pyより完全な python の例については、を参照してください (両方とも OpenCV ソースにあります)。

于 2010-02-20T00:16:52.490 に答える
5

ニック、

探しているのは人物検出ではなく、モーション検出です。あなたが解決しようとしていること/実行しようとしていることについてもっと詳しく教えていただければ、より適切な回答ができます。とにかく、結果で何をしようとしているかに応じて、モーション検出を行う方法はたくさんあります。最も単純なものは、差分とそれに続くしきい値処理ですが、複雑なものは、適切なバックグラウンド モデリング -> 前景減算 -> モルフォロジー演算 -> 連結成分分析、必要に応じてブロブ分析です。opencv コードをダウンロードして、samples ディレクトリを調べます。あなたが探しているものが見えるかもしれません。また、OCV に関する Oreilly の本もあります。

これが役に立てば幸いです、Nand

于 2010-02-28T18:12:11.143 に答える
4

これは明らかに重要な作業です。インスピレーションを得るには科学出版物を調べる必要があります (ここではGoogle Scholarがあなたの友達です)。人間の検出と追跡に関する論文は次のとおりです。高速平均シフトモードシークによる人間の追跡

于 2010-02-14T11:19:18.997 に答える
2

これは、コンピューター ビジョン コースの一部として行ったプロジェクトに似ていますが、正しく理解するのは難しい問題であると言えます。

前景/背景セグメンテーションを使用して、すべてのブロブを見つけて、それらが人物であると判断できます。問題は、人は一緒に行ったり、すれ違ったりする傾向があるため、あまりうまく機能しないことです。ブロブは 2 人で構成されている可能性が非常に高く、そのブロブが歩きながら分裂したり合併したりすることがわかります。

1 つのブロブ内の複数の人物を識別する何らかの方法が必要になります。これは、誰もが単一の SO 投稿で回答できるとは思わない問題ではありません。

私のアドバイスは、利用可能な研究に飛び込んで、そこに何かが見つかるかどうかを確認することです. これを行う製品が存在することを考えると、この問題は解決できないわけではありません: Autoliv には、車の IR カメラを使用して歩行者を検出する製品があり、店舗に出入りする顧客をカウントする他の製品を見てきました。

于 2010-02-03T09:13:15.357 に答える