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

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

▶ ブラザー工業株式会社の特許一覧

特開2024-6488コンピュータプログラム、および、画像処理装置
<>
  • 特開-コンピュータプログラム、および、画像処理装置 図1
  • 特開-コンピュータプログラム、および、画像処理装置 図2
  • 特開-コンピュータプログラム、および、画像処理装置 図3
  • 特開-コンピュータプログラム、および、画像処理装置 図4
  • 特開-コンピュータプログラム、および、画像処理装置 図5
  • 特開-コンピュータプログラム、および、画像処理装置 図6
  • 特開-コンピュータプログラム、および、画像処理装置 図7
  • 特開-コンピュータプログラム、および、画像処理装置 図8
  • 特開-コンピュータプログラム、および、画像処理装置 図9
  • 特開-コンピュータプログラム、および、画像処理装置 図10
  • 特開-コンピュータプログラム、および、画像処理装置 図11
  • 特開-コンピュータプログラム、および、画像処理装置 図12
  • 特開-コンピュータプログラム、および、画像処理装置 図13
  • 特開-コンピュータプログラム、および、画像処理装置 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024006488
(43)【公開日】2024-01-17
(54)【発明の名称】コンピュータプログラム、および、画像処理装置
(51)【国際特許分類】
   H04N 1/387 20060101AFI20240110BHJP
   G06F 3/12 20060101ALI20240110BHJP
   B41J 5/30 20060101ALI20240110BHJP
【FI】
H04N1/387 110
G06F3/12 304
G06F3/12 356
G06F3/12 350
B41J5/30 Z
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022107392
(22)【出願日】2022-07-01
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110001058
【氏名又は名称】鳳国際弁理士法人
(72)【発明者】
【氏名】四海 洋一
(72)【発明者】
【氏名】近藤 真樹
(72)【発明者】
【氏名】澤野 賢太郎
(72)【発明者】
【氏名】渡邉 航平
(72)【発明者】
【氏名】増田 貴昭
(72)【発明者】
【氏名】御田 政義
【テーマコード(参考)】
2C187
5C076
【Fターム(参考)】
2C187AC08
2C187AD20
2C187AF03
2C187AG15
2C187BG17
2C187CC04
2C187CD12
5C076AA12
5C076AA19
5C076BA06
(57)【要約】
【課題】ユーザの入力に基づいて簡易にユーザの好みに合致した印刷画像を決定して印刷実行部に印刷させる。
【解決手段】画像処理装置は、印刷画像の候補である1以上の候補画像を表示部に表示する候補表示処理と、表示部に表示される候補画像に対する評価を示す情報であってユーザの入力に基づく情報である画像評価情報を取得する評価取得処理と、を複数回に亘って実行する。2回目以降の候補表示処理は、画像評価情報に基づいて候補画像を決定し、決定済みの候補画像を表示部に表示する処理である。画像処理装置は、複数回に亘って実行される候補表示処理にて表示される複数個の候補画像の少なくとも一部と、複数回に亘って実行される評価取得処理にて取得される複数個の画像評価情報の少なくとも一部と、に基づいて、印刷画像を決定する。
【選択図】 図3
【特許請求の範囲】
【請求項1】
コンピュータプログラムであって、
印刷すべき印刷画像を決定する印刷画像決定機能と、
決定済みの前記印刷画像を示す印刷データを生成する印刷データ生成機能と、
前記印刷データに従って印刷実行部に印刷を実行させる印刷制御機能と、
をコンピュータに実現させ、
前記印刷画像決定機能は、
前記印刷画像の候補である1以上の候補画像を表示部に表示する候補表示処理と、
前記表示部に表示される前記候補画像に対する評価を示す情報であってユーザの入力に基づく情報である画像評価情報を取得する評価取得処理と、
を複数回に亘って実行し、
2回目以降の前記候補表示処理は、前記画像評価情報に基づいて前記候補画像を決定し、決定済みの前記候補画像を前記表示部に表示する処理であり、
前記印刷画像決定機能は、複数回に亘って実行される前記候補表示処理にて表示される複数個の前記候補画像の少なくとも一部と、複数回に亘って実行される前記評価取得処理にて取得される複数個の前記画像評価情報の少なくとも一部と、に基づいて、前記印刷画像を決定する、コンピュータプログラム。
【請求項2】
請求項1に記載のコンピュータプログラムであって、さらに、
コンテンツをそれぞれ示す1以上のコンテンツデータを取得するコンテンツ取得機能と、
前記コンテンツの表現を規定する複数個の表現情報を取得する表現情報取得機能と、
前記コンテンツデータと前記複数個の表現情報とを用いて、前記コンテンツが表現された複数個の前記候補画像を示す複数個の候補画像データを生成する候補画像生成機能と、
をコンピュータに実現させ、
前記候補表示処理は、前記複数個の候補画像データの少なくとも1つを用いて、前記候補画像を前記表示部に表示する処理である、コンピュータプログラム。
【請求項3】
請求項2に記載のコンピュータプログラムであって、
前記コンテンツデータは、前記コンテンツとしての画像を示す画像データと、前記コンテンツとしてのテキストを示すテキストデータと、の少なくとも一方を含む、コンピュータプログラム。
【請求項4】
請求項3に記載のコンピュータプログラムであって、
前記コンテンツデータは、第1コンテンツを示す第1コンテンツデータと、第2コンテンツを示す第2コンテンツデータと、を含み、
前記表現情報は、複数個のコンテンツのレイアウトを規定するレイアウト情報を含み、
前記候補画像生成機能は、前記第1コンテンツが表現された第1コンテンツ画像と前記第2コンテンツが表現された第2コンテンツ画像とが、前記レイアウト情報によって規定されるレイアウトに従って配置される前記候補画像を示す前記候補画像データを生成する、コンピュータプログラム。
【請求項5】
請求項2に記載のコンピュータプログラムであって、
前記表現情報は、特定のスタイルにて表現されたスタイル画像を示すスタイル画像データを含み、
前記候補画像生成機能は、
前記コンテンツデータに対して、前記スタイル画像データを用いたスタイル変換処理を実行して、前記コンテンツが前記特定のスタイルにて表現された変換済画像を示す変換済画像データを生成し、
前記変換済画像データを用いて、前記変換済画像を含む前記候補画像を示す前記候補画像データを生成する、コンピュータプログラム。
【請求項6】
請求項5に記載のコンピュータプログラムであって、
前記候補画像生成機能は、
1つの前記コンテンツデータに対して、互いに異なる前記スタイル画像データを用いる複数の前記スタイル変換処理を実行して、複数個の前記変換済画像を示す複数個の前記変換済画像データを生成し、
複数個の前記変換済画像データを用いて、複数個の前記候補画像データを生成し、
前記コンピュータプログラムは、さらに、
前記スタイル画像データに対する評価に関する情報であってユーザの入力に基づく情報であるスタイル評価情報を取得するスタイル評価取得機能と、
前記スタイル評価情報に基づいて、前記スタイル変換処理にて用いるべき前記スタイル画像データの少なくとも一部を変更するスタイル変更機能と、
をコンピュータに実現させる、コンピュータプログラム。
【請求項7】
請求項6に記載のコンピュータプログラムであって、
前記スタイル変更機能は、前記スタイル評価情報に基づく評価が基準以上である複数個の前記スタイル画像データを合成して、前記スタイル変換処理にて用いるべき新たな前記スタイル画像データを生成する、コンピュータプログラム。
【請求項8】
請求項6に記載のコンピュータプログラムであって、
前記スタイル評価取得機能は、前記候補画像に対する評価を示す前記画像評価情報を、前記候補画像データの生成に用いられる前記スタイル画像データに対する評価を示す前記スタイル評価情報として取得する、コンピュータプログラム。
【請求項9】
請求項1に記載のコンピュータプログラムであって、
前記候補表示処理は、m個(Mは2以上の整数)の画像の中からm個未満の前記候補画像を決定し、決定済みのm個未満の前記候補画像を前記表示部に表示する処理であり、
2回目以降の前記候補表示処理は、
直前の評価取得処理にて取得される前記画像評価情報を用いて前記m個の画像のうちの少なくとも一部に対する評価値を算出し、
前記評価値に基づいて前記m個の画像の中からm個未満の前記候補画像を再度決定し、
決定済みのm個未満の前記候補画像を前記表示部に表示する処理である、コンピュータプログラム。
【請求項10】
請求項1に記載のコンピュータプログラムであって、
前記候補表示処理は、
ユーザの入力に依存しない特定の選別処理を実行することによって、M個(Mは3以上の整数)の画像の中からm個(mは2以上M未満の整数)の画像を選別し、
選別済みのm個の画像の中からm個未満の前記候補画像を決定し、
決定済みのm個未満の前記候補画像を前記表示部に表示する処理である、コンピュータプログラム。
【請求項11】
請求項10に記載のコンピュータプログラムであって、
前記特定の選別処理は、
画像データが入力される場合に前記画像データによって示される画像を評価した結果を示す評価データを出力するように訓練された機械学習モデルを用いて、前記M個の画像の前記評価データを取得し、
前記M個の画像の前記評価データに基づいて、前記m個の画像を選別する処理である、コンピュータプログラム。
【請求項12】
画像処理装置であって、
印刷すべき印刷画像を決定する印刷画像決定部と、
決定済みの前記印刷画像を示す印刷データを生成する印刷データ生成部と、
前記印刷データに従って印刷実行部に印刷を実行させる印刷制御部と、
を備え、
前記印刷画像決定部は、
前記印刷画像の候補である1以上の候補画像を表示部に表示する候補表示処理と、
前記表示部に表示される前記候補画像に対する評価を示す情報であってユーザの入力に基づく情報である画像評価情報を取得する評価取得処理と、
を複数回に亘って実行し、
2回目以降の前記候補表示処理は、前記画像評価情報に基づいて前記候補画像を決定し、決定済みの前記候補画像を前記表示部に表示する処理であり、
前記印刷画像決定部は、複数回に亘って実行される前記候補表示処理にて表示される複数個の前記候補画像の少なくとも一部と、複数回に亘って実行される前記評価取得処理にて取得される複数個の前記画像評価情報の少なくとも一部と、に基づいて、前記印刷画像を決定する、画像処理装置。

【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、印刷画像を決定し、該印刷画像を印刷実行部に印刷させるための技術に関する。
【背景技術】
【0002】
様々な製品を印刷媒体として印刷が行われている。例えば、特許文献1には、伸縮性のあるTシャツをフィルムで挟持した状態で、Tシャツに対して印刷を実行するインクジェットプリンタが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平11-138768号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、ユーザ自身が印刷画像を用意することは困難な場合もあるため、ユーザの入力に基づいて簡易にユーザの好みに合致した印刷画像を決定して印刷実行部に印刷させることが求められている。
【0005】
本明細書は、ユーザの入力に基づいて簡易にユーザの好みに合致した印刷画像を決定して印刷実行部に印刷させ得る新たな技術を開示する。
【課題を解決するための手段】
【0006】
本明細書に開示された技術は、以下の適用例として実現することが可能である。
【0007】
[適用例1]コンピュータプログラムであって、印刷すべき印刷画像を決定する印刷画像決定機能と、決定済みの前記印刷画像を示す印刷データを生成する印刷データ生成機能と、前記印刷データに従って印刷実行部に印刷を実行させる印刷制御機能と、をコンピュータに実現させ、前記印刷画像決定機能は、前記印刷画像の候補である1以上の候補画像を表示部に表示する候補表示処理と、前記表示部に表示される前記候補画像に対する評価を示す情報であってユーザの入力に基づく情報である画像評価情報を取得する評価取得処理と、を複数回に亘って実行し、2回目以降の前記候補表示処理は、前記画像評価情報に基づいて前記候補画像を決定し、決定済みの前記候補画像を前記表示部に表示する処理であり、前記印刷画像決定機能は、複数回に亘って実行される前記候補表示処理にて表示される複数個の前記候補画像の少なくとも一部と、複数回に亘って実行される前記評価取得処理にて取得される複数個の前記画像評価情報の少なくとも一部と、に基づいて、前記印刷画像を決定する、コンピュータプログラム。
【0008】
上記構成によれば、1以上の候補画像を表示する候補表示処理と、候補画像に対する評価を示す情報であってユーザの入力に基づく情報である画像評価情報を取得する評価取得処理と、が複数回に亘って実行されることで、ユーザの好みに合致した候補画像が表示され得る。そして、表示される複数個の候補画像の少なくとも一部と、取得される複数個の画像評価情報の少なくとも一部と、に基づいて、印刷画像が決定される。したがって、ユーザの入力に基づいて簡易にユーザの好みに合致した印刷画像を決定して印刷実行部に印刷させ得る。
【0009】
なお、本明細書に開示の技術は、種々の態様で実現することが可能であり、例えば、画像処理方法、画像処理装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体(例えば、一時的ではない記録媒体)、等の形態で実現することができる。
【図面の簡単な説明】
【0010】
図1】実施例の印刷システム1000の構成を示すブロック図。
図2】印刷システム1000の概略構成を示す斜視図。
図3】印刷処理のフローチャート。
図4】印刷処理に用いられるデータ等の一例を示す図。
図5】スタイル変換処理の説明図。
図6】自動レイアウト処理のフローチャート。
図7】自動レイアウト処理の説明図。
図8】デザイン選別処理の説明図。
図9】候補画像決定処理のフローチャート。
図10】レコメンドテーブルRTの一例を示す図。
図11】UI画面の一例を示す図。
図12】第1実施例のスタイル画像更新処理の説明図。
図13】第2実施例のスタイル画像更新処理のフローチャート。
図14】評価入力画面WI3の一例を示す図。
【発明を実施するための形態】
【0011】
A.第1実施例:
A-1:印刷システム1000の構成
次に、実施の形態を実施例に基づき説明する。図1は、実施例の印刷システム1000の構成を示すブロック図である。印刷システム1000は、プリンタ200と、本実施例の画像処理装置としての端末装置300と、撮像装置400と、を含んでいる。プリンタ200と端末装置300、および、撮像装置400と端末装置300とは、通信可能に接続されている。
【0012】
端末装置300は、プリンタ200のユーザが使用する計算機であり、例えば、パーソナルコンピュータやスマートフォンである。端末装置300は、端末装置300のコントローラとしてのCPU310と、ハードディスクドライブなどの不揮発性記憶装置320と、RAMなどの揮発性記憶装置330と、マウスやキーボードなどの操作部360と、液晶ディスプレイなどの表示部370と、通信部380と、を備えている。通信部380は、外部機器、例えば、プリンタ200や撮像装置400と通信可能に接続するための有線または無線のインタフェースを含む。
【0013】
揮発性記憶装置330は、CPU310が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域331を提供する。不揮発性記憶装置320には、コンピュータプログラムPG1とスタイル画像データ群SGとレコメンドテーブルRTとスタイル画像評価テーブルSTとが格納されている。コンピュータプログラムPG1は、例えば、サーバからダウンロードされる形態、あるいは、DVD-ROMなどに格納される形態で、プリンタ200の製造者によって提供される。CPU310は、コンピュータプログラムPG1を実行することによって、プリンタ200を制御するプリンタドライバとして機能する。プリンタドライバとしてのCPU310は、例えば、後述する印刷処理を実行する。スタイル画像データ群SGは、複数個のスタイル画像データを含んでいる。
【0014】
コンピュータプログラムPG1は、後述する画像生成モデルGNと画像識別モデルDN1、DN2をCPU310に実現させるコンピュータプログラムをモジュールとして含んでいる。スタイル画像データ群SGとレコメンドテーブルRTとスタイル画像評価テーブルSTは、後述する印刷処理において説明する。
【0015】
撮像装置400は、光学的に被写体を撮像することによって被写体を表す画像データ(撮像画像データとも呼ぶ)を生成するデジタルカメラである。撮像装置400は、端末装置300の制御に従って、撮像画像データを生成し、端末装置300に送信する。
【0016】
プリンタ200は、例えば、印刷機構100と、プリンタ200のコントローラとしてのCPU210と、ハードディスクドライブなどの不揮発性記憶装置220と、RAMなどの揮発性記憶装置230と、ユーザによる操作を取得するためのボタンやタッチパネルなどの操作部260と、液晶ディスプレイなどの表示部270と、通信部280と、を備えている。通信部280は、外部機器、例えば、端末装置300と通信可能に接続するための有線または無線のインタフェースを含む。
【0017】
揮発性記憶装置230は、CPU210が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域231を提供する。不揮発性記憶装置220には、コンピュータプログラムPG2が格納されている。コンピュータプログラムPG2は、本実施例では、プリンタ200を制御するための制御プログラムであり、プリンタ200の出荷時に不揮発性記憶装置220に格納されて提供され得る。これに代えて、コンピュータプログラムPG2は、サーバからダウンロードされる形態で提供されても良く、DVD-ROMなどに格納される形態で提供されてもよい。CPU210は、コンピュータプログラムPG2を実行することにより、例えば、後述する印刷処理によって端末装置300から送信される印刷データに従って印刷機構100を制御して印刷媒体に画像を印刷する。なお、本実施例のプリンタ200は、印刷媒体として布地が想定されており、例えば、Tシャツなどの衣服S(図2参照)上に画像を印刷することができる。
【0018】
印刷機構100は、C、M、Y、Kの各インク(液滴)を吐出して印刷を行うインクジェット方式の印刷機構である。印刷機構100は、印刷ヘッド110とヘッド駆動部120と主走査部130と搬送部140とを備えている。
【0019】
図2を参照して、さらに、説明する。図2は、印刷システム1000の概略構成を示す斜視図である。図2の+X方向、-X方向、+Y方向、-Y方向、+Z方向、-Z方向は、それぞれ、プリンタ200の左方、右方、前方、後方、上方、下方である。
【0020】
主走査部130は、筐体201の内部において、図示しない主走査モータの動力を用いて、印刷ヘッド110を搭載するキャリッジ(図示省略)を主走査方向(図2のX方向)に沿って往復動させる。これによって、衣服Sなどの印刷媒体に対して主走査方向(X方向)に沿って印刷ヘッド110を往復動させる主走査が実現される。
【0021】
搬送部140は、筐体201のX方向中央部に設けられたプラテン142およびトレイ144を備えている。板状のプラテン142の上面(+Z方向の面)は、衣服Sなどの印刷媒体を載置するための載置面である。プラテン142は、プラテン142の-Z方向に配置された板状のトレイ144に固定されている。トレイ144は、プラテン142より一回り大きい。プラテン142とトレイ144とによって、衣服Sなどの印刷媒体が保持される。プラテン142とトレイ144は、図示しない副走査モータの動力を用いて、主操作方向と交差する搬送方向(図2のY方向)に搬送される。これによって、衣服Sなどの印刷媒体を印刷ヘッド110に対して搬送方向に搬送する副走査が実現される。
【0022】
ヘッド駆動部120(図1)は、主走査部130が印刷ヘッド110の主走査を行っている最中に、印刷ヘッド110に駆動信号を供給して、印刷ヘッド110を駆動する。印刷ヘッド110は、図示しない複数個のノズルを備え、駆動信号に従って、搬送部140によって搬送される印刷媒体上にインクを吐出してドットを形成する。
【0023】
図2に示すように、撮像装置400は、図示しない支持具によって支持されて、プリンタ200の+Z方向に配置される。撮像装置400は、プリンタ200から離れた場所に位置し、プラテン142の上面に対向して設けられ、プラテン142の上面に載置された衣服Sなどの印刷媒体を撮影可能である。これによって、撮像装置400は、衣服Sなどの印刷媒体を含む画像を示す撮像画像データを生成することができる。
【0024】
印刷システム1000は、印刷媒体としての衣服Sの一部分である印刷領域に対して、所定の印刷画像(例えば、模様やロゴ)を印刷する。本実施例では、図2に示すように、衣服Sは、Tシャツであり、印刷領域は、Tシャツのうち、着用者の胸部に対応する領域である。印刷システム1000は、例えば、Tシャツを販売する店舗に設置されている。印刷システム1000は、例えば、店舗の店員によって管理されている。印刷システム1000は、後述するように、例えば、店舗の顧客や店員が端末装置300を操作することによって動作する。このように、印刷システム1000のユーザは、例えば、店舗の店員や顧客である。
【0025】
A-2.印刷処理
端末装置300のCPU310は、印刷処理を実行する。印刷処理は、プリンタ200を用いて、衣服Sに対して、印刷画像を印刷する処理である。図3は、印刷処理のフローチャートである。印刷処理は、例えば、印刷媒体である衣服Sがプラテン142上に載置され、プラテン142に載置された衣服Sを上方から撮像装置400にて撮影可能な状態で、ユーザ(例えば、店舗の顧客)が端末装置300に開始指示を入力した場合に開始される。
【0026】
S10では、CPU310は、コンテンツデータを取得して、メモリ(不揮発性記憶装置320または揮発性記憶装置330)に格納する。図4は、印刷処理に用いられるデータ等の一例を示す図である。図4(A)には、コンテンツデータの説明図が示されている。コンテンツデータは、コンテンツとしての画像CI(以下コンテンツ画像とも呼ぶ)を示すコンテンツ画像データと、コンテンツとしてのテキストCTを示すテキストデータと、を含んでいる。コンテンツ画像データは、例えば、デジタルカメラなどを用いて被写体を撮像することによって生成される撮像画像データであっても良いし、イラストなどのコンピュータグラフィックを示す画像データであっても良い。コンテンツ画像データは、複数個の画素を含む画像を示すビットマップデータであり、具体的には、RGB値によって画素ごとの色を表すRGB画像データである。なお、本実施例では、コンテンツデータは、1個の画像データと1個のテキストデータとを含む。変形例では、コンテンツデータは、複数個の画像データを含んでも良いし、複数個のテキストデータを含んでも良い。
【0027】
コンテンツデータは、ユーザによって準備される。例えば、店舗の顧客がユーザである場合には、例えば、顧客は、自身のスマートフォンにコンテンツデータを格納して来店する。顧客は、スマートフォンを無線または有線の通信インタフェースを介して端末装置300に接続する。CPU310は、顧客のスマードフォンから、顧客によって指定されたコンテンツデータを取得する。
【0028】
S15では、CPU310は、印刷媒体情報(図4(B))を取得する。印刷媒体情報は、印刷媒体としての衣服Sに関する情報であり、例えば、布地の材質MTや布地の地色BCや印刷領域PAを示す情報である。印刷領域PAは、例えば、衣服Sの胸部に対応する部分である。CPU310は、例えば、表示部370に図示しないユーザインタフェース(UI)画面を表示し、該UI画面を介してユーザによって入力される印刷媒体情報を取得する。例えば、印刷領域PAを示す情報は、撮像装置400によって撮影された衣服Sの画像を含むUI画面において、ユーザが矩形の印刷領域PA(図4(B))を指定することによって取得される。
【0029】
S20では、CPU310は、スタイル画像選択処理を実行する。スタイル画像選択処理は、スタイル画像データ群SGに含まれる複数個のスタイル画像データの中から1以上の使用すべきスタイル画像データを選択する処理である。図4(C)には、スタイル画像データによって示されるスタイル画像SIの一例として、スタイル画像SI1~SI4が示されている。複数個のスタイル画像SIは、互いに異なる様々なスタイル(画風とも呼ぶ)にて表現された画像である。例えば、複数個のスタイル画像SIは、イラスト風、水墨画風、アニメ風、ピカソやゴッホなどの著名な画家の画風にて表現された画像を含む。
【0030】
CPU310は、図示しないUI画面に複数個のスタイル画像SIを表示し、ユーザから1以上のスタイル画像SIを選択する選択指示の入力を受け付ける。CPU310は、ユーザの選択指示に従って、使用すべきスタイル画像SIを示すスタイル画像データを選択する。本実施例では、スタイル画像データは、コンテンツ画像データと同様に、RGB画像データである。
【0031】
S20では、CPU310は、スタイル変換処理を実行する。図5は、スタイル変換処理の説明図である。スタイル変換処理は、画像生成モデルGNを用いて実行される。画像生成モデルGNは、図5(B)に示す構成を有している。画像生成モデルGNは、スタイル変換を行う機械学習モデルである。本実施例の画像生成モデルGNは、論文「Xun Huang and Serge Belongie. Arbitrary style transfer in real-time with adaptive instance normalization. In ICCV, 2017.」に開示されている機械学習モデルである。
【0032】
画像生成モデルGNには、コンテンツ画像データCDとスタイル画像データSDとから成るデータペアが入力される。コンテンツ画像データCDは、上述したコンテンツ画像CIを示す画像データである。スタイル画像データSDは、上述したスタイル画像SIを示す画像データである。
【0033】
画像生成モデルGNは、データペアが入力されると、データペアに対して複数個のパラメータを用いた演算を実行して、変換済画像データTDを生成し、出力する。変換済画像データTDは、コンテンツ画像CIに対してスタイル画像SIのスタイルを適用して得られる変換済画像TIを示す画像データである。例えば、変換済画像TIは、コンテンツ画像CIのオブジェクトの形状を維持しつつ、スタイル画像SIのスタイル(画風)を有する画像である。変換済画像データTDは、コンテンツ画像データCDやスタイル画像データSDと同様のビットマップデータであり、本実施例では、RGB画像データである。
【0034】
図5(B)に示すように、画像生成モデルGNは、エンコーダECと、特徴結合部CCと、デコーダDCと、を含んでいる。
【0035】
エンコーダECには、コンテンツ画像データCDやスタイル画像データSDが入力される。エンコーダECは、入力された画像データに対して、次元削減処理を実行して、入力された画像データの特徴を示す特徴データを生成する。エンコーダECは、例えば、畳込処理(convolution)を行う畳込層を含む複数の層を有するニューラルネットワーク(Convolutional Neural Network)である。本実施例では、エンコーダECには、VGG19と呼ばれるニューラルネットワークのうちの入力層からRElu4_1層までの部分が用いられる。VGG19は、ImageNetと呼ばれる画像データベースに登録された画像データを用いて訓練された訓練済みのニューラルネットワークであり、その訓練済みの演算パラメータは一般公開されている。本実施例では、エンコーダECの演算パラメータには、公開された訓練済みの演算パラメータが用いられる。
【0036】
特徴結合部CCは、上記論文に開示された「AdaIN layer」である。特徴結合部CCは、コンテンツ画像データCDをエンコーダECに入力して得られる特徴データf(c)と、スタイル画像データSDをエンコーダECに入力して得られる特徴データf(s)と、を用いて、変換特徴データtを生成する。
【0037】
デコーダDCには、変換特徴データtが入力される。デコーダDCは、変換特徴データtに対して、複数個の演算パラメータを用いて、エンコーダECとは逆の次元復元処理を実行して、上述した変換済画像データTDを生成する。デコーダDCは、転置畳込処理(transposed convolution)を行う転置畳込層を含む複数の層を有するニューラルネットワークである。
【0038】
デコーダDCの複数個の演算パラメータは、以下の訓練によって調整される。訓練用のコンテンツ画像データCDとスタイル画像データSDからなるデータペアが、所定数(例えば、数万個)分だけ準備される。これらのデータペアから選択される所定のバッチサイズ分のデータペアを用いて1回の調整処理が実行される。
【0039】
1回の調整処理では、バッチサイズ分のデータペアを用いて算出される損失関数Lが小さくなるように、所定のアルゴリズムに従って複数個の演算パラメータが調整される。所定のアルゴリズムには、例えば、誤差逆伝播法と勾配降下法とを用いたアルゴリズム(本実施例では、adam)が用いられる。
【0040】
損失関数Lは、コンテンツ損失Lcと、スタイル損失Lsと、重みλを用いて、以下の式(1)で示される。
L=Lc+λLs …(1)
【0041】
コンテンツ損失Lcは、本実施例では、変換済画像データTDの特徴データf(g(t))と、変換特徴データtと、の間の損失(誤差とも呼ぶ)である。変換済画像データTDの特徴データf(g(t))は、用いるべきデータペアを画像生成モデルGNに入力して得られる変換済画像データTDを、さらに、エンコーダECに入力することによって算出される。変換特徴データtは、上述したように、用いるべきデータペアをエンコーダECに入力して得られる特徴データf(c)、f(s)を特徴結合部CCに入力することによって算出される。
【0042】
スタイル損失Lcは、変換済画像データTDをエンコーダECに入力した場合にエンコーダECの複数個の層からそれぞれ出力されるデータ群と、スタイル画像データSDをエンコーダECに入力した場合にエンコーダECの複数個の層からそれぞれ出力されるデータ群と、の間の損失である。
【0043】
以上のような調整処理を複数回に亘って繰り返される。これによって、コンテンツ画像データCDとスタイル画像データSDとが入力される場合に、コンテンツ画像に対してスタイル画像のスタイルを適用して得られる変換済画像を示す変換済画像データTDが出力できるように、画像生成モデルGNが訓練される。
【0044】
図3のS25のスタイル変換処理は、事前に訓練済みの画像生成モデルGNを用いて実行される。具体的には、CPU310は、S20にて選択された複数個のスタイル画像データSDのそれぞれを、S10にて取得済みのコンテンツ画像データCDとペアにして、画像生成モデルGNに入力することによって、変換済画像TIを示す変換済画像データを生成する。図5(A)には、変換済画像TIの一例として、変換済画像TI1~TI4が図示されている。図5(A)の変換済画像TI1~TI4は、図4(C)のスタイル画像SI1~SI4(図4(C))と一対一で対応している。スタイル画像SIと対応する変換済画像TIは、該スタイル画像SIを示すスタイル画像データSDとコンテンツ画像データCDとのペアを、画像生成モデルGNすることによって生成される変換済画像データTDによって示される画像である。例えば、S20にて、L個(Lは1以上の整数)のスタイル画像SIが選択された場合には、L個の変換済画像データが生成される。
【0045】
スタイル変換処理後の図3のS30では、CPU310は、自動レイアウト処理を実行する。自動レイアウト処理は、生成済み変換済画像データと、テキストCTを示すテキストデータと、を用いて、M個のデザイン画像データを生成する処理である。生成されるデザイン画像データの個数Mは、3以上の整数であり、例えば、数百~数万である。
【0046】
図6は、自動レイアウト処理のフローチャートである。図7は、自動レイアウト処理の説明図である。図6のS105では、CPU310は、印刷すべき印刷画像のサイズを決定する。印刷画像のサイズ(縦方向および横方向の画素数)は、印刷領域PA(図4(B))に応じたサイズに決定される。
【0047】
S110では、複数個の文字の表現情報に従って複数個のテキスト画像データを生成する。文字の表現情報は、文字を表現するための表現条件を規定する情報であり、例えば、フォント、文字色、背景色、文字のサイズを示す情報を含む。例えば、フォントは、k1種類の予め定められたフォントである。文字色は、k2種類の予め定められた色である。背景色は、k3種類の予め定められた色である。文字のサイズは、k4種類の予め定められたサイズである。k1、k2、k3、k4は、例えば、3~数十個である。本実施例では、これらの条件を組み合わせて得られるK個(K=k1×k2×k3×k4)の互いに異なる表現条件にて、K個の互いに異なるテキスト画像データが生成される。生成されるテキスト画像データの個数Kは、例えば、数百~数千である。図7(A)には、テキストCT(図4(A))を示すテキストデータから生成されるテキスト画像データによって示されるテキスト画像XIの例として、テキスト画像XI1~XI3が示されている。テキスト画像XI1~XI3は、テキストCTが様々な表現条件(フォント、文字色など)にて表現された画像である。
【0048】
S115では、CPU310は、各変換済画像TIを複数のサイズに調整してトリミングを実行する。これによって、サイズ調整後の変換済画像TAIを示す調整済画像データが生成される。具体的には、CPU310は、複数個の拡大率で1つの変換済画像TIを拡大する拡大処理を実行して、複数個の拡大済み画像を生成する。CPU310は、印刷領域PAに応じて設定されるサイズに拡大済み画像をトリミングすることによって、サイズ調整後の変換済画像TAIを示す調整済画像データを生成する。複数個の拡大率は、印刷領域PAに応じて設定されるサイズを1とすると、例えば、1、1.2、1.3、1.5などのQ個の値に設定される。この場合には、1つの変換済画像データからQ個の互いに異なる調整済画像データが生成されるため、L個の変換済画像データから(L×Q)個の互いに異なる調整済画像データが生成される。図7(B)には、サイズ調整後の変換済画像TAIの一例として、変換済画像TI1を用いて生成される複数個のサイズ調整後の変換済画像TAI1~TAI3が示されている。サイズ調整後の変換済画像TAI1~TAI3は、コンテンツ画像CIが様々な表現条件(スタイル、サイズなど)にて表現された画像である。
【0049】
S120では、CPU310は、各要素画像(K個のテキスト画像XIと(L×Q)個のサイズ調整後の変換済画像TAI)を複数個のレイアウト情報LTに従って配置する。これによって、M個のデザイン画像データが生成される。図4(D)には、レイアウト情報LTの一例として、レイアウト情報LT1~LT3が示されている。レイアウト情報LTは、複数個のコンテンツのレイアウトを規定する情報である。例えば、レイアウト情報LTは、印刷領域PA内において、テキスト画像XIが配置される文字領域TAと、サイズ調整後の変換済画像TAIが配置される画像領域IAと、を規定する情報である。1つのレイアウト情報LTに従って、K個のテキスト画像XIのうちの1つと、(L×Q)個のサイズ調整後の変換済画像TAIのうちの1つと、を配置する全ての組み合わせについて、デザイン画像データが生成される。このために、1つのレイアウト情報LTについて、(K×L×Q)個のデザイン画像データが生成される。したがって、使用されるレイアウト情報LTの個数をP(Pは1以上の整数、例えば、3~数10)とすると、合計で(P×K×L×Q)個のデザイン画像データが生成される(M=P×K×L×Q)。図7(C)には、デザイン画像データによって示されるデザイン画像DIの一例として、テキスト画像XI1(図7(A))と、サイズ調整後の変換済画像TAI(図7(B))と、を用いて生成されるデザイン画像DI1~DI3が示されている。
【0050】
自動レイアウト処理後の図3のS35では、CPU310は、デザイン選別処理を実行する。デザイン選別処理は、画像識別モデルDN1を用いて、生成済みのM個のデザイン画像データの中から、印刷画像の候補として適切なM個未満のデザイン画像データを決定する処理である。図8は、デザイン選別処理の説明図である。
【0051】
図8(B)には、画像識別モデルDN1、DN2の概略構成が示されている。画像識別モデルDN1と、詳細は後述する画像識別モデルDN2と、は同様の構成を有している。本実施例の画像識別モデルDN1、DN2には、ResNet18と呼ばれる公知のモデルが用いられている。このモデルは、例えば、論文「K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in ICML, 2016.」に開示されている。
【0052】
画像識別モデルDN1は、エンコーダECaと、全結合層FCと、を含む。エンコーダECには、デザイン画像データDDが入力される。エンコーダECは、デザイン画像データDDに対して次元削減処理を実行して、デザイン画像データDDによって示されるデザイン画像DI(図7(C))の特徴を示す特徴データを生成する。
【0053】
エンコーダECは、図示しない複数のレイヤを備えている。各レイヤは、複数個の畳込層を含むCNN(Convolutional Neural Network)である。各畳込層は、所定サイズのフィルタを用いて畳込処理(convolution)を実行して特徴データを生成する。各畳込処理の算出値は、バイアスが加算されたうえで、所定の活性化関数に入力されて変換される。各畳込層から出力される特徴マップは次の処理層(次の畳込層やレイヤ)に入力される。活性化関数には、いわゆるReLU(Rectified Linear Unit)等の公知の関数が用いられる。畳込処理に用いられるフィルタの重みおよびバイアスとは、後述する訓練によって調整される演算パラメータである。
【0054】
全結合層FCは、エンコーダECから出力される特徴データの次元数を削減して、画像評価データOD1を生成する。全結合層FCの演算に用いられる重みおよびバイアスは、後述する訓練によって調整される演算パラメータである。画像評価データOD1は、例えば、デザイン画像DIのデザインを複数段階の評価(例えば、高評価、中評価、低評価の3段階)に分類した結果を示す。
【0055】
画像識別モデルDN1は、複数個の訓練用のデザイン画像データと、これらの訓練用のデザイン画像データに対応する教師データと、を用いて、事前に訓練された訓練済みのモデルである。訓練用のデザイン画像データは、例えば、訓練用に準備されたコンテンツデータを用いて、図3のS15~S30の処理を実行して得られる多数の画像データである。教師データは、訓練用のデザイン画像データによって示されるデザイン画像の評価を示すデータである。例えば、評価者(例えば、デザインの専門家)が、訓練用のデザイン画像に対する評価を決定し、該評価を示す教師データが作成される。画像識別モデルDN1は、訓練用のデザイン画像データが入力される場合に、対応する教師データと同様の評価結果を示す画像評価データOD1を出力するように、訓練される。画像識別モデルDN1の訓練は、画像評価データOD1と教師データとの差を示す公知の損失関数と、公知のアルゴリズム(例えば、誤差逆伝播法と勾配降下法とを用いたアルゴリズム)と、を用いて実行される。
【0056】
図8(A)には、デザイン選別処理のフローチャートが図示されている。S205では、CPU310は、M個のデザイン画像データのそれぞれを画像識別モデルDN1に入力して、M個の画像評価データOD1を取得する。
【0057】
S210では、CPU310は、画像評価データOD1に基づいて、M個のデザイン画像データのうち、低評価であるデザイン画像データをメモリから削除する。これによって、m個のデザイン画像データがメモリに格納された状態になるものとする(M>m)。上述のように、デザイン画像データは、様々な表現条件(画像のスタイルやサイズ、文字のフォントや色、レイアウト情報)を総当たりで組み合わせて生成される。このために、M個のデザイン画像DIには、デザインとして採用され難い不適切な画像が含まれ得る。不適切な画像は、例えば、テキスト画像XIが重ねられることで変換済画像TAI1の主要な部分が隠れている画像や、互いに重なり合うテキスト画像XIと変換済画像TAIの色とが同一でテキスト画像XIの文字が読めない画像など、デザインとして明らかに問題がある画像を含む。デザイン選別処理によって、M個のデザイン画像データから、このような不適切な画像を示す画像データが除かれる。デザイン選別処理によって、デザイン画像データの個数は、M個からm個に減少するものとする(M>m)。デザイン選別処理は、ユーザの入力に依存せず、画像識別モデルDN1を用いて、M個のデザイン画像DIから、候補画像として決定される可能性のあるm個のデザイン画像DIを選別する処理である。
【0058】
デザイン選別処理後の図3のS40では、CPU310は、候補画像決定処理を実行する。候補画像決定処理は、m個のデザイン画像DIの中から、N個の候補画像を決定する処理である。決定される候補画像の個数Nは、例えば、3~20程度である。
【0059】
図9は、候補画像決定処理のフローチャートである。S300では、CPU310は、実行中の候補画像決定処理が初回の候補画像決定処理であるか否かを判断する。実行中の候補画像決定処理が初回の候補画像決定処理である場合には(S300:YES)、CPU310は、S305にて、レコメンドテーブルRT(図1)に、各デザイン画像DIの特徴ベクトルを記録する。
【0060】
図10は、レコメンドテーブルRTの一例を示す図である。図10のレコメンドテーブルRTには、1つのデザイン画像DI(デザイン画像データ)ごとに、1行分のデータが記録される。1行分のデータは、デザイン画像DIを識別する画像IDと、該画像IDによって識別されるデザイン画像DIの特徴を示す特徴ベクトルと、を含む。特徴ベクトルの要素は、図10に示すように、表現情報と、デザイン評価情報と、類似度の合計と、を含む。
【0061】
表現情報は、例えば、テキストCTの表現条件(例えば、フォント、文字色、背景色)やコンテンツ画像CIの表現条件(例えば、サイズや、使用したスタイル画像)を示す情報である。表現情報は、これらの表現条件を示す値を要素とするベクトルである。図10では、理解を容易とするために、フォント、文字色、背景色の各要素の値として、FONT_A、FONT_B、blue、red、greenが用いられている。実際の各要素の値には、これらのフォントや色に予め割り当てられた数値、例えば、FONT_A=1、FONT_B=2のように、1以上の整数値が用いられている。
【0062】
デザイン評価情報は、複数個の評価項目の値を要素とするベクトルである。複数個の評価項目は、例えば、「COOL」、「CUTE」などのように、デザインから受ける印象を示す項目を含む。また、複数個の評価項目は、印刷時の仕上がりや見栄えに関する項目、例えば、衣服Sに印刷した場合に滲みなどが目立ちやすいか否かを示す項目を含む。各評価項目の値は、例えば、0~1の範囲の数値であり、数値が大きいほど高い評価を示す。デザイン評価情報は、本実施例では、画像識別モデルDN2を用いて生成される。
【0063】
画像識別モデルDN2は、上述した画像識別モデルDN1と同じ構成を備えている(図8(B))。ただし、画像識別モデルDN2の全結合層FCは、上述したデザイン評価情報を示す画像評価データOD2を出力するように構成されている。画像識別モデルDN2は、複数個の訓練用のデザイン画像データと、これらの訓練用のデザイン画像データに対応する教師データと、を用いて、事前に訓練された訓練済みのモデルである。訓練用のデザイン画像データは、例えば、訓練用に準備されたコンテンツデータを用いて、図3のS15~S30の処理を実行して得られる多数の画像データである。教師データは、訓練用のデザイン画像データによって示されるデザイン画像の評価を示すデータである。例えば、評価者(例えば、デザインの専門家)が、訓練用のデザイン画像に対する上述の複数個の評価項目(例えば、「COOL」、「CUTE」)について評価を決定し、該評価を示す教師データが作成される。画像識別モデルDN2は、訓練用のデザイン画像データが入力される場合に、対応する教師データと同様の評価結果を示す画像評価データOD2を出力するように、訓練される。画像識別モデルDN2の訓練は、画像評価データOD2と教師データとの差を示す公知の損失関数と、公知のアルゴリズム(例えば、誤差逆伝播法と勾配降下法とを用いたアルゴリズム)と、を用いて実行される。
【0064】
CPU310は、図3のS20~S30にて各デザイン画像データを生成する際に用いられたテキストCTやコンテンツ画像CIの表現条件を示す表現情報をベクトルとして生成して、デザイン画像データごとに該ベクトルをレコメンドテーブルRTに記録する。CPU310は、各デザイン画像データを画像識別モデルDN2に入力して、デザイン評価情報としてのベクトルを示す画像評価データOD2を取得し、デザイン画像データごとに該ベクトルをレコメンドテーブルRTに記録する。CPU310は、特徴ベクトルの最後の要素である類似度の合計を、初期値である0に設定する。この結果、レコメンドテーブルRTには、m個のデザイン画像データのそれぞれの特徴ベクトルが、画像IDと対応付けて記録される。
【0065】
S310では、CPU310は、m個のデザイン画像DI(デザイン画像データ)の中から所定数Nのデザイン画像をランダムに選択し、該デザイン画像を候補画像として決定して、候補画像決定処理を終了する。なお、変形例では、m個のデザイン画像DIのうち、デザイン評価が高い所定個数m2のデザイン画像の中からN個の候補画像が決定されても良い。デザイン評価を示す値には、例えば、デザイン評価情報としてのベクトルの長さが用いられる。
【0066】
実行中の候補画像決定処理が2回目以降の候補画像決定処理である場合には(S300:NO)、CPU310は、S315にて、m個のデザイン画像DIの中から、特徴ベクトルに含まれる上述した類似度の合計が大きい順にN個の候補画像を決定して、候補画像決定処理を終了する。2回目以降の候補画像決定処理が実行される時点では、各デザイン画像DIの類似度の合計は、後述するS51~S53において、ユーザによる選択画像に基づいて、初期値(0)とは異なる値に変更されている。ユーザによる選択画像は、後述するように、N個の候補画像の中からユーザによって選択された画像である。
【0067】
候補画像決定処理後の図3のS45では、CPU310は、直前の候補画像決定処理にて決定済みのN個の候補画像を含む選択画面WI1を表示部370に表示する。図11は、UI画面の一例を示す図である。図11(A)には、選択画面WI1の一例が示されている。選択画面WI1は、候補画像としてのN個(図11(A)の例では6個)のデザイン画像DIa~DIfを含む。選択画面WI1は、さらに、表示された候補画像(デザイン画像DIa~DIf)の中から好みの画像を選択することをユーザに促すメッセージMS1と、OKボタンBTと、選択枠SFと、を含む。
【0068】
S50では、CPU310は、ユーザによる好みの候補画像の選択指示を取得する。例えば、ユーザは、選択枠SFを操作して1つのデザイン画像を選択して、OKボタンBTを押下する。OKボタンBTが押下されると、CPU310は、その時点で選択枠SFにて選択されている候補画像を選択する選択指示を取得する。該選択指示によって選択された候補画像を、ユーザによる選択画像とも呼ぶ。
【0069】
S51では、CPU310は、ユーザによる選択画像と、m個のデザイン画像DIのそれぞれと、の類似度を算出する。本実施例では、類似度は、レコメンドテーブルRTに記録されたデザイン画像DIの特徴ベクトル(図10)を用いて算出される。具体的には、2個の画像の類似度には、一の画像の特徴ベクトルVaと他の画像の特徴ベクトルVbとのコサイン類似度cosθが用いられる。コサイン類似度cosθは、2つの特徴ベクトルが類似する度合を示す値であり、2つの特徴ベクトルの内積(Va・Vb)を、2つのベクトルの長さ(L2ノルム)の積(|Va||Vb|)で除して得られる値である。
【0070】
S52では、CPU310は、算出した類似度を各デザイン画像の類似度の合計に加算する。具体的には、CPU310は、レコメンドテーブルRTに記録されたm個のデザイン画像DIのうち、ユーザによる選択画像を除いた(m-1)個のデザイン画像DIのそれぞれの類似度の合計に、S51にて算出された各デザイン画像DIの類似度を加算する。これによって、レコメンドテーブルRTに記録された各デザイン画像DIの類似度の合計が更新される。
【0071】
S53では、CPU310は、ユーザによる選択画像の類似度の合計に、1を加算する。具体的には、CPU310は、レコメンドテーブルRTに記録されたm個のデザイン画像DIのうち、ユーザによる選択画像の類似度の合計に、コサイン類似度cosθの最大値である「1」が加算される。このように、特徴ベクトルの一要素である類似度の合計が更新されることによって、次回以降の候補画像の決定に、今回の選択画像との類似度が反映される。
【0072】
S55では、CPU310は、S40~S50の処理の繰り返し回数が閾値THn以上であるか否かを判断する。閾値THnは、例えば、5~数十回程度の値である。繰り返し回数が閾値THn未満である場合には(S55:NO)、CPU310は、S40に処理を戻す。繰り返し回数が閾値THn以上である場合には(S55:YES)、CPU310は、S57に処理を進める。
【0073】
S57では、CPU310は、最終決定指示の入力画面WI2を表示する。図11(B)には、入力画面WI2の一例が示されている。入力画面WI2は、直前のS50にて取得された選択指示によって選択された選択画像DIxを含む。入力画面WI2は、さらに、選択画像DIxを最終的に印刷すべき印刷画像として承認するか否かの判断を促すメッセージMS2と、承認ボタンBTyと、不承認ボタンBTnと、を含む。
【0074】
S60では、CPU310は、最終決定指示が取得されたか否かを判断する。ユーザは、入力画面WI2に含まれる選択画像DIxを最終的な印刷画像とする場合には、承認ボタンBTyを押下し、選択画像DIxを最終的な印刷画像としない場合には、不承認ボタンBTnを押下する。CPU310は、承認ボタンBTyが押下された場合には、最終決定指示が取得されたと判断し、不承認ボタンBTnが押下された場合には、印刷画像の選択の継続指示が取得されたと判断する。印刷画像の選択の継続指示が取得された場合には(S60:NO)、CPU310は、S40に処理を戻す。最終決定指示が取得された場合には(S60:YES)、CPU310は、S70に処理を進める。
【0075】
S70では、CPU310は、最終決定指示によって決定された印刷画像(例えば、図11(B)のデザイン画像DIx)を印刷するための印刷データを生成する。具体的には、CPU310は、最終的に印刷画像として決定されたデザイン画像DIを示すデザイン画像データに対して所定の生成処理を実行して、印刷データを生成する。生成処理は、例えば、画質調整処理と、色変換処理と、ハーフトーン処理と、を含む。
【0076】
画質調整処理は、例えば、衣服Sに印刷される印刷画像の見栄えを向上するための処理である。例えば、衣服Sに印刷される印刷画像には、滲みが生じやすいため、画質調整処理は、滲みに起因する画質の低下を抑制する処理、例えば、テキストの周囲に所定の色(例えば、白)の領域を設ける処理を含む。また、画質調整処理は、印刷画像の解像度を高くする処理、例えば、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)を含む機械学習モデルを用いて画像を高解像度化する処理を含む。
【0077】
色変換処理は、RGB画像データを、印刷に用いられる複数個の色材に対応する複数個の成分値を含む色値によって画素ごとの色を表す画像データに変換する処理である。本実施例では、画質調整処理済みのデザイン画像データの各画素のRGB値は、C(シアン)、M(マゼンタ)、Y(イエロ)、K(ブラック)の4個の成分値を含むCMYK値に変換される。色変換処理は、不揮発性記憶装置320に予め格納された色変換プロファイル(図示省略)を参照して実行される。ハーフトーン処理は、色変換処理後のデザイン画像データを、ドットの形成状態を画素ごと、かつ、色材ごとに表す印刷データ(ドットデータとも呼ぶ)に変換する処理である。ハーフトーン処理は、誤差拡散法やディザ法などの公知のアルゴリズムに従って実行される。
【0078】
S75では、CPU310は、生成された印刷データをプリンタ200に送信する。プリンタ200が印刷データを受信すると、プリンタ200のCPU210は、印刷データに従って、印刷機構100を制御して、衣服Sに印刷画像を印刷する。
【0079】
S80では、CPU310は、スタイル画像更新処理を実行して、印刷処理を終了する。図12は、スタイル画像更新処理の説明図である。スタイル画像更新処理は、スタイル画像データ群SGに含まれる複数個のスタイル画像データの一部を、スタイル画像データに対する評価に基づいて、入れ替える処理である。図12(A)は、スタイル画像変更処理のフローチャートである。
【0080】
S402では、CPU310は、スタイル画像評価テーブルST(図1)を更新する。図12(B)には、スタイル画像評価テーブルSTの一例が示されている。スタイル画像評価テーブルSTには、スタイル画像データ群SGに含まれる複数個のスタイル画像データのそれぞれの評価値が、スタイル画像データを識別する画像IDと対応付けて記録されている。
【0081】
本実施例では、スタイル画像データの評価値の初期値は、0である。本実施例では、スタイル画像データの評価値は、ユーザによるスタイル画像SIの選択結果と、ユーザによる候補画像の選択結果と、に基づいて更新される。例えば、図3のS20のスタイル画像選択処理において、ユーザによって選択されたスタイル画像SIの評価値には、1ポイントが加算される。また、図3のS50にてユーザによって選択された候補画像(デザイン画像DI)の作成に使用されたスタイル画像SIの評価値には、1ポイントが加算される。図3のS57、S60にてユーザによって最終的な印刷画像として決定されたデザイン画像DIの作成に使用されたスタイル画像SIの評価値には、2ポイントが加算される。この評価方法は、一例であり、適宜に変更され得る。例えば、ユーザによって最終的な印刷画像として決定されたデザイン画像DIの作成に使用されたスタイル画像SIだけが、評価値の加算対象とされても良いし、S50にてユーザによって選択された候補画像(デザイン画像DI)の作成に使用されたスタイル画像SIだけが評価値の加算対象とされても良い。
【0082】
S405では、CPU310は、前回のスタイル画像データの更新後の印刷枚数は閾値THc以上であるか否かを判断する。印刷枚数の閾値THcは、例えば、数十~数百枚である。前回のスタイル画像データの更新後の印刷枚数が閾値THc未満である場合には(S405:NO)、CPU310は、スタイル画像データの更新を行うことなく、処理を終了する。前回のスタイル画像データの更新後の印刷枚数が閾値THc以上である場合には(S405:YES)、CPU310は、S410に処理を進める。
【0083】
S410では、CPU310は、スタイル画像評価テーブルSTを参照して低評価のスタイル画像SIがあるか否かを判断する。例えば、評価値が閾値THs未満であるスタイル画像SIは、低評価のスタイル画像であると判断される。低評価のスタイル画像SIがない場合には(S410:NO)、CPU310は、スタイル画像データの更新を行うことなく、処理を終了する。低評価のスタイル画像SIがある場合には(S410:YES)、CPU310は、S415、S420を実行して、スタイル画像データの更新を行う。
【0084】
S415では、CPU310は、スタイル画像データ群SGに含まれる複数個のスタイル画像データのうち、低評価のスタイル画像データを削除する。S420では、CPU310は、高評価のスタイル画像データを合成して新たなスタイル画像データを生成する。例えば、CPU310は、残りのスタイル画像データのうち、評価値が閾値THh以上であるスタイル画像SIを示すスタイル画像データの中から、2個のスタイル画像データをランダムに選択する。CPU310は、2個のスタイル画像データを合成して新たなスタイル画像データを生成する。スタイル画像データの合成は、例えば、一方のスタイル画像の各画素の値V1と、他方のスタイル画像の同座標の画素の値V1と、の平均値(V1+V2)/2を、新たなスタイル画像の同座標の画素の値とすることによって実行される。図12(C)には、図4(C)のスタイル画像SI1とスタイル画像SI2とを合成することによって得られる新たなスタイル画像SI12が図示されている。CPU310は、S415にて削除されたスタイル画像データの個数と同数の新たなスタイル画像データを生成する。新たなスタイル画像データは、不揮発性記憶装置320に格納される。スタイル画像更新処理が終了されると、図3の印刷処理は終了される。
【0085】
以上説明した本実施例によれば、CPU310は、印刷すべき印刷画像を決定し(図3のS10~S60)、決定済みの印刷画像を示す印刷データを生成し(図3のS70)、該印刷データに従って印刷実行部としてのプリンタ200に印刷を実行させる(図3のS75)。印刷画像を決定する際には、CPU310は、印刷画像の候補である候補画像(図11(A)のデザイン画像DIa~DIf)を表示部370に表示する(図3のS45、図11(A))。CPU310は、表示部370に表示されたN個の候補画像の中から好みの画像を選択する選択指示を取得する(図3のS50)。この選択指示は、選択された候補画像に対するユーザの評価が他の候補画像に対するユーザの評価よりも高いことを示しているので、この選択指示は、表示部370に表示される候補画像に対する評価を示す情報であってユーザの入力に基づく情報である、と言うことができる。CPU310は、このような候補画像の表示と、選択指示の取得と、を複数回に亘って実行する(図3のS55)。2回目以降の候補画像の表示の際には、CPU310は、選択指示に基づいて表示すべき候補画像を決定し(図3のS40、S51~S53、図9のS315)、決定済みの候補画像を表示部370に表示する(図3のS45)。CPU310は、表示部370に表示される候補画像と、取得される選択指示と、に基づいて、印刷画像を決定する。具体的には、最後に表示部370に表示されるN個の候補画像の中から、ユーザの選択指示によって選択された画像が、印刷画像として決定される(図3のS50、S55~S60)。この構成によれば、候補画像の表示と選択指示の取得とが複数回に亘って実行されることで、ユーザの好みに合致した候補画像が表示され得る。そして、表示される複数個の候補画像と、取得される選択指示と、に基づいて、印刷画像が決定される。したがって、ユーザの入力に基づいて簡易にユーザの好みに合致した印刷画像を決定してプリンタ200に印刷させ得る。例えば、ユーザ(例えば、店員や顧客)自身が、印刷画像をデザインして作成する場合には、ユーザにデザインに関する比較的高い知識やスキルが要求される。例えば、予め用意されたテンプレートを利用することによって、ユーザの負担は軽減され得るが、ユーザには、ある程度の知識やスキルが要求される。本実施例によれば、ユーザは、予め文字や画像などのコンテンツデータを用意すれば、該コンテンツデータを用いて実現される候補画像(デザイン画像DI)の中から好みの画像を選択することを繰り返すだけで、好みの印刷画像の印刷を実現できる。
【0086】
さらに、上記実施例によれば、CPU310は、1以上のコンテンツデータを取得し(図3のS10)、コンテンツの表現を規定する複数個の表現情報(例えば、文字のフォント、文字色、スタイル画像データ、画像のサイズ、レイアウトパターン)と、コンテンツデータと、を用いて、コンテンツが表現された複数個のデザイン画像DIを示す複数個のデザイン画像データを生成する(図3のS25、S30、図6のS110~S120)。CPU310は、複数個のデザイン画像データの少なくとも1つを用いて、候補画像を表示部370に表示する。この結果、コンテンツデータと複数個の表現情報とを用いて、コンテンツを様々な態様で表現したデザイン画像DIを候補画像として表示部370に表示できる。
【0087】
さらに、上記実施例によれば、コンテンツデータは、コンテンツ画像CIを示すコンテンツ画像データと、テキストCTを示すテキストデータと、を含む。この結果、テキストCTと、写真やCGなどのコンテンツ画像CIと、を組み合わせた多様なデザイン画像DIを候補画像として表示部370に表示できる。
【0088】
さらに、上記実施例によれば、CPU310は、コンテンツ画像CIが表現されたサイズ調整後の変換済画像TAI(図7(B))と、テキストCTが表現されたテキスト画像XI(図7(A))とが、レイアウト情報によって規定されるレイアウトに従って配置されるデザイン画像DI(図7(C))を示すデザイン画像データを生成する。この結果、複数個のコンテンツ(本実施例では、文字と画像)が様々なレイアウトで配置されたデザイン画像DIを候補画像として表示部370に表示できる。
【0089】
さらに、上記実施例によれば、CPU310は、コンテンツ画像データに対して、スタイル画像データを用いたスタイル変換処理を実行して、コンテンツ画像CIが特定のスタイルにて表現された変換済画像TI(図5(A))を示す変換済画像データを生成する(図3のS25)。CPU310は、変換済画像データを用いて、変換済画像(具体的には、サイズ調整後の変換済画像TAI)を含むデザイン画像DIを示すデザイン画像データを生成する(図3のS30、図6のS115、S120、図7(B)、(C))。この結果、スタイル変換処理を用いることで、コンテンツ画像CIが様々なスタイルにて表現されたデザイン画像DIを示すデザイン画像データを生成できる。
【0090】
さらに、上記実施例によれば、CPU310は、スタイル画像データに対する評価に関する情報であってユーザの入力に基づく情報であるスタイル評価情報を取得する。具体的には、スタイル画像更新処理の説明において上述したように、ユーザによるスタイル画像SIの選択結果(図3のS20)と、ユーザによる候補画像の選択結果(図3のS50)と、がスタイル評価情報として用いられる。CPU310は、スタイル評価情報に基づいて、スタイル変換処理にて用いるべきスタイル画像データの少なくとも一部を変更するスタイル画像更新処理を実行する(図3のS80、図12)。この結果、スタイル評価情報に基づいて、スタイル変換処理にて用いるべきスタイル画像データの少なくとも一部が変更されるので、ユーザの評価に応じたスタイル画像データを用いるスタイル変換処理が実行される可能性を高めることができる。
【0091】
さらに、上記実施例によれば、CPU310は、スタイル評価情報に基づく評価が基準以上である複数個のスタイル画像データ、具体的には、上述したように、評価値が閾値THh以上であるスタイル画像SIを示す2個のスタイル画像データを合成して、スタイル変換処理にて用いるべき新たなスタイル画像データを生成する(図12(A)のS420、図12(C))。この結果、ユーザの評価に基づいて、適切なスタイル画像データを新たに生成し得る。したがって、さらに、ユーザに好まれる多様な候補画像(デザイン画像DI)を示すデザイン画像データを生成し得る。
【0092】
さらに、上記実施例によれば、CPU310は、候補画像に対する評価を示す画像評価情報(具体的には、上述した表示部370に表示されたN個の候補画像の中から好みの画像を選択する選択指示)を取得する。この画像評価情報は、候補画像データに対する評価だけでなく、候補画像データの生成に用いられるスタイル画像データに対する評価を示すスタイル評価情報としても用いられる。この結果、ユーザによる1つの入力が、候補画像データとスタイル画像データとの両方の評価に用いられるので、ユーザがスタイル画像データに対する評価を入力する負担を軽減できる。
【0093】
さらに、上記実施例によれば、CPU310は、m個のデザイン画像DIの中からm個未満(本実施例ではN個)の候補画像を決定し(図9のS310)、決定済みのm個未満の候補画像を表示部370に表示する(図3のS40、S45、図9)。2回目以降の候補画像の表示では、CPU310は、直前に取得される画像評価情報(具体的には、上述した表示部370に表示されたN個の候補画像の中から好みの画像を選択する選択指示)を用いてm個のデザイン画像DIに対する評価値(本実施例では、ユーザによる選択画像とのコサイン類似度cos)を算出する(図3のS51)。CPU310は、該評価値に基づいてm個のデザイン画像DIの中からm個未満の候補画像を再度決定し(図3のS52、S53、図9のS315)、決定済みのm個未満の候補画像を表示部370に表示する(図3のS40、S45)。この結果、ユーザによる評価を反映した評価値に基づいて、ユーザの好みに応じた候補画像を決定することができるので、最終的にユーザの好みに合致した印刷画像の印刷を行うことができる。
【0094】
より具体的には、CPU310は、デザイン画像DIにおける文字や画像の表現条件を示す表現情報やデザインの評価を示すデザイン評価情報を含む特徴ベクトルの類似度を示すコサイン類似度cosθを用いて、m個のデザイン画像DIとユーザによる選択画像との類似度を算出する(図3のS51)。CPU310は、該類似度に基づいて、ユーザによる選択画像との類似度が高いデザイン画像DIを、表示すべき候補画像として決定する(図9のS315)。この結果、ユーザによる選択画像との類似度が高いデザイン画像DIを適切に候補画像として決定することができる。
【0095】
さらに具体的には、コサイン類似度cosθの算出に用いられる特徴ベクトルは、要素として類似度の合計を含む(図10)。そして、CPU310は、候補画像の表示と、ユーザによる選択画像の選択指示の取得と、を実行する度に、該類似度の合計を更新する(図3のS51~S53)。そして、CPU310は、該類似度の合計が高い順に、m個のデザイン画像DIからN個の候補画像を決定する(図9のS315)。この結果、複数回に亘って行われるユーザによる選択画像の選択結果が、特徴ベクトルの類似度の合計に反映されるので、最終的にユーザの好みに合致したデザイン画像DIが候補画像として決定される可能性を高めることができる。
【0096】
さらに、CPU310は、ユーザの入力に依存しないデザイン選別処理(図3のS35、図8)を実行することによって、M個(Mは3以上の整数)のデザイン画像DIの中からm個のデザイン画像DIを選別する。CPU310は、選別済みのm個のデザイン画像DIの中から、表示すべきm個未満(本実施例ではN個)の候補画像を決定する。この結果、例えば、印刷画像として不適切なデザインを有する画像を予め除くことができるので、不適切な画像が候補画像として表示されることを抑制することができる。
【0097】
具体的には、デザイン選別処理は、デザイン画像データが入力される場合にデザイン画像DIを評価した結果を示す画像評価データOD1を出力するように訓練された機械学習モデルである画像識別モデルDN1を用いて、m個の画像の画像評価データOD1を取得し、M個の画像の画像評価データOD1に基づいて、m個の画像を選別する処理である(図8)。この結果、画像識別モデルDN1を用いた選択処理によって、ユーザの入力に依存することなく、容易に不適切な画像が候補画像として表示されることを抑制することができる。
【0098】
B.第2実施例
第2実施例では、スタイル画像更新処理の内容が第1実施例とは異なる。第2実施例の他の構成は、第1実施例と同様である。図13は、第2実施例のスタイル画像更新処理のフローチャートである。
【0099】
S400Bでは、CPU310は、スタイル画像SIの評価を入力するための評価入力画面WI3を表示部370に表示して、スタイル画像SIの評価情報をユーザから取得する。図14は、評価入力画面WI3の一例を示す図である。図14の評価入力画面WI3は、図3のS25のスタイル変換処理にて生成された変換済画像データによって示される変換済画像TI1~TI4(図5(A))を含む。評価入力画面WI3は、さらに、変換済画像TI1~TI4に対するユーザの評価を入力するためのUI要素であるラジオボタンRB1~RB4を含む。ユーザは、ラジオボタンRB1~RB4を介して3段階の評価(高評価(良い)、中評価(普通)、低評価(悪い))のいずれかを変換済画像ごとに入力することができる。評価入力画面WI3は、さらに、変換済画像TI1~TI4に対する評価の入力を促すメッセージMS3と、OKボタンBTと、を含む。なお、このS400Bの処理は、このタイミングで実行されることに代えて、別のタイミング、例えば、図3のS25のスタイル変換処理の後、S30の自動レイアウト処理の前に実行されても良い。この場合には、CPU310は、S30の自動レイアウト処理において、低評価の変換済画像TIを用いることなく、高評価と中評価の変換済画像TIだけを用いて、デザイン画像DIを示すデザイン画像データが生成されても良い。
【0100】
ユーザは、評価入力画面WI3のラジオボタンRB1~RB4にチェックを入れた状態で、OKボタンBTを押下する。CPU310は、OKボタンBTが押下された場合には、その時点にラジオボタンRB1~RB4にてチェックされている評価を示す情報を、変換済画像TI1~TI4の評価情報として取得する。
【0101】
S402Bでは、CPU310は、スタイル画像評価テーブルST(図1図12(B))を更新する。図12(B)のスタイル画像評価テーブルSTには、上述のように、スタイル画像データ群SGに含まれる複数個のスタイル画像データのそれぞれの評価値が、スタイル画像データを識別する画像IDと対応付けて記録されている。
【0102】
本実施例では、スタイル画像データの評価値の初期値は、0である。本実施例では、評価入力画面WI3を介して取得されたユーザによるスタイル画像SIの評価情報に基づいて更新される。例えば、高評価(良い)を示す評価情報が取得されたスタイル画像SIの評価値には、1ポイントが加算される。また、中評価(普通)を示す評価情報が取得されたスタイル画像SIの評価値は、変更されない。低評価(悪い)を示す評価情報が取得されたスタイル画像SIの評価値には、1ポイントが減算される。この評価方法は、一例であり、適宜に変更され得る。例えば、3段階の評価を示す評価情報に代えて、5段階や7段階の評価を示す評価情報が取得されても良い。この場合には、5段階や7段階の評価に応じて評価値の減算や加算が適宜に実行される。
【0103】
S405Bでは、図12(A)のS405と同様に、CPU310は、前回のスタイル画像データの更新後の印刷枚数は閾値THc以上であるか否かを判断する。前回のスタイル画像データの更新後の印刷枚数が閾値THc未満である場合には(S405B:NO)、CPU310は、スタイル画像データの更新を行うことなく、処理を終了する。前回のスタイル画像データの更新後の印刷枚数が閾値THc以上である場合には(S405B:YES)、CPU310は、S410Bに処理を進める。
【0104】
S410Bでは、CPU310は、スタイル画像評価テーブルSTを参照して低評価のスタイル画像SIがあるか否かを判断する。例えば、評価値が閾値THsb未満であるスタイル画像SIは、低評価のスタイル画像であると判断される。閾値THsbは、本実施例では、所定の負の値に設定される。低評価のスタイル画像SIがない場合には(S410B:NO)、CPU310は、スタイル画像データの更新を行うことなく、処理を終了する。低評価のスタイル画像SIがある場合には(S410B:YES)、CPU310は、S415B、S420Bを実行して、スタイル画像データの更新を行う。
【0105】
S415Bでは、CPU310は、スタイル画像データ群SGに含まれる複数個のスタイル画像データのうち、低評価のスタイル画像データを削除する。S420Bでは、CPU310は、印刷システム1000を管理している管理ユーザ(例えば、店舗の店員)に新たなスタイル画像データの追加要求を送信して、スタイル画像更新処理を終了する。追加要求の送信は、例えば、予め端末装置300に登録済みの管理ユーザのメールアドレス宛に送信される。追加要求を受け取った管理ユーザは、例えば、新たなスタイル画像データを準備し、該新たなスタイル画像データをスタイル画像データ群SGが格納された所定のフォルダに格納する。これによって、端末装置300の不揮発性記憶装置320に格納された複数個のスタイル画像データが更新される。なお、S415Bの低評価のスタイル画像データの削除は、管理ユーザによって新たなスタイル画像データが不揮発性記憶装置320に格納された後に実行されても良い。
【0106】
以上説明した本実施例によれば、評価入力画面WI3を介して、スタイル画像SIに対する直接的な評価をユーザから取得できる。したがって、ユーザのスタイル画像SIに対する評価をより正確に判定したうえで、スタイル画像データの更新を行うことができる。また、本実施例では、新たなスタイル画像データは、管理ユーザによって準備されるので、例えば、既存のスタイル画像データとは大きく異なる新たなスタイル画像データが追加されることが期待できる。
【0107】
C.変形例
(1)上記各実施例では、印刷媒体として衣服Sが例示されているが、これに限られない。印刷媒体は、他の布製品、具体的には、バック、財布、ズボン、携帯電話などのケースなどの製品であっても良い。また、印刷媒体は、布製品に限らず、革、紙、プラスチック、金属などの他の材料を用いて作成された上記の製品であっても良い。また、印刷媒体は、上記の完成された製品に限らず、例えば、製品の作成に用いられる部品、半製品、材料(例えば、加工前の布地、革、紙、プラスチックや金属の板)であっても良い。また、印刷媒体は、ポスター用の用紙であっても良い。
【0108】
(2)上記実施例では、コンテンツデータ(テキストデータや画像データ)は、ユーザによって準備されている。これに限らず、コンテンツデータは、予め印刷システム1000の販売者によって準備されて不揮発性記憶装置320に格納されたコンテンツデータ群から選択されても良い。
【0109】
(3)上記実施例では、1つのコンテンツ画像CIから、複数個の変換済画像TIが生成され、複数個の変換済画像TIを用いてデザイン画像DIが生成される。同様に、1つのテキストCTから、複数個のテキスト画像XIが生成され、複数個のテキスト画像XIを用いてデザイン画像DIが生成される。これに代えて、例えば、ユーザによって指定された一部のコンテンツ画像は、例えば、そのまま、デザイン画像DI内に配置されても良い。また、上記実施例では、1つのデザイン画像DIの生成に用いられるコンテンツの個数は、2個(テキストCTとコンテンツ画像CI)であるが、コンテンツの個数は、1個でも良いし、3個以上であっても良い。また、使用されるコンテンツは、テキストのみであっても良いし、写真やCGなどの画像のみであっても良い。
【0110】
(4)上記実施例では、1つのコンテンツ画像データに対して、複数個のスタイル画像データを用いたスタイル変換処理を実行することで、様々な態様でコンテンツ画像CIを表現した画像を含むデザイン画像DIを生成している。これに限らず、スタイル変換処理に代えて、あるいは、スタイル変換処理とともに、他の画像処理、例えば、色数の低減処理、エッジ強調処理、他の画像との合成処理などを用いて、様々な態様でコンテンツ画像CIを表現した画像を含むデザイン画像DIが生成されても良い。
【0111】
上記実施例では、1つのテキストCTを複数個の表現条件(フォント、文字色など)で表現することで、様々な態様でテキストCTを表現した画像を含むデザイン画像DIを生成している。これらの表現条件は一例であり、様々な表現条件が用いられる。例えば、テキストCTを示す画像データに対して、コンテンツ画像CIと同様のスタイル変換処理を実行することによって、様々な態様でテキストCTを表現した画像を含むデザイン画像DIを生成しても良い。
【0112】
(5)上記実施例では、表示部370に表示されるN個の候補画像(デザイン画像DIa~DIf)から1個の好みの画像を選択する選択指示が、N個の候補画像に対する評価を示す画像評価情報として取得される。これに限らず、画像評価情報は、好みの画像を選択する選択指示とは異なる情報であっても良い。例えば、ユーザが、N個の候補画像に対して好みである順番で順位を付け、CPU310は、該順位を示す情報を画像評価情報として取得しても良い。この場合には、例えば、CPU310は、順位が上位の所定個数の候補画像のそれぞれと、評価対象のデザイン画像DIと、の類似度を算出し、該類似度を順位に応じた重みを乗じて加算した値を、該評価対象のデザイン画像DIの評価値として算出しても良い。あるいは、ユーザが、N個の候補画像に対して、好みの程度に応じた複数段階(例えば、3段階や5段階)の評価を付し、CPU310は、該評価を示す情報を画像評価情報として取得しても良い。この場合には、例えば、CPU310は、ユーザによる評価が高い候補画像との類似度が高いほど高評価になるように、評価対象のデザイン画像DIの評価値を算出しても良い。
【0113】
(6)上記実施例では、最後にユーザによって選択された選択画像について、ユーザから最終決定指示が取得された場合に、該選択画像が印刷画像として決定されている。最終的な印刷画像の決定方法は、これに限られない。例えば、所定回数に亘って、N個の候補画像の表示と、該N個の候補画像から1つの画像を選択する選択指示の取得と、が繰り返された後に、CPU310は、最後の所定回数分の選択指示によって選択された複数個の選択画像を表示し、該複数個の選択画像の中から1個の印刷画像をユーザに選択させることによって、最終的な印刷画像を決定しても良い。一般的には、複数回に亘って実行される候補画像の表示において表示される複数個の候補画像の少なくとも一部と、複数回に亘って実行される取得される選択指示の少なくとも一部と、に基づいて、最終的な印刷画像が決定されることが好ましい。
【0114】
(7)上記実施例の図3の印刷処理は、一例であり、適宜に変更や省略がされても良い。例えば、上記実施例において、M個のデザイン画像DIを生成するための表現条件を示す表現情報は、文字のフォント、文字色、背景色、文字のサイズ、コンテンツ画像に適用されるスタイルを示すスタイル画像データ、画像のサイズ、レイアウト情報などを含んでいる。これらの表現情報は、適宜に変更や省略がなされて良い。
【0115】
例えば、図3のS80のスタイル画像更新処理や、S35のデザイン選別処理は、省略されても良い。
【0116】
(8)上記実施例では、ユーザによる選択画像と、評価対象のデザイン画像DIと、の類似度として、2つの画像の特徴ベクトルのコサイン類似度cosθが用いられている。これに代えて、他の手法を用いて算出される類似度、例えば、2つの画像のヒストグラムの類似度や、2つの画像を画素単位や領域単位で比較して得られる類似度が、用いられても良い。
【0117】
また、上記実施例の画像の特徴ベクトルは、一例であり、これに限られない。例えば、特徴ベクトルは、表現情報を示すベクトルを含み、デザイン評価情報を示すベクトルを含んでいなくても良い。あるいは、特徴ベクトルは、デザイン評価情報を示すベクトルを含み、デザイン評価情報を示すベクトルを含んでいなくても良い。
【0118】
また、上記実施例において2回目以降に表示すべきN個の候補画像を決定するアルゴズムは、一例であり、これに限られない。例えば、ユーザによる選択画像と評価対象のデザイン画像DIとの類似度を考慮することに加えて、例えば、過去に他のユーザによって印刷された印刷画像との類似度が考慮されても良い。例えば、ユーザによる選択画像と類似した印刷画像を他のユーザが印刷している場合には、該他のユーザが印刷した複数個の印刷画像の生成に用いられた表現情報(文字のフォントやスタイル画像データなど)と同一または類似した表現情報を用いて生成されたデザイン画像DIが優先的に候補画像として選択されるように評価値が算出されても良い。
【0119】
(9)図3の印刷処理の印刷処理の全部または一部を実行する装置は、端末装置300に代えて、他の種々の装置であってよい。例えば、プリンタ200のCPU210が図3(B)の印刷処理を実行しても良い。この場合には、端末装置300は不要であり、プリンタ200のCPU210が印刷データを生成し、印刷実行部としての印刷機構100に印刷画像を印刷させる。また、図3の印刷処理を実行する装置は、プリンタ200や端末装置300とインターネットを介して接続されたサーバであっても良い。この場合に、サーバは、複数個の互いに通信可能な計算機によって構成されるいわゆるクラウドサーバであっても良い。
【0120】
(10)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
【0121】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【0122】
1000…印刷システム,100…印刷機構,110…印刷ヘッド,120…ヘッド駆動部,130…主走査部,140…搬送部,142…プラテン,144…トレイ,200…プリンタ,201…筐体,210…CPU,220…不揮発性記憶装置,230…揮発性記憶装置,231…バッファ領域,260…操作部,270…表示部,280…通信部,300…端末装置,310…CPU,320…不揮発性記憶装置,330…揮発性記憶装置,331…バッファ領域,360…操作部,370…表示部,380…通信部,400…撮像装置,DN1,DN2…画像識別モデル,GN…画像生成モデル,PG1,PG2…コンピュータプログラム,RT…レコメンドテーブル,S…衣服,SG…スタイル画像データ群,SI…スタイル画像,ST…スタイル画像評価テーブル,TI…変換済画像,XI…テキスト画像
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14