(57)【要約】【課題】効果的にマルチクロップ処理を行う画像処理装置を提供する。【解決手段】実施形態によれば、画像処理装置は、インターフェースと、プロセッサと、を備える。インターフェースは、原稿をスキャンしたスキャン画像データを取得する。プロセッサは、前記スキャン画像データから前記原稿の原稿領域の輪郭線を抽出し、前記輪郭線の頂点を抽出し、前記頂点に基づいて、前記原稿領域において複数の原稿が重なっているかを判定し、前記複数の原稿が重なっていると判定した場合、前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出し、それぞれの原稿画像データを含む１つのファイルを生成する。【選択図】      図１
2019029882.tif 000002
【特許請求の範囲】
【請求項１】
原稿をスキャンしたスキャン画像データを取得するインターフェースと、
前記スキャン画像データから前記原稿の原稿領域の輪郭線を抽出し、
前記輪郭線の頂点を抽出し、
前記頂点に基づいて、前記原稿領域において複数の原稿が重なっているかを判定し、
前記複数の原稿が重なっていると判定した場合、前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出し、
それぞれの原稿画像データを含む１つのファイルを生成する、
プロセッサと、
を備える画像処理装置。
【請求項２】
前記原稿は、矩形であり、
前記プロセッサは、
前記複数の原稿が重なっていると判定した場合、前記頂点から隣接し直角を形成する第１乃至第３の頂点を抽出し、
前記第１乃至第３の頂点から矩形を形成する第４の頂点を推定し、
前記矩形に基づいて前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出する、
前記請求項１に記載の画像処理装置。
【請求項３】
前記原稿は、矩形であり、
前記プロセッサは、
前記複数の原稿が重なっていると判定した場合、前記頂点から隣接する第１及び第２の頂点を抽出し、
前記頂点から、前記第１及び第２の頂点と直角を形成する第３の頂点を抽出し、
前記第１乃至第３の頂点から矩形を形成する第４の頂点を推定し、
前記矩形に基づいて前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出する、
前記請求項１に記載の画像処理装置。
【請求項４】
前記プロセッサは、
前記原稿領域の内側に形成される前記矩形に基づいて前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出する、
前記請求項２又は３に記載の画像処理装置。
【請求項５】
前記プロセッサは、
他の矩形に包含されない前記矩形に基づいて前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出する、
前記請求項２乃至４の何れか１項に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像処理装置に関する。
【背景技術】
【０００２】
画像処理装置には、複数の原稿を一度にスキャンしスキャン画像から各原稿の画像を切り出す（マルチクロップ処理）ものがある。原稿同士が重なっている場合、画像処理装置は、重なった原稿を分離することができないことがある。
【０００３】
そのため、従来、画像処理装置は、重なった複数の原稿を１つの原稿として切り出してしまうという課題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特願２００２−１００５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記の課題を解決するために、効果的にマルチクロップ処理を行う画像処理装置を提供する。
【課題を解決するための手段】
【０００６】
実施形態によれば、画像処理装置は、インターフェースと、プロセッサと、を備える。インターフェースは、原稿をスキャンしたスキャン画像データを取得する。プロセッサは、前記スキャン画像データから前記原稿の原稿領域の輪郭線を抽出し、前記輪郭線の頂点を抽出し、前記頂点に基づいて、前記原稿領域において複数の原稿が重なっているかを判定し、前記複数の原稿が重なっていると判定した場合、前記スキャン画像データからそれぞれの原稿の原稿画像データを抽出し、それぞれの原稿画像データを含む１つのファイルを生成する。
【図面の簡単な説明】
【０００７】
【図１】図１は、第１の実施形態に係る画像処理装置の構成例を示すブロック図である。
【図２】図２は、第１の実施形態に係るスキャン画像の例を示す図である。
【図３】図３は、第１の実施形態に係る輪郭線の例を示す図である。
【図４】図４は、第１の実施形態に係る頂点の例を示す図である。
【図５】図５は、第１の実施形態に係る画像処理装置が設定する矩形の例を示す図である。
【図６】図６は、第１の実施形態に係る画像処理装置が設定する矩形の例を示す図である。
【図７】図７は、第１の実施形態に係る原稿画像の領域の例を示す図である。
【図８】図８は、第１の実施形態に係る画像処理装置の動作例を示すフローチャートである。
【図９】図９は、第１の実施形態に係る画像処理装置の動作例を示すフローチャートである。
【図１０】図１０は、第２の実施形態に係るスキャン画像の例を示す図である。
【図１１】図１１は、第２の実施形態に係る輪郭線の例を示す図である。
【図１２】図１２は、第２の実施形態に係る頂点の例を示す図である。
【図１３】図１３は、第２の実施形態に係る画像処理装置が抽出した第１及び第２の頂点の例を示す図である。
【図１４】図１４は、第２の実施形態に係る画像処理装置が抽出した第３の頂点の例を示す図である。
【図１５】図１５は、第２の実施形態に係る画像処理装置が設定した矩形の例を示す図である。
【図１６】図１６は、第２の実施形態に係る画像処理装置が設定した候補矩形の例を示す図である。
【図１７】図１７は、第２の実施形態に係る画像処理装置が設定した候補矩形の例を示す図である。
【図１８】図１８は、第２の実施形態に係る原稿画像の領域の例を示す図である。
【図１９】図１９は、第２の実施形態に係る表示部の表示例を示す図である。
【図２０】図２０は、第２の実施形態に係る画像処理装置の動作例を示すフローチャートである。
【図２１】図２１は、第２の実施形態に係る画像処理装置の動作例を示すフローチャートである。
【図２２】図２２は、第２の実施形態に係る画像処理装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、実施形態について図面を参照しながら説明する。
（第１の実施形態）
まず、第１の実施形態について説明する。
【０００９】
実施形態に係る画像処理装置は、複数の原稿を一度にスキャンする。画像形成装置は、スキャンして得られた画像から、各原稿の画像を切り出す処理（マルチクロップ処理）を行う。画像処理装置は、マルチクロップ処理を行った後に、重なって配置された複数の原稿の画像から１つのファイルを生成する。画像処理装置は、ファイルを所定のメディアに格納してもよい。また、画像処理装置は、外部装置にファイルを送信してもよい。
【００１０】
図１は、実施形態に係る画像処理装置１０の構成例を示すブロック図である。  
図１が示すように、画像処理装置１０は、基本的な構成として、プロセッサ１１、ＲＯＭ１２、ＲＡＭ１３、ＮＶＭ１４、通信部１５、スキャナインターフェース１６、スキャナ１７、操作部インターフェース１８、操作部１９、表示部インターフェース２０及び表示部２１などを備える。
【００１１】
プロセッサ１１と、ＲＯＭ１２、ＲＡＭ１３、ＮＶＭ１４、通信部１５、スキャナインターフェース１６、スキャナ１７、操作部インターフェース１８及び表示部インターフェース２０とは、データバスなどを介して互いに接続される。
【００１２】
スキャナインターフェース１６とスキャナ１７とは、データバスなどを介して互いに接続される。操作部インターフェース１８と操作部１９とは、データバスなどを介して互いに接続される。表示部インターフェース２０と表示部２１とは、データバスなどを介して互いに接続される。  
なお、画像処理装置１０は、図１が示すような構成の他に必要に応じた構成を具備したり、特定の構成を除外したりしてもよい。
【００１３】
プロセッサ１１は、画像処理装置１０全体の動作を制御する機能を有する。プロセッサ１１は、内部メモリ及び各種のインターフェースなどを備えてもよい。プロセッサ１１は、内部メモリ、ＲＯＭ１２又はＮＶＭ１４が予め記憶するプログラムを実行することにより種々の処理を実現する。
【００１４】
なお、プロセッサ１１がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウエア回路により実現されるものであっても良い。この場合、プロセッサ１１は、ハードウエア回路により実行される機能を制御する。
【００１５】
ＲＯＭ１２は、予め制御用のプログラム及び制御データなどが記憶された不揮発性のメモリである。ＲＯＭ１２に記憶される制御プログラム及び制御データは、予め画像処理装置１０の仕様に応じて組み込まれる。ＲＯＭ１２は、たとえば、画像処理装置１０の回路基板を制御するプログラムなどを格納する。
【００１６】
ＲＡＭ１３は、揮発性のメモリである。ＲＡＭ１３は、プロセッサ１１の処理中のデータなどを一時的に格納する。ＲＡＭ１３は、プロセッサ１１からの命令に基づき種々のアプリケーションプログラムを格納する。また、ＲＡＭ１３は、アプリケーションプログラムの実行に必要なデータ及びアプリケーションプログラムの実行結果などを格納してもよい。
【００１７】
ＮＶＭ１４は、データの書き込み及び書き換えが可能な不揮発性のメモリである。ＮＶＭ１４は、例えば、ハードディスク、ＳＳＤ、ＥＥＰＲＯＭ（登録商標）又はフラッシュメモリなどにより構成される。ＮＶＭ１４は、画像処理装置１０の運用用途に応じてプログラム、アプリケーション、及び種々のデータを格納する。
【００１８】
通信部１５は、外部装置とデータを送受信するためのインターフェースである。たとえば、通信部１５は、ＬＡＮ接続又はＢｌｕｅｔｏｏｔｈ（登録商標）接続などをサポートするインターフェースである。
【００１９】
スキャナインターフェース１６は、プロセッサ１１がスキャナ１７と通信するためのインターフェースである。たとえば、スキャナインターフェース１６は、スキャナ１７からスキャン画像を取得する。スキャナインターフェース１６は、取得したスキャン画像をプロセッサ１１に送信する。また、プロセッサ１１は、スキャナインターフェース１６を通じて、スキャナ１７にスキャンを行わせる信号などを送信する。
【００２０】
スキャナ１７は、プロセッサ１１からの信号などに基づいて画像を読み取る。たとえば、スキャナ１７は、原稿台にセットされる原稿をスキャンする。たとえば、スキャナ１７は、直線状に配置したセンサ群を移動させて原稿を読み取る構成であってもよい。また、スキャナ１７は、センサ群に原稿からの光を供給するキャリッジを移動させる構成であってもよい。スキャナ１７の構成は、特定の構成に限定されるものではない。  
ここでは、原稿は、矩形であるものとする。
【００２１】
スキャナ１７は、画像を読み取って得られたスキャン画像（スキャン画像データ）をプロセッサ１１へ送信する。なお、スキャナ１７は、ＲＡＭ１３又は画像メモリなどにスキャン画像を格納してもよい。
【００２２】
操作部インターフェース１８は、プロセッサ１１が操作部１９と通信するためのインターフェースである。たとえば、プロセッサ１１は、操作部インターフェース１８を通じて、操作部１９に入力された操作を示す信号を受信する。
【００２３】
操作部１９は、画像処理装置１０の利用者によって、種々の操作が入力される。操作部１９は、利用者に入力された操作を示す信号をプロセッサ１１へ送信する。操作部１９は、たとえば、キーボード、テンキー又はタッチパネルなどである。また、操作部１９は、利用者からジェスチャーの入力を受け付けてもよい。
【００２４】
表示部インターフェース２０は、プロセッサ１１が表示部２１と通信するためのインターフェースである。たとえば、プロセッサ１１は、表示部インターフェース２０を通じて、表示部２１に画面を表示させる信号を送信する。
【００２５】
表示部２１は、プロセッサ１１が出力する画像を表示する表示装置である。表示部２１は、たとえば、液晶モニタなどである。
【００２６】
なお、操作部１９がタッチパネルから形成される場合、操作部１９及び表示部２１は、一体的に形成されてもよい。また、操作部１９及び表示部２１は、コントロールパネルとして一体的に形成されてもよい。また、操作部インターフェース１８及び表示部インターフェース２０は、一体的に形成されてもよい。
【００２７】
次に、プロセッサ１１が実現する機能について説明する。以下の機能は、プロセッサ１１がＮＶＭ１４などに格納されるプログラムを実行することで実現される。
【００２８】
まず、プロセッサ１１は、原稿をスキャンしたスキャン画像を取得する機能を有する。  
たとえば、プロセッサ１１は、操作部１９を通じてスキャンを開始する操作を受け付ける。ここでは、利用者は、スキャナ１７の原稿台に、名刺、カード又は書面などの原稿をセットする。利用者は、１つのファイルにまとめたい原稿を一部重ねて原稿台にセットする。利用者は、スキャンを開始する操作を操作部１９に入力する。
【００２９】
プロセッサ１１は、当該操作の入力を受け付けると、スキャナ１７に対してスキャンを行わせる信号を送信する。スキャナ１７は、当該信号を受信して、原稿のスキャンを行う。スキャナ１７は、スキャンによって得られたスキャン画像をプロセッサ１１に送信する。なお、スキャナ１７は、スキャン画像をＲＡＭ１３又は画像メモリに格納してもよい。
【００３０】
図２は、スキャン画像の例を示す。図２が示すように、スキャン画像は、原稿Ａ乃至Ｅを写す。ここでは、原稿Ａ及びＢは、重なっているものとする。また、原稿Ｃ及びＤは、重なっているものとする。原稿Ｅは、他の原稿と重なっていないものとする。
【００３１】
なお、プロセッサ１１は、２値化処理などの高画質化処理をスキャン画像に対して行ってもよい。
【００３２】
また、プロセッサ１１は、スキャン画像から、原稿が写る原稿領域の輪郭線を抽出する機能を有する。  
たとえば、プロセッサ１１は、エッジ検出などの画像処理を行うことで、原稿領域の輪郭線を抽出する。プロセッサ１１が輪郭線を抽出する方法は、特定の方法に限定されるものではない。
【００３３】
図３は、プロセッサ１１が抽出した輪郭線の例を示す。図３が示すように、プロセッサ１１は、輪郭線１００乃至３００を抽出する。輪郭線１００は、原稿Ａ及びＢの輪郭線である。輪郭線２００は、原稿Ｃ及びＤの輪郭線である。輪郭線３００は、原稿Ｅの輪郭線である。
【００３４】
また、プロセッサ１１は、輪郭線から頂点を抽出する機能を有する。  
たとえば、プロセッサ１１は、輪郭線を含む画像の特徴量から頂点を抽出する。また、プロセッサ１１は、輪郭線の各点における曲率を算出して、頂点を抽出してもよい。プロセッサ１１が頂点を抽出する方法は、特定の方法に限定されるものではない。
【００３５】
図４は、プロセッサ１１が抽出した頂点の例である。図４では、黒丸は、頂点を示す。図４が示すように、プロセッサ１１は、原稿の角に頂点を抽出する。また、プロセッサ１１は、重なった各原稿のエッジが交差する点に頂点を抽出する。
【００３６】
また、プロセッサ１１は、複数の原稿が重なっているかを判定する機能を有する。  
プロセッサ１１は、輪郭線において複数の原稿が重なっているかを判定する。プロセッサ１１は、輪郭線の頂点に数に基づいて原稿が重なっているか判定する。
【００３７】
原稿が重なっていない場合、プロセッサ１１は、当該原稿の輪郭線から原稿の角において４つの頂点を抽出する。また、複数の原稿が重なっている場合、プロセッサ１１は、原稿の角に加えて各原稿のエッジが交差する点に頂点を抽出するため、５つ以上の頂点を抽出する。
【００３８】
従って、プロセッサ１１は、輪郭線から頂点の数が５つ以上である場合、輪郭線において複数の原稿が重なっていると判定する。
【００３９】
なお、プロセッサ１１が原稿の重なりを判定する方法は、特定の方法に限定されるものではない。
【００４０】
また、プロセッサ１１は、抽出した頂点から、隣接し直角を形成する第１乃至第３の頂点を抽出する機能を有する。  
プロセッサ１１は、抽出した頂点から隣接する（連続する）３つの頂点（第１乃至第３の頂点）を抽出する。第１乃至第３の頂点は、輪郭線上において順に連続するものとする。
【００４１】
たとえば、プロセッサ１１は、連続する第１の頂点と第２の頂点とが形成する直線と、連続する第２の頂点と第３の頂点とが形成する直線と、の角度を算出する。プロセッサ１１は、算出した角度が直角である場合、当該第１乃至第３の頂点を、隣接し直角を形成する第１乃至第３の頂点として抽出する。なお、プロセッサ１１は、算出した角度と直角との差が所定の閾値以下である場合に、算出した角度が直角であると判定してもよい。
【００４２】
図５及び図６は、プロセッサ１１が抽出した第１乃至第３の頂点の例を示す。図５及び図６は、輪郭線１００の頂点を示す。
【００４３】
図５が示す例では、プロセッサ１１は、頂点１０１乃至１０３を抽出する。ここでは、頂点１０１と頂点１０２とが形成する直線と、頂点１０２と頂点１０３とが形成する直線と、の角度が直角である。
【００４４】
図６が示す例では、プロセッサ１１は、頂点１０２乃至１０４を抽出する。ここでは、頂点１０２と頂点１０３とが形成する直線と、頂点１０３と頂点１０４とが形成する直線と、の角度が直角である。
【００４５】
また、プロセッサ１１は、抽出した第１乃至第３の頂点から矩形を形成する第４の頂点を推定する機能を有する。  
即ち、プロセッサ１１は、第１乃至第４の頂点が矩形を形成するように、第４の頂点を推定する。たとえば、プロセッサ１１は、第２の頂点から第３の頂点に伸びるベクトルを算出する。プロセッサ１１は、第１の頂点にベクトルを加算して第４の頂点を推定する。
【００４６】
なお、プロセッサ１１が第４の頂点を推定する方法は、特定の方法に限定されるものではない。
【００４７】
図５が示す例では、プロセッサ１１は、第４の頂点として頂点１１１を推定する。図５が示すように、頂点１０１乃至１０３及び１１１は、矩形を形成する。  
また、図６が示す例では、プロセッサ１１は、第４の頂点として頂点１１２を推定する。図６が示すように、頂点１０２乃至１０４及び１１２は、矩形を形成する。
【００４８】
また、プロセッサ１１は、第１乃至第４の頂点が形成する矩形が原稿領域の内側（即ち、輪郭線の内側）にあるかを判定する機能を有する。  
プロセッサ１１は、第１乃至第４の頂点から矩形を設定する。プロセッサ１１は、設定した矩形が輪郭線の内側に含まれるかを判定する。
【００４９】
図５が示す例では、プロセッサ１１は、頂点１０１乃至１０３及び１１１から矩形１２１を設定する。図５が示すように、プロセッサ１１は、矩形１２１が輪郭線外に形成されるため原稿領域の内側にないと判定する。  
図６が示す例では、プロセッサ１１は、頂点１０２乃至１０４及び１１２とから矩形１２２を設定する。図６が示すように、プロセッサ１１は、矩形１２２が原稿領域の内側にあると判定する。
【００５０】
プロセッサ１１は、原稿領域に内側にあると判定した矩形を候補矩形としてＲＡＭ１３又はＮＶＭ１４に格納する。  
たとえば、プロセッサ１１は、矩形１２２を候補矩形として格納する。
【００５１】
また、プロセッサ１１は、他の候補矩形に包含される候補矩形を削除する機能を有する。  
プロセッサ１１は、ＲＡＭ１３又はＮＶＭ１４から候補矩形を取得する。プロセッサ１１は、当該候補矩形が他の候補矩形に包含されるか判定する。プロセッサ１１は、当該候補矩形が他の候補矩形に包含されていると判定すると、当該候補矩形を削除する。
【００５２】
プロセッサ１１は、残った候補矩形（他の候補矩形に包含されていない候補矩形）を１つの原稿が写る領域（単一原稿領域）として特定する。
【００５３】
図７は、プロセッサ１１が特定した単一原稿領域の例を示す。図７が示すように、プロセッサ１１は、頂点１０１、１０７、１０８及び１１３が形成する矩形を単一原稿領域１３１として特定する。また、プロセッサ１１は、頂点１０３乃至１０５及び１１４が形成する矩形を単一原稿領域１３２として特定する。
【００５４】
また、プロセッサ１１は、単一原稿領域に基づいてスキャン画像からそれぞれの原稿の原稿画像（原稿画像データ）を抽出する機能を有する。  
プロセッサ１１は、スキャン画像から単一原稿領域内の画像を原稿画像として抽出する。図７が示す例では、プロセッサ１１は、単一原稿領域１３１から原稿Ａの原稿画像を抽出する。また、プロセッサ１１は、単一原稿領域１３２から原稿Ｂの原稿画像を抽出する。
【００５５】
なお、プロセッサ１１は、原稿画像の傾きを補正してもよい。また、プロセッサ１１は、原稿画像に対して種々の高画質化処理を行ってもよい。
【００５６】
また、プロセッサ１１は、重なって配置されたそれぞれの原稿の原稿画像を含む１つのファイルを生成する機能を有する。  
即ち、プロセッサ１１は、重なって配置された原稿の原稿画像をまとめて１つのファイルに格納する。
【００５７】
たとえば、プロセッサ１１は、重なって配置された原稿の原稿画像の１つを１ページ目に他方を２ページ目に格納した１つのファイル（マルチページファイル）を生成する。たとえば、プロセッサ１１は、原稿画像からＰＤＦファイルを生成する。
【００５８】
なお、プロセッサ１１は、重なっていない原稿の原稿画像からファイルを生成する。たとえば、プロセッサ１１は、１つの原稿画像から構成されるＰＤＦファイル（シングルページファイル）を生成する。
【００５９】
図２が示す例では、プロセッサ１１は、原稿Ａの原稿画像と原稿Ｂの原稿画像とから１つのファイルを生成する。また、プロセッサ１１は、原稿Ｃの原稿画像と原稿Ｄの原稿画像とから１つのファイルを生成する。また、プロセッサ１１は、原稿Ｅの原稿画像から１つのファイルを生成する。
【００６０】
なお、プロセッサ１１は、生成したファイルをＮＶＭ１４に格納してもよい。また、プロセッサ１１は、画像処理装置１０にセットされたメモリ（ＵＳＢメモリなど）にファイルを格納してもよい。また、プロセッサ１１は、通信部１５を通じて外部装置へファイルを送信してもよい。
【００６１】
次に、画像処理装置１０の動作例について説明する。図８は、画像処理装置１０の動作例を説明するためのフローチャートである。ここでは、利用者は、スキャナ１７に原稿をセットしてスキャンを開始する操作を操作部１９に入力するものとする。
【００６２】
まず、画像処理装置１０のプロセッサ１１は、スキャナインターフェース１６を通じてスキャナ１７から原稿をスキャンしたスキャン画像を取得する（ＡＣＴ１１）。スキャン画像を取得すると、プロセッサ１１は、スキャン画像に対して２値化処理を行う（ＡＣＴ１２）。
【００６３】
２値化処理を行うと、プロセッサ１１は、スキャン画像から原稿領域の輪郭線を抽出する（ＡＣＴ１３）。輪郭線を抽出すると、プロセッサ１１は、輪郭線から頂点を抽出する（ＡＣＴ１４）。
【００６４】
頂点を抽出すると、プロセッサ１１は、１つの輪郭線において頂点の数が５つ以上あるか判定する（ＡＣＴ１５）。１つの輪郭線において頂点の数が５つ以上あると判定すると（ＡＣＴ１５、ＹＥＳ）、プロセッサ１１は、画像分離処理（単一原稿領域を生成する処理）を行う（ＡＣＴ１６）。
【００６５】
１つの輪郭線において頂点の数が５つ以上ないと判定した場合（ＡＣＴ１５、ＮＯ）、又は、画像分離処理を行った場合（ＡＣＴ１６）、プロセッサ１１は、スキャン画像から１つの原稿画像を抽出する（ＡＣＴ１７）。
【００６６】
原稿画像を抽出すると、プロセッサ１１は、原稿画像の傾きを補正する（ＡＣＴ１８）。原稿画像の傾きを補正すると、プロセッサ１１は、他に単一原稿領域があるか判定する（ＡＣＴ１９）。
【００６７】
他に単一原稿領域があると判定すると（ＡＣＴ１９、ＹＥＳ）、プロセッサ１１は、ＡＣＴ１７に戻る。
【００６８】
他に単一原稿領域がないと判定すると（ＡＣＴ１９、ＮＯ）、プロセッサ１１は、原稿画像が複数あるか判定する（ＡＣＴ２０）。原稿画像が複数あると判定すると（ＡＣＴ２０、ＹＥＳ）、プロセッサ１１は、複数の原稿画像からマルチページファイルを生成する（ＡＣＴ２１）。原稿画像が複数ないと判定すると（ＡＣＴ２０、ＮＯ）、プロセッサ１１は、原稿からシングルページファイルを生成する（ＡＣＴ２２）。
【００６９】
複数の原稿画像からマルチページファイルを生成した場合（ＡＣＴ２１）、又は、原稿からシングルページファイルを生成した場合（ＡＣＴ２２）、プロセッサ１１は、他の輪郭線があるか判定する（ＡＣＴ２３）。
【００７０】
他の輪郭線があると判定すると（ＡＣＴ２３、ＹＥＳ）、プロセッサ１１は、ＡＣＴ１５に戻る。他の輪郭線がないと判定すると（ＡＣＴ２３、ＮＯ）、プロセッサ１１は、動作を終了する。
【００７１】
次に、プロセッサ１１が画像分離処理（ＡＣＴ１６）を行う動作例について説明する。図９は、プロセッサ１１が画像分離処理を行う動作例について説明するためのフローチャートである。
【００７２】
プロセッサ１１は、抽出した頂点から、隣接し直角を形成する第１乃至第３の頂点を抽出する（ＡＣＴ３１）。第１乃至第３の頂点を抽出すると、プロセッサ１１は、第１乃至第３の頂点と矩形を形成する第４の頂点を推定する（ＡＣＴ３２）。
【００７３】
第４の頂点を推定すると、プロセッサ１１は、第１乃至第４の頂点から矩形を形成する（ＡＣＴ３３）。矩形を形成すると、プロセッサ１１は、形成した矩形が輪郭線の内側であるか判定する（ＡＣＴ３４）。
【００７４】
形成した矩形が輪郭線の内側であると判定すると（ＡＣＴ３４、ＹＥＳ）、プロセッサ１１は、矩形を候補矩形として保存する（ＡＣＴ３５）。
【００７５】
形成した矩形が輪郭線の内側でないと判定した場合（ＡＣＴ３４、ＮＯ）、又は、矩形を候補矩形として保存した場合（ＡＣＴ３５）、プロセッサ１１は、他に抽出する３頂点があるか判定する（ＡＣＴ３６）。
【００７６】
他に抽出する３頂点があると判定すると（ＡＣＴ３６、ＹＥＳ）、プロセッサ１１は、ＡＣＴ３１に戻る。
【００７７】
他に抽出する３頂点がないと判定すると（ＡＣＴ３６、ＮＯ）、プロセッサ１１は、他の候補矩形に包含される候補矩形を削除する（ＡＣＴ３７）。他の候補矩形に包含される候補矩形を削除すると、プロセッサ１１は、残った候補矩形を単一原稿領域と特定する（ＡＣＴ３８）。
【００７８】
残った候補矩形を単一原稿領域と特定すると、プロセッサ１１は、動作を終了する。
【００７９】
なお、プロセッサ１１は、重なった原稿の原稿画像をそれぞれ個別に含むファイルを生成してもよい。  
また、画像処理装置は、画像を用紙に印刷するプリンタを備えてもよい。プロセッサ１１は、プリンタを用いて原稿画像を印刷してもよい。また、プロセッサ１１は、複数の原稿画像から１つのファイルを生成した場合、原稿画像を両面印刷してもよい。
【００８０】
以上のように構成された画像形成装置は、スキャン画像から重なって配置された複数の原稿の輪郭線を抽出する。画像処理装置は、輪郭線の頂点に基づいて１つの原稿が写る原稿領域を特定する。そのため、画像処理装置は、原稿が重なって配置されても、各原稿の原稿画像を抽出することができる。その結果、画像処理装置は、効果的にマルチクロップ処理を行うことができる。
【００８１】
また、画像処理装置は、重なって配置された原稿から１つのファイルを生成する。そのため、画像処理装置は、利用者から操作部を通じてマルチページファイルを生成する操作を受け付けることなく、マルチページファイルを生成することができる。
（第２の実施形態）
次に、第２の実施形態について説明する。  
第２の実施形態に係る画像処理装置１は、第１及び第２の頂点と直角を形成する第３の頂点を検索する点で第１の実施形態に係る画像処理装置１と異なる。従って、他の点については、同一の符号を付して詳細な説明を省略する。
【００８２】
第２の実施形態に係る画像処理装置１の構成は、第１の実施形態のそれと同様である。従って、第２の実施形態に係る画像処理装置１の構成についての説明を省略する。
【００８３】
次に、プロセッサ１１が実現する機能について説明する。以下の機能は、プロセッサ１１がＮＶＭ１４などに格納されるプログラムを実行することで実現される。
【００８４】
まず、プロセッサ１１は、抽出した頂点から、隣接する第１及び第２の頂点を抽出する機能を有する。  
プロセッサ１１は、抽出した頂点から、輪郭線で直接つながる２つの頂点を第１及び第２の頂点として抽出する。
【００８５】
ここでは、プロセッサ１１は、３枚の原稿が写るスキャン画像を取得するものとする。  
図１０は、スキャン画像の例を示す。図１０が示すように、スキャン画像は、原稿Ａ乃至Ｃを写す。ここでは、原稿Ａ及びＢは、重なっているものとする。また、原稿Ｂ及びＣは、重なっているものとする。
【００８６】
図１１は、プロセッサ１１が抽出した輪郭線の例を示す。図１１が示すように、プロセッサ１１は、輪郭線４００を抽出する。輪郭線４００は、原稿Ａ、Ｂ及びＣの輪郭線である。
【００８７】
図１２は、プロセッサ１１が抽出した頂点の例である。図１２では、黒丸は、頂点を示す。図１２が示すように、プロセッサ１１は、原稿の角に頂点を抽出する。また、プロセッサ１１は、重なった各原稿のエッジが交差する点に頂点を抽出する。
【００８８】
図１３は、プロセッサ１１が抽出した第１及び第２の頂点の例を示す。図１３が示す例では、プロセッサ１１は、頂点４０１及び４０２を抽出する。頂点４０１と頂点４０２とは、輪郭線４００で直接つながる。
【００８９】
また、プロセッサ１１は、抽出した頂点から、第１及び第２の頂点と直角を形成する第３の頂点を検索する機能を有する。  
プロセッサ１１は、第１の頂点と第２の頂点とが形成する直線と、第２の頂点と第３の頂点とが形成する直線とが直交するように、第３の頂点を決定する。また、プロセッサ１１は、第１の頂点と第２の頂点とが形成する直線と、第１の頂点と第３の頂点とが形成する直線とが直交するように、第３の頂点を決定する。
【００９０】
図１４乃至図１７は、プロセッサ１１が第３の頂点を検索する動作例を示す。  
図１４が示す例では、プロセッサ１１は、頂点４０３が第３の頂点となるか判定する。図１４が示すように、頂点４０１と頂点４０２とが形成する直線と、頂点４０２と頂点４０３とが形成する直線と、が形成する角度が直線とならない。また、頂点４０１と頂点４０２とが形成する直線と、頂点４０１と頂点４０３とが形成する直線と、が形成する角度が直線とならない。従って、プロセッサ１１は、頂点４０１及び４０２に関して、頂点４０３を第３の頂点とはならないと判定する。
【００９１】
図１５が示す例では、プロセッサ１１は、頂点４０４が第３の頂点となるか判定する。図１５が示すように、頂点４０１と頂点４０２とが形成する直線と、頂点４０２と頂点４０４とが形成する直線と、が形成する角度が直線となる。従って、プロセッサ１１は、頂点４０１及び４０２に関して、頂点４０４を第３の頂点となるものと判定する。
【００９２】
図１６が示す例では、プロセッサ１１は、頂点４０５が第３の頂点となるか判定する。図１６が示すように、頂点４０１と頂点４０２とが形成する直線と、頂点４０２と頂点４０５とが形成する直線と、が形成する角度が直線となる。従って、プロセッサ１１は、頂点４０１及び４０２に関して、頂点４０５を第３の頂点となるものと判定する。
【００９３】
図１７が示す例では、プロセッサ１１は、頂点４０８が第３の頂点となるか判定する。ここでは、プロセッサ１１は、第１及び第２の頂点として頂点４０６及び４０７を抽出したものとする。
【００９４】
図１７が示すように、頂点４０６と頂点４０７とが形成する直線と、頂点４０６と頂点４０８とが形成する直線と、が形成する角度が直線となる。従って、プロセッサ１１は、頂点４０１及び４０２に関して、頂点４０８を第３の頂点となるものと判定する。
【００９５】
また、プロセッサ１１は、抽出した第１並びに２の頂点及び検索した第３の頂点から矩形を形成する第４の頂点を推定する機能を有する。  
即ち、プロセッサ１１は、第１乃至第４の頂点が矩形を形成するように、第４の頂点を推定する。たとえば、プロセッサ１１は、第２の頂点から第３の頂点に伸びるベクトルを算出する。プロセッサ１１は、第１の頂点にベクトルを加算して第４の頂点を推定する。
【００９６】
なお、プロセッサ１１が第４の頂点を推定する方法は、特定の方法に限定されるものではない。
【００９７】
図１５が示す例では、プロセッサ１１は、第４の頂点として頂点４１１を推定する。図１５が示すように、頂点４０１、４０２、４０４及び４１１は、矩形を形成する。  
また、図１６が示す例では、プロセッサ１１は、第４の頂点として頂点４１２を推定する。図１６が示すように、頂点４０１、４０２、４０５及び４１２は、矩形を形成する。
【００９８】
また、図１７が示す例では、プロセッサ１１は、第４の頂点として頂点４１３を推定する。図１７が示すように、頂点４０６乃至４０８及び４１３は、矩形を形成する。
【００９９】
また、プロセッサ１１は、第１乃至第４の頂点が形成する矩形が原稿領域の内側（即ち、輪郭線の内側）にあるかを判定する機能を有する。  
プロセッサ１１は、第１乃至第４の頂点から矩形を設定する。プロセッサ１１は、設定した矩形が輪郭線の内側に含まれるかを判定する。
【０１００】
図１５が示す例では、プロセッサ１１は、頂点４０１、４０２、４０４及び４１１から矩形４２１を設定する。図１５が示すように、プロセッサ１１は、矩形４２１が原稿領域の内側にあると判定する。  
図１６が示す例では、プロセッサ１１は、頂点４０１、４０２、４０５及び４１２から矩形４２２を設定する。図１６が示すように、プロセッサ１１は、矩形４２２が原稿領域の内側にあると判定する。
【０１０１】
図１７が示す例では、プロセッサ１１は、頂点４０６、４０７、４０８及び４１３から矩形４２３を設定する。図１７が示すように、プロセッサ１１は、矩形４２３が輪郭線外にはみ出すため原稿領域の内側にないと判定する。
【０１０２】
プロセッサ１１は、原稿領域に内側にあると判定した矩形を候補矩形としてＲＡＭ１３又はＮＶＭ１４に格納する。  
また、プロセッサ１１は、他の候補矩形に包含される候補矩形を削除する機能を有する。  
プロセッサ１１は、ＲＡＭ１３又はＮＶＭ１４から候補矩形を取得する。プロセッサ１１は、当該候補矩形が他の候補矩形に包含されるか判定する。プロセッサ１１は、当該候補矩形が他の候補矩形に包含されていると判定すると、当該候補矩形を削除する。
【０１０３】
たとえば、矩形４２１は矩形４２２に包含されるため、プロセッサ１１は、矩形４２１を削除する。
【０１０４】
プロセッサ１１は、残った候補矩形（他の候補矩形に包含されていない候補矩形）を１つの原稿が写る領域（単一原稿領域）として特定する。
【０１０５】
図１８は、プロセッサ１１が特定した単一原稿領域の例を示す。図１８が示すように、プロセッサ１１は、単一原稿領域４３１、４３２（矩形４２２）及び４３３を特定する。
【０１０６】
また、プロセッサ１１は、単一原稿領域が他の単一原稿領域と重なった範囲の割合（重なり率）を算出する機能を有する。  
プロセッサ１１は、単一原稿領域ごとに重なり率を算出する。たとえば、プロセッサ１１は、所定の単一原稿領域の面積（第１の面積）と当該単一原稿領域が他の単一原稿領域に重なっている面積（第２の面積）とを抽出する。プロセッサ１１は、第２の面積を第１の面積で除算して、当該単一原稿領域の重なり率を算出する。
【０１０７】
図１８が示す例では、プロセッサ１１は、単一原稿領域４３１の面積を特定する。また、プロセッサ１１は、単一原稿領域４３１と単一原稿領域４３２とが重なっている領域の面積を算出する。プロセッサ１１は、重なっている領域の面積を単一原稿領域４３１の面積で除算して単一原稿領域４３１の重なり率を算出する。
【０１０８】
また、プロセッサ１１は、単一原稿領域４３２の面積を特定する。また、プロセッサ１１は、単一原稿領域４３２と単一原稿領域４３１及び４３３とが重なっている領域の面積をそれぞれ算出し合算する。プロセッサ１１は、合算した面積を単一原稿領域４３２の面積で除算して単一原稿領域４３２の重なり率を算出する。  
プロセッサ１１は、単一原稿領域４３３についても同様に重なり率を算出する。
【０１０９】
また、プロセッサ１１は、重なり率が所定の閾値よりも大きい単一原稿領域に対して警告を提示する機能を有する。  
たとえば、プロセッサ１１は、表示部２１に、重なり率が所定の閾値を超えていることを示す警告を単一原稿領域ごとに表示する。たとえば、プロセッサ１１は、単一原稿領域の原稿画像に警告を付して表示する。
【０１１０】
図１９は、表示部２１が表示する警告の例を示す。図１９が示すように、プロセッサ１１は、単一原稿領域４３１の原稿画像（原稿Ａの画像）、単一原稿領域４３２の原稿画像（原稿Ｂの画像）及び単一原稿領域４３３の原稿画像（原稿Ｃの画像）を表示する。即ち、プロセッサ１１は、原稿画像のサムネイルを表示する。
【０１１１】
ここでは、プロセッサ１１は、単一原稿領域４３１（原稿Ａの領域）及び単一原稿領域４３２（原稿Ｂの領域）の重なり率が所定の閾値よりも高いと判定したものとする。
【０１１２】
プロセッサ１１は、原稿Ａの原稿画像及び原稿Ｂの原稿画像の近傍に警告を表示する。ここでは、プロセッサ１１は、警告として「アラート！」を表示する。なお、プロセッサ１１は、警告として、他の文言を表示してもよい。また、プロセッサ１１は、原稿画像の枠の色又は太さを変えてもよい。プロセッサ１１が表示する警告の構成は、特定の構成に限定されるものではない。
【０１１３】
図１９が示すように、プロセッサ１１は、原稿画像を削除するアイコン２１ａ、スキャン動作をキャンセルするアイコン２１ｂ及び保存を行うアイコン２１ｃなどを表示してもよい。
【０１１４】
また、プロセッサ１１は、それぞれの原稿画像を個別に含むファイルを生成する機能を有する。  
プロセッサ１１は、アイコン２１ｃへのタップを受け付けると、それぞれの原稿画像を個別に含むファイルを生成する。
【０１１５】
たとえば、プロセッサ１１は、原稿Ａの原稿画像を含むファイル、原稿Ｂの原稿画像を含むファイル及び原稿Ｃの原稿画像を含むファイルを生成する。
【０１１６】
プロセッサ１１は、生成したファイルをＮＶＭ１４に保存してもよい。また、プロセッサ１１は、画像処理装置１０にセットされたメモリ（ＵＳＢメモリなど）にファイルを保存してもよい。なお、プロセッサ１１は、通信部１５を通じて外部装置へファイルを送信してもよい。
【０１１７】
次に、画像処理装置１０の動作例について説明する。図２０及び２１は、画像処理装置１０の動作例を説明するためのフローチャートである。ここでは、利用者は、スキャナ１７に原稿をセットしてスキャンを開始する操作を操作部１９に入力するものとする。
【０１１８】
まず、画像処理装置１０のプロセッサ１１は、スキャナインターフェース１６を通じてスキャナ１７から原稿をスキャンしたスキャン画像を取得する（ＡＣＴ４１）。スキャン画像を取得すると、プロセッサ１１は、スキャン画像に対して２値化処理を行う（ＡＣＴ４２）。
【０１１９】
２値化処理を行うと、プロセッサ１１は、スキャン画像から原稿領域の輪郭線を抽出する（ＡＣＴ４３）。輪郭線を抽出すると、プロセッサ１１は、輪郭線から頂点を抽出する（ＡＣＴ４４）。
【０１２０】
頂点を抽出すると、プロセッサ１１は、１つの輪郭線において頂点の数が５つ以上あるか判定する（ＡＣＴ４５）。１つの輪郭線において頂点の数が５つ以上あると判定すると（ＡＣＴ４５、ＹＥＳ）、プロセッサ１１は、画像分離処理を行う（ＡＣＴ４６）。
【０１２１】
１つの輪郭線において頂点の数が５つ以上ないと判定した場合（ＡＣＴ４５、ＮＯ）、又は、画像分離処理を行った場合（ＡＣＴ４６）、プロセッサ１１は、スキャン画像から１つの原稿画像を抽出する（ＡＣＴ４７）。
【０１２２】
原稿画像を抽出すると、プロセッサ１１は、原稿画像の傾きを補正する（ＡＣＴ４８）。原稿画像の傾きを補正すると、プロセッサ１１は、他に単一原稿領域があるか判定する（ＡＣＴ４９）。
【０１２３】
他に単一原稿領域があると判定すると（ＡＣＴ４９、ＹＥＳ）、プロセッサ１１は、ＡＣＴ４７に戻る。
【０１２４】
他に単一原稿領域がないと判定すると（ＡＣＴ４９、ＮＯ）、プロセッサ１１は、他の輪郭線があるか判定する（ＡＣＴ５０）。
【０１２５】
他の輪郭線があると判定すると（ＡＣＴ５０、ＹＥＳ）、プロセッサ１１は、ＡＣＴ４５に戻る。他の輪郭線がないと判定すると（ＡＣＴ５０、ＮＯ）、プロセッサ１１は、抽出した原稿画像のサムネイルを表示部２１に表示する（ＡＣＴ５１）。
【０１２６】
サムネイルを表示すると、プロセッサ１１は、原稿画像に対応する重なり率が所定の閾値を超えているかを判定する（ＡＣＴ５２）。重なり率が所定の閾値を超えていると判定すると（ＡＣＴ５２、ＹＥＳ）、プロセッサ１１は、警告を表示する（ＡＣＴ５３）。
【０１２７】
重なり率が所定の閾値を超えてないと判定した場合（ＡＣＴ５２、ＮＯ）、又は、警告を表示した場合（ＡＣＴ５３）、プロセッサ１１は、操作部１９を通じて、原稿画像を保存する操作を受け付けたか判定する（ＡＣＴ５４）。
【０１２８】
原稿画像を保存する操作を受け付けていないと判定すると（ＡＣＴ５４、ＮＯ）、プロセッサ１１は、ＡＣＴ５４に戻る。
【０１２９】
原稿画像を保存する操作を受け付けたと判定すると（ＡＣＴ５４、ＹＥＳ）、プロセッサ１１は、原稿画像を所定のメモリに保存する（ＡＣＴ５５）。原稿画像を所定のメモリに保存すると、プロセッサ１１は、動作を終了する。
【０１３０】
次に、プロセッサ１１が画像分離処理（ＡＣＴ４６）を行う動作例について説明する。図２２は、プロセッサ１１が画像分離処理を行う動作例について説明するためのフローチャートである。
【０１３１】
プロセッサ１１は、抽出した頂点から、隣接する第１及び第２の頂点を抽出する（ＡＣＴ６１）。第１及び第２の頂点を抽出すると、プロセッサ１１は、第１及び第２の頂点と直角を形成する第３の頂点を検索する（ＡＣＴ６２）。
【０１３２】
第３の頂点を検索すると、プロセッサ１１は、第１乃至第３の頂点と矩形を形成する第４の頂点を推定する（ＡＣＴ６３）。
【０１３３】
第４の頂点を推定すると、プロセッサ１１は、第１乃至第４の頂点から矩形を形成する（ＡＣＴ６４）。矩形を形成すると、プロセッサ１１は、形成した矩形が輪郭線の内側であるか判定する（ＡＣＴ６５）。
【０１３４】
形成した矩形が輪郭線の内側であると判定すると（ＡＣＴ６５、ＹＥＳ）、プロセッサ１１は、矩形を候補矩形として保存する（ＡＣＴ６６）。
【０１３５】
形成した矩形が輪郭線の内側でないと判定した場合（ＡＣＴ６５、ＮＯ）、又は、矩形を候補矩形として保存した場合（ＡＣＴ６６）、プロセッサ１１は、第１及び第２の頂点と直角を形成する他の第３の頂点があるか判定する（ＡＣＴ６７）。
【０１３６】
他の第３の頂点があると判定すると（ＡＣＴ６７、ＹＥＳ）、プロセッサ１１は、ＡＣＴ６２に戻る。
【０１３７】
他の第３の頂点がないと判定すると（ＡＣＴ６７、ＮＯ）、プロセッサ１１は、隣接する他の第１及び第２の頂点があるか判定する（ＡＣＴ６８）。隣接する他の第１及び第２の頂点があると判定すると（ＡＣＴ６８、ＹＥＳ）、プロセッサ１１は、ＡＣＴ６１に戻る。
【０１３８】
隣接する他の第１及び第２の頂点がないと判定すると（ＡＣＴ６８、ＮＯ）、プロセッサ１１は、他の候補矩形に包含される候補矩形を削除する（ＡＣＴ６９）。他の候補矩形に包含される候補矩形を削除すると、プロセッサ１１は、残った候補矩形を単一原稿領域と特定する（ＡＣＴ７０）。
【０１３９】
残った候補矩形を単一原稿領域と特定すると、プロセッサ１１は、各単一原稿領域の重なり率を算出する（ＡＣＴ７１）。各単一原稿領域の重なり率を算出すると、プロセッサ１１は、動作を終了する。
【０１４０】
なお、プロセッサ１１は、原稿画像を外部装置に送信してもよい。また、プロセッサ１１は、保存する原稿画像の選択を受け付け、選択された原稿画像を保存してもよい。  
また、プロセッサ１１は、４枚以上が重なる原稿を写したスキャン画像に基づいて、各原稿の原稿画像を抽出してもよい。
【０１４１】
また、プロセッサ１１は、重なって配置されたそれぞれの原稿の原稿画像を含む１つのファイルを生成してもよい。たとえば、プロセッサ１１は、原稿Ａ乃至Ｃの原稿画像から１つのファイルを生成してもよい。  
以上のように構成された画像処理装置は、隣接する第１及び第２の頂点から直角を形成する第３の頂点を抽出する。画像処理装置は、第１乃至第３の頂点から矩形を形成する第４の頂点を推定する。画像処理装置は、当該矩形に基づいてスキャン画像から原稿画像を抽出する。
【０１４２】
その結果、画像処理装置は、３つの角が輪郭線上で連続しない原稿（複数の原稿と重なってる原稿）についても原稿画像を抽出することができる。そのため、画像処理装置は、３枚以上の原稿が重なっている場合であっても、各原稿の原稿画像を特定することができる。
【０１４３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１４４】
１０…画像処理装置、１１…プロセッサ、１３…ＲＡＭ、１４…ＮＶＭ、１６…スキャナインターフェース、１７…スキャナ、２０…表示部インターフェース、２１…表示部。
【図１】
2019029882.tif 000003
【図２】
2019029882.tif 000004
【図３】
2019029882.tif 000005
【図４】
2019029882.tif 000006
【図５】
2019029882.tif 000007
【図６】
2019029882.tif 000008
【図７】
2019029882.tif 000009
【図８】
2019029882.tif 000010
【図９】
2019029882.tif 000011
【図１０】
2019029882.tif 000012
【図１１】
2019029882.tif 000013
【図１２】
2019029882.tif 000014
【図１３】
2019029882.tif 000015
【図１４】
2019029882.tif 000016
【図１５】
2019029882.tif 000017
【図１６】
2019029882.tif 000018
【図１７】
2019029882.tif 000019
【図１８】
2019029882.tif 000020
【図１９】
2019029882.tif 000021
【図２０】
2019029882.tif 000022
【図２１】
2019029882.tif 000023
【図２２】
2019029882.tif 000024