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

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

▶ ヤフー株式会社の特許一覧

特開2023-178818情報処理装置、情報処理方法、及び情報処理プログラム
<>
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図1
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図2
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図3
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図4
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図5
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図6
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図7
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図8
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図9
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図10
  • 特開-情報処理装置、情報処理方法、及び情報処理プログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023178818
(43)【公開日】2023-12-18
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
   G06T 1/00 20060101AFI20231211BHJP
【FI】
G06T1/00 340A
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2022091736
(22)【出願日】2022-06-06
(71)【出願人】
【識別番号】500257300
【氏名又は名称】LINEヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】江森 正
【テーマコード(参考)】
5B057
【Fターム(参考)】
5B057AA20
5B057BA02
5B057CA08
5B057CA12
5B057CA16
5B057CB08
5B057CB12
5B057CB16
5B057CC02
5B057CE08
5B057DA07
5B057DA08
5B057DA16
5B057DB02
5B057DB09
5B057DC40
(57)【要約】
【課題】適切な合成情報を生成する。
【解決手段】本願に係る情報処理装置は、取得部と、生成部とを有する。取得部は、合成対象となる第1対象である第1対象情報と、合成対象となる第2対象である第2対象情報と、第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報とを取得する。生成部は、範囲指定情報に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成する。例えば、生成部は、第1対象、第2対象及び指定範囲と、第1対象における指定範囲の変動を抑制した第1対象及び第2対象の合成との関連性の特徴を学習した学習モデルを用いて、合成情報を生成する。
【選択図】図6
【特許請求の範囲】
【請求項1】
合成対象となる第1対象である第1対象情報と、合成対象となる第2対象である第2対象情報と、前記第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報とを取得する取得部と、
前記範囲指定情報に基づいて前記第1対象情報における前記指定範囲の変動を抑制し、前記第1対象情報と前記第2対象情報とを合成した合成情報を生成する生成部と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記取得部は、
前記第1対象情報と、前記第2対象情報と、前記第1対象情報において前記合成情報にコピーしたい範囲として指定された前記指定範囲を示す前記範囲指定情報とを取得し、
前記生成部は、
前記第1対象情報における前記指定範囲をコピーした前記合成情報を生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記取得部は、
前記第1対象情報としての画像である第1画像と、前記第2対象情報としての画像である第2画像と、前記第1画像における前記指定範囲を示す前記範囲指定情報とを取得し、
前記生成部は、
前記第1画像における前記指定範囲の変動を抑制して、前記第1画像と前記第2画像とを合成した前記合成情報である合成画像を生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記取得部は、
人の頭部を含む前記第1画像を取得し、
前記生成部は、
前記第1画像に含まれる前記人の頭部のうち前記指定範囲に対応する範囲の変動を抑制した前記合成画像を生成する
ことを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記取得部は、
前記第1画像における前記人の顔の範囲を示す前記範囲指定情報を取得し、
前記生成部は、
前記第1画像における前記人の顔の変動を抑制した前記合成画像を生成する
ことを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記取得部は、
髪を含む前記第2画像を取得し、
前記生成部は、
前記第1画像に含まれる前記人の頭部に前記第2画像に含まれる前記髪を反映した前記合成画像を生成する
ことを特徴とする請求項4に記載の情報処理装置。
【請求項7】
前記生成部は、
前記第1対象、前記第2対象及び前記指定範囲と、前記第1対象における前記指定範囲の変動を抑制した前記第1対象及び前記第2対象の合成との関連性の特徴を学習した学習モデルを用いて、前記合成情報を生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項8】
前記生成部は、
前記第1対象情報及び前記第2対象情報を入力として次元圧縮を行うエンコーダと、前記エンコーダにより次元圧縮された情報の次元を増やすデコーダとを含む前記学習モデルを用いて、前記合成情報を生成する
ことを特徴とする請求項7に記載の情報処理装置。
【請求項9】
前記生成部は、
前記第1対象情報及び前記第2対象情報から特徴情報を抽出する前記エンコーダと、前記特徴情報と前記範囲指定情報とに基づいて前記合成情報を出力する前記デコーダとを含む前記学習モデルを用いて、前記合成情報を生成する
ことを特徴とする請求項8に記載の情報処理装置。
【請求項10】
前記生成部は、
前記エンコーダと、前記第1対象情報における前記指定範囲に対応する情報と前記特徴情報とを反映した前記合成情報を出力する前記デコーダとを含む前記学習モデルを用いて、前記合成情報を生成する
ことを特徴とする請求項9に記載の情報処理装置。
【請求項11】
前記取得部は、
前記第1対象情報としての画像である第1画像と、前記第2対象情報としての画像である第2画像と、前記第1画像における前記指定範囲を示す前記範囲指定情報とを取得し、
前記生成部は、
前記第1画像及び前記第2画像を入力として、特徴情報を抽出する前記エンコーダと、前記特徴情報と前記範囲指定情報とに基づいて、前記第1画像及び前記第2画像を合成した前記合成情報である合成画像を出力する前記デコーダとを含む前記学習モデルを用いて、前記合成画像を生成する
ことを特徴とする請求項8に記載の情報処理装置。
【請求項12】
前記取得部は、
人の頭部を含む前記第1画像を取得し、
前記生成部は、
前記人の頭部を含む前記第1画像と、前記第2画像と、前記範囲指定情報と、前記学習モデルを用いて、前記第1画像に含まれる前記人の頭部のうち前記指定範囲に対応する範囲の変動を抑制した前記合成画像を生成する
ことを特徴とする請求項11に記載の情報処理装置。
【請求項13】
前記取得部は、
前記第1画像における前記人の顔の範囲を示す前記範囲指定情報を取得し、
前記生成部は、
前記第1画像と、前記第2画像と、前記第1画像における前記人の顔の範囲を示す前記範囲指定情報と、前記学習モデルを用いて、前記第1画像における前記人の顔の変動を抑制した前記合成画像を生成する
ことを特徴とする請求項12に記載の情報処理装置。
【請求項14】
前記取得部は、
髪を含む前記第2画像を取得し、
前記生成部は、
前記第1画像と、前記髪を含む前記第2画像と、前記範囲指定情報と、前記学習モデルを用いて、前記第1画像に含まれる前記人の頭部に前記第2画像に含まれる前記髪を反映した前記合成画像を生成する
ことを特徴とする請求項12に記載の情報処理装置。
【請求項15】
前記取得部は、
ユーザが指定した前記第2対象情報を取得し、
前記生成部は、
前記ユーザから取得した前記第2対象情報を用いて、前記合成情報を生成する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項16】
前記合成情報を前記ユーザが利用する端末装置に提供する提供部、
をさらに備えることを特徴とする請求項15に記載の情報処理装置。
【請求項17】
前記取得部は、
前記ユーザの頭部を撮像した前記第1対象情報である第1画像と、前記ユーザが指定した髪を含む前記第2対象情報である第2画像と、前記第1画像における前記ユーザの顔の範囲である前記指定範囲を示す前記範囲指定情報とを取得し、
前記生成部は、
前記第1画像に含まれる前記ユーザの頭部に前記第2画像に含まれる前記髪を反映した前記合成情報である合成画像を生成する
ことを特徴とする請求項15に記載の情報処理装置。
【請求項18】
前記生成部は、
前記第1画像に含まれる前記ユーザの顔をコピーし、前記第1画像に含まれる前記ユーザのヘアスタイルに、前記第2画像に含まれる前記髪に対応するヘアスタイルを反映した前記合成画像を生成する
ことを特徴とする請求項17に記載の情報処理装置。
【請求項19】
コンピュータが実行する情報処理方法であって、
合成対象となる第1対象である第1対象情報と、合成対象となる第2対象である第2対象情報と、前記第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報とを取得する取得工程と、
前記範囲指定情報に基づいて前記第1対象情報における前記指定範囲の変動を抑制し、前記第1対象情報と前記第2対象情報とを合成した合成情報を生成する生成工程と、
を含むことを特徴とする情報処理方法。
【請求項20】
合成対象となる第1対象である第1対象情報と、合成対象となる第2対象である第2対象情報と、前記第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報とを取得する取得手順と、
前記範囲指定情報に基づいて前記第1対象情報における前記指定範囲の変動を抑制し、前記第1対象情報と前記第2対象情報とを合成した合成情報を生成する生成手順と、
をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、複数の情報を合成した合成情報の生成に関する種々の技術が提供されている。例えば、複数の画像を合成した合成画像を生成する技術が提供されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-004203号公報
【非特許文献】
【0004】
【非特許文献1】“U-Net: Convolutional Networks for Biomedical Image Segmentation”, Olaf Ronneberger, Philipp Fischer, and Thomas Brox<インターネット>https://arxiv.org/pdf/1505.04597.pdf(令和4年5月31日検索)
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の従来技術には、改善の余地がある。例えば、上記の従来技術では、複数の画像の各々の合成比率を変更して合成画像を生成することにより、各画像の合成比率が変化した合成情報を生成しているに過ぎず、適切な合成情報が生成できるとは限らない。そのため、適切な合成情報を生成することが望まれている。
【0006】
本願は、上記に鑑みてなされたものであって、適切な合成情報を生成する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本願に係る情報処理装置は、合成対象となる第1対象である第1対象情報と、合成対象となる第2対象である第2対象情報と、前記第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報とを取得する取得部と、前記範囲指定情報に基づいて前記第1対象情報における前記指定範囲の変動を抑制し、前記第1対象情報と前記第2対象情報とを合成した合成情報を生成する生成部と、を備えたことを特徴とする。
【発明の効果】
【0008】
実施形態の一態様によれば、適切な合成情報を生成することができるという効果を奏する。
【図面の簡単な説明】
【0009】
図1図1は、実施形態に係る情報処理の一例を示す図である。
図2図2は、情報処理に用いられるモデルの一例を示す図である。
図3図3は、情報処理に用いられるモデルの一例を示す図である。
図4図4は、情報処理に用いられるモデルの一例を示す図である。
図5図5は、実施形態に係る情報処理システムの構成例を示す図である。
図6図6は、実施形態に係る情報処理装置の構成例を示す図である。
図7図7は、実施形態に係る学習用データ記憶部の一例を示す図である。
図8図8は、実施形態に係るモデル情報記憶部の一例を示す図である。
図9図9は、実施形態に係る合成結果情報記憶部の一例を示す図である。
図10図10は、情報処理装置が実行する情報処理の流れの一例を示すフローチャートである。
図11図11は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0010】
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0011】
(実施形態)
〔1.情報処理〕
まず、図1を用いて、情報処理装置100が実行する情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。以下では、合成対象が画像であり、情報処理装置100が合成情報として画像(「合成画像」ともいう)を生成する場合を一例として説明する。図1では、第1対象情報が人の頭部を含む画像(「第1画像」ともいう)であり、第2対象情報が髪(頭髪、毛髪)を含む画像(「第2画像」ともいう)であり、情報処理装置100が第1画像と第2画像とを合成した合成画像を生成する。具体的は、図1では、情報処理装置100は、第1対象情報である第1画像において変動を抑制する範囲(「指定範囲」ともいう)として人の顔の部分が指定され、第1画像における人の顔の変動を抑制し、第1画像と第2画像とを合成した合成画像を生成する。
【0012】
なお、合成対象となる画像は、人の頭部に関する画像に限らず、様々な画像であってもよい。例えば、第1画像が人の外形を含む画像であり、第2画像が衣服、アクセサリー等の人が身につける物品を含む画像であってもよい。この場合、情報処理装置100は、第1画像に含まれる人の外形に、第2画像に含まれる物品を反映した合成画像を生成する。例えば、物品が衣服である場合、情報処理装置100は、第1画像に含まれる人が、第2画像に含まれる衣服を身に着けた合成画像を生成する。
【0013】
また、合成対象となる画像は、人体に関する画像に限らず、様々な画像であってもよい。例えば、第1画像が不動産の外壁を含む画像であり、第2画像が模様などを含む画像であってもよい。この場合、情報処理装置100は、第1画像に含まれる不動産の外壁に、第2画像に含まれる模様を反映した合成画像を生成する。例えば、情報処理装置100は、第1画像に含まれる不動産の外壁の模様が、第2画像に含まれる模様に変更された合成画像を生成する。
【0014】
また、画像は合成対象の一例に、合成対象は、画像に限らず、様々な情報であってもよい。例えば、合成対象は、音声であってもよい。この場合、情報処理装置100が第1音声と第2音声とを合成した合成音声を生成する。例えば、情報処理装置100は、第1対象情報である第1音声において変動を抑制する範囲(指定範囲)として、音の高さや母音、子音等が指定され、第1音声における指定範囲の変動を抑制し、第1音声と第2音声とを合成した合成音声を生成する。なお、上述した合成対象は一例に過ぎず、情報処理装置100が処理可能な対象であれば、画像、音声に限らず様々な情報であってもよい。
【0015】
〔1-1.情報処理システムの構成〕
図1図4に示す処理の説明に先立って、図1及び図5を用いて情報処理システム1の構成について説明する。図5は、実施形態に係る情報処理システムの構成例を示す図である。図5に示すように、情報処理システム1は、端末装置10と、情報提供装置50と、情報処理装置100とが含まれる。端末装置10と、情報提供装置50と、情報処理装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。なお、図5に示した情報処理システム1には、複数の端末装置10や、複数の情報提供装置50や、複数の情報処理装置100が含まれてもよい。
【0016】
情報処理装置100は、合成対象となる第1対象情報と第2対象情報とを合成した合成情報を生成する情報処理(「生成処理」ともいう)を実行するコンピュータである。情報処理装置100は、第1対象情報において変動を抑制する範囲として指定された指定範囲を示す情報(「範囲指定情報」ともいう)に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成する。例えば、情報処理装置100は、合成対象となる第1画像と第2画像とを合成した合成画像を生成する処理を実行する。情報処理装置100は、第1画像において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報に基づいて第1画像における指定範囲の変動を抑制し、第1画像と第2画像とを合成した合成情報を生成する。
【0017】
端末装置10は、ユーザによって利用されるコンピュータである。端末装置10は、ユーザが携帯可能なデバイス(端末装置)である。端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。図1は、端末装置10がスマートフォンである場合を示す。なお、以下では、端末装置10をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置10と読み替えることもできる。
【0018】
例えば、端末装置10は、情報処理装置100が提供する合成情報を表示するアプリケーション(「表示アプリ」ともいう)がインストールされたコンピュータである。例えば、端末装置10は、表示アプリにより各種の情報を表示する。例えば、端末装置10は、情報処理装置100から受信した合成情報を表示アプリにより表示する。端末装置10は、ユーザが指定した第2対象情報を示す情報を情報処理装置100へ送信する。端末装置10は、ユーザが指定した第2対象情報を反映した合成情報を情報処理装置100から受信する。端末装置10は、情報処理装置100から合成画像を受信する。端末装置10は、情報処理装置100から受信した合成画像を表示する。例えば、端末装置10は、表示アプリにより合成画像を表示する。
【0019】
端末装置10は、情報処理装置100が合成画像の生成に用いる情報を情報処理装置100へ送信する。端末装置10は、合成画像を出力するモデル(例えばモデルM1)への入力に用いる情報を情報処理装置100へ送信する。例えば、端末装置10は、ユーザの頭部を撮像した第1画像を情報処理装置100へ送信する。例えば、端末装置10は、ユーザが指定した髪を含む第2画像を情報処理装置100へ送信する。例えば、端末装置10は、第1画像におけるユーザの顔の範囲である指定範囲を示す範囲指定情報を情報処理装置100へ送信する。
【0020】
端末装置10は、第1画像に含まれるユーザの頭部に第2画像に含まれる髪を反映した合成画像を、情報処理装置100から受信する。端末装置10は、第1画像に含まれるユーザの顔をコピーし、第1画像に含まれるユーザのヘアスタイルに、第2画像に含まれる髪に対応するヘアスタイルを反映した合成画像を、情報処理装置100から受信する。
【0021】
端末装置10は、第1画像に含まれるユーザの頭部に第2画像に含まれる髪を反映した合成画像を表示する。端末装置10は、第1画像に含まれるユーザの顔をコピーし、第1画像に含まれるユーザのヘアスタイルに、第2画像に含まれる髪に対応するヘアスタイルを反映した合成画像を表示する。
【0022】
情報提供装置50は、サービスに関する種々の情報提供を行うための情報が格納されたコンピュータである。例えば、情報提供装置50は、ウェブサーバ等の種々の外部装置から情報を収集し、収集した情報を情報処理装置100へ提供する。例えば、情報提供装置50は、例えば、サーバ装置又はクラウドシステム等により実現される。例えば、情報提供装置50は、各種情報として、サービスに関する情報(サービス情報)、サービスを利用する利用者に関する情報(利用者情報)を提供する。
【0023】
例えば、情報提供装置50は、情報処理装置100へ学習に用いるデータ(「学習用データ」ともいう)を提供するサービスを提供してもよい。この場合、情報提供装置50は、情報処理装置100がモデルM1の学習に用いるデータ(学習用データ)を情報処理装置100へ提供する。また、情報提供装置50は、情報処理装置100へ学習済みの学習モデル(単に「モデル」ともいう)を提供するサービスを提供してもよい。この場合、情報提供装置50は、情報処理装置100が合成情報の生成に用いるモデル(例えばモデルM1)を情報処理装置100へ提供する。
【0024】
〔1-2.情報処理システムにおける処理の全体概要〕
ここから、図1図4を用いて、情報処理システム1が行う情報処理の一例について説明する。まず、図1を用いて、情報処理システム1の各装置間での情報の送受信を含む情報処理システム1における処理の概要を説明した後、図2図4を用いて合成画像の生成に用いるモデルの一例であるモデルM1の構成例を説明する。なお、情報処理システム1において行なわれる情報処理について、従来の処理と同様の点についての詳細な説明は適宜省略する。
【0025】
図1では、情報処理装置100は、合成画像を生成する生成処理を実行するために用いる情報を情報提供装置50から取得する(ステップS1)。情報処理装置100は、生成処理を実行するために用いる情報を情報提供装置50から受信する。例えば、情報処理装置100は、合成画像を出力するモデルであるモデルM1を情報提供装置50から取得する。なお、モデルM1の詳細については後述する。また、情報処理装置100は、モデルM1を学習する場合、モデルM1の学習処理に用いるデータ(学習用データ)を情報提供装置50から取得してもよい。
【0026】
情報処理装置100は、情報提供装置50から取得した情報を記憶部120(図6参照)に格納する(ステップS2)。情報処理装置100は、情報提供装置50から受信した情報を記憶部120に記憶する。例えば、情報処理装置100は、情報提供装置50からモデルM1を取得した場合、モデルM1をモデル情報記憶部122(図6参照)に記憶する。また、情報処理装置100は、情報提供装置50から学習処理に用いる学習用データを取得した場合、学習用データを学習用データ記憶部121(図6参照)に記憶してもよい。なお、情報処理装置100は、合成画像を生成する生成処理を実行するために用いる情報を取得済みの場合、ステップS1、S2の処理を行わなくてもよい。
【0027】
また、情報処理装置100は、端末装置10から合成画像の生成の要求を受け付ける(ステップS3)。例えば、情報処理装置100は、端末装置10から合成画像の生成に用いる各種の情報を受信することにより、端末装置10から合成画像の生成の要求を受け付ける。
【0028】
例えば、情報処理装置100は、第1画像として用いる画像を、端末装置10から受信する。図1では、情報処理装置100は、第1画像として用いる画像IM11を、端末装置10から受信する。例えば、画像IM11は、ユーザの頭部を含む画像である。また、情報処理装置100は、第2画像として用いる画像を、端末装置10から受信する。図1では、情報処理装置100は、第2画像として用いる画像IM12を、端末装置10から受信する。例えば、画像IM12は、ユーザが所望するヘアスタイルの髪を含む画像である。このように、情報処理装置100は、ユーザが指定した第2画像である画像IM12を、端末装置10から受信する。また、情報処理装置100は、第1画像において変動を抑制する指定範囲を示す情報(範囲指定情報)を、端末装置10から受信する。図1では、情報処理装置100は、画像IM11中のユーザの顔の範囲を示す範囲指定情報RD1を、端末装置10から受信する。例えば、範囲指定情報RD1は、画像IM11におけるユーザの顔の位置(領域)を示す情報である。
【0029】
なお、上記は一例に過ぎず、情報処理装置100は、合成画像の生成に用いる各種の情報を取得済みである場合、端末装置10から合成画像の生成に用いる情報の指定を受け付けてもよい。この場合、情報処理装置100は、第1画像を特定するための情報、第2画像を特定するための情報、及び指定範囲を特定するための情報等を、端末装置10から受信する。例えば、情報処理装置100は、ユーザが第1画像として選択した画像を示す情報、ユーザが第2画像として選択した画像を示す情報、及びユーザが指定範囲として選択した範囲を示す情報等を、端末装置10から受信する。
【0030】
また、情報処理装置100は、第1画像、第2画像、及び指定範囲のうち少なくとも1つを端末装置10から受信してもよい。例えば、情報処理装置100は、第2画像を端末装置10から受信した場合、第1画像及び指定範囲については、それらを特定するための情報を端末装置10から受信する。このように、情報処理装置100は、ユーザが所望する合成画像を生成可能であれば、ユーザが利用する端末装置10からどのような情報を取得してもよい。
【0031】
そして、情報処理装置100は、合成画像を生成する生成処理を実行する(ステップS4)。情報処理装置100は、範囲指定情報RD1に基づいて、第1画像である画像IM11における指定範囲の変動を抑制し、画像IM11と第2画像である画像IM12とを合成した合成画像IS1を生成する生成処理を実行する。例えば、情報処理装置100は、モデルM1を用いて合成画像IS1を生成する。まず、情報処理装置100は、画像IM11、画像IM12及び範囲指定情報RD1に関する情報等を含む入力情報をモデルM1に入力する(ステップS4-1)。図1では、情報処理装置100は、画像IM11、画像IM12及び範囲指定情報RD1等を入力情報としてモデルM1に入力する。
【0032】
入力情報が入力されたモデルM1は、合成結果を出力する(ステップS4-2)。図1では、画像IM11、画像IM12及び範囲指定情報RD1等を含む入力情報が入力されたモデルM1は、合成画像IS1に示すような画像情報を出力する。このように、情報処理装置100は、モデルM1を用いることにより、画像IM11に含まれるユーザの顔をコピーし、画像IM11に含まれるユーザのヘアスタイルに、画像IM12に含まれる髪に対応するヘアスタイルを反映した合成画像IS1を生成する。
【0033】
そして、情報処理装置100は、生成処理により生成した情報を、ユーザへ提供する(ステップS5)。例えば、情報処理装置100は、生成処理により生成した合成画像IS1を、ユーザが利用する端末装置10へ送信する。
【0034】
このように、情報処理装置100は、第1画像における指定範囲であるユーザの顔の変動を抑制し、第1画像と第2画像とを合成した合成画像を生成することにより、適切な合成画像を生成することができる。すなわち、情報処理装置100は、第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成することにより、適切な合成情報を生成することができる。また、情報処理装置100は、生成処理により生成した情報を、ユーザへ提供することにより、合成情報を適切にユーザに提供することができる。
【0035】
〔1-2-1.情報処理に用いられるモデル例〕
上述した情報処理システム1が行う情報処理を前提として、情報処理装置100が合成情報を生成する際に用いるモデルの一例について、図2図4を用いて説明する。図2図4は、情報処理に用いられるモデルの一例を示す図である。まず、図2を用いて、合成情報を出力するモデルの全体構成の概要を説明する。例えば、図2は、情報処理に用いられるモデルの一例であるモデルM1の全体構成の概要を示す図である。なお、上記で説明した内容と同様の点や従来の合成画像の生成に用いられるモデルと同様の点については適宜説明を省略する。
【0036】
なお、図2に示すモデルM1の構成は一例に過ぎず、モデルM1は、範囲指定情報に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を出力可能であれば、任意の構成が採用可能である。
【0037】
例えば、モデルM1は、オートエンコーダ、VAE(変分オートエンコーダ)等の各種の技術を適宜用いて、構成されてもよい。例えば、モデルM1は、潜在変数等の特徴情報(特徴量)を介して情報を伝達する構成であってもよい。例えば、モデルM1は、エンコーダで抽出した特徴情報を介して情報をデコーダへ伝達する構成であってもよい。例えば、モデルM1は、確率分布パラメータ等の確率変数に基づく潜在変数等の特徴情報(特徴量)を介して情報をデコーダへ伝達する構成であってもよい。例えば、モデルM1は、確率変数を推定し、確率変数より潜在変数を生成し、生成した潜在変数を介して情報へ伝達する構成であってもよい。
【0038】
例えば、モデルM1は、全層畳み込みネットワーク(FCN:Fully Convolutional Network)等を含む構成であってもよい。例えば、モデルM1は、非特許文献1に開示される手法(U-net)等、画像において認識対象がどこに存在するかを推定する為のネットワーク等を含む構成であってもよい。例えば、モデルM1は、潜在変数を介して情報を伝達するとともに、各層の特徴を伝達する構成することにより、画像の位置に関する情報を伝達する構成であってもよい。例えば、モデルM1は、エンコーダの複数の層の各々から、その層に対応するデコーダの層へ特徴を伝達する構成であってもよい。
【0039】
例えば、モデルM1は、画像をダウンサンプリングした情報を用いる構成であってもよい。例えば、モデルM1は、人の顔を含む画像をダウンサンプリングした情報を用いる構成であってもよい。例えば、モデルM1は、人の顔を含む画像をダウンサンプリングした情報を、デコーダへ伝達する構成であってもよい。例えば、モデルM1は、人の顔を含む画像をダウンサンプリングした情報を、デコーダの各層へ伝達する構成であってもよい。
【0040】
ここから、図2に示すモデルM1の概要を説明する。モデルM1は、人の頭部を含む第1画像、頭髪(髪)を含む第2画像、及び第1画像中の人の顔の範囲(領域)を示す指定範囲と、第1画像における人の顔の変動を抑制した第1画像及び第2画像の合成との関連性の特徴を学習したモデルである。例えば、モデルM1は、第1画像及び第2画像を入力として次元圧縮を行うエンコーダM11と、エンコーダM11により次元圧縮された情報の次元を増やすデコーダM12とを含むモデルである。
【0041】
まず、モデルM1の部分モデルの一例であるエンコーダM11について説明する。例えば、エンコーダM11は、入力された画像からその画像に対応する特徴情報を抽出するエンコーダである。また、エンコーダM11は、第1画像から第1画像に対応する特徴情報を抽出する。エンコーダM11は、第2画像から第2画像に対応する特徴情報を抽出する。
【0042】
図2において「encoder」と表記されたエンコーダM11は、層EL1、EL2、EL3、EL4等の複数の層を有する。以下、層EL1、EL2、EL3、EL4等のエンコーダM11における層を特に区別せずに説明する場合「層EL」を記載する場合がある。エンコーダM11の各層ELは、任意の構成が採用可能である。例えば、エンコーダM11の各層ELには、LeakyReLU等のReLU関数、シグモイド関数等の任意の活性化関数が用いられてもよい。また、例えば、エンコーダM11の各層ELは、畳み込み処理を行ったり、ダウンサンプリングを行ったりする構成であってもよい。
【0043】
なお、図2では、浅い方から順に層EL1、EL2、EL3、EL4の4つの層を図示するが、エンコーダM11の層は4つに限らず、任意の数の層で構成されてもよい。図2では、エンコーダM11の複数の層のうち、一番浅い層が層EL1であり、層EL1がエンコーダM11に入力された画像の最も表層部分の特徴を学習している部分となる。そして、層EL2、EL3、EL4と層が深くなるにつれて、エンコーダM11に入力された画像の表層ではない部分の特徴を学習している部分となる。
【0044】
例えば、エンコーダM11は、図3に示すような構成であってもよい。図3は、エンコーダM11の構成の一例を示す図である。図3では、「block 512x512x64」と表記された一番上の層が、図2中の層EL1に対応する。エンコーダM11は、図3に示すような構成により画像の特徴を示す情報を生成する。なお、図3に示すエンコーダM11の構成は、一例に過ぎず、エンコーダM11は、所望の情報を生成可能であれば、どのような構成であってもよい。
【0045】
図3において「e1」と表記されたデータED11は、画像IM11が入力された場合のエンコーダIM11で生成されたデータ(例えば特徴情報)に対応する。また、図3において「e2」と表記されたデータED12は、画像IM11が入力された場合のエンコーダIM11の層ELのうち、「block 512x512x64」と表記された一番上の層(図2中の層EL1に対応)で生成されたデータに対応する。
【0046】
図2に戻って、モデルM1の部分モデルの一例であるデコーダM12について説明する。例えば、デコーダM12は、エンコーダM11により生成された特徴情報と、範囲指定情報とに基づいて、合成画像を出力するデコーダである。デコーダM12は、エンコーダM11により生成された第1画像の特徴情報及び第2画像の特徴情報と、範囲指定情報とに基づいて、合成画像を出力するデコーダである。デコーダM12は、第1画像における指定範囲に対応する情報と特徴情報とを反映した合成画像を出力するデコーダである。
【0047】
図2において「decoder」と表記されたデコーダM12は、層DL1、DL2、DL3、DL4等の複数の層を有する。以下、層DL1、DL2、DL3、DL4等のデコーダM12における層を特に区別せずに説明する場合「層DL」を記載する場合がある。デコーダM12の各層DLは、任意の構成が採用可能である。例えば、デコーダM12の各層DLには、LeakyReLU等のReLU関数、シグモイド関数等の任意の活性化関数が用いられてもよい。また、例えば、デコーダM12の各層DLは、畳み込み処理を行ったり、アップサンプリングを行ったり、ダウンサンプリングを行ったりする構成であってもよい。
【0048】
なお、図2では、浅い方から順に層DL1、DL2、DL3、DL4の4つの層を図示するが、デコーダM12の層は4つに限らず、任意の数の層で構成されてもよい。図2では、デコーダM12の複数の層のうち、一番浅い層が層DL1であり、層DL1がデコーダM12において最も表層部分まで情報を生成した部分となる。
【0049】
なお、図2では図示を省略するが、例えば、モデルM1は、U-net等と同様の構成により、エンコーダM11の各層ELから、その層ELに対応するデコーダM12の層DLへ特徴を伝達する構成を有する。モデルM1は、エンコーダM11の層EL1から、層EL1に対応するデコーダM12の層DL1へ、層EL1における特徴を伝達する構成を有する。また、モデルM1は、エンコーダM11の層EL2から、層EL2に対応するデコーダM12の層DL2へ、層EL2における特徴を伝達する構成を有する。また、モデルM1は、エンコーダM11の層EL3から、層EL3に対応するデコーダM12の層DL3へ、層EL3における特徴を伝達する構成を有する。また、モデルM1は、エンコーダM11の層EL4から、層EL4に対応するデコーダM12の層DL4へ、層EL4における特徴を伝達する構成を有する。
【0050】
モデルM1は、エンコーダM11の各層ELから、その層ELに対応するデコーダM12の層DLへ特徴を伝達する構成のうち、エンコーダM11の層EL1から、層EL1に対応するデコーダM12の層DL1へ伝達する情報の重みも重くする。これにより、モデルM1は、エンコーダM11で抽出した人の顔の表層的な特徴(外見)を、そのままデコーダM12へ伝達することができる。すなわち、モデルM1は、エンコーダM11へ入力された画像中に含まれる人の顔の外見を、そのままデコーダM12へ伝達することができ、入力された画像中に含まれる人の顔をコピーした合成画像を生成することができる。
【0051】
図2中の特徴情報FIのうち、「顔」と表記された第1特徴F1は、人の顔を含む画像から抽出された特徴情報に対応する。例えば、第1特徴F1は、ユーザの顔を含む画像IM11から抽出された特徴情報に対応する。また、図2中の特徴情報FIのうち、「髪」と表記された第2特徴F2は、髪を含む画像から抽出された特徴情報に対応する。例えば、第2特徴F2は、髪を含む画像IM12から抽出された特徴情報に対応する。すなわち、図2では、顔と髪(の毛)を別々にエンコードし、特徴を抽出する。これにより、情報処理装置100は、顔と髪質(ヘアスタイル等)の組み合わせを自由に変更することができる。
【0052】
また、図2において「マージ&展開」と表記されたモデルM1の処理ブロックMDは、第1特徴F1及び第2特徴F2とをマージし、展開する。例えば、処理ブロックMDは、第1特徴F1及び第2特徴F2との2つの特徴情報を結合し、複数の情報に展開する。例えば、処理ブロックMDは、潜在変数を展開することにより、スタイル変数として伝達する情報を生成する。例えば、処理ブロックMDは、解像度ごとの情報に分けることにより、スタイル変数として伝達する情報を生成する。これにより、モデルM1は、高精細な画像生成を可能にすることができる。例えば、処理ブロックMDは、エンコーダM11により生成された潜在変数等の特徴情報(特徴量)を、デコーダM12の層数に対応する数に展開する。図2では、処理ブロックMDは、特徴情報FIをデコーダM12の層数に対応する「4」に展開し、特徴情報群IGを生成する。
【0053】
そして、モデルM1は、特徴情報群IG中の各情報を対応するデコーダM12の層DLへスタイル変数として伝達する。例えば、モデルM1は、特徴情報群IGのうち、デコーダM12の層DL1に対応する情報を層DL1へのスタイル変数として層DL1へ伝達する。例えば、モデルM1は、特徴情報群IGのうち、デコーダM12の層DL2に対応する情報を層DL2へのスタイル変数として層DL2へ伝達する。例えば、モデルM1は、特徴情報群IGのうち、デコーダM12の層DL3に対応する情報を層DL3へのスタイル変数として層DL3へ伝達する。例えば、モデルM1は、特徴情報群IGのうち、デコーダM12の層DL4に対応する情報を層DL4へのスタイル変数として層DL4へ伝達する。
【0054】
また、図2において「フィルタ」と表記されたモデルM1の処理ブロックFLは、画像に含まれる人の顔に関する情報をデコーダM12へ伝達するための情報として、顔特徴情報FFを生成する。例えば、モデルM1は、処理ブロックFLに情報を入力することにより、顔特徴情報FFを生成する。モデルM1は、エンコーダM11の層ELのうち画像の最も表層部分の特徴を学習した層EL1の情報と、コピーしたい箇所(指定範囲)を示す範囲指定情報とを用いて、顔特徴情報FFを生成する。例えば、処理ブロックFLは、層EL1の情報のうち、人の顔が含まれる領域に対応する値の重みを大きくし、他の箇所に対応する値の重みを小さくすることにより、人の顔の特徴をデコーダM12へ伝達するための顔特徴情報FFを生成する。例えば、処理ブロックFLは、層EL1の情報のうち、人の顔が含まれる領域に対応する値に1を掛け、他の箇所に1未満(例えば0)を掛けることにより、顔特徴情報FFを生成する。
【0055】
例えば、モデルM1は、人の顔の造形物の情報をデコーダM12へ伝達するための情報として顔特徴情報FFを生成する。例えば、モデルM1は、髪の毛の境界を示す情報をデコーダM12へ伝達するための情報として顔特徴情報FFを生成する。図2では、モデルM1は、画像IM11が入力されたエンコーダM11の層EL1の情報と、画像IM11中のユーザの顔が含まれる範囲を示す範囲指定情報RD1とを用いて、ユーザの顔を含む画像IM11をダウンサンプリングした情報である顔特徴情報FFを生成する。
【0056】
例えば、モデルM1は、図4に示すような処理により、顔特徴情報FFを生成する。図4は、モデルM1における処理の一例を示す図である。図4中のデータED11は、図3において「e1」と表記されたデータED11に対応する。また、図4中のデータED12は、図3において「e2」と表記されたデータED12に対応する。
【0057】
また、図4中のデータED21は、画像IM12が入力された場合のエンコーダIM11で生成されたデータ(例えば特徴情報)を示す。また、図3において「e2」と表記されたデータED22は、画像IM12が入力された場合のエンコーダIM11の層ELのうち、「block 512x512x64」と表記された一番上の層(図2中の層EL1に対応)で生成されたデータを示す。
【0058】
図4において「m3」と表記されたデータID12は、エンコーダIM11により生成される特徴情報に対応する。例えば、モデルM1は、画像IM11が入力された場合のエンコーダIM11で生成されたデータED11と、データ(例え画像IM12が入力された場合のエンコーダIM11で生成されたデータED21とを用いて、入力された画像の特徴を示すデータID12を生成する。
【0059】
図4において「m1」と表記されたデータID11は、画像中の人の顔に関する特徴情報に対応する。モデルM1は、データED12と範囲指定情報RD1とを用いて、ユーザの顔に関するデータID11を生成する。例えば、モデルM1は、画像IM11が入力されたエンコーダM11の層EL1の情報に対応する図4中のデータED12と、範囲指定情報RD1とを用いて、顔特徴情報FFに対応する図4中のデータID11を生成する。例えば、モデルM1は、画像IM11中のユーザの顔の造形的な特徴を示す情報を含む顔特徴情報FFを生成する。例えば、モデルM1は、画像IM11中のユーザの髪と顔との境界を示す情報を含む顔特徴情報FFを生成する。なお、情報処理装置100は、図4において「split」と表記された処理SP1により、人の顔を含む画像から範囲指定情報RD1を生成してもよい。なお、上記は一例に過ぎず、人の顔を含む画像における顔の範囲を示す情報であれば、範囲指定情報RD1はどのように情報であってもよく、任意の手法により生成されてもよい。
【0060】
モデルM1は、顔特徴情報FFを、デコーダM12へ伝達する。例えば、モデルM1は、人の顔の造形的な特徴及び髪と顔との境界を示す顔特徴情報FFを、デコーダM12の各層DLへ伝達する。図2では、モデルM1は、画像IM11中のユーザの顔の造形的な特徴、及び画像IM11中のユーザの髪と顔との境界を示す顔特徴情報FFを、デコーダM12の各層DLへ伝達する。例えば、モデルM1は、デコーダM12の各層DLのうち、表層部分の層DL1へ伝達される顔特徴情報FFの重みを強くしてデコーダM12の各層DLに伝達する。これにより、情報処理装置100は、顔の再現性の向上させることができる。また、情報処理装置100は、髪の形を編集できるようにすることができる。
【0061】
従来の合成画像の生成では、全体的な形状は再現できるが顔が微妙に違う等といった問題があった。一方で、情報処理装置100は、上記のようなモデルM1を用いることにより、適切な合成画像を生成することができる。具体的には、情報処理装置100は、顔部分は学習データ(学習用データ)に依存しない形でコピーして、髪の毛の質や形状を合成させることにより、適切にヘアスタイル変換が行われた画像を生成することができる。
【0062】
このように、情報処理装置100は、第1合成対象と、第2合成対象と、第1合成対象において変動許容が低い範囲の指定とを受け付ける。そして、情報処理装置100は、第1合成対象の指定範囲の変動を抑えつつ、第1合成対象と第2合成対象とを合成した合成情報を生成する。
【0063】
例えば、従来のモデルでは、顔画像と髪画像とを入力すると、髪型を変えた画像を出力するように学習される。このため、顔部分が髪画像に引っ張られて変化してしまい利用者の印象を悪化させてしまう。すなわち、第1合成対象において第2合成対象を合成する部分以外の部分が、第2合成対象の特徴に応じて変化してしまう場合がある。
【0064】
一方で、情報処理装置100は、モデルM1のエンコーダM11のうち、表層部分の特徴を学習する比較的入力装置に近い層(入力層から所定の範囲内)の出力を取得し、出力した出力のうち、指定範囲の特徴をデコーダM12の所定の層に入力する。例えば、情報処理装置100は、デコーダM12の所定の層の出力に重みを加える。具体的には、情報処理装置100は、モデルM1の表層部分の伝達情報のうち、指定範囲の重みを強くした状態でデコーダのM12出力層に近い層に伝達する。これにより、情報処理装置100は、第1合成対象において第2合成対象を合成する部分以外の部分が、第2合成対象の特徴に応じて変化してしまうことを抑制することができる。このように、情報処理装置100は、複数の層で第1画像と第2画像との特徴量を学習し、変動許容が低い領域については、第1画像が有する表層的表現を重視して、第1画像と第2画像とを合成した合成画像を生成する。
【0065】
〔1-2-2.その他例等〕
なお、上述したモデルM1を用いた処理は一例に過ぎず、情報処理装置100は、第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成できば、どのような処理により合成情報を生成してもよい。
【0066】
例えば、情報処理装置100は、第1画像と第2画像とを入力して、第1画像と第2画像とを合成した第1合成画像を出力するモデル(モデルM2)を用いてもよい。この場合、情報処理装置100は、第1画像におけるユーザの顔の範囲である指定範囲を示す範囲指定情報に基づいて、モデルM2が出力した第1合成画像を編集することにより、第1画像における指定範囲の変動を抑制した第2合成画像を生成してもよい。
【0067】
例えば、情報処理装置100は、モデルM2が出力した第1合成画像中において第1画像で人の顔が位置する領域に対応する領域を、第1画像で人の顔が位置する領域の画像に置き換えてもよい。これにより、情報処理装置100は、合成画像における顔が位置する領域に、第1画像で人の顔が位置する領域を第1画像における指定範囲の変動を抑制した第2合成画像を生成してもよい。例えば、情報処理装置100は、モデルM2が出力した第1合成画像中において第1画像で人の顔が位置する領域に対応する領域に、第1画像で人の顔が位置する領域の画像をコピーした第2合成画像を生成してもよい。
【0068】
また、情報処理装置100は、合成情報に対するユーザの評価を受け付けてもよい。例えば、情報処理装置100は、合成情報を提供したユーザ(「提供先ユーザ」ともいう)からの合成情報に対する評価を受け付ける。情報処理装置100は、提供先ユーザの顔を含む第1画像と、提供先ユーザが指定したヘアスタイルの髪を含む第2画像とを合成した合成画像(「提供合成画像」ともいう)を提供先ユーザが利用する端末装置10へ送信する。また、情報処理装置100は、提供合成画像に対するユーザの評価を受け付けるためのコンテンツ(「評価受付用コンテンツ」ともいう)を提供先ユーザが利用する端末装置10へ送信する。
【0069】
提供先ユーザが利用する端末装置10は、受信した提供合成画像とともに、提供合成画像に対する評価を受け付けるコンテンツ(評価受付用コンテンツ)を表示する。端末装置10は、0~100点の点数を入力する数値入力ボックスと、その点数を送信するためにボタン(「評価送信用ボタン」ともいう)とを含む評価受付用コンテンツを表示する。端末装置10は、提供先ユーザが評価受付用コンテンツの数値入力ボックスに数値を入力し、評価送信用ボタンを選択する操作を行った場合、提供先ユーザが入力した数値を、合成情報に対するユーザの評価を示す情報(「評価情報」ともいう)として、情報処理装置100へ送信する。
【0070】
情報処理装置100は、提供合成画像に対する提供先ユーザによる評価を示す評価情報を受信する。端末装置10から評価情報を受信した情報処理装置100は、受信した評価情報を記憶部120へ登録する。情報処理装置100は、提供先ユーザによる評価に基づいて学習用データを生成してもよい。
【0071】
例えば、情報処理装置100は、提供先ユーザによる評価が所定の基準を満たす場合、その提供先ユーザに提供した提供合成画像を正例として学習用データに追加してもよい。例えば、情報処理装置100は、正例とした提供合成画像の生成時の入力情報が入力された場合、その提供合成画像を出力するように学習処理を行うことにより、モデルM1を更新してもよい。例えば、情報処理装置100は、正例とした提供合成画像の生成時の入力情報が入力された場合、その提供合成画像を出力するように学習処理を行うことにより、モデルM1を更新してもよい。
【0072】
例えば、情報処理装置100は、提供先ユーザによる点数が所定の閾値以上である場合、その提供先ユーザに提供した提供合成画像を正例として学習用データに追加してもよい。例えば、情報処理装置100は、提供先ユーザによる点数が所定の閾値以上である場合、その提供先ユーザに提供した提供合成画像と、その提供合成画像の生成時の入力情報との組み合わせを、学習用データに追加してもよい。
【0073】
例えば、情報処理装置100は、提供先ユーザによる評価が所定の基準を満たさない場合、その提供先ユーザに提供合成画像の編集を要求してもよい。この場合、情報処理装置100は、その提供先ユーザにより編集された画像(「編集後合成画像」ともいう)を学習用データとして用いてもよい。この場合、情報処理装置100は、編集後合成画像に対応する提供合成画像の生成時の入力情報が入力された場合、編集後合成画像を出力するように学習処理を行うことにより、モデルM1を更新してもよい。例えば、情報処理装置100は、編集後合成画像に対応する提供合成画像の生成時の入力情報が入力された場合、その編集後合成画像を出力するように学習処理を行うことにより、モデルM1を更新してもよい。なお、上述した処理は一例に過ぎず、情報処理装置100は、様々な処理により、モデルM1等のモデルを学習する学習処理を行ってもよい。
【0074】
〔2.情報処理装置の構成〕
次に、図6を用いて、実施形態に係る情報処理装置100の構成について説明する。図6は、実施形態に係る情報処理装置100の構成例を示す図である。図6に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
【0075】
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークと有線または無線で接続され、端末装置10及び情報提供装置50との間で情報の送受信を行う。
【0076】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図6に示すように、学習用データ記憶部121と、モデル情報記憶部122と、合成結果情報記憶部123とを有する。また、記憶部120は、上記に限らず、種々の情報を記憶してもよい。
【0077】
(学習用データ記憶部121)
実施形態に係る学習用データ記憶部121は、学習に用いるデータに関する各種情報を記憶する。なお、情報処理装置100は、情報提供装置50からモデルM1等の学習モデルを取得する場合、学習用データ記憶部121を有しなくてもよい。
【0078】
学習用データ記憶部121は、学習に用いる学習用データ(データセット)を記憶する。図7は、実施形態に係る学習用データ記憶部の一例を示す図である。例えば、学習用データ記憶部121は、学習に用いる学習用データや精度評価(測定)に用いる評価用データ等の種々のデータに関する各種情報を記憶する。図7に、実施形態に係る学習用データ記憶部121の一例を示す。図7の例では、学習用データ記憶部121は、「データセットID」、「データID」、「入力情報」、「正解情報」、「日時」といった項目が含まれる。
【0079】
「データセットID」は、データセットを識別するための識別情報を示す。「データID」は、データを識別するための識別情報を示す。また、「入力情報」は、データIDにより識別されるデータ(教師データ)の入力情報を示す。
【0080】
「正解情報」は、対応するデータ(教師データ)の正解情報(合成情報)を示す。例えば、「正解情報」は、対応する入力情報を用いた場合に生成される合成情報(合成画像)であってもよい。
【0081】
また、「日時」は、対応するデータに関する時間(日時)を示す。なお、図7の例では、「DA1」等で図示するが、「日時」には、「2022年5月27日17時48分37秒」等の具体的な日時であってもよいし、「バージョンXXのモデル学習から使用開始」等、そのデータがどのモデルの学習から使用が開始されたかを示す情報が記憶されてもよい。
【0082】
図7の例では、データセットID「DS1」により識別されるデータセット(データセットDS1)には、データID「DID1」、「DID2」、「DID3」等により識別される複数のデータが含まれることを示す。例えば、データID「DID1」、「DID2」、「DID3」等により識別される各データ(学習用データ)は、モデルの学習に用いられる教師データである。
【0083】
例えば、データID「DID1」により識別されるデータは、入力情報がデータDT1であり、そのデータDT1をモデルM1に入力した場合に生成されるべき合成情報が正解情報LB1であることを示す。
【0084】
なお、学習用データ記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、学習用データ記憶部121は、各データが学習用データであるか、評価用データであるか等を特定可能に記憶してもよい。例えば、学習用データ記憶部121は、学習用データと評価用データとを区別可能に記憶する。学習用データ記憶部121は、各データが学習用データや評価用データであるかを識別する情報を記憶してもよい。情報処理装置100は、学習用データとして用いられる各データと正解情報とに基づいて、モデルを学習する。情報処理装置100は、評価用データとして用いられる各データと正解情報とに基づいて、モデルの精度を算出する。情報処理装置100は、評価用データを入力した場合にモデルが出力する出力結果と、正解情報とを比較した結果を収集することにより、モデルの精度を算出する。
【0085】
(モデル情報記憶部122)
実施形態に係るモデル情報記憶部122は、モデルに関する情報を記憶する。例えば、モデル情報記憶部122は、学習処理により学習(生成)された学習済みモデル(モデル)の情報(モデルデータ)を記憶する。図8は、実施形態に係るモデル情報記憶部の一例を示す図である。図8に示した例では、モデル情報記憶部122は、「モデルID」、「用途」、「部分モデルID」、「部分用途」、「モデルデータ」といった項目が含まれる。なお、図8では、モデルM1のみを図示するが、モデルM2、M3等の複数のモデル情報が記憶されてもよい。
【0086】
「モデルID」は、モデルを識別するための識別情報を示す。例えば、モデルID「M1」により識別されるモデルは、図1の例に示したモデルM1に対応する。「用途」は、対応するモデルの用途を示す。「部分モデルID」は、対応するモデルの部分モデルを識別するための識別情報を示す。例えば、部分モデルID「M11」により識別される部分モデルは、図1の例に示したエンコーダM11に対応する。「部分用途」は、対応する部分モデルの用途を示す。また、「モデルデータ」は、対応する部分モデルのデータを示す。例えば、「モデルデータ」には、各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
【0087】
図8では、モデルM1は、画像合成に用いられることを示す。モデルM1には、エンコーダM11、デコーダM12等が含まれることを示す。例えば、エンコーダM11は、画像から特徴を抽出する部分モデル(エンコーダ)であり、デコーダM12はエンコーダM11が抽出した特徴を用いて画像を生成する部分モデル(デコーダ)である。
【0088】
例えば、部分モデルID「M11」により識別されるモデル(エンコーダM11)は、用途が「特徴抽出」であり、入力された画像情報からの特徴の抽出に用いられることを示す。また、図8では、エンコーダM11は、モデルデータがモデルデータMDT11であることを示す。また、部分モデルID「M12」により識別されるモデル(デコーダM12)は、用途が「画像生成」であり、入力された画像情報からの特徴の抽出に用いられることを示す。また、図8では、デコーダM12は、モデルデータがモデルデータMDT12であることを示す。
【0089】
なお、モデル情報記憶部122は、上記に限らず、目的に応じて種々のモデル情報を記憶してもよい。モデル情報記憶部122は、学習に用いたデータ(学習用データ)を学習済みモデル(モデル)に対応付けて記憶してもよい。
【0090】
(合成結果情報記憶部123)
実施形態に係る合成結果情報記憶部123は、処理結果に関する各種情報を記憶する。図9は、実施形態に係る合成結果情報記憶部の一例を示す図である。図9に示す合成結果情報記憶部123は、「処理結果ID」、「合成前情報」、「合成結果情報」といった項目が含まれる。
【0091】
「処理結果ID」は、処理結果を識別する識別情報を示す。「合成前情報」は、合成を行うために用いた入力情報等を示す。「合成前情報」には、「第1画像」、「第2画像」、「範囲指定情報」といった項目が含まれる。「合成結果情報」は、生成処理により得られた合成画像等の生成処理の結果(情報)を示す。
【0092】
例えば、処理結果ID「RS1」により識別される処理では、第1画像IM11、第2画像IM12、及び範囲指定情報RD1が用いられ、処理結果として合成画像IS1が得られたことを示す。
【0093】
なお、合成結果情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
【0094】
(制御部130)
図6の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0095】
図6に示すように、制御部130は、取得部131と、学習部132と、決定部133と、生成部134と、提供部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図6に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0096】
(取得部131)
取得部131は、種々の情報を取得する。取得部131は、端末装置10等の外部装置から各種情報を取得する。また、取得部131は、記憶部120から各種情報を取得する。また、取得部131は、学習用データ記憶部121や、モデル情報記憶部122や、合成結果情報記憶部123等から各種情報を取得する。
【0097】
取得部131は、通信部110を介して、外部の情報処理装置から各種情報を受信する。取得部131は、受信した情報を記憶部120に格納する。取得部131は、端末装置10または情報提供装置50から各種情報を受信する。取得部131は、ユーザが利用する端末装置10から情報を取得する。例えば、取得部131は、情報提供装置50から各種情報を取得する。例えば、取得部131は、情報提供装置50からモデルの学習に用いる学習用データを受信する。例えば、取得部131は、情報提供装置50からモデルを受信する。
【0098】
取得部131は、合成対象となる第1対象である第1対象情報を取得する。取得部131は、合成対象となる第2対象である第2対象情報を取得する。取得部131は、第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報を取得する。取得部131は、第1対象情報において合成情報にコピーしたい範囲として指定された指定範囲を示す範囲指定情報とを取得する。
【0099】
取得部131は、第1対象情報としての画像である第1画像を取得する。取得部131は、第2対象情報としての画像である第2画像を取得する。取得部131は、第1画像における指定範囲を示す範囲指定情報を取得する。
【0100】
取得部131は、人の頭部を含む第1画像を取得する。取得部131は、第1画像における人の顔の範囲を示す範囲指定情報を取得する。取得部131は、髪を含む第2画像を取得する。取得部131は、ユーザが指定した第2対象情報を取得する。
【0101】
取得部131は、ユーザの頭部を撮像した第1対象情報である第1画像を取得する。取得部131は、ユーザが指定した髪を含む第2対象情報である第2画像を取得する。取得部131は、第1画像におけるユーザの顔の範囲である指定範囲を示す範囲指定情報を取得する。
【0102】
(学習部132)
学習部132は、学習モデル(モデル)を学習する学習処理を実行する。なお、情報処理装置100は、情報提供装置50からモデルM1等の学習モデルを取得する場合、学習部132を有しなくてもよい。
【0103】
例えば、学習部132は、取得部131により取得された各種情報に基づいて、学習処理を実行する。学習部132は、外部の情報処理装置からの情報や記憶部120に記憶された情報に基づいて、学習処理を実行する。学習部132は、モデル情報記憶部122に記憶された情報に基づいて、学習処理を実行する。学習部132は、学習により生成したモデルをモデル情報記憶部122に格納する。
【0104】
学習部132は、学習処理を行う。学習部132は、各種学習を行う。学習部132は、取得部131により取得された情報に基づいて、各種情報を学習する。学習部132は、モデルを学習(生成)する。学習部132は、モデル等の各種情報を学習する。学習部132は、学習によりモデルを生成する。学習部132は、種々の機械学習に関する技術を用いて、モデルを学習する。例えば、学習部132は、モデル(ネットワーク)のパラメータを学習する。学習部132は、種々の機械学習に関する技術を用いて、モデルを学習する。
【0105】
学習部132は、モデルM1等の各種の学習モデルを生成する。学習部132は、ネットワークのパラメータを学習する。例えば、学習部132は、モデルM1等の各種の学習モデルのネットワークのパラメータを学習する。学習部132は、モデル情報記憶部122に記憶された学習用データを用いて、学習処理を行うことにより、モデルM1等の各種の学習モデルを生成する。例えば、学習部132は、合成情報の生成に用いられるモデルを生成する。学習部132は、モデルM1等の各種の学習モデルのネットワークのパラメータを学習することにより、モデルM1等の各種の学習モデルを生成する。
【0106】
学習部132は、モデル情報記憶部122に記憶された学習用データ(教師データ)に基づいて、学習処理を行う。学習部132は、モデル情報記憶部122に記憶された学習用データを用いて、学習処理を行うことにより、モデルM1等の各種の学習モデルを生成する。
【0107】
例えば、学習部132は、モデルM1が出力する合成情報が、モデルM1に入力した入力情報(第1対象情報、第2対象情報、及び範囲指定情報)に対応付けられた正解情報(望ましい合成結果を示す情報)に近づくように、バックプロパゲーション(誤差逆伝播法)等の手法により学習処理を行う。例えば、学習部132は、第1画像、第2画像、及び範囲指定情報を含む入力情報が入力されたモデルM1が出力する合成画像が、その入力情報に対応付けられた正解情報に近づくように学習処理を行う。
【0108】
例えば、学習部132は、学習処理によりノード間で値が伝達する際に考慮される重み(すなわち、接続係数)の値を調整する。このように、学習部132は、モデルM1における出力と、入力に対応する正解情報との誤差が少なくなるようにパラメータ(接続係数)を補正するバックプロパゲーション等の処理によりモデルM1を学習する。例えば、学習部132は、所定の損失(ロス)関数を最小化するようにバックプロパゲーション等の処理を行うことによりモデルM1を生成する。これにより、学習部132は、モデルM1のパラメータを学習する学習処理を行うことができる。
【0109】
なお、モデルの学習手法については、上述した手法に限定されるものではなく、任意の公知技術が適用可能である。なお、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。また、例えば、モデルの生成は、教師なし学習の機械学習に関する技術を用いて行われてもよい。例えば、モデルの生成は、深層学習(ディープラーニング)の技術を用いて行われてもよい。例えば、モデルの生成は、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて行われてもよい。なお、上記モデルの生成に関する記載は例示であり、モデルの生成は、取得可能な情報等に応じて適宜選択された学習手法により行われてもよい。すなわち、学習部132は、学習用データに含まれる入力情報が入力された場合に、正解情報に対応するスコアを出力するようにモデルM1を学習可能であれば、どのような手法によりモデルM1の生成を行ってもよい。
【0110】
上記のように、学習部132による学習の手法は特に限定されないが、例えば、データ(入力情報)とその正解情報(出力情報)とを紐づけた学習用データを用意し、その学習用データを多層ニューラルネットワークに基づいた計算モデルに入力して学習してもよい。また、例えばCNN、3D-CNN等のDNNに基づく手法が用いられてもよい。学習部132は、音声等のような時系列データを対象とする場合、再帰型ニューラルネットワーク(RNN)やRNNを拡張したLSTM(Long Short-Term Memory units)に基づく手法を用いてもよい。
【0111】
(決定部133)
決定部133は、種々の情報を決定する決定処理を実行する。決定部133は、決定処理により決定した情報を記憶部120に格納する。例えば、決定部133は、取得部131により取得された各種情報に基づいて、決定処理を実行する。決定部133は、記憶部120に記憶された各種情報に基づいて、決定処理を実行する。例えば、決定部133は、外部の情報処理装置から受信された各種情報に基づいて、決定処理を実行する。
【0112】
(生成部134)
生成部134は、各種情報を生成する生成処理を実行する。例えば、生成部134は、取得部131により取得された各種情報に基づいて、生成処理を実行する。例えば、生成部134は、記憶部120に記憶された情報に基づいて、生成処理を実行する。
【0113】
生成部134は、学習部132により学習されたモデルを用いて、生成処理を実行する。例えば、生成部134は、決定部133により決定された情報に基づいて、生成処理を実行する。生成部134は、モデル情報記憶部122に記憶されたモデルを用いて、合成情報を生成する。
【0114】
生成部134は、範囲指定情報に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成する。生成部134は、第1対象情報における指定範囲をコピーした合成情報を生成する。生成部134は、第1画像における指定範囲の変動を抑制して、第1画像と第2画像とを合成した合成情報である合成画像を生成する。
【0115】
生成部134は、第1画像に含まれる人の頭部のうち指定範囲に対応する範囲の変動を抑制した合成画像を生成する。生成部134は、第1画像における人の顔の変動を抑制した合成画像を生成する。生成部134は、第1画像に含まれる人の頭部に第2画像に含まれる髪を反映した合成画像を生成する。
【0116】
生成部134は、第1対象、第2対象及び指定範囲と、第1対象における指定範囲の変動を抑制した第1対象及び第2対象の合成との関連性の特徴を学習した学習モデルを用いて、合成情報を生成する。生成部134は、第1対象情報及び第2対象情報を入力として次元圧縮を行うエンコーダと、エンコーダにより次元圧縮された情報の次元を増やすデコーダとを含む学習モデルを用いて、合成情報を生成する。
【0117】
生成部134は、第1対象情報及び第2対象情報から特徴情報を抽出するエンコーダと、特徴情報と範囲指定情報とに基づいて合成情報を出力するデコーダとを含む学習モデルを用いて、合成情報を生成する。生成部134は、エンコーダと、第1対象情報における指定範囲に対応する情報と特徴情報とを反映した合成情報を出力するデコーダとを含む学習モデルを用いて、合成情報を生成する。
【0118】
生成部134は、第1画像及び第2画像を入力として、特徴情報を抽出するエンコーダと、特徴情報と範囲指定情報とに基づいて、第1画像及び第2画像を合成した合成情報である合成画像を出力するデコーダとを含む学習モデルを用いて、合成画像を生成する。生成部134は、人の頭部を含む第1画像と、第2画像と、範囲指定情報と、学習モデルを用いて、第1画像に含まれる人の頭部のうち指定範囲に対応する範囲の変動を抑制した合成画像を生成する。
【0119】
生成部134は、第1画像と、第2画像と、第1画像における人の顔の範囲を示す範囲指定情報と、学習モデルを用いて、第1画像における人の顔の変動を抑制した合成画像を生成する。生成部134は、第1画像と、髪を含む第2画像と、範囲指定情報と、学習モデルを用いて、第1画像に含まれる人の頭部に第2画像に含まれる髪を反映した合成画像を生成する。
【0120】
生成部134は、ユーザから取得した第2対象情報を用いて、合成情報を生成する。生成部134は、第1画像に含まれるユーザの頭部に第2画像に含まれる髪を反映した合成情報である合成画像を生成する。生成部134は、第1画像に含まれるユーザの顔をコピーし、第1画像に含まれるユーザのヘアスタイルに、第2画像に含まれる髪に対応するヘアスタイルを反映した合成画像を生成する。
【0121】
生成部134は、コンテンツを生成する。生成部134は、例えば、生成部134は、Java(登録商標)等の種々の技術を適宜用いて、端末装置10へ提供する画面(コンテンツ)を生成する。なお、生成部134は、CSSやJavaScript(登録商標)やHTMLの形式に基づいて、端末装置10へ提供する画面(コンテンツ)を生成してもよい。また、例えば、生成部134は、JPEG(Joint Photographic Experts Group)やGIF(Graphics Interchange Format)やPNG(Portable Network Graphics)など様々な形式で画面(コンテンツ)を生成してもよい。生成部134は、評価受付用コンテンツを生成する。
【0122】
(提供部135)
提供部135は、各種情報を提供する。提供部135は、通信部110を介して、外部の情報処理装へ各種情報を送信する。提供部135は、端末装置10や情報提供装置50へ各種情報を送信する。提供部135は、生成処理の結果を端末装置10へ送信する。
【0123】
提供部135は、決定部133により決定された情報を提供する。提供部135は、生成部134により生成された情報を提供する。提供部135は、合成情報をユーザが利用する端末装置10に提供する。提供部135は、合成画像IS1をユーザが利用する端末装置10に送信する。提供部135は、生成部134により生成された評価受付用コンテンツをユーザが利用する端末装置10に送信する。
【0124】
〔3.処理手順〕
次に、図10を用いて、実施形態に係る情報処理装置100が実行する情報処理の手順について説明する。図10は、情報処理装置が実行する情報処理の流れの一例を示すフローチャートである。
【0125】
図10では、情報処理装置100は、合成対象となる第1対象である第1対象情報を取得する(ステップS101)。例えば、情報処理装置100は、第1対象情報としての画像である第1画像を取得する。
【0126】
また、情報処理装置100は、合成対象となる第2対象である第2対象情報を取得する(ステップS102)。例えば、情報処理装置100は、第2対象情報としての画像である第2画像を取得する。
【0127】
また、情報処理装置100は、第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報を取得する(ステップS103)。例えば、情報処理装置100は、第1画像における指定範囲を示す範囲指定情報する。
【0128】
そして、情報処理装置100は、範囲指定情報に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成する(ステップS104)。例えば、情報処理装置100は、第1画像における指定範囲の変動を抑制して、第1画像と第2画像とを合成した合成情報である合成画像を生成する。
【0129】
〔4.効果〕
上述してきたように、実施形態に係る情報処理装置100は、取得部131と、生成部134とを有する。取得部131は、合成対象となる第1対象である第1対象情報と、合成対象となる第2対象である第2対象情報と、第1対象情報において変動を抑制する範囲として指定された指定範囲を示す範囲指定情報とを取得する。生成部134は、範囲指定情報に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成する。
【0130】
このように、実施形態に係る情報処理装置100は、範囲指定情報に基づいて第1対象情報における指定範囲の変動を抑制し、第1対象情報と第2対象情報とを合成した合成情報を生成することにより、適切な合成情報を生成することができる。
【0131】
また、実施形態に係る情報処理装置100において、取得部131は、第1対象情報と、第2対象情報と、第1対象情報において合成情報にコピーしたい範囲として指定された指定範囲を示す範囲指定情報とを取得する。生成部134は、第1対象情報における指定範囲をコピーした合成情報を生成する。
【0132】
このように、実施形態に係る情報処理装置100は、第1対象情報における指定範囲をコピーした合成情報を生成することにより、適切な合成情報を生成することができる。
【0133】
また、実施形態に係る情報処理装置100において、取得部131は、第1対象情報としての画像である第1画像と、第2対象情報としての画像である第2画像と、第1画像における指定範囲を示す範囲指定情報とを取得する。生成部134は、第1画像における指定範囲の変動を抑制して、第1画像と第2画像とを合成した合成情報である合成画像を生成する。
【0134】
このように、実施形態に係る情報処理装置100は、第1画像における指定範囲の変動を抑制して、第1画像と第2画像とを合成した合成情報である合成画像を生成することにより、適切な合成情報を生成することができる。
【0135】
また、実施形態に係る情報処理装置100において、取得部131は、人の頭部を含む第1画像を取得する。生成部134は、第1画像に含まれる人の頭部のうち指定範囲に対応する範囲の変動を抑制した合成画像を生成する。
【0136】
このように、実施形態に係る情報処理装置100は、第1画像に含まれる人の頭部のうち指定範囲に対応する範囲の変動を抑制した合成画像を生成することにより、適切な合成情報を生成することができる。
【0137】
また、実施形態に係る情報処理装置100において、取得部131は、第1画像における人の顔の範囲を示す範囲指定情報を取得する。生成部134は、第1画像における人の顔の変動を抑制した合成画像を生成する。
【0138】
このように、実施形態に係る情報処理装置100は、第1画像における人の顔の変動を抑制した合成画像を生成することにより、適切な合成情報を生成することができる。
【0139】
また、実施形態に係る情報処理装置100において、取得部131は、髪を含む第2画像を取得する。生成部134は、第1画像に含まれる人の頭部に第2画像に含まれる髪を反映した合成画像を生成する。
【0140】
このように、実施形態に係る情報処理装置100は、第1画像に含まれる人の頭部に第2画像に含まれる髪を反映した合成画像を生成することにより、適切な合成情報を生成することができる。
【0141】
また、実施形態に係る情報処理装置100において、生成部134は、第1対象、第2対象及び指定範囲と、第1対象における指定範囲の変動を抑制した第1対象及び第2対象の合成との関連性の特徴を学習した学習モデルを用いて、合成情報を生成する。
【0142】
このように、実施形態に係る情報処理装置100は、第1対象、第2対象及び指定範囲と、第1対象における指定範囲の変動を抑制した第1対象及び第2対象の合成との関連性の特徴を学習した学習モデルを用いて、合成情報を生成することにより、適切な合成情報を生成することができる。
【0143】
また、実施形態に係る情報処理装置100において、生成部134は、第1対象情報及び第2対象情報を入力として次元圧縮を行うエンコーダと、エンコーダにより次元圧縮された情報の次元を増やすデコーダとを含む学習モデルを用いて、合成情報を生成する。
【0144】
このように、実施形態に係る情報処理装置100は、第1対象情報及び第2対象情報を入力として次元圧縮を行うエンコーダと、エンコーダにより次元圧縮された情報の次元を増やすデコーダとを含む学習モデルを用いて、合成情報を生成することにより、適切な合成情報を生成することができる。
【0145】
また、実施形態に係る情報処理装置100において、生成部134は、第1対象情報及び第2対象情報から特徴情報を抽出するエンコーダと、特徴情報と範囲指定情報とに基づいて合成情報を出力するデコーダとを含む学習モデルを用いて、合成情報を生成する。
【0146】
このように、実施形態に係る情報処理装置100は、第1対象情報及び第2対象情報から特徴情報を抽出するエンコーダと、特徴情報と範囲指定情報とに基づいて合成情報を出力するデコーダとを含む学習モデルを用いて、合成情報を生成することにより、適切な合成情報を生成することができる。
【0147】
また、実施形態に係る情報処理装置100において、生成部134は、エンコーダと、第1対象情報における指定範囲に対応する情報と特徴情報とを反映した合成情報を出力するデコーダとを含む学習モデルを用いて、合成情報を生成する。
【0148】
このように、実施形態に係る情報処理装置100は、エンコーダと、第1対象情報における指定範囲に対応する情報と特徴情報とを反映した合成情報を出力するデコーダとを含む学習モデルを用いて、合成情報を生成することにより、適切な合成情報を生成することができる。
【0149】
また、実施形態に係る情報処理装置100において、取得部131は、第1対象情報としての画像である第1画像と、第2対象情報としての画像である第2画像と、第1画像における指定範囲を示す範囲指定情報とを取得する。生成部134は、第1画像及び第2画像を入力として、特徴情報を抽出するエンコーダと、特徴情報と範囲指定情報とに基づいて、第1画像及び第2画像を合成した合成情報である合成画像を出力するデコーダとを含む学習モデルを用いて、合成画像を生成する。
【0150】
このように、実施形態に係る情報処理装置100は、第1画像及び第2画像を入力として、特徴情報を抽出するエンコーダと、特徴情報と範囲指定情報とに基づいて、第1画像及び第2画像を合成した合成情報である合成画像を出力するデコーダとを含む学習モデルを用いて、合成画像を生成することにより、適切な合成情報を生成することができる。
【0151】
また、実施形態に係る情報処理装置100において、取得部131は、人の頭部を含む第1画像を取得する。生成部134は、人の頭部を含む第1画像と、第2画像と、範囲指定情報と、学習モデルを用いて、第1画像に含まれる人の頭部のうち指定範囲に対応する範囲の変動を抑制した合成画像を生成する。
【0152】
このように、実施形態に係る情報処理装置100は、人の頭部を含む第1画像と、第2画像と、範囲指定情報と、学習モデルを用いて、第1画像に含まれる人の頭部のうち指定範囲に対応する範囲の変動を抑制した合成画像を生成することにより、適切な合成情報を生成することができる。
【0153】
また、実施形態に係る情報処理装置100において、取得部131は、第1画像における人の顔の範囲を示す範囲指定情報を取得する。生成部134は、第1画像と、第2画像と、第1画像における人の顔の範囲を示す範囲指定情報と、学習モデルを用いて、第1画像における人の顔の変動を抑制した合成画像を生成する。
【0154】
このように、実施形態に係る情報処理装置100は、第1画像と、第2画像と、第1画像における人の顔の範囲を示す範囲指定情報と、学習モデルを用いて、第1画像における人の顔の変動を抑制した合成画像を生成することにより、適切な合成情報を生成することができる。
【0155】
また、実施形態に係る情報処理装置100において、取得部131は、髪を含む第2画像を取得する。生成部134は、第1画像と、髪を含む第2画像と、範囲指定情報と、学習モデルを用いて、第1画像に含まれる人の頭部に第2画像に含まれる髪を反映した合成画像を生成する。
【0156】
このように、実施形態に係る情報処理装置100は、第1画像と、髪を含む第2画像と、範囲指定情報と、学習モデルを用いて、第1画像に含まれる人の頭部に第2画像に含まれる髪を反映した合成画像を生成することにより、適切な合成情報を生成することができる。
【0157】
また、実施形態に係る情報処理装置100において、取得部131は、ユーザが指定した第2対象情報を取得する。生成部134は、ユーザから取得した第2対象情報を用いて、合成情報を生成する。
【0158】
このように、実施形態に係る情報処理装置100は、ユーザから取得した第2対象情報を用いて、合成情報を生成することにより、適切な合成情報を生成することができる。
【0159】
また、実施形態に係る情報処理装置100は、提供部135を有する。提供部135は、合成情報をユーザが利用する端末装置10に提供する。
【0160】
このように、実施形態に係る情報処理装置100は、合成情報をユーザが利用する端末装置10に提供することにより、適切に生成された合成情報をユーザに提供することができる。
【0161】
また、実施形態に係る情報処理装置100において、取得部131は、ユーザの頭部を撮像した第1対象情報である第1画像と、ユーザが指定した髪を含む第2対象情報である第2画像と、第1画像におけるユーザの顔の範囲である指定範囲を示す範囲指定情報とを取得する。生成部134は、第1画像に含まれるユーザの頭部に第2画像に含まれる髪を反映した合成情報である合成画像を生成する。
【0162】
このように、実施形態に係る情報処理装置100は、第1画像に含まれるユーザの頭部に第2画像に含まれる髪を反映した合成情報である合成画像を生成することにより、適切な合成情報を生成することができる。
【0163】
また、実施形態に係る情報処理装置100において、生成部134は、第1画像に含まれるユーザの顔をコピーし、第1画像に含まれるユーザのヘアスタイルに、第2画像に含まれる髪に対応するヘアスタイルを反映した合成画像を生成する。
【0164】
このように、実施形態に係る情報処理装置100は、第1画像に含まれるユーザの顔をコピーし、第1画像に含まれるユーザのヘアスタイルに、第2画像に含まれる髪に対応するヘアスタイルを反映した合成画像を生成することにより、適切な合成情報を生成することができる。
【0165】
〔5.ハードウェア構成〕
上述してきた実施形態に係る情報処理装置100は、例えば図11に示すような構成のコンピュータ1000によって実現される。図11は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD(Hard Disk Drive)1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0166】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0167】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。
【0168】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0169】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0170】
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
【0171】
以上、本願の実施形態及び変形例のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0172】
〔6.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0173】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0174】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0175】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【0176】
1 情報処理システム
100 情報処理装置
121 学習用データ記憶部
122 モデル情報記憶部
123 合成結果情報記憶部
130 制御部
131 取得部
132 学習部
133 決定部
134 生成部
135 提供部
10 端末装置
50 情報提供装置
N ネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11