問題タブ [motion]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - バイナリ画像からブロブをマスキングする
openCVとC++を使用して歩行のモーション認識を行っていますが、提供された画像に見られる効果を実現するために、マスクまたはコピーされた画像を作成したいと思います。以下は画像の説明です。結果として生じる人間の歩行の塊が見られます。次に、元のフレームのマスク画像またはコピーされた画像が作成され、バイナリの人間のブロブがマスクされ、マスクされていないピクセルがゼロに設定されます。結果は、黒い背景で抽出された人体です。次の図は、人間のブロブが抽出されてからマスクされる方法を示しています。これは、ビデオシーケンスの5番目のフレームごとに実行されます。これまでの私のコードは、5フレームごとに取得し、グレースケーリングし、すべてのブロブの領域を見つけ、しきい値を適用して、人間のブロブだけが白で残りの画像が白であるバイナリ画像を取得することで構成されています。黒。今、人体を抜こうとしていますが、どうすればいいのかわかりません。私を助けてください。
また、コードで使用しているビデオをアップロードしたいのですが、ここでアップロードする方法がわからないので、誰かがそれを手伝ってくれるなら。質問に対してできるだけ多くの情報を提供したいと思います。
opencv - 対応する 3D ポイント セットからカメラの動きを計算する
少し問題があります。カメラと深度情報を使用して、各フレームの 3 次元ポイントのセットを抽出するプログラムを作成しました。ポイントはカメラ座標系にあります。つまり、原点はカメラの中心にあり、x は水平距離、y は垂直距離、z はカメラからの距離 (光軸に沿った距離) です。すべてメートル単位です。つまり、点 (2,-1,5) は右 2 メートル、下 1 メートル、カメラの光軸に沿って 5 メートルになります。
t-1
各時間枠でこれらの点を計算し、 のどの点が のどの 3D 点に属しているかを知っているように、対応も知っていt
ます。
私の目標は、ワールド座標系の各時間フレームでカメラの動きを計算することです (z は高さを表します)。カメラの軌跡を視覚化するために、相対運動だけでなく、開始位置から始まる絶対運動も計算したいと思います。
これは、カメラ座標の点の現在 (左) と以前の 3D 位置 (右) を含む 1 つのフレームのデータ セットの例です。
可能であれば OpenCV を使用したいのでestimateAffine3D()
、OpenCV 2.3 で関数を見つけました。この関数は、2 つの 3D ポイント入力ベクトルを取り、RANSAC を使用してそれらの間のアフィン変換を計算します。
出力として、3x4 変換マトリックスを取得します。
RANSAC パラメータを設定して計算をより正確にしようとしましたが、多くの場合、変換行列は非常に大きな並進運動を示します。サンプル データでわかるように、動きは通常非常に小さいです。
それで、誰か私が試すことができる別のアイデアを持っているかどうか尋ねたかったのですか? OpenCV はこれに対する他のソリューションを提供していますか?
また、各時間枠でカメラの相対的な動きがある場合、それを世界座標に変換するにはどうすればよいですか? また、ポイント (0,0,0) から始まる絶対位置を取得するにはどうすればよいので、各時間フレームのカメラ位置 (および方向) を取得できますか?
どなたかアドバイスいただけると助かります!
ありがとうございました!
更新 1:
@Michael Kupchickの良い答えの後、OpenCVのestimateAffine3D()関数がどれだけうまく機能するかを確認しようとしました。そこで、回転ではなく平行移動のみを行う 6 つのポイント ペアの小さなテスト セットを 2 つ作成し、結果の変換行列を調べました。
テストセット 1:
変換マトリックス:
テストセット 2:
変換マトリックス:
--> これにより、一見正しく見える 2 つの変換行列が得られます...
これが正しいと仮定すると、各タイムステップにこの変換行列がある場合、どのように軌道を再計算しますか?
なぜそれがそんなに悪いのか、誰かヒントやアイデアはありますか?
video-encoding - ビデオ圧縮におけるブロックベースのモーション推定
私たちが知っているように、ほとんどすべてのビデオエンコーダーは一時的なコーディングを使用しています。ブロック (長方形領域) ベースのモーション推定を使用して、参照/前のフレームで現在のフレームのピクセルのブロックの最適な一致を見つけます。これにより、モーション ベクトルが得られます。モーションが並進的である場合 (つまり、ブロックが左右または上下に移動する場合) は問題ありません。オブジェクトが回転し、オブジェクトの形状が長方形で回転している場合、モーション推定はそれほど正確ではないため、最小のプレシデュアル(元のマイナス予測)にはなりません。
では、ビデオエンコーダーは、そのような回転運動を処理するためにどのような方法を採用していますか。
次に、そのブロックをPフレーム内のイントラブロック(以前のコードを参照せずにそのままコード)としてコーディングすることにより、そのような状況を処理しますか
また
それを P マクロブロック自体としてコーディングしているときに、それを処理するための他のトリックはありますか?
java - Atomボード上のOpenGLによるモーションキャプチャ
入力を与えられて各関節を制御できるアームを作りたいと思っています。たとえば、ミリ秒ごとに場所を受け取り、その新しい場所に移動するには各関節が必要になります。これは、モーションキャプチャをシミュレートするために使用されます。これを行う方法についての良いチュートリアルはありますか?私はこれをopenGLのサポートが制限されたアトムボードでプログラミングしています。C ++ G3Dを使用してみましたが、グラフィックカードには複雑すぎるようです。レンダリング時にいくつかの不具合がありました。より基本的なOpenGLのみのアプローチの方が良いでしょうか?ピボットポイントが組み込まれているアームのモデルはありますか?
search - vim で、カスタム単語境界モーションを作成するにはどうすればよいですか?
私が理解しているように、w
テキストを 3 つのグループに分割して単語の境界を認識します。
1)iskeyword
設定で指定する文字(英字、数字、アンダースコア)
2) その他の印刷できない文字 (記号)
3) 空白文字
押すたびw
に、次のグループ1またはグループ2に移動します。「記号語」を飛び越えて、次のグループ1にのみ移動するようにカスタマイズしたいと思います。
ほとんど機能するのはこれです:
nnoremap w /\k\+<CR>
iskeyword
文字クラスを使用し\k
ます。しかし、検索の実行をシミュレートし、強調表示が変更され、検索履歴が乱雑になり、他に何があるかがわからないため、醜いです。w
コマンドが通常のように「きれいに」機能させる方法はありますか?
flash - Flash Professional CS5.5 のステージへの読み込みでモーショントゥイーンが削除される
私のアニメーターは Flash Professional CS4 を使用しており、私は Flash Professional CS5.5 を使用しています。彼女は彼女のプログラムからエクスポートされた .swf ファイルを私に送り、私は開発のためにそれらを私のファイルにインポートします。
ただし、.swf を CS5.5 (ステージにインポート) にインポートするとすぐに、すべてのモーション トゥイーンが .swf から削除されることがわかりました。
これは CS4 から CS5.5 の問題ですか? 彼女のアップグレードに 200 ドルを支払わずにこれを解決する方法はありますか?
android - Android - モーション検出器としてのカメラ
フロントカメラと Android SDK を使用して簡単なモーション検出器を実装するにはどうすればよいですか?
シナリオの例は次のようなものです: デバイスがスタンドに立っていて、映画を再生しています。触れずに目の前に人が現れると、映画が変わります。
curve - 2点が既知である3点を通る放物線運動の最終点の座標を見つける方法は?
オブジェクトが 2D 座標系で P から Q へ、次に Q から R へ放物線で移動するとします。P と Q の 2D 座標は既知であり、これらの 3 点を通る放物線はわかりません。
オブジェクトは P から Q に 1 ミリ秒で移動し、Q から R に 2 ミリ秒で移動します。
R の 2D 位置を計算することは可能ですか? はいの場合、どうすればそれを見つけることができますか? いいえの場合、なぜですか?
labview - 移動するZaberデバイスの位置を追跡する
Zaberリニアアクチュエータを動かすLabVIEWVIを書いていますが、デバイスが動くときに数ミリ秒ごとにデバイスの位置を記録したいと思います。
ZaberのLabVIEWドライバをインストールし、その例を使用してアクチュエータを移動させましたが、これらの移動中に位置を読み取るにはどうすればよいですか?
actionscript - TweenLite 円運動
TweenLite [アクションスクリプト 3 ライブラリ] を使用して、オブジェクトを (startX、startY) から (destinationX、destinationY) に円運動で移動させる方法はありますか?