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

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

▶ セイコーエプソン株式会社の特許一覧

特許7655037印刷条件設定方法、印刷条件設定システム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-25
(45)【発行日】2025-04-02
(54)【発明の名称】印刷条件設定方法、印刷条件設定システム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20250326BHJP
   B41J 2/195 20060101ALI20250326BHJP
   B41J 2/21 20060101ALI20250326BHJP
   B41J 2/01 20060101ALI20250326BHJP
【FI】
G06F3/12 331
G06F3/12 303
G06F3/12 353
G06F3/12 378
B41J2/195
B41J2/21
B41J2/01 451
B41J2/01 401
【請求項の数】 7
(21)【出願番号】P 2021052917
(22)【出願日】2021-03-26
(65)【公開番号】P2022150349
(43)【公開日】2022-10-07
【審査請求日】2024-02-16
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100179475
【弁理士】
【氏名又は名称】仲井 智至
(74)【代理人】
【識別番号】100216253
【弁理士】
【氏名又は名称】松岡 宏紀
(74)【代理人】
【識別番号】100225901
【弁理士】
【氏名又は名称】今村 真之
(72)【発明者】
【氏名】山下 充裕
(72)【発明者】
【氏名】鎌田 崇廣
(72)【発明者】
【氏名】松坂 健治
(72)【発明者】
【氏名】大野 典
(72)【発明者】
【氏名】渡邊 亮基
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2020-121503(JP,A)
【文献】米国特許出願公開第2002/0156754(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/12
B41J 2/195
B41J 2/21
B41J 2/01
(57)【特許請求の範囲】
【請求項1】
情報処理装置を用いることで、印刷装置における印刷条件を設定する印刷条件設定方法であって、
前記印刷装置に用いるインクの物性情報とインク種識別子とを用いてインク種判別器の機械学習を行うインク種学習工程と、
前記印刷装置に用いる媒体の特性情報と媒体種識別情報とを用いて媒体種判別器の機械学習を行う媒体種学習工程と、
前記インク種判別器により判別されたインク種と、前記媒体種判別器により判別された媒体種と、に応じた前記印刷条件を設定する印刷条件設定工程と、を有し、
前記インク種は、インクの分光測定が可能な第1の分光分析装置により得られたインク観測データを前記インク種判別器に入力し、前記インク種判別器から出力された出力データに基づき判別され、
前記媒体種は、前記印刷装置の使用者によって実行され、媒体の分光測定が可能な第2の分光分析装置により得られた対象分光データを前記媒体種判別器に入力し、前記媒体種判別器から出力された出力データに基づき判別され、
前記印刷条件は、前記インク種と前記媒体種とに対応する印刷条件を算出したテーブルデータである印刷条件設定テーブルを用いて設定される、印刷条件設定方法。
【請求項2】
請求項1に記載の印刷条件設定方法であって、
前記印刷条件は、前記印刷装置の制御パラメーターである、印刷条件設定方法。
【請求項3】
請求項1に記載の印刷条件設定方法であって、
前記印刷条件は、前記印刷装置のメンテナンスモードである、印刷条件設定方法。
【請求項4】
請求項1に記載の印刷条件設定方法であって、
前記印刷条件は、前記印刷装置のICCプロファイルである、印刷条件設定方法。
【請求項5】
請求項1に記載の印刷条件設定方法であって、
前記印刷条件は、前記印刷装置の印刷モードである、印刷条件設定方法。
【請求項6】
請求項1から請求項5のいずれか一項に記載の印刷条件設定方法であって、
前記インク種学習工程における前記インク種判別器の機械学習方法と、前記媒体種学習工程における前記媒体種判別器の機械学習方法と、は異なる、印刷条件設定方法。
【請求項7】
印刷装置における印刷条件を設定する印刷条件設定システムであって、
インクの物性情報とインク種識別子とを用いてインク種判別器の機械学習を行うインク種学習部と、
媒体の特性情報と媒体種識別情報とを用いて媒体種判別器の機械学習を行う媒体種学習部と、
前記インク種判別器により判別されたインク種と、前記媒体種判別器により判別された媒体種と、に応じた前記印刷条件を設定する印刷条件設定部と、を有し、
前記インク種は、インクの分光測定が可能な第1の分光分析装置により得られたインク観測データを前記インク種判別器に入力し、前記インク種判別器から出力された出力データに基づき判別され、
前記媒体種は、前記印刷装置の使用者によって実行され、媒体の分光測定が可能な第2の分光分析装置により得られた対象分光データを前記媒体種判別器に入力し、前記媒体種判別器から出力された出力データに基づき判別され、
前記印刷条件は、前記インク種と前記媒体種とに対応する印刷条件を算出したテーブルデータである印刷条件設定テーブルを用いて設定される、印刷条件設定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷条件設定方法、及び印刷条件設定システムに関する。
【背景技術】
【0002】
従来、特許文献1には、充填されたインクに対して光を照射する工程と、前記光が前記インクを透過または反射する光量を測定する工程であって、1色のインクに対して波長の異なる複数の光量をそれぞれ測定する工程と、前記測定された複数の光量に基づいて前記充填されたインクが所定のインクか否かを判別する工程と、を含むことを特徴とするインク判別方法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2005-231356号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載のインク判別方法は、画質劣化防止や故障防止を目的とし、所定のインクか否かを判別するものであり、インクに応じて印刷条件を選定することはできなかった。また、インクと記録紙との組み合わせについては、考慮されていなかった。
【課題を解決するための手段】
【0005】
印刷条件設定方法は、印刷装置における印刷条件を設定する印刷条件設定方法であって、インクの物性情報とインク種識別子とを用いてインク種判別器の機械学習を行うインク種学習工程と、媒体の特性情報と媒体種識別情報とを用いて媒体種判別器の機械学習を行う媒体種学習工程と、前記インク種判別器により判別されたインク種と、前記媒体種判別器により判別された媒体種と、に応じた前記印刷条件を設定する印刷条件設定工程と、を有する。
【0006】
印刷条件設定システムは、印刷装置における印刷条件を設定する印刷条件設定システムであって、インクの物性情報とインク種識別子とを用いてインク種判別器の機械学習を行うインク種学習部と、媒体の特性情報と媒体種識別情報とを用いて媒体種判別器の機械学習を行う媒体種学習部と、前記インク種判別器により判別されたインク種と、前記媒体種判別器により判別された媒体種と、に応じた前記印刷条件を設定する印刷条件設定部と、を有する。
【図面の簡単な説明】
【0007】
図1】印刷装置の構成の一例を示す概略図。
図2】印刷条件設定システムの構成を示すブロック図。
図3】インク種学習工程の処理方法を示すフローチャート。
図4】インク種学習工程において利用される訓練モデルの一例を示す模式図。
図5】印刷条件(制御パラメーター)の一例を示す説明図。
図6】印刷条件(メンテナンスモード)の一例を示す説明図。
図7】印刷条件(ICCプロファイル)の一例を示す説明図。
図8】インク種判別工程の処理方法を示すフローチャート。
図9】第1機械学習モデルの構成を示す説明図。
図10】第2機械学習モデルの構成を示す説明図。
図11】媒体種学習工程の処理手順を示すフローチャート。
図12】媒体識別子リストを示す説明図。
図13】媒体・印刷設定テーブルを示す説明図。
図14】クラスタリング処理された分光データを示す説明図。
図15】グループ管理テーブルを示す説明図。
図16】特徴スペクトルを示す説明図。
図17】既知特徴スペクトル群の構成を示す説明図。
図18】媒体種判別工程の処理手順を示すフローチャート。
図19】媒体追加処理の処理手順を示すフローチャート図。
図20】分光データ群の管理状態を示す説明図。
図21】印刷媒体の追加に応じて更新された媒体識別子リストを示す説明図。
図22】印刷媒体の追加に応じて更新されたグループ管理テーブルを示す説明図。
図23】機械学習モデルの追加に応じて更新されたグループ管理テーブルを示す説明図。
図24】機械学習モデルの更新処理の処理手順を示すフローチャート図。
図25】印刷条件設定工程の処理方法を示すフローチャート。
図26】印刷条件テーブルの一例を示す説明図。
【発明を実施するための形態】
【0008】
本実施形態の印刷条件設定方法は、印刷装置2001(図1)における印刷条件を設定する印刷条件設定方法であって、インクの物性情報とインク種識別子とを用いてインク種判別器の機械学習を行うインク種学習工程(ステップS10[図示せず])と、媒体の特性情報と媒体種識別情報とを用いて媒体種判別器の機械学習を行う媒体種学習工程(ステップS30[図示せず])と、インク種判別器により判別されたインク種と、媒体種判別器により判別された媒体種と、に応じた印刷条件を設定する印刷条件設定工程(ステップS50[図示せず])と、を有する。さらには、印刷条件設定方法には、インク種判別工程(ステップS20[図示せず])、媒体種判別工程(ステップS40[図示せず])が含まれる。
また、上記のインク種判別器の機械学習方法と媒体種判別器の機械学習方法とでは、異なる手法で実行される。詳細には、インク種学習工程(ステップS10)では、一つの機械学習モデル(訓練モデル105)を備えるが、媒体種学習工程(ステップS30)では、複数(本実形態では2つ)の機械学習モデル201,202を備える。機械学習の対象に適した学習方法の採用により、効率よく処理を実行することができる。
なお、インク種学習工程(ステップS10)、インク種判別工程(ステップS20)、媒体種学習工程(ステップS30)及び媒体種判別工程(ステップS40)の各処理、は必ずしも一律に並行して処理する構成でなくともよく、各工程の処理回数や処理タイミングについては、それぞれが適宜に処理可能である。
【0009】
図1は、印刷装置2001の構成例を示す概略図である。印刷装置2001は、媒体としての印刷媒体PM(例えば、用紙)に印刷可能なインクジェットプリンターである。
【0010】
印刷装置2001は、キャリッジ2020を備える。キャリッジ2020は、装着部2030とヘッド2040とを備える。
装着部2030は、液体としてのインクを収容可能なカートリッジ2010を着脱可能に構成される。装着部2030に装着されるカートリッジ2010は、単数でも複数でもよい。
【0011】
カートリッジ2010は、装着部2030に設けられた液体導入針(図示省略)に差し込まれた状態で、装着部2030に装着される。カートリッジ2010に収容されたインクは、液体導入針を介してヘッド2040に供給される。
【0012】
ヘッド2040は、複数のノズル(図示省略)を備え、各ノズルからインクを液滴として吐出する。ヘッド2040は、インク吐出機構として、例えば、ピエゾ素子を備え、ピエゾ素子の駆動によって各ノズルからインクが吐出される。プラテン2045に支持された印刷媒体PMに対してヘッド2040からインクが吐出されることにより、印刷媒体PMに文字、図形および画像などが印刷される。
【0013】
印刷装置2001は、キャリッジ2020と印刷媒体PMとを相対的に移動させる主走査送り機構および副走査送り機構を備える。主走査送り機構は、キャリッジモーター2052及び駆動ベルト2054を備える。駆動ベルト2054にキャリッジ2020が固定される。キャリッジモーター2052の動力により、キャリッジ2020は、架設されたガイドロッド2055に案内されて、X軸に沿った方向に往復移動する。副走査送り機構は、搬送モーター2056および搬送ローラー2058を備え、搬送モーター2056の動力を搬送ローラー2058に伝達することによって、+Y方向に印刷媒体PMを搬送する。キャリッジ2020が往復移動する方向が主走査方向であり、印刷媒体PMが搬送される方向が副走査方向である。
なお、印刷装置2001は、プラテン2045を含め、プラテン2045の搬送経路の上流側および下流側の搬送経路には、搬送される印刷媒体PMを加熱する加熱部が配置される構成であってもよい。
【0014】
印刷装置2001は、メンテナンス部2060を備える。メンテナンス部2060は、例えば、ヘッド2040に対して各種メンテナンスを行うものである。例えば、メンテナンス部2060は、キャッピング部2061を備える。キャッピング部2061は、凹部を有するキャップ2062を備える。キャッピング部2061は、図示しない駆動モーターを含む昇降機構が設けられ、キャップ2062をZ軸に沿った方向に移動可能に構成される。メンテナンス部2060は、印刷装置2001が稼動していない時に、ヘッド2040に対してキャップ2062を密着させてノズルが形成された領域をキャッピングすることにより、インクが乾燥してノズルが詰まるなどの不具合が生じないようにすることができる。
【0015】
また、メンテナンス部2060は、ノズルに対してクリーニングを行う各種機能を有する。例えば、長時間ノズルからインクが吐出されなかったり、ノズルに紙粉などの異物が付着したりすると、ノズルが目詰まりすることがある。ノズルが目詰まりすると、ノズルからインクが吐出されるべき時にインクが吐出されず、インクドットが形成されるべき所にインクドットが形成されない現象、すなわち、ノズル抜けが発生する。ノズル抜けが発生すると画質が劣化してしまう。そこで、メンテナンス部2060は、キャップ2062の凹部に向けて強制的にノズルからインクを吐出させる。すなわち、フラッシングを行うことでノズルに対するクリーニングが行われる。これにより、ノズルの吐出状態を良好な状態に回復させることができる。
なお、メンテナンス部2060は、上記以外にもノズル面を払拭する払拭部2063やノズルの状態を検査するノズル検査部等を備える。
【0016】
印刷装置2001は、制御部2002を備える。キャリッジモーター2052、搬送モーター2056、ヘッド2040及びメンテナンス部2060等は、制御部2002からの制御信号に基づいて制御される。
また、印刷装置2001は、例えば、LANインターフェイスやUSBインターフェイスなどの汎用インターフェイスを備え、各種外部機器と通信可能な構成である。
【0017】
本実施形態の印刷条件設定方法では、機械学習を利用して印刷装置2001で使用される使用インクと使用される印刷媒体PMとに適した印刷条件を設定する。
以下、具体的に説明する。
【0018】
まず、インク種学習工程(ステップS10)について説明する。
インク種学習工程(ステップS10)では、インクの物性情報であるインク特性データと、インク種識別子を含むインクの属性情報と、を対応付けた教師データ104を用いて機械学習させることにより学習済モデル(学習済みの学習インク)としてのインク種判別器102を生成する。
【0019】
次に、インク種判別器102の生成処理について具体的に説明する。
インクとしては、印刷装置2001で使用される使用インクである。なお、インクが使用される装置は印刷装置2001に限定されず、例えば、描画装置、塗装装置、筆記装置などでもよい。
【0020】
インク種識別子を含むインクの属性情報とは、インクの種類、つまり、インク名(メーカー名)やインク品番の情報の他、インクの色、インクのタイプ、インクに含まれる成分、インクの製造者、インクの製造地域、インクの製造時期の内の少なくとも1つの情報である。
インクのタイプとしては、例えば、水性、油性、紫外線硬化型、熱硬化型、染料系、顔料系などの情報が含まれる。
インク特性データは、インクに光を照射して観測される吸光度A、透過率T%、反射率R%の内の少なくとも1つのデータである。
【0021】
インク種判別器102は、図2に示す印刷条件設定システム1において、教師データ104を用いて、訓練モデル105を訓練することにより生成される。インク種判別器102は、ある時点までに得られた教師データ104により、訓練モデル105を訓練して得られた学習済みのモデルを用いた判別プログラムである。
印刷条件設定システム1は、印刷装置2001における印刷条件を設定する印刷条件設定システムであって、インクの物性情報とインク種識別子とを用いてインク種判別器の機械学習を行うインク種学習部と、媒体の特性情報と媒体種識別情報とを用いて媒体種判別器の機械学習を行う媒体種学習部と、インク種判別器により判別されたインク種と、媒体種判別器により判別された媒体種と、に応じた印刷条件を設定する印刷条件設定部と、を有する。
また、印刷条件設定システム1は、情報処理装置20、分光分析装置30などから構成される。
【0022】
情報処理装置20はコンピューターシステムであり、演算部110、入力部140、表示部150、記憶部120、通信部130などを備える。
演算部110には、上記のインク種学習部、媒体種学習部、及び印刷条件設定部が設けられる。また、演算部110は、印刷装置2001を用いた印刷処理を実行する印刷処理部112を備える。
情報処理装置20は、持ち運びが容易なノート型PCを用いることが好ましい。また、印刷媒体PMには、ロール状の芯材に印刷媒体が巻回されたロール媒体も含まれる。なお、本実施形態では、記録の一例として印刷を挙げているが、媒体の物理情報に応じて記録条件を変更する必要がある、定着を含む広義の記録システム、装置、方法に適用可能である。
【0023】
演算部110は、CPU,RAM,ROMを備え、記憶部120に記憶されたプログラムに従い、機械学習に必要な演算を実行する。演算部110は、機械学習を行うために、GPUや機械学習用に設計された各種のプロセッサーを備える。
CPUは、Central Processing Unitを、RAMは、Random access memoryを、ROMは、Read-Only Memoryを、GPUは、Graphics Processing Unitを意味する。
【0024】
入力部140は、ユーザーインターフェイスとしての情報入力手段である。具体的には、例えば、キーボードやマウスポインターなどである。
表示部150は、ユーザーインターフェイスとしての情報表示手段であり、演算部110の制御の基に、例えば、入力部140から入力される情報や、演算部110の演算結果などが表示される。
【0025】
記憶部120は、ハードディスクドライブやメモリーカードなどの書き換え可能な記憶媒体であり、演算部110が動作する学習プログラムや、機械学習を行うための教師データ104、訓練モデル105、機械学習の結果生成された学習済モデルとしてのインク種判別器102、演算部110が動作する各種演算プログラムなどが記憶される。
通信部130は、例えば、LANインターフェイスやUSBインターフェイスなどの汎用インターフェイスを備え、外部の電子機器、例えば、分光分析装置30や印刷装置2001、また、ネットワークNWに接続され、これらの機器との情報の授受を行う。なお、ネットワークNWは、クラウド環境にも接続している。
【0026】
上記では、印刷装置2001と、情報処理装置20と、分光分析装置30とが、独立した構成として説明したが、この構成に限定するものではなく、これらの機能を備えた構成であれば良い。
【0027】
本実施形態において、印刷条件設定システム1は、各種インクのインク特性データおよびそのインク特性データに対応するインクの種類の情報を教師データ104として、訓練モデル105を用いて機械学習を行なう。インクの種類の情報とは、インクの種類またはインクの種類を含むインクの属性情報である。
インク特性データとして、インクの分光分析による吸光度A、透過率T%、反射率R%などのデータを用いるのは、インクの種類に応じてこれらの特性が異なることが利用できるためである。
【0028】
インクの吸光度A、透過率T%、反射率R%は、分光分析装置30を用い、試料のインクに照射した光の強度に対して、インクが吸収した強度、インクを透過した強度、インクが反射した強度を評価することにより取得する。
入射光の強度をI0、透過光の強度をI1、反射光の強度をI2としたとき、それぞれ以下により求める。
吸光度A=log(I0/I1)
透過率T%=I1/I0×100
反射率R%=I2/I0×100
分光分析は、照射する光の波長を所定の波長範囲、例えば、紫外領域から赤外領域まで、10nm毎に区切って、その波長範囲の吸光度A、透過率T%、反射率R%のそれぞれのデータの集合として取得する。
【0029】
図3は、インク種学習工程(ステップS10)における詳細な処理方法を示すフローチャートである。具体的には、演算部110が機械学習を行なって、インク種判別器102を生成する処理を示すフローチャートである。なお、この処理を開始するまでに、複数種類のインクについて、そのインク特性データが、インクの種類またはインクの種類を含むインクの属性情報に対応付けた教師データ104として収集され、記憶部120に記憶されている。
【0030】
まず、ステップS101として、記憶部120から、訓練モデル105および教師データ104を取得する。
次に、ステップS102、ステップS103により、訓練モデル105を用いた機械学習処理を、汎化が完了するまで行なう。訓練モデル105の汎化が完了したか否かのステップS103における判定は、その時点までの訓練モデル105にテストデータを入力して得られる出力の正答率の閾値判定により行う。
訓練モデル105に対して教師データ104を与えて機械学習をすることにより、汎化が完了すると、インク種判別器102が生成される。ステップS104では、学習済モデルとして、インク種判別器102を記憶部120に保存する。
【0031】
機械学習用の訓練モデル105は種々の定義が可能である。図4は、本実施形態において利用される訓練モデル105の一例を模式的に示した図である。同図においては、CNNによる全n層の各層をL1からLnで示しており、通常のニューラルネットワークのノードを白丸で示している。本実施形態においては、CNNを用いたが、カプセルネットワーク型やベクトルニューラルネットワーク型などの各種ニューラルネットワークなど、他のモデルを利用してもよい。CNNは、Convolutional Neural Networkを意味している。
【0032】
第1層L1には、一定波長毎のインク特性データを入力する複数のノードが設けられている。本実施形態においては、例えば、分光反射率データが示す一定波長毎の反射率R%を入力層である第1層L1の各ノードへの入力データとし、最終出力層Lnから反射率R%に対応する最終出力データを出力する。
反射率R%のデータに代えて、あるいは加えて、一定波長毎の透過率T%や吸光度Aを用いてもよい。例えば、吸光度A、透過率T%、反射率R%の3つのデータを用いる場合には、訓練モデル105を3つ設け、各訓練モデル105の最終層から吸光度A、透過率T%、反射率R%に対応する結果を出力させ、それらの結果を統合して判定させる最終出力層Lnを構築し、最終結果を出力させてもよい。
また、インクの属性情報の内、インクの種類に応じて決まるインク特性データの傾向に影響を与える可能性のある情報については、入力データとして、新たに設けるノードから入力するようにしてもよい。
【0033】
第1層L1の各ノードの出力は次の第2層L2のノードに、所定の重み付けを施されて接続されている。これは第2層L2以降、第Ln-1層まで同様である。この各層間における各ノード間の重み付けを、教師データ104を用いて修正する作業を繰り返すことで、学習が進み、学習済モデルを用いたインク種判別器102が生成される。
【0034】
また、記憶部120には、インク・印刷条件データ106が記憶される。
本実施形態のインク・印刷条件データ106は、印刷装置2001に対して設定可能な印刷条件を含み、各学習済みの学習インク(インク種)と各学習済みインクに対応する印刷条件とが対応付けられたテーブルデータである。本実施形態の印刷条件には、印刷装置2001に対する制御パラメーター、メンテナンスモード、ICCプロファイル、印刷モードの少なくとも一つが含まれる。
【0035】
制御パラメーターは、図5に示すように、プラテン2045の温度、プラテン2045の搬送経路下流の搬送経路を加熱するアフターヒーター温度、プラテン2045の搬送経路上流の搬送経路を加熱するプレヒーター温度の他、圧着圧力(搬送ローラー2058のニップ圧)、ヘッド2040の走査速度、ヘッド2040の駆動電圧、熱量(ヘッド2040の加熱量)、吐出インク量のLUT、パス数、の少なくとも一つを含む。
【0036】
メンテナンスモードは、図6に示すように、ヘッド2040のクリーニング頻度、ノズル向け検査頻度、ノズル面の自動清掃頻度、ノズル面の検査頻度、警告頻度、インク循環頻度の少なくとも一つを含む。
【0037】
ICCプロファイルは、図7に示すように、入力プロファイル、出力プロファイル、デバイスリンクプロファイルの少なくとも一つを含む。ICCプロファイルは、カラーマネージメントにおいて、International Color Consortiumによって公表された標準に従い、色に関わる入出力機器や色空間を特徴付ける一連のデータである。入力プロファイルは、カメラやディスプレイなどの入力デバイスの変換データであり、出力プロファイルは、印刷装置2001等の出力デバイスへの変換データであり、デバイスリンクプロファイルは、入力デバイスと出力デバイスとを関連付けた変換データである。
印刷モードは、印刷解像度、パス数、ハーフトーンの種別、インクドット配置、インクドットサイズの少なくとも一つを含む。
【0038】
分光分析装置30は、分光分析部、通信部などを備える。
分光分析装置30は、光源、分光器、検出器などを備え、インクに光を照射して観測される吸光度A、透過率T%、反射率R%の内の少なくとも1つのインク観測データを取得することができる。
【0039】
次に、インク種判別工程(ステップS20)について説明する。
図8は、インク種判別工程(ステップS20)における詳細な処理方法を示すフローチャートである。
インク判別の処理を開始するにあたり、情報処理装置20は、記憶部120に学習済モデルとしてのインク種判別器102を備えている。すなわち、本実施形態では、予め、インクに光を照射して観測される吸光度A、透過率T%、反射率R%の内の少なくとも1つのインク特性データと、インクの種類またはインクの種類を含むインクの属性情報とを対応付けた教師データ104を用いて機械学習させることによりのインク種判別器102を生成しておく。
【0040】
まず、ステップS201では、印刷装置2001で使用する使用インクの試料を準備する。具体的には、使用インクの試料を、分析が可能な状態に分光分析装置30にセットする。
【0041】
次いで、ステップS202では、分光分析装置30によりインク試料の分光分析を行い、インク観測データを取得する。分光分析は、照射する光の波長を所定の波長範囲、例えば、紫外領域から赤外領域まで、10nm毎に区切って、その波長範囲の吸光度A、透過率T%、反射率R%のそれぞれのデータの集合として取得する。
分光分析装置30は、通信部を介して、取得したインク観測データを情報処理装置20に送信する。
【0042】
次いで、ステップS203では、インク観測データを受信した情報処理装置20は、演算部110において、インク観測データをインク種判別器102に入力し、インク種判別器102の出力データに基づき、インクの種類を判別する。インクの種類の判別は、類似度を算出することにより、類似度に応じてインク種を判別してもよい。
【0043】
類似度は、学習済みの学習インク種間の色差(ΔE)を用いて、下記の式(1)の通りに算出される。
類似度=1.0-ΔE/Range・・・(1)
但し、類似度が<-1.0の場合、類似度=-1.0とする。なお、Rangeは適宜調整可能な値である。
ここで、類似度は、-1.0以上1.0以下の値で算出される。そして、類似度が1.0に近いほど、学習インクに対する使用インクの類似性が高いと判断される。一方、類似度が-1.0に近いほど、学習インクに対する使用インクの類似性が低いと判断される。
ここで、例えば、使用インクにおいて類似度が最も高い値を示すものをインク種として判断する。
【0044】
次に、媒体種学習工程(ステップS30)及び媒体種判別工程(ステップS40)の各処理方法について説明する。
【0045】
図2に示すように、分光分析装置31は、印刷装置2001で使用される媒体としての印刷媒体PMについて、未印刷の状態で分光測定を行うことにより、媒体の特性情報としての分光反射率を取得することが可能である。本開示において、媒体の特性情報としての分光反射率を「分光データ」とも呼ぶ。分光分析装置31は、例えば、波長可変干渉分光フィルターと、モノクロイメージセンサーとを備える。分光分析装置31で得られた分光データは、後述する機械学習モデルへの入力データとして使用される。後述するように、情報処理装置20は、機械学習モデルを用いて分光データのクラス分類処理を実行し、印刷媒体PMが複数のクラスのいずれに該当するかを分類する。「印刷媒体PMのクラス」とは、印刷媒体PMの種類を意味する。
【0046】
演算部110は、印刷媒体PMの分光データのクラス分類処理を実行するクラス分類処理部114として、また、印刷媒体PMに適した印刷設定を作成する印刷設定作成部116としても機能する。さらに、演算部110は、印刷媒体PMの物理情報と種別情報とを用いて機械学習した判別器を得る学習部117として、判別器に係る情報を管理する判別器管理部118としても機能する。なお、判別器については後述する。
【0047】
クラス分類処理部114、印刷設定作成部116、学習部117、判別器管理部118は、記憶部120に格納されたプログラムを演算部110が実行することによって実現される。好適例において、演算部110は、1つ又は複数備えて構成される。なお、これら各部をハードウェア回路で実現してもよい。本実施形態の演算部110は、このようなハードウェア回路をも含む用語である。
また、クラス分類処理を実行する演算部110は、クラウド環境を含むネットワークNWを介して情報処理装置20に接続されたリモートコンピューターに含まれるプロセッサーであってもよい。
【0048】
記憶部120には、複数の機械学習モデル201,202(媒体種判別器)と、複数の分光データ群SD1,SD2と、媒体識別子リストIDL(媒体種識別情報)と、複数のグループ管理テーブルGT1,GT2と、複数の既知特徴スペクトル群KS1,KS2と、媒体・印刷設定テーブルPSTと、が格納される。機械学習モデル201,202は、クラス分類処理部114による演算に使用される。機械学習モデル201,202の構成例や動作については後述する。分光データ群SD1,SD2は、機械学習モデル201,202の学習に使用されるラベル付きの分光データの集合である。媒体識別子リストIDLは、各印刷媒体について、媒体識別子と分光データとが登録されたリストである。複数のグループ管理テーブルGT1,GT2は、分光データ群SD1,SD2の管理状態を示すテーブルである。既知特徴スペクトル群KS1,KS2は、学習済みの機械学習モデル201,202に教師データを再度入力した際に得られる特徴スペクトルの集合である。特徴スペクトルについては後述する。媒体・印刷設定テーブルPSTは、各印刷媒体に適した印刷設定(印刷条件)が登録されたテーブルである。
【0049】
図9は、第1の機械学習モデル201の構成を示す説明図である。この機械学習モデル201は、入力データIMの側から順に、畳み込み層211と、プライマリーベクトルニューロン層221と、第1畳み込みベクトルニューロン層231と、第2畳み込みベクトルニューロン層241と、分類ベクトルニューロン層251とを備える。これらの5つの層211~251のうち、畳み込み層211が最も下位の層であり、分類ベクトルニューロン層251が最も上位の層である。以下の説明では、層211~251を、それぞれ「Conv層211」、「PrimeVN層221」、「ConvVN1層231」、「ConvVN2層241」、及び「ClassVN層251」とも呼ぶ。
【0050】
本実施形態において、入力データIMは分光データなので、1次元配列のデータである。例えば、入力データIMは、380nm~730nmの範囲の分光データから、10nm毎に36個の代表値を抽出したデータである。
【0051】
図9の例では2つの畳み込みベクトルニューロン層231,241を用いているが、畳み込みベクトルニューロン層の数は任意であり、畳み込みベクトルニューロン層を省略してもよい。但し、1つ以上の畳み込みベクトルニューロン層を用いることが好ましい。
【0052】
図9の機械学習モデル201は、更に、類似度を生成する類似度演算部261を有している。類似度演算部261は、ConvVN1層231と、ConvVN2層241と、ClassVN層251の出力から、後述する類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNをそれぞれ算出することが可能である。但し、類似度演算部261を省略してもよい。
【0053】
各層211~251の構成は、以下のように記述できる。
<第1の機械学習モデル201の構成の記述>
・Conv層211:Conv[32,6,2]
・PrimeVN層221:PrimeVN[26,1,1]
・ConvVN1層231:ConvVN1[20,5,2]
・ConvVN2層241:ConvVN2[16,4,1]
・ClassVN層251:ClassVN[n1,3,1]
・ベクトル次元VD:VD=16
これらの各層211~251の記述において、括弧前の文字列はレイヤー名であり、括弧内の数字は、順に、チャンネル数、カーネルサイズ、及び、ストライドである。例えば、Conv層211のレイヤー名は「Conv」であり、チャンネル数は32、カーネルサイズは1×6、ストライドは2である。図9では、各層の下にこれらの記述が示されている。各層の中に描かれているハッチングを付した矩形は、隣接する上位層の出力ベクトルを算出する際に使用されるカーネルを表している。本実施形態では、入力データIMが1次元配列のデータなので、カーネルも1次元の配列を有する。なお、各層211~251の記述で用いたパラメーターの値は例示であり、任意に変更可能である。
【0054】
Conv層211は、スカラーニューロンで構成された層である。他の4つの層221~251は、ベクトルニューロンで構成された層である。ベクトルニューロンは、ベクトルを入出力とするニューロンである。上記の記述では、個々のベクトルニューロンの出力ベクトルの次元は16で一定である。以下では、スカラーニューロン及びベクトルニューロンの上位概念として「ノード」という語句を使用する。
【0055】
図9では、Conv層211について、ノード配列の平面座標を規定する第1軸x及び第2軸yと、奥行きを表す第3軸zとが示されている。また、Conv層211のx,y,z方向のサイズが1,16,32であることが示されている。x方向のサイズとy方向のサイズを「解像度」と呼ぶ。本実施形態では、x方向の解像度は常に1である。z方向のサイズは、チャンネル数である。これらの3つの軸x,y,zは、他の層においても各ノードの位置を示す座標軸として使用する。但し、図9では、Conv層211以外の層では、これらの軸x,y,zの図示が省略されている。
【0056】
よく知られているように、畳み込み後のy方向の解像度W1は、次式で与えられる。
W1=Ceil{(W0-Wk+1)/S}
ここで、W0は畳み込み前の解像度、Wkはカーネルサイズ、Sはストライド、Ceil{X}はXを切り上げる演算を行う関数である。
図9に示した各層の解像度は、入力データIMのy方向の解像度を36とした場合の例であり、実際の各層の解像度は入力データIMのサイズに応じて適宜変更される。
【0057】
ClassVN層251は、n1個のチャンネルを有している。類似度演算部261は1個のチャンネルを有している。図9の例では(n1+1)=11である。ClassVN層251のチャンネルからは、複数の既知のクラスに対する判定値Class1-1~Class1-10が出力され、類似度演算部261のチャンネルからは、未知のクラスであることを示す判定値Class1-UNが出力される。これらの判定値Class1-1~Class1-10,Class1-UNのうちで最も大きな値を有するクラスが、入力データIMが属するクラスに相当する。一般に、n1は2以上の整数であり、第1の機械学習モデル201を用いて分類可能な既知のクラスの数である。任意の1個の機械学習モデルにおいて、分類可能な既知のクラスの数に対して、上限値nmaxと下限値nminが予め設定されることが好ましい。
【0058】
なお、未知クラスであることを示す判定値Class1-UNは省略してもよい。この場合には、既知のクラスに対する判定値Class1-1~Class1-10のうちで最も大きな値が予め定められた閾値未満である場合に、入力データIMのクラスが未知であるものと判定される。
【0059】
図10は、第2の機械学習モデル202の構成を示す説明図である。この機械学習モデル202は、第1の機械学習モデル201と同様に、Conv層212と、PrimeVN層222と、ConvVN1層232と、ConvVN2層242と、ClassVN層252と、類似度演算部262とを有している。
【0060】
各層212~252の構成は、以下のように記述できる。
<第2の機械学習モデル202の構成の記述>
・Conv層212:Conv[32,6,2]
・PrimeVN層222:PrimeVN[26,1,1]
・ConvVN1層232:ConvVN1[20,5,2]
・ConvVN2層242:ConvVN2[16,4,1]
・ClassVN層252:ClassVN[n2,3,1]
・ベクトル次元VD:VD=16
【0061】
図9図10を比較すれば理解できるように、第2の機械学習モデル202の層212~252のうち、下位の4つの層212~242は第1の機械学習モデル201の層211~241と同じ構成を有する。一方、第2の機械学習モデル202の最上位層252は、第1の機械学習モデル201の最上位層251とチャンネル数のみが異なる。図10の例では、ClassVN層252はn2個のチャンネルを有し、類似度演算部262は1個のチャンネルを有しており、(n2+1)=7である。ClassVN層252のチャンネルからは、複数の既知のクラスに対する判定値Class2-1~Class2-6が出力され、類似度演算部262のチャンネルからは、未知のクラスであることを示す判定値Class2-UNが出力される。第2の機械学習モデル202においても、既知のクラスの数に、第1の機械学習モデル201と同じ上限値nmax及び下限値nminが設定されることが好ましい。
【0062】
第2の機械学習モデル202は、第1の機械学習モデル201と異なる少なくとも1つの既知のクラスを有するように構成される。また、第1の機械学習モデル201と第2の機械学習モデル202では、分類可能なクラスが異なるので、カーネルの要素の値も互いに異なる。本開示では、Nを2以上の整数としたとき、N個の機械学習モデルのうちの任意の1個の機械学習モデルは、他の機械学習モデルと異なる少なくとも1つの既知のクラスを有するように構成される。なお、本実施形態では、機械学習モデルの個数Nを2以上としているが、本開示は1個の機械学習モデルのみを用いる場合にも適用可能である。
【0063】
図11は、媒体種学習工程(ステップS30)における機械学習モデルの準備工程の処理手順を示すフローチャートである。この準備工程は、例えば、印刷装置2001のメーカーで実行される工程である。
【0064】
ステップS310では、複数の初期印刷媒体の分光データを初期分光データとして生成する。本実施形態において、準備工程における機械学習モデルの学習に使用される初期印刷媒体は、すべて任意印刷媒体である。本開示において、「任意印刷媒体」とは、機械学習モデルによるクラス分類処理の対象となり得る印刷媒体であり、かつ、ユーザーの除外指示がなくてもクラス分類処理の対象から除外可能な印刷媒体である。一方、後述する媒体追加処理において追加される印刷媒体は、ユーザーの除外指示がなければクラス分類処理の対象から除外できない必須印刷媒体である。但し、初期印刷媒体の一部又は全部を必須印刷媒体としてもよい。
【0065】
ステップS310では、複数の初期印刷媒体について、未印刷の状態で分光分析装置31によって分光測定を実行することによって、初期分光データが生成される。この際、分光反射率のばらつきを考慮して、データ拡張を行うことが好ましい。一般に、分光反射率は、測色日や測定器によってばらつきが発生する。データ拡張は、このようなばらつきを模擬するために、測定された分光データにランダムなばらつきを付与することによって、複数の分光データを生成する処理である。なお、実際の印刷媒体の分光測定を行うことなく、仮想的に初期分光データを生成するようにしてもよい。この場合には、初期印刷媒体も仮想的なものとなる。
【0066】
ステップS320では、複数の初期印刷媒体について、媒体識別子リストIDLが作成される。図12は、媒体識別子リストIDLを示す説明図である。媒体識別子リストIDLには、個々の印刷媒体に付与された媒体識別子と、媒体名と、データサブ番号と、分光データとが登録されている。この例では、16個の印刷媒体に対して、「A-1」~「A-16」の媒体識別子が付与されている。媒体名は、ユーザーが印刷条件を設定するためのウィンドウに表示される印刷媒体の名称である。データサブ番号は、同じ印刷媒体に関する複数の分光データを区別するための番号である。この例では、各印刷媒体について、それぞれ3個の分光データが登録されている。但し、各印刷媒体に対する分光データの数は、異なっていても良い。各印刷媒体については、1個以上の分光データが登録されていれば良いが、複数の分光データが登録されることが好ましい。
【0067】
図11のステップS330では、複数の初期印刷媒体について、それぞれ印刷設定が作成されて、媒体・印刷設定テーブルPSTに登録される。図13は、媒体・印刷設定テーブルPSTを示す説明図である。媒体・印刷設定テーブルPSTの個々のレコードには、各印刷媒体について、媒体識別子と、印刷設定(印刷条件)が登録される。この例では、印刷設定として、プリンタープロファイルPR1~PR16と、媒体送り速度FS1~FS16と、乾燥時間DT1~DT16とが登録されている。媒体送り速度FS1~FS16、乾燥時間DT1~DT16は、前述の印刷条件の一部である。プリンタープロファイルPR1~PR16は、印刷装置2001の出力プロファイルであり、インク種毎、印刷媒体毎に作成される。具体的には、印刷装置2001を用いて印刷媒体上に色補正無しでテストチャートを印刷し、そのテストチャートを分光分析装置31で分光測定し、その分光測定結果を印刷設定作成部116が処理することによってプリンタープロファイルを作成することができる。媒体送り速度FS1~FS16と、乾燥時間DT1~DT16も、それぞれ実験的に決定できる。なお、「乾燥時間」とは、印刷装置2001内にある図示しない乾燥機において印刷後の印刷媒体を乾燥する時間である。印刷後の印刷媒体に送風を当てることによって乾燥させるタイプのプリンターでは、「乾燥時間」は送風時間である。また、乾燥機がないプリンターでは、「乾燥時間」は自然乾燥する待機時間である。なお、印刷設定としては、これら以外の初期の項目を設定してもよい。例えば、制御パラメーター、メンテナンスモード、ICCプロファイル、印刷モードのいずれかを含むことが好ましい。
【0068】
図11のステップS340では、複数の初期印刷媒体についての複数の初期分光データをクラスタリング処理することによって、グループ分けを実行する。図14は、クラスタリング処理によってグループ分けされた分光データを示す説明図である。この例では、複数の分光データが、第1の分光データ群SD1と第2の分光データ群SD2とにグループ分けされている。クラスタリング処理としては、例えば、k平均法を使用することができる。分光データ群SD1,SD2は、それぞれの分光データ群SD1,SD2の中心を代表する代表点G1,G2を有する。これらの代表点G1,G2は、例えば重心である。分光データがm個の波長における反射率で構成されている場合には、1つの分光データをm次元空間の1点を表すデータとして捉えることによって、分光データ同士の距離や、複数の分光データの重心を計算することが可能である。図14では図示の便宜上、2次元空間において複数の分光データの点を描いているが、実際には、分光データはm次元空間の点として表現できる。これらの代表点G1,G2は、後述するように、新たな印刷媒体をクラス分類処理の対象として追加する場合に、その追加印刷媒体の分光データが、複数の分光データ群SD1,SD2のいずれに最も近いかを判定する際に使用される。なお、代表点G1,G2としては、重心以外を使用してもよい。例えば、1グループに属する複数の分光データについて、各波長における反射率の最大値と最小値の平均値を求め、それらの平均値で構成される分光データを代表点として使用してもよい。
【0069】
本実施形態では、複数の分光データが2つの分光データ群SD1,SD2にグループ分けされているが、分光データ群は1つのみでもよく、或いは3つ以上の分光データ群を作成してもよい。また、クラスタリング処理以外の方法で複数の分光データ群を作成しても良い。但し、クラスタリング処理によって複数の分光データをグループ分けすれば、互いに近似した分光データを同じグループにまとめることができる。このような複数の分光データ群のそれぞれを用いて複数の機械学習モデルの学習を行えば、クラスタリング処理しない場合に比べて、機械学習モデルによるクラス分類処理の精度を高めることができる。
なお、クラスタリング処理によってグループ分けされた後に、新たな印刷媒体の分光データを追加しても、クラスタリング処理によってグループ分けされた状態と等価な状態に維持することが可能である。
【0070】
図11のステップS350では、グループ管理テーブルGT1,GT2が作成される。図15は、グループ管理テーブルGT1,GT2を示す説明図である。グループ管理テーブルGT1,GT2の個々のレコードには、1つの分光データについて、グループ番号と、媒体識別子と、データサブ番号と、代表点からの距離と、モデル番号と、クラスラベルと、現存エリアと、代表点の座標と、が登録される。グループ番号は、複数のグループ管理テーブルGT1,GT2を区別する番号である。媒体識別子とデータサブ番号は、図12で説明した媒体識別子リストIDLと同様に、個々の分光データを区別するために使用されている。モデル番号は、そのグループの分光データ群を用いて学習を行う機械学習モデルを識別する番号である。ここでは、図9及び図10に示した2つの機械学習モデル201,202の符号「201」,「202」が、モデル番号として使用されている。「クラスラベル」は、機械学習モデルによるクラス分類処理の結果に対応する値であり、分光データが教師データとして使用される際のラベルとしても使用される。モデル番号とクラスラベルは、媒体識別子毎に設定されている。「現存エリア」は、分光データが、教師用エリアと待避用エリアのいずれに属しているかを示している。「教師用エリア」は、その分光データが機械学習モデルの学習に実際に使用されていることを意味している。「待避用エリア」は、その分光データが機械学習モデルの学習には使用されておらず、教師用エリアから待避した状態にあることを意味している。準備工程では、すべての分光データが機械学習モデルの学習に使用されるので、教師用エリアに属している。
【0071】
図11のステップS360では、ユーザーが、クラス分類処理に使用する機械学習モデルを作成し、そのパラメーターを設定する。本実施形態では、図9図10に示す2つの機械学習モデル201,202が作成されてそれらのパラメーターが設定される。但し、ステップS360では、1つの機械学習モデルのみを作成にしてもよく、或いは、3つ以上の機械学習モデルを作成してもよい。ステップS370では、クラス分類処理部114が、分光データ群SD1,SD2を用いて機械学習モデル201,202の学習を実行する。学習が修了すると、学習済みの機械学習モデル201,202が記憶部120に保存される。
【0072】
ステップS380では、クラス分類処理部114が、学習済みの機械学習モデル201,202に分光データ群SD1,SD2を再度入力して、既知特徴スペクトル群KS1,KS2を生成する。既知特徴スペクトル群KS1,KS2は、以下で説明する特徴スペクトルの集合である。以下では、主として機械学習モデル201に対応付けられた既知特徴スペクトル群KS1を生成する方法を説明する。
【0073】
図16は、学習済みの機械学習モデル201に任意の入力データを入力することによって得られる特徴スペクトルSpを示す説明図である。ここでは、ConvVN1層231の出力から得られる特徴スペクトルSpについて説明する。図16の横軸は、ConvVN1層231の1つの平面位置(x,y)におけるノードの出力ベクトルの要素番号NDと、チャンネル番号NCとの組み合わせで表されるスペクトル位置である。本実施形態では、ノードのベクトル次元が16なので、出力ベクトルの要素番号NDは0から15までの16個である。また、ConvVN1層231のチャンネル数は20なので、チャンネル番号NCは0から19までの20個である。
【0074】
図16の縦軸は、各スペクトル位置での特徴値CVを示す。この例では、特徴値CVは、出力ベクトルの各要素の値VNDである。なお、特徴値CVとしては、出力ベクトルの各要素の値VNDと、後述するアクティベーション値とを乗算した値を使用してもよく、或いは、アクティベーション値をそのまま使用してもよい。後者の場合には、特徴スペクトルSpに含まれる特徴値CVの数はチャンネル数に等しく、20個である。なお、アクティベーション値は、そのノードの出力ベクトルのベクトル長さに相当する値である。
【0075】
1つの入力データに対してConvVN1層231の出力から得られる特徴スペクトルSpの数は、ConvVN1層231の平面位置(x,y)の数に等しいので、1×6=6個である。
同様に、1つの入力データに対して、ConvVN2層241の出力から3個の特徴スペクトルSpが得られ、ClassVN層251の出力から1個の特徴スペクトルSpが得られる。
【0076】
類似度演算部261は、学習済みの機械学習モデル201に教師データが再度入力されたときに、図16に示す特徴スペクトルSpを算出して、既知特徴スペクトル群KS1に登録する。
【0077】
図17は、既知特徴スペクトル群KS1の構成を示す説明図である。この例では、既知特徴スペクトル群KS1は、ConvVN1層231の出力から得られた既知特徴スペクトル群KS1_ConvVN1と、ConvVN2層241の出力から得られた既知特徴スペクトル群KS1_ConvVN2と、ClassVN層251の出力から得られた既知特徴スペクトル群KS1_ConvVNとを含んでいる。
【0078】
既知特徴スペクトル群KS1_ConvVN1の個々のレコードは、レコード番号と、レイヤー名と、ラベルLbと、既知特徴スペクトルKSpとを含んでいる。既知特徴スペクトルKSpは、教師データの入力に応じて得られた図16の特徴スペクトルSpと同じものである。図17の例では、分光データ群SD1を学習済みの機械学習モデル201に入力することによって、ConvVN1層231の出力から、個々のラベルLbの値に関連付けられた既知特徴スペクトルKSpが生成されて登録されている。例えば、ラベルLb=1に関連付けられてN1_1max個の既知特徴スペクトルKSpが登録され、ラベルLb=2に関連づけられてN1_2max個の既知特徴スペクトルKSpが登録され、ラベルLb=n1に関連づけられてN1_n1max個の既知特徴スペクトルKSpが登録されている。N1_1max,N1_2max,N1_n1maxは、それぞれ2以上の整数である。前述したように、個々のラベルLbは、互いに異なる既知のクラスに対応する。従って、既知特徴スペクトル群KS1_ConvVN1における個々の既知特徴スペクトルKSpは、複数の既知のクラスのうちの1つのクラスに関連付けられて登録されていることが理解できる。他の既知特徴スペクトル群KS1_ConvVN2,KS1_ConvVNも同様である。
【0079】
なお、ステップS380で使用される分光データ群は、ステップS370で使用された複数の分光データ群SD1,SD2と同じものである必要は無い。但し、ステップS380においても、ステップS370で使用された複数の分光データ群SD1,SD2の一部又は全部を利用すれば、新たな教師データを準備する必要が無いという利点がある。ステップS380は、省略してもよい。
【0080】
図18は、学習済みの機械学習モデルを用いた媒体種判別工程(ステップS40)の処理手順を示すフローチャートである。ここでの処理は、例えば、印刷装置2001を使用するユーザーによって実行される。
【0081】
ステップS410では、処理対象としての印刷媒体である対象印刷媒体について、判別処理が、必要か否かが判断される。判別処理が不要な場合、すなわち、対象印刷媒体の種類が既知である場合には、処理は終了する。一方、対象印刷媒体の種類が不明であり、その判別処理が必要な場合には、ステップS420に進む。
【0082】
ステップS420では、クラス分類処理部114が、分光分析装置31に対象印刷媒体の分光測定を実行させることによって、対象分光データを取得する。この対象分光データは、機械学習モデルによるクラス分類処理の対象となる。
【0083】
ステップS430では、クラス分類処理部114が、既存の学習済みの機械学習モデル201,202に対象分光データを入力して、対象分光データのクラス分類処理を実行する。この場合に、複数の機械学習モデル201,202を1個ずつ順次使用する第1の処理方法と、複数の機械学習モデル201,202を同時に使用する第2の処理方法とのいずれかを利用可能である。第1の処理方法では、まず、1個の機械学習モデル201を使用してクラス分類処理を実行し、その結果として対象分光データが未知のクラスに属するものと判定された場合に、他の機械学習モデル202を使用してクラス分類処理を実行する。第2の処理方法では、2つの機械学習モデル201,202を同時に用いて同じ対象分光データに対するクラス分類処理を並行して実行し、クラス分類処理部114がそれらの処理結果を統合する。本開示の発明者の実験によれば、第2の処理方法の方が第1の処理方法に比べて処理時間がより短くなるので、より好ましい。
【0084】
ステップS440では、クラス分類処理部114が、ステップS430におけるクラス分類処理の結果から、対象分光データが未知のクラスに属するか、既知のクラスに属するかを判定する。対象分光データが未知のクラスに属する場合には、対象印刷媒体は、準備工程で使用した複数の初期印刷媒体、および、後述する媒体追加処理において追加される印刷媒体のいずれにも該当しない新たな印刷媒体なので、後述するステップS500に進み、媒体追加処理が実行される。一方、対象分光データが既知のクラスに属する場合には、ステップS450に進む。
【0085】
ステップS450では、複数の機械学習モデル201,202のうちで、対象分光データが既知のクラスに属するものと判定した1つの機械学習モデルを用いて、既知特徴スペクトル群との類似度が算出される。例えば、第1の機械学習モデル201の処理によって対象分光データが既知のクラスに属するものと判定された場合には、その類似度演算部261が、ConvVN1層231と、ConvVN2層241と、ClassVN層251の出力から、既知特徴スペクトル群KS1との類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNをそれぞれ算出する。一方、第2の機械学習モデル202の処理によって対象分光データが既知のクラスに属するものと判定された場合には、その類似度演算部262が、既知特徴スペクトル群KS2との類似度S2_ConvVN1,S2_ConvVN2,S2_ClassVNをそれぞれ算出する。
以下では、第1の機械学習モデル201のConvVN1層231の出力から類似度S1_ConvVN1を算出する方法を説明する。
【0086】
類似度S1_ConvVN1は、例えば次式を用いて算出できる。
S1_ConvVN1(Class)=max[G{Sp(i,j),KSp(Class,k)}]
ここで、”Class”は複数のクラスに対する序数、G{a,b}はaとbの類似度を求める関数、Sp(i,j)は対象分光データに応じて得られるすべての平面位置(i,j)での特徴スペクトル、KSp(Class,k)は、ConvVN1層231と特定の”Class”とに関連付けられたすべての既知特徴スペクトル、max[X]はXの最大値を取る論理演算を示す。すなわち、類似度S1_ConvVN1は、ConvVN1層231のすべての平面位置(i,j)における特徴スペクトルSp(i,j)のそれぞれと、特定のクラスに対応するすべての既知特徴スペクトルKSp(k)のそれぞれとの間で算出された類似度のうちの最大値である。このような類似度S1_ConvVN1は、複数のラベルLbに対応する複数のクラスのそれぞれに対して求められる。類似度S1_ConvVN1は、対象分光データが、各クラスの特徴に類似している程度を表している。
【0087】
ConvVN2層241とClassVN層251の出力に関する類似度S1_ConvVN2,S1_ClassVNも、類似度S1_ConvVN1と同様に生成される。なお、これらの3つの類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNをすべて生成する必要はないが、これらのうちの1つ以上を生成することが好ましい。本開示において、類似度の生成に使用された層を、「特定層」とも呼ぶ。
【0088】
ステップS460では、クラス分類処理部114が、ステップS450で得られた類似度をユーザーに提示し、ユーザーは、その類似度がクラス分類処理の結果と整合しているか否かを確認する。類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNは、対象分光データが、各クラスの特徴に類似している程度を表しているので、これらの類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNの少なくとも1つから、クラス分類処理の結果の良否を確認することができる。例えば、3つの類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNのうちの少なくとも1つが、クラス分類処理の結果と一致していない場合に、両者が整合しないものと判定できる。他の実施形態では、3つの類似度S1_ConvVN1,S1_ConvVN2,S1_ClassVNのすべてが、クラス分類処理の結果と一致していない場合に、両者が整合しないものと判定してもよい。一般には、複数の特定層の出力から生成された複数の類似度のうちの予め定められた数の類似度がクラス分類処理の結果と一致していない場合に、両者が整合しないものと判定してもよい。なお、ステップS460の判定は、クラス分類処理部114が行ってもよい。また、ステップS450とステップS460は省略してもよい。
【0089】
類似度がクラス分類処理の結果と整合している場合には、ステップS470に進み、クラス分類処理部114が、クラス分類処理の結果に応じて対象印刷媒体の媒体識別子を判別する。この処理は、例えば、図15に示したグループ管理テーブルGT1,GT2を参照することによって行われる。
【0090】
前述したステップS460において、類似度がクラス分類処理の結果と整合していないと判定された場合には、対象印刷媒体は、準備工程で使用した複数の初期印刷媒体、および、後述する媒体追加処理において追加される印刷媒体のいずれにも該当しない新たな印刷媒体なので、以下で説明するステップS500に進む。ステップS500では、新たな印刷媒体をクラス分類処理の対象とするために、媒体追加処理が実行される。媒体追加処理では機械学習モデルの更新や追加が行われるので、媒体追加処理は、機械学習モデルを準備する工程の一部であると考えることができる。
【0091】
図19は、媒体追加処理の処理手順を示すフローチャートであり、図20は、媒体追加処理における分光データ群の管理状態を示す説明図である。以下の説明では、クラス分類処理の対象として追加される新たな印刷媒体を「追加印刷媒体」又は「追加媒体」と呼ぶ。
【0092】
ステップS510では、クラス分類処理部114が、既存の機械学習モデル201,202の中から、追加印刷媒体の分光データに最も近い機械学習モデルを探索する。「追加印刷媒体の分光データに最も近い機械学習モデル」とは、各機械学習モデル201,202の学習に使用されている教師データ群の代表点G1,G2と、追加印刷媒体の分光データとの距離が、最も小さな機械学習モデルを意味する。代表点G1,G2のぞれぞれと追加印刷媒体の分光データとの距離は、例えばユークリッド距離として算出できる。なお、追加印刷媒体の分光データとの距離が最も小さな教師データ群を「近接教師データ群」とも呼ぶ。
【0093】
ステップS520では、クラス分類処理部114が、ステップS510で探索された機械学習モデルについて、必須印刷媒体に相当するクラス数が上限値に達しているか否かを判定する。前述したように、本実施形態において、準備工程で使用された初期印刷媒体はすべて任意印刷媒体であり、準備工程以降に追加される印刷媒体はすべて必須印刷媒体である。必須印刷媒体に相当するクラス数が上限値に達していない場合には、ステップS530に進み、追加印刷媒体の分光データを追加した教師データで、その機械学習モデルの学習を実行する。図20の状態S1は、前述した準備工程において機械学習モデル202の学習に使用されていた分光データ群SD2の状態を示し、状態S2は、ステップS330において、追加印刷媒体の分光データが必須印刷媒体の分光データとして追加された状態を示している。図20において、「任意媒体」は、準備工程で使用された任意印刷媒体の分光データを意味し、「必須媒体」は、図19の媒体追加処理によって追加される必須印刷媒体の分光データを意味する。「教師用エリア」は、その分光データが機械学習モデルの学習に実際に使用される教師データであることを意味している。「待避用エリア」は、その分光データが機械学習モデルの学習には使用されておらず、教師用エリアから待避した状態にあることを意味している。また、教師用エリアに空きがある状態は、その機械学習モデル202のクラス数が上限値に達していないことを意味する。状態S1では、機械学習モデル202において、必須印刷媒体に相当するクラス数が上限値に達していないので、追加印刷媒体の分光データが教師用エリアに追加されて状態S2となり、その教師用エリアに属する分光データを教師データとして用いて機械学習モデル202の再学習が実行される。この再学習では、追加された分光データのみが教師データとして使用されるようにしても良い。
【0094】
図21は、図20の状態S2における媒体識別子リストIDLを示しており、図22は、状態S2における第2の分光データ群SD2用のグループ管理テーブルGT2を示している。媒体識別子リストIDLには、追加された印刷媒体の媒体識別子として「B-1」が割り当てられており、その媒体名と分光データが登録されている。追加印刷媒体の分光データについても、測定された分光データにランダムなばらつきを付与するデータ拡張を行うことによって、複数の分光データが生成されることが好ましい。グループ管理テーブルGT2にも、媒体識別子がB-1である追加された印刷媒体について、複数の分光データが登録されている。第2の分光データ群SD2のうちの教師データ群に関する代表点G2は、追加された分光データを含めて再計算される。
【0095】
図20の状態S2から更に印刷媒体が追加されてゆくと、状態S3,状態S4,状態S5へと推移する。状態S2~状態S4においても、状態S1と同様に、機械学習モデル202において、必須印刷媒体に相当するクラス数が上限値に達していないので、ステップS530が実行され、追加印刷媒体の分光データが教師用エリアに追加されて、機械学習モデル202の再学習が実行される。なお、状態S3では、機械学習モデル202において、必須印刷媒体に相当するクラス数と、任意印刷媒体に相当するクラス数との和が上限値に達しており、教師用エリアに空きが無い。そこで、状態S3から状態S4に推移する場合には、ステップS530において、必須印刷媒体である追加印刷媒体の分光データが教師用エリアに追加されると共に、教師用エリアから任意印刷媒体の分光データが削除される。削除された分光データは、待避用エリアに待避される。待避用エリアに分光データを待避する理由は、その分光データを再利用できるようにするためである。教師用エリアから待避用エリアに待避される任意印刷媒体の分光データは、教師データ群の代表点からの距離が最も大きなものを選択することが好ましい。こうすれば、教師データ同士の距離を小さくできるので、クラス分類処理の精度を高めることができる。
【0096】
図20の状態S5では、機械学習モデル202において、必須印刷媒体に相当するクラス数が上限値に達している。この場合には、ステップS520からステップS540に進む。ステップS540では、クラス分類処理部114が、ステップS510で探索された機械学習モデルと同一グループに属し、かつ、必須印刷媒体に相当するクラス数が上限値に達していない機械学習モデルを探索する。そのような機械学習モデルが存在する場合には、ステップS550からステップS560に進み、追加印刷媒体の分光データを追加した教師データで、その機械学習モデルの学習を実行する。この処理は、前述したステップS530の処理と同じである。
【0097】
ステップS540における探索によって、機械学習モデルが発見されなかった場合には、ステップS550からステップS570に進み、新しい機械学習モデルを作成すると共に、追加印刷媒体の分光データを含む教師データで新しい機械学習モデルの学習を実行する。この処理は、図20の状態S5から状態S6に変化する処理に相当する。状態S5では、機械学習モデル202において、必須印刷媒体に相当するクラス数が上限値に達しており、かつ、同一グループに属する他の機械学習モデルが存在しない。そこで、ステップS570の処理により、状態S6に示すように、新たな機械学習モデル203が作成され、新たな必須印刷媒体である追加印刷媒体の分光データを含む教師データで新しい機械学習モデルの学習が実行される。このとき、追加印刷媒体の分光データのみでは教師データとして不十分なので、待避用エリアに待避していた1つ以上の任意印刷媒体の分光データも教師データとして使用される。こうすれば、新たな機械学習モデル203によるクラス分類処理の精度を高めることができる。
【0098】
なお、上述したステップS540~S560を省略して、ステップS520において必須印刷媒体のクラス数が上限値に等しい場合に、直ちにステップS570に進むようにしてもよい。
【0099】
図23は、状態S6における第2グループ用のグループ管理テーブルGT2を示している。媒体識別子がA-11~A-16である印刷媒体の分光データは、準備工程で使用されていた任意印刷媒体の分光データである。また、媒体識別子がB-1~B-11である印刷媒体の分光データは、準備工程後に追加された必須印刷媒体の分光データである。このグループ管理テーブルGT2では、同一のグループに属する2つの機械学習モデル202,203についての分光データの状態が登録されている。機械学習モデル202については、追加された10個の必須印刷媒体に関する分光データが教師用エリアに収容され、6つの任意印刷媒体に関する分光データが待避用エリアに待避されている。機械学習モデル203については、1個の必須印刷媒体に関する分光データと6つの任意印刷媒体に関する分光データが教師用エリアに収容され、待避用エリアは空である。各機械学習モデル202,203の教師データ群の代表点G2a,G2bは、それぞれの教師用エリアに収容された分光データを用いて算出されている。
【0100】
なお、図19に示した媒体追加処理は、既存の機械学習モデルの数が1個の場合にも実行することができる。既存の機械学習モデルの数が1個の場合とは、例えば、図10に示した第2の機械学習モデル202が準備されておらず、図18の処理が、図9に示した第1の機械学習モデル201のみを用いて実行される場合である。この場合には、図11のステップS370の処理は、第2の機械学習モデル202を新たな機械学習モデルとして追加する処理となる。このように、第1の機械学習モデル201のみを用いて行ったクラス分類処理において、その入力データが未知のクラスに属すると判定された場合に第2の機械学習モデル202を新たな機械学習モデルとして追加する処理は、2個の機械学習モデル201,202を準備する処理の一例として理解することも可能である。
【0101】
ステップS530,S560,S570のいずれかで機械学習モデルの更新又は追加が行われると、ステップS580において、クラス分類処理部114が、更新又は追加された機械学習モデルに教師データを再度入力して既知特徴スペクトル群を生成する。この処理は、図18のステップS430の処理と同じなので、説明を省略する。ステップS590では、印刷設定作成部116が、追加した対象印刷媒体の印刷設定を作成する。この処理は、図11のステップS330の処理と同じなので、説明を省略する。
【0102】
こうして図19の処理が終了すると、図18の処理も完了する。この後は、任意のタイミングで図18の処理が再度実行される。
【0103】
上述した図19の処理において、ステップS510の処理は、N個の機械学習モデルの学習に使用されていたN個の教師データ群のうち、追加印刷媒体の分光データに最も近い代表点を有する近接教師データ群を選択するとともに、その近接教師データ群を用いて学習が行われていた特定の機械学習モデルを選択する処理に相当する。このような処理を行えば、その近接教師データ群に追加印刷媒体の分光データを追加しても、追加後の教師データ群を、クラスタリング処理によってグループ分けされた状態と等価な状態に維持することができる。この結果、機械学習モデルによるクラス分類処理の精度を高めることができる。
【0104】
図19の処理によれば、新たな印刷媒体をクラス分類処理の対象に追加することが可能である。一方、ユーザーの指示に応じて、印刷媒体をクラス分類処理の対象から除外することも可能である。
【0105】
図24は、機械学習モデルの更新処理の処理手順を示すフローチャートである。
ステップS610では、既存の機械学習モデルの中に、クラス数が上限値未満の機械学習モデルが存在するか否かを判定する。Nを2以上の整数としたとき、N個の既存の機械学習モデルが存在する場合には、その中で、クラス数が上限値未満の機械学習モデルが存在するか否かが判定される。但し、既存の機械学習モデルの数Nは、1としてもよい。本実施形態では、図9図10に示す2つの既存の機械学習モデル201,202が存在しており、第1の機械学習モデル201はクラス数が上限値に等しく、第2の機械学習モデル202はクラス数が上限値未満である。既存の機械学習モデルの中にクラス数が上限値未満の機械学習モデルが存在しない場合には、後述するステップS640に進み、新たな機械学習モデルが追加される。一方、クラス数が上限値未満の機械学習モデルが存在する場合には、ステップS620に進み、その機械学習モデルが更新される。
【0106】
ステップS620では、クラス分類処理部114が、クラス数が上限値未満の機械学習モデルについて、その最上位層のチャンネル数を1つ増加するようにその機械学習モデルを更新する。本実施形態では、第2の機械学習モデル202の最上位層のチャンネル数(n2+1)が、3から4に変更される。ステップS630では、クラス分類処理部114が、ステップS620で更新した機械学習モデルの学習を実行する。この学習の際には、それまでに使用されていた第2の機械学習モデル202用の教師データ群TD2とともに、図18のステップS420で取得された対象分光データが新たな教師データとして使用される。なお、新たな教師データとしては、ステップS420で取得された対象分光データに加えて、同じ印刷媒体PMの分光測定から得られた他の複数の分光スペクトルデータも使用することが好ましい。このため、分光分析装置31は、1つの印刷媒体PMの複数の位置において分光スペクトルデータをそれぞれ取得するように構成されていることが好ましい。こうして学習が終了すると、更新された機械学習モデル202が、対象分光データに対応する既知のクラスを有するものとなる。従って、更新された機械学習モデル202を用いて、この印刷媒体PMの種類を認識することが可能となる。
【0107】
ステップS640では、クラス分類処理部114が、対象分光データに対応するクラスを有する新たな機械学習モデルを追加し、そのパラメーターを設定する。この新たな機械学習モデルは、最上位層のチャンネル数を除いて、図9に示した第1の機械学習モデル201と同じ構成を有することが好ましい。この新たな機械学習モデルは、例えば、図10に示す第2の機械学習モデル202と同様に、2つ以上の既知クラスを有するものとすることが好ましい。2つ以上の既知クラスのうちの1つは、対象分光データに対応するクラスである。また、2つ以上の既知クラスのうちの少なくとも1つは、既存の機械学習モデルの少なくとも1つの既知クラスと同じものとすることが好ましい。新たな機械学習モデルの1つのクラスを既存の機械学習モデルの既知クラスと同じにすることは、その既知クラスのために既存の機械学習モデルの学習で使用されていた教師データと同じ教師データを用いて、新たな機械学習モデルの学習を行うことによって実現される。新たな機械学習モデルに2つ以上の既知クラスを設ける理由は、既知クラスを1つだけとすると、その学習を十分な精度で行えない可能性があるからである。
【0108】
新たな機械学習モデルに採用する既存の機械学習モデルのクラスとしては、例えば、以下のクラスの中から選択することが好ましい。
(a)既存の機械学習モデルにおける複数の既知クラスの中で、対象分光データと最も類似度が高い光学スペクトルデータに対応するクラス。
(b)既存の機械学習モデルにおける複数の既知クラスの中で、対象分光データと最も類似度が低い光学スペクトルデータに対応するクラス。
(c)既存の機械学習モデルにおける複数の既知クラスの中で、図18のステップS440において対象分光データが属するものと誤判別されたクラス。
このうち、上記(a)又は(c)のクラスを採用すれば、新たな機械学習モデルにおける誤判別を少なくすることができる。また、上記(b)のクラスを採用すれば、新たな機械学習モデルの学習時間を短くすることが可能となる。
【0109】
ステップS650では、クラス分類処理部114が、追加した機械学習モデルの学習を実行する。この学習では、図18のステップS420で取得された対象分光データが新たな教師データとして使用される。また、新たな教師データとしては、ステップS420で取得された対象分光データに加えて、同じ印刷媒体PMの分光測定から得られた他の複数の分光スペクトルデータも使用することが好ましい。また、新たな機械学習モデルの1つ以上のクラスを既存の機械学習モデルの既知クラスと同じにする場合には、その既知クラスのために既存の機械学習モデルの学習で使用されていた教師データも使用される。
【0110】
なお、第2の機械学習モデル202の既知のクラスの数が上限値に達すると、図24のステップS640,S650によって、3番目の機械学習モデルが追加される。4番目以降の機械学習モデルも同様である。このように、本実施形態では、Nを2以上の整数としたとき、(N-1)個の機械学習モデルは上限値に等しい数のクラスを有し、他の1個の機械学習モデルは上限値以下の数のクラスを有するものとなる。また、N個の機械学習モデルを用いて対象分光データに対するクラス分類処理を実行したときに対象分光データが未知のクラスに属するものと判定されたときには、以下のいずれかの処理が実行される。
(1)他の1個の機械学習モデルが上限値未満の数のクラスを有する場合には、ステップS620,S630の処理により、他の1個の機械学習モデルについて、対象分光データを含む教師データを用いた学習を行うことによって対象分光データに対する新たなクラスを追加する。
(2)他の1個の機械学習モデルが上限値に等しい数のクラスを有する場合には、ステップS640,S650の処理により、対象分光データに対応するクラスを有する新たな機械学習モデルを追加する。
これらの処理によれば、N個の機械学習モデルで対象分光データのクラス分類がうまくできなかった場合にも、その対象分光データに対応するクラスへのクラス分類を行うことが可能となる。
【0111】
なお、図24に示した機械学習モデルの更新処理は、既存の機械学習モデルの数が1個の場合にも実行することができる。既存の機械学習モデルの数が1個の場合とは、例えば、図10に示した第2の機械学習モデル202が準備されておらず、図18の処理が、図9に示した第1の機械学習モデル201のみを用いて実行される場合である。この場合には、図24のステップS640,S650は、第2の機械学習モデル202を新たな機械学習モデルとして追加する処理となる。このように、第1の機械学習モデル201のみを用いて行ったクラス分類処理において、その入力データが未知のクラスに属すると判定された場合に第2の機械学習モデル202を新たな機械学習モデルとして追加する処理は、2個の機械学習モデル201,202を準備する処理の一例として理解することも可能である。
【0112】
ステップS660では、クラス分類処理部114が、更新または追加した機械学習モデルに教師データを再度入力して既知特徴スペクトル群を生成する。
【0113】
以上のように、本実施形態では、Nを2以上の整数としたとき、N個の機械学習モデルを用いてクラス分類処理を実行するので、1個の機械学習モデルで多数のクラスへの分類処理を行う場合に比べて、処理を高速に実行できる。また、既存の機械学習モデルでは被分類データのクラス分類がうまくできない場合に、既存の機械学習モデルにクラスを追加するか、又は、新たな機械学習モデルを追加することによって、その被分類データに対応するクラスへのクラス分類を行うことが可能となる。
【0114】
なお、上記では、ベクトルニューロンを用いるベクトルニューラルネットワーク型の機械学習モデルを用いていたが、この代わりに、通常の畳み込みニューラルネットワークのようにスカラーニューロンを用いる機械学習モデルを使用してもよい。但し、ベクトルニューラルネットワーク型の機械学習モデルは、スカラーニューロンを用いる機械学習モデルに比べてクラス分類処理の精度がより高い点で好ましい。
【0115】
図9に示した第1の機械学習モデル201における各層の出力の演算方法は、以下の通りである。第2の機械学習モデル202も同様である。
【0116】
PrimeVN層221の各ノードは、Conv層211の1×1×32個のノードのスカラー出力を32次元のベクトルとみなして、このベクトルに変換行列を乗ずることによってそのノードのベクトル出力を得る。この変換行列は、1×1のカーネルの要素であり、機械学習モデル201の学習によって更新される。なお、Conv層211とPrimeVN層221の処理を統合して、1つのプライマリーベクトルニューロン層として構成することも可能である。
【0117】
PrimeVN層221を「下位層L」と呼び、その上位側に隣接するConvVN1層231を「上位層L+1」と呼ぶとき、上位層L+1の各ノードの出力は、以下の式を用いて決定される。
【数1】
ここで、
MLiは、下位層Lにおけるi番目のノードの出力ベクトル、
ML+1jは、上位層L+1におけるj番目のノードの出力ベクトル、
vijは、出力ベクトルML+1jの予測ベクトル、
WLijは、下位層Lの出力ベクトルMLiから予測ベクトルvijを算出するための予測行列、
ujは、予測ベクトルvijの和、すなわち線形結合、である和ベクトル、
ajは、和ベクトルujのノルム|uj|を正規化することによって得られる正規化係数であるアクティベーション値、
F(X)は、Xを正規化する正規化関数である。
【0118】
正規化関数F(X)としては、例えば以下の(4a)式または(4b)式を使用できる。
【数2】
ここで、
kは、上位層L+1のすべてのノードに対する序数、
βは、任意の正の係数である調整パラメーターであり、例えばβ=1である。
【0119】
上記(4a)式では、上位層L+1のすべてのノードに関して和ベクトルujのノルム|uj|をソフトマックス関数で正規化することによってアクティベーション値ajが得られる。一方、(4b)式では、和ベクトルujのノルム|uj|を、上位層L+1のすべてのノードに関するノルム|uj|の和で除算することによってアクティベーション値ajが得られる。なお、正規化関数F(X)としては、(4a)式や(4b)式以外の他の関数を用いてもよい。
【0120】
上記(3)式の序数iは、上位層L+1におけるj番目のノードの出力ベクトルML+1jを決めるために使用される下位層Lのノードに便宜上割り振られるものであり、1~nの値をとる。また、整数nは、上位層L+1におけるj番目のノードの出力ベクトルML+1jを決めるために使用される下位層Lのノードの数である。従って、整数nは次式で与えられる。
n=Nk×Nc (6)
ここで、Nkはカーネルの要素数であり、Ncは下位層であるPrimeVN層221のチャンネル数である。図9の例ではNk=3、Nc=26なので、n=78である。
【0121】
ConvVN1層231の出力ベクトルを求めるために使用される1つのカーネルは、カーネルサイズ1×3を表面サイズとし、下位層のチャンネル数26を深さとする1×3×26=78個の要素を有しており、これらの要素のそれぞれは予測行列WLijである。また、ConvVN1層231の20個のチャンネルの出力ベクトルを生成するためには、このカーネルが20組必要である。従って、ConvVN1層231の出力ベクトルを求めるために使用されるカーネルの予測行列WLijの数は、78×20=1560個である。これらの予測行列WLijは、機械学習モデル201の学習により更新される。
【0122】
上述した(2)~(5)式から分かるように、上位層L+1の個々のノードの出力ベクトルML+1jは、以下の演算によって求められる。
(a)下位層Lの各ノードの出力ベクトルMLiに予測行列WLijを乗じて予測ベクトルvijを求め、
(b)下位層Lの各ノードから得られた予測ベクトルvijの和、すなわち線形結合、である和ベクトルujを求め、
(c)和ベクトルujのノルム|uj|を正規化することによって正規化係数であるアクティベーション値ajを求め、
(d)和ベクトルujをノルム|uj|で除算し、更に、アクティベーション値ajを乗じる。
【0123】
なお、アクティベーション値ajは、上位層L+1のすべてのノードに関してノルム|uj|を正規化することによって得られる正規化係数である。従って、アクティベーション値ajは、上位層L+1内の全ノードの中における各ノードの相対的な出力強度を示す指標と考えることができる。(4)式,(4a)式、(4b)式、及び(5)式で使用されるノルムは、典型的な例ではベクトル長さを表すL2ノルムである。このとき、アクティベーション値ajは、出力ベクトルML+1jのベクトル長さに相当する。アクティベーション値ajは、上述した(4)式と(5)式で使用されるだけなので、ノードから出力される必要は無い。但し、アクティベーション値ajを外部に出力するように上位層L+1を構成することも可能である。
【0124】
ベクトルニューラルネットワークの構成は、カプセルネットワークの構成とほぼ同じであり、ベクトルニューラルネットワークのベクトルニューロンがカプセルネットワークのカプセルに相当する。但し、ベクトルニューラルネットワークで使用される上述の(2)~(5)式による演算は、カプセルネットワークで使用される演算と異なる。両者の最も大きな違いは、カプセルネットワークでは、上記(3)式の右辺の予測ベクトルvijにそれぞれ重みが乗じられており、その重みが、動的ルーティングを複数回繰り返すことによって探索される点である。一方、本実施形態のベクトルニューラルネットワークでは、上述した(2)~(5)式を順番に1回計算することによって出力ベクトルML+1jが得られるので、動的ルーティングを繰り返す必要が無く、演算がより高速であるという利点がある。また、本実施形態のベクトルニューラルネットワークは、カプセルネットワークよりも演算に必要とするメモリー量がカプセルネットワークより少なく、本開示の発明者の実験によれば、約1/2~1/3のメモリー量で済むという利点もある。
【0125】
ベクトルを入出力とするノードを使用するという点では、ベクトルニューラルネットワークはカプセルネットワークと同じである。従って、ベクトルニューロンを使用する利点もカプセルネットワークと共通している。また、複数の層211~251は、上位に行くほどより大きな領域の特徴を表現し、下位に行くほどより小さな領域の特徴を表現する、という点は、通常の畳み込みニューラルネットワークと同じである。ここで、「特徴」とは、ニューラルネットワークへの入力データに含まれている特徴的な部分を意味する。ベクトルニューラルネットワークやカプセルネットワークでは、或るノードの出力ベクトルが、そのノードが表現する特徴の空間的な情報を表す空間情報を含む点で、通常の畳み込みニューラルネットワークよりも優れている。すなわち、或るノードの出力ベクトルのベクトル長さは、そのノードが表現する特徴の存在確率を表し、ベクトル方向がその特徴の方向やスケール等の空間情報を表している。従って、同じ層に属する2つのノードの出力ベクトルのベクトル方向は、それぞれの特徴の位置関係を表す。あるいは、当該2つのノードの出力ベクトルのベクトル方向は、特徴のバリエーションを表わすとも言える。例えば、「目」の特徴に対応するノードなら、出力ベクトルの方向は、目の細さ、吊り上がり方、などのバリエーションを表し得る。通常の畳み込みニューラルネットワークでは、プーリング処理によって特徴の空間情報が消失してしまうと言われている。この結果、ベクトルニューラルネットワークやカプセルネットワークは、通常の畳み込みニューラルネットワークに比べて入力データを識別する性能に優れているという利点がある。
【0126】
ベクトルニューラルネットワークの利点は、以下のように考えることも可能である。すなわち、ベクトルニューラルネットワークでは、ノードの出力ベクトルが、入力データの特徴を連続空間内の座標として表現すること、に利点がある。従って、ベクトル方向が近ければ特徴が似ている、というように出力ベクトルを評価できる。また、入力データに含まれている特徴が教師データではカバーできていなくても、補間してその特徴を判別できる、などの利点もある。一方、通常の畳み込みニューラルネットワークは、プーリング処理によって無秩序な圧縮がかかるため、入力データの特徴を連続空間内の座標として表現できない、という欠点がある。
【0127】
ConvVN2層241とClassVN層251の各ノードの出力も、上述した(2)~(5)式を用いて同様に決定されるので、詳細な説明は省略する。最上位層であるClassVN層251の解像度は1×1であり、チャンネル数は(n1+1)である。
【0128】
ClassVN層251の出力は、既知のクラスに対する複数の判定値Class1-1~Class1-2と、未知のクラスであることを示す判定値Class1-UNとに変換される。これらの判定値は、通常はソフトマックス関数によって正規化された値である。具体的には、例えば、ClassVN層251の各ノードの出力ベクトルから、その出力ベクトルのベクトル長さを算出し、更に、各ノードのベクトル長さをソフトマックス関数で正規化する、という演算を実行することによって、個々のクラスに対する判定値を得ることができる。上述したように、上記(4)式で得られるアクティベーション値ajは、出力ベクトルML+1jのベクトル長さに相当する値であり、正規化されている。従って、ClassVN層251の各ノードのそれぞれにおけるアクティベーション値ajを出力して、そのまま各クラスに対する判定値として使用してもよい。
【0129】
上述の実施形態では、機械学習モデル201,202として、上記(2)式~(5)式の演算によって出力ベクトルを求めるベクトルニューラルネットワークを用いていたが、この代わりに、米国特許第5210798号公報や国際公開2019/083553号公報に開示されているカプセルネットワークを用いてもよい。また、スカラーニューロンのみを用いるニューラルネットワークを用いてもよい。
【0130】
なお、既知特徴スペクトル群KS1,KS2の生成方法や、ConvVN1層等の中間層の出力データの生成方法は上記実施形態に限定されるものではなく、例えば、Kmeans法を用いてこれらのデータを生成してもよい。また、PCAやICA、Fisherなどの変換を用いてこれらのデータを生成してもよい。また、既知特徴スペクトル群KSGと中間層の出力データの変換方法は異なっていてもよい。
【0131】
次に、印刷条件設定工程(ステップS50)の処理方法について説明する。
印刷条件設定工程(ステップS50)では、判別されたインク種と、判別された媒体種とに応じた印刷条件を設定する。図25は、印刷条件設定工程(ステップS50)における詳細な処理方法を示すフローチャートである。
印刷条件は、記憶部120に格納された印刷条件設定テーブルPPT(図26)から導出される。印刷条件設定テーブルPPTは、演算部110がインク・印刷条件データ106(制御パラメーター、メンテナンスモード、ICCプロファイル、印刷モードうちの少なくとも一つ))と媒体・印刷設定テーブルPST(図13)とを統合し、インク種と媒体種とに対応する印刷条件を算出したテーブルデータである。
インク種と媒体種とで、印刷条件が異なる項目がある場合には、インク種が保持する印刷条件と、媒体種が保持する印刷条件の、どちらを優先させるか設定しておいても良い。例えば、インク種Aと媒体種A-1の組み合わせの場合、印刷条件設定テーブルPPTを参照し、Pt11が導出されるが、出力プロファイルはインク種Aに対応するPO10、デバイスリンクプロファイルはインク種Aに対応するPD10、ヒーター温度はインク種Aに対応する条件が設定される。また、インク種Bと媒体種A-1の組み合わせの場合、印刷条件設定テーブルPPTを参照し、Pt21が導出されるが、出力プロファイルは媒体種A-1に対応するPR1、デバイスリンクプロファイルは媒体種A-1に対応するDL1、ヒーター温度は媒体種A-1に対応する条件が設定される。さらに、インク種Cと媒体種A-1の組み合わせの場合、印刷条件設定テーブルPPTを参照し、Pt31が導出されるが、出力プロファイルはインク種Cに対応するP030、デバイスリンクプロファイルは媒体種A-1に対応するDL1、ヒーター温度はインク種Cに対応する条件が設定される。またさらに、インク種Dと媒体種A-1の組み合わせの場合、印刷条件設定テーブルPPTを参照し、Pt41が導出されるが、出力プロファイルは媒体種A-1に対応するPR1、デバイスリンクプロファイルはインク種Dに対応するPD40、ヒーター温度はインク種Dに対応する条件が設定される。出力プロファイル、デバイスリンクプロファイル、および、ヒーター温度を例に挙げて説明したが、他の項目についても同様であり、インク種が保持する印刷条件と、媒体種が保持する印刷条件と、を組み合わせて設定できる。
なお、インク種または媒体種に、それぞれ紐付けられている条件を設定するのではなく、特定のインク種と特定の媒体種の組み合わせにより使用される条件を設定しても良い。
また、インク種と媒体種とで、印刷条件が異なる項目があることを報知し、オペレーター等に、条件の選択や設定をさせても良い。
【0132】
ステップS710では、演算部110は、ローカルに印刷条件があるか否かを判断する。具体的には、ユーザーが用いている情報処理装置20(例えば、パーソナルコンピューター)に、判別されたインク種及び媒体種に対応する印刷条件設定テーブルPPTが格納されているか否かを判断する。
【0133】
ローカルに印刷条件があると判断した場合(YES)は、ステップS720に移行し、ローカルに印刷条件がないと判断した場合(NO)は、ステップS730に移行する。
【0134】
ステップS720では、演算部110は、印刷条件設定テーブルPPTに基づいて、印刷条件を設定する。また、演算部110は、設定された印刷条件を表示部150に表示させる。
【0135】
一方、ステップS730では、通信部130を介してクラウド上で印刷条件を検索する。そして、ステップS720に移行し、演算部110は、検索された印刷条件を設定する。
その後、印刷処理部112は、設定された印刷条件に従って印刷を実行させる。
【0136】
以上、本実施形態によれば、インク種と媒体種とを判別するとともに、インク種と媒体種との組み合わせによる、適切な印刷条件(例えば、制御パラメーター、メンテナンスモード、ICCプロファイル、印刷モード)を設定することができる。
【符号の説明】
【0137】
1…印刷条件設定システム、20…情報処理装置、30,31…分光分析装置、102…インク種判別器、104…教師データ、105…訓練モデル、106…インク・印刷条件データ、110…演算部、112…印刷処理部、114…クラス分類処理部、116…印刷設定作成部、117…学習部、118…判別器管理部、120…記憶部、130…通信部、140…入力部、150…表示部、201…機械学習モデル、202…機械学習モデル、203…機械学習モデル、261…類似度演算部、262…類似度演算部、2001…印刷装置、2002…制御部、2010…カートリッジ、2020…キャリッジ、2030…装着部、2040…ヘッド、2045…プラテン、2052…キャリッジモーター、2054…駆動ベルト、2055…ガイドロッド、2056…搬送モーター、2058…搬送ローラー、2060…メンテナンス部、2061…キャッピング部、2062…キャップ、2063…払拭部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26