(57)【特許請求の範囲】
【請求項１】
ビデオライブストリーミングサーバーに適用されるバーチャルプロップ割り当て方法であって、
各バーチャルプロップの配置の地理位置を確定するステップと、
各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定するステップであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されている、ステップと、
ビデオライブストリーミングのプロバイダとして機能する配信者クライアントの現在の地理位置を取得するステップと、
前記配信者クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記配信者クライアントに現在対応するグリッドを取得するステップと、
前記配信者クライアントに現在対応するグリッドに対応するバーチャルプロップがあるときに、当該バーチャルプロップを前記配信者クライアントに割り当てるステップと、
前記配信者クライアントによって送信された配信者ビデオ画像を取得して、前記配信者クライアントによって指示される結合すべきバーチャルプロップの識別子を確定するステップと、
前記配信者ビデオ画像における人物画像の位置を確定するステップと、
前記配信者ビデオ画像における前記人物画像の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記配信者ビデオ画像に重ね合わせて、目標ビデオ画像を生成するステップと、
前記目標ビデオ画像を視聴者クライアントに送信するステップと、
を含む、バーチャルプロップ割り当て方法。
【請求項２】
前記方法は、
前記配信者クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、前記配信者クライアントに対する各バーチャルプロップの位置プロンプト情報を確定するステップと、
前記位置プロンプト情報を前記配信者クライアントに送信するステップと、
をさらに含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項３】
前記配信者クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、前記配信者クライアントに対する各バーチャルプロップの位置プロンプト情報を確定するステップは、
前記マップにおいて、前記配信者クライアントに現在対応するグリッドを中心として、設定範囲のグリッドが全てトラバースされるまで、グリッドのトラバース範囲を徐々に拡大し、トラバースされた、対応するバーチャルプロップがあるグリッドをマーキングするステップ
を含む、請求項２に記載のバーチャルプロップ割り当て方法。
【請求項４】
前記配信者ビデオ画像における人物画像の位置を確定するステップは、
エッジ検出技術によって各フレームの配信者ビデオ画像に対して人物画像のエッジ検出を行って、各フレームの配信者ビデオ画像における人物画像のエッジ位置を取得するステップと、
動き検出技術によって、各フレームの配信者ビデオ画像を処理して、各フレームの配信者ビデオ画像における人物画像のボディ位置を確定するステップと、
各フレームの配信者ビデオ画像における人物画像のエッジ位置とボディ位置を結合して、各フレームの配信者ビデオ画像における人物画像の位置を確定するステップと、
を含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項５】
前記方法は、
前記配信者クライアントが測位サービスを起動していないときに、前記配信者クライアントのカメラが現在設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲に符合するかどうかを判断するステップと、
前記カメラが現在設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲に符合する場合、バーチャルプロップを配信者クライアントに割り当てるステップと、
前記カメラが現在設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲に符合しない場合、前記カメラが現在設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲に符合するまで、カメラの撮影方向を修正するように前記配信者クライアントに促すステップと、
をさらに含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項６】
前記方法は、
前記配信者クライアントが前記配信者クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置に従って、レーダーマップを描画するように、前記配信者クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置を前記配信者クライアントにフィードバックするステップであって、前記レーダーマップには、最も近いバーチャルプロップと前記配信者クライアントの距離及び方向がマーキングされている、ステップ
をさらに含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項７】
前記方法は、
各フレームの配信者ビデオ画像を取得して、前記各フレームの配信者ビデオ画像における人物画像を抽出し、前記各フレームの配信者ビデオ画像から抽出した人物画像を視聴者クライアントに送信するステップであって、前記視聴者クライアントが、前記各フレームの配信者ビデオ画像から抽出された人物画像を、収集された各フレームの視聴者画像の視聴者の手のひらに重ね合わせるようにする、ステップ
をさらに含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項８】
各バーチャルプロップの配置の地理位置を確定するステップは、
視聴者クライアントによって送信されたバーチャルプロップ配置要求を取得するステップであって、前記バーチャルプロップ配置要求は、配置すべきバーチャルプロップ及び配置の地理位置を指示する、ステップと、
前記バーチャルプロップ配置要求に従って、前記配置すべきバーチャルプロップの配置の地理位置を確定するステップと、
を含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項９】
各バーチャルプロップの配置の地理位置を確定するステップは、
人口分布密度に従って各バーチャルプロップの配置の地理位置を確定するステップ
を含む、請求項１に記載のバーチャルプロップ割り当て方法。
【請求項１０】
メモリ及びプロセッサーを含むビデオライブストリーミングサーバーであって、前記メモリにはコンピュータ可読命令が記憶されており、前記コンピュータ可読命令が前記プロセッサーによって実行されたときに、
各バーチャルプロップの配置の地理位置を確定するステップと、
各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定するステップであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されている、ステップと、
ビデオライブストリーミングのプロバイダとして機能する配信者クライアントの現在の地理位置を取得するステップと、
前記配信者クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記配信者クライアントに現在対応するグリッドを取得するステップと、
前記配信者クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記配信者クライアントに割り当てるステップと、
前記配信者クライアントによって送信された配信者ビデオ画像を取得して、前記配信者クライアントによって指示される結合すべきバーチャルプロップの識別子を確定するステップと、
前記配信者ビデオ画像における人物画像の位置を確定するステップと、
前記配信者ビデオ画像における前記人物画像の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記配信者ビデオ画像に重ね合わせて、目標ビデオ画像を生成するステップと、
前記目標ビデオ画像を視聴者クライアントに送信するステップと、
を前記プロセッサーに実行させる、サーバー。
【請求項１１】
前記コンピュータ可読命令が前記プロセッサーによって実行されたときに、
前記配信者クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、前記配信者クライアントに対する各バーチャルプロップの位置プロンプト情報を確定するステップと、
前記位置プロンプト情報を前記配信者クライアントに送信するステップと、
を前記プロセッサーに実行させる、請求項１０に記載のサーバー。
【請求項１２】
各バーチャルプロップの配置の地理位置を確定するステップと、
各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定するステップであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されている、ステップと、
ビデオライブストリーミングのプロバイダとして機能する配信者クライアントの現在の地理位置を取得するステップと、
前記配信者クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記配信者クライアントに現在対応するグリッドを取得するステップと、
前記配信者クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記配信者クライアントに割り当てるステップと、
前記配信者クライアントによって送信された配信者ビデオ画像を取得して、前記配信者クライアントによって指示される結合すべきバーチャルプロップの識別子を確定するステップと、
前記配信者ビデオ画像における人物画像の位置を確定するステップと、
前記配信者ビデオ画像における前記人物画像の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記配信者ビデオ画像に重ね合わせて、目標ビデオ画像を生成するステップと、
前記目標ビデオ画像を視聴者クライアントに送信するステップと、
を１つ又は複数のプロセッサーに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、データ処理技術の分野に関し、具体的には、バーチャルプロップ割り当て方法、サーバー、クライアント及び記憶媒体に関する。
【０００２】
本出願は、２０１７年７月１８日に中国特許庁に提出された、出願番号が２０１７１０５８６８０８.６であって、発明の名称が「バーチャルプロップ割り当て方法、サーバー及びクライアント」である中国特許出願に基づく優先権を主張するものであり、その全内容を本出願に参照により援用する。
【背景技術】
【０００３】
ビデオライブストリーミングの発展に伴い、ビデオライブストリーミングにおける個人ライブストリーミングの割合が増加している。個人ライブストリーミングは、主にビデオライブストリーミングプラットフォームを通じて、アンカーと視聴者との間のインタラクションをビデオの形態で行い、アンカーは、ビデオライブストリーミングプラットフォームを介してアンカービデオ画像を視聴者にブロードキャストすることができる。
【０００４】
バーチャルプロップによりアンカーと視聴者との間のインタラクションを向上させることは、ビデオライブストリーミングプラットフォームが視聴者を維持するための手段であり、例えば、アンカービデオ画像において、仮想ヘッドウェアや仮想フェイスペンダントなどのバーチャルプロップをアンカーに重ね合わせて着用させ、アンカービデオ画像の鮮やかさを高め、それによって、アンカーと視聴者との間のインタラクション效果を深める。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
現在、ビデオライブストリーミングでは、バーチャルプロップの割り当て方式は、主に、バーチャルプロップリストを予め用意して、アンカー又は視聴者がバーチャルプロップリストからバーチャルプロップを選択して、バーチャルプロップの割り当てを実現する。このようなバーチャルプロップリストを予め用意してバーチャルプロップ割り当てを行う方式は、比較的単調であり、アンカー又は視聴者は、バーチャルプロップ割り当て処理でバーチャルプロップの選択操作を行うだけであり、体験の現実感は比較的悪い。
【０００６】
したがって、どのように新しいタイプのバーチャルプロップ割り当て方式を提供して、バーチャルプロップ割り当て方式を豊かにし、バーチャルプロップ割り当て処理におけるアンカー又は視聴者の体験の現実感を向上させるかは、当業者にとって考慮する必要のある問題となっている。
【課題を解決するための手段】
【０００７】
これを考慮して、本出願の様々な実施例は、バーチャルプロップ割り当て方法、サーバー、クライアント及び記憶媒体を提供している。
【０００８】
バーチャルプロップ割り当て方法は、
各バーチャルプロップの配置の地理位置を確定し、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定することであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されている、ことと、
クライアントの現在の地理位置を取得することと、
前記クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記クライアントに現在対応するグリッドを取得することと、
前記クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記クライアントに割り当てることと、
を含む。
【０００９】
バーチャルプロップ割り当て方法は、
クライアントの現在の地理位置に対応する現在の地理位置識別子をサーバーに報告することと、
サーバーによって、前記クライアントの現在の地理位置に対応するマップ内のグリッドに対応するバーチャルプロップがあると判断された場合、前記サーバーによって送信された、当該バーチャルプロップが割り当てられるプロンプト情報を取得することであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されており、各バーチャルプロップの配置の地理位置は前記マップ内に対応するグリッドがある、ことと、
を含む。
【００１０】
サーバーは、メモリ及びプロセッサーを含み、前記メモリにはコンピュータ可読命令が記憶されており、前記コンピュータ可読命令が前記プロセッサーによって実行されたときに、
各バーチャルプロップの配置の地理位置を確定して、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定することであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されている、ことと、
クライアントの現在の地理位置を取得することと、
前記クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記クライアントに現在対応するグリッドを確定することと、
前記クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記クライアントに割り当てることと、
を前記プロセッサーに実行させる。
【００１１】
クライアントは、メモリ及びプロセッサーを含み、前記メモリにはコンピュータ可読命令が記憶されており、前記コンピュータ可読命令が前記プロセッサーによって実行されたときに、
クライアントの現在の地理位置に対応する現在の地理位置識別子をサーバーに報告することと、
サーバーによって、前記クライアントの現在の地理位置に対応するマップ内のグリッドに、対応するバーチャルプロップがあると判断された場合、前記サーバーによって送信された、当該バーチャルプロップが割り当てられるプロンプト情報を取得することであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されており、各バーチャルプロップの配置の地理位置は前記マップ内に対応するグリッドがある、ことと、
を前記プロセッサーに実行させる。
【００１２】
コンピュータ可読命令が記憶されている不揮発性コンピュータ可読記憶媒体であって、前記コンピュータ可読命令が１つ又は複数のプロセッサーによって実行されたときに、
各バーチャルプロップの配置の地理位置を取得し、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定することであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されている、ことと、
クライアントの現在の地理位置を取得することと、
前記クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記クライアントに現在対応するグリッドを取得することと、
前記クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記クライアントに割り当てることと、
を前記１つ又は複数のプロセッサーに実行させる。
【００１３】
コンピュータ可読命令が記憶されている不揮発性コンピュータ可読記憶媒体であって、前記コンピュータ可読命令が１つ又は複数のプロセッサーによって実行されたときに、
クライアントの現在の地理位置に対応する現在の地理位置識別子をサーバーに報告することと、
サーバーによって、前記クライアントの現在の地理位置に対応するマップ内のグリッドに、対応するバーチャルプロップがあると判断された場合、前記サーバーによって送信された、当該バーチャルプロップが割り当てられるプロンプト情報を取得することであって、前記マップは複数のグリッドに予め分割され、各グリッドには対応する地理位置範囲が定義されており、各バーチャルプロップの配置の地理位置は前記マップ内に対応するグリッドがある、ことと、
を前記１つ又は複数のプロセッサーに実行させる。
【００１４】
本出願の１つ又は複数の実施例の詳細は、以下の添付の図面及び説明に記載されている。本出願の他の特徴、目的、及び利点は、明細書、添付の図面、及び添付の特許請求の範囲から明らかになる。
【図面の簡単な説明】
【００１５】
本出願の実施例又は従来技術における技術案をより明確に説明するために、実施例又は従来技術の説明で使用される図面について以下に簡単に説明する。明らかに、以下の説明における図面は本出願の単なる実施例であり、当業者にとっては、創造的な労力なしに提供された図面に従って他の図面もまた得ることができる。
【００１６】
【図１】本出願の実施例によるシステムのアーキテクチャのブロック図である。
【図２】本出願の実施例によるバーチャルプロップ割り当て方法のシグナリングフローチャートである。
【図３】マップをグリッドに分割する概略図である。
【図４】マップ内のバーチャルプロップに対応するグリッドを示す模式図である。
【図５】本出願の実施例によるバーチャルプロップ割り当て方法の他のシグナリングフローチャートである。
【図６】アンカーに対するバーチャルプロップの分布情報の模式図である。
【図７】レーダーマップによってバーチャルプロップとアンカーとの距離及び方向を表す模式図である。
【図８】本出願の実施例によるビデオライブストリーミングのシグナリングフローチャートである。
【図９】本出願の実施例によるバーチャルプロップ割り当て方法のさらに他のシグナリングフローチャートである。
【図１０】本出願の実施例によるビデオライブストリーミングの他のシグナリングフローチャートである。
【図１１】視聴者画像の視聴者の手のひらにアンカー人物画像を重ね合わせた模式図である。
【図１２】本出願の実施例によるサーバーのプログラムモジュールの構成ブロック図である。
【図１３】本出願の実施例によるサーバーのプログラムモジュールの他の構成ブロック図である。
【図１４】本出願の実施例によるサーバーのプログラムモジュールのさらに他の構成ブロック図である。
【図１５】本出願の実施例によるサーバーのプログラムモジュールのさらに他の構成ブロック図である。
【図１６】本出願の実施例によるサーバーのプログラムモジュールのさらに他の構成ブロック図である。
【図１７】本出願の実施例によるサーバーのプログラムモジュールのさらに他の構成ブロック図である。
【図１８】本出願の実施例によるクライアントのプログラムモジュールの構成ブロック図である。
【図１９】本出願の実施例によるサーバーのハードウェア構成ブロック図である。
【図２０】本出願の実施例によるクライアントのハードウェア構成ブロック図である。
【発明を実施するための形態】
【００１７】
本出願の実施例における添付の図面を参照しながら、本出願の実施例における技術案を以下に明確かつ完全に説明し、記載された実施例は本出願の実施例の一部にすぎず、それらの全てではないことは明らかである。本出願の実施例に基づいて、創造的な努力なしに当業者によって得られる他の全ての実施例は、本出願の範囲内にあるものとする。
【００１８】
図１は、本出願の実施例によるバーチャルプロップ割り当て方法を実現するためのシステムのアーキテクチャのブロック図である。図１を参照すると、当該システムは、アンカークライアント１０、サーバー２０、視聴者クライアント３０を含むことができる。
【００１９】
アンカークライアント１０は、ビデオライブストリーミングを行うためにアンカーによって使用されるクライアントと見なすことができ、視聴者クライアント３０は、ライブストリーミングビデオを視聴するために視聴者によって使用されるクライアントと見なすことができる。
【００２０】
アンカーは、ライブストリーミングビデオのプロバイダである。アンカークライアントは、ライブストリーミングビデオを録画するためにアンカーによって使用されるクライアントである。アンカーは、ビデオライブストリーミングを行う前に、既存のアンカーアカウント及びパスワードによってアンカークライアントにログインすることができ、アンカークライアントにログインした後、アンカークライアントは、カメラなどの画像収集装置を介してアンカービデオ画像をリアルタイムで収集し、収集したアンカービデオ画像をサーバーにリアルタイムで送信することができる。
【００２１】
アンカービデオ画像は、アンカークライアントが画像収集装置を介して収集した、アンカー人物画像が含まれる画像である。例えば、アンカーが、アンカークライアントに向いてビデオライブストリーミングを行うときに、アンカークライアントのフロントカメラによって、カメラレンズの範囲内のアンカー人物画像を収集して、アンカービデオ画像を取得することができる。
【００２２】
視聴者は、ライブストリーミングビデオの視聴者である。視聴者クライアントは、アンカーによって録画されたライブストリーミングビデオを視聴するために視聴者が使用するクライアントである。視聴者は、ライブストリーミングビデオを視聴する前に、既存の視聴者アカウント及びパスワードによって視聴者クライアントにログインすることができ、視聴者クライアントにログインした後に、視聴者は、サーバーから送信されたライブストリーミングビデオを視聴者クライアントによって視聴することができる。
【００２３】
サーバー２０は、少なくともビデオライブストリーミングサーバーを含むサービス装置と見なすことができ、サーバー２０はさらに、ＡＲ（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ、拡張現実技術）処理能力、及びＬＢＳ（Ｌｏｃａｔｉｏｎ  Ｂａｓｅｄ  Ｓｅｒｖｉｃｅ、地理位置に基づくサービス）サービス能力を集約することができる。
【００２４】
選択的に、サーバー２０は単一のサーバーによって実現することができ、サーバー２０は、ビデオライブストリーミング能力、ＡＲ処理能力、ＬＢＳサービス能力などを集約することができる。選択的に、サーバー２０は、例えば、ビデオライブストリーミングサーバー、ＡＲサーバー、ＬＢＳサーバーからなるサーバーグループのような、複数のサーバーからなるサーバーグループによっても実現することができ、この場合、ビデオライブストリーミングサーバー、ＡＲサーバー、ＬＢＳサーバーの処理フローはいずれもサーバー２０によって実行されると見なすことができる。
【００２５】
ビデオライブストリーミングを行う場合に、アンカークライアントは、収集したアンカービデオ画像をサーバーに送信することができ、サーバーは、アンカービデオ画像を処理した後、処理されたアンカービデオ画像を視聴者クライアントにブロードキャストすることができる。
【００２６】
バーチャルプロップリストに基づいてバーチャルプロップを選択する従来のバーチャルプロップ割り当て方式とは異なり、本出願の実施例では、バーチャルプロップ割り当てを実現するために、サーバー２０は、各バーチャルプロップの配置の地理位置を確定し、ＬＢＳに基づいて、アンカー又は視聴者の地理位置の変化に従って、その地理位置が当該バーチャルプロップの配置の地理位置に対応するアンカー又は視聴者にバーチャルプロップを割り当てることで、バーチャルプロップの割り当てを実現する。
【００２７】
本出願の実施例では、アンカーにバーチャルプロップを割り当てることができ、アンカーに割り当てられたバーチャルプロップは、実際のアンカービデオ画像に重ね合わせることができ、これにより、バーチャルプロップを有するアンカービデオ画像を合成して、バーチャルプロップと実際のアンカービデオ画像との結合を実現する。
【００２８】
選択的に、本出願の実施例では、バーチャルプロップを視聴者に割り当てることもでき、視聴者に割り当てられたバーチャルプロップは、アンカーが視聴者に割り当てられたバーチャルプロップを取得するように、視聴者によって視聴されるアンカーに関連付けることができ、視聴者に割り当てられたバーチャルプロップは、視聴者自身によって保持してもよく、視聴者が割り当てられたバーチャルプロップをアンカーに与えることが許可される。
【００２９】
アンカーにバーチャルプロップを割り当てる場合を使用してバーチャルプロップ割り当て方法について説明する。図２は、選択可能なバーチャルプロップ割り当て方法のシグナリングフローを示す。図１及び図２を参照すると、当該フローは以下のステップを含むことができる。
【００３０】
ステップＳ１０、サーバーはマップを複数のグリッドに予め分割し、各グリッドの地理位置範囲を定義する。
【００３１】
本出願の実施例では、バーチャルプロップ割り当てを実現するときに、マップを複数のグリッドに予め分割し、マップ上で分割された各グリッドの地理位置範囲を定義することができ、選択的に、ステップＳ１０は、複数回のバーチャルプロップ割り当てにおいて１回だけ実行されてもよく、複数回のバーチャルプロップ割り当ては予め確定された各グリッドの地理位置範囲に基づいて実施できる。
【００３２】
選択的に、マップは、測量された街路図を特定の比率に従って縮小して描画したグラフィック結果であり得る。本出願の実施例では、グリッドのサイズを設定し、マップ内の各グリッドのサイズが設定されたグリッドのサイズに対応するように、設定されたグリッドのサイズに従ってマップを複数のグリッドに分割することができる。
【００３３】
一例として正方形グリッドを使用して、正方形グリッドの辺の長さを設定した後、図３に示すように、本出願の実施例は、マップを複数の正方形グリッドに分割し、各正方形グリッドの辺の長さが設定された正方形グリッドの辺の長さに対応する。
【００３４】
ステップＳ１１、サーバーは、各バーチャルプロップの配置の地理位置を確定し、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するグリッドを確定する。
【００３５】
バーチャルプロップの割り当てを行うときに、本出願の実施例では、割り当て可能な各バーチャルプロップを確定し、各バーチャルプロップの配置の地理位置を確定することができる（選択的に、各バーチャルプロップの配置の地理位置をランダムに定義することができ、人口分布密度に従って各バーチャルプロップの配置の地理位置を定義することもでき、一般的に、人口分布密度が大きい領域に対応する地理位置に配置されるバーチャルプロップが多い）。選択的に、サーバーによって割り当て可能なバーチャルプロップをランダムに確定することができ、予め設定されたバーチャルプロップ選択方策に従ってバーチャルプロップライブラリから現在割り当て可能なバーチャルプロップを確定することもでき、バーチャルプロップライブラリは、サーバーに設けられた、バーチャルプロップを記憶するデータベースであってもよい。
【００３６】
なお、各バーチャルプロップの配置の地理位置を確定してバーチャルプロップの配置を行うことは、プロップを実際の地理位置に配置することではないことに留意されたい。バーチャルプロップの性質に基づいて、本出願の実施例における各バーチャルプロップの配置の地理位置を確定してバーチャルプロップの配置を行うことは、バーチャルプロップの仮想配置と見なすことができ、実質的には、バーチャルプロップと確定された配置地理位置との間のデータ上の対応関連である。
【００３７】
本出願の実施例では、各バーチャルプロップの配置の地理位置を確定した後、各バーチャルプロップの配置の地理位置、及び各グリッドの地理位置範囲に従って、各バーチャルプロップの配置の地理位置がある地理位置範囲に対応するグリッドを確定し、各バーチャルプロップに対応するグリッドを確定することができる。図４に示すように、バーチャルプロップの配置の地理位置、及び各グリッドの地理位置範囲に従って、各バーチャルプロップに対応するグリッドを確定することができ、１つのグリッドに対応するバーチャルプロップは少なくとも１つであり、図４の黒い点はバーチャルプロップを表す。
【００３８】
ステップＳ１２、アンカークライアントは、アンカークライアントの現在の地理位置識別子をサーバーにリアルタイムで報告する。
【００３９】
さらに、サーバーが各バーチャルプロップの配置の地理位置を確定した後、サーバーはバーチャルプロップの配置のプロンプト情報をアンカークライアントに送信することができる。
【００４０】
アンカーにバーチャルプロップを取得する要求がある場合、アンカークライアントはバーチャルプロップの割り当てを要求するための要求情報をサーバーに送信し、アンカークライアントは、アンカークライアントの現在の地理位置識別子をサーバーにリアルタイムで報告する必要がある。選択的に、地理位置識別子は、ｗｉｆｉ（登録商標）Ｍａｃ（ｗｉｆｉ（登録商標）の物理的なｍａｃアドレス）、ｃｅｌｌＩＤ（オペレーター基地局）、及び測位（例えばＧＰＳ測位）によって得られる緯度及び経度のいずれか１つを含むが、これらに限定されない。
【００４１】
選択的に、本出願の実施例は必ずしも、サーバーがバーチャルプロップの配置のプロンプト情報をアンカークライアントに送信した後、アンカークライアントが、バーチャルプロップの割り当てを要求するための要求情報をサーバーに送信するのではない。アンカークライアントは、アンカーにバーチャルプロップを取得する要求があるときに、いつでもアンカークライアントによって、バーチャルプロップの割り当てを要求するための要求情報をサーバーに送信することができ、この場合、現在配置のバーチャルプロップがある場合、その後の処理を実行することができ、現在配置のバーチャルプロップがない場合、バーチャルプロップがまだ配置されていないプロンプトをアンカークライアントに行うことができ、処理は終了する。
【００４２】
さらに、本出願の実施例は、アンカークライアントによって送信されたバーチャルプロップの割り当てを要求するための要求情報に基づいて、サーバーがステップＳ１１を実行してバーチャルプロップの配置を行ってもよい。
【００４３】
選択的に、ステップＳ１２におけるアンカークライアントは、バーチャルプロップを割り当てるようにサーバーに要求するアンカークライアントであり得る。
【００４４】
ステップＳ１３、サーバーは、前記アンカークライアントの現在の地理位置識別子に従って、前記アンカークライアントの現在の地理位置を更新する。
【００４５】
選択的に、サーバーは、ＬＢＳサービスに基づいて、前記アンカークライアントの現在の地理位置識別子に従って、前記アンカークライアントの現在の地理位置を更新することができる。
【００４６】
地理位置識別子がアンカークライアントの測位によって得られた緯度及び経度である場合、アンカークライアントの地理位置として当該緯度及び経度を直接使用することができる。
【００４７】
地理位置識別子がｗｉｆｉ（登録商標）Ｍａｃ、ｃｅｌｌＩＤなどの地理位置を直接に反映することができない情報である場合、サーバーは、地理位置識別子と地理位置との対応関係を記録することによって、アンカークライアントによってリアルタイムで報告される地理位置識別子及び当該対応関係に従って、前記アンカークライアントの現在の地理位置をリアルタイムで更新することができる。
【００４８】
地理位置識別子がｗｉｆｉ（登録商標）Ｍａｃであることを例として、本出願の実施例は、ソーシャルプラットフォーム（例えば、インスタントメッセージングプラットフォーム）などによって収集された大量のユーザーによって報告されたｗｉｆｉ（登録商標）Ｍａｃと緯度及び経度によって、ｗｉｆｉ（登録商標）Ｍａｃと緯度及び経度との対応関係を分析して、地理位置識別子と地理位置との対応関係を取得し、さらに、アンカークライアントによってリアルタイムで報告されるｗｉｆｉ（登録商標）Ｍａｃに従って、ｗｉｆｉ（登録商標）Ｍａｃと緯度及び経度との対応関係によって、前記アンカークライアントの現在の緯度及び経度（即ち地理位置）をリアルタイムで更新することができる。
【００４９】
選択的に、緯度及び経度は、地理位置の一種の選択可能な表現に過ぎず、本出願の実施例は、他の地理位置の表現形態を除外しない。
【００５０】
選択的に、ステップＳ１２からステップＳ１３は、サーバーがアンカークライアントの現在の地理位置を取得するための選択可能な方法と見なすことができる。
【００５１】
ステップＳ１４、サーバーは、前記マップ内の前記アンカークライアントの現在の地理位置に対応するグリッドを確定して、前記アンカークライアントに現在対応するグリッドを取得する。
【００５２】
本出願の実施例では、アンカークライアントの現在の地理位置、及び各グリッドの地理位置範囲に従って、アンカークライアントの現在の地理位置がある地理位置範囲に対応するグリッドを確定して、アンカークライアントに現在対応するグリッドを確定することができる。
【００５３】
ステップＳ１５、サーバーは、前記アンカークライアントに現在対応するグリッドに対応するバーチャルプロップがあると判断した場合、当該バーチャルプロップを前記アンカークライアントに割り当てる。
【００５４】
さらに、サーバーは、当該バーチャルプロップを割り当てるプロンプト情報をアンカークライアントに送信することができる。
【００５５】
本出願の実施例によって提供されるバーチャルプロップ割り当て方法では、サーバーはマップを複数のグリッドに予め分割し、各グリッドの地理位置範囲を定義することができるので、バーチャルプロップ割り当てを行うときに、各バーチャルプロップの配置の地理位置を確定して、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するグリッドを確定することができ、さらに、サーバーは、アンカークライアントの現在の地理位置を取得して、前記マップ内の前記アンカークライアントの現在の地理位置に対応するグリッドを確定して、前記アンカークライアントに現在対応するグリッドを取得することができ、サーバーが、前記アンカークライアントに現在対応するグリッドに対応するバーチャルプロップがあると判断した場合、当該バーチャルプロップを前記アンカークライアントに割り当てることができ、これにより、バーチャルプロップの割り当てを完成する。
【００５６】
これにより分かるように、本出願の実施例によって提供される新しいタイプのバーチャルプロップ割り当て方法は、バーチャルプロップの配置の地理位置に対応するマップ内のグリッドとアンカークライアントの現在の地理位置に対応するマップ内のグリッドとのマッチングに基づいて、バーチャルプロップの割り当てを実現することができ、また、バーチャルプロップを検索する処理で、アンカーは、アンカークライアントに対応するグリッドがバーチャルプロップに対応するグリッドに対応するように位置を移動する必要があり、それによって、バーチャルプロップ割り当て処理中におけるアンカーの体験の現実感を向上させる。
【００５７】
選択的に、アンカーに割り当てられるバーチャルプロップ及びバーチャルプロップの配置の地理位置は、視聴者によって決定されてもよい。視聴者は、バーチャルプロップを購入してアンカーに与えることができ、視聴者がバーチャルプロップを購入した後直接アンカーに与える従来の方法とは異なり、本出願の実施例では、視聴者がバーチャルプロップを購入した後、視聴者がバーチャルプロップの配置の地理位置を指示し（さらに、与えられるアンカーを指示することもできる）、アンカーが当該バーチャルプロップに対応するグリッドに移動してこそ、アンカーはバーチャルプロップを取得することができる。
【００５８】
それに対応して、視聴者は、視聴者クライアントを介してバーチャルプロップを購入し、バーチャルプロップの配置の地理位置を指示することができ（さらに、与えられるアンカーを指示することもできる）、それによって、視聴者クライアントは、バーチャルプロップの配置の要求をサーバーに送信することができ、前記バーチャルプロップの配置の要求は配置すべきバーチャルプロップ及び配置の地理位置を指示し、サーバーは視聴者クライアントによって送信されたバーチャルプロップの配置の要求を取得した後、前記バーチャルプロップの配置の要求に従って、前記配置すべきバーチャルプロップの配置の地理位置を確定して、バーチャルプロップの配置の地理位置の確定を実現することができる。
【００５９】
さらに、視聴者クライアントが、バーチャルプロップが与えられるアンカーを指示した場合、ステップＳ１５では、サーバーは、前記アンカークライアントに現在対応するグリッドに対応するバーチャルプロップがあると判断した場合に、さらに、前記アンカークライアントに対応するアンカーと視聴者クライアントによって指示される当該バーチャルプロップの与えられるアンカーとが対応するかどうかを判断し、サーバーによって、前記アンカークライアントに現在対応するグリッドに対応するバーチャルプロップがあり、且つ、前記アンカークライアントに対応するアンカーと視聴者クライアントによって指示された当該バーチャルプロップが与えられるアンカーとが対応すると判断したときに、当該バーチャルプロップを前記アンカークライアントに割り当てる。
【００６０】
選択的に、本出願の実施例では、各バーチャルプロップに配置の有効時間を設けることができ、バーチャルプロップの配置の有効時間に限って、アンカークライアントは、バーチャルプロップに対応するグリッドに移動することによって、バーチャルプロップを取得することができる。配置の時間が配置の有効時間に達し、且つ、クライアントに割り当てられていないバーチャルプロップがある場合、当該バーチャルプロップと対応するグリッドとの関係を取り消す必要があるため、当該バーチャルプロップはクライアントに割り当てられず、即ち、当該バーチャルプロップと対応するグリッドとの関係を取り消すことによって、その後、クライアントが当該バーチャルプロップに対応する元のグリッドに到達しても、当該バーチャルプロップは割り当てられない。
【００６１】
選択的に、アンカーがバーチャルプロップを検索する利便性を向上させ、さらに、バーチャルプロップ割り当て処理中のアンカーの体験の現実感を向上させるために、サーバーは、前記アンカークライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、アンカークライアントに対する各バーチャルプロップの位置プロンプト情報を確定し、アンカークライアントが表示を行うように、前記位置プロンプト情報をアンカークライアントにフィードバックし、それによって、アンカーは、アンカークライアントによって表示された位置プロンプト情報に基づいてバーチャルプロップの検索を行うことができる。
【００６２】
選択的に、図５は、バーチャルプロップ割り当て方法の他のシグナリングフローを示す。図５を参照すると、当該フローは以下のことを含むことができる。
【００６３】
ステップＳ２０、サーバーは、マップを複数のグリッドに予め分割し、各グリッドの地理位置範囲を定義する。
【００６４】
ステップＳ２１、サーバーは、各バーチャルプロップの配置の地理位置を確定し、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するグリッドを確定する。
【００６５】
ステップＳ２２、アンカークライアントは、アンカークライアントの現在の地理位置識別子をサーバーにリアルタイムで報告する。
【００６６】
ステップＳ２３、サーバーは、前記アンカークライアントの現在の地理位置識別子に従って、前記アンカークライアントの現在の地理位置を更新する。
【００６７】
ステップＳ２４、サーバーは、前記アンカークライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記アンカークライアントに現在対応するグリッドを取得する。
【００６８】
ステップＳ２５、サーバーは、前記アンカークライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、前記アンカークライアントに現在対応するグリッドに対する各バーチャルプロップに対応するグリッドの分布情報を確定する。
【００６９】
サーバーは、アンカークライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、アンカークライアントに現在対応するグリッドに対する各バーチャルプロップに対応するグリッドの分布情報を確定することができ、前記分布情報は、アンカークライアントに対するバーチャルプロップの位置を表すことができる。
【００７０】
選択的に、前記分布情報は、グラフィック形式でマップに重ね合わせることができ、例えば、マップにおいて、アンカークライアントに現在対応するグリッドを中心として、設定された範囲のグリッドが全てトラバースされるまで、グリッドのトラバース範囲を徐々に拡大し、トラバースされた、対応するバーチャルプロップがあるグリッドをマーキングして、前記分布情報を確定する。設定された範囲のグリッドは事前に定義されてもよく、アンカークライアントに現在対応するグリッドを中心とする一定の範囲のグリッドであってもよく、選択的に、設定された範囲のグリッドは全てのグリッドであってもよい。
【００７１】
図６に示すように、サーバーは、まず、マップにおいて、アンカークライアントに現在対応するグリッドを中心として、先に、アンカークライアントに現在対応するグリッドの周囲のグリッドをトラバースし、次に、トラバースされた各グリッドの周囲のグリッドをトラバースし、設定された範囲のグリッドが全てトラバースされるまでトラバースし、それによって、トラバースされた、対応するバーチャルプロップがあるグリッドをマーキングして、前記分布情報を確定する。図６では、矢印はアンカーの位置を示す。
【００７２】
選択的に、図５に示すステップＳ２５は、サーバーが前記アンカークライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、アンカークライアントに対する各バーチャルプロップの位置プロンプト情報を確定する１つの選択可能な形態であり、即ち、前記分布情報は、前記位置プロンプト情報の１つの選択可能な形態であり、本出願の実施例では、位置プロンプト情報として、ステップＳ２５に示された分布情報以外に、前記アンカークライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、アンカークライアントに対する各バーチャルプロップの距離及び方向を確定し、アンカークライアントに対する各バーチャルプロップの距離及び方向を、前記位置プロンプト情報として使用することができる。
【００７３】
選択的に、位置プロンプト情報の他の表現形態はレーダーマップであってもよく、本出願の実施例では、前記アンカークライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、レーダーマップを描画して、レーダーマップに、前記アンカークライアントに現在対応するグリッドに対する各バーチャルプロップに対応するグリッドの距離及び方向（例えば、アンカークライアントに現在対応するグリッドの中心地理位置に対する、バーチャルプロップに対応するグリッドの中心地理位置の距離及び方向）がマーキングされる。レーダーマップの１つの選択可能な形態は図７に示すようであり、図７中の矢印はアンカー現在位置を示し、黒い点は最も近いバーチャルプロップを示す。
【００７４】
ステップＳ２６、サーバーは、前記分布情報をアンカークライアントに送信する。
【００７５】
前記分布情報は、アンカークライアントに対するバーチャルプロップの位置を表すことができ、サーバーは、前記分布情報をアンカークライアントに送信することができ、それにより、アンカークライアントが当該分布情報を表示して、アンカークライアントが配置のバーチャルプロップを検索することができる。
【００７６】
選択的に、ステップＳ２６は、サーバーが前記位置プロンプト情報をアンカークライアントに送信する１つの選択可能な形態のみである。
【００７７】
ステップＳ２７、アンカークライアントは、前記分布情報を表示する。
【００７８】
選択的に、ステップＳ２７は、アンカークライアントが前記位置プロンプト情報を表示する１つの選択可能な形態のみである。
【００７９】
ステップＳ２８、サーバーは、前記アンカークライアントに現在対応するグリッドに対応するバーチャルプロップがあると判断した場合、当該バーチャルプロップを前記アンカークライアントに割り当てる。
【００８０】
これにより分かるように、図５に示すフローでは、アンカーは、サーバーによって送信された、アンカークライアントに対する各バーチャルプロップの位置プロンプト情報に基づいて、バーチャルプロップを検索することができ、バーチャルプロップ割り当て処理におけるアンカーの体験の現実感を向上させる。
【００８１】
サーバーがバーチャルプロップをアンカークライアントに割り当てた後、アンカークライアントは、バーチャルプロップ取得のプロンプト情報を受信することができ、アンカークライアントがアンカーの指示に基づいて当該バーチャルプロップを使用する場合、サーバーは、アンカークライアントによって収集されたアンカービデオ画像において当該バーチャルプロップの画像（例えば、バーチャルプロップは、着用可能な仮想ヘッドウェア、フェイスペンダント、リムペンダントなどであってもよく、又は、画像背景と使用可能な仮想背景などであってもよい）を重ね合わせて、アンカービデオ画像とバーチャルプロップの画像とが組み合わされた、仮想と現実とを組み合わせた目標ビデオ画像を取得することができ、それによって、ライブストリーミング中のビデオ画像の鮮やかさを向上させる。
【００８２】
選択的に、図２に示すフローに基づいて、アンカークライアントは、割り当てられたバーチャルプロップを使用した後、図８に示す方法によってビデオライブストリーミングを実現することができる。図８は、本出願の実施例によって提供されるビデオライブストリーミングのシグナリングフローを示す。図１及び図８に示すように、当該フローは以下のことを含むことができる。
【００８３】
ステップＳ３０、アンカークライアントは、アンカービデオ画像をサーバーに送信し、結合すべきバーチャルプロップの識別子を指示する。
【００８４】
アンカークライアントは、カメラなどの画像収集装置によってアンカービデオ画像を収集して、サーバーに送信することができ、アンカークライアントはビデオライブストリーミングを行う過程において、収集した各フレームのアンカービデオ画像をサーバーにリアルタイムで送信することができる。
【００８５】
選択的に、アンカービデオ画像を収集する画像収集装置は、アンカークライアントに対応する端末装置（例えば、アンカークライアントが搭載された携帯電話）が提供するカメラを使用してもよく、よりよい撮像効果を得るために、アンカークライアントに対応する端末装置に接続されるＡＲカメラ（例えば、３６０パノラマ撮影機能を備えたＡＲカメラ）を使用してアンカービデオ画像の撮影を行ってもよい。
【００８６】
アンカークライアントが、割り当てられたバーチャルプロップを取得したときに、アンカーが当該バーチャルプロップをアセンブリする場合（即ち、当該バーチャルプロップの画像を収集されたアンカービデオ画像と結合する必要がある）、アンカークライアントは、結合すべきバーチャルプロップの識別子をサーバーに送信することができる。なお、アンカークライアントが割り当てられたバーチャルプロップを取得することは、アンカークライアントに当該バーチャルプロップの識別子が関連付けられ、当該バーチャルプロップの使用権限を有すると見なすことができる。
【００８７】
ステップＳ３１、サーバーは、前記アンカービデオ画像におけるアンカー人物画像の位置を確定する。
【００８８】
アンカーは一般的に、ビデオライブストリーミング中に静止しているのではないので、バーチャルプロップの画像とアンカービデオ画像とを重ねるときの位置合わせを実現するために、本出願の実施例は、エッジ検出技術及び動き検出技術によって、各フレームのアンカービデオ画像におけるアンカー人物画像の位置を確定することができる。
【００８９】
例えば、エッジ検出技術によって、各フレームのアンカービデオ画像に対してアンカー人物画像のエッジ検出を行って、各フレームのアンカービデオ画像におけるアンカー人物画像のエッジ位置を取得し、動き検出技術によって、各フレームのアンカービデオ画像を処理して、各フレームのアンカービデオ画像におけるアンカー人物画像のボディ位置を確定することができ、それによって、各フレームのアンカービデオ画像におけるアンカー人物画像のエッジ位置及びボディ位置を結合して、各フレームのアンカービデオ画像におけるアンカー人物画像の位置を確定する。
【００９０】
本出願の実施例では、リアルのアンカービデオ画像及びバーチャルプロップの画像の位置合わせの精度を高めるためにエッジ検出技術が使用されることに留意されたい。画像におけるエッジが、一定数のピクセルの輝度が変化する場所であると考えられる場合、エッジ検出技術は、一定数の輝度変化点を計算するための導関数としてみなすことができ、そして、アンカーは静止していないので、動き検出技術を使用してアンカーの動きを捉え、それによって、実際のアンカービデオ画像とバーチャルプロップ画像とを組み合わせた後のアンカー画像の一貫性を保証し、バーチャルプロップの画像と実際のアンカービデオ画像の読み込み速度の不一致を減らす。
【００９１】
動き検出技術の原理は、顔追跡技術を参照することができ、モデルに基づく追跡方法を使用できる。例えば、顔追跡技術のように、まず、顔認識技術によってアンカーの顔モデルを確定し、入力された各フレームのアンカービデオ画像に対して、スライドウィンドウによって、前記顔モデルのマッチングを行って、各フレームの画像における顔モデルの特徴の顔アライメント座標を出力することができ、それに対応して、動き検出技術は様々な人体の検出に係り、その原理は顔追跡技術と類似し、相違点はアンカーの各ボディの特徴を表す特徴モデル（顔モデルを含む）を設けることが必要であることである。
【００９２】
ステップＳ３２、サーバーは、前記アンカービデオ画像における前記アンカー人物画像の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせて、目標ビデオ画像を生成する。
【００９３】
ステップＳ３２は、アンカービデオ画像においてバーチャルプロップの画像のレンダリングを行うことと見なすことができ、サーバーは、アンカークライアントによって送信された前記アンカービデオ画像に重ね合わせるバーチャルプロップの識別子を取得した後、前記識別子に従って、対応するバーチャルプロップの画像を取得することができ、それによって、前記アンカービデオ画像における前記アンカー人物画像の位置に従って、バーチャルプロップがアンカービデオ画像においてレンダリングされて、バーチャルプロップの画像とアンカービデオ画像が結合された目標ビデオ画像を生成するように、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせる。
【００９４】
選択的に、前記アンカービデオ画像における前記アンカー人物画像の位置に従って、バーチャルプロップの画像を前記アンカービデオ画像に重ね合わせる方式は、バーチャルプロップのタイプに従って調整することができる。バーチャルプロップがアンカー人物画像の着用可能なバーチャルプロップである場合、バーチャルプロップの画像を各フレームのアンカービデオ画像における前記アンカー人物画像の目標部位の位置に重ね合わせることができ、目標部位は、設定されたバーチャルプロップの着用部位と見なすことができ、例えば、バーチャルプロップが眼鏡である場合、目標部位は目になる。
【００９５】
バーチャルプロップが仮想背景である場合、各フレームのアンカービデオ画像における前記アンカー人物画像の位置に従って、各フレームのアンカービデオ画像における背景位置を確定し、当該バーチャルプロップを各フレームのアンカービデオ画像の背景位置に重ね合わせることができる。
【００９６】
ステップ３１は、サーバーが、前記アンカービデオ画像における前記アンカー人物画像以外の他の動き目標のアンカービデオ画像における位置を確定することであってもよく、それに対応して、ステップ３２は、サーバーが前記アンカービデオ画像における前記動き目標の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせて、目標ビデオ画像を生成することであってもよい。
【００９７】
具体的に、サーバーは、アンカークライアントによって送信された前記アンカービデオ画像に重ね合わせるバーチャルプロップの識別子を取得した後に、前記識別子に従って対応するバーチャルプロップの画像を取得することができ、それによって、前記アンカービデオ画像における前記動き目標の位置に従って、バーチャルプロップがアンカービデオ画像においてレンダリングされて、バーチャルプロップの画像とアンカービデオ画像が結合された目標ビデオ画像を生成するように、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせる。
【００９８】
選択的に、前記アンカービデオ画像における前記動き目標の位置に従って、バーチャルプロップの画像を前記アンカービデオ画像に重ね合わせる方式は、動き目標のカテゴリに従って、バーチャルプロップのタイプに関連付けることができる。例えば、アンカービデオ画像では、アンカーは小さなペットを抱いて、サーバーは、動き目標のカテゴリが小型ペットであり、バーチャルプロップのタイプが仮想ペットフードであることを認識し、当該仮想ペットフードをアンカービデオ画像における小型ペットの位置に重ね合わせることができる。
【００９９】
ステップＳ３３、サーバーは、前記目標ビデオ画像を視聴者クライアントに送信する。
【０１００】
さらに、サーバーは、前記目標ビデオ画像をアンカークライアントに送信することもできる。
【０１０１】
さらに、サーバーは、ＧＰＵ（グラフィックプロセッサー）ハードウェア加速を起動することができ、サーバー側は、ＧＰＵハードウェア加速機能を起動して、ビデオ画像処理の速度を向上させ、バーチャルプロップがレンダリングされるときのＣＰＵ（中央処理装置）への負担を軽減し、処理性能を向上させることができる。本出願の実施例では、サーバーのＧＰＵは、ステップＳ３１及びステップＳ３２の実行を主に担うことができ、即ち、ＧＰＵは、エッジ検出技術及び動き検出技術に基づいて、バーチャルプロップの画像とアンカービデオ画像とを重ね合わせるときの位置合わせを保証するように、前記アンカービデオ画像におけるアンカー人物画像の位置を確定して、前記アンカービデオ画像における前記アンカー人物画像の位置に従って、バーチャルプロップの画像を前記アンカービデオ画像に重ね合わせて、目標ビデオ画像を生成することができる。
【０１０２】
以上、アンカークライアントの地理位置及び各バーチャルプロップの配置の地理位置に基づいて、バーチャルプロップ割り当てを実現する内容、及びサーバーのＡＲ処理能力に基づいて、アンカービデオ画像にバーチャルプロップの画像を重ね合わせることを実現する内容について説明した。本出願の実施例は、アンカークライアントで測位サービスを起動していない（例えば、アンカークライアントは、サーバーがアンカークライアントの地理位置識別子を取得することを許可しない）ときに、バーチャルプロップ割り当てを行うための技術案をさらに提供する。
【０１０３】
アンカークライアントが測位サービスを起動していないので、バーチャルプロップの割り当ては、アンカークライアントの実際の地理位置に基づいて実現することができない。本出願の実施例は、アンカークライアントのカメラ方向に基づくバーチャルプロップ割り当て技術案を提供することができ、アンカークライアントは、カメラの現在の設定方向からずれている角度を定期的に又はリアルタイムでサーバーにアップロードすることができ、サーバーによって、カメラの現在の設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲にマッチングすると判断された場合、バーチャルプロップをアンカークライアントに割り当てることができ、サーバーによって、カメラの現在の設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲にマッチングしないと判断された場合、カメラの現在の設定方向からずれている角度がバーチャルプロップの割り当てに対応する角度範囲にマッチングするまで、アンカークライアントがカメラの撮影方向を修正するように促すことができる。
【０１０４】
例えば、バーチャルプロップをアンカーの真北に配置するように定義することができ、アンカーがカメラを介して真北を向いている場合、アンカーがバーチャルプロップを捉えていると判断し、そうでない場合、カメラが真北を向くまで、カメラの撮影方向を修正するようにアンカーに促すことができる。
【０１０５】
バーチャルプロップを視聴者に割り当てる場合を利用してバーチャルプロップ割り当て方法を紹介する。図９は、選択可能なバーチャルプロップ割り当て方法のさらに他のシグナリングフローを示す。図１及び図９に示すように、当該フローは以下のことを含むことができる。
【０１０６】
ステップＳ４０、サーバーは、マップを複数のグリッドに予め分割し、各グリッドの地理位置範囲を定義する。
【０１０７】
選択的に、ステップＳ４０の説明は図２に示すステップＳ１０を参照することができる。
【０１０８】
ステップＳ４１、サーバーは、各バーチャルプロップの配置の地理位置を確定し、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するグリッドを確定する。
【０１０９】
選択的に、ステップＳ４１の説明は図２に示すステップＳ１１を参照することができる。
【０１１０】
なお、視聴者にバーチャルプロップを割り当てることはアンカーによって起動されてもよい。アンカーは、現在ライブストリーミングビデオを視聴している視聴者にバーチャルプロップを配置するようにサーバーに要求することができ、本出願の実施例では、各設定範囲の地域のうち、アンカーを視聴している視聴者の総数が設定された数に達する目標地域を確定することができ、それによって、バーチャルプロップの配置の地域が目標地域に対応すると確定し、目標地域のうちランダムに確定された地理位置が、バーチャルプロップの配置の地理位置として使用される。
【０１１１】
ステップＳ４２、視聴者クライアントは、視聴者クライアントの現在の地理位置識別子をサーバーにリアルタイムで報告する。
【０１１２】
さらに、サーバーは、バーチャルプロップの配置のプロンプト情報を視聴者クライアントに送信することができ、視聴者クライアントは前記バーチャルプロップの配置のプロンプト情報に応答して、バーチャルプロップを検索するための要求情報をサーバーに送信することができる。視聴者クライアントは、バーチャルプロップの配置のプロンプト情報に応答して、バーチャルプロップを検索するモードに入り、バーチャルプロップを検索するモードに入る兆候は、視聴者クライアントがバーチャルプロップを検索するための要求情報をサーバーに送信する必要があるということであり、それによって、サーバーにその後のフローを実行させる。
【０１１３】
同時に、視聴者クライアントは、サーバーがその後の処理を実行するように、現在の地理位置識別子をサーバーにリアルタイムで報告することができる。
【０１１４】
ステップＳ４３、サーバーは、前記視聴者クライアントの現在の地理位置識別子に従って、前記視聴者クライアントの現在の地理位置を更新する。
【０１１５】
選択的に、ステップＳ４２からステップＳ４３は、サーバーが視聴者クライアントの現在の地理位置を取得するための１つの選択可能な形態と見なすことができる。
【０１１６】
ステップＳ４４、サーバーは、前記視聴者クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記視聴者クライアントに現在対応するグリッドを取得する。
【０１１７】
ステップＳ４５、サーバーは、前記視聴者クライアントに現在対応するグリッドに対応するバーチャルプロップがあると判断した場合、当該バーチャルプロップを前記視聴者クライアントに割り当てる。
【０１１８】
さらに、サーバーは、当該バーチャルプロップが割り当てられるプロンプト情報を視聴者クライアントに送信することができる。
【０１１９】
これにより分かるように、図２に示すアンカーへのバーチャルプロップの割り当て及び図９に示す視聴者へのバーチャルプロップの割り当てのフローは基本的に同様であり、両方はともにＬＢＳに基づいて、マップ内のバーチャルプロップの配置の地理位置に対応するグリッドとマップ内のクライアントの現在の地理位置に対応するグリッドとのマッチングに従って、バーチャルプロップの割り当てを実現することである。また、バーチャルプロップを検索する処理で、アンカー又は視聴者は、クライアントに対応するグリッドが、バーチャルプロップに対応するグリッドに対応するように位置を移動する必要があり、それによって、バーチャルプロップ割り当てにおける、アンカー又は視聴者の体験の現実感を向上させる。
【０１２０】
さらに、視聴者クライアントのバーチャルプロップの検索をより便利にするために、サーバーは、各バーチャルプロップの配置の地理位置及び視聴者クライアントの現在の地理位置に従って、視聴者クライアントに最も近いバーチャルプロップを確定することができ、サーバーは、視聴者クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置を視聴者クライアントにフィードバックすることができる。
【０１２１】
視聴者クライアントは、視聴者クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置に従って、レーダーマップを描画することができ、当該レーダーマップには、最も近いバーチャルプロップと視聴者クライアントの距離及び方向がマーキングされてもよい。
【０１２２】
選択的に、視聴者クライアントに最も近いバーチャルプロップが視聴者クライアントからの距離及び方向は、視聴者クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置に従って確定できる。
【０１２３】
選択的に、視聴者にバーチャルプロップを割り当てることがアンカーによって起動される場合、全てのバーチャルプロップが視聴者によって取得された後（即ち、全てのバーチャルプロップが視聴者クライアントに割り当てられた）、アンカークライアントは、設定のイベントをトリガーすることができ、例えば、アンカークライアントは、特別なタイトルとメダルを取得する賞イベントなどをトリガーすることができる。
【０１２４】
選択的に、上述のように、配置のバーチャルプロップは、配置の有効時間を有してもよい。
【０１２５】
選択的に、本出願の実施例は、ＡＲ処理能力を結合して、アンカー人物画像が視聴者画像の手のひら上で動作できるように、視聴者クライアントによって収集された視聴者画像的手のひらにアンカー人物画像を重ね合わせることができ、ビデオライブストリーミングの形態を豊かにする。
【０１２６】
選択的に、図１０は、本出願の実施例によって提供されるビデオライブストリーミングの他のシグナリングフローを示す。図１０を参照すると、当該フローは以下のことを含むことができる。
【０１２７】
ステップＳ５０、アンカークライアントは、アンカービデオ画像の各フレームをサーバーに送信する。
【０１２８】
ステップＳ５１、サーバーは、各フレームのアンカービデオ画像におけるアンカー人物画像を抽出し、各フレームのアンカービデオ画像から抽出されたアンカー人物画像を視聴者クライアントに送信する。
【０１２９】
選択的に、サーバーは、視聴者クライアントによって送信された視聴モード切替指令を受信したときに、ステップＳ５１を実行してもよく、即ち、サーバーは、視聴者クライアントによって送信された視聴モード切替指令を受信したときに、前記各フレームのアンカービデオ画像におけるアンカー人物画像を抽出し、各フレームのアンカービデオ画像から抽出されたアンカー人物画像を視聴者クライアントに送信し、そうでない場合、サーバーは、各フレームのアンカービデオ画像又はバーチャルプロップが重ね合わせられた各フレームのアンカービデオ画像を視聴者クライアントに送信する。
【０１３０】
本出願の実施例では、少なくとも２つの視聴モードを設けることができ、例えば、第１の視聴モード及び第２の視聴モードを設け、視聴者クライアントは、第１の視聴モードでスクリーンを介してサーバーによってブロードキャストされるアンカービデオ画像、又はバーチャルプロップが重ね合わせられたアンカービデオ画像を視聴することができ、視聴者クライアントは、第２の視聴モードでカメラを起動して、視聴者画像を撮影し、アンカー人物画像を視聴者画像の手のひら上に重ね合わせることができる。
【０１３１】
選択的に、上記視聴モード切替指令は、第２の視聴モードへの切替指令であってもよく、視聴者クライアントが第２の視聴モードに切り替えるときに、対応する視聴モード切替指令をサーバーに送信することができ、サーバーが当該視聴モード切替指令を受信した後、受信したアンカービデオ画像からアンカー人物画像を抽出して、アンカー人物画像を視聴者画像の手のひらに重ね合わせて表示することができる。
【０１３２】
選択的に、本出願の実施例では、グリーンスクリーン技術によってアンカービデオ画像からアンカー人物画像を抽出することができ、アンカーはグリーンスクリーン背景でライブストリーミングを行うことができ、それによって、アンカークライアントはグリーンスクリーン背景の各フレームのアンカービデオ画像を収集することができ、サーバーはグリーンスクリーン背景の各フレームのアンカービデオ画像を受信した後、各フレームのアンカービデオ画像におけるアンカー人物画像の抽出を実現するために、各フレームのアンカービデオ画像からグリーンスクリーン背景とアンカー人物画像を分離することができる。
【０１３３】
ステップＳ５２、視聴者クライアントは、各フレームの視聴者画像を収集し、各フレームの視聴者画像における視聴者の手のひらの位置を確定する。
【０１３４】
選択的に、本出願の実施例では、視聴者クライアントは、エッジ検出技術及び動き検出技術を結合して、各フレームの視聴者画像における視聴者の手のひらの位置を確定することができ、それによって、アンカー人物画像が各フレームの視聴者画像の手のひらに重ね合わせられるときに、位置合わせを確保することができる。
【０１３５】
本出願の実施例では、視聴者クライアントは、エッジ検出技術によって、各フレームの視聴者画像に対して視聴者人物画像のエッジ検出を行って、動き検出技術によって、各フレームの視聴者画像を処理して、各フレームの視聴者画像における視聴者人物画像のボディ位置を確定することができ、それによって、各フレームの視聴者画像における視聴者人物画像のエッジ位置及びボディ位置を結合して、各フレームの視聴者画像における視聴者手のひらの位置を確定する。
【０１３６】
ステップＳ５３、視聴者クライアントは、各フレームの視聴者画像における視聴者の手のひらの位置に基づき、各フレームのアンカービデオ画像から抽出されたアンカー人物画像を各フレームの視聴者画像の視聴者の手のひらに重ね合わせる。
【０１３７】
選択的に、アンカークライアントがＡＲカメラを使用してアンカービデオ画像を収集する場合、抽出されたアンカー人物画像は、３Ｄ形態と見なすことができ、視聴者画像の視聴者の手のひらに当該３Ｄ形態のアンカー人物画像を重ね合わせることができる。
【０１３８】
アンカークライアントが携帯電話などによって提供されるカメラを使用してアンカービデオ画像を収集する場合、抽出されたアンカー人物画像は２Ｄ平面の形態と見なすことができ、視聴者画像の視聴者の手のひらに重ね合わせられたアンカー人物画像は２Ｄであり得る。さらに、視聴者クライアントは、３Ｄ人物画像モデルを事前設定することができ、２Ｄ形態のアンカー人物画像は、３Ｄ人物画像モデルと結合して、３Ｄ形態のアンカー人物画像を得ることができ、それによって、３Ｄ形態のアンカー人物画像を各フレームの視聴者画像における視聴者の手のひらに重ね合わせることができる。
【０１３９】
図１１は、視聴者画像の視聴者の手のひらにアンカー人物画像を重ね合わせる模示図を示し、参照できる。
【０１４０】
図１０に示す方法は、各フレームのアンカービデオ画像から抽出されたアンカー人物画像を各フレームの視聴者画像の視聴者の手のひらに重ね合わせることによって、視聴者画像の視聴者の手のひらに重ね合わせられたアンカー人物画像をアンカーの実際の動作に同期させ、視聴者画像の視聴者の手のひらに重ね合わせられたアンカー人物画像の現実感を向上させることができる。
【０１４１】
選択的に、図１０に示す方法の代わりとして、サーバーは、１番目のフレーム又は当該１番目のフレームを含む複数のフレームのアンカービデオ画像からアンカー人物画像を抽出し、抽出されたアンカー人物画像を視聴者クライアントに送信し、視聴者クライアントによってアンカー人物画像を視聴者画像の視聴者の手のひら上に重ね合わせてもよい。その後、サーバーは、各フレームのアンカービデオ画像からアンカー人物画像を抽出する必要はなく、各フレームのアンカービデオ画像におけるアンカー人物画像の動作を分析して、各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令を生成することができ、サーバーは、各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令を視聴者クライアントに送信し、それによって、視聴者クライアントは各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令に従って、視聴者画像の視聴者の手のひらに重ね合わせられたアンカー人物画像の動作を制御することができ、それによって、視聴者画像の視聴者の手のひらに重ね合わせられたアンカー人物画像の動作を、実際のアンカー動作に同期させ、視聴者画像の視聴者の手のひらに重ね合わせられたアンカー人物画像の現実感を向上させる。
【０１４２】
本出願の実施例によって提供されるバーチャルプロップ割り当て方法は、バーチャルプロップの配置の地理位置に対応するマップ内のグリッドとクライアントの現在の地理位置に対応するマップ内のグリッドとのマッチングに基づいて、バーチャルプロップの割り当てを実現することができ、バーチャルプロップの割り当て方式を豊かにし、また、バーチャルプロップを検索する処理で、クライアントは、クライアントに対応するグリッドがバーチャルプロップに対応するグリッドに対応するように位置を移動する必要があり、それによって、バーチャルプロップ割り当て中の体験の現実感を向上させる。
【０１４３】
本出願の実施例は、ＡＲ技術に基づいて、バーチャルプロップをアンカービデオ画像に重ね合わせてもよく、アンカービデオ画像の鮮やかさを向上させ、また、アンカー人物画像を視聴者クライアントによって収集された視聴者画像の手のひらに重ね合わせるとともに、アンカー人物画像の動作の同期を保証することができ、ビデオライブストリーミングの形態を豊かにする。
【０１４４】
本出願の実施例によって提供されるサーバーを以下に紹介する。後述するサーバーの内容は、サーバーが本出願の実施例によって提供されるバーチャルプロップ割り当て方法を実現するために設ける必要があるプログラムモジュールと見なすことができる。後述するサーバーの内容は上述したバーチャルプロップ割り当て方法の内容に対応付けて参照することができる。
【０１４５】
図１２は、本出願の実施例によって提供されるサーバーのプログラムモジュールの構成ブロック図である。図１２を参照すると、当該サーバーは、
各バーチャルプロップの配置の地理位置を確定して、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定するためのバーチャルプロップグリッド確定モジュール１００であって、前記マップは複数のグリッドに予め分割され、各グリッドに対応する地理位置範囲が定義されている、バーチャルプロップグリッド確定モジュール１００と、
クライアントの現在の地理位置を取得するためのクライアント位置取得モジュール１１０と、
前記クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記クライアントに現在対応するグリッドを取得するためのクライアントグリッド確定モジュール１２０と、
前記クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記クライアントに割り当てるためのバーチャルプロップ第１割り当てモジュール１３０と、
を含むことができる。
【０１４６】
選択的に、前記クライアントがアンカークライアントである場合、図１３は、サーバーのプログラムモジュールの他の構成ブロック図を示し、図１２及び図１３に示すように、当該サーバーは、
前記クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、クライアントに対する各バーチャルプロップの位置プロンプト情報を確定するための位置プロンプト情報確定モジュール１４０と、
前記位置プロンプト情報を前記クライアントに送信するための位置プロンプト情報送信モジュール１５０と、
をさらに含んでもよい。
【０１４７】
選択的に、位置プロンプト情報確定モジュール１４０が前記クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、クライアントに対する各バーチャルプロップの位置プロンプト情報を確定することは、具体的に、
前記クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、前記クライアントに現在対応するグリッドに対する各バーチャルプロップに対応するグリッドの分布情報を確定することを含む。
【０１４８】
選択的に、位置プロンプト情報確定モジュール１４０が、前記クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って、前記クライアントに現在対応するグリッドに対する各バーチャルプロップに対応するグリッドの分布情報を確定することは、具体的に、
前記マップにおいて、前記クライアントに現在対応するグリッドを中心として、設定された範囲のグリッドが全てトラバースされるまで、グリッドのトラバース範囲を徐々に拡大し、トラバースされた対応するバーチャルプロップがあるグリッドをマーキングして、前記分布情報を確定することを含む。
【０１４９】
選択的に、前記クライアントがアンカークライアントである場合、図１４は、サーバーのプログラムモジュールのさらに他の構成ブロック図を示し、図１２及び図１４に示すように、当該サーバーは、
前記クライアントによって送信されたアンカービデオ画像を取得して、前記クライアントによって指示される結合すべきバーチャルプロップの識別子を確定し、前記アンカービデオ画像におけるアンカー人物画像の位置を確定し、前記アンカービデオ画像における前記アンカー人物画像の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせて、目標ビデオ画像を生成し、前記目標ビデオ画像を視聴者クライアントに送信するためのバーチャルプロップ重ね合わせモジュール１６０をさらに含んでもよい。
【０１５０】
選択的に、バーチャルプロップ重ね合わせモジュール１６０が前記アンカービデオ画像におけるアンカー人物画像の位置を確定することは、具体的に、
エッジ検出技術によって、各フレームのアンカービデオ画像に対してアンカー人物画像のエッジ検出を行って、各フレームのアンカービデオ画像におけるアンカー人物画像のエッジ位置を取得し、動き検出技術によって、各フレームのアンカービデオ画像を処理して、各フレームのアンカービデオ画像におけるアンカー人物画像のボディ位置を確定することと、
各フレームのアンカービデオ画像におけるアンカー人物画像のエッジ位置及びボディ位置を結合して、各フレームのアンカービデオ画像におけるアンカー人物画像の位置を確定することと、
を含む。
【０１５１】
選択的に、バーチャルプロップ重ね合わせモジュール１６０が前記アンカービデオ画像における前記アンカー人物画像の位置に従って、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせて、目標ビデオ画像を生成することは、具体的に、
前記バーチャルプロップが着用可能なバーチャルプロップである場合、バーチャルプロップの画像を各フレームのアンカービデオ画像における前記アンカー人物画像の目標部位の位置に重ね合わせることであって、前記目標部位が設定されたバーチャルプロップの着用部位である、こと、又は
前記バーチャルプロップが仮想背景である場合、各フレームのアンカービデオ画像における前記アンカー人物画像の位置に従って、各フレームのアンカービデオ画像における背景位置を確定して、前記バーチャルプロップを各フレームのアンカービデオ画像の背景位置に重ね合わせること
を含む。
【０１５２】
選択的に、前記クライアントがアンカークライアントである場合、図１５は、サーバーのプログラムモジュールのさらに他の構成ブロック図を示し、図１２及び図１５に示すように、当該サーバーは、
前記クライアントが測位サービスを起動していないときに、前記クライアントのカメラが設定方向から現在ずれている角度がバーチャルプロップ割り当てに対応する角度範囲に符合するかどうかを判断し、前記カメラが設定方向から現在ずれている角度がバーチャルプロップ割り当てに対応する角度範囲に符合する場合、バーチャルプロップをアンカークライアントに割り当て、前記カメラが設定方向からずれている角度がバーチャルプロップ割り当てに対応する角度範囲に符合しない場合、前記カメラが設定方向から現在ずれている角度がバーチャルプロップ割り当てに対応する角度範囲に符合するまで、前記クライアントがカメラの撮影方向を修正するように促すためのバーチャルプロップ第２割り当てモジュール１７０をさらに含んでもよい。
【０１５３】
選択的に、前記クライアントが視聴者クライアントである場合、図１６は、本出願の実施例によって提供されるサーバーのプログラムモジュールのさらに他の構成ブロック図を示し、図１２及び図１６に示すように、当該サーバーは、
前記クライアントが前記クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置に従ってレーダーマップを描画するように、前記クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置を前記クライアントにフィードバックするための位置フィードバックモジュール１８０であって、前記レーダーマップには、最も近いバーチャルプロップと前記クライアントの距離及び方向がマーキングされている、位置フィードバックモジュール１８０をさらに含んでもよい。
【０１５４】
選択的に、前記クライアントが視聴者クライアントである場合、図１７は、本出願の実施例によって提供されるサーバーのプログラムモジュールのさらに他の構成ブロック図を示し、図１２及び図１７に示すように、当該サーバーは、
各フレームのアンカービデオ画像を取得し、前記各フレームのアンカービデオ画像におけるアンカー人物画像を抽出し、前記視聴者クライアントが各フレームのアンカービデオ画像から抽出されたアンカー人物画像を収集した各フレームの視聴者画像の視聴者の手のひら上に重ね合わせるように、前記各フレームのアンカービデオ画像から抽出されたアンカー人物画像を視聴者クライアントに送信するためのアンカー人物画像抽出送信モジュール１９０をさらに含んでもよい。
【０１５５】
選択的に、前記クライアントが視聴者クライアントである場合、図１７に示すサーバーのアンカー人物画像抽出送信モジュール１９０の機能は、以下の機能に置き換えることもでき、１番目のフレーム又は当該１番目のフレームを含む複数のフレームのアンカービデオ画像からアンカー人物画像を抽出し、視聴者クライアントがアンカー人物画像を視聴者画像の視聴者の手のひら上に重ね合わせるように、抽出されたアンカー人物画像を視聴者クライアントに送信し、各フレームのアンカービデオ画像におけるアンカー人物画像の動作を分析して、各フレームのアンカービデオ画像に対応するアンカー人物画像の動作指令を生成し、視聴者クライアントが各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令に従って、視聴者画像の視聴者手のひら上に重ね合わせられたアンカー人物画像の動作を制御するように、各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令を視聴者クライアントに送信する。
【０１５６】
選択的に、バーチャルプロップグリッド確定モジュール１００が各バーチャルプロップの配置の地理位置を確定することは、具体的に、
視聴者クライアントによって送信されたバーチャルプロップの配置の要求を取得し、前記バーチャルプロップの配置の要求は、配置すべきバーチャルプロップ及び配置の地理位置を指示する、ことと、
前記バーチャルプロップの配置の要求に従って、前記配置すべきバーチャルプロップの配置の地理位置を確定することと、
を含むことができる。
【０１５７】
選択的に、サーバーはさらに、各バーチャルプロップの配置の有効時間を確定し、配置の時間が配置の有効時間に達し、且つ、クライアントに割り当てられていないバーチャルプロップがある場合、当該バーチャルプロップと対応するグリッドとの関係を取り消すことができる。
【０１５８】
本出願の実施例はさらにクライアントを提供し、後述するクライアントは、クライアントが本出願の実施例によって提供されるバーチャルプロップ割り当て方法を実現するために設けるプログラムモジュールと見なすことができる。後述するクライアントの内容は上述したバーチャルプロップ割り当て方法の内容に対応付けて参照することができる。
【０１５９】
図１８は、本出願の実施例によって提供されるクライアントのプログラムモジュールの構成ブロック図である。図１８を参照すると、当該クライアントは、
クライアントの現在の地理位置に対応する現在の地理位置識別子をサーバーに報告するための地理位置識別子報告モジュール２００と、
サーバーによって、前記クライアントの現在の地理位置に対応するマップ内のグリッドに対応するバーチャルプロップがあると判断された場合、前記サーバーによって送信された当該バーチャルプロップが割り当てられるプロンプト情報を取得するバーチャルプロップ割り当てプロンプト取得モジュール２１０であって、前記マップは複数のグリッドに予め分割され、各グリッドに対応する地理位置範囲が定義されており、各バーチャルプロップの配置の地理位置は前記マップ内に対応するグリッドがある、バーチャルプロップ割り当てプロンプト取得モジュール２１０と、
を含むことができる。
【０１６０】
選択的に、前記クライアントがアンカークライアントである場合、前記クライアントはさらに、前記サーバーによって送信された前記クライアントに対する各バーチャルプロップの位置プロンプト情報を受信し、前記位置プロンプト情報は前記クライアントに現在対応するグリッド、及び各バーチャルプロップに対応するグリッドに従って前記サーバーによって確定される。
【０１６１】
選択的に、前記クライアントが視聴者クライアントである場合、前記クライアントは、前記サーバーによって送信された前記クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置を受信し、前記クライアントの現在の地理位置、及び最も近いバーチャルプロップの配置の地理位置に従ってレーダーマップを描画し、前記レーダーマップには最も近いバーチャルプロップと前記クライアントの距離及び方向がマーキングされている。
【０１６２】
選択的に、前記クライアントがアンカークライアントである場合、前記クライアントはさらに、アンカービデオ画像をサーバーに送信し、結合すべきバーチャルプロップの識別子を指示し、前記サーバーによって送信された、前記識別子に対応するバーチャルプロップの画像を前記アンカービデオ画像に重ね合わせた目標ビデオ画像を取得する。
【０１６３】
選択的に、前記クライアントがアンカークライアントである場合、前記クライアントはさらに、前記クライアントが測位サービスを起動していないときに、前記カメラが設定方向から現在ずれている角度がバーチャルプロップ割り当てに対応する角度範囲に符合する場合、前記サーバーによって送信された、当該バーチャルプロップが割り当てられるプロンプト情報を取得し、前記カメラが設定方向から現在ずれている角度がバーチャルプロップ割り当てに対応する角度範囲に符合しない場合、前記サーバーによって送信された、カメラの撮影方向を修正するように促す情報を取得する。
【０１６４】
選択的に、前記クライアントが視聴者クライアントである場合、前記クライアントはさらに、前記サーバーによって送信された各フレームのアンカービデオ画像から抽出されたアンカー人物画像を取得し、各フレームの視聴者画像を収集して、前記各フレームの視聴者画像における視聴者の手のひらの位置を確定し、前記各フレームの視聴者画像における視聴者の手のひらの位置に従って、各フレームのアンカービデオ画像から抽出されたアンカー人物画像を前記各フレームの視聴者画像の視聴者の手のひら上に重ね合わせる。
【０１６５】
選択的に、前記クライアントが視聴者クライアントである場合、前記クライアントはさらに、１番目のフレーム又は当該１番目のフレームを含む複数のフレームのアンカービデオ画像からサーバーによって抽出されるアンカー人物画像を取得し、アンカー人物画像を視聴者画像の視聴者の手のひら上に重ね合わせ、サーバーによって送信された各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令を取得し、各フレームのアンカービデオ画像に対応するアンカー人物画像動作指令に従って、視聴者画像の視聴者の手のひら上に重ね合わせるアンカー人物画像の動作を制御する。
【０１６６】
図１９は、サーバーのハードウェア構成を示す。図１９を参照すると、サーバーのハードウェア構成は、少なくとも１つのプロセッサー１９０１、少なくとも１つの通信インタフェース１９０２、少なくとも１つのメモリ１９０３、及び少なくとも１つの通信バス１９０４を含むことができる。
【０１６７】
本出願の実施例では、プロセッサー１９０１、通信インタフェース１９０２、メモリ１９０３、通信バス１９０４の数は少なくとも１つであり、プロセッサー１９０１、通信インタフェース１９０２、メモリ１９０３は通信バス１９０４を介して互いの間の通信を完成する。
【０１６８】
選択的に、通信インタフェース１９０２は、例えば、ＧＳＭ（登録商標）モジュールのインタフェースのような通信モジュールのインタフェースであってもよい。
【０１６９】
プロセッサー１９０１は、中央処理装置（ＣＰＵ）、又は特定用途向け集積回路（ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、又は本出願の実施例を実施するように構成された１つ又は複数の集積回路であり得る。
【０１７０】
メモリ１９０３は、高速ＲＡＭを含むことができ、また例えば少なくとも１つの磁気ディスクメモリのような不揮発性メモリ（ｎｏｎ-ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ）を含むこともできる。
【０１７１】
メモリ１９０３にはコンピュータ可読命令が記憶されており、プロセッサー１９０１がメモリ１９０３に記憶されているコンピュータ可読命令を実行したときに、
各バーチャルプロップの配置の地理位置を確定し、各バーチャルプロップの配置の地理位置に従って、各バーチャルプロップに対応するマップ内のグリッドを確定することであって、前記マップは複数のグリッドに予め分割され、各グリッドに対応する地理位置範囲が定義されている、ことと、
クライアントの現在の地理位置を取得することと、
前記クライアントの現在の地理位置に対応する前記マップ内のグリッドを確定して、前記クライアントに現在対応するグリッドを取得することと、
前記クライアントに現在対応するグリッドに対応するバーチャルプロップがある場合、当該バーチャルプロップを前記クライアントに割り当てることと、
をプロセッサー１９０３に実行させる。
【０１７２】
選択的に、前記プログラムの詳しい機能及び拡張機能について、上記サーバーの対応する内容の説明を参照することができる。
【０１７３】
図２０は、クライアントのハードウェア構成を示す。図２０を参照すると、クライアントのハードウェア構成は、少なくとも１つのプロセッサー２００１、少なくとも１つの通信インタフェース２００２、少なくとも１つのメモリ２００３、及び少なくとも１つの通信バス２００４を含むことができる。
【０１７４】
本出願の実施例では、プロセッサー２００１、通信インタフェース２００２、メモリ２００３、通信バス２００４の数は少なくとも１つであり、プロセッサー２００１、通信インタフェース２００２、メモリ２００３は通信バス２００４を介して互いの間の通信を完成する。
【０１７５】
選択的に、通信インタフェース２００２は、例えば、ＧＳＭ（登録商標）モジュールのインタフェースのような通信モジュールのインタフェースであってもよい。
【０１７６】
プロセッサー２００１は、中央処理装置（ＣＰＵ）、又は特定用途向け集積回路（ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、又は本出願の実施例を実施するように構成される１つ又は複数の集積回路であり得る。
【０１７７】
メモリ２００３は、高速ＲＡＭを含むことができ、また例えば少なくとも１つの磁気ディスクメモリのような不揮発性メモリ（ｎｏｎ-ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ）を含むこともできる。
【０１７８】
メモリ２００３にはコンピュータ可読命令が記憶されており、プロセッサー２００１がメモリ２００３に記憶されているコンピュータ可読命令を実行したときに、
クライアントの現在の地理位置に対応する現在の地理位置識別子をサーバーに報告することと、
サーバーによって、前記クライアントの現在の地理位置に対応するマップ内のグリッドに対応するバーチャルプロップがあると判断された場合、前記サーバーによって送信された当該バーチャルプロップが割り当てられるプロンプト情報を取得することであって、前記マップは複数のグリッドに予め分割され、各グリッドに対応する地理位置範囲が定義されており、各バーチャルプロップの配置の地理位置は前記マップ内のグリッドに対応する、ことと、
をプロセッサー２００３に実行させる。
【０１７９】
本明細書における各実施例は漸進的に記載され、各実施例は、他の実施例との相違点に焦点を当て、各実施例間の同じ又は類似の部分は互いに参照することができる。実施例に開示されている装置は、実施例に開示されている方法に対応するので、説明は比較的簡単であり、関連する部分は方法部分を参照することができる。
【０１８０】
当業者はさらに、本明細書に開示されている実施例に関連して説明された様々な実施例のユニット及びアルゴリズムのステップが、電子ハードウェア、コンピュータソフトウェア、又はその両方の組み合わせによって実施され得ることを認識することができる。ハードウェアとソフトウェアの互換性を明確に説明するために、様々な実施例の構成要素及びステップは、上記の説明において機能に関して一般的に説明されている。これらの機能がハードウェアで実行されるかソフトウェアで実行されるかは、技術案の特定の適用及び設計上の制約に依存する。当業者は、各特定の適用について記載された機能を実現するために異なる方法を使用することができるが、そのような実現は本出願の範囲を超えると見なされるべきではない。
【０１８１】
本明細書に開示されている実施例に関連して説明されている方法又はアルゴリズムのステップは、ハードウェア、プロセッサーによって実行されるソフトウェアモジュール、又はそれらの組み合わせで直接実施することができる。ソフトウェアモジュールは、ランダムアクセスメモリ（ＲＡＭ）、メモリ、読み出し専用メモリ（ＲＯＭ）、電気的にプログラム可能なＲＯＭ、電気的に消去可能なプログラム可能なＲＯＭ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、又は当該技術分野において既知の他の任意の形態の記憶媒体に配置することができる。
【０１８２】
開示されている実施例の上記の説明は、当業者が本出願を実現又は使用することを可能にする。これらの実施例に対する様々な修正が当業者には明らかであり、本明細書で定義されている一般的な原理は、本出願の主旨又は範囲から逸脱することなく他の実施例で実施することができる。したがって、本出願は、本明細書に示されている実施例に限定されず、本明細書に開示されている原理及び新規な特徴と一致する最も広い範囲に符合する。
【図１】
0006916888.tif 000002
【図２】
0006916888.tif 000003
【図３】
0006916888.tif 000004
【図４】
0006916888.tif 000005
【図５】
0006916888.tif 000006
【図６】
0006916888.tif 000007
【図７】
0006916888.tif 000008
【図８】
0006916888.tif 000009
【図９】
0006916888.tif 000010
【図１０】
0006916888.tif 000011
【図１１】
0006916888.tif 000012
【図１２】
0006916888.tif 000013
【図１３】
0006916888.tif 000014
【図１４】
0006916888.tif 000015
【図１５】
0006916888.tif 000016
【図１６】
0006916888.tif 000017
【図１７】
0006916888.tif 000018
【図１８】
0006916888.tif 000019
【図１９】
0006916888.tif 000020
【図２０】
0006916888.tif 000021