問題タブ [computer-vision]

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

matlab - Computer Vision のクラス プロジェクトに関するアイデアを探しています

プロジェクトのアイデアを見つける必要がある別のクラスに出くわしました。プロジェクトのアイデアについてのSOへの最後の投稿が非常に成功したので、ここでもう一度質問することにしました.

私はヒューマンコンピューターインタラクションのためのコンピュータービジョンというタイトルのクラスを受講しています.2〜4週間で完了するプロジェクトのアイデアをいくつか考え出す必要があります. 1 人か 2 人で作業することもできますが、私はおそらく 1 人で作業する予定です。

このクラスでは、画像形成、画像特徴、セグメンテーション、形状分析、オブジェクト トラッキング、モーション計算、およびいくつかのアプリケーションなどについて説明しました。プロジェクトで使用する必要はありませんが、便宜上、宿題は Matlab で完了しました。

私はいくつかの可能性を思いつきました.ゴルフクラブとボールのフルスイングの動きを追跡して分析を行うか、固有顔技術を使用してある種の顔認識と照合を行う.

他の人が遊んでもらえるように Web 上に置くことができるアプリケーションを構築することを楽しみにしていますが、何よりも、誰かの役に立ちそうなプロジェクトを完成させたいと思っています (娯楽のためであれ、より有用な目的のためであれ)。

それで...何かアイデアはありますか?ありがとう!

0 投票する
5 に答える
9089 参照

matlab - MATLAB での目検出

私は2つの画像を持っています。画像の 1 つは私の目が中央にあり、もう 1 つは左側にあります。自分の目が左か右かどうやって調べるの?

私はMATLABを使用しています。このための機能はありますか?

0 投票する
6 に答える
3971 参照

math - キャプチャされた座標を画面座標に変換する

これはおそらく簡単な数学の質問だと思いますが、今何が起こっているのかわかりません。

ウェブカメラで「マーカー」の位置をキャプチャしていて、マーカーとその座標のリストがあります。4つのマーカーは作業面の外側の角であり、5番目(緑色)のマーカーはウィジェットです。このような:

代替テキスト

データの例を次に示します。

  • 左上のマーカー(a = 98、b = 86)
  • 右上のマーカー(c = 119、d = 416)
  • 左下のマーカー(e = 583、f = 80)
  • 右下のマーカー(g = 569、h = 409)
  • ウィジェットマーカー(x = 452、y = 318)

ウェブカメラのウィジェットの位置を、画面に表示する座標に変換したいと思います。左上は98,86ではなく0,0であり、ウェブカメラのキャプチャからのゆがんだ角度を考慮に入れています。

どこから始めればいいですか?助けていただければ幸いです

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

matlab - 正規化相互相関の基礎

発生中の胚の形状の移動速度を計算するために、MATLABのnormxcorr2 (正規化された相互相関)を使用しようとしています。3 つの質問があります。

1) 私の画像サイズは 260x360 ピクセルです。テンプレートのサイズを 10x10 ピクセルに指定し、50x50 ピクセルの検索ウィンドウで後続のフレームでこのテンプレートを検索するようにコマンドに依頼します。サイズ 59x59 の相関行列を取得します。したがって、これは、コマンドが検索ウィンドウ内でテンプレートをピクセルごとに移動して、最適な相関関係を探すことを意味します。右?

2) 相関行列の各値は、検索ウィンドウのテンプレート行列を表します。右?

3) 相関行列の 10 行目と 16 列目に最大値があるとします。これは、最も相関の高いテンプレートが、画像の y 方向の 10 番目のマトリックスと x 方向の 16 番目のマトリックスにあることを意味します。右?

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

c# - 顔の検出と比較

私は自分の記事のために、顔の検出と比較に関する小さな調査を行っています。現在、私は OpenCV カスケードに基づく haar のような機能に基づく迅速な顔検出を使用しています (後で学習を実装します)。次のステップは、顔の比較です。よく知られているアルゴリズムはありますか? いくつかの C# コードがあれば、それらを説明したり、それらを実装するいくつかの dll を説明したりするのは素晴らしいことです。

0 投票する
6 に答える
5368 参照

c# - 2D 画像でマーカーを検出する

2D オブジェクトの検出について何らかの助けを得たいと思っています。これが実装されるコンテキストの概要を簡単に説明します。

天井を撮影した画像があります。天井には、カメラの向きを判断できるようにマーカーが配置されます。写真は常に真上を向いて撮影されます。私の目標は、画像内のこれらのマーカーの 1 つを検出し、その回転を決定することです。そのため、回転とスケーリング (程度は低いものの) が、画像検出で使用される 2 つの主要な要素になります。私は C# または matlab のいずれかでソフトウェアを作成します (まだよくわかりません)。

たとえば、マーカーは次のような矢印になります。

参照矢印

天井を撮影した画像には、マーカーが含まれています。ソフトウェアは、単一のマーカーを検出し、それが 170 度回転したことを判断する必要があります。

天井の矢

画像解析の経験はありません。画像処理はかなり幅広いトピックであることを知っており、どの方向に進むべきか、どの手法が私のアプリケーションに最適かについてアドバイスを得たいと思っていました。ありがとう!

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

ruby - 異なる解像度での画像の同等性の検出

元の高解像度の写真を調べて、プロ アカウントを持つ前に Flickr にアップロードした古い低解像度の写真を置き換えるスクリプトを作成しようとしています。

それらの多くでは、日付などの Exif 情報を使用して一致を判断できます。しかし、いくつかは本当に古いもので、元のファイルに Exif 情報がなかったか、当時私が使っていたばかげたサイズ変更ソフトウェアによって上書きされたものです。

そのため、メタデータに頼ることができず、コンテンツ自体に頼らざるを得なくなりました。問題は、オリジナルの解像度が Flickr のものとは異なることです (これがこの取り組みの要点です)。それで、人間の入力を必要とするかどうかのしきい値を設定できるようにする、ある種のあいまいな類似性尺度とそれらを比較する方法はありますか?

1 つの画像が他の画像のサイズ変更されたバージョンであることを知っていると、一般的な類似性よりも優れた結果が得られると思います。どの言語でも解決できますが、Ruby がプラスになります :)

0 投票する
6 に答える
24574 参照

algorithm - Viola-Jonesの顔検出は18万の機能を主張します

私はViola-Jonesの顔検出アルゴリズムの適応を実装してきました。この手法は、画像内に24x24ピクセルのサブフレームを配置し、その後、可能な限りすべてのサイズですべての位置に長方形のフィーチャを配置することに依存しています。

これらの機能は、2つ、3つ、または4つの長方形で構成できます。次の例を示します。

長方形の機能

彼らは、網羅的なセットが180k以上であると主張しています(セクション2):

検出器の基本解像度が24x24であることを考えると、長方形の特徴の網羅的なセットは非常に大きく、180,000を超えます。Haarの基礎とは異なり、長方形の特徴のセットは不完全であることに注意してください。

以下の記述は、この論文では明示的に述べられていないため、私の側の仮定です。

  1. 2つの長方形の機能が2つ、3つの長方形の機能が2つ、4つの長方形の機能が1つだけです。この背後にある論理は、強調表示された長方形の違いを観察していることであり、色や輝度などを明示的に観察しているわけではありません。
  2. フィーチャタイプAを1x1ピクセルブロックとして定義することはできません。少なくとも1x2ピクセルである必要があります。また、タイプDは少なくとも2x2ピクセルである必要があり、このルールは他の機能にも適用されます。
  3. 中央のピクセルは分割できないため、フィーチャタイプAを1x3ピクセルのブロックとして定義することはできません。また、それ自体からそれを差し引くことは1x2ピクセルのブロックと同じです。このフィーチャタイプは、偶数の幅に対してのみ定義されます。また、フィーチャタイプCの幅は3で割り切れる必要があり、このルールは他のフィーチャにも適用されます。
  4. 幅や高さが0のフィーチャを定義することはできません。したがって、xyを24からフィーチャのサイズを引いた値まで繰り返します。

これらの仮定に基づいて、私は徹底的なセットを数えました:

結果は162,336です。

Viola&Jonesが話す「180,000以上」を概算するために私が見つけた唯一の方法は、仮定#4を削除し、コードにバグを導入することです。これには、4行をそれぞれ次のように変更することが含まれます。

その結果、180,625になります。(これにより、機能がサブフレームの右または下、あるいはその両方に接触するのを効果的に防ぐことができます。)

もちろん、質問です。彼らは実装に誤りを犯しましたか?サーフェスがゼロのフィーチャを検討することは意味がありますか?それとも私はそれを間違った方法で見ていますか?

0 投票する
5 に答える
18016 参照

matlab - 領域マスクで表されるポリゴンのコーナーを見つけます

BW = poly2mask(x, y, m, n)ベクトルxおよびyで表されるROIポリゴンからバイナリ関心領域(ROI)マスクBWを計算します。BWのサイズはm-x-nです。

poly2maskポリゴン(X、Y)の内側にあるBWのピクセルを1に設定し、ポリゴンの外側のピクセルを0に設定します。

問題:凸四角形の そのようなバイナリマスクBWを考えると、四隅を決定するための最も効率的な方法は何でしょうか?

例えば、

例

これまでの最善の解決策:境界線を見つけるために 使用edgeし、ハフ変換を使用してエッジ画像内の4本の線を見つけ、次にそれらの4本の線の交点を見つけるか、エッジ画像上でコーナー検出器を使用します。複雑なようで、もっと簡単な解決策があると感じずにはいられません。

ところで、convhull常に4ポイントを返すわけではありません(おそらく誰かがqhullそれを防ぐためのオプションを提案することができます):エッジに沿っていくつかのポイントも返します。

編集: アムロの答えは非常にエレガントで効率的なようです。ただし、ピークは一意ではないため、実際の各コーナーに複数の「コーナー」が存在する可能性があります。θに基づいてそれらをクラスター化し、実際の角の周りの「コーナー」を平均化することもできますが、主な問題はの使用ですorder(1:10)

すべてのコーナーを説明するのに十分です10か、それとも実際のコーナーの「コーナー」を除外しますか?

0 投票する
4 に答える
1477 参照

c# - C#-マルチタッチヘルプ?USBウェブカメラ入力?画像分析?

私はDIYタッチスクリーンを作ろうとしていて、それを地元の科学博覧会に参加させたいと思っていますが、マルチタッチのプログラミングの側面でそれをやりたかったのです。私の問題は、(USBベースのWebカメラからの)画像の分析に取り組んだことがないということです。
可能であればC#でこのプロジェクトを実行したいと思います(C ++-最悪の場合は最悪の場合) (USB Webカメラからの)
黒い画像を分析してから、白いしみが見えてくるのを検出する必要があります。どうすればこれを行うことができますか?---すべてのpxlを分析するのではなく、変更を検出するための既知の方法はありますか?もしそうなら、これがどこにあるかへのポインタがいいでしょう:)
また、USB経由でWebカメラから入力を取得するにはどうすればよいですか?---ライブラリ/ddlはどこで入手できますか?
私はこれで動作するいくつかのプログラムを見ましたが、それらは画像を変換します-これは時間とプロセッサ速度を消費します...生の入力画像/データを使用する方法はありますか?
ヘルプ?