FaceAlign
詳細とオプション
- 顔の位置合せは,複数の顔の特定の顔器官の位置を合わせるために顔を変換する過程で,顔のモーフィング,比較,識別等によく使われる.
- FaceAlignはFindFacesを使って image 中の顔を求める.
- 基準となる顔 fref は以下のいずれでもよい.
-
Automatic 自動的に顔の位置を合わせる face face の特徴点を使う {feat1,feat2,…} 特徴 featiにデフォルトの位置を使う <|feat1point1,…|> 特徴 featiに明示的な位置を使う - fref がAutomaticのとき,顔器官は定義済みの位置集合に合わせられる.
- 次は,pointiの可能な値である.
-
Automatic デフォルトの基準点を使う {x,y} 明示的な座標 Scaled[{x,y}] スケールされた座標 - 次は featiの可能な設定である.
-
"LeftEyeCenter" 左目の中心 "RightEyeCenter" 右目の中心 "EyeCenter" 両目の中心の点 "NoseCenter" 鼻の中心の点 "MouthCenter" 口の中心の点 "MouthLeft" 口の左の点 "MouthRight" 口の右の点 - size は次のいずれでもよい.
-
Automatic 自動選択 Full もとの顔のサイズを使う s サイズ s の縦と横 {w,h} 明示的な縦と横 f 縦横比の中央値を与える高さを使って幅のリストに適用する関数 f - デフォルトでは,縦横比が中央値になるように,すべての顔の幅と長さが中央値にリサイズされる.
- 次は,使用可能なオプションである.
-
PaddingSize None 顔の周りに残す充填量 Method Automatic 使用するメソッド Padding "Fixed" 使用する充填スキーム PerformanceGoal "Speed" 最適化しようとするパフォーマンスの局面 Resampling Automatic リサンプリングメソッド TransformationClass "Affine" 画像と基準の関係 - PaddingSizeを使って,全体的な size を一定に保ちながら顔の境界ボックスの周りに充填を加えることができる.次は,使用可能な設定である.
-
d 指定した境界ボックスの周りに d 画素加える Scaled[s] 境界ボックスサイズに複数の s を加える {specx,specy} 水平方向と垂直方向に別々の指定を使う - デフォルトで,顔は自動的に検出される.Method{"FaceBoxes"boxes}を使うと顔の周りの境界ボックスが指定できる.
- boxes には以下の任意の値を使うことができる.
-
Automatic FindFacesを使って顔のボックスを求める(デフォルト) Full 画像全体が1つの顔であると仮定する {bbox1,…} 顔の境界ボックスのリスト - 次は,TransformationClassのサポートされる値である.
-
"Translation" 平行移動のみ "Rigid" 平行移動と回転 "Similarity" 平行移動,回転,スケーリング "Affine" 線形変換と平行移動(デフォルト) - FaceAlignは機械学習を使う.含まれるメソッド,訓練集合,バイアスは,Wolfram言語のバージョンによって異なることがあり,与えられる結果も異なる可能性がある.
- FaceAlignはリソースをダウンロードすることがある.ダウンロードされたリソースは,$LocalBaseのローカルなオブジェクトストアに保存され,LocalObjects[]でリストしたりResourceRemoveで削除したりできる.
例題
すべて開く すべて閉じる例 (2)
スコープ (6)
FaceAlign[[image]]FaceAlign[[image], {"LeftEyeCenter", "RightEyeCenter", "NoseCenter"}]FaceAlign[[image], <|"RightEyeCenter" -> Scaled[{1 / 3, 1 / 2}], "LeftEyeCenter" -> Scaled[{2 / 3, 1 / 2}], "MouthCenter" -> Automatic|>]FaceAlign[[image], [image]]FaceAlign[i = [image], Automatic, 80]FaceAlign[i, Automatic, {80, 80}]検出された顔の最小の幅を使って整列した顔のサイズを指定する:
FaceAlign[i, Automatic, Min]FaceAlign[{[image], [image]}, Automatic, {40, 50}]オプション (6)
Method (2)
i = [image];FaceAlign[i]"Method"{"FaceBoxes"boxes}を使ってカスタムの境界ボックスを指定する:
FaceAlign[i, Method -> {"FaceBoxes" -> {Rectangle[{178, 204}, {220, 264}], Rectangle[{300, 168}, {342, 214}], Rectangle[{350, 218}, {396, 272}]}}]"Method"{"FaceBoxes"Full}を使って画像全体が顔であると仮定する:
FaceAlign[[image], Method -> {"FaceBoxes" -> Full}]Padding (1)
PaddingSize (1)
デフォルトで,顔の切り取りには検出された境界ボックスが使われる:
i = [image];FaceAlign[i]PaddingSizen を使って変換された画像の各辺を n 画素で充填する:
FaceAlign[i, PaddingSize -> 10]PaddingSizeScaled[s]を使って画像サイズとの割合 s で充填する:
FaceAlign[i, PaddingSize -> Scaled[0.3]]FaceAlign[i, PaddingSize -> -10]充填は,顔の大きさを希望の出力サイズにリサイズする前に適用される:
ImageDimensions /@ FaceAlign[i, Automatic, {80, 100}]ImageDimensions /@ FaceAlign[i, Automatic, {80, 100}, PaddingSize -> Scaled[0.2]]PerfomanceGoal (1)
デフォルトで,FaceAlignは結果をできるだけ速く返す:
i = [image];FaceAlign[i, PerformanceGoal -> "Speed"]//AbsoluteTimingPerformanceGoal"Quality"を使ってよりゆっくりより正確に位置合せをする:
FaceAlign[i, PerformanceGoal -> "Quality"]//AbsoluteTimingTransformationClass (1)
TransformationClassを使って位置合せをどのように行うかを指定する:
i = [image];HighlightImage[i, FindFaces]classes = {"Translation", "Rigid", "Similarity", "Affine"};t = FaceAlign[i, Automatic, {50, 70}, TransformationClass -> #]& /@ classes;
TableForm[t, Rule[...]]特性と関係 (1)
FaceAlignは,顔を検出し顔器官を使って並べるために特化されている:
FaceAlign[[image], [image]]ImageAlignを使い,対応する点あるいはその他の登録手法を使って一般的な画像を並べる:
ImageAlign[[image], [image]]インタラクティブな例題 (1)
Manipulate[Image[FaceAlign[[image], <|"RightEyeCenter" -> x1, "LeftEyeCenter" -> x2, "MouthCenter" -> x3|>, {100, 120}, TransformationClass -> class, PerformanceGoal -> "Quality"], ImageSize -> 200],
{class, {"Affine", "Similarity", "Rigid"}},
{{x1, {28, 76}}, Locator},
{{x2, {70, 76}}, Locator},
{{x3, {48, 30}}, Locator},
SaveDefinitions -> True]関連するガイド
テキスト
Wolfram Research (2020), FaceAlign, Wolfram言語関数, https://reference.wolfram.com/language/ref/FaceAlign.html (2020年に更新).
CMS
Wolfram Language. 2020. "FaceAlign." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/FaceAlign.html.
APA
Wolfram Language. (2020). FaceAlign. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FaceAlign.html
BibTeX
@misc{reference.wolfram_2026_facealign, author="Wolfram Research", title="{FaceAlign}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/FaceAlign.html}", note=[Accessed: 15-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_facealign, organization={Wolfram Research}, title={FaceAlign}, year={2020}, url={https://reference.wolfram.com/language/ref/FaceAlign.html}, note=[Accessed: 15-October-2026]}