写真から「属するサブカルチャー」を識別できるアルゴリズム « WIRED.jp
少し前になりますが、Wiredで興味深い記事がありました。BMVC2013(British Machine Vision Conference)で発表されたようで、論文へのリンクがあったので内容を読んでみました。論文名は「From Bikers to Surfers: Visual Recognition of Urban Tribes」です。
texが綺麗に書けないので読みにくくなった...
基本アイデア
Urban Tribesとは、同じ属性を持つ個人の集まり(グループ)のことを言います。
同じ属性というのは例えば、サーファーであればサーフボードを持っているし、バイカーであればレザージャケットを着ていることが多い。
また、サーファーの場合は海が背景に写っていることが多いし、バイカーであればバイクが近くに置いてあることが多いといった類似性に関することなどです。
この論文では、個人を識別するのではなく、グループの特徴を求めてUrban Tribeを識別するモデルを構築するアプローチを取っています。
アルゴリズムの詳細
結局、グループを表す部分がアルゴリズムの中心になります。
個人の表現
グループは個人の集まりであり、個人は人体パーツの集まりとして表されます。
人体パーツは、頭部、顔、頭部の上側、首、胴体、腕です。
画像中にp人の人物が存在した場合、p個の人物仮説の集合としてと書けます。さらに、それぞれの人物仮説はパーツの特徴ベクトルの組み合わせでと書けます。パーツの特徴ベクトルは以下の組み合わせになっています。
- パーツのパッチ中の肌色ピクセルの割合(肌色は顔領域の平均色で正規化)
- RGBヒストグラム、明度ヒストグラム、彩度ヒストグラム(全てのピクセルの場合と肌色ピクセルのみの場合)
- R、G、B、明度、彩度で支配的な上位3つの値
- HoG特徴量
この研究グループが過去に発表した参照論文によると、Poseletベースの人検出及び属性認識を用いているということです。
グループの表現
グループは個人の人物仮説の集まりと、グループの特徴を組み合わせたものになります。
グループの特徴は低レベルと高レベルのdescriptorの2つを組み合わせたもので、低レベルのdescriptorは
一方の高レベルのdescriptorは
- 近接度(顔領域間の距離ヒストグラムと人物枠の重なり割合)
- グループの姿勢(顔と顔の平均角度)
- レイアウト(画像を粗いグリッドにしたときの顔位置)
となっています。
モデルの構築
上記のようにして検出したグループの特徴ベクトルを識別するモデルを作ります。 ここでは、次の二つを使っているようです。
- Bag of Partsモデル(次の組み合わせ)
- 人物に対してBag of Partsを求めて、m人分のBag of Partsを並べたもの
- グループのdescriptor
- マルチクラスSVM
評価
図にあるような全部で11のグループを識別します。
識別モデルの違いを見ると、SVMの方がより良い結果となっています(左がBoPモデル、右がSVM)。理由としては、どの特徴がdiscriminativeであるかを学習できているからということが述べられています。
まとめ
論文のイントロダクションにもあるように、写真から個人やグループの属性を自動的に認識するというのは、膨大な写真が毎日投稿されるソーシャルメディアでとても有用だと思われます。
実際の投稿写真から、どれくらい認識出来るのかは気になる所ではありますが。