OpenCVのHoughLinesまたはHoughLinesP関数は、HoughCircles関数のようにアキュムレータ順の行のリストを返しますか?私は線の順序を知りたいです。また、ラインのアキュムレータ値を取得するのが非常に便利なので、固定されたしきい値の代わりにインテリジェントで適応性のあるしきい値を使用できます。 rewriting OpenCV myselfなしで注文またはアキュムレータの値を使用できますか?OpenCVハフ最強の行
答えて
HoughTransformは、投票数を降順に並べ替えます。あなたはコードを見ることができますhere
しかし、投票数は関数が返すときに失われます - 唯一の方法はOpenCVを変更することです。
それは非常に複雑ではないということです - 私は一度それをしました。出力をvector<Vec2f>
からvector<Vec3f>
に変更し、最後のparamに投票数を入力するのは数分です。
さらに、3番目のパラメータ(houghがC
に実装されています)を追加するには、CvLinePolarを変更する必要があります。C++
にラッパーがあるため、実装とラッパーの両方を変更する必要があります。
変更するための主なコードはここに
for(i = 0; i < linesMax; i++)
{
CvLinePolar line;
int idx = sort_buf[i];
int n = cvFloor(idx*scale) - 1;
int r = idx - (n+1)*(numrho+2) - 1;
line.rho = (r - (numrho - 1)*0.5f) * rho;
line.angle = n * theta;
// add this line, and a field voteCount to CvLinePolar
// DO NOT FORGET TO MODIFY THE C++ WRAPPER
line.voteCount = accum[idx];
cvSeqPush(lines, &line);
}
これを明確にしてコードを指摘してくれてありがとう。私は確率的なバージョンを使用しているし、コードを通過する、それはラインを提供することも素晴らしいでしょうスピードアップ物事。 – zzzz
Probabilisticは同じファイルにありますが、あなたがすでにそれを見つけたと思います。ライン検索における異なるアプローチは、投票数が古典的なHほど重要でないことを意味する。ラインに必要最低投票がある限り、それは結果キューにプッシュされる。並べ替えは実行されません。 – Sam
こんにちは、 このスレッドを修正して申し訳ありませんが、確率的ハフ変換でアキュムレータ値を取得するアイデアはありますか?私はアキュムレータ行列の中でどこの票がどこにあるのかよく分かりません。 – Aeefire
- 1. 一般化ハフ変換とOpenCv
- 2. OpenCVのエッジ強調
- 3. 3次元ハフ空間
- 4. OpenCV/C++の最適化ヘルプ
- 5. OpenCVの非最大抑制
- 6. 円形ハフ変換の改善
- 7. ハフ変換におけるアキュムレータアレイのサイズ
- 8. ハフ変換の実装方法は?
- 9. Emacsで最大の行の長さを強制するには?
- 10. opencvの行列型変換
- 11. 最小と最大強度の長さ
- 12. 私の最初のQtアプリケーション、C++(little opencv)
- 13. 最長線検出 - のpython - OpenCVの
- 14. 一般化されたハフRテーブル
- 15. 3次元ハフ空間変換
- 16. createVideoWriter()のfpsに最適な値openCV
- 17. 最も速いOpenCV 2 OpenGLのコンテキスト
- 18. opencv whileループ、最初のループに戻る
- 19. EFコード最初に強制的に読み込みを行う
- 20. Linux:最も強力なデバッガ
- 21. opencv +でのSURF特徴抽出に最適なヘッセ行列しきい値
- 22. Python OpenCV access webcam最大解像度
- 23. OpenCV OpenCV 2以降では、行列に列を追加する
- 24. 実行中のopencv(QT)のヌルポインタ
- 25. OpenCVの画像の行列を取得
- 26. 行列乗算のOpencv STLベクトル
- 27. OpenCVでの矩形行列計算
- 28. 行、OpenCVの列検出(OCR前処理)
- 29. OpenCVの - cvQueryFrame()OpenCVのリファレンスマニュアルで
- 30. cronジョブは最後のcron実行を強制終了しますか?
良いものです。私はいつもラインが順番に与えられていると仮定しました。そして、この仮定はこれまでのところ私の結果と一致しています...しかし、確かに良いでしょう。 –