口もとが緩んでいれば「喜び」、眉間にシワが寄っていれば「怒り」、など顔を見ただけで人の感情はおよそ見当がつくもの。教科書で学ぶものではなく、大勢の人との接触を重ねいつの間にか身につくワザなだけに、具体的な基準を尋ねられると困ってしまいますが、それでも"表情を読める"のが我々人間というものでしょう。

iPhoneも、限定的ながら人間の表情を読み取ることができます。「写真」アプリには、カメラロールに録り貯めた写真を分析し、被写体となった人ごとにまとめる「ピープル」機能がありますが、それとは異なりサードパーティー製アプリでも実現可能です。

iOS 7以降のCoreImage(アプリ開発に利用される画像処理関連機能が集められたライブラリ)には、左目/右目や口の位置などを値として持つプロパティが多数用意されており、このライブラリを利用したアプリはある程度人の表情を識別することができます。

サポートされるプロパティの中には、被写体が笑顔かどうかを値(TRUE/FALSE)で持つものがあり、単独写真はもちろん集合写真のうち笑顔の人数を数えるような使いかたも可能です。基準は明らかではありませんが、被写体の口もとを判断材料にしているようです。なお、右目/左目が閉じられていることを識別するプロパティを利用すれば、ウインクでシャッターを切るカメラアプリも開発できます。

このようなiPhoneの画像認識機能は、iOSがバージョンアップするたびに強化される傾向にあり、iOS 11で追加されたCoreMLとVisionというライブラリを利用すると、機械学習の成果を画像の識別に応用することが可能になります。笑顔以外の表情を識別できるかどうかとなると別の問題になりますが、今後バリエーションが増える方向で進化する可能性は高いのではないでしょうか。

  • 写真に写った表情が笑顔かどうか識別する機能がiOSに用意されています