問題タブ [homography]

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.

0 投票する
1 に答える
542 参照

c++ - 2D 平面上でのホモグラフィの精度の計算

ホモグラフィ計算の精度をパラメータ化する方法を見つけようとしています。特定の位置で測定したホモグラフィ計算の精度を表す値を取得したいと考えています。

現在、ホモグラフィの計算に成功しており( をcv::findHomography使用)、それを使用してカメラ画像上のポイントを 2D マップにマッピングできます( を使用cv::perspectiveTransform)。今、私は 2D マップでこれらのオブジェクトを追跡したいと考えています。これを行うには、カメラ画像の後ろにあるオブジェクトは、2D マップ上のオブジェクトよりも正確な位置を持っていないことを考慮に入れたいと考えています。フロント。

このウェブサイトで平面フィッティングについて言及している次の例を見てきましたが、この方法を使用して行列を正しく埋める方法がよくわかりません。結果の視覚化は、私のニーズに合っているようです。標準の OpenCV 関数でこれを行う方法はありますか?

編集: フランチェスコ、あなたの推薦に感謝します。しかし、私はあなたの答えとは違う何かを探していると思います。ホモグラフィ自体の精度をテストするつもりはありませんが、1 つの実際のカメラ ビューでの測定値の密度と、作成したマップ上の実際のサイズとの関係をテストします。カメラ画像の検出で 1 ピクセルずれている場合、この時点でマップ上に何メートルあるかを知りたいです。

もちろん、カメラ画像の測定値の周りにいくつかのピクセルを取得して計算し、ホモグラフィを使用して、ホモグラフィを実行するたびにマップ上の何メートルを表すかを確認できますが、毎回これを計算したくはありません. 私が望むのは、画像内のピクセルとマップ上のピクセルとの関係を示す数式を用意して、マップ上の追跡でこれを考慮に入れることができるようにすることです。

0 投票する
1 に答える
160 参照

visual-studio-2010 - OpenCV と Visual Studio 2010 からホモグラフィ マトリックスを取得したら、どのように使用しますか?

OpenCV と Visual Studio を使用してホモグラフィ行列を計算しました。このトピックの基本的な例を使用しました。そのマトリックスをどのように適用すればよいですか?...

0 投票する
1 に答える
1480 参照

c++ - OpenCV / C++でステッチする前に画像の場所を検出する方法

2 つの画像をマージ/スティッチしようとしていますが、OpenCV のデフォルトのスティッチャー クラスでは画像を処理できないことがわかりました。そこで、私は自分で書き始めました. 残念ながら、画像が大きすぎてこのメッセージに添付できません (サイズはどちらも 12600x9000 ピクセルです).

2枚の画像はカメラで撮った写真ではなく、PDFファイルから抽出したtiffファイルです。画像自体は実際には CAD 図面であり、そこにはグラデーションがあまりないため、デフォルトのスティッチャー クラスでは処理できなかったと思います。

これまでのところ、機能を抽出して一致させることができました。また、次のよく知られた例を使用して、それらをつなぎ合わせました。

私の問題は、私の場合、2つの画像を垂直または水平に並べることができることです。デフォルトでは、インターネット上のすべてのステッチの例は、最初の画像が左の画像で、2 番目の画像が右の画像であると想定しています。

したがって、私の最初の質問は次のとおりです。画像が最初の画像の左、右、上、または下にあるかどうかを検出し、適切なサイズの新しい画像を作成するにはどうすればよいですか?

第二に..現在、適切な画像を取得しています..しかし、新しい画像の理想的な幅と高さを確認するための適切なコードがないため、新しい画像に多くの黒/空のスペースがあります。これらの黒い領域を削除するのに最適な C++ コードは何でしょうか? (私はネット上で多くのPythonスクリプトを見ています..しかし、これのC++の例はありません..そして私はPythonのスキルがありません....)

よろしくお願いいたします。こんにちは、フローリス。

0 投票する
2 に答える
1353 参照

computer-vision - 任意のシーン画像を別の視点にマッピングするには、平面ホモグラフィが完全に十分ではないのはなぜですか?

コンピューター ビジョン ホモグラフィーについて非常に基本的な質問があります。任意のシーン画像を別の視点にマッピングするには、平面ホモグラフィが完全ではないのはなぜですか? 点は 1 つの平面上にある必要があります。では、2 台のカメラの背後にあるイメージ ポイントには関係があるはずですか? 私は混乱していますか?誰かがそれを学ぶための資料を提供していますか?

どうもありがとうございました!

0 投票する
1 に答える
407 参照

opencv - OpenCV: ゆがんだビデオの記録

ビデオを記録し、x、y、z でビューを回転させてワープできるようにする小さなアプリケーションを C++ (OpenCV を使用) で作成しています。

現在、反復ごとに小さな角度で回転させることで、回転をテストし始めています。ビデオの表示は正常に機能しますが、ファイルへの書き込みは機能しません。コードからわかるように、純粋な回転ホモグラフィを使用して各フレームをワープし、ワープしたフレームを表示して書き込みます。何らかの理由で、ワープされていないビデオは数 MB の大きさですが、ワープされたビデオはわずか数 KB であり、Ubuntu の標準のビデオ プレーヤーを使用して再生することはできません。私の最善の推測は、フレームをワープしているため、openCVが正しく保存できない方法でフレームサイズに影響を与えているということです。私はそれを修正する方法がわかりません。

何か案は?

コード:

0 投票する
1 に答える
214 参照

c++ - ホモグラフィーエラー

最初に、私は C++ の初心者であることを述べたいと思います。Features2D + Homography からコードをコンパイルして実行し、既知のオブジェクトのチュートリアルを見つけていますが、必要なライブラリを正しくリンクするのに問題があると思います。私はこれを取得しています:

呼び出し: GCC C++ リンカー g++ -L/usr/local/lib -o "Homografia2" ./src/Homografia2.o -lopencv_core -lopencv_nonfree -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_vcontrib -flannlopencv_legacy - /usr/lib/gcc/i686-linux-gnu/4.6/../../../i386-linux-gnu/crt1.o: 関数_start': (.text+0x18): undefined reference tomain で
collect2: ld が 1 の終了ステータスを返しました make: * [Homografia2 ] エラー 1

**** Build Finished ****

私は日食に取り組んでいます。お願いします、本当に助けが必要です。