本発明の実施形態に係る情報処理システムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
<システム構成>
図1は、本実施の形態に係る情報処理システムの構成を説明するための模式図である。本実施の形態に係る情報処理システムは、例えば食品又は医薬品等の検査対象物に異常があるか否かを判定するシステムである。本実施の形態に係る情報処理システムは、情報処理装置1、検査装置3及びカメラ5等を備えて構成されている。検査装置3及びカメラ5は、例えば検査対象物の検査を行う工場又は検査場等に設けられ、検査対象物の異常等を判定する検査工程等で直接的に用いられる装置である。これに対して情報処理装置1は、検査装置3が異常判定の処理に用いる学習モデル、いわゆるAIを生成するための装置であり、例えば検査装置3の開発及び販売等を行う会社が管理運営する装置である。
本実施の形態に係る情報処理システムでは、検査工程等で検査装置3及びカメラ5を用いた検査対象物の検査を開始する前に、情報処理装置1による学習モデルの生成が行われる。本実施の形態においては、検査装置3及びカメラ5を用いて正常な検査対象物及び異常を有する検査対象物の撮影を予め行い、複数の検査対象物の撮影画像を情報処理装置1が検査装置3から取得し、取得した複数の画像を学習用データとして用いた機械学習の処理を行うことにより、検査対象物を撮影した画像に基づいて検査対象物の異常の有無を判定する学習モデルを生成する。情報処理装置1が生成した学習モデルは検査装置3へ送信され、検査装置3は情報処理装置1が生成した学習済みの学習モデルを受信して自身の記憶部に記憶する。なお情報処理装置1が学習モデルを生成するために学習用データとして用いる画像は、必ずしも検査装置3及びカメラ5により撮影された画像でなくてよく、同様の条件で撮影された画像であればどのような装置により撮影された画像が学習用データとして用いられてもよい。
検査装置3は、情報処理装置1が生成した学習モデルを用いて、検査対象物の検査、即ち検査対象物に異常があるか否かを判定する処理を行う。検査装置3は、カメラ5にて検査対象物を撮影し、検査対象物の撮影画像を学習済みの学習モデルへ入力する。学習モデルは、入力された画像に写された検査対象物の異常の有無に関する情報を出力する。検査装置3は、学習モデルが出力する情報を取得して、検査対象物に異常があるか否かを判定することができる。
<検査処理>
図2は、本実施の形態に係る検査装置3の構成を説明するための模式図である。本実施の形態に係る検査装置3は、カメラ5及び検査対象物の間に配置される回転フィルタ7を備えている。検査装置3は、回転フィルタ7を通してカメラ5による撮影を行い、回転フィルタ7を通して撮影された検査対象物の撮影画像に基づいて検査を行う。
図3は、回転フィルタ7の構成を説明するための模式図である。回転フィルタ7は、円板状の本体部に複数種類のフィルタ7a~7fが周方向に並べて配置されたものであり、本体部の中心にはモータの回転軸が固定されている。回転フィルタ7は、いずれか1つのフィルタ7a~7fがカメラ5のレンズの前に位置するよう設置される。回転フィルタ7のモータは検査装置3により回転の制御が行われ、検査装置3はモータの回転を制御して回転フィルタ7の本体部を回転させることで、カメラ5のレンズの前に位置するフィルタ7a~7fを切り替えることができる。即ち検査装置3は、回転フィルタ7が備える複数種類のフィルタ7a~7fの1つを選択してカメラ5による検査対象物の撮影を行うことができる。
また本実施の形態に係るカメラ5は、可視光線のみでなく、赤外線を受光して撮影を行うことが可能なカメラである。回転フィルタ7が備える複数種類のフィルタ7a~7fには、例えば赤色の光を通過させる赤色フィルタ、青色の光を通過させる青色フィルタ、緑色の光を通過させる緑色フィルタ、第1波長(例えば750nm)の赤外線を通過させる第1赤外線フィルタ、及び、第2波長(例えば800nm)の赤外線を通過させる第2赤外線フィルタ等が含まれ得る。また回転フィルタ7のフィルタ7a~7fには、実質的にフィルタなしで通常の撮影を行うものが含まれていてよい。
本実施の形態に係る検査装置3は、回転フィルタ7を回転させて複数種類のフィルタ7a~7fを介したカメラ5による検査対象物の撮影を順に行い、撮影された複数の撮影画像に基づいて、検査対象物の異常の有無を判定する。例えば回転フィルタ7に6種類のフィルタ7a~7fが設けられている場合、検査装置3は各フィルタ7a~7fを介した検査対象物の撮影を順に行うことによって、6種類の撮影画像を取得することができる。ただし検査装置3は、回転フィルタ7が備える全てのフィルタ7a~7fを用いた撮影を行う必要はなく、例えば回転フィルタ7に6種類のフィルタ7a~7fが設けられている場合であっても、検査装置3は5つ又はそれ以下のフィルタ7a~7fを用いて撮影を順に行い、5種類又はそれ以下の種類の撮影画像を取得してもよい。検査装置3は、カメラ5及び回転フィルタ7を用いた撮影により得られた検査対象物の複数種類の撮影画像と、情報処理装置1が生成した学習モデルとを用いて、撮影画像に写された検査対象物の異常の有無を判定する。
なお本実施の形態においては、回転フィルタ7を用いて複数種類のフィルタを変更する構成が採用されているが、フィルタを変更するための構成は回転フィルタ7の構成に限らない。例えば、カメラ5のレンズに対して一又は複数のフィルタがスライドすることにより切り替わる構成であってよく、これら以外の方法でフィルタの切り替えが行われる構成であってよい。またフィルタの切り替えは、検査装置3等の制御により自動で行われてよく、ユーザの手動により行われてもよい。ユーザが手動でフィルタを切り替える構成の場合、例えばカメラ5のレンズに対してユーザがフィルタを個別に着脱する構成であってもよい。
図4は、本実施の形態に係る検査装置3の構成を示すブロック図である。本実施の形態に係る検査装置3は、処理部31、記憶部(ストレージ)32、通信部(トランシーバ)33、入出力部34、表示部(ディスプレイ)35及び操作部36等を備えて構成されている。処理部31は、CPU(Central Processing Unit)又はMPU(Micro-Processing Unit)等の演算処理装置、ROM(Read Only Memory)及びRAM(Random Access Memory)等を用いて構成されている。処理部31は、記憶部32に記憶されたプログラム32aを読み出して実行することにより、検査対象物の検査に関する種々の制御処理及びカメラ5の撮影画像に基づく異常判定処理等の種々の処理を行う。
記憶部32は、例えばフラッシュメモリ又はハードディスク等の不揮発性の記憶装置を用いて構成されている。記憶部32は、処理部31が実行する各種のプログラム、及び、処理部31の処理に必要な各種のデータを記憶する。本実施の形態において記憶部32は、処理部31が実行するプログラム32aを記憶する。また記憶部32には、予め機械学習がなされた学習済みの学習モデルに関する情報を記憶する学習モデル記憶部32bが設けられている。
本実施の形態においてプログラム(コンピュータプログラム、プログラム製品)32aは、メモリカード又は光ディスク等の記録媒体99に記録された態様で提供され、検査装置3は記録媒体99からプログラム32aを読み出して記憶部32に記憶する。ただし、プログラム32aは、例えば検査装置3の製造段階において記憶部32に書き込まれてもよい。また例えばプログラム32aは、遠隔のサーバ装置等が配信するものを検査装置3が通信にて取得してもよい。例えばプログラム32aは、記録媒体99に記録されたものを書込装置が読み出して検査装置3の記憶部32に書き込んでもよい。プログラム32aは、ネットワークを介した配信の態様で提供されてもよく、記録媒体99に記録された態様で提供されてもよい。
学習モデル記憶部32bは、検査装置3が異常判定等の処理に用いる一又は複数の学習モデルに関する情報を記憶する。学習モデルに関する情報には、例えば学習モデルの構造を示す情報、及び、機械学習の処理により決定された学習モデルのパラメータの情報等が含まれ得る。
通信部33は、LAN(Local Area Network)又はインターネット等を含むネットワークを介して、種々の装置との間で通信を行う。本実施の形態において通信部33は、ネットワークを介して情報処理装置1との間で通信を行う。通信部33は、処理部31から与えられたデータを他の装置へ送信すると共に、他の装置から受信したデータを処理部31へ与える。
入出力部34は、例えば通信ケーブルを介してカメラ5及び回転フィルタ7にそれぞれ接続され、カメラ5及び回転フィルタ7との間で撮影画像及び制御情報等のデータの授受を行う。入出力部34は、例えばUSB(Universal Serial Bus)又はLAN(Local Area Network)等の規格に基づいてデータの授受を行ってよい。また入出力部34は、通信ケーブルを介すことなく、無線通信によりカメラ5又は回転フィルタ7とのデータの授受を行ってもよい。
表示部35は、液晶ディスプレイ等を用いて構成されており、処理部31の処理に基づいて種々の画像及び文字等を表示する。操作部36は、ユーザの操作を受け付け、受け付けた操作を処理部31へ通知する。例えば操作部36は、機械式のボタン又は表示部35の表面に設けられたタッチパネル等の入力デバイスによりユーザの操作を受け付ける。また例えば操作部36は、マウス及びキーボード等の入力デバイスであってよく、これらの入力デバイスは検査装置3に対して取り外すことが可能な構成であってもよい。
また本実施の形態に係る検査装置3には、記憶部32に記憶されたプログラム32aを処理部31が読み出して実行することにより、撮影画像取得部31a、異常判定部31b及び表示処理部31c等が、ソフトウェア的な機能部として処理部31に実現される。なお本図においては、処理部31の機能部として、検査対象物の異常判定の処理に関連する機能部を図示し、これ以外の処理に関する機能部は図示を省略している。
撮影画像取得部31aは、入出力部34にてカメラ5及び回転フィルタ7との間でデータの送受信を行うことによってこれらの動作を制御し、回転フィルタ7を通した検査対象物の撮影をカメラ5にて行う。撮影画像取得部31aは、回転フィルタ7の回転を制御することで複数のフィルタ7a~7fを切り替える。また撮影画像取得部31aは、カメラ5の撮影に関する制御、例えばシャッター速度の変更、明るさの調整及びピント合わせ等の制御を行う。撮影画像取得部31aは、回転フィルタ7のフィルタ7a~7fを切り替えてカメラ5による検査対象物の撮影を順に行い、複数のフィルタ7a~7fを介してそれぞれ撮影された検査対象物の撮影画像をカメラ5から取得する。撮影画像取得部31aは、取得した撮影画像を記憶部32に一時的に記憶する。
異常判定部31bは、カメラ5から取得した検査対象物の複数の撮影画像に基づいて、検査対象物の異常の有無を判定する処理を行う。本実施の形態において異常判定部31bは、記憶部32の学習モデル記憶部32bに記憶された一又は複数の学習モデルを用いて異常判定の処理を行う。例えば学習モデルは、画像の入力を受け付けて、この画像に写された検査対象物に異常があるか否かを出力するよう予め機械学習がなされた学習モデルである。また例えば学習モデルは、画像の入力を受け付けて、この画像に写された検査対象に含まれる異常の箇所を囲む矩形枠(いわゆるバウンディングボックス)の情報を出力するよう予め機械学習がなされた学習モデルであってもよい。また例えば学習モデルは、画像の入力を受け付けて、この画像に写された検査対象物の異常の箇所を検出し、検出した異常の箇所に相当する画像中の画素を特定する(いわゆるセグメンテーションを行う)よう予め機械学習がなされた学習モデルであってもよい。異常判定部31bが利用する学習モデルは、これら以外のどのようなものであってもよい。異常判定部31bは、カメラ5から取得した撮影画像を学習モデルへ入力し、学習モデルが出力する情報を取得し、取得した情報に基づいて検査対象物の異常の有無を判定する。
表示処理部31cは、画像及び文字等の種々の情報を表示部35に表示する処理を行う。本実施の形態において表示処理部31cは、異常判定部31bによる異常判定の結果に関する情報を表示部35に表示する。表示処理部31cは、例えば検査対象物に異常があると判定された場合にその旨を通知するメッセージを表示部35に表示すると共に、異常ありと判定された検査対象物の撮影画像に検出された異常の箇所を示す記号又は図形等を重畳した画像を表示してもよい。
図5は、本実施の形態に係る検査装置3が用いる学習モデルの一構成例を示す模式図である。本実施の形態に係る学習モデルは、撮影条件が異なる複数種類の撮影画像の入力を受け付けて、これらの画像に写された検査対象物の異常の有無に関する情報を出力するよう予め機械学習がなされた学習モデルである。学習モデルに対して入力される複数種類の撮影画像は、回転フィルタ7に設けられた複数のフィルタ7a~7fを介してカメラ5がそれぞれ撮影した撮影画像である。例えば回転フィルタ7に6種類のフィルタ7a~7fが設けられている場合、学習モデルには6種類の撮影画像が入力される。
本実施の形態に係る学習モデルは、例えばCNN(Convolutional Neural Network)の学習モデルが採用され得る。ただし学習モデルは、CNN以外の構成、例えばDNN(Deep Neural Network)、Attention、Transformer又はGAN(Generative Adversarial Network)等の種々の構成の学習モデルが採用されてよい。複数の撮影画像は、CNNへの入力データの各チャネル(チャンネル)に割り当てられて、CNNへ一纏まりの画像データとして入力される。例えば、6種類の撮影画像は6チャネルの一纏まりの画像データとして学習モデルへ入力される。ただしこれは各撮影画像が1チャネル(グレースケール)の画像の場合であり、各撮影画像が3チャネル(カラー)の画像であれば、3×6=18チャネルの画像データが学習モデルへ入力される。
図6は、本実施の形態に係る検査装置3が用いる学習モデルの他の構成例を示す模式図である。図6に示す他の構成例は、複数の撮影画像を1つの学習モデルへ入力するのではなく、複数の撮影画像を複数の学習モデルへ入力する構成である。複数の学習モデルは、例えばそれぞれCNNの学習モデルであり、1つの撮影画像の入力に対して、この撮影画像に写された検査対象物の異常の有無に関する情報を出力するよう予め機械学習がなされた学習モデルである。例えば回転フィルタ7が6種類のフィルタ7a~7fを備える場合、学習モデルは各フィルタ7a~7fに対応付けて6つ生成される。
検査装置3は、回転フィルタ7の各フィルタ7a~7fを通してカメラ5による検査対象物の撮影を行い、検査対象物の撮影画像を撮影に用いたフィルタ7a~7fに対応する学習モデルへ入力し、学習モデルが出力する情報を取得する。検査装置3は、複数のフィルタ7a~7fについて同様の処理を行い、複数の学習モデルがそれぞれ出力する複数の情報を取得する。検査装置3は、各学習モデルが出力した検査対象物の異常の有無の判定結果に基づいて、例えば1つでも異常ありの判定結果が含まれている場合には、検査対象物に異常があると判定することができる。
なお図5及び図6に示した学習モデルの構成は一例であって、これに限るものではなく、学習モデルはどのような構成のものが採用されてよい。また図5及び図6に示す例では、学習モデルが出力する情報を異常の有無を示す情報としているが、これに限るものではない。例えば学習モデルは、異常の種類の推定結果の情報を出力してもよく、異常箇所を囲むバウンディングボックスの情報を出力してもよく、撮影画像における異常箇所に相当する画素の位置を示す情報を出力してもよく、これら以外の情報を出力してもよい。
図7は、本実施の形態に係る検査装置3が行う検査処理の手順を示すフローチャートである。本実施の形態に係る検査装置3の処理部31の撮影画像取得部31aは、回転フィルタ7の回転を制御することにより、回転フィルタ7に設けられた複数のフィルタ7a~7fの中から1つのフィルタ7a~7fを選択する(ステップS1)。撮影画像取得部31aは、選択したフィルタ7a~7fを介して検査対象物を撮影した撮影画像をカメラ5から取得する(ステップS2)。撮影画像取得部31aは、回転フィルタ7に設けられた全てのフィルタ7a~7fについて撮影画像を取得したか否かを判定する(ステップS3)。全てのフィルタ7a~7fについて撮影画像を取得していない場合(S3:NO)、撮影画像取得部31aは、ステップS1へ処理を戻し、次のフィルタ7a~7fを選択して撮影画像を取得する。
全てのフィルタ7a~7fについて撮影画像を取得した場合(S3:YES)、処理部31の異常判定部31bは、ステップS2にて取得した複数の撮影画像を、学習モデル記憶部32bに記憶した学習済みの学習モデルへ入力する(ステップS4)。異常判定部31bは、複数の撮影画像の入力に応じて学習モデルが出力する出力情報を取得する(ステップS5)。ステップS5にて取得した情報に基づいて、異常判定部31bは、複数の撮影画像に写された検査対象物の異常の有無を判定する(ステップS6)。
検査対象に異常がある場合(S6:YES)、処理部31の表示処理部31cは、例えば「異常が見つかりました」等のメッセージを表示部35に表示して、検査対象物に異常があることをユーザに通知し(ステップS7)、処理を終了する。検査対象物に異常がない場合(S6:NO)、表示処理部31cは、例えば「異常はありません」等のメッセージを表示部35に表示して、検査対象物に異常がないことをユーザに通知し(ステップS8)、処理を終了する。
<学習用データ及び学習モデルの生成処理>
本実施の形態に係る情報処理システムでは、検査装置3が検査対象物の異常の有無を判定するために用いる学習モデルを情報処理装置1が予め機械学習により生成する。また本実施の形態に係る情報処理装置1は、学習モデルの機械学習に用いる学習用データを生成する処理を行う。
図8は、本実施の形態に係る情報処理装置1の構成を示すブロック図である。本実施の形態に係る情報処理装置1は、処理部11、記憶部(ストレージ)12及び通信部(トランシーバ)13等を備えて構成されている。なお本実施の形態においては、1つの情報処理装置1にて処理が行われるものとして説明を行うが、複数の情報処理装置が分散して処理を行ってもよい。
処理部11は、CPU、MPU、GPU(Graphics Processing Unit)又は量子プロセッサ等の演算処理装置、ROM及びRAM等を用いて構成されている。処理部11は、記憶部12に記憶されたプログラム12aを読み出して実行することにより、学習用データを生成する処理及び学習モデルを生成する処理等の種々の処理を行う。
記憶部12は、例えばハードディスク等の大容量の記憶装置を用いて構成されている。記憶部12は、処理部11が実行する各種のプログラム、及び、処理部11の処理に必要な各種のデータを記憶する。本実施の形態において記憶部12は、処理部11が実行するプログラム12aを記憶する。また記憶部12には、生成した学習用データを記憶する学習用データ記憶部12b、及び、生成した学習モデルに関する情報を記憶する学習モデル記憶部12cが設けられている。
本実施の形態においてプログラム(コンピュータプログラム、プログラム製品)12aは、メモリカード又は光ディスク等の記録媒体98に記録された態様で提供され、情報処理装置1は記録媒体98からプログラム12aを読み出して記憶部12に記憶する。ただし、プログラム12aは、例えば情報処理装置1の製造段階において記憶部12に書き込まれてもよい。また例えばプログラム12aは、遠隔のサーバ装置等が配信するものを情報処理装置1が通信にて取得してもよい。例えばプログラム12aは、記録媒体98に記録されたものを書込装置が読み出して情報処理装置1の記憶部12に書き込んでもよい。プログラム12aは、ネットワークを介した配信の態様で提供されてもよく、記録媒体98に記録された態様で提供されてもよい。
学習用データ記憶部12bは、学習モデルを生成する機械学習を行うために情報処理装置1が生成した学習用データを記憶する。本実施の形態において情報処理装置1が生成する学習用データは、検査対象物となるものの画像と、この画像に写されたものが異常を有するか否かを示すフラグの情報とを対応付けたデータであり、いわゆる教師ありの機械学習に用いられる教師データである。ただし、教師なしの機械学習に用いられる場合には、学習用データには異常の有無を示すフラグの情報が含まれてなくてよく、検査対象物の画像のみであってよい。
学習モデル記憶部12cは、学習用データ記憶部12bに記憶した学習用データを用いた機械学習の処理により情報処理装置1が生成した一又は複数の学習モデルに関する情報を記憶する。学習モデルに関する情報には、例えば学習モデルの構造を示す情報、及び、機械学習の処理により決定された学習モデルのパラメータの情報等が含まれ得る。
通信部13は、LAN又はインターネット等を含むネットワークを介して、種々の装置との間で通信を行う。本実施の形態において通信部13は、ネットワークを介して検査装置3との間で通信を行う。通信部13は、処理部11から与えられたデータを他の装置へ送信すると共に、他の装置から受信したデータを処理部11へ与える。
また本実施の形態に係る情報処理装置1には、記憶部12に記憶されたプログラム12aを処理部11が読み出して実行することにより、光特性情報取得部11a、テクスチャ画像生成部11b、3次元モデル生成部11c、学習用データ生成部11d、学習モデル生成部11e及び学習モデル送信部11f等が、ソフトウェア的な機能部として処理部11に実現される。なお本図においては、処理部11の機能部として、学習用データの生成処理及び学習モデルの生成処理に関連する機能部を図示し、これ以外の処理に関する機能部は図示を省略している。
光特性情報取得部11aは、検査対象物となる物品に関する光特性の情報を取得する処理を行う。本実施の形態において光特性情報は、検査対象物となる物品が反射する光の波長と、この光の反射率とを対応付けた情報である。
図9は、光特性情報の一例を示す模式図であり、横軸を光の波長[nm]とし、縦軸を光の反射率としたグラフである。なお図9に示すグラフは、検査対象物を「アボガド」とし、アボガドの表面における光の特性を測定した測定結果である。また図9に示すグラフでは、異常がないアボガドの光特性を実線で示し、異常があるアボガド(の異常箇所)の光特性を破線で示してある。アボガドの異常の有無は、例えば腐敗箇所の有無である。図9に示すように、光の波長が400nm~700nmの領域では、異常の有無に関わらず、アボガドの光の反射率は0.1程度と低い。これは、いわゆる可視光線の領域において、アボガドが黒色又はそれに近い暗い色で人間に視認されることを意味している。この波長領域において、異常のあるアボガドと、異常のないアボガドとで光の反射率に大きな差異はなく、人間が目視でアボガドの異常の有無を判断することは難しく、アボガドを撮影した画像を用いて異常の有無を判定することは難しい。
これに対して、光の波長が750nm~900nmの領域では、アボガドの光の反射率は0.4を超え、異常のあるアボガドと異常のないアボガドとで光の反射率に大きな差異が生じている。このため、検査対象物がアボガドである場合、波長750nm~900nmの領域で撮影した画像には、異常のあるアボガドと異常のないアボガドとで差異が生じ、アボガドを撮影した画像に基づいて異常の有無を判定することが可能である。
図10は、アボガドの撮影画像の一例である。図10の上側には波長530nmの光に基づく撮影を行ったアボガドの画像を示し、図10の下側には波長750nmの光に基づく撮影を行ったアボガドの画像を示してある。各画像には2つのアボガドが写されており、左側のアボガドは異常がないもの、右側のアボガドは異常があるものである。波長530nmは可視光の緑色の光に相当し、図10の上側の画像は緑色のカラーフィルタを通してアボガドを撮影することで得られた画像である。上述のように、可視光領域において撮影された図10上側の画像に基づいてアボガドの異常の有無を判定することは難しい。
これに対して波長750nmは赤外線領域の光に相当し、図10の下側の画像は波長750nmの赤外線を通過させる赤外線フィルタを通してアボガドを撮影することで得られた画像である。図9に示すように波長750nmでは異常の有無に応じてアボガドの光の反射率が異なるため、図10の下側の画像のように異常がないアボガドは明るく(白く)写され、異常があるアボガドはその異常箇所が暗く(黒く)写される。図10の下側の画像に基づけば、人間が目視でアボガドの異常の有無及び異常の箇所を判断することも可能であり、学習モデルを用いた異常の有無の判定を行うことが可能である。
検査対象物の光特性情報は、例えば本実施の形態に係る情報処理システムの設計者又は管理者等により予め測定される。光の反射率の測定には、例えば分光器が用いられる。測定は、異常を有する検査対象物と、異常を有しない検査対象物との両方について行われる。予め測定された検査対象物の光特性の情報は、デジタルデータとして情報処理装置1の記憶部12に予め記憶され、光特性情報取得部11aは記憶部12から光特性情報を読み出すことで、光特性情報を取得することができる。
また本実施の形態に係る情報処理システムでは、検査対象物の光特性の測定を、検査装置3を用いて行うことができる。検査装置3の回転フィルタ7に設けられた複数のフィルタ7a~7fを用いることで複数の波長で検査対象物を撮影し、複数の波長で撮影された複数の撮影画像から各波長での検査対象物の光の反射率を算出する。なおこの場合、図9に示すグラフにおいて縦軸を光の反射率としているが、反射率に代えて撮影画像から取得した輝度又は画素値等が用いられてもよい。情報処理装置1の光特性情報取得部11aは、検査装置3から検査対象物を複数のフィルタ7a~7fを用いて撮影した複数の撮影画像を取得し、取得した複数の撮影画像に基づいて検査対象物の反射率-波長の特性を算出し、算出した光特性情報を記憶部12に記憶する。以後、光特性情報取得部11aは記憶部12から光特性情報を読み出すことで、光特性情報を取得することができる。
光特性の測定を検査装置3にて行う場合、測定可能な光の波長は回転フィルタ7に設けられたフィルタ7a~7fの数までであり、測定結果は波長に関して離散的な値となる。本実施の形態に係る情報処理装置1の光特性情報取得部11aは、回転フィルタ7を用いて測定できない波長に関しては、線形補完を行うことによって反射率を算出し、波長に関して連続的な値となる光特性情報を生成して記憶部12に記憶する。ただし、以降の処理において回転フィルタ7で測定できない波長に関する情報が不要であれば、光特性情報取得部11aは、補完処理を行うことなく離散的な光特性情報を記憶部12に記憶してよい。
なお検査対象物の光特性の測定は、少なくとも異常がないサンプル1つと、異常があるサンプル1つとの2つについて行われ、できるだけ多くのサンプルについて測定が行われることが好ましい。光特性情報取得部11aは複数のサンプルについての測定結果を取得し、測定結果の平均値又は中央値等の値を算出して、これらの値を光特性情報とすることができる。
情報処理装置1のテクスチャ画像生成部11bは、光特性情報取得部11aが取得した光特性情報に基づいて、検査対象物の3次元モデルに貼り付けるテクスチャ画像を生成する処理を行う。図11は、テクスチャ画像の一例である。図11に示すテクスチャ画像は、検査対象物をアボガドとし、アボガドの3次元モデルに貼り付けるためのテクスチャ画像である。またこのテクスチャ画像は、波長750nmの光を通過させるフィルタを介して撮影した場合の異常を有するアボガドの表面の模様を模した画像である。このテクスチャ画像には、薄い(明るい)グレーの部分と、濃い(暗い)グレーの部分とが含まれている。濃いグレーの部分がアボガドの異常(腐敗など)が生じている箇所であり、薄いグレーの部分がアボガドの正常な箇所である。なお、図11に示すテクスチャ画像は異常を有するアボガドのものであり、図示は省略するが異常を有しない正常なアボガドのテクスチャ画像は、濃いグレーの部分が含まれない、又は、濃いグレーの部分が占める面積の比率が小さいものとなる。
まずテクスチャ画像生成部11bは、異常箇所(図11の濃いグレーの部分)に相当する模様を適宜に配置した基本となるテクスチャ画像(以下、基本テクスチャ画像という)を生成する。この際にテクスチャ画像生成部11bは、例えば予め作成された異常箇所の模様の複数のパターンの中から一又は複数のパターンを適宜に(例えばランダムに)選択し、選択したパターンを適宜に(例えばランダムに)配置することで基本テクスチャ画像を生成することができる。配置する模様の数、大きさ及び位置等を適宜に変化させて多数の画像を生成することで、テクスチャ画像生成部11bは、多数の基本テクスチャ画像を生成することができる。なおテクスチャ画像生成部11bは、例えば異常箇所が占める面積についての閾値を定め、正常なアボガドについてはこの閾値を超えないよう異常箇所の模様を配置し、異常なアボガドについてはこの閾値を超えるように異常箇所の模様を配置して基本テクスチャ画像を生成してもよい。
またテクスチャ画像生成部11bは、予め機械学習がなされた画像を生成する学習モデル、例えばGAN(Generative Adversarial Network、敵対的生成ネットワーク)又はVAE(Variational Auto Encoder、変分オートエンコーダ)等の学習モデルを用いて、異常箇所の模様が描かれた基本テクスチャ画像を生成してもよい。これらの学習モデルの機械学習には、アボガドの異常箇所を撮影した撮影画像などが用いられ得る。なお、テクスチャ画像生成部11bによる基本テクスチャ画像の生成は、どのような方法が採用されてもよい。
次いでテクスチャ画像生成部11bは、生成した基本テクスチャ画像と、光特性情報取得部11aが取得した光特性情報とに基づいて、複数の光の波長に対応する複数のテクスチャ画像を生成する。テクスチャ画像生成部11bは、光特性情報に基づいて例えば波長750nmに対応する正常箇所の反射率と異常箇所の反射率とを取得し、取得した反射率に基づいて正常箇所及び異常箇所の色(輝度、画素値等)を算出し、算出した色で基本テクスチャ画像に含まれる正常箇所及び異常箇所を着色した画像をテクスチャ画像として生成する。テクスチャ画像生成部11bは、同様にして複数の波長についてテクスチャ画像を生成することができる。本実施の形態においてテクスチャ画像生成部11bは、検査装置3の回転フィルタ7に設けられた複数のフィルタ7a~7fに対応する波長の複数のテクスチャ画像を生成する。
情報処理装置1の3次元モデル生成部11cは、検査対象物を3次元の仮想空間で再現した3次元モデルを生成する処理を行う。図12は、3次元モデルの生成を説明するための模式図であり、検査対象物としてアボガドを例に3次元モデルが示されている。3次元モデル生成部11cは、まず検査対象物の形状を3次元仮想に再現した基本となる3次元モデル(以下、基本3次元モデルという)を生成し、生成した基本3次元モデルに対してテクスチャ画像生成部11bが生成したテクスチャ画像を貼り付けることによって、最終的な検査対象物の3次元モデルを生成する。
本実施の形態に係る情報処理システムでは、物体の3次元形状を計測する3次元計測器(図示せず)を用いて、一又は複数の検査対象物の実物の計測を行うことで、検査対象物の3次元形状の情報収集が行われる。収集された検査対象物の3次元形状の計測データは、情報処理装置1の記憶部12に記憶され、情報処理装置1の3次元モデル生成部11cはこの計測データに基づいて、検査対象物の基本3次元モデルを生成する。なお本実施の形態において、基本3次元モデルには異常の有無の区別はない。
例えば3次元モデル生成部11cは、複数の計測データから適宜に(ランダムに)1つの計測データを選択し、選択した計測データに基づいて3次元仮想空間に検査対象物の3次元形状を再現することで基本3次元モデルを生成することができる。また例えば3次元モデル生成部11cは、選択した計測データに基づく3次元形状に対し、例えば何らかの確率分布に従って適宜に形状の変形等を行って基本3次元モデルを生成してもよい。また例えば3次元モデル生成部11cは、適宜に複数の計測データを選択して、複数の3次元形状の平均となる形状を算出し、この平均形状の基本3次元モデルを生成してもよい。また例えば3次元モデル生成部11cは、適宜に複数の計測データを選択して、各計測データから一部の形状を抜き出し、複数の計測データから抜き出した複数の形状を適宜に結合する(例えば第1の計測データから上半分の形状を抜き出し、第2の計測データから下半分の形状を抜き出して結合するなど)ことで基本3次元モデルを生成してもよい。
また3次元モデル生成部11cは、予め機械学習がなされた3次元モデルを生成する学習モデル、例えばGAN又はVAE等の学習モデルを用いて、検査対象物の基本3次元モデルを生成してもよい。これらの学習モデルの機械学習には、上記の3次元形状の計測データが用いられ得る。なお、3次元モデル生成部11cによる基本3次元モデルの生成は、どのような方法が採用されてもよい。
次いで3次元モデル生成部11cは、生成した基本3次元モデルに対して、テクスチャ画像生成部11bが生成したテクスチャ画像を貼り付けることにより、検査対象物の3次元モデルを生成する。なおテクスチャ画像生成部11bは複数の光の波長に対応して複数のテクスチャ画像を生成しており、3次元モデル生成部11cは、複数のテクスチャ画像を同じ基本3次元モデルに貼り付けることで、光の波長に対応する複数の3次元モデルを生成する。
例えば、回転フィルタ7に6種類のフィルタ7a~7fが設けられており、テクスチャ画像生成部11bが6種類のテクスチャ画像を1セットとして生成する場合、3次元モデル生成部11cは1つの基本3次元モデルに6種類のテクスチャ画像をそれぞれ貼り付けた6種類の3次元モデルを1セットとして生成する。テクスチャ画像生成部11bがMセットのテクスチャ画像を生成し、3次元モデル生成部11cがN個の基本3次元モデルを生成した場合、3次元モデル生成部11cはM×Nセットの3次元モデルを生成することが可能である。3次元モデル生成部11cは、生成した3次元モデルの情報を記憶部12に記憶する。
情報処理装置1の学習用データ生成部11dは、3次元モデル生成部11cが生成した3次元モデルを用いて、検査装置3が用いる学習モデルを生成する機械学習を行うための学習用データを生成する処理を行う。学習用データ生成部11dは、3次元モデル生成部11cが生成した3次元モデル(複数の波長に対応した1セットの複数の3次元モデル)の情報を記憶部12から読み出し、読み出した情報をもとに3次元仮想空間に3次元モデルを再現する。学習用データ生成部11dは、3次元仮想空間において仮想カメラを用いて3次元モデルを撮影することにより、3次元モデルとして再現された検査対象物を撮影した2次元画像を取得する。即ち学習用データ生成部11dは、3次元仮想空間において適宜に視点及び視線の方向を設定し、この視線の方向に交差する2次元平面上に3次元モデルを投影した画像を生成することで2次元画像を取得する。
なお本実施の形態においては、3次元モデル生成部11cが複数の光の波長に対応する複数の3次元モデルを1セットとして生成する。学習用データ生成部11dは、これら1セットの複数の3次元モデルについて、それぞれ同じ視点及び視線の方向で仮想カメラによる撮影を行った複数の2次元画像を取得し、これら複数の2次元画像を1セットとする。また学習用データ生成部11dは、1つの(1セットの)3次元モデルに対して、複数の異なる視点及び視線の方向からの撮影を行って、複数の(複数セットの)2次元画像を取得してもよい。
学習用データ生成部11dは、3次元モデルから生成した1セットの2次元画像に対して、この画像に写されている検査対象物が異常を有するか否かを示すフラグデータを付したものを生成し、この2次元画像及びフラグを対応付けたデータを学習用データとして学習用データ記憶部12bに記憶する。2次元画像に写された検査対象物が異常を有するものであるか否かは、例えば本実施の形態に係る情報処理システムの設計者又は管理者等により入力されてもよく、また例えば2次元画像に基づいて学習用データ生成部11dが判定してもよい。学習用データ生成部11dは、例えば基本テクスチャ画像に含まれる異常箇所の面積の全体面積に対する比率を算出し、この比率が閾値を超える場合に検査対象物が異常を有すると判定し、比率が閾値を超えない場合に異常を有しないと判定することができる。なおこの学習用データはいわゆる教師ありの機械学習に用いられる学習用データであり、教師なしの機械学習のための学習用データの場合には異常を有するか否かを示すフラグデータが含まれていないものを学習用データ生成部11dが学習用データとして記憶してもよい。
本実施の形態に係る情報処理装置1は、テクスチャ画像生成部11bが複数のテクスチャ画像を生成し、3次元モデル生成部11cが複数の3次元モデルを生成し、生成したテクスチャ画像及び3次元モデルを適宜に組み合わせて学習用データ生成部11dが複数の(例えば数百~数万、又はそれ以上の数の)学習用データを生成して学習用データ記憶部12bに記憶する。情報処理装置1が生成した学習用データは、本実施の形態に係る情報処理システムにおいて検査装置3が用いる学習モデルを生成するための機械学習に用いられるのみでなく、例えばネットワーク又は記録媒体等を介して他のシステムに提供され、他のシステムにおいて機械学習に用いられてもよい。
なお、テクスチャ画像生成部11bが例えばGAN等の機械学習モデルを用いて異常箇所に相当する模様の基本テクスチャ画像を生成する場合、生成される画像には既に存在する画像(例えば光特性情報を測定した際に撮影された画像など)に近い画像、及び、ホワイトノイズ又は異常な歪み等のノイズを有する画像が含まれる可能性がある。学習用データ生成部11d(又はテクスチャ画像生成部11b)は、生成された複数のテクスチャ画像から、このような不適切なテクスチャ画像を取り除く処理を行ってもよい。学習用データ生成部11dは、例えば既に存在する画像と、生成された画像との差分を算出し、差分が所定範囲内のものを採用し、差分が所定範囲外のものを取り除くことができる。また学習用データ生成部11dは、生成された画像にホワイトノイズ等のノイズが含まれるか否かを判定し、ノイズが含まれると判定した画像を取り除くことができる。
図13は、学習用データとして生成された画像の一例を示す模式図である。図13の上段には、カメラ5及び回転フィルタ7を用いて検査装置3が異常を有するアボガドを撮影した撮影画像が示されている。これに対して図13の下段には、情報処理装置1が生成した異常を有するアボガドの生成画像が複数示されている。このように本実施の形態に係る情報処理装置1は、学習モデルの機械学習に用いることが可能な画像を生成することができる。
情報処理装置1の学習モデル生成部11eは、学習用データ生成部11dが生成した学習用データを用いた機械学習の処理を行うことにより、検査装置3が用いる学習モデルを生成する処理を行う。例えば学習モデルとしてニューラルネットワークのものが用いられる場合、学習モデル生成部11eは、勾配降下法、確率的勾配降下法又は誤差逆伝播法等の手法により学習モデルの機械学習を行うことができる。機械学習の処理は既存の技術であるため、詳細な説明は省略する。学習モデル生成部11eは、機械学習により生成した学習モデルの内部パラメータ等の情報を学習モデル記憶部12cに記憶する。
情報処理装置1の学習モデル送信部11fは、学習モデル生成部11eが生成した学習モデルに関する情報(機械学習により決定したパラメータ等)を検査装置3へ送信する処理を行う。学習モデル送信部11fは、学習モデル記憶部12cから生成された学習モデルに関する情報を読み出し、予め設定された一又は複数の検査装置3に対して読み出した情報を送信する。
図14は、本実施の形態に係る情報処理装置1が行う処理の手順を示すフローチャートである。本実施の形態に係る情報処理装置1の処理部11の光特性情報取得部11aは、検査装置3から検査対象物を回転フィルタ7の複数のフィルタ7a~7fを通して撮影した複数の撮影画像を取得する(ステップS21)。このときに光特性情報取得部11aは、異常を有する検査対象物及び異常を有さない検査対象物を含む複数の検査対象物についての撮影画像を取得することが好ましい。なお本実施の形態に係る情報処理システムでは、情報処理装置1がネットワークを介した通信を行うことにより検査装置3から撮影画像を取得するものとするが、これに限るものではなく、例えば記録媒体を介して撮影画像の授受が行われてもよい。
光特性情報取得部11aは、検査装置3から取得した撮影画像に基づいて、検査対象物の光特性情報を生成し、生成した光特性情報を記憶部12に記憶する(ステップS22)。このときに光特性情報取得部11aは、図9に示すように、異常を有する検査対象物と異常を有しない検査対象物とについて、光の波長と光の反射率とを対応付けた情報を、検査装置3から取得した複数の撮影画像に基づいて生成する。光特性情報取得部11aは、撮影画像に含まれない(即ち検査装置3の回転フィルタ7が有するフィルタ7a~7fに含まれない)波長に対応する反射率については、線形補完を行って光特性情報を生成してよい。また本実施の形態においては、情報処理装置1が光特性情報を生成するものとするが、これに限るものではなく、情報処理装置1が光特性情報を生成せず、予め生成された光特性情報を記憶部12から読み出して取得してもよい。
処理部11のテクスチャ画像生成部11bは、例えばGAN等の学習モデルを用いた画像生成処理又は適宜の画像処理等を行うことによって、検査対象物の表面の模様等を含む基本テクスチャ画像を生成する(ステップS23)。次いで光特性情報取得部11aは、予め記憶部12に記憶した検査対象物の光特性情報を取得する(ステップS24)。テクスチャ画像生成部11bは、ステップS23にて生成した基本テクスチャ画像と、ステップS24にて取得した光特性情報とを基に、複数の光の波長に対応する複数のテクスチャ画像を生成して、生成したテクスチャ画像を記憶部12に記憶する(ステップS25)。
処理部11の3次元モデル生成部11cは、検査対象物の3次元形状を計測した形状測定情報を取得する(ステップS26)。なお本実施の形態においては、物体の3次元形状を計測する3次元計測器を用いて検査対象物の3次元形状を計測した結果が予め記憶部12に記憶されており、3次元モデル生成部11cは、記憶部12に記憶された形状測定情報を読み出すことによって、形状測定情報を取得することができる。ただし3次元モデル生成部11cは、例えば3次元計測器との通信を行って、形状測定情報を取得してもよい。
3次元モデル生成部11cは、ステップS26にて取得した形状測定情報を基に、3次元仮想空間に検査対象物の3次元形状を再現した基本3次元モデルを生成する(ステップS27)。次いで3次元モデル生成部11cは、ステップS25にて生成されたテクスチャ画像を取得する(ステップS28)。3次元モデル生成部11cは、ステップS27にて生成した基本3次元モデルに、ステップS28にて取得したテクスチャ画像を貼り付けることによって、検査対象物の3次元モデルを生成する(ステップS29)。
処理部11の学習用データ生成部11dは、ステップS29にて生成された検査対象物の3次元モデルに対し、3次元仮想空間において仮想カメラによる撮影を行うことによって、検査対象物の2次元画像を生成する(ステップS30)。学習用データ生成部11dは、ステップS30にて生成した2次元画像に対し、この2次元画像に写された検査対象物の異常の有無を示すフラグを付し、2次元画像及び異常有無のフラグを対応付けた学習用データ生成して、生成した学習用データを学習用データ記憶部12bに記憶する(ステップS31)。
なお情報処理装置1は、ステップS23の基本テクスチャ画像、ステップS25のテクスチャ画像、ステップS27の基本3次元モデル、ステップS29の3次元モデル、ステップS30の2次元画像、及び、ステップS31の学習用データを複数生成する。情報処理装置1は、各ステップにおいて複数の情報を生成して次のステップへ移行してもよく、一連のステップを複数回繰り返すことで複数の情報を生成してもよい。
処理部11の学習モデル生成部11eは、ステップS31にて生成された学習用データを用いた機械学習の処理を行うことによって、検査装置3が検査に用いる学習モデルを生成し、生成した学習モデルの情報を学習モデル記憶部12cに記憶する(ステップS32)。処理部11の学習モデル送信部11fは、ステップS32にて生成された学習モデルの情報を学習モデル記憶部12cから読み出して、一又は複数の検査装置3へ送信し(ステップS33)、処理を終了する。
<まとめ>
以上の構成の本実施の形態に係る情報処理システムでは、情報処理装置1が検査対象物の光の反射率及び光の波長の対応関係の測定情報を取得し、検査対象物の3次元仮想空間における基本3次元モデルを生成し、取得した測定情報に基づいて所定の光の波長におけるテクスチャ画像を生成し、生成したテクスチャ画像を基本3次元モデルに貼り付けて検査対象物の3次元モデルを生成する。情報処理装置1は、生成した3次元モデルを3次元仮想空間にて撮影した2次元の画像を取得し、取得した画像を用いた機械学習により学習モデルを生成する。これにより情報処理システムは、所定の光の波長において特徴が現れる検査対象物について、撮影画像に基づく学習モデルによる分類又は検査等の処理の精度を向上することが期待できる。
また本実施の形態に係る情報処理システムにて生成される学習モデルは、入力された画像に写された検査対象物の異常の有無を判定する又は異常箇所を判定する学習モデルである。これにより情報処理システムは、所定の波長で撮影された画像を学習モデルへ入力し、学習モデルの出力を取得することにより、この画像に写された検査対象物の異常の有無又は異常箇所の判定を精度よく行うことが期待できる。
また本実施の形態に係る情報処理システムでは、情報処理装置1が取得する検査対象物の光の反射率及び光の波長の対応関係の測定情報には、異常を有する検査対象物の測定情報と、異常を有さない検査対象物の測定情報とを含む。これにより情報処理システムは、これらの測定情報に基づいて生成された学習モデルを用いて、検査対象物の異常の有無又は異常箇所を精度よく判定することが期待できる。
また本実施の形態に係る情報処理システムでは、異なる波長を透過する複数の光学フィルタを介して検査対象物を撮影した複数の画像を検査装置3から情報処理装置1が取得し、取得した複数の画像に基づいて検査対象物の光の反射率及び光の波長の対応関係の測定情報を取得する。また情報処理装置1は、撮影に用いられた光学フィルタが透過しない波長に関する光の反射率を線形補完等の補完処理で補完してもよい。これらにより情報処理システムは、検査対象物の光の反射率及び光の波長の対応関係を簡易な測定で取得することが期待できる。
また本実施の形態に係る情報処理システムでは、情報処理装置1が複数の波長についての複数のテクスチャ画像を生成し、生成したテクスチャ画像をそれぞれ貼り付けた複数の波長における複数の3次元モデルを3次元仮想空間にてそれぞれ撮影して、複数の波長における検査対象物の複数の画像を取得する。情報処理装置1は、複数の波長に対応する複数の画像を用いて、波長毎の複数の学習モデルを生成するか、又は、複数の画像を入力として受け付けて出力値を出力する1つの学習モデルを生成する。これにより情報処理装置1は、複数の波長について検査対象物を撮影した撮影画像に基づき、学習モデルを用いて例えば異常の有無又は異常箇所の判定等の処理を行うことが期待できる。
また本実施の形態に係る情報処理システムでは、情報処理装置1が検査対象物の模様の基本テクスチャ画像を生成し、検査対象物の光の反射率及び光の波長の対応関係の測定情報と生成した基本テクスチャ画像とに基づいて、所定の波長におけるテクスチャ画像を生成する。これにより情報処理装置1は、様々な波長に対応したテクスチャ画像を生成することが期待できる。
また本実施の形態に係る情報処理システムでは、情報処理装置1が検査対象物の3次元形状を測定した形状測定情報を取得し、取得した形状測定情報に基づいて検査対象物の3次元モデルを生成する。これにより情報処理システムは、検査対象物の精度のよい3次元モデルを生成することが期待できる。
なお、本実施の形態に係る情報処理システムでは、検査装置3とは異なる装置、即ち情報処理装置1にげ学習用データの生成及び学習モデルの生成等の処理を行っているが、これに限るものではなく、これらの処理の一部又は全部を検査装置3が行ってもよい。
(変形例1)
上述のように検査装置3は、回転フィルタ7に設けられた複数のフィルタ7a~7fを通して撮影した複数の撮影画像に基づいて、検査対象物の検査を行っている。各フィルタ7a~7fは所定の波長の光を通過させる光学素子であり、複数のフィルタ7a~7fはそれぞれ異なる波長の光を通過させる。複数のフィルタ7a~7fを通してそれぞれ撮影を行うことで検査装置3は、異なる波長の光に基づいて撮影された検査対象物の撮影画像を複数取得することができる。上述の実施の形態において検査装置3は、撮影により得られたこれら複数の撮影画像をそのまま用いて、検査対象物の異常の有無又は異常箇所の判定を行っているが、これに限るものではない。
例えば検査装置3は、異なる波長で撮影された2つの画像について、画素値の差分を算出して差分画像を生成し、生成した差分画像に基づいて検査対象物の異常の有無又は異常箇所の判定を行ってもよい。例えば検査装置3は、赤外線フィルタを通して撮影した画像と、赤色フィルタを通して撮影した画像との差分値、いわゆるNDVI(Normalized Difference Vegetation Index)を算出して差分画像を生成し、生成した差分画像を検査に用いることができる。
この場合に情報処理装置1は、複数の波長に対応する複数のテクスチャ画像を生成し、生成した2つのテクスチャ画像の差分値を算出することで差分画像に対応するテクスチャ画像を生成することができる。情報処理装置1は、このテクスチャ画像を用いて差分画像に対応する検査対象物の3次元モデルを生成し、生成した3次元モデルを撮影した検査対象物の2次元画像を取得し、学習用データに含めることができる。
学習モデルは、複数の波長に対応する複数の画像と、上記の差分画像とを含む複数の画像を入力として受け付けて、これらの画像に写された検査対象物の異常の有無又は異常箇所の判定を出力するよう、情報処理装置1により機械学習がなされる。
(変形例2)
上述の本実施の形態に係る情報処理装置1は、測定した光特性情報に基づいてテクスチャ画像を生成し、対象物の基本3次元モデルにテクスチャ画像を貼り付けることで、対象物の3次元モデルを生成しているが、3次元モデルの生成方法はこれに限らない。
例えば情報処理装置1は、GAN等の学習モデルを用いて、模様が描かれた対象物の3次元モデルを生成してもよい。情報処理装置1は、生成した3次元モデルの模様の色等を測定した光特性情報に基づいて調整し、複数の光の波長に対応する複数の3次元モデルを生成することができる。情報処理装置1は、生成した3次元モデルを基に、機械学習用の対象物の2次元画像を生成する。
また例えば情報処理装置1は、3次元モデルを生成することなく、SinGAN又はConSinGAN等の学習モデルを用いて、対象物の2次元画像を生成してもよい。SinGAN及びConSinGAN等の学習モデルは、対象物の1枚の画像を基に機械学習が行われ、模様が異なる対象物の画像を複数生成することができる。情報処理装置1は、カメラ5及び回転フィルタ7を用いて撮影した対象物の撮影画像をこれらの学習モデルへ入力し、学習モデルが出力する画像を取得することによって、対象物の2次元画像を生成することができる。
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。