IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ HEROZ株式会社の特許一覧 ▶ 株式会社ポケモンの特許一覧

<>
  • 特開-プログラム、方法、情報処理装置 図1
  • 特開-プログラム、方法、情報処理装置 図2
  • 特開-プログラム、方法、情報処理装置 図3
  • 特開-プログラム、方法、情報処理装置 図4
  • 特開-プログラム、方法、情報処理装置 図5
  • 特開-プログラム、方法、情報処理装置 図6
  • 特開-プログラム、方法、情報処理装置 図7
  • 特開-プログラム、方法、情報処理装置 図8
  • 特開-プログラム、方法、情報処理装置 図9
  • 特開-プログラム、方法、情報処理装置 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022163251
(43)【公開日】2022-10-26
(54)【発明の名称】プログラム、方法、情報処理装置
(51)【国際特許分類】
   A63F 13/60 20140101AFI20221019BHJP
   G06T 7/00 20170101ALI20221019BHJP
   G06T 19/00 20110101ALI20221019BHJP
   G06N 20/00 20190101ALI20221019BHJP
【FI】
A63F13/60
G06T7/00 350C
G06T7/00 610B
G06T19/00 A
G06N20/00
【審査請求】有
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2021068063
(22)【出願日】2021-04-14
(71)【出願人】
【識別番号】514080981
【氏名又は名称】HEROZ株式会社
(71)【出願人】
【識別番号】504440133
【氏名又は名称】株式会社ポケモン
(74)【代理人】
【識別番号】110002815
【氏名又は名称】IPTech弁理士法人
(72)【発明者】
【氏名】今井 達也
(72)【発明者】
【氏名】曽羽 孝則
(72)【発明者】
【氏名】太田 信之
(72)【発明者】
【氏名】海野 隆雄
(72)【発明者】
【氏名】山本 裕輝
(72)【発明者】
【氏名】高橋 友也
(72)【発明者】
【氏名】若松 幸一郎
(72)【発明者】
【氏名】今野 達斗
【テーマコード(参考)】
5B050
5L096
【Fターム(参考)】
5B050AA10
5B050BA09
5B050CA01
5B050EA26
5B050FA02
5B050FA12
5L096BA03
5L096DA02
5L096FA69
5L096HA11
5L096KA04
5L096KA15
(57)【要約】
【課題】ゲームリソースに関するテストに係る負担を軽減する。
【解決手段】プロセッサと、メモリとを備えるコンピュータに実行させるためのプログラムである。プログラムは、プロセッサに、ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップとを実行させる。
【選択図】図6

【特許請求の範囲】
【請求項1】
プロセッサと、メモリとを備えるコンピュータに実行させるためのプログラムであって、前記プログラムは、前記プロセッサに、
ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、
2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップと
を実行させるプログラム。
【請求項2】
前記判定するステップにおいて、前記第1学習済みモデルは、入力された2次元画像に含まれる異常の種類を表す情報を出力する請求項1記載のプログラム。
【請求項3】
前記判定するステップにおいて、前記第1学習済みモデルは、入力された2次元画像に含まれる異常の種類と、当該種類の異常である可能性を表す指標を出力する請求項1記載のプログラム。
【請求項4】
前記判定するステップにおいて、前記第1学習済みモデルは、入力された2次元画像において着目するべき領域を出力する請求項1乃至3のいずれかに記載のプログラム。
【請求項5】
前記判定するステップにおいて、1の3次元モデルデータに基づく複数の2次元画像についての異常の有無の判定結果を入力とし、前記3次元モデルデータについての異常の有無に関する情報を正解出力として学習された第2学習済みモデルに、前記第1学習済みモデルから出力される判定結果を入力することで、第1学習済みモデルに入力した2次元画像の元となる3次元モデルデータについての異常の有無を判定する請求項1乃至4のいずれかに記載のプログラム。
【請求項6】
前記2次元画像を生成するステップにおいて、複数フレーム分の3次元モデルデータのうち、少なくとも1フレームの3次元モデルデータから複数の2次元画像を生成する請求項1乃至5のいずれかに記載のプログラム。
【請求項7】
前記2次元画像を生成するステップにおいて、複数フレーム分の3次元モデルデータのうち、少なくとも1フレームの3次元モデルデータから複数の2次元画像を生成し、
前記判定するステップにおいて、前記第2学習済みモデルに、前記第1学習済みモデルから出力される、各フレームの3次元モデルデータについての2次元画像の判定結果を入力することで、前記各フレームの3次元モデルデータについての異常の有無を判定する請求項5記載のプログラム。
【請求項8】
プロセッサと、メモリとを備えるコンピュータに実行される方法であって、前記プロセッサが、
ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、
2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップと
を実行する方法。
【請求項9】
制御部と、記憶部とを備える情報処理装置であって、前記制御部が、
ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、
2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップと
を実行する情報処理装置。
【請求項10】
プロセッサと、メモリとを備えるコンピュータに実行させるためのプログラムであって、前記プログラムは、前記プロセッサに、
ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、3次元モデルデータを加工するステップと、
前記加工した3次元モデルデータに基づき、2次元画像を生成するステップと、
前記生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデルをトレーニングするステップと
を実行させるプログラム。
【請求項11】
前記加工するステップにおいて、前記3次元モデルデータに与える異常の種類は、頂点破壊、UV破壊、ドットノイズ、マテリアル異常、ポリゴン欠け、又はめり込みである請求項10記載のプログラム。
【請求項12】
前記トレーニングするステップにおいて、前記加工により異常を与えた位置を正解出力として前記第1学習済みモデルをトレーニングする請求項10又は11に記載のプログラム。
【請求項13】
複数の2次元画像を入力とした第1学習済みモデルからの出力を入力とし、前記加工により与えた異常の種類を正解出力として第2学習済みモデルをトレーニングする請求項10乃至12のいずれかに記載のプログラム。
【請求項14】
プロセッサと、メモリとを備えるコンピュータに実行される方法であって、前記プロセッサが、
ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、3次元モデルデータを加工するステップと、
前記加工した3次元モデルデータに基づき、2次元画像を生成するステップと、
前記生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデルをトレーニングするステップと
を実行する方法。
【請求項15】
制御部と、記憶部とを備える情報処理装置であって、前記制御部が、
ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、3次元モデルデータを加工するステップと、
前記加工した3次元モデルデータに基づき、2次元画像を生成するステップと、
前記生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデルをトレーニングするステップと
を実行する情報処理装置。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、方法、情報処理装置に関する。
【背景技術】
【0002】
コンピュータゲームのプログラムは、ゲームのルールだけでなく、画面の描画処理、音響の入出力処理、コントローラからの入力処理、通信処理、AIの思考処理等、様々な要素の処理を並行して行う複雑なプログラムである。そのため、各処理が正常に動作するのかを確認するテストについても多くの工数がかかる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-191786号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
コンピュータゲームの動作を確認するためのテストには、ゲームリソース、例えば、ゲーム内で登場させるキャラクターに関するテストがある。当該テストでは、製作者は、例えば、ゲームリソースとしてのモデルを凝視し、モデルについての異常の有無を確認する。
【0005】
製作者としては、ゲームに登場させるキャラクターを増やすことでゲームのクオリティを上げたいが、登場させるキャラクター数が増えるとテストケースが増えることになり、製作者の負担が増大することになる。
【0006】
特許文献1では、ゲームルール処理プログラムが正しい状態となっているかをテストするためのプログラムを生成することが記載されている。しかしながら、特許文献では、登場キャラクターのモデルのテストについては記載されていない。
【0007】
本開示の目的は、ゲームリソースに関するテストに係る負担を軽減することである。
【課題を解決するための手段】
【0008】
プロセッサと、メモリとを備えるコンピュータに実行させるためのプログラムである。プログラムは、プロセッサに、ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップとを実行させる。
【発明の効果】
【0009】
本開示によれば、ゲームリソースに関するテストに係る負担を軽減できる。
【図面の簡単な説明】
【0010】
図1】システムの全体構成を示すブロック図である。
図2図1に示す端末装置の構成を表すブロック図である。
図3】サーバの機能的な構成を示す図である。
図4図3に示す制御部が第1学習済みモデルを生成する際の動作を説明するためのブロック図である。
図5図3に示す制御部が第2学習済みモデルを生成する際の動作を説明するためのブロック図である。
図6図2に示す制御部が第1学習済みモデルを用いて3次元モデルの異常を検出する際の動作を説明するためのブロック図である。
図7】端末装置のユーザに提示される推論結果を表す図である。
図8図2に示す制御部が第1学習済みモデル及び第2学習済みモデルを用いて3次元モデルの異常を検出する際の動作を説明するためのブロック図である。
図9】端末装置のユーザに提示される推論結果を表す図である。
図10】端末装置のユーザに提示される推論結果の詳細を表す図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しつつ、本開示の実施形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称及び機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0012】
<概略>
本実施形態に係るシステムは、ゲームリソースについての3次元モデルを表すデータについて異常が発生しているか否かを、学習済みモデルを用いて判断する。
【0013】
<1 システム全体の構成図>
図1は、システム1の全体構成の例を示すブロック図である。図1に示すシステム1は、複数の端末装置10と、サーバ20とを含む。端末装置10、及びサーバ20は、例えば、ネットワーク80を介して通信接続する。ネットワーク80は、例えば、インターネット、及び/又は通信事業者が提供する通信網等により実現される。ネットワーク80は、接続可能な端末が限定されている構内ネットワークであってもよい。
【0014】
図1において、システム1が端末装置10を3台ずつ含む例を示しているが、システム1に含まれる端末装置10の数は、3台に限定されない。端末装置10が3台未満であってもよいし、3台以上であってもよい。
【0015】
本実施形態において、複数の装置の集合体を1つのサーバとしてもよい。1つ又は複数のハードウェアに対して本実施形態に係るサーバ20を実現することに要する複数の機能の配分の仕方は、各ハードウェアの処理能力及び/又はサーバ20に求められる仕様等に鑑みて適宜決定することができる。
【0016】
端末装置10は、例えば、ゲームのデバッガーとしてもユーザが操作する装置である。本実施形態において、ゲームのデバッガーは、例えば、3次元モデルを表すデータにおけるバグの有無を確認する者を表す。ユーザは、端末装置10を操作し、例えば、3次元モデルを表すデータにおいてバグが発生しているか否かを確認する。端末装置10は、据え置き型のPC(Personal Computer)、又はラップトップPC等により実現される。端末装置10は、例えば、スマートフォン、又はタブレット等の携帯端末により実現されてもよい。
【0017】
端末装置10は、通信IF(Interface)12と、入力装置13と、出力装置14と、メモリ15と、ストレージ16と、プロセッサ19とを備える。
【0018】
通信IF12は、端末装置10が外部の装置と通信するため、信号を入出力するためのインタフェースである。
【0019】
入力装置13は、ユーザからの入力操作を受け付けるための装置(例えば、タッチパネル、タッチパッド、マウス等のポインティングデバイス、キーボード等)である。
【0020】
出力装置14は、ユーザに対して情報を提示するための装置(ディスプレイ、スピーカ等)である。
【0021】
メモリ15は、プログラム、及び、プログラム等で処理されるデータ等を一時的に記憶するためのものであり、例えばDRAM(Dynamic Random Access Memory)等の揮発性のメモリである。
【0022】
ストレージ16は、データを保存するためのものであり、例えばフラッシュメモリ、HDD(Hard Disc Drive)である。
【0023】
プロセッサ19は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路等により構成される。
【0024】
サーバ20は、例えば、端末装置10で使用される学習済みモデルを学習させる、又は再学習させる装置である。また、サーバ20は、例えば、バグを取り除く対象としての、3次元モデルを表すデータを管理する。
【0025】
サーバ20は、通信IF22と、入出力IF23と、メモリ25と、ストレージ26と、プロセッサ29とを備える。
【0026】
通信IF22は、サーバ20が外部の装置と通信するため、信号を入出力するためのインタフェースである。
【0027】
入出力IF23は、ユーザからの入力操作を受け付けるための入力装置、及び、ユーザに対し、情報を提示するための出力装置とのインタフェースとして機能する。
【0028】
メモリ25は、プログラム、及び、プログラム等で処理されるデータ等を一時的に記憶するためのものであり、例えばDRAM等の揮発性のメモリである。
【0029】
ストレージ26は、データを保存するためのものであり、例えばフラッシュメモリ、HDDである。
【0030】
プロセッサ29は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路等により構成される。プロセッサ29は、例えば、CPU(Central Processing Unit)、又はGPU(Graphics Processing Unit)等を含む。
【0031】
<1.1 端末装置の構成>
図2は、図1に示す端末装置10の構成例を表すブロック図である。図2に示すように、端末装置10は、通信部120と、入力装置13と、出力装置14と、音声処理部17と、マイク171と、スピーカ172と、カメラ160と、記憶部180と、制御部190とを備える。端末装置10に含まれる各ブロックは、例えば、バス等により電気的に接続される。
【0032】
通信部120は、端末装置10が他の装置と通信するための変復調処理等の処理を行う。通信部120は、制御部190で生成された信号に送信処理を施し、外部(例えば、サーバ20)へ送信する。通信部120は、外部から受信した信号に受信処理を施し、制御部190へ出力する。
【0033】
入力装置13は、端末装置10を操作するユーザが指示、又は情報を入力するための装置である。入力装置13は、例えば、マウス131、キーボード132、及び、操作面へ触れることで指示が入力されるタッチ・センシティブ・デバイス133等により実現される。入力装置13は、ユーザから入力される指示、又は情報を電気信号へ変換し、電気信号を制御部190へ出力する。なお、入力装置13には、例えば、外部の入力機器から入力される電気信号を受け付ける受信ポートが含まれてもよい。
【0034】
出力装置14は、端末装置10を操作するユーザへ情報を提示するための装置である。出力装置14は、例えば、ディスプレイ141等により実現される。ディスプレイ141は、制御部190の制御に応じて、会計処理に関するデータを表示する。ディスプレイ141は、例えば、LCD(Liquid Crystal Display)、又は有機EL(Electro-Luminescence)ディスプレイ等によって実現される。
【0035】
音声処理部17は、例えば、音声信号のデジタル-アナログ変換処理を行う。音声処理部17は、マイク171から与えられる信号をデジタル信号に変換して、変換後の信号を制御部190へ与える。また、音声処理部17は、音声信号をスピーカ172へ与える。音声処理部17は、例えば音声処理用のプロセッサによって実現される。マイク171は、音声入力を受け付けて、当該音声入力に対応する音声信号を音声処理部17へ与える。スピーカ172は、音声処理部17から与えられる音声信号を音声に変換して当該音声を端末装置10の外部へ出力する。
【0036】
カメラ160は、受光素子により光を受光し、撮影信号として出力するためのデバイスである。
【0037】
記憶部180は、例えば、メモリ15、及びストレージ16等により実現され、端末装置10が使用するデータ、及びプログラムを記憶する。記憶部180は、例えば、第1学習済みモデル181、第2学習済みモデル182、及び3次元モデルデータ183を記憶する。
【0038】
第1学習済みモデル181、及び第2学習済みモデル182は、モデル学習プログラムに従い、サーバ20で機械学習モデルに機械学習を行わせることで生成されるモデルである。第1学習済みモデル181、及び第2学習済みモデル182は、例えば、入力されるデータに基づき、所定の推論を実施する、複数の関数が合成されたパラメータ付き合成関数である。パラメータ付き合成関数は、複数の調整可能な関数及びパラメータの組合せにより定義される。本実施形態に係る学習済みモデルは、上記の要請を満たす如何なるパラメータ付き合成関数であってもよい。
【0039】
例えば、第1学習済みモデル181、及び第2学習済みモデル182が順伝播型の多層化ネットワークを用いて生成される場合、パラメータ付き合成関数は、例えば、重み行列を用いた各層間の線形関係、各層における活性化関数を用いた非線形関係(又は線形関係)、及びバイアスの組み合わせとして定義される。重み付行列、及びバイアスは、多層化ネットワークのパラメータと呼ばれる。パラメータ付き合成関数は、パラメータをどのように選ぶかで、関数としての形を変える。多層化ネットワークでは、構成するパラメータを適切に設定することで、出力層から好ましい結果を出力することが可能な関数を定義することができる。
【0040】
本実施形態に係る多層化ネットワークとしては、例えば、深層学習(Deep Learning)の対象となる多層ニューラルネットワークである深層ニューラルネットワーク(Deep Neural Network:DNN)が用いられ得る。DNNとしては、例えば、画像を対象とする畳み込みニューラルネットワーク(Convolution Neural Network:CNN)を用いてもよい。
【0041】
第1学習済みモデル181は、画像が入力されると、画像に異常が含まれているか否かを出力するモデルである。本実施形態では、第1学習済みモデル181は、例えば、画像の異常を以下のクラス(種類)で判断する。なお、以下に示す以外のクラスで判断されてもよい。
・頂点破壊(ポリゴンの頂点座標のノイズ)
・UV破壊(ポリゴンのUV座標のノイズ)
・ドットノイズ
・マテリアル異常(3次元モデルの表面を描画する際のパラメータがポリゴン間で不連続であることによるノイズ)
・ポリゴン欠け
・めり込み
【0042】
第1学習済みモデル181は、画像が入力されると、上記の異常のいずれかを含むかを所定の指標で表すように学習されてもよい。所定の指標は、例えば、以下である。
・所定の最大値に基づく指標値(確率)
・異常の程度を表す記号(ABC、丸、三角、ばつ)
【0043】
また、第1学習済みモデル181は、画像が入力されると、画像中の着目すべき領域を識別可能に出力するように学習されてもよい。画像中の着目すべき領域とは、例えば、異常が存在する確率が高い領域である。
【0044】
第2学習済みモデル182は、1つの3次元モデルについて取得された複数の画像の異常の判断結果が入力されると、3次元モデルを表すデータにバグが含まれているか否かを出力するモデルである。
【0045】
3次元モデルデータ183は、ゲームリソースとしての複数のキャラクターそれぞれについての3次元モデルを表すデータを記憶している。ゲームリソースとしてのキャラクターは、ゲーム中でのユーザの操作に応じ、任意の方向から表示される可能性がある。そのため、ゲームリソースとしての3次元モデルは、全方位から視認されても異常がないようにしなければならない。
【0046】
3次元モデルを表すデータは、例えば、ポリゴンデータ及びテクスチャデータを含む。3次元モデルを表すデータは、ポリゴンデータ及びテクスチャデータに限定されないが、以下ではポリゴンデータ及びテクスチャデータとして説明する。
【0047】
制御部190は、プロセッサ19が記憶部180に記憶されるプログラムを読み込み、プログラムに含まれる命令を実行することにより実現される。制御部190は、端末装置10の動作を制御する。制御部190は、プログラムに従って動作することにより、操作受付部191と、送受信部192と、画像生成部193と、推論部194と、表示制御部195としての機能を発揮する。
【0048】
操作受付部191は、入力装置13から入力される指示、又は情報を受け付けるための処理を行う。具体的には、例えば、操作受付部191は、マウス131、キーボード132、又はタッチ・センシティブ・デバイス133等から入力される指示に基づく情報を受け付ける。
【0049】
送受信部192は、端末装置10が、サーバ20等の外部の装置と、通信プロトコルに従ってデータを送受信するための処理を行う。
【0050】
画像生成部193は、3次元モデルから、複数の2次元画像を生成する処理を行う。例えば、画像生成部193は、記憶部180に記憶される1体のキャラクターについてのポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。3次元モデルが複数フレームのポリゴンデータ及びテクスチャデータを含む場合、画像生成部193は、少なくとも1フレームのポリゴンデータ及びテクスチャデータから複数の2次元画像を生成してもよい。
【0051】
推論部194は、記憶部180に記憶されている第1学習済みモデル181を利用して入力に対する出力を推論する。
【0052】
推論部194は、記憶部180に記憶されている第1学習済みモデル181及び第2学習済みモデル182を利用して入力に対する出力を推論してもよい。例えば、推論部194は、第1学習済みモデル181を利用して出力した推論の結果を、第2学習済みモデル182への入力として出力を推論する。
【0053】
表示制御部195は、ユーザに対して推論の結果を提示するため、出力装置14を制御する。具体的には、例えば、表示制御部195は、推論部194で推論された推論結果をディスプレイ141に表示させる。
【0054】
<1.2 サーバの機能的な構成>
図3は、サーバ20の機能的な構成を示す図である。図3に示すように、サーバ20は、通信部201と、記憶部202と、制御部203としての機能を発揮する。
【0055】
通信部201は、サーバ20が外部の装置と通信するための処理を行う。
【0056】
記憶部202は、例えば、メモリ25、及びストレージ26等により実現され、サーバ20が使用するデータ、及びプログラムを記憶する。記憶部202は、例えば、第1学習済みモデル2021、第2学習済みモデル2022、及び3次元モデルデータ2023を有する。
【0057】
第1学習済みモデル2021、及び第2学習済みモデル2022は、サーバ20でトレーニングされたもの、又はサーバ20で再トレーニングされたものである。第1学習済みモデル2021が更新されると、更新された第1学習済みモデル2021は、端末装置10へ提供される。第2学習済みモデル2022が更新されると、更新された第2学習済みモデル2022は、端末装置10へ提供される。
【0058】
第1学習済みモデル2021、又は第2学習済みモデル2022は、外部の装置でトレーニングされ、サーバ20に提供されてもよい。
【0059】
3次元モデルデータ2023は、ゲームリソースとしての複数のキャラクターそれぞれについてのポリゴンデータ及びテクスチャデータを記憶している。3次元モデルデータ2023が更新されると、更新された3次元モデルデータ2023は、端末装置10へ提供される。
【0060】
制御部203は、プロセッサ29が記憶部202に記憶されるプログラムを読み込み、プログラムに含まれる命令を実行することにより実現される。制御部203は、プログラムに従って動作することにより、受信制御モジュール2031、送信制御モジュール2032、画像生成モジュール2033、加工モジュール2034、学習モジュール2035、及び推論モジュール2036として示す機能を発揮する。
【0061】
受信制御モジュール2031は、サーバ20が外部の装置から通信プロトコルに従って信号を受信する処理を制御する。
【0062】
送信制御モジュール2032は、サーバ20が外部の装置に対し通信プロトコルに従って信号を送信する処理を制御する。
【0063】
画像生成モジュール2033は、3次元モデルから、複数の2次元画像を生成する処理を行う。例えば、画像生成モジュール2033は、記憶部202に記憶される1体のキャラクターについてのポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。また、例えば、画像生成モジュール2033は、加工モジュール2034で加工された3次元モデルについてのポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。3次元モデルが複数フレームのポリゴンデータ及びテクスチャデータを含む場合、画像生成モジュール2033は、各フレームのポリゴンデータ及びテクスチャデータから複数の2次元画像を生成してもよい。
【0064】
加工モジュール2034は、3次元モデルを加工する処理を行う。例えば、加工モジュール2034は、記憶部202に記憶されるポリゴンデータ又はテクスチャデータを以下のように加工する。
・ポリゴンの各頂点座標に確率的にノイズベクトルを加える。
・ポリゴンの各UV座標に確率的にノイズベクトルを加える。
・テクスチャにドットノイズを加える。
・3次元モデルの表面を描画する際のパラメータの少なくとも1つを、ランダムなポリゴンで変更する。
・ランダムにポリゴンを欠けさせる。
・所定の領域(関節)を連続的にずらし、めり込み(突き抜け)を発生させる。
【0065】
学習モジュール2035は、学習用データに基づき、機械学習モデルに機械学習を行わせることで第1学習済みモデル2021、又は第2学習済みモデル2022を生成する。
【0066】
具体的には、例えば、学習モジュール2035は、記憶部202に記憶されている3次元モデルから生成された2次元画像を入力データとし、この2次元画像が正常であることを正解出力データとして機械学習モデルを学習させる。また、学習モジュール2035は、加工モジュール2034で加工された3次元モデルから生成された2次元画像を入力データとし、3次元モデルの加工により与えられた異常に関する情報を正解出力データとして機械学習モデルを学習させることで、第1学習済みモデル2021を生成する。3次元モデルの加工により与えられた異常に関する情報には、例えば、3次元モデルへの異常の与え方(異常のクラス)、与えられた異常の位置等を含む。
【0067】
また、例えば、学習モジュール2035は、第1学習済みモデル2021を用いた推論の結果を入力データとし、3次元モデルが正常であること、又は3次元モデルの加工により与えられた異常に関する情報を正解出力データとして機械学習モデルを学習させることで、第2学習済みモデル2022を生成する。
【0068】
学習モジュール2035は、記憶部202に記憶されている3次元モデルから生成された複数の2次元画像を入力データとし、これらの2次元画像の元となる3次元モデルが正常であることを正解出力データとして機械学習モデルを学習させてもよい。このとき、学習モジュール2035は、加工モジュール2034で加工された3次元モデルから生成された複数の2次元画像と、与えられた加工及び加工の位置とを入力データとし、これらの2次元画像の元となる3次元モデルへ与えられた加工及び加工の位置を正解出力データとして機械学習モデルを学習させることで、第2学習済みモデル2022を生成する。
【0069】
また、学習モジュール2035は、新たに追加される学習用データに基づき、第1学習済みモデル2021、又は第2学習済みモデル2022を再学習させる。具体的には、例えば、学習モジュール2035は、以下の場合に、第1学習済みモデル2021、又は第2学習済みモデル2022を再学習させる。
・新たなキャラクターが追加された場合
・新たなクラスのエラーが定義された場合
【0070】
推論モジュール2036は、記憶部202に記憶されている第1学習済みモデル2021を利用して入力に対する出力を推論する。推論モジュール2036の出力は、第2学習済みモデル2022の学習における入力データとして用いられる。
【0071】
<2 動作>
(第1学習済みモデル2021の生成)
サーバ20で第1学習済みモデル2021が生成される際の制御部203の動作を説明する。
【0072】
図4は、図3に示す制御部203が第1学習済みモデル2021を生成する際の動作を説明するためのブロック図である。
【0073】
制御部203は、記憶部202に記憶される1体のキャラクターについてのポリゴンデータ及びテクスチャデータを読み出す。制御部203は、加工モジュール2034により、読み出したポリゴンデータ又はテクスチャデータを加工する。加工モジュール2034は、例えば、読み出したポリゴンデータ又はテクスチャデータに対し、各加工を施す。
【0074】
制御部203は、画像生成モジュール2033により、加工モジュール2034で加工されたポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。画像生成モジュール2033は、例えば、加工が施された各ポリゴンデータ及びテクスチャデータに基づき、複数の2次元画像を生成する。
【0075】
制御部203は、学習モジュール2035により、機械学習モデルに機械学習を行わせることで第1学習済みモデル2021を生成する。機械学習のアルゴリズムとして、判別分析、ロジスティック回帰、サポートベクターマシン、ニューラルネットワーク、Randomized Trees、又は部分空間法等が挙げられる。
【0076】
学習モジュール2035は、例えば、画像生成モジュール2033により生成された2次元画像を入力データとし、入力される2次元画像における異常のクラス、及び異常の位置等を正解出力データとして機械学習モデルを学習させる。
【0077】
具体的には、学習モジュール2035は、ポリゴンの頂点座標にノイズベクトルが加えられた3次元モデルについての2次元画像を入力データとし、異常のクラスが「頂点破壊」であること、及びノイズの位置を正解出力データとして機械学習モデルを学習させる。
【0078】
また、学習モジュール2035は、ポリゴンのUV座標にノイズベクトルが加えられた3次元モデルについての2次元画像を入力データとし、異常のクラスが「UV破壊」であること、及びノイズの位置を正解出力データとして機械学習モデルを学習させる。
【0079】
また、学習モジュール2035は、テクスチャにドットノイズが加えられた3次元モデルについての2次元画像を入力データとし、異常のクラスが「ドットノイズ」であること、及びドットノイズの位置を正解出力データとして機械学習モデルを学習させる。
【0080】
また、学習モジュール2035は、3次元モデルの表面を描画する際のパラメータの少なくとも1つが、ランダムなポリゴンで変更された3次元モデルについての2次元画像を入力データとし、異常のクラスが「マテリアル異常」であること、及びマテリアル異常の位置を正解出力データとして機械学習モデルを学習させる。
【0081】
また、学習モジュール2035は、所定のポリゴンで3次元モデルの表面を描画する際のパラメータの少なくとも1つが変更された3次元モデルについての2次元画像を入力データとし、異常のクラスが「マテリアル異常」であること、及びマテリアル異常の位置を正解出力データとして機械学習モデルを学習させる。
【0082】
また、学習モジュール2035は、ポリゴンが欠けさせられた3次元モデルについての2次元画像を入力データとし、異常のクラスが「ポリゴン欠け」であること、及び欠けているポリゴンの位置を正解出力データとして機械学習モデルを学習させる。
【0083】
また、学習モジュール2035は、めり込みを発生させた3次元モデルについての2次元画像を入力データとし、異常のクラスが「めり込み」であること、及びめり込みが発生している位置を正解出力データとして機械学習モデルを学習させる。
【0084】
制御部203は、画像生成モジュール2033により、読み出したポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。
【0085】
制御部203は、学習モジュール2035により、例えば、加工を加えていない3次元モデルに基づいて生成された2次元画像を入力データとし、入力される2次元画像が正常であることを正解出力データとして第1学習済みモデル2021を生成する。
【0086】
制御部203は、上記処理を、例えば、記憶部202に記憶されている所定のキャラクターについて繰り返すことで、第1学習済みモデル2021を学習させる。所定のキャラクターとは、例えば、以下である。
・すべてのキャラクター
・管理者が選択したキャラクター
・人に関するキャラクター
・クリーチャーに関するキャラクター
・新たにデザインされたキャラクター(更新日が所定の日以降のキャラクター)
クリーチャーに関するキャラクターについては、例えば、以下の態様がある。
・二足歩行のクリーチャー
・四足歩行のクリーチャー
・飛行するクリーチャー
・節足動物を模したクリーチャー
・四肢のないクリーチャー
制御部203は、上記処理を、例えば、クリーチャーに関するキャラクターの態様毎、又は所定の組み合わせについて繰り返すことで、第1学習済みモデル2021を学習させてもよい。
【0087】
以上のように上記実施形態では、制御部203は、加工モジュール2034により、ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、複数のキャラクターの3次元モデルデータを加工する。制御部203は、画像生成モジュール2033により、加工した3次元モデルデータに基づき、2次元画像を生成する。そして、制御部203は、学習モジュール2035により、生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデル2021をトレーニングするようにしている。これにより、第1学習済みモデル2021をトレーニングするための学習用データを自動で作成することが可能となる。このため、第1学習済みモデル2021の学習用データを作成するのに、異常が発見された3次元モデルを記憶しておく必要がなくなる。また、第1学習済みモデル2021を生成しようとしても、様々なエラー状況が発生した3次元モデルを準備することは容易ではなく、実際の3次元モデルのみでは、データの数が少ない場合も生じ得る。本実施形態では、第1学習済みモデル2021をトレーニングするためのデータを自動で作成するため、トレーニングに十分なデータを取得することが可能となる。
【0088】
また、上記実施形態では、制御部203は、学習モジュール2035により、いろいろなタイプのキャラクターの3次元モデルデータを学習用データとして第1学習済みモデル2021を学習させるようにしている。これにより、第1学習済みモデル2021を用いることで、学習されていないキャラクターについての3次元モデルデータについても、3次元モデルデータの異常を高精度に検出可能となる。
【0089】
また、上記実施形態では、制御部203は、加工モジュール2034により、3次元モデルに、頂点破壊、UV破壊、ドットノイズ、マテリアル異常、ポリゴン欠け、又はめり込み等の種類の異常を付与するようにしている。これにより、現実に発生し得る異常を含む学習用データを自動で作成することが可能となる。
【0090】
また、上記実施形態では、制御部203は、学習モジュール2035により、加工により異常を与えた位置を正解出力として第1学習済みモデル2021をトレーニングするようにしている。これにより、第1学習済みモデル2021の出力として、異常が発生している可能性のある領域が出力されるようになる。
【0091】
したがって、本実施形態に係るサーバ20によれば、ゲームリソースに関するテストに係る負担を軽減できる。
【0092】
(第2学習済みモデル2022の生成)
サーバ20で第1学習済みモデル2021が生成される際の制御部203の動作を説明する。
【0093】
図5は、図3に示す制御部203が第2学習済みモデル2022を生成する際の動作を説明するためのブロック図である。
【0094】
制御部203は、記憶部202に記憶される1体のキャラクターについてのポリゴンデータ及びテクスチャデータを読み出す。制御部203は、加工モジュール2034により、読み出したポリゴンデータ又はテクスチャデータを加工する。
【0095】
制御部203は、画像生成モジュール2033により、加工モジュール2034で加工されたポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。
【0096】
制御部203は、推論モジュール2036により、記憶部202に記憶されている第1学習済みモデル2021を利用して入力に対する出力を推論する。具体的には、例えば、推論モジュール2036は、画像生成モジュール2033で生成された2次元画像を、第1学習済みモデル2021へ入力し、異常のクラス、及び異常の位置を出力させる。
【0097】
制御部203は、学習モジュール2035により、機械学習モデルに機械学習を行わせることで第2学習済みモデル2022を生成する。学習モジュール2035は、例えば、推論モジュール2036により推論された、1つの3次元モデルについての複数の2次元画像の推論結果を入力データとし、3次元モデルに与えられた加工のクラス、及び加工の位置等を正解出力データとして機械学習モデルを学習させる。
【0098】
制御部203は、画像生成モジュール2033により、読み出したポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。
【0099】
制御部203は、推論モジュール2036により、記憶部202に記憶されている第1学習済みモデル2021を利用して入力に対する出力を推論する。具体的には、例えば、推論モジュール2036は、画像生成モジュール2033で生成された、加工が施されていない3次元モデルについての2次元画像を、第1学習済みモデル2021へ入力し、2次元画像についての推論結果を出力させる。
【0100】
制御部203は、学習モジュール2035により、例えば、推論モジュール2036により推論された、加工が施されていない3次元モデルについての複数の2次元画像の推論結果を入力データとし、3次元モデルが正常であることを正解出力データとして機械学習モデルを学習させる。
【0101】
制御部203は、上記処理を、例えば、記憶部202に記憶されている所定のキャラクターについて繰り返すことで、第2学習済みモデル2022を学習させる。
【0102】
以上のように上記実施形態では、制御部203は、学習モジュール2035により、複数の2次元画像を入力とした第1学習済みモデル2021からの出力を入力とし、加工により与えた異常の種類を正解出力として第2学習済みモデル2022をトレーニングするようにしている。1枚1枚の画像の認識では、画像に異常が含まれていなくても、光の当たり方、又はフレームによっては人間でも異常を誤認することがある。このような、人間でも誤認するような学習用データがAIの見かけ上の性能を下げるおそれがある。複数の2次元画像と、2次元画像の異常についての情報とを入力データとすることで、3次元モデルにおける異常の有無を総合的に判断することが可能となる。これにより、サーバ20は、3次元モデルにおける異常の有無の検出精度を向上させることが可能となる。
【0103】
また、上記実施形態では、制御部203は、学習モジュール2035により、いろいろなタイプのキャラクターの3次元モデルデータを学習用データとして第1学習済みモデル2021及び第2学習済みモデル2022を学習させるようにしている。これにより、第1学習済みモデル2021及び第2学習済みモデル2022を用いることで、学習されていないキャラクターについての3次元モデルデータについても、3次元モデルデータの異常を高精度に検出可能となる。
【0104】
したがって、本実施形態に係るサーバ20によれば、ゲームリソースに関するテストに係る負担を軽減できる。
【0105】
(端末装置10における推論処理1)
端末装置10で推論処理が実施される際の制御部190の動作を説明する。
【0106】
図6は、図2に示す制御部190が第1学習済みモデル181を用いて3次元モデルの異常を検出する際の動作を説明するためのブロック図である。
【0107】
制御部190は、記憶部180に記憶される1体のキャラクターについてのポリゴンデータ及びテクスチャデータを読み出す。このとき読み出されるポリゴンデータ及びテクスチャデータのキャラクターは、第1学習済みモデル181の学習において用いられたキャラクターであってもよいし、第1学習済みモデル181の学習において用いられたキャラクターと異なるキャラクターであってもよい。制御部190は、画像生成部193により、読み出したポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。3次元モデルが複数フレームのポリゴンデータ及びテクスチャデータを含む場合、画像生成部193は、少なくとも1フレームのポリゴンデータ及びテクスチャデータから複数の2次元画像を生成してもよい。
【0108】
制御部190は、推論部194により、記憶部180に記憶されている第1学習済みモデル181を利用し、入力に対する出力を推論する。具体的には、例えば、推論部194は、第1学習済みモデル181により実現される第1異常判定部1941に、画像生成部193で生成された2次元画像を入力する。第1異常判定部1941は、入力された2次元画像に異常が含まれているか否かを表す推論結果を出力する。例えば、第1異常判定部1941は、2次元画像が、正常、頂点破壊、UV破壊、ドットノイズ、マテリアル異常、ポリゴン欠け、又はめり込みのクラスに該当する可能性を表す指標値、及び着目すべき領域を出力する。
【0109】
制御部190は、例えば、ユーザにより指定されたキャラクターの3次元モデルについて上記処理を繰り返す。
【0110】
制御部190は、ユーザにより指定されたキャラクターの3次元モデルについての推論部194から推論結果が出力されると、表示制御部195により、ユーザへ推論結果を提示する。
【0111】
図7は、端末装置10のユーザに提示される推論結果の一例を表す模式図である。図7において、ディスプレイ141は、アラートリスト1411と、検証履歴リスト1412とを含む。アラートリスト1411は、異常を含む可能性が高い2次元画像が提示される。ディスプレイ141は、例えば、出力された指標値が予め設定された閾値よりも高い2次元画像を、アラートリスト1411に追加する。アラートリスト1411は、例えば、項目「実施日付」と、項目「ファイル名」と、項目「画像番号」と、項目「スコアサマリ」と、項目「サムネイル」とを含む。
【0112】
項目「実施日付」は、検証を実施した日付を表す。
【0113】
項目「ファイル名」は、検証が実施された3次元モデルのファイル名を表す。
【0114】
項目「画像番号」は、3次元モデルについて生成された画像の識別番号を表す。
【0115】
項目「スコアサマリ」は、2次元画像に対して出力された推論結果のサマリを表す。例えば、表示制御部195は、推論部194により出力されたクラスのうち、該当する可能性が最も高いクラスを項目「スコアサマリ」に表示する。例えば、表示制御部195は、推論部194により出力されたクラスのうち、指標値が最も高いクラスを項目「スコアサマリ」に表示する。
【0116】
項目「サムネイル」は、入力した2次元画像のサムネイルを表す。例えば、図7の四角で示される領域に、入力した2次元画像のサムネイル画像が表示される。表示制御部195は、ユーザによりサムネイル画像が押下されると、画像中の着目するべき領域をユーザに提示する。
【0117】
検証履歴リスト1412は、検証対象となった2次元画像が提示される。検証履歴リスト1412は、例えば、項目「実施日付」と、項目「ファイル名」と、項目「画像番号」と、項目「スコアサマリ」と、項目「サムネイル」とを含む。
【0118】
ユーザは、ディスプレイ141に表示される推論結果を参照し、3次元モデルにおける異常を判断する。
【0119】
制御部190は、推論結果を他の端末装置10へ送信してもよい。また、制御部190は、推論結果そのものでなく、推論が完了した旨を他の端末装置10へ送信してもよい。
【0120】
以上のように、上記実施形態では、制御部190は、画像生成部193により、ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成する。制御部190は、推論部194により、2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデル181に、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するようにしている。これにより、端末装置10は、ゲームリソースとしての3次元モデルデータにおける異常の有無を検出することが可能となる。
【0121】
また、ゲームリソースについての1の3次元モデルデータは、第1学習済みモデル181の学習の際に利用された3次元モデルデータと異なるものであってもよい。このため、新たなキャラクターについての3次元モデルデータにおける異常(バグ)の有無を、第1学習済みモデル181を用いて検出することが可能となる。
【0122】
したがって、本実施形態に係る端末装置10によれば、ゲームリソースに関するテストに係る負担を軽減できる。
【0123】
また、上記実施形態では、制御部190は、推論部194において、第1学習済みモデル181に、入力された2次元画像に含まれる異常の種類を表す情報を出力させるようにしている。これにより、ユーザは、異常の確認をすることが容易となる。
【0124】
また、上記実施形態では、制御部190は、推論部194において、第1学習済みモデル181に、入力された2次元画像に含まれる異常の種類と、当該種類の異常である可能性を表す指標とを出力させるようにしている。これにより、ユーザは、異常の確認をすることがさらに容易となる。
【0125】
また、上記実施形態では、制御部190は、推論部194において、第1学習済みモデル181に、入力された2次元画像において着目するべき領域を出力させるようにしている。これにより、ユーザは、異常を確認する際に着目するべき領域の見当をつけることが可能となる。
【0126】
また、上記実施形態では、制御部190は、画像生成部193により、複数フレーム分の3次元モデルデータのうち、少なくとも1フレームの3次元モデルデータから複数の2次元画像を生成するようにしている。これにより、記憶部180に記憶されている3次元モデルデータが動画であっても、テストにおけるユーザの負担を軽減することが可能となる。
【0127】
(端末装置10における推論処理2)
端末装置10で推論処理が実施される際の制御部190の動作を説明する。
【0128】
図8は、図2に示す制御部190が第1学習済みモデル181及び第2学習済みモデル182を用いて3次元モデルの異常を検出する際の動作を説明するためのブロック図である。
【0129】
制御部190は、記憶部180に記憶される1体のキャラクターについてのポリゴンデータ及びテクスチャデータを読み出す。このとき読み出されるポリゴンデータ及びテクスチャデータのキャラクターは、第1学習済みモデル181及び第2学習済みモデル182の学習において用いられたキャラクターであってもよいし、第1学習済みモデル181及び第2学習済みモデル182の学習において用いられたキャラクターと異なるキャラクターであってもよい。制御部190は、画像生成部193により、読み出したポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する。3次元モデルが複数フレームのポリゴンデータ及びテクスチャデータを含む場合、画像生成部193は、少なくとも1フレームのポリゴンデータ及びテクスチャデータから複数の2次元画像を生成してもよい。
【0130】
制御部190は、推論部194により、記憶部180に記憶されている第1学習済みモデル181及び第2学習済みモデル182を利用し、入力に対する出力を推論する。具体的には、例えば、推論部194は、第1学習済みモデル181により実現される第1異常判定部1941に、画像生成部193で生成された2次元画像を入力する。第1異常判定部1941は、入力された2次元画像に異常が含まれているか否かを表す推論結果を出力する。第1異常判定部1941は、画像生成部193で生成されたすべての2次元画像についての推論結果を、第2学習済みモデル182により実現される第2異常判定部1942へ出力する。
【0131】
第2異常判定部1942は、入力された推論結果の元となる3次元モデルに異常が含まれているか否かを表す推論結果を出力する。例えば、第2異常判定部1942は、3次元モデルが、正常、頂点破壊、UV破壊、ドットノイズ、マテリアル異常、ポリゴン欠け、又はめり込みのクラスに該当する可能性があること、上記異常のクラスに該当する可能性を表す指標値、又は着目すべき領域を出力する。
【0132】
制御部190は、例えば、ユーザにより指定されたキャラクターの3次元モデルについて上記処理を繰り返す。
【0133】
制御部190は、ユーザにより指定されたキャラクターの3次元モデルについての推論部194から推論結果が出力されると、表示制御部195により、ユーザへ推論結果を提示する。
【0134】
図9図10は、端末装置10のユーザに提示される推論結果の一例を表す模式図である。図9において、ディスプレイ141は、アラートリスト1413と、検証履歴リスト1414とを含む。アラートリスト1413は、異常を含む可能性が高いと判断された3次元モデルが提示される。ディスプレイ141は、例えば、出力された指標値が予め設定された閾値よりも高い3次元モデルを、アラートリスト1413に追加する。アラートリスト1413は、例えば、項目「実施日付」と、項目「ファイル名」と、項目「スコアサマリ」と、項目「サムネイル」とを含む。
【0135】
項目「実施日付」は、検証を実施した日付を表す。
【0136】
項目「ファイル名」は、検証が実施された3次元モデルのファイル名を表す。
【0137】
項目「スコアサマリ」は、3次元モデルに対して出力された推論結果のサマリを表す。例えば、表示制御部195は、推論部194により出力されたクラスのうち、該当する可能性が最も高いクラスを項目「スコアサマリ」に表示する。例えば、表示制御部195は、推論部194により出力されたクラスのうち、指標値が最も高いクラスを項目「スコアサマリ」に表示する。
【0138】
項目「サムネイル」は、3次元モデルについて生成された代表的な2次元画像のサムネイルを表す。代表的な2次元画像は、例えば、以下である。
・指標値が最も高い2次元画像
・代表図として予め登録されている2次元画像
【0139】
図9の四角で示される領域に、3次元モデルについてのサムネイル画像が表示される。
【0140】
検証履歴リスト1414は、検証対象となった3次元モデルが提示される。検証履歴リスト1414は、例えば、項目「実施日付」と、項目「ファイル名」と、項目「画像番号」と、項目「スコアサマリ」と、項目「サムネイル」とを含む。
【0141】
表示制御部195は、アラートリスト1413に表示されるレコードのいずれかがユーザにより押下されると、図10に示す詳細情報をディスプレイ141に表示させる。図10において、ディスプレイ141は、サマリ情報1415と、詳細リスト1416とを含む。サマリ情報1415は、ユーザにより選択されたレコードについての情報を提示する。サマリ情報1415は、例えば、項目「実施日付」と、項目「ファイル名」と、項目「スコアサマリ」と、項目「サムネイル」とを含む。
【0142】
詳細リスト1416は、ユーザにより指定された3次元モデルに基づいて生成された2次元画像それぞれについての推論結果を表す。詳細リスト1416は、例えば、項目「画像」と、項目「着目点」と、項目「スコア」とを含む。
【0143】
項目「画像」は、画像生成部193により生成された2次元画像を表す。この2次元画像は、第1異常判定部1941に入力された2次元画像と換言してもよい。
【0144】
項目「着目点」は、第1異常判定部1941から出力された2次元画像であり、着目すべき領域を含む2次元画像である。この2次元画像では、例えば、異常が発生している可能性が高い領域に、他の領域と区別して識別可能な表示がなされている。
【0145】
項目「スコア」は、第1異常判定部1941に入力された2次元画像に対して出力される、異常のクラスに該当する可能性を表す指標値を表す。
【0146】
ユーザは、ディスプレイ141に表示される推論結果を参照し、3次元モデルにおける異常を判断する。
【0147】
制御部190は、推論結果を他の端末装置10へ送信してもよい。また、制御部190は、推論結果そのものでなく、推論が完了した旨を他の端末装置10へ送信してもよい。
【0148】
以上のように上記実施形態では、端末装置10は、推論部194により、1の3次元モデルデータに基づく複数の2次元画像についての異常の有無の判定結果を入力とし、3次元モデルデータについての異常の有無に関する情報を正解出力として学習された第2学習済みモデル182に、第1学習済みモデル181から出力される判定結果を入力することで、第1学習済みモデル181に入力した2次元画像の元となる3次元モデルデータについての異常の有無を判定するようにしている。これにより、端末装置10は、3次元モデルにおける異常の有無を総合的に判断することが可能となる。このため、ユーザは、1枚1枚の画像の異常の有無の推論結果を確認する必要がなくなる。つまり、端末装置10は、ユーザの負担を軽減することが可能となる。
【0149】
また、ゲームリソースについての1の3次元モデルデータは、第1学習済みモデル181及び第2学習済みモデル182の学習の際に利用された3次元モデルデータと異なるものであってもよい。このため、新たなキャラクターについての3次元モデルデータにおける異常(バグ)の有無を、第1学習済みモデル181及び第2学習済みモデル182を用いて検出することが可能となる。
【0150】
また、上記実施形態では、制御部190は、画像生成部193により、複数フレーム分の3次元モデルデータのうち、少なくとも1フレームの3次元モデルデータから複数の2次元画像を生成する。制御部190は、推論部194により、第2学習済みモデル182に、第1学習済みモデル181から出力される、各フレームの3次元モデルデータについての2次元画像の判定結果を入力することで、各フレームの3次元モデルデータについての異常の有無を判定するようにしている。これにより、記憶部180に記憶されている3次元モデルデータが動画であっても、テストにおけるユーザの負担を軽減することが可能となる。
【0151】
したがって、本実施形態に係る端末装置10によれば、ゲームリソースに関するテストに係る負担を軽減できる。
【0152】
<変形例>
上記実施形態では、画像生成部193、又は画像生成モジュール2033において、ポリゴンデータ及びテクスチャデータに基づき、複数の視点から見た2次元画像を生成する場合を例に説明した。しかしながら、複数の画像は、視点を変えて確認される2次元画像に限定されない。例えば、画像生成部193、又は画像生成モジュール2033は、ライティングを変えて、複数の2次元画像を生成してもよい。ライティングの変更とは、例えば、光源の位置、又は光量を変更することを含む。
【0153】
また、上記実施形態では、サーバ20で第1学習済みモデル2021、又は第2学習済みモデル2022をトレーニングし、トレーニングされた第1学習済みモデル2021、又は第2学習済みモデル2022を、端末装置10へ提供する場合を例に説明した。しかしながら、第1学習済みモデル2021、又は第2学習済みモデル2022がトレーニングされるのは、サーバ20に限定されない。端末装置10が第1学習済みモデル2021、又は第2学習済みモデル2022をトレーニングするようにしてもよい。
【0154】
以上、本開示のいくつかの実施形態を説明したが、これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものとする。
【0155】
<付記>
以上の各実施形態で説明した事項を以下に付記する。
【0156】
(付記1)
プロセッサ19と、メモリ15とを備えるコンピュータに実行させるためのプログラムであって、プログラムは、プロセッサに、ゲームリソースについての1の3次元モデルデータ183に基づき、複数の2次元画像を生成するステップ(画像生成部193)と、2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデル181に、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップ(推論部194)とを実行させるプログラム。
【0157】
(付記2)
判定するステップにおいて、第1学習済みモデルは、入力された2次元画像に含まれる異常の種類を表す情報を出力する(付記1)に記載のプログラム。
【0158】
(付記3)
判定するステップにおいて、第1学習済みモデルは、入力された2次元画像に含まれる異常の種類と、当該種類の異常である可能性を表す指標を出力する(付記1)に記載のプログラム。
【0159】
(付記4)
判定するステップにおいて、第1学習済みモデルは、入力された2次元画像において着目するべき領域を出力する(付記1)乃至(付記3)のいずれかに記載のプログラム。
【0160】
(付記5)
判定するステップにおいて、1の3次元モデルデータに基づく複数の2次元画像についての異常の有無の判定結果を入力とし、3次元モデルデータについての異常の有無に関する情報を正解出力として学習された第2学習済みモデル182に、第1学習済みモデルから出力される判定結果を入力することで、第1学習済みモデルに入力した2次元画像の元となる3次元モデルデータについての異常の有無を判定する(付記1)乃至(付記4)のいずれかに記載のプログラム。
【0161】
(付記6)
2次元画像を生成するステップにおいて、複数フレーム分の3次元モデルデータのうち、少なくとも1フレームの3次元モデルデータから複数の2次元画像を生成する(付記1)乃至(付記5)のいずれかに記載のプログラム。
【0162】
(付記7)
2次元画像を生成するステップにおいて、複数フレーム分の3次元モデルデータのうち、少なくとも1フレームの3次元モデルデータから複数の2次元画像を生成し、判定するステップにおいて、第2学習済みモデルに、第1学習済みモデルから出力される、各フレームの3次元モデルデータについての2次元画像の判定結果を入力することで、各フレームの3次元モデルデータについての異常の有無を判定する(付記5)に記載のプログラム。
【0163】
(付記8)
プロセッサと、メモリとを備えるコンピュータに実行される方法であって、プロセッサが、ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップとを実行する方法。
【0164】
(付記9)
制御部190と、記憶部180とを備える情報処理装置10であって、制御部が、ゲームリソースについての1の3次元モデルデータに基づき、複数の2次元画像を生成するステップと、2次元画像を入力とし、入力された2次元画像についての異常の有無に関する情報を正解出力として学習された第1学習済みモデルに、生成された複数の2次元画像をそれぞれ入力することで、各2次元画像についての異常の有無を判定するステップとを実行する情報処理装置。
【0165】
(付記10)
プロセッサ29と、メモリ25とを備えるコンピュータに実行させるためのプログラムであって、プログラムは、プロセッサに、ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、3次元モデルデータを加工するステップ(加工モジュール2034)と、加工した3次元モデルデータに基づき、2次元画像を生成するステップ(画像生成モジュール2033)と、生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデルをトレーニングするステップ(学習モジュール2035)とを実行させるプログラム。
【0166】
(付記11)
加工するステップにおいて、3次元モデルデータに与える異常の種類は、頂点破壊、UV破壊、ドットノイズ、マテリアル異常、ポリゴン欠け、又はめり込みである(付記10)に記載のプログラム。
【0167】
(付記12)
トレーニングするステップにおいて、加工により異常を与えた位置を正解出力として第1学習済みモデルをトレーニングする(付記10)又は(付記11)に記載のプログラム。
【0168】
(付記13)
複数の2次元画像を入力とした第1学習済みモデルからの出力を入力とし、加工により与えた異常の種類を正解出力として第2学習済みモデルをトレーニングする(付記10)乃至(付記12)のいずれかに記載のプログラム。
【0169】
(付記14)
プロセッサと、メモリとを備えるコンピュータに実行される方法であって、プロセッサが、ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、3次元モデルデータを加工するステップと、加工した3次元モデルデータに基づき、2次元画像を生成するステップと、生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデルをトレーニングするステップとを実行する方法。
【0170】
(付記15)
制御部203と、記憶部202とを備える情報処理装置20であって、制御部が、ゲームリソースについての3次元モデルデータが予め設定した種類の異常を含むように、3次元モデルデータを加工するステップと、加工した3次元モデルデータに基づき、2次元画像を生成するステップと、生成した2次元画像を入力とし、加工により与えた異常の種類を正解出力として第1学習済みモデルをトレーニングするステップとを実行する情報処理装置。
【符号の説明】
【0171】
1…システム
10…端末装置
12…通信IF
120…通信部
13…入力装置
131…マウス
132…キーボード
133…タッチ・センシティブ・デバイス
14…出力装置
141…ディスプレイ
1411…アラートリスト
1412…検証履歴リスト
1413…アラートリスト
1414…検証履歴リスト
1415…サマリ情報
1416…詳細リスト
15…メモリ
16…ストレージ
160…カメラ
17…音声処理部
171…マイク
172…スピーカ
180…記憶部
181…第1学習済みモデル
182…第2学習済みモデル
183…3次元モデルデータ
19…プロセッサ
190…制御部
191…操作受付部
192…送受信部
193…画像生成部
194…推論部
1941…第1異常判定部
1942…第2異常判定部
195…表示制御部
20…サーバ
201…通信部
202…記憶部
2021…第1学習済みモデル
2022…第2学習済みモデル
2023…3次元モデルデータ
203…制御部
2031…受信制御モジュール
2032…送信制御モジュール
2033…画像生成モジュール
2034…加工モジュール
2035…学習モジュール
2036…推論モジュール
22…通信IF
23…入出力IF
25…メモリ
26…ストレージ
29…プロセッサ
80…ネットワーク

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10