問題タブ [edge-detection]

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 投票する
2 に答える
1575 参照

matlab - MATLAB:大きな行列の2つの座標間の値の配列を返します(対角線上)

理由を説明すると、これはもっと理にかなっているかもしれません

エッジ検出(1 =エッジ、0 =エッジなし)を実行した測定スタッフの写真の論理行列(103x3488)出力があります。スタッフの目盛り間の距離をピクセル単位で計算することを目的としています。問題、スタッフが途中でたるんでいます。

アイデア:ユーザーがスタッフの両端とサグの中点の座標(ginputなどを使用)を入力すると、これらのポイント間のエッジを配列に抽出できれば、エッジの位置を簡単に見つけることができます。

この方法で行列から配列を抽出する方法はありますか?

他のアイデアにもオープンで、matlabを1か月しか使用していないため、ほとんどの機能は私にはわかりません。

編集:画像へのリンク

マトリックスの小さな領域を示しているので、この例では1と2がサンプリングしたいポイントであり、赤い線に沿って発生するポイントを返したいと思います。

乾杯

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

c# - Emgu.CVでは、これらのしきい値は何を意味し、円を検出するためのより良い方法はありますか?

バックグラウンド

これが、画像を取得してその中にある円を描くための私のEmgu.CVコードです(主にEmgu.CVのShapeDetectionプロジェクトからのコード。EmguCVダウンロードに付属のサンプルソリューション):

これが画像です:

サークルの画像

質問

  1. OK、それで私はのしきい値が何であるかを知っていThresholdBinaryます。グレースケール画像からバイナリ画像を取得しているので、それは画像のグレーの強度です。これは、写真のグレースケール円の強度が150〜185であるため、機能します。これは、の最初の引数でも同じであると思いますHoughCircles

    私が知らないのは、circleAccumulatorThreshold、アキュムレータの解像度、および最小距離(2番目、3番目、および4番目の引数からHoughCircles)、またはそこに配置する値です。写真の円が正しく「ハフ」されていないため、明らかに正しい値がありません。

  2. 私の2番目の質問は、円を見つけるためのより良い方法はありますか?多くの種類の光でこの円を検出し(つまり、円の色の強度が80以下のように低い場合があります)、写真でその寸法を取得できる必要があります。円を一致させるための最良の方法は何ですか?円を別の色にして、元の画像でその色を探す必要がありますか?他のアイデアはありますか?

ありがとう

0 投票する
3 に答える
638 参照

object - 画像オブジェクト検出の質問

どのコースにも含まれていない大学のプロジェクトを開始しようとしています。私は、任意の画像 (画像内の円の数など) 上のオブジェクトを識別することを任されました。私は主に2D画像で作業します。私はそのような画像処理の経験があまりなく、どこから始めるべきかについて誰かがガイダンスを与えることができるかどうか疑問に思っていました.

最初の Google 検索で、OpenCV など、構築するためのキーワードがいくつか見つかりました。信号とシステム (特にフーリエ変換) に関するいくつかのコース、多くのコンピューター サイエンス関連のコース (データ構造、アルゴリズムなど)、数学コース (微積分、線形代数など) などがあります。

どのようなものを探して学ぶべきかについて、誰か簡単なガイドを教えてもらえませんか? どんな種類のガイダンスでも大歓迎です。ありがとう!

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

c# - エッジ検出処理画像の類似判定

私は、上級プロジェクトで遭遇したジレンマに関して、stackoverflow コミュニティから何らかのガイダンスを得られることを望んでいました。まず最初に、私は初心者のプログラマーであり、このプロジェクトは私の頭をはるかに超えていたとすぐに言う人もいると思います。私はすぐに、これがおそらく真実であることに気づきました。

では、それは仕方のないことです。いくつかの定義を示しましょう。

プロジェクトの目標: プロジェクト の目標は、他の多くの人がさまざまな SO の質問で達成しようとしてきたように (その多くは、この取り組みの過程で私にとって非常に役に立ちました)、駐車スペースが満車か空いているかを検出することです。最終的には、そのようなレポートをユーザーに返します (理想的には、使いやすさのために iPhone や Droid、またはその他のモバイル アプリを介して)。

使用ツール: AForge.Net ライブラリのリソースを多用しました。IP カメラからのビデオのキャプチャ、画像へのフィルタの適用、および最終的に検出の目標を完了します。その結果、主に初心者にとって使いやすいという理由で、C# でプログラミングすることを選択したことがわかります。その他のオプションには、MATLAB/C++、OpenCV を使用した C++、およびその他の代替手段が含まれていました。

問題

ここで私は問題に遭遇しました。以下は、AForge Image Processing Lab で前処理された画像のリンクです。使用された一連のフィルターとプロセスは、グレースケール、ヒストグラム均等化、ソーベル エッジ検出、そして最後に大津しきい値処理でした (ただし、最終ステップが必要であるとは確信していません)。

http://i.stack.imgur.com/u6eqk.jpg

もちろん、肉眼での画像からわかるように、カメラで監視しているスペースに明らかに駐車中の車である検出されたエッジのシーケンスがあります。これらの車は、光沢のある車輪のパターン、本質的​​にサイド ウィンドウの外縁を表す一種の「二重線路」パターン、およびこの場合のナンバー プレートの輪郭によって明確に定義されます。ただし、具体的には、プロジェクトの継続では、選択されたカメラはできるだけ多くのブロックをカバーする PTZ になるため、車の側面の特徴に焦点を当てたいと思います (ナンバー プレートなどの要素を排除します)。 . サンルーフの長方形などの機能も考慮される可能性がありますが、一般的なウィンドウの輪郭がそうであるのに対し、明らかにこれは車の普遍的な機能ではありません.

これらのパターンには違いがあり、もちろん車種やモデルによって異なることがわかります。しかし、一般に、このシーケンスは、目的のフィーチャの検索に成功するだけでなく、道路をビューから除外します (空きスペースを検出する場合、「最初のリトマス試験紙」として道路の色を使用するつもりであるため、重要です...道路のデータと一致するグレー レベルを検出した場合、特に領域内でエッジが検出されなかった場合は、安全に空きスペースを想定できると感じます)。私の質問はこれです。うまくいけば、サイト上の他の人に実際に役立つほど一般的です。

焦点を絞った質問:
画像セグメントを (クロッピングによって) 取得し、検出されたエッジ シーケンスをカメラからの将来の新しいフレームと比較する方法はありますか? より具体的には、余裕を持たせながら/本質的にエッジのわずかな違いに対する許容しきい値を作成しながらこれを行う方法はありますか?

質問に関する個人的な考え/ブレーンストーミング:
- 文字通りピクセルごとに比較する方法があると確信しています - 端の周りの長方形だけにトリミングし、トリミングした画像を新しく処理されたフレームにスライドさせて比較ピクセル-ピクセルごとですが、検出されたエッジと完全に一致しない限り、特に役に立ちません。

すべての助けに感謝します。必要に応じて明確にすることもできます。

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

image-processing - 1x2 と 1x3 の画像グラデーション カーネル フィルター定義の違いは何ですか

最近、私は同僚と画像勾配操作について議論しています。

通常、画像のグラデーションは次のように定義されます。

dI_dx(j,k) = I(j,k+1) - I(j,k) # x partial derivative of image

dI_dy(j,k) = I(j+1,k) - I(j,k) # y partial derivative of image

画像の x 偏導関数の場合、この操作は 1x2 フィルター配列で表すことができます。

[1 -1]

しかし、別の定義もあります:

dI_dx(j,k) = I(j,k+1) - I(j,k-1)=> [1 0 -1](フィルター配列)

そこで私の同僚が尋ねました: それらの違いは何ですか? また、後者の 1x3 フィルターが 1x2 フィルターよりも頻繁に使用されるのはなぜですか?

いくつかの考えられる理由について説明しました。

  1. 1x3 サンプリングは 1x2 よりもロバストです

    私の同僚 : いいえ、どちらも画像のグラデーション ピクセルごとに 2 ピクセルをサンプリングします。サンプリングされたピクセルにノイズが発生する確率は、これらのフィルター間で同じです。

  2. 1x3 は 1x2 より滑らかです

    私の同僚 : いいえ、1x2 および 1x3 フィルターの定義はまったく平滑化されていません。ソーベル フィルターは、ガウスによって平滑化されたものです...

拡張質問:画像グラデーションの空間フィルター カーネルには、いわゆる「ウィンドウ サイズ」がありますか?

ところで、私と私の同僚は、次の参照 Web ページでは説得力がありません...

http://www.cis.rit.edu/people/faculty/rhody/EdgeDetection.htm

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

opencv - エッジ検出後にエッジ座標を取得 (Canny)

私はかなり短い間 OpenCV を使用しており、画像に対して Canny Edge Detection を実行し、その後拡張を実行して、オブジェクト (私の場合は正方形) を背景からさらに分離しました。

私の問題は、これらのエッジのポイントの座標を処理する必要があるアルゴリズムを使用して、2D で把握可能な領域を識別することです。OpenCV を使用して角の座標を取得し、正方形の端を形成する線の方程式を見つける方法はありますか? 正方形の大きさが分かります。私の問題には2D座標ジオメトリが含まれているため、座標が必要です。

必要に応じて、エッジ検出と膨張を行った後の画像を提供できます。助けていただければ幸いです。

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

matlab - MATLAB での輪郭検出

私はこのコードを理解しようとしています:

それが画像であることがわかりd、キャニー検出器が適用され、40 ピクセルが無視されます。画像はグレースケールで、画像に輪郭が追加されています。

次の行について説明してもらえますか? ここで使用される原則/アルゴリズムは何ですか? 特にコードの輪郭検出部分に問題があります。

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

c# - 画像C#から白いエッジを削除します

受信しているスキャンで画像を検出してトリミングする方法を探しています。写真はスキャンされるフォームであり、スキャンカバーの白い背景も含まれています。

それを自動的に行う方法について何か提案はありますか?

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

flash - ActionScript 顔検出

ユーザーがウェブカメラの前にいるときに、ユーザーの頭の端を取得しようとしています。私はグーグルを試みましたが、役に立ちませんでした。誰かが同じことのActionScriptの例を教えてもらえますか?

平和 \m/

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

opencv - openCVでエッジ検出のしきい値を選択するには?

私のアプリケーションは、コインを検出することです。私はそのほとんどを OpenCv を使用して行いました。CannyDetection と houghTransform を使用して画像の円を検出しています。

しかし、コインの正しい円を取得していません。thresoldValues が cannyEdgeDetector に渡されることに問題があると思います。コインの円を検出するためのしきい値を選択する方法を教えてください。

ありがとう、スリニバス