問題タブ [eye-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 投票する
1 に答える
1655 参照

c - OpenCVアイトラッキングが一部のフレームで緩む

両方の目を追跡し、両方の目を追跡するときに画像をオーバーレイするために、以下のコードを貼り付けています。
私はhaarxmlファイルを使用して顔の両目を追跡し、その上に画像をオーバーレイしています。
私の問題は、このような結果が得られることです。

Img 1

Img 2

Img 3

Img 4

Img 5

Img 6

Img 7

Img 8

Img 9

Img 10

以下にコードを投稿しています

たくさんの画像を投稿して申し訳ありませんが、私の問題を説明する他の方法はありません。

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

android - 眼鏡で目を見つけるOpenCv

この問題が発生しました。Android用のopenCvライブラリを使用して眼鏡をかけた目を見つけようとすると、コードが機能しません。
私のコードは次のとおりです。

このようにして、分類子を取得し、このコードを使用して、眼鏡をかけた目を見つけようとします。

眼鏡を置いたままにすると、結果は常に0になり、結果は常に2になります。
誰かが私を助けてくれますか?
前もって感謝します。

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

python - どの目の検出結果が最適かを知るにはどうすればよいですか

HaarDetectObject()関数を使用して目を検出すると、次のような結果(detectedObjects)が得られます。

等々

私が知っていることは:

(110、47、44、44)、11)、これはx、y、w、h 、?

x、yは、「目」で検出された「目」の左上隅の座標であり、w、hは、検出された目の領域を決定するための幅と高さであるため、cvRect形式になります。

ご覧のとおり、最後の検出には4つの目があります。したがって、完全に検出された目が2つあることをどのようにして知ることができますか?つまり、任意のiの目[i] [0] [0]を見ると、目が右か左かを知ることができます。ただし、ここでは、左目と右目が2つあり、eyes[0]とeyes[3]が左目、eyes[1]とeyes[2]が右目です。

そしてこれが私の質問です。右目と左目の両方で検出された2つの結果のうち1つだけを取得する必要がある場合、どうすればよいですか?

以前、eye[i][1]はある種のスコアとして使用できると思いました。しばらくインターネットにアクセスできなかったので、そう思いました。しかし、私がちょうど発見したように、それはいくつかの品質スコアではありません。

したがって、この場合、eyes [0] [1]は13、eyes [1] [1]は4、eyes [2] [1]は4、eyes[3][1]は6です。これをQと呼びましょう。

残りの検出では、他の検出のQが高く、通常は約40〜60であるというパターンが見られたため、その範囲内のQが最良の検出を示していると思いましたが、前に述べたように、そうではありません。

では、「eyes」のどの「eye」が最良の検出であるかをどのように判断するのですか?

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

eye-detection - 目検出ソフトウェア

精度の高い目検出ソフトウェアが必要です。ソフトウェアは、静止画像の目の座標を検出できる必要があります。誰かが私に同じことに関して良い提案をしてもらえますか?

前もって感謝します :)

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

python - 安定した目尻検出を実行するには?

長すぎると思う人は、太字の行だけ読んでください。

視線推定ベースの画面カーソル移動 HCI の私のプロジェクトは、最後の 1 つに依存するようになりました。視線推定では、瞳孔の動きを検出して視線を計算するための参照安定点として目の角を使用しています。

しかし、ライブ Web カメラ フィードから目尻を安定して検出することはできませんでした。私は cv.CornerHarris() と GFTT - cv.GoodFeaturesToTrack() 関数をコーナー検出に使用しています。FAST デモ (彼らの Web サイトからの実行可能ファイル) を目の画像で直接試しましたが、うまくいきませんでした。

これらは、これまでの画像のコーナー検出の結果です。

GFTT の使用:

良い照明、GFTT を使用

ハリスの使用:

cv.CornerHarris の使用

ビデオで何が起こるか:

GFTT を使用したビデオのコーナー 緑色の円は角で、その他 (ピンク色の小さい円) はその他の角です。

私は特定のヒューリスティックを使用しました - 垂直に考えた場合、コーナーは左端または右端にあり、真ん中あたりになるということです。画像の 5% 未満を除いて、多くの条件で多くのスナップショットを撮った後、残りはこのようなものであり、それらについては上記のヒューリスティックが保持されるため、私はこれを行いました。

ただし、これらの目の角の検出はスナップショット用であり、Web カメラ フィードからのものではありません。

ウェブカメラ フィードに手法 (ハリスと GFTT) を使用すると、それらが得られません。

cv.CornerHarris を使用した目尻検出のコード

GFTTを使った目尻

現在、両方の方法で使用するパラメーター-異なる照明条件の結果は表示されず、明らかに. しかし、これらのスナップショットが撮影されたのと同じ照明条件では、ウェブカメラ ビデオからクエリしたフレームの結果がまだ得られていません。

GFTT からのこれらのパラメーターは、平均的な照明条件に適しています

これらに対して:

上に表示された静止画像ではうまくいきました

minDistance = 30 であることは明らかです。なぜなら、コーナーには少なくともそれだけの距離があるからです。これもまた、スナップから見た傾向のようなものです。しかし、GFTT のウェブカメラ フィード バージョンでは値を下げました。

また、GFTT のライブ フィード バージョンについては、私が対応しなければならなかった小さな変更があります。

一方、静止画像バージョン(ペーストビンのコード)では、次を使用しました:

深さに注意。

それは検出の質を変えるでしょうか??

GFTT メソッドに合格していた目の画像は 32F の深さを持っていなかったので、それを変更し、残りの一時的な画像 (eignenimg、tempimg など) に従って変更する必要がありました。

結論: 視線推定を終了する必要がありますが、安定した目尻検出がなければ先に進むことができません..そして、まばたき検出とテンプレート マッチング ベースの瞳孔追跡に取り掛かる必要があります (または、もっとよく知っていますか?)。簡単に言えば、ここに投稿したスナップで取得したウェブカメラ ビデオ ストリームで、初歩的なミスを犯したり、完璧に近い目尻検出を妨げていることをしていないかどうかを知りたいのです。

とにかく、これを見てくれてありがとう。さまざまな照明条件で目の角の検出をどのように実行できるかについてのアイデアは非常に役立ちます

さて、コードで私がやっていること (左右のコーナーを取得する方法) が理解できなかった場合は、次のように説明します。

maxLP と maxRP は、それぞれ目の左隅と右隅の (x,y) を格納します。私がここでやっていることは、検出されたコーナーの x 値と比較される左右のコーナー検出、それぞれ maxL と maxR の変数を取得することです。簡単に言うと、maxL の場合は 0 より大きい必要があります。左隅が x<20 の (x,y) にある場合、maxL は = x になるため、20 を割り当てました。右端も同様。

私も maxL = 50 を試しました (ただし、これは、左隅が目の領域のほぼ中央にあることを意味します)、ウェブカメラ フィードのより多くの候補を取得するためです。コーナーがまったく得られません。

また、max_dist は、これまでに確認された X 座標間の最大距離を格納し、どのコーナーのペアが左右の目のコーナーになるかの尺度を提供します - 最大距離 = max_dist を持つもの

また、スナップショットから、目の角の Y 座標が 40 ~ 70 の間にあることがわかったので、それを使用して候補プールを最小化しました

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

android - Android - カメラのプレビュー中に顔検出がなくても目の検出

カメラのプレビューがまだそのコンテンツを表示している間に、特定の長方形(および目のサイズ)で目を検出するためのライブラリはありますか(ノンストップ)?

これを達成する簡単な方法を見つける必要があります。顔検出用の API があり、Android 4 では eye detection も追加されていることがわかりましたが、顔が見つかった場合にのみ、顔がなくても目を見つける必要があります。

0 投票する
0 に答える
1103 参照

iphone - iPhone の OpenCV 目検出器のパラメーター

iPhoneを使用して3Dグラスを顔にマッピングしようとしています。私は次のOpenCVの目の検出を使用しています。ただし、目の検出はあまり堅牢ではありません。顔を少し回したり、目が少し細くなったときにカメラを見下ろしたりすると、目の検出が機能しません。正面の顔でも半分のフレームしか検出しません。特定のパラメーターを微調整すると、画像の前処理に役立つという多くの場所を読みました。しかし、私は正しい組み合わせを得ることができません。以下は、私が使用している前処理とパラメーターです。誰かがより良いパラメーターを提案/共有できる場合は、助けてください。ありがとう

pixelBuffer-imageからグレースケール画像を取得しています。次にprocessFrame呼び出されます:

分類子の初期化:

processFrame: 検出を行う

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

android - Android opencv 目の検出

顔を検出するためにアンドロイド「opencv samples - 顔検出」を使用しています。それはうまくいっています。ここで、 「顔検出」に「目検出」を含めたいと思います。出来ますか?はいの場合、誰かが目を検出するためのサンプルをいくつか教えてくれますか。インターネットで検索しました。しかし、私はサンプルを取得しませんでした。

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

android - Androidの顔検出アルゴリズムで目が開いているか閉じているかを調べる方法

検出された顔で目が開いているか閉じているかを検出しようとしています。目の検出に次のコードを使用しています。このコードが行うことは、本質的に目の間の距離を検出することです。次に、顔の中点を計算し、そこから目の中心を検出し、目の周りに円を描きます。それが目検出部分です。

しかし、私がやりたいのは、目が閉じているか閉じているかを見つけることです。これを行う方法は、まず、目がどのように検出されるか/目の間の距離がどのように低レベルで検出されるかを調べ、その低レベルコードを使用して目が閉じているか閉じているかを判断することです-つまり、使用したいこのコードの目を検出して、それがどのように行われるかを正確に調べ、開いているか閉じているかを調べる能力。誰か助けてくれませんか?私はopencvを使いたくありません。以下に示すコードの単純さを使用したいだけです。

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

javascript - JavaScript と html5 を使用した瞳検出

JavaScriptとHTML5を使用して2D画像で目の検出を実行するためのアイデア、手順、またはアルゴリズムを誰かが持っていますか?

RGBからYCbCr色空間への変換はすでに完了しています

今、目の抽出について助けが必要です

これは、rgb を YCbCr 色空間に変換するための私のコードです。

より高速な実行のためにコードを改善するのも手伝ってください。