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

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

▶ 株式会社Noveraの特許一覧

<>
  • 特許-プログラム、情報処理装置、及び方法 図1
  • 特許-プログラム、情報処理装置、及び方法 図2
  • 特許-プログラム、情報処理装置、及び方法 図3
  • 特許-プログラム、情報処理装置、及び方法 図4
  • 特許-プログラム、情報処理装置、及び方法 図5
  • 特許-プログラム、情報処理装置、及び方法 図6
  • 特許-プログラム、情報処理装置、及び方法 図7
  • 特許-プログラム、情報処理装置、及び方法 図8
  • 特許-プログラム、情報処理装置、及び方法 図9
  • 特許-プログラム、情報処理装置、及び方法 図10
  • 特許-プログラム、情報処理装置、及び方法 図11
  • 特許-プログラム、情報処理装置、及び方法 図12
  • 特許-プログラム、情報処理装置、及び方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-11-10
(45)【発行日】2022-11-18
(54)【発明の名称】プログラム、情報処理装置、及び方法
(51)【国際特許分類】
   G06T 5/00 20060101AFI20221111BHJP
【FI】
G06T5/00 735
【請求項の数】 10
(21)【出願番号】P 2022104244
(22)【出願日】2022-06-29
【審査請求日】2022-06-29
【早期審査対象出願】
(73)【特許権者】
【識別番号】517234011
【氏名又は名称】株式会社Novera
(74)【代理人】
【識別番号】110002815
【氏名又は名称】IPTech弁理士法人
(72)【発明者】
【氏名】諸冨 大樹
(72)【発明者】
【氏名】遠藤 国忠
(72)【発明者】
【氏名】堀江 優
【審査官】山口 大志
(56)【参考文献】
【文献】特開2020-166397(JP,A)
【文献】特開2006-338103(JP,A)
【文献】特開2016-062225(JP,A)
【文献】特表2022-512044(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 5/00
(57)【特許請求の範囲】
【請求項1】
プロセッサを備えるコンピュータに処理を行わせるプログラムであって、前記プロセッサに、
記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップと、
取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップと、
生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップと、
を実行させるプログラム。
【請求項2】
前記取得するステップにおいて、前記被写体を撮影する画面において前記被写体を撮影した場合の画像の明るさに関する情報を解析することにより、撮影する者に対して前記一定の条件を満たすことを表示することにより前記撮影する者により撮影された、前記所定のパラメータが一定の条件を満たす画像を、前記記憶部から取得する、
請求項1に記載のプログラム。
【請求項3】
前記取得するステップにおいて、前記所定のパラメータが一定の条件を満たす画像として、明るさに関するパラメータが所定の範囲内である画像を、前記記憶部から取得する、
請求項2に記載のプログラム。
【請求項4】
前記取得するステップにおいて、前記所定のパラメータが一定の条件を満たす画像として、前記画像の画素値の平均が、明るすぎることを判定するための第1閾値以下となること、前記画像の画素値の平均が、暗すぎることを判定するための第2閾値以上となること、前記画像の画素値の標準偏差が、コントラスト又は輝度が弱すぎることを判定するための第3閾値以下となること、及び、前記画像の画素値の標準偏差が、コントラスト又は輝度が強すぎることを判定するための第4閾値以上となることの何れか1以上を満たす画像を、前記記憶部から取得する、
請求項2に記載のプログラム。
【請求項5】
前記取得するステップにおいて、前記所定のパラメータが一定の条件を満たす画像として、前記画像の画素値の平均が、明るすぎることを判定するための第1閾値以下となること、前記画像の画素値の平均が、暗すぎることを判定するための第2閾値以上となること、前記画像の画素値の標準偏差が、コントラスト又は輝度が弱すぎることを判定するための第3閾値以下となること、及び、前記画像の画素値の標準偏差が、コントラスト又は輝度が強すぎることを判定するための第4閾値以上となることの何れも満たす画像を、前記記憶部から取得する、
請求項2に記載のプログラム。
【請求項6】
前記被写体の状態は、肌に関する状態である、
請求項2に記載のプログラム。
【請求項7】
前記学習データを用いて、被写体を含む撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類した結果を出力するモデルを学習するステップ、
を実行させ、
前記出力するステップにおいて、学習した前記モデルを出力する、
請求項1~請求項6の何れかに記載のプログラム。
【請求項8】
前記被写体を含む画像の入力を受け付けるステップと、
前記入力を受け付けた前記画像と、学習した前記モデルとを用いて、前記入力を受け付けた前記画像に含まれる前記被写体の状態を分類した結果を求めるステップと、
を実行させ、
前記出力するステップにおいて、前記分類した結果を出力する、
請求項7に記載のプログラム。
【請求項9】
プロセッサを備える情報処理装置であって、前記プロセッサが、
記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップと、
取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップと、
生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップと、
を実行する情報処理装置。
【請求項10】
プロセッサを備えるコンピュータが、
記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップと、
取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップと、
生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップと、
を実行する方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、情報処理装置、及び方法に関する。
【背景技術】
【0002】
入力画像について、あるタスクを実行するCNN(Convolutional Neural Network)モデルにおいて、学習データが多い方が学習精度の向上を期待できる場合がある。しかし、学習データとなる画像を大量に生成するには非常にコストがかかる。
【0003】
種々の撮影具合の大量の顔画像を生成することを目的として、入力された1つの画像に対し、明度、コントラストなどの見え方種別を変更した画像を生成する技術がある(特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018-116589号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
顔の表情、肌などを判断したいときに、画像内の顔は小さいため、オブジェクト化して光源を変更することが難しい。このようなオブジェクト化して光源を変更できない顔のような画像について、所定のタスクを実施するCNNモデルは、画像内の微小な変化についてはロバストであるため、学習データとして様々な条件の画像データが特に必要となる。
【0006】
しかし、上記技術では、オブジェクト化して光源を変更することができない分類対象を含む画像について、明度やコントラストを変更した画像を学習データとして生成しても、精度の向上に寄与しない学習データが増えるだけとなってしまう。このため、学習精度に寄与する学習データを低コストに生成できない、という問題があった。
【0007】
本開示の目的は、微小な変化を学習するための様々な条件の学習データを、低コストに増やすことができる技術を提供することにある。
【課題を解決するための手段】
【0008】
本開示の一態様のプログラムは、プロセッサを備えるコンピュータに処理を行わせるプログラムであって、前記プロセッサに、記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップと、取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップと、生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップと、を実行させる。
【発明の効果】
【0009】
本開示の技術は、微小な変化を学習するための様々な条件の学習データを、低コストに増やすことができる。
【図面の簡単な説明】
【0010】
図1】本開示の情報処理システム1の構成を示すブロック図である。
図2】本開示の情報処理装置10の構成を示すブロック図である。
図3】本開示の情報処理装置10の機能構成を示すブロック図である。
図4】第1データDB121のデータ構造の一例を示す図である。
図5】第2データDB122のデータ構造の一例を示す図である。
図6】画像を撮影するための画面の一例を示すイメージ図である。
図7】画像を撮影するための画面の一例を示すイメージ図である。
図8】光源を変更した画像の例を示すイメージ図である。
図9】本開示のユーザ端末20の構成を示すブロック図である。
図10】本開示のユーザ端末20の機能構成を示すブロック図である。
図11】本開示の学習データ生成処理を示すフローチャートである。
図12】本開示の学習処理を示すフローチャートである。
図13】本開示の分類処理を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本開示の一実施形態について、図面に基づいて詳細に説明する。なお、実施形態を説明するための図面において、同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。
【0012】
<本開示の概要>
CNNモデルにおいて検出される対象は、入力される画像によっては適切な推論が行えない。例えば、顔の表情、肌の状態などについて推論する場合、CNNモデルではオブジェクト化して光源を変更することが難しい。このため、対象の微小な変化を推論するCNNモデルを学習するためには、光源を変更した学習データが多数必要となる。
【0013】
本開示の技術は、記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を当該記憶部から取得する。本開示の技術は、取得した当該画像に基づいて、当該パラメータを一定の範囲で変更した画像を複数生成する。本開示の技術は、生成された複数の画像を、撮影画像の入力を受け付けて当該撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力する。これにより、本開示の技術は、微小な変化を学習するための様々な条件の学習データを、低コストに増やすことができる。
【0014】
<1.情報処理システム1の構成>
図1は、第1実施形態の情報処理システム1の構成を示すブロック図である。図1に示すように、情報処理システム1は、情報処理装置10、ユーザ端末20、及びネットワーク30を含む。情報処理装置10と、ユーザ端末20とは、有線又は無線の通信規格を用いて、ネットワーク30を介して相互に通信可能に接続されている。
【0015】
<2.情報処理装置10の構成>
情報処理装置10は、例えば、ラップトップパソコン又はラックマウント型若しくはタワー型等のコンピュータ、スマートフォン等である。情報処理装置10は、複数の情報処理装置10により、1つのシステムとして構成される、冗長化構成される等されてもよい。情報処理装置10を実現することに要する複数の機能の配分の仕方は、各ハードウェアの処理能力、情報処理装置10に求められる仕様等に鑑みて適宜決定することができる。
【0016】
図2及び図3を用いて、本開示に係る情報処理装置10について説明する。本開示に係る情報処理装置10は、ユーザに商品を提示する提示処理等を実行するための装置である。
【0017】
図2は、情報処理装置10の構成を示すブロック図である。図2に示すように、情報処理装置10は、プロセッサ11と、メモリ12と、ストレージ13と、通信IF14と、入出力IF15と、カメラ16とを含んで構成される。
【0018】
プロセッサ11は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路などにより構成される。
【0019】
メモリ12は、プログラム、及び、プログラム等で処理されるデータ等を一時的に記憶するためのものである。メモリ12は、例えばDRAM(Dynamic Random Access Memory)等の揮発性のメモリである。
【0020】
ストレージ13は、データを保存するための記憶装置であり、例えばフラッシュメモリ、HDD(Hard Disc Drive)、SSD(Solid State Drive)等の1つ、又は組み合わせにより実現される。
【0021】
通信IF14は、情報処理装置10が外部の装置と通信するため、信号を入出力するためのインターフェースである。通信IF14は、インターネット、広域イーサネット等のネットワークに有線又は無線により接続する。
【0022】
入出力IF15は、図示しない入力装置(例えば、タッチパネル、タッチパッド、マウス等のポインティングデバイス、キーボード等)から、入力信号を受け付けるインターフェースである。また、入出力IF15は、図示しない出力装置(ディスプレイ、スピーカ等)に対し、出力信号を送信するインターフェースである。
【0023】
カメラ16は、撮影した画像を画像データとして取得するカメラ装置である。
【0024】
図3は、情報処理装置10の機能構成を示すブロック図である。図2に示すように、情報処理装置10は、通信部110と、記憶部120と、制御部130とを含む。
【0025】
通信部110は、情報処理装置10が外部の装置と通信するための処理を行う。
【0026】
記憶部120は、情報処理装置10が使用するデータ及びプログラムを記憶する。記憶部120は、第1データDB121、第2データDB122等を記憶する。
【0027】
第1データDB121は、画像データを保持するデータベースである。
図4は、第1データDB121の例である。図4に示すように、第1データDB121のレコードのそれぞれは、項目「ID」、項目「ユーザID」、項目「画像データ」、項目「パラメータ」、項目「日時」などを含む。なお、ここに示す項目はすべてではなく、他の項目があっても構わない。
【0028】
項目「ID」は、各レコードを識別するための情報を記憶する。
【0029】
項目「ユーザID」は、画像データに映ったユーザを識別するための情報を記憶する。
【0030】
項目「画像データ」は、画像データを記憶する。画像データは、例えば、PNGファイル、JPEGファイルなどの画像データである。
【0031】
項目「パラメータ」は、画像に関する所定のパラメータを記憶する。パラメータは、例えば、画素の平均値、画素の偏差などである。
【0032】
項目「日時」は、画像データが撮影された日時、又は画像データが第1データDB121に格納された日時を記憶する。
【0033】
第2データDB122は、被写体を含む撮影画像の入力を受け付けて当該撮影画像に含まれる被写体の状態を分類した結果を出力するモデルと、当該モデルのパラメータを格納する。当該モデルについては後述する。
【0034】
図5は、第2データDB122の例である。図5に示すように、第2データDB122のレコードのそれぞれは、項目「ID」、項目「モデル名」、項目「パラメータ」などを含む。なお、ここに示す項目はすべてではなく、他の項目があっても構わない。
【0035】
項目「ID」は、各レコードを識別するための情報を記憶する。
【0036】
項目「モデル名」は、モデルの名称を記憶する。
【0037】
項目「パラメータ」は、当該モデルと当該モデルのパラメータを記憶する。
【0038】
制御部130は、情報処理装置10のプロセッサ11がプログラムに従って処理を行うことにより、受信制御部131、送信制御部132、表示部133、取得部134、解析部135、生成部136、及び学習部137に示す機能を発揮する。
【0039】
受信制御部131は、情報処理装置10が外部の装置から通信プロトコルに従って信号を受信する処理を制御する。
【0040】
送信制御部132は、情報処理装置10が外部の装置に対し通信プロトコルに従って信号を送信する処理を制御する。
【0041】
表示部133は、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を、撮影する者が撮影するための画面を表示する。
【0042】
具体的には、表示部133は、まず、撮影する者に、被写体を撮影するための画面を表示する。被写体は、オブジェクト化して光源を変更することができないものである。被写体は、例えば、人の顔などである。撮影する者は、被写体となる人自身、被写体となる人以外の撮影する者などである。
【0043】
次に、表示部133は、被写体が所望の画像となるように補助する。具体的には、表示部133は、被写体を撮影するための画面を表示している間、被写体を撮影した場合の第1画像を、カメラ16から取得する。表示部133は、第1画像を解析する。表示部133は、例えば、任意の画像解析モデルを用いて、第1画像の明るさに関する情報、被写体の位置に関する情報、被写体の向きに関する情報などを解析する。被写体が一定の条件を満たすかどうか判定する。一定の条件は、解析する情報によって異なる。
【0044】
明るさに関する情報の場合、一定の条件は、明るさに関するパラメータが所定の範囲内であることである。明るさに関するパラメータが、CNNモデルなどにおいて再現性が低いものとなる場合の要因として、画素値の平均が所定値よりも高いことにより画像が明るすぎること、画素値の平均が所定値よりも低いことにより画像が暗すぎることがある。
【0045】
また、要因は、画素値の標準偏差が所定値よりも高いことにより、コントラスト・輝度が強すぎること、画素値の標準偏差が所定値よりも低いことにより、コントラスト・輝度が弱すぎることがある。
【0046】
このため、所定の範囲内は、以下の条件1~条件4の少なくとも何れかを満たすものである。
(条件1)第1画像の画素値の平均が、明るすぎることを判定するための第1閾値以下となること。
(条件2)第1画像の画素値の平均が、暗すぎることを判定するための第2閾値以上となること。
(条件3)第1画像の画素値の標準偏差が、コントラスト又は輝度が弱すぎることを判定するための第3閾値以下となること。
(条件4)及び、前記画像の画素値の標準偏差が、コントラスト又は輝度が強すぎることを判定するための第4閾値以上となること。
【0047】
第1閾値~第4閾値は、目的となるタスクを実行するモデルの学習精度に影響しない範囲であれば、任意に決定することができる。条件1~条件4の全てを満たす状態で被写体が撮影されることにより、本開示の技術における、モデルを学習するための画像データを生成する基本となる画像データを得ることができる。
【0048】
被写体の位置に関する情報の場合、一定の条件は、被写体の位置が所定の位置にあること、又は被写体が所定の範囲に入っていることである。具体的には、表示部133は、顔の位置について、例えば顔の任意の部分(例えば目、鼻など)についての座標点を取得するモデルを用いて、顔の位置を求める。この場合、表示部133は、一定の条件として、求めた任意の部分の位置と、予め定めた任意の部分に対応する位置との距離が所定の閾値以下であることなどとする。
【0049】
被写体の向きに関する情報の場合、被写体の向きが所定の向き(例えば正面)であることである。具体的には、表示部133は、顔の向きについて、例えば顔の任意の部分(例えば、目、鼻など)について、複数の画素についての明るさを求める。表示部133は、明るさの変化などにより、顔の向きを求める。この場合、表示部133は、一定の条件として、求めた任意の部分の向きと、予め定めた向きとの角度差等が所定の閾値以下であることなどとする。
【0050】
表示部133は、第1画像の明るさに関する情報、被写体の位置に関する情報、被写体の向きに関する情報のそれぞれについての判定結果を表示する。これにより、表示部133は、被写体が所望の画像となるように補助する。
【0051】
なお、表示部133は、第1画像の明るさに関する情報、被写体の位置に関する情報、及び被写体の向きに関する情報の判定結果が全てOKである場合、撮影する者の操作によらずに被写体を撮影する構成としてもよい。この場合、表示部133は、判定結果が全てOKである場合に、カメラ16に撮影指示を送信する。
【0052】
図6及び図7は、画像を撮影するための画面の一例を示すイメージ図である。図6及び図7に示すように、表示部133は、被写体を撮影するための画面40を、撮影する者に対して表示する。
【0053】
画面40は、被写体を撮影するための画面である。
【0054】
表示部41は、第1画像の被写体の位置に関する情報が一定の条件に適合するかを表示する。表示部133は、顔の位置が枠44内にあるかどうかを判定し、判定結果を○×などで表示する。
【0055】
表示部42は、第1画像の被写体の向きに関する情報が一定の条件に適合するかを表示する。表示部133は、顔の向きが例えば正面であるかどうかを判定し、判定結果を○×などで表示する。
【0056】
表示部43は、第1画像の明るさに関する情報が、一定の条件に適合するかを表示する。表示部133は、例えば、現在の第1画像の明るさに関する情報が、上記条件1~条件4の全てを満たすか否かを判定する。表示部133は、何れかの条件を満たさない場合、図6の表示部43に示すように、判定結果として×を表示する。一方、表示部133は、全ての条件を満たす場合に、図7に示すように判定結果を○として表示する。
【0057】
枠44は、所望の画像を得る為に、被写体を画像内の位置を示すための枠である。
【0058】
テキストボックス45は、撮影する者に対する補助的なメッセージを表示するテキストボックスである。例えば、図6及び図7に示すように、被写体の位置、向きなどが所望の画像になるように、「枠内に顔を収めて正面を向いて下さい」などのメッセージを表示する。テキストボックス45は、明るさについて、「もっと明るい場所で撮影して下さい」などの明るさに関する情報に応じてメッセージを表示する構成としてもよい。
【0059】
取得部134は、撮影された画像をカメラ16から取得する。
【0060】
具体的には、取得部134は、被写体の位置、被写体の向き、及び被写体への光の当たり方に関する所定のパラメータが一定の条件を満たすように、表示部133の補助により撮影された画像を、取得する。取得部134は、取得した画像を、第1データDB121に格納する。このように、本開示の技術は、表示部133と取得部134により、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を蓄積することができる。なお、表示部133の機能及び撮影する機能は、他の端末に備えられていてもよい。この場合、取得部134は、通信などにより他の端末から当該画像を取得する。
【0061】
解析部135は、被写体への光の当たり方を解析する。
【0062】
具体的には、解析部135は、まず、撮影された画像を、第1データDB121に格納されたから取得する。
【0063】
次に、解析部135は、取得した画像を解析することにより、被写体への光の当たり方を求める。具体的には、解析部135は、取得した画像の画素値を求め、画素値の平均値及び偏差値を求める。そして、解析部135は、求めた平均値及び偏差値をパラメータとして、第1データDB121に格納する。なお、取得した画像を任意の画像解析技術を用いて、被写体への光源の位置、光の強さ、当該画像の画素値の平均、当該画像の画素値の標準偏差などのパラメータとして解析してもよい。
【0064】
生成部136は、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像に基づいて、パラメータを一定の範囲で変更した画像を複数生成する。
【0065】
具体的には、生成部136は、まず、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす第2画像を、第1データDB121に格納されたから取得する。
【0066】
次に、生成部136は、取得した第2画像に基づいて、パラメータを一定の範囲で変更した第3画像を複数生成する。具体的には、生成部136は、取得した第2画像の被写体への光源の位置と、光の強さと異なる光源の位置と光の強さとの組を複数生成する。生成部136は、生成した組の各々についての光源の位置と光の強さとを第2画像に適用することにより、複数の第3画像を生成する。
【0067】
図8は、光源を変更した画像の例を示すイメージ図である。図8において、画像60は第2画像、画像61~画像63は第3画像である。
【0068】
図8に示すように、生成部136は、第2画像について解析した光源を変化させて、第3画像を複数生成する。第2画像は、上記の一定の条件を満たす。このため、生成される第3画像は、当該被写体について第2画像の光源などを変更することによる微細な変化を表現することができる。これにより、生成した第3画像は、対象となるモデルの精度に寄与する学習データとなる。なお、生成部136は、簡単には、第2画像の画素値を変更することにより、第2画像の画素値の平均及び偏差値を変化させることで、光源を変更させた第3画像を生成することができる。
【0069】
そして、生成部136は、生成した複数の画像を、撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして、記憶部120に格納する。
【0070】
学習部137は、学習データを用いて、被写体を含む撮影画像の入力を受け付けて当該撮影画像に含まれる被写体の状態を分類した結果を出力するモデルを学習する。
【0071】
具体的には、学習部137は、記憶部120から、学習データを取得する。次に、学習部137は、学習データを用いて、被写体を含む第4画像を入力すると、当該第4画像に含まれる被写体の状態を分類した結果を出力するモデルを学習する。当該モデルは、例えば、CNNモデルなどの画像に対して所定のタスクを実行するモデルである。当該学習データは、例えば、特許第6947460号に記載されているような、画像データを入力すると、被写体である肌の状態を分類した結果を出力するモデルの学習に用いることができる。肌に関する状態は、例えば、肌性の分類、肌に関する特定の状態の程度の分類、肌上の物体の個数の分類などである。
【0072】
学習部137は、任意の学習方法を用いて、当該モデルを学習する。学習部137は、例えば、逆誤差伝搬法などの学習方法を用いる。そして、学習部137は、学習した学習済みモデルとパラメータとを、第2データDB122に格納する。
【0073】
また、学習部137は、受信制御部131がユーザ端末20から第2画像を受信すると、受信した第2画像に基づいて再学習することができる。具体的には、受信制御部131は、第2画像を受信すると、第2画像を第1データDB121に格納する。次に、解析部135は、受信した第2画像の被写体への光の当たり方を解析し、解析したパラメータを、第1データDB121に格納する。生成部136は、受信した第2画像に基づいて、パラメータを一定の範囲で変更した第3画像を複数生成する。そして、学習部137は、新たに学習データとして第3画像が一定量溜まったタイミング、所定時間を経過したタイミングなどで、学習データを用いて、学習済みモデルを再学習する。
【0074】
<3.ユーザ端末20の構成>
次に、図9及び図10を用いて、本開示に係るユーザ端末20について説明する。本開示に係るユーザ端末20は、ユーザに学習済みモデルを用いて分類結果を表示する分類処理等を実行するための装置である。
【0075】
ユーザ端末20は、ユーザが操作する端末装置である。ユーザ端末20は、例えば、ラップトップパソコン、スマートフォン等である。
【0076】
図9は、ユーザ端末20の構成を示すブロック図である。図8に示すように、ユーザ端末20は、プロセッサ21と、メモリ22と、ストレージ23と、通信IF24と、入出力IF25と、カメラ26とを含んで構成される。
【0077】
プロセッサ21は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路などにより構成される。
【0078】
メモリ22は、プログラム、及び、プログラム等で処理されるデータ等を一時的に記憶するためのものである。メモリ22は、例えばDRAM(Dynamic Random Access Memory)等の揮発性のメモリである。
【0079】
ストレージ23は、データを保存するための記憶装置であり、例えばフラッシュメモリ、HDD(Hard Disc Drive)、SSD(Solid State Drive)等の1つ、又は組み合わせにより実現される。
【0080】
通信IF24は、ユーザ端末20が外部の装置と通信するため、信号を入出力するためのインターフェースである。通信IF24は、インターネット、広域イーサネット等のネットワークに有線又は無線により接続する。
【0081】
入出力IF25は、図示しない入力装置(例えば、タッチパネル、タッチパッド、マウス等のポインティングデバイス、キーボード等)から、入力信号を受け付けるインターフェースである。また、入出力IF25は、図示しない出力装置(ディスプレイ、スピーカ等)に対し、出力信号を送信するインターフェースである。
【0082】
カメラ26は、撮影した画像を画像データとして取得するカメラ装置である。
【0083】
図10は、ユーザ端末20の機能構成を示すブロック図である。図9に示すように、ユーザ端末20は、通信部210と、記憶部220と、制御部230とを含む。
【0084】
通信部210は、ユーザ端末20が外部の装置と通信するための処理を行う。
【0085】
記憶部220は、ユーザ端末20が使用するデータ及びプログラムを記憶する。
【0086】
制御部230は、ユーザ端末20のプロセッサ21がプログラムに従って処理を行うことにより、受信制御部231、送信制御部232、表示部233、取得部234、及び抽出部235に示す機能を発揮する。
【0087】
受信制御部231は、ユーザ端末20が外部の装置から通信プロトコルに従って信号を受信する処理を制御する。
【0088】
送信制御部232は、ユーザ端末20が外部の装置に対し通信プロトコルに従って信号を送信する処理を制御する。
【0089】
表示部233は、被写体を撮影するための画面を表示する。ここで、表示部233は、情報処理装置10の表示部133と同様の機能を有していてもよい。表示部233が、表示部133と同様の機能を有している場合、一定の条件を満たす画像をユーザが撮影することが可能となるため、より精度良く学習済みモデルにより被写体の状態を分類することができる。本開示では、表示部233は、表示部133と同様の機能を有するものとする。
【0090】
また、表示部233は、後述の抽出部235が分類した結果を、ユーザに対して表示する。
【0091】
取得部234は、ユーザにより撮影された撮影画像をカメラ26から取得する。
【0092】
具体的には、取得部234は、ユーザの撮影ボタン(図示しない)を押下するなどの行為により、カメラ26により撮影された被写体を含む撮影画像を、カメラ26から取得する。取得部234は、カメラ26から撮影画像を取得すると、学習済みモデルを取得する。取得部234は、学習済みモデルを、予め情報処理装置10から受信することにより、記憶部220に格納しておく。また、取得部234は、情報処理装置10に要求を送信することにより、当該要求に対する応答として、最新の学習済みモデルを情報処理装置10から取得しても良い。
【0093】
また、取得部234は、撮影画像を、情報処理装置10に送信する。
【0094】
抽出部235は、撮影画像と、学習した学習済みモデルとを用いて、当該撮影画像に含まれる被写体の状態を分類した結果を求める。
【0095】
具体的には、抽出部235は、撮影画像を学習済みモデルに入力することにより、当該撮影画像に含まれる被写体の状態を分類する。そして、抽出部235は、分類した結果を、表示部233にユーザに対して表示させる。
【0096】
<4.動作>
以下では、情報処理装置10における処理について図面を参照しながら説明する。
【0097】
<4.1.学習データ生成処理>
図11は、情報処理装置10による学習データ生成処理を行う流れの一例を示すフローチャートである。情報処理装置10は、当該処理を、任意のタイミングにおいて実行する。
【0098】
ステップS101において、表示部133は、撮影する者に、被写体を撮影するための画面を表示する。
【0099】
ステップS102において、表示部133は、被写体を撮影するための画面を表示している間、被写体を撮影した場合の第1画像を、カメラ16から取得し、第1画像を解析する。
【0100】
ステップS103において、表示部133は、第1画像の明るさに関する情報、被写体の位置に関する情報、被写体の向きに関する情報のそれぞれについての判定結果を表示することにより、被写体が所望の画像となるように補助する。
【0101】
ステップS104において、取得部134は、撮影された画像をカメラ16から取得する。
【0102】
ステップS105において、解析部135は、被写体への光の当たり方を解析する。
【0103】
ステップS106において、生成部136は、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像に基づいて、パラメータを一定の範囲で変更した画像を複数生成する。
【0104】
ステップS107において、生成部136は、生成した複数の画像を、撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして、記憶部120に格納し、処理を終了する。
【0105】
<4.2.学習処理>
図12は、情報処理装置10による学習処理を行う流れの一例を示すフローチャートである。情報処理装置10は、当該処理を、任意のタイミング(例えば、学習処理開始信号の受信など)において実行する。
【0106】
ステップS201において、学習部137は、記憶部120から、学習データを取得する。
【0107】
ステップS202において、学習部137は、学習データを用いて、被写体を含む第4画像を入力すると、当該第4画像に含まれる被写体の状態を分類した結果を出力するモデルを学習する。
【0108】
ステップS203において、学習部137は、当該モデルを学習した後で、当該モデルの学習が終了条件を満たしたか否かを判定する。終了条件は、例えば、当該モデルのパラメータが収束した、所定数繰り返したなどである。
【0109】
終了条件を満たさない場合(ステップS203のN)学習部137は、ステップS202に戻り、ステップS102によるモデルの学習を、終了条件を満たすまで繰り返す。
【0110】
一方、終了条件を満たす場合(ステップS203のY)、ステップS204において、学習部137は、学習した学習済みモデルとパラメータとを、第2データDB122に格納し、処理を終了する。
【0111】
<4.3.分類処理>
図13は、ユーザ端末20による分類処理を行う流れの一例を示すフローチャートである。ユーザ端末20は、当該処理を、ユーザの操作により撮影アプリの起動等の所定の信号を受信したこと等により実行する。なお、図11と同様の処理は、同一の符号を付して、説明を省略する。
【0112】
ステップS306において、取得部234は、学習済みモデルを取得する。
【0113】
ステップS307において、抽出部235は、撮影画像と、学習した学習済みモデルとを用いて、当該撮影画像に含まれる被写体の状態を分類した結果を求める。
【0114】
ステップS308において、表示部233は、後述の抽出部235が分類した結果を、ユーザに対して表示する。
【0115】
ステップS309において、送信制御部232は、撮影画像を、情報処理装置10に送信し、処理を終了する。
【0116】
<5.小括>
以上説明したように、本開示の技術は、記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を記憶部から取得する。本開示の技術は、取得した当該画像に基づいて、当該パラメータを一定の範囲で変更した画像を複数生成する。本開示の技術は、生成された複数の画像を、撮影画像の入力を受け付けて当該撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力する。これにより、本開示の技術は、微小な変化を学習するための様々な条件の学習データを、低コストに増やすことができる。
【0117】
また、本開示の技術は、被写体を撮影する画面において当該被写体を撮影した場合の画像の明るさに関する情報を解析する。本開示の技術は、解析結果に基づいて撮影する者に対して当該一定の条件を満たすことを表示する。本開示の技術、当該表示することにより撮影する者により撮影された、所定のパラメータが一定の条件を満たす画像を、記憶部から取得する。これにより、撮影する者に負担をかけずに、微小な変化を学習するための様々な条件の学習データの元となる画像を取得することができる。本開示の技術は、特に一般的なユーザに、負担をかけずに、画像を集めることができる。これにより、本開示の技術は、微小な変化を学習するための様々な条件の学習データを、低コストに増やすことができる。
【0118】
また、本開示の技術は、学習データを用いて、被写体を含む撮影画像の入力を受け付けて当該撮影画像に含まれる被写体の状態を分類した結果を出力するモデルを学習し、学習した当該モデルを出力する。これにより、被写体の微小な変化を捉えることにより、被写体の状態を精度よく分類することができるモデルを学習することができる。本開示の技術は、様々な被写体の状態を分類するモデルに応用することができる。
【0119】
また、本開示の技術は、被写体を含む画像の入力を受け付け、入力を受け付けた当該画像と、学習したモデルとを用いて、入力を受け付けた画像に含まれる被写体の状態を分類した結果を求める。本開示の技術は、分類した結果を出力する。これにより、本開示の技術は、写体の微小な変化を捉えることにより、被写体の状態を精度よく分類することができる。
【0120】
<6.変形例>
以上、開示に係る実施形態について説明したが、これらはその他の様々な形態で実施することが可能であり、種々の省略、置換及び変更を行なって実施することができる。これらの実施形態及び変形例ならびに省略、置換及び変更を行なったものは、特許請求の範囲の技術的範囲とその均等の範囲に含まれる。
【0121】
また、情報処理装置10及びユーザ端末20の各機能を、他の装置に構成しても、1つの装置に構成してもよい。例えば、記憶部120の各DBは、外部のデータベースとして構築してもよい。また、情報処理装置10の各機能を、他の装置に構成してもよい。例えば、記憶部120の各DBは、外部のデータベースとして構築してもよい。また、1つの機能ブロックとして複数の機能構成を記載した場合があるが、これらをの一部の機能を他の機能ブロックとして実装しても、他の機能ブロックに含めることとしてもよい。例えば、表示部133の解析する機能を、解析部135に含めても良い。
【0122】
<付記>
以上の各実施形態で説明した事項を、以下に付記する。
【0123】
(付記1)プロセッサ(11)を備えるコンピュータ(例えば、情報処理装置10)に処理を行わせるプログラムであって、前記プロセッサに、記憶部(120)に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップ(S104)と、取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップ(S106)と、生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップ(S107)と、を実行させるプログラム。
【0124】
(付記2)前記取得するステップにおいて、前記被写体を撮影する画面において前記被写体を撮影した場合の画像の明るさに関する情報を解析することにより、撮影する者に対して前記一定の条件を満たすことを表示することにより前記撮影する者により撮影された、前記所定のパラメータが一定の条件を満たす画像を、前記記憶部から取得する、(付記1)に記載のプログラム。
【0125】
(付記3)前記取得するステップにおいて、前記所定のパラメータが一定の条件を満たす画像として、明るさに関するパラメータが所定の範囲内である画像を、前記記憶部から取得する、(付記2)に記載のプログラム。
【0126】
(付記4)前記取得するステップにおいて、前記所定のパラメータが一定の条件を満たす画像として、前記画像の画素値の平均が、明るすぎることを判定するための第1閾値以下となること、前記画像の画素値の平均が、暗すぎることを判定するための第2閾値以上となること、前記画像の画素値の標準偏差が、コントラスト又は輝度が弱すぎることを判定するための第3閾値以下となること、及び、前記画像の画素値の標準偏差が、コントラスト又は輝度が強すぎることを判定するための第4閾値以上となることの何れか1以上を満たす画像を、前記記憶部から取得する、(付記2)に記載のプログラム。
【0127】
(付記5)前記取得するステップにおいて、前記所定のパラメータが一定の条件を満たす画像として、前記画像の画素値の平均が、明るすぎることを判定するための第1閾値以下となること、前記画像の画素値の平均が、暗すぎることを判定するための第2閾値以上となること、前記画像の画素値の標準偏差が、コントラスト又は輝度が弱すぎることを判定するための第3閾値以下となること、及び、前記画像の画素値の標準偏差が、コントラスト又は輝度が強すぎることを判定するための第4閾値以上となることの何れも満たす画像を、前記記憶部から取得する、(付記2)に記載のプログラム。
【0128】
(付記6)前記被写体の状態は、肌に関する状態である、(付記2)に記載のプログラム。
【0129】
(付記7)前記学習データを用いて、被写体を含む撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類した結果を出力するモデルを学習するステップ(S202)、を実行させ、前記出力するステップにおいて、学習した前記モデルを出力する、(付記1)~(付記6)の何れかに記載のプログラム。
【0130】
(付記8)前記被写体を含む画像の入力を受け付けるステップ(S105)と、前記入力を受け付けた前記画像と、学習した前記モデルとを用いて、前記入力を受け付けた前記画像に含まれる前記被写体の状態を分類した結果を求めるステップ(S307)と、を実行させ、前記出力するステップにおいて、前記分類した結果を出力する、(付記7)に記載のプログラム。
【0131】
(付記9)プロセッサ(11)を備える情報処理装置(10)であって、前記プロセッサが、記憶部(120)に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップ(S104)と、取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップ(S106)と、生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップ(S107)と、を実行する情報処理装置。
【0132】
(付記10)プロセッサ(11)を備えるコンピュータ(例えば、情報処理装置10)が、記憶部(120)に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップ(S104)と、取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップ(S106)と、生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップ(S107)と、を実行する方法。
【符号の説明】
【0133】
1 情報処理システム
10 情報処理装置
11 プロセッサ
12 メモリ
13 ストレージ
14 通信IF
15 入出力IF
16 カメラ
20 ユーザ端末
21 プロセッサ
22 メモリ
23 ストレージ
24 通信IF
25 入出力IF
26 カメラ
30 ネットワーク
110 通信部
120 記憶部
121 第1データDB
122 第2データDB
130 制御部
131 受信制御部
132 送信制御部
133 表示部
134 取得部
135 解析部
136 生成部
137 学習部
210 通信部
220 記憶部
230 制御部
231 受信制御部
232 送信制御部
233 表示部
234 取得部
235 抽出部
【要約】
【課題】微小な変化を学習するための様々な条件の学習データを、低コストに増やすことができるようにする。
【解決手段】プロセッサを備えるコンピュータに処理を行わせるプログラムであって、前記プロセッサに、記憶部に蓄積されている情報に基づき、撮影された画像における、被写体への光の当たり方に関する所定のパラメータが一定の条件を満たす画像を前記記憶部から取得するステップと、取得した前記画像に基づいて、前記パラメータを一定の範囲で変更した画像を複数生成するステップと、生成された複数の画像を、撮影画像の入力を受け付けて前記撮影画像に含まれる被写体の状態を分類するための学習済みモデルを生成するための学習データとして出力するステップと、を実行させる。
【選択図】図11
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13