FindFaces
詳細とオプション
- FindFacesは顔検出としても知られているが,これは検出された顔を返す一般的なコンピュータービジョンの技術である.
- FindFacesは,顔を,それぞれがRectangleオブジェクトとして与えられた境界ボックスのリストとして返す.
- 座標{x,y}は,標準的な画像座標系であると仮定される.
- 特性 prop は,以下のいずれでもよい.
-
"BoundingBox" Rectangleオブジェクトとして返された境界ボックス "BoundingBoxArea" 各顔の画素面積 "Confidence" 検出された顔の強度 "Image" 各顔を含む部分画像 "Position" {x,y}として与えられる各顔の位置 feature FacialFeaturesで使用可能な任意の特徴 {prop1,prop2,…} 特性のリスト - 基準 crit は,以下のいずれでもよい.
-
{min,max} サイズが画素で min から max までの顔 {Scaled[amin],Scaled[amax]} 相対サイズ amin から amax までの顔 f f を満足する顔 - 純関数 f を使うと,年齢や性別といった顔の特徴に#Ageや#Genderでアクセスすることができる.f がTrueを返す場合は顔が返される.
- 顔の特徴の完全リストは,FacialFeatures関数ページを参照のこと.
- 次は,使用可能なオプションである.
-
AcceptanceThreshold Automatic 検出の許容閾値 MaxFeatures All 返す顔の数 MaxOverlapFraction Automatic 許される最大のオーバーラップの割合 Method Automatic 使用するメソッド Padding "Fixed" 画像の境界に使用する充填スキーム PaddingSize 0 検出された各顔の周りの充填量 PerformanceGoal $PerformanceGoal 検出で何を最適化するか SortedBy Automatic 結果のソートに使う関数 TargetDevice "CPU" 使用するターゲットデバイス - PaddingSize->x のとき,検出された各顔は,各側に x 画素充填される.PaddingSize->Scaled[s]を使うと,各顔に境界ボックスとの割合 s の充填が行われる.
- 可能な場合は,顔は image のコンテンツで充填される.境界にはPaddingの設定が使われる.
- デフォルトで,検出された顔はその強度に基づいてソートされる.SortedBy->f で別のソート関数が指定できる.関数 f は,パターン#propを使うことで使用可能な特性にアクセスできる.
- 次は,Methodの可能な設定である.
-
"Haar" Haar特徴に基づいたカスケード型の識別器 "LocalBinaryPatterns" LBP特徴に基づいたカスケード型の識別器 "SingleShotDetector" SSDアーキテクチャに基づいたニューラルネットワーク検出器 {method1,method2,…} methodiすべての結果の総計 - 多チャンネル画像については,"Haar"法と"LocalBinaryPatterns"法はグレースケール強度に対して働く.
- FindFacesは機械学習を使う.含まれるメソッド,訓練集合,バイアスは,Wolfram言語のバージョンによって異なることがあり,与えられる結果も異なる可能性がある.
- FacialFeaturesはリソースをダウンロードすることがある.ダウンロードされたリソースは,$LocalBaseのローカルなオブジェクトストアに保存され,LocalObjects[]でリストしたりResourceRemoveで削除したりできる.
例題
すべて開く すべて閉じる例 (2)
スコープ (9)
データ (2)
FindFaces[[image]]HighlightImage[[image], %]faces = FindFaces[\!\(\*VideoBox[""]\)]HighlightVideo[\!\(\*VideoBox[""]\), faces]特性 (4)
FindFaces[i = [image]]FindFaces[i, "BoundingBox"]FindFaces[[image], "Image"]FindFaces[[image], {"Image", "BoundingBoxArea"}]FacialFeaturesで使用可能な特徴を抽出する:
FindFaces[[image], {"Image", "Emotion", "Gender"}]基準 (3)
i = [image];
FindFaces[i, #Gender === "Female"&, "BoundingBox"]HighlightImage[i, %]テスト結果の中にはテスト全体のショートカットとして使えるものがある:
FindFaces[[image], "Female", "Image"]i = [image];
HighlightImage[i, {"Boundary", Green, FindFaces[#]&}]b = FindFaces[i, {0, 35}, "BoundingBox"]HighlightImage[i, {"Boundary", Green, b}]b = FindFaces[i, {38, ∞}, "BoundingBox"]HighlightImage[i, {Green, b}]Scaledを使って画像の大きさと相対的な顔のサイズを指定する:
b = FindFaces[i, {Scaled[1 / 7], Scaled[1]}, "BoundingBox"]HighlightImage[i, {"Boundary", Green, b}]オプション (10)
AcceptanceThreshold (1)
i = [image];
FindFaces[i, "Image"]AcceptanceThresholdt を使うと t より高い強度で検出されたものだけが返される:
FindFaces[i, "Image", AcceptanceThreshold -> .95]AcceptanceThreshold0を使って検出されたすべての顔を返す:
FindFaces[i, "Image", AcceptanceThreshold -> 0]MaxFeatures (1)
i = [image];
FindFaces[i]//LengthMaxFeaturesn を使って,検出されたもののうち強度が最高のものから n 個までを返すようにする:
FindFaces[i, MaxFeatures -> 5]MaxOverlapFraction (1)
Method (2)
FindFacesは,検出方法を自動的に選ぶ:
i = [image];
FindFaces[i]FindFaces[i, Method -> "LocalBinaryPatterns"]FindFaces[i, Method -> {"LocalBinaryPatterns", "Haar", "SingleShotDetector"}]"LocalBinaryPatterns"法は,勾配のヒストグラム(HoG)の特徴に作用するカスケード分類器である.これは非常に高速で軽量のマルチスケールメソッドである:
i = [image];FindFaces[i, "Image", Method -> "LocalBinaryPatterns"]//AbsoluteTiming"Haar"法は,Haar特徴に作用するカスケード分類器である.これは"LocalBinaryPatterns"より強力だが,一般により時間がかかる:
FindFaces[i, "Image", Method -> "Haar"]//AbsoluteTiming"SingleShotDetector"法は単一のニューラルネットの評価に基づくもので,姿勢,照明,オクルージョン,被写体の変化について非常に安定しているが,他の2つのメソッドよりも遅い:
FindFaces[i, "Image", Method -> "SingleShotDetector"]//AbsoluteTimingPadding (1)
PaddingSize (2)
FindFacesは,デフォルトで,各顔の周りをかなり狭めて切り取ったものを返す:
i = [image];FindFaces[i, "Image"]FindFaces[i, "Image", PaddingSize -> 20]FindFaces[i, "Image", PaddingSize -> -5]FindFaces[i, "Image", PaddingSize -> Scaled[0.2]]i = [image];HighlightImage[i, {EdgeForm[AbsoluteThickness[1.5]], FaceForm[], Yellow, Legended[FindFaces, "original"], Red, Legended[FindFaces[#, PaddingSize -> 5]&, "padded"], Green, Legended[FindFaces[#, PaddingSize -> -5]&, "cropped"]}]PerformanceGoal (1)
PerformanceGoal"Quality"を使って結果の品質を重視する:
i = [image];FindFaces[i, "Image", PerformanceGoal -> "Quality"]//AbsoluteTimingPerformanceGoal"Speed"を使って計算速度を重視する:
FindFaces[i, "Image", PerformanceGoal -> "Speed"]//AbsoluteTimingアプリケーション (3)
i = [image];HighlightImage[i, FindFaces[#, "BoundingBox"]&]HighlightImage[i, {{"Blur", 10}, FindFaces[#, "BoundingBox"]&}]Dynamic[HighlightImage[CurrentImage[], FindFaces]]v = Import["http://exampledata.wolfram.com/office.ts"];VideoFrameList[v, 3]ts = VideoMapTimeSeries[Length[FindFaces[#Image]]&, v];ListLinePlot[ts]特性と関係 (2)
Table[HighlightImage[
ImageRotate[[image], r, Full], FindFaces],
{r, -(3 π/4) , (π/2), (π/4)}]list = Through[{Identity, Darker, Lighter}[[image]]];HighlightImage[#, FindFaces]& /@ list考えられる問題 (3)
i = [image];
b = FindFaces[i];
HighlightImage[i, {"Boundary", b}]r = ImageRotate[i, Top -> Bottom];
b = FindFaces[r];
HighlightImage[r, {"Boundary", b}]HighlightImage[[image], FindFaces]非常に小さい顔あるいは解像度が低い顔は検出されないかもしれない:
i = [image];HighlightImage[i, FindFaces, ImageSize -> 300]HighlightImage[ImageResize[i, Scaled[16]], FindFaces, ImageSize -> 300]関連するガイド
-
▪
- コンピュータビジョン ▪
- 特徴検出 ▪
- 動画解析 ▪
- 画像の処理と解析 ▪
- 機械学習 ▪
- 動画計算機能の更新履歴 ▪
- 計算写真学 ▪
- 動画処理 ▪
- 信号の可視化と解析
テキスト
Wolfram Research (2012), FindFaces, Wolfram言語関数, https://reference.wolfram.com/language/ref/FindFaces.html (2025年に更新).
CMS
Wolfram Language. 2012. "FindFaces." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/FindFaces.html.
APA
Wolfram Language. (2012). FindFaces. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FindFaces.html
BibTeX
@misc{reference.wolfram_2026_findfaces, author="Wolfram Research", title="{FindFaces}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/FindFaces.html}", note=[Accessed: 15-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_findfaces, organization={Wolfram Research}, title={FindFaces}, year={2025}, url={https://reference.wolfram.com/language/ref/FindFaces.html}, note=[Accessed: 15-October-2026]}