[本発明の実施形態の説明]
最初に本発明の実施態様を列記して説明する。また、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
(1)本態様に係る画像処理装置は、人物を被写体として撮像された撮像画像中の人物被写体領域における身体又は顔の特定の部位に対応する部分を抽出する抽出部と、該抽出部により抽出された部分の特徴量に基づき、前記撮像画像を撮像する撮像装置に対する前記人物の姿勢又は視線を検出する検出部と、検出した姿勢又は視線に基づいて前記人物被写体領域の補正量を決定する補正量決定部と、決定された補正量に基づき、姿勢又は視線を補正した人物画像を作成する画像作成部とを備える。
本態様にあっては、通話相手の画像又は通話相手に関する情報が表示されている表示部の1箇所を注視する場合のユーザの視線と、ユーザを撮像する撮像部の撮像方向とのずれにより、ビデオ通話相手の表示部に表示される人物画像が生じさせる違和感を解消することができる。
本態様において検出部は、撮像画像中の人物被写体の姿勢又は視線(傾き等)を検出する。検出方法は、赤外光を瞳孔に当てて反射像を解析する方法、人物被写体の特徴点の位置から検出する方法等、種々の方法が適用される。
補正量決定部は、検出された姿勢又は視線に基づき、注視方向を撮像方向に一致させることを想定して補正量を決定する。
画像作成部は、決定された補正量を用いて撮像方向を注視方向として向く人物画像を作成することができる。撮像装置を複数設けて三次元的に人物を捉えることなく、撮像方向と特定箇所(例えば表示部の中央、表示部に表示されている通話相手の人物画像)への注視方向とを仮想的に一致させる処理をソフトウェア的に実施する。
(2)本態様に係る画像処理装置では、前記補正量決定部は、前記検出部により初期的に検出された姿勢又は視線と、前記撮像画像における撮像方向との差分を標準補正量として予め決定しておき、前記検出部により検出された姿勢又は視線と、前記標準補正量との差分を補正量として決定してもよい。
本態様にあっては、検出部は初期的に検出された姿勢又は視線を注視方向(正対方向)とし、撮像方向との差分を検出し、補正量決定部は検出された差分を標準補正量とする。標準補正量は、撮像画像中の人物被写体領域の人物が注視方向を向いている場合に、その視線を撮像方向に一致させる補正量である。検出される姿勢又は視線の方向から標準補正量を差し引くことにより、正対した姿勢又は視線を標準として対話中の身体及び視線の自然な動きを伴う人物画像を作成することが可能である。
(3)本態様に係る画像処理装置は、任意の姿勢又は視線の人物被写体領域を含む画像を入力した場合に、該人物被写体領域が設定方向を向いた人物画像を出力する学習モデルと、人物を被写体として撮像された撮像画像を前記学習モデルへ入力して姿勢又は視線を補正した人物画像を作成する画像作成部とを備える。
本態様にあっては、人物画像の作成は、深層学習を利用した学習モデルが用いられる。学習モデルは、姿勢又は視線が多様な人物が写っている人物被写体領域を含む画像を入力とし、設定角度を向く人物画像を出力する画像変換モデルである。例えば深層学習を用いて多様な姿勢の人物画像と、夫々について同一人物について設定方向を向いた画像を撮像した人物画像とを用いた学習モデルを作成しておき、各情報処理装置でユーザについて学習を進めていくことでユーザの特定に応じた学習モデルとしてもよい。
(4)本態様に係る画像処理装置では、設定方向は撮像方向に対し正対する方向であってもよい。
本態様にあっては、設定方向は正対する画像に対応する方向であることが望ましい。
更に、姿勢又は視線を検出し、検出された姿勢又は視線の注視方向からの差分を設定方向とし、正対する画像を標準として補正を行なうことで通話相手が注視する人物画像は通話相手と目線が一致することになり、自然な対話となる。
(5)本態様に係る画像処理装置では、前記人物に対応する写真画像であるユーザ画像、イラスト画像、又は三次元アニメーション画像であるアバター画像を予め記憶してある記憶部を備え、前記画像作成部は、前記撮像画像、前記記憶部に記憶してあるユーザ画像、又はアバター画像を元画像として人物画像を作成する。
本態様にあっては、姿勢又は視線を補正した人物画像の作成に基本となる元画像として、撮像されている撮像画像中の人物被写体領域、即ちライブ画像のみならず、予め記憶してあるユーザを撮像した写真画像(ユーザ画像)、アナログ又はデジタルで描かれたイラスト画像、三次元アニメーション画像等を用いたアバター画像を利用してもよい。
(6)本態様に係る画像処理装置では、前記画像作成部により作成する人物画像の元画像を、前記撮像画像、前記ユーザ画像及びアバター画像のいずれとするかの選択を受け付ける選択受付部を備え、前記画像作成部は、前記選択受付部で選択された画像を元画像として人物画像を作成する。
本態様にあっては、上述のライブ画像、ユーザ画像、又はアバター画像の内のいずれを用いるかの選択を受け付けることができる。ビデオ通話の目的に応じてユーザが選択でき、自身及び通話相手に不快感を生じさせずに通話が可能になる。
(7)本態様に係る画像処理装置では、人物を被写体として撮像された撮像画像中の人物被写体領域の特徴量に基づき、認証を行なう認証部を備え、該認証部により認証に失敗した場合、処理を停止する。
本態様にあっては、撮像画像から抽出される部分における特徴量に認証を行ない、失敗した場合には画像処理部の処理が停止する。態様(5)及び(6)で示したように、撮像画像(ライブ画像)以外の画像を元に人物画像を作成できるところ、なりすましを防ぐことが可能になる。
(8)本態様に係るビデオ通話システムは、表示部、撮像部、音声入出力部、及び通信部を備える複数の端末装置間で相互に、前記撮像部で撮像した画像及び前記音声入出力部にて入力した音声を含む映像データを前記通信部により送受信し、前記画像を前記表示部に表示させ、前記音声を音声入出力部にて出力するビデオ通話システムであって、前記複数の端末装置の内の少なくとも1つは、前記撮像部により撮像された撮像画像中の人物被写体が写っている人物被写体領域における身体又は顔の特定の部位に対応する部分を抽出する抽出部と、該抽出された部分の特徴量に基づき、前記撮像部に対する前記人物の姿勢又は視線を検出する検出部と、検出した姿勢又は視線に基づいて前記人物被写体領域の補正量を決定する補正量決定部と、決定された補正量に基づき、姿勢又は視線を補正した人物画像を作成する画像作成部とを備える。
ビデオ通話システムにおける端末装置にて、撮像装置をそのまま相互に送受信し合った場合には、通話相手の画像又は通話相手に関する情報が表示されている表示部の1箇所を注視する場合のユーザの視線と、ユーザを撮像する撮像部の撮像方向とのずれが生じる。したがって、通話相手の表示部に表示される人物画像が生じさせる。本態様にあっては、そのずれを解消するように補正した人物画像を作成して送信するから、自然な対話が可能になる。このとき撮像装置を複数設けたり、逐次三次元モデルを用いる必要はない。
(9)本態様に係るコンピュータプログラムは、コンピュータに、人物を被写体として撮像された撮像画像中の人物被写体領域における身体又は顔の特定の部位に対応する部分を抽出する処理、抽出された部分の特徴量に基づき、前記撮像画像を撮像する撮像装置に対する前記人物の姿勢又は視線を検出する処理、検出した姿勢又は視線に基づいて前記人物被写体領域の補正量を決定する処理、及び決定された補正量に基づき、姿勢又は視線を補正した人物画像を作成する処理を実行させる。
本態様にあっては、態様(1)同様に、ユーザの視線と、ユーザを撮像する撮像部の撮像方向とのずれにより、ビデオ通話相手の表示部に表示される人物画像が生じさせる違和感を解消することができる。
(10)本態様に係る画像処理方法は、撮像部にて撮像される撮像画像を取得し、取得した撮像画像に基づき画像処理を行なう画像処理装置による画像処理方法であって、人物を被写体として撮像された撮像画像中の人物被写体領域における身体又は顔の特定の部位に対応する部分を抽出する処理、抽出された部分の特徴量に基づき、前記撮像画像を撮像する撮像装置に対する前記人物の姿勢又は視線を検出する処理、検出した姿勢又は視線に基づいて前記人物被写体領域の補正量を決定する処理、及び決定された補正量に基づき、姿勢又は視線を補正した人物画像を作成する処理を含む。
本態様にあっては、態様(1)同様に、ユーザの視線と、ユーザを撮像する撮像部の撮像方向とのずれにより、ビデオ通話相手の表示部に表示される人物画像が生じさせる違和感を解消することができる。
[本願発明の実施形態の詳細]
本発明の実施形態に係る画像処理装置の具体例を、以下に図面を参照しつつ説明する。なお、本発明は、これらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
(実施の形態1)
図1は、画像処理装置を用いたビデオ通話システム100の概要を示す図である。ビデオ通話システム100は、ユーザが各々用いる複数の端末装置1と、端末装置1間の通話セッションを確立するサーバ装置2とを含む。複数の端末装置1は、ネットワークNを介してサーバ装置2と通信接続し、他の端末装置1と通話セッションを確立して通信することができる。
複数の端末装置1は夫々、所謂スマートフォン、タブレット端末、デスクトップ型パーソナルコンピュータ、ラップトップ型パーソナルコンピュータ等のコンピュータによって実現される。端末装置1は、図1に示すように撮像部13と表示部14とを備える。
ビデオ通話システム100を利用するユーザは端末装置1を用い、カメラである撮像部13で自身を撮像させながら、表示部14に表示されている通話相手を撮像した画像、撮像部13で撮像した自身の画像、その他の通話に関連する画像又は文書を確認しながら通話を行なう。
端末装置1では夫々、撮像部13で撮像した画像とマイクロフォン等の音声入出力部16で集音した音声とのデータを映像データへ符号化及び多重化し、映像データを通話セッションにて送受信する。そして受信した映像データから画像及び音声を復号し、夫々表示部14及び音声入出力部16にて出力する。
図1に示すように、撮像部13の設置箇所は様々である。しかしながら撮像部13は、表示部14の表示領域中の、通話相手の人物画像が表示される箇所に設けることが困難である。撮像部13で撮像した画像をそのまま通話相手の表示部14に表示させる場合、表示される画像内の話者の視線は、通話相手へは向けられずに少しずれる。これにより、血和中に視線を一致させることが困難となり、ユーザはコミュニケーションにフラストレーションを感じることになる。
そこで実施の形態1のビデオ通話システム100では、端末装置1にて、撮像画像を、正対する画像、又は対話中の身体及び視線の自然な動きを伴う適切な角度を向いた人物画像へ変換してから送信する。このとき、撮像部13は左右にカメラを1つずつ、又は上下に1つずつなど、特定の複数のカメラを用いず、汎用コンピュータが備える最低限の簡素な構成でよい。また端末装置1は、ポリゴン、即ち三次元モデルを生成する処理を行なうことなしに、正対する画像又は対話中の動作に伴う姿勢又は視線等に応じた人物画像に変換する。
このように本実施の形態1のビデオ通話システム100では、視線を通話相手同士で一致させるか、話者の視線に合わせた適切な角度を向けるようにして、ビデオ通話であっても自然な対話が可能になる。以下、具体的な構成について説明する。
図2は、ビデオ通話システム100の構成を示すブロック図である。端末装置1は、処理部10、記憶部11、通信部12、撮像部13、表示部14、操作部15及び音声入出力部16を備える。撮像部13、表示部14、操作部15及び音声入出力部16は、端末装置1に外付けで接続されるデバイスを用いてもよい。
処理部10は、CPU(Central Processing Unit )、GPU(Graphics Processing Unit)等のプロセッサと、クロック、内蔵メモリ等を用いる。なお処理部10は、プロセッサ、クロック、内蔵メモリ、更には記憶部11及び通信部12を集積した1つのハードウェア(SoC:System On a Chip)として構成されていてもよい。処理部10は、記憶部11に記憶してある端末用アプリプログラム1Pに基づいた各処理により、汎用コンピュータをビデオ通話システム100における端末として機能させる。
記憶部11はフラッシュメモリ、ハードディスク、SSD(Solid State Disk)等の不揮発性記憶媒体を用いる。記憶部11にはビデオ通話システム100における端末としての機能を実現するための端末用アプリプログラム1Pが記憶されているほか、処理部10が処理の際に参照する情報を記憶する。記憶部11には、端末装置1のユーザの正当性を判定(認証)するために、予めユーザを撮像したユーザ画像、又はユーザ画像から得られる特徴量(ベクトル化された特徴量群)が記憶されている。ユーザ画像は、撮像画像そのまま、又は美化処理を行なった画像であってもよい。化粧を施してから撮像された画像でもよいし、化粧を施したり肌色を明るくしたりする等の美化処理が施された画像であってもよい。更に、ユーザ画像は、身体及び顔等のパーツ毎に細分化されていて組み合わせにより種々の角度の人物画像を作成できるようにしてあってもよい。また記憶部11には、1又は複数のアバター画像又はアバター画像の特徴量が記憶されているとよい。アバター画像の態様は限定されないが、例えばユーザを撮像した二次元画像から作成された三次元CGアニメーション画像であってもよい。
通信部12は、ネットワークカード又は無線通信デバイスを用い、ネットワークNへの通信接続を実現する。
撮像部13は、カメラモジュールを用いて得られる映像信号を出力する。撮像部13は揮発性メモリを内蔵しており、カメラモジュールから出力された映像信号から、フレーム画像を所定のフレームレートでキャプチャし、逐次巡回的に記憶する。処理部10は、撮像部13の内部メモリからフレーム画像を順に取得することが可能である。
表示部14は液晶パネル又は有機ELディスプレイ等のディスプレイ装置を用いる。表示部14は、処理部10の処理により映像データに多重化されている画像データに基づく画像を出力する。操作部15は、ユーザの操作を受け付けるインタフェースであり、物理ボタン、ディスプレイ内蔵のタッチパネルデバイス等を用いる。操作部15は、物理ボタン又はタッチパネルにて表示部14で表示している画面上で操作を受け付けてもよいし、音声入出力部16のマイクロフォンにて入力音声から操作内容を認識し、スピーカで出力する音声との対話形式で操作を受け付けてもよい。
音声入出力部16は、スピーカ及びマイクロフォンを用いる。音声入出力部16はスピーカを用いて、映像データに多重化されている音声データに基づく音声を出力し、マイクロフォンを用いて集音される音声を音声データへデジタル変換する。
サーバ装置2はサーバコンピュータを用いる。サーバ装置2は、ハードウェア的に1台のサーバコンピュータに対して、論理的に1つの装置として実現されるとは限らない。大抵の場合、1台のサーバコンピュータにて論理的に複数が動作する仮想マシンにより実現される。説明を簡易とするため、以下の説明では、サーバ装置2は物理的に1つのコンピュータを用いることとして説明する。
サーバ装置2は夫々、処理部20、記憶部21、及び通信部22を備える。処理部20はCPU、GPU等のプロセッサを用い、記憶部21に記憶されているサーバプログラム2Pに基づいた各処理を実行し、汎用コンピュータを画像通信システムのサーバ装置として機能させる。
記憶部21は、ハードディスク又はフラッシュメモリ等の不揮発性記憶媒体を用いる。記憶部21は、サーバプログラム2Pのほか、処理部20が処理の際に参照する情報を記憶する。記憶部21は、外部記憶装置を備えてデータベース201としてユーザ情報を記憶しておいてもよい。
通信部22は、ネットワークカード又は無線通信デバイスを用い、ネットワークNへの通信接続を実現する。通信部22はTCP/IPに準じた通信を行なうが、これに代替するプロトコルであっても構わない。サーバ装置2は通信部22によりネットワークNを介した通信接続を実現し、1つの端末装置1と他の端末装置1との間の1対1のセッションを確立させる。端末装置1と各装置との間のデータ通信は、暗号化処理等により安全に実行される。
ネットワークNは、所謂インターネットである公衆網、通信キャリアネットワーク、及びビデオ通話システム100を実現する事業者の事業者ネットワーク、それらへの接続拠点である基地局BS、アクセスポイントAP等を含む総称である。なおサーバ装置2は事業者ネットワークからネットワークNへ接続している。
図3は、端末装置1の処理部10の機能を示す機能ブロック図である。処理部10は端末用アプリプログラム1Pに基づき、端末装置1の各構成部を用いて画像データ取得部101、認証部102、選択受付部103、画像処理部104、映像処理部105及び通信処理部106として機能する。なお、画像処理部104の機能の一部又は全部は集積回路としてハードウェア的に実現されることで高速化されるとよい。画像処理部104の機能は、処理部10とは別にGPUを用いたプロセッサによって実現してもよい。
画像データ取得部101は、撮像部13から映像信号に含まれるフレーム画像を取得する。画像データ取得部101は、取得したタイミングを示すタイムスタンプを処理部10内蔵のタイマから取得してフレーム画像毎に付与し、フレーム画像と共に画像処理部104へ与える。
画像処理部104は、領域抽出部41、姿勢/視線検出部42、補正量決定部43、及び画像作成部44の機能を含む。
領域抽出部41は、画像データ取得部101から与えられたフレーム画像に対して、人物被写体を撮影した人物被写体領域を抽出する。領域抽出部41は、人物被写体領域における顔領域、顔領域内の目、口、鼻等の器官領域の輪郭を特定することが好ましい。輪郭は、フレーム画像内における座標で表される。
姿勢/視線検出部42は、領域抽出部41にて抽出された人物被写体領域における特徴量に基づき、フレーム画像中に写っている人物の、撮像方向(フレーム画像に対応する面の法線方向)に対する姿勢又は視線の傾き(φd :左右(yaw )、θd :上下(pitch )、ωd :フレーム画像と平行な面上での回転(rolling )等)を検出する。姿勢/視線検出部42による姿勢又は視線の検出は、公知の多様な方法を使用してよい。例えば姿勢/視線検出部42は例えば各器官の輪郭の分布から、撮像方向に対する人物の顔の向きの傾き(φd ,θd ,ωd )を検出し、目領域内での眼球領域の位置によって視線の傾き(φd ,θd )、顔を傾げている程度(ωd )を検出する。姿勢/視線検出部42は、人物被写体領域中の肩の位置を特定し、人物の姿勢(φd ,θd ,ωd )を検出してもよい。また例えば姿勢/視線検出部42は、撮像部13に近赤外光を発する発光素子とその反射を受光する受光素子とを設け、眼球に近赤外光を当てたことによる角膜表面からの反射光(プルキニエ像)の位置を取得して視線を検出してもよい。姿勢/視線検出部42は、人物被写体領域中の目領域における眼球の部分から瞳孔の中心の座標を特定し、瞳孔の位置及びプルキニエ像の位置と、予めキャリブレーションしてある情報とに基づいて視線の角度(φd ,θd )を検出してもよい。
姿勢/視線検出部42では、端末装置1がスマートフォンである、又はラップトップ型パーソナルコンピュータである場合等、加速度センサ又は角速度センサを備えている場合、これらのセンサから撮像部13自体の傾きを取得してもよい。姿勢/視線検出部42は、取得した撮像部13の傾き(加速度、角速度、振動)を、画像作成部44へ伝える。
補正量決定部43は、姿勢/視線検出部42により逐次フレーム画像に対して検出した顔の傾き、目線、又は身体全体の姿勢の角度(φd ,θd ,ωd )に基づき、身体又は視線を、正対方向を基準とした角度へ向けた人物画像を作成するための補正量(φc ,θc ,ωc )を決定する。補正決定部は、初期的に検出される撮像方向と、ユーザが表示部14の通話相手の人物画像を注視する際の注視方向との間の差分を標準補正量とし、正対方向への姿勢又は視線からの差分を補正量として決定する。つまり補正量決定部43は基本的に、検出された顔の傾き、目線、又は身体全体の姿勢の角度(φd ,θd ,ωd )から標準補正量を差し引くように補正量を決定する。なお、補正量決定部43は、姿勢又は視線の傾きについて固定角度の設定を受け付け、姿勢/視線検出部42によって検出された角度に関わらず、設定された固定角度(例えば正対方向)に向けた人物画像とする補正量を決定してもよい。この場合、ユーザがどのような姿勢又は視線となっていても、通話相手の端末装置1にて表示される人物画像は固定角度を向く。
また補正量決定部43は、人物被写体領域の画像内における位置及び範囲を適切化するための補正量を決定してもよい。例えば撮像部13の画角では、フレーム画像内の中央から左、右、上及び下のいずれかに人物被写体領域が偏位している場合、補正量決定部43は、画像作成部44にて作成される人物画像がフレーム画像内にて中央寄りで適切な画角で含まれるように、人物被写体領域の移動距離を決定するとよい。この際、補正量決定部43は、フレーム画像に対してトリミング範囲を決定するようにしてもよい。
画像作成部44は、補正量決定部43で決定された補正量を用いて物画像を作成して映像処理部105へ出力する。画像作成部44は、選択されている元画像に基づいて人物画像を作成する。元画像として領域抽出部41で抽出した元の人物被写体領域である場合(ライブ画像)、画像作成部は補正量決定部43で決定した補正量により、人物被写体領域が設定角度に向くように補正して人物画像を作成する。画像作成部は、顔領域又は目領域のみならず、人物被写体領域を補正する。元画像として、記憶部11に記憶してあるユーザの人物画像(ユーザ画像)とする場合、画像作成部44は、ユーザ画像又はその特徴量を読み出して設定角度に向く人物画像を作成する。元画像として、記憶部11に記憶してある作成された人物画像(アバター画像)とする場合、画像作成部44は、アバター画像又はその特徴量を読み出して設定角度に向く人物画像を作成する。
画像作成部44は、人物画像を作成するに際し、音声入出力部16のマイクロフォンから出力される音声に対する音声認識に基づいて、口領域の画像を作成、又は補正するようにしてもよい。
画像作成部44は、撮像部13自体の鉛直方向に対する傾きを姿勢/視線検出部42から取得できる場合、例えばその傾きに応じて歪む姿勢又は視線を補正する処理を行なってもよい。例えば画像作成部44は、検出された傾きに応じて、首の傾き、瞼、目線又は顔のたるみを水平方向に向けて又は若干上向きになるように修正するようにしてもよい。
映像処理部105は、画像処理部104の画像作成部44から出力される画像データと、前記音声入出力部16のマイクロフォンにより集音された音声の音声データとを、時間を同期させて多重化した映像データを作成する。映像処理部105は、画像及び音声の符号化機能(エンコーダ)及び対応する復号機能(デコーダ)を内蔵しており、画像データ及び音声データを夫々、所定のプロトコルで符号化してから多重化する。そして時間の同期は、前記画像作成部4443から出力される画像データの元データに対応する画像を画像データ取得部101で取得したタイミングを示すタイムスタンプと、音声入出力部16にて集音されたタイミングを示すタイムスタンプとに基づいて行なわれるとよい。映像処理部105は、映像データを受信すると多重化されている画像データと音声データとに分別し、各々の復号機能により復号して表示部14及び音声入出力部16のスピーカ夫々へ、タイムスタンプに従って画像及び音声を与えて出力させる。
通信処理部106は、映像処理部105により多重化された映像データを、処理部10内蔵のタイマから得られる時間情報に対応させて通信部12の通話相手先との間の通話セッションに対応するポートへ送出する。また通信処理部106は、通話相手先から受信した映像データを映像処理部105へ与える。
認証部102は、なりすましを防ぐため、画像データ取得部101で得られたフレーム画像に基づき、撮像部13に写っている人物が正当なユーザであるか否かを判定する。認証部102は例えば、領域抽出部41にて抽出された顔領域から得られる特徴量と、端末装置1を使用する正当なユーザの特徴量として予め記憶部11に記憶してある特徴量とを照合することによって正当か否かを判定する。認証部102により不当なユーザであると判定された場合には、画像処理部104としての機能を停止するとよい。
選択受付部103は、画像作成部が生成する人物画像の元となる画像を、領域抽出部41で抽出した元の人物被写体領域自体(ライブ画像)とするか、予め記憶部11に記憶してあるユーザ画像とするか、又は、アバター画像とするかの選択を受け付ける。選択受付部103は、通話開始前即ち通話セッションの確立前に操作部15により選択を受け付けておき、通話セッションが確立している間、記憶しておく。
画像処理部104による人物画像作成の処理手順についてフローチャートを参照して説明する。図4は、処理部10の端末用アプリプログラム1Pに基づく処理手順の一例を示すフローチャートである。処理部10は、端末用アプリプログラム1Pが起動されると以下の処理手順を実行する。
処理部10は初期的に、表示部14にアプリ画面を表示させ、アプリ画面の注視を促すメッセージを表示させる(ステップS101)。メッセージを表示させる箇所は、通話相手の人物画像を表示させる領域であることが望ましい。その間、処理部10は、画像処理部104の補正量決定部43にて、標準補正量(φ0 ,θ0 ,ω0 )を決定する(ステップS102)。回転方向の角度ω0 については必須ではない。標準補正量は即ち、撮像方向と、ユーザのアプリ画面を注視する方向との差分である。処理部10は、決定した標準補正量を記憶しておき、以後これを用いて補正量を決定する。上述の通話相手の人物画像を表示させる領域が表示部14の表示領域内で、例えばユーザの操作によって移動した場合、その移動の向き及び距離に応じて標準補正量を修正するようにしてもよい。
処理部10は、通話先のアドレス情報等、接続情報を操作部15により受け付け(ステップS103)、次に選択受付部103により、画像作成部44で作成する人物画像の元画像の選択を受け付け、選択内容を記憶する(ステップS104)。この際、処理部10は、人物画像の姿勢/視線を撮像部13で撮像されるユーザの動きに連動させるか、又は正対する向きのまま固定角度とするかの選択をも受け付けるとよい。処理部10はこの間、バックグラウンドで認証部102により認証を行ない、認証に失敗した場合には、画像処理部104の機能を停止させ、以後の処理を行なわずにメッセージを表示させるとよい。
処理部10は、ステップS101のメッセージを消去し(ステップS105)、受け付けた接続情報に基づき通話相手の端末装置1との通話リクエストをサーバ装置2へ送信する(ステップS106)。サーバ装置2の処理により、通話セッションが確立すると、処理部10は、通信処理部106における処理を開始し(ステップS107)、通話相手の端末装置1から自身向けに送信される映像データを受信し、映像処理部105へ与える。処理部10は、画像処理部104、及び映像処理部105における処理を開始する(ステップS108)。ステップS107,108にて処理部10は、受信した映像データに基づく人物画像の表示部14のアプリ画面への表示及び音声入出力部16からの出力を開始する。処理部10は、撮像部13から得られる画像データ及び音声入出力部16にて入力される音声データに基づく映像データの作成処理、及び通話相手への送信処理を開始する。
処理部10は以後、撮像部13からフレーム画像を取得する都度に、姿勢/視線検出部42で検出される姿勢又は視線(φd ,θd ,ωd )から標準補正量を差し引いた補正量(正対する姿勢/視線からの差分)を決定する(ステップS109)。
処理部10は、決定した補正量を画像作成部44へ与えて、選択されている元画像に基づき人物画像を作成する(ステップS110)。作成された人物画像を元に映像処理部105が映像データを作成し、通信処理部106から通話相手へ向けて送信する(ステップS111)。
処理部10は、アプリの終了を操作部15により検知したか否かを判断し(ステップS112)、検知していないと判断された場合には(S112:NO)、処理をステップS109へ戻す。
アプリの終了を検知したと判断された場合(S112:YES)、処理部10は、通信処理部106により通信部12の通信を終了し(ステップS113)、端末用アプリプログラム1Pに基づく処理を終了する。
図5は、実施の形態1における画像処理部104の処理で生成される情報を示す模式図である。実施の形態1の端末装置1では、処理部10が画像処理部104の機能により、撮像部13にて撮像された画像に対して画像データ取得部101により取得されたフレーム画像Fから領域抽出部41により人物被写体領域Mが抽出される。
姿勢/視線検出部42にて、視線、又は更に顔及び身体等の姿勢について傾き(φd ,θd ,ωd )を検出する。図5では、視線の傾きのみ示している。補正量決定部43は検出された傾きから標準補正量(φ0 ,θ0 ,ω0 )を差し引いて補正量(φc ,θc ,ωc )を決定する。補正量決定部43は図5に示すように、フレーム画像F内における人物被写体領域Mの位置の中央からの変位Lを補正量(移動量)として決定してもよい。
図5において画像作成部44は、元画像として人物被写体領域M(ライブ画像)を用い、補正量φc ,θc 、更に補正量(変位)Lに基づき人物画像を作成し、補正後のフレーム画像F’を出力している。画像処理部104はこのように作成した人物画像を補正後のフレーム画像F’として映像処理部105へ与える。これにより、撮像部13の設置箇所の位置及び角度によらない人物画像を含む映像データを通話相手の端末装置1へ送信することができる。
予め記憶部11に記憶してあるユーザ画像又はアバター画像を使用することが選択受付部103にて選択されており、固定角度を向けた人物画像とすることが選択されている場合、領域抽出部41、姿勢/視線検出部42による処理は必須ではない。
図6は、作成される人物画像の内容例を更に示す模式図である。図6Aは、撮像部13が、ユーザを見上げる向きで撮像するように設置されている場合の撮像画像の一例を示している。例えば撮像部13が、Webカメラであって、デスクトップ型のパーソナルコンピュータである端末装置1の表示部14と並べて設置されて使用される場合である(図1左部参照)。図6Bは、撮像部13が、スマートフォンである端末装置1の筐体における表示部14上方の箇所に設置されている場合である(図1右部参照)。これらの場合、通話中のユーザは、表示部14に表示されている通話相手の画像を注視するので、撮像部13では、正対した画像を撮影することができない。図6A及び図6Bに示すような撮像画像をそのまま、通話相手の端末装置1の表示部14に表示した場合、特に通話相手が話者でいる間、表示される人物画像とは視線が合致せず、通話相手にとってはフラストレーションを生じさせかねない。
図6Cは、画像処理部104の画像作成部44により、元画像として抽出される人物被写体領域を用いて作成される人物画像を示している。上下方向の傾き(仰角)の補正量θc により正対する人物画像が作成されている。図6Bでは上下方向の傾きにより、首が短くなり、肩が盛り上がって写っている。このまま視線のみ目領域のみ補正するのでは、同一人物の人物被写体領域として不自然になるところ、図6Cに示すように、視線のみならず人物被写体を適切に補正させた人物画像の作成が可能である。
図6Dは、画像処理部104の画像作成部44により、元画像としてユーザ画像を用いて作成される人物画像を示している。予め目的別、例えばビジネス用途で撮像しておいたユーザ自身の画像を用いて正対する画像を用い、改まって見える外見の画像でビデオ通話を行なうことができる。このように予め撮影してあるユーザ画像を用いることができるため、対話している人物がユーザ自身であることを認証部102にて認証することで、なりすましを防ぐことができる。アバター画像を用いる場合も同様である。
実施の形態1における端末装置1では、図6C及び図6Dに示すように、画像処理部104の処理により、正対する人物画像が作成できる。これにより、実施の形態1のビデオ通話システム100では、既設の撮像部13を用いつつもソフトウェア的に通話相手の端末装置1の表示部14に正対する人物画像を表示させ、自然な対話を行なうことができる。スマートフォン等の端末装置1を用いた場合、ユーザが手で端末装置1を持ち、俯くようにして表示部14を注視しながら対話することが想定される。この場合、撮像画像はユーザが俯いており、しかもユーザが表示部14に近接し過ぎて不適切な画角で撮像されたものとなりがちである。画像処理部104にて姿勢も正対する人物画像としたり、美化されたユーザ画像又はアバター画像を用いたり、トリミング範囲を変更したりすることで、印象のよい人物画像でのビデオ通話が実現できる。
画像処理部104の機能により、画像作成部44は、姿勢/視線検出部42にて検出した傾きから標準補正量を差し引いて補正量を決定して人物画像を作成する。したがって正対画像のみならず、ユーザが視線を落としたり、視線を外したりした場合であっても画面を注視した場合の角度からの差分だけ、補正された人物画像を作成することができる。これにより、視線が合致する正対画像を基本としつつ、通話相手の端末装置1で表示される人物画像に自然なふるまいを反映させることができ、自然な対話が可能になる。
(実施の形態2)
実施の形態2では、画像の作成は深層学習により予め作成されてある学習モデルに基づいて行なわれる。図7は、実施の形態2における処理部10の機能ブロック図である。実施の形態2における処理部10の構成及び機能は、画像作成部44aの詳細以外は、実施の形態1における機能と同様であるから、共通する構成には同一の符号を付して詳細な説明を省略する。
実施の形態2における画像作成部44aは、深層学習により作成されている学習モデル440aを有している。図8は、学習モデル440aの概要を示す図である。学習モデル440aの深層学習に基づく作成方法は種々の方法が考えられる。例えば図8に示すように、予め多数の多様な姿勢/視線の人物画像(異なる人物でもよい)を用いて、各々の姿勢/視線を精度よく判別するネットワークを、例えばCNN(Convolutional Neural Network )を用いて作成し、出力を正対画像であると固定した場合に逆に入力の画像がどのような画像(元に戻す)となるのかを逆変換により作成する。正対画像ではなく、補正量に基づく角度に姿勢又は視線を向けた人物画像を出力するように作成してもよい。
例えば図8に示すように簡略化し、線図化された入力画像によって学習モデル440aを作成しておく。学習モデル440aを用いて人物画像を作成するに際しては、元の人物被写体領域Mをフィルタにより分解するなどして線図化し、これを学習モデル440aに入力し、入力層又は中間層にて元の人物被写体領域Mのテクスチャを入力することで1つの学習モデル440aからユーザ夫々の人物画像を作成することが可能である。このときテクスチャとして記憶部11に記憶してあるユーザ画像、アバター画像を入力することで、それらの画像に基づく人物画像を作成することも可能である。学習モデル440aは、正対画像のみを出力するモデルではなく、任意の設定角度へ姿勢又は視線を向けた人物の人物画像を出力するモデルとして作成しておいてもよい。
また学習モデル440aは、サーバ装置2又は図示しない他の外部コンピュータにて作成し、端末装置1から取得できるようにしてもよい。また、通話中に別途、端末装置1とサーバ装置2(又は他の外部コンピュータ)との間でWeb通信によりにて動作する学習モデル440aにより提供される画像を取得してもよい。
更にこの学習モデル440aは、GAN(Generative Adversarial Network)を用いてより精度のよい画像を作成するモデルへと向上させることも可能である。図9は、GANに基づく学習モデル440aの概要を示す図である。学習モデル440aと、この学習モデル440aにより作成された画像と本物画像とを判別する識別モデルとを用意し、互いに競い合わせる。学習モデル440aには、多様な姿勢又は視線の人物画像を入力し、正対画像を作成させる。本物画像として正対した姿勢又は視線で撮像された画像を用意する。識別モデルに学習モデル440aにより作成される正対画像(ノイズ)と、本物の画像とで見分けがつかない場合の学習モデル440aへの評価を上昇させて学習を進める。これにより、学習モデル440aによる正対画像がより自然な画像になる。
画像作成部44aは、このようにして予め多数の画像を用いて精度を向上させた学習モデル440aを用いて画像を作成する。画像処理部104の動作が開始した後は、ユーザの顔を撮像した撮像画像を用いて学習を進め、ユーザ夫々の特徴量を反映させたモデルへと進化させるようにしてもよい。
学習モデル440aを用いる場合、端末装置1の使用環境(撮像部13の設置位置及び角度)に対応する標準補正量についても深層学習に取り込んでもよい。具体的には、学習モデル440aに画像データ取得部101で取得したフレーム画像を入力すると、標準補正量で補正した適切な角度のフレーム画像が出力されるようにしてもよい。学習モデル440aでは、視線のみについて出力するようにしてもよい。
上述の実施の形態1及び2にて説明したビデオ通話システム100では、撮像部13で撮像した撮像画像には、1人の人物被写体が写っている例を挙げて説明した。画像処理部104の処理は、複数人の人物被写体が含まれる撮像画像に対しても同様である。例えば画像処理部104は、夫々の姿勢又は視線の撮像方向に対する傾きを検出し、検出された傾きに基づき、姿勢又は視線を、正対方向を標準とした人物画像を作成する。この際に、設定又は選択により、視線のみ、即ち目領域の部分のみ補正するようにして人物画像を作成するか、又は複数人全員、姿勢も含めて補正するようにしてもよい。
上述の実施の形態1及び2にて説明したビデオ通話システム100では、端末装置1同士でいずれも、正対画像を標準とした人物画像を作成する構成とした。しかしながら、2つの装置を用いてビデオ通話を行なうに際し、少なくとも一方の装置に端末装置1を利用して実施するようにしてもよい。
図10は、遠隔診療システム200の概要を示す図である。遠隔診療システム200では、医療者がユーザとして端末装置1を用い、診療を受けるユーザは、表示装置3、撮像装置4、及び音声出力装置5を用いる。端末装置1と表示装置3とは、サーバ装置2を介して通話セッションが確立される。表示装置3は、撮像装置4及び音声出力装置5と接続されており、端末装置1から送信される映像データを復号して表示させ、音声出力装置5から音声を出力させる。表示装置3は、撮像装置4で撮像された画像と、撮像装置4内蔵の音声入力部(マイクロフォン)で集音した音声とを夫々符号化して端末装置1へ、又は、各々を映像データとして符号化の上で多重化して端末装置1へ送信する。
図10に示すように、医療者が用いる端末装置1では、表示装置3から送信される診療対象者の顔又は患部等を撮像した画像を表示しつつ、コミュニケーションに係る音声を出力する。医療者は、表示部14にて画像、及びカルテ等の情報を確認しながら通話相手である診療対象者と対話をすることができる。この際に表示装置3にて、医療者の正対画像を表示させることができ、遠隔診療システム200にて診療を受けるユーザの安心感が高まる。
このように顧客が使用する装置の表示部に正対画像を標準とした人物画像を表示させる顧客向けのシステムでは、サービスの提供者にて端末装置1を用いることで、顧客に対して視線を合致させた画像を表示して満足度を向上させることができる。その他、一方向のみで正対画像を標準とした人物画像を表示させるシステムとしては、コールセンター、司法相談等にも適用可能である。これらの場合、状況に応じてオペレータの人物画像を仮想的なオペレータの画像(アバター画像)を元画像として使用することが好ましい。
いずれの場合であっても、特に三次元モデル(ポリゴン)を使用せずとも画像処理部104の機能によって適切な姿勢/視線の人物画像を作成することができ、ビデオ通話システム100において、通話相手の顔を注視しながら自然な対話が可能になる。一方向のみで画像処理を行なう遠隔診療システム200においても、ユーザは通話相手が正対する画像を確認することができ、対話に安心感を持つことができる。