JP6331772B2 - 画像処理装置およびコンピュータプログラム - Google Patents

画像処理装置およびコンピュータプログラム Download PDF

Info

Publication number
JP6331772B2
JP6331772B2 JP2014133882A JP2014133882A JP6331772B2 JP 6331772 B2 JP6331772 B2 JP 6331772B2 JP 2014133882 A JP2014133882 A JP 2014133882A JP 2014133882 A JP2014133882 A JP 2014133882A JP 6331772 B2 JP6331772 B2 JP 6331772B2
Authority
JP
Japan
Prior art keywords
target image
image data
image
corrected
correction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014133882A
Other languages
English (en)
Other versions
JP2016012837A (ja
Inventor
近藤 真樹
真樹 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2014133882A priority Critical patent/JP6331772B2/ja
Publication of JP2016012837A publication Critical patent/JP2016012837A/ja
Application granted granted Critical
Publication of JP6331772B2 publication Critical patent/JP6331772B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Input (AREA)

Description

本発明は、画像中の所定の特徴を有する特徴領域を特定する画像処理に関するものである。
特許文献1に記載された技術では、複写機は、原稿を読み取って得られる画像内の枠状のマーカを抽出する。そして、複写機は、抽出されるマーカ内の部分画像を含み、マーカ外の部分画像を含まない画像を印刷する。このように、上記技術の枠状のマーカのような所定の特徴を有するオブジェクトを抽出する画像処理が行われている。
特開平3−236069号公報
しかしながら、上記技術では、処理対象の画像によっては、抽出すべきオブジェクトを精度良く抽出できない可能性があった。例えば、下地の色が白とは異なる色を有する原稿を読み取って得られる画像を処理する場合には、下地上に記述されたオブジェクトを精度良く抽出できない可能性があった。
本発明の主な利点は、画像内の特定のオブジェクトを精度良く抽出することができる技術を提供することである。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
[適用例1]画像処理装置であって、
対象画像を表す対象画像データを取得する画像データ取得部と、
前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出部と、
前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正部と、
前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出部と、
を備える、画像処理装置。
上記構成によれば、候補オブジェクトに基づいて決定される部分画像内の画素の値が補正され、補正済みの部分画像を含む補正済みの対象画像を表す補正済み対象画像データを用いて、特定のオブジェクトが抽出される。この結果、特定のオブジェクトを精度良く抽出し得る。
[適用例2]
適用例1に記載の画像処理装置であって、
前記第1の抽出部が前記候補オブジェクトを抽出する処理は、前記対象画像内の複数個の画素の中から、特定色を示す色値に基づいて決定される範囲内の色値を有する複数個の画素を抽出する処理を含み、
前記第2の抽出部が前記特定のオブジェクトを抽出する処理は、補正済みの前記対象画像内の複数個の画素の中から、前記特定色を示す色値に基づいて決定される範囲内の色値を有する複数個の画素を抽出する処理を含む、画像処理装置。
[適用例3]
適用例1または適用例2に記載の画像処理装置であって、
前記補正部は、
前記対象画像を複数個のブロックに分割し、
前記複数個のブロックのうち、前記候補オブジェクトを含む1以上の第1種のブロックに隣接する1以上の第2種のブロックを含む画像を、前記部分画像として決定する、画像処理装置。
[適用例4]
適用例1〜3のいずれかに記載の画像処理装置であって、
前記特定のオブジェクトは、第1の特徴を有し、かつ、第2の特徴を有するオブジェクトであり、
前記第1の抽出部は、
前記第1の特徴を有し、かつ、前記第2の特徴を有しないオブジェクトを前記部分画像を決定するための前記候補オブジェクトとして抽出し、
前記第1の特徴を有し、かつ、前記第2の特徴を有するオブジェクトを前記部分画像を決定するための前記候補オブジェクトとして抽出しない、画像処理装置。
[適用例5]
適用例4に記載の画像処理装置であって、
前記第1の特徴は、特定色を示す色値に基づいて決定される範囲内の色値を有することであり、
前記第2の特徴は、所定の形状を有することである、画像処理装置。
[適用例6]
適用例1〜5のいずれかに記載の画像処理装置であって、
前記補正部は、第1の補正処理を実行して第1の補正済み対象画像データを生成し、
前記補正部は、さらに、第1の補正処理とは異なる第2の補正処理を実行して第2の補正済み対象画像データを生成し、
前記第2の抽出部は、前記第1の補正済み対象画像データと、前記第2の補正済み対象画像データと、を用いて、前記特定のオブジェクトを抽出する、画像処理装置。
[適用例7]
適用例6に記載の画像処理装置であって、
前記補正部は、
前記部分画像内に複数個の単位領域を設定し、
前記単位領域ごとに決定される第1のパラメータを用いて前記単位領域ごとに前記第1の補正処理を実行し、
前記単位領域ごとに決定される第2のパラメータを用いて前記単位領域ごとに前記第2の補正処理を実行する、画像処理装置。
[適用例8]
適用例6に記載の画像処理装置であって、
前記補正部は、
前記部分画像内に第1のサイズの単位領域を設定し、前記第1のサイズの単位領域ごとに前記第1の補正処理を実行し、
前記部分画像内に前記第1のサイズとは異なる第2のサイズの単位領域を設定し、前記第2のサイズの単位領域ごとに前記第2の補正処理を実行する、画像処理装置。
[適用例9]
適用例1または適用例8に記載の画像処理装置であって、
前記補正処理は、前記部分画像内に設定される単位領域内の下地の色を白に近づけるように、前記単位領域内の複数個の画素の値を補正する処理である、画像処理装置。
[適用例10]
適用例1〜9のいずれかに記載の画像処理装置であって、
前記対象画像データは、ユーザによって記入されたマーカを含む原稿を光学的に読み取ることによって得られる画像データであり、
前記特定のオブジェクトは、ユーザによって記入されたマーカを示すオブジェクトである、画像処理装置。
[適用例11]
適用例1〜10のいずれかに記載の画像処理装置であって、
前記特定のオブジェクトは、前記対象画像内の一部の領域を囲む線であり、
前記画像処理装置は、さらに、
前記対象画像において、前記特定のオブジェクトの内側に位置する領域を特定する領域特定部と、
を備える、画像処理装置
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像読取装置、印刷装置、画像処理方法、これらの装置または方法を実現するためのコンピュータプ口グラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
本発明の一実施例としてのシステムを示す説明図である。 システムの動作のフローチャートである。 各種の画像の一例を示す概略図である。 背景の色の影響について説明する図である。 補正処理のフローチャートである。 1個のブロックのヒストグラムの一例を示す図である。 第2実施例の画像処理のフローチャートである。 スキャン画像と第1の二値画像の一例を示す図である。 第3実施例の画像処理のフローチャートである。 1個のブロックのヒストグラムの一例を示す図である。
A.第1実施例:
図1は、本発明の一実施例としてのシステム900を示す説明図である。このシステム900は、ネットワーク500と、ネットワーク500に接続された複合機100と、ネットワーク500に接続されたサーバ300と、を備えている。
複合機100は、複合機100の全体を制御するコントローラとしてのCPU110と、DRAM等の揮発性記憶装置120と、フラッシュメモリ等の不揮発性記憶装置130と、液晶パネル等の表示部140と、タッチパネル等の操作部150と、読取実行部160と、印刷実行部170と、他の装置(例えば、サーバ300)と通信するための通信インタフェース180(例えば、IEEE802.11a/b/g/nの規格に準拠した無線通信インタフェース)と、を備えている。不揮発性記憶装置130は、コンピュータプログラム132を格納している。通信インタフェース180は、ネットワーク500に接続されている。
読取実行部160は、原稿を表す画像データを生成する装置である。具体的には、読取実行部160は、図示しない光学センサ(例えば、CIS(Contact Image Sensor)を備え、読取実行部160に載置された原稿を光学的に読み取ることによって、原稿を表す画像データを生成する。以下、読取実行部160によって生成される画像データを「スキャンデータ」とも呼ぶ。
印刷実行部170は、画像を印刷する装置であり、いわゆるインクジェットプリンタである。ただし、他の種類のプリンタ(例えば、いわゆるレーザプリンタ)を採用してもよい。
CPU110は、揮発性記憶装置120と不揮発性記憶装置130とを用いてコンピュータプログラム132を実行することによって、後述するデータ処理を実行する。このように、CPU110と揮発性記憶装置120と不揮発性記憶装置130との全体を、データ処理を実行するデータ処理部190とも呼ぶ。
本実施例の画像処理装置としてのサーバ300は、サーバ300の全体を制御するコントローラとしてのCPU310と、DRAM等の揮発性記憶装置320と、フラッシュメモリ等の不揮発性記憶装置330と、他の装置(例えば、複合機100)と通信するための通信インタフェース380(例えば、IEEE802.3の規格に準拠した有線通信インタフェース)と、を備えている。不揮発性記憶装置330は、コンピュータプログラム332を格納している。このコンピュータプログラム332は、例えば、CD−ROMなどに格納される形態や、他のサーバなどの計算機からネットワーク500を介してダウンロードされる形態で提供される。通信インタフェース380には、ネットワーク500に接続されている。
CPU310は、揮発性記憶装置320と不揮発性記憶装置330とを用いてコンピュータプログラム332を実行することによって、後述する画像処理を実行する。このように、CPU310と揮発性記憶装置320と不揮発性記憶装置330との全体を、画像処理を実行する画像処理部390とも呼ぶ。
図2は、システム900の動作のフローチャートである。図中には、複合機100による処理と、サーバ300による処理と、が示されている。これらの処理は、例えば、ユーザから、囲み線を用いる所定の印刷モードで、原稿内の画像を印刷する指示が、複合機100によって受け付けられた場合に、複合機100のCPU110によって開始される。ユーザは、複合機100の操作部150を操作することによって、必要な指示を入力できる。
S100では、複合機100のCPU110(図1)が、読取実行部160を制御することによって、原稿を光学的に読み取り、原稿を表すスキャンデータを取得する。スキャンデータは、例えば、赤(R)、緑(G)、青(B)のそれぞれの成分値(本実施例では、256階調の階調値)で画素ごとの色を表すビットマップデータである。以下、赤(R)の成分値を「R成分値」と呼び、緑(G)の成分値を「G成分値」と呼び、青(B)の成分値を「B成分値」と呼ぶ。また、色を表す値を「色値」とも呼ぶ(例えば、R成分値とG成分値とB成分値との全体)。ここで、原稿は、複数のオブジェクト(例えば、文字や写真やイラスト等)を表し得る。本実施例では、ユーザは、所定の色(本実施例では、赤)のペンを用いて、原稿中のオブジェクトを指定するためのマーカである囲み線を記入することができる。以下に説明する画像処理では、スキャンデータによって表される画像(「スキャン画像」と呼ぶ)から囲み線で囲まれたオブジェクトを並べた画像を表す処理済みデータが生成される(詳細は後述)。
図3(A)は、スキャン画像の例を示す概略図である。図示されたスキャン画像80は、3つのイラストのオブジェクト81〜83と、2個の囲み線85、86と、を含んでいる。囲み線85、86は、予め定められた特定の色(例えば、赤)のペンを用いて、ユーザによって原稿上に記入されたオブジェクトである。スキャン画像80の背景(換言すれば、下地)は、複数の互いに色が異なる部分を含んでいる。図3(A)の例では、スキャン画像80の背景は、白色の第1背景部BG1と、白とは異なる色の第2背景部BG2と、を含んでいる。第2背景部BG2は、オブジェクト82の下側部分の背景であり、第1背景部BG1は、第2背景部BG2を除いた部分の背景である。第1の囲み線85は、第1背景部BG1上に記入された第1部分851と、第2背景部BG2上に記入された第2部分852と、を含む。第2の囲み線86は、全体が第1背景部BG1上に記入されている。
S110では、複合機100のCPU110(図1)は、スキャンデータを、ネットワーク500を介して、サーバ300に送信する。次のS200では、サーバ300のCPU310は、複合機100から送信されるスキャンデータを、処理対象の画像データ(「対象画像データ」とも呼ぶ)として、取得する。
S205では、CPU310は、スキャンデータに対して、二値化処理を行うことによって、第1の二値画像データを生成する。具体的には、スキャンデータの複数の画素のそれぞれは、囲み線の特定の色(本実施例では赤)を示す色値を有する画素(「特定色画素」と呼ぶ)と、他の色を示す色値を有する画素(「非特定色画素」と呼ぶ)と、のいずれかに分類される。すなわち、この二値化処理によって、スキャン画像80内の特定色画素が抽出される。この二値化処理は、特定の色を示す色値に基づいて決定される所定の色範囲(「囲み線色範囲」と呼ぶ)に従って、行われる。本実施例では、囲み線色範囲は、赤を示す色値に基づいて決定される範囲であり、色成分ごとに10〜30程度の幅を有する範囲である。例えば、囲み線色範囲は、R成分値が最大値(例えば、255)に近い側の所定範囲内でなり、かつ、G成分値およびB成分値が、最小値(例えば、0)に近い側の所定範囲内である範囲である。囲み線色範囲に含まれる色値を有する画素は、特定色画素に分類され、囲み線色範囲に含まれない色値を有する画素は、非特定色画素に分類される。なお、囲み線の色としては、赤とは異なる他の色が採用され得る。囲み線色範囲としては、囲み線の色として想定されている色を含む部分色範囲を採用可能である。
図3(B)は、第1の二値画像データによって表される第1の二値画像80aの例を示す概略図である。第1の二値画像80aは、複数個の特定色画素でそれぞれ構成される3つの特定色のオブジェクト81a、85a、86aを、含んでいる。互いに分離したこれらの特定色のオブジェクトは、囲み線の候補であるオブジェクトであるので、候補オブジェクトとも呼ぶ。候補オブジェクト81aは、オブジェクト81の一部を表し、候補オブジェクト85aは、第1の囲み線85の一部を表し、候補オブジェクト86aは、第2の囲み線86の全体を表している。各候補オブジェクト81a、85a、86aは、それぞれ、連続する複数の特定色画素によって構成されている。このように、候補オブジェクトは、囲み線とは異なるオブジェクトを表している場合もあり、囲み線を表している場合もある。
ここで、第1の二値画像80aにて抽出された候補オブジェクト85aは、第1の囲み線85の第1部分851だけを表しており、第1の囲み線85の第2部分852を表していない。すなわち、第1の囲み線85の第2部分852は、特定色のペンを用いて原稿上に記入されたオブジェクトであるにも拘わらずに、候補オブジェクトとして抽出できていない。この理由は、第1の囲み線85の第2部分852は、原稿における白とは異なる色の第2背景部BG2上に記入されたオブジェクトだからである。
図4は、背景(下地)の色の影響について説明する図である。図4には、原稿を画像が印刷された面と平行な方向に沿って見た概略図が示されている。図4に示すように、白色の原稿10上に、白色とは異なる色(例えば、グレー、青、黄)の第2背景部BG2が印刷されているとする。原稿10上の第2背景部BG2が印刷されていない領域は、白色の第1背景部BG1である。当該原稿10上に、ユーザが特定色のペンを用いて第1の囲み線85を記入したとする。この場合には、原稿10上に記入された第1の囲み線85は、第1背景部BG1に重なる第1部分851と、第2背景部BG2に重なる第2部分852と、を含む。
白色の第1背景部BG1は、ほとんど可視光を吸収しないので、第1部分851への入射光は、第1の囲み線85を表すインクによってのみ一部の成分が吸収され、残りの成分が反射光として人間の目やスキャナのセンサに到達する。第2部分852への入射光は、第1の囲み線85を表すインクによって一部の成分が吸収され、さらに、第2背景部BG2を表す印刷材(インクやトナー)によって他の一部の成分が吸収され、残りの成分が反射光として人間の目やスキャナのセンサに到達する。このために、第1部分851は、第1の囲み線85の記入に用いられたペンの特定色(例えば、赤)に見えるが、第2部分852は、当該ペンの特定色とは若干異なる色に見える。ここで、囲み線のみを候補オブジェクトとして特定し、他のオブジェクトを候補オブジェクトとして抽出しないことが好ましいことから、候補オブジェクトを抽出するための囲み線色範囲は、比較的狭い範囲に設定されている。このために、白とは異なる色の第2背景部BG2上に記入された囲み線は、第1の囲み線85の第2部分852のように、S205の二値化処理において候補オブジェクトとして抽出されない可能性がある。
S210では、CPU310は、スキャン画像80に、スキャン画像80を格子状に分割する複数個のブロックBRを設定する。スキャン画像80と第1の二値画像80aとは同じサイズの画像であり、スキャン画像80内の複数個の画素と第1の二値画像80a内の複数個の画素は一対一に対応している。したがって、スキャン画像80に複数個のブロックBRを設定することは、第1の二値画像80aに複数個のBRを設定することと同義である。図3(A)のスキャン画像80上、および、図3(B)の第1の二値画像80a上に、設定された複数個のブロックBRが図示されている。1個のブロックの大きさ(画素数)は、スキャン画像80の解像度や、想定される囲み線の太さなどに応じて、決定される。本実施例では、スキャン画像80の解像度が、縦300dpi×横300dpiである場合に、1個のブロックは、例えば、一辺が128画素の正方形である。
S215では、CPU310は、スキャン画像80内の一部の領域である部分画像を、補正対象の部分画像として決定する。先ず、第1の二値画像80a内の複数個のブロックBRのうち、候補オブジェクト81a、85a、86aを含む全てのブロック(第1種のブロックとも呼ぶ)が特定される。図3(B)の例では、候補オブジェクト85aを含む実線で示された領域IB1内の複数個のブロックBRと、候補オブジェクト86aを含む実線で示された領域IB2内の複数個のブロックBRが、第1種のブロックである。さらに、第1の二値画像80aにおいて、第1種のブロック以外の複数個のブロックの中から、少なくとも1個の第1種のブロックと隣接するブロック(第2種のブロックとも呼ぶ)が特定される。なお、第1種のブロックに隣接するブロックは、本明細書では、第1種のブロックを中心とする3行3列分の9個のブロックのうちの中心を除いた8個のブロックを意味する。図3(B)の例では、ハッチングで示された複数個のブロックBRのうち、上述した領域IB1、IB2内の複数個の第1種のブロックを除いたブロックBRが第2種のブロックである。上述したように、スキャン画像80には、第1の二値画像80aと同じように、複数個のブロックBRが設定されているので、CPU310は、スキャン画像80において、複数個の第1種のブロックと複数個の第2種のブロックとによって構成される領域を、補正対象の部分画像PI(図3(A))として特定することができる。
S220では、CPU310は、スキャン画像80の補正対象の部分画像PIに対して補正処理を実行する。
図5は、補正処理のフローチャートである。S10では、CPU310は、部分画像PI内の複数個のブロックBRの中から、1個の注目ブロックを選択する。S20では、CPU310は、注目ブロックの色分布データ(ヒストグラム)を色成分ごとに生成する。
図6は、1個のブロックBRのR成分値についてのヒストグラムの一例を示す図である。ヒストグラムは、注目ブロック内の各画素を、各画素が有するR成分値に応じて、複数のクラスに分類することによって得られるデータである。本実施例では、成分値が取り得る256階調の階調値のそれぞれを、1個のクラスとして、ヒストグラムデータが生成される。
図6(A)のヒストグラムは、白色の第1背景部BG1と、第1の囲み線85の第1部分851と、を含むブロックBR1(図3(A))のヒストグラムの一例である。このヒストグラムは、成分値Pb1を中心とするピークを含んでいる。成分値Pb1は、第1背景部BG1の色(白色)を示す成分値である。すなわち、成分値Pb1を中心とするピークは、第1背景部BG1のピークを含んでいる。したがって、成分値Pb1は、取り得る値の最大値(例えば、255)の近傍の値である。また、第1の囲み線85の色は、本実施例では赤であるので、囲み線85の色のR成分値は、第1背景部BG1の色(白)のR成分値と同様に255の近傍の値である。したがって、第1部分851のピークLP1は、第1背景部BG1のピークとほぼ同じ位置にある。第1部分851のピークLP1は、囲み線色範囲RAに含まれている。このヒストグラムから、第1部分851のピークLP1に対応する複数個の画素、すなわち、第1部分851を構成する複数個の画素が、S205にて、候補オブジェクトを構成する特定色画素に分類されることが解る。
図6(B)のヒストグラムは、白とは異なる色の第2背景部BG2と、第1の囲み線85の第2部分852と、を含むブロックBR2(図3(A))のヒストグラムの一例である。このヒストグラムは、成分値Pb2を中心とするピークを含んでいる。成分値Pb1は、第1背景部BG1の色(白色)を示す成分値である。すなわち、成分値Pb1を中心とするピークは、第1背景部BG1のピークを含んでいる。成分値Pb2は、第2背景部BG2の色を示す成分値である。すなわち、成分値Pb2を中心とするピークは、第2背景部BG2のピークを含んでいる。したがって、成分値Pb2は、図6(A)の成分値Pb1より小さな値である。第2部分852が第2背景部BG2上に記入されている影響で(図4参照)、第2部分852の色は、第1部分851の色より暗くなる。このために、第2部分852のR成分値のピークLP2は、図6(A)の第1部分851のピークLP1より左方向にシフトしている。この結果、第2部分852のピークLP2は、第2背景部BG2のピークとほぼ同じ位置にある。このために、第2部分852のピークLP2は、囲み線色範囲RAから外れていることが解る。このヒストグラムから、第2部分852のR成分値のピークLP2に対応する複数個の画素、すなわち、第2部分852を構成する複数個の画素が、S205にて、候補オブジェクトを構成する特定色画素にほとんど分類されないことが解る。
ヒストグラムが生成されると、S30にて、CPU310は、補正パラメータを決定する。補正パラメータは、R、G、Bの成分値ごとに決定される。CPU310は、注目ブロックの画素の総数のうちの所定割合PR分の数Mを算出する。CPU310は、R成分値のヒストグラム(図6(A)または、図6(B))において、R成分値が大きい順に数えてM番目の画素のR成分値を、R成分の補正パラメータCPRとして決定する。所定割合PRは、図6(A)、(B)のヒストグラムにおいて、補正パラメータCPRの値が、背景の色のピークの位置の成分値の近傍の値になるように、決定されている。所定割合PRは、本実施例では、25%である。従って、ブロックのサイズが縦128画素×横128画素である場合には、注目ブロックの画素の総数は、16384であるので、M=16384×0.25=4096である。例えば、図6(A)の例では、補正パラメータPCRは、成分値Pb1の近傍の値になるので、補正パラメータPCRは、最大値(すなわち、255)の近傍の値となる。図6(B)の例では、補正パラメータPCRは、成分値Pb2の近傍の値になるので、補正パラメータPCRは、成分値Pb1より小さな値となる。同様の計算によって、RGBの3つの成分のそれぞれの補正パラメータPCR、PCB、PCGが、決定される。(PCR、PCB、PCG)は、注目ブロック内の背景の色の色値の近傍の値になる。すなわち、注目ブロック内の背景が第1背景部BG1である場合には、(PCR、PCB、PCG)は、白を示す色値(255、255、255)の近傍の値になる。また、注目ブロック内の背景が第2背景部BG2である場合には、(PCR、PCB、PCG)は、第2背景部BG2の色を示す色値の近傍の値になる。
S40にて、CPU310は、決定された補正パラメータ(PCR、PCB、PCG)を用いて、注目ブロック内の画像に対する補正を実行する。具体的には、スキャン画像80の注目ブロックに含まれる全ての画素の色値、すわち、RGBの各成分値を、以下の式(1)を用いて、補正する。
OUT=RIN×(255/PCR)
OUT=GIN×(255/PCG)
OUT=BIN×(255/PCB) ...(1)
ここで、(RIN、GIN、BIN)は、補正前の画素の色値、すなわち、入力値であり、(ROUT、GOUT、BOUT)は、補正済みの画素の色値、すなわち、出力値である。補正パラメータ(PCR、PCB、PCG)が取り得る値の範囲は、RGBの各成分値が取り得る値の範囲と同じであるので、本実施例の補正パラメータ(PCR、PCB、PCG)は、255以下の値である。したがって、(255/PCR)、(255/PCR)、(255/PCR)は、1以上の値である。すなわち、式(1)は、RGBの各成分値を大きくする補正、すなわち、画素の色を明るくする補正である。なお、(1)式で算出された補正後の画素の成分値が最大値である255を超える場合には、当該成分値は、最大値である255にされる。
さらに、詳しく説明すると、図6(A)の例のように、注目ブロック内の背景が、白色の第1背景部BG1である場合には、S40の補正では、注目ブロック内の複数個の画素の色値は、ほとんど変化しない。この結果、補正前のヒストグラムと、補正後のヒストグラムとの間で、変化はほとんどない。
これに対して、図6(B)の例のように、注目ブロック内の背景が、白とは異なる色の第2背景部BG2である場合には、S40の補正によって、注目ブロック内の複数個の画素の色値は、注目ブロック内の背景の色が白に近づくように、補正される。具体的には、図6(B)において矢印で示すように、S40の補正によって、背景の色のピーク、すなわち、図6(B)の成分値Pb2を中心とするピークは、図6(B)で実線の矢印で示すように、白を示す値、すなわち、最大値(255)に近づくように、右にシフトする。そして、S40の補正によって、図6(B)で破線の矢印で示すように、囲み線の第2部分852のピークLP2も同様に、右にシフトする。この結果、特定色のペンによって記入されたオブジェクトの色のピークであるにも拘わらずに、囲み線色範囲RAの範囲から外れていた当該ピークLP2は、囲み線色範囲RA内に移動する。
換言すれば、注目ブロックに、第1の囲み線85の第1部分851や第2の囲み線86のように、特定色のペンによって記入されたオブジェクトのうち、第1の二値画像80aにおいて抽出されているオブジェクトが含まれる場合には、これらのオブジェクトの色は、囲み線色範囲RA内に維持される。注目ブロックに、第1の囲み線85の第2部分852のように、特定色のペンによって記入されたオブジェクトのうち、第1の二値画像80aにおいて抽出されていないオブジェクトが含まれる場合には、これらのオブジェクトの色は、囲み線色範囲RA外から囲み線色範囲RA内に修正される。
S50では、CPU310は、補正対象の部分画像PI内の全てのブロックを処理したか否かを判断する。未処理のブロックがある場合には(S50:NO)、CPU310は、S10に戻って、未処理のブロックを新たな注目ブロックとして選択する。全てのブロックを処理した場合には(S50:YES)、CPU310は、補正処理を終了する。補正処理が終了すると、補正済みの部分画像PIを含むスキャン画像(補正済みスキャン画像80hと呼ぶ(図示省略))を表す補正スキャンデータが生成される。ただし、CPU310は、オリジナルのスキャンデータ、すなわち、補正前のスキャン画像80を表すスキャンデータを揮発性記憶装置320の別の領域に格納しておく。すなわち、この時点では、補正スキャンデータと、オリジナルのスキャンデータと、の両方が、揮発性記憶装置320に格納されている。
以上説明したように、補正処理は、部分画像PI内に設定されている複数個のブロックBRのそれぞれを、補正処理の単位領域とし、単位領域ごとに行われる。そして、補正処理は、単位領域内の背景(下地とも呼ぶ)の色を白に近づけるように、単位領域内の複数個の画素の値を補正する処理である。この結果、特定色の囲み線が、白とは異なる第2背景部BG2上に記入されている場合に、特定色の囲み線を構成する画素の色値が囲み線色範囲RA内に含まれるように、補正することができる。したがって、後述する補正済みスキャン画像80hに対するS225の二値化処理において、囲み線が候補オブジェクトとして抽出される精度を向上することができる。
補正処理が終了すると、図2のS225では、補正済みスキャン画像80hを表す補正スキャンデータに対して、S205と同じ二値化処理を行うことによって、第2の二値画像データを生成する。具体的には、CPU310は、補正スキャンデータの複数の画素のそれぞれを、特定色画素と、非特定色画素と、のいずれかに分類する。この結果、補正済みスキャン画像80h内の特定色画素が抽出され、特定色画素によって構成される候補オブジェクトが抽出される。
図3(C)は、第2の二値画像データによって表される第2の二値画像80bの例を示す概略図である。第2の二値画像80bでは、3つの候補オブジェクト81b、85b、86bを、含んでいる。候補オブジェクト85bは、第1の囲み線85の第2部分852を含む第1の囲み線85の全体に相当するオブジェクトである。すなわち、補正スキャンデータに対する二値化処理では、補正前のスキャンデータに対する二値化処理では抽出できなかった第1の囲み線85の第2部分852が抽出されていることが解る。これは、上述した補正処理(図5)によって、第1の囲み線85の第2部分852を構成する複数個の画素の色値が、囲み線色範囲RA内の色値に補正されたからである。
図2のS230では、CPU310は、第2の二値画像データに対して、互いに離れた候補オブジェクトに互いに異なる識別子を割り当てるラベリング処理を行う。具体的には、CPU310は、連続する1以上の特定色画素で構成される連続な1つのオブジェクトに、候補オブジェクトとして1つの識別子を割り当てる。そして、CPU310は、互いに離れた複数の候補オブジェクトに、互いに異なる識別子を割り当てる。図3(C)の例では、候補オブジェクト81bと候補オブジェクト85bと候補オブジェクト86bとに、互いに異なる識別子が割り当てられる。この結果、二値化処理によって抽出された候補オブジェクトが適切に識別される。
S235では、CPU310は、抽出された候補オブジェクトに対して、囲み線判定処理を実行する。囲み線判定処理では、抽出された候補オブジェクトのそれぞれが、囲み線であるか否かを判定する処理である。第2の二値画像80bによって抽出された候補オブジェクトは、囲み線以外のオブジェクトの全部または一部のうちの特定色を有する画像を含む。例えば、第2の二値画像80bの候補オブジェクト81bは、スキャン画像80のオブジェクト81の一部であり、囲み線ではない。このために、スキャン画像80内の囲み線のみを抽出すべく、囲み線判定処理が実行される。具体的には、囲み線判定処理は、抽出された候補オブジェクトが、囲み線としての所定の形状、すなわち、ループ状の形状を有するか否かを判定する。
なお、候補オブジェクトがループ状の形状を有するか否かを判定する方法としては、種々の方法を採用可能である。例えば、以下の方法を採用可能である。ここで、図3(C)の第2の二値画像80bを例として用いて、説明を行う。判定対象の候補オブジェクトを「対象オブジェクト」と呼び、対象オブジェクトを構成する特定色画素を「対象オブジェクト画素」と呼び、対象オブジェクトには含まれない画素、すなわち、非特定色画素や、他の候補オブジェクトを構成する特定色画素を「非対象オブジェクト画素」と呼ぶ。
まず、複数の非対象オブジェクト画素が連続する領域であって、第2の二値画像80bの端を含む領域が、特定される。特定される領域は、対象オブジェクトの外側を全周に亘って囲む領域である(「第1種外周領域」と呼ぶ)。候補オブジェクト85bが対象オブジェクトである場合、第1種外周領域は、候補オブジェクト85bの外側の全体、すなわち、外側の背景を表す領域と、外側に配置された候補オブジェクト81bと候補オブジェクト86bと、の全体の領域OA1(図3(C)のハッチングされた領域)である。
第2の二値画像80bから第1種外周領域OA1を除いた残りの領域は、対象オブジェクトの最も外側の輪郭に囲まれた領域である(「第1種判定領域」と呼ぶ)。候補オブジェクト85bが対象オブジェクトである場合、第1種判定領域は、候補オブジェクト85bの最も外側の輪郭に囲まれた領域、すなわち、候補オブジェクト85bと、候補オブジェクト85bの内側の背景を表す領域と、の全体である。
第1種判定領域から、複数の非対象オブジェクト画素が連続する領域が検出される場合、対象オブジェクトの形状がループ状である、と判定される。候補オブジェクト85bが対象オブジェクトである場合、第1種判定領域から(具体的には、候補オブジェクト85bの内側から)、複数の非対象オブジェクト画素が連続する領域(すなわち、背景を表す領域)が検出される。従って、候補オブジェクト85bの形状や、候補オブジェクト86bの形状はループ状であると判定される。第1種判定領域から、複数の非対象オブジェクト画素が連続する領域が検出されない場合、対象オブジェクトの形状はループ状ではない、と判定される。例えば、候補オブジェクト81bの形状はループ状ではない、と判定される。
囲み線判定処理によって、スキャン画像80に囲み線がオブジェクトとして含まれる場合には、囲み線が抽出される。図3の例では、スキャン画像80内の2個の囲み線85、86が抽出される。
S250では、CPU310は、オリジナルのスキャン画像80を表すスキャンデータを用いて、所定の画像処理を実行する。具体的には、囲み線は、スキャン画像80内の一部の領域を囲む線である。CPU310は、抽出された各囲み線の内側に位置する領域、すなわち、各囲み線に囲まれた領域(内側領域とも呼ぶ)を特定する。そして、CPU310は、特定される内側領域内のオブジェクトを特定する。このように、所定の領域内の文字や描画などのオブジェクトを特定する処理は、公知の様々な方法が採用される。例えば、内側領域の外縁の色を、内側領域の背景の色として特定する。そして、内側領域内の複数個の画素を、背景の色を有する画素と、背景の色以外の色を有するオブジェクト画素と、に分類する。そして、内側領域のうち、複数個のオブジェクト画素によって構成される部分を、オブジェクトとして特定する。さらに、CPU310は、特定されたオブジェクトの画像をスキャン画像80から切り出して、切り出されたオブジェクトの画像が並べられた新たな画像を表す画像データを、処理済みデータとして生成する。図3(D)には、処理済みデータによって表される処理済み画像90が図示されている。処理済み画像90は、スキャン画像80の第1の囲み線85によって囲まれたオブジェクト82と、スキャン画像80の第2の囲み線86によって囲まれたオブジェクト83と、が並べて配置されている。
S255では、CPU310は、処理済データを、ネットワーク500を介して、複合機100に送信する。S120では、複合機100のCPU110は、サーバ300から処理済データを受信する。S130では、CPU110は、処理済データを用いて印刷データを生成し、生成した印刷データを印刷実行部170に供給する。印刷実行部170は、受信した印刷データに従って、画像を印刷する。例えば、図3(D)に示す処理済み画像90が印刷される。
以上説明した第1実施例によれば、図2のS205にて、対象画像データとしてのスキャンデータを用いて、対象画像としてのスキャン画像80内の囲み線の候補である候補オブジェクトが抽出される。そして、図2のS210、S215にて、候補オブジェクトに基づいて、スキャン画像80内の一部の領域である部分画像PIが、補正対象の部分画像として決定される。さらに、図2のS220の補正処理(図5)によって、部分画像PI内の画素の値を補正して、補正済みの部分画像PIを含む補正済みスキャン画像80hを表す補正スキャンデータが生成される。そして、図2のS225〜S235にて、補正スキャンデータを用いて、囲み線が抽出される。この結果、囲み線を精度良く抽出し得る。具体的には、抽出すべき第1の囲み線85の第2部分852は、第2背景部BG2上に記入された部分であるので、補正前のスキャンデータに対する抽出処理(S205の二値化処理)では、囲み線の候補である候補オブジェクトとして抽出されない。したがって、第1の二値画像80aからは、第1の囲み線85は、囲み線として抽出できない。しかしながら、補正処理によって、第1の囲み線85の第2部分852の色は、囲み線色範囲RA内の色に補正される。この結果、第1の囲み線85の第2部分852は、補正スキャンデータに対する抽出処理(S225〜S235)では、囲み線の候補である候補オブジェクトとして抽出され(S225)、最終的に、第1の囲み線85は、適切に囲み線として抽出される(S240、S235)。したがって、ユーザが囲み線で囲むことによって指定したオブジェクトを精度良く特定することができ、ユーザの意図に沿った処理済み画像90を表す処理済みデータを生成することができる。
さらに、補正対象は、スキャン画像80の全体ではなく、スキャン画像80の一部の領域である部分画像PIである。この結果、囲み線を抽出する画像処理の処理負荷を軽減できるので、処理時間の低減や、処理に必要なリソース(例えば、必要な揮発性記憶装置320のメモリ量)の低減を実現できる。
さらに、スキャン画像80に対する抽出処理、すなわち、S205の二値化処理は、スキャン画像80内の複数個の画素の中から、特定色(例えば、赤)を示す色値に基づいて決定される囲み線色範囲内の色値を有する複数個の特定色画素を抽出する処理を含む。そして、補正済みスキャン画像80hに対する抽出処理、すなわち、S225〜S235の処理は、同様に、補正済みスキャン画像80h内の複数個の画素の中から、囲み線色範囲内の色値を有する複数個の特定色画素を抽出する処理(S225)を含む。この結果、スキャン画像80に対する抽出処理や、補正済みスキャン画像80hに対する抽出処理において、特定色を有する囲み線の候補となる候補オブジェクトを適切に抽出することができる。
また、図2のS210にて、スキャン画像80は、複数個のブロックBRに分割され、S215では、複数個のブロックBRのうち、候補オブジェクトを含む1以上の第1種のブロックと、第1種のブロックに隣接する1以上の第2種のブロック内の画像が、補正対象の部分画像PIとして決定される。この結果、CPU310は、補正対象の部分画像を過不足なく決定することができる。したがって、囲み線を抽出するための処理時間を低減することができる。
B.第2実施例:
第2実施例では、サーバ300が実行する画像処理の一部が第1実施例とは異なっている。図7は、第2実施例の画像処理のフローチャートである。図7のフローチャートでは、図2のサーバ300が実行する処理とは異なる処理には、符号の末尾に「B」を付し、図2のサーバ300が実行する処理と同じ処理には、図2と同じ符号を付した。
図7の画像処理では、図2のS205の後に、S206BとS207Bの処理が追加される。図8は、スキャン画像80と第1の二値画像80aの一例を示す図である。図8(A)に示すように、図3(A)と同じスキャン画像80が処理対象である場合には、S205の処理によって、図8(B)に示すように、図3(B)と同じ第1の二値画像80aを表す二値画像データが生成される。
S206BとS207Bでは、CPU310は、図2のS230とS235にて第2の二値画像80bに対して実行されるラベリング処理と囲み線判定処理とを、第1の二値画像80aに対して実行する。
スキャン画像80内の第2の囲み線86は、第1の二値画像80aにて、候補オブジェクト86aとして全体が抽出されている。このために、S206BおよびS207Bの処理によって、第2の囲み線86は、囲み線として正しく抽出される。すなわち、囲み線は、特定色を有するという第1の特徴を有し、かつ、ループ状の形状を有するという第2の特徴を有するオブジェクトである。第2の囲み線86は、S205にて、第1の特徴を有する候補オブジェクト86aとして抽出され、さらに、S207Bにて、候補オブジェクト86aは、第2の特徴を有すると判定される。
一方、スキャン画像80内の第1の囲み線85については、第1の二値画像80aにて、候補オブジェクト85aとして第1部分851だけが抽出され、第2部分852は抽出されていない。このために、S206BおよびS207Bの処理によって、第1の囲み線85は、囲み線として抽出されない。すなわち、第1の囲み線85の第1部分851は、S205にて、第1の特徴を有する候補オブジェクト85aとして抽出されるが、S207Bにて、候補オブジェクト85aは、第2の特徴を有しないと判定される。
S210では、CPU310は、図2のS210と同様に、スキャン画像80および第2の二値画像80bに複数個のブロックが設定される。
さらに、図7の画像処理では、図2のS215とは異なるS215Bの処理が実行される。S215Bでは、CPU310は、図8(B)に示すように、囲み線として抽出された第2の囲み線86を含む領域、すなわち、候補オブジェクト86aを含む複数個のブロックBRは、第1種のブロックとして特定しない。そして、CPU310は、図8(B)に示すように、囲み線として抽出されていない候補オブジェクト81a、85aを含む複数個のブロックBRを第1種のブロックとして特定する。そして、CPU310は、第1の二値画像80aにおいて、第1種のブロック以外の複数個のブロックの中から、少なくとも1個の第1種のブロックと隣接する第2種のブロックを特定する。この結果、CPU310は、スキャン画像80において、図3(A)の部分画像PIとは異なる領域を、補正対象の部分画像PI2(図8(A))として特定する。図8(A)に示すように、補正対象の部分画像PI2は、この段階で、抽出されていない第1の囲み線85を含むが、抽出済みの第2の囲み線86を含まないように決定される。
なお、これに代えて、CPU310は、第1実施例のS215と同様の処理で部分画像PIを決定した後に、部分画像PIから囲み線として抽出された第2の囲み線86と、第2の囲み線86の内側の領域を除外することによって、部分画像PI2を決定しても良い。すなわち、図3(A)の部分画像PIから候補オブジェクト86aを含む複数個のブロックBRと、候補オブジェクト86aを含む複数個のブロックBRの内側のブロックBRと、が除外された領域が、補正対象の部分画像PI2として決定されても良い。
補正対象の部分画像PI2が特定された後のS220〜S255の処理は、図2のS220〜S255の処理と同じである。
以上説明した第2実施例によれば、S205、S206B、S207Bにて、特定色を有するという第1の特徴を有し、かつ、ループ状の形状を有するという第2の特徴を有する第2の囲み線86が決定され、第1の特徴を有し、かつ、ループ状の形状を有しない第1の囲み線85の第1部分851が決定される。そして、S215Bにて、第2の囲み線86は、補正対象の部分画像PI2を決定するための候補オブジェクトとしては用いられず、第1の囲み線85の第1部分851のみが、補正対象の部分画像PI2を決定するための候補オブジェクトとして用いられる。換言すれば、第1の特徴を有し、かつ、第2の特徴を有しない第1の囲み線85の第1部分851が、補正対象の部分画像PI2を決定するための候補オブジェクトとして抽出され、第1の特徴を有し、かつ、第2の特徴を有する第2の囲み線86が、補正対象の部分画像PI2を決定するための候補オブジェクトとして抽出されない。
上記構成によれば、補正の必要がない画像が、補正対象の部分画像PI2に含まれることを防ぐことができる。この結果、囲み線を抽出するための処理時間を低減することができる。特に、補正処理は、ヒストグラムの生成を含むので、処理時間が長くなりがちであるので、補正対象の部分画像PI2をできるだけ小さくすることは、処理時間を低減するために効果的である。
C.第3実施例:
第3実施例では、サーバ300が実行する画像処理の一部が第1および第2実施例とは異なっている。図9は、第3実施例の画像処理のフローチャートである。図9のフローチャートでは、図7の画像処理とは異なる処理には、符号の末尾に「C」を付し、図7の画像処理と同じ処理には、図7と同じ符号を付した。
図9の画像処理では、S210の後に実行されるS215C〜S235の処理が、S220Cの補正処理の処理条件を変更しながら、所定回数繰り返される。繰り返される所定回数は、例えば、3回である。すなわち、S235の後のS237Cにて、CPU310は、S215C〜S235の処理を所定回数繰り返したか否かを判断する。所定回数繰り返していない場合には(S237C:NO)、S238Cにて、CPU310は、処理条件を変更して、S215Cに戻る。変更される処理条件は、図5のS30にて決定されるRGBの3つの成分のそれぞれの補正パラメータPCR、PCB、PCGを決定する際に用いられる所定割合PRである。例えば、所定割合PRは、1回目の補正処理では、第1実施例と同様に、25%とされる。そして、所定割合PRは、段階的に大きくされ、例えば、2回目の補正処理では30%、3回目の補正処理では35%とされる。この結果、1〜3回目の補正処理にて、用いられる補正パラメータPCR、PCB、PCGは、それぞれ異なる値となる。
図10は、1個のブロックBRのR成分値についてのヒストグラムの一例を示す図である。図10のヒストグラムは、複数色の背景と、囲み線と、を含むブロック、例えば、図8(A)のスキャン画像80の白色の第1背景部BG1と、白とは異なる色の第2背景部BG2と、第1の囲み線85と、を含むブロックのヒストグラムである。この場合には、ヒストグラムは、第1背景部BG1のピーク(成分値Pb1を中心とするピーク)と、第2背景部BG2のピーク(成分値Pb2を中心とするピーク)を含む。そして、このブロック内に含まれる第1の囲み線85が第2背景部BG2の上に記入されている第2部分852である場合には、第2部分852のピークLP2は、第2背景部BG2のピークと、ほぼ同じ位置となる(図10)。また、このブロック内に含まれる第1の囲み線85が第1背景部BG1の上に記入されている第1部分851である場合には、第1部分852のピークは、第1背景部BG1のピークと、ほぼ同じ位置となる(図示省略)。
ここで、第1の囲み線85が第2背景部BG2の上に記入されている第2部分852である場合には、補正パラメータPCRは、第2背景部BG2の色の成分値Pb2の近傍の値になることが好ましい。しかしながら、1個の所定割合PRのみを用いて補正パラメータが決定される場合には、補正パラメータPCRは、第1背景部BG1の色の成分値Pb2の近傍の値になる可能性がある。そうすると、当該補正処理後において、当該補正処理によって生成された補正スキャンデータに対する二値化処理(S225)で、第2部分852が抽出できない可能性がある。そこで、本実施例では、複数個の所定割合PRを用いて、複数回の補正処理(S220C)を行う。その結果、少なくとも1つの補正処理によって生成された補正スキャンデータに対する二値化処理(S225)で、第2部分852が抽出できる可能性を高くすることができる。例えば、所定割合PR=25%の時の補正処理では、補正パラメータPCRが第1背景部BG1の成分値Pb1の近傍の値となった結果、当該補正処理後の二値化処理では、第2部分852を抽出できないとする。この場合でも、例えば、所定割合PR=35%の時の補正処理では、補正パラメータPCRが第2背景部BG2の成分値Pb2の近傍の値となった結果、当該補正処理後の二値化処理において、第2部分852を抽出できる。
また、第1の囲み線85が第1背景部BG1の上に記入されている第1部分851である場合には、補正パラメータPCRは、第1背景部BG1の色の成分値Pb1の近傍の値になることが好ましい。この場合には、例えば、所定割合PR=25%の時の補正処理で、補正パラメータPCRが第1背景部BG1の成分値Pb1の近傍の値となった結果、当該補正処理後の二値化処理において、第1部分851が抽出される。
1回目のS215Cでは、CPU310は、第2実施例の215B(図7)と同様に、S205で抽出された候補オブジェクトのうち、囲み線判定処理(S207B)にて囲み線と判定されなかった候補オブジェクトに基づいて、補正対象の部分画像PI2を決定する。そして、2回目以降のS215では、この時点までに実行されたS205およびS225の二値化処理で抽出された全ての特定色画素で構成される候補オブジェクトのうち、囲み線判定処理(S207BまたはS235)にて囲み線と判定されなかった候補オブジェクトに基づいて、補正対象の部分画像を決定する。
また、2回目以降のS230Cでは、CPU310は、スキャン画像80内の複数個の画素を、この時点までに実行されたS205およびS225で抽出された全ての特定色画素と、他の画素と、に分類する1個の二値画像を生成し、当該二値画像を用いて、上述したラベリングを実行する。この結果、S235の囲み線判定処理の対象とするべき、候補オブジェクトが適切に識別される。
以上説明した第3実施例によれば、互いに異なる複数回の補正処理(S220C)が実行される。すなわち、CPU310は、1回目のS220Cにて、第1の補正処理を実行して第1の補正スキャンデータを生成し、さらに、2回目のS220Cにて、第1の補正処理とは異なる第2の補正処理を実行して、第2の補正スキャンデータを生成する。そして、CPU310は、第1の補正スキャンデータと、第2の補正スキャンデータと、を用いて、囲み線を抽出する(1回目および2回目のS225〜S235)。この結果、上述したように、囲み線をさらに精度良く抽出できる。
また、上述したように、第1の補正処理と第2の補正処理との間では、補正処理の単位領域であるブロックBRごとに決定される補正パラメータPCR、PCB、PCGが互いに異なる。すなわち、第1の補正処理は、第1の補正パラメータを用いて実行され、第2の補正処理は、第2の補正パラメータを用いて実行される。この結果、上述したように、二値化処理によって抽出すべき候補オブジェクトが抽出される可能性が高まるように、複数個の補正スキャンデータを適切に生成することができる。
F.変形例:
(1)上記第3実施例では、複数回の補正処理の間では、ブロックBRごとに決定される補正パラメータPCR、PCB、PCGが互いに異なる。これに代えて、複数回の補正処理の間では、補正処理が行われる単位領域のサイズが異なっていても良い。例えば、補正処理が行われる単位領域のサイズは、段階的に小さくされても良い。具体的には、1回目の補正処理は、ブロックBR(例えば、縦128画素×横128画素)ごとに実行される。そして、2回目の補正処理は、ブロックBRを4分割した単位領域(例えば、縦64画素×横64画素)ごとに実行され、3回目の補正処理は、2回目の単位領域を4分割した単位領域(例えば、縦32画素×横32画素)ごとに実行されても良い。
単位領域が小さいほど、1個の単位領域に複数色の背景(例えば、上述した第1背景部BG1と第2背景部BG2)とが含まれる可能性を低減できる。したがって、単位領域が小さいほど、1個の単位領域に複数色の背景が含まれることによって、二値化処理によって抽出すべき候補オブジェクトが抽出できなくなることを抑制できる。
一方、例えば、囲み線の記入に想定より太いペンが用いられた場合には、最初の単位領域のサイズでは、囲み線の一部分のみが含まれ、背景がほとんど含まれない単位領域が存在する可能性が高くなる。その場合には、背景の色のピークに対応する適切な補正パラメータが決定できない可能性があり、単位領域をより大きくした方がより適切な補正パラメータが決定できる可能性がある。このように、単位領域が大きい場合には、想定より太いペンによって囲み線が記入されたことによって、二値化処理によって抽出すべき候補オブジェクトが抽出できなくなることを抑制できる。このように、単位領域のサイズによってメリットとデメリットがあるところ、本変形例では、互いに異なる複数個のサイズの単位領域を用いる複数回の補正処理を採用することによって、抽出すべき候補オブジェクトが抽出される可能性を高くすることができる。
このように、第3実施例において、第1の補正処理は、補正対象の部分画像内に設定される第1のサイズの単位領域ごとに実行され、第2の補正処理は、補正対象の部分画像内に設定される第1のサイズとは異なる第2のサイズの単位領域ごとに実行されても良い。こうすれば、抽出すべき候補オブジェクトが抽出される可能性が高くなるように、複数個の補正済みスキャン画像データを適切に生成することができる。
(2)上記第3実施例では、1回の補正処理(S220C)が実行される度に、当該補正処理にて生成された補正スキャンデータを用いて、囲み線を抽出する処理(225〜S235)を実行される。すなわち、1回の補正処理(S220C)が実行される度に、S235の囲み線判定処理が実行される。これに代えて、1回の補正処理が実行される度に、当該補正処理にて生成された補正処理スキャンデータを用いた二値化処理(S225)のみが実行されても良い。この場合には、複数回の補正処理と複数回の二値化処理の後に、スキャン画像80内の複数個の画素を、複数回の二値化処理によって抽出された全ての特定色画素と、他の画素と、を分類する1個の二値画像データが生成されても良い。そして、当該二値画像データを用いてラベリング処理(S230)と囲み線判定処理(S235)が、1回だけ実行されても良い。
すなわち、複数回の補正処理にて生成された複数個の補正スキャンデータを用いて、複数回の囲み線の抽出が行われても良く、1回だけ囲み線の抽出が行われても良い。
(3)上記第3実施例では、S215C〜S235の処理が、必ず所定回数繰り返される。これに代えて、例えば、抽出すべき囲み線の個数が予め解っている場合、例えば、ユーザによって囲み線の個数が予め指定されている場合や、予め囲み線の個数が1個に制限されている場合には、抽出すべき個数の囲み線が抽出された場合には、その時点で処理をS250に処理を進めても良い。この場合には、囲み線を抽出する処理の処理時間を低減し得る。
(4)上記第1実施例の図2のS215において、補正対象の部分画像PI1は、抽出済みの候補オブジェクトを含む第1種のブロックと、第1種のブロックに隣接する第2種のブロックと、を含んでいる。これに代えて、第1種のブロックに隣接する第2種のブロックのみを補正対象の部分画像PIとしても良い。また、ブロックBRのサイズが比較的小さい場合などには、図2のS215において、補正対象の部分画像PI1は、さらに、第2種のブロックに隣接するブロックBRを含んでも良い。あるいは、図2のS235の時点で、囲み線が抽出できなかった場合には、補正対象の部分画像PIをさらに拡大して、S220〜S235の処理をもう一度実行しても良い。
(5)上記各実施例では、スキャン画像80を複数個に分割する複数個のブロックBRを用いて、補正対象の部分画像PIが決定されている。これに代えて、例えば、図2のS205にて抽出された候補オブジェクトを構成する複数個の特定色画素の少なくとも1個から見て所定の距離(例えば、100画素分の距離)以内の領域が、補正対象の部分画像PIとして決定されても良い。
(6)上記実施例の補正処理(例えば、図2のS220)は、上記式(1)を用いて、実行されているが、これに代えて、ブロック内の背景色を白色に近づけるように、ブロック内の複数個の画素の色値を補正する各種の補正処理が採用され得る。例えば、補正処理は、上述した補正パラメータ(PCR、PCB、PCG)を用いて、以下の式(2)を用いて実行されても良い。
OUT=RIN+(255−PCR)
OUT=GIN+(255−PCG)
OUT=BIN+(255−PCB) ...(2)
(7)上記各実施例では、抽出すべき特定のオブジェクトは、囲み線、すなわち、特定色を有するという第1の特徴を有し、かつ、所定の形状(具体的には、ループ形状)を有するという第2の特徴を有するオブジェクトである。これに代えて、他の特定のオブジェクトが抽出されても良い。例えば、抽出すべき特定のオブジェクトは、特定または任意の文字であっても良い。この場合には、図2のS205では、抽出すべき文字や記号の候補となる候補オブジェクトが抽出される。例えば、抽出すべき文字が有する色の複数個の画素が抽出されても良い。そして、図2のS235では、S205にて抽出された複数個の画素によって構成される候補オブジェクトが、抽出すべき文字であるかを判定する処理が実行される。候補オブジェクトが、特定または任意の文字であるか否かを判定する方法は、ヒストグラムを用いる方法や、パターンマッチングを用いる方法など、様々な方法が知られている。
(8)S325の囲み線判定処理は、上記実施例とは異なる他の種々の方法を採用可能である。例えば、典型的な囲み線の形状パターンを用いるパターンマッチングが採用されても良い。S250の処理は、囲み線によって囲まれたオブジェクトが消去された画像を生成する処理であっても良く、囲み線の内側の領域内の画像に対する任意の処理を採用可能である。
(9)処理済データの用途としては、印刷に限らず、任意の用途を採用可能である。例えば、複合機100のCPU110は、取得した処理済データを、将来に利用するために、不揮発性記憶装置130に格納してもよい。また、処理済データは、複合機100以外の装置、例えば、ネットワーク500に接続された他のサーバやユーザのパーソナルコンピュータ(図示省略)に、処理済データを送信してもよい。
(10)上記実施例では、対象画像データとして、読取実行部160によって光学的に読み取られたスキャンデータが採用されている。これに限らず、例えば、デジタルカメラによって光学的に読み取られた画像データを採用してもよく、文書やイラストなどを作成するためのアプリケーションプログラムを用いて加工して得られる画像データであってもよい。また、囲み線は、例えば、ペンを用いて記入された囲み線に限られず、上記アプリケーションプログラムを用いて、画像内に描画された囲み線であっても良い。
(11)上記実施例のサーバ300が実行する画像処理は、サーバ300と異なる種類の装置(例えば、デジタルカメラ、スキャナ、パーソナルコンピュータ、携帯電話)によって実現されてもよい。また、サーバ300は、ネットワークを介して互いに通信可能な複数個の装置(例えば、コンピュータ)を含んでも良い。サーバ300が実行する画像処理は、複数個の装置によって、一部ずつ実行され得る。この場合には、複数個の装置が、1個の画像処理装置として機能する。
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、サーバ300が実行する画像処理の全部または一部は、論理回路を含む専用のハードウェア回路によって実現されても良い。
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
100...複合機、110...CPU、120...揮発性記憶装置、130...不揮発性記憶装置、132...コンピュータプログラム、140...表示部、150...操作部、160...読取実行部、170...印刷実行部、180...通信インタフェース、190...データ処理部、300...サーバ、310...CPU、320...揮発性記憶装置、330...不揮発性記憶装置、332...コンピュータプログラム、380...通信インタフェース、390...画像処理部、500...ネットワーク、900...システム

Claims (14)

  1. 画像処理装置であって、
    対象画像を表す対象画像データを取得する画像データ取得部と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出部と、
    前記対象画像を複数個のブロックに分割し、前記複数個のブロックのうち、前記候補オブジェクトを含む1以上の第1種のブロックに隣接する1以上の第2種のブロックを含む前記対象画像内の一部の領域を、部分画像として決定する決定部と、
    記部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正部と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出部と、
    を備える、画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記補正部は、第1の補正処理を実行して第1の補正済み対象画像データを生成し、
    前記補正部は、さらに、第1の補正処理とは異なる第2の補正処理を実行して第2の補正済み対象画像データを生成し、
    前記第2の抽出部は、前記第1の補正済み対象画像データと、前記第2の補正済み対象画像データと、を用いて、前記特定のオブジェクトを抽出する、画像処理装置。
  3. 画像処理装置であって、
    対象画像を表す対象画像データを取得する画像データ取得部と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出部と、
    前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正部と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出部と、
    を備え
    前記補正部は、
    前記部分画像内に複数個の単位領域を設定し、
    前記単位領域ごとに決定される第1のパラメータを用いて前記単位領域ごとに第1の補正処理を実行して第1の補正済み対象画像データを生成し、
    前記単位領域ごとに決定される第2のパラメータを用いて前記単位領域ごとに第2の補正処理を実行して第2の補正済み対象画像データを生成し、
    前記第2の抽出部は、前記第1の補正済み対象画像データと、前記第2の補正済み対象画像データと、を用いて、前記特定のオブジェクトを抽出する、画像処理装置。
  4. 画像処理装置であって、
    対象画像を表す対象画像データを取得する画像データ取得部と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出部と、
    前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正部と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出部と、
    を備え
    前記補正部は、
    前記部分画像内に第1のサイズの単位領域を設定し、前記第1のサイズの単位領域ごとに第1の補正処理を実行して第1の補正済み対象画像データを生成し、
    前記部分画像内に前記第1のサイズとは異なる第2のサイズの単位領域を設定し、前記第2のサイズの単位領域ごとに第2の補正処理を実行して第2の補正済み対象画像データを生成し、
    前記第2の抽出部は、前記第1の補正済み対象画像データと、前記第2の補正済み対象画像データと、を用いて、前記特定のオブジェクトを抽出する、画像処理装置。
  5. 画像処理装置であって、
    対象画像を表す対象画像データを取得する画像データ取得部と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出部と、
    前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正する補正処理を実行して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正部であって、前記補正処理は、前記部分画像内に設定される単位領域内の下地の色を白に近づけるように、前記単位領域内の複数個の画素の値を補正する処理である、前記補正部と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出部と、
    を備える、画像処理装置。
  6. 請求項1〜5のいずれかに記載の画像処理装置であって、
    前記第1の抽出部が前記候補オブジェクトを抽出する処理は、前記対象画像内の複数個の画素の中から、特定色を示す色値に基づいて決定される範囲内の色値を有する複数個の画素を抽出する処理を含み、
    前記第2の抽出部が前記特定のオブジェクトを抽出する処理は、補正済みの前記対象画像内の複数個の画素の中から、前記特定色を示す色値に基づいて決定される範囲内の色値を有する複数個の画素を抽出する処理を含む、画像処理装置。
  7. 請求項1〜のいずれかに記載の画像処理装置であって、
    前記特定のオブジェクトは、第1の特徴を有し、かつ、第2の特徴を有するオブジェクトであり、
    前記第1の抽出部は、
    前記第1の特徴を有し、かつ、前記第2の特徴を有しないオブジェクトを前記部分画像を決定するための前記候補オブジェクトとして抽出し、
    前記第1の特徴を有し、かつ、前記第2の特徴を有するオブジェクトを前記部分画像を決定するための前記候補オブジェクトとして抽出しない、画像処理装置。
  8. 請求項に記載の画像処理装置であって、
    前記第1の特徴は、特定色を示す色値に基づいて決定される範囲内の色値を有することであり、
    前記第2の特徴は、所定の形状を有することである、画像処理装置。
  9. 請求項1〜のいずれかに記載の画像処理装置であって、
    前記対象画像データは、ユーザによって記入されたマーカを含む原稿を光学的に読み取ることによって得られる画像データであり、
    前記特定のオブジェクトは、ユーザによって記入されたマーカを示すオブジェクトである、画像処理装置。
  10. 請求項1〜のいずれかに記載の画像処理装置であって、
    前記特定のオブジェクトは、前記対象画像内の一部の領域を囲む線であり、
    前記画像処理装置は、さらに、
    前記対象画像において、前記特定のオブジェクトの内側に位置する領域を特定する領域特定部と、
    を備える、画像処理装置。
  11. コンピュータプログラムであって、
    対象画像を表す対象画像データを取得する画像データ取得機能と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出機能と、
    前記対象画像を複数個のブロックに分割し、前記複数個のブロックのうち、前記候補オブジェクトを含む1以上の第1種のブロックに隣接する1以上の第2種のブロックを含む前記対象画像内の一部の領域を、部分画像として決定する決定機能と、
    記部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正機能と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出機能と、
    をコンピュータに実現させるコンピュータプログラム。
  12. コンピュータプログラムであって、
    対象画像を表す対象画像データを取得する画像データ取得機能と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出機能と、
    前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正機能と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出機能と、
    をコンピュータに実現させ
    前記補正機能は、
    前記部分画像内に複数個の単位領域を設定し、
    前記単位領域ごとに決定される第1のパラメータを用いて前記単位領域ごとに第1の補正処理を実行して第1の補正済み対象画像データを生成し、
    前記単位領域ごとに決定される第2のパラメータを用いて前記単位領域ごとに第2の補正処理を実行して第2の補正済み対象画像データを生成し、
    前記第2の抽出機能は、前記第1の補正済み対象画像データと、前記第2の補正済み対象画像データと、を用いて、前記特定のオブジェクトを抽出するコンピュータプログラム。
  13. コンピュータプログラムであって、
    対象画像を表す対象画像データを取得する画像データ取得機能と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出機能と、
    前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正機能と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出機能と、
    をコンピュータに実現させ
    前記補正機能は、
    前記部分画像内に第1のサイズの単位領域を設定し、前記第1のサイズの単位領域ごとに第1の補正処理を実行して第1の補正済み対象画像データを生成し、
    前記部分画像内に前記第1のサイズとは異なる第2のサイズの単位領域を設定し、前記第2のサイズの単位領域ごとに第2の補正処理を実行して第2の補正済み対象画像データを生成し、
    前記第2の抽出機能は、前記第1の補正済み対象画像データと、前記第2の補正済み対象画像データと、を用いて、前記特定のオブジェクトを抽出するコンピュータプログラム。
  14. コンピュータプログラムであって、
    対象画像を表す対象画像データを取得する画像データ取得機能と、
    前記対象画像データを用いて、前記対象画像内の所定の特徴を有する特定のオブジェクトの候補である候補オブジェクトを抽出する第1の抽出機能と、
    前記候補オブジェクトに基づいて決定される前記対象画像内の一部の領域である部分画像内の画素の値を補正する補正処理を実行して、補正済みの前記部分画像を含む補正済みの前記対象画像を表す補正済み対象画像データを生成する補正機能であって、前記補正処理は、前記部分画像内に設定される単位領域内の下地の色を白に近づけるように、前記単位領域内の複数個の画素の値を補正する処理である、前記補正機能と、
    前記補正済み対象画像データを用いて、前記特定のオブジェクトを抽出する第2の抽出機能と、
    をコンピュータに実現させるコンピュータプログラム。
JP2014133882A 2014-06-30 2014-06-30 画像処理装置およびコンピュータプログラム Active JP6331772B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014133882A JP6331772B2 (ja) 2014-06-30 2014-06-30 画像処理装置およびコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014133882A JP6331772B2 (ja) 2014-06-30 2014-06-30 画像処理装置およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2016012837A JP2016012837A (ja) 2016-01-21
JP6331772B2 true JP6331772B2 (ja) 2018-05-30

Family

ID=55229291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014133882A Active JP6331772B2 (ja) 2014-06-30 2014-06-30 画像処理装置およびコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6331772B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3938837B2 (ja) * 2000-07-27 2007-06-27 株式会社リコー 画像処理装置
JP4631749B2 (ja) * 2006-03-03 2011-02-16 富士ゼロックス株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Also Published As

Publication number Publication date
JP2016012837A (ja) 2016-01-21

Similar Documents

Publication Publication Date Title
JP6747224B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6781406B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6127877B2 (ja) 画像処理装置、および、コンピュータプログラム
JP5842441B2 (ja) 画像処理装置およびプログラム
JP2014183446A (ja) 画像処理装置、および、コンピュータプログラム
JP6031921B2 (ja) 画像処理装置およびプログラム
US10339636B2 (en) Image processing apparatus that specifies edge pixel in target image by calculating edge strength
JP6331772B2 (ja) 画像処理装置およびコンピュータプログラム
US10389909B2 (en) Image processing apparatus that specifies edge pixel in target image using minimum and maximum component values of pixel value in target image data
US9633290B2 (en) Image processing apparatus and control method therefor
JP5949399B2 (ja) 画像処理装置およびプログラム
JP6500638B2 (ja) 画像処理装置、および、コンピュータプログラム
JP2019016898A (ja) 画像処理装置、および、コンピュータプログラム
JP2017156853A (ja) 生成装置、および、コンピュータプログラム
JP7205689B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6841254B2 (ja) 画像処理装置、および、コンピュータプログラム
JP7248944B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6781398B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6867609B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6879465B2 (ja) 画像処理装置、および、コンピュータプログラム
JP2016178467A (ja) 画像処理装置および画像処理方法
JP6550903B2 (ja) 画像処理装置、および、コンピュータプログラム
JP2016134016A (ja) 画像処理装置およびコンピュータプログラム
JP2015049794A (ja) 画像処理装置、および、コンピュータプログラム
JP2014107687A (ja) 画像処理装置、および、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180123

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180416

R150 Certificate of patent or registration of utility model

Ref document number: 6331772

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150