(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023026531
(43)【公開日】2023-02-24
(54)【発明の名称】バーチャルキャラクター生成方法、装置、電子機器、記憶媒体及びコンピュータプログラム
(51)【国際特許分類】
G06T 13/40 20110101AFI20230216BHJP
【FI】
G06T13/40
【審査請求】有
【請求項の数】15
【出願形態】OL
【公開請求】
(21)【出願番号】P 2022211477
(22)【出願日】2022-12-28
(31)【優先権主張番号】202210244262.7
(32)【優先日】2022-03-11
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】100106518
【弁理士】
【氏名又は名称】松谷 道子
(74)【代理人】
【識別番号】100189555
【弁理士】
【氏名又は名称】徳山 英浩
(72)【発明者】
【氏名】李 傑
(72)【発明者】
【氏名】趙 晨
(57)【要約】
【課題】本開示は、バーチャルキャラクター生成方法、装置、電子機器、記憶媒体及びコンピュータプログラムを提供し、人工知能技術分野に関し、特に、コンピュータビジョン、バーチャル・拡張現実、メタバースの技術分野に関する。
【解決手段】前記方法の具体的な解決手段は、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得して、複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成して、第1の3次元バーチャルキャラクターの検知特徴を特定して、前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得することと、
前記複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成することと、
前記第1の3次元バーチャルキャラクターの検知特徴を特定することと、
前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成することとを含むバーチャルキャラクター生成方法。
【請求項2】
請求項1に記載の方法であって、
前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成することは、
前記検知特徴と所定のスタイル特徴との差分値を特定することと、
前記差分値が収束するかどうかを特定することと、
前記差分値が収束すると特定された場合、現在の第1の3次元バーチャルキャラクターを前記第2の3次元バーチャルキャラクターとすることと、
前記差分値が収束しないと特定された場合、前記複数の周波数領域点データを調整し、前記複数の周波数領域点データをレンダリングする操作へ戻ることとを含むバーチャルキャラクター生成方法。
【請求項3】
請求項1に記載の方法であって、
前記点データは、点座標データと色データとを含むバーチャルキャラクター生成方法。
【請求項4】
請求項3に記載の方法であって、
前記複数の周波数領域点データを調整することは、
前記複数の周波数領域点データのうちの各周波数領域点データに対して、
前記各周波数領域点データの点法線を特定することと、
前記点法線の伸びる方向に沿って前記各周波数領域点データを調整することとを含むバーチャルキャラクター生成方法。
【請求項5】
請求項2に記載の方法であって、
前記第1の3次元バーチャルキャラクターの検知特徴を特定することは、
CLIPモデルを用いて前記第1の3次元バーチャルキャラクターを処理し、前記第1の3次元バーチャルキャラクターの検知特徴を取得することを含むバーチャルキャラクター生成方法。
【請求項6】
請求項1に記載の方法であって、
対照的言語画像事前学習モデル(CLIPモデル)を用いて、スタイル記述情報に基づいて前記所定のスタイル特徴を特定することをさらに含むバーチャルキャラクター生成方法。
【請求項7】
初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得する変換モジュールと、
前記複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成するレンダリングモジュールと、
前記第1の3次元バーチャルキャラクターの検知特徴を特定する第1の特定モジュールと、
前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成する生成モジュールとを含むバーチャルキャラクター生成装置。
【請求項8】
請求項7に記載の装置であって、
前記生成モジュールは、
前記検知特徴と所定のスタイル特徴との差分値を特定する第1の特定サブモジュールと、
前記差分値が収束するかどうかを特定する第2の特定サブモジュールと、
前記差分値が収束すると特定された場合、現在の第1の3次元バーチャルキャラクターを前記第2の3次元バーチャルキャラクターとする取得サブモジュールと、
前記差分値が収束しないと特定された場合、前記複数の周波数領域点データを調整し、前記複数の周波数領域点データをレンダリングする操作へ戻る調整サブモジュールとを含むバーチャルキャラクター生成装置。
【請求項9】
請求項8に記載の装置であって、
前記点データは、点座標データと色データとを含むバーチャルキャラクター生成装置。
【請求項10】
請求項9に記載の装置であって、
前記調整サブモジュールは、
前記複数の周波数領域点データのうちの各周波数領域点データに対して、前記各周波数領域点データの点法線を特定する特定ユニットと、
前記点法線の伸びる方向に沿って前記各周波数領域点データを調整する調整ユニットとを含むバーチャルキャラクター生成装置。
【請求項11】
請求項10に記載の装置であって、
前記第1の特定モジュールは、
CLIPモデルを用いて前記第1の3次元バーチャルキャラクターを処理し、前記第1の3次元バーチャルキャラクターの検知特徴を取得することを含むバーチャルキャラクター生成装置。
【請求項12】
請求項7~11のいずれか1項に記載の装置であって、
CLIPモデルを用いて、スタイル記述情報に基づいて前記所定のスタイル特徴を特定する第2の特定モジュールをさらに含むバーチャルキャラクター生成装置。
【請求項13】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されたメモリとを備え、
前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令を記憶しており、
前記命令は、前記少なくとも1つのプロセッサが請求項1~6のいずれか1項に記載の方法を実行することができるように、前記少なくとも1つのプロセッサにより実行される電子機器。
【請求項14】
コンピュータ命令を記憶した非一時的なコンピュータ可読記憶媒体であって、
前記コンピュータ命令は、コンピュータに請求項1~6のいずれか1項に記載の方法を実行させる記憶媒体。
【請求項15】
プロセッサにより実行される場合に、請求項1~6のいずれか1項に記載の方法を実現するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、人工知能技術分野に関し、特に、コンピュータビジョン、バーチャル・拡張現実及びメタバース等の技術分野に関し、画像処理のシーンに適用される。具体的に、バーチャルキャラクター生成方法、装置、電子機器、記憶媒体及びコンピュータプログラムに関する。
【背景技術】
【0002】
バーチャルキャラクターは、メタバース、ソーシャル、生中継、ゲームなどのシーンに広く適用されている。バーチャルキャラクターは、人工の方式で生成されることが可能である。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本開示は、バーチャルキャラクター生成方法、装置、電子機器、記憶媒体及びコンピュータプログラムを提供する。
【課題を解決するための手段】
【0004】
本開示の一態様によれば、バーチャルキャラクター生成方法を提供し、該バーチャルキャラクター生成方法は、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得することと、前記複数の周波数領域点データを調整し、複数の調整された点データを取得することと、前記複数の調整された点データをレンダリングし、第1の3次元バーチャルキャラクターを生成することと、前記第1の3次元バーチャルキャラクターの検知特徴を特定することと、前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成することとを含む。
【0005】
本開示の別の一態様によれば、バーチャルキャラクター生成装置を提供し、該バーチャルキャラクター生成装置は、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得する変換モジュールと、前記複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成するレンダリングモジュールと、前記第1の3次元バーチャルキャラクターの検知特徴を特定する第1の特定モジュールと、前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成する生成モジュールとを含む。
【0006】
本開示の別の一態様によれば、電子機器を提供し、該電子機器は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信接続されたメモリと備え、前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令が記憶されており、前記命令は、前記少なくとも1つのプロセッサが上記の方法を実行することができるように、前記少なくとも1つのプロセッサにより実行される。
【0007】
本開示の別の一態様によれば、コンピュータ命令を記憶した非一時的なコンピュータ可読記憶媒体を提供し、前記コンピュータ命令が前記コンピュータに上記の方法を実行させる。
【0008】
本開示の別の一態様によれば、コンピュータプログラムを提供し、前記コンピュータプログラムはプロセッサにより実行される時に上記の方法を実現する。
【0009】
理解されるべきこととして、本部分に記載された内容は、本開示の実施例のキーポイント又は重要な特徴を示すことを意図するものではなく、本開示の範囲を限定するものでもない。本開示の他の特徴は、以下の説明により容易に理解される。
【図面の簡単な説明】
【0010】
ここで、図面は、本開示の発明をよりよく理解するために用いられ、本開示を限定するものではない。
【0011】
【
図1】
図1は、本開示の一実施例に係るバーチャルキャラクター生成方法及び装置を適用できる例示的なシステムアーキテクチャの模式図である。
【
図2】
図2は、本開示の一実施例に係るバーチャルキャラクター生成方法のフローチャートである。
【
図3】
図3は、本開示の一実施例に係るバーチャルキャラクター生成方法のフローチャートである。
【
図4】
図4は、本開示の一実施例に係るバーチャルキャラクター生成方法のフローチャートである。
【
図5】
図5は、本開示の一実施例に係るバーチャルキャラクター生成装置のブロック図である。
【
図6】
図6は、本開示の一実施例に係るバーチャルキャラクター生成方法を適用できる電子機器のブロック図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して本開示の例示的な実施例を説明する。ここで、より理解しやすいために本開示の実施例の様々な詳細は含まれ、それらが例示的なものであると考えられるべきである。したがって、当業者であれば、ここで記載される実施例に対して様々な変更・修正を行うことができ、本開示の範囲及び精神から逸脱することはないと分かるべきである。同様に、明確かつ簡潔に説明するために、以下の記載において周知の機能や構成に対する説明を省略する。
【0013】
バーチャルキャラクターは、バーチャルの胴体を含んでもよい。1つのバーチャルキャラクターに対して、人工の方式に基づいて設計、生成及び最適化してもよく、高い時間コストの必要となる。さらに、人工の方式に基づいて生成されたバーチャルキャラクターは、スタイルが比較的に単一となる。
【0014】
図1は、本開示の一実施例に係るバーチャルキャラクター生成方法及び装置を適用できる例示的なシステムアーキテクチャの模式図である。留意されるべきこととして、
図1に示すのは、本開示の実施例のシステムアーキテクチャを適用できる例示に過ぎず、当業者が本開示の技術内容を理解することに役立つが、本開示の実施例は、別の装置、システム、環境又はシーンに適用できないことを意味するものではない。
【0015】
図1に示すように、該実施例に係るシステムアーキテクチャ100は、端末装置101、102、103と、ネットワーク104と、サーバ105とを含んでもよい。ネットワーク104は、端末装置101、102、103とサーバ105との間に通信リンクの媒体を提供する。ネットワーク104は、例えば、有線及び/又は無線通信リンクなどの様々な接続タイプを含んでもよい。
【0016】
ユーザは、端末装置101、102、103を使用して、ネットワーク104を介してサーバ105と対話することにより、メッセージ等を受信又は送信してもよい。端末装置101、102、103は、表示スクリーンを備え、ウェブブラウシングをサポートする様々な電子機器であってもよく、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ及びデスクトップコンピュータなどを含むが、それらに限定されない。
【0017】
サーバ105は、様々なサービスを提供する様々なタイプのサーバであってもよく、例えば、ユーザが端末装置101、102、103を用いてブラウシングされたサイトをサポートするバックグラウンド管理サーバ(例に過ぎない)である。バックグラウンド管理サーバは、受信されたユーザ要求等のデータを解析等の処理を行い、処理結果(例えば、ユーザの要求に応じて取得又は生成されたウェブページ、情報、又はデータ等)を端末装置にフィードバックしてもよい。
【0018】
説明すべきこととして、本開示の実施例が提供するバーチャルキャラクター生成方法は、一般的に、サーバ105により実行されてもよい。それに対して、本開示の実施例が提供するバーチャルキャラクター生成装置は、一般的に、サーバ105に設置されてもよい。本開示の実施例が提供するバーチャルキャラクター生成方法は、サーバ105と異なり、端末装置101、102、103及び/又はサーバ105と通信可能なサーバ又はサーバクラスタにより実行されてもよい。それに対して、本開示の実施例が提供するバーチャルキャラクター生成装置は、サーバ105と異なり、端末装置101、102、103及び/又はサーバ105と通信可能なサーバ又はサーバクラスタに設置されてもよい。
【0019】
図2は、本開示の一実施例に係るバーチャルキャラクター生成方法を模式的に示すフローチャートである。
【0020】
図2に示すように、該方法200は、操作S210~S240を含む。
【0021】
操作S210において、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得する。
【0022】
例えば、初期3次元バーチャルキャラクターは、1つの所定の3次元バーチャルキャラクターであってもよい。
【0023】
例えば、初期3次元バーチャルキャラクターにおける複数の点データをフーリエ変換することによって、複数の点データを周波数領域に変換してもよい。
【0024】
操作S220において、複数の周波数領域点データをレンダリングして、第1の3次元バーチャルキャラクターを生成する。
【0025】
例えば、各種のレンダラーを用いて、複数の周波数領域点データをレンダリングしてもよい。一例において、PYTORCH3Dレンダラーを用いて、複数の周波数領域点データをレンダリングしてもよい。
【0026】
操作S230において、第1の3次元バーチャルキャラクターの検知特徴を特定する。
例えば、各種の特徴抽出モデルに基づいて、第1の3次元バーチャルキャラクターの検知特徴を特定してもよい。
【0027】
操作S240において、検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成する。
【0028】
例えば、各種の特徴抽出モデルを用いて、取得されたスタイル記述情報を特徴抽出して所定のスタイル特徴を取得してもよい。
【0029】
例えば、各種の損失関数を用いて、検知特徴と所定のスタイル特徴との差分値を特定してもよい。一例において、L2損失関数を用いて、検知特徴と所定のスタイル特徴との差分値を特定してもよい。該差分値が所定の条件を満たす場合、上記の前記第1の3次元バーチャルキャラクターを第2の3次元バーチャルキャラクターとしてもよい。該差分値が所定の条件を満たさない場合、検知特徴と所定のスタイル特徴との差分値が所定の条件を満たすまでに、上記の前記第1の3次元バーチャルキャラクターを調整してもよい。例えば、所定の条件は、該差分値が所定の閾値よりも小さいことであってもよい。
【0030】
本開示の実施例によれば、所定のスタイル特徴とマッチングする1つの3次元バーチャルキャラクターを生成してもよい。
【0031】
幾つかの実施例において、対照的言語画像事前学習(CLIP)モデルを用いて、第1の3次元バーチャルキャラクターを処理し、第1の3次元バーチャルキャラクターの検知特徴を取得してもよい。
【0032】
例えば、対照的言語画像事前学習(Contrastive Language-Image Pre-training,CLIP)モデルを用いて、テキストの特徴を抽出してもよく、画像の特徴を抽出してもよい。CLIPモデルは、オーペンソースの汎用モデルであり、即ちテキストと画像とを連結する。CLIPモデルが完成する必要なタスクは、画像における各種の視覚情報を認識し、該情報を膨大なピクチャーのうちの1つに関連付けることである。
【0033】
一例において、第1の3次元バーチャルキャラクターを表示しているスクリーンにおいて、スクリーンショットの操作を実行し、1つのスクリーンショット画像を取得してもよい。CLIPモデルを用いて該スクリーンショット画像を処理して、検知特徴を取得する。
【0034】
幾つかの実施例において、CLIPモデルを用いて、スタイル記述情報に基づいて所定のスタイル特徴を特定する。
【0035】
例えば、ターゲット対象から入力された1つのテキストを取得し、該テキストを1つのスタイル記述情報としてもよい。次に、上記のCLIPモデルを用いて、該スタイル記述情報を処理して、所定のスタイル特徴を特定してもよい。一例において、スタイル記述情報は、例えば「可愛い」、「クール」などのキーワードを含むテキストであってもよい。CLIPモデルは、画像とテキストがマッチングしているかどうかを効率よく特定してもよい。また、所定のスタイル特徴及び検知特徴は、同一のCLIPモデルで特定されてもよく、両者の差分が調整された後、両者がよりマッチングできており、それにより、スタイル記述情報に対してより適した3次元バーチャルキャラクターを生成する。
【0036】
幾つかの実施例において、各種の3Dツールを用いて複数の周波数領域点データに基づいて処理するように、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換する。例えば、3Dツールは、Unity 3Dツールであってもよい。
【0037】
幾つかの実施例において、上記の所定の条件は、差分値が収束することであってもよい。
【0038】
図3は、本開示の別の一実施例に係るバーチャルキャラクター生成方法を模式的に示すフローチャートである。
【0039】
図3に示すように、該方法300は、操作S310~操作S330、及び操作S341~操作S344を含んでもよい。
【0040】
操作S310において、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得する。
【0041】
例えば、操作S310は、上記の操作S210と同様又は類似であり、ここで、本開示は贅言を要しない。
【0042】
操作S320において、複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成する。
【0043】
例えば、操作S320は、上記の操作S220と同様又は類似であり、ここで、本開示は贅言を要しない。
【0044】
操作S330において、第1の3次元バーチャルキャラクターの検知特徴を特定する。
【0045】
例えば、上記のCLIPモデルを用いて、第1の3次元バーチャルキャラクターの検知特徴を特定してもよい。
【0046】
操作S341において、検知特徴と所定のスタイル特徴との差分値を特定する。
【0047】
例えば、所定のスタイル特徴は、上記のCLIPモデルを用いてスタイル記述情報に基づいて特定される。
【0048】
例えば、L2損失関数を用いて、検知特徴と所定のスタイル特徴との差分値を特定してもよい。L2損失関数は、最小二乗法(Least Square Error,LSE)損失関数とも称される。
【0049】
操作S342において、差分値が収束するかどうかを特定する。
【0050】
本開示の実施例において、差分値が収束すると特定された場合、操作S343を実行する。
【0051】
例えば、n個目の差分値が所定の差分閾値以下と特定された後、n個目の差分値の後のi個の差分値がいずれも所定の差分閾値以下とさらに特定された場合、差分値が収束すると特定されてもよい。一例において、nが1以上の整数であり、iが1以上の整数である。例えば、iは、所定の値であり、i=1。
【0052】
本開示の実施例において、差分値が収束しないと特定された場合、操作S344を実行し、操作S320に戻る。
【0053】
例えば、m個目の差分値が所定の差分閾値以下と特定された後、m個目の差分値の後のj個の差分値のうちのいずれか1つの差分値が所定の差分閾値よりも大きいとさらに特定された場合、差分値が収束しないと特定され、操作S344を実行する。操作S344を実行した後、操作S320に戻してもよい。一例において、mが1以上の整数であり、jが1以上の整数である。例えば、jは、所定の値であり、j=1。
【0054】
操作S343において、現在の第1の3次元バーチャルキャラクターを第2の3次元バーチャルキャラクターとする。
【0055】
例えば、上記のように、差分値が収束すると特定された後、n個目の差分値に対応する第1の3次元バーチャルキャラクターVir_nを第2の3次元バーチャルキャラクターとしてもよい。
【0056】
操作S344において、複数の周波数領域点データを調整する。
【0057】
例えば、上記のように、差分値が収束しないと特定された後、m+j個目の差分値に対応する複数の周波数領域点データを調整して、複数の調整された周波数領域点データを取得する。複数の調整された周波数領域点データに基づいて、操作S320に戻り、複数の調整された周波数領域点データをレンダリングし、m+j+1個目の第1の3次元バーチャルキャラクターを生成する。後続の操作をさらに実行する。
【0058】
例えば、点データは、点座標データと色データとを含む。一例において、周波数領域点データは、周波数領域点座標データと周波数領域点色データとを含む。
【0059】
本開示の実施例によれば、差分値が収束しない場合、差分値が収束するまでに周波数領域点データを調整し、それにより、第2の3次元バーチャルキャラクターの検知特徴を予定のスタイル特徴とマッチングさせて、ユーザの体験を向上する。
【0060】
幾つかの実施例において、方法300との相違は、差分値と予定の差分閾値とを比較して、差分値が収束するか否かを特定することにある。
【0061】
例えば、n個目の差分値が所定の差分閾値以上の場合、差分値が収束すると特定する。
【0062】
また、例えば、n個目の差分値が所定の差分閾値よりも大きい場合、差分値が収束しないと特定する。
【0063】
図4は、本開示の他の実施例に係るバーチャルキャラクター生成方法のフローチャートである。
【0064】
図4に示すように、該方法444は、複数の周波数領域点データを調整してもよく、以下、操作S4441~操作S4442を参照して詳しく説明する。
【0065】
操作S4441において、複数の周波数領域点データのうちの各周波数領域点データに対して、各周波数領域点データの点法線を特定する。
【0066】
例えば、Unity 3Dツールを用いて、複数の周波数領域点データに基づいて、1つのメッシュ(Mesh)モデルModel_Mesh_Kを特定する。該メッシュモデルModel_Mesh_Kには、複数の三角形平面タイルサブモデルを含む。一例において、1つの三角形平面タイルサブモデルは、1つの周波数領域点データに対応してもよい。一例において、メッシュモデルModel_Mesh_Kに基づいてレンダリングし、1つの3次元バーチャルキャラクターを取得してもよい。
【0067】
操作S4442において、点法線の伸びる方向に沿って各周波数領域点データを調整する。
【0068】
例えば、上記のように、周波数領域点データは、周波数領域点座標データと周波数領域点色データとを含む。点法線の伸びる方向に沿って周波数領域点座標データの数値を調整してもよい。
【0069】
例えば、点法線の伸びる方向に沿って周波数領域点座標データの数値を調整した後、1つの調整されたメッシュモデルModel_Mesh_K+1を取得してもよい。Kは1以上の整数である。
【0070】
一例において、レンダラーを用いて、メッシュモデルModel_Mesh_K+1をレンダリングして、K+1回目に調整された第1の3次元バーチャルキャラクターを取得してもよい。点法線の伸びる方向に沿って調整することにより、調整された周波数領域点データ分布がより均一となるように、各周波数領域点が一定の範囲内に移動することを確保できる。
【0071】
幾つかの実施例において、複数の周波数領域点データを調整することは、各周波数領域点色データの数値を調整することを含んでもよい。
【0072】
幾つかの実施例において、メッシュモデルのデータ構造は、1つのグラフ構造であってもよい。それに応じて、メッシュモデルは、複数の点と、複数の辺と、複数の面を含んでもよい。
【0073】
例えば、メッシュモデルのデータ構造は、1つの有向グラフであってよい。また、例えば、メッシュモデルのデータ構造は、1つの無向グラフ構造であってもよい。
【0074】
幾つかの実施例において、点法線は、頂点法線であってもよい。
【0075】
例えば、頂点の法線を取得するように、三角形平面タイルの頂点の面領域法線を加重平均してもよい。
【0076】
幾つかの実施例において、方法400と異なり、複数の周波数点データを調整することは、複数の周波数点データに基づいて、面の点法線を特定し、面の点法線の伸びる方向に沿って複数の周波数領域点データを調整することを含む。
【0077】
例えば、1つの面は、少なくとも1つの三角形平面タイルに基づいて特定されてもよい。面の点法線は、メッシュモデルの頂点でなく、面内における頂点を表してもよい。面の点法線とメッシュの頂点との関係は多対一の関係である。例えば、立方体メッシュモデルにおける1つのコーナーポイントについて、該コーナーポイントが3つの垂直の隣接面を有する。面の点法線は、この3つの垂直の隣接面に基づいて特定されてもよい。
【0078】
図5は、本開示の一実施例に係るバーチャルキャラクター生成装置のブロック図である。
【0079】
図5に示すように、該装置500は、変換モジュール510と、レンダリングモジュール520と、第1の特定モジュール530と、生成モジュール540とを含んでもよい。
【0080】
変換モジュール510は、初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得する。一例において、該変換モジュール510は、例えば、
図2の操作S210を実行してもよい。
【0081】
レンダリングモジュール520は、前記複数の周波数領域点データをレンダリングして、第1の3次元バーチャルキャラクターを生成する。一例において、該レンダリングモジュール520は、例えば、
図2の操作S220を実行してもよい。
【0082】
第1の特定モジュール530は、前記第1の3次元バーチャルキャラクターの検知特徴を特定する。一例において、該第1の特定モジュール530は、例えば、
図2の操作S230を実行してもよい。
【0083】
生成モジュール540は、前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成する。一例において、該生成モジュール540は、例えば、
図2の操作S240を実行してもよい。
【0084】
幾つかの実施例において、前記生成モジュールは、前記検知特徴と所定のスタイル特徴との差分値を特定する第1の特定サブモジュールと、前記差分値が収束するかどうかを特定する第2の特定サブモジュールと、前記差分値が収束すると特定された場合、現在の第1の3次元バーチャルキャラクターを前記第2の3次元バーチャルキャラクターとする取得サブモジュールと、前記差分値が収束しないと特定された場合、前記複数の周波数領域点データを調整し、前記複数の周波数領域点データをレンダリングする操作へ戻る調整サブモジュールとを含む。
【0085】
幾つかの実施例において、前記点データは、点座標データと色データとを含む。
【0086】
幾つかの実施例において、前記調整サブモジュールは、前記複数の周波数領域点データのうちの各周波数領域点データに対して、前記各周波数領域点データの点法線を特定する特定ユニットと、前記点法線の伸びる方向に沿って前記各周波数領域点データを調整する調整ユニットとを含む。
【0087】
幾つかの実施例において、前記第1の特定モジュールは、CLIPモデルを用いて前記第1の3次元バーチャルキャラクターを処理し、前記第1の3次元バーチャルキャラクターの検知特徴を取得することを含む。
【0088】
幾つかの実施例において、装置500は、CLIPモデルを用いて、スタイル記述情報に基づいて前記所定のスタイル特徴を特定する第2の特定モジュールをさらに含む。
【0089】
本開示の技術案において、係るユーザ個人情報の収集、記憶、使用、加工、伝送、提供及び開示等の処理は、いずれも関連する法律・法規の規定に適合し、かつ公序良俗に反するものではない。
【0090】
本開示の実施例は、電子機器、可読記憶媒体及びコンピュータプログラムを提供する。
【0091】
本開示の実施例によれば、電子機器が提供され、前記電子機器は、少なくとも1つのプロセッサと、少なくとも1つのプロセッサに通信接続されたメモリとを備え、メモリには、少なくとも1つのプロセッサにより実行可能な命令が記憶されており、命令は、少なくとも1つのプロセッサが本開示の提供された方法を実行することができるように、少なくとも1つのプロセッサにより実行される。
【0092】
例えば、本開示は、コンピュータ命令を記憶した非一時的なコンピュータ可読記憶媒体を提供し、該コンピュータ命令は、コンピュータに本開示の提供された方法を実行させる。
【0093】
例えば、本開示は、コンピュータプログラムを提供し、前記コンピュータプログラムは、プロセッサにより実行される場合に、本開示の提供された方法を実現する。以下、
図6を参照して詳しく説明する。
【0094】
図6は、本開示の一実施例に係るバーチャルキャラクター生成方法を適用できる電子機器600を模式的に示すブロック図である。電子機器は、様々な形態のデジタルコンピュータを示すことを目的とし、例えば、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータである。電子機器は、さらに様々な形態の移動装置を示してもよく、例えば、個人デジタル処理、携帯電話、スマートフォン、ウェアラブル装置及び他の類似の演算装置である。本明細書に示された部材、それらの接続及び関係、及びそれらの機能は、例示に過ぎず、本明細書に記載された及び/又は要求された本開示の実現を限定しない。
【0095】
図6に示すように、電子機器600は、演算ユニット601を含み、演算ユニット601は、リードオンリーメモリ(ROM)602に記憶されたコンピュータプログラム又は記憶ユニット608からランダムアクセスメモリ(RAM)603にロードされたコンピュータプログラムに基づいて、様々な適切な動作及び処理を実行してもよい。RAM603には、さらに電子機器600の操作に必要な様々なプログラム及びデータを記憶してもよい。演算ユニット601、ROM602、およびRAM603は、バス604を介して相互に接続される。入出力インタフェース605も、バス604に接続される。
【0096】
電子機器600における複数の部品は、I/Oインタフェース605に接続され、例えばキーボード、マウス等の入力ユニット606と、例えば様々な種類のディスプレイ、スピーカ等の出力ユニット607と、例えば磁気ディスク、光ディスク等の記憶ユニット608と、例えばネットワークカード、モデム、無線通信トランシーバ等の通信ユニット609とを含む。通信ユニット609は、電子機器600がインターネット等のコンピュータネットワーク及び/又は各種の電気通信ネットワークを介して他の機器と情報/データをやり取りすることを可能にする。
【0097】
演算ユニット601は、処理及び演算能力を有する各種の汎用及び/又は専用の処理モジュールであってもよい。演算ユニット601の幾つかの例としては、中央処理装置(CPU)、GPU(GRAPHICS PROCESSING UNIT)、各種専用の人工知能(AI)演算チップ、各種動作機械学習モデルアルゴリズムをランニングする演算ユニット、DSP(DIGITAL SIGNAL PROCESSOR)、並びに任意の適切なプロセッサ、コントローラ、マイクロコントローラ等が挙げられるが、それらに限定されない。演算ユニット601は、例えばバーチャルキャラクター生成方法のような上記に記載の各方法及び処理を実行する。例えば、いくつかの実施例において、バーチャルキャラクター生成方法は、例えば記憶ユニット608のような機械可読媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現されてもよい。いくつかの実施例において、コンピュータプログラムの一部又は全部は、ROM602及び/又は通信ユニット609を介して電子機器600にロード及び/又はインストールされてもよい。コンピュータプログラムがRAM603にロードされて演算ユニット601により実行される場合、上記に記載のバーチャルキャラクター生成方法の1つ又は複数の操作を実行してもよい。代替的に、他の実施例において、演算ユニット601は、他の任意の適切な方式(例えば、ファームウェアを介する)によりバーチャルキャラクター生成方法を実行するように構成されてもよい。
【0098】
本明細書で説明したシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、コンプレックスプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現されてもよい。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムにおいて実施され、該1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラムマブルプロセッサを含むプログラムマブルシステムで実行され及び/又は解釈されることが可能であり、該プログラムマブルプロセッサは、専用又は汎用のプログラムマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、かつデータ及び命令を該記憶システム、該少なくとも1つの入力装置、及び該少なくとも1つの出力装置に伝送することができることを含んでもよい。
【0099】
本開示の方法を実施するためのプログラムコードは、1つ又は複数の言語の任意の組み合わせで作成されてもよい。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ又は他のプログラムマブルデータ処理装置のプロセッサ又はコントローラに提供されてもよく、それによって、プログラムコードがプロセッサ又はコントローラにより実行される時に、フローチャート及び/又はブロック図に規定された機能/操作が実施される。プログラムコードは、機器に完全に実行されてもよく、部分的に機器で実行されてもよく、独立したソフトウェアパッケージとして部分的に機器で実行され、かつ部分的に遠隔機器で実行されるか又は完全に遠隔機器又はサーバで実行されてもよい。
【0100】
本開示のコンテキストにおいて、機械可読媒体は、有形の媒体であってもよく、命令実行システム、装置又は電子機器に使用され、又は命令実行システム、装置又は電子機器と組み合わせて使用されるプログラムを含むか又は記憶してもよい。機械可読媒体は、機械可読信号媒体又は機械可読記憶媒体であってもよい。機械可読媒体は、電子の、磁気的、光学的、電磁的、赤外線の、又は半導体システム、装置又は電子機器、又は上記内容の任意の適切な組み合わせを含んでもよいが、それらに限定されない。機械可読記憶媒体のより具体的な例としては、1つ以上の線による電気的接続、携帯式コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブルリードオンリーメモリ(EPROM又はフラッシュメモリ)、光ファイバ、コンパクトディスクリードオンリーメモリ(CD-ROM)、光記憶装置、磁気記憶装置、又は上記内容の任意の適切な組み合わせを含む。
【0101】
ユーザとの対話を提供するために、コンピュータにここで説明されたシステム及び技術を実施させてもよく、該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを備え、ユーザは、該キーボード及び該ポインティングデバイスを介して入力をコンピュータに提供することができる。他の種類の装置は、さらにユーザとの対話を提供してもよく、例えば、ユーザに提供されたフィードバックは、いかなる形態のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、かついかなる形態(音声入力、語音入力又は、触覚入力を含む)でユーザからの入力を受信してもよい。
【0102】
ここで説明されたシステム及び技術は、バックグラウンド部品を含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェア部品を含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンド部品を含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザが該グラフィカルユーザインタフェース又は該ネットワークブラウザを介してここで説明されたシステム及び技術の実施形態と対話することができる)、又はこのようなバックグラウンド部品、ミドルウェア部品、又はフロントエンド部品のいずれかの組み合わせを含むコンピューティングシステムに実施されることが可能である。任意の形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によりシステムの部品を互いに接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)及びインターネットを例示的に含む。
【0103】
コンピュータシステムは、クライアント及びサーバを含んでもよい。クライアントとサーバ同士は、一般的に離れており、通常、通信ネットワークを介して対話する。クライアントとサーバとの関係は、該当するコンピュータ上でランニングし、クライアント-サーバの関係を有するコンピュータプログラムによって生成される。
【0104】
理解されるべきこととして、以上に示した様々な形態のフローを使用してもよく、操作を改めてソーティングしたり、追加したり又は削除してもよい。例えば、本発明に記載の各操作は、並列的に実行されたり、順次に実行されたり、又は異なる順序で実行されてもよく、本開示の発明の所望の結果を実現することができれば、本明細書はここで限定されない。
【0105】
以上説明したバーチャルキャラクター生成方法、装置、電子機器、記憶媒体およびコンピュータプログラムは、以下のように表現することができる。
【0106】
第1態様のバーチャルキャラクター生成方法は、
初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得することと、
前記複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成することと、
前記第1の3次元バーチャルキャラクターの検知特徴を特定することと、
前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成することとを含む。
【0107】
第2態様のバーチャルキャラクター生成方法は、
第1態様に記載の方法であって、
前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成することは、
前記検知特徴と所定のスタイル特徴との差分値を特定することと、
前記差分値が収束するかどうかを特定することと、
前記差分値が収束すると特定された場合、現在の第1の3次元バーチャルキャラクターを前記第2の3次元バーチャルキャラクターとすることと、
前記差分値が収束しないと特定された場合、前記複数の周波数領域点データを調整し、前記複数の周波数領域点データをレンダリングする操作へ戻ることとを含む。
【0108】
第3態様のバーチャルキャラクター生成方法は、
第1又は2態様に記載の方法であって、
前記点データは、点座標データと色データとを含む。
【0109】
第4態様のバーチャルキャラクター生成方法は、
第3態様に記載の方法であって、
前記複数の周波数領域点データを調整することは、
前記複数の周波数領域点データのうちの各周波数領域点データに対して、
前記各周波数領域点データの点法線を特定することと、
前記点法線の伸びる方向に沿って前記各周波数領域点データを調整することとを含む。
【0110】
第5態様のバーチャルキャラクター生成方法は、
第2態様に記載の方法であって、
前記第1の3次元バーチャルキャラクターの検知特徴を特定することは、
CLIPモデルを用いて前記第1の3次元バーチャルキャラクターを処理し、前記第1の3次元バーチャルキャラクターの検知特徴を取得することを含む。
【0111】
第6態様のバーチャルキャラクター生成方法は、
第1~5態様のいずれか1つに記載の方法であって、
対照的言語画像事前学習モデル(CLIPモデル)を用いて、スタイル記述情報に基づいて前記所定のスタイル特徴を特定することをさらに含む。
【0112】
第7態様のバーチャルキャラクター生成装置は、
初期3次元バーチャルキャラクターの複数の点データを周波数領域に変換し、複数の周波数領域点データを取得する変換モジュールと、
前記複数の周波数領域点データをレンダリングし、第1の3次元バーチャルキャラクターを生成するレンダリングモジュールと、
前記第1の3次元バーチャルキャラクターの検知特徴を特定する第1の特定モジュールと、
前記検知特徴と所定のスタイル特徴との差分に基づいて、第2の3次元バーチャルキャラクターを生成する生成モジュールとを含む。
【0113】
第8態様のバーチャルキャラクター生成装置は、
第7態様に記載の装置であって、
前記生成モジュールは、
前記検知特徴と所定のスタイル特徴との差分値を特定する第1の特定サブモジュールと、
前記差分値が収束するかどうかを特定する第2の特定サブモジュールと、
前記差分値が収束すると特定された場合、現在の第1の3次元バーチャルキャラクターを前記第2の3次元バーチャルキャラクターとする取得サブモジュールと、
前記差分値が収束しないと特定された場合、前記複数の周波数領域点データを調整し、前記複数の周波数領域点データをレンダリングする操作へ戻る調整サブモジュールとを含む。
【0114】
第9態様のバーチャルキャラクター生成装置は、
第7又は8態様に記載の装置であって、
前記点データは、点座標データと色データとを含む。
【0115】
第10態様のバーチャルキャラクター生成装置は、
第9態様に記載の装置であって、
前記調整サブモジュールは、
前記複数の周波数領域点データのうちの各周波数領域点データに対して、前記各周波数領域点データの点法線を特定する特定ユニットと、
前記点法線の伸びる方向に沿って前記各周波数領域点データを調整する調整ユニットとを含む。
【0116】
第11態様のバーチャルキャラクター生成装置は、
第10態様に記載の装置であって、
前記第1の特定モジュールは、
CLIPモデルを用いて前記第1の3次元バーチャルキャラクターを処理し、前記第1の3次元バーチャルキャラクターの検知特徴を取得することを含む。
【0117】
第12態様のバーチャルキャラクター生成装置は、
第7~11態様のいずれか1つに記載の装置であって、
CLIPモデルを用いて、スタイル記述情報に基づいて前記所定のスタイル特徴を特定する第2の特定モジュールをさらに含む。
【0118】
第13態様の電子機器は、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されたメモリとを備え、
前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令を記憶しており、
前記命令は、前記少なくとも1つのプロセッサが第1~6態様のいずれか1つに記載の方法を実行することができるように、前記少なくとも1つのプロセッサにより実行される。
【0119】
第14態様の記憶媒体は、
コンピュータ命令を記憶した非一時的なコンピュータ可読記憶媒体であって、
前記コンピュータ命令は、コンピュータに第1~6態様のいずれか1つに記載の方法を実行させる記憶媒体である。
【0120】
第15態様のコンピュータプログラムは、
プロセッサにより実行される場合に、第1~6態様のいずれか1つに記載の方法を実現するコンピュータプログラムである。
【0121】
上記具体的な実施形態は、本開示の保護範囲を限定するものではない。当業者であれば、設計要件及び他の要因に応じて、様々な修正、組み合わせ、サブコンビネーション及び代替を行うことが可能であると理解されるべきである。本開示の精神と原則内で行われた任意の修正、均等置換及び改良などは、いずれも本開示の保護範囲内に含まれるべきである。