JP7185186B2 - 画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム - Google Patents

画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム Download PDF

Info

Publication number
JP7185186B2
JP7185186B2 JP2019017098A JP2019017098A JP7185186B2 JP 7185186 B2 JP7185186 B2 JP 7185186B2 JP 2019017098 A JP2019017098 A JP 2019017098A JP 2019017098 A JP2019017098 A JP 2019017098A JP 7185186 B2 JP7185186 B2 JP 7185186B2
Authority
JP
Japan
Prior art keywords
range
data
dot data
input
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019017098A
Other languages
English (en)
Other versions
JP2020127081A (ja
Inventor
幸喜 古川
真樹 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2019017098A priority Critical patent/JP7185186B2/ja
Priority to US16/775,448 priority patent/US11325398B2/en
Publication of JP2020127081A publication Critical patent/JP2020127081A/ja
Application granted granted Critical
Publication of JP7185186B2 publication Critical patent/JP7185186B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/21Ink jet for multi-colour printing
    • B41J2/2132Print quality control characterised by dot disposition, e.g. for reducing white stripes or banding
    • B41J2/2135Alignment of dots
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/21Ink jet for multi-colour printing
    • B41J2/2121Ink jet for multi-colour printing characterised by dot size, e.g. combinations of printed dots of different diameter
    • B41J2/2128Ink jet for multi-colour printing characterised by dot size, e.g. combinations of printed dots of different diameter by means of energy modulation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/015Ink jet characterised by the jet generation process
    • B41J2/04Ink jet characterised by the jet generation process generating single droplets or particles on demand
    • B41J2/045Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
    • B41J2/04501Control methods or devices therefor, e.g. driver circuits, control circuits
    • B41J2/04595Dot-size modulation by changing the number of drops per dot
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/205Ink jet for printing a discrete number of tones
    • B41J2/2054Ink jet for printing a discrete number of tones by the variation of dot disposition or characteristics, e.g. dot number density, dot shape
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/21Ink jet for multi-colour printing
    • B41J2/2121Ink jet for multi-colour printing characterised by dot size, e.g. combinations of printed dots of different diameter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Image Processing (AREA)

Description

本明細書は、印刷媒体上にドットを形成する印刷実行部のための画像処理に関する。
特許文献1に開示された画像処理装置は、レーザ複写機などの画像形成装置に適用される。この画像処理装置は、多値の原画像に対して設定された8画素×8画素のマトリクスの各画素の階調値をニューラルネットワークに入力する。画像処理装置は、ニューラルネットワークによる二値化演算を実行して、4画素×4画素のマトリクスの各画素の二値データを出力する。
特開平11-55507号公報 特開平4-47473号公報
しかしながら、上記技術では、二値データを用いて印刷される画像に表れ得る周期性や疑似輪郭などの画質を低下させる要素を低減させる工夫が十分に成されているとは言えなかった。このために、印刷される画像の画質が低下する可能性があった。
本明細書は、ドットデータを用いて印刷される画像の画質を向上できる技術を開示する。
本明細書に開示された技術は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
[適用例1]印刷材を用いて印刷媒体上にドットを形成する印刷実行部のための画像処理装置であって、複数個の画素を含む対象画像を示す対象画像データを取得する画像取得部と、前記対象画像データを用いて、前記対象画像に対応する印刷画像の複数個の画素のそれぞれについて前記ドットの形成状態を示すドットデータを生成するドットデータ生成部と、を備え、前記ドットデータ生成部は、前記対象画像データのうち、前記対象画像のうちの一部である第1入力範囲に対応する第1部分画像データと、入力パラメータである第1値と、を機械学習モデルに入力することによって、前記印刷画像のうち、前記第1入力範囲に対応する範囲を含む第1出力範囲内の前記ドットの形成状態を示す第1部分ドットデータを前記機械学習モデルに出力させ、前記対象画像データのうち、前記対象画像のうちの前記第1入力範囲とは異なる部分である第2入力範囲に対応する第2部分画像データと、前記入力パラメータとしての第2値であって前記第1値とは異なる前記第2値と、を前記機械学習モデルに入力することによって、前記印刷画像のうち、前記第2入力範囲に対応する範囲を含む第2出力範囲内の前記ドットの形成状態を示す第2部分ドットデータを前記機械学習モデルに出力させ、前記第1部分ドットデータと前記第2部分ドットデータとを用いて、前記ドットデータを生成し、前記機械学習モデルは、前記第2部分画像データが前記第1部分画像データと同一のデータである場合であっても、前記入力パラメータが異なることに基づいて、前記第1部分ドットデータとは異なる前記第2部分ドットデータを出力する、画像処理装置。
上記構成によれば、第2部分画像データが第1部分画像データと同一のデータである場合であっても、入力パラメータが異なることに基づいて、第1部分ドットデータとは異なる第2部分ドットデータが出力される。この結果、ドットデータによって示される画像に、対象画像には存在しない周期性が表れることを抑制できる。したがって、ドットデータを用いて印刷される画像の画質を向上できる。
[適用例2]印刷材を用いて印刷媒体上にドットを形成する印刷実行部のための画像処理装置であって、複数個の画素を含む対象画像を示す対象画像データを取得する画像取得部と、前記対象画像データを用いて、前記対象画像に対応する印刷画像の複数個の画素のそれぞれについて前記ドットの形成状態を示すドットデータを生成するドットデータ生成部と、を備え、前記ドットデータ生成部は、前記対象画像データのうち、前記対象画像のうちの一部である第1入力範囲に対応する第1部分画像データを機械学習モデルに入力することによって、第1出力範囲内の前記ドットの形成状態を示す第1部分ドットデータを前記機械学習モデルに出力させ、前記対象画像データのうち、前記対象画像のうちの前記第1入力範囲に隣接する一部である第2入力範囲に対応する第2部分画像データを前記機械学習モデルに入力することによって、第2出力範囲内の前記ドットの形成状態を示す第2部分ドットデータを前記機械学習モデルに出力させ、前記第1部分ドットデータと前記第2部分ドットデータとを用いて、前記ドットデータを生成し、前記第1出力範囲は、前記印刷画像のうち、前記第1入力範囲に対応する範囲と、前記第2入力範囲の一部に対応する範囲と、を含み、前記第2出力範囲は、前記印刷画像のうち、前記第2入力範囲に対応する範囲と、前記第1入力範囲の一部に対応する範囲と、を含み、前記第1出力範囲と前記第2出力範囲とは、前記第1入力範囲と前記第2入力範囲との境界に対応する部分において互いに重複している、画像処理装置。
上記構成によれば、互いに重複する出力範囲内のドットの形成状態を示す第1部分ドットデータと第2部分ドットデータとを用いて、ドットデータが生成される。この結果、ドットデータによって示される画像において、第1入力範囲と第2入力範囲との境界に対応する部分に疑似輪郭が表れることを抑制できる。したがって、ドットデータを用いて印刷される画像の画質を向上できる。
[適用例3]対象画像のうちの一部である入力範囲に対応する部分画像データが入力され、前記対象画像に基づく印刷画像のうち、前記入力範囲に対応する範囲を含む出力範囲内のドットの形成状態を示す部分ドットデータを出力する機械学習モデルをトレーニングする方法であって、複数組のデータセットを取得する取得ステップであって、前記複数組のデータセットのそれぞれは、前記部分画像データのサンプルである入力画像データと、複数の特定値の中から選択される1つの値である入力パラメータと、を含む、前記取得ステップと、前記複数組のデータセットを入力として前記機械学習モデルに入力して、前記複数組のデータセットに対応する複数個の前記部分ドットデータを出力させる入出力ステップと、前記入出力ステップにて出力される前記複数個の部分ドットデータを用いて、前記機械学習モデルによる演算に用いられる複数個の演算パラメータを調整する調整ステップと、
を備え、前記調整ステップにおいて、前記複数個の演算パラメータは、特定の前記入力画像データと前記入力パラメータとしての第1値とを含む第1の前記データセットに対応する第1の前記部分ドットデータと、前記特定の入力画像データと前記入力パラメータとしての第2値であって前記第1値とは異なる前記第2値とを含む第2の前記データセットに対応する第2の前記部分ドットデータと、が異なるデータになるように調整される、方法。
上記方法によってトレーニングされた機械学習モデルは、入力される複数個のデータセットに含まれる部分画像データが互いに同一であっても入力パラメータが互いに異なる場合には、互いに異なる部分ドットデータを出力できる。この結果、上記方法によってトレーニングされた機械学習モデルを用いて生成されるドットデータによって示される画像に意図しない周期性が表れることを抑制できる。したがって、上記方法によってトレーニングされた機械学習モデルを用いて生成されるドットデータを用いて印刷される画像の画質を向上できる。
なお、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、印刷装置、印刷方法、画像処理方法、これら装置の機能または上記方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
実施例の印刷システム1000の構成を示すブロック図である。 画像処理のフローチャートである。 対象画像データによって表される対象画像OIの一例を示す図である。 機械学習モデルMMの説明図である。 変換前の値と変換後の値との対応を示すグラフである。 機械学習モデルMMを用いるハーフトーン処理のフローチャートである。 対象領域PIと対応領域DIとの一例を示す図である。 ドットデータの生成の説明図である。 学習処理を実行する計算機300の構成図である。 学習処理のフローチャートである。
A.実施例
A-1.画像処理装置の構成
次に、実施の形態を実施例に基づき説明する。図1は、実施例の印刷システム1000の構成を示すブロック図である。
印刷システム1000は、印刷実行部としてのプリンタ100と、本実施例の画像処理装置としての端末装置200と、を含んでいる。プリンタ100と、端末装置200と、は、有線または無線のネットワークNWを介して、通信可能に接続されている。
端末装置200は、パーソナルコンピュータやスマートフォンなどの計算機である。端末装置200は、端末装置200のコントローラとしてのCPU210と、RAMなどの揮発性記憶装置220と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置230と、液晶ディスプレイなどの表示部240と、キーボードやマウスなどの操作部250と、通信インタフェース(IF)270と、を備えている。通信インタフェース270は、ネットワークNWに接続するための有線または無線のインタフェースを含む。
揮発性記憶装置220は、CPU210が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域を提供する。不揮発性記憶装置230には、コンピュータプログラムPGが格納されている。揮発性記憶装置220や不揮発性記憶装置230は、端末装置200の内部メモリである。
コンピュータプログラムPGは、本実施例では、プリンタ100を制御するためのプリンタドライバプログラムであり、例えば、プリンタ100の製造者が運用するサーバからダウンロードされる形態で提供される。これに代えて、コンピュータプログラムPGは、DVD-ROMなどに格納される形態で提供されてもよい。CPU210は、コンピュータプログラムPGを実行することにより、後述する画像処理を実行する。
プリンタ100は、インクジェット方式の印刷装置であり、印刷材としての複数種類のインク(本実施例では、CMYKの4種類のインク)を用いて用紙などの印刷媒体上にドットを形成することによって画像を印刷する印刷装置である。
A-2:画像処理
図2は、画像処理のフローチャートである。この画像処理は、例えば、端末装置200において、コンピュータプログラムPGが実行されて、プリンタドライバが起動されているときに、ユーザの開始指示に基づいて開始される。
S10では、CPU210は、印刷すべき画像を表す画像データを取得する。この画像データは、例えば、不揮発性記憶装置230に格納された複数個の画像データの中から、ユーザの指定に基づいて選択された1個の画像データである。S20では、CPU210は、取得された画像データに対してラスタライズ処理を実行して、対象画像データを生成する。本実施例の対象画像データは、複数個の画素を含む画像を示すビットマップデータであり、具体的には、RGB値によって画素ごとの色を表すRGB画像データである。RGB値は、3個の色成分の階調値(以下、成分値とも呼ぶ)、すなわち、R値、G値、B値を含むRGB表色系の色値である。R値、G値、B値は、例えば、256階調の階調値である。
図3は、対象画像データによって表される対象画像OIの一例を示す図である。対象画像OIは、X方向(図3の横方向)とY方向(図3の縦方向)とに沿ってマトリクス状に並んだ複数個の画素によって構成されている。図3の対象画像OIは、3個のオブジェクトOb1~Ob3と、背景BGと、を含んでいる。オブジェクトOb1は、人物HNを含む写真を表している。オブジェクトOb2は、文字TXを含む表を表している。オブジェクトOb3は、描画、具体的には、円グラフを表している。
S30では、CPU210は、対象画像データに対して領域特定処理を実行する。領域処理は、対象画像OIにおいて、複数個のオブジェクトOb1~Ob3が配置される領域(オブジェクト領域とも呼ぶ)を特定するとともに、各オブジェクト領域内のオブジェクトの属性を特定する処理である。オブジェクトの属性は、本実施例では、写真、テキスト、グラフィックのいずれかである。
領域特定処理では、例えば、CPU210は、公知のエッジ検出フィルタを対象画像データに適用して、対象画像OI内のエッジを抽出して、エッジ量が基準より多い領域をオブジェクト領域として特定する。CPU210は、特定された1以上のオブジェクト領域のうち、テキストとしての特徴を有する領域をテキスト領域として特定し、写真としての特徴を有する領域を写真領域として特定する。CPU210は、1以上のオブジェクト領域のうち、テキストとしての特徴と写真としての特徴とのいずれも有しない領域をグラフィック領域として特定する。テキストとしての特徴は、例えば、色数が閾値TH1より少なく、かつ、背景色とは異なる色を有するオブジェクト画素の割合が閾値TH2より小さいことである。写真としての特徴は、例えば、色数が閾値TH2より多く、かつ、背景色とは異なる色を有するオブジェクト画素の割合が閾値TH2より大きいことである。なお、オブジェクト特定処理は、例えば、様々な公知の手法を採用することができ、公知の手法は、例えば、特開2013-030090号公報、特開平5-225378号公報、特開2002-288589号公報に開示されている。
図3の例では、オブジェクトOb1が配置される領域が写真領域として特定され、オブジェクトOb2が配置される領域が文字領域として特定され、オブジェクトOb3が配置される領域がグラフィック領域として特定される。
S40では、CPU210は、対象画像データに対して色変換処理を実行する。これによって、対象画像データの各画素のRGB値は、印刷に用いられる複数個の色材に対応する複数個の成分値を含む色値に変換される。本実施例では、RGB値は、CMYK値に変換される。CMYK値は、C(シアン)、M(マゼンタ)、Y(イエロ)、K(ブラック)の4個の成分値(C値、M値、Y値、K値)を含むCMYK表色系の色値である。C値、M値、Y値、K値は、例えば、256階調の階調値である。色変換処理は、不揮発性記憶装置230に予め格納された色変換プロファイル(図示省略)を参照して実行される。色変換プロファイルは、RGB値とCMYK値との対応関係を規定する情報であり、具体的には、ルックアップテーブルである。
S50、S60では、CPU210は、色変換処理後の対象画像データに対してハーフトーン処理を実行して、ドットの形成状態を画素ごと、かつ、色材ごとに示すドットデータを生成する。ドットデータに含まれる各画素の値は、例えば、「大ドット」、「中ドット」、「小ドット」、「ドット無し」の4個のドットの形成状態のいずれかを示す。これに代えて、ドットデータに含まれる各画素の値は、「ドット有り」、「ドット無し」の2つのドットの形成状態のいずれかを示しても良い。本実施例では、色変換処理後の対象画像データのうち、S30にて特定された対象画像OI内の写真領域に対応するデータと、写真領域とは異なる領域(本実施例では、文字領域とグラフィック領域と背景領域)に対応するデータと、で互いに異なるハーフトーン処理が実行される。ドットデータは、プリンタ100によって印刷すべき印刷画像を示すデータである。
S50では、CPU210は、色変換処理後の対象画像データのうち、写真領域に対応するデータに対して、機械学習モデルMMを用いるハーフトーン処理を実行する。これによって、写真領域に対応するデータに対応するドットデータが生成される。機械学習モデルMMを用いるハーフトーン処理については後述する。
S60では、色変換処理後の対象画像データのうち、写真領域とは異なる領域に対応するデータに対して、ディザマトリクスを用いるディザ法に従うハーフトーン処理を実行する。これによって、写真領域とは異なる領域に対応するデータに対応するドットデータが生成される。なお、変形例では、ディザ法に代えて、機械学習モデルMMを用いない他の方法、例えば、公知の誤差拡散法に従うハーフトーン処理が採用されても良い。
S70では、CPU210は、ドットデータを用いて印刷ジョブを生成する。例えば、CPU210は、ドットデータを、プリンタ100にて印刷を行う際に用いられる順番に並べ替える処理と、ドットデータにプリンタ制御コードやデータ識別コードを付加する処理と、を実行する。この結果、プリンタ100によって解釈可能な印刷ジョブが生成される。S80では、CPU210は、生成された印刷ジョブを、プリンタ100に送信する。プリンタ100は、印刷ジョブを受信すると、該印刷ジョブに基づいて画像を印刷する。
A-3.機械学習モデル
図1に示すようにコンピュータプログラムPGは、機械学習モデルMMをモジュールとして含んでいる。図4は、機械学習モデルMMの説明図である。この機械学習モデルMMは、図2のS60のハーフトーン処理に用いられる。機械学習モデルMMは、ニューラルネットワーク(Neural Network)を用いたモデルである。
機械学習モデルMMの入力は、入力画像データIIと、入力パラメータrと、から成るデータセットDSである。入力画像データIIは、本実施例では、縦n1画素×横n2画素のサイズのCMYK画像データである。n1、n2は、2以上の自然数であり、例えば、n1=n2=16である。図4では、図の煩雑を避けるために、n1=n2=6の例が図示されている。入力画像データIIの各画素の値は上述したCMYK値であるので、4個の成分値を含む。すなわち、入力画像データIIは、C、M、Y、Kの4個のレイヤーを含んでいるので、(n1×n2×4)個の値を含んでいる(図4(A)、図4(B))。入力パラメータrは、0以上z以下の整数のいずれかの値を取る。zは、例えば、10である。このように、1つのデータセットDSは、{(n1×n2×4)+1}個の値を含んでいる。
ここで、入力画像データIIのn個(n=(n1×n2))の画素のCMYK値を(Pl_C、Pl_M、Pl_Y、Pl_K)とする。(Pl_C、Pl_M、Pl_Y、Pl_K)の各値は、0~1の値に正規化されている。lは、n個の画素の識別子であり、1~nの整数を取る。
図4(A)のデータセットDSaは、特定の入力画像データII1と、入力パラメータrとしての値「1」と、を含む。図4(B)のデータセットDSbは、特定の入力画像データII1と、入力パラメータrとしての値「2」と、を含む。このように、データセットDSaとデータセットDSbとは、共通の入力画像データII1と、互いに異なる入力パラメータrと、を含む。
機械学習モデルMMの出力は、縦m1画素×横m2画素のサイズの部分ドットデータODである。出力される各画素の値は、C、M、Y、Kの4個の成分値を含む。すなわち、部分ドットデータODは、C、M、Y、Kの4個のレイヤーを含んでいるので、(m1×m2×4)個の値を含んでいる(図4(A)、図4(B))。各成分値は、「大ドット」、「中ドット」、「小ドット」、「ドット無し」の4個のドットの形成状態を示す値である。例えば、「大ドット」、「中ドット」、「小ドット」、「ドット無し」を示す値は、それぞれ、1、0.3、0.1、0である。これらの値は、大ドットの濃度を1として、対応する各ドットの濃度を示す値(相対濃度値)である。
ここで、部分ドットデータODによって示される出力画像の縦方向の画素数m1および横方向の画素数m2は、入力画像データIIによって示される入力画像の縦方向の画素数n1および横方向の画素数n2よりも大きい(m1>n1、m2>n2)。本実施例では、出力画像の縦方向の画素数m1および横方向の画素数m2は、入力画像の縦方向の画素数n1および横方向の画素数n2よりも2ずつ大きい(m1=n1+2、m2=n2+2)。
部分ドットデータODのm個(m=(m1×m2))の画素のCMYKの各値を(Qk_C(r)、Qk_M(r)、Qk_Y(r)、Qk_K(r))とする。(Qk_C(r)、Qk_M(r)、Qk_Y(r)、Qk_K(r))は、0~1の値に正規化されている。kは、m個の画素の識別子であり、1~mの整数を取る。rは、入力パラメータrであり、0~zの整数を取る。
このように、機械学習モデルMMは、入力画像データIIを部分ドットデータODに変換することができる。ここで、機械学習モデルMMは、2つのデータセットDSに含まれる入力画像データIIが互いに同一のデータであっても、入力パラメータrが異なることに基づいて、互いに異なる部分ドットデータODを出力する。例えば、図4の例では、図4(A)のデータセットDSaと図4(B)のデータセットDSbとは、同一の入力画像データII1を含み、互いに異なる入力パラメータrを含む。データセットDSaが入力された場合に出力される部分ドットデータODaと、データセットDSbが入力された部分ドットデータODbとは、互いに異なる。例えば、部分ドットデータODaによって示される画像の全体の濃度と、部分ドットデータODbによって示される画像の全体の濃度とは、同等であるが、ドットが配置される位置は、互いに異なる。
図4(C)を参照して、機械学習モデルMMの具体的な構成例を説明する。機械学習モデルMMは、入力層ILと、中間層MLと、出力層OLと、を備える階層型のニューラルネットワークNNと、出力変換部OCと、を備える。入力層ILには、上述したデータセットDSの{(n1×n2×4)+1}個の値が入力値として入力される。このために、N={(n1×n2×4)+1}とすると、入力層ILは、N個のニューロンを備える。中間層MLは、L個(Lは2以上の整数、例えば、Lは1000~10000)のニューロンを備える。出力層OLは、上述した部分ドットデータODの(m1×m2×4)個の値に対応する出力値を出力する。このために、M=(m1×m2×4)とすると、出力層OLは、M個のニューロンを備える。
中間層MLのL個のニューロンのそれぞれは、入力層ILの全てのニューロンと結合されており、各結合には重みが設定されている。したがって、入力層ILに入力されたN個の入力値から成るベクトルとN個の重みから成るベクトルとの内積に、バイアスを加えた値(内積+バイアス)が、中間層MLの1個のニューロンに対する入力値となる。該入力値を活性化関数に入力して得られる値が、中間層MLの1個のニューロンの出力値となる。同様にして、出力層OLのM個のニューロンのそれぞれは、中間層MLの全てのニューロンと結合されており、各結合には重みが設定されている。したがって、中間層MLから出力されたL個の出力値から成るベクトルとL個の重みから成るベクトルとの内積に、バイアスを加えた値(内積+バイアス)が、出力層OLの1個のニューロンに対する入力値となる。該入力値を活性化関数に入力して得られる値が、出力層OLの1個のニューロンの出力値となる。各出力値は、0~1の値となる。これによって、出力層OLからM個の出力値が出力される。以上の演算に用いられる{(N×L)+(L×M)}個の重みと(L+M)個のバイアスとは、後述する学習処理によって調整済みの演算パラメータである。このようなニューラルネットワークNNとその学習アルゴリズムとは、例えば、「Rumelhart,D.E.,Hinton,G.E. and Williams,R.J.: Learning representations by back-propagating errors,Nature,Vol. 323,No.9,pp.533・536(1986)」に開示されている。
出力変換部OCは、出力層OLのM個のニューロンから出力される0~1の出力値を、上述した「大ドット」、「中ドット」、「小ドット」、「ドット無し」を示す値(1、0.3、0.1、0)のいずれかに変換する。図5は、変換前の値と変換後の値との対応を示すグラフである。出力変換部OCは、図5に示すように、0~0.05の範囲内の出力値を、「ドット無し」に対応する値「0」に変換し、0.05~0.2の範囲内の出力値を、「小ドット」に対応する値「0.1」に変換する。出力変換部OCは、0.2~0.7の範囲内の出力値を、「中ドット」に対応する値「0.3」に変換し、0.7~1.0の範囲内の出力値を、「大ドット」に対応する値「1」に変換する。この結果、上述した部分ドットデータODの各値が出力される。
A-4.機械学習モデルMMを用いるハーフトーン処理
図2のS60のハーフトーン処理について説明する。図6は、図2のS60の機械学習モデルMMを用いるハーフトーン処理のフローチャートである。図7は、対象領域PIと、対応領域DIと、の一例を示す図である。
図7(A)の対象領域PIは、対象画像OIのうち、S60のハーフトーン処理の対象となる領域(本実施例では写真領域)である。図7(B)の対応領域DIは、S50、S60のハーフトーン処理にて生成されるドットデータによって示されるドット画像(図示省略)のうち、対象領域PIに対応する領域である。対応領域DIは、対象領域PIと同じサイズ(縦方向および横方向の画素数)を有している。対象領域PI、対応領域DIに含まれる複数個の矩形は、それぞれ、1個の画素を示す。なお、対象領域PI、対応領域DIは、それぞれ、CMYKの4個のレイヤーを含むが、図7では、1個のレイヤーについてのみ図示されている。ハーフトーン処理は、4個のレイヤーについて、それぞれ、実行されるが、各レイヤーの処理は独立しており、それぞれ、同様の処理である。このために、1個のレイヤー(例えば、シアンのレイヤー)に注目して説明する。
S100では、CPU210は、対象領域PI(本実施例では写真領域)内に設定される複数個の入力範囲から1個の注目入力範囲を選択する。CPU210は、対象領域PIを複数個の入力範囲IAに分割して、対象領域PIに複数個の入力範囲IAを設定する。CPU210は、複数個の入力範囲IAの中から1個の注目入力範囲を順次に選択する。図7(A)の例では、対象領域PIには、6個の入力範囲IA1~IA6が設定されている。例えば、6個の入力範囲IA1~IA6は、符号の末尾の数の順番で注目入力範囲として選択される。各入力範囲IAのサイズは、上述した機械学習モデルMMの入力画像データIIのサイズ、すなわち、縦n1画素×横n2画素(図7の例ではn1=n2=6)のサイズである。
S110では、CPU210は、色変換処理後の対象画像データ(CMYK画像データ)のうちの注目入力範囲内の画像データを、入力画像データIIとして取得する。S120では、CPU210は、入力パラメータrとして、0~zの整数値からランダムで1個の値を取得する。
S130では、CPU210は、S110にて取得した入力画像データIIと、S120にて取得した入力パラメータrと、から成るデータセットDSを、機械学習モデルMMに入力する。これによって、CPU210は、機械学習モデルMMに、部分ドットデータODを出力させる。以下では、図7(A)の6個の入力範囲IAs(sは、1~6の整数)内の画像データを入力画像データIIとして含むデータセットDSが入力される場合に、機械学習モデルMMから出力される部分ドットデータODを、部分ドットデータODsとも呼ぶ。
S140、S150では、CPU210は、部分ドットデータODを用いて、生成すべきドットデータのうち、注目出力範囲内のドットデータを生成する。注目入力範囲が図7(A)の入力範囲IAs(sは、1~6の整数)である場合の注目出力範囲を出力範囲OAsとも呼ぶ。図7(B)には、出力範囲OA1~OA6が図示されている。各出力範囲OAsは、部分ドットデータODsに対応するサイズを有するので、上述したように入力範囲IAsよりも縦方向に2画素分、横方向に2画素分だけ大きい。このために、出力範囲OAsは、入力範囲IAsに対応する中央範囲CAsと、中央範囲CAsの外側に隣接する外縁範囲EAsと、を含んでいる。図7(B)には、図の煩雑を避けるために、出力範囲OA1の中央範囲CA1と外縁範囲EA1と、出力範囲OA2の中央範囲CA2と外縁範囲EA2と、だけが図示されている。
外縁範囲EAsの一部は、入力範囲IAsに隣接する別の入力範囲に対応している。例えば、図7(B)の外縁範囲EA1の右側の部分は、入力範囲IA1に隣接する入力範囲IA2(図7(A))の左側の部分に対応している。このために、図7(B)に示すように、対応領域DIにおける出力範囲OA1~OA6は、対象領域PIにおける入力範囲IA1~IA2の境界に対応する部分において、互いに重複している。そして、出力範囲OA1~OA6は、入力範囲IA1~IA2のそれぞれの中心部分に対応する部分において、互いに重複していない。したがって、対応領域DI上は、2以上の出力範囲OAs(例えば、出力範囲OA1と出力範囲OA2)が重複する重複領域OLAと、2以上の出力範囲OAsが重複しない非重複領域NOAと、を含む。図7(B)において、ハッチングされた領域は、重複領域OLAであり、ハッチングされていない領域は、非重複領域NOAである。
S140では、CPU210は、注目出力範囲のうち、非重複領域NOAに位置する部分のドットデータを生成する。図8は、ドットデータの生成の説明図である。図8(A)~(C)において、各画素内の整数が「s」(sは、1~6の整数)であることは、当該画素の値が、部分ドットデータODsの値であることを意味する。図8(A)、(B)には、それぞれ、注目出力範囲が出力範囲OA1、OA2である場合の例が示されている。図8(C)には、対応領域DIの全てのドットデータが生成された状態が示されている。図8(A)~(C)に示すように、注目出力範囲が出力範囲OAsである場合には、出力範囲OAsのうち、非重複領域NOAに位置する部分の各画素の値は、部分ドットデータODsの対応する画素の値とされる。例えば、出力範囲OA1のうち、非重複領域NOAに位置する部分に含まれる複数個の画素の値には、部分ドットデータOD1の値が採用され、出力範囲OA2のうち、非重複領域NOAに位置する部分に含まれる複数個の画素の値には、部分ドットデータOD2の値が採用される。
S150では、CPU210は、注目出力範囲のうち、重複領域OLAに位置する部分のドットデータを生成する。具体的には、注目出力範囲が出力範囲OAsである場合には、重複領域OLAに位置する部分のうち、この時点までに生成済みのドットデータがない部分の各画素の値は、部分ドットデータODsの対応する画素の値とされる。そして、この時点までに生成済みのドットデータがある部分の一部の画素の値は、この時点までに生成済みの値のまま維持され、残りの一部の画素の値は、部分ドットデータODsの対応する画素の値に置換される。維持される画素と置換される画素とは、例えば、(1/2)の確率でランダムに選択される。
例えば、図8(A)の時点では、出力範囲OA1のうちの重複領域OLAに位置する部分には、生成済みのドットデータがないために、当該部分に含まれる複数個の画素の値は、部分ドットデータOD1の値とされる。図8(B)の時点では、出力範囲OA2のうち、重複領域OLAに位置する右側部分RAには、生成済みのドットデータがなく、左側部分LAには、生成済みのドットデータがある。このために、右側部分RAの各画素の値は、部分ドットデータOD2の値とされる。左側部分LAに含まれる一部の画素の値は、部分ドットデータOD1の値のまま維持される。左側部分LAに含まれる残りの一部の値は、部分ドットデータOD2の値に置換される。
S160では、CPU210は、対象領域PIの全ての入力範囲IA1~IA6を注目入力範囲として処理したか否かを判断する。全ての入力範囲が処理された場合には(S160:YES)、機械学習モデルMMを用いるハーフトーン処理は終了される。未処理の入力範囲がある場合には(S160:NO)、CPU210は、S100に処理を戻す。
以上説明した画像処理(図2)によれば、画像取得部としてのCPU210は、対象画像としてのRGB画像データを取得する(図2のS10、S20)。ドットデータ生成部としてのCPU210は、RGB画像データを用いてドットデータを生成する(図2のS40~S60)。ドットデータ生成部としてのCPU210は、入力範囲IA1に対応する部分画像データと、入力パラメータrである第1値(例えば、1)と、を機械学習モデルMMに入力することによって、入力範囲IA1(図7(A))に対応する中央範囲CA1を含む出力範囲OA1(図7(B))内のドットの形成状態を示す部分ドットデータOD1を機械学習モデルMMに出力させる(図6のS130)。ドットデータ生成部としてのCPU210は、入力範囲IA1とは異なる部分である入力範囲IA2(図7(A))に対応する部分画像データと、入力パラメータrとしての第2値(例えば、2)と、を機械学習モデルMMに入力することによって、入力範囲IA2に対応する中央範囲CA2を含む出力範囲OA2(図7(B))のドットの形成状態を示す部分ドットデータOD2を機械学習モデルに出力させる(図6のS130)。ドットデータ生成部としてのCPU210は、部分ドットデータOD1と部分ドットデータOD2とを用いて、ドットデータを生成する(図6のS140、S150、図8)。機械学習モデルMMは、図4を参照して説明したように、入力範囲IA1に対応する部分画像データが入力範囲IA2に対応する部分画像データと同一のデータである場合であっても、入力パラメータrが異なることに基づいて、部分ドットデータOD1とは異なる部分ドットデータOD2を出力する。この結果、ドットデータによって示される画像(例えば、図8(C)の対応領域DI)に、対象画像(例えば、図7(A)の対象領域PI)には存在しない周期性が表れることを抑制できる。したがって、ドットデータを用いて印刷される画像の画質を向上できる。
仮に、対象領域PI(図7(A))において入力範囲IA1に対応する部分画像データが入力範囲IA2に対応する部分画像データである場合に、機械学習モデルMMが、部分ドットデータOD1と同一の部分ドットデータOD2を出力するとする。この場合には、対応領域DI(図8(B))において、同じドットパターンが繰り返されることになるので、対応領域DIには、対象領域PIには存在しない周期性が表れる。このような周期性に起因して、例えば、モアレ(干渉縞)と呼ばれる周期的な模様が対象領域PIに表れる不具合が発生し得る。本実施例の画像処理によれば、このような不具合の発生を抑制することができる。
さらに、上記画像処理によれば、入力範囲IA2は、対象領域PIのうち、入力範囲IA1に隣接する一部である。出力範囲OA1は、対応領域DIのうち、入力範囲IA1に対応する中央範囲CA1と、入力範囲IA2の一部に対応する範囲(外縁範囲EA1の一部の範囲)と、を含む(図7(B))。出力範囲OA2は、入力範囲IA2に対応する中央範囲CA2と、入力範囲IA1の一部に対応する範囲(外縁範囲EA2の一部の範囲)と、を含む(図7(B))。出力範囲OA1と出力範囲OA2とは、入力範囲IA1と入力範囲IA2との境界に対応する部分において互いに重複している(図7(B))。そして、互いに重複する出力範囲OA1、OA2内のドットの形成状態を示す部分ドットデータOD1、OD2を用いて、ドットデータが生成される。この結果、ドットデータによって示される画像(例えば、対応領域DI)において、入力範囲IA1と入力範囲IA2との境界に対応する部分に疑似輪郭(例えば、ブロックノイズ)が表れることを抑制できる。したがって、ドットデータを用いて印刷される画像の画質を向上できる。仮に、出力範囲OA1と出力範囲OA2とが重複する範囲を設けない場合には、部分ドットデータOD1によって示される画像と、部分ドットデータOD2によって示される画像と、の境界が1本の線になるために、本実施例の画像処理と比較すると、当該線が疑似輪郭として表れる不具合が生じやすい。
さらに、上記画像処理によれば、ドットデータ生成部としてCPU210は、ドットデータのうち、出力範囲OA1と出力範囲OA2とが重複する重複範囲(図8(B)の左側部分LA)内の第1の画素の値を、部分ドットデータOD1のうちの対応する画素の値とし、第2の画素の値を部分ドットデータOD2のうちの対応する画素の値とすることによって、ドットデータを生成する(図8(B)、図6のS150)。上記構成によれば、重複範囲内のドットデータを、部分ドットデータOD1の画素の値と、部分ドットデータOD2の画素の値と、を用いて生成するので、入力範囲IA1と入力範囲IA2との境界に対応する部分に疑似輪郭が表れることを適切に抑制できる。
さらに、上記画像処理によれば、部分ドットデータOD1の値が採用される上述した第1の画素と、部分ドットデータOD2の値が採用される上述した第2の画素とは、重複領域(例えば、左側部分LA)内の複数個の画素の中からランダムに選択される。この結果、重複範囲内に疑似輪郭が表れることを効果的に抑制できる。仮に、第1の画素と第2の画素とが、規則的あるいは周期的なパターンで選択される場合には、該規則性や周期性が対応領域DIに表れ得るが、上記実施例によれば、このような不具合の発生を抑制できる。
さらに、上記画像処理によれば、領域特定部としてのCPU210は、写真を含む写真領域と、写真とは異なる文字やグラフィックを含む領域と、を特定する(図2のS30)。ドットデータ生成部としてのCPU210は、写真領域に対応するデータに対して、図6のハーフトーン処理を実行する(図2のS50)。すなわち、CPU210は、写真領域に対応する部分ドットデータOD1および部分ドットデータOD2を機械学習モデルMMに出力させ、写真領域に対応するドットデータを、部分ドットデータOD1および部分ドットデータOD2を用いて生成する。そして、領域特定部としてのCPU210は、対象画像データのうち、写真とは異なる文字やグラフィックを含む領域に対応するデータに対して、機械学習モデルMMを用いることなく、ディザ法に従うハーフトーン処理を実行することによって、当該領域に対応するドットデータを生成する(図2のS60)。疑似輪郭や周期性は、比較的な均一な領域で目立ちやすく、比較的不均一な領域(例えば、強いエッジを含む領域)で目立ち難い。このために、疑似輪郭や周期性は、文字やグラフィックの領域よりも写真領域において目立ちやすい。さらに、機械学習モデルMMを用いるハーフトーン処理では、印刷画像において、文字やグラフィックのエッジが弱くなり、文字やグラフィックの見栄えが低下する可能性がある。上記実施例によれば、疑似輪郭や周期性が目立ちがちな写真領域の画質を向上しつつ、疑似輪郭や周期性が目立ちがたい領域の画質が低下することを適切に抑制することができる。
A-5.機械学習モデルMMの学習処理
次に、機械学習モデルMMの学習処理について説明する。学習処理は、機械学習モデルMMの上述した複数個の演算パラメータ(重みおよびバイアス)を調整することで、機械学習モデルMMが適切な部分ドットデータODを出力できるようにトレーニングする処理である。上述した不揮発性記憶装置230に格納されたコンピュータプログラムPGに組み込まれた機械学習モデルMMは、本学習処理によってトレーニングされた学習済みモデルである。
図9は、学習処理を実行する計算機300の構成図である。計算機300は、例えば、プリンタ100(図1)を製造する事業者が使用するパーソナルコンピュータやサーバである。計算機300は、計算機300のコントローラとしてのCPU310と、RAMなどの揮発性記憶装置320と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置330と、液晶ディスプレイなどの表示部340と、キーボードやマウスなどの操作部350と、通信インタフェース(IF)370と、を備えている。
揮発性記憶装置320は、CPU310が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域を提供する。不揮発性記憶装置330には、コンピュータプログラムPG2が格納されている。
コンピュータプログラムPG2は、例えば、プリンタ100の製造者が運用するサーバからダウンロードされる形態で提供される。これに代えて、コンピュータプログラムPG2は、DVD-ROMなどに格納される形態で提供されてもよい。CPU310は、コンピュータプログラムPG2を実行することにより、学習処理を実行する。コンピュータプログラムPG2は、複数個の演算パラメータ(重みおよびバイアス)が初期値に設定されたトレーニング前の機械学習モデルMMを、モジュールとして含んでいる。
図10は、学習処理のフローチャートである。学習処理に先立って、作業者は、複数個の学習用の入力画像データIIを含む入力画像データ群IGを準備する。学習用の入力画像データIIは、上述した図2の画像処理で入力画像データIIとして用いられる部分画像データのサンプルである、と言うことができる。入力画像データ群IGは、n個の画素のCMYK値が取り得る全てのパターンに対応する学習用の入力画像データIIを含む。入力画像データIIのサイズ(画素数n)や、CMYK値の各成分の階調数(例えば、256階調)によっては、全てのパターンに対応する学習用の入力画像データIIの個数が膨大になり、これらの全ての学習用の入力画像データIIを用いて学習処理を行うことが現実的でない場合もある。このような場合には、例えば、入力画像データ群IGは、これらの全てのパターンに対応する入力画像データIIから選択された一部の画像データを含んでも良い。準備された入力画像データ群IGは、不揮発性記憶装置330に格納される(図1)。
S200では、CPU310は、不揮発性記憶装置330に格納された入力画像データ群IGから、1個の注目画像データを取得する。取得された注目画像データは、揮発性記憶装置320のバッファ領域に格納される。注目画像データのn個の画素のCMYK値を(Pl_C、Pl_M、Pl_Y、Pl_K)とする。lは、n個の画素の識別子であり、1~nの整数を取る。
S205では、CPU310は、入力パラメータrを初期化する、本実施例では、入力パラメータrを1にする。
S210では、CPU310は、注目画像データと、パラメータrと、から成るデータセットDSを機械学習モデルMMに入力する。これによって、CPU310は、機械学習モデルMMに、部分ドットデータOD(r)を出力させる。出力された部分ドットデータOD(r)は、揮発性記憶装置320に格納される。
S215では、CPU310は、入力パラメータrをインクリメントする、すなわち、入力パラメータrに1を加算する。S220では、CPU310は、入力パラメータrは、入力パラメータrの上限値より大きいか否かを判断する。入力パラメータrは、1~zの整数のいずれかを取るので、上限値は、zである。
入力パラメータrが上限値以下である場合には(S220:NO)、CPU310は、S210に処理を戻す。入力パラメータrが上限値より大きい場合には(S220:YES)、CPU310は、S225に処理を進める。S225に処理が進められた時点で、揮発性記憶装置320には、1~zまでのz個の入力パラメータrに対応するz個の部分ドットデータOD(r)が格納されている。1個の部分ドットデータOD(r)のm個の画素のCMYKの各値を(Qk_C(r)、Qk_M(r)、Qk_Y(r)、Qk_K(r))とする。kは、m個の画素の識別子であり、1~mの整数を取る。
S225では、CPU310は、z個の部分ドットデータOD(r)のそれぞれについて、重複評価値Lcor(r)を算出する。重複評価値Lcor(r)は、以下の式(1)を用いて算出される。
Figure 0007185186000001
ここで、OQ(k)は、1個の部分ドットデータOD(r)のk番目の画素において、CMYKのうちの2色以上のドットが形成される場合には「1」を取り、CMYKのうちの1色のドットが形成される場合およびいずれのドットも形成されない場合には「0」を取る。すなわち、k番目の画素のCMYK値(Qk_C(r)、Qk_M(r)、Qk_Y(r)、Qk_K(r))が、2色以上のドットの形成を示す場合には、OQ(k)=1である。k番目の画素のCMYK値が、1色のドットだけの形成を示す場合およびいずれのドットの形成も示さない場合には、OQ(k)=0である。すなわち、OQ(k)が「1」であることは、k番目の画素において2個以上のドットが重なることを意味し、OQ(k)が「0」であることは、k番目の画素においてドットが重ならないことを意味する。
以上の説明および式(1)から解るように、重複評価値Lcor(r)は、2個以上のドットの重なる画素の割合を、0~1の範囲の値で示す評価値である。
S230では、CPU310は、z個の部分ドットデータOD(r)のそれぞれについて、粒状性評価値Lgs(r)を算出する。粒状性評価値Lgs(r)は、以下の式(2)を用いて算出される。
Figure 0007185186000002
ここで、G{OD(r)}は、部分ドットデータOD(r)によって示される画像の粒状度を示す評価値である。G{OD(r)}には、粒状度を算出する公知の関数が用いられる。例えば、G{OD(r)}は、画像の濃度(各画素の値)のバラツキを、二乗平均平方根(RMS)を用いて示すRMS粒状度を算出する関数である。あるいは、G{OD(r)}は、ウイナースペクトラムとVTF(Visual Transfer Function)を用いたDoolyとShawの評価式である。VTFは、視覚の空間周波数特性を示す関数である。Aは、G{OD(r)}を、0~1の範囲の値に正規化するための係数である。以上の説明および式(2)から解るように、粒状性評価値Lgs(r)は、粒状度を0~1の範囲の値で示す評価値である。
S235では、CPU310は、z個の部分ドットデータOD(r)のそれぞれについて、濃度評価値Lden(r)を算出する。濃度評価値Lden(r)は、以下の式(3)を用いて算出される。
Figure 0007185186000003
ここで、AVeCは、注目画像データ(学習用の入力画像データII)のn個の画素のC成分値(Pl_C)の平均値である。SQRT[V]は、Vの平方根を意味する。同様に、AveM、AveY、AveKは、それぞれ、注目画像データのn個の画素のM成分値(Pl_M)、Y成分値(Pl_Y)、K成分値(Pl_K)の平均値である。濃度評価値Lden(r)は、部分ドットデータOD(r)によって示される画像の濃度と、注目画像データによって示される画像の濃度と、の差異を、0~1の範囲の値で示す評価値である。
S240では、CPU310は、z個の部分ドットデータOD(r)について、1つの差異評価値Lrsを算出する。差異評価値Lrsは、以下の式(4)、(5)を用いて算出される。
Figure 0007185186000004
ここで、iとjとの組合せは、1~zのいずれかの値を取る2個の入力パラメータrの組合せを示す。D{OD(i)、OD(j)}は、部分ドットデータOD(i)の各画素のCMYK値と、部分ドットデータOD(j)の対応する画素のCMYK値と、差分の平均値を、0~1の範囲の値で示す評価値である。
S245では、CPU310は、z個の部分ドットデータOD(r)について、1つの最終的な評価値として、損失値Lallを算出する。損失値Lallは、S225~S240にて算出された重複評価値Lcor(r)、粒状性評価値Lgs(r)、濃度評価値Lden(r)、差異評価値Lrsを用いて、以下の式(6)を用いて算出される。式(6)の式で示される関数を損失関数とも呼ぶ。
Figure 0007185186000005
S255では、CPU310は、パラメータ調整処理を実行する。パラメータ調整処理は、機械学習モデルMMにて用いられる上述した演算パラメータ(重みとバイアス)を調整する処理である。具体的には、CPU310は、Lallが小さくなるように、所定のアルゴリズムに従って演算パラメータを調整する。所定のアルゴリズムには、例えば、誤差逆伝播法と勾配降下法とを用いたアルゴリズムが用いられる。
S260では、CPU310は、入力画像データ群IGに含まれる全ての学習用の入力画像データIIを、注目画像データとして処理したか否かを判断する。全ての学習用の入力画像データIIが処理された場合には(S260:YES)、CPU210は、学習処理を終了する。未処理の学習用の入力画像データIIがある場合には(S260:NO)、CPU210は、S205に処理を戻す。なお、1回の学習処理では、十分に適切な部分ドットデータODが出力されない場合には、さらに、所定回数の学習処理が繰り返されてもよい。
以上説明した学習処理が終了した時点で、機械学習モデルMMは、演算パラメータが調整された学習済みモデルになっている。したがって、学習処理は、学習済みモデルを生成(製造)する処理である、と言うことができる。
以上説明した学習処理によれば、CPU310は、学習用の入力画像データIIと、1~zの整数値の中から選択される1つの値である入力パラメータrと、を含むz組のデータセットDSを取得する(図10のS200、S205、S215)。CPU310は、z組のデータセットDSを入力として機械学習モデルMMに入力して、z組のデータセットDSに対応するz個の部分ドットデータOD(r)を出力させる(図10のS210)。CPU310は、z個の部分ドットデータOD(r)を用いて、機械学習モデルMMによる演算に用いられる複数個の演算パラメータを調整する(図10のS255)。
ここで、S255において、複数個の演算パラメータは、例えば、特定の入力画像データIIと入力パラメータrとしての「1」とを含むデータセットDSに対応する部分ドットデータOD(1)と、特定の入力画像データIIと入力パラメータrとしての「2」とを含むデータセットDSに対応する部分ドットデータOD(2)と、が異なるデータになるように調整される。この結果、上記学習処理によってトレーニングされた学習済みモデル(機械学習モデルMM)は、入力される複数個のデータセットDSに含まれる画像データが互いに同一であっても入力パラメータrが互いに異なる場合には、互いに異なる部分ドットデータを出力できる。この結果、当該学習済みモデルを用いて、上記画像処理によって生成されるドットデータによって示される画像に、対象画像OIには存在しない周期性が表れることを抑制できる。したがって、学習済みモデルを用いて生成されるドットデータを用いて印刷される画像の画質を向上できる。
より具体的には、S255において、複数個の演算パラメータは、z個の部分ドットデータOD(r)を用いて、式(6)の損失関数に基づいて算出される損失値Lallが小さくなるように調整される。式(6)の損失関数は、z個の部分ドットデータOD(r)のうちの2個の部分ドットデータ間の差異、例えば、部分ドットデータOD(1)と部分ドットデータOD(2)との差異が大きいほど小さくなる第1の項(1-Lrs)を含む。この結果、部分ドットデータOD(1)と部分ドットデータOD(2)との差異が大きくなるように、複数個の演算パラメータが調整される。この結果、学習済みモデルを用いて生成されるドットデータによって示される画像に、対象画像OIには存在しない周期性が表れる不具合をさらに抑制できる。したがって、上記学習処理によってトレーニングされた学習済みモデルを用いてドットデータを生成すれば、印刷画像において、このような不具合を抑制できる。
さらに、上記学習処理によれば、式(6)の損失関数は、部分ドットデータOD(r)において、2種以上のドット(2色以上のドット)の形成を示すCMYK値(画素データ)の個数が多いほど大きくなる第2の項、すなわち、式(6)における重複評価値Lcor(r)を含む2番目の項を含む。この結果、出力される部分ドットデータOD(r)において、CMYKのレイヤー間でドットが重なることを抑制することができる。CMYKのレイヤー間でドットが重なる画素が過度に多い場合には、部分ドットデータOD(r)によって示される画像の色が、入力画像データIIによって示される画像の色と異なる色となる不具合が生じ得る。上記学習処理によってトレーニングされた学習済みモデルを用いてドットデータを生成すれば、印刷画像において、このような不具合を抑制できる。
さらに、上記学習処理によれば、式(6)の損失関数は、部分ドットデータOD(r)によって示される画像の粒状度が大きいほど大きくなる第3の項、すなわち、式(6)における粒状性評価値Lgs(r)を含む3番目の項を含む。この結果、部分ドットデータOD(r)によって示される画像の粒状度が高くなることを抑制することができる。画像の粒状度が過度に高くなると、画像の見栄えが低下する不具合が生じ得る。上記学習処理によってトレーニングされた学習済みモデルを用いてドットデータを生成すれば、印刷画像において、このような不具合を抑制できる。
さらに、上記学習処理によれば、式(6)の損失関数は、部分ドットデータOD(r)によって示される画像の濃度が、対応するデータセットDSに含まれる入力画像データIIによって示される画像の濃度に近いほど小さくなる第4の項、すなわち、式(6)における濃度評価値Lden(r)を含む4番目の項を含む。この結果、入力画像データIIによって示される画像の濃度を適切に表現することができるような部分ドットデータOD(r)を学習済みモデルに出力させることができる。
B.変形例:
(1)上記実施例の図6のハーフトーン処理では、印刷画像の画質を向上させるために、以下の2つの工夫を行っている。一つ目は、入力範囲IAよりも出力範囲OAを大きくして2以上の出力範囲OAが互いに重複する部分を含むようにすることであり、2つ目は、入力パラメータrを機械学習モデルMMの入力に追加して同じ入力画像データに対して複数個の異なる部分ドットデータODを出力させることである。変形例としては、これらの2つの工夫のうち、いずれか一方だけを行い、他方を行わなくても良い。
(2)上記実施例の図6のハーフトーン処理では、出力範囲OA1と出力範囲OA2とが重複する部分(図7(B)の左側部分LA)の一部の画素の値を、部分ドットデータOD1の値とし、他の一部の画素の値を、部分ドットデータOD2の値としている。これに限らず、該重複する部分の画素の値は、部分ドットデータOD1と部分ドットデータOD2とを用いる他の手法で生成されても良い。例えば、CPU210は、該重複する部分の画素の値のうち、C、Mレイヤーの値には部分ドットデータOD1の値を採用し、Y、Kレイヤーの値には、部分ドットデータOD2の値を採用してもよい。
(3)また、出力範囲OA1と出力範囲OA2との重複する部分において、部分ドットデータOD1の値が採用される画素と、部分ドットデータOD2の値が採用される画素とは、ランダムに選択されているが、例えば、予め定められた複数個の選択パターンの1つに従って、選択されても良い。
(4)上記実施例では、写真領域に対して図6のハーフトーン処理が実行され、文字やグラフィックの領域に対してディザ法に従うハーフトーン処理が実行されている。これに代えて、例えば、白とは異なる色の背景領域(例えば、文字や図表の有色の背景)に対して図6のハーフトーン処理が実行され、該背景領域とは異なる領域に対してディザ法を用いるハーフトーン処理が実行されても良い。また、対象画像OIの全体に対して図6のハーフトーン処理が実行されても良い。
また、特定の階調値のパターンを有する入力画像データには、図6のハーフトーン処理とは異なるハーフトーン処理を実行し、他の入力画像データには、図6のハーフトーン処理を実行しても良い。例えば、全ての画素が白色である入力画像データは、全ての画素にドットを形成しないことを示す部分ドットデータに変換されるべきであり、入力パラメータrに応じたz種類の異なる部分ドットデータに変換されるべきでない場合がある。このように、一部の入力画像データは、図6のハーフトーン処理の対象から除かれても良い。
(5)上記実施例の図10の学習処理で用いられる損失値Lallを算出する損失関数は一例であり、これに限られない。例えば、式(6)の4つの項のうち、重複評価値Lcorを含む第2の項、および、粒状性評価値Lgsを含む第3の項の一方または両方は、省略されても良い。
(6)機械学習モデルMMの具体的な構成は、図4(C)に示す構成に代えて、他の様々な構成であっても良い。例えば、ニューラルネットワークNNは、2以上の中間層MLを備えても良い。また、ニューラルネットワークNNは、畳込層とプーリング層とを含むCNN(Convolutional Neural Network)であっても良い。
(7)実施例では、プリンタ100は、CMYKのインクを用いてカラー画像を印刷する印刷装置を備える。これに代えて、プリンタ100は、1色のインク(例えば、ブラック(K))を用いてモノクロ画像を印刷する印刷装置であっても良い。
(8)上記各実施例では、プリンタ100は、インクジェット式の印刷装置である。これに代えて、プリンタ100は、トナーを印刷材として用いて用紙上にドットを形成することによって画像を印刷する電子写真式(例えば、レーザ式)の印刷装置であっても良い。
(9)上記実施例では、図2の画像処理を実行する装置は、プリンタ100である。これに代えて、プリンタ100のCPUが画像処理装置として、図2の画像処理を実行しても良い。この場合には、画像処理装置として機能するプリンタ100のCPUは、図2のS80において、印刷ジョブを、プリンタ100が備える所定のメモリ領域に出力する。プリンタ100が備える印刷機構は、該メモリ領域に出力された印刷ジョブに従って印刷を実行する。
以上の説明から解るように、上記実施例では、端末装置200が画像処理装置の例であり、プリンタ100が印刷実行部の例である。本変形例では、プリンタ100のCPUが画像処理装置の例であり、プリンタ100が備える印刷機構(図示省略)が印刷実行部の例である。
(10)図2の画像処理を実行する装置は、例えば、プリンタや端末装置から画像データを取得して該画像データを用いて印刷ジョブを生成するサーバであっても良い。このようなサーバは、ネットワークを介して互いに通信可能な複数個の計算機であっても良い。この場合には、ネットワークを介して互いに通信可能な複数個の計算機の全体が、画像処理装置の例である。
(11)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、機械学習モデルMMは、プログラムモジュールに代えて、ASIC(Application Specific Integrated Circuit)等のハードウェア回路によって実現されてよい。
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
100…プリンタ、200…端末装置、210…CPU、220…揮発性記憶装置、230…不揮発性記憶装置、240…表示部、250…操作部、270…通信インタフェース、300…計算機、310…CPU、320…揮発性記憶装置、330…不揮発性記憶装置、340…表示部、350…操作部、1000…印刷システム、r…入力パラメータ、r…パラメータ、m1…画素数、IA…入力範囲、OA…出力範囲、OC…出力変換部、OD…部分ドットデータ、IG…入力画像データ群、PG、PG2…コンピュータプログラム、BG…背景、OI…対象画像、II…入力画像データ、OL…出力層、IL…入力層、ML…中間層、MM…機械学習モデル、NN…ニューラルネットワーク、DS…データセット、NW…ネットワーク、Lgs…粒状性評価値、Lrs…差異評価値、Lcor…重複評価値、Lden…濃度評価値、Lall…損失値

Claims (13)

  1. 印刷材を用いて印刷媒体上にドットを形成する印刷実行部のための画像処理装置であって、
    複数個の画素を含む対象画像を示す対象画像データを取得する画像取得部と、
    前記対象画像データを用いて、前記対象画像に対応する印刷画像の複数個の画素のそれぞれについて前記ドットの形成状態を示すドットデータを生成するドットデータ生成部と、
    を備え、
    前記ドットデータ生成部は、
    前記対象画像データのうち、前記対象画像のうちの一部である第1入力範囲に対応する第1部分画像データと、入力パラメータである第1値と、を機械学習モデルに入力することによって、前記印刷画像のうち、前記第1入力範囲に対応する範囲を含む第1出力範囲内の前記ドットの形成状態を示す第1部分ドットデータを前記機械学習モデルに出力させ、
    前記対象画像データのうち、前記対象画像のうちの前記第1入力範囲とは異なる部分である第2入力範囲に対応する第2部分画像データと、前記入力パラメータとしての第2値であって前記第1値とは異なる前記第2値と、を前記機械学習モデルに入力することによって、前記印刷画像のうち、前記第2入力範囲に対応する範囲を含む第2出力範囲内の前記ドットの形成状態を示す第2部分ドットデータを前記機械学習モデルに出力させ、
    前記第1部分ドットデータと前記第2部分ドットデータとを用いて、前記ドットデータを生成し、
    前記機械学習モデルは、前記第2部分画像データが前記第1部分画像データと同一のデータである場合であっても、前記入力パラメータが異なることに基づいて、前記第1部分ドットデータとは異なる前記第2部分ドットデータを出力する、画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記第2入力範囲は、前記対象画像のうちの前記第1入力範囲に隣接する一部であり、
    前記第1出力範囲は、前記印刷画像のうち、前記第1入力範囲に対応する範囲と、前記第2入力範囲の一部に対応する範囲と、を含み、
    前記第2出力範囲は、前記印刷画像のうち、前記第2入力範囲に対応する範囲と、前記第1入力範囲の一部に対応する範囲と、を含み、
    前記第1出力範囲と前記第2出力範囲とは、前記第1入力範囲と前記第2入力範囲との境界に対応する部分において互いに重複している、画像処理装置。
  3. 印刷材を用いて印刷媒体上にドットを形成する印刷実行部のための画像処理装置であって、
    複数個の画素を含む対象画像を示す対象画像データを取得する画像取得部と、
    前記対象画像データを用いて、前記対象画像に対応する印刷画像の複数個の画素のそれぞれについて前記ドットの形成状態を示すドットデータを生成するドットデータ生成部と、
    を備え、
    前記ドットデータ生成部は、
    前記対象画像データのうち、前記対象画像のうちの一部である第1入力範囲に対応する第1部分画像データを機械学習モデルに入力することによって、第1出力範囲内の前記ドットの形成状態を示す第1部分ドットデータを前記機械学習モデルに出力させ、
    前記対象画像データのうち、前記対象画像のうちの前記第1入力範囲に隣接する一部である第2入力範囲に対応する第2部分画像データを前記機械学習モデルに入力することによって、第2出力範囲内の前記ドットの形成状態を示す第2部分ドットデータを前記機械学習モデルに出力させ、
    前記第1部分ドットデータと前記第2部分ドットデータとを用いて、前記ドットデータを生成し、
    前記第1出力範囲は、前記印刷画像のうち、前記第1入力範囲に対応する範囲と、前記第2入力範囲の一部に対応する範囲と、を含み、
    前記第2出力範囲は、前記印刷画像のうち、前記第2入力範囲に対応する範囲と、前記第1入力範囲の一部に対応する範囲と、を含み、
    前記第1出力範囲と前記第2出力範囲とは、前記第1入力範囲と前記第2入力範囲との境界に対応する部分において互いに重複している、画像処理装置。
  4. 請求項2または3のいずれかに記載の画像処理装置であって、
    前記ドットデータ生成部は、前記ドットデータのうち、前記第1出力範囲と前記第2出力範囲とが重複する重複範囲内の第1の画素の値を、前記第1部分ドットデータのうちの対応する画素の値とし、前記重複範囲内の第2の画素の値を前記第2部分ドットデータのうちの対応する画素の値とすることによって、前記ドットデータを生成する、画像処理装置。
  5. 請求項4に記載の画像処理装置であって、
    前記第1の画素と前記第2の画素とは、前記重複範囲内の複数個の画素の中からランダムに選択される、画像処理装置。
  6. 請求項1~5のいずれかに記載の画像処理装置であって、さらに、
    前記対象画像において、写真を含む第1種の領域と、前記写真とは異なる画像を含む第2種の領域と、を特定する領域特定部を備え、
    前記ドットデータ生成部は、
    前記第1種の領域に対応する前記第1部分ドットデータと前記第2部分ドットデータと、を前記機械学習モデルに出力させ、
    前記ドットデータのうち、前記第1種の領域に対応するデータを、前記第1部分ドットデータと前記第2部分ドットデータとを用いて生成し、
    前記対象画像データのうち、前記第2種の領域に対応するデータに対して、前記機械学習モデルを用いることなく、特定のハーフトーン処理を実行することによって、前記ドットデータのうち、前記第2種の領域に対応するデータを生成する、画像処理装置。
  7. 対象画像のうちの一部である入力範囲に対応する部分画像データが入力され、前記対象画像に基づく印刷画像のうち、前記入力範囲に対応する範囲を含む出力範囲内のドットの形成状態を示す部分ドットデータを出力する機械学習モデルをトレーニングする方法であって、
    複数組のデータセットを取得する取得ステップであって、前記複数組のデータセットのそれぞれは、前記部分画像データのサンプルである入力画像データと、複数の特定値の中から選択される1つの値である入力パラメータと、を含む、前記取得ステップと、
    前記複数組のデータセットを入力として前記機械学習モデルに入力して、前記複数組のデータセットに対応する複数個の前記部分ドットデータを出力させる入出力ステップと、
    前記入出力ステップにて出力される前記複数個の部分ドットデータを用いて、前記機械学習モデルによる演算に用いられる複数個の演算パラメータを調整する調整ステップと、
    を備え、
    前記調整ステップにおいて、前記複数個の演算パラメータは、特定の前記入力画像データと前記入力パラメータとしての第1値とを含む第1の前記データセットに対応する前記部分ドットデータである1部分ドットデータと、前記特定の入力画像データと前記入力パラメータとしての第2値であって前記第1値とは異なる前記第2値とを含む第2の前記データセットに対応する前記部分ドットデータである2部分ドットデータと、が異なるデータになるように調整される、方法。
  8. 請求項7に記載の方法であって、
    前記調整ステップにおいて、前記複数個の演算パラメータは、前記入出力ステップにて出力される前記複数個の部分ドットデータを用いて、特定の損失関数に基づいて算出される指標値が小さくなるように調整され、
    前記特定の損失関数は、前記第1部分ドットデータと前記第2部分ドットデータとの差異が大きいほど小さくなる第1の項を含む、方法。
  9. 請求項7または8に記載の方法であって、
    前記印刷画像は、複数種の印刷材を用いて印刷される画像であり、
    前記部分ドットデータは、前記複数種の印刷材に対応する複数種の前記ドットの形成状態を画素毎に示すデータであり、
    前記調整ステップにおいて、前記複数個の演算パラメータは、前記入出力ステップにて出力される前記複数個の部分ドットデータを用いて、特定の損失関数に基づいて算出される指標値が小さくなるように調整され、
    前記特定の損失関数は、前記部分ドットデータにおいて、2種以上の前記ドットの形成を示す画素データの個数が多いほど大きくなる第2の項を含む、方法。
  10. 請求項7~9のいずれかに記載の方法であって、
    前記調整ステップにおいて、前記複数個の演算パラメータは、前記入出力ステップにて出力される前記複数個の部分ドットデータを用いて、特定の損失関数に基づいて算出される指標値が小さくなるように調整され、
    前記特定の損失関数は、前記部分ドットデータによって示される画像の粒状度が大きいほど大きくなる第3の項を含む、方法。
  11. 請求項7~10のいずれかに記載の方法であって、
    前記調整ステップにおいて、前記複数個の演算パラメータは、前記入出力ステップにて出力される前記複数個の部分ドットデータを用いて、特定の損失関数に基づいて算出される指標値が小さくなるように調整され、
    前記特定の損失関数は、前記部分ドットデータによって示される画像の濃度が、対応する前記データセットに含まれる前記入力画像データによって示される画像の濃度に近いほど小さくなる第4の項を含む、方法。
  12. 印刷材を用いて印刷媒体上にドットを形成する印刷実行部のためのコンピュータプログラムであって、
    複数個の画素を含む対象画像を示す対象画像データを取得する画像取得機能と、
    前記対象画像データを用いて、前記対象画像に対応する印刷画像の複数個の画素のそれぞれについて前記ドットの形成状態を示すドットデータを生成するドットデータ生成機能と、
    をコンピュータに実現させ、
    前記ドットデータ生成機能は、
    前記対象画像データのうち、前記対象画像のうちの一部である第1入力範囲に対応する第1部分画像データと、入力パラメータである第1値と、を機械学習モデルに入力することによって、前記印刷画像のうち、前記第1入力範囲に対応する範囲を含む第1出力範囲内の前記ドットの形成状態を示す第1部分ドットデータを前記機械学習モデルに出力させ、
    前記対象画像データのうち、前記対象画像のうちの前記第1入力範囲とは異なる部分である第2入力範囲に対応する第2部分画像データと、前記入力パラメータとしての第2値であって前記第1値とは異なる前記第2値と、を前記機械学習モデルに入力することによって、前記印刷画像のうち、前記第2入力範囲に対応する範囲を含む第2出力範囲内の前記ドットの形成状態を示す第2部分ドットデータを前記機械学習モデルに出力させ、
    前記第1部分ドットデータと前記第2部分ドットデータとを用いて、前記ドットデータを生成し、
    前記機械学習モデルは、前記第2部分画像データが前記第1部分画像データと同一のデータである場合であっても、前記入力パラメータが異なることに基づいて、前記第1部分ドットデータとは異なる前記第2部分ドットデータを出力する、コンピュータプログラム。
  13. 印刷材を用いて印刷媒体上にドットを形成する印刷実行部のためのコンピュータプログラムであって、
    複数個の画素を含む対象画像を示す対象画像データを取得する画像取得機能と、
    前記対象画像データを用いて、前記対象画像に対応する印刷画像の複数個の画素のそれぞれについて前記ドットの形成状態を示すドットデータを生成するドットデータ生成機能と、
    をコンピュータに実現させ、
    前記ドットデータ生成機能は、
    前記対象画像データのうち、前記対象画像のうちの一部である第1入力範囲に対応する第1部分画像データを機械学習モデルに入力することによって、第1出力範囲内の前記ドットの形成状態を示す第1部分ドットデータを前記機械学習モデルに出力させ、
    前記対象画像データのうち、前記対象画像のうちの前記第1入力範囲に隣接する一部である第2入力範囲に対応する第2部分画像データを前記機械学習モデルに入力することによって、第2出力範囲内の前記ドットの形成状態を示す第2部分ドットデータを前記機械学習モデルに出力させ、
    前記第1部分ドットデータと前記第2部分ドットデータとを用いて、前記ドットデータを生成し、
    前記第1出力範囲は、前記印刷画像のうち、前記第1入力範囲に対応する範囲と、前記第2入力範囲の一部に対応する範囲と、を含み、
    前記第2出力範囲は、前記印刷画像のうち、前記第2入力範囲に対応する範囲と、前記第1入力範囲の一部に対応する範囲と、を含み、
    前記第1出力範囲と前記第2出力範囲とは、前記第1入力範囲と前記第2入力範囲との境界に対応する部分において互いに重複している、コンピュータプログラム。
JP2019017098A 2019-02-01 2019-02-01 画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム Active JP7185186B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019017098A JP7185186B2 (ja) 2019-02-01 2019-02-01 画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム
US16/775,448 US11325398B2 (en) 2019-02-01 2020-01-29 Image processing device generating dot data using machine learning model and method for training machine learning model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019017098A JP7185186B2 (ja) 2019-02-01 2019-02-01 画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2020127081A JP2020127081A (ja) 2020-08-20
JP7185186B2 true JP7185186B2 (ja) 2022-12-07

Family

ID=71837226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019017098A Active JP7185186B2 (ja) 2019-02-01 2019-02-01 画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム

Country Status (2)

Country Link
US (1) US11325398B2 (ja)
JP (1) JP7185186B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7478585B2 (ja) * 2020-04-28 2024-05-07 株式会社日立製作所 プログラム部品評価システム、及びプログラム部品評価方法
CN113569694B (zh) * 2021-07-22 2024-03-19 北京市博汇科技股份有限公司 一种面部筛选方法、装置、设备及存储介质
CN113997699B (zh) * 2021-10-29 2022-07-15 星河智联汽车科技有限公司 一种路面图案喷绘方法、装置及车辆

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0447473A (ja) 1990-06-14 1992-02-17 Canon Inc ニューラルネットワークを用いた画像処理方法
JPH05225378A (ja) 1991-06-03 1993-09-03 Fujitsu Ltd 文書画像の領域分割システム
JPH0531958A (ja) * 1991-08-01 1993-02-09 Fujitsu Ltd 画像形成装置
JPH05130395A (ja) * 1991-11-08 1993-05-25 Ricoh Co Ltd 色信号処理装置
JPH0825693A (ja) * 1994-07-15 1996-01-30 Canon Inc 印刷方法及び装置
JPH1155507A (ja) * 1997-07-31 1999-02-26 Sharp Corp 画像処理装置
JP4558232B2 (ja) 2001-03-26 2010-10-06 株式会社リコー 画像処理方法、画像処理装置および画像処理方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2002300397A (ja) * 2001-03-29 2002-10-11 Fuji Photo Film Co Ltd 網点画像表示装置および網点画像表示プログラム
JP4670921B2 (ja) * 2008-09-12 2011-04-13 ブラザー工業株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
JP5709394B2 (ja) * 2010-03-26 2015-04-30 キヤノン株式会社 画像処理装置及び画像処理方法
JP5776419B2 (ja) 2011-07-29 2015-09-09 ブラザー工業株式会社 画像処理装置、画像処理プラグラム
JP2018142097A (ja) * 2017-02-27 2018-09-13 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP7030423B2 (ja) * 2017-04-27 2022-03-07 シスメックス株式会社 画像解析方法、装置、プログラムおよび深層学習アルゴリズムの製造方法

Also Published As

Publication number Publication date
JP2020127081A (ja) 2020-08-20
US11325398B2 (en) 2022-05-10
US20200247138A1 (en) 2020-08-06

Similar Documents

Publication Publication Date Title
JP7185186B2 (ja) 画像処理装置、機械学習モデルをトレーニングする方法、および、コンピュータプログラム
US11233921B2 (en) Image processing apparatus that specifies edge pixel in target image using single-component image data
EP1558017A2 (en) Halftoning method and system
US10529058B2 (en) Image processing apparatus that smooths image using classification result of pixels included therein
US9147140B2 (en) Image processing apparatus, method, and product for converting image data into fewer gradations based on total value of pixels in a group except for a detected pixel having a specific value
US10565465B2 (en) Image processing apparatus that identifies character pixel in target image using first and second candidate character pixels
US20140092441A1 (en) Image processing device capable of suppressing deformation of printing medium
JP7423905B2 (ja) 機械学習モデルのトレーニング方法、データ生成装置、および、学習済みの機械学習モデル
US11381707B2 (en) Error diffusion for printing
US10339636B2 (en) Image processing apparatus that specifies edge pixel in target image by calculating edge strength
JP5715386B2 (ja) 画像処理装置及びその制御方法、並びにプログラム及び記憶媒体
US11900564B2 (en) Storage medium storing program, image processing apparatus, and training method of machine learning model
JP4108517B2 (ja) ハーフトーン化処理方法及びハーフトーン化処理システム
JP4637766B2 (ja) 色誤差拡散
US10389909B2 (en) Image processing apparatus that specifies edge pixel in target image using minimum and maximum component values of pixel value in target image data
JP2020082694A (ja) ディザマトリクスの生成装置、生成方法、当該ディザマトリクスを用いた画像処理装置、画像処理方法、及びプログラム
JP7191665B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2018098552A (ja) 画像処理装置、画像処理プログラム及び画像処理方法
JP2007336081A (ja) 色域外郭作成装置、色域外郭作成方法、及び色域外郭作成プログラム
JP4238660B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
US9143654B2 (en) Image processing apparatus, image processing method, and storage medium
CN109040516A (zh) 图像处理装置和图像处理方法
JP2005341142A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよびそのプログラムを記録した記録媒体
JP2006324721A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよびそのプログラムを記録した記録媒体
JP2006060645A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221108

R150 Certificate of patent or registration of utility model

Ref document number: 7185186

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150