(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-04-09
(45)【発行日】2024-04-17
(54)【発明の名称】情報処理プログラム、情報処理装置および情報処理方法
(51)【国際特許分類】
G06V 10/774 20220101AFI20240410BHJP
G06Q 50/02 20240101ALI20240410BHJP
G06T 7/00 20170101ALI20240410BHJP
G06T 15/50 20110101ALI20240410BHJP
G06T 19/00 20110101ALI20240410BHJP
G06V 10/77 20220101ALI20240410BHJP
G06V 20/05 20220101ALI20240410BHJP
【FI】
G06V10/774
G06Q50/02
G06T7/00 350B
G06T15/50
G06T19/00 A
G06V10/77
G06V20/05
(21)【出願番号】P 2022205943
(22)【出願日】2022-12-22
【審査請求日】2023-12-08
(73)【特許権者】
【識別番号】501440684
【氏名又は名称】ソフトバンク株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】石若 裕子
【審査官】新井 則和
(56)【参考文献】
【文献】特開2022-055140(JP,A)
【文献】特許第6787471(JP,B1)
【文献】上野 延典 外,ハイブリッド深層学習モデルを用いた果物画像からの糖度推定アプリケーションに関する検討,情報処理学会研究報告 2022-DCC-032 No.14,2022年11月11日,1頁-8頁
【文献】星 将仁 外,画像分類における各種GANの教師データ拡張性能の比較,FIT2020 第19回情報科学技術フォーラム 講演論文集 第3分冊,2020年08月18日,pp. 149-150
(58)【調査した分野】(Int.Cl.,DB名)
G06V 10/774
G06Q 50/02
G06T 7/00
G06T 15/50
G06T 19/00
G06V 10/77
G06V 20/05
(57)【特許請求の範囲】
【請求項1】
推定対象の所定の魚が撮影された画像であって前記所定の魚に対する評価値が付与された画像である実画像を基にした機械学習により、前記評価値に応じた特徴を有する前記所定の魚が再現された画像データを生成する第1の生成手順と、
前記画像データに基づいて、前記所定の魚がコンピュータグラフィックスにより再現されたCG(Computer Graphics)画像を生成する第2の生成手順と、
前記CG画像と、前記CG画像で再現される前記所定の魚の特徴が示唆する前記評価値との組を学習データとして学習されたモデルに基づいて、入力画像に映された前記所定の魚の評価値を推定する推定手順と
をコンピュータに実行させる情報処理プログラム。
【請求項2】
前記第1の生成手順は、前記実画像に写される前記所定の魚に対する評価値に応じた特徴として、前記所定の魚の色合い、形状、サイズ、重さ、または、脂肪率のいずれかとの差分を最小化するように特徴を学習したモデルに基づき前記画像データを生成する
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項3】
前記第2の生成手順は、前記画像データを基にした前記所定の魚の3次元モデルに対して、水中での見え方がシミュレーションされた結果が、コンピュータグラフィックスにより再現されたCG画像を生成する
ことを特徴とする請求項2に記載の情報処理プログラム。
【請求項4】
前記第2の生成手順は、パラメータ情報に基づき前記所定の魚が水中に存在する場合の映像をシミュレーションした結果が、コンピュータグラフィックスにより再現されたCG画像を生成する
ことを特徴とする請求項3に記載の情報処理プログラム。
【請求項5】
前記パラメータ情報は、水深に応じた光の減衰率が考慮された前記所定の魚の色合い、または、前記所定の魚に対する光の反射具合である
ことを特徴とする請求項4に記載の情報処理プログラム。
【請求項6】
前記推定手順は、前記入力画像として、前記所定の魚が水中を泳ぐ様子が撮影された水中画像を前記モデルに入力し、前記モデルによる出力情報に基づいて、前記水中画像に含まれる前記所定の魚それぞれの評価値を推定する
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項7】
前記評価値は、前記所定の魚の旨味が数値化された評価結果である
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項8】
推定対象の所定の魚が撮影された画像であって前記所定の魚に対する評価値が付与された画像である実画像を基にした機械学習により、前記評価値に応じた特徴を有する前記所定の魚が再現された画像データを生成する第1の生成部と、
前記画像データに基づいて、前記所定の魚がコンピュータグラフィックスにより再現されたCG(Computer Graphics)画像を生成する第2の生成部と、
前記CG画像と、前記CG画像で再現される前記所定の魚の特徴が示唆する前記評価値との組を学習データとして学習されたモデルに基づいて、入力画像に映された前記所定の魚の評価値を推定する推定部と
を有することを特徴とする情報処理装置。
【請求項9】
コンピュータが実行する情報処理方法であって、
推定対象の所定の魚が撮影された画像であって前記所定の魚に対する評価値が付与された画像である実画像を基にした機械学習により、前記評価値に応じた特徴を有する前記所定の魚が再現された画像データを生成する第1の生成工程と、
前記画像データに基づいて、前記所定の魚がコンピュータグラフィックスにより再現されたCG(Computer Graphics)画像を生成する第2の生成工程と、
前記CG画像と、前記CG画像で再現される前記所定の魚の特徴が示唆する前記評価値との組を学習データとして学習されたモデルに基づいて、入力画像に映された前記所定の魚の評価値を推定する推定工程と
を含むことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理プログラム、情報処理装置および情報処理方法に関する。
【背景技術】
【0002】
従来、魚の養殖技術を向上させるための様々な技術が知られている。例えば、生簀内の魚が撮影された撮影画像から、魚の数(尾数ともいう)に応じて変化する予め定められた特徴量を抽出する。そして、機械学習による特徴量と尾数との関係データである学習モデルに、抽出された特徴量を照合することにより、学習モデルから尾数を検知する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、生簀内の尾数を検知するにすぎないため、必ずしも魚の価値を適切に判断することができるとは限らない。
【課題を解決するための手段】
【0005】
上記の課題を解決するために、本発明に係る一形態の情報処理プログラムは、推定対象の所定の魚が撮影された画像であって前記所定の魚に対する評価値が付与された画像である実画像を基にした機械学習により、前記評価値に応じた特徴を有する前記所定の魚が再現された画像データを生成する第1の生成手順と、前記画像データに基づいて、前記所定の魚がコンピュータグラフィックスにより再現されたCG(Computer Graphics)画像を生成する第2の生成手順と、前記CG画像と、前記CG画像で再現される前記所定の魚の特徴が示唆する前記評価値との組を学習データとして学習されたモデルに基づいて、入力画像に映された前記所定の魚の評価値を推定する推定手順とをコンピュータに実行させる。
【図面の簡単な説明】
【0006】
【
図1】
図1は、実施形態に係る情報処理の手順を説明する説明図である。
【
図2】
図2は、実施形態に係るシステムの構成例を示す図である。
【
図3】
図3は、第1の学習装置の構成例を示す図である。
【
図4】
図4は、第2の学習装置の構成例を示す図である。
【
図5】
図5は、情報処理装置の構成例を示す図である。
【
図6】
図6は、旨味度の推定に係る情報処置手順を示すシーケンス図である。
【
図7】
図7は、学習部13bの動作例を示す図である。
【
図8】
図8は、実施形態に係るシミュレーション手法の一例を示す図である。
【
図9】
図9は、旨味度の推定モデル生成に係る学習手法の一例を示す図である。
【
図10】
図10は、旨味度が一覧表示されたリストLTの一例を示す図である。
【
図11】
図11は、情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0007】
以下に、本発明の実施形態について図面に基づいて詳細に説明する。なお、この実施形態により本開示に係る情報処理プログラム、情報処理装置および情報処理方法が限定されるものではない。また、以下の実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
【0008】
(実施形態)
〔1.はじめに〕
現状、水揚げされた魚に対して、ヒト(例えば、職人)が勘と経験を頼りに特徴を判断し、判断結果に応じた価格を選定している。例えば、形、サイズ、重さ、あるいは、脂肪率等の特徴が目視によって判断され、その判断結果を基にヒトが価格選定を行っており(すなわち、目利き)、価格選定の基準があいまいという問題がある。
【0009】
特に、漁業的価値があり養殖が盛んに行われている一般に高級魚とされる魚(例えば、タイ、ブリ、マクロ等)において、目利きで価格選定されることは好ましくない。
【0010】
また、魚を水揚げしてからの価格選定は、より価値の高い状態まで魚を育て上げることを目的とする養殖現場には適さないという問題もある。
【0011】
そこで、本発明では、ヒトの勘や経験に頼ることなく、魚の価値を適切に判断する手法を提案する。例えば、本発明では、魚が水中(例えば、生簀の中)に居る状態でも価値を適切に判断することができる手法を提案する。
【0012】
例えば、本発明の提案技術では、AI(Artificial Intelligence)技術を活用することで、魚の評価値が映像(例えば、水中映像)から自動判定される。このような本発明の提案技術によれば、例えば、養殖業者は、生簀の中に居る魚が現状どれくらいの評価値が得られる程度まで成長しているかを容易に把握できるため、漁獲高を推定したり、給餌を最適化するための検討を適切に行ったりすることができるようになる。
【0013】
すなわち、本発明の提案技術によれば、養殖業の効率化に貢献できるようになる。また、本発明の提案技術によれば、ヒトの勘や経験に頼ることのない、魚の価値の新たな判断指標を創り上げることができると考えられる。
【0014】
以下では、本発明の提案技術(「実施形態に係る情報処理」と表記する)について図面を用いて詳細に説明する。また、実施形態に係る情報処理においては、魚に対する評価値を「旨味度」(美味しさ度ともいえる)として説明する。
【0015】
また、実施形態に係る情報処理は、養殖対象の魚に限らず、河川や海に生息するあらゆる種別の生物に適用可能であるが、一定水準以上の価値を有するが(例えば、食材として人気が高い)、その価値の判断基準が明確に定まっていないような生物に適用されることが好ましい。
【0016】
〔2.情報処理手順〕
実施形態に係る情報処理は、システム1(
図2)で実現されてよい。そこで、システム1による情報処理の手順を説明する。
図1は、実施形態に係る情報処理の手順を説明する説明図である。
【0017】
まず、システム1は、所定の機械学習アルゴリズムを用いて、魚Fの擬似的な画像データ(以下、「魚画像擬似データ」と表記する)FGを生成する(ステップS11)。ここでいう所定の機械学習アルゴリズムは、擬似的な画像データを生成する生成モデルを含む機械学習ネットワークすなわちGANs(Generative adversarial networks)であってよい。
【0018】
そこで、ステップS11では、魚Fが撮影された画像データ(以下、「魚画像実データ」と表記する)TGを学習データとしてGANsの学習が行われる。ここで、魚画像実データTGには、目利きによって推定された魚Fの旨味度がメタ情報として付与されている。そこで、GANsでは、例えば、魚画像実データTGに写される魚Fに対する旨味度に応じた特徴(例えば、魚Fの色合い、形状、サイズ、重さ、または、脂肪率等)との差分を最小化するように特徴の学習が行われ、GANsが更新されてゆく。
【0019】
例えば、学習データの特性である強い特徴表現を学習したGANsを得ることが理想的な結果であり、このような結果が得られるまで更新されたGANsを用いて、システム1は、魚画像擬似データFGを生成する。この結果、魚画像実データTGから、多数の魚画像擬似データFGが生成されるため、魚Fの画像データが増幅されることになる。なお、魚画像擬似データFGは、旨味度が付与された魚画像実データTGから生成されることから、魚画像擬似データFGにも旨味度がメタ情報として付与されてよい。
【0020】
次に、システム1は、魚画像擬似データFGに基づいて、魚Fがコンピュータグラフィックスにより再現されたCG(Computer Graphics)画像SIを生成する(ステップS12)。例えば、システム1は、魚Fの水中画像(水中映像)がシミュレーションされた結果が再現されたCG画像SIを生成する。このようなことから、CG画像SIは、魚Fのシミュレーション画像ともいえる。
【0021】
例えば、システム1は、魚画像擬似データFGに基づいて、魚Fの3次元モデルを生成し、生成した3次元モデルに対して所定のシミュレーションを行うことで、シミュレーション結果が、コンピュータグラフィックスにより再現されたCG画像SIを生成してよい。
【0022】
例えば、システム1は、尾数の異なるBoids(ボイズ)による群行動のシミュレーション(ボイズシミュレーション)を行ってよい。ここで、Boids(ボイズ)とは、魚の群れのような動きを行う魚の個体を示すオブジェクト(Boid、ボイド)の集合体を意味する。また、Boids(ボイズ)は、結合(cohesion)、分離(separation)、整列(alignment)という3つのルールを設定するだけで群れの動きをシミュレーションできるプログラムの名称でもある。
【0023】
Boids(ボイズ)における3つのルールのうち、「結合」は個体同士がばらばらにならないように近付こうとする力、「分離」は個体同士が衝突を避けるため離れようとする力、「整列」は群れとして動く方向を揃えようとする力を指す。これら3つの力の合計で個体の動きが決まる。3つの力は、それぞれ、力の大きさ、力が及ぶ範囲、および角度をパラメータ(以下、ボイズパラメータともいう)として設定できる。例えば、ボイズパラメータは、群れがいる空間の大きさ、個体の大きさ、および個体の密集度によって決定される。
【0024】
ここで、システム1は、水深に応じた光の減衰率が考慮された魚Fの色合い、あるいは、水深に応じた光の減衰率に伴う魚Fに対する光の反射具合等をパラメータとしてさらに用いることで、魚Fの群れの水中での見え方をシミュレーションしてよい。より具体的には、システム1は、魚Fの群れの水中画像としての見え方をシミュレーションしてよい。
【0025】
この点について一例を示す。例えば、水揚げされたタイは、陸上では鮮やかな桜色に見えるが、水中カメラ等で水中の様子を撮影した場合の映像では、少なくとも桜色は消失してしまう場合がある(例えば、黒っぽく見えてしまう場合がある)。そこで、システム1は、魚画像擬似データFGに基づき生成した魚Fの3次元モデルに対して、上記各種のパラメータを適用して魚Fの群れの水中画像としての見え方をシミュレーションする。そして、システム1は、魚Fの群れの水中画像のシミュレーション結果を、コンピュータグラフィックスで再現することにより、係る水中画像のCG画像SIを生成する。
【0026】
このように、CG画像SIは、旨味度が付与された魚画像擬似データFGから生成される。このため、システム1は、CG画像SIを生成する際に、CG画像SIに含まれる各魚F(例えば、3次元モデルベースの魚F)に対して、旨味度をメタ情報として付与しておいてよい。
【0027】
この結果、次に、システム1は、CG画像SIが示す水中のシミュレーション画像に含まれる魚FそれぞれのCG画像SIに、当該魚Fの特徴が示唆する旨味度(ステップS12でメタ情報として付与された旨味度)をラベル情報として付加することで、学習データLDを生成する(ステップS13)。例えば、システム1は、1の魚FのCG画像SIと、当該魚Fの特徴が示唆する旨味度を正解とするラベル情報との組を1つの学習データLDとして、全ての魚Fに対応する学習データLD群を生成してよい。
【0028】
次に、システム1は、ステップS13で生成した学習データLDに基づいて、魚Fの旨味度を推定するためのモデルMを生成する(ステップS14)。例えば、システム1は、魚Fの水中画像から魚Fの旨味度を推定するようにモデルMを学習させる。
【0029】
例えば、システム1は、学習データLDとする機械学習(教師あり学習)をDNN(ディープニューラルネットワーク)において行う。具体的には、システム1は、入力画像がDNN(モデルM)に入力された場合に、入力画像に含まれる魚Fの旨味度がDNN(モデルM)から出力されるようDNN(モデルM)を学習させることで、学習済みのDNN(モデルM)を生成する。ここでいう入力画像は、魚Fが水中を泳ぐ様子が撮影された水中画像であってよい。
【0030】
例えば、システム1は、
図1に示すように、旨味度が未知の魚Fの水中画像WFが与えられた場合には、水中画像WFを学習済みのモデルMに入力し、モデルMによる出力情報に基づいて、水中画像WGに含まれる魚Fの旨味度を推定する(ステップS15)。例えば、システム1は、水中画像WGから魚Fの画像データを抽出し、抽出した画像データごとに旨味度を推定してよい。
【0031】
そして、システム1は、魚Fの旨味度の推定結果をデバイスDVに出力する(ステップS16)。例えば、システム1は、水中画像WGに含まれる魚Fごとに、推定結果としての旨味度が一覧表示されたリストを出力してよい。他の例として、システム1は、推定結果としての旨味度を集計し、旨味度の分布を出力してもよい。例えば、システム1は、水中画像WGにおいて、旨味度「0.0」~「1.0未満」の魚Fは「2%」、旨味度「1.0」~「2.1未満」の魚Fは「6%」・・・旨味度「4.0以上」の魚Fは「80%」といった形で割合分布を出力することができる。
【0032】
さて、これまで
図1を用いて、実施形態に係る情報処理の全体的像を説明した。例えば、ヒトは水揚げされた魚Fに対する目利きによって旨味度を推定することができるが、水中の魚Fに対して旨味度を推定することは困難である。このため、
図1で説明した魚画像実データTGを学習データとして用いる手法が考えられるが、係る手法では、学習データの数が不十分であり、モデルの推定精度を高める点で改善の余地がある。一方で、実施形態に係る情報処理によれば、魚画像実データTGを基にして、魚Fの画像データが増幅され、さらにシミュレーションによって、魚Fが水中に居る際の様子が捉えられた画像データまでも増幅できるようになる。このため、実施形態に係る情報処理では、推定精度の高いモデルMを生成することができるため、ヒトの勘や経験に頼ることなく自動かつ正確に旨味度を推定することができる。また、この結果、魚の価値の新たな判断指標が得られるため、例えば、養殖業界において貢献することができる。
【0033】
〔3.システム構成〕
続いて、システム1の構成を説明する。
図2は、実施形態に係るシステム1の構成例を示す図である。
図2に示すように、システム1は、第1の学習装置10と、第2の学習装置20と、情報処理装置100とを含んでよい。また、第1の学習装置10と、第2の学習装置20と、情報処理装置100とは、ネットワークNを介して、有線または無線により通信可能に接続されてよい。
【0034】
第1の学習装置10は、魚Fの旨味度が推定された魚画像実データTGを基にした機械学習を行う。すなわち、第1の学習装置10は、魚画像実データTGが示す魚Fに対する目利き結果としての旨味度に応じた特徴(例えば、魚Fの色合い、形状、サイズ、重さ、または、脂肪率等)との差分を最小化するように特徴を学習させることで、GANsを更新する。
【0035】
第2の学習装置20は、学習データLDに基づいて、魚Fの旨味度を推定するためのモデルMを生成する。例えば、第2の学習装置20は、学習データLDとする機械学習(教師あり学習)をCNN型のDNNであるモデルMに行うことで、入力画像に含まれる魚Fの旨味度を推定するためのモデルMを生成する。
【0036】
情報処理装置100は、実施形態に係る情報処理プログラムに応じて動作するクラウドコンピュータ(サーバ)である。例えば、情報処理装置100は、第1の学習装置10により更新されたGANsを用いて、魚画像擬似データFGを生成する。また、情報処理装置100は、魚画像擬似データFGに基づいて、魚Fが再現されたCG画像SIを生成する。
【0037】
CG画像SIを基にした学習データLDの生成、および、学習データLDを用いたモデルMの生成は、第2の学習装置20によって行われる。そこで、情報処理装置100は、旨味度が未知の魚Fの水中画像WFを学習済みのモデルMに入力し、モデルMによる出力情報に基づいて、水中画像WGに含まれる魚Fの旨味度を推定する。
【0038】
なお、本実施形態では、魚Fの画像データを増幅するための機械学習モデルとして、GANsを例に挙げるが、例えば、擬似的な画像データを生成可能なモデルであれば、GANsに限定されない。
【0039】
また、モデルMは、魚Fの水中画像から魚Fの旨味度を推定するように学習されるだけでなく、水から出された状態での魚Fの画像データから魚Fの旨味度を推定するように学習されてもよい。係る場合、学習データLDには、目利きによって魚Fの旨味度が推定された魚画像実データTGがさらに用いられてよい。
【0040】
〔4.機能構成〕
ここからは、第1の学習装置10、第1の学習装置30および情報処理装置100の構成例について説明する。
【0041】
〔4-1.第1の学習装置〕
まず、第1の学習装置10の構成例を説明する。
図3は、第1の学習装置10の構成例を示す図である。
図3に示すように、第1の学習装置10は、通信部11と、記憶部12と、制御部13とを有する。
【0042】
(通信部11)
通信部11は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部11は、ネットワークNと有線または無線で接続され、例えば、第2の学習装置20や情報処理装置100との間で情報の送受信を行う。
【0043】
(記憶部12)
記憶部12は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子またはハードディスク、光ディスク等の記憶装置によって実現される。記憶部12は、例えば、実施形態に係る情報処理に関するデータやプログラムが記憶されてよい。また、
図3の例によれば、記憶部12は、実データ記憶部12aと、モデルデータ記憶部12bとを有してよい。
【0044】
(実データ記憶部12a)
実データ記憶部12aは、目利きによって旨味度が推定された魚Fが撮影された魚画像実データTGを記憶する。魚画像実データTGには、旨味度がメタ情報として付与されていてよい。
【0045】
(モデルデータ記憶部12b)
モデルデータ記憶部12bは、魚画像実データTGに写される魚Fに対する旨味度に応じた特徴(例えば、魚Fの色合い、形状、サイズ、重さ、または、脂肪率等)との差分を最小化するように特徴の学習が行われ、更新された機械学習アルゴリズム(例えば、GANs)の情報を記憶する。
【0046】
(制御部13について)
制御部13は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、第1の学習装置10内部の記憶装置に記憶されている各種プログラム(例えば、実施形態に係る情報処理プログラム)がRAMを作業領域として実行されることにより実現される。また、制御部13は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0047】
図3に示すように、制御部13は、取得部13aと、学習部13bと、送信部13cとを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部13の内部構成は、
図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部13が有する各処理部の接続関係は、
図3に示した接続関係に限られず、他の接続関係であってもよい。
【0048】
(取得部13a)
取得部13aは、魚画像実データTGを取得する。例えば、取得部13aは、利用者が有するデバイスDV(
図1)によって送信された魚画像実データTGを取得し、実データ記憶部12aに格納してよい。
【0049】
なお、デバイスDVは、利用者によって利用される情報処理端末である。デバイスDVは、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。また、ここでいう利用者とは、魚Fの生産者すなわち養殖業者であってよい。
【0050】
(学習部13b)
学習部13bは、魚画像実データTGを学習データとしてGANsの学習を行う。学習部13bによる学習では、魚画像実データTGに写される魚Fに対する旨味度に応じた特徴(例えば、魚Fの色合い、形状、サイズ、重さ、または、脂肪率等)との差分を最小化するように特徴の学習が行われ、GANsが更新されてゆく。魚画像実データTGが示す魚の特性である強い特徴表現を学習したGANsを得ることが理想的な結果であり、このような結果が得られるまで更新されたGANsは、モデルデータ記憶部12bに格納される。
【0051】
(送信部13c)
送信部13cは、更新後のGANsを情報処理装置100に送信する。学習部13bによるGANsの更新は定期的に行われてよいため、送信部13cは、更新のたびに最新のGANsを情報処理装置100に送信してよい。
【0052】
〔4-2.第2の学習装置〕
次に、第2の学習装置20の構成例を説明する。
図4は、第2の学習装置20の構成例を示す図である。
図4に示すように、第2の学習装置20は、通信部21と、記憶部22と、制御部23とを有する。
【0053】
(通信部21)
通信部21は、例えば、NIC等によって実現される。そして、通信部11は、ネットワークNと有線または無線で接続され、例えば、第1の学習装置10や情報処理装置100との間で情報の送受信を行う。
【0054】
(記憶部22)
記憶部22は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子またはハードディスク、光ディスク等の記憶装置によって実現される。記憶部22は、例えば、実施形態に係る情報処理に関するデータやプログラムが記憶されてよい。また、
図4の例によれば、記憶部22は、学習データ記憶部22aと、モデルデータ記憶部22bとを有してよい。
【0055】
(学習データ記憶部22a)
学習データ記憶部22aは、情報処理装置100により生成されたCG画像SIと、CG画像SIで再現される魚Fの特徴が示唆する評価値との組を学習データLDとして記憶する。
【0056】
(モデルデータ記憶部22b)
モデルデータ記憶部22bは、学習データLDに基づき生成された、魚Fの旨味度を推定するためのモデルMを記憶する。
【0057】
(制御部23について)
制御部23は、CPUやMPU等によって、第2の学習装置20内部の記憶装置に記憶されている各種プログラム(例えば、実施形態に係る情報処理プログラム)がRAMを作業領域として実行されることにより実現される。また、制御部23は、例えば、ASICやFPGA等の集積回路により実現される。
【0058】
図4に示すように、制御部23は、取得部23aと、学習部23bと、送信部23cとを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部23の内部構成は、
図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部23が有する各処理部の接続関係は、
図4に示した接続関係に限られず、他の接続関係であってもよい。
【0059】
(取得部23a)
取得部23aは、CG画像SIを取得する。例えば、取得部23aは、情報処理装置100によって送信されたCG画像SIを取得し、学習データ記憶部22aに格納してよい。
【0060】
(学習部23b)
学習部23bは、学習データLDに基づいて、魚Fの旨味度を推定するためのモデルMを生成する。例えば、学習部23bは、魚Fの水中画像が入力として与えられた場合に水中画像に含まれる魚Fの旨味度を推定するように、学習データLDに基づきモデルMを学習させる。
【0061】
(送信部23c)
送信部23cは、学習済みのモデルMを情報処理装置100に送信する。学習部23bによるモデルMの更新は定期的に行われてよいため、送信部23cは、更新のたびに最新のモデルMを情報処理装置100に送信してよい。
【0062】
〔4-3.情報処理装置〕
次に、情報処理装置100の構成例を説明する。
図5は、情報処理装置100の構成例を示す図である。
図5に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。
【0063】
(通信部110)
通信部110は、例えば、NIC等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、例えば、第1の学習装置10や第2の学習装置20との間で情報の送受信を行う。
【0064】
(記憶部120)
記憶部120は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子またはハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、例えば、実施形態に係る情報処理に関するデータやプログラムが記憶されてよい。また、
図5の例によれば、記憶部120は、擬似データ記憶部121と、CG画像データ記憶部122と、モデルデータ記憶部123とを有してよい。
【0065】
(擬似データ記憶部121)
擬似データ記憶部121は、魚画像実データTGに基づき更新されたGANsを用いて生成された魚画像擬似データFGを記憶する。
【0066】
(CG画像データ記憶部122)
CG画像データ記憶部122は、魚画像擬似データFGに基づき魚Fがコンピュータグラフィックスにより再現されたCG画像SIを記憶する。
【0067】
(制御部130について)
制御部130は、CPUやMPU等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(例えば、実施形態に係る情報処理プログラム)がRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASICやFPGA等の集積回路により実現される。
【0068】
図5に示すように、制御部130は、受付部131と、第1の生成部132と、第2の生成部133と、推定部134と、出力制御部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、
図5に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、
図5に示した接続関係に限られず、他の接続関係であってもよい。
【0069】
(受付部131)
受付部131は、機会学習の結果に関する情報を受け付ける。例えば、受付部131は、第1の学習装置10が送信したGANsを受け付けモデルデータ記憶部123に格納してよい。また、受付部131は、第2の学習装置20が送信したモデルMを受け付けモデルデータ記憶部123に格納してよい。
【0070】
(第1の生成部132)
第1の生成部132は、推定対象の魚Fが撮影された画像であって魚Fに対する評価値が付与された画像である魚画実データTGを基にした機械学習の結果(すなわちGANs)を用いて、評価値に応じた特徴を有する魚Fが再現された魚画像擬似データFGを生成する。これまで説明した通り、GANsは、魚画実データTGに写される魚Fに対する評価値に応じた特徴として、魚Fの色合い、形状、サイズ、重さ、または、脂肪率のいずれかとの差分を最小化するように特徴を学習したモデルである。
【0071】
(第2の生成部133)
第2の生成部133は、魚画像擬似データFGに基づいて、魚Fがコンピュータグラフィックスにより再現されたCG画像SIを生成する。例えば、第2の生成部133は、魚画像擬似データFGを基にした魚Fの3次元モデルに対して、水中での見え方(水中画像としての見え方)がシミュレーションされた結果が、コンピュータグラフィックスにより再現されたCG画像SIを生成する。より具体的には、第2の生成部133は、パラメータ情報に基づき魚Fが水中に存在する場合の映像をシミュレーションした結果が、コンピュータグラフィックスにより再現されたCG画像SIを生成する。ここで、パラメータ情報は、水深に応じた光の減衰率が考慮された魚Fの色合い、または、魚Fに対する光の反射具合であってよい。
【0072】
(推定部134)
推定部134は、CG画像SIと、CG画像SIで再現される魚Fの特徴が示唆する評価値との組を学習データLDとして学習されたモデルMに基づいて、入力画像に映された魚Fの評価値を推定する。例えば、推定部134は、入力画像として、魚Fが水中を泳ぐ様子が撮影された水中画像WGをモデルMに入力し、モデルMによる出力情報に基づいて、水中画像WGに含まれる魚Fそれぞれの評価値を推定する。
【0073】
(出力制御部135)
出力制御部135は、推定部134により推定された旨味度をデバイスDVに出力する。例えば、出力制御部135は、水中画像WGに含まれる魚Fごとに、旨味度が一覧表示されたリストを出力してよい。他の例として、出力制御部135は、旨味度の分布情報を出力してもよい。
【0074】
〔5.推定手法〕
続いて、システム1で実現される旨味度の推定手法を説明する。
図6は、旨味度の推定に係る情報処置手順を示すシーケンス図である。
【0075】
まず、第1の学習装置10の取得部13aは、魚画像実データTGを取得する(ステップS601)。例えば、取得部13aは、デバイスDVによって送信された魚画像実データTGを取得してよい。
【0076】
学習部13bは、魚画像実データTGを学習データとする機械学習を生成モデル(以下、「GANs」とする)に行わせることで、理想的な値が得られるまでGANsを更新する(ステップS602)。
【0077】
ここで、
図7を用いて、学習部13bの動作例を説明する。
図7は、学習部13bの動作例を示す図である。
図7では、学習部13bがGANsに学習させることで画像生成する方法を説明する。GANsは、深層学習ネットワークの一種であり、入力された実データに類似した特性を有する画像データの生成を実現する。
【0078】
図7に示すように、GANsは、ジェネレーター(Generator)Gと、ディスククリミネーター(Discriminator)Dという2つのネットワークで構成される。
【0079】
ジェネレーターGは、乱数値(潜在入力)のベクトル(Random Vectors)が入力として与えられると、学習データ(Training Data)に類似する構造の画像データを生成する。本実施形態では、魚画像実データTGが学習データとして与えられる。
図7には、複数の魚画像実データTGとして、魚画像実データTG1,・・・,魚画像実データTGnが与えられる例が示される。また、
図7の例によれば、魚画像実データTG1には旨味度「2.8」がメタ情報として付与され、魚画像実データTGnには旨味度「4.1」がメタ情報として付与されている例が示される。
【0080】
ディスクリミネーターDは、魚画像実データTG(学習データ)とジェネレーターGにより生成された画像データとの両方の観測値を含むデータ(Predict Labels)が与えられると、この観測値が「real」(真)であるのか「generated」(偽)かの分類を試みる。
【0081】
例えば、学習部13bは、ジェネレーターGに対して乱数値のベクトルを入力として与えることで、ジェネレーターGおよびディスクリミネーターDの両方のネットワークの学習を同時に行わせることで、両方のネットワークの性能を最大化させる。
【0082】
具体的には、学習部13bは、ジェネレーターGに学習させて、ディスクリミネーターDを騙す画像データを生成させる。また、学習部13bは、ディスクリミネーターDに学習させて、魚画像実データTGと、ジェネレーターGにより生成された生成データとを区別させる。
【0083】
ここで、ジェネレーターGの性能を最適化するために、ジェネレーターGによる生成データが与えられた場合にディスクリミネーターDの損失が最大化される。つまり、ジェネレーターGの目的はディスクリミネーターDが「real」と分類するような画像データを生成することである。一方、ディスクリミネーターDの性能を最適化するために、魚画像実データTGおよび生成データの両方が与えられた場合にディスクリミネーターDの損失が最小化される。つまり、ディスクリミネーターDの目的はジェネレーターGに「騙されない」ことである。このように本物らしい画像データを生成するジェネレーターGと、学習データの特性である強い特徴表現を学習したディスクリミネーターDを得ることがGANsの学習における理想的な結果といえる。
【0084】
図6に戻り、理想的な結果が得られるまで更新された生成モデル(GANs)は、送信部13cによって情報処理装置100に送信される(ステップS603)。
【0085】
情報処理装置100の受付部131は、送信部13cが送信した生成モデル(GANs)を受け付ける(ステップS604)。
【0086】
そして、第1の生成部132は、生成モデル(GANs)を用いて、魚画像擬似データFGを生成する(ステップS605)。なお、魚画像擬似データFGは、魚画像実データTGに付与される旨味度が得られるように特徴を学習したGANsから生成される。このため、魚画像擬似データFGには、基となった魚画像実データTGに付与される旨味度と同様の旨味度がメタ情報として付与されてよい。
【0087】
次に、第2の生成部133は、魚画像擬似データFGに基づいて、魚Fがコンピュータグラフィックスにより再現されたCG画像SIを生成する(ステップS606)。例えば、第2の生成部133は、魚Fの水中画像がシミュレーションされた結果が再現されたCG画像SIを生成する。
【0088】
例えば、第2の生成部133は、魚画像擬似データFGに基づいて、魚Fの3次元モデルを生成し、生成した3次元モデルに対して、所定のパラメータ情報を適用したシミュレーションを行う。例えば、第2の生成部133は、魚Fが水中を泳ぐ様子の水中画像では、魚Fがどのような見え方になるか所定のパラメータ情報を用いてシミュレーションを行う。そして、第2の生成部133は、シミュレーション結果が、コンピュータグラフィックスにより再現されたCG画像SIを生成する。
【0089】
図8を用いて、第2の生成部133によって行われるシミュレーションについて説明する。
図8は、実施形態に係るシミュレーション手法の一例を示す図である。
図8では、魚画像擬似データFGに基づき生成された魚Fの3次元モデルFMGに対して、所定のパラメータ情報を適用したシミュレーションが行われる場面を示す。ここで、所定のパラメータ情報は、水深に応じた光の減衰率に伴う魚Fの色合い、および、水深に応じた光の減衰率に伴う魚Fに対する光の反射具合であるものとする。
【0090】
図8には、魚Fが水中を泳ぐ様子の水中画像の一例として、水中画像EXが示され、魚F(a)と魚F(b)とがピックアップされている。魚F(a)と魚F(b)とでは、水深が異なるため、光の減衰率も異なる。このため、水中画像EXに示すように、魚F(a)と魚F(b)との間では、色合いや光の反射具合が異なる。そこで、第2の生成部133は、魚Fの3次元モデルFMGを用いて、魚Fが水中を泳ぐ様子の水中画像EXでは、魚Fは水深に応じてどのような色合いになるか、魚Fは水深に応じてどのような光の反射具合になるかになるかをシミュレーションする。
【0091】
すなわち、第2の生成部133は、特定の水深に応じた光の減衰率に基づいて、係る水深での水中画像EXでは魚Fの陸上での色合いがどのように変化するかをシミュレーションし、また、係る水深での水中画像EXでは魚Fに対する光の反射具合がどのように変化するかをシミュレーションする。
図8には、第2の生成部133が、シミュレーション結果に基づいて、CG画像SIの一例として、CG画像SI1を生成した例が示される。また、第2の生成部133は、CG画像SI1を基にして、魚Fのポーズや魚Fの向きを変えた様々なCG画像SIも生成してよい。
図8には、第2の生成部133が、CG画像SI1を基にして、異なる向きから魚Fを捉えたCG画像SI2をさらに生成した例が示される。
【0092】
また、第2の生成部133は、CG画像SI1やCG画像SI2に対して、データ拡張(Data Augmentation)を行うことで、CG画像SIの数をさらに増幅させてよい。また、第2の生成部133は、旨味度が付与された魚画像擬似データFGからCG画像SIを生成するため、CG画像SIを生成する際に、CG画像SIに含まれる各魚Fに対しても旨味度をメタ情報として付与しておいてよい。
【0093】
図6に戻り、CG画像SIは、第2の生成部133によって第2の学習装置20に送信される(ステップS607)。
【0094】
第2の学習装置20の取得部23aは、CG画像SIを取得する(ステップS608)。具体的には、取得部23aは、情報処理装置100よって送信されたCG画像SIを取得する。
【0095】
学習部23bは、CG画像SIから学習データLDを生成する(ステップS609)。例えば、学習部23bは、CG画像SIが示す水中のシミュレーション画像に含まれる魚FそれぞれのCG画像SIに、当該魚Fの特徴が示唆する旨味度(メタ情報として付与された旨味度)をラベル情報として付加することで、学習データLDを生成してよい。例えば、学習部23bは、1の魚FのCG画像SIと、当該魚Fの特徴が示唆する旨味度を正解とするラベル情報との組を1つの学習データLDとして、全ての魚Fに対応する学習データLD群を生成してよい。
【0096】
また、学習部23bは、学習データLDに基づいて、魚Fの旨味度を推定するためのモデルMを生成する(ステップS610)。例えば、学習部23bは、学習データLDに基づいて、魚Fの水中画像から魚Fの旨味度を推定するようにモデルMを学習させる。
【0097】
図9を用いて、モデルMの学習手法について説明する。
図9は、旨味度の推定モデル生成に係る学習手法の一例を示す図である。
図9では、旨味度が正解ラベルとして付加されたn個のCG画像SIを学習データLDとして用いた学習によりモデルMが生成される場面を示す。
【0098】
図9に示すように、モデルMは、学習データLDとする機械学習(教師あり学習)を行うDNN(ディープニューラルネットワーク)であってよく、CG画像SIが示す魚Fの特徴と正解ラベルとの関係性を学習する。この結果、モデルMでは、入力画像に含まれる魚Fの旨味度を推定するように学習が行われる。
【0099】
図9には、旨味度「1.0」が正解ラベルとして付加されたCG画像SI1と、旨味度「3.1」が正解ラベルとして付加されたCG画像SI2と、旨味度「4.0」が正解ラベルとして付加されたCG画像SI3と、旨味度「2.7」が正解ラベルとして付加されたCG画像SI4と,・・・,旨味度「5.0」が正解ラベルとして付加されたCG画像SInとで構成される学習データLD群がモデルMに入力されている。係る場合、モデルMでは、入力画像(例えば、魚Fが水中を泳ぐ様子が撮影された水中画像)が与えられた場合に、入力画像に含まれる魚Fに対して、旨味度「1.0」、旨味度「3.1」、旨味度「4.0」、旨味度「2.7」,・・・,旨味度「5.0」等を推定するように関係性が学習される。
【0100】
図6に戻り、学習済みのモデルMは、送信部23cによって情報処理装置100に送信される(ステップS611)。
【0101】
受付部131は、送信部23cが送信したモデルMを受け付ける(ステップS612)。
【0102】
このような状態において、推定部134は、魚Fの水中画像WGが受け付けられたか否かを判定する(ステップS613)。推定部134は、水中画像WGが受け付けられていない間は(ステップS613;No)、水中画像WGが受け付けられたと判定されるまで待機する。
【0103】
一方、推定部134は、水中画像WGが受け付けられた場合には(ステップS613;Yes)、水中画像WFを学習済みのモデルMに入力し、モデルMによる出力情報に基づいて、水中画像WGに含まれる魚Fの旨味度を推定する(ステップS614)。
【0104】
出力制御部135は、旨味度の推定結果に関する情報がデバイスDVに出力させるよう制御する(ステップS615)。例えば、出力制御部135は、水中画像WGに含まれる魚Fごとに、推定結果としての旨味度が一覧表示されたリストLTを生成し、リストLTをデバイスDVに出力させてよい。
【0105】
ここで、
図10は、旨味度が一覧表示されたリストLTの一例を示す図である。
図10では、水中画像WGを入力として与えた場合のモデルMにより出力情報からリストLTが生成される場面を示す。
【0106】
図10の例によれば、水中画像WGがモデルMに入力されると、水中画像WGに含まれる魚Fが識別され、識別された個体ごとに旨味度が推定される。
図10には、水中画像WGに含まれる魚Fとして9匹の魚F(すなわち魚Fa~魚Fi)が識別され、魚Fについて旨味度が推定される。この場合、出力制御部135は、
図10に示すように、魚Fa~魚Fiそれぞれに対して、推定結果の旨味度が対応付けられたリストLTを生成してよい。
【0107】
また、係る例に限らず、出力制御部135は、魚Fa~魚Fiそれぞれの旨味度に基づいて、旨味度「0.0」~「1.0未満」の魚Fは「2%」、旨味度「1.0」~「2.1未満」の魚Fは「6%」・・・旨味度「4.0以上」の魚Fは「80%」といった形で割合分布の情報を生成し、これを出力してもよい。
【0108】
〔6.限定解除〕
上記実施形態では、第1の学習装置10と、第2の学習装置20と、情報処理装置100とで構成されるシステム1で実施形態に係る情報処理が実現される例を示した。しかしながら、第1の学習装置10と、第2の学習装置20と、情報処理装置100とは、運用に合わせて任意に組み合わされてよい。
【0109】
例えば、第1の学習装置10と、第2の学習装置20と、情報処理装置100とを組み合わせた1の装置が、実施形態に係る情報処理装置として構成されてもよい。他の例として、第1の学習装置10と、情報処理装置100とが一体化された装置が、実施形態に係る情報処理装置として構成されてもよい。さらに他の例として、第2の学習装置20と、情報処理装置100とが一体化された装置が、実施形態に係る情報処理装置として構成されてもよい。また、第1の学習装置10と、第2の学習装置20とが一体化されてもよい。
【0110】
〔7.ハードウェア構成〕
また、上記実施形態に係る情報処理装置100は、例えば
図11に示すような構成のコンピュータ1000によって実現される。
図11は、情報処理装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0111】
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0112】
HDD1400は、CPU1100によって実行されるプログラム、および、係るプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、通信網50を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを、通信網50を介して他の機器へ送信する。
【0113】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを、入出力インターフェイス1600を介して出力装置へ出力する。
【0114】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、係るプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0115】
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、HDD1400には、記憶部120内のデータが格納される。コンピュータ1000のCPU1100は、これらのプログラムを、記録媒体1800から読み取って実行するが、他の例として、他の装置から、通信網50を介してこれらのプログラムを取得してもよい。
【0116】
〔8.その他〕
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0117】
〔9.まとめ〕
以上、本願の実施形態をいくつかの図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【符号の説明】
【0118】
1 システム
10 第1の学習装置
13a 取得部
13b 学習部
13c 送信部
20 第2の学習装置
23a 取得部
23b 学習部
23c 送信部
100 情報処理装置
120 記憶部
121 擬似データ記憶部
122 CG画像データ記憶部
123 モデルデータ記憶部
130 制御部
131 受付部
132 第1の生成部
133 第2の生成部
134 推定部
135 出力制御部
【要約】
【課題】魚の価値を適切に判断すること。
【解決手段】本願に係る情報処理プログラムは、推定対象の所定の魚が撮影された画像であって前記所定の魚に対する評価値が付与された画像である実画像を基にした機械学習により、前記評価値に応じた特徴を有する前記所定の魚が再現された画像データを生成する第1の生成手順と、前記画像データに基づいて、前記所定の魚がコンピュータグラフィックスにより再現されたCG(Computer Graphics)画像を生成する第2の生成手順と、前記CG画像と、前記CG画像で再現される前記所定の魚の特徴が示唆する前記評価値との組を学習データとして学習されたモデルに基づいて、入力画像に映された前記所定の魚の評価値を推定する推定手順とをコンピュータに実行させる。
【選択図】
図5