JP2018195262A - 画像処理装置、画像処理方法、プログラム - Google Patents

画像処理装置、画像処理方法、プログラム Download PDF

Info

Publication number
JP2018195262A
JP2018195262A JP2017101042A JP2017101042A JP2018195262A JP 2018195262 A JP2018195262 A JP 2018195262A JP 2017101042 A JP2017101042 A JP 2017101042A JP 2017101042 A JP2017101042 A JP 2017101042A JP 2018195262 A JP2018195262 A JP 2018195262A
Authority
JP
Japan
Prior art keywords
image
binary image
black pixel
binary
processing
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.)
Granted
Application number
JP2017101042A
Other languages
English (en)
Other versions
JP7030425B2 (ja
Inventor
崇 宮内
Takashi Miyauchi
崇 宮内
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017101042A priority Critical patent/JP7030425B2/ja
Priority to EP18171662.2A priority patent/EP3407252B1/en
Priority to US15/978,673 priority patent/US10846863B2/en
Publication of JP2018195262A publication Critical patent/JP2018195262A/ja
Application granted granted Critical
Publication of JP7030425B2 publication Critical patent/JP7030425B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/16Image preprocessing
    • G06V30/162Quantising the image signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/16Image preprocessing
    • G06V30/164Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • G06T5/70
    • G06T5/80
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Abstract

【課題】 相対的に大きい二値化閾値を用いた二値化処理は、文字が掠れた部分を黒画素化するが、照明の映り込み部分などの不要な部分も黒画素化してしまう。【解決手段】 相対的に大きい二値化閾値を用いた二値化処理で黒画素化された部分のうち、所定の処理に用いる部分を、相対的に小さい二値化閾値を用いて特定する。【選択図】 図6

Description

本発明は、画像処理装置、画像処理方法、プログラムに関する。
二値化処理によって入力画像の閾値未満の暗い画素を黒画素に変換し、黒画素群を文字とみなして文字用の所定の処理を行う技術がある。この画像中の文字が掠れた部分も文字として扱うために、掠れた部分も黒画素になるような二値化閾値を用いることが望ましい。特許文献1では、複数の二値化閾値それぞれで二値化した複数の二値画像のそれぞれについて二値画像に含まれる文字等のコンテンツ数とノイズ数とを評価し、それら複数の二値画像の中から最適な二値画像を選択する技術を開示する。
特開2016−224914号公報
しかしながら、従来技術では1つの二値画像に含まれる黒画素群を別の二値画像を用いて評価することはしてない。そのため、ある二値画像中に含まれる黒画素群のうち、所定の処理に用いる黒画素群を適切に特定することができないことがある。
そこで本発明は、二値画像に含まれる黒画素群のうち、所定の処理に用いる、あるいは用いない黒画素群を別の二値画像を用いて特定することを目的とする。
本発明は、特許請求の範囲に記載の通りである。
本発明によれば、所定の処理を行うために用いる黒画素群を適切に特定できる。
本発明の第1の実施形態に係る携帯端末の概観図である。 本発明の第1の実施形態に係る携帯端末の概略構成を示すブロック図である。 本発明の第1の実施形態に係る処理手順のフローチャートである。 本発明の第1の実施形態に係る枠検知処理、枠指定、歪み補正処理を表す図である。 本発明の第1の実施形態に係る画像補正処理のフローチャートである。 本発明の第1の実施形態に係る前景抽出処理のフローチャートである。 本発明の第1の実施形態に係る前景抽出処理の流れを示すである。 本発明の第1の実施形態に係るノイズ領域判定処理のフローチャートである。 本発明の第1の実施形態に係るノイズ領域判定処理の流れを示す図である。
[実施例1]
以下に、本発明を実施するための形態について図面を用いて説明する。
<携帯端末の構成>
図1に本実施例で利用する携帯端末(情報処理装置、画像処理装置)101の外観を示す。図1(a)は、携帯端末101を表側の外観図であり、表側には、タッチパネルディスプレイ102、操作ボタン103が含まれる。図1(b)は、携帯端末101の裏側の外観図であり、裏側には、カメラ104が配置されている。また、カメラ104には図示しないオートフォーカス機構が搭載されており、これにより焦点距離や被写体距離を測定することもできる。
なお、本実施例は撮影機能を持つ装置ならば利用が可能である。例えば、撮影機能を有するスマートフォン(携帯電話)やタブレット端末やパソコン(PC)のみならず、タッチパネルディスプレイを有するデジタルカメラでも構わない。また、有線または無線でカメラと接続されたPC等でも実施可能である。また、カメラ等で撮影された画像データが保存されている保存装置(メモリカード等)から、携帯端末やPC等が画像データを読み込んで本実施例の処理を行うことも可能である。
図2に携帯端末101の内部のハードウェア構成を示す。但し、この構成図は本実施例を実施するための構成の一例であり、この構成に限るものではない。図2において、CPU201、RAM202、ROM203がデータバス209を介してプログラムやデータを送受信する。データバス209には、記憶部204、データ送受信部205、撮像部206、表示部207、操作部208が接続される。さらに、CPU201、RAM202、ROM203も併せて、互いにプログラムやデータの送受信を行う。
記憶部204は、フラッシュメモリであり、画像データや図3の処理フローを実行するためのプログラムを含む各種プログラムを格納する。
データ送受信部205は、無線LANコントローラを有し、外部とのデータの送受信を実現する。
撮像部206は、カメラであり、ホワイトボード面の撮影を行って撮影画像を取得する。取得された撮影画像には、携帯端末のメーカー名やモデル名・画像解像度・絞り(F値)・焦点距離などのヘッダー情報が付与され、後述のように各部に送信される。
表示部207は、タッチパネルディスプレイ102を構成するディスプレイであり、撮影機能を用いてホワイトボード面を撮影する際の被写体の映像のライブビューを表示する。
操作部208は、タッチパネルディスプレイ102を構成するタッチパネルや操作ボタン103であり、ユーザからの操作を受け付けて各部へ該操作の情報を送信する。
なお、CPU201がROM203または記憶部204で保持されているコンピュータプログラムを実行することで、これらの携帯端末101内の構成要素の制御を行う。
<フローチャートを用いた本実施例の詳細説明>
本実施例では、ユーザが携帯端末101を用いてホワイトボード面を撮影し、撮影画像内からホワイトボード面の部分だけを切り出して画像補正するアプリケーションを想定している。図3は、本実施例における携帯端末101が実行する処理手順を説明するフローチャートである。また、図4は、撮影画像からホワイトボード面の部分を切り出す処理の流れを示した図である。
携帯端末101のCPU201(コンピュータ)が、ROM203に格納されている処理プログラムをRAM202にロードして実行することにより、図3の各ステップの処理を実行する処理部として機能する。なお、CPU201は、データ送受信部205を介して外部のサーバから取得した処理プログラムを記憶部204に格納し、その処理プログラムをRAM202にロードして実行することで、以下の各ステップの処理を実行する処理部として機能してもよい。
ステップS301において、CPU201は、ユーザによって選択または撮影された入力画像データを取得する。入力画像データが選択される場合には、記憶部204やメモリカード等に格納されている画像データの中から、操作部208を介してユーザによって指示された画像データを選択し、データパス209を経由して取得する。また、入力画像データが撮影される場合には、操作部208を介してユーザによって撮影指示を受け付け、撮像部206で取得された画像データを、データパス209を経由して取得する。入力画像データはR(レッド)、G(グリーン)、B(ブルー)の3チャンネルのカラー画像とする。図4(a)は、入力画像データであり、画像内にホワイトボード面401を撮影した領域を含む。
ステップS302において、CPU201は、ステップS301で取得した入力画像データ中から、ホワイトボード面の形状を表す四辺形領域を特定する領域特定処理を実行する。領域特定処理は、ホワイトボード面の各辺の候補となる候補線分群(候補辺群)を検出し、その候補線分群の組み合わせで構成される四辺形を評価することで実現する。候補線分群の検出と、四辺形の評価方法には、公知の方法が用いられる。たとえば、候補線分群は、入力画像から検出されたエッジ情報を、極座標上に投票して直線を検出するHough変換アルゴリズムによって検出する。また、四辺形は、対辺の長さの比や内角の大きさ、アスペクト比などの幾何学的な情報に基づいて評価してもよいし、四辺形を構成する線分について、内側と外側の色味や分散を比較するなどの画像情報に基づいて評価してもよい。
ステップS303において、CPU201は、ステップS302で検出された四辺形領域を前記入力画像データに重ねて表示し、当該表示された四辺形領域の形状変更(修正)をユーザから受け付ける領域指定処理を実行する。図4(b)は、入力画像上に特定された四辺形領域を重ねて表示した画像である。402、403、404、405が特定された領域の辺を示しており、ユーザから辺の位置の指示を受け付けるための辺ハンドラである。また、406、407、408、409は特定された領域の頂点を示しており、ユーザから頂点の位置の指示を受け付けるための頂点ハンドラである。ユーザが辺ハンドラおよび頂点ハンドラを、選択して操作することで四辺形領域の形状変更を可能にする。
ステップS304において、CPU201は、ステップS303で指定された四辺形領域に含まれる入力画像データの部分の画像を抽出し、矩形画像になるように歪みを補正する歪み補正処理を実行する。歪み補正は、四辺形領域が台形以外の形状に歪んでいる場合も考慮し、射影変換を利用する。射影変換行列は、入力画像内の四辺形領域の頂点情報(頂点406、407、408、409)と、出力画像の四隅の座標情報(410、411、412、413)から公知の方法により算出することが可能である。なお、処理速度を優先する場合には、アフィン変換行列や単純な変倍率を変倍パラメータとして算出しても良い。歪み補正の結果画像を示したのが、図4(c)である。
ステップS305において、CPU201は、ステップS304で得られた歪み補正後の画像に対して、画像補正処理を実行する。画像補正処理の詳細については、図5および図6を用いて後述する。
ステップS306において、CPU201は、ステップS305で行われた画像補正処理の結果の画像を表示部207に表示する。なお、ユーザは、この表示された画像を確認し、操作部208を介して画像補正処理の結果の画像の保存指示をCPU201に出すことができる。保存指示を受け付けたCPU201は、画像補正処理の結果の画像を記憶部204に保存する。保存されるファイルフォーマットはJPEGフォーマットやPDFフォーマットなどであればよく、特定のファイルフォーマットに限定されない。
以上が、本実施例のCPU201が行う処理フローである。
<画像補正処理(S305)の詳細説明>
画像補正処理の詳細について、図5を用いて説明する。
ステップS501において、CPU201は、S304で行われた歪み補正後の画像から照明ムラや影などの明るさのムラを取り除く影除去処理(明度ムラ除去処理)を実行する。影除去処理は、歪み補正後の画像から照明ムラや影などの明るさムラを推定して影成分画像を生成し、歪み補正後の画像と影成分画像との差分値に応じて入力画像を補正することで影除去後の画像を生成する。すなわち、影成分画像は、歪み補正後の画像と同じサイズのカラー画像(RGB成分を持つ画像)であり、その画像中の画素の値(RGB値)が、その画素の座標に対応する歪み補正後の画像中の画素の値を補正するために用いられるような画像である。影成分は、歪み補正後の画像における下地領域に含まれる画素の画素値から取得することが望ましい。通常、紙やホワイトボードの下地領域は白であるため、輝度値が高い(つまり白い)画素の画素値をその画素における影成分値として推定可能である。そこで影除去処理は、次のような処理を行う。
CPU201は、歪み補正後の画像を所定サイズ(例えば8x8画素)のブロックに分割し、各ブロックについて、ブロック内で最も明るい画素値(ブロック内の最大輝度値を持つ画素のRGB値)を、そのブロックの代表画素値(影成分値)として算出する。そしてCPU201は、各ブロックの代表画素値がブロックの配置に合わせて並べられた画像を得る。このとき、ブロック内に下地領域が含まれている場合には、適切な影成分値を推定できる。一方、写真や図などの大きいオブジェクト(コンテンツ)の影響でブロック内に下地領域が無い場合には、適切な影成分値の推定が困難である。そこで、周囲のブロックと比較して極端に暗いブロック(例えば隣接のブロックの最大輝度値から所定値を引いた値未満の最大輝度値を持つブロック)については、下地領域が含まれる隣接ブロックの代表画素値を利用して補正する。このようにして各ブロックについて代表画素値が算出される。このようにして得られた代表画素値の画像のサイズは歪み補正後の画像のサイズを縮小したものである。そこでCPU201は、この縮小画像を歪み補正後の画像と同画素数となるように拡大処理することで、影成分画像を生成する。そしてCPU201は、影成分画像を用いて、歪み補正後の画像の各画素のRGB値を補正することで影除去後の画像を生成する。例えば、影成分画像における画素の輝度値が暗ければ暗いほど、その画素に対応する歪み補正後の画像における画素のRGB値は明るく補正される。なお、以上の内容は、特開2017−22620号公報にて開示されている。
続くステップS502において、CPU201は、歪み補正後の画像における前景の画素の座標を抽出(特定)するための前景抽出処理を実行する。この前景抽出処理は、歪み補正後の画像に対して図6および図7で詳述する二値化処理を行う。この二値化処理によって得られた二値画像(後述の第7の二値画像に対応する)中の黒画素の座標は、歪み補正後の画像中の前景の座標を示している。この二値画像中の黒画素群が、続くステップS503の単色化処理を行うために用いられる。なお本実施例の単色化処理は、二値画像中の黒画素群を用いて行われる所定の処理の一例である。前景抽出処理の詳細については、図6および図7を用いて後述する。
続くステップS503において、CPU201は、ステップS502で生成された二値画像(後述の第7の二値画像)に含まれる黒画素群を用いて、ステップS501で生成された影除去後の画像の特定部分(マーカー属性部分)の単色化処理を行う。
具体的には、CPU201は、S502で生成された二値画像に含まれる隣接黒画素どうしを連結することで1つの黒画素領域(黒画素群に相当する)を形成し、その黒画素領域に含まれる画素に同一ラベルを付与するラベリング処理を行う。そしてCPU201は、同一ラベルが付与された黒画素の座標に対応する影除去後の画像の画素の画素値を参照し、それら画素がマーカー属性であるのか非マーカー属性であるのかを判定する。この属性判定は、例えば、影除去後の画像におけるそれら画素のRGB値からYUV値を得て、U、V成分(各色差成分)それぞれの分散値を計算し、どちらの分散値も閾値未満であれば、それら画素はマーカー属性であると判定する。
次に、CPU201は、マーカー属性判定されたそれら画素の置換色を決定する。本実施例においては、ホワイトボードマーカーの代表的な色である黒、赤、青、緑の4色を規定マーカー色とし、それら画素のYUV色空間での平均色に応じて単色化を行う。予めYUV色空間における黒、赤、青、緑の範囲を定めておき、各領域の平均色が、規定マーカー色の範囲に該当にすれば、4色のいずれか1色に単色化し、規定マーカー色の4色以外の範囲であれば、領域の平均色に単色化する。この単色化は、CPU201が、影除去後の画像中のマーカー属性と判定された画素のRGB値を、決定された置換色のRGB値で置き換える(上書きする)ことで行われる。
以上のようにして、歪み補正後の画像には、影除去処理と単色化処理が行われる。
<前景抽出処理(S502)の詳細説明>
前景抽出処理の詳細について、図6および図7を用いて説明する。ここでは歪み補正後の画像を入力画像として扱う。
ステップS601において、CPU201は、入力画像をグレースケール画像に変換する。グレースケール画像は輝度画像とも呼ばれる。入力画像がR(レッド)、G(グリーン)、B(ブルー)の3チャンネルのカラー画像であった場合、各チャンネルを所定の割合で混合して1チャンネルの画像を生成する。このときの混合比は限定しないが、たとえば、NTSC加重平均によってグレースケール画像を生成する。図7(a)は、グレースケール画像を示しており、かすれ文字701および照明の映り込み領域702、703を含んでいる。
ステップS602において、CPU201は、グレースケール画像の各画素に対する二値化閾値の二次元配列に相当する閾値マップ(閾値配列)を生成する。本実施例において、閾値マップは、図5のステップS501の影除去処理において生成される影成分画像と同じようにして生成される。ただし、S501で生成される影成分画像がカラー成分(RGB成分)を持つ画像であったのに対し、閾値マップはグレースケール画像を二値化するための二値化閾値の1成分から構成される画像である。すなわち、閾値マップは、グレースケール画像と同じサイズの画像で表現され、その画像中の画素の値が、その画素の座標に対応するグレースケール画像中の画素の二値化閾値であるような画像である。そのため閾値マップを作成するために、CPU201は、各ブロックの代表画素値として、最大輝度値を持つ画素のRGB値ではなく、最大輝度値そのものを設定する。ブロックの代表画素値の補正(修正)については、影成分画像の生成と同様に、隣接ブロックの輝度値なお、閾値マップの作成方法は、上記の方法に限るものではなく、公知の方法でよい。たとえば、大津の手法を用いて求めた画像全面に対する一律の閾値を閾値マップとしてもよい。また例えば、各画素について、その画素の周辺画素の輝度値を参照してその画素の二値化閾値を求める局所二値化閾値を閾値マップとしてもよい。
ステップS603において、CPU201は、ステップS601で得られた閾値マップの画素値を第1の閾値調整パラメータ値によって一律で下げるように調整する。本実施例では、各画素8bit(0〜255)で表される閾値マップの各画素値を、一律で値10ずつ下げる調整することで、閾値マップの画素の値と近い値を持つ下地領域のノイズを抑制する。なお、本ステップにおいて、必ずしも閾値を下げる必要はなく、後述するステップS605での閾値調整結果と比べて、相対的に閾値が低くなればよい。
ステップS604において、CPU201は、グレースケール画像に対して、ステップS603で調整した閾値マップ(第1の閾値配列)を利用して二値化処理(第1の二値化処理)を行うことで、第1の二値画像を生成する。説明のためグレースケール画像、閾値マップともに各画素8bitで表される画素値で構成され、画素値0が黒、画素値255が白であるとする。また出力される二値画像は各画素1bitで表される画素値で構成され、画素値0は白、画素値1は黒とする。座標(x,y)におけるグレースケール画像の画素値をg(x,y)、閾値マップの画素値をt(x,y)、出力される二値画像の画素値をb(x,y)で表す。同座標でのグレースケール画像の画素値g(x,y)と閾値マップの画素値t(x,y)の大小を比較することで、下記のように二値画像の画素値b(x,y)が0であるか1であるかを決定して二値画像を生成する。
g(x,y)≧t(x,y)のとき、b(x,y)=0(白画素)
g(x,y)<t(x,y)のとき、b(x,y)=1(黒画素)
すなわち、入力画像(あるいはグレースケール画像)の画素のうち、二値化閾値よりも濃い(暗い)画素が黒画素に変換され、二値化閾値以上に薄い(明るい)画素が白画素に変換されることで、二値画像が生成される。
図7(b)に、ステップS604で生成(出力)される二値画像を示す。ステップS603において、ノイズ領域を抑制するようにS602の閾値マップよりも小さい閾値に調整しているため、ノイズは少ないが、704に示すようにかすれ文字の前景抽出はできていない。
ステップS605において、CPU201は、ステップS601で得られた閾値マップを、後述するステップS606の二値化処理で、文字が掠れている部分を文字として再現するように、第2の閾値調整パラメータ値で調整する。本実施例では、閾値マップの画素と近い値を持つ掠れ部分を文字の一部(前景)として抽出するために、閾値マップの各画素値を、一律で値5ずつ上げる調整を行う。なお、閾値の調整方法は上記の方法に限るものではない。なお、本ステップにおいて、必ずしも閾値を上げる必要はなく、ステップS603での閾値調整結果と比べて、相対的に閾値が高くなればよい。すなわち、上記のS603で調整され作成された閾値マップ(第1の閾値配列)と、このS605で調整され作成された閾値マップ(第2の閾値配列)は次のような関係である。グレースケール画像の同じ画素に対して、第1の閾値配列による二値化閾値よりも、第2の閾値配列による二値化閾値のほうが大きい。
ステップS606において、CPU201は、グレースケール画像とステップS605で調整した閾値マップ(第2の閾値配列)を利用して二値化処理を行うことで、第2の二値画像を生成する。図7(c)に、ステップS606の生成(出力)される二値画像を示す。ステップS605において、かすれ文字を再現するように閾値マップを調整しているため、マーカー領域を全て抽出することができているが、閾値マップの画素と近い領域が705に示すような孤立点のノイズが前景抽出される。また、文字と背景(下地領域)との境界ほどではないが、比較的急な輝度変化を持つ照明の映り込み領域の周辺では、706、707に示すようにノイズ領域が抽出される。映り込み領域の周辺では隣接画素間の輝度変化が大きいため、閾値マップ(すなわち影)の推定が困難だからである。また、図7(b)に示すステップS604の二値画像と比べてマーカー部が太く抽出される。
ステップS607において、CPU201は、ステップS606で生成された二値画像(第2の二値画像)に対して孤立点の黒画素を除去する処理(第1の黒画素除去処理)を行う。黒画素を除去するとは、その黒画素を白画素に変換することであり、この第1の黒画素除去処理は、第2の二値画像における、複数の白画素に隣接している黒画素を白画素に変換する処理である。ここではCPU201は、第2の二値画像に対して第1の黒画素除去処理を行うことで第3の二値画像を生成する。なお孤立点と言っているが、除去される黒画素のサイズは1画素x1画素に限られず、2画素x1画素や2画素x2画素などであってよい。本実施例では、細い文字部や小さい文字部を除去しないように、各黒画素について、4近傍のうち3画素以上の画素が白画素である場合には、当該黒画素を白画素に置きかえる方法を利用する。なお孤立点除去の他の方法としてパターンマッチングにより該当する形状の黒画素塊を除去(白画素化)する方法でもよい。図7(d)に、孤立点除去の結果画像を示す。
ステップS608において、CPU201は、ステップS607で生成された二値画像(第1の黒画素除去処理後の第2の二値画像、つまり第3の二値画像)に含まれる黒画素および黒画素群が、ノイズ領域であるかどうかを判定するノイズ領域判定を行う。このノイズ領域判定は、第3の二値画像に含まれる黒画素群のうち、第1の二値画像の対応する領域の画像の内容に比べて著しく大きい黒画素群を特定する(見つける)処理である。例えば、第1の二値画像の対応領域には少数の黒画素しかない或いはまったく黒画素がないにもかかわらず、第3の二値画像においては比較的大きい黒画素群(特定の大きさの黒画素群)が存在する場合、このような黒画素群は、ノイズ領域として特定される。このように、第3の二値画像における黒画素群が特定の大きさであるかどうかは、第1の二値画像中の対応領域の画像内容に依存する。すなわち、このS608の処理は、第2の二値画像に含まれる黒画素群のうちの、特定の大きさの黒画素群を、第1の二値画像に基づいて特定し、この特定された黒画素群をノイズの領域として判定する処理である。このノイズ領域判定の詳細については、図8および図9を用いて後述する。
ステップS609において、CPU201は、ステップS608でノイズ領域として判定された黒画素群を、第3の二値画像から除去(削除)する。この処理は、第3の二値画像におけるノイズ領域として判定された黒画素群を白画素に変換することで、(後述の第4、第5の二値画像に続く)第6の二値画像を生成する処理に相当する。図7(e)に、ノイズ領域を除去した結果画像を示す。710に示すように、ステップS608において、ノイズ領域として判定された708、709が除去されている。
ステップS610において、CPU201は、ステップS604の二値画像(第1の二値画像)と、ステップS609の二値画像(ノイズ領域除去後の第3の二値画像、つまり第6の二値画像)を統合する。統合には、2つの二値画像のOR(和集合)を利用する。座標(x,y)におけるステップS604の出力二値画像の画素値をp(x,y)、ステップS609の出力二値画像の画素値をq(x,y)、出力される二値画像の画素値をb(x,y)で表す。下記のように出力画像の画素値b(x,y)が0であるか1であるかを決定して二値画像(第7の二値画像)を生成する。
p(x,y)=0かつq(x,y)=0のとき、b(x,y)=0(白画素)
p(x,y)=1またはq(x,y)=1のとき、b(x,y)=1(黒画素)
すなわちこの処理は、2つの二値画像に基づいて、2つの二値画像の論理和の画像を生成する処理である。この論理和の画像がステップS503の画像処理の対象となる。図7(f)に、ステップS610の出力二値画像を示す。2種類の二値化結果を統合することで、711に示すようにノイズ領域を抑制しつつ、712に示すようにかすれ文字を再現可能になる。
<ノイズ領域判定処理(ステップS608)の詳細説明>
ノイズ領域判定処理の詳細について、図8および図9を用いて説明する。図9(a)と図9(b)は、ノイズ領域判処理における入力画像である。それぞれ図9(a)は、図7(b)に示すステップS604の出力二値画像と、図9(b)は図7(d)に示すステップS607の出力二値画像と同じ画像である。ノイズ領域判定処理は、図9(b)の二値画像の各領域(各黒画素群)について、映り込みなどのノイズ領域であるかどうかを、別の二値画像を用いて、個別に評価して判定する処理である。すなわち、ここではノイズ領域である黒画素群が特定され、その特定結果がS609以降の処理で用いられる。
ステップS801において、CPU201は、ステップS604で生成された二値画像(第1の二値画像)と、ステップS607で生成された二値画像(第3の二値画像)の差分を取り、差分画像(第4の二値画像)を作成する。座標(x,y)におけるステップS604の二値画像の画素値をp(x,y)、ステップS607の二値画像の画素値をq(x,y)、出力される二値画像の画素値をb(x,y)で表す。下記のように出力画像の画素値b(x,y)が0であるか1であるかを決定して二値画像を生成する。
p(x,y)=q(x,y)のとき、b(x,y)=0(白画素)
p(x,y)!=q(x,y)のとき、b(x,y)=1(黒画素)
すなわちこの処理は、2つの二値画像に基づいて、2つの二値画像の排他的論理和の画像を第4の二値画像として生成する処理である。差分結果画像を図9(c)に示す。901や902に示すノイズ領域や、903に示すかすれマーカー領域のように、図(a)には含まれていない領域が差分として抽出される。また、図9(b)に示すステップS607の出力二値画像は、図9(a)に示すステップS604の出力二値画像と比べてマーカー部が太く抽出されるため、903に示すように、マーカー部を縁取ったような領域が差分として抽出される。
ステップS802において、CPU201は、ステップS801で生成された二値画像(第4の二値画像)に対して、収縮処理(第2の黒画素除去処理ともいう)を複数回実行することで、第5の二値画像を生成する。この収縮処理を行う目的は、第3の二値画像における黒画素群のうち、第1の二値画像の内容に比べて著しく大きな黒画素群を特定しやすくするために行われる。
本実施例において、収縮処理とは、二値画像の各黒画素について、8近傍のうち1画素でも白画素である場合に、当該黒画素を白画素に置きかえる方法である。つまり、収縮処理とは、黒画素群の輪郭の黒画素を白画素に変換するために、少なくとも1つの白画素に隣接する黒画素を白画素に変換する処理に対応する。そのため、収縮処理を所定の回数繰り返すと、差分画像内の黒画素群が所定の回数に応じた所定画素幅だけ細くなる。この収縮処理の結果として、照明の映り込みなどのノイズ領域である黒画素群は比較的大きいので、黒画素が残り、マーカー部の縁取り領域(903)やかすれマーカー領域(904)のような細い領域(比較的小さい黒画素群)については黒画素が残らない。すなわち、後述するように、所定画素幅を超える幅を持つ、差分画像内の黒画素群に対応する第3の二値画像中の黒画素群が、ノイズ領域として特定される。
なお、収縮処理の繰り返し回数は、予め規定(例えば3回)してもよい。またあるいは収縮処理の繰り返し回数は、画像サイズに応じて決定されてもよい。例えば画像サイズが大きければ繰り返し回数を多くする。
ステップS803において、CPU201は、図9(b)に示すステップS607で生成された二値画像(第3の二値画像)の黒画素について、ラベリングを行うことで隣接する黒画素群を孤立領域として抽出する。ここでは、隣接する黒画素がないような1画素分の黒画素も孤立した黒画素群として抽出される。
ステップS804において、CPU201は、ステップS803で得られた各孤立領域について、ノイズ領域であるかどうかを判定する。この判定は、ステップS803で得られた各孤立領域が、ステップS802で生成された二値画像(第5の二値画像)の黒画素の座標を含むかどうかをチェックすることで行われる。第5の二値画像に含まれる黒画素の座標に対応する、前記第3の二値画像の座標における画素が黒画素である場合に、孤立領域が黒画素の座標を含むと判定される。ここで孤立領域は黒画素の座標を含むと判定された場合、その孤立領域に対応する第3の二値画像中の黒画素群はノイズ領域として特定される。図9(e)に、判定結果を示す。孤立領域905、906は、それぞれの孤立領域内に、図9(d)に示す画像の黒画素を含むため、ノイズ領域として判定される。一方、孤立領域907〜916については、該当する領域に図9(d)に示す画像の黒画素を含まないため、ノイズ領域ではないと判定する。
以上のS803、S804は、次のような考え方に基づいている。二値化閾値が相対的に大きいため第3の二値画像に含まれる黒画素群のほうが第1の二値画像よりも大きい。そしてこれら第1の二値画像と第3の二値画像との差分画像に収縮処理を繰り返した上でも黒画素が残るならば、その残った黒画素に対応する、第3の二値画像に含まれる黒画素群は、照明の映り込みなどのノイズ領域が二値化されたものである。ノイズ領域の判定はこのような考え方に従ったものであればよく、この判定方法だけに限定されない。他の方法については下記変形例において説明する。
以上のノイズ領域判定処理により、映り込み領域などを、写真やマーカー文字の部分(前景部分)と区別し、ノイズ領域として判定することができる。
以上、本実施形態によれば、ノイズ抑制の閾値での二値化結果と、ノイズ領域を除去したかすれ文字再現の閾値での二値化結果を統合することで、撮影画像からの前景抽出において、かすれ文字の再現とノイズ領域の抑制を実現することができる。また、照明の映り込みの領域とマーカー領域が近い場合でも、マーカー部のみを前景として抽出することができる。
(変形例)
実施例1では、照明の映り込み領域などのノイズ領域を、マーカー部などの前景領域と区別して特定する(分離する)ために、ステップS608の処理を行っていた。本変形例では、この処理の代わりに次のような処理を行う。
CPU201は、第3の二値画像に含まれる黒画素群に対してラベリング処理を行う。次にCPU201はラベルごとに次の(1)〜(3)の処理を行う。(1)CPU201は、同一ラベルを持つ黒画素の数をカウントする。(2)CPU201は、その同一ラベルを持つ黒画素群の各座標に対応する、第1の二値画像中の座標における画素群に含まれる黒画素の数をカウントする。(3)CPU201は、カウントされた2つの数を比較し、差分が閾値以上あれば、その同一ラベルを持つ黒画素群が、第1の二値画像の内容に比べて著しく大きいと判定し、その黒画素群を照明の映り込み領域(ノイズ領域)として特定する。このようにすることで、CPU201は、第3の二値画像に含まれる黒画素群のうちの、第1の二値画像に基づく特定の大きさの黒画素群を特定し、その特定された黒画素群をノイズ領域として判定することができる。
(その他の実施例)
上記実施例では、S607の処理後にS608、S609を行っていたが、S608、S609の処理後にS607の処理を実行してもよい。
上記実施例では、携帯端末101にてすべての画像処理を実施していた。しかしながら、図3の処理の一部を携帯端末101の外部のサーバで実施してもよい。例えば、ステップS304、S305の処理をサーバで実施するようにすることで、メモリ資源や計算資源の少ない携帯端末を利用した場合でも、上述の画像補正処理を利用できる。なおステップS301〜S303の処理はユーザの操作(例えば四辺形領域の変更操作)を受け付けるため、サーバではなく携帯端末101上で行うようにしている。なお、S304、S305をサーバで実施する場合、携帯端末101は、S303の処理後に、データ送受信部205を通じて、S301で取得された画像と四辺形領域の頂点情報をサーバに送信する。サーバは画像と四辺形領域の頂点情報に基づいてS304の処理を行う。そしてサーバはS305の処理後に、画像補正処理の結果の画像を、データ送受信部1104を通じて、携帯端末101に送信する。携帯端末101は、受け取った画像をS306で表示する。
本発明は、以下の処理を実行することによっても実現される。即ち、上述の実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (11)

  1. 二値化閾値よりも暗い画素を黒画素に変換する所定の二値化処理を入力画像に行うことで二値画像を生成し、前記二値画像に含まれる黒画素群を用いて所定の処理を行う画像処理装置において、
    前記入力画像の同じ画素に対する二値化閾値が前記二値化処理で用いられる値よりも小さい別の二値化処理を、前記入力画像に対して行うことで別の二値画像を生成する生成手段と、
    前記別の二値画像を少なくとも用いて、前記二値画像に含まれる黒画素群のうちの少なくとも1つの黒画素群を特定する特定手段と、
    前記特定の結果に基づいて、前記二値画像に含まれる黒画素群を用いて前記所定の処理を行う処理手段と、
    を有することを特徴とする画像処理装置。
  2. 前記特定手段は、前記二値画像と前記別の二値画像との差分を求め、当該求められた差分に基づいて、前記少なくとも1つの黒画素群を特定することを特徴とする請求項1に記載の画像処理装置。
  3. 前記特定手段は、前記差分の画像に対して、白画素と隣接する黒画素を白画素に変換する処理を行った結果、黒画素が残る場合に、当該残った黒画素に対応する前記二値画像に含まれる黒画素群を、前記所定の処理に用いられない黒画素群として特定することを特徴とする請求項2に記載の画像処理装置。
  4. 前記特定手段は、前記差分の画像に含まれる黒画素群の幅が所定画素幅を超える場合に、当該黒画素群を前記所定の処理に用いられない黒画素群として特定することを特徴とする請求項2に記載の画像処理装置。
  5. 前記処理手段は、前記所定の処理に用いられない黒画素群として特定された黒画素群を、前記二値画像から削除することを特徴とする請求項3または4に記載の画像処理装置。
  6. 前記処理手段は、前記削除が行われた二値画像に含まれる黒画素群と、前記別の二値画像に含まれる黒画素群とを用いて、前記所定の処理を行うことを特徴とする請求項5に記載の画像処理装置。
  7. 入力画像に基づいて輝度画像を生成し、前記輝度画像に対して二値化処理を行うことで二値画像を生成し、前記二値画像に基づいて所定の処理を行う画像処理装置において、
    第1の二値化処理を、前記輝度画像に対して行うことで第1の二値画像を生成する第1の生成手段と、
    前記輝度画像の同じ画素に対する二値化閾値が前記第1の二値化処理で用いられる値よりも大きい第2の二値化処理を、前記輝度画像に対して行うことで第2の二値画像を生成する第2の生成手段と、
    複数の白画素に隣接する黒画素を白画素に変換する処理を、前記第2の二値画像に対して行うことで第3の二値画像を生成する第3の生成手段と、
    前記第1および第3の二値画像に基づいて、前記第1および第3の二値画像の排他的論理和に相当する第4の二値画像を生成する第4の生成手段と、
    少なくとも1つの白画素に隣接する黒画素を白画素に変換する処理を、前記第4の二値画像に対して行うことで第5の二値画像を生成する第5の生成手段と、
    前記第5の二値画像に含まれる黒画素に対応する位置の、前記第3の二値画像中の黒画素群を特定する特定手段と、
    前記特定された黒画素群を白画素に変換する処理を行うことで、第6の二値画像を生成する第6の生成手段と、
    前記第1および第6の二値画像に基づいて、前記第1および第6の二値画像の論理和に相当する第7の二値画像を生成する第7の生成手段と、
    前記第7の二値画像に基づいて前記所定の処理を行う処理手段と、
    を有することを特徴とする画像処理装置。
  8. 前記入力画像はカラー画像から得られたグレースケール画像であり、
    前記処理手段は、前記二値画像に含まれる黒画素群に対応する前記カラー画像の部分を単色化するかを判定し、当該判定に基づいて当該部分を当該部分の色に対応する所定の色で単色化することを、前記所定の処理として行うことを特徴とする請求項1乃至7の何れか1項に記載の画像処理装置。
  9. 二値化閾値よりも暗い画素を黒画素に変換する所定の二値化処理を入力画像に行うことで二値画像を生成し、前記二値画像に含まれる黒画素群を用いて所定の処理を行う画像処理方法において、
    前記入力画像の同じ画素に対する二値化閾値が前記二値化処理で用いられる値よりも小さい別の二値化処理を、前記入力画像に対して行うことで別の二値画像を生成する生成工程と、
    前記別の二値画像を少なくとも用いて、前記二値画像に含まれる黒画素群のうちの少なくとも1つの黒画素群を特定する特定工程と、
    前記特定の結果に基づいて、前記二値画像に含まれる黒画素群を用いて前記所定の処理を行う処理工程と、
    を有することを特徴とする画像処理方法。
  10. 前記特定工程は、前記二値画像と前記別の二値画像との差分を求め、当該求められた差分に基づいて、前記少なくとも1つの黒画素群を特定することを特徴とする請求項9に記載の画像処理方法。
  11. 請求項1乃至8の何れか1項に記載の画像処理装置としてコンピュータを機能させるためのプログラム。
JP2017101042A 2017-05-22 2017-05-22 画像処理装置、画像処理方法、プログラム Active JP7030425B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017101042A JP7030425B2 (ja) 2017-05-22 2017-05-22 画像処理装置、画像処理方法、プログラム
EP18171662.2A EP3407252B1 (en) 2017-05-22 2018-05-09 Image processing apparatus, image processing method, and storage medium
US15/978,673 US10846863B2 (en) 2017-05-22 2018-05-14 Pixel binarization apparatus, method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017101042A JP7030425B2 (ja) 2017-05-22 2017-05-22 画像処理装置、画像処理方法、プログラム

Publications (2)

Publication Number Publication Date
JP2018195262A true JP2018195262A (ja) 2018-12-06
JP7030425B2 JP7030425B2 (ja) 2022-03-07

Family

ID=62245143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017101042A Active JP7030425B2 (ja) 2017-05-22 2017-05-22 画像処理装置、画像処理方法、プログラム

Country Status (3)

Country Link
US (1) US10846863B2 (ja)
EP (1) EP3407252B1 (ja)
JP (1) JP7030425B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3712851A1 (de) * 2019-03-19 2020-09-23 Bayer Animal Health GmbH Reduzierung von videomaterial auf bewegungsabschnitte
US11557108B2 (en) * 2019-04-10 2023-01-17 Rakuten Group, Inc. Polygon detection device, polygon detection method, and polygon detection program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5820063A (ja) * 1981-07-28 1983-02-05 Ricoh Co Ltd 画像処理装置
JPH06303422A (ja) * 1993-04-14 1994-10-28 Canon Inc 画像処理装置
JP2015197851A (ja) * 2014-04-02 2015-11-09 大成建設株式会社 画像処理方法、画像処理用プログラム及び情報管理システム
JP2016071855A (ja) * 2014-09-30 2016-05-09 コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド 文書画像における縦線および横線の検出および削除

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282326B1 (en) * 1998-12-14 2001-08-28 Eastman Kodak Company Artifact removal technique for skew corrected images
US6317223B1 (en) * 1998-12-14 2001-11-13 Eastman Kodak Company Image processing system for reducing vertically disposed patterns on images produced by scanning
US7630520B2 (en) * 2006-07-31 2009-12-08 Canadian Bank Note Company, Limited Method and system for document comparison using cross plane comparison
JP4630936B1 (ja) * 2009-10-28 2011-02-09 シャープ株式会社 画像処理装置、画像処理方法、画像処理プログラム、画像処理プログラムを記録した記録媒体
JP2012199652A (ja) * 2011-03-18 2012-10-18 Fujitsu Ltd 画像処理装置、方法及びプログラム
US9367899B1 (en) 2015-05-29 2016-06-14 Konica Minolta Laboratory U.S.A., Inc. Document image binarization method
JP6624827B2 (ja) 2015-07-13 2019-12-25 キヤノン株式会社 情報処理装置、情報処理方法、コンピュータプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5820063A (ja) * 1981-07-28 1983-02-05 Ricoh Co Ltd 画像処理装置
JPH06303422A (ja) * 1993-04-14 1994-10-28 Canon Inc 画像処理装置
JP2015197851A (ja) * 2014-04-02 2015-11-09 大成建設株式会社 画像処理方法、画像処理用プログラム及び情報管理システム
JP2016071855A (ja) * 2014-09-30 2016-05-09 コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド 文書画像における縦線および横線の検出および削除

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
西村 孝 外2名: "色マークの指定による文書画像からの領域およびキーワードの抽出法", 画像電子学会誌 第17巻 第5号, vol. 第17巻 第5号, JPN6021027919, 31 December 2018 (2018-12-31), JP, pages 328 - 336, ISSN: 0004554201 *

Also Published As

Publication number Publication date
US20180336685A1 (en) 2018-11-22
US10846863B2 (en) 2020-11-24
JP7030425B2 (ja) 2022-03-07
EP3407252A1 (en) 2018-11-28
EP3407252B1 (en) 2022-11-30

Similar Documents

Publication Publication Date Title
US9497355B2 (en) Image processing apparatus and recording medium for correcting a captured image
CN107566684B (zh) 图像处理装置、图像处理方法及存储介质
US9888154B2 (en) Information processing apparatus, method for processing information, and computer program
KR102311367B1 (ko) 화상 처리 장치, 화상 처리 방법, 및 프로그램
JP2011141600A (ja) 画像処理装置及び方法、並びに、プログラム
JP7030425B2 (ja) 画像処理装置、画像処理方法、プログラム
US10896344B2 (en) Information processing apparatus, information processing method, and computer program
JP4831340B2 (ja) 画像処理装置、画像処理方法、プログラム、および記録媒体
KR102164998B1 (ko) 디지털 영상 선예도 강화 방법
JP2011239462A (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体
JP5365740B2 (ja) 画像復号装置、画像復号方法及び画像復号用コンピュータプログラム
JP2012114869A (ja) 画像処理装置、画像処理方法、画像処理プログラム及びプログラム記録媒体
JP2004056710A (ja) カラー画像処理装置、カラー画像処理方法、プログラム、及び記録媒体
JP2004289570A (ja) 画像処理方法及び画像処理装置
JP2005108258A (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体
JP2008079319A (ja) 画像処理装置、画像処理方法およびプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2008125091A (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体
JP2005092893A (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210916

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: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220222

R151 Written notification of patent or utility model registration

Ref document number: 7030425

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151