この記事では、セレンギルの DeepFace ライブラリを使用して顔画像から感情、年齢、性別を分析する方法について説明します。この記事には、(1) 使用するライブラリの説明、(2) ライブラリの使用方法、(3) コードの説明、(4) 分析結果の 4 つの主要なセクションが含まれます。
1. DeepFace ライブラリについてのディスカッション
DeepFace は、顔分析機能を提供する Python ベースのオープンソース ライブラリです。このライブラリは Serengil によって開発され、多くの顔認識および顔属性分析アプリケーションにとって強力なツールとなっています。 DeepFace は顔を検出して認識するだけでなく、感情、年齢、性別などの属性を高精度に分析することができます。
DeepFace は、顔画像の大規模なデータセットでトレーニングされた機械学習モデルを使用します。このモデルは、ディープラーニングを利用して顔の特徴を抽出し、属性分類を正確に実行します。 DeepFace で使用される深層学習モデルには、VGG-Face、Google FaceNet、OpenFace などが含まれます。これらのモデルを選択して組み合わせる機能により、さまざまなアプリケーション シナリオで柔軟性と信頼性が提供されます。
2.図書館の利用方法
DeepFace を使用するには、最初にいくつかの依存関係をインストールする必要があります。詳細な手順は次のとおりです:
- システムに Python と pip がインストールされていることを確認してください。ターミナルで次のコマンドを実行して、インストールを確認できます。
python --version pip --version
- 次のコマンドを使用して DeepFace ライブラリをインストールします。
pip install deepface
- DeepFace とは別に、画像処理用の OpenCV や配列操作用の NumPy などの他のライブラリも必要です。次のコマンドを使用してライブラリをインストールします。
pip install opencv-python numpy
すべての依存関係がインストールされたら、顔を分析するコードの作成を開始する準備が整います。
3.コードの説明
顔画像から感情、年齢、性別を分析するコードは次のとおりです。このコードは、後で詳しく説明するいくつかの主要な関数で構成されています。
python import json import numpy as np from deepface import DeepFace import cv2 # Fungsi untuk menampilkan gambar def show_image(img_path): img = cv2.imread(img_path) cv2.imshow("Image", img) cv2.waitKey(0) cv2.destroyAllWindows() # Fungsi untuk konversi data agar bisa di-serialisasi def convert_to_serializable(obj): if isinstance(obj, np.float32): return float(obj) raise TypeError(f"Object of type {type(obj)} is not JSON serializable") # Fungsi untuk analisis wajah def analyze_face(img_path): result = DeepFace.analyze(img_path) print("Hasil Analisis:", result) return result # Fungsi utama def main(): # Path gambar img_path = "images/happy.jpg" # Analisis wajah analysis_result = analyze_face(img_path) # Simpan hasil analisis ke file JSON with open('result_analysis.json', 'w') as json_file: json.dump(analysis_result, json_file, default=convert_to_serializable) if __name__ == "__main__": main()
コードの説明
show_image(img_path): この関数は、OpenCV を使用して画像を表示するために使用されます。画像は別のウィンドウに表示され、ユーザーからの入力を待ってからウィンドウを閉じます。
convert_to_serializable(obj): この関数は、JSON 形式にシリアル化できるように、float32 numpy オブジェクトを float に変換します。 numpy データ型は JSON と直接互換性がないため、これが必要です。
analyze_face(img_path): 顔を分析するためのメイン関数。この関数は、DeepFace を使用して、指定された顔画像を分析し、分析結果を返します。
main(): この関数は、スクリプトのメインのエントリ ポイントです。この関数は、画像のパスを決定し、顔分析関数を呼び出し、分析結果を JSON ファイルに保存します。
img_path: 分析したい画像、分析に使用した画像の例が含まれています
4.分析結果
画像を使用して上記のコードを実行すると、顔分析結果が result_analysis.json ファイルに保存されます。これらの結果には、分析された顔の感情、年齢、性別に関する情報が含まれます。結果の例は次のとおりです:
python --version pip --version
この情報により、DeepFace を使用して分析された顔の属性についてさらに理解することができます。このライブラリは、セキュリティ、マーケティング、研究などのさまざまなアプリケーションで非常に役立ちます。たとえば、マーケティング分野では、感情分析は、広告や製品に対する消費者の反応を理解するのに役立ちます。
さらに、年齢と性別を検出する機能は、ユーザーのプロフィールに合ったおすすめを提供するなど、サービスのパーソナライズに使用できます。この記事では、DeepFace ライブラリが顔分析目的でいかに強力で柔軟であるかを示します。
以上がPython の Serengil/DeepFace ライブラリを使用した感情、年齢、性別の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

slicingapythonlistisdoneusingtheyntaxlist [start:stop:step] .hore'showitworks:1)startisthe indexofthefirstelementtoinclude.2)spotisthe indexofthefirmenttoeexclude.3)staptistheincrementbetbetinelements

numpyallows forvariousoperationsonarrays:1)basicarithmeticlikeaddition、減算、乗算、および分割; 2)AdvancedperationssuchasmatrixMultiplication;

Arraysinpython、特にnumpyandpandas、aresentialfordataanalysis、offeringspeedandeficiency.1)numpyarraysenable numpyarraysenable handling forlaredatasents andcomplexoperationslikemoverages.2)Pandasextendsnumpy'scapabivitieswithdataframesfortruc

listsandnumpyarraysinpythonhavedifferentmemoryfootprints:listsaremoreflexiblellessmemory-efficient、whileenumpyarraysaraysareoptimizedfornumericaldata.1)listsstorereferencesto objects、with whowedaround64byteson64-bitedatigu

toensurepythonscriptsbehaveCorrectlyAcrossDevelosment、staging、and Production、usetheseStrategies:1)環境variablesforsimplestetings、2)configurationfilesforcomplexsetups、and3)dynamicloadingforadaptability.eachtododododododofersuniquebentandrequiresca

Pythonリストスライスの基本的な構文はリストです[start:stop:step]。 1.STARTは最初の要素インデックス、2。ストップは除外された最初の要素インデックスであり、3.ステップは要素間のステップサイズを決定します。スライスは、データを抽出するためだけでなく、リストを変更および反転させるためにも使用されます。

ListSoutPerformArraysIn:1)ダイナミシジョンアンドフレーケンティオン/削除、2)ストーリングヘテロゼンダタ、および3)メモリ効率の装飾、ButmayhaveslightPerformancostsinceNASOPERATIONS。

toconvertapythonarraytoalist、usetheList()constructororageneratorexpression.1)importhearraymoduleandcreateanarray.2)useList(arr)または[xforxinarr] toconvertoalistは、largedatatessを変えることを伴うものです。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1
使いやすく無料のコードエディター

ホットトピック









