-2

カメラで動きを検出できるかどうか知りたいです。アプリケーションは 2 台の電話で実行され、1 台は x ポイントで、もう 1 台は x+meters で実行され、正確なストッパーとして使用されます。

したがって、私が検出したい動きの種類は、カメラを高速 (最大 40 KMH) で通過するオブジェクトです。

もう一度言いますが、可能ですか?

4

1 に答える 1

0

2つの画像を比較することで実行できます。基本的に onPreviewFrame(byte[] data, Camera cam) メソッドをオーバーライドし、デフォルトの YUV から RGB に変換する必要があります。

int[] rgb = ImageProcessing.decodeYUV420SPtoRGB(data, width, height);

モーション検出コードに使用するオブジェクトを作成します。

IMotionDetection detector = new RgbMotionDetection();

上記で取得したパラメーターを渡して detect() メソッドを呼び出します。

boolean detected = detector.detect(rgb, width, height)

ブール値の「detected」変数が true の場合、動きが検出されています。

RGB 検出コードは RgbMotionDetection.java クラスにあります。画像処理コードは ImageProcessing.java 静的クラスにあります。すべてを結び付けるアクティビティは、MotionDetectionActivity.java にあります。

于 2013-06-08T22:31:07.227 に答える