(57)【特許請求の範囲】
【請求項１】
原稿に記録された画像を読み取って画像データを生成する読取装置、及び画像データを出力する出力装置に接続された制御部と、操作部とを備える画像処理装置であって、
前記制御部は、
前景画素及び背景画素を含む読取画像データを、前記読取装置に生成させる読取処理と、
前記読取画像データで示される読取画像が無地か否かを判定する第１無地判定処理と、
前記読取画像が無地でないと前記第１無地判定処理で判定したことに応じて、各々が前記読取画像データを改変する複数の改変処理のうち、前記操作部を通じて指定された１以上の前記改変処理を実行して、改変画像データを生成するデータ改変処理とを実行し、前記改変処理は、前記前景画素の画素値を前記背景画素に近づける除去処理を含み、
前記制御部は、
前記改変処理として前記除去処理が指定されているか否かを判断する第１判断処理と、
前記除去処理が指定されていると前記第１判断処理で判断したことに応じて、前記改変画像データで示される改変画像上の一部の領域を、判定領域に決定する領域決定処理と、
前記判定領域に含まれる判定画像が無地か否かを判定する第２無地判定処理と、
前記判定画像が無地でないと前記第２無地判定処理で判定したことに応じて、前記改変画像データを前記出力装置に出力させる出力処理とを実行する画像処理装置。
【請求項２】
前記制御部は、前記領域決定処理において、前記データ改変処理で改変された全ての画素を含む前記改変画像上の連続した領域を、前記判定領域に決定する請求項１に記載の画像処理装置。
【請求項３】
前記制御部は、前記領域決定処理において、指定された前記改変処理の種類に対応した形状の領域を、前記判定領域に決定する請求項２に記載の画像処理装置。
【請求項４】
前記制御部は、前記第１無地判定処理において、
前記読取画像をＮ（Ｎは２以上の整数）個の判定ブロックに区画する区画処理と、
Ｎ個の前記判定ブロックのうち、閾値割合以上の前記前景画素を含む前記判定ブロックである第１非無地ブロックの数をカウントする第１カウント処理とを実行し、
前記第１非無地ブロックの数が第１閾値以上の場合に前記読取画像が無地でないと判定し、前記第１非無地ブロックの数が前記第１閾値未満の場合に前記読取画像が無地だと判定する請求項１から３のいずれかに記載の画像処理装置。
【請求項５】
前記画像処理装置は、記憶部を備えており、
前記制御部は、
前記第１無地判定処理において、前記第１非無地ブロックの位置を前記記憶部に記憶させる記憶処理をさらに実行し、
前記記憶処理で位置が記憶された前記第１非無地ブロックのうち、前記判定領域の外側に位置する前記第１非無地ブロックの数が前記第１閾値以上か否かを判断する第２判断処理を実行し、
前記第１非無地ブロックの数が前記第１閾値未満と前記第２判断処理で判断したことに応じて、前記第２無地判定処理を実行し、
前記第１非無地ブロックの数が前記第１閾値以上と前記第２判断処理で判断したことに応じて、前記第２無地判定処理を実行せずに、前記出力処理を実行する請求項４に記載の画像処理装置。
【請求項６】
前記制御部は、前記第２無地判定処理において、
Ｎ個の前記判定ブロックのうち、前記判定領域に重なるＭ（Ｍ≦Ｎ）個の前記判定ブロックを特定する特定処理と、
Ｍ個の前記判定ブロックのうち、閾値割合以上の前記前景画素を含む前記判定ブロックである第２非無地ブロックの数をカウントする第２カウント処理とを実行し、
前記第２非無地ブロックの数が第２閾値以上の場合に前記判定画像が無地でないと判定し、前記第２非無地ブロックの数が前記第２閾値未満の場合に前記判定画像が無地だと判定する請求項４又は５に記載の画像処理装置。
【請求項７】
前記制御部は、前記第１閾値より小さく、且つ前記判定領域に含まれる画素数が多いほど大きい前記第２閾値を決定する閾値決定処理を、前記第２無地判定処理に先立って実行する請求項６に記載の画像処理装置。
【請求項８】
前記画像処理装置は、記憶部を備えており、
前記制御部は、
前記第１無地判定処理において、前記第１非無地ブロックの位置を前記記憶部に記憶させる記憶処理をさらに実行し、
前記閾値決定処理において、前記記憶処理で位置が記憶された前記第１非無地ブロックのうち、前記判定領域の外側に位置する前記第１非無地ブロックの数が多いほど、前記第２閾値を小さくする請求項７に記載の画像処理装置。
【請求項９】
前記制御部は、
前記読取画像データの解像度を指定するユーザ操作を、前記操作部を通じて受け付けることが可能であり、
前記区画処理において、前記操作部を通じて受け付けた前記解像度が高いほど、前記判定ブロックに含まれる画素数が多くなるように、前記読取画像をＮ個の前記判定ブロックに区画する請求項４から８のいずれかに記載の画像処理装置。
【請求項１０】
原稿に記録された画像を読み取って画像データを生成する読取装置、及び画像データを出力する出力装置に接続されており、操作部を備えるコンピュータによって読み取り可能なプログラムであって、
該プログラムは、
前景画素及び背景画素を含む読取画像データを、前記読取装置に生成させる読取処理と、
前記読取画像データで示される読取画像が無地か否かを判定する第１無地判定処理と、
前記読取画像が無地でないと前記第１無地判定処理で判定したことに応じて、各々が前記読取画像データを改変する複数の改変処理のうち、前記操作部を通じて指定された１以上の前記改変処理を実行して、改変画像データを生成するデータ改変処理とを前記コンピュータに実行させ、前記改変処理は、前記前景画素の画素値を前記背景画素に近づける除去処理を含み、
該プログラムは、
前記改変処理として前記除去処理が指定されているか否かを判断する第１判断処理と、
前記除去処理が指定されていると前記第１判断処理で判断したことに応じて、前記改変画像データで示される改変画像上の一部の領域を、判定領域に決定する領域決定処理と、
前記判定領域に含まれる判定画像が無地か否かを判定する第２無地判定処理と、
前記判定画像が無地でないと前記第２無地判定処理で判定したことに応じて、前記改変画像データを前記出力装置に出力させる出力処理とを前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所謂白紙判定処理を実行可能な画像処理装置に関する。
【背景技術】
【０００２】
従来より、スキャナに読み取らせた原稿が白紙か否かを判定する所謂白紙判定処理を実行可能な画像処理装置が知られている。また、特許文献１には、第１の白紙判定処理で白紙でないと判定された後において、白紙となり得る画像処理が画像データに施された場合に、第２の白紙判定処理を実行する画像処理装置が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１１５６５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の画像処理装置は、第１の白紙判定処理後に実行された画像処理で画像データが白紙になった場合に、当該画像データが出力されないというメリットがある。一方、特許文献１の画像処理装置は、白紙判定処理を２回実行するので、処理速度が遅くなるというデメリットがある。
【０００５】
本発明は、上記の事情に鑑みてなされたものであり、その目的は、読取装置に読み取らせた画像データを出力装置に出力させる画像処理装置であって、無地の画像を示す画像データを出力せず且つ処理速度の低下を抑制した画像処理装置を提供することにある。
【課題を解決するための手段】
【０００６】
本明細書に記載の画像処理装置は、原稿に記録された画像を読み取って画像データを生成する読取装置、及び画像データを出力する出力装置に接続された制御部と、操作部とを備える。前記制御部は、前景画素及び背景画素を含む読取画像データを、前記読取装置に生成させる読取処理と、前記読取画像データで示される読取画像が無地か否かを判定する第１無地判定処理と、前記読取画像が無地でないと前記第１無地判定処理で判定したことに応じて、各々が前記読取画像データを改変する複数の改変処理のうち、前記操作部を通じて指定された１以上の前記改変処理を実行して、改変画像データを生成するデータ改変処理とを実行する。前記改変処理は、前記前景画素の画素値を前記背景画素に近づける除去処理を含む。前記制御部は、前記改変処理として前記除去処理が指定されているか否かを判断する第１判断処理と、前記除去処理が指定されていると前記第１判断処理で判断したことに応じて、前記改変画像データで示される改変画像上の一部の領域を、判定領域に決定する領域決定処理と、前記判定領域に含まれる判定画像が無地か否かを判定する第２無地判定処理と、前記判定画像が無地でないと前記第２無地判定処理で判定したことに応じて、前記改変画像データを前記出力装置に出力させる出力処理とを実行する。
【０００７】
上記構成によれば、除去処理が実行された後に第２無地判定処理が実行されるので、除去処理によって無地になった改変画像データが出力されることを抑制できる。また、第２無地判定処理で判定する判定領域を改変画像の一部に限定したので、無地判定処理を２回実行することによる処理速度の低下を抑制できる。
【０００８】
本明細書に記載のプログラムは、原稿に記録された画像を読み取って画像データを生成する読取装置、及び画像データを出力する出力装置に接続されており、操作部を備えるコンピュータによって読み取り可能である。該プログラムは、前景画素及び背景画素を含む読取画像データを、前記読取装置に生成させる読取処理と、前記読取画像データで示される読取画像が無地か否かを判定する第１無地判定処理と、前記読取画像が無地でないと前記第１無地判定処理で判定したことに応じて、各々が前記読取画像データを改変する複数の改変処理のうち、前記操作部を通じて指定された１以上の前記改変処理を実行して、改変画像データを生成するデータ改変処理とを前記コンピュータに実行させる。前記改変処理は、前記前景画素の画素値を前記背景画素に近づける除去処理を含む。該プログラムは、前記改変処理として前記除去処理が指定されているか否かを判断する第１判断処理と、前記除去処理が指定されていると前記第１判断処理で判断したことに応じて、前記改変画像データで示される改変画像上の一部の領域を、判定領域に決定する領域決定処理と、前記判定領域に含まれる判定画像が無地か否かを判定する第２無地判定処理と、前記判定画像が無地でないと前記第２無地判定処理で判定したことに応じて、前記改変画像データを前記出力装置に出力させる出力処理とを前記コンピュータに実行させる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態に係るシステム１００を構成する複合機１０及び情報処理端末５０のブロック図である。
【図２】図２は、装置プログラム３５が実行可能な改変処理のリストである。
【図３】図３は、画像出力処理のフローチャートである。
【図４】図４は、非無地ＢＫ１カウント処理のフローチャートである。
【図５】図５は、非無地ＢＫ２カウント処理のフローチャートである。
【図６】図６は、画像出力処理に用いられる画像の例であって、（Ａ）は読取画像８０を、（Ｂ）は改変画像８１を示す。
【図７】図７は、無地判定処理の結果を示す図であって、（Ａ）は第１無地判定処理の結果を、（Ｂ）は第２無地判定処理の結果を示す。
【発明を実施するための形態】
【００１０】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
【００１１】
図１は、本実施形態に係るシステム１００の概略図である。図１に示されるシステム１００は、複合機１０と、情報処理端末５０とで構成されている。複合機１０及び情報処理端末５０は、通信ネットワーク１０１を通じて通信可能に構成されている。通信ネットワーク１０１は、例えば、有線ＬＡＮ、無線ＬＡＮ、或いはこれらの組み合わせであってもよい。
【００１２】
［複合機１０］
複合機１０は、図１に示されるように、プリンタ部１１と、スキャナ部１２と、表示部２３と、操作部２４と、通信部２５と、ＣＰＵ３１と、記憶部３２と、通信バス３３とを主に備える。複合機１０を構成する各構成要素は、通信バス３３を通じて相互に接続されている。複合機１０は、画像処理装置の一例である。
【００１３】
［プリンタ部１１、スキャナ部１２］
プリンタ部１１は、画像データで示される画像を記録用紙に記録するプリント動作を実行する。記録用紙は、シート或いは被記録媒体の一例である。プリンタ部１１の記録方式として、インクジェット方式や電子写真方式などの公知の方式を採用することができる。スキャナ部１２は、原稿に記録されている画像を読み取って画像データを生成するスキャン動作を実行する。プリンタ部１１は出力装置の一例であり、スキャナ部１２は読取装置の一例である。
【００１４】
［表示部２３］
表示部２３は、各種情報を表示する表示面を備える。表示部２３としては、液晶ディスプレイ、有機ＥＬディスプレイ等を採用することができる。
【００１５】
［操作部２４］
操作部２４は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、操作部２４はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をＣＰＵ３１へ出力する。さらに、操作部２４は、表示部２３の表示面に重畳された膜状のタッチセンサを有していてもよい。すなわち、表示部２３がタッチパネルディスプレイとして構成されてもよい。
【００１６】
タッチパネルとして実現される操作部２４は、ユーザがタッチした表示面上の位置を示す位置情報を出力する。後述する装置プログラム３５は、例えば、表示面に表示されたアイコン、リンク、チェックボックス、ラジオボタン等（これらを総称して、「オブジェクト」と表記する。）の位置を示す位置情報が出力されたことに応じて、当該オブジェクトの指定を受け付ける。なお、「タッチ」とは、入力媒体を表示面に接触させる操作全般を含み、タップ操作、ロングタッチ操作、スライド操作、フリック操作、ピンチイン操作、ピンチアウト操作等は、タッチの一例である。
【００１７】
［通信部２５］
通信部２５は、通信ネットワーク１０１を通じて外部装置と通信を行うためのインタフェースである。すなわち、複合機１０は、通信部２５を通じて情報処理端末５０に各種情報を出力し、通信部２５を通じて情報処理端末５０から各種データ又は各種情報を受信する。通信部２５の具体的な通信手順は特に限定されないが、例えば、Ｗｉ−Ｆｉ（Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅの登録商標）を採用することができる。
【００１８】
［ＣＰＵ３１］
ＣＰＵ３１は、複合機１０の全体動作を制御するものである。ＣＰＵ３１は、操作部２４から出力される各種信号、及び通信部２５を通じて外部装置から取得した各種情報等に基づいて、後述する各種プログラムを記憶部３２から取得して実行する。すなわち、ＣＰＵ３１及び記憶部３２は、制御部の一例を構成する。
【００１９】
［記憶部３２］
記憶部３２は、プログラム記憶領域３２Ａと、データ記憶領域３２Ｂとを有する。プログラム記憶領域３２Ａには、ＯＳ３４と、装置プログラム３５とが格納される。なお、装置プログラム３５は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。データ記憶領域３２Ｂには、装置プログラム３５の実行に必要なデータ或いは情報が記憶される。
【００２０】
なお、本明細書中の「データ」と「情報」とは、コンピュータによって取り扱い可能なビット或いはビット列である点において共通する。「データ」とは、各ビットが示す意味内容をコンピュータが考慮することなく取り扱えるものを指す。これに対して、「情報」とは、各ビットが示す意味内容によってコンピュータの動作が分岐するものを指す。さらに、「指示」は、送信先の装置に対して次の動作を促すための制御信号であって、情報を含んでいることもあるし、それ自体が情報としての性質を有していることもある。
【００２１】
記憶部３２は、例えば、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＨＤＤ、ＣＰＵ３１が備えるバッファ等、或いはそれらの組み合わせによって構成される。なお、記憶部３２は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体であり、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。
【００２２】
プログラム記憶領域３２Ａに記憶されているプログラムは、ＣＰＵ３１によって実行される。しかしながら、本明細書では、ＣＰＵ３１を省略して各プログラムの動作を説明することがある。すなわち、以下の説明において、「プログラムＡが処理Ａを実行する」という趣旨の記述は、「ＣＰＵ３１がプログラムＡに記述された処理Ａを実行する」ことを指してもよい。情報処理端末５０についても同様である。
【００２３】
また、プログラム記憶領域３２Ａに記憶されているプログラムは、事象を判断し、判断結果に応じて動作する。しかしながら、本明細書では、判断することを省略して各プログラムの動作を説明することがある。すなわち、以下の説明において、「プログラムが条件Ａに応じて、処理Ａを実行する」という趣旨の記述は、「プログラムは条件Ａであるか否かを判断する。プログラムは、肯定判断であることに応じて、処理Ａを実行する」ことを指してもよい。情報処理端末５０についても同様である。
【００２４】
また、プログラム記憶領域３２Ａに記憶されているプログラムは、データ等を特定し、取得し、抽出し、決定し、或いは選択する。プログラムがデータ等を特定するとは、例えば、複数のデータ等のうちから条件に合致するデータを特定し、当該データ等そのもの或いは当該データ等を識別するための情報を、予め定められた記憶領域に記憶させる処理を指す。データ等を識別するための情報とは、例えば、当該データ等を識別するための識別情報、当該データ等が記憶された配列のインデックス、当該データ等が記憶された記憶領域のポインタ等である。プログラムがデータ等を取得し、抽出し、決定し、或いは選択する処理も同様である。情報処理端末５０についても同様である。
【００２５】
ＯＳ３４は、複合機１０を構成するハードウェアであるプリンタ部１１、スキャナ部１２、表示部２３、操作部２４、及び通信部２５等を制御するためのＡＰＩを提供する基本プログラムである。すなわち、上記の各プログラムは、ＯＳ３４が提供するＡＰＩを呼び出すことによって、各ハードウェアを制御する。しかしながら、本明細書では、ＯＳ３４を省略して各プログラムの動作を説明することがある。すなわち、以下の説明において、「プログラムＢがハードウェアＣを制御する」という趣旨の記述は、「プログラムＢがＯＳ３４のＡＰＩを通じてハードウェアＣを制御する」ことを指してもよい。情報処理端末５０についても同様である。
【００２６】
装置プログラム３５は、図３に示される画像出力処理において、無地判定処理を実行することができる。無地判定処理は、スキャナ部１２によって生成された画像データで示される画像が無地か否かを判定する処理である。「無地」とは、例えば、スキャナ部１２に読み取らせた原稿に実質的に画像が記録されておらず、濃淡の差がほぼないことを指す。換言すれば、「無地」とは、前景画素及び背景画素で構成される画像データにおいて、前景画素が少なく、背景画素が多い状態を指す。無地判定処理は、第１無地判定処理と、第２無地判定処理とを含む。第１無地判定処理及び第２無地判定処理は、無地か否かの判定方法が共通し、判定対象の領域及び判定に用いる閾値が相違する。
【００２７】
なお、「背景画素」とは、例えば、画像データに含まれる画素値のヒストグラムにおいて、最頻値及びその周辺の予め定められた範囲の画素値が設定された画素を指す。すなわち、背景画素とは、原稿上の画像が記録されていない領域の画素に対応する。背景画素は、いわゆる原稿の地色の画素を示すことが多い。一方、「前景画素」とは、画像データに含まれる画素のうち、背景画素以外の画素を指す。すなわち、前景画素とは、原稿上の画像が記録されている領域に対応する。
【００２８】
無地判定処理は、専用のハードウェアによって実現されてもよい。無地判定処理は、白紙判定処理とも呼ばれる周知の処理である。白紙判定処理は、例えば、画像データに含まれる画素の輝度値のヒストグラムを生成し、当該ヒストグラムの最頻値、すなわち、地色を示す画素の数が閾値以上である場合に、当該画像データで示される画像が白紙であると判定する処理である。他の例として、白紙判定処理は、後述するように、地色と異なる色を示す画素の数が閾値未満である場合に、当該画像データで示される画像が白紙であると判定する処理であってもよい。
【００２９】
また、装置プログラム３５は、図３に示される画像出力処理において、図２に示される各種改変処理を実行することができる。改変処理は、スキャナ部１２によって生成された画像データを改変する処理である。より詳細には、改変処理は、画像データに含まれる画素の画素値を改変する処理である。改変処理は、図２に示されるように、除去処理と、強調処理と、置換処理と、移動処理とに大別される。なお、改変処理は、図２に示される例に限定されない。また、改変処理の一部或いは全部は、専用のハードウェア回路によって実現されてもよい。
【００３０】
除去処理は、前景画素の画素値を背景画素に近づける処理である。より詳細には、除去処理は、前景画素の少なくとも一部の画素値を背景画素の画素値で上書きする処理である。なお、「背景画素の画素値」とは、前述の画素値のヒストグラムの最頻値であってもよいし、背景画素に分類された全ての画素値の単純平均或いは加重平均であってもよい。すなわち、除去処理が実行された後の画像データは、除去処理が実行される前の画像データと比較して、無地判定処理で無地と判定される可能性が高くなる。図２に示されるように、ノイズ除去、パンチ穴除去、裏写り除去、罫線除去、ゴミ・汚れ除去、カラー調整（輝度値アップ）、及びカラードロップ等は、除去処理の一例である。
【００３１】
強調処理は、前景画素に隣接する背景画素の画素値を、隣接する前景画素に近づける処理である。より詳細には、強調処理は、前景画素に隣接する背景画素の少なくとも一部の画素値を、隣接する前景画素の画素値で上書きする処理である。すなわち、強調処理が実行された後の画像データは、強調処理が実行される前の画像データと比較して、無地判定処理で無地と判定される可能性が低くなる。図２に示されるように、エッジ強調、文字太らせ、及びカラー調整（輝度値ダウン）は、強調処理の一例である。
【００３２】
置換処理は、背景画素の画素値を一括して置換する処理である。移動処理は、複数の前景画素を互いの相対位置を維持したまま移動させる処理である。すなわち、置換処理或いは移動処理の前後において、画像データ内における背景画素の割合が実質的に変化しないので、無地判定処理の結果が変わらない可能性が極めて高い。図２に示されるように、地色変換及び色変換は、置換処理の一例である。図２に示されるように、傾き補正、原稿向き補正、及び拡大・縮小は、移動処理の一例である。
【００３３】
ノイズ除去は、スキャナ部１２から出力された信号に重畳されたノイズを、画像データから除去する処理である。ゴミ・汚れ除去は、原稿或いはスキャナ部１２に付着したゴミや汚れを、画像データから除去する処理である。パンチ穴除去は、当該パンチ穴を示す画像を、画像データから除去する処理である。裏写り除去は、原稿の裏面に記録された画像を、画像データから除去する処理である。罫線除去は、罫線を示す画像を、画像データから除去する処理である。カラー調整（輝度値アップ）は、画像データに含まれる全ての画素の輝度値を上昇させる処理である。カラードロップは、画像データに含まれる全ての画素のうちの特定の色値を削除する処理である。色値とは、例えば、カラーの画素を構成するＲ値、Ｇ値、或いはＢ値である。
【００３４】
エッジ強調及び文字太らせは、画像データで示される画像内に存在するエッジや文字の輪郭を強調する処理である。カラー調整（輝度値ダウン）は、画像データに含まれる全ての画素の輝度値を減少させる処理である。地色変換は、背景画素の画素値（例えば、緑色）を他の画素値（例えば、白色）に一括変換する処理である。色変換は、カラー画像をグレースケール画像又はモノクロ画像に変換する処理、或いはグレースケール画像をモノクロ画像に変換する処理である。傾き補正は、原稿が傾いて読み取られた場合に、当該傾きを補正する処理である。原稿向き補正は、画像データ内において、長方形の画像を９０°或いは１８０°回転させる処理である。拡大・縮小は、画像データで示される画像を拡大或いは縮小する処理である。
【００３５】
改変処理は既に周知なので、詳細な説明は省略する。また、装置プログラム３５は、画像データに対して実行する改変処理を指定するユーザ操作を、操作部２４を通じて受け付け、指定された改変処理（以下、「指定改変処理」と表記する。）を示す情報をデータ記憶領域３２Ｂに記憶させる。そして、装置プログラム３５は、後述するデータ改変処理（Ｓ１４）において、図２に示される複数の改変処理のうち、指定改変処理のみを画像データに対して実行する。
【００３６】
［情報処理端末５０］
情報処理端末５０は、図１に示されるように、表示部５３と、操作部５４と、通信部５５と、ＣＰＵ６１と、記憶部６２と、通信バス６３とを主に備える。情報処理端末５０に含まれる表示部５３、操作部５４、通信部５５、ＣＰＵ６１、記憶部６２、及び通信バス６３は、複合機１０に含まれる表示部２３、操作部２４、通信部２５、ＣＰＵ３１、記憶部３２、及び通信バス３３と同様の構成なので、説明は省略する。ＣＰＵ６１及び記憶部６２は制御部の一例を構成する。情報処理端末５０は、例えば、携帯電話、スマートフォン、タブレット端末、或いはＰＣ等であってもよい。
【００３７】
［システム１００の動作］
図３〜図５を参照して、本実施形態に係るシステム１００の動作を説明する。本実施形態に係るシステム１００は、情報処理端末５０が複合機１０にスキャン動作の実行を指示し、スキャン動作によって生成された画像データを複合機１０が情報処理端末５０に送信する処理を実行する。
【００３８】
まず、情報処理端末５０の端末プログラム６５は、操作部５４を通じて受け付けたユーザ操作に従って、通信部５５を通じて複合機１０にスキャン指示情報を送信する。スキャン指示情報は、スキャン動作の実行を指示するための情報である。スキャン指示情報は、スキャン動作の実行条件（例えば、読取解像度、ファイル形式、原稿サイズ、読取色等）を含んでもよい。すなわち、端末プログラム６５は、スキャン指示情報の送信に先立って、実行条件を指定するユーザ操作を操作部５４を通じて受け付けることができる。
【００３９】
一方、複合機１０の装置プログラム３５は、通信部２５を通じて情報処理端末５０からスキャン指示情報を受信する。そして、装置プログラム３５は、スキャン指示情報を受信したことに応じて、画像出力処理を実行する。図３を参照して、画像出力処理の詳細を説明する。
【００４０】
装置プログラム３５は、スキャン指示情報を受信したことに応じて、スキャナ部１２にスキャン動作を実行させる（Ｓ１１）。スキャナ部１２は、スキャン指示情報に含まれる実行条件に従って、不図示のコンタクトガラス或いはＡＤＦにセットされた原稿に記録された画像を読み取って、当該画像を示す読取画像データを生成する。ステップＳ１１の処理は、読取処理の一例である。
【００４１】
本実施形態に係る読取処理では、例えば図６（Ａ）に示される読取画像８０を示す読取画像データが生成されたものとする。図６（Ａ）に示される読取画像８０は、パンチ穴が形成された概ね無地の原稿に記録されたものである。図６（Ａ）に示されるパンチ穴は、黒色に塗りつぶされた円形画像として、読取画像８０内の２箇所に存在している。但し、パンチ穴は、円形の輪郭線のみが黒色で表され、円形の内部は原稿の地色で表される場合もある。また、読取画像８０は、原稿やスキャナ部１２の読取面に付着したゴミを示す複数の画像を含む。パンチ穴及びゴミの位置の画素は前景画素の一例であり、その他の位置の画素は背景画素の一例である。
【００４２】
［非無地ＢＫ１カウント処理］
次に、装置プログラム３５は、非無地ＢＫ１カウント処理を実行する（Ｓ１２）。非無地ＢＫ１カウント処理は、ステップＳ１１で生成された読取画像データで示される読取画像８０のうち、無地でない領域の広さを算出する処理である。換言すれば、非無地ＢＫ１カウント処理は、ステップＳ１１でスキャナ部１２に読み取らせた原稿のうち、画像が記録されている領域の広さを算出する処理である。図４を参照して、非無地ＢＫ１カウント処理の詳細を説明する。
【００４３】
装置プログラム３５は、例えば図７（Ａ）に示されるように、図６（Ａ）に示される読取画像８０をＮ個の判定ブロックに区画する（Ｓ３１）。Ｎは、２以上の整数である。各判定ブロックには、１以上の画素が含まれている。図７（Ａ）において、読取画像８０の輪郭線及び複数の破線で囲まれた矩形の領域が判定ブロックに相当する。なお、図７（Ａ）に示される破線は、読取画像８０に含まれる画像ではなく、判定ブロックを示すために便宜的に描かれた線である。ステップＳ３１の処理は、区画処理の一例である。
【００４４】
なお、装置プログラム３５は、読取画像データの解像度に応じて、判定ブロックの大きさを決定してもよい。より詳細には、装置プログラム３５は、読取画像データの解像度が高いほど、判定ブロックに含まれる画素数を多くしてもよい。換言すれば、装置プログラム３５は、読取画像データの解像度に拘わらず、判定ブロックの数Ｎが同一となるように、読取画像８０を区画してもよい。
【００４５】
次に、装置プログラム３５は、非無地ＢＫ１カウント処理で使用する変数を初期化する（Ｓ３２）。ｎは、ステップＳ３３〜Ｓ３７で処理の対象となる判定ブロックを特定する変数であって、ステップＳ３２でｎ＝１に初期化される。図７（Ａ）に示される読取画像８０において、例えば、左上隅の判定ブロックがｎ＝１で特定され、その右隣の判定ブロックがｎ＝２で特定され、右下隅の判定ブロックがｎ＝Ｎで特定されればよい。以下、変数ｎで特定される判定ブロックを、第ｎブロックと表記する。非無地ＢＫ１は、ステップＳ３３〜Ｓ３７で第１非無地ブロックと判定された判定ブロックの数を示す変数であって、ステップＳ３２で非無地ＢＫ１＝０に初期化される。
【００４６】
次に、装置プログラム３５は、第ｎブロックが無地か否かを判断する（Ｓ３３）。より詳細には、装置プログラム３５は、第ｎブロックに含まれる複数の画素のうち、前景画素の画素値が設定された画素の数（以下、「前景画素数」と表記する。）をカウントする。そして、装置プログラム３５は、前景画素数が閾値割合未満であることに応じて、第ｎブロックが無地だと判定する（Ｓ３３：Ｙｅｓ）。一方、装置プログラム３５は、前景画素数が閾値割合以上であることに応じて、第ｎブロックが無地でないと判断する（Ｓ３３：Ｎｏ）。ステップＳ３３で無地でないと判定された判定ブロックは、第１非無地ブロックの一例である。
【００４７】
次に、装置プログラム３５は、第ｎブロックが無地でないと判断したことに応じて（Ｓ３３：Ｎｏ）、非無地ＢＫ１に１を加算する（Ｓ３４）。また、装置プログラム３５は、読取画像８０内における第ｎブロックの位置を示す位置情報ｎを、データ記憶領域３２Ｂに記憶させる（Ｓ３５）。ステップＳ３５の処理は、記憶処理の一例である。一方、装置プログラム３５は、第ｎブロックが無地だと判断したことに応じて（Ｓ３３：Ｙｅｓ）、ステップＳ３４、Ｓ３５の処理を実行しない。
【００４８】
そして、装置プログラム３５は、変数ｎが判定ブロックの数Ｎ未満であることに応じて（Ｓ３６：Ｎｏ）、変数ｎに１を加算して（Ｓ３７）、ステップＳ３３〜Ｓ３５の処理を実行する。すなわち、装置プログラム３５は、変数ｎが判定ブロックの数Ｎに達するまで（Ｓ３６：Ｙｅｓ）、ステップＳ３３〜Ｓ３７の処理を繰り返し実行する。換言すれば、装置プログラム３５は、読取画像８０に含まれる全ての判定ブロックが無地か否かを判定する。ステップＳ３３〜Ｓ３７の処理は、Ｎ個の判定ブロックのうちの第１非無地ブロックの数をカウントする第１カウント処理の一例である。本実施形態に係る非無地ＢＫ１カウント処理では、図７（Ａ）に示される複数の判定ブロックのうち、灰色に塗りつぶされた２２個の判定ブロックが第１非無地ブロックと判定されたものとする。
【００４９】
次に図４に戻って、装置プログラム３５は、ステップＳ１２でカウントした非無地ＢＫ１と、予め設定された第１閾値とを比較することによって、読取画像８０が無地か否かを判定する（Ｓ１３）。装置プログラム３５は、非無地ＢＫ１が第１閾値以上であることに応じて（Ｓ１３：Ｙｅｓ）、読取画像８０が無地でないと判定する。一方、装置プログラム３５は、非無地ＢＫ１が第１閾値未満であることに応じて（Ｓ１３：Ｎｏ）、読取画像８０が無地だと判定する。換言すれば、ステップＳ１２、Ｓ１３の処理は、第１無地判定処理の一例である。
【００５０】
次に、装置プログラム３５は、読取画像８０が無地でないと判定したことに応じて（Ｓ１３：Ｙｅｓ）、データ改変処理を実行する（Ｓ１４）。すなわち、装置プログラム３５は、読取画像データに対して指定改変処理を実行することによって、改変画像を示す改変画像データを生成する。本実施形態では、指定改変処理としてパンチ穴除去が指定されているものとする。すなわち、装置プログラム３５は、読取画像８０内でパンチ穴を示す円形画像の位置を特定する。そして、装置プログラム３５は、特定した位置の画素の画素値を、背景画素の画素値に置換する。
【００５１】
図６（Ｂ）は、図６（Ａ）に示される読取画像８０にパンチ穴除去を施した後の改変画像８１を示す。すなわち、図６（Ｂ）に示される改変画像８１は、図６（Ａ）のパンチ穴を示す円形画像が背景色に塗りつぶされた画像である。なお、図６（Ｂ）には、パンチ穴除去で除去された後の円形画像が一点鎖線で示されている。
【００５２】
次に、装置プログラム３５は、指定改変処理に除去処理が含まれているか否かを判断する（Ｓ１５）。ステップＳ１５の処理は、第１判断処理の一例である。次に、装置プログラム３５は、指定改変処理に除去処理が含まれていると判断したことに応じて（Ｓ１５：あり）、改変画像８１上の一部の領域を判定領域に決定する（Ｓ１６）。判定領域８２は、後述する第２無地判定処理において、無地か否かが判定される判定画像を含む領域である。ステップＳ１６の処理は、領域決定処理の一例である。
【００５３】
装置プログラム３５は、例えば、データ改変処理で改変された全ての画素を含む連続した領域を、判定領域に決定すればよい。また、装置プログラム３５は、指定改変処理の種類に対応した形状の領域を、判定領域に決定すればよい。「連続した領域」とは、例えば、単一の図形を構成する画素の集合を指す。すなわち、改変された複数の画素１つ１つを含む離散的な領域は、「連続した領域」には該当しない。
【００５４】
一例として、装置プログラム３５は、ステップＳ１４において、画素値を改変した画素を特定する特定情報を、データ記憶領域３２Ｂに一時記憶させる。そして、装置プログラム３５は、ステップＳ１６において、一時記憶させた特定情報で特定される全ての画素を含む連続した領域を、判定領域に決定すればよい。他の例として、装置プログラム３５は、ステップＳ１４において、画素値を改変した画素を含む判定ブロックを特定する特定情報を、データ記憶領域３２Ｂに一時記憶させる。そして、装置プログラム３５は、ステップＳ１６において、一時記憶させた特定情報で特定される全ての判定ブロックを含む連続した領域を、判定領域に決定すればよい。なお、特定情報は、例えば、改変画像８１の左上隅を限定とする座標を示してもよい。
【００５５】
具体的には、パンチ穴は原稿の外縁部に形成されることが多いので、パンチ穴除去に対応する判定領域の形状は、改変画像８１の外縁に沿って形成される枠型の図形を構成するものであってもよい。また、パンチ穴は２つ１組で原稿に形成されることが多いので、パンチ穴除去に対応する判定領域の形状は、一対の円形画像を含む矩形の図形を構成するものであってもよい。
【００５６】
本実施形態に係る装置プログラム３５は、図７（Ｂ）に示されるように、パンチ穴を示す円形画像が存在していた場所を含む矩形の領域を、判定領域８２に決定したものとする。装置プログラム３５は、例えば、判定領域８２の左上隅及び右下隅の画素の位置を、判定領域８２を特定する領域情報として、データ記憶領域３２Ｂに一時記憶させる。すなわち、図７（Ｂ）に示される判定領域８２は、データ改変処理で画素値が改変された画素と、データ改変処理で画素値が改変されていない画素との両方を含む。
【００５７】
次に、装置プログラム３５は、非無地ＢＫ１’と、ステップＳ１３で用いた第１閾値とを比較する（Ｓ１７）。非無地ＢＫ１’は、判定領域８２の外側に位置する第１非無地ブロックの数を示す。装置プログラム３５は、例えば、ステップＳ３５で記憶した位置情報ｎと、ステップＳ１６で記憶した領域情報とに基づいて、非無地ＢＫ１’を算出することができる。すなわち、非無地ＢＫ１’は、ステップＳ１２でカウントした非無地ＢＫ１以下となる。図７（Ａ）及び（Ｂ）を比較すると、本実施形態に係る非無地ＢＫ１’は、３となる。ステップＳ１７の処理は、第２判断処理の一例である。
【００５８】
次に、装置プログラム３５は、非無地ＢＫ１’が第１閾値未満であることに応じて（Ｓ１７：Ｎｏ）、後述する第２無地判定処理に用いる第２閾値を決定する（Ｓ１８）。第２閾値は、第１閾値より小さい値である。また、第２閾値は、判定領域８２に含まれる画素数及び非無地ＢＫ１’によって変動する。装置プログラム３５は、例えば、判定領域８２に含まれる画素数が多いほど第２閾値を大きくし、非無地ＢＫ１’が大きいほど第２閾値を小さくする。
【００５９】
［非無地ＢＫ２カウント処理］
次に、装置プログラム３５は、非無地ＢＫ２カウント処理を実行する（Ｓ１９）。非無地ＢＫ２カウント処理は、ステップＳ１６で決定された判定領域８２で示される判定画像のうち、無地でない領域の広さを算出する処理である。図５を参照して、非無地ＢＫ２カウント処理の詳細を説明する。
【００６０】
装置プログラム３５は、ステップＳ３１で区画したＮ個の判定ブロックのうち、判定領域８２に重なるＭ個の判定ブロックを特定する（Ｓ４１）。すなわち、Ｍ≦Ｎとなる。また、「判定領域８２に重なる判定ブロック」とは、判定ブロック全体が判定領域８２の内側に位置することに限定されず、判定ブロックの一部が判定領域８２の内側に位置し、他の一部が判定領域８２の外側に位置する場合も含むものとする。ステップＳ４１の処理は、特定処理の一例である。
【００６１】
次に、装置プログラム３５は、非無地ＢＫ２カウント処理で使用する変数を初期化する（Ｓ４２）。ｍは、ステップＳ４３〜Ｓ４６で処理の対象となる判定ブロックを特定する変数であって、ステップＳ４２でｍ＝１に初期化される。以下、変数ｍで特定される判定ブロックを、第ｍブロックと表記する。非無地ＢＫ２は、ステップＳ４３〜Ｓ４６で第２非無地ブロックと判定された判定ブロックの数を示す変数であって、ステップＳ４２で非無地ＢＫ２＝０に初期化される。
【００６２】
次に、装置プログラム３５は、第ｍブロックが無地か否かを判断する（Ｓ４３）。ステップＳ４３の処理は、ステップＳ３３と同様であってもよい。ステップＳ４３で無地でないと判定された判定ブロックは、第２非無地ブロックの一例である。そして、装置プログラム３５は、第ｍブロックが無地でないと判断したことに応じて（Ｓ４３：Ｎｏ）、非無地ＢＫ２に１を加算する（Ｓ４４）。一方、装置プログラム３５は、第ｍブロックが無地だと判断したことに応じて（Ｓ４３：Ｙｅｓ）、ステップＳ４４の処理を実行しない。そして、装置プログラム３５は、変数ｍが判定ブロックの数Ｍ未満であることに応じて（Ｓ４５：Ｎｏ）、変数ｍに１を加算して（Ｓ４６）、ステップＳ４３、Ｓ４４の処理を実行する。
【００６３】
すなわち、装置プログラム３５は、変数ｍが判定ブロックの数Ｍに達するまで（Ｓ４５：Ｙｅｓ）、ステップＳ４３〜Ｓ４６の処理を繰り返し実行する。換言すれば、装置プログラム３５は、判定領域８２に含まれる全ての判定ブロックが無地か否かを判定する。ステップＳ４３〜Ｓ４６の処理は、Ｍ個の判定ブロックのうちの第２非無地ブロックの数をカウントする第２カウント処理の一例である。本実施形態に係る非無地ＢＫ２カウント処理では、図７（Ｂ）の判定領域８２内の複数の判定ブロックのうち、灰色に塗りつぶされた１個の判定ブロックが第２非無地ブロックと判定されたものとする。
【００６４】
再び図３に戻って、装置プログラム３５は、ステップＳ１９でカウントした非無地ＢＫ２と、ステップＳ１８で決定した第２閾値とを比較することによって、判定領域８２に含まれる判定画像が無地か否かを判定する（Ｓ２０）。装置プログラム３５は、非無地ＢＫ２が第２閾値以上であることに応じて（Ｓ２０：Ｙｅｓ）、判定画像が無地でないと判定する。一方、装置プログラム３５は、非無地ＢＫ２が第２閾値未満であることに応じて（Ｓ２０：Ｎｏ）、判定画像が無地だと判定する。ステップＳ１９、Ｓ２０の処理は、第２無地判定処理の一例である。
【００６５】
そして、装置プログラム３５は、判定画像が無地でないと判定したことに応じて（Ｓ２０：Ｙｅｓ）、ステップＳ１４で改変された改変画像データを、通信部２５を通じて情報処理端末５０に送信する（Ｓ２１）。ステップＳ２１の処理は、出力処理の一例である。一方、図示は省略するが、端末プログラム６５は、通信部５５を通じて複合機１０から改変画像データを受信する。そして、端末プログラム６５は、受信した改変画像データをデータ記憶領域６２Ｂに記憶させてもよいし、受信した改変画像データで示される改変画像８１を表示部５３に表示させてもよいし、受信した改変画像データを通信部５５を通じて不図示のストレージサーバに送信してもよい。
【００６６】
一方、装置プログラム３５は、指定改変処理に除去処理が含まれていないと判断したことに応じて（Ｓ１５：なし）、ステップＳ１６〜Ｓ２０の処理を実行することなく、ステップＳ２１の処理を実行する。また、装置プログラム３５は、非無地ＢＫ１’が第１閾値以上であることに応じて（Ｓ１７：Ｙｅｓ）、ステップＳ１８〜Ｓ２０の処理を実行することなく、ステップＳ２１の処理を実行する。また、装置プログラム３５は、読取画像８０が無地だと判定したことに応じて（Ｓ１３：Ｎｏ）、ステップＳ１４〜Ｓ２１の処理を実行することなく、画像出力処理を終了する。さらに、装置プログラム３５は、判定画像が無地だと判定したことに応じて（Ｓ２０：Ｎｏ）、ステップＳ２１の処理を実行することなく、画像出力処理を終了する。
【００６７】
［本実施形態の作用効果］
上記の実施形態によれば、除去処理が実行された後に第２無地判定処理が実行されるので、除去処理によって無地になった改変画像データが出力されるのを抑制できる。また、第２無地判定処理で判定する判定領域８２を改変画像８１の一部に限定したので、無地判定処理を２回実行することによる処理速度の低下を抑制できる。また、判定ブロックの数が増加すると、無地判定処理の処理量が大きくなる。そこで上記の実施形態のように、読取解像度に応じて判定ブロックに含まれる画素数を増減させることにより、判定ブロックの数が大幅に増加するのを抑制できる。
【００６８】
また、上記の実施形態のように、改変画像８１上の連続した領域を判定領域８２とすることにより、データ改変処理で改変された画素１つ１つの位置を記憶する場合と比較して、位置の記憶に必要なメモリ量を削減することができる。また、改変画像８１上で画素値が改変された領域は、改変処理の内容によって異なる。そこで上記の実施形態のように、指定された改変処理の内容に適合した形状の判定領域を決定するのが望ましい。
【００６９】
なお、非無地ＢＫ１’が第１閾値未満である場合とは、除去処理によって改変画像８１が無地になったか否かが不明な状態である。このような場合には、第２無地判定処理を実行することにより、除去処理によって無地になった改変画像データが出力されるのを抑制できる。一方、非無地ＢＫ１’が第１閾値以上の場合とは、第２無地判定処理を実行するまでもなく、改変画像８１が無地でないと判定できる。そこで、このような場合には、第２無地判定処理をスキップすることにより、処理速度の低下をさらに抑制できる。また、非無地ＢＫ１’が大きいほど、判定領域８２内の画素値の改変が第２無地判定処理の結果に与える影響が小さくなる。そこで上記構成のように、非無地ＢＫ１’が大きいほど第２閾値を小さくして、判定画像が無地と判定され難くするのが望ましい。
【００７０】
また、ステップＳ２１で実行される出力処理は、画像データを情報処理端末５０に送信する処理に限定されない。例えば、装置プログラム３５は、ステップＳ１４で改変された画像データを、プリント動作によってプリンタ部１１に出力させてもよいし、不図示の装着部に装着された可搬記憶媒体（例えば、ＵＳＢメモリ等）に出力させてもよいし、不図示のＦＡＸ部にＦＡＸ送信させてもよい。
【００７１】
また、装置プログラム３５は、情報処理端末５０からスキャン指示情報を受信することに代えて、スキャン動作の実行を指示するユーザ操作を操作部２４を通じて受け付けたことに応じて、図３に示される画像出力処理を開始してもよい。すなわち、図３に示される画像出力処理は、複合機１０のみで実現されてもよい。この場合、スキャン動作の実行条件も操作部２４を通じて受け付ければよい。
【００７２】
さらに、図３に示される画像出力処理の一部は、装置プログラム３５に代えて、端末プログラム６５によって実行されてもよい。すなわち、装置プログラム３５は、スキャナ部１２に生成させた読取画像データを、通信部２５を通じて情報処理端末５０に送信すればよい（Ｓ１１、Ｓ２１）。一方、端末プログラム６５は、通信部５５を通じて複合機１０から読取画像データを受信する。そして、端末プログラム６５は、受信した読取画像データに対してステップＳ１２〜Ｓ２１の処理を実行する。すなわち、本発明のコンピュータは、プリンタ部１１及びスキャナ部１２と通信バス３３を通じて接続されたＣＰＵ３１であってもよいし、通信ネットワーク１０１を通じて複合機１０と接続された情報処理端末５０であってもよい。
【００７３】
また、上記の実施形態の複合機１０及び情報処理端末５０において、記憶部３２、６２のプログラム記憶領域３２Ａ、６２Ａに記憶された各種プログラムがＣＰＵ３１、６１によって実行されることによって、本発明の制御部が実行する各処理が実現される例を説明した。しかしながら、制御部の構成はこれに限定されず、その一部又は全部を集積回路（ＩＣとも言う。）等のハードウェアで実現してもよい。
【００７４】
さらに、本発明は、複合機１０及び情報処理端末５０として実現できるだけでなく、複合機１０及び情報処理端末５０に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな記録媒体に記録されて提供されてもよい。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな記録媒体は、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の他、通信ネットワーク１０１を通じて複合機１０及び情報処理端末５０に接続可能なサーバに搭載された記憶部を含んでもよい。そして、サーバの記憶部に記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット等の通信ネットワーク１０１を通じて配信されてもよい。
【符号の説明】
【００７５】
１０・・・複合機
１１・・・プリンタ部
１２・・・スキャナ部
２３，５３・・・表示部
２４，５４・・・操作部
２５，５５・・・通信部
３１，６１・・・ＣＰＵ
３２，６２・・・記憶部
３５・・・装置プログラム
５０・・・情報処理端末
６５・・・端末プログラム
【図１】
0006631272.tif 000002
【図２】
0006631272.tif 000003
【図３】
0006631272.tif 000004
【図４】
0006631272.tif 000005
【図５】
0006631272.tif 000006
【図６】
0006631272.tif 000007
【図７】
0006631272.tif 000008