ここでは、下記の順序に従って本発明の実施の形態について説明する。
(1)コピー装置の構成:
(2)学習サーバーの構成:
(3)印刷制御処理:
(3−1)出力紙サイズ仮決定処理:
(4)他の実施形態:
(1)コピー装置の構成:
図1は、本発明の実施形態にかかるコピー装置1と学習サーバー100の構成を示すブロック図である。コピー装置1は、プロセッサー10と、不揮発性メモリー20と、通信部30と、UI(User Interface)部40と、印刷部50と、読取部60とを備える。プロセッサー10は、図示しないCPUやROMやRAM等を備え、不揮発性メモリー20に記録された種々のプログラムを実行しコピー装置1の各部を制御することができる。なおプロセッサー10は、単一のチップで構成されていても良いし、複数のチップで構成されていても良い。また、例えばCPUに変えてASICが採用されても良いし、CPUとASICとが協働する構成であっても良い。
通信部30は、コピー装置1に装着された各種のリムーバブルメモリーや、有線または無線でコピー装置1に接続された他の装置と各種の通信プロトコルに従って通信するための通信インタフェース回路を含む。プロセッサー10は、通信部30を介して接続された後述する学習サーバー100と通信可能である。
UI部40は、タッチパネル式のディスプレイや、各種のキーやスイッチ等を含む。プロセッサー10は、UI部40を介して利用者の操作内容を取得することができる。また、プロセッサー10は、UI部40のディスプレイに各種の情報を表示し利用者に通知することができる。
印刷部50は、インクジェット方式や電子写真方式等の周知の印刷方式で種々の印刷媒体に印刷を実行するためのアクチュエーターやセンサー、駆動回路、機械部品等を備えている。また、印刷部50は、複数の給紙トレイを備えており、複数の給紙トレイのそれぞれに対応するサイズの出力紙を蓄積することが可能である。給紙トレイは、印刷前の出力紙を保持することができればよく、カセットや手差しトレイ等、様々な形態であってよい。本実施形態においては、印刷部50は2個のカセットを備えているとして説明を行う。印刷部50は、各給紙トレイ(カセット)に蓄積された出力紙を一枚ずつ給紙し、搬送経路内を搬送し、搬送の過程で印刷された出力紙を排出する搬送機構を有している。
読取部60は、原稿台ガラスに載置された原稿やADF原稿トレイにセットされた原稿の読み取りを行うための装置、例えば、周知のカラーイメージセンサーや光源、原稿を搬送するためのアクチュエーターや駆動回路やセンサー、機械部品等を備えている。読取部60が備えるセンサーには、ADF原稿トレイにセットされる原稿の有無や、ADF原稿トレイにセットされた原稿の最大サイズを検知するADF原稿センサーが含まれる。読取部60は、ADF原稿トレイにセットされた原稿を一枚ずつ給紙し、搬送経路内を搬送し、光源からの光が照射されることによってスキャンされた後の原稿を排出する搬送機構を有している。
また、読取部60は、ADF原稿トレイにセットする原稿の搬送方向と直交する方向の位置をガイドする原稿ガイドを備えている。例えば、A3原稿とA4原稿とを混在させた状態でADF原稿トレイにセットする場合は、A3原稿の短辺とA4原稿の長辺が揃うように原稿ガイドによって位置決めされる。そして、A3原稿は長辺が搬送方向と平行であるように搬送される過程で読み取られ、A4原稿は短辺が搬送方向と平行であるように搬送される過程で読み取られる。また例えば、B4原稿とB5原稿とが混載されている場合は、B4原稿の短辺とB5原稿の長辺が揃うように原稿ガイドによって位置決めされる。B4原稿は長辺が搬送方向と平行であるように搬送される過程で読み取られ、B5原稿は短辺が搬送方向と平行であるように搬送される過程で読み取られる。
プロセッサー10は、読取部60を制御して読取部60のADF原稿トレイにセットされた原稿をスキャンし、印刷部50を制御してスキャンした画像を出力紙に印刷する、コピー機能を有している。不揮発性メモリー20には、プロセッサー10が実行する図示しないプログラムや学習済モデル120aが記録される。
プロセッサー10は、不揮発性メモリー20に記録された種々のプログラムによってコピー装置1の各部を制御する。これらのプログラムには、コピー制御プログラムが含まれる。コピー制御プログラムを実行することにより、プロセッサー10は原稿読取部10c、印刷制御部10dとして機能する。
本実施形態のコピー装置1は、コピー機能に関する設定として、「片面/両面」設定と「原稿サイズ混載」設定が含まれる。「片面/両面」設定は、原稿の読み取り面や出力紙の印刷面に関する設定であり、例えば、「片面→片面」や「片面→両面」等の選択肢が含まれる。なお「片面→片面」は、原稿の片面を出力紙の片面にコピーすることであり、「片面→両面」は、2枚の片面原稿を1枚の出力紙の両面にコピーすることである。「原稿サイズ混載」設定では、「オン」または「オフ」のいずれかが設定される。「原稿サイズ混載」設定が「オン」の場合、サイズの異なる原稿のコピーが許可され、「オフ」の場合は許可されない。
コピー装置1において、「片面/両面」設定が「片面→両面」に設定され、かつ、「原稿サイズ混載」設定が「オン」に設定されている場合、サイズが異なりうる2枚の片面原稿を1枚の出力紙の両面にコピーすることが可能となる。混載される原稿のサイズの組み合わせとして、例えば、A3原稿とA4原稿の組み合わせや、B4原稿とB5原稿の組み合わせ等を想定してよい。従って例えば、A3原稿とA4原稿とを、A3の出力紙の両面にそれぞれ1枚ずつ割り当てて印刷する両面コピーや、A3原稿とA4原稿とを、A4の出力紙の両面にそれぞれ1枚ずつ割り当てて印刷する両面コピー等を想定してよい。
ADF原稿トレイに原稿がセットされてコピー開始が指示されると、コピー制御プログラムが実行される。原稿読取部10cの機能により、プロセッサー10は、読取部60を制御してADF原稿トレイにセットされている原稿を1枚ずつ搬送しながら読み取り、読み取った画像を記録媒体に記録する。ADF原稿トレイにセットされている原稿(種々のサイズの原稿が含まれうる)の最大サイズはADF原稿センサーによって取得可能であるが、プロセッサー10は、原稿1枚1枚のサイズを原稿読み取りの際に取得する。
さらに、印刷制御部10dの機能により、プロセッサー10は、読み取った原稿の画像を解析し、解析結果に基づいて出力紙のサイズを決定し、決定したサイズの出力紙に印刷する。より具体的には、プロセッサー10は、出力紙の両面にコピーする2枚の原稿のそれぞれについて原稿画像を解析した解析結果に基づいて当該出力紙のサイズを決定し、決定した出力紙の一方の面に1枚目の原稿を印刷し、他方の面に2枚目の原稿を印刷する。
出力紙のサイズは小さいサイズであるほど出力紙のコストを削減できる可能性が高いため、原稿を原稿よりも小さいサイズの出力紙にコピーできることが望ましい。しかし、原稿よりも小さい出力紙にそのまま原稿をコピーすると、原稿に含まれる模様の端部が出力紙上で欠落した状態となりうる。また、原稿よりも小さい出力紙に原稿をコピーするために原稿の画像を縮小して出力紙に印刷すると、原稿に含まれるマークが出力紙上で小さく印刷された状態となり、出力紙上のマークを利用者が識別できない可能性がある。原稿より小さいサイズの出力紙にコピーしたとしても、利用者がマークを識別できないのであれば、コピーがやり直される可能性があり、その場合、記録剤および出力紙のコストが増加する。
なお、本明細書において、模様は、印刷媒体の印刷面において、記録剤が記録されている部分であり、例えば、図柄、写真、文字、線、紙白でない背景等が記録されている部分を想定してよい。マークは、一定の事柄を指し示すための知覚の対象物であり、例えば、文字、線(罫線、枠線、輪郭線等)等を想定してよい。従って模様はマークを含む。
そのため、原稿を示す画像の内容に関する次の3つの方針に基づいて出力紙のサイズが決定される。1つ目は、原稿より小さいサイズの出力紙にコピーする場合に原稿の模様を欠落させずにコピーが可能であれば、当該サイズの出力紙に印刷可とすることである。2つ目は、原稿より小さいサイズの出力紙に縮小コピーすると仮定した場合に縮小後のマークが利用者にとって識別しやすい状態である(大きさ、太さ等)なら、当該サイズの出力紙に印刷可(縮小コピー可)とすることである。3つ目は、原稿より小さいサイズの出力紙にコピーする場合に、原稿の模様が欠落することやマークが利用者にとって識別しづらい状態になることの少なくともいずれか一方が予想される場合は、原稿と同じサイズの出力紙に印刷することである。3つ目の方針の理由は、原稿よりも少なくとも小さいサイズの出力紙でなければ(すなわち原稿のサイズ以上の出力紙であれば)、模様の欠落やマークの識別困難は回避可能であるが、記録剤および出力紙のコストを抑制するため、原稿より大きなサイズの出力紙ではなく原稿と同サイズの出力紙が選択されることが望ましいためである。
ここで、第1サイズと第2サイズ(>第1サイズ)の両方を含みうる原稿を1枚の出力紙の両面にコピーする場合であって、出力紙のサイズの選択肢として第1サイズと第2サイズがある場合の、出力紙サイズの決定ロジックを説明する。図2は、本実施形態における、出力紙サイズの決定ロジックと、決定されたサイズの出力紙への印刷態様とを説明する図である。
図2に示すように、1枚の出力紙の両面に印刷する2枚の原稿の組み合わせは4パターン存在する。すなわち、1枚目の原稿も2枚目の原稿も第1サイズの場合、1枚目の原稿が第1サイズで2枚目の原稿が第2サイズの場合(第1の場合に相当する)、1枚目の原稿が第2サイズで2枚目の原稿が第1サイズの場合(第2の場合に相当する)、1枚目も2枚目も第2サイズの場合の4パターンである。なお本明細書においては、任意の1枚の出力紙の両面にコピーされる2枚の原稿のうち、先に読み取られる方を1枚目、後に読み取られる方を2枚目と称している(ADF原稿トレイにセットされた原稿全体における1枚目の原稿および2枚目の原稿に限定される訳ではない)。
記録剤および出力紙のコスト抑制のため、第1サイズの原稿については、原稿より大きい第2サイズではなく同じ第1サイズの出力紙が選択される。従って1枚目も2枚目も第1サイズの場合(図2の(a)を参照)、プロセッサー10は、出力紙のサイズとして第1サイズを決定する。そして、プロセッサー10は、第1サイズの出力紙の各面に、第1原稿の原稿を等倍コピーする。
図2に示すように、第1の場合と第2の場合は、第2サイズの原稿が第1サイズの原稿より前に読み取られるか後に読み取られるかが異なる。第1サイズの原稿については、第2サイズの出力紙にコピーするか第1サイズの出力紙にコピーするかを、第1サイズの原稿の画像に基づいて検討する必要はなく、出力紙のサイズは第2サイズの原稿画像の解析結果に応じて決定される。
図2に示す、第2サイズ原稿のトリミング判定は、第2サイズの原稿に含まれる模様の位置の解析の結果、模様が第1サイズに収まるか否かを判定することである。図3は、2種類のサイズの原稿(G1〜G4)と、それらの組み合わせに応じた両面コピーの印刷態様を説明する図である。なお図3の吹き出し内に表記されたアルファベットは、図2の右側に表記されたアルファベットに対応する。
図3に示すG2は、A3原稿を示す画像データを示している。G2内の破線で囲まれた領域G201は、模様を含む最小の矩形領域を示している。プロセッサー10は、第2サイズの原稿に含まれる模様の位置を画像解析によって取得することによって、模様を含む最小の矩形領域である領域G201を取得することができる。G2内の一点鎖線で囲まれた領域G202は、A4サイズに相当する領域である。この例においてA3は第2サイズ、A4は第1サイズに相当する。第2サイズの原稿における模様が第1サイズに収まるとは、第2サイズの原稿における模様を含む最小の矩形領域(例えばG201)が第1サイズに相当する領域(例えばG202)に包含されることである。
また、図2に示す、第2サイズ原稿の縮小判定は、第2サイズの原稿を第1サイズの出力紙に縮小コピーしたと仮定すると、第2サイズの原稿に含まれるマークを第1サイズの出力紙において利用者が識別可能であるか否かを判定することである。本実施形態においては、読み取った原稿を示す画像と、原稿を実際にコピーした出力紙のサイズとの組み合わせを含む教師データに基づいて機械学習することによって生産した学習済モデルを用いて、マークを利用者が識別可能であるか否かを判定する。詳細は後述する。
第1の場合も第2の場合も、第2サイズ原稿のトリミング判定において可と判定された場合(図2および図3の(b),(e)を参照)、プロセッサー10は、出力紙のサイズを第1サイズで決定する。そして、プロセッサー10は、模様以外の部分の少なくとも一部を切り捨てる(図3のG2の例においてはG202の外側の領域を切り捨てる)ことで、第2サイズの原稿の模様を第1サイズに収めて第2サイズの原稿を第1サイズの出力紙にコピーする。第2サイズの原稿の模様を欠落させずに模様を第1サイズに相当する範囲でトリミングしてトリミングした部分を第1サイズの出力紙に印刷する。また、プロセッサー10は、第1サイズの原稿を第1サイズの出力紙に等倍コピーする。従ってこの場合((b),(e))、第2サイズの原稿に含まれる模様を欠落させることなく出力紙にコピーすることができる。また、第2サイズの原稿も第1サイズの原稿も第1サイズの出力紙にコピーされるため、両原稿が第2サイズの出力紙にコピーされる場合と比較すると、出力紙のコストを抑制可能である。
第2サイズの原稿についてトリミング判定が不可の場合であって、第2サイズの原稿についての縮小判定が可である場合(図2および図3における(c),(f)を参照)、プロセッサー10は、第2サイズの原稿を第1サイズの出力紙に縮小コピーし、第1サイズの原稿を第1サイズの出力紙に等倍コピーする。縮小判定が可であるので、第2サイズの原稿に含まれるマークは、縮小コピーされた第1サイズの出力紙においても識別可能である。また、第2サイズの原稿も第1サイズの原稿も第1サイズの出力紙にコピーされるため、両原稿が第2サイズの出力紙にコピーされる場合と比較すると、出力紙のコストを抑制可能である。
第2サイズの原稿についてトリミング判定が不可の場合であって、第2サイズの原稿についての縮小判定も不可である場合(図2および図3における(d),(g)を参照)、プロセッサー10は、第2サイズの原稿を第2サイズの出力紙に等倍コピーし、第1サイズの原稿の画像に余白を付加して生成した第2サイズの画像を第2サイズの出力紙に等倍コピーする。従ってこの場合、第2サイズの原稿に含まれるマークは第2サイズの出力紙においても、原稿と同じ大きさである。また、第1サイズの原稿は第2サイズに拡大することなく、第2サイズとなるように余白を付加して等倍コピーするため、第1サイズの出力紙にコピーする場合と比較して記録剤の消費量は増加しない。そのため、記録剤のコストを抑制可能である。
以上のように、第2サイズの原稿が第1サイズの原稿より先に読み取られたとしても後に読み取られたとしても、プロセッサー10は、第2サイズの原稿の画像の解析結果に応じて出力紙のサイズを決定する。そして、決定したサイズの出力紙に1枚目の原稿も2枚目の原稿もコピーすることにより、サイズが互いに異なる2枚の原稿をサイズが同じ出力紙にコピーすることができる。すなわち、本実施形態によれば、サイズが互いに異なる2枚の原稿をサイズが同じ出力紙にコピーした印刷物が生産される。
なお、1枚目の原稿も2枚目の原稿も第2サイズである場合は、次のように出力紙のサイズが決定される。2枚の原稿の両方において、トリミング判定が可である場合(図2における(h)を参照)、プロセッサー10は出力紙のサイズを第1サイズで決定する。そしてプロセッサー10は、両原稿において、模様を欠落させないように第1サイズに相当する範囲でトリミングし、トリミングした画像を第1サイズの出力紙の両面に印刷する。従ってこの場合、第2サイズの出力紙に両面コピーする場合と比較して、出力紙のコストを抑制可能である。
少なくとも1枚の原稿においてトリミング判定が不可の場合であって、両方の原稿において縮小判定が可の場合(図2の(i)を参照)、プロセッサー10は、出力紙のサイズを第1サイズで決定する。そしてプロセッサー10は、両原稿を第1サイズに縮小して第1サイズの出力紙の両面に印刷する。従ってこの場合、第2サイズの出力紙に両面コピーする場合と比較して、出力紙のコストを抑制可能である。
少なくとも1枚の原稿においてトリミング判定が不可の場合であって、少なくとも1枚の原稿において縮小判定も不可の場合(図2の(j)を参照)、プロセッサー10は出力紙のサイズを第2サイズで決定する。そしてプロセッサー10は、両原稿を第2サイズの出力紙の両面に等倍で印刷する。従ってこの場合、原稿に含まれる模様の一部が欠落した状態で出力紙にコピーされることや、原稿に含まれるマークが出力紙において利用者にとって識別しづらい大きさでコピーされることを、防止することができる。その結果コピーのやり直しに要する記録剤や出力紙のコスト増加を防止できる。
なお、プロセッサー10は、コピー装置1が備える各給紙トレイに対応する出力紙のサイズと出力紙の有無を取得することができ、給紙トレイに対応し、存在している出力紙のサイズの中から出力紙のサイズが選択される。例えば、2個の給紙トレイ(カセット)にA3の出力紙とA4の出力紙とがそれぞれ保持されている場合、プロセッサー10は、各給紙トレイに対応する出力紙のサイズとして、A3とA4を取得することができる。そして、プロセッサー10は、A3またはA4のいずれかを上述の方針に従って出力紙のサイズとして決定することができる。なお仮に、A4の出力紙がA4の給紙トレイに存在していなければ(用紙切れであれば)、A4を出力紙のサイズとして決定しないようにすることもできる。
次に、上述の第2サイズの原稿についての縮小判定を、機械学習モデルを用いて行う構成について説明する。第2サイズの原稿についての縮小判定は、第2サイズの原稿を第1サイズの出力紙に縮小コピーしたと仮定すると第2サイズの原稿に含まれるマークは第1サイズの出力紙(縮小コピー後の出力紙)において利用者が識別可能であるか否かの判定である。コピー装置1は、コピーが実施されると、実施されたコピーに関するデータを教師データとして学習サーバー100に送信し、当該教師データを用いて機械学習したモデルを学習サーバー100から取得する機能を有する。この機能を実現するため、プロセッサー10は、教師データ出力部10aと学習済モデル取得部10bを実行可能である。
本実施形態においては、利用者が手動で出力紙のサイズ(原稿より小さいサイズ)を指定した上で縮小コピーを行う場合、利用者が指定したサイズの出力紙に縮小コピーされたマークは、利用者にとって識別可能な大きさや太さである可能性があると見なす。すなわち、利用者が手動で原稿より小さい出力紙のサイズを指定し、コピー部数を複数枚に設定した状態で、コピースタート(縮小コピー)を指示した場合、利用者が指定したサイズの出力紙においてコピー後のマークは利用者にとって識別可能な大きさや太さである可能性が高いと見なす。コピー部数が複数部数である場合、利用者が指定したサイズの出力紙にコピーされたマークは利用者にとって識別可能な大きさや太さである可能性が、コピー部数が1部である場合より高いとみなして、この場合の原稿画像と出力紙のサイズを教師データの一部として採用する。
教師データ出力部10aは、コピーが実施されると、コピーした原稿の画像と、原稿を実際にコピーした出力紙のサイズとの組み合わせを含む教師データを、通信部30を介して学習サーバー100に出力する機能をプロセッサー10に実現させる。具体的には、プロセッサー10は、利用者が原稿より小さい出力紙のサイズを指定し、コピー部数を複数枚に設定した状態で、コピースタート(縮小コピー)を指示した場合、読み取った原稿を示す画像と、当該原稿のサイズと、当該原稿の読み取り解像度と、当該原稿を実際にコピーした出力紙のサイズ(すなわち利用者が手動で設定した出力紙のサイズ)と、を教師データとして学習サーバー100に送信する。
学習済モデル取得部10bは、機械学習の結果生成された学習済モデルを、通信部30を介して学習サーバー100から取得する機能をプロセッサー10に実現させる。コピー装置1から学習サーバー100に送信された教師データに基づいて、学習サーバー100では後述する学習処理が行われる。学習済モデル取得部10bによりプロセッサー10は、学習処理によって最適化された学習済モデル120aを学習サーバー100から取得することができる。
後述するように、本実施形態におけるモデルは、原稿を示す画像を入力とし、出力紙のサイズを出力とする。プロセッサー10は、上述した第2サイズの原稿についての縮小判定の際に、学習済モデル120aに読み取った原稿画像を入力し、学習済モデル120aからの出力として出力紙のサイズを得る。学習済モデル120aから出力された出力紙のサイズは、上述の縮小判定に用いられる。
(2)学習サーバーの構成:
学習サーバー100は、コピー装置1から収集した教師データに基づいて機械学習を行い、機械学習の結果得られた学習済モデルをコピー装置1に出力するコンピューターである。学習サーバー100は、CPU,RAM,ROMを備える制御部110、記録媒体120、通信部130を備える。
制御部110は、記録媒体120に記録された図示しない機械学習プログラムを実行することにより、教師データ取得部110a,学習部110b,学習済モデル出力部110cとして機能し、機械学習に関連した機能を実行することができる。
制御部110は、教師データ取得部110aの機能により教師データ120bを取得する機能を実行可能である。教師データ120bは、コピー装置1から教師データ出力部10aの処理によって学習サーバー100に送信される。本実施形態において、学習サーバー100がコピー装置1から取得した教師データは、複数部数の縮小コピーの際の原稿の画像と、当該原稿のサイズと、当該原稿の読み取り解像度と、利用者が指定した出力紙のサイズ(当該原稿を実際に縮小コピーした出力紙のサイズ)と、を含むデータである。学習サーバー100では、この教師データを、当該サイズの出力紙にコピーされたマーク(原稿に含まれるマークが縮小された状態のマーク)を利用者が識別可能であることを示す教師データとして学習する。
制御部110は、コピー装置1から教師データ120bを受信すると、記録媒体120に蓄積する。教師データ120bが蓄積されると、画像から出力紙のサイズを推定するモデルを機械学習によって生成することができる。
図4は機械学習処理を示すフローチャートである。機械学習処理は、既定量の教師データ120bが蓄積された後、任意のタイミングで実行されてよい。機械学習処理が開始されると、制御部110は、学習部110bの機能により、訓練モデル120dを取得する(ステップS300)。ここで、モデルとは、推定対象のデータと推定結果のデータとの対応関係を導出する式を示す情報である。本実施形態においては推定対象のデータがコピー装置1によって読み取られた原稿を示す画像データ(または画像データから導出されるデータ(画像の特徴等))であり、出力紙のサイズが推定結果のデータであるモデルを例にして説明する。
入力データを出力データに変換する限りにおいて、モデルは種々の定義が可能である。図5は本実施形態において利用されるモデルの一例であるCNN(Convolutional Neural Network)の構造を模式的に示した図である。図5においては、CNNによるデータフォーマットの変化を直方体で示しており、通常のニューラルネットワークのノードを白丸で示している。すなわち図5においては、出力層Loが通常のニューラルネットワークであり、出力層Loより上位はCNNである。
図5においては、左端の層が入力層Li、右端の層が出力層Loであり、両者の間のニューラルネットワークを模式的に示している。本実施形態においては、原稿を示す画像データを入力層Liへの入力データとし、出力層Loから出力紙のサイズを示す出力データを出力するモデルが構築される。原稿のサイズおよび読み取り解像度に応じて原稿画像の画素数が異なるため、本実施形態においては、モデルは、原稿のサイズおよび読み取り解像度毎に構成される。例えば、A3原稿の第1解像度用のモデル、A3原稿の第2解像度用のモデル、B4原稿の第1解像度用のモデル、B4原稿の第2解像度用のモデル、等を想定してよい。教師データに含まれる原稿の読み取り解像度と原稿のサイズとから、適用するモデルが選択される。図5は、A3原稿の第1解像度用のモデルの入力と出力を例示している。画像は縦Hピクセル、横Wピクセルであり、各ピクセルについてR:赤、G:緑、B:青の3チャンネルの階調値が規定されている。従って、図5において入力層Liの画像は縦H,横W,奥行き3の直方体で模式的に示されている。なお、例えば原稿画像をグレースケール画像に変換した画像データを入力層Liに入力する構成であってもよい。またモデルは、原稿のサイズおよび読み取り解像度毎に構成されなくてもよい。本実施形態においては少なくとも原稿のサイズ毎に構成されていればよく、モデルには入力層Liの画素数に合うように解像度変換された原稿画像が入力されてもよい。
図5においては、画像が入力層に入力された後、CNNを経て、すなわち、所定の大きさおよび数のフィルタによる畳み込み演算、活性化関数による演算およびプーリング層の演算を経てH11×W11×D11個の出力値に変換される例を示している。図5においては、この後、複数の層(図示省略)を経てHm1×Wm1×Dm1個の出力値に変換される例を示している。
出力層Loからの出力データは出力紙のサイズを示している。出力は、コピー装置1においてA3原稿を縮小コピーする出力紙のサイズとして選択可能なサイズであればよく、本実施形態においては、例えばB4、A4、B5の3つを想定している。出力層Loの3つのノードにそれぞれ、B4、A4、B5が対応付けられる。CNNによってHm1×Wm1×Dm1個の出力値が得られた後、全結合によって出力紙のサイズを示す出力値が得られる。
出力層Loにおいて、各ノードの出力値が大きい程、入力されたA3の原稿画像を縮小コピーする際の出力紙のサイズとして適切であると推定される。より具体的には、ノードTi1〜Ti3のそれぞれにおける出力値が0.05,0.9,0.05である場合、ノードTi2に対応するA4が、縮小してもマークを識別可能な出力紙のサイズであると推定されることになる。
なお、A3原稿の第2解像度用のモデルの出力ノードはA3原稿の第1解像度用のモデルと同様にB4、A4、B5を示す3つで構成されてよい。また、B4原稿の第1解像度用および第2解像度用のモデルの出力ノードは、コピー装置1においてB4原稿を縮小コピーする出力紙のサイズとして選択可能なサイズであればよく、例えばA4、B5の2つである構成であってもよい。
図4に示すフローチャートにおけるステップS300では、訓練モデルを取得する。なお本実施形態においては、原稿のサイズおよび読み取り解像度毎にモデルが構成されるため、図4の処理は各モデルについて実施される。ここで、訓練とは、学習対象であることを示す。すなわち、訓練モデルにおいては、原稿画像データを入力し、出力紙のサイズを出力するが、原稿画像データと出力紙のサイズとの対応関係は初期において正確ではない。すなわち、訓練モデルにおいては、ノードが構成する層の数やノードの数は決められるが、入出力の関係を規定するパラメーター(重みやバイアス等)は最適化されていない。これらのパラメーターは、機械学習の過程で最適化される(すなわち、訓練される)。
訓練モデルは、予め決定されていても良いし、学習サーバー100を操作するオペレーターが、学習サーバー100が備えるUI部を操作して入力することによって取得されても良い。いずれにしても、制御部110は、図5に示す例のように、原稿画像データに基づいて出力紙のサイズを出力するニューラルネットワークのパラメーターを訓練モデルとして取得する。
次に、制御部110は、学習部110bの機能により、教師データを取得する(ステップS305)。本実施形態においては、上述のように教師データ120bが予めコピー装置1から送信され、記録媒体120に記録されている。そこで、制御部110は、記録媒体120を参照して教師データ120bを取得する。例えば、A3原稿および第1解像度用のモデルについて図4の処理が実施される場合、A3原稿の第1解像度の教師データ120bが取得される。次に、制御部110は、学習部110bの機能により、テストデータを取得する(ステップS310)。本実施形態においては、教師データ120bから、その一部が抽出されてテストデータになる。テストデータは訓練に利用されない。
次に、制御部110は、学習部110bの機能により、初期値を決定する(ステップS315)。すなわち、制御部110は、ステップS300で取得した訓練モデルのうち、可変のパラメーターに対して初期値を与える。初期値は、種々の手法で決定されて良い。例えば、ランダム値や0等を初期値とすることができ、重みとバイアスとで異なる思想で初期値が決定されても良い。むろん、学習の過程でパラメーターが最適化されるように初期値が調整されても良い。
次に、制御部110は、学習部110bの機能により、学習を行う(ステップS320)。すなわち、制御部110は、ステップS300で取得した訓練モデルにステップS305で取得した教師データ120bにおける原稿画像データを入力し、出力層Loの出力値を計算する。また、制御部110は、出力された出力紙のサイズと教師データ120bが示す出力紙のサイズとの誤差を示す損失関数によって誤差を特定する。そして、制御部110は、損失関数のパラメーターによる微分に基づいてパラメーターを更新する処理を既定回数繰り返す。例えば、A3原稿を示す画像G3と、出力紙のサイズを示すA4とを含む教師データがある場合、画像G3をモデルに入力して得られる出力(B4,A4,B5)が(0,1,0)に近づくようにパラメーターが更新される。
むろん、損失関数は、種々の関数を採用可能であり、例えば、交差エントロピー誤差などを採用可能である。以上のような損失関数を算出する処理は、教師データ120bに含まれる画像の全てまたは一部について実施され、その平均や総和によって1回の学習における損失関数が表現される。1回の学習における損失関数が得られたら、制御部110は、既定の最適化アルゴリズム、例えば、確率的勾配降下法等によってパラメーターを更新する。
以上のようにして、既定回数のパラメーターの更新が行われると、制御部110は、訓練モデルの汎化が完了したか否かを判定する(ステップS325)。すなわち、制御部110は、ステップS310で取得したテストデータが示す画像データを訓練モデルに入力して設定を示す出力を取得する。そして、制御部110は、出力された設定と、テストデータに対応づけられた設定とが一致している度合いを取得する。本実施形態において、制御部110は、当該一致している度合いが閾値以上である場合に汎化が完了したと判定する。
なお、汎化性能の評価に加え、ハイパーパラメーターの妥当性の検証が行われてもよい。すなわち、重みとバイアス以外の可変量であるハイパーパラメーター、例えば、ノードの数等がチューニングされる構成において、制御部110は、検証データに基づいてハイパーパラメーターの妥当性を検証しても良い。検証データは、ステップS310と同様の処理により、教師データから抽出されても良い。むろん、検証データもテストデータと同様に、訓練には使用されない。
ステップS325において、訓練モデルの汎化が完了したと判定されない場合、制御部110は、ステップS320を繰り返す。すなわち、さらに重みおよびバイアスを更新する。一方、ステップS325において、訓練モデルの汎化が完了したと判定された場合、制御部110は、学習済モデルを記録する(ステップS330)。すなわち、制御部110は、訓練モデルを学習済モデル120aとして記録媒体120に記録する。そして制御部110は学習済モデル出力部110cの処理により、通信部130を介してコピー装置1に学習済モデル120aを送信する。
以上の構成によれば、原稿を縮小コピーするのに適した出力紙のサイズを推定するためのモデル(学習済モデル120a)を生産することができる。そして、原稿を示す原稿画像データを学習済モデル120aに入力して出力紙のサイズを示す情報を得ることにより、原稿の縮小コピーに適した出力紙のサイズを推定することが可能になる。出力層Loの各ノードの出力値の和は1になるように規格化される。閾値を予め定め(例えば0.9等)、閾値以上の値が出力されたノードに対応するサイズが、原稿の縮小コピーに適したサイズであると推定してよい。
例えば、コピー装置1においてコピーが実施される際、読み取られたA3原稿を示す原稿画像データを学習済モデル120aに入力して得られた出力(B4,A4,B5)が例えば(0.7,0.2,0.1)であるとする。この場合、どの出力紙のサイズもこのA3原稿を縮小コピーする出力紙のサイズとして適切でないことが推定できる(どのノードの出力値も閾値未満であるため)。このような場合、読み取られたA3原稿は縮小コピーには適しておらず原稿と同じA3の出力紙に等倍することが適切であると推定できる(縮小判定:不可)。
また例えば、読み取られたA3原稿を示す原稿画像データを学習済モデル120aに入力して得られた出力(B4,A4,B5)が例えば(0.09,0.9,0.01)の場合、読み取られたA3原稿を縮小コピーする出力紙のサイズとしてA4が適切であると推定できる。また例えば、読み取られたA3原稿を示す原稿画像データを学習済モデル120aに入力して得られた出力(B4,A4,B5)が例えば(0.9,0.09,0.01)の場合、読み取られたA3原稿を縮小コピーする出力紙のサイズとしてB4が適切であると推定できる。
(3)印刷制御処理:
図6は、片面原稿を両面コピーする場合の印刷制御処理を示すフローチャートである。図6の印刷制御処理は、次の条件1〜条件4を全て満たしている場合に、コピースタートの指示が利用者によって入力され原稿画像がメモリーに蓄積開始されたことに応じて開始される処理である。条件1は、「片面/両面」設定が「片面→両面」に設定されていることである。条件2は、「原稿サイズ混載」設定が「オン」に設定されていることである。条件3は、ADF原稿トレイに原稿がセットされており、セットされた原稿の最大サイズがA3であることがADF原稿センサーの出力によって判明していることである。条件4は、2つの給紙トレイにセットされている出力紙はそれぞれA3とA4であることである。
なお、コピースタートの指示を利用者が入力すると、図示しない原稿読取処理が開始される。すなわち原稿読取処理と図6の印刷制御処理とは、コピースタート指示受付後、並行して実行される。原稿読取処理は原稿読取部10cの機能によって実施される処理であり、ADF原稿トレイに原稿があり、読み取った原稿を示す画像を蓄積するメモリーに空きがあれば、順次、原稿の搬送、読み取り、原稿を示す画像のメモリーへの蓄積を行う処理である。コピースタート指示に応じて原稿読取処理が開始され、原稿読取処理によってメモリーに1枚目の原稿画像が蓄積開始されたことに応じて図6の印刷制御処理が開始される。
図6の印刷制御処理において、ステップS105〜S145は、1枚の原稿画像を解析して出力紙のサイズを仮決定する処理ブロックである。原稿画像の解析には、少なくとも後述する模様位置解析が含まれ、場合によっては学習済モデル120aによる計算処理が含まれる。S105〜S145が2枚の原稿についてそれぞれ実施されると、2枚の原稿のそれぞれについて出力紙のサイズが仮決定されたことになる。ステップS165〜S175は、2枚の原稿のそれぞれについて仮決定された出力紙のサイズに基づいて出力紙のサイズを本決定し、本決定したサイズの出力紙の両面に原稿を1枚ずつ印刷する処理ブロックである。
本実施形態において、白紙原稿は読み飛ばすように構成されている。白紙でないA3原稿の場合は、A3の読み取り面の全領域について模様の位置を解析する必要があるため、読み取り面全領域の解析が終了(S110:Y)するまで、S110:N〜S130:Nが繰り返されることとなる。白紙でないA4原稿の場合は、原稿のサイズがA4と判明する(S130:Y)まで、S110:N〜S130:Nが繰り返されることとなる。白紙のA3原稿や白紙のA4原稿の場合は、読み取り面の全領域についての模様位置解析が終了(S110:Y)するまで、すなわち、読み取り面の全領域に渡って模様がない無地であることが確定するまで、S110:N〜S125:Nが繰り返されることとなる。
また、本実施形態においては、混載できる原稿サイズの組み合わせが制限される。例えば、A3とA4のように一方の短辺と他方の長辺の長さが一致するA系原稿同士は組み合わせ可能である。同様に、B4やB5等のように一方の短辺と他方の長辺の長さが一致するB系原稿同士も組み合わせ可能である。しかし例えば、A系原稿とB系原稿とを混載するとエラーとするように構成されている。図6はA3原稿とA4原稿の混載を想定した印刷制御処理であるので、A4でもA3でもない例えばB4原稿が混載していた場合、S115でY判定となるまで、S110:N〜S130:Nが繰り返されるが、A4でもA3でもないことが判明すると(S115:Y)エラー通知されることとなる。
続いて、図6の印刷制御処理の各ステップについて詳細に説明する。印刷制御処理が開始されると、プロセッサー10は、変数iを0で初期化する(ステップS100)。印刷制御処理は、1枚の出力紙の表裏の各面に片面原稿を1枚ずつコピーする処理であるので、1枚の出力紙の両面コピーに必要な片面原稿の枚数は2枚である。変数iは、白紙でない片面原稿の読み取り枚数をカウントするために用いられる。変数iの値域は0≦i≦2である。なお、本印刷制御処理では、白紙の片面原稿(読み取り面が白紙である原稿)が混ざっていた場合は、その原稿はコピーしない(読み飛ばす)ように構成されている。従って原稿が白紙の場合、変数iはカウントアップされない。
続いてプロセッサー10は、原稿の模様位置解析を開始する(ステップS105)。すなわちプロセッサー10は、原稿読取部10cによって順次メモリーに蓄積される画像データに基づいて、原稿画像における模様の位置を取得する処理を開始する。原稿の読み取り面の全体の画像データがメモリーに蓄積されると、原稿の読み取り面全体における模様が存在する矩形領域(例えば図3のG201)の位置を取得することができる。
なお、原稿の搬送の過程で搬送方向や搬送方向と直交する方向における原稿の端部を検知することが可能である。4つの端部を検知すると、プロセッサー10は、対向する端部の距離等に基づいて、原稿のサイズを取得することができる。例えば搬送方向における原稿の始端を検知してから終端を検知するまでのローラーの回転数等に基づいて搬送方向における原稿の長さを取得可能である。また例えば、搬送方向と直交する方向における両端を検知し、両端の距離から搬送方向と直交する方向の原稿の長さを取得可能である。
続いてプロセッサー10は、模様位置解析が終了したか否かを判定する(ステップS110)。すなわち、原稿の読み取り面の全体の画像データがメモリーに蓄積され、原稿の読み取り面全体における模様が存在する矩形領域(例えば図3のG201)の位置の取得が完了したか否かが判定される。
ステップS110において、模様位置解析が終了したと判定されなかった場合、プロセッサー10は、原稿のサイズがA4でもA3でもないことが判明したか否かを判定する(ステップS115)。例えば、原稿の搬送の過程で検知した、原稿の対向する端部の距離に基づいて、原稿のサイズがA4でもA3でもないことが判明したか否かが判定される。ステップS115において、原稿のサイズがA4でもA3でもないことが判明したと判定された場合、プロセッサー10はエラーを通知し(ステップS120)、印刷制御処理を終了する。
ステップS115において、原稿のサイズがA4でもA3でもないことが判明したと判定されない場合、プロセッサー10は原稿に模様があることが判明したか否かを判定する(ステップS125)。すなわち模様位置解析によって原稿に何か模様があることを検知した場合、プロセッサー10は原稿に模様があることが判明したと判定する。原稿に何か模様があることが解析によってまだ判明していない場合、すなわち、原稿の読み取り面全体の模様位置解析はまだ全て終了してはいないが解析済みの部分については模様がないことが判明している場合、プロセッサー10は、原稿に模様があることが判明したと判定しない。
ステップS125において、原稿に模様があることが判明したと判定されなかった場合、プロセッサー10はステップS110を実行する。ステップS125において原稿に模様があることが判明したと判定された場合、プロセッサー10は、原稿のサイズがA4であることが判明したか否かを判定する(ステップS130)。原稿搬送の過程で検知した原稿の対向する端部の距離に基づいて、原稿のサイズがA4であるか否かが判定される。
ステップS130において、原稿のサイズがA4であることが判明したと判定されなかった場合、プロセッサー10は、ステップS110を実行する。ステップS110において、解析が終了したと判定された場合、プロセッサー10は、原稿は白紙であるか否かを判定する(ステップS135)。模様位置解析の結果、原稿に模様がない場合、原稿は白紙であると判定され、原稿になんらかの模様がある場合、変更は白紙で有ると判定されない。
ステップS135において、原稿は白紙であると判定された場合、プロセッサー10は後述するステップS150の処理を実行する。本実施形態においては、原稿が白紙の場合は、当該原稿はコピーしない(読み飛ばす)。従ってステップS135において原稿が白紙であると判定された場合、変数iの値は変化しない。
ステップS130において原稿のサイズがA4と判明したと判定された場合((A)、図6の破線の矢印)、または、ステップS135において原稿は白紙であると判定されなかった場合((B)、図6の一点鎖線の矢印)、プロセッサー10は、変数iの値を1増加させる(ステップS140)。なお、上述の((A)、図6の破線の矢印)の場合、読み取った原稿(インクリメント後のi枚目の原稿)のサイズはA4であることが判明している状態である。((B)、図6の一点鎖線の矢印)の場合は、上述の条件3と、ステップS115がN判定であることと、ステップS130がN判定であることから、読み取った原稿のサイズはA3であることが判明している状態である。さらに(B)の場合は、A3の原稿の模様位置解析が終了した状態である(ステップS110:Y)が、(A)の場合は、A4の原稿の模様位置解析は必ずしも終了していない。すなわち、(A)の場合は、原稿の模様位置解析が終了していなくても原稿のサイズがA4であると判明すれば、次の出力紙サイズ仮決定処理やそれ以降の出力紙のサイズ決定や印刷開始などの処理を実行するように構成されている。
続いてプロセッサー10は、出力紙サイズ仮決定処理を実行する(ステップS145)。出力紙サイズ仮決定処理は、原稿に適した出力紙のサイズを仮決定する処理である。ステップS145においてi枚目の原稿について出力紙サイズ仮決定処理が実行される際、i枚目の原稿のサイズは、(A)の場合および(B)の場合で上述したように、A3またはA4のいずれかであることが判明している状態である。出力紙サイズ仮決定処理は原稿1枚分ずつ行われる。2枚分の原稿のそれぞれについて出力紙のサイズが仮決定されると、仮決定された出力紙のサイズに基づいて後述するステップS165において出力紙のサイズが決定される。出力紙サイズ仮決定処理の詳細については後述する。
続いてプロセッサー10は、変数iの値は1であるか否かを判定する(ステップS150)。すなわち、プロセッサー10は、1枚分の片面原稿について出力紙のサイズが決定した状態であるか否かを判定する。ステップS150において変数iの値が1であると判定された場合、プロセッサー10は、次の原稿が有るか否かを判定する(ステップS155)。すなわち、次の原稿を示す画像がメモリーに蓄積開始された状態であるか否かが判定される。
ステップS155において次の原稿が有ると判定された場合、プロセッサー10はステップS105の処理を実行する(変数iの値は1のまま)。すなわち次の原稿模様位置解析が開始される。ステップS155において次の原稿が有ると判定されなかった場合、プロセッサー10は、仮決定した出力紙のサイズに合うように処理した画像で印刷部50に片面印刷を開始させ(ステップS160)、印刷制御処理を終了する。
すなわちステップS160は、白紙でない片面原稿の枚数が奇数である場合に、最後の片面原稿を出力紙の片面に印刷する処理である。ステップS160では、ステップS145で仮決定されたサイズが出力紙のサイズとして決定される。例えば、A3の原稿をA4の出力紙にコピーすることが決定された場合、A4サイズにトリミングまたは縮小した画像をA4の出力紙に印刷する処理が開始される。また例えば、A3の原稿をA3の出力紙にコピーすることが決定された場合や、A4の原稿をA4の出力紙にコピーすることが決定された場合は、トリミングや変倍されることなく原稿の画像を出力紙に印刷する処理が開始される。
ステップS150において変数iの値が1であると判定されなかった場合、プロセッサー10は、変数iの値が2であるか否かを判定する(ステップS160)。すなわち、2枚の片面原稿のそれぞれについて、出力紙のサイズを仮決定済みであるか否かが判定される。ステップS160において、変数iの値が2であると判定された場合、プロセッサー10は、2枚の原稿のそれぞれについて仮決定したサイズのうち、大きい方を出力紙のサイズとして本決定する(ステップS165)。1枚目の原稿について仮決定された出力紙のサイズをZ1、2枚目の原稿について仮決定された出力紙のサイズをZ2とすると、(Z1,Z2)が(A3,A4)または(A4,A3)または(A3,A3)の場合、出力紙のサイズはA3で決定される。(Z1,Z2)が(A4,A4)の場合は、出力紙のサイズはA4で決定される。すなわち本実施形態の場合、Z1およびZ2の少なくともいずれか一方がA3である場合には出力紙のサイズはA3で決定され、Z1およびZ2がいずれもA4である場合には出力紙のサイズがA4で決定される。
続いてプロセッサー10は、本決定した出力紙のサイズに合うように処理した画像で両面印刷を印刷部50に開始させる(ステップS170)。例えば、A3の原稿をA4の出力紙にコピーすることが本決定された場合、A4サイズにトリミングまたは縮小した画像をA4の出力紙に印刷する処理が行われる(例えば図3の(b)(e)におけるA4出力紙の他方の面や、(c)(f)におけるA4出力紙の他方の面を参照)。また例えば、A3の原稿をA3の出力紙にコピーすることが本決定された場合や、A4の原稿をA4の出力紙にコピーすることが本決定された場合は、トリミングや変倍されることなく原稿の画像を出力紙に印刷する処理が行われる(例えば図3の(d)(g)におけるA3出力紙の他方の面や、(c)(f)におけるA4出力紙の一方の面を参照)。また、A4の原稿をA3の出力紙にコピーすることが本決定された場合、A4の原稿の画像に余白を付加してA3サイズとした画像をA3の出力紙に印刷する処理が行われる(例えば図3の(d)(g)におけるA3出力紙の一方の面を参照)。なお、トリミングを行う位置や余白を付加してA3のどの位置にA4の原稿の画像を配置するかについては、模様が欠落しない範囲で任意に設定することができる。
続いてプロセッサー10は、変数iの値を0にする(ステップS175)。ステップS175を実行後、または、ステップS160において変数iの値は2であると判定されなかった場合、プロセッサー10は、ステップS155と同様に、次の原稿が有るか否かを判定する(ステップS180)。ステップS180において次の原稿が有ると判定された場合、プロセッサー10は、ステップS105を実行する。ステップS180において次の原稿が有りと判定されなかった場合、プロセッサー10は印刷制御処理を終了する。
(3−1)出力紙サイズ仮決定処理:
図7は、印刷制御処理のステップS145で実行される出力紙サイズ仮決定処理のフローチャートである。出力紙サイズ仮決定処理が開始されると、プロセッサー10は、i枚目の原稿はA3であるか、または、A4であるかを判定する(ステップS200)。
ステップS200において、i枚目の原稿はA3であると判定された場合、プロセッサー10は、模様はA4に収まるか否か(トリミング判定)を判定する(ステップS205)。すなわちi枚目の原稿の画像内において模様が存在する領域(例えば図3のG201)は、A4に相当する大きさの矩形領域(例えば図3のG202)に包含されるか否かが、模様位置解析の結果に基づいて判定される。
ステップS205において、模様はA4に収まると判定された場合、プロセッサー10は、i枚目の原稿に適した出力紙のサイズをA4で仮決定する(ステップS210)。ステップS205において、模様はA4に収まると判定されなかった場合、プロセッサー10は、A4に縮小した場合にマークは識別可能であるか否か(縮小判定)を判定する(ステップS215)。すなわち、プロセッサー10は、読み取った原稿のサイズと読み取り解像度とに応じた学習済モデル120aを選択し、選択した学習済モデル120aに原稿画像を入力して出力結果を得る。そしてプロセッサー10は、出力結果に基づいてA4に縮小した場合にマークは識別可能であるか否かを判定する。
例えば、図5に示す出力層Loの3つのノードの出力値のいずれも閾値を満たしていない場合や、A4(予定する出力紙のサイズ)より大きなB4のみが閾値以上である場合、プロセッサー10は、A3原稿をA4出力紙に縮小不可と判定する。また例えば、A4またはB5のいずれかが閾値以上である場合、プロセッサー10は、A3原稿をA4出力紙に縮小可と判定する。B5は予定する出力紙のサイズであるA4より小さいため、B5に縮小してマークを識別可能なのであればB5より大きいA4に縮小してもマークを識別可能であると推定できるためである。
ステップS215において、A4に縮小した場合にマークは識別可能であると判定された場合、プロセッサー10は、i枚目の原稿に適した出力紙のサイズをA4で仮決定する(ステップS220)。
ステップS215において、A4に縮小した場合にマークは識別可能であると判定されなかった場合、プロセッサー10は、i枚目の原稿に適した出力紙のサイズをA3で仮決定する(ステップS225)。なお、本実施形態においては、ステップS225が実行された場合、出力紙のサイズは実質的にA3で本決定されたことになる(Z1およびZ2の少なくともいずれか一方がA3で仮決定された場合、出力紙のサイズはA3で決定されるため)。例えばi=1の場合にS225が実行された場合、次の原稿が仮にA3であったとしても、次の原稿についての解析終了を待たずして出力紙のサイズをA3と本決定するように構成されていてもよい。ステップS200において、i枚目の原稿はA4であると判定された場合、プロセッサー10は、i枚目の原稿に適した出力紙のサイズをA4で仮決定する(ステップS230)。
図8の(TA)は、1枚目の原稿がA4であり2枚目の原稿がA3である場合(すなわち第1の場合)であって上述の印刷制御処理が実行された場合の、印刷開始タイミングを示すタイミングチャートである。なお、A4の原稿もA3の原稿も白紙でないとする。1枚目の原稿の読み取り開始タイミングをt0とする。1枚目の原稿のサイズがA4であることが判明した場合(図6のS130、図8のt1)、1枚目の原稿についての出力紙のサイズはA4で仮決定される。1枚目の原稿の読み取りが終わると2枚目の原稿の読み取りが開始される。2枚目の原稿の読み取りが終了し(t4)、2枚目の原稿画像の解析が終了する(t5)と、2枚目の原稿についての出力紙のサイズが仮決定される。仮に、2枚目の原稿について出力紙のサイズがA4で仮決定されたとすると、1枚目の原稿と2枚目の原稿を両面コピーするための出力紙のサイズはA4で本決定され、A4の出力紙への両面印刷が開始される(ステップS170、t5)。すなわち、A4の出力紙を収容しているカセットからA4の出力紙を1枚給紙し始める等の動作が開始される。
図8の(TB)は、1枚目の原稿がA3であり2枚目の原稿がA4である場合(すなわち第2の場合)であって上述の印刷制御処理が実行された場合の、印刷開始タイミングを示すタイミングチャートである。なお、A3の原稿およびA4の原稿は(TA)の場合と同じものであるとする(読み取り順が入れ換えられただけである)。原稿読取処理によって順次原稿が読み取られメモリーに原稿画像が蓄積され、(TA)と(TB)で用いられる原稿は順序が異なるだけであるため、(TA)および(TB)においては、1枚目の原稿の読み取り開始(t0)から2枚目の読み取り終了(t4)までの所要時間は同じである。
(TB)においては、1枚目の原稿の読み取りが開始され(t0)、1枚目の原稿の読み取りが終了する(t2)と、続いて2枚目の原稿の読み取りが開始される。1枚目の原稿画像の解析はt2に遅れて終了する(t3)。t3において1枚目の原稿についての原稿サイズが仮決定される。1枚目のA3の原稿は(TA)の2枚目のA3の原稿と同じものであるため、(TA)の例と同様に1枚目のA3の原稿について原稿サイズはA4で仮決定される(t3)。続いて次の原稿(2枚目の原稿)の解析が開始される(t3)が、2枚目の原稿のサイズがA4であると判明すると(図6のS130、図8のt4)、2枚目の原稿についての出力紙のサイズはA4で仮決定される。そして、1枚目の原稿について仮決定された出力紙のサイズと2枚目の原稿について仮決定された出力紙のサイズとに基づいて1枚目の原稿と2枚目の原稿を両面コピーするための出力紙のサイズはA4で本決定され、A4の出力紙への両面印刷が開始される(ステップS170、t4)。すなわち、A4の出力紙を収容しているカセットからA4の出力紙を1枚給紙し始める等の動作が開始される。
本実施形態の場合、1枚目の解析が終了してから2枚目の解析が行われる構成である。(TB)は1枚目(A3)の解析の終了が2枚目(A4)の読み取り開始後も継続されているため、2枚目(A4)の読み取り開始(t2)を基準とすると2枚目(A4)の解析開始(t3)が、(TA)の1枚目(A4)の読み取り開始(t0)を基準とした1枚目(A4)の解析開始(t01)より遅れる。しかし、原稿がA4であると判明すれば原稿画像の解析が終了していなくても出力紙のサイズをA4で仮決定できることにより、(TB)の場合は、(TA)の場合よりもA4の原稿の解析に割かれる時間が短い。そのため、(TB)の場合の印刷開始(t4)は(TA)の場合の印刷開始(t5)より早い。
(TA)の場合も(TB)の場合も、出力紙の両面に印刷する画像の順序が入れ替わるだけであるので両面印刷の所要時間は同じと見なせる。従って、(TB)の場合は(TA)の場合よりも印刷開始が早い分、両面印刷の終了も早い。t6は(TB)の場合の両面印刷終了を示し、t7は(TA)の場合の両面印刷終了を示している。従って、本実施形態によれば、第1の場合には第2の場合よりも1枚目の原稿の読み取り開始から2枚分の原稿のコピー終了までの所要時間が大きい((t7−t0)>(t6−t0))。本実施形態の場合、第2の場合も第1の場合も、2枚の原稿それぞれについて解析を終了してから出力紙のサイズを本決定する構成と比較すると、利用者は印刷物を早く得ることができる。従って利用者の利便性を向上させることができる。特に、原稿の搬送経路において原稿を読み取るイメージセンサーの上流側に、原稿の先端及び後端を検知する端部センサーを有している場合は、この端部センサーの出力に基づいて原稿のサイズを判断することができる。この場合には、第2の場合において2枚目の読み取りが完了する前に出力紙のサイズをA4であると本決定し、A4の出力紙を収容しているカセットからA4の出力紙を1枚給紙し始める等の動作を開始することができる。これによって、第1の場合よりも特に早く利用者は印刷物を得ることができる。
(4)他の実施形態:
以上の実施形態は本発明を実施するための一例であり、原稿を出力紙にコピーするコピー装置から、原稿の画像と、原稿のサイズ又は実際にコピーした出力紙のサイズとを含むデータを教師データとして収集し、教師データに基づいて、原稿の画像に含まれるマークを原稿またはコピー後の出力紙において利用者が識別可能か否かを判定するためのモデルを機械学習によって生産する限りにおいて、他にも種々の実施形態を採用可能である。例えば、学習サーバー100の機能をコピー装置1が備えていても良い。あるいは、学習済モデル120aを用いた上述の縮小判定は学習サーバー100で行われてもよく、コピー装置1は縮小判定の判定結果を学習サーバー100から取得する構成であってもよい。また、上述の実施形態の一部の構成が省略されてもよいし、処理の順序が変動または省略されてもよい。
原稿読取部は、原稿を読み取ることができればよい。すなわち、原稿を指定された解像度で読み取り、原稿を示す画像を生成してメモリーに蓄積することができればよい。また、ADF原稿トレイにセットされた原稿を順に搬送して読み取る構成であってもよいし、原稿台ガラスに載置された原稿を読み取って利用者に次の原稿載置を促す構成であってもよい。また、混載される原稿は、B4,B5等のB系サイズの原稿、A3,A4等のA系サイズの原稿等を含む種々のサイズを想定してよい。はがきや各種サイズの封筒等が含まれていてもよい。また例えば、A系サイズの原稿とB系サイズの原稿との混載が想定されてもよい。
印刷制御部は、読み取った原稿の画像を出力紙に印刷することができればよい。すなわち、原稿読取部によって読み取られた画像に基づいてコピー装置が備える印刷部での印刷に適した形式の印刷データを生成し、印刷データに基づいて印刷を実行することができればよい。
さらに、印刷制御部は、第1サイズの原稿と第1サイズより大きい第2サイズの原稿とを、サイズが同じ出力紙にコピーする際、1枚目の原稿が第1サイズであり2枚目の原稿が第2サイズである第1の場合に、2枚目の原稿の画像を解析し、解析結果に応じたサイズの出力紙に1枚目および2枚目をコピーし、1枚目の原稿が第2サイズであり2枚目の原稿が第1サイズである第2の場合に、1枚目の原稿の画像を解析し、解析結果に応じたサイズの出力紙に1枚目および2枚目をコピーすることができればよい。
例えば、印刷制御部は、模様が第1サイズに収まらない場合、第2サイズの原稿を第2サイズの出力紙に等倍コピーし、第1サイズの原稿の画像に余白を付加して生成した第2サイズの画像を第2サイズの出力紙に等倍コピーする構成であってもよい。すなわち、図2および図3における(c)や(f)の場合も(d)や(g)の場合と同様に出力紙のサイズを第2サイズに決定し、(d)や(g)の場合と同様に出力紙が第2サイズの場合の印刷態様で印刷を行うようにしてもよい。この場合、第2サイズの原稿は第2サイズの出力紙に等倍コピーされるため、第2サイズの原稿に含まれる模様を欠落させることなくコピーできる。また、第1サイズの原稿は第2サイズに拡大することなく、第2サイズとなるように余白を付加して等倍コピーするため、第1サイズの出力紙にコピーする場合と比較して記録剤の消費量は増加しない。そのため、記録剤のコストを抑制可能である。
なお印刷制御部は、1枚目の原稿と2枚目の原稿はサイズが同じ出力紙にコピーすることができればよく、1枚の出力紙の片面に1枚目(あるいは1頁目)の原稿がコピーされ別の1枚の出力紙の片面に2枚目(あるいは2頁目)の原稿がコピーされる構成が想定されうる。なお、1枚の出力紙の片面に1枚目(あるいは1頁目)の原稿がコピーされ別の1枚の出力紙の片面に2枚目(あるいは2頁目)の原稿がコピーされる現象は、「片面/両面」設定が、「片面→片面」の場合だけでなく、例えば「片面→両面」の場合等にも起きうる。
例えば、様々なサイズが混在している原稿を全て同じサイズの出力紙に印刷する設定(例えば製本モード)が「オン」である場合、原稿を読み取って各原稿について出力紙のサイズを仮決定すること(出力紙サイズ仮決定処理)を全原稿分行ってから、全原稿のそれぞれについて仮決定された出力紙サイズのうち最も大きなサイズを出力紙のサイズとして決定する。
印刷制御部は、マークの大きさをOCRによって取得し、マークの大きさと閾値との比較によって、第2サイズの原稿を第1サイズの出力紙に縮小コピーした場合にマークを利用者が識別可能であるか否かを判定する構成であってもよい。例えば、画像に含まれる文字の識別機能や文字サイズの検知機能を有するOCRに原稿画像を入力し、原稿画像に含まれる文字の最小文字サイズを取得してもよい。さらに第2サイズの原稿を第1サイズの出力紙に縮小する際の縮小率を取得し、当該最小文字サイズの文字を当該縮小率で縮小した場合の縮小後の文字の文字サイズを取得してもよい。そして、縮小後の文字の文字サイズが閾値以上であれば、第2サイズの原稿を第1サイズの出力紙に縮小コピーした場合に文字を利用者が識別可能であると判定してもよい。なお例えば、原稿画像に含まれる全ての文字のうち、最も文字数が多い文字サイズを上述の縮小率で縮小した場合の文字サイズと閾値とを比較する構成であってもよい。マークの大きさは、文字の大きさの他にも線の太さを含んでもよい。
印刷制御部は、解析結果に応じたサイズの出力紙が給紙できない場合には、給紙可能な出力紙のサイズの中から解析結果に応じて選択したサイズの出力紙に印刷を行うようにしても良いが、解析結果に応じたサイズの出力紙が補給されてから印刷を行うか、または、給紙可能な出力紙のサイズの中から解析結果に応じて選択したサイズの出力紙に印刷を行うか、のいずれかを利用者に選択させ、利用者の選択に応じて印刷を行う構成であってもよい。給紙できない場合は、例えば紙詰まりエラー、用紙切れエラー等が発生している場合や、本決定されたサイズの出力紙に対応するカセットがコピー装置に装着されていない場合等を想定してよい。例えば、図6のステップS160やS170において、印刷開始前に、本決定したサイズの出力紙が給紙可能か否かを判定し、給紙可能でなければ、給紙可能な出力紙の中から、本決定したサイズ以上であってそのうち最も小さいサイズの出力紙を選択し、当該サイズの出力紙に印刷を行うことを利用者に提案してもよい。あるいは、本決定したサイズの出力紙の補給を利用者に促しても良い。本決定したサイズの出力紙の補給を促し補給されてから当該サイズの出力紙に印刷を行うか、給紙可能な出力紙のサイズの中からコピー装置が選択したサイズの出力紙に印刷を行うか、を利用者に選択させてもよい。このようにすることで、利用者が選択した方法に応じたサイズの出力紙に原稿をコピーすることができる。従って利用者が意図しないサイズの出力紙に原稿がコピーされる可能性を低減することができる。なお、利用者が選択しないまま所定時間が経過すると、自動で、給紙可能な出力紙の中から、本決定したサイズ以上であってそのうち最も小さいサイズの出力紙を選択し、当該サイズの出力紙に印刷を行うようにしても良い。
印刷制御部は、給紙トレイに対応する紙のサイズの中から出力紙のサイズを選択する構成であってもよい。さらには、印刷制御部は、給紙トレイに対応する紙であって実際に紙がセットされているサイズの中から出力紙のサイズを選択する構成であってもよい。給紙トレイは3以上あってもよく、各給紙トレイに対応する出力紙のサイズは、3種類以上でもよい。また、上記実施形態においては、第2サイズの原稿を第1サイズの出力紙にコピーする場合に、模様を欠落させないようにトリミングすることと、縮小することのいずれか一方を行うが、模様を欠落させないようにトリミングし、さらに、トリミングした領域の大きさと出力紙のサイズとに応じた縮小率でトリミング後の画像を縮小して、出力紙に印刷するようにしてもよい。
原稿をコピーするのに適切な出力紙のサイズを推定するための機械学習モデルは上記実施形態の他にも様々な方法で生産可能である。当該機械学習モデルの生産方法は、原稿を出力紙にコピーするコピー装置から、原稿の画像と、原稿のサイズ又は実際にコピーした出力紙のサイズとを含むデータを教師データとして収集し、教師データに基づいて、原稿の画像に含まれるマークを原稿またはコピー後の出力紙において利用者が識別可能か否かを判定するためのモデルを機械学習によって生産することができればよい。
すなわち、本生産方法においては、原稿に含まれるマークは原稿において識別可能である可能性が高いと推定できる。そして、原稿に含まれるマークは原稿と同サイズの出力紙において識別可能であることを、原稿の画像と原稿のサイズとを含む教師データによって機械学習する。また、本生産方法においては、原稿に含まれるマークは実際にコピーされたコピー後の出力紙において識別可能である可能性が高いと推定できる。そして、原稿に含まれるマークは実際にコピーしたサイズの出力紙上において識別可能であることを、原稿の画像と実際にコピーした出力紙のサイズとを含む教師データによって機械学習する。
このような機械学習によって生成されたモデルは、原稿を予定するサイズの出力紙にコピーしたと仮定すると当該マークを出力紙において利用者が識別可能である可能性が高いか否かの判定に利用することができる。予定するサイズの出力紙に原稿をコピーした場合に利用者がマークを識別できる可能性が高くなければ、予定された出力紙のサイズは適切ではない。従って本生産方法によって生産されたモデルを用いることで、原稿を適切なサイズの出力紙にコピーできる可能性を高めることができる。
図9は、機械学習モデルの例を示している。図9の例のモデルにおいて、入力は、紙のサイズ(α)と、当該サイズの紙に印刷された画像データ(β)である。図9のモデルにおいて、出力は、画像データ(β)に含まれるマークは(α)のサイズの紙に印刷された場合の大きさであれば利用者が識別可または不可を示す値である。このモデルは、利用者が識別可能な文字の大きさであって画像全体(すなわち紙全体)に対する文字の大きさのバランスと、紙のサイズと、の関係を学習するように構成される。
出力値の範囲は0〜1であり、1は識別可、0は識別不可を示す。閾値を予め設定し、出力値が閾値(例えば0.8)以上であれば識別可と推定することができる。モデルに入力する画像データ(β)は、後述するようにコピー装置1でコピーが実施される際に読み取られた原稿の画像である。原稿を示す画像データは、原稿のサイズや読み取り解像度に応じて画素数が異なる。そのため、モデルに入力する前に、前処理として、画像データの画素数が入力画素数(図9におけるH×W×1の個数)となるような処理が行われる。入力画素数は、例えば、コピー装置1において読み取り可能な原稿サイズのうちの予め決められたいずれかのサイズ(例えばA4等)を予め決められた第1解像度で読み取った画像をグレースケールに変換した場合の画素数を想定してよい。
例えばA3の原稿が第1解像度で読み取られた場合、上述の入力画素数となるように縮小されグレースケール変換された画像の各画素の階調値が入力される。また例えばA6の原稿が第1解像度で読み取られた場合、上述の入力画素数となるように拡大されグレースケール変換された画像の各画素の階調値が入力される。画像の拡縮には公知のアルゴリズムが採用されてよいが、より滑らかに拡縮可能なアルゴリズムが望ましい。
図9に示すモデルに入力する紙のサイズ(α)と画像データ(β)は、例えば、コピー装置1が等倍コピー又は縮小コピーをした原稿のサイズと、原稿を示す画像データであってよい。この場合、コピー装置1は、原稿を等倍コピー又は縮小コピーした際の原稿のサイズと、読み取った原稿を示す画像データとを含む教師データを学習サーバー100に出力する。学習サーバー100は、コピー装置1から取得した原稿のサイズと原稿を示す画像データを、原稿においてマークを利用者が識別可能であることを示す教師データとして収集する。
原稿が等倍コピーまたは縮小コピーされた場合、原稿に含まれるマークは少なくとも原稿において利用者にとって識別可能である可能性が高いと推定できる。すなわち、原稿上で既に識別可能であるから同じサイズの出力紙に等倍コピーしている、あるいは縮小コピーしてもマークを識別可能であるなら原稿上のマークの大きさは当然識別可能な大きさである、との推定が可能である。そして、原稿が等倍コピーまたは縮小コピーされた場合の原稿の画像と原稿のサイズとの組み合わせを含む教師データによって、原稿のサイズと同サイズの出力紙に原稿が等倍コピーされた場合に出力紙においてマークを利用者が識別可能であることを機械学習する。
また、図9に示すモデルに入力する紙のサイズ(α)と画像データ(β)は、例えば、コピー装置1が実際に複数部数に縮小コピーした際の出力紙のサイズと、原稿を示す画像データであってもよい。この場合、コピー装置1は、実際に原稿を複数部数に縮小コピーした際の出力紙のサイズと、読み取った原稿を示す画像データとを含む教師データを学習サーバー100に出力する。学習サーバー100は、コピー装置1から取得した出力紙のサイズと原稿を示す画像データを、コピー後の出力紙においてマークを利用者が識別可能であることを示す教師データとして収集する。
マークを含む原稿が原稿より小さいサイズの出力紙に複数部数縮小コピーされた場合、コピー後の出力紙における縮小後のマークは利用者にとって識別可能である可能性が高いと推定できる。すなわち、コピー後の出力紙においてマークを識別可能であるから複数部数コピーしている(識別不可能であるならば、失敗コピーを複数部数行わない)のであろうとの推定が可能である。そして、原稿が原稿より小さいサイズの出力紙に複数部数縮小コピーされた場合の原稿の画像と出力紙のサイズとの組み合わせを含む教師データによって、原稿が出力紙のサイズに縮小された場合に、出力紙上に縮小コピーされた状態のマークを利用者が識別可能であることを機械学習する。
以上のような機械学習によって生産された学習済モデル120aは、原稿を予定するサイズの出力紙にコピーしたと仮定すると当該マークを出力紙において利用者が識別可能である可能性が高いか否かの判定に利用可能である。例えば、コピー装置1において、読み取られたA3原稿をA4に縮小可能(A4の出力紙に縮小コピー可能)であるか否かを判定するために、A3原稿を示す原稿画像データであって上述の入力画素数となるように処理された原稿画像データ(β)と予定する出力紙のサイズであるA4(α)とを学習済モデル120aに入力して得られた出力が閾値以上の場合、読み取られたA3原稿をA4の出力紙に縮小コピーしたとしてもA4の出力紙に縮小コピーされたマークは利用者にとって識別可能であると推定できる。そのため、プロセッサー10は、A3の原稿をA4の出力紙に縮小コピーすると原稿に含まれるマークが縮小後の出力紙上において利用者にとって識別可能であると判定(縮小判定:可)することができる。
また例えば、読み取られたA3原稿を示す原稿画像データであって上述の入力画素数となるように処理された原稿画像データ(β)と予定する出力紙のサイズであるA4(α)を学習済モデル120aに入力して得られた出力が例えば閾値未満の場合、読み取られたA3原稿をA4の出力紙に縮小コピーした場合A4の出力紙に縮小コピーされたマークは利用者にとって識別不可能であると推定できる。そのため、プロセッサー10は、A3の原稿をA4の出力紙に縮小コピーすると原稿に含まれるマークが縮小後の出力紙上において利用者にとって識別不可能であると判定(縮小判定:不可)することができる。
教師データ出力部は、原稿の画像と、原稿のサイズ又は実際にコピーした出力紙のサイズとを含むデータを教師データとして出力し、教師データを用いた機械学習を行わせることができればよい。教師データは、原稿の画像と原稿サイズを含んでいてもよいし、原稿の画像と実際にコピーした出力紙のサイズとを含んでいても良い。原稿の画像と、原稿のサイズと、実際にコピーした出力紙のサイズとを含んでいても良い。また、その他のコピー実行時のコピー装置1における各種設定値や、コピーに関する各種パラメーターや条件が含まれていてもよい。また、出力したデータが出力先の装置において、予め決められた内容の機械学習の教師データとして認識されればよく、どのようなタイミングやどのような方法でデータが出力されてもよい。
学習済モデル取得部は、機械学習によって生産された学習済モデルを取得することができればよい。学習済モデルは、コピー条件毎に生産される場合は、それら複数の学習済モデルを取得することができればよい。
印刷制御部は、原稿の画像を予定するサイズの出力紙にコピーしたと仮定すると、マークを出力紙において利用者は識別可能であるか否かを、学習済モデルを用いてコピー前に判定し、判定結果に基づいてコピーを制御することができればよい。モデルは種々の構成が可能であり、モデルの出力態様に応じて、原稿の画像を予定するサイズの出力紙にコピーしたと仮定すると、マークを出力紙において利用者は識別可能であるか否かを判定することができればよい。
なお、ここまでは原稿を縮小するか縮小しないかを含めて最適な出力紙サイズを選択するということを述べてきたが、縮小判定だけでなく拡大判定に適用してもよい。すなわち、A4の原稿のマークをそのままのサイズでは利用者は識別しにくく、A3に拡大すれば識別可能である、と推定される場合に、A3を出力紙のサイズとして仮決定し、原稿の画像をA3に拡大してA3の出力紙に印刷を行ってもよい。このような推定も利用者のコピー装置の使用状況に基づいた機械学習結果に基づいて行うようにしても良い。原稿を読み取る原稿読取部と、読み取った原稿の画像を解析し、解析結果に応じたサイズの出力紙に印刷する印刷制御部と、を備えたコピー装置としてもよい。
また、以上のような学習は、利用者毎に行われてもよく、学習結果に基づく出力紙のサイズの決定は利用者毎に行われても良い。コピー装置は、利用者を識別するためのユーザー認証機能を備えていてよい。
さらに、本発明のように、原稿を出力紙にコピーするコピー装置から、原稿の画像と、原稿のサイズ又は実際にコピーした出力紙のサイズとを含むデータを教師データとして収集し、教師データに基づいて、原稿の画像に含まれるマークを原稿またはコピー後の出力紙において利用者が識別可能か否かを判定するためのモデルを機械学習によって生産する手法は、プログラムや方法としても適用可能である。また、以上のようなシステム、プログラム、方法は、単独の装置として実現される場合もあれば、複数の装置が備える部品を利用して実現される場合もあり、各種の態様を含むものである。また、一部がソフトウェアであり一部がハードウェアであったりするなど、適宜、変更可能である。さらに、システムを制御するプログラムの記録媒体としても発明は成立する。むろん、そのプログラムの記録媒体は、磁気記録媒体であってもよいし半導体メモリーであってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。