このプロジェクトについて
InsightFaceは、Jia Guo氏とJiankang Deng氏が保守する、2Dおよび3Dの顔分析のための包括的なオープンソースプロジェクトです。顔認識、顔検出、顔位置合わせ、顔交換、3D顔再構築のための最先端アルゴリズムの豊富なセットを提供し、トレーニングとデプロイの両方に最適化されています。
このプロジェクトは主にPyTorchとMXNet上に構築されており、Python 3.xとPyTorch 1.6+および/またはMXNet 1.6-1.8をサポートしています。
主要モジュールは以下の通りです:
1. 顔認識:ArcFace(CVPR 2019)、SubCenter ArcFace(ECCV 2020)、PartialFC(CVPR 2022)、VPL(CVPR 2021)などを実装。IResNet、MobileFaceNet、MobileNet、InceptionResNet_v2、DenseNetを含む複数のバックボーンをサポート。トレーニングデータ(クリーニング済みMS1M、VGG2、CASIA-Webface)、評価パイプライン(IJB、MegaFace)、事前学習済みモデルを含む。
2. 顔検出:RetinaFace(CVPR 2020)とSCRFD(Arxiv 2021)を実装し、トレーニングコード、データセット、事前学習済みモデル、評価スクリプトを提供。
3. 顔位置合わせ:ヒートマップベースの位置合わせのためのSDUNets(BMVC 2018)と、軽量な座標回帰のためのSimpleRegressionを実装。
4. 3D顔再構築:単眼3D顔再構築、顔反射率再構築(CVPR 2024)、視線推定のための方法を含む。
5. 顔交換:顔アイデンティティ交換のためのinswapperモデルを提供。
6. 生体検知:通常/観察モード、顔ごとのスコア、入力拒否理由を備えたオプションのRGB生体検知アドオン。
InsightFace 2.0では、ローカルビデオの顔ぼかしとモザイク処理のためのPrivateFrame、参照写真の選択、デスクトップ、CLI、Pythonワークフローによる編集可能な分析JSONを導入し、デフォルトのFastモードは15分析FPSを目標としています。
このプロジェクトはまた以下を提供します:
- 入力画像に対する検出、認識、位置合わせを容易にするPythonパッケージ。自動CoreML/CUDA/CPUプロバイダー選択と再利用可能なCoreMLコンパイルキャッシュを備える。
- InsightFace Server:スネークケースのREST APIとPythonクライアントを備えたセルフホスト型Web UIで、検出、オプションの生体チェック、比較、登録、人物検索を提供。単一のLinux x86_64 CPUまたはNVIDIA GPUコンテナ上で、ローカルのONNX Runtime推論とSQLiteを使用して実行され、オペレーター提供のマニフェスト検証済みモデルを使用。精度を維持するINT8埋め込み量子化と、1台のRTX 5090 GPUでの5000万以上の画像検索を提供。
- InspireFace:クロスプラットフォームのC/C++顔認識SDK。
- 顔認識、エンタープライズ評価、レポート、顔交換トライアルのためのクロスプラットフォームのデスクトップGUIデモ。
コードはMITライセンスの下でリリースされており、学術および商用利用に制限はありません。トレーニングデータとモデルは、非商用の研究目的のみで利用可能です。
このプロジェクトは、NIST-FRVT 1:1 VISAトラックで第1位、ECCV-2022 WCPAワークショップの透視投影ベース単眼3D顔再構築チャレンジで第1位を獲得するなど、注目すべき成果を達成しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.