(57)【要約】【課題】撮影画像に基づいてアバターを作成する場合において、ユーザの意図に合致するアバターを得やすくする。【解決手段】情報処理装置１０は、被写体を含む動画を撮影する撮影手段１１０と、撮影手段１１０により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段１２０と、画像生成手段１２０により生成された複数のアバター画像を表示する表示手段１３０とを備える。【選択図】図２
2016136324.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
撮影手段による被写体を含む動画の撮影を制御する撮影制御手段と、
前記撮影手段により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、
前記画像生成手段により生成された複数のアバター画像を表示手段に表示させる表示制御手段と
を実現させるためのプログラム。
【請求項２】
前記画像生成手段は、
前記撮影手段により撮影された動画の所定の撮影タイミングにおける画像から被写体の各部に相当する特徴を特定する特定手段と、
あらかじめ被写体の各部について設定された複数のパーツ画像の中から、前記特定手段により特定された特徴に応じたパーツ画像を当該各部について選択する選択手段とを含み、
前記選択手段により選択された前記各部のパーツ画像を組み合わせてアバター画像を生成する
請求項１に記載のプログラム。
【請求項３】
前記画像生成手段は、
前記アバター画像の少なくとも一部の色を前記画像に基づいて決定する決定手段を含む
請求項１又は２に記載のプログラム。
【請求項４】
前記表示制御手段は、前記複数のアバター画像の少なくともいずれかを前記撮影手段による撮影中の動画とともに表示させる
請求項１ないし３のいずれか１項に記載のプログラム。
【請求項５】
前記表示制御手段は、前記複数のアバター画像を選択可能に表示させる
請求項１ないし４のいずれか１項に記載のプログラム。
【請求項６】
前記表示制御手段は、前記複数のアバター画像のうちの２以上のアバター画像を同時に表示させる
請求項１ないし５のいずれか１項に記載のプログラム。
【請求項７】
前記画像生成手段は、
所定の条件が満たされるまで、前記撮影手段による動画の撮影に応じてアバター画像を順次生成し、
前記表示制御手段は、
前記画像生成手段により生成されたアバター画像を順次表示させる
請求項１ないし６のいずれか１項に記載のプログラム。
【請求項８】
前記所定の条件は、ユーザにより所定の操作が実行されることである
請求項７に記載のプログラム。
【請求項９】
前記撮影制御手段は、前記所定の条件が満たされた後も動画の撮影を続行する
請求項７又は８に記載のプログラム。
【請求項１０】
前記画像生成手段は、前記複数のアバター画像を重複しないように生成する
請求項１ないし９のいずれか１項に記載のプログラム。
【請求項１１】
前記表示制御手段は、前記画像生成手段によるアバター画像の生成後にタイムラグを発生させて当該アバター画像を表示させる
請求項１ないし１０のいずれか１項に記載のプログラム。
【請求項１２】
前記表示制御手段は、前記画像生成手段により生成された第１のアバター画像の表示から一定時間後に、前記画像生成手段により当該第１のアバター画像の次に生成される第２のアバター画像の表示が行なわれるように、前記タイムラグを発生させる
請求項１１に記載のプログラム。
【請求項１３】
前記画像生成手段は、前記撮影タイミングをユーザに通知せずに前記アバター画像を生成する
請求項１ないし１２のいずれか１項に記載のプログラム。
【請求項１４】
コンピュータに、
撮影手段による被写体を含む静止画像の撮影を所定の時間間隔で繰り返し実行させる撮影制御手段と、
前記撮影手段により撮影された複数の静止画像に基づいて、各々が当該複数の静止画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、
前記画像生成手段により生成された複数のアバター画像を表示手段に表示させる表示制御手段と
を実現させるためのプログラム。
【請求項１５】
被写体を含む動画を撮影する撮影手段と、
前記撮影手段により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、
前記画像生成手段により生成された複数のアバター画像を表示する表示手段と
を備える情報処理装置。
【請求項１６】
被写体を含む動画を撮影する撮影手段と、
前記撮影手段により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、
前記画像生成手段により生成された複数のアバター画像を表示する表示手段と
を備える情報処理システム。
【請求項１７】
被写体を含む動画を撮影し、
前記撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する
アバター画像の生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影した被写体に対応するアバター画像を生成する技術に関する。
【背景技術】
【０００２】
オンラインでのコミュニケーションにおいては、アバターが用いられることがある。アバターは、典型的にはユーザ自身に似た外見であるが、必ずしもそうである必要はなく、他人、動物、架空のキャラクタなどを模したものであってもよい。例えば、ユーザは、当該ユーザが好んでいる著名人、当該ユーザが飼育しているペット、ゲームや漫画の登場人物などを模したアバターをコミュニケーションに用いることも可能である。
【０００３】
ユーザが独自のアバターを使用する場合には、アバターを作成する必要がある。アバターの作成を支援するための技術としては、例えば、カメラ等で被写体を撮影し、撮影された画像を解析してアバターを生成する技術が知られている。このような技術によれば、ユーザがアバターをより手軽に得ることが可能である。
また、アバターの外観を変更する技術も知られている。例えば、特許文献１には、アバターを構成するアイテム（衣服）の色を変更する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２８７５４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
撮影画像に基づいてアバターを作成する方法では、撮影画像は、同じ被写体であっても撮影条件（光の明るさや色、被写体との角度など）が微妙に異なるだけで大きく変わり得る。そのため、このような方法では、ユーザが意図したような見た目のアバターが得られない場合があった。また、別の方法としては、被写体の外観の一部（肌の色、髪型など）を事前にユーザが設定してからアバターを生成する方法もあるが、このような方法では事前設定による手間が生じる不都合がある。
【０００６】
そこで、本発明は、撮影画像に基づいてアバターを作成する場合において、ユーザの意図に合致するアバターを得やすくすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、コンピュータに、撮影手段による被写体を含む動画の撮影を制御する撮影制御手段と、前記撮影手段により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、前記画像生成手段により生成された複数のアバター画像を表示手段に表示させる表示制御手段とを実現させるためのプログラムを提供する。
【０００８】
また、前記画像生成手段は、前記撮影手段により撮影された動画の所定の撮影タイミングにおける画像から被写体の各部に相当する特徴を特定する特定手段と、あらかじめ被写体の各部について設定された複数のパーツ画像の中から、前記特定手段により特定された特徴に応じたパーツ画像を当該各部について選択する選択手段とを含み、前記選択手段により選択された前記各部のパーツ画像を組み合わせてアバター画像を生成してもよい。
また、前記画像生成手段は、前記アバター画像の少なくとも一部の色を前記画像に基づいて決定する決定手段をさらに有してもよい。
また、前記表示制御手段は、前記複数のアバター画像の少なくともいずれかを前記撮影手段による撮影中の動画とともに表示させてもよい。
また、前記表示制御手段は、前記複数のアバター画像を選択可能に表示させてもよい。
また、前記表示制御手段は、前記複数のアバター画像のうちの２以上のアバター画像を同時に表示させてもよい。
また、前記画像生成手段は、所定の条件が満たされるまで、前記撮影手段による動画の撮影に応じてアバター画像を順次生成し、前記表示制御手段は、前記画像生成手段により生成されたアバター画像を順次表示させてもよい。
また、前記所定の条件は、ユーザにより所定の操作が実行されることであってもよい。
また、前記撮影制御手段は、前記所定の条件が満たされた後も動画の撮影を続行してもよい。
また、前記画像生成手段は、前記複数のアバター画像を重複しないように生成してもよい。
また、前記表示制御手段は、前記画像生成手段によるアバター画像の生成後にタイムラグを発生させて当該アバター画像を表示させてもよい。
また、前記表示制御手段は、前記画像生成手段により生成された第１のアバター画像の表示から一定時間後に、前記画像生成手段により当該第１のアバター画像の次に生成される第２のアバター画像の表示が行なわれるように、前記タイムラグを発生させてもよい。
また、前記画像生成手段は、前記撮影タイミングをユーザに通知せずに前記アバター画像を生成してもよい。
【０００９】
また、本発明は、コンピュータに、撮影手段による被写体を含む静止画像の撮影を所定の時間間隔で繰り返し実行させる撮影制御手段と、前記撮影手段により撮影された複数の静止画像に基づいて、各々が当該複数の静止画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、前記画像生成手段により生成された複数のアバター画像を表示手段に表示させる表示制御手段とを実現させるためのプログラムを提供する。
【００１０】
また、本発明は、被写体を含む動画を撮影する撮影手段と、前記撮影手段により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、前記画像生成手段により生成された複数のアバター画像を表示する表示手段とを備える情報処理装置を提供する。
【００１１】
また、本発明は、被写体を含む動画を撮影する撮影手段と、前記撮影手段により撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成する画像生成手段と、前記画像生成手段により生成された複数のアバター画像を表示する表示手段とを備える情報処理システムを提供する。
【００１２】
また、本発明は、被写体を含む動画を撮影し、前記撮影された動画の互いに異なる撮影タイミングに相当する複数の画像に基づいて、各々が当該複数の画像のいずれかに含まれる前記被写体を表す複数のアバター画像を生成するアバター画像の生成方法を提供する。
【発明の効果】
【００１３】
本発明によれば、撮影画像に基づいてアバターを作成する場合において、ユーザの意図に合致するアバターを得やすくすることが可能である。
【図面の簡単な説明】
【００１４】
【図１】情報処理装置１０のハードウェア構成を示すブロック図
【図２】情報処理装置１０の機能的構成を示すブロック図
【図３】表示画面の一例を示す図
【図４】表示画面の一例を示す図
【図５】表示画面の一例を示す図
【図６】アバターの編集画面の一例を示す図
【図７】メイン処理の一例を示すフローチャート
【図８】顔解析処理の一例を示すフローチャート
【図９】パーツ画像の分類を説明するための模式図
【図１０】アバター画像の生成方法を説明するための図
【図１１】表示処理の一例を示すフローチャート
【発明を実施するための形態】
【００１５】
１．実施例
（１）構成
図１は、本発明の一実施例に係る情報処理装置１０のハードウェア構成を示すブロック図である。情報処理装置１０は、被写体を撮影し、ユーザによるアバターの作成を支援するためのコンピュータ装置である。本実施例において、情報処理装置１０は、いわゆるスマートフォンであり、携帯可能な無線通信機器である。
【００１６】
本実施例において、アバターとは、ユーザの分身を表すキャラクタをいう。すなわち、アバターは、ユーザを識別する機能を有するキャラクタである。本実施例のアバターは、情報処理装置１０のユーザ以外の他のユーザが当該装置のユーザ（本人）であることを認識できればよく、必ずしも本人に似たキャラクタである必要はない。ユーザは、情報処理装置１０を用いて被写体（本人又は他人）を撮影し、撮影画像に応じたアバターを得ることが可能である。なお、ここでいう被写体は、例えばテレビに映し出された人物や書籍等に印刷された人物であってもよく、また、実在する人物であるか否かを問わない。
【００１７】
また、アバターは、２次元又は３次元のキャラクタである。例えば、アバターは、３ＤＣＧ（３次元コンピュータグラフィックス）を用いて、いわゆるポリゴンの組み合わせによって立体的に表現されてもよい。本実施例におけるアバター画像は、このような２次元又は３次元のキャラクタを画像として表したものである。
【００１８】
情報処理装置１０は、制御部１００と、記憶部２００と、タッチスクリーン部３００と、カメラ部４００と、通信部５００とを備える。また、情報処理装置１０は、図１に示す構成のほか、スピーカ、マイクロホン、バイブレータなどを備えてもよい。さらに、情報処理装置１０は、タッチスクリーン部３００以外の入力手段（キーパッドなど）を備えてもよい。
【００１９】
制御部１００は、情報処理装置１０の各部の動作を制御する手段である。制御部１００は、ＣＰＵ（Central Processing Unit）などの演算処理装置を１又は複数備える。ここでいうＣＰＵは、アプリケーションプロセッサ、ベースバンドプロセッサ、ＧＰＵ（Graphics Processing Unit）などを１つのチップに実装したものであってもよい。制御部１００は、ＯＳ（Operating System）やアプリケーションプログラムを実行することにより、所定の機能を実現することが可能である。また、制御部１００は、メインメモリ（主記憶装置）を含んでいる。
【００２０】
記憶部２００は、データを記憶する手段である。記憶部２００は、フラッシュメモリ、ハードディスクなどの記憶媒体を備える。記憶部２００は、制御部１００が実行するプログラムに加え、アバター画像を表示するための画像データなどを記憶している。なお、記憶部２００は、いわゆるメモリカードのような、着脱可能な記憶媒体とそのリーダ／ライタを含んで構成されてもよい。
【００２１】
タッチスクリーン部３００は、情報を表示し、ユーザの操作を受け付ける手段である。具体的には、タッチスクリーン部３００は、表示部３１０と、センサ部３２０とを含んで構成されている。表示部３１０は、液晶素子や有機ＥＬ（electroluminescence）素子による表示パネルを有し、制御部１００から供給された表示データに応じた画像を表示する。センサ部３２０は、表示パネル上における指示体（ユーザの指、スタイラスなど）の位置を検知するためのセンサを有し、検知した位置を表す座標データを制御部１００に供給する。センサ部３２０を構成するセンサは、例えば静電容量式のタッチセンサであるが、これに限定されない。
【００２２】
カメラ部４００は、被写体を撮影する手段である。カメラ部４００は、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）イメージセンサなどの撮像素子を少なくとも１つ備え、撮影画像を表す画像データを制御部１００に供給する。なお、カメラ部４００は、複数の撮像素子を備えてもよく、例えば、情報処理装置１０の前面（表示部３１０が設けられた側）と後面とに撮像素子が設けられていてもよいし、両眼視差を利用して立体画像を撮影するもの（いわゆるステレオカメラ）であってもよい。
【００２３】
本実施例においては、情報処理装置１０の前面に設けられた撮像素子によって、表示部３１０を確認しながらユーザ自身を撮影するのが情報処理装置１０の基本的な使用法であるとする。ただし、ユーザは、ユーザ自身を被写体とせず、他人などを被写体とする場合には、情報処理装置１０の後面に設けられた撮像素子によって被写体を撮影してもよい。この場合、情報処理装置１０は、後面のみに撮像素子を備えてもよい。
【００２４】
通信部５００は、データを送受信する手段である。通信部５００は、アンテナを備え、ネットワークを介して他の装置とデータをやり取りする。なお、通信部５００は、赤外線通信、ＮＦＣ（Near Field Communication）などの所定の無線通信方式により、ネットワークを介さずに通信してもよいし、有線で通信してもよい。
【００２５】
図２は、情報処理装置１０の機能的構成を示すブロック図である。情報処理装置１０は、その構成を機能的に分類すると、撮影手段１１０、画像生成手段１２０及び表示手段１３０に大別される。
【００２６】
撮影手段１１０は、アバター画像の生成に必要な画像（撮影画像）を撮影する手段である。撮影手段１１０は、より詳細には撮影制御手段１１１を含む。撮影手段１１０は、制御部１００とカメラ部４００の協働によって実現される。特に、撮影制御手段１１１は、制御部１００によって実現される手段であり、カメラ部４００による撮影を制御する手段である。例えば、撮影制御手段１１１は、カメラ部４００による撮影の開始及び終了を制御する。
【００２７】
本実施例において、撮影手段１１０は、ユーザの操作に応じて動画を撮影する。ここでいう動画は、複数の静止画の集合であり、所定のフレームレートで撮影される。撮影手段１１０による動画の撮影時間は、あらかじめ決められていてもよいし、ユーザの操作によって決められてもよい。
【００２８】
画像生成手段１２０は、アバター画像を生成する手段である。画像生成手段１２０は、撮影手段１１０により撮影された動画を用いて複数のアバター画像を生成する。具体的には、画像生成手段１２０は、撮影手段１１０により撮影された動画の所定の撮影タイミングにおける静止画である撮影画像から１又は複数のアバター画像を生成する動作を複数回繰り返す。これにより、画像生成手段１２０は、撮影手段１１０により撮影された動画の互いに異なる撮影タイミングに相当する複数の撮影画像のそれぞれからアバター画像を生成することが可能である。また、画像生成手段１２０は、より詳細には特定手段１２１、選択手段１２２及び決定手段１２３を含む。画像生成手段１２０は、いずれも制御部１００によって実現される。
【００２９】
特定手段１２１は、撮影画像から顔に相当する特徴を特定する手段である。ここでいう特徴は、例えば、耳、目、眉毛、鼻、口といった頭部の各部位の位置、形状又は色である。また、顔の形状（輪郭）、髪型、眼鏡や髭の有無なども、ここでいう顔の特徴に含まれ得る。
【００３０】
特定手段１２１による顔の特定方法は、複数考えられる。一例として、特定手段１２１は、周知の顔認識技術を用いて、撮影画像から人間の顔に相当するもの（以下「顔画像」という。）の検出を試みる。特定手段１２１は、顔画像を検出したら、検出した顔画像に含まれる複数の特徴点を特定し、顔の各部の特徴を分類する。例えば、特定手段１２１は、顔のうちの目に相当する部分について複数の特徴点（例えば、上下左右の端点）を特定し、これらの特徴点の位置関係に基づいて目の特徴（吊り目、垂れ目など）を特定する。特定手段１２１は、目以外の各部についても、同様にして特徴を特定及び分類することが可能である。
【００３１】
なお、撮影画像は、顔画像が必ず含まれるとは限らず、また、被写体が不鮮明である可能性もある。したがって、特定手段１２１は、顔画像の検出に失敗することがあり得る。このような場合、特定手段１２１は、別の撮影画像（例えば、顔画像の検出に失敗した撮影画像の１〜数フレーム後の撮影画像）を用いて顔画像の検出を再度試みてもよい。
【００３２】
選択手段１２２は、パーツ画像を選択する手段である。ここにおいて、パーツ画像とは、あらかじめ顔の各部について設定された画像であり、顔の各部の特徴毎に用意されている。選択手段１２２は、パーツ画像を表すデータを記憶部２００から読み出し、特定手段１２１により特定された特徴に応じたパーツ画像を選択する。なお、パーツ画像は、ビットマップ画像であってもよいし、ベクタ画像であってもよい。
【００３３】
決定手段１２３は、アバター画像の少なくとも一部の色を決定する手段である。例えば、決定手段１２３は、肌や髪の色を撮影画像に基づいて決定する。決定手段１２３は、顔画像のうちの対象とする領域の階調値（例えば、ＲＧＢ表色系の階調値）に応じた色を当該領域の色として決定する。なお、決定手段１２３は、パーツ画像に色があらかじめ設定されていない場合には、撮影画像に基づいてパーツ画像の色を決定してもよい。
【００３４】
表示手段１３０は、アバター画像の生成後（又は生成中）に画像を表示する手段である。表示手段１３０は、より詳細には表示制御手段１３１を含む。表示手段１３０は、制御部１００とタッチスクリーン部３００（特に、表示部３１０）との協働によって実現される。特に、表示制御手段１３１は、制御部１００によって実現される手段であり、タッチスクリーン部３００による画像の表示を制御する手段である。
【００３５】
表示手段１３０は、画像生成手段１２０によって生成された複数のアバター画像を選択可能に表示する。ユーザは、表示手段１３０により表示された複数のアバター画像の中から所望のアバター画像を選択することが可能である。アバター画像の選択は、例えば、ユーザが所望のアバター画像をタップすることで行なわれる。
【００３６】
表示手段１３０は、アバター画像の表示領域が表示するアバター画像の数に比して少ない場合には、アバター画像をスクロール表示してもよい。また、表示手段１３０は、所定の条件を満たした場合に、アバター画像のスクロール表示を一時停止させたり、それまでと異なる方向にアバター画像をスクロールさせたりすることが可能である。例えば、表示手段１３０は、アバター画像の生成を停止した場合や、ユーザによって所定の操作が実行された場合に、スクロール表示を一時停止させてもよい。
【００３７】
また、表示手段１３０は、アバター画像に加え、撮影中の動画をいわゆるライブビュー画像として表示することも可能である。この場合、ユーザは、タッチスクリーン部３００をデジタルカメラにおけるファインダーのように用いて、アングルや見た目を確認し、必要に応じて微調整しながら被写体を撮影することが可能である。ただし、表示部３１０による動画の表示は必須ではない。
【００３８】
（２）動作
情報処理装置１０の構成は、以上のとおりである。ユーザは、このような構成の情報処理装置１０を用いて、アバターを作成することが可能である。ユーザは、作成したアバターをさまざまな用途に用いることが可能である。ユーザは、例えば、アバター画像をＳＮＳ（Social Networking Service）などのオンラインサービスにおいて自己を表す画像として用いたり、アバターをゲーム内のキャラクタとして用いたりすることが可能である。情報処理装置１０は、アバターを表すデータを他の装置（ゲーム機など）に送信したり、当該データを符号化してＱＲコード（登録商標）などのコード情報として表示したりすることも可能である。
【００３９】
情報処理装置１０は、撮影画像から複数のアバター画像を生成して表示することにより、ユーザによるアバターの作成を支援することが可能である。情報処理装置１０は、アバター画像を複数生成するため、アバター画像が１つずつ生成される場合に比べてユーザの選択肢を増やすことが可能である。
【００４０】
また、情報処理装置１０は、１つの動画の異なる撮影タイミングに基づいて複数のアバター画像を生成するため、ユーザが撮影の都度（再度の撮影のための）明示的な指示を情報処理装置１０に与える必要がない。このため、特定の（１つの）撮影タイミングに基づいてアバター画像を生成する場合に比べ、ユーザが撮影をやり直さなくても多数のアバター画像を得ることが可能である。
【００４１】
上述したように、被写体の撮影画像は、撮影条件が変化すると見た目が大きく変わる可能性がある。特に、被写体が（自己の顔のように）ユーザにとって見慣れたものであると、ユーザは実物との相違をより顕著に認識する傾向がある。したがって、撮影画像に基づくアバターの生成においては、ユーザが必ずしも満足感を得られないことが多かった。
【００４２】
また、本実施例の情報処理装置１０のように携帯型の電子機器で被写体を撮影する場合には、ユーザが情報処理装置１０を手で持った状態で被写体を撮影するのが一般的である。このような場合、情報処理装置１０、被写体及び光源の三者の位置関係は必ずしも一定せず、情報処理装置１０と被写体との角度が変化したり、（被写体での光の反射に起因する）被写体の撮影画像における色合いが変化したりしやすくなる。
【００４３】
本実施例において、情報処理装置１０は、１つの動画の異なる撮影タイミングに基づいて複数のアバター画像を生成することにより、完全に同一ではなく、微妙に異なる撮影条件で撮影された複数の撮影画像によってアバター画像を生成することが可能である。ユーザは、さまざまな撮影条件に基づいて得られたアバター画像の中から所望するアバター画像を選択することができるため、自身の好みにより合致したアバター画像が得やすくなる。
【００４４】
図３は、アバターの生成時における情報処理装置１０の表示画面の一例を示す図である。情報処理装置１０は、所定のアプリケーションプログラムを実行することによって、このような画面を表示することができる。この例において、表示画面は、ライブビュー画像を表示するための領域Ａ１と、アバター画像を表示するための領域Ａ２とを含んでいる。また、この表示画面は、ボタンＢ１を含んでいる。なお、図３に示す表示画面は、アバターの生成前の状態を示している。
【００４５】
領域Ａ１には、カメラ部４００による撮影中の動画が表示される。また、領域Ａ１には、顔の認識をより容易にするために、顔の主要な部分（輪郭、目、鼻、口など）を位置合わせするための目印となる線やマークが表示されてもよい。領域Ａ２には、情報処理装置１０により生成されたアバター画像が表示されるが、図３に示す例はまだ表示されていない状態である。
【００４６】
また、ボタンＢ１は、アバター生成の開始及び終了を指示するためのボタンである。ボタンＢ１は、図３に示す例においては、アバター生成を開始するためのボタンとして機能する。ユーザがボタンＢ１をタップすると、情報処理装置１０は、アバター生成処理を開始する。例えば、ユーザは、領域Ａ１に表示された撮影中の動画を見ながら、自身の顔とカメラ部４００の相対的な位置や姿勢を調整（変更）してからボタンＢ１をタップしてアバター生成を開始することができる。また、ユーザは、ボタンＢ１をタップした後も、領域Ａ１に表示された撮影中の動画を見ながら自身の顔とカメラ部４００の相対的な位置や姿勢を調整することが可能である。
【００４７】
図４、図５は、アバター生成の開始後の情報処理装置１０の表示画面の一例を示す図である。情報処理装置１０は、アバターが生成されると、領域Ａ２にアバター画像を表示する。また、情報処理装置１０は、所定の時間間隔で領域Ａ２の表示を更新し、所定の条件を満たすまで新たなアバター画像を順次生成及び表示する。例えば、図５に示す表示画面は、図４に示す表示画面が表示されてから所定時間後に表示される表示画面である。このとき、情報処理装置１０は、個々のアバター画像を右から左にスクロール表示する。なお、ボタンＢ１は、アバター生成の開始後には、アバター生成を停止（一時停止又は終了）するためのボタンとして機能するようになる。
【００４８】
領域Ａ２に表示される個々のアバター画像は、アバター生成の元になった撮影画像が異なるか、あるいは異なるパーツ画像が用いられたものである。したがって、個々のアバター画像は、基本的には重複することなく、互いに異なる外観の画像となる。ただし、撮影タイミングが異なる２つの撮影画像が非常に類似していた場合などには、同じ外観のアバター画像が表示される可能性もないわけではない。
【００４９】
ユーザは、領域Ａ２に表示されたアバター画像の中から所望の画像を選択することが可能である。ユーザは、典型的には、アバター生成を停止（すなわちボタンＢ１をタップ）してから所望の画像を選択するが、アバター生成の最中に画像を選択してもよい。情報処理装置１０は、アバター画像が選択されると、アバターの編集画面を表示する。なお、ユーザは、領域Ａ２をフリック（又はドラッグ）することにより、アバター画像のスクロール表示を一時停止させたり、アバター画像を逆方向にスクロールさせたりすることも可能である。
【００５０】
図６は、アバターの編集画面の一例を示す図である。ユーザは、このような編集画面を用いて、アバターの外観を編集することが可能である。ここでいう編集は、例えば、顔のパーツの位置や色を変更し、又はパーツそのものを別のパーツに変更することである。あるいは、パーツの縦横比や大きさ（倍率）を変更したり、パーツを回転させたりすることが可能であってもよい。
【００５１】
この編集画面において、ユーザは、編集したいパーツを選択する。図６に示す例は、７種類あるパーツ（顔の形、髪型、眉毛、目、鼻、口及び眼鏡）のうち「顔の形」が選択されている場合を示している。この場合、ユーザは、顔の形や色を別のものに変更することが可能である。
【００５２】
この例において、領域Ａ３は、アバター画像をプレビュー表示する領域である。情報処理装置１０は、ユーザがアバターを編集すると、その編集結果に応じて領域Ａ３に表示されているアバター画像を変更する。また、情報処理装置１０は、ユーザから所定の操作を受け付けると、アバターの編集を終了し、アバターデータを保存する。アバターデータは、アバターの外観を特定するためのデータであり、例えば、アバターに使用されたパーツを識別するためのＩＤ（識別情報）や、各パーツの色や配置を示すデータによって構成される。あるいは、アバターデータは、画像データによって構成されてもよい。
【００５３】
このようなアバターの作成を可能にするために、情報処理装置１０は、以下に示すメイン処理、顔解析処理及び表示処理を実行する。これらの処理は、制御部１００において並行して実行される。メイン処理は、アバター画像の生成に関する主要な処理である。一方、顔解析処理は、アバター画像の生成のうち、特に撮影画像の解析に関する処理であり、表示処理は、アバター画像の表示に関する処理である。制御部１００に複数の演算処理装置が含まれる場合、これらの処理は、異なる演算処理装置によって実行されてもよい。
【００５４】
図７は、メイン処理の一例を示すフローチャートである。メイン処理において、制御部１００は、まず、ユーザの操作を契機として動画の撮影を開始する（ステップＳａ１）。すなわち、制御部１００は、動画の撮影を開始するようにカメラ部４００を制御する。なお、制御部１００は、動画の撮影の開始に合わせ、タッチスクリーン部３００にライブビュー画像を表示させてもよい。
【００５５】
動画の撮影を開始したら、制御部１００は、所定の撮影タイミングに相当するか否かを判断する（ステップＳａ２）。ここでいう撮影タイミングは、換言すれば、撮影画像をアバター画像の生成のために取得する（取り込む）タイミングである。撮影タイミングは、撮影の開始後所定の時間間隔で到来する、といったようにあらかじめ決められたタイミングであってもよいが、必ずしも一定でなくてもよい。
【００５６】
制御部１００は、撮影タイミングに相当しない場合には（ステップＳａ２：ＮＯ）、撮影画像を取得せずに、そのまま動画の撮影を続行し、撮影タイミングの到来を待機する。一方、制御部１００は、撮影タイミングが到来したと判断すると（ステップＳａ２：ＹＥＳ）、撮影中の動画のうちの当該タイミングにおける撮影画像を取得し（ステップＳａ３）、これを画像の解析に用いる。このとき、制御部１００は、ステップＳａ３において取得した撮影画像を用いた顔解析処理の実行を開始する（ステップＳａ４）。
【００５７】
図８は、顔解析処理の一例を示すフローチャートである。顔解析処理において、制御部１００は、取得した撮影画像から顔に相当する特徴点を抽出する（ステップＳｂ１）。ここでいう特徴点は、各パーツについて複数存在する。次に、制御部１００は、抽出した特徴点に基づき、アバター画像に使用するパーツ画像のグループを決定する（ステップＳｂ２）。また、制御部１００は、撮影画像に基づいてパーツ画像の色を決定する（ステップＳｂ３）。
【００５８】
図９は、本実施例のパーツ画像の分類を説明するための模式図である。本実施例のパーツ画像は、各パーツの特徴に応じて所定のグループにあらかじめ分類されている。図９に示す例は、顔の形について設定されたグループを例示するものである。ここでは、「グループ１」には丸形、「グループ２」には四角形、「グループ３」には逆三角形に相当するパーツ画像が分類される。なお、パーツ画像は、顔の形以外の他のパーツについても、同様に分類されている。
【００５９】
図９の例において、パーツ画像Ｐ１ａ、Ｐ１ｂ、Ｐ１ｃ、Ｐ１ｄは、いずれも同じグループに属し、"丸い"という共通の傾向を有するが、同一の外観ではない。すなわち、パーツ画像Ｐ１ａ、Ｐ１ｂ、Ｐ１ｃ、Ｐ１ｄは、それぞれ異なる外観の画像である。しかし、これらの画像が相違する程度は、他のグループに属するパーツ画像と比べれば僅かである。
【００６０】
なお、説明の便宜上、図８のフローチャートは、特徴点の抽出に成功する場合のみについて記載されている。しかし、実際には、撮影画像からの特徴点の抽出が失敗する場合もある。このような場合、制御部１００は、別の撮影タイミングの撮影画像を再度取得し、これに基づいてアバター画像の生成を試みてもよいし、アバター画像が生成できなかったことをユーザに通知してもよい。
【００６１】
制御部１００は、顔解析処理（図８）を実行しつつ、メイン処理（図７）においてその終了を待機する。すなわち、制御部１００は、メイン処理において、顔解析処理が終了したか否かを判断する（ステップＳａ５）。制御部１００は、この判断を顔解析処理が終了するまで繰り返す。
【００６２】
顔解析処理が終了したら、制御部１００は、顔解析処理の実行結果に基づいてパーツ画像を読み出す（ステップＳａ６）。具体的には、制御部１００は、各パーツについて、ステップＳｂ２において決定したグループのパーツ画像を読み出す。そして、制御部１００は、このようにして読み出したパーツ画像を組み合わせ、複数（ｍ個）のアバター画像を生成する（ステップＳａ７）。なお、ｍの値は、２以上であれば特に制限されず、撮影画像が取得される時間間隔などに応じて適宜に設定されればよい。
【００６３】
図１０は、本実施例におけるアバター画像の生成方法を説明するための図である。なお、説明の便宜上、ここでは、顔を構成するパーツが「顔の形」、「目」、「鼻」及び「口」の４種類であるとし、上述したｍの値が「５」であるとする。この場合、制御部１００は、「顔の形」、「目」、「鼻」及び「口」のそれぞれについて互いに異なる５個のパーツ画像を用い、５種類のアバター画像Ａｖ１、Ａｖ２、Ａｖ３、Ａｖ４及びＡｖ５を生成する。
【００６４】
例えば、アバター画像Ａｖ１は、パーツ画像Ｐ１１（顔の形）、Ｐ２１（目）、Ｐ３１（鼻）及びＰ４１（口）の組み合わせによって構成される。同様に、アバター画像Ａｖ２は、パーツ画像Ｐ１２（顔の形）、Ｐ２２（目）、Ｐ３２（鼻）及びＰ４２（口）の組み合わせによって構成される。したがって、アバター画像Ａｖ１、Ａｖ２、Ａｖ３、Ａｖ４及びＡｖ５は、ある程度の類似性を維持しつつ、それぞれ異なる画像になる。
【００６５】
なお、このようにして（同一の撮影画像から）生成される複数のアバター画像は、パーツ画像の一部に同じものが用いられてもよい。例えば、上述したアバター画像Ａｖ２は、パーツ画像Ｐ１２がパーツ画像Ｐ１１に置き換えられてもよい。このようにしても、アバター画像Ａｖ２は、顔の形のみアバター画像Ａｖ１と一致するだけで他のパーツは一致しないため、全体としては異なる顔になるためである。
【００６６】
以上のようにアバター画像を生成したら、制御部１００は、アバター画像の生成を終了するか否かを判断する（ステップＳａ８）。制御部１００は、例えば、ユーザが動画の撮影を停止する操作を実行した場合や、動画の撮影を開始してから所定の時間が経過した場合に、アバター画像の生成を終了する。このような場合（ステップＳａ８：ＹＥＳ）、制御部１００は、動画の撮影を終了し（ステップＳａ９）、メイン処理を終了させる。
【００６７】
一方、それ以外の場合には、制御部１００は、アバター画像の生成を続行する。この場合（ステップＳａ８：ＮＯ）、制御部１００は、ステップＳａ２以降の処理を再度実行する。これにより、制御部１００は、所定の撮影タイミングが到来する毎にステップＳａ２〜Ｓａ８の処理を実行することになる。
【００６８】
このように、制御部１００は、メイン処理及び顔認識処理を実行することにより、複数（ｍ個）のアバター画像を反復的に生成する。ただし、アバター画像を生成するタイミングとアバター画像を表示するタイミングとは、必ずしも一致せず、これらの間にタイムラグ（すなわち遅延）が発生する場合がある。具体的には、制御部１００は、以下に示す表示処理を実行することにより、アバター画像を順次表示する。
【００６９】
図１１は、表示処理の一例を示すフローチャートである。ここにおいて、顔認識処理とこれに伴うアバター画像の生成は、複数回実行されるものとする。以下においては、アバター画像が生成された回数を「ｎ」とし、その初期値を「１」とする。ただし、制御部１００は、上述したように、１回につきｍ個のアバター画像を生成する。
【００７０】
表示処理において、制御部１００は、まず、ｎ回目に生成したアバター画像の中からいずれか１つの表示を開始する（ステップＳｃ１）。続いて、制御部１００は、ステップＳｃ１の処理を実行してから所定の時間（ｔ秒）が経過したか否かを判断する（ステップＳｃ２）。なお、ｔの値は、顔認識処理の実行速度やユーザの使い勝手を考慮して適宜に設定されればよい。制御部１００は、ステップＳｃ１の処理を実行し、アバター画像が表示されてからｔ秒が経過するまで次の処理を待機する。
【００７１】
制御部１００は、アバター画像が表示されてからｔ秒が経過すると、ｎ＋１回目のアバター画像の生成が終了しているか否かを判断する（ステップＳｃ３）。すなわち、制御部１００は、ｎ回目のアバター画像の生成に用いた撮影画像と異なる撮影画像が取得され、当該撮影画像に基づいてアバター画像が生成されたか否かを判断する。
【００７２】
制御部１００は、ｎ＋１回目のアバター画像の生成が終了していれば（ステップＳｃ３：ＹＥＳ）、ｎの値をインクリメントし（ステップＳｃ４）、ステップＳｃ１以降の処理を再度実行する。一方、ｎ＋１回目のアバター画像の生成が終了していなければ（ステップＳｃ３：ＮＯ）、制御部１００は、ｎ回目に生成したアバター画像のうち未表示のアバター画像の中からいずれか１つの表示を開始する（ステップＳｃ５）。つまり、ステップＳｃ５の処理によって表示されるアバター画像は、ステップＳｃ１の処理によって表示されたアバター画像とは異なるものになる。制御部１００は、ステップＳｃ５の処理を実行し、アバター画像が表示されたら、ステップＳｃ２以降の処理を再度実行する。そして、制御部１００は、動画の撮影が終了するまでこれらの動作を繰り返す。
【００７３】
なお、ステップＳｃ５の処理がｍ−１回実行されると、ｎ回目に生成したアバター画像の全てが表示済みとなる。そうすると、制御部１００は、未表示のアバター画像を表示することができなくなる。このような場合には、制御部１００は、表示済みのアバター画像が再度表示されるようにしてもよいし、表示済みのアバター画像の一部のパーツや色を変更して表示してもよい。
【００７４】
この表示処理により、新たなアバター画像がｔ秒おきに表示される。したがって、ユーザは、撮影画像が実際に取り込まれ、アバター画像が生成されるタイミングとは関係なく、それまで表示されたものとは異なるアバター画像を一定の時間間隔で次々と確認することが可能である。これにより、ユーザは、アバター画像が生成されるタイミングが不規則であったとしても、新たなアバター画像を規則的なタイミングで確認し続けることが可能である。
【００７５】
２．変形例
上述した実施例は、本発明の実施の一態様にすぎない。本発明は、この実施例に限定されることなく、以下の変形例に示す態様で実施することも可能である。なお、以下の変形例は、必要に応じて、各々を組み合わせて適用してもよい。
【００７６】
（１）情報処理装置１０は、撮影中の動画を必ずしも表示しなくてもよい。また、情報処理装置１０は、必ずしも動画を撮影しなくてもよく、例えば、被写体を含む静止画像を所定の時間間隔で繰り返し撮影しても、上述した実施例と同様のアバター画像を生成することが可能である。なお、情報処理装置１０は、静止画像の撮影を自動的に、すなわち内部的に決められた時間間隔でユーザの操作によらずに繰り返してもよいし、ユーザが手動で撮影タイミングを決めて静止画像の撮影を繰り返してもよい。
【００７７】
また、情報処理装置１０は、撮影中の動画とアバター画像とを同時に表示しなくてもよい。例えば、情報処理装置１０は、複数のアバター画像をスクロール表示せずに一覧表示してもよい。この場合、情報処理装置１０は、動画を非表示にし、それまで動画を表示していた領域にもアバター画像を表示するようにしてもよい。あるいは、情報処理装置１０は、動画の表示領域の一部にアバター画像を重ねて表示してもよい。また、情報処理装置１０は、アバター画像を同時に複数表示せずに、１つずつ表示してもよい。
【００７８】
（２）情報処理装置１０は、アバター画像の生成に用いる撮影画像の撮影タイミングを通知してもよいし、通知しなくてもよい。ここでいう通知は、例えば、表示画面に所定の目印（アイコン等）を表示させるものであってもよいし、スピーカによる音声やバイブレータによる振動を用いて実現されてもよい。また、情報処理装置１０は、撮影タイミングまでの残り秒数をカウントダウン表示してもよい。なお、情報処理装置１０は、撮影タイミングを通知するか否かをユーザが事前に設定できるようにしてもよい。
【００７９】
（３）情報処理装置１０は、複数のアバター画像をスクロール表示させる場合において、ユーザの操作などに応じて当該スクロール表示を一時停止させるとき、動画の撮影についても一時停止させてもよい。あるいは、情報処理装置１０は、スクロール表示を一時停止させる操作の後、アバター画像の生成については一時停止させる一方、動画の撮影については一時停止させずに続行してもよい。さらに、情報処理装置１０は、動画の撮影とアバター画像の生成のいずれも一時停止させずに、スクロール表示のみを一時停止させてもよい。
【００８０】
（４）本発明に係るアバターは、顔のみではなく全身を表現したものであってもよい。この場合、情報処理装置１０は、撮影画像に基づいて衣服の画像を生成してもよい。ここでいう衣服の画像は、上述したパーツ画像のように、あらかじめ用意されたものの中から選択されてもよい。また、本発明において、アバターの対象となる被写体は、動物や架空のキャラクタであってもよい。ただし、このような場合、情報処理装置１０は、顔認識処理を被写体に合わせて最適化したり、被写体に応じたパーツ画像を用意したりしておくことが望ましい。また、本発明に係る被写体は、外観に一定の特徴（形状、大きさ、長さなど）を有するものであればよく、必ずしも顔に相当するものを含まなくてもよい。この場合、情報処理装置１０は、顔認識処理に代えて所定の解析処理（パターンマッチなど）を実行して被写体の特徴を特定できればよい。
【００８１】
（５）本発明は、パーツ画像をあらかじめ用意しておくことを必ずしも要しない。例えば、本発明は、パーツ画像を用いずに顔の各部を再現してもよいし、顔を表す画像がパーツ毎に分かれていなくてもよい。
【００８２】
（６）本発明に係る情報処理装置は、上述した情報処理装置１０のようなスマートフォンに限定されない。例えば、本発明に係る情報処理装置は、パーソナルコンピュータやゲーム機であってもよい。また、本発明に係る情報処理装置は、撮影手段や表示手段を必ずしも備える必要はなく、これらに代えて撮影手段や表示手段とデータを授受する手段を備えるものであってもよい。さらに、本発明に係る情報処理装置は、外部と通信する手段を備えていなくてもよい。
【００８３】
また、本発明は、複数の装置の協働によって実現されてもよい。例えば、本発明は、撮影手段を備えるカメラ（スチルカメラ又はビデオカメラ）と、表示手段を備えるディスプレイと、画像生成手段を備える情報処理装置とを備える情報処理システムによって実現されてもよい。また、本発明に係る情報処理システムは、当該システムを構成する各装置をネットワークを介して接続した構成であってもよく、その一部がユーザによって所持・携帯されない構成であってもよい。
【００８４】
さらに、本発明は、情報処理装置に限らず、アバター画像の生成方法や、本発明に係る機能をコンピュータに実現させるためのプログラムとしても提供され得る。なお、このようなプログラムは、光ディスクや半導体メモリなどの記録媒体に記録された形態や、インターネットなどのネットワークを介して情報処理装置等にダウンロードさせる形態での提供も可能である。
【符号の説明】
【００８５】
１０…情報処理装置、１００…制御部、２００…記憶部、３００…タッチスクリーン部、３１０…表示部、３２０…センサ部、４００…カメラ部、５００…通信部、１１０…撮影手段、１１１…撮影制御手段、１２０…画像生成手段、１２１…特定手段、１２２…選択手段、１２３…決定手段、１３０…表示手段、１３１…表示制御手段
【図１】
2016136324.tif 000003
【図２】
2016136324.tif 000004
【図３】
2016136324.tif 000005
【図４】
2016136324.tif 000006
【図５】
2016136324.tif 000007
【図６】
2016136324.tif 000008
【図７】
2016136324.tif 000009
【図８】
2016136324.tif 000010
【図９】
2016136324.tif 000011
【図１０】
2016136324.tif 000012
【図１１】
2016136324.tif 000013