(57)【要約】 【課題】  囲み線を適切に特定することができる技術を提供する。【解決手段】  画像処理装置は、対象画像内のオブジェクトを特定する特定部と、オブジェクトが判定条件を満たす場合に、オブジェクトは、囲み線であると判定する判定部と、を備える。判定部は、オブジェクトを構成する複数個の特定画素のそれぞれに対応する複数個の枠領域を設定する設定部と、枠領域に含まれる部分領域の個数を判断する第１の判断部であって、部分領域は、１個以上の特定画素が連続して並ぶ領域である、第１の判断部と、複数個の特定画素に対する第１の特定画素の割合が第１の基準以上であるか否かを判断する第２の判断部であって、第１の特定画素は、複数個の特定画素のうち、対応する枠領域に含まれる部分領域の個数が２個である特定画素である、第２の判断部と、を備える。判定条件は、第１の特定画素の割合が第１の基準以上であることを含む。【選択図】  図８
2014182622.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
対象画像データによって表される対象画像内のオブジェクトを特定するオブジェクト特定部と、
前記オブジェクトが判定条件を満たす場合に、前記オブジェクトは、前記対象画像内の一部の領域を囲む囲み線であると判定する判定部と、
を備え、
前記判定部は、
前記オブジェクトを構成する複数個の特定画素のそれぞれに対応する複数個の枠領域を設定する設定部であって、前記枠領域は、対応する前記特定画素が、前記枠領域と、前記枠領域の内側と、のいずれかの位置に含まれる枠状の領域である、前記設定部と、
複数個の前記枠領域のそれぞれについて、前記枠領域に含まれるオブジェクト部分領域の個数を判断する第１の判断部であって、前記オブジェクト部分領域は、前記オブジェクトを構成する１個以上の前記特定画素が連続して並ぶ領域である、前記第１の判断部と、
前記オブジェクトを構成する複数個の前記特定画素に対する第１の特定画素の割合が第１の基準以上であるか否かを判断する第２の判断部であって、第１の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数が２個である前記特定画素である、前記第２の判断部と、
を備え、
前記判定条件は、前記第１の特定画素の割合が前記第１の基準以上であることを含む、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記判定部は、
複数個の第２の特定画素に対する特定領域内の前記第２の特定画素の割合が第２の基準以上であるか否かを判断する第３の判断部であって、前記第２の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数がＭ個（Ｍは、１、３、４のうちのいずれかの整数）である前記特定画素であり、前記特定領域は、複数個の前記第２の特定画素の位置に基づいて設定される領域である、前記第３の判断部
を備え、
前記判定条件は、前記第２の特定画素の割合が前記第２の基準以上であることを含む、画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置であって、
前記判定部は、
前記オブジェクトを構成する複数個の前記特定画素に対する第３の特定画素の割合が第３の基準未満であるか否かを判断する第４の判断部であって、前記第３の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数が５個以上である前記特定画素である、前記第４の判断部
を備え、
前記判定条件は、前記第３の特定画素の割合が前記第３の基準未満であることを含む、画像処理装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の画像処理装置であって、
前記枠領域のサイズおよび特定領域のサイズの少なくとも一方は、前記対象画像データが第１の解像度である場合に、第１の画素数に設定され、前記対象画像データが第２の解像度である場合に、第２の画素数に設定され、
前記特定領域は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数がＭ個（Ｍは、１、３、４のうちのいずれかの整数）である第２の特定画素の位置に基づいて設定される領域である、画像処理装置。
【請求項５】
請求項１ないし請求項４のいずれかに記載の画像処理装置であって、
前記枠領域のサイズおよび前記特定領域のサイズの少なくとも一方は、前記オブジェクトのサイズが第１のサイズである場合に、第１の領域サイズに設定され、前記オブジェクトのサイズが第２のサイズである場合に、第２の領域サイズに設定される、画像処理装置。
【請求項６】
請求項１ないし請求項５のいずれかに記載の画像処理装置であって、さらに、
前記オブジェクトを構成する画素が連続して並ぶ個数によって規定されるオブジェクトの幅を特定する幅特定部を備え、
前記枠領域のサイズおよび前記特定領域のサイズの少なくとも一方は、前記オブジェクトの幅が第１の幅である場合に、第３の領域サイズに設定され、前記オブジェクトの幅が第２の幅である場合に、第４の領域サイズに設定される、画像処理装置。
【請求項７】
請求項６に記載の画像処理装置であって、
前記幅特定部は、前記オブジェクトを通り、前記特定方向に延びる複数の直線上において、前記オブジェクトを構成する画素が前記特定方向に連続する個数をそれぞれ算出することによって、前記オブジェクトの幅を特定する、画像処理装置。
【請求項８】
請求項１ないし請求項７のいずれかに記載の画像処理装置であって、
前記第１の判断部は、前記枠領域が、第１のオブジェクト部分領域と第２のオブジェクト部分領域とを含む複数個の前記オブジェクト部分領域を含む場合であって、前記第１のオブジェクト部分領域と前記第２のオブジェクト部分領域とが所定の近接条件を満たす場合には、前記第１のオブジェクト部分領域と前記第２のオブジェクト部分領域は、前記第１のオブジェクト部分領域と前記第２のオブジェクト部分領域とが結合された１個の前記オブジェクト部分領域であると判断する、画像処理装置。
【請求項９】
請求項１ないし請求項８のいずれかに記載の画像処理装置であって、
前記囲み線は、前記対象画像内のオブジェクトを囲む線であり、
前記画像処理装置は、さらに、
前記対象画像において、前記囲み線であると判定された第１のオブジェクトによって囲まれた第２のオブジェクトを特定し、特定された前記第２のオブジェクトを含む部分画像を表す部分画像データを用いて、所定の画像処理を実行する処理部
を備える、画像処理装置。
【請求項１０】
画像処理を実行するためのコンピュータプログラムであって、
対象画像データによって表される対象画像内のオブジェクトを特定するオブジェクト特定機能と、
前記オブジェクトが判定条件を満たす場合に、前記オブジェクトは、前記対象画像内の一部の領域を囲む囲み線であると判定する判定機能と、
を備え、
前記判定機能は、
前記オブジェクトを構成する複数個の特定画素のそれぞれに対応する複数個の枠領域を設定する設定機能であって、前記枠領域は、対応する前記特定画素が、前記枠領域と、前記枠領域の内側と、のいずれかの位置に含まれる枠状の領域である、前記設定機能と、
複数個の前記枠領域のそれぞれについて、前記枠領域に含まれるオブジェクト部分領域の個数を判断する第１の判断機能であって、前記オブジェクト部分領域は、前記オブジェクトを構成する１個以上の前記特定画素が連続して並ぶ領域である、前記第１の判断機能と、
前記オブジェクトを構成する複数個の前記特定画素に対する第１の特定画素の割合が第１の基準以上であるか否かを判断する第２の判断機能であって、第１の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数が２個である前記特定画素である、前記第２の判断機能と、
を備え、
前記判定条件は、前記第１の特定画素の割合が前記第１の基準以上であることを含む、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理技術に関し、特に、処理対象の画像内のオブジェクトに関する判断を実行する画像処理技術に関する。
【背景技術】
【０００２】
画像データに対する画像処理によって、画像データによって表される画像内の所定のオブジェクトを特定する技術が知られている。例えば、特許文献１には、色差や濃度差に基づくアルゴリズムや、オペレータによる画像内の基準点の指定に基づいて、画像内の輪郭線を特定する画像処理技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−９２６５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、画像処理によって、画像内の一部の領域を囲む囲み線を特定することは有用である。例えば、囲み線が、画像内の一部の領域を指定するために用いられている場合には、画像処理装置は、画像処理によって囲み線を特定することによって、指定された領域を認識することができる。
【０００５】
本発明の目的は、画像処理によって、画像内の一部の領域を囲む囲み線を適切に特定することができる新たな技術を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、対象画像データによって表される対象画像内のオブジェクトを特定するオブジェクト特定部と、前記オブジェクトが判定条件を満たす場合に、前記オブジェクトは、前記対象画像内の一部の領域を囲む囲み線であると判定する判定部と、を備え、前記判定部は、前記オブジェクトを構成する複数個の特定画素のそれぞれに対応する複数個の枠領域を設定する設定部であって、前記枠領域は、対応する前記特定画素が、前記枠領域と、前記枠領域の内側と、のいずれかの位置に含まれる枠状の領域である、前記設定部と、複数個の前記枠領域のそれぞれについて、前記枠領域に含まれるオブジェクト部分領域の個数を判断する第１の判断部であって、前記オブジェクト部分領域は、前記オブジェクトを構成する１個以上の前記特定画素が連続して並ぶ領域である、前記第１の判断部と、前記オブジェクトを構成する複数個の前記特定画素に対する第１の特定画素の割合が第１の基準以上であるか否かを判断する第２の判断部であって、第１の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数が２個である前記特定画素である、前記第２の判断部と、を備え、前記判定条件は、前記第１の特定画素の割合が前記第１の基準以上であることを含む、画像処理装置。
【０００８】
上記構成によれば、オブジェクトを構成する複数個の特定画素のそれぞれに設定される枠領域に基づいて、オブジェクトが囲み線であるか否かを判定する。具体的には、２個のオブジェクト部分領域を含む枠領域に対応する第１の特定画素の割合を用いて、オブジェクトが囲み線であるか否かを判定する。この結果、オブジェクトが囲み線であるか否かを適切に判定することができる。
【０００９】
［適用例２］適用例１に記載の画像処理装置であって、前記判定部は、複数個の第２の特定画素に対する特定領域内の前記第２の特定画素の割合が第２の基準以上であるか否かを判断する第３の判断部であって、前記第２の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数がＭ個（Ｍは、１、３、４のうちのいずれかの整数）である前記特定画素であり、前記特定領域は、複数個の前記第２の特定画素の位置に基づいて設定される領域である、前記第３の判断部を備え、前記判定条件は、前記第２の特定画素の割合が前記第２の基準以上であることを含む、画像処理装置。
【００１０】
この構成によれば、Ｍ個のオブジェクト部分領域を含む枠領域に対応する第２の特定画素の割合を用いて、オブジェクトが囲み線であるか否かを判定する。この結果、オブジェクトが囲み線であるか否かを、さらに精度良く判定することができる。
【００１１】
［適用例３］適用例１または適用例２に記載の画像処理装置であって、
前記判定部は、
前記オブジェクトを構成する複数個の前記特定画素に対する第３の特定画素の割合が第３の基準未満であるか否かを判断する第４の判断部であって、前記第３の特定画素は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数が５個以上である前記特定画素である、前記第４の判断部を備え、前記判定条件は、前記第３の特定画素の割合が前記第３の基準未満であることを含む、画像処理装置。
【００１２】
この構成によれば、５個以上のオブジェクト部分領域を含む枠領域に対応する第３の特定画素の割合を用いて、オブジェクトが囲み線であるか否かを判定する。この結果、オブジェクトが囲み線であるか否かを、さらに精度良く判定することができる。
【００１３】
［適用例４］適用例１ないし適用例３のいずれかに記載の画像処理装置であって、前記枠領域のサイズおよび特定領域のサイズの少なくとも一方は、前記対象画像データが第１の解像度である場合に、第１の画素数に設定され、前記対象画像データが第２の解像度である場合に、第２の画素数に設定され、前記特定領域は、前記オブジェクトを構成する複数個の前記特定画素のうち、対応する前記枠領域に含まれる前記オブジェクト部分領域の個数がＭ個（Ｍは、１、３、４のうちのいずれかの整数）である第２の特定画素の位置に基づいて設定される領域である、画像処理装置。
【００１４】
この構成によれば、枠領域のサイズまたは特定領域のサイズを対象画像データの解像度に応じて、適切に設定することができる。
【００１５】
［適用例５］適用例１ないし適用例４のいずれかに記載の画像処理装置であって、前記枠領域のサイズおよび前記特定領域のサイズの少なくとも一方は、前記オブジェクトのサイズが第１のサイズである場合に、第１の領域サイズに設定され、前記オブジェクトのサイズが第２のサイズである場合に、第２の領域サイズに設定される、画像処理装置。
【００１６】
この構成によれば、枠領域のサイズまたは特定領域のサイズをオブジェクトのサイズに応じて、適切に設定することができる。
【００１７】
［適用例６］適用例１ないし適用例５のいずれかに記載の画像処理装置であって、さらに、前記オブジェクトを構成する画素が連続して並ぶ個数によって規定されるオブジェクトの幅を特定する幅特定部を備え、前記枠領域のサイズおよび前記特定領域のサイズの少なくとも一方は、前記オブジェクトの幅が第１の幅である場合に、第３の領域サイズに設定され、前記オブジェクトの幅が第２の幅である場合に、第４の領域サイズに設定される、画像処理装置。
【００１８】
この構成によれば、枠領域のサイズまたは特定領域のサイズをオブジェクトの幅に応じて、適切に設定することができる。
【００１９】
［適用例７］適用例６に記載の画像処理装置であって、前記幅特定部は、前記オブジェクトを通り、前記特定方向に延びる複数の直線上において、前記オブジェクトを構成する画素が前記特定方向に連続する個数をそれぞれ算出することによって、前記オブジェクトの幅を特定する、画像処理装置。
【００２０】
この構成によれば、オブジェクトの幅を適切に特定することができる。
【００２１】
［適用例８］適用例１ないし適用例７のいずれかに記載の画像処理装置であって、前記第１の判断部は、前記枠領域が、第１のオブジェクト部分領域と第２のオブジェクト部分領域とを含む複数個の前記オブジェクト部分領域を含む場合であって、前記第１のオブジェクト部分領域と前記第２のオブジェクト部分領域とが所定の近接条件を満たす場合には、前記第１のオブジェクト部分領域と前記第２のオブジェクト部分領域は、前記第１のオブジェクト部分領域と前記第２のオブジェクト部分領域とが結合された１個の前記オブジェクト部分領域であると判断する、画像処理装置。
【００２２】
互いに異なる複数個のオブジェクト部分領域が比較的近接している場合には、これらのオブジェクト部分領域を１個のオブジェクト部分領域とみなすことが適切である場合がある。この構成によれば、所定の近接条件を満たす複数のオブジェクト部分領域は、複数のオブジェクト部分領域が結合された１個のオブジェクト領域であると判断するので、オブジェクト部分領域の個数をより適切に判断し得る。
【００２３】
［適用例９］適用例１ないし適用例８のいずれかに記載の画像処理装置であって、前記囲み線は、前記対象画像内のオブジェクトを囲む線であり、前記画像処理装置は、さらに、前記対象画像において、前記囲み線であると判定された第１のオブジェクトによって囲まれた第２のオブジェクトを特定し、特定された前記第２のオブジェクトを含む部分画像を表す部分画像データを用いて、所定の画像処理を実行する処理部を備える、画像処理装置。
【００２４】
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理方法、これらの装置の機能または方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【００２５】
【図１】第１実施例における画像処理システムの構成を示すブロック図である。
【図２】画像処理システム１０００の動作を示すフローチャートである。
【図３】原稿および画像の一例を示す図である。
【図４】収縮処理と膨張処理を説明する図である。
【図５】オブジェクト判定処理のフローチャートである。
【図６】線判定処理の説明図である。
【図７】形状判定処理のフローチャートである。
【図８】形状判定処理の第１の説明図である。
【図９】形状判定処理の第２の説明図である。
【図１０】特定領域ＥＳを用いる判定について説明する図である。
【図１１】部分画像ＰＳＩの一例と部分二値画像ＰＢＩの一例を示す図である。
【図１２】内包関係判定処理のフローチャートである。
【図１３】変形例における交差数Ｍｖの算出方法について説明する図である。
【発明を実施するための形態】
【００２６】
Ａ．第１実施例：
Ａ−１：画像処理システム１０００の構成
図１は、第１実施例における画像処理システムの構成を示すブロック図である。画像処理システム１０００は、画像処理装置としてのサーバ４００と、複合機２００と、を備えている。サーバ４００は、インターネット７０に接続されており、複合機２００は、ＬＡＮ（Local Area Network）５０を介して、インターネット７０に接続されている。この結果、サーバ４００と複合機２００は、ＬＡＮ５０とインターネット７０とを介して、通信可能である。また、ＬＡＮ５０には、複合機２００の利用者のパーソナルコンピュータ５００が接続されていても良い。
【００２７】
サーバ４００は、ＣＰＵ４１０と、ＤＲＡＭなどの揮発性記憶装置４２０と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置４３０と、インターネット７０などのネットワークに接続するためのインタフェースを含む通信部４８０と、を備えている。揮発性記憶装置４２０には、ＣＰＵ４１０が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域４２１が設けられている。不揮発性記憶装置４３０には、後述する画像処理をＣＰＵ４１０に実現させるコンピュータプログラム４３１が格納されている。コンピュータプログラム４３１は、ＤＶＤ−ＲＯＭなどに記録された形態で提供され得る。
【００２８】
ＣＰＵ４１０は、コンピュータプログラム４３１を実行することにより、画像処理部３００として機能する。画像処理部３００は、処理対象の画像データ（対象画像データとも呼ぶ）を取得する画像データ取得部３１０と、対象画像データによって表される対象画像内のオブジェクトを特定するオブジェクト特定部３２０と、オブジェクトが所定の判定条件を満たす場合に、オブジェクトは囲み線であると判定するための３つの判定部３３０〜３５０と、囲み線に囲まれたオブジェクトを除去する処理を実行する除去処理部３６０と、を備えている。ここで、囲み線は、後述するように、対象画像内の一部の領域、例えば、他のオブジェクトを示す領域や、オブジェクトが含まれない背景領域を囲む線である。例えば、囲み線は、赤色のペンなどにより原稿上に形成され、この原稿を読み取ることによって得られる画像データ（スキャンデータ）によって表される画像上に現れる。
【００２９】
色判定部３３０は、第１の判定条件として、オブジェクトが単色であるか否かを判定する。線判定部３４０は、第２の判定条件として、オブジェクトが線であるか否かを判定する。形状判定部３５０は、第３の判定条件として、オブジェクトが、領域を囲む形状を有しているか否かを判定する。本実施例では、判定対象のオブジェクトが、第１〜第３の判定条件を全て満たす場合に、判定対象のオブジェクトは、囲み線であると判定される。形状判定部３５０は、枠領域設定部３５１と、交差数判断部３５２と、条件判断部３５３と、を備えている。これらの各機能部が行う具体的な画像処理については、後述する。
【００３０】
複合機２００は、ＣＰＵ２１０と、ＤＲＡＭなどの揮発性記憶装置２２０と、フラッシュメモリやハードディスクドライブなどの不揮発性記憶装置２３０と、プリンタ部２４０と、スキャナ部２５０と、タッチパネルやボタンなどの操作部２６０と、液晶ディスプレイなどの表示部２７０と、ＬＡＮ５０などのネットワークに接続するためのインタフェースを含む通信部２８０と、を備えている。
【００３１】
揮発性記憶装置２２０には、ＣＰＵ２１０が処理を行う際に生成される種々のデータを一時的に格納するバッファ領域２２１が設けられている。不揮発性記憶装置２３０には、制御プログラム２３１が格納されている。
【００３２】
プリンタ部２４０は、インクジェット方式やレーザー方式などの印刷方式を用いて印刷を実行する。スキャナ部２５０は、光電変換素子（例えば、ＣＣＤ、ＣＭＯＳ）を用いて原稿を読み取ることによってスキャンデータを生成する取得する。スキャンデータは、ＲＧＢ画素データによって構成されたビットマップデータ（ＲＧＢ画像データ）である。ＲＧＢ画素データは、レッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の３つの色成分の色成分値（本実施例の各色成分値は、２５６階調の階調値）を含む画素データである。以下では、色成分のうち、レッド成分をＲ成分とも呼び、グリーン成分をＧ成分とも呼び、ブルー成分をＢ成分とも呼ぶ。
【００３３】
ＣＰＵ２１０は、制御プログラム２３１を実行することにより、通信制御部１１０と、装置制御部１２０と、として機能する。装置制御部１２０は、例えば、プリンタ部２４０やスキャナ部２５０を制御して、コピー処理、印刷処理、スキャン処理などを実行する。通信制御部１１０は、外部機器との通信を制御する機能部であり、具体的には、後述する画像処理において、サーバ４００との間で、画像データの送受信を行う画像データ送受信部１１５を備えている。
【００３４】
Ａ−１：画像処理システム１０００の動作
サーバ４００の画像処理部３００は、処理対象の画像データ（対象画像データとも呼ぶ）に対して画像処理を実行して、処理済みの画像データを生成する。この画像処理を含む画像処理システム１０００の動作について説明する。
【００３５】
図２は、画像処理システム１０００の動作を示すフローチャートである。このフローチャートの処理は、複合機２００が、特定の動作モードの指定と、原稿ＳＣの読取指示を、利用者から受け付けた場合に実行される。この特定の動作モードは、原稿ＳＣから、囲み線に囲まれた特定のオブジェクトを除いた画像を表す画像データを生成するモードであり、特定オブジェクト除去モードとも呼ぶ。
【００３６】
処理が開始されると、ステップＳ１０５では、複合機２００の装置制御部１２０（図１）は、スキャナ部２５０を用いて原稿ＳＣを読み取ることによって、スキャンデータを生成する。
【００３７】
図３は、原稿および画像の一例を示す図である。図３（Ａ）には、スキャンデータによって表されるスキャン画像６０の一例が示されている。スキャン画像６０は、原稿ＳＣを表す画像であるから、図３（Ａ）は、原稿ＳＣの一例を示す図と言うこともできる。
【００３８】
スキャン画像６０（原稿ＳＣ）は、オブジェクトとして、４個の文字６１〜６４と、２個の描画６５、６７と、１個の写真６８と、囲み線６６と、を含んでいる。描画は、例えば、イラスト、表、グラフ、線図、ベクトルグラフィックス、模様などを表すオブジェクトである。囲み線６６は、オブジェクト除去モードで使用すべき囲み線の色として予め指定された色（本実施例では、赤）のペンを用いて、利用者によって原稿ＳＣに手書きされたオブジェクトである。利用者は、除去対象のオブジェクトを囲む囲み線を原稿ＳＣに手書きする。図３（Ａ）の例では、囲み線６６は、描画６５を囲んでいる。なお、３個の文字６１〜６３は、赤色の文字であり、１個の文字６４は、赤色ではない文字である。描画６５は、赤色の部分を含んでおらず、描画６７と写真６８は、赤色の部分を含んでいる。
【００３９】
続いて、ステップＳ１１０では、サーバ４００の画像データ送受信部１１５は、スキャンデータを、サーバ４００に対して送信する。例えば、スキャンデータは、ＪＰＥＧ圧縮されて、サーバ４００に送信される。この結果、サーバ４００の画像処理部３００の画像データ取得部３１０は、対象画像データとして、複合機２００からスキャンデータを取得する。
【００４０】
スキャンデータが取得されると、画像処理部３００は、スキャン画像６０内の囲み線を特定するための一連の処理を実行する（ステップＳ１２０〜Ｓ１４５）。
【００４１】
先ず、ステップＳ１２０では、オブジェクト特定部３２０は、囲み線の候補となるオブジェクトを特定するために、スキャンデータに対して二値化処理を実行して、二値画像データを生成する。具体的には、スキャンデータは、スキャン囲み線の色である赤色を表す色値を有する画素（赤色オブジェクト画素）と、赤色以外の色を表す色値を有する画素（非赤色画素）と、に二値化される。例えば、Ｒ成分値が基準値Ｒｔｈ以上、かつ、Ｇ成分値が基準値Ｇｔｈ以下、かつ、Ｂ成分値が基準値Ｂｔｈ以下である画素は、赤色オブジェクト画素に分類される。そして、Ｒ成分値が基準値Ｒｔｈより大きい、または、Ｇ成分値が基準値Ｇｔｈ未満、または、Ｂ成分値が基準値Ｂｔｈ未満である画素は、非赤色画素に分類される。なお、本実施例では、囲み線の色として赤色が想定されているので、本ステップにおいて、赤色オブジェクトが特定されているが、他の色が想定されている場合には、本ステップにおいて、当該他の色を含む範囲の色を有するオブジェクトが特定される。
【００４２】
図３（Ｂ）は、二値画像データによって表される二値画像６０Ａの一例を示す図である。二値画像６０Ａには、赤色オブジェクト画素によって構成される赤色オブジェクトとして、３個の文字６１Ａ〜６３Ａと、囲み線６６Ａと、描画６７および写真６８（図３（Ａ））の一部分である部分オブジェクト６７Ａ、６８Ａと、が含まれている。なお、文字６４および描画６５（図３（Ａ））は、赤色ではないので、二値画像６０Ａにおいて、赤色オブジェクトとして現れていない。
【００４３】
ステップＳ１２５では、オブジェクト特定部３２０は、赤色オブジェクトを収縮させる収縮処理と、赤色オブジェクトを膨張させる膨張処理とを、二値画像データに対してそれぞれ実行する。本実施例では、収縮処理が先に実行され、収縮処理済みの二値画像データ（収縮二値画像データ）に対して膨張処理が実行される。
【００４４】
図４は、収縮処理と膨張処理を説明する図である。図４（Ａ）には、二値画像６０Ａ（図３（Ｂ））の部分画像ＰＩ１が示されている。部分画像ＰＩ１は、収縮処理前の赤色オブジェクトの例としての囲み線６６Ａの一部と、ノイズ画素ＤＴを含んでいる。ノイズ画素ＤＴは、孤立した画素である。この孤立したノイズ画素ＤＴは、スキャン画像６０内のノイズによって二値画像６０Ａに現れた赤色オブジェクト画素であり、特定すべき赤色オブジェクトを構成していない。また、囲み線６６Ａは、断線した部分（断線部）ＮＴを含む場合がある。例えば、スキャン画像６０内の囲み線６６に、比較的色が薄い部分がある場合や、比較的線の幅が狭い部分がある場合などに、二値画像６０Ａ内の囲み線６６Ａに、断線部ＮＴが表れる場合がある。
【００４５】
収縮処理は、例えば、所定サイズのフィルタ、図４（Ａ）の例では、縦３画素×横３画素のサイズのフィルタＦＩ１を用いて実行される。具体的には、オブジェクト特定部３２０は、フィルタＦＩ１を、二値画像６０Ａを表す二値画像データに対して適用して、収縮二値画像データを生成する。すなわち、オブジェクト特定部３２０は、注目画素に、フィルタＦＩ１の中心位置ＣＣ１（図４（Ａ）参照）が重なるように、フィルタＦＩ１を二値画像６０Ａ上に配置する。オブジェクト特定部３２０は、フィルタＦＩ１の範囲内に、非赤色画素が１個でも存在する場合には、注目画素に対応する収縮二値画像内の画素を非赤色画素に設定する。そして、オブジェクト特定部３２０は、フィルタＦＩ１の範囲内に、非赤色画素がない場合、すなわち、フィルタＦＩ１の範囲内の９個の画素が、全て赤色オブジェクト画素であるには、注目画素に対応する収縮二値画内の画素を赤色オブジェクト画素に設定する。オブジェクト特定部３２０は、二値画像６０Ａの全ての画素を注目画素として、収縮二値画像内の対応する画素を、非赤色画素および赤色オブジェクト画素のいずれかに設定することによって、収縮二値画像を表す収縮二値画像データを生成する。この説明から解るように、赤色オブジェクトを収縮させる収縮処理は、非赤色オブジェクトによって構成される領域（主として背景領域）を膨張させる処理と言うこともできる。
【００４６】
図４（Ｂ）には、収縮二値画像のうちの、図４（Ａ）の部分画像ＰＩ１に対応する収縮部分画像ＰＩ２が示されている。収縮部分画像ＰＩ２には、ノイズ画素ＤＴが現れていないことから解るように、収縮処理によって、ノイズ画素ＤＴのような孤立した赤色オブジェクト画素を消去することができる。また、収縮部分画像ＰＩ２では、赤色オブジェクト、例えば、囲み線６６Ａが、部分画像ＰＩ１の囲み線６６Ａと比較して、細くなっている（収縮している）。また、収縮部分画像ＰＩ２では、囲み線６６Ａの断線部ＮＴが、部分画像ＰＩ１の囲み線６６Ａの断線部ＮＴと比較して、大きくなっている。
【００４７】
続く膨張処理は、例えば、所定サイズのフィルタ、図４（Ｂ）の例では、縦５画素×横５画素のサイズのフィルタＦＩ２を用いて実行される。具体的には、オブジェクト特定部３２０は、フィルタＦＩ２を、収縮二値画像を表す収縮二値画像データに対して適用して、膨張二値画像データを生成する。すなわち、オブジェクト特定部３２０は、注目画素に、フィルタＦＩ２の中心位置ＣＣ２（図４（Ｂ）参照）が重なるように、フィルタＦＩ２を収縮二値画像上に配置する。オブジェクト特定部３２０は、フィルタＦＩ２の範囲内に、赤色オブジェクト画素が１個でも存在する場合には、注目画素に対応する膨張二値画像内の画素を赤色オブジェクト画素に設定する。そして、オブジェクト特定部３２０は、フィルタＦＩ２の範囲内に、赤色オブジェクト画素がない場合、すなわち、フィルタＦＩ２の範囲内の２５個の画素が、全て非赤色画素であるには、注目画素に対応する膨張二値画内の画素を非赤色画素に設定する。オブジェクト特定部３２０は、収縮二値画像の全ての画素を注目画素として、膨張二値画像内の対応する画素を、非赤色画素および赤色オブジェクト画素のいずれかに設定することによって、膨張二値画像を表す膨張二値画像データを生成する。
【００４８】
図４（Ｃ）には、膨張二値画像のうちの、図４（Ａ）、（Ｂ）の部分画像ＰＩ１、ＰＩ２に対応する膨張部分画像ＰＩ３が示されている。膨張部分画像ＰＩ３の囲み線６６Ａには、断線部ＮＴが現れていないことから解るように、膨張処理によって、囲み線６６Ａに現れ得る断線部ＮＴを接続することができる。膨張部分画像ＰＩ３では、赤色オブジェクト、例えば、囲み線６６Ａが、部分画像ＰＩ１の囲み線６６Ａと比較して、太くなっている（膨張している）。
【００４９】
なお、上述したフィルタＦＩ１、ＦＩ２のサイズ、すなわち、収縮処理による収縮の程度、および、膨張処理による膨張の程度は、一例である。ただし、収縮処理を先に実行し、膨張処理を後に実行する場合には、膨張処理による膨張の程度（フィルタＦＩ２のサイズに対応する）は、収縮処理による収縮の程度（フィルタＦＩ１のサイズに対応する）より大きいことが好ましい。こうすれば、断線部ＮＴの接続を適切に実現することができる。仮に、収縮処理を先に実行し、膨張処理を後に実行する場合に、膨張処理による膨張の程度が、収縮処理による収縮の程度以下であると、収縮処理によって拡大した断線部ＮＴが膨張処理によって接続されない可能性がある。
【００５０】
また、上記実施例とは逆に、膨張処理を先に実行し、収縮処理を後に実行する場合には、膨張処理による膨張の程度は、収縮処理による収縮の程度より小さいことが好ましい。こうすれば、ノイズ画素ＤＴを適切に消去することができる。仮に、膨張処理を先に実行し、収縮処理を後に実行する場合に、膨張処理による膨張の程度が、収縮処理による収縮の程度以上であると、膨張処理によって拡大したノイズ画素ＤＴが収縮処理によって消去されない可能性がある。
【００５１】
以上説明した収縮・膨張処理（図２のステップＳ１２５）によって、ノイズ画素ＤＴの消去や、断線部ＮＴの接続を実現できるので、後に実行するオブジェクト判定処理において、囲み線の判定の精度を向上できる。また、無駄な処理（例えば、ノイズ画素ＤＴを判定対象のオブジェクトとする処理）を低減することにより、処理負荷を低減することができる。
【００５２】
続くステップＳ１３０（図２）では、オブジェクト特定部３２０は、収縮・膨張処理後の二値画像データを利用して、赤色オブジェクトを特定して、特定された赤色オブジェクトに識別子を付すラベリングを実行する。ラベリングの結果、例えば、赤色オブジェクトと、識別子とを、対応付けたラベルデータが生成される。
【００５３】
具体的には、オブジェクト特定部３２０は、連続する（互いに隣接する）１個以上の赤色オブジェクト画素で構成される１個の領域を、１個の赤色オブジェクトとして特定する。図３（Ｂ）の例では、３個の文字６１Ａ〜６３Ａと、囲み線６６Ａと、描画６７および写真６８（図３（Ａ））の一部分である部分オブジェクト６７Ａ、６８Ａと、が特定され、これらの赤色オブジェクトのそれぞれに、互いに異なる識別子が付される。
【００５４】
赤色オブジェクトが特定されると、ステップＳ１４５では、画像処理部３００は、オブジェクト判定処理を実行する。オブジェクト判定処理は、特定された複数個の赤色オブジェクト６１Ａ〜６３Ａ、６６Ａ〜６８Ａのそれぞれが、囲み線であるか否かを、赤色オブジェクトごとに判定する処理である。
【００５５】
図５は、オブジェクト判定処理のフローチャートである。ステップＳ２０５では、画像処理部３００は、処理対象の赤色オブジェクトを選択する。図３（Ｂ）の例では、３個の文字６１Ａ〜６３Ａと、囲み線６６Ａと、描画６７および写真６８の一部分である部分オブジェクト６７Ａ、６８Ａの中から、１個の赤色オブジェクトが処理対象として選択される。
【００５６】
ステップＳ２１０では、色判定部３３０は、処理対象の赤色オブジェクトが単色であるか否かを判定する単色判定処理を実行する。具体的には、色判定部３３０は、赤色オブジェクトの平均成分値（Ｒave1、Ｇave1、Ｂave1）を算出する。平均成分値（Ｒave1、Ｇave1、Ｂave1）は、処理対象の赤色オブジェクトを構成する全ての赤色オブジェクト画素の値の平均値を、色成分ごとに算出することによって得られる。次に、色判定部３３０は、平均成分値に近い成分値を有する赤色オブジェクト画素の割合（ＲＴ_R、ＲＴ_G、ＲＴ_B）を、以下の式（１）〜（３）を用いて、色成分ごとに算出する。
【００５７】
ＲＴ_R＝（ＰＮ_Rave1／ＰＮtotal）    ...（１）
ＲＴ_G＝（ＰＮ_Gave1／ＰＮtotal）    ...（２）
ＲＴ_B＝（ＰＮ_Bave1／ＰＮtotal）    ...（３）
【００５８】
ここで、ＰＮtotalは、処理対象の赤色オブジェクトを構成する赤色オブジェクト画素の全体の個数である。ＰＮ_Rave1、ＰＮ_Gave1、ＰＮ_Bave1は、平均成分値（Ｒave1、Ｇave1、Ｂave1）に近い成分値を有する赤色オブジェクト画素の個数であり、色成分ごとに算出される。なお、本実施例では、Ｒ成分値が、（Ｒave1−ΔＶ１）≦Ｒ≦（Ｒave1＋ΔＶ１）の範囲内である場合に、当該画素は、平均成分値に近いＲ成分値を有する画素であると判断される。同様に、Ｇ成分値が、（Ｇave1−ΔＶ１）≦Ｇ≦（Ｇave1＋ΔＶ１）の範囲内である場合に、当該画素は、平均成分値に近いＧ成分値を有する画素であると判断される。Ｂ成分値が、（Ｂave1−ΔＶ１）≦Ｂ≦（Ｂave1＋ΔＶ１）の範囲内である場合に、当該画素は、平均成分値に近いＧ成分値を有する画素であると判断される。なお、例えば、ΔＶ１は、２５６階調の成分値に対して、例えば、７０に設定される。
【００５９】
そして、色判定部３３０は、成分ごとに算出された割合（ＲＴ_R、ＲＴ_G、ＲＴ_B）がそれぞれ基準値ＴＨ１以上である場合、すなわち、ＲＴ_R≧ＴＨ１、かつ、ＲＴ_G≧ＴＨ１、かつ、ＲＴ_B≧ＴＨ１である場合に、処理対象の赤色オブジェクトは単色であると判断する。また、色判定部３３０は、割合（ＲＴ_R、ＲＴ_G、ＲＴ_B）の少なくとも１つが基準値ＴＨ１未満である場合、すなわち、ＲＴ_R＜ＴＨ１、または、ＲＴ_G＜ＴＨ１、または、ＲＴ_B＜ＴＨ１である場合に、処理対象の赤色オブジェクトは単色でないと判断する。基準値ＴＨ１は、実験的に設定される設計値であり、例えば、０．６に設定される。囲み線は、薄い赤色のペンで記入される場合もあれば、濃い赤色のペンで記入される場合もあるので、ステップＳ１２０（図２）では、薄い赤、濃い赤などを含む比較的広い範囲内の色を有する画素を赤色オブジェクト画素として抽出している。このために、本ステップでは、赤色オブジェクトが単色であるか否かを比較的厳密に判定している。
【００６０】
単色判定処理によって、処理対象の赤色オブジェクトが単色でないと判定された場合には（ステップＳ２１５：ＮＯ）、画像処理部３００は、処理対象の赤色オブジェクトは囲み線ではないと判断する（ステップＳ２４５）。１個の囲み線は、記入の途中でペンを代えることなく、一筆書きで記入されるのが一般的であるので、囲み線は単色であると考えられる。例えば、濃い赤色のペンを用いて、記入された囲み線は、濃い赤色の単色であり、薄い赤色のペンを用いて、記入された囲み線は、薄い赤色の単色であると考えられる。このために、本実施例では、単色であることを、赤色オブジェクトが囲み線であると判定するための必要条件として採用している。この結果、赤色オブジェクトが囲み線であるか否かを適切に判定することができる。例えば、図３（Ｂ）の囲み線６６Ａは、単色であると判定される。また、例えば、Ｂ３（Ｂ）の部分オブジェクト６７Ａが、薄い赤色や濃い赤色などを含む多数の色を含んでいる場合には、部分オブジェクト６７Ａは、単色ではないと判定される。
【００６１】
処理対象の赤色オブジェクトが単色であると判定された場合には（ステップＳ２１５：ＹＥＳ）、線判定部３４０は、処理対象の赤色オブジェクトが線であるか否かを判定する線判定処理を実行する（ステップＳ２２０）。線判定処理は、赤色オブジェクトを含む処理領域内の所定の方向に延びる複数の直線上において、赤色オブジェクト画素の分布を解析する処理を用いて実行される。
【００６２】
図６は、線判定処理の説明図である。図６（Ａ）に示すように、二値画像６０Ａ内の囲み線６６Ａ（図３（Ｂ））が処理対象の赤色オブジェクトである場合を例に説明する。線判定部３４０は、囲み線６６Ａに外接する矩形領域ＳＩ１を処理領域として特定する。線判定部３４０は、矩形領域ＳＩ１内のＹ方向（図６の縦方向）に沿った線Ｌ１（ｐ）に沿って、連続する赤色オブジェクト画素の個数（連続画素数）を算出する。ｐは、Ｘ方向の線の位置を示す値であり、例えば、１≦ｐ≦Ｗの範囲内の値である（Ｗは、矩形領域ＳＩ１のＸ方向の長さ（画素数））。図６（Ａ）の例では、２つの連続画素数Ｌｈ１、Ｌｈ２が算出される。この場合には、線Ｌ１（ｐ）に対応する連続画素数ＬＮ１（ｐ）として、２つの連続画素数Ｌｈ１、Ｌｈ２の平均値（（Ｌｈ１＋Ｌｈ２）／２）を算出する。オブジェクト特定部３２０は、１≦ｐ≦Ｗの範囲内のＷ本の線Ｌ１（ｐ）の全てについて、それぞれ連続画素数ＬＮ１（ｐ）を算出する。
【００６３】
さらに、線判定部３４０は、矩形領域ＳＩ１内のＸ方向（図６の横方向）に沿った線Ｌ２（ｑ）に沿って、同様に、赤色オブジェクト画素の連続画素数を算出する。ｑは、線のＹ方向の線の位置（Ｙ座標）を示す値であり、例えば、１≦ｑ≦Ｈの範囲内の値である（Ｈは、矩形領域ＳＩ１のＹ方向の長さ（画素数））。図６（Ａ）の例では、２つの連続画素数Ｌｗ１、Ｌｗ２が算出される。この場合には、線Ｌ２（ｑ）に対応する連続画素数ＬＮ２（ｑ）として、２つの連続画素数ＬＷ１、ＬＷ２の平均値を算出する。オブジェクト特定部３２０は、１≦ｑ≦Ｈの範囲内のＨ本の線Ｌ２（ｑ）の全てについて、それぞれ連続画素数ＬＮ２（ｑ）を算出する。
【００６４】
このように、Ｘ方向とＹ方向に延びる複数の直線上において、赤色オブジェクト画素が連続する個数を算出することによって、オブジェクトの幅（線幅ＬＷ）を特定するので、オブジェクトの幅を適切に特定することができる。説明から解るように、線判定部３４０は、幅特定部の例である。
【００６５】
線判定部３４０は、Ｗ本の線Ｌ１（ｐ）について算出されたＷ個の連続画素数ＬＮ１（ｐ）と、Ｈ個の線Ｌ２（ｑ）について算出されたＨ個の連続画素数ＬＮ２（ｑ）と、の全ての平均値を、赤色オブジェクトの平均連続画素数ＬＮaveとして算出する。平均連続画素数ＬＮaveは、赤色オブジェクトが線である場合の線の幅を示している。線判定部３４０は、平均連続画素数ＬＮaveが基準値ＴＨ２以下である場合に、赤色オブジェクトは、線であると判定し、平均連続画素数ＬＮaveが基準値ＴＨ２未満である場合に、赤色オブジェクトは、線でないと判定する。基準値ＴＨ２は、例えば、想定されるペンの太さの最大値よりわずかに大きな値に設定され、具体的には、６００ｄｐｉのスキャンデータを対象画像データにする場合に、１２０程度に設定される。この結果、例えば、図３（Ｂ）の囲み線６６Ａは、線であると判定される。
【００６６】
図６（Ｂ）には、二値画像６０Ａ内の部分オブジェクト６８Ａ（図３（Ｂ））が処理対象の赤色オブジェクトである場合を例に説明する。このような赤色オブジェクトが線でない場合には、図６（Ｂ）に示すように、Ｙ方向の線Ｌ１（ｐ）についての連続画素数Ｌｈ３や、Ｘ方向の線Ｌ２（ｑ）についての連続画素数Ｌｗ３は、比較的大きくなる。この結果、部分オブジェクト６８Ａは、線判定処理において、線ではないと判定される。
【００６７】
線判定処理によって、処理対象の赤色オブジェクトが線でないと判定された場合には（ステップＳ２２５：ＮＯ）、画像処理部３００は、処理対象の赤色オブジェクトは囲み線ではないと判定する（ステップＳ２４５）。１個の囲み線は、赤色のペンで一筆書きされた一本の線であることが想定されるので、線であることを、赤色オブジェクトが囲み線であると判定するための必要条件として採用している。この結果、赤色オブジェクトが囲み線であるか否かを適切に判定することができる。
【００６８】
処理対象の赤色オブジェクトが線であると判定された場合には（ステップＳ２２５：ＹＥＳ）、形状判定部３５０は、処理対象の赤色オブジェクトが、スキャン画像６０内の一部の領域を囲む囲み形状を有しているか否かを判定する形状判定処理を実行する。
【００６９】
図７は、形状判定処理のフローチャートである。図８は、形状判定処理の第１の説明図である。図９は、形状判定処理の第２の説明図である。ステップＳ３０５では、形状判定部３５０は、赤色オブジェクトを構成する１個の赤色オブジェクト画素を注目画素として選択する。具体的には、形状判定部３５０は、矩形領域ＳＩ１（図８（Ａ））内を、Ｘ方向の複数本の線Ｌｘを、Ｙ方向の負方向側から（図８の上方から）順次に走査して、検出される順番に１個ずつ赤色オブジェクト画素を選択する。
【００７０】
ステップＳ３１０では、形状判定部３５０の枠領域設定部３５１は、選択された注目画素に対応する枠領域ＦＬを設定する。図８（Ｂ）には、注目画素ＮＰに対して設定される枠領域ＦＬの一例が示されている。図８（Ｂ）に示すように、枠領域ＦＬは、正方形の枠状の領域であり、枠の太さは、１画素分である。枠領域ＦＬのＸ方向およびＹ方向の幅（画素数）ＦＷは、図８（Ｃ）に示す式で表される。この式から解るように、枠領域ＦＬの幅ＦＷは、スキャン画像６０の読み取り解像度ＲＳ（単位はｄｐｉ(dot per inch)）と、赤色オブジェクトの線幅ＬＷ（単位は、画素）と、赤色オブジェクトのサイズＯＢＳ（単位は、画素）と、に応じて決定される。線幅ＬＷには、例えば、線判定処理（図５のステップＳ２２０）にて算出された平均連続画素数ＬＮaveが用いられる。オブジェクトサイズＯＢＳには、例えば、矩形領域ＳＩ１の横幅Ｗと縦幅Ｈの平均値（（Ｈ＋Ｗ）／２）が用いられる。枠領域ＦＬは、本実施例では、注目画素ＮＰが中心に位置するように、設定される。
【００７１】
続くステップＳ３１５では、形状判定部３５０の交差数判断部３５２は、枠領域内のオブジェクト部分領域の個数Ｍｖを算出する。オブジェクト部分領域は、枠領域ＦＬ内に、赤色オブジェクト画素が連続して並ぶ領域である。図８（Ｂ）の例では、２個のオブジェクト部分領域ＯＡ１、ＯＡ２が存在するので、個数Ｍｖの値は「２」である。ここで、個数Ｍｖを算出するのは、赤色オブジェクトと、枠領域ＦＬとが、交差する数を認識するためである。図８（Ｂ）に示すように、個数Ｍｖは、処理対象の赤色オブジェクトが枠領域ＦＬと交差する数を示していることが解る。このために個数Ｍｖを交差数Ｍｖとも呼ぶ。交差数Ｍｖが２である場合には、赤色オブジェクトは、枠領域ＦＬが配置された矩形（枠配置矩形）内において、注目画素ＮＰの位置（本実施例では、枠配置矩形の中心）を通り、枠配置矩形を横断する一本の線を成していると推定することができる。なお、枠領域ＦＬ内に位置すると言う場合には、１画素の太さの枠の内部に位置することを意味する。すなわち、枠領域ＦＬ内に位置する画素は、枠領域ＦＬを構成する画素と言い換えることができる。例えば、図８（Ｂ）において、オブジェクト部分領域ＯＡ１、ＯＢ２は、枠領域ＦＬ内に位置しているが、注目画素ＮＰや、オブジェクト部分領域ＯＡ１とオブジェクト部分領域ＯＢ２との間の複数個の赤色オブジェクト画素は、枠領域ＦＬ内には位置していない。また、枠配置矩形内に位置すると言う場合には、枠領域ＦＬ内または枠領域ＦＬの内側の領域に位置していることを意味する。例えば、図８（Ｂ）において、オブジェクト部分領域ＯＡ１、ＯＢ２、注目画素ＮＰ、オブジェクト部分領域ＯＡ１とオブジェクト部分領域ＯＢ２との間の複数個の赤色オブジェクト画素は、全て枠配置矩形内に位置している。
【００７２】
例えば、図８（Ａ）に示す枠領域ＦＬ２は、交差数Ｍｖが２である例を示しているが、赤色オブジェクトは、枠配置矩形内において、枠配置矩形の中心を通り、枠配置矩形を横断する一本の線を成していることが解る。一方、図８（Ａ）に示す枠領域ＦＬ１は、交差数Ｍｖが１である例を示しているが、赤色オブジェクトは、枠配置矩形内で終端を形成しているので、中心を通る一本の線ではあるが、枠配置矩形を横断してはいない。
【００７３】
図７のステップＳ３２０では、形状判定部３５０は、全ての赤色オブジェクト画素が注目画素として選択されたか否かを判断する。未選択の赤色オブジェクト画素がある場合には（ステップＳ３２０：ＮＯ）、形状判定部３５０は、ステップＳ３０５に戻って、未選択の赤色オブジェクト画素を選択して、上述したステップＳ３０５〜Ｓ３２０までの処理を繰り返す。全ての赤色オブジェクト画素が選択された場合には（ステップＳ３２０：ＹＥＳ）、形状判定部３５０は、ステップＳ３２５に処理を進める。ステップＳ３２５に移行して時点で、処理対象の赤色オブジェクトを構成する全ての赤色オブジェクト画素に対応する枠領域ＦＬについて、交差数Ｍｖが算出されている。以下では、交差数Ｍｖが「Ａ（Ａは、０以上の整数）」である枠領域ＦＬに対応する赤色オブジェクト画素を、単に、交差数Ｍｖが「Ａ」の赤色オブジェクト画素と言う。また、赤色オブジェクト画素に対応する枠領域ＦＬと赤色オブジェクトとの交差数Ｍｖが「Ａ」であることを、単に、赤色オブジェクト画素の交差数Ｍｖが「Ａ」である、と言う。
【００７４】
ステップＳ３２５では、全ての赤色オブジェクト画素に対する、交差数Ｍｖが２である赤色オブジェクト画素の割合ＲＴ２を算出する。交差数Ｍｖが２である赤色オブジェクト画素を、第１の特定画素とも呼ぶ。ステップＳ３３０では、形状判定部３５０の条件判断部３５３は、割合ＲＴ２が、基準値ＴＨａ以上であるか否かを判断する。形状判定部３５０は、割合ＲＴ２が、基準値ＴＨａ以上である場合には（ステップＳ３３０：ＹＥＳ）、赤色オブジェクトは、囲み形状であると判定する（ステップＳ３７０）。赤色オブジェクトが囲み形状である場合は、図８（Ａ）に示す枠領域ＦＬ２のように、大部分の赤色オブジェクト画素（注目画素）の交差数Ｍｖが２個になると考えられる。例外的に、図８（Ａ）に示す枠領域ＦＬ１のように、一筆書きされた囲み線の端部近傍の赤色オブジェクト画素の交差数Ｍｖは、２個にならない場合がある。また、ノイズなどによって、一部の赤色オブジェクト画素の交差数Ｍｖが２にならない可能性がある。このような事情を考慮して、基準値ＴＨａを適切に規定することによって、赤色オブジェクトが囲み形状であるか否かを適切に判定することができる。本実施例では、ＴＨａは、０．８５に設定されている。
【００７５】
図９を参照してさらに説明する。図９（Ａ）には、赤色オブジェクトが、文字６３Ａ（図３（Ｂ））である例を示している。図９（Ａ）に示す枠領域ＦＬ４は、交差数Ｍｖが３である例を示しているが、赤色オブジェクトは、枠配置矩形内において、３つに分岐した形状を有していることが解る。また、図９（Ａ）に示す枠領域ＦＬ５のように、文字の端部近傍の赤色オブジェクト画素は、交差数Ｍｖが１になる可能性が高い。このように、赤色オブジェクトが文字である場合には、３つ以上に分岐した部分や、３個以上の端部を有する場合が多いので、交差数Ｍｖが２ではない赤色オブジェクト画素の割合が、赤色オブジェクトが囲み形状である場合と比較して高くなる。赤色の文字は、単色判定処理（図５：ステップＳ２１０）において、単色であると判定され、線判定処理（図５：ステップＳ２２０）において、線であると判定される可能性が比較的高い。しかしながら、形状判定処理では、赤色の文字は、囲み形状ではないと判断される。したがって、形状判定処理では、割合ＲＴ２を用いて判断することによって、囲み線でない赤色オブジェクト（例えば、文字）は囲み形状ではないと判断し、囲み線である赤色オブジェクトは囲み形状であると、適切に判断することができる。
【００７６】
ここで、図８（Ｃ）の式に示すように、枠領域ＦＬの幅ＦＷは、解像度ＲＳが大きいほど大きく、赤色オブジェクトの線幅ＬＷが大きいほど大きく、オブジェクトサイズＯＢＳが大きいほど大きく、設定されている。この理由を説明する。枠領域ＦＬの幅ＦＷが、線幅ＬＷに対して過度に小さい場合には、例えば、極端な例では、枠領域ＦＬの枠配置矩形内の全体が、赤色オブジェクト画素で埋まり、分岐の数を示す交差数Ｍｖを適切に算出できない可能性がある。また、枠領域ＦＬの幅ＦＷが、オブジェクトサイズＯＢＳや線幅ＬＷに対して過度に大きい場合には、枠領域ＦＬの枠配置矩形内に、１個の赤色オブジェクトの互いに離れた複数の部分が配置される可能性が高くなる。例えば、枠領域ＦＬの枠配置矩形内に、複数の線が配置される可能性が比較的高くなる。この結果、注目画素ＮＰを通る１個の部分の分岐の数を示す交差数Ｍｖを適切に算出できない可能性がある。なお、解像度ＲＳが高いほど、１画素に対応する原稿上の寸法（例えば、３００ｄｐｉである場合には、（１／３００）インチ）が小さくなるので、画素数で示される枠領域ＦＬの幅ＦＷの値は、解像度ＲＳが高いほど大きくされる。この結果、原稿上において想定される囲み線のサイズに応じた適切な枠領域ＦＬの幅ＦＷ（画素数）を決定することができる。
【００７７】
形状判定部３５０は、交差数Ｍｖが２である赤色オブジェクト画素の割合ＲＴ２が、基準値ＴＨａ未満である場合には（ステップＳ３３０：ＮＯ）、ステップＳ３４０に処理を進める。ここで、交差数Ｍｖが２である赤色オブジェクト画素の割合ＲＴ２が、基準値ＴＨａ未満である場合に、直ちに、赤色オブジェクトは、囲み形状でないと判定しない。これは、交差数Ｍｖが２である赤色オブジェクト画素の割合ＲＴ２が、比較的少ない場合であっても、所定の条件を満たす場合には、赤色オブジェクトが囲み線である可能性があるからである。
【００７８】
例えば、図８（Ａ）に示す囲み線６６Ａでは、上述したように、交差数Ｍｖが１である赤色オブジェクト画素が、一筆書きの囲み線６６Ａの開始端と、終了端の近傍に存在している。具体的には、一筆書きの囲み線の両端（開始端と終了端）が、完全に一致していない場合、例えば、両端が離れている場合（図８（Ａ））、両端の一方の端部が、囲み線の他方の端部とは異なる位置に接している場合（図９（Ｂ））、両端の近傍で、囲み線が交差している場合（図９（Ｃ））には、交差数Ｍｖが１である赤色オブジェクト画素が存在し得る。
【００７９】
また、図９（Ｂ）に示すように、両端の一方の端部が、囲み線の他方の端部とは異なる位置に接している囲み線６６Ｂでは、交差数Ｍｖが３である赤色オブジェクト画素（図９（Ｂ）の枠領域ＦＬ７参照）が存在し得る。さらに、図９（Ｃ）に示すように、両端の近傍で交差している囲み線６６Ｃでは、交差数Ｍｖが４である赤色オブジェクト画素（図９（Ｂ）の枠領域ＦＬ９参照）が存在し得る。さらに、ノイズの影響がある場合を除いて、赤色オブジェクトが、一筆書きの囲み線である場合には、交差数Ｍｖが５以上である赤色オブジェクト画素は、存在しない。ここで、交差数Ｍｖが、「１、３、４」のうちのいずれかである赤色オブジェクト画素を、第２の特定画素とも呼ぶ。また、交差数Ｍｖが、「５」以上である赤色オブジェクト画素を、第３の特定画素とも呼ぶ。以上の説明から解るように、第１の特定画素の割合ＲＴ２が基準値ＴＨａ未満であっても、第２の特定画素や第３の特定画素の分布状況が、上記の囲み線の特徴を備えていれば、赤色オブジェクトが囲み線である可能性は比較的高いと言うことができる。このことを考慮して、ステップＳ３４０以降の処理が実行される。
【００８０】
ステップＳ３４０では、形状判定部３５０の条件判断部３５３は、全ての赤色オブジェクト画素に対する、交差数Ｍｖが５以上である赤色オブジェクト画素（第３の特定画素）の割合ＲＴ５を算出する。ステップＳ３５０では、形状判定部３５０の条件判断部３５３は、第３の特定画素の割合ＲＴ５が、基準値ＴＨｂ以下であるか否かを判断する。形状判定部３５０は、第３の特定画素の割合ＲＴ５が、基準値ＴＨｂより大きい場合には（ステップＳ３５０：ＮＯ）、赤色オブジェクトは、囲み形状でないと判定する（ステップＳ３７５）。上述したように、赤色オブジェクトが、一筆書きの囲み線である場合には、第３の特定画素は、ノイズなどの例外的な要因で第３の特定画素であると判断される場合を除いて、基本的に存在しないからである。基準値ＴＨｂは、例えば、赤色オブジェクトが囲み線である場合に、ノイズによって発生し得る第３の特定画素の個数の上限値より僅かに大きな値に設定される。具体的には、本実施例では、基準値ＴＨｂは、０．１に設定されている。形状判定処理では、割合ＲＴ５を用いて判断することによって、囲み線でない赤色オブジェクトを、判定対象から適切に除外することができる。
【００８１】
第３の特定画素の割合ＲＴ５が、基準値ＴＨｂ以下である場合には（ステップＳ３５０：ＹＥＳ）、形状判定部３５０は、後述する判定に用いる特定領域ＥＳを設定する（ステップＳ３５５）。図１０は、特定領域ＥＳを用いる判定について説明する図である。形状判定部３５０は、交差数Ｍｖが、「１、３、４」のうちのいずれかである複数個の赤色オブジェクト画素（第２の特定画素）の位置（座標）に基づいて、複数個の第２の特定画素の重心ＧＣを算出する。上述したように、赤色オブジェクトが囲み線である場合には、第２の特定画素は、一筆書きの囲み線の両端の近傍に集中して存在する（図８（Ａ）、図９（Ｂ）（Ｃ））。したがって、図１０（Ａ）に示すように、赤色オブジェクトが囲み線である場合には、重心ＧＣは、一筆書きの囲み線の両端の近傍に位置する。
【００８２】
形状判定部３５０は、重心ＧＣを中心として、正方形の特定領域ＥＳを設定する。特定領域ＥＳのＸ方向およびＹ方向の幅（画素数）ＥＷは、図１０（Ｂ）に示す式で表される。この式から解るように、特定領域ＥＳの幅ＥＷは、枠領域ＦＬの幅ＦＷ（図８（Ｃ））と同様に、スキャン画像６０の読み取り解像度ＲＳと、赤色オブジェクトの線幅ＬＷと、画素）と、赤色オブジェクトのサイズＯＢＳと、に応じて決定される。
【００８３】
続くステップＳ３６０では、形状判定部３５０の条件判断部３５３は、全ての第２の特定画素に対する、特定領域ＥＳ内に位置する第２の特定画素の割合ＲＴＣを算出する。ステップＳ３６５では、形状判定部３５０の条件判断部３５３は、第２の特定画素の割合ＲＴＣが、基準値ＴＨｃ以上であるか否かを判断する。形状判定部３５０は、第２の特定画素の割合ＲＴＣが、基準値ＴＨｃより小さい場合には（ステップＳ３６５：ＮＯ）、赤色オブジェクトは、囲み形状でないと判定する（ステップＳ３７５）。上述したように、赤色オブジェクトが、一筆書きの囲み線である場合には、第２の特定画素は、赤色オブジェクトの一部分に集中する、すなわち、一筆書きの囲み線の両端近傍（すなわち、特定領域ＥＳ内）に集中する。一方、文字を構成する線の端部は、文字内の複数の箇所に分散して存在する。例えば、文字「Ｙ」（図９（Ａ）参照）の端部は、文字「Ｙ」の下側の中央部分に１箇所、文字の右上部分と左上部分にそれぞれ１箇所ずつ存在する。また、文字を構成する線は、文字内で様々な数に分岐し得る。例えば、文字「Ｙ」（図９（Ａ）参照）は、中央部分で３つに分岐している。したがって、赤色オブジェクトが文字である場合には、第２の特定画素は、赤色オブジェクトの一部分に集中することなく、分散する可能性が高い。形状判定処理では、割合ＲＴＣを用いて判断することによって、囲み線でない赤色オブジェクト（例えば、文字）は囲み形状ではないと判断し、囲み線を示す赤色オブジェクトは囲み形状であると、適切に判断することができる。基準値ＴＨｃは、例えば、実験的に設定される設計値であり、本実施例では、０.５に設定されている。
【００８４】
第２の特定画素の割合ＲＴｃが、基準値ＴＨｃ以上である場合には（ステップＳ３６５：ＹＥＳ）、形状判定部３５０は、赤色オブジェクトは、囲み形状であると判定する（ステップＳ３７０）。
【００８５】
ここで、図１０（Ｂ）の式に示すように、特定領域ＥＳの幅ＥＷは、枠領域ＦＬの幅ＦＷ（図８（Ｃ））と同様に、解像度ＲＳが大きいほど大きく、赤色オブジェクトの線幅ＬＷが大きいほど大きく、オブジェクトサイズＯＢＳが大きいほど大きく、設定されている。特定領域ＥＳの幅ＥＷが、オブジェクトサイズＯＢＳに対して過度に大きい場合には、第２の特定画素が比較的広い範囲に広がって分布している場合であっても、割合ＲＴＣが基準値ＴＨｃ以上になる可能性がある。また、特定領域ＥＳの幅ＥＷが、オブジェクトサイズＯＢＳに対して過度に小さい場合には、第２の特定画素が比較的狭い範囲に集中している場合であっても、割合ＲＴＣが基準値ＴＨｃ未満になる可能性がある。このため、特定領域ＥＳは、オブジェクトサイズＯＢＳに対して適切なサイズに設定されることが好ましい。赤色オブジェクトの線幅ＬＷは、オブジェクトのサイズと相関があり、赤色オブジェクトが囲み線である場合に、オブジェクトのサイズが大きいほど、線幅ＬＷが太くなる可能性が高いと考えられる。また、解像度ＲＳが高いほど、１画素に対応する原稿上の寸法（例えば、３００ｄｐｉである場合には、（１／３００）インチ）が小さくなるので、画素数で示される特定領域ＥＳの幅ＥＷの値は、解像度ＲＳが高いほど大きくされる。この結果、原稿上において想定される囲み線のサイズに応じた適切な特定領域ＥＳの幅ＦＷ（画素数）を決定することができる。
【００８６】
ステップＳ３７０またはステップＳ３７５において、処理対象の赤色オブジェクトが囲み形状であるか否かが判定されると、形状判定処理は終了される。以上説明した形状判定処理において、処理対象の赤色オブジェクトが囲み形状であると判定するための条件は、以下の３つである。
（１）第１の特定画素の割合ＲＴ２が基準値ＴＨａ以上であること（ステップＳ３３０）
（２）第３の特定画素の割合ＲＴ５が基準値ＴＨｂ未満であること（ステップＳ３５０）
（３）第２の特定画素の割合ＲＴＣが基準値ＴＨｃ以上であること（ステップＳ３６５）
【００８７】
上記実施例では、条件（１）が満たされる場合には、他の条件とは無関係に、赤色オブジェクトは囲み形状である、と判定される。また、条件（２）と条件（３）は、両方が満たされる場合に限り、条件（１）が満たされない場合であっても、赤色オブジェクトは囲み形状であると、判定される。このような条件（１）〜（３）の使い方は一例であり、これに限られない。例えば、基準値ＴＨａ、ＴＨｂ、ＴＨｃを大きめに設定するか小さめに設定するかなどに応じて、これらの条件（１）〜（３）の使い方は、変化し得る。例えば、条件（１）と条件（２）が満たされる場合と、条件（２）と条件（３）が満たされる場合と、の２つの場合には、赤色オブジェクトは囲み形状である、と判定され、それ以外の場合には、赤色オブジェクトは囲み形状でない、と判定されても良い。また、条件（１）〜（３）の全部が満たされる場合のみに、赤色オブジェクトは囲み形状である、と判定されても良い。また、条件（２）および（３）の一方または両方は、判定されなくても良く、条件（１）が満たされた場合に、赤色オブジェクトは囲み形状であると判定され、条件（１）が満たされない場合に、赤色オブジェクトは囲み形状でないと判定されても良い。
【００８８】
図５に戻って説明を続ける。形状判定処理によって、処理対象の赤色オブジェクトが囲み形状でないと判定された場合には（ステップＳ２３５：ＮＯ）、画像処理部３００は、処理対象の赤色オブジェクトは囲み線ではないと判断する（ステップＳ２４５）。一方、形状判定処理によって、処理対象の赤色オブジェクトが囲み形状であると判定された場合には（ステップＳ２３５：ＹＥＳ）、画像処理部３００は、処理対象の赤色オブジェクトは囲み線であると判断する（ステップＳ２４０）。すなわち、赤色オブジェクトが、単色であり（ステップＳ２１５：ＹＥＳ）、かつ、線であり（ステップＳ２２５：ＹＥＳ）、かつ、囲み形状である（ステップＳ２３５：ＹＥＳ）場合に、当該赤色オブジェクトは、囲み線であると判定される。そして、赤色オブジェクトが、単色でない（ステップＳ２１５：ＮＯ）、または、線でない（ステップＳ２２５：ＮＯ）、または、囲み形状でない（ステップＳ２３５：ＮＯ）場合に、当該赤色オブジェクトは、囲み線でないと判定される。図３（Ｂ）の例では、囲み線６６Ａのみが囲み線であると判定され、文字６１Ａ〜６３Ａ、部分オブジェクト６７Ａ、６８Ａは囲み線でないと判定される。
【００８９】
ステップＳ２５０では、画像処理部３００は、全ての赤色オブジェクトが選択済みであるか否かを判断する。未選択の赤色オブジェクトがある場合には（ステップＳ２５０：ＮＯ）、画像処理部３００は、ステップＳ２０５に戻って、未選択の赤色オブジェクトを選択して、上述したステップＳ２０５〜Ｓ２５０までの処理を繰り返す。全ての赤色オブジェクトが選択された場合には（ステップＳ２５０：ＹＥＳ）、画像処理部３００は、オブジェクト判定処理を終了する。
【００９０】
オブジェクト判定処理が終了すると、続くステップＳ１５０（図２）では、特定された囲み線（囲み線であると判定された赤色オブジェクト）の中から、１個の囲み線を処理対象として選択する。図３の例では、１個の囲み線６６Ａ（図３（Ｂ））のみが特定されているので、当該囲み線６６Ａが選択される。
【００９１】
ステップＳ１５５では、画像処理部３００の除去処理部３６０は、除去対象のオブジェクトを含む部分画像データを生成する。具体的には、除去処理部３６０は、二値画像６０Ａにおいて、処理対象の囲み線６６に外接する外接矩形ＯＳ１（図３（Ｂ））を特定する。除去処理部３６０は、当該外接矩形ＯＳ１に対応する部分画像ＰＳＩ（図３（Ａ））を、スキャン画像６０から切り出すことによって、部分画像ＰＳＩを表す部分画像データを生成する。
【００９２】
図１１は、部分画像ＰＳＩの一例（図１１（Ａ））と、部分二値画像ＰＢＩの一例（図１１（Ｂ））を示す図である。図１１に示すように、部分画像ＰＳＩは、囲み線６６と、描画６５を、オブジェクトとして含んでいる。
【００９３】
ステップＳ１６０では、除去処理部３６０は、部分画像ＰＳＩ内のオブジェクトを特定するために、部分画像データに対して二値化処理を実行して、部分二値画像データを生成する。具体的には、部分画像データは、背景を構成する背景画素と、オブジェクトを構成するオブジェクト画素と、に二値化される。例えば、除去処理部３６０は、例えば、囲み線６６Ａ（図３（Ｂ））の近傍に位置する複数個の画素、例えば、囲み線６６Ａの外側に位置する複数個の画素であって、囲み線６６Ａに沿って配置された複数個の画素の値の平均値（Ｒave2、Ｇave2、Ｂave2）を、二値化のための基準の色として算出する。あるいは、除去処理部３６０は、スキャン画像６０において、部分画像ＰＳＩの外側に位置する画素であって、部分画像ＰＳＩの外縁に沿って配置された複数個の画素の値の平均値（Ｒave2、Ｇave2、Ｂave2）を、二値化のための基準の色として算出する。そして、除去処理部３６０は、（Ｒave2−ΔＶ２）≦Ｒ≦（Ｒave2＋ΔＶ２）、かつ、（Ｇave2−ΔＶ２）≦Ｇ≦（Ｇave2＋ΔＶ２）、かつ、（Ｂave2−ΔＶ２）≦Ｂ≦（Ｂave2＋ΔＶ２）を満たす画素値（ＲＧＢ値）を有する画素を背景画素に分類し、背景画素と決定すべき画素以外の画素をオブジェクト画素に分類する。除去処理部３６０は、部分画像ＰＳＩに含まれる全ての画素を、背景画素とオブジェクト画素とのいずれかに分類することによって、部分二値画像データを生成する。
【００９４】
ステップＳ１６５では、除去処理部３６０は、生成された部分二値画像データを用いて、オブジェクトを特定して、特定されたオブジェクトに識別子を付すラベリングを実行する。ラベリングの結果、例えば、オブジェクトと、識別子とを、対応付けたラベルデータが生成される。
【００９５】
具体的には、除去処理部３６０は、連続する（互いに隣接する）１個以上のオブジェクト画素で構成される１個の領域を、１個のオブジェクトとして特定する。図１１（Ｂ）の例では、部分二値画像ＰＢＩにおいて、オブジェクト画素によって構成されるオブジェクトとして、囲み線６６Ｄと、描画６５Ｄと、が特定され、これらのオブジェクトのそれぞれに、互いに異なる識別子が付される。なお、部分二値画像ＰＢＩ内に特定されるオブジェクトには、ステップＳ１５０で選択された処理対象の囲み線が含まれる。囲み線を表すオブジェクトには、例えば、囲み線であることが認識できるように、他のオブジェクトとは異なる特別な識別子が付される。
【００９６】
オブジェクトが特定されると、続くステップＳ１７０では、除去処理部３６０は、部分二値画像ＰＢＩに含まれる囲み線以外のオブジェクトが、囲み線に内包されているか否かを判定する内包関係判定処理を実行する。
【００９７】
図１２は、内包関係判定処理のフローチャートである。ステップＳ４０５では、除去処理部３６０は、部分二値画像ＰＢＩ内に特定されたオブジェクトの中から囲み線以外のオブジェクトを処理対象として選択する。図１１（Ｂ）の例では、描画６５Ｄが、処理対象のオブジェクトとして選択される。
【００９８】
ステップＳ４１０では、除去処理部３６０は、図１１（Ｂ）に示すように、４本の判定線Ａ１〜Ａ４を設定する。４本の判定線Ａ１〜Ａ４は、処理対象のオブジェクト（具体的には、描画６５Ｄ）の重心ＣＣを基点として、上方向（−Ｙ方向）、下方向（＋Ｙ方向）、左方向（−Ｘ方向）、右方向（＋Ｘ方向）にそれぞれ延びる半直線である。
【００９９】
ステップＳ４１５では、除去処理部３６０は、４本の判定線Ａ１〜Ａ４のそれぞれと、囲み線６６Ｄと、の交点の個数（交点数Ｍｘ）を、判定線ごとに特定する。具体的には、除去処理部３６０は、部分二値画像ＰＢＩにおいて、処理対象の判定線上の画素を、基点（重心ＣＣ）から外側に向かって順次に走査する。そして、除去処理部３６０は、判定線上に検出された交点の数をカウントする。例えば、図１１（Ｂ）の例では、４本の判定線Ａ１〜Ａ４のそれぞれと、囲み線６６Ｄとは、１個ずつ交点ＣＰ１〜ＣＰ４を有することが解る。
【０１００】
ステップＳ４２０では、除去処理部３６０は、交点数Ｍｘが奇数であるか否かを判定線ごとに判断し、４本の判定線Ａ１〜Ａ４のうち、交点数Ｍｘが奇数である判定線（以下、奇数判定線と呼ぶ）の数ＬＩｎを特定する。図１１（Ｂ）の例では、４本の判定線Ａ１〜Ａ４の交点数Ｍｘは、全て「１」であるので、奇数判定線ＬＩｎの数は「４」である。
【０１０１】
ステップＳ４２５では、除去処理部３６０は、奇数判定線の数ＬＩｎが３以上であるか否かを判断する。奇数判定線の数ＬＩｎが３以上である場合には（ステップＳ４２５：ＹＥＳ）、除去処理部３６０は、処理対象のオブジェクトは、囲み線６６Ｄに内包されていると判定する（ステップＳ４３０）。奇数判定線の数ＬＩｎが３未満である場合には（ステップＳ４２５：ＮＯ）、除去処理部３６０は、処理対象のオブジェクトは、囲み線６６Ｄに内包されていないと判定する（ステップＳ４３５）。
【０１０２】
囲み線６６Ｄが閉曲線であり、判定線の終点（部分二値画像ＰＢＩの画像の端）は、閉曲線の外側にあると仮定する。判定線の基点から終点に向かって走査する場合に、囲み線６６Ｄとの交点を通過する度に、判定線上の注目点（走査位置）の内外関係が変化する。内外関係が変化するとは、注目点の位置が、囲み線の内側から外側に変化する、あるいは、囲み線の外側から内側に変化することを意味する。したがって、判定線の基点が囲み線の内側に位置する場合には、判定線の基点から終点までの間の交点数Ｍｘは、終点が必ず囲み線の外側に位置することを考慮すると、奇数になることが解る。
【０１０３】
逆に、判定線の基点が囲み線の外側に位置する場合には、判定線の基点から終点までの間の交点数Ｍｘは、偶数になることが解る。例えば、仮に、囲み線６６Ｄの外側に位置するサンプル点ＳＰ１（図１１（Ｂ））から上下左右方向にそれぞれ延びる４本の判定線Ａ５〜Ａ８を考える。２本の判定線Ａ５、Ａ７は、それぞれ囲み線６６Ｄとの間に、２個の交点を有する（図１１（Ｂ）のＣＰ５〜ＣＰ８）。一方、他の２本の判定線Ａ６、Ａ８は、いずれも囲み線６６Ｄとの間に交点を有さない（０個の交点を有する）。このように、囲み線６６Ｄの外側に位置するサンプル点ＳＰ１を基点とする判定線の基点から終点までの間の交点数Ｍｘは、偶数（この例では、０または２）である。
【０１０４】
このように、処理対象のオブジェクト上を基点とする判定線を設定すれば、判定線と囲み線との交点数Ｍｘに基づいて、処理対象のオブジェクトが、囲み線に内包されている（囲み線の内側にある）か否かを、判定することができる。ここで、４本の判定線Ａ１〜Ａ４を設定し、交点数Ｍｘが奇数である判定線が３以上である場合に、処理対象のオブジェクトが囲み線に内包されていると判断している理由を説明する。これは、例外的に、処理対象のオブジェクトが囲み線に内包されている場合でも、交点数Ｍｘが偶数になる場合があり得るからである。例えば、囲み線６６Ｄは、手書きで記入されることを想定しているので、図１１（Ｂ）に示すように、一筆書きの両端部の近傍に隙間ＢＴが生じる場合がある。仮に、図１１（Ｂ）の下方向の判定線Ａ２が、隙間ＢＴを通ると、判定線Ａ２の交点数Ｍｘは、０（偶数）になってしまうことが解る。このような場合に、例えば、１本の判定線に基づいて判定を行うとすれば、誤った判定結果となり得ることは明らかである。本実施例では、４本の判定線のうちの奇数判定線の数ＬＩｎが、３個以上であるか否かに基づいているので、例外的に、１個の判定線の交点数Ｍｘが偶数になった場合であっても適切に内包関係を判定することができる。
【０１０５】
ステップＳ４４０では、除去処理部３６０は、囲み線以外の全てのオブジェクトが処理対象として選択済みであるか否かを判断する。未選択のオブジェクトがある場合には（ステップＳ４４０：ＮＯ）、除去処理部３６０は、ステップＳ４０５に戻って、未選択のオブジェクトを選択して、上述したステップＳ４０５〜Ｓ４４０までの処理を繰り返す。全てのオブジェクトが選択された場合には（ステップＳ４４０：ＹＥＳ）、除去処理部３６０は、内包関係判定処理を終了する。
【０１０６】
内包関係判定処理が終了すると、続くステップＳ１７５（図２）では、除去処理部３６０は、囲み線６６と、囲み線６６に内包されていると判定されたオブジェクトとを、スキャン画像６０（図３（Ａ））から除去するオブジェクト除去処理を実行する。除去処理部３６０は、部分二値画像ＰＢＩ（図１１（Ｂ））に基づいて、スキャン画像６０上において、囲み線６６と、囲み線６６に内包されているオブジェクト（描画６５）と、を構成する複数個の画素を特定する。除去処理部３６０は、特定された複数個の画素の画素値を、スキャン画像６０の背景の色を表す画素値に変更する。背景の色を表す画素値は、例えば、原稿の用紙の色（例えば、白）を表す画素値であり、ステップＳ１６０（図２）にて算出された二値化のための基準の色を表す画素値（Ｒave2、Ｇave2、Ｂave2）が用いられる。これによって、スキャン画像６０から、囲み線６６と描画６５とが除去された処理済み画像６０Ｃ（図３（Ｃ））を表す処理済みの画像データが生成される。
【０１０７】
ステップＳ１８０では、画像処理部３００は、全ての囲み線が選択済みであるか否かを判断する。未選択の囲み線がある場合には（ステップＳ１８０：ＮＯ）、画像処理部３００は、ステップＳ１５０に戻って、未選択の囲み線を選択して、上述したステップＳ１５０〜Ｓ１８０までの処理を繰り返す。全ての囲み線が選択された場合には（ステップＳ１８０：ＹＥＳ）、画像処理部３００は、処理済みの画像データを、スキャンデータ（対象画像データ）の送信元である複合機２００に対して送信して（ステップＳ１８５）、処理を終了する。
【０１０８】
複合機２００の画像データ送受信部１１５は、サーバ４００から処理済みの画像データを受信すると、例えば、当該画像データを、不揮発性記憶装置２３０に格納して処理を終了する。この処理済みの画像データは、例えば、プリンタ部２４０を用いて、処理済みの画像データによって表される画像を用紙に印刷するために用いられる。
【０１０９】
以上説明した本実施例の画像処理によれば、利用者は、所望のオブジェクトを赤色のペンで記入した囲み線で囲んだ原稿を、複合機２００のスキャナ部２５０に読み取らせることによって、原稿から所望のオブジェクトが除去された画像を表す画像データを取得することができる。なお、囲み線は、除去すべきオブジェクトの指定以外にも用いられ得る。例えば、画像処理部３００は、オブジェクト除去処理（ステップＳ１７５）に代えて、囲み線で囲まれたオブジェクトを表す画像だけを含み、囲み線で囲まれていないオブジェクトを除去した画像を表す画像データを生成する処理を実行しても良い。一般的に言えば、囲み線によって囲まれたオブジェクトを特定し、特定されたオブジェクトを含む部分画像を表す部分画像データを用いて、所定の画像処理を実行するために、囲み線は用いられ得る。
【０１１０】
さらに、本実施例の画像処理によれば、オブジェクトを構成する複数個の特定画素（具体的には赤色オブジェクト画素）のそれぞれに設定される枠領域ＦＬ（図８）に基づいて、赤色オブジェクトが囲み線であるか否かを判定する。この結果、オブジェクトの分岐の状態を枠領域ＦＬとの交差数Ｍｖに基づいて、赤色オブジェクトの形状を適切に解析して、赤色オブジェクトが囲み線であるか否かを適切に判定することができる。
【０１１１】
より具体的には、複数個の特定画素のうち、交差数Ｍｖが２個である枠領域ＦＬ（２個のオブジェクト部分領域を含む枠領域ＦＬ）に対応する第１の特定画素の割合ＲＴ２を用いて、赤色オブジェクトが囲み線であるか否かを判定する（図７：ステップＳ３２５）。この結果、赤色オブジェクトが囲み線であるか否かを適切に判定することができる。
【０１１２】
さらに、形状判定部３５０は、交差数ＭｖがＭ個（Ｍは、１、３、４のうちのいずれかの整数）である枠領域ＦＬに対応する複数個の第２の特定画素のうち、特定領域ＥＳ（図１０）に含まれる第２の特定画素の割合ＲＴＣを用いて、赤色オブジェクトが囲み線であるか否かを判定する（図７：ステップＳ３６５）。この結果、赤色オブジェクトが囲み線であるか否かを、さらに、精度良く判定することができる。
【０１１３】
さらに、形状判定部３５０は、交差数Ｍｖが５個以上である枠領域ＦＬに対応する第３の特定画素の割合ＲＴ５を用いて、赤色オブジェクトが囲み線であるか否かを判定する（図７：ステップＳ３４０）。この結果、赤色オブジェクトが囲み線であるか否かを、さらに、精度良く判定することができる。
【０１１４】
さらに、枠領域ＦＬのサイズ（図８（Ｃ））および特定領域ＥＳのサイズ（図１０（Ｂ））は、解像度ＲＳ、線幅ＬＷ（すなわち、オブジェクトが特定方向に連続する数（図６））、オブジェクトサイズＯＢＳに応じて、適切に決定されるので、赤色オブジェクトが囲み線であるか否かを、適切に判定することができる。すなわち、図８（Ｃ）の式から解るように、枠領域ＦＬのサイズは、解像度ＲＳが第１の解像度（例えば、３００ｄｐｉ）である場合に、第１の画素数に決定され、解像度ＲＳが第１の解像度より高い第２の解像度（例えば、６００ｄｐｉ）である場合に、第１の画素数より大きい第２の画素数（例えば、第１の画素数の２倍の画素数）に決定される。また、枠領域ＦＬのサイズは、オブジェクトサイズＯＢＳが第１のサイズである場合に、第１の領域サイズに設定され、オブジェクトサイズＯＢＳが第１のサイズより大きい第２のサイズである場合に、第１の領域サイズより大きい第２の領域サイズに設定される。さらに、枠領域ＦＬのサイズは、線幅ＬＷが第１の幅である場合に、第３の領域サイズに設定され、線幅ＬＷが第１の幅より大きい第２の幅である場合に、第３の領域サイズより大きい第４の領域サイズに設定される。特定領域ＥＳのサイズについても同様である。なお、図８（Ｃ）の式から解るように、オブジェクトサイズＯＢＳ、線幅ＬＷ、第１〜第４の領域サイズは、例えば、画素数で表される。
【０１１５】
また、本実施例の形状判定処理は、例えば、比較的処理時間の長い処理である細線化処理などを伴う画像処理を用いて、赤色オブジェクトが囲み形状であるか否かを判定する処理と比較して、短い時間で赤色オブジェクトが囲み形状であるか否かを判定することができる。
【０１１６】
Ｂ．変形例
（１）図１３は、変形例における交差数Ｍｖの算出方法について説明する図である。図１３には、変形例における囲み線６９の一部分と、囲み線６９を構成する１個の注目画素（赤色オブジェクト画素）ＮＰに対応する枠領域ＦＬと、が示されている。利用者が囲み線６９を原稿に記入する際に利用するペンが特定種類のペン（例えば、色鉛筆、水性ペン）である場合などに、囲み線６９の中に、色が付着しない領域が現れる場合がある。この場合には、図１３に示すように、スキャン画像を二値化した二値化画像内の囲み線６９の中に、非赤色画素で構成された空隙領域ＶＯが現れる。
【０１１７】
この場合に、形状判定部３５０は、枠領域ＦＬと、囲み線６９（赤色オブジェクト）と、の交差数Ｍｖを算出する際に（図７：ステップＳ３１５）、空隙領域ＶＯによってオブジェクト部分領域が分断されて、オブジェクトの分岐の数を示す適切な交差数Ｍｖが算出できない可能性がある。図１３の例では、交差数Ｍｖは、「２」であると、算出されることが好ましいが、図１３の場合には、枠領域ＦＬは、６個のオブジェクト部分領域ＯＡ１１〜ＯＡ１３、ＯＡ２１〜ＯＡ２３を含むので、交差数Ｍｖは、「６」であると、算出される。
【０１１８】
このために、形状判定部３５０は、所定の近接条件を満たす複数のオブジェクト部分領域を、互いに結合された１個のオブジェクト部分領域とみなして、交差数Ｍｖを算出しても良い。近接条件は、例えば、判断対象の複数のオブジェクト部分領域の間に存在する非赤色画素の個数が基準値（例えば、２個）以下であることである。図１３の例では、オブジェクト部分領域ＯＡ１１とオブジェクト部分領域ＯＡ１２との間の非赤色画素の個数と、オブジェクト部分領域ＯＡ１２とオブジェクト部分領域ＯＡ１３との間の非赤色画素の個数とが、それぞれ基準値以下の１個である。したがって、形状判定部３５０は、３個のオブジェクト部分領域ＯＡ１１、ＯＡ１２、ＯＡ１３を、結合された１個のオブジェクト領域ＯＡ１０であると判断する。同様に、オブジェクト部分領域ＯＡ２１とオブジェクト部分領域ＯＡ２２との間の非赤色画素の個数と、オブジェクト部分領域ＯＡ２２とオブジェクト部分領域ＯＡ２３との間の非赤色画素の個数とが、それぞれ基準値以下の１個である。したがって、形状判定部３５０は、３個のオブジェクト部分領域ＯＡ２１、ＯＡ２２、ＯＡ２３を、結合された１個のオブジェクト領域ＯＡ２０であると判断する。この結果、交差数Ｍｖは、２個（オブジェクト領域ＯＡ１０とオブジェクト領域ＯＡ２０）であると、適切に算出することができる。
【０１１９】
このように、互いに異なる複数個のオブジェクト部分領域が比較的近接している場合には、これらのオブジェクト部分領域を１個のオブジェクト部分領域とみなすことが適切である場合がある。本変形例によれば、形状判定部３５０は、近接条件を用いて、交差数Ｍｖを適切に算出することができるので、赤色オブジェクトが囲み線であるか否かを適切に判定することができる。
【０１２０】
（２）上記実施例において、枠領域ＦＬは、対応する注目画素ＮＰ（１個の赤色オブジェクト画素）が、枠配置矩形の中心に配置されるように、設定されている。これに代えて、枠領域ＦＬは、対応する注目画素ＮＰが、枠配置矩形内の中心以外の位置に配置されるように、設定されても良い。具体的には、枠領域ＦＬは、注目画素ＮＰが、枠領域ＦＬ上に配置されるように、設定されても良い。また、枠領域ＦＬは、注目画素ＮＰが、枠領域ＦＬの内側の位置であって中心とは異なる位置に配置されるように、設定されても良い。
【０１２１】
（３）上記実施例の画像処理では、赤色オブジェクトが囲み線であると、判定されるためには、以下の３つの条件が満たされることを要する。
（Ａ）単色判定処理において単色であると判定されること（図５：ステップＳ２１０、Ｓ２１５）
（Ｂ）線判定処理において線であると判定されること（図５：ステップＳ２２０、Ｓ２２５）
（Ｃ）形状判定処理において囲み線形状であると判定されること（図５：ステップＳ２３０、Ｓ２３５）
これに代えて、条件（Ａ）および条件（Ｂ）の両方または一方は、省略されても良い。
【０１２２】
（４）上記実施例における枠領域ＦＬのサイズ（幅ＦＷ）や、特定領域ＥＳのサイズ（幅ＥＷ）は、図８（Ｃ）や図１０（Ｂ）の式を用いて算出されているが、これに代えて、固定値が用いられても良い。また、枠領域ＦＬの形状や特定領域ＥＳの形状は、正方形に限らず、長方形であっても良いし、円形であっても良いし、三角形や五角形などの各種の多角形であっても良い。
【０１２３】
（５）上記実施例の形状判定処理では、判定対象の赤色オブジェクトを構成する全ての赤色オブジェクト画素に対して、枠領域ＦＬが設定されているが、一部の赤色オブジェクト画素に対してのみ、枠領域ＦＬを設定しても良い。具体的には、１個の赤色オブジェクト画素に対して、枠領域ＦＬを設定した場合には、当該１個の赤色オブジェクト画素から所定距離内（例えば、２画素分の距離内）に位置する他の赤色オブジェクト画素は、枠領域ＦＬの設定対象から除去しても良い。あるいは、判定対象の赤色オブジェクトを構成する全ての赤色オブジェクト画素のうち、Ｘ座標とＹ座標の両方が奇数である画素に対して、枠領域ＦＬを設定し、Ｘ座標とＹ座標のうちの少なくとも一方が奇数である画素に対して、枠領域ＦＬを設定しないこととしても良い。この場合には、割合ＲＴ２、ＲＴＣ、ＲＴ５には、それぞれ、枠領域ＦＬが設定された赤色オブジェクト画素の個数に対する、第１、第２、第３の特定画素の割合が用いられる。
【０１２４】
（６）上記実施例では、Ｘ方向とＹ方向の２方向について、それぞれ連続する赤色オブジェクト画素の数を算出することによって、線幅ＬＷを特定している（図６）。これに代えて、１つの方向について、連続する赤色オブジェクト画素の数を算出することによって、線幅ＬＷを特定しても良い。
【０１２５】
（７）上記実施例では、形状判定部３５０は、全ての第２の特定画素のうち、特定領域内に位置する第２の特定画素の割合ＲＴＣが、基準以上であるか否かを、実際に、特定領域ＥＳを設定して、特定領域ＥＳ内に位置する第２の特定画素の個数を算出することによって、判断している。これに代えて、形状判定部３５０は、例えば、複数個の第２の特定画素の位置のばらつきを示す標準偏差σを算出して、標準偏差σが所定の閾値σｔｈ以下である場合に、割合ＲＴＣが基準以上であると判断しても良い。位置のばらつきを示す標準偏差σが閾値σｔｈ以下であることは、第２の特定画素の分布が正規分布に従うと仮定した場合に、第２の特定画素の位置の平均値（すなわち、重心）から距離σｔｈ以内の特定範囲内に、第２の特定画素が位置する確率が所定割合以上（約６８％以上）であることを表している。したがって、第２の特定画素の位置のばらつきを示す標準偏差σが閾値σｔｈ以下である場合には、所定割合以上の第２の特定画素が、重心と閾値σｔｈによって規定される特定範囲内に位置していると判断して良いと考えられる。また、標準偏差σに代えて、分散（σの２乗）が用いられても良い。
【０１２６】
（８）なお、囲み線は、除去処理などの画像処理の対象とすべきオブジェクトを指定するために用いられているが、オブジェクトを含まない背景領域の一部を囲むことによって背景領域を指定するために用いられても良い。この場合には、例えば、囲み線で囲まれた背景領域の色を除去する（例えば、白にする）いわゆる背景除去処理が実行されても良い。
【０１２７】
（９）なお、本実施例の対象画像データは、スキャナによって読み取られたスキャンデータが採用されているが、例えば、デジタルカメラなどで撮影された撮影画像データであっても良いし、文書や描画などを作成するためのアプリケーションプログラムを用いて生成された画像データであっても良い。また、囲み線は、例えば、ペンを用いて記入された囲み線に限られず、上記アプリケーションプログラムを用いて、画像内に描画された囲み線であっても良い。この場合には、例えば、マウスなどのポインティングデバイスを用いて、フリーハンドで描画された囲み線であっても、当該囲み線を適切に特定することができる。
【０１２８】
（１０）上記実施例においてサーバ４００の画像処理部３００によって実行される画像処理は、サーバ４００とは異なる装置、例えば、複合機２００と接続されたパーソナルコンピュータ５００（図１）によって実行されても良い。この場合には、この画像処理は、例えば、複合機２００のスキャナ部２５０や、単体のスキャナ（図示せず）を、制御するためにパーソナルコンピュータ５００にインストールされたスキャナドライバキャナによって実行されても良い。また、この画像処理は、複合機２００のＣＰＵ２１０や、単体のスキャナのＣＰＵによって実行されても良い。また、サーバ４００は、１つの筐体の装置に限らず、複数の計算機を含む計算システム（例えば、いわゆるクラウドコンピューティングを実現する分散型の計算システム）によって構成されていても良い。
【０１２９】
（１１）上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【符号の説明】
【０１３０】
１１０...通信制御部、１１５...画像データ送受信部、１２０...装置制御部、２００...複合機、２１０...ＣＰＵ、２２０...揮発性記憶装置、２２１...バッファ領域、２３０...不揮発性記憶装置、２３１...制御プログラム、２４０...プリンタ部、２５０...スキャナ部、２６０...操作部、２７０...表示部、２８０...通信部、３００...画像処理部、３１０...画像データ取得部、３２０...オブジェクト特定部、３３０...色判定部、３４０...線判定部、３５０...形状判定部、３５１...枠領域設定部、３５２...交差数判断部、３５３...条件判断部、３６０...除去処理部、４００...サーバ、４１０...ＣＰＵ、４２０...揮発性記憶装置、４２１...バッファ領域、４３０...不揮発性記憶装置、４３１...コンピュータプログラム、４８０...通信部、５００...パーソナルコンピュータ、７０...インターネット、１０００...画像処理システム
【図１】
2014182622.tif 000003
【図２】
2014182622.tif 000004
【図３】
2014182622.tif 000005
【図４】
2014182622.tif 000006
【図５】
2014182622.tif 000007
【図６】
2014182622.tif 000008
【図７】
2014182622.tif 000009
【図８】
2014182622.tif 000010
【図９】
2014182622.tif 000011
【図１０】
2014182622.tif 000012
【図１１】
2014182622.tif 000013
【図１２】
2014182622.tif 000014
【図１３】
2014182622.tif 000015