※この記事は「将棋 Advent Calendar 2016 – Adventar」の25日目です。
伝統や格式といったイメージに包まれる将棋界ですが、コンピュータ将棋ソフトが席巻してきた昨今では人工知能やら機械学習といったキーワードの話題も日常茶飯事になってきました。
今回の棋士データベースで遊ぶシリーズ、その機械学習繋がりにこじつけて Google Cloud Vision API を使った棋士画像解析を試してみたいと思います。
Google Cloud Vision APIで棋士の顔写真を解析
Google Cloud Vision API は Google が公開している画像分析 API で、特定の画像に含まれる物や人の顔を判別したり、テキストデータを検出するといったことが Google 様の機械学習の成果を利用してできてしまうすごいサービスです。
この API を使って棋士画像から顔の検出と感情を取得するということをやってみます。
API を利用するには Google への事前登録が必要なのですが、その辺りの手順は下記サイトに詳しいので省略します。(ちょっと画面が変わったりしていますが大まかな流れはそのままでいけました。)
さて今回は、php で以下のようなページを作って試してみました。この php をブラウザから実行すると、指定した画像の API 分析結果から顔部分に青枠を付け、また感情を判定した結果が表示されます。
まずは、いつもニコニコ笑顔が素敵な屋敷九段でテスト。
こんな結果が返ってきました。顔の位置が見事に特定されてますね。
なお、感情の判定は以下のような値が結果として出るようになってます。しっかり笑顔に見えましたが楽しさ判定はそこそこでした。
- 【感情】
- joyLikelihood 楽しみ
- sorrowLikelihood 悲しみ
- angerLikelihood 怒り
- surpriseLikelihood 驚き
- 【判定結果】
- UNKNOWN 判定不能
- VERY_UNLIKELY 非常に低いレベル
- UNLIKELY 低いレベル
- POSSIBLE そうだと言うことができるレベル
- LIKELY 高いレベル
- VERY_LIKELY 非常に高いレベル
棋士データベースの写真は皆さんかしこまっている写真なので、なかなか感情に大きな値は出にくいようです。
それでも、屋敷九段以上に楽しさを感じとってもらえる棋士がいないか探してみました。
まずはこちらの渡辺竜王です。
写真を見るからに分かりやすいナイスな笑顔ですが、Google からもちゃんと笑顔認定してもらえました。でもこれで「POSSIBLE」とはなかなか評価が厳しいですねw
続いて見つけたのは御大の羽生三冠。
ちょっと控えめな表情でどうかと思いきや、「LIKELY」と高いレベルの笑顔評価が下りました。きっと Google 様は心からにじみ出る楽しさを感じとったのでしょう。
他にも比較的表情が特徴的な棋士をピックアップして調べてみましたが、みんな3人の判定結果の範囲内に収まるようでしてちょっと残念。
もっと対局中の写真とか使えば違った結果が出るんでしょうが、棋士データベースを使う記事なのでとりあえず今回はこの辺にしておきます。
Google Cloud Vision API は他にも色々な機能があるのでアイデア次第でもっと楽しいことができそうですね。また時間のある時に遊んでみたいと思います。