1

私の現在のプロジェクトでは、顔検出/追跡と画像処理を学ぶ必要がありました。c#での経験から、Emgu CV顔検出と追跡のライブラリとして選択しました。これまでに学んだことから、顔の検出と追跡、および基本的な画像処理を行うことができます。

私の目標は、検出された顔に仮想の髪を配置できるようにすることです。私が達成したいことは[このビデオ]に似ています:http ://www.youtube.com/watch?v=BdPmECfUFcI 。

私が知りたいのは、検出された顔のさまざまな種類のヘアスタイルのヘア配置を処理する際に使用する手法です。髪をどの画像形式で保存しますか?

4

1 に答える 1

1

ビデオを見た後、頭が長方形のプリズム(3Dオブジェクト)ではなく平らな長方形と見なされていることに気付きました。そのため、遠近法による変換の使用は考慮されておらず、私も考慮しません。これは制限ですが、そのような配置を行うための適切な最初のステップとして機能します。単に視点を考慮するだけではなく、顔追跡アルゴリズムがより複雑な構成を処理できる必要があることに注意してください(たとえば、目が完全に見えない場合があります)。

したがって、最初に必要なのは、次の右の図に示すように、目がx軸となす角度に従って整列された外接長方形です(赤いセグメントは目の間の接続を示します)。左の図は、軸に位置合わせされた一般的なバウンディングボックスを示していますが、この問題には対応していません。

ここに画像の説明を入力してください

頭が対称であると考えると、問題も単純化されます。したがって、上の図の上部の中間点は、頭の上部の中央であることがわかります。また、一般的な頭は下よりも上が大きくなる可能性があることを考えると、次の図のように、長方形の幅が額の幅に近いものになります。たとえば、頭の上半分だけにある外接する長方形を検討することもできます。

ここに画像の説明を入力してください

残っているのは、この長方形にオブジェクトを配置することだけです。そのためには、配置するこのオブジェクトの説明を拡張して、純粋にピクセルではないようにする必要があります。「入口幅」(EW)と「入口中間点」(EM)を定義できます。このEWは、他の長方形(頭の長方形)に配置するために必要な幅を確立します。したがって、EWが必要な値よりも小さい場合は、EWが大きい場合にそれぞれ、このオブジェクトをアップスケールします。頭の長方形の全幅は通常、このオブジェクトを配置するために過大​​評価されているため、幅のパーセンテージを試すことができます。EM値は、このオブジェクトを頭の上に配置する方法を知るのに役立ちます。次の図では、EWは水平の青い破線の水平であり、EMはその中間点です。

ここに画像の説明を入力してください

このオブジェクトに必要な他の唯一の特別なことは、背景と見なされる値です。したがって、このオブジェクトをペイントするとき、ポイントを完全に透明にするか(背景値)、完全に不透明にするか(その他)を簡単に知ることができます。これは私が基本的に何をする必要があるかを考えていたスケッチでした。

于 2012-12-16T14:20:59.097 に答える