【解決手段】印刷装置100は、印刷用画像内の一部の領域である判定領域が空白であるか否かを判定する制御部101と、判定領域が空白であると判定された場合に印刷用画像の印刷をキャンセルする印刷部105と、を備える。
前記決定部は、さらに、前記第1画素の濃度レベルが前記閾値レベル以上であっても、前記第1画素を含む前記第1画素から連続する予め定められた数の複数の画素が同一の濃度レベルを有する場合に、前記第1画素の位置を前記第1画素ライン内の空白領域の開始位置と決定する、
請求項11〜14のいずれか1項に記載の印刷装置。
前記結合部は、前記複数の画素ラインにおいて決定された複数の空白領域のうち、画素ライン内の画素の並び方向において開始位置及び終了位置が一致する互いに隣接する空白領域を結合する、
請求項11〜17にいずれか1項に記載の印刷装置。
【発明を実施するための形態】
【0039】
(本発明の基礎となった知見)
複数の印刷用画像に共通の情報が複数の印刷用画像に含まれる場合がある。例えば、複数の印刷用画像のヘッダ領域及びフッタ領域に、共通の情報(例えば、作成者、タイトル、著作権表示、ページ番号など)が含まれる場合がある。このような共通の情報のみを含む印刷用画像の印刷が指示された場合、従来技術では、印刷用画像は、白紙ページではないと判断され、印刷されてしまう。
【0040】
しかしながら、複数の印刷用画像に共通の情報以外の情報が印刷用画像に含まれていなければ、当該印刷用画像の印刷が無駄となる場合がある。
【0041】
そこで、印刷の無駄を効果的に減少させることができる印刷装置及び印刷方法について実施の形態に基づいて説明する。
【0042】
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、請求の範囲を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【0043】
(実施の形態1)
まず、実施の形態1について、図面を参照しながら具体的に説明する。
【0044】
[印刷装置の構成]
図1は、実施の形態1に係る印刷装置100の機能構成を示すブロック図である。
図1に示すように、印刷装置100は、制御部101と、入力部102と、表示部103と、読取部104と、印刷部105と、記憶部106と、を備える。以下に、印刷装置100の各構成要素について詳細に説明する。
【0045】
制御部101は、例えば、汎用プロセッサ又は専用の電子回路によって実現される。制御部101は、コントローラとも呼ばれる。制御部101は、印刷用画像に応じて当該印刷用画像の印刷を実行又はキャンセルする。
【0046】
本実施の形態では、制御部101は、印刷用画像内の判定領域が空白であるか否かを判定する。そして、制御部101は、判定結果に基づいて印刷部105を制御する。
【0047】
印刷用画像とは、印刷対象となる文書及び図面などを表す画像である。判定領域とは、印刷用画像内の一部の領域である。つまり、判定領域は、印刷用画像の全領域よりも小さい領域である。
【0048】
また、空白とは、有用な情報が含まれていないことを示す。典型的には、空白は、白画像である。なお、空白は、予め定められた色彩を有する画像であってもよい。
【0049】
ここで、判定領域が空白であるか否かの判定の具体例を以下に説明する。
【0050】
制御部101は、印刷用画像内の判定領域から空白領域を検出する。例えば、制御部101は、白を示す濃度値を有する画素の集合を空白領域として検出する。なお、空白領域の検出は、どのような方法で行われてもよく、特に限定される必要はない。
【0051】
そして、制御部101は、印刷用画像内の判定領域から検出された空白領域の面積を閾値面積と比較することにより、当該判定領域が空白であるか否かを判定する。つまり、制御部101は、判定領域内の空白領域の面積が閾値面積以上である場合に、当該判定領域が空白であると判定する。逆に、制御部101は、判定領域内の空白領域の面積が閾値面積未満である場合に、当該判定領域が空白でないと判定する。
【0052】
入力部102は、例えば入力デバイスによって実現される。入力デバイスは、例えば、印刷装置100の筐体に設けられたプッシュボタンあるいはタッチパネルである。
【0053】
本実施の形態では、入力部102は、印刷用画像内の判定領域及び閾値面積の入力をユーザから受ける。つまり、入力部102は、判定領域及び閾値面積を特定するための情報の入力をユーザから受ける。
【0054】
表示部103は、例えばディスプレイによって実現される。なお、表示部103は、入力部102と一緒に、タッチディスプレイによって実現されてもよい。
【0055】
本実施の形態では、表示部103は、印刷用画像内の判定領域が空白であると判定された場合に印刷用画像を指し示す情報を表示する。印刷用画像を指し示す情報は、例えば、印刷用画像の印刷がキャンセルされた日時、及び、印刷用画像のページ番号のうちの少なくとも一方を含む。
【0056】
読取部104は、例えばイメージセンサ(例えば、密着イメージセンサ(CIS:Contact Image Sensor)、CCD(Charge Coupled Devices)イメージセンサ)によって実現される。読取部104は、文書あるいは図面などを表すシート状の媒体から印刷用画像を読み取る。
【0057】
印刷部105は、例えばインクジェットプリントあるいはレーザプリントのための印刷デバイスによって実現される。印刷部105は、シート状の媒体に印刷用画像を印刷する。
【0058】
本実施の形態では、印刷部105は、印刷用画像内の判定領域が空白でないと判定された場合に、制御部101からの指示に基づいて印刷用画像の印刷を実行する。逆に、印刷部105は、印刷用画像内の判定領域が空白であると判定された場合に、制御部101からの指示に基づいて印刷用画像の印刷をキャンセルする。
【0059】
記憶部106は、例えば半導体メモリあるいはハードディスクドライブによって実現される。記憶部106は、入力部102が受けた判定領域及び閾値面積を示す判定領域情報及び閾値面積情報を記憶する。判定領域情報は、例えば、矩形の判定領域を囲む4本の境界線の位置を示す値を含む。また、閾値面積情報は、例えば、閾値面積を有する矩形の幅及び高さを示す値を含む。
【0060】
[印刷装置の処理]
次に、以上のように構成された印刷装置100の処理について説明する。印刷装置100の処理は、入力処理と印刷処理とを含む。以下では、入力処理及び印刷処理をこの順に説明する。
【0061】
[入力処理]
まず、
図2を参照して、入力処理の流れについて説明する。
図2は、実施の形態1に係る印刷装置100の入力処理を示すフローチャートである。
【0062】
入力部102は、ユーザから判定領域の入力を受ける(S101)。そして、制御部101は、判定領域を示す判定領域情報を記憶部106に格納する(S102)。つまり、ユーザからの入力に基づいて判定領域が設定される。この判定領域の入力の詳細については、
図4を参照して後述する。
【0063】
さらに、入力部102は、ユーザから閾値面積の入力を受ける(S103)。そして、制御部101は、閾値面積を示す閾値面積情報を記憶部106に格納する(S104)。つまり、ユーザからの入力に基づいて閾値面積が設定される。この閾値面積の入力の詳細については、
図5を参照して後述する。
【0064】
ここで、
図3〜
図5を参照して、判定領域及び閾値面積の入力の詳細について説明する。
図3〜
図5は、実施の形態1における入力処理で用いられるGUIの一例を示す図である。
図3〜
図5のGUIは、表示部103によって表示される。なお、
図3〜
図5において、ハッチングされた領域は、画面内でフォーカスされている領域を表す。
【0065】
図3の(a)は、複数のパラメータの中から、これから設定するパラメータを選択するためのGUIを表す。パラメータとは、印刷装置100に所望の動作を行わすために印刷装置100に与えられる値である。
【0066】
図3の(a)において、ユーザは、例えば、印刷スキップのパラメータの設定を選択するために、「印刷スキップ」がフォーカスされた状態でOKボタンを押下する。これにより、画面は、
図3の(a)から
図3の(b)に遷移する。
【0067】
図3の(b)は、印刷スキップの有効及び無効を示すパラメータを設定するためのGUIを表す。印刷スキップが有効(ON)とは、印刷用画像に応じて当該印刷用画像の印刷をキャンセルすることを許可することを意味する。逆に、印刷スキップが無効(OFF)とは、印刷用画像に応じて当該印刷用画像の印刷をキャンセルすることを禁止することを意味する。
【0068】
図3の(b)において、ユーザは、例えば、印刷スキップを有効にするためにOKボタンを押下する。これにより、印刷スキップの有効及び無効を示すパラメータに有効を示す値が設定され、画面が
図3の(b)から
図3の(c)に遷移する。
【0069】
図3の(c)は、記憶部106に記憶されている複数セットの判定領域情報及び閾値面積情報のいずれかのセットを選択するためのGUIを表す。ここでは、4セットの判定領域情報及び閾値面積情報(具体的には、設定1〜設定4)が選択肢として表示されている。
【0070】
図3の(c)において、ユーザは、例えば、「設定1」がフォーカスされた状態でOKボタンを押下することにより設定1が選択される。画面は、
図3の(c)から
図4の(a)及び
図5の(a)に遷移する。
【0071】
図4の(a)及び
図5の(a)は、判定領域及び閾値面積のパラメータの中から、これから設定するパラメータを選択するためのGUIを表す。なお、
図4の(a)及び
図5の(a)は、フォーカスされた領域が異なる同一の画面である。
【0072】
ここで、まず、判定領域のパラメータを設定する場合について
図4を参照して説明する。
【0073】
図4の(a)において、ユーザは、例えば、判定領域のパラメータの設定を選択するために、「判定領域設定」がフォーカスされた状態でOKボタンを押下する。これにより、画面は、
図4の(a)から
図4の(b)に遷移する。
【0074】
図4の(b)は、判定領域を示すパラメータを表示及び選択するためのGUIを表す。ここでは、
図3の(c)において選択された設定1に対応する判定領域情報に含まれる4つのパラメータの値が表示されている。
【0075】
この4つのパラメータは、矩形の判定領域を囲む4つの境界線と印刷用画像の対応する端縁との間の距離を示す。例えば、
図4の(b)では、判定領域の上側境界線と印刷用画像の上側端縁との間の距離が20mmと表示されている。
【0076】
図4の(b)において、ユーザは、例えば、判定領域の上側境界線の位置を示すパラメータを更新するために、「上 20mm」がフォーカスされた状態でOKボタンを押下する。これにより、画面は、
図4の(b)から
図4の(c)に遷移する。
【0077】
図4の(c)及び(d)は、判定領域の上側境界線の位置を示すパラメータに値を設定するためのGUIを表す。ここでは、判定領域の上側境界線の位置を示すパラメータの値がUPボタン及びDOWNボタンによって変更される。
【0078】
図4の(c)において、ユーザは、例えば、UPボタンを複数回押下することによって、判定領域の上側境界線の位置を示すパラメータの値を20mmから30mmに変更する。これにより、画面は、
図4の(c)から
図4の(d)に変化する。
【0079】
図4の(d)において、ユーザは、例えば、OKボタンを押下することによって、上側境界線の位置を示すパラメータの値を確定する。これにより、上側境界線の位置を示すパラメータの値が30mmに更新される。つまり、設定1に対応する判定領域情報が更新される。画面は、
図4の(d)から
図4の(e)に遷移する。
【0080】
図4の(e)は、
図4の(b)と同様に、判定領域の境界線を示すパラメータを表示及び選択するためのGUIを表す。
図4の(e)では、上側境界線の位置を示すパラメータの値が20mmから30mmに更新されていることがわかる。なお、ここでは詳細な記載を省略するが、判定領域の下側境界線、左側境界線及び右側境界線の位置を示すパラメータの値についても、上側境界線の位置を示すパラメータと同様に設定することができる。
【0081】
次に、閾値面積のパラメータを設定する場合について
図5を参照して説明する。
【0082】
図5の(a)において、ユーザは、例えば、閾値面積のパラメータの設定を選択するために、「閾値面積設定」がフォーカスされた状態でOKボタンを押下する。これにより、画面は、
図5の(a)から
図5の(b)に遷移する。
【0083】
図5の(b)は、閾値面積を示すパラメータを表示及び選択するためのGUIを表す。ここでは、
図3の(c)において選択された設定1に対応する閾値面積情報に含まれる2つのパラメータの値が表示されている。
【0084】
この2つのパラメータは、閾値面積を有する矩形の幅及び高さを示す。例えば、
図5の(b)では、閾値面積を有する矩形の幅及び高さが200mm及び150mmと表示されている。
【0085】
図5の(b)において、ユーザは、例えば、幅を示すパラメータを更新するために、「幅 200mm」がフォーカスされた状態でOKボタンを押下する。これにより、画面は、
図5の(b)から
図5の(c)に遷移する。
【0086】
図5の(c)及び(d)は、閾値面積を有する矩形の幅を示すパラメータに値を設定するためのGUIを表す。ここでは、幅を示すパラメータの値がUPボタン及びDOWNボタンによって変更される。
【0087】
図5の(c)において、ユーザは、例えば、UPボタンを複数回押下することによって、幅を示すパラメータの値を200mmから240mmに更新する。これにより、画面は、
図5の(c)から
図5の(d)に変化する。
【0088】
図5の(d)において、ユーザは、例えば、OKボタンを押下することによって、幅を示すパラメータの値を確定する。これにより、幅を示すパラメータに240mmが設定される。つまり、設定1に対応する閾値面積情報において、幅を示すパラメータの値が更新される。画面は、
図5の(d)から
図5の(e)に遷移する。
【0089】
図5の(e)は、
図5の(b)と同様に、閾値面積を示すパラメータを表示及び選択するためのGUIを表す。
図5の(e)では、幅を示すパラメータの値が200mmから240mmに更新されていることがわかる。なお、ここでは詳細な記載を省略するが、高さを示すパラメータの値についても、幅を示すパラメータと同様に更新することができる。
【0090】
図6は、実施の形態1において入力処理で特定された判定領域及び閾値面積の一例を示す図である。ここでは、
図6は、
図3〜
図5によって設定された判定領域及び閾値面積のパラメータを表す。
【0091】
図6において、4本の破線は、判定領域を表す。具体的には、4本の破線は、それぞれ、
図4の(e)に示すパラメータの値によって特定される判定領域の境界線である。この4本の破線に囲まれた矩形領域が判定領域である。
【0092】
また、ハッチングされた領域は、閾値面積を表す。具体的には、ハッチングされた領域は、
図5の(e)に示すパラメータの値によって特定される閾値面積を有する矩形領域である。ここでは、ハッチングされた領域の面積が閾値面積である。
【0093】
[印刷処理]
次に、
図7〜
図10を参照して、印刷処理について説明する。ここでは、文字及び図形などが記載されたシート状の媒体(例えば文書、図面、写真など)のコピーを作成する指示を印刷装置100が受け付けた場合について説明する。
【0094】
図7は、実施の形態1に係る印刷装置100の印刷処理を示すフローチャートである。
図8及び
図9は、実施の形態1における印刷用画像の一例を示す図である。
図10は、実施の形態1における印刷用画像を指し示す情報の提示例を示す図である。
【0095】
図7に示すように、まず、読取部104は、画像の読み取りを実行する(S111)。つまり、読取部104は、文字及び図形などが記載されたシート状の媒体の表面を光学的に読み取ることにより、印刷用画像を生成する。
【0096】
制御部101は、記憶部106から判定領域情報及び閾値面積情報を読み出す(S112)。例えば、制御部101は、上側境界線、下側境界線、左側境界線及び右側境界線を示すパラメータの値(30mm、20mm、20mm、20mm)と、閾値面積を有する矩形の幅及び高さを示すパラメータの値(240mm、150mm)と、を記憶部106から読み出す。
【0097】
制御部101は、ステップS101で得られた印刷用画像の判定領域内において空白領域を検出する(S113)。例えば、制御部101は、判定領域に含まれる複数の画素の中から所定閾値未満の濃度値を有する画素を検出する。
【0098】
制御部101は、判定領域内の空白領域の面積が閾値面積以上であるか否かを判定する(S114)。つまり、制御部101は、判定領域が空白であるか否かを判定する。言い換えると、制御部101は、判定領域に有用な情報が含まれているか否かを判定する。
【0099】
例えば、
図8に示す印刷用画像では、4本の破線で囲まれた判定領域内の空白領域の面積が閾値面積以上であると判定される。また例えば、
図9に示す印刷用画像では、破線で囲まれた判定領域内の空白領域の面積が閾値面積未満であると判定される。
【0100】
ここで、空白領域の面積が閾値面積以上である場合(S114のYes)、表示部103は、印刷用画像を指し示す情報を提示する(S115)。つまり、判定領域が空白であると判定された場合、印刷用画像の印刷(つまりコピーの作成)はキャンセルされ、表示部103は、印刷用画像を指し示す情報をユーザに提示する。例えば、表示部103は、
図10に示すように、印刷をキャンセルした日時と、キャンセルされた印刷用画像のページ番号と、キャンセルされた印刷用画像を含む複数の印刷用画像の総ページ数とを表示する。
【0101】
一方、空白領域の面積が閾値面積未満である場合(S114のNo)、印刷部105は、印刷用画像の印刷を実行する(S116)。
【0102】
このように、印刷処理が行われることによって、
図8に示す印刷用画像の印刷がキャンセルされ、
図9に示す印刷用画像の印刷が実行される。
【0103】
[効果]
以上のように、本実施の形態によれば、印刷用画像内の一部の領域(判定領域)が空白であるか否かの判定結果に応じて、印刷用画像の印刷をキャンセルすることができる。したがって、印刷用画像の判定領域外にのみに情報が含まれる場合、当該印刷用画像の印刷をキャンセルすることができる。例えば、印刷用画像が、定型フォーマットを用いて作成された設計図書である場合、予め定められた領域に設計図書に共通の情報が含まれることがある。このような場合、共通の情報が含まれる予め定められた領域と異なる領域が判定領域として利用されることにより、共通の情報のみを含む印刷用画像の印刷をキャンセルすることができ、印刷の無駄を効果的に減少させることができる。
【0104】
さらに、本実施の形態によれば、判定領域から検出された空白領域の面積を閾値面積と比較することにより、判定領域が空白であるか否かを判定することができる。したがって、判定領域内に誤った濃度値を有するいくつかの画素(つまり、エラー画素)が含まれる場合などに、そのエラー画素のみによって印刷が実行されることを防ぐことができる。つまり、エラー耐性を向上させることができ、印刷の無駄をより効果的に減少させることができる。
【0105】
さらに、本実施の形態によれば、判定領域が空白であると判定された場合に印刷用画像を指し示す情報を表示することができる。つまり、印刷用画像の印刷がキャンセルされた場合に、当該印刷用画像がキャンセルされたことをユーザに提示することができる。したがって、印刷されるべき印刷用画像の印刷がキャンセルされた場合に、ユーザは、表示された情報に従って、印刷用画像の再印刷あるいは判定領域の再入力などを行うことができる。
【0106】
さらに、本実施の形態によれば、印刷用画像を指し示す情報は、印刷用画像の印刷がキャンセルされた日時、及び、印刷用画像のページ番号のうちの少なくとも一方を含むことができる。したがって、ユーザは、印刷がキャンセルされた印刷用画像を容易に認識することができる。
【0107】
(実施の形態1の変形例)
次に、実施の形態1の変形例について説明する。上記実施の形態1では、印刷装置で入力処理及び印刷処理が行われていたが、本変形例では、入力処理及び印刷処理の一部が情報端末で行われる場合について説明する。以下に、本変形例に係る印刷装置及び情報端末について図面を参照しながら説明する。なお、本変形例では、説明が冗長となるのを避けるため、実施の形態1と実質的に同一の構成に対する図示及び説明を適宜省略する。
【0108】
図11は、実施の形態1の変形例に係る印刷装置100A及び情報端末100Bの機能構成を示すブロック図である。印刷装置100Aは、印刷部105と、通信部107Aとを備える。情報端末100Bは、例えば、スマートフォン、タブレットコンピュータ、パーソナルコンピュータなどであり、制御部101と、入力部102と、表示部103と、通信部107Bとを備える。
【0109】
印刷装置100Aの通信部107Aは、例えば有線通信又は無線通信のための通信アダプタによって実現される。通信部107Aは、情報端末100Bから印刷用画像を受信する。
【0110】
情報端末100Bの通信部107Bは、例えば有線通信又は無線通信のための通信アダプタによって実現される。通信部107Bは、1以上の印刷用画像のうち、情報端末100Bの制御部101によって印刷用画像内の判定領域が空白でないと判定された印刷用画像を、印刷装置100Aに送信する。逆に、通信部107Bは、1以上の印刷用画像のうち、情報端末100Bの制御部101によって印刷用画像内の判定領域が空白であると判定された印刷用画像を印刷装置100Aに送信しない。これにより、印刷用画像内の判定領域が空白であると判定された印刷用画像の印刷がキャンセルされる。
【0111】
図12は、実施の形態1の変形例における入力処理で用いられるGUIの一例を示す図である。このGUIは、情報端末100Bの表示部103によって表示されるウィンドウである。
【0112】
ウィンドウの左側には、印刷用画像の印刷領域内に判定領域及び閾値面積が視覚的に示されている。判定領域は、4本の境界線(破線)によって表され、閾値面積は、ハッチングされた矩形領域によって表されている。
【0113】
例えば、ユーザは、境界線をタッチして移動させることにより、境界線の位置を設定することができる。つまり、ユーザは、タッチ操作により、境界線の位置を示すパラメータの値を設定することができる。なお、タッチ操作の代わりに、マウス操作によって境界線の位置を示すパラメータの値が設定されてもよい。なお、閾値面積も境界線と同様にタッチ操作又はマウス操作によって設定することができる。
【0114】
ウィンドウの右側には、各種パラメータの値を表示及び設定するための各種コンポーネントが配置されている。
【0115】
ボタン1201は、印刷スキップの有効及び無効を示すパラメータの値を表示及び設定するためのコンポーネントである。例えば、ユーザは、ボタン1201をタッチ又はクリックすることにより、印刷スキップの有効及び無効を切り替える。
【0116】
テキストボックス1202は、判定領域の4本の境界線の位置を表示及び設定するためのコンポーネントである。テキストボックス1203は、閾値面積を有する矩形領域の幅及び高さを表示及び設定するためのコンポーネントである。例えば、ユーザは、テキストボックスの右側に設けられたUPボタン又はDOWNボタンをタッチ又はクリックすることにより、テキストボックス内の値を設定することができる。
【0117】
なお、ウィンドウの左側に表示された境界線及びハッチングされた矩形領域と、ウィンドウの右側に表示された各種コンポーネントとは連動している。例えば、境界線がタッチ操作により移動された場合、テキストボックス1202の値も更新される。
【0118】
以上のように、本変形例によれば、情報端末100Bから印刷装置100Aに印刷用画像が送信される場合にも、実施の形態1と同様に印刷用画像の印刷をキャンセルすることができ、印刷の無駄を効果的に減少させることができる。
【0119】
(実施の形態2)
次に、実施の形態2について説明する。本実施の形態では、判定領域及び閾値面積を印刷用画像とともに表示して、表示された判定領域及び閾値面積を修正する点が上記実施の形態1と異なる。以下に、本実施の形態に係る印刷装置について図面を参照しながら説明する。なお、本実施の形態では、説明が冗長となるのを避けるため、実施の形態1と実質的に同一の構成に対する図示及び説明を適宜省略する。
【0120】
[印刷装置の構成]
図13は、実施の形態2に係る印刷装置200の機能構成を示すブロック図である。
図13に示すように、印刷装置200は、制御部201と、入力部202と、表示部203と、読取部104と、印刷部105と、記憶部106と、を備える。
【0121】
制御部201は、実施の形態1の制御部101と同様に、印刷用画像内の判定領域が空白であるか否かを判定する。さらに、制御部201は、入力部202が受けたユーザからの入力に基づいて、表示部203によって表示された判定領域及び閾値面積を修正する。
【0122】
入力部202は、実施の形態1の入力部102と同様に、印刷用画像内の判定領域及び閾値面積の入力をユーザから受ける。さらに、本実施の形態では、入力部202は、表示部203によって表示された判定領域及び閾値面積に対する修正の入力をユーザから受ける。
【0123】
表示部203は、判定領域及び閾値面積を印刷用画像とともに表示する。例えば、表示部203は、印刷用画像上に判定領域及び閾値面積を表すマークあるいは図形を表示する。また、表示部203は、実施の形態1の表示部103と同様に、印刷用画像内の判定領域が空白であると判定された場合に印刷用画像を指し示す情報を表示する。
【0124】
[印刷装置の処理]
次に、以上のように構成された印刷装置200の処理について説明する。入力処理については実施の形態1と同様であるので、
図14〜
図17を参照して、印刷処理について説明する。
【0125】
図14は、実施の形態2に係る印刷装置200の印刷処理を示すフローチャートである。
図15〜
図17は、実施の形態2において判定領域及び閾値面積の修正に用いられるGUIの一例を示す図である。
【0126】
図14に示すように、実施の形態1と同様に、画像の読み取り(S111)、並びに、判定領域情報及び閾値面積情報の読み出し(S112)が行われる。
【0127】
表示部203は、ステップS112において読み出された判定領域情報及び閾値面積情報が示す判定領域及び閾値面積を、ステップS111において生成された印刷用画像とともに表示する(S201)。例えば、表示部203は、
図15に示すように、印刷用画像1501上に、判定領域の境界線1502a〜1502dと、閾値面積を有する矩形1503とを表示する。
【0128】
入力部202は、表示された判定領域に対する修正の入力をユーザから受け、制御部201は、当該入力に基づいて判定領域を修正する。(S202)。例えば、入力部202は、
図16に示すように、カーソル1504を用いて上側の境界線1502aを下方に移動させる入力をユーザから受ける。その結果、判定領域の境界線の位置を示すテキストボックス1202の値が更新される。なお、テキストボックス1202の値が直接入力されてもよい。
【0129】
入力部202は、表示された閾値面積に対する修正の入力をユーザから受け、制御部201は、当該入力に基づいて閾値面積を修正する(S203)。例えば、入力部202は、
図17に示すように、カーソル1504を用いて閾値面積を有する矩形1503の右下の頂点を右下方に移動させる入力をユーザから受ける。その結果、閾値面積を有する矩形の幅及び高さを示すテキストボックス1203の値が更新される。なお、テキストボックス1203の値が直接入力されてもよい。
【0130】
その後、実施の形態1と同様に、ステップS113〜ステップS116が実行される。
【0131】
[効果]
以上のように、本実施の形態によれば、印刷用画像とともに表示された判定領域を表示することができる。したがって、ユーザは、印刷用画像及び判定領域を見ることができ、印刷用画像に適した判定領域の修正が可能となり、印刷の無駄をより効果的に減少させることができる。
【0132】
さらに、本実施の形態によれば、印刷用画像とともに閾値面積を表示することができる。したがって、ユーザは、印刷用画像及び閾値面積を見ることができ、印刷用画像に適した閾値面積の修正が可能となり、印刷の無駄をより効果的に減少させることができる。
【0133】
(実施の形態2の変形例)
次に、実施の形態2の変形例について説明する。本変形例では、複数の判定領域候補及び複数の閾値面積候補の中から判定領域及び閾値面積が選択され、選択された判定領域及び閾値面積が修正される。なお、本変形例では、説明が冗長となるのを避けるため、実施の形態2と実質的に同一の構成に対する図示及び説明を適宜省略する。
【0134】
図18は、実施の形態2の変形例において判定領域及び閾値面積の修正に用いられるGUIの一例を示す図である。ここでは、複数の判定領域候補及び複数の閾値面積候補が印刷用画像とともに表示される。
【0135】
図18に示すGUIでは、
図15〜
図17に示す実施の形態2におけるGUIに対して、ドロップダウンリスト1801及びボタン1802〜1804が追加されている。
【0136】
ドロップダウンリスト1801は、複数セットの判定領域候補及び閾値面積候補の中から1セットの判定領域及び閾値面積を選択するためのコンポーネントである。つまり、入力部202は、表示された複数の判定領域候補及び複数の閾値面積候補の中から判定領域及び閾値面積を選択する入力を、ドロップダウンリスト1801を介して受ける。
【0137】
ドロップダウンリスト1801の初期値(デフォルト値)は、例えば、予め定められた設定(例えば設定1)である。また例えば、ドロップダウンリスト1801の初期値は、選択頻度が高い設定であってもよい。この場合、複数の判定領域候補のうち選択頻度が高い判定領域候補が優先的に表示される。
【0138】
ユーザは、例えば、ドロップダウンリスト1801をタッチ又はクリックして表示されるドロップダウンリストの中から「設定2」を選択する。すると、
図18に示すように、選択された設定2に対応する判定領域情報及び閾値面積情報が示す判定領域(境界線1502a〜1502d)及び閾値面積(1503)が印刷用画像1501とともに表示される。
【0139】
ユーザは、ここで表示された判定領域(境界線1502a〜1502d)及び閾値面積(1503)に対して実施の形態2と同様に修正の入力をすることができる。当該入力に基づいて判定領域情報及び閾値面積情報を修正する場合、ユーザは、ボタン1802をタッチ又はクリックする。また、ユーザは、ドロップダウンリスト1801を用いて他の設定を選択しなおすこともできる。
【0140】
表示されている判定領域及び閾値面積を用いて印刷処理を進める場合、ユーザは、ボタン1803をタッチ又はクリックする。また、表示されている判定領域及び閾値面積をキャンセルする場合、ユーザは、ボタン1804をタッチ又はクリックする。
【0141】
以上のように、本変形例によれば、複数の判定領域候補の中から判定領域を選択することができる。したがって、ユーザは、複数の判定領域候補の中から判定領域を容易に選択することができる。
【0142】
さらに、本変形例によれば、複数の判定領域候補を印刷用画像とともに表示することができる。したがって、ユーザは、印刷用画像及び複数の判定領域候補を見ることができ、印刷用画像に適した判定領域の選択が可能となり、印刷の無駄をより効果的に減少させることができる。
【0143】
さらに、本変形例によれば、複数の判定領域候補のうち選択頻度が高い判定領域候補を優先的に表示することができる。したがって、ユーザは、判定領域の選択を効率的に行うことができる。
【0144】
(実施の形態3)
次に、実施の形態3について説明する。本実施の形態では、複数の印刷用画像から複数の空白領域が検出され、検出された複数の空白領域の中から判定領域が選択される点が上記実施の形態1及び2と異なる。以下に、本実施の形態に係る印刷装置について図面を参照しながら説明する。なお、本実施の形態では、説明が冗長となるのを避けるため、実施の形態1及び2と実質的に同一の構成に対する図示及び説明を適宜省略する。
【0145】
[印刷装置の構成]
図19は、実施の形態3に係る印刷装置300の機能構成を示すブロック図である。
図19に示すように、印刷装置300は、制御部301と、入力部302と、表示部303と、読取部104と、印刷部105と、記憶部106と、を備える。
【0146】
制御部301は、複数の印刷用画像から複数の空白領域を検出する。例えば、制御部301は、複数の印刷用画像の各々において、白を示す濃度値を有する隣接する画素からなる領域であって予め定められたサイズより大きい領域を空白領域として検出する。なお、空白領域の検出は、どのような方法で行われてもよく、特に限定される必要はない。
【0147】
また、制御部301は、実施の形態1の制御部101と同様に、印刷用画像内の判定領域が空白であるか否かを判定する。
【0148】
表示部303は、検出された複数の空白領域を表示する。具体的には、表示部303は、印刷用画像とともに、当該印刷用画像から検出された空白領域を表示する。また、表示部303は、実施の形態1の表示部103と同様に、印刷用画像内の判定領域が空白であると判定された場合に印刷用画像を指し示す情報を表示する。
【0149】
入力部302は、複数の空白領域の中から判定領域を選択する入力をユーザから受ける。
【0150】
[印刷装置の処理]
次に、以上のように構成された印刷装置300の処理について説明する。
図20は、実施の形態3に係る印刷装置300の印刷処理を示すフローチャートである。
図21は、実施の形態3において検出された空白領域の例を示す図である。
図22は、実施の形態3において判定領域の選択に用いられるGUIの一例を示す図である。
【0151】
図20に示すように、まず、読取部104は、画像の読み取りを実行する(S111)。ここでは、複数の印刷用画像が生成される。
【0152】
制御部301は、複数の印刷用画像から空白領域を検出する(S302)。例えば、制御部301は、
図21の(a)に示すページ番号が1の印刷用画像から空白領域を検出しない。また例えば、制御部301は、
図21の(b)に示すページ番号が2の印刷用画像から空白領域A及びBを検出する。また例えば、制御部301は、
図21の(c)に示すページ番号が3の印刷用画像から空白領域Cを検出する。
【0153】
表示部303は、検出された複数の空白領域を表示する(S303)。例えば
図22に示すように、表示部303は、選択されたページ番号が3の印刷用画像2201とともに、当該印刷用画像2201から検出された空白領域C(ハッチングされた領域)を表示する。
図22のGUIの詳細については後述する。
【0154】
入力部302は、複数の空白領域の中から判定領域を選択する入力をユーザから受け、制御部301は、当該入力に基づいて複数の空白領域の中から判定領域を選択する(S304)。例えば、ユーザによって空白領域Cが選択される。
【0155】
続いて、複数の印刷用画像に対するループ処理が実行される(S305、S309)。つまり、複数の印刷用画像が順次選択され、選択されている当該印刷用画像に対して以下の処理が実行される。
【0156】
まず、制御部301は、当該印刷用画像内の判定領域が空白領域であるか否かを判定する(S306)。例えば、制御部301は、ステップS304において選択された判定領域と、ステップS302において当該印刷用画像から検出された空白領域とが一致するか否かを判定する。例えば空白領域Cが判定領域として選択されている場合、判定領域(空白領域C)と、ページ番号が2の印刷用画像から検出された空白領域A及びBとが一致しないので、ページ番号が2の印刷用画像内の判定領域が空白領域でないと判定される。一方、制御部301は、判定領域(空白領域C)と、ページ番号が3の印刷用画像から検出された空白領域Cとが一致するので、ページ番号が3の印刷用画像内の判定領域が空白領域であると判定される。
【0157】
ここで、判定領域が空白領域であると判定された場合(S306のYes)、制御部301は、当該印刷用画像を指し示す情報を保持する(S307)。一方、判定領域が空白領域でないと判定された場合(S306のNo)、制御部301は、印刷部105に、当該印刷用画像を印刷させる(S308)。
【0158】
ステップS305〜ステップS309のループ処理が終了すれば、表示部303は、ステップS307において保持された印刷用画像を指し示す情報を表示する(S310)。つまり、表示部303は、判定領域が空白領域であると判定された印刷用画像を指し示す情報を表示する。例えば、表示部303は、実施の形態1と同様に、
図10に示す情報を表示する。
【0159】
次に、
図22に示すGUIの詳細について説明する。
【0160】
GUIには、テキストボックス2202に入力されたページ番号の印刷用画像2201と、当該印刷用画像2201から検出された空白領域とが表示される。テキストボックス2202内のページ番号は、テキストボックス2202の左側又は右側がタッチ又はクリックされることにより減少又は増加する。
図22では、ページ番号として3(「3ページ」)がテキストボックス2202に入力されており、ページ番号が3の印刷用画像2201と空白領域Cとが表示されている。
【0161】
ドロップダウンリスト2203は、判定領域を選択するためのコンポーネントである。ユーザは、ドロップダウンリスト2203をタッチ又はクリックして表示されるドロップダウンリストの中から所望の空白領域を判定領域として選択することができる。
【0162】
フレーム2204は、判定領域の位置を調整するためのコンポーネント群を含む。ユーザは、フレーム2204内のコンポーネント群を用いてドロップダウンリスト2203で選択された空白領域を移動させることができる。
【0163】
ドロップダウンリスト2205は、GUIにおいて選択及び調整された判定領域を保存するための判定領域情報を選択するためのコンポーネントである。ユーザは、ドロップダウンリスト2205をタッチ又はクリックして表示されるドロップダウンリストの中から所望の判定領域情報を選択することができる。
【0164】
ボタン2206は、ドロップダウンリスト2205で選択された判定領域情報にGUIにおいて選択及び調整された判定領域の保存を実行するためのコンポーネントである。
【0165】
ボタン2207は、選択及び調整された判定領域を用いて複数の印刷用画像を印刷することを指示するためのコンポーネントである。
【0166】
[効果]
以上のように、本実施の形態によれば、複数の印刷用画像から検出された複数の空白領域の中から判定領域を選択することができる。したがって、複数の印刷用画像に印刷をキャンセルすべき印刷用画像が含まれている場合、当該印刷用画像に適した判定領域を選択できる。さらに、このように選択された判定領域を他の印刷用画像に適用することで、印刷の無駄をより効果的に減少させることができる。
【0167】
(実施の形態4)
次に、実施の形態4について説明する。本実施の形態では、空白領域の情報を出力するための画像処理装置について説明する。ここで出力される空白領域の情報は、実施の形態1〜3における判定領域の空白判定に用いることができる。
【0168】
[画像処理装置の構成]
図23は、実施の形態4及び5に係る画像処理装置10の機能構成を示すブロック図である。
図23では、括弧が付された符号は、実施の形態5における符号を表す。
【0169】
本実施の形態に係る画像処理装置10は、画像を取得し、取得した画像に含まれる空白領域の情報を出力する。画像処理装置10は、例えば、汎用プロセッサ及びメモリによって実現されてもよいし、画像処理専用の電子回路によって実現されてもよい。画像処理装置10は、決定部11と、結合部12と、出力部13とを備える。
【0170】
決定部11は、画像に含まれる複数の画素ラインの各々について、当該画素ラインに含まれる各画素の濃度レベルに基づいて当該画素ライン内の空白領域を決定する。例えば、決定部11は、画素ライン内の画素の並びで2番目の画素から10番目の画素までの領域を空白領域と決定する。
【0171】
画素ラインとは、一方向に一列に並ぶ複数の画素を意味する。画素の並び方向は、特に限定される必要はなく、例えば、水平方向、垂直方向及び斜め方向である。
【0172】
空白領域とは、白色を有する領域である。空白領域には、予め定められた白に近い色を有する領域が含まれてもよい。つまり、空白領域とは、予め定められた濃度レベル未満の濃度レベルを有する画素の領域である。
【0173】
濃度レベルとは、色(黒を含む)の濃さを示す。ここでは、濃度レベルが高いほど、色が濃いことを示す。なお、濃度レベルは、輝度によって表わされてもよい。この場合、輝度が高いほど、濃度レベルは低くなる。
【0174】
決定部11は、第1画素、第2画素、及び、第2画素に隣接する第3画素をこの順で含む第1画素ライン内の空白領域を、以下のように決定する。
【0175】
まず、決定部11は、第1画素の濃度レベルが閾値レベル未満である場合に、第1画素の位置を第1画素ライン内の空白領域の開始位置と決定する。続いて、決定部11は、第2画素の濃度レベルが所定範囲に含まれ、かつ、第3画素の濃度レベルが当該所定範囲に含まれない場合に、第2画素の位置を第1画素ライン内の空白領域の終了位置と決定する。
【0176】
閾値レベルは、空白領域の開始位置の画素に適する濃度レベルの上限を示す。閾値レベルは、経験的あるいは実験的に予め定められればよい。
【0177】
所定範囲は、空白領域に含まれる画素に適する濃度レベルの範囲を表す。言い換えると、空白領域に含まれる画素に許される濃度レベルの変化量を表す。本実施の形態では、所定範囲は、第1画素の濃度レベルから予め定められた濃度レベル以内の範囲である。例えば、第1画素の濃度レベルが「3」であり、予め定められた濃度レベルが「2」である場合、所定範囲は、「1(=3−2)」から「5(=3+2)」までの範囲である。
【0178】
空白領域の開始位置及び終了位置は、画素ライン内の画素の並び方向における空白領域の両端の画素の位置である。言い換えると、空白領域の開始位置及び終了位置は、空白領域内の画素の処理順において最初の画素及び最後の画素の位置である。例えば、画素ライン内の画素が左から右に処理される場合、空白領域の開始位置は空白領域内の左端の画素の位置であり、空白領域の終了位置は空白領域内の右端の画素の位置である。
【0179】
結合部12は、複数の画素ラインにおいて決定された複数の空白領域のうち互いに隣接する空白領域を結合する。本実施の形態では、結合部12は、複数の画素ラインにおいて決定された複数の空白領域のうち、画素ライン内の画素の並び方向において開始位置及び終了位置が一致する互いに隣接する空白領域を結合する。
【0180】
出力部13は、結合部12による結合結果に基づいて画像内の空白領域の情報を出力する。本実施の形態では、出力部13は、結合部12によって結合された空白領域の端に位置する2つの画素ラインのうちの一方における空白領域の開始位置と他方における空白領域の終了位置とを示す情報を画像内の空白領域の情報として出力する。つまり、複数の画素ラインが結合されて1つの矩形の空白領域が形成された場合に、出力部13は、矩形の対頂点の画素の位置を示す情報を出力する。
【0181】
[画像処理装置の処理]
次に、以上のように構成された画像処理装置10の処理について説明する。
図24は、実施の形態4及び5に係る画像処理装置10の処理を示すフローチャートである。以下において、m×n画素からなる画像の水平方向の位置をXi(iは0からm−1まで整数)で表し、垂直方向の位置をYj(jは0からn−1までの整数)で表す。また、画素ラインが水平方向に画素が並ぶ画素行である場合について説明する。
【0182】
まず、複数の画素ラインに対するループ処理が実行される(S11、S16)。つまり、複数の画素ラインの中から1つの画素ラインYjが順に選択され、選択された画素ラインYjに対して以下の処理が実行される。
【0183】
決定部11は、画素ラインYj内の空白領域を決定する(S12)。この処理の詳細については、
図25を参照して後述する。
【0184】
結合部12は、画素ラインYj内の空白領域の水平方向の位置が画素ラインYj−1内の空白領域の水平方向の位置と一致するか否かを判定する(S13)。つまり、結合部12は、画素ラインYj内の空白領域の水平方向の開始位置及び終了位置が、画素ラインYjに隣接する画素ラインYj−1内の空白領域の水平方向の開始位置及び終了位置と一致するか否かを判定する。
【0185】
ここで、画素ラインYj内の空白領域の水平方向の位置が画素ラインYj−1内の空白領域の水平方向の位置と一致する場合(S13のYes)、結合部12は、2つの空白領域を結合する(S14)。つまり、結合部12は、2つの空白領域を合体させて1つの空白領域を形成する。例えば、結合部12は、画素ラインYj−1に係る空白領域の終了位置を示す情報を(Xend,Yj−1)から(Xend,Yj)に更新する。
【0186】
一方、画素ラインYj内の空白領域の水平方向の位置が画素ラインYj−1内の空白領域の水平方向の位置と一致しない場合(S13のNo)、結合部12は、画素ラインYj内の空白領域を、画素ラインYj−1に係る空白領域と区別して保存する(S15)。例えば、結合部12は、画素ラインYj内の空白領域の開始位置及び終了位置を示す情報(Xstrat,Yj)及び(Xend,Yj)を、新たな空白領域の情報としてメモリに保存する。
【0187】
ステップS11〜ステップS16のループ処理が終了すれば、出力部13は、空白領域の情報を出力する(S17)。つまり、画素ラインY0から画素ラインYm−1まで画素ラインに対する処理が行われた後に、出力部13は、決定された空白領域の情報を出力する。
【0188】
ここで、ステップS12における空白領域を決定する処理の詳細について
図25を用いて説明する。
図25は、実施の形態4に係る画像処理装置10の空白領域決定処理の詳細を示すフローチャートである。
【0189】
まず、画素ラインYjに含まれる複数の画素に対するループ処理が実行される(S21、S28)。つまり、画素ラインYj内の複数の画素の中から1つの画素(Xi,Yj)が順に選択され、選択された画素(Xi,Yj)に対して以下の処理が実行される。
【0190】
決定部11は、画素ラインYj内の空白領域の開始位置が既に決定されているか否かを判定する(S22)。具体的には、決定部11は、空白領域の水平方向の開始位置Xstartが既に決定されているか否かを判定する。
【0191】
開始位置がまだ決定されていない場合(S22のNo)、決定部11は、画素(Xi,Yj)の濃度レベルD(Xi,Yj)が閾値レベルDth未満であるか否かを判定する(S23)。ここで、D(Xi,Yj)がDth未満である場合(S23のYes)、決定部11は、画素(Xi,Yj)の位置を画素ラインYj内の空白領域の開始位置と決定する(S24)。つまり、空白領域の水平方向の開始位置Xstartは、Xiと決定される。一方、D(Xi,Yj)がDth以上である場合(S23のNo)、空白領域の開始位置は決定されず、ループ処理に戻る。
【0192】
開始位置が既に決定されている場合(S22のYes)、決定部11は、画素ラインYj内の空白領域の終了位置が既に決定されているか否かを判定する(S25)。具体的には、決定部11は、空白領域の水平方向の終了位置Xendが既に決定されているか否かを判定する。終了位置が既に決定されている場合(S25のYes)、空白領域の終了位置は決定されず、ループ処理に戻る。
【0193】
終了位置がまだ決定されていない場合(S25のNo)、決定部11は、画素(Xi,Yj)の濃度レベルD(Xi,Yj)が範囲R1に含まれるか否かを判定する(S26)。範囲R1は、空白領域の開始位置の画素の濃度レベルD(Xstart,Yj)から予め定められた濃度レベルDpd以内の範囲である。つまり、範囲R1は、D(Xstart,Yj)−DpdからD(Xstart,Yj)+Dpdまでの範囲である。
【0194】
D(Xi,Yj)がR1に含まれない場合(S26のNo)、決定部11は、画素(Xi,Yj)の1つ前の画素(Xi−1,Yj)の位置を空白領域の終了位置と決定する(S27)。つまり、空白領域の水平方向の終了位置Xendは、Xi−1と決定される。D(Xi,Yj)がR1に含まれる場合(S26のYes)、空白領域の終了位置は決定されず、ループ処理に戻る。
【0195】
次に、具体的な画像を参照しながら上記処理を説明する。
【0196】
図26Aは、実施の形態4に係る画像処理装置の処理を説明するための画像の一例を示す図である。
図26Bは、実施の形態4に係る画像処理装置の処理を説明するための画像の濃度レベルの一例を示す図である。
図26A及び
図26Bは同一の画像を表す。
【0197】
図26A及び
図26Bにおける複数の矩形ブロックの各々は画素を表す。例えば、画像の解像度600dpiである場合、各画素の一辺のサイズは、0.042mm(≒25.4mm(1in)/600dot)である。また、
図26Bで画素内に記載された数値は濃度レベルを表す。ここでは、濃度レベルは、256段階の整数値で表され、0が最も濃度が低いことを示し、255が最も濃度が高いことを示す。つまり、白黒画像であれば、0が白を表し、255が黒を表す。
【0198】
以下では、閾値レベルDthが「3」であり、予め定められた濃度レベルDpdが「2」である場合について説明する。
【0199】
まず、決定部11は、画素ラインY0に対して空白領域決定処理を実行する(S12)。ここでは、画素ラインY0に含まれる画素はいずれも閾値レベル「3」以上である。したがって、決定部11は、空白領域の開始位置を決定できない。つまり、画素ラインY0内では空白領域が決定されない。その結果、画素ラインY0内の空白領域は保存されない(S15)。
【0200】
続いて、決定部11は、画素ラインY1に対して空白領域決定処理を実行する(S12)。ここでは、第1画素に相当する画素(X1,Y1)の濃度レベル「0」が閾値レベル「3」未満である(S23のYes)。したがって、決定部11は、画素(X1,Y1)の位置を空白領域の開始位置と決定する(S24)。つまり、空白領域の水平方向の開始位置Xstartは、X1と決定される。
【0201】
画素(X2,Y1)から第2画素に相当する画素(Xm−2,Y1)までの濃度レベル「0」は、開始位置の画素の濃度レベル「0」から予め定められた濃度レベル「2」以内の範囲R1に含まれる(S26のYes)。しかし、第3画素に相当する画素(Xm−1,Y1)の濃度レベル「255」は、開始位置の画素の濃度レベル「0」から予め定められた濃度レベル「2」以内の範囲R1に含まれない(S26のNo)。したがって、決定部11は、画素(Xm−2,Y1)の位置を空白領域の終了位置と決定する(S27)。つまり、空白領域の水平方向の終了位置Xendは、Xm−2と決定される。
【0202】
画素ラインY0内の空白領域は存在しないので(S13のNo)、結合部12は、画素ラインY1内の空白領域の開始位置(X1,Y1)及び終了位置(Xm−2,Y1)を保存する(S15)。
【0203】
続いて、決定部11は、画素ラインY2に対して空白領域決定処理を実行する(S12)。画素ラインY2では、画素ラインY1と同様に空白領域の開始位置(X1,Y2)及び終了位置(Xm−2,Y2)が決定される。ここで、画素ラインY2内の空白領域の水平方向の位置は、画素ラインY1内の空白領域の水平方向の位置と一致するので(S13のYes)、結合部12は、画素ラインY2内の空白領域と画素ラインY1内の空白領域とを結合する。例えば、結合部12は、既に保存されている画素ラインY1に係る空白領域の終了位置を(Xm−2,Y1)から(Xm−2,Y2)に更新する。
【0204】
画素ラインY3から画素ラインYn−2までが画素ラインY2と同様に処理される。つまり、画素ラインY3から画素ラインYn−2までの各々で決定された空白領域は、既に保存されている空白領域と結合される。最後の画素ラインYn−1では、画素ラインY0と同様に空白領域が決定されない。
【0205】
以上のような処理の結果、空白領域21が決定される。出力部13は、空白領域21の情報を出力する(S17)。具体的には、出力部13は、結合部12によって結合された空白領域21の端に位置する2つの画素ラインY1及び画素ラインYn−2のうちの一方における空白領域の開始位置(X1,Y1)と他方における空白領域の終了位置(Xm−2,Yn−2)とを示す情報を画像内の空白領域の情報として出力する。つまり、出力部13は、空白領域21の対頂点の画素の位置を示す情報を出力する。
【0206】
次に、
図26A及び
図26Bとは異なる画像を参照しながら上記処理をさらに説明する。
【0207】
図27Aは、実施の形態4に係る画像処理装置の処理を説明するための画像の他の一例を示す図である。
図27Bは、実施の形態4に係る画像処理装置の処理を説明するための画像の濃度レベルの他の一例を示す図である。
図27A及び
図27Bは同一の画像を表す。
【0208】
画素ラインY0から画素ラインYn−4までは、
図26A及び
図26Bの場合と同様であるので説明を省略する。決定部11は、画素ラインYn−3内の空白領域の開始位置(X3,Yn−3)及び終了位置(Xm−2,Yn−3)を決定する(S12)。ここで、画素ラインYn−3内の空白領域の水平方向の位置は、画素ラインYn−4内の空白領域の水平方向の位置と一致しないので(S13のNo)、結合部12は、画素ラインYn−3内の空白領域の開始位置(X3,Yn−3)及び終了位置(Xm−2,Yn−3)を新たな空白領域を示す情報として保存する(S15)。
【0209】
続いて、決定部11は、画素ラインYn−2内の空白領域の開始位置(X3,Yn−2)及び終了位置(Xm−2,Yn−2)を決定する(S12)。ここで、画素ラインYn−2内の空白領域の水平方向の位置は、画素ラインYn−3内の空白領域の水平方向の位置と一致するので(S13のYes)、結合部12は、画素ラインYn−2内の空白領域と画素ラインYn−3内の空白領域とを結合する。
【0210】
以上のような処理の結果、2つの空白領域22及び23が決定される。出力部13は、空白領域22及び23の情報を出力する(S17)。具体的には、出力部13は、空白領域22の対頂点の画素の位置(X1,Y1)及び(Xm−2,Yn−4)と、空白領域22の対頂点の画素の位置(X3,Yn−3)及び(Xm−2,Yn−2)とを示す情報を画像内の空白領域の情報として出力する。
【0211】
[効果]
以上のように、本実施の形態に係る画像処理装置10よれば、画素の濃度レベルに基づいて、画素ライン内の空白領域の開始位置及び終了位置を決定することができる。そして、このように決定された複数の画素ライン内の互いに隣接する空白領域を結合することにより、画像内の空白領域の情報を出力することができる。したがって、予め定められたブロックを用いて空白領域を決定する場合よりも、柔軟な形状及び大きさの空白領域を決定することができ、画像内の空白領域を高精度に決定することができる。
【0212】
また、本実施の形態に係る画像処理装置10によれば、空白領域の開始位置の第1画素の濃度レベルから予め定められた濃度レベル以内の範囲に含まれる濃度レベルを有する画素を空白領域に含めることができる。したがって、第1画素の濃度レベルから離れた濃度レベルを有する画素が空白領域に含まれることを防ぐことができ、濃度レベルが一様な領域を空白領域と決定することができる。
【0213】
また、本実施の形態に係る画像処理装置10によれば、画素ライン内の画素の並び方向において開始位置及び終了位置が一致する互いに隣接する空白領域を結合することができ、矩形の空白領域を決定することができる。したがって、矩形領域の対頂点の位置によって空白領域を特定することができる。その結果、空白領域の端に位置する2つの画素ラインのうちの一方における空白領域の開始位置と他方における空白領域の終了位置とを示す情報を、画像内の空白領域の情報として出力することができ、空白領域の情報量を削減することができる。
【0214】
(実施の形態5)
次に、実施の形態5について説明する。本実施の形態では、白色以外の色を有する領域であっても空白領域と決定することができる画像処理装置について説明する。なお、本実施の形態では、説明が冗長となるのを避けるため、実施の形態4と実質的に同一の構成に対する図示及び説明を適宜省略する。
【0215】
[画像処理装置の構成]
図23に示すように、本実施の形態に係る画像処理装置10Aは、実施の形態4に係る画像処理装置10と類似しているが、決定部11の代わりに決定部11Aを有する。
【0216】
決定部11Aは、決定部11と同様に、画像に含まれる複数の画素ラインの各々について、当該画素ラインに含まれる各画素の濃度レベルに基づいて当該画素ライン内の空白領域を決定する。
【0217】
決定部11Aは、第1画素、第2画素、及び、第2画素に隣接する第3画素をこの順で含む第1画素ライン内の空白領域を、以下のように決定する。
【0218】
まず、決定部11Aは、第1画素の濃度レベルが閾値レベル未満である場合に、第1画素の位置を第1画素ライン内の空白領域の開始位置と決定する。さらに、決定部11Aは、第1画素の濃度レベルが閾値レベル以上であっても、第1画素を含む第1画素から連続する予め定められた数の複数の画素が同一の濃度レベルを有する場合に、第1画素の位置を第1画素ライン内の空白領域の開始位置と決定する。
【0219】
予め定められた数は、濃度レベルの連続性を評価するための数である。予め定められた数は、経験的あるいは実験的に予め定められればよい。
【0220】
続いて、決定部11Aは、第2画素の濃度レベルが所定範囲に含まれ、かつ、第3画素の濃度レベルが当該所定範囲に含まれない場合に、第2画素の位置を第1画素ライン内の空白領域の終了位置と決定する。
【0221】
所定範囲は、空白領域に含まれる画素に適する濃度レベルの範囲を表す。言い換えると、空白領域に含まれる画素に許される濃度レベルの変化量を表す。本実施の形態では、所定範囲は、隣接する画素の濃度レベルから予め定められた濃度レベル以内の範囲である。例えば、第3画素における所定範囲は、第2画素の濃度レベルが「3」であり、予め定められた濃度レベルが「2」である場合に、「1(=3−2)」から「5(=3+2)」までの範囲である。
【0222】
さらに、決定部11Aは、第1画素ライン内の空白領域に含まれる画素について、平均濃度レベルが閾値レベルよりも大きいか否か、及び、最大濃度レベル及び最小濃度レベルの差分が閾値差分よりも大きいか否かを判定する。ここで、平均濃度レベルが閾値レベルよりも大きく、かつ、差分が閾値差分よりも大きい場合、決定部11Aは、第1画素ラインにおける空白領域の決定をキャンセルする。
【0223】
閾値差分は、空白領域内の濃度レベルのばらつきを評価するための値である。閾値差分は、経験的あるいは実験的に予め定められればよい。
【0224】
[画像処理装置の処理]
次に、以上のように構成された画像処理装置10Aの処理について説明する。本実施の形態では、
図24に示すように、空白領域決定処理(S12A)が実施の形態4の空白領域決定処理(S12)と異なる。以下に、本実施の形態に係る画像処理装置10Aの空白領域決定処理の詳細について説明する。
【0225】
図28は、実施の形態5に係る画像処理装置10Aの空白領域決定処理の詳細を示すフローチャートである。
図28において、
図25と実質的に同一の処理に対しては同一の符号を付し、適宜説明を省略する。
【0226】
画素(Xi,Yj)の濃度レベルD(Xi,Yj)が閾値レベルDth以上である場合(S23のNo)、決定部11Aは、濃度レベルD(Xi,Yj)が画素(Xi,Yj)から予め定められた数の画素以上連続しているか否かを判定する(S31)。つまり、決定部11Aは、D(Xi,Yj)=D(Xi+1,Yj)=D(Xi+2,Yj)・・・が満たされるか否かを判定する。
【0227】
ここで、濃度レベルD(Xi,Yj)が画素(Xi,Yj)から予め定められた数の画素以上連続している場合(S31のYes)、決定部11Aは、画素(Xi,Yj)の位置を画素ラインYj内の空白領域の開始位置と決定する(S24)。一方、濃度レベルD(Xi,Yj)が画素(Xi,Yj)から予め定められた数の画素以上連続していない場合(S31のNo)、空白領域の開始位置は決定されず、ループ処理に戻る。
【0228】
空白領域の終了位置がまだ決定されていない場合(S25のNo)、決定部11Aは、画素(Xi,Yj)の濃度レベルD(Xi,Yj)が範囲R2に含まれるか否かを判定する(S32)。R2は、隣接する画素の濃度レベルD(Xi−1,Yj)から予め定められた濃度レベルDpd以内の範囲である。つまり、R2は、D(Xi−1,Yj)−DpdからD(Xi−1,Yj)+Dpdまでの範囲である。
【0229】
ここで、D(Xi,Yj)がR2に含まれる場合(S32のYes)、空白領域の終了位置は決定されず、ループ処理に戻る。一方、D(Xi,Yj)がR2に含まれない場合(S32のNo)、決定部11Aは、画素(Xi,Yj)の1つ前の画素(Xi−1,Yj)の位置を空白領域の終了位置と決定する(S27)。
【0230】
それから、決定部11Aは、決定された空白領域に含まれる画素の平均濃度レベルDmeanを算出し、DmeanがDthより大きいか否かを判定する(S33)。ここで、DmeanがDth以下である場合(S33のNo)、そのままループ処理に戻る。一方、DmeanがDthより大きい場合(S33のYes)、決定部11Aは、決定された空白領域に含まれる画素の最大濃度レベルDmax及び最小濃度レベルDminの差分を算出し、当該差分が閾値差分Dfより大きいか否かを判定する(S34)。ここで、Dmax及びDminの差分がDf以下である場合(S34のNo)、そのままループ処理に戻る。一方、Dmax及びDminの差分がDfより大きい場合(S34のYes)、決定部11Aは、画素ラインYj内の空白領域の決定をキャンセルする(S35)。
【0231】
次に、具体的な画像を参照しながら上記処理を説明する。
【0232】
図29Aは、実施の形態5に係る画像処理装置の処理を説明するための画像の一例を示す図である。
図29Bは、実施の形態5に係る画像処理装置の処理を説明するための画像の濃度レベルの一例を示す図である。
図29A及び
図29Bは同一の画像を表す。
【0233】
以下では、閾値レベルDthが「3」であり、予め定められた濃度レベルDpdが「2」であり、濃度レベルの連続性を判定するための数が「3」であり、閾値差分Dfが「5」である場合について説明する。また、
図26A及び
図26Bにおける説明と異なる部分を中心に説明する。
【0234】
決定部11Aは、画素ラインY0に対して空白領域決定処理を実行した後、画素ラインY1に対して空白領域決定処理を実行する(S12)。ここでは、第1画素に相当する画素(X1,Y1)の濃度レベル「5」が閾値レベル「3」以上である(S23のYes)。しかしながら、画素(X1,Y1)の濃度レベル「5」が画素(X1,Y1)から3画素以上連続している(S31のYes)。したがって、決定部11Aは、画素(X1,Y1)の位置を空白領域の開始位置と決定する(S24)。つまり、空白領域の水平方向の開始位置Xstartは、X1と決定される。
【0235】
第2画素に相当する画素(Xm−2,Y1)の濃度レベル「5」は、隣接する画素(Xm−3,Y1)の濃度レベル「5」から予め定められた濃度レベル「2」以内の範囲R2に含まれる(S26のYes)。しかし、第3画素に相当する画素(Xm−1,Y1)の濃度レベル「255」は、隣接する画素(Xm−2,Y1)の濃度レベル「5」から予め定められた濃度レベル「2」以内の範囲R2に含まれない(S26のNo)。したがって、決定部11Aは、画素(Xm−2,Y1)の位置を空白領域の終了位置と決定する(S27)。つまり、空白領域の水平方向の終了位置Xendは、Xm−2と決定される。
【0236】
ここで、決定部11Aは、決定された空白領域内の画素の平均濃度レベル「5」を算出する。算出された平均濃度レベル「5」は、閾値レベル「3」より大きい(S33のYes)。そこで、決定部11Aは、決定された空白領域内の画素における最大濃度レベル及び最小濃度レベルの差分を算出する。ここでは、最大濃度レベル及び最小濃度レベルは、ともに「5」であるので、差分として「0」が算出される。差分「0」は閾値差分「5」以下であるので(S34のNo)、画素ラインY1内の空白領域の決定はキャンセルされない。
【0237】
以上のような処理の結果、空白領域24が決定される。出力部13は、空白領域24の情報を出力する(S17)。
【0238】
[効果]
以上のように、本実施の形態に係る画像処理装置10Aよれば、隣接する画素の濃度レベルから予め定められた濃度レベル以内の範囲に含まれる濃度レベルを有する画素を空白領域に含めることができる。したがって、隣接する画素から濃度レベルが大きく変化する画素が空白領域に含まれることを防ぐことができる。逆に言えば、画素ライン内で画素の濃度レベルが画素の並び方向に少しずつ変化する領域を空白領域と決定することができ、空白領域のバリエーションを増やすことができる。例えば、グラデーションの背景を有する画像において、背景領域を空白領域と決定することができる。
【0239】
また、本実施の形態に係る画像処理装置10Aよれば、ある画素から連続する予め定められた数の複数の画素が同一の濃度レベルを有する場合に、当該画素の位置を空白領域の開始位置と決定することができる。したがって、閾値レベル以上の濃度レベルを有する画素を含んでいても一様な濃度レベルの領域であれば空白領域と決定することが可能となる。例えば、灰色あるいは黄色などの背景を有する画像において、白画素の領域だけではなく灰色画素あるいは黄色画素が連続している領域も空白領域と決定することができる。
【0240】
また、本実施の形態に係る画像処理装置10Aよれば、平均濃度レベルが閾値レベルより大きく、かつ、最大濃度レベル及び最小濃度レベルの差分が閾値差分よりも大きい場合、空白領域の決定をキャンセルすることができる。したがって、濃度レベルが一様ではない領域が空白領域と決定されることを防ぐことができる。
【0241】
(実施の形態6)
本実施の形態では、上記実施の形態1に係る印刷装置と、上記実施の形態4又は5に係る画像処理装置との組み合わせについて、図面を参照しながら具体的に説明する。なお、本実施の形態では、説明が冗長となるのを避けるため、実施の形態1、4又は5と実質的に同一の構成に対する図示及び説明を適宜省略する。
【0242】
[印刷装置の構成]
図30は、実施の形態6に係る印刷装置400の機能構成を示すブロック図である。
図30に示すように、印刷装置400は、制御部401と、入力部102と、表示部103と、読取部104と、印刷部105と、記憶部106と、画像処理装置(画像処理部)10又は10Aとを備える。以下に、印刷装置400の各構成要素について詳細に説明する。
【0243】
制御部401は、例えば、汎用プロセッサ又は専用の電子回路によって実現される。制御部401は、コントローラとも呼ばれる。制御部401は、印刷用画像に応じて当該印刷用画像の印刷を実行又はキャンセルする。
【0244】
本実施の形態では、制御部401は、画像処理装置10又は10Aから出力された空白領域の情報に基づいて、印刷用画像内の判定領域が空白であるか否かを判定する。そして、制御部401は、判定結果に基づいて印刷部105を制御する。
【0245】
具体的には、制御部401は、画像処理装置10又は10Aから空白領域の情報を取得する。そして、制御部401は、取得された情報によって特定される判定領域内の空白領域の面積を閾値面積と比較することにより、当該判定領域が空白であるか否かを判定する。つまり、制御部401は、判定領域内の空白領域の面積が閾値面積以上である場合に、当該判定領域が空白であると判定する。逆に、制御部401は、判定領域内の空白領域の面積が閾値面積未満である場合に、当該判定領域が空白でないと判定する。
【0246】
[効果]
以上のように、本実施の形態によれば、実施の形態1と実施の形態4又は5とを組み合わせた印刷装置400を実現することができる。したがって、印刷用画像内の空白領域を高精度に決定することができ、その決定された空白領域に基づいて、印刷用画像内の一部の領域(判定領域)が空白であるか否かを判定することができる。その結果、判定領域の空白判定を適切に行うことができ、印刷の無駄をより効果的に減少させることができる。
【0247】
(他の実施の形態)
以上、本発明の1つ又は複数の態様に係る印刷装置について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の1つ又は複数の態様の範囲内に含まれてもよい。
【0248】
例えば、上記実施の形態2又は3と、実施の形態1の変形例とが組み合されてもよい。つまり、上記実施の形態2及び3におけるいくつかの処理は、情報端末で行われてもよい。
【0249】
また、上記実施の形態6では、実施の形態1と実施の形態4又は5とが組み合されていたが、実施の形態2又は3と実施の形態4又は5と実施の形態1の変形例とが任意に組み合わされてもよい。
【0250】
また、上記実施の形態1及び2では閾値面積を用いて判定領域が空白であるか否かが判定されていたが、必ずしも閾値面積は用いられなくてもよい。例えば、判定領域内のすべてが空白領域であるか否かが判定されてもよい。
【0251】
また、上記実施の形態1及び2では、閾値面積は矩形の幅及び高さによって表現されていたが、これに限定されない。例えば、閾値面積は、判定領域に対する比率(例えば90%)で表現されてもよい。このような比率は、予め定められてもよいし、ユーザからの入力によって定められてもよい。
【0252】
また、判定領域の設定は自動化されてもよい。例えば、判定領域は、印刷用画像内の余白領域を除いた左上から複数文字分に該当する領域にあらかじめ設定してあっても良い。一般的な資料作成用のソフトウェアは横書きで、左上から文章を作成する仕組みであるため、多くの場合において効率よく空白領域の判定を行うことが出来る。また、複数文字ではなく、左上から複数行分に該当する領域にあらかじめ設定してあっても良い。また、例えば、判定領域は、印刷画像内の余白領域を除いた中心から一定の範囲にあらかじめ設定してあっても良い。一般的なプレゼンテーション資料作成用のソフトウェアでは、中央付近に文章や資料が配置されるため、多くの場合において効率よく空白領域の判定を行うことが出来る。また、例えば、上記左上に判定領域を設定する方法と、上記中心から一定の範囲に設定する方法とを組み合わせても良い。また、例えば、印刷する印刷用画像が複数存在する場合、複数の印刷用画像を比較して共通してデータが存在する領域を特定することで、それ以外の領域を判定領域と設定しても良い。
【0253】
また、上記各実施の形態において、印刷がキャンセルされた印刷用画像を指し示す情報が表示されていたが、これに限定されない。例えば、当該情報はユーザに提示されなくてもよい。また、当該情報は印刷されてもよい。
【0254】
また、上記各実施の形態において、印刷がキャンセルされた印刷用画像を指し示す情報は、印刷がキャンセルされた日時及びページ番号を含んでいたが、これに限定されない。例えば、印刷用画像を指し示す情報は、日時及びページ番号の一方のみを含んでもよい。また例えば、情報端末から印刷用画像が印刷装置に送信される場合、印刷用画像を指し示す情報は、情報端末の識別情報、及び、印刷用画像のファイル名を含んでもよい。
【0255】
また、印刷装置が備える各構成要素は、通信路を介して接続された他の1以上の装置に備えられてもよい。例えば、印刷部及び読取部が印刷装置に含まれ、入力部及び表示部が情報端末に含まれ、制御部及び記憶部がサーバ装置に含まれてもよい。具体的には、情報端末が印刷を指示すると、サーバ装置にデータが送信され、サーバ装置にて空白ページを識別し、印刷装置は空白ページが除去されるように印刷処理を行う。空白ページの除去はサーバ装置または印刷装置のどちらで行われてもよい。また例えば、印刷装置は、入力部、表示部、読取部及び記憶部を備えずに、制御部及び印刷部のみを備えてもよい。
【0256】
なお、上記実施の形態4及び5では、画素ライン内の空白領域の終了位置を決定するための所定範囲は、空白領域の開始位置の画素又は隣接する画素の濃度レベルによって定義されていたが、所定範囲はこれに限られない。例えば、所定範囲は、空白領域の開始位置の画素から隣接する画素までの平均濃度レベルによって定義されてもよい。つまり、所定範囲は、空白領域の開始位置の画素(第1画素)から隣接する画素までの平均濃度レベルから予め定められた濃度レベル以内の範囲であってよい。この構成によれば、第1画素から隣接する画素までの平均濃度レベルから予め定められた濃度レベル以内の範囲に含まれる濃度レベルを有する画素を空白領域に含めることができる。したがって、平均濃度レベルから離れた濃度レベルを有する画素が空白領域に含まれることを防ぐことができ、濃度レベルが一様な領域を空白領域と決定することができる。
【0257】
なお、上記実施の形態5では、最大濃度レベル及び最小濃度レベルの差分が閾値差分よりも大きいか否かを判定し、判定結果に基づいて空白領域の決定をキャンセルしていたが、最大濃度レベル及び最小濃度レベルの差分に限定されない。つまり、空白領域内の画素の濃度レベルのばらつきを評価できれば、どのような値が用いられてもよい。例えば、決定部は、画素ライン内の空白領域に含まれる画素において、空白領域の開始位置の画素(第1画素)の濃度レベルと一致する濃度レベルを有する画素の割合が閾値割合よりも小さいか否かを判定してもよい。この場合、決定部は、平均濃度レベルが閾値レベルより大きく、かつ、割合が閾値割合よりも小さい場合に、画素ラインにおける空白領域の決定をキャンセルすればよい。この構成によれば、第1画素の濃度レベルと異なる濃度レベルを有する画素を多く含む領域が空白領域と決定されることを防ぐことができる。
【0258】
なお、上記実施の形態4及び5において、
図24に示す処理において、複数の画素ラインの中から1つの画素ラインを順に処理していたが、2以上の画素ラインを並列に処理してもよい。
【0259】
なお、上記実施の形態4及び5において、画素ライン内の画素の並び方向において開始位置及び終了位置が一致する互いに隣接する空白領域が結合されていたが、これに限定されない。例えば、互いに開始位置が異なる空白領域22及び23(
図27Bを参照)が結合されてもよい。つまり、開始位置及び終了位置の一方又は両方が異なる空白領域であっても、互いに隣接する空白領域は結合されてもよい。
【0260】
なお、上記実施の形態4及び5では、モノクロ画像における空白領域の決定について説明したが、当該空白領域の決定は、カラー画像に対しても適用できる。例えば、画像処理装置は、赤、緑及び青の3色の画像のそれぞれにおいて空白領域を決定し、3色の画像における空白領域の位置及び大きさが一致する場合に、当該空白領域をカラー画像内の空白領域と決定してもよい。また、画像処理装置は、3色の画像に含まれる空白領域の重複する領域をカラー画像内の空白領域と決定してもよい。
【0261】
なお、上記実施の形態6では、上記実施の形態4又は5において決定された空白領域に基づいて画像の印刷をキャンセルしていたが、空白領域の利用例はこれに限定されない。例えば、画像処理装置によって決定された空白領域は、特許文献2のように、画像の読み取り時のセンサの移動速度の制御に利用されてもよい。また例えば、画像処理装置によって決定された空白領域は、光学文字認識(OCR)のための領域を決定するために利用されてもよい。