現在、顔認識技術は広く利用されており、決済や本人認証、美容カメラなどに利用されています。 iPhone ユーザーは、次の機能に精通している必要があります。 iPhoneの写真には、写真に写っている顔を認識して分類できる「People」機能があります。その原理も顔認識技術です。 この記事では主にPythonを使って顔検出を実装する方法を紹介します。顔検出は顔認識の基礎です。顔検出の目的は、写真に写っている顔を識別し、顔の特徴を見つけることです。顔認識は、顔検出に基づいて、その人物が誰であるかをさらに知らせることです。 さて、紹介はこれで終わりです。次に、環境の準備を始めましょう。 準備 この記事の顔検出は dlib に基づいていますが、これは Boost と cmake に依存しているため、まずこれらのパッケージをインストールする必要があります。Ubuntu を例に挙げます。
私たちのプログラムは numpy と opencv も使用するため、これらのライブラリもインストールする必要があります。
顔検出は、ここからダウンロードできる事前トレーニング済みのモデルデータに基づいています。
ローカル パスにダウンロードした後、解凍して、プログラムで使用される解凍されたファイルのパスを書き留めます。 dlibの顔の特徴 上記でダウンロードしたモデルデータを使用して、顔の68個の特徴点(x、y)の座標位置を推定します。これらの68個の座標点の位置は次の図に示されています。 手順は次の 2 つのステップで構成されます。 最初のステップは写真の顔の部分を検出することです 2 番目のステップでは、検出された顔領域内の器官 (目、鼻、口、あご、眉毛) をさらに検出します。 顔検出コード まず、いくつかのユーティリティ関数を定義しましょう。
この関数の rect は、dlib 顔領域検出の出力です。ここで、rect はシーケンスに変換され、その内容は矩形領域の境界情報となります。
この関数のシェイプは、dlib 顔特徴検出の出力です。シェイプには、上記の顔特徴の 68 個のポイントが含まれます。この関数は、後続の処理を容易にするために、形状を Numpy 配列に変換します。
この関数内の画像は、検出したい画像です。顔検出プログラムの最初に、確認のために検出結果の画像を表示します。ここでサイズを変更するのは、画像が大きくなりすぎて画面からはみ出ないようにするためです。 次に、メインプログラムを開始しましょう。
顔を検出する画像をsys.argv[1]パラメータから読み取り、顔領域検出用の検出器と顔特徴検出用の予測子を初期化します。 shape_predictor のパラメーターは、先ほど解凍したファイルへのパスです。
特徴領域を検出する前に、まず顔領域を検出する必要があります。このコードは opencv を呼び出して画像を読み込み、適切なサイズに変更し、グレースケールに変換し、最後に detector を使用して顔領域を検出します。写真には複数の顔が含まれている可能性があるため、ここでは複数の顔に関する情報を含む配列 rects を取得します。
検出された顔ごとに、顔の特徴(鼻、目、眉毛など)をさらに検出します。顔の部分は写真上で緑色の枠でマークし、顔の特徴は赤い点でマークします。 ***検出マークの付いた写真を表示し、waitKey(0)は任意のキーを押してプログラムを終了できることを意味します。 これが私たちのプログラムです テスト 次は、結果をテストするエキサイティングな瞬間です。 以下は元の写真です 以下はプログラム認定の結果です 顔の部分が緑色の四角で囲まれ、顔の特徴(鼻、目など)が赤い点でマークされていることがわかります。 簡単じゃないですか? |
<<: 李偉博士がブロックチェーンについてわかりやすく語る:技術原理、実用的応用、AIとの統合
ノアが編集制作:51CTO テクノロジースタック(WeChat ID:blog) 「大規模な言語モデ...
[[244954]]最近、上海世界博覧センターで 2 日間にわたる Google 開発者会議 (Go...
[51CTO.com からのオリジナル記事] 画像学習は高度なアルゴリズムであり、画像への高い適応...
2023年には、生成AIが開発者のアプリケーション構築支援において飛躍的な進歩を遂げ、大手ツールベン...
まず、技術発展の観点から見ると、人工知能技術の発展は避けられません。現在、クラウドコンピューティング...
[[429626]] 2015 年に、画期的なニューラル ネットワーク モデル ResNet がリ...
研究者や開発者は常に GitHub リポジトリで興味深いプロジェクトや実装を検索してきましたが、特定...
2019年、中国の人工知能市場は「熱狂的」だった。IDCの統計によると、世界の人工知能市場規模は20...
現在、JavaScript および TypeScript リポジトリで開発およびテストが行われて...
自動運転車、交通標識検出、顔認識、セルフサービスチェックアウト。 これらすべての高度なソリューション...
ビッグデータダイジェスト制作AIサークルが爆発した! Microsoft が立ち上げた LONGNE...