JP6704726B2 - エッジ検出装置、エッジ検出方法、及び、プログラム - Google Patents

エッジ検出装置、エッジ検出方法、及び、プログラム Download PDF

Info

Publication number
JP6704726B2
JP6704726B2 JP2015248321A JP2015248321A JP6704726B2 JP 6704726 B2 JP6704726 B2 JP 6704726B2 JP 2015248321 A JP2015248321 A JP 2015248321A JP 2015248321 A JP2015248321 A JP 2015248321A JP 6704726 B2 JP6704726 B2 JP 6704726B2
Authority
JP
Japan
Prior art keywords
edge
value
detection
degree
dispersion
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.)
Expired - Fee Related
Application number
JP2015248321A
Other languages
English (en)
Other versions
JP2017116985A5 (ja
JP2017116985A (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.)
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 JP2015248321A priority Critical patent/JP6704726B2/ja
Priority to US15/362,167 priority patent/US10311546B2/en
Publication of JP2017116985A publication Critical patent/JP2017116985A/ja
Publication of JP2017116985A5 publication Critical patent/JP2017116985A5/ja
Application granted granted Critical
Publication of JP6704726B2 publication Critical patent/JP6704726B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • 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
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Description

本発明は、エッジ検出装置、エッジ検出方法、及び、プログラムに関する。
近年、従来よりも解像度の高い高解像度画像を表示する画像表示装置の普及が進んでいる。高解像度画像のうち水平方向の画素数が約4000個の画像(例えば、水平方向4096画素×垂直方向2160画素の画像)は、一般的に「4k画像」と呼ばれている。また、画像表示装置に入力される入力画像データの解像度が画像表示装置の画面解像度と異なる場合、入力画像データの解像度を画像表示装置の画面解像度と同じ解像度に変換する必要がある。
画像データの解像度を変換する画像処理には、スケーラ処理等がある。スケーラ処理は、入力画像データの画像サイズを変更(拡大または縮小)することで入力画像データの解像度を変換する画像処理である。この画像処理を一般的な手法(例えばバイキュービック法)を用いて行うと、斜めエッジ(斜め方向のエッジ)の画像領域にジャギーが発生し、画質が著しく劣化する。
ジャギーの発生を抑制する技術は、例えば、特許文献1に開示されている。特許文献1に開示の技術では、画像から斜めエッジが検出され、斜めエッジの画像領域に対して、斜めエッジの傾斜角度(斜めエッジの方向)に応じた画素を用いて補間画素が生成される。また、特許文献1に開示の技術では、注目位置に近い位置と注目位置から離れた位置とのそれぞれについて斜めエッジの存在を示す相関値が得られた場合に、注目位置に近い位置に対応する相関値を用いて注目位置における斜めエッジが検出される。
しかしながら、注目位置に近い位置に対応する相関値を優先して使用すると、斜めエッジの誤検出が生じる。例えば、自然画に含まれる水平線に近い浅い角度の斜め線は局所的に見ると水平線である。そのため、上記斜め線(自然画に含まれる水平線に近い浅い角度の斜め線)と、本来の水平線とを区別することができず、上記斜め線が水平線として誤検出される。その結果、上記斜め線の画像領域において、ジャギーの発生を抑制することができない。
また、注目位置に近い位置に対応する相関値を優先しない方法でも、斜めエッジの誤検出が生じる。例えば、注目位置の斜めエッジを構成する文字とは異なる文字の位置に対応する相関値として、斜めエッジの存在を示す相関値が誤検出されることがある。その結果、誤った相関値を用いて誤った斜めエッジが検出され、誤った斜めエッジが検出された画像領域に大きな画質劣化(画質妨害)が生じる。
特開2006−33647号公報
本発明は、エッジをより高精度に検出することができる技術を提供することを目的とする。
本発明の第1の態様は、
入力画像データの階調値の分散度合いを検出する検出手段と、
前記検出手段によって検出された前記分散度合いに基づいて、複数の方向のそれぞれについて、その方向のエッジの検出されやすさである検出感度を決定する決定手段と、
前記決定手段によって決定された検出感度で、前記入力画像データに基づく入力画像からエッジを検出するエッジ検出手段と、
を有し、
前記決定手段は、前記分散度合いが小さい場合に、前記分散度合いが大きい場合に比べ低い検出感度を決定する
ことを特徴とするエッジ検出装置である。
本発明の第2の態様は、
入力画像データの階調値の分散度合いを検出する検出ステップと、
前記検出ステップにおいて検出された前記分散度合いに基づいて、複数の方向のそれぞれについて、その方向のエッジの検出されやすさである検出感度を決定する決定ステップと、
前記決定ステップにおいて決定された検出感度で、前記入力画像データに基づく入力画像からエッジを検出するエッジ検出ステップと、
を有し、
前記決定ステップでは、前記分散度合いが小さい場合に、前記分散度合いが大きい場合に比べ低い検出感度が決定される
ことを特徴とするエッジ検出方法である。
本発明の第3の態様は、上述したエッジ検出方法の各ステップをコンピュータに実行させるためのプログラムである。
本発明によれば、エッジをより高精度に検出することができる。
実施例1に係る画像処理装置の構成の一例を示すブロック図 実施例1に係るエッジ検出部の構成の一例を示す図 実施例1に係る参照ブロックペアの一例を示す図 実施例1に係る画素配置と輝度ヒストグラムの一例を示す図 実施例1に係る画素配置と輝度ヒストグラムの一例を示す図 実施例1に係る加算度数と階調分散度の関係の一例を示す図 実施例1に係るブロック距離と検出感度ペナルティの関係の一例を示す図 実施例1に係る階調分散度と検出感度補正ゲインの関係の一例を示す図 実施例1に係る補正後のSAD値の分布の一例を示す図 実施例1に係るスケーラ処理の一例を示す図 実施例2に係るエッジ検出部の構成の一例を示すブロック図 実施例2に係る階調分散度と信頼度ペナルティの関係の一例を示す図 実施例3に係るエッジ検出部の構成の一例を示すブロック図 実施例3に係る範囲情報と分散検出領域サイズの関係の一例を示す図
<実施例1>
以下、本発明の実施例1について説明する。以下では、画像データの画像サイズを変更(拡大または縮小)することで画像データの解像度を変換するスケーラ処理を実行可能な画像処理装置に、本実施例に係るエッジ検出装置が設けられている例を説明する。なお、画像処理装置で実行される画像処理は、スケーラ処理に限られない。例えば、画像処理として、ぼかし処理、エッジ強調処理、輝度変換処理、色変換処理、等が行われてもよい。また、エッジ検出装置は、画像処理装置とは別体の装置であってもよい。
図1は、本実施例に係る画像処理装置の構成の一例を示すブロック図である。図1に示すように、本実施例に係る画像処理装置は、エッジ検出部101とスケーラ部102を有する。
エッジ検出部101は、入力画像データIDに基づいて、入力画像データIDに基づく画像である入力画像からエッジを検出する。エッジの検出方法は特に限定されないが、本実施例では、2つの参照ブロックの位置(水平方向の位置;水平位置)を変えながら2つの参照ブロック内における入力画像を比較するブロックマッチングの結果に基づいて、エッジが検出される。水平方向は、画像の向きを変えれば、垂直方向や斜め方向など様々な方向になる。エッジ検出部101は、エッジの検出結果として角度情報ANGLEを、スケーラ部102へ出力する。
角度情報ANGLEは、入力画像内に設定される各注目位置におけるエッジの有無と、注目位置に存在するエッジの方向とを表す。本実施例では、エッジ検出部101は、角度情報ANGLEとして−16〜+16の値を出力する。具体的には、エッジ検出部101は、エッジが存在する位置における角度情報ANGLEとして、垂直方向に対するエッジの傾斜角度を表す値を出力する。そして、エッジ検出部101は、エッジが存在しない位置における角度情報ANGLEとして、「0」を出力する。なお、エッジの方向の表現方法は上記方法(垂直方向に対するエッジの傾斜角度)に限られない。例えば、エッジの方向は、水平方向に対するエッジの傾斜角度で表現されてもよい。
スケーラ部102は、角度情報ANGLEに基づいて入力画像データIDの解像度を変換するスケーラ処理を行うことにより、画像データOD(解像度が変換された後の入力画像データ)を生成する。そして、スケーラ部102は、生成した画像データODを出力する。画像データODは、不図示の記憶部に記録されたり、不図示の表示部で表示されたりする。
次に、エッジ検出部101について詳しく説明する。図2は、エッジ検出部101の構成の一例を示すブロック図である。図2に示すように、エッジ検出部101は、輝度変換部201、ブロックバッファ部202、ブロックマッチング部203、階調分散度検出部204、オフセット値決定部205、SADオフセット部206、及び、マッチング角度決定部207を有する。
輝度変換部201は、入力画像データIDの各画素値を輝度値YDATAに変換し、各輝度値YDATAをブロックバッファ部202と階調分散度検出部204に順次出力する。入力画像データIDの画素値がYCbCr値(Y値、Cb値、及び、Cr値の組み合わせ)である場合には、輝度変換部201は、入力画像データIDのY値を輝度値YDATAとして使用する。入力画像データIDの画素値がRGB値(R値、G値、及び、B値の組み合わせ)である場合には、輝度変換部201は、入力画像データIDのRGB値を輝度値YDATAに変換する。例えば、以下の式1を用いて輝度値YDATAが算出される。

YDATA=0.2×R値+0.7×G値+0.1×B値 ・・・(式1)
ブロックバッファ部202は、輝度変換部201から出力された輝度値YDATAを記憶し、記憶している輝度値YDATAをブロックマッチング部203へ出力する。本実施例では、ブロックバッファ部202は、4ライン分のラインメモリを有しており、4ライン分のラインメモリに輝度値YDATA(4ライン分の輝度値YDATA)を蓄積する。そして、ブロックバッファ部202は、水平方向X1画素×垂直方向Y1ライン分の輝度値YDATAをラインメモリから読み出し、読み出した輝度値YDATAをブロックデータBLKDATAとしてブロックマッチング部203へ出力する。本実施例では、X1=20であり、且つ、Y1=4である場合の例を説明する。なお、ラインメモリが記憶可能
なデータのライン数、ブロックデータBLKDATAの画像領域サイズ(画素数)は、特に限定されない。
例えば、ラインメモリが記憶する輝度値YDATA、及び、ラインメモリから読み出すブロックデータBLKDATAは、輝度変換部201から輝度値YDATAが出力される度に更新される。そして、ブロックデータBLKDATAの更新に応じて、注目位置も更新される。注目位置と、ブロックデータBLKDATAに対応する画像領域との位置関係は特に限定されない。本実施例では、ブロックデータBLKDATAに対応する画像領域の中心位置が、注目位置として使用される。
図3(A),3(B)に示すように、ブロックマッチング部203は、注目位置P0に対して、2つの参照ブロックA,Bを設定し、参照ブロックA内の画像(輝度値YDATA)と参照ブロックB内の画像とを比較する。具体的には、ブロックマッチング部203は、参照ブロックAの複数の画素のそれぞれについて、その画素の輝度値YDATAと、参照ブロックBの画素の輝度値YDATAとの差分の絶対値(差分絶対値)を算出する。参照ブロックAの画素PAについての差分絶対値を得る際には、参照ブロックBの複数の画素のうち、参照ブロックBとの位置関係が、参照ブロックAと画素PAの位置関係と等しい画素PBが使用される。そして、ブロックマッチング部203は、得られた複数の差分絶対値の総和であるSAD値(差分絶対値和)を算出する。SAD値は、参照ブロックA内における入力画像と、参照ブロックB内における入力画像との非類似度(類似度の逆数)に相当する。参照ブロックAの中心位置は、注目位置P0よりも上側に位置し、参照ブロックBの中心位置は、注目位置P0よりも下側に位置する。そして、参照ブロックペア(参照ブロックAと参照ブロックBの組み合わせ)の水平方向の中心位置は、注目位置P0の水平位置と一致する。参照ブロックA,Bの位置関係は、エッジの方向の候補(候補方向)に対応する。
ブロックマッチング部203は、参照ブロックA,Bの水平位置を変えながら複数のSAD値を算出する。参照ブロックA,Bの水平位置は、ブロックデータBLKDATAの画像領域内(参照範囲内)で変更される。本実施例では、ブロックマッチング部203は、ブロック距離が−16、−14、−12、−10、−8、−6、−4、−2、0、+2、+4、+6、+8、+10、+12、+14、及び、+16である17個の参照ブロックペアを設定する。そして、ブロックマッチング部203は、17個の参照ブロックペアに対応する17個のSAD値SAD_ARRAY(n)を算出し(nはブロック距離)、対象位置に対して算出した複数(17個)のSAD値をSADオフセット部206へ出力する。ブロック距離nの絶対値は、参照ブロックAの中心位置と、参照ブロックBの中心位置との間の水平方向の距離である。
本実施例では、参照ブロックAの中心位置が注目位置P0よりも右側に位置する場合に、ブロック距離nとして正の値が使用される。そして、参照ブロックAの中心位置が注目位置P0よりも左側に位置する場合に、ブロック距離nとして負の値が使用される。図3(A)は、ブロック距離n=−4の場合の例を示す。図3(B)は、ブロック距離n=−6の場合の例を示す。ブロック距離nの絶対値の増加に伴い、対応する候補方向の垂直方向に対する角度は増加する。本実施例では、図3(A),3(B)に示すように、参照ブロックA,Bとして、水平方向4画素×垂直方向3画素の画像領域が設定される。そして、参照ブロックA,Bとして、垂直方向に1画素分だけずれた2つの参照ブロックが設定される。
なお、参照ブロックA,Bのサイズ、垂直方向における参照ブロックAと参照ブロックBの位置関係、参照ブロックA,Bの形状、等は特に限定されない。例えば、参照ブロックA,Bのサイズは、水平方向4画素×垂直方向3画素より大きくても小さくてもよい。
また、垂直方向における参照ブロックAと参照ブロックBのずれの大きさは、1画素分の大きさより大きくてもよい。参照ブロックA,Bの形状は、三角形、五角形、六角形、長方形、台形、ひし形、円形(真円形や楕円形)、等であってもよい。
階調分散度検出部204は、入力画像データIDの階調値の分散の度合いを検出する。以後、入力画像データIDの階調値の分散の度合いを「階調分散度」と記載する。そして、階調分散度検出部204は、階調分散度をオフセット値決定部205へ出力する。本実施例では、階調分散度として、輝度値YDATAの分散の度合いが検出される。なお、階調分散度は、輝度値YDATAの分散の度合いに限られない。例えば、階調分散度は、Cb値の分散の度合い、Cr値の分散の度合い、R値の分散の度合い、G値の分散の度合い、B値の分散の度合い、等であってもよい。階調分散度は、複数種類の階調値の分散の度合いであってもよい。階調分散度は、階調値のバラツキ度合いとも言い換えられる。また、階調分散度が高い画像データは、二値度が低い画像データとも言える。
本実施例では、階調分散度検出部204は、階調分散度として、所定の画像領域における輝度値YDATAの分散の度合いを検出する。本実施例では、所定の画像領域は、入力画像の一部の画像領域(水平方向X2画素×垂直方向Y2画素の画像領域)であり、注目位置が更新される度に更新される。具体的には、所定の画像領域として、注目位置の周辺に存在する水平方向5画素×垂直方向5画素の画像領域が設定される。
なお、所定の画像領域のサイズ、所定の画像領域と注目位置の位置関係、所定の画像領域の形状、等は特に限定されない。例えば、所定の画像領域のサイズは、水平方向5画素×垂直方向5画素より大きくても小さくてもよい。エッジ検出の処理負荷の観点から、所定の画像領域は、小さいことが好ましく、エッジ検出の精度の観点から、所定の画像領域は、ある程度大きいことが好ましい。そのため、所定の画像領域のサイズは、エッジ検出の処理負荷や精度を考慮して決定されることが好ましい。所定の画像領域は、注目位置を含まない画像領域であってもよい。複数の注目位置の間で共有の画像領域が、所定の画像領域として使用されてもよい。入力画像の全画像領域が、所定の画像領域として使用されてもよい。所定の画像領域の形状は、三角形、五角形、六角形、長方形、台形、ひし形、円形(真円形や楕円形)、等であってもよい。
まず、階調分散度検出部204は、輝度変換部201から出力された、所定の画像領域の輝度値YDATA(水平方向5画素×垂直方向5画素の25画素分の輝度値YDATA)から、輝度値YDATAのヒストグラム(輝度ヒストグラム)を生成する。本実施例では、各カテゴリのビット数が8ビットである輝度ヒストグラムが生成される。そのため、輝度値YDATAのビット数が8ビット以下である場合には、輝度値YDATAをそのまま用いて、輝度ヒストグラムが生成される。輝度値YDATAのビット数が8ビットよりも多い場合には、輝度値YDATAの下位ビットを切り捨てることにより、輝度値YDATAのビット数が8ビットに変換される。そして、変換後の輝度値YDATA(8ビットの値)を用いて、輝度ヒストグラムが生成される。なお、カテゴリのビット数は、8ビットより多くても少なくてもよい。カテゴリのビット数は、そのカテゴリに含まれる輝度値YDATAの範囲の大きさに相当する。
次に、階調分散度検出部204は、生成した輝度ヒストグラムの複数のカテゴリのうち、度数(画素数)が多いカテゴリから順番にN個(Nは2以上の整数)のカテゴリの度数の総和を算出する。Nの値は特に限定されないが、本実施例ではN=2とする。階調分散度検出部204は、生成した輝度ヒストグラムから、度数が1番多いカテゴリの度数D1stと、度数が2番目に多いカテゴリの度数D2ndとを検出する。そして、階調分散度検出部204は、度数D1stに度数D2ndを加算することにより、加算度数ADDを算出する。加算度数ADDの算出式は、以下の式2である。
ADD=D1st+D2nd ・・・(式2)
図4(A),5(A)は、所定の画像領域における画素の一例を示す。図4(A),5(A)では、輝度値YDATAの増加に伴い画素の色が黒から白に変化するように、輝度値YDATAが色で表現されている。図4(B),5(B)は、輝度ヒストグラムの一例を示す。図4(B)は、図4(A)に示す25画素の輝度値YDATAから生成された輝度ヒストグラムを示し、図5(B)は、図5(A)に示す25画素の輝度値YDATAから生成された輝度ヒストグラムを示す。
図4(A),4(B)の例では、25画素の階調数が2である。具体的には、25画素のうち、15画素が輝度値YDATA=0の画素であり、10画素が輝度値YDATA=255の画素である。そのため、度数D1stとして輝度値YDATA=0の度数15が検出され、度数D2ndとして輝度値YDATA=255の度数255が検出され、加算度数ADD=15+10=25が算出される。
図5(A),5(B)の例では、25画素の階調数が5である。具体的には、輝度値YDATA=0の画素、輝度値YDATA=64の画素、輝度値YDATA=128の画素、輝度値YDATA=192の画素、及び、輝度値YDATA=255の画素が、それぞれ5画素ずつ存在する。そのため、度数D1st=度数D2nd=5が検出され、加算度数ADD=5+5=10が算出される。
その後、階調分散度検出部204は、加算度数ADDを階調分散度DRATEに変換し、階調分散度DRATEをオフセット値決定部205へ出力する。本実施例では、階調分散度検出部204は、加算度数ADDが多い場合に、加算度数ADDが少ない場合に比べ小さい階調分散度DRATEを決定する。具体的には、階調分散度検出部204は、図6に示す対応関係に基づいて、加算度数ADDを階調分散度DRATEに変換する。図6に示す対応関係によれば、閾値ATH1以下の加算度数ADDは、階調分散度DRATE=1に変換され、閾値ATH2以上の加算度数ADDは、階調分散度DRATE=0に変換される。そして、閾値ATH1より大きく且つ閾値ATH2より小さい加算度数ADDは、加算度数ADDの増加に伴い階調分散度DRATEが1から0へ線形に低下するように、階調分散度DRATEに変換される。図6の例では、閾値ATH1=6であり、閾値ATH2=18である。
なお、閾値ATH1,ATH2は特に限定されない。閾値ATH1は6より大きくても小さくてもよいし、閾値ATH2は18より大きくても小さくてもよい。閾値ATH1,ATH2は、メーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよい。閾値ATH1,ATH2は、画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により決定される値であってもよい。また、加算度数ADDと階調分散度DRATEの対応関係は図6の対応関係に限られない。例えば、加算度数ADDの増加に対して階調分散度DRATEが非線形に低下してもよい。
なお、階調分散度DRATEの決定方法は、上記方法に限られない。例えば、輝度ヒストグラムの複数のカテゴリのうち、度数が閾値FTHより多いカテゴリの総数Kに基づいて、階調分散度DRATEが決定されてもよい。具体的には、総数Kが少ない場合に、総数Kが多い場合に比べ小さい階調分散度DRATEが決定されてもよい。ここで、閾値FTH=0とすると、図4の例では総数K=2が得られ、図5の例では総数K=5が得られる。
なお、閾値FTHは、メーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよい。閾値FTHは、画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により決定される値であってもよい。また、総数Kと階調分散度DRATEの対応関係は特に限定されない。
階調分散度DRATEは、輝度ヒストグラムを用いずに決定されてもよい。例えば、所定の画像領域内の複数の画素のうち、入力画像データIDの階調値が略同一である画素の総数がカウントされ、カウント結果(総数;カウント値)cntに基づいて階調分散度DRATEが決定されてもよい。具体的には、カウント値cntが小さい場合に、カウント値cntが大きい場合に比べ小さい階調分散度DRATEが決定されてもよい。「略同一」は「完全同一」を含む。
なお、カウント値cntの取得方法は特に限定されない。例えば、所定の画像領域内の複数の画素のうち、入力画像データIDの階調値が所定の画素の入力画像データIDの階調値と略同一である画素の総数が、カウント値cntとして使用されてもよい。所定の画素は、所定の画像領域内の画素であってもよいし、所定の画像領域外の画素であってもよい。例えば、所定の画素は、注目位置から最も近い画素である。また、複数の階調値のそれぞれについて、その階調値と入力画像データIDの階調値が略同一である画素(所定の画像領域内の画素)の総数が検出され、検出された複数の総数の最大値がカウント値cntとして使用されてもよい。この方法によれば、1つの階調値のみについて画素数をカウントする構成に比べ、より高精度に階調分散度DRATEを決定することができる。
オフセット値決定部205は、階調分散度DRATEに基づいて、複数の方向のそれぞれについて、その方向のエッジの検出されやすさである検出感度を決定する。本実施例では、検出感度として、ブロックマッチング部203によって得られたSAD値(ブロックマッチングの結果)を補正する補正パラメータであるオフセット値OFSTが決定される。具体的には、ブロックマッチング部203によって得られた17個のSAD値SAD_ARRAY(n)をそれぞれ補正する17個のオフセット値OFST(n)が決定される。そして、オフセット値決定部205は、オフセット値OFST(n)をSADオフセット部206へ出力する。なお、検出感度として、上記補正パラメータとは異なる値が決定されてもよい。例えば、「高」、「中」、「低」などが検出感度として決定されてもよい。ブロックマッチングの結果(SAD値SAD_ARRAY(n))に応じたエッジの検出結果を補正する補正パラメータが、検出感度として決定されてもよい。
まず、オフセット値決定部205は、ブロック距離nの絶対値D(参照ブロックA,B間の距離)に応じて、第1補正パラメータである検出感度ペナルティPを決定する。具体的には、オフセット値決定部205は、絶対値Dと検出感度ペナルティPの対応関係を表すテーブルPTBLを、不図示の読み込み部から読み込む。そして、オフセット値決定部205は、絶対値Dを、テーブルPTBLにおいて絶対値Dに対応付けられている検出感度ペナルティPに変換する。例えば、ブロック距離n=−4である場合には、ブロック距離nの絶対値D=4が、テーブルPTBLにおいて絶対値D=4に対応付けられている検出感度ペナルティPに変換される。オフセット値決定部205は、17個のブロック距離nにそれぞれ対応する17個の検出感度ペナルティP(n)を決定する。
本実施例では、テーブルPTBLは図7の対応関係を表す。図7の対応関係によれば、絶対値Dが大きい場合に、絶対値Dが小さい場合に比べ大きい検出感度ペナルティPが決定される。具体的には、閾値BTH1以下の絶対値Dは、検出感度ペナルティP=0に変換され、閾値BTH2以上の絶対値Dは、検出感度ペナルティP=PMAXに変換される。そして、閾値BTH1より大きく且つ閾値BTH2より小さい絶対値Dは、絶対値Dの増加に伴い検出感度ペナルティPが0からPMAXへ線形に増加するように、検出感度ペ
ナルティPに変換される。PMAXは、検出感度ペナルティPの上限値である。図7の例では、閾値BTH1=4であり、閾値BTH2=12であり、上限値PMAX=256である。
なお、閾値BTH1,BTH2は特に限定されない。閾値BTH1は4より大きくても小さくてもよいし、閾値BTH2は12より大きくても小さくてもよい。閾値BTH1,BTH2は、メーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよい。閾値BTH1,BTH2は、画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により決定される値であってもよい。また、絶対値Dと検出感度ペナルティPの対応関係は図7の対応関係に限られない。例えば、絶対値Dの増加に対して検出感度ペナルティPが非線形に増加してもよい。検出感度ペナルティPが絶対値Dに依存しなくてもよい。
なお、検出感度ペナルティPの決定方法は上記方法に限られない。例えば、絶対値Dと検出感度ペナルティPの対応関係を表す情報として、テーブルPTBLの代わりに関数が使用されてもよい。また、ブロック距離nを用いずに、検出感度ペナルティPが決定されてもよい。例えば、ユーザ操作に応じて検出感度ペナルティPが決定(設定)されてもよい。メーカーによって予め定められた固定値が検出感度ペナルティPとして使用されてもよい。画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により検出感度ペナルティPが決定されてもよい。
次に、オフセット値決定部205は、階調分散度DRATEに応じて、第2補正パラメータである検出感度補正ゲインRGAINを決定する。具体的には、オフセット値決定部205は、図8に示す対応関係に基づいて、階調分散度DRATEを検出感度補正ゲインRGAINに変換する。図8に示す対応関係によれば、階調分散度DRATEが大きい場合に、階調分散度DRATEが小さい場合に比べ小さい検出感度補正ゲインRGAINが決定される。具体的には、閾値DTH1以下の階調分散度DRATEは、検出感度補正ゲインRGAIN=1に変換され、閾値DTH2以上の階調分散度DRATEは、検出感度補正ゲインRGAIN=0に変換される。そして、閾値DTH1より大きく且つ閾値DTH2より小さい階調分散度DRATEは、階調分散度DRATEの増加に伴い検出感度補正ゲインRGAINが1から0へ線形に低下するように、検出感度補正ゲインRGAINに変換される。図8の例では、閾値DTH1=0.3であり、閾値DTH2=0.7である。オフセット値決定部205は、1つの注目位置に対応する1つの検出感度補正ゲインRGAINを決定する。即ち、17個のブロック距離nに共通の1つの検出感度補正ゲインRGAINが決定される。
なお、閾値DTH1,DTH2は特に限定されない。閾値DTH1は0.3より大きくても小さくてもよいし、閾値DTH2は0.7より大きくても小さくてもよい。閾値DTH1,DTH2は、メーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよい。閾値DTH1,DTH2は、画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により決定される値であってもよい。また、階調分散度DRATEと検出感度補正ゲインRGAINの対応関係は図8の対応関係に限られない。例えば、階調分散度DRATEの増加に対して検出感度補正ゲインRGAINが非線形に低下してもよい。
そして、オフセット値決定部205は、検出感度ペナルティPと検出感度補正ゲインRGAINに応じて、オフセット値OFSTを決定する。本実施例では、オフセット値決定部205は、以下の式3を用いて、オフセット値OFSTを算出する。オフセット値決定部205は、17個のブロック距離nにそれぞれ対応する17個のオフセット値OFST(n)を決定する。

OFST(n)=P(n)×RGAIN ・・・(式3)
なお、第1補正パラメータと第2補正パラメータは特に限定されない。例えば、第1補正パラメータを第2補正パラメータに加算することによりオフセット値OFST(n)が算出されるように、第1補正パラメータと第2補正パラメータが決定されてもよい。
SADオフセット部206は、ブロックマッチング部203により算出された17個のSAD値SAD_ARRAY(n)を、オフセット値決定部205により決定された17個のオフセット値OFST(n)を用いて補正する。具体的には、以下の式4に示すように、SAD値SAD_ARRAY(n)にオフセット値OFST(n)を加算することにより、補正後のSAD値SAD_ARRAY_OFST(n)が算出される。そして、SADオフセット部206は、SAD値SAD_ARRAY_OFST(n)をマッチング角度決定部207へ出力する。

SAD_ARRAY_OFST(n)=SAD_ARRAY(n)
+OFST(n)
・・・(式4)
なお、本実施例では、SAD値を補正する補正パラメータとして、SAD値に加算するオフセット値が決定される例を説明したが、これに限らない。例えば、SAD値に乗算するゲイン値が、SAD値を補正する補正パラメータとして決定されてもよい。
マッチング角度決定部207は、オフセット値決定部205によって決定された検出感度で入力画像からエッジを検出する。具体的には、マッチング角度決定部207は、SADオフセット部206から出力された17個のSAD_ARRAY_OFST(n)の最小値SADminに応じて、角度情報ANGLEを決定する。そして、マッチング角度決定部207は、決定した角度情報ANGLEをスケーラ部102に出力する。具体的には、マッチング角度決定部207は、SADminであるSAD_ARRAY_OFST(n)のnを、角度情報ANGLEとして決定する。例えば、SAD_ARRAY_OFST(n)の分布が図9に示す分布であった場合には、角度情報ANGLE=−4が得られる。
上述したように、図3(A),3(B)の参照ブロックA,Bの位置関係は、エッジの方向の候補(候補方向)に対応する。そのため、「ブロック距離nは候補方向に対応する」と言える。具体的には、正の値であるブロック距離nは右上がりの候補方向に対応し、負の値であるブロック距離nは右下がりの候補方向に対応する。そして、ブロック距離nの絶対値が大きいほど水平方向に近く、且つ、ブロック距離nの絶対値が小さいほど水平方向から遠い(垂直方向に近い)候補方向に、ブロック距離nが対応する。
そして、本実施例では、補正後のSAD値SAD_ARRAY_OFST(n)に基づいて角度情報ANGLEが決定される。そのため、オフセット値OFSTを決定する処理は、「検出感度を決定する処理」と言える。そして、補正後のSAD値SAD_ARRAY_OFST(n)に基づいて角度情報ANGLEを決定する処理は、「決定された検出感度でエッジを検出する処理」と言える。
また、本実施例では、SAD値SAD_ARRAY_OFST(n)が小さいほど、ブロック距離nに対応する方向(候補方向)のエッジが検出されやすい。そして、SAD値
SAD_ARRAY_OFST(n)が大きいほど、ブロック距離nに対応する方向のエッジが検出されにくい。そして、式4に示すように、SAD値SAD_ARRAY(n)にオフセット値OFST(n)を加算することにより、SAD値SAD_ARRAY_OFST(n)が算出される。そのため、オフセット値OFST(n)が大きいほど大きい低減度合いで、ブロック距離nに対応する方向のエッジの検出感度が低減される。
式3に示すように、検出感度ペナルティP(n)が一定の場合には、検出感度補正ゲインRGAINが大きいほど大きい値が、オフセット値OFST(n)として得られる。そして、図8に示すように、階調分散度DRATEが小さい場合に、階調分散度DRATEが大きい場合に比べ大きい検出感度補正ゲインRGAINが得られる。そのため、階調分散度DRATEが小さい場合に、階調分散度DRATEが大きい場合に比べ大きいオフセット値OFST(n)が得られる。即ち、階調分散度DRATEが小さい場合に、階調分散度DRATEが大きい場合に比べ低い検出感度が決定される。
そして、式3に示すように、検出感度補正ゲインRGAINが一定の場合には、検出感度ペナルティP(n)が大きいほど大きい値が、オフセット値OFST(n)として得られる。そして、図7に示すように、絶対値Dが大きい場合に、絶対値Dが小さい場合に比べ大きい検出感度ペナルティP(n)が得られる。絶対値Dは、図3(A),3(B)の参照ブロックAと参照ブロックBの間の水平方向の距離である。そのため、絶対値Dが大きいほど、候補方向(図3(A),3(B)の破線矢印の方向;エッジの方向の候補)は水平方向に近い。したがって、候補方向が水平方向に近い場合に、候補方向が水平方向から遠い場合よりも大きい検出感度ペナルティP(n)が得られる。その結果、候補方向が水平方向に近い場合に、候補方向が水平方向から遠い場合よりも大きいオフセット値OFST(n)が得られる。即ち、候補方向が水平方向に近い場合に、候補方向が水平方向から遠い場合よりも低い検出感度が決定される。
従って、本実施例によれば、階調分散度DRATEが小さい場合に、水平方向に近い方向のエッジの検出感度として、水平方向から遠い方向のエッジの検出感度よりも低い検出感度が決定される。そして、階調分散度DRATEが大きい場合に、複数のエッジの方向の間で略同一の検出感度が決定される。
テキスト画像の画像領域では、水平方向から遠い方向のエッジが存在するにも拘らず水平方向に近い方向のエッジが誤検出されることがある。そのため、テキスト画像の画像領域では、水平方向に近い方向のエッジの検出感度が、水平方向から遠い方向のエッジの検出感度よりも低い検出感度に制御されることが好ましい。また、自然画の画像領域では、水平方向から遠い方向のエッジが存在するにも拘らず水平方向に近い方向のエッジが誤検出されることは少ない。そのため、自然画の画像領域では、エッジの検出感度が、複数のエッジの方向の間で略同一の検出感度に制御されることが好ましい。一般的に、テキスト画像の画像領域では階調分散度DRATEとして小さい値が得られ、自然画の画像領域では階調分散度DRATEとして大きい値が得られる。そのため、本実施例によれば、上述した好ましい制御を実現することができ、エッジをより高精度に検出することができる。
なお、図6の閾値ATH1,ATH2、図7の上限値PMAX、図7の閾値BTH1,BTH2、図8の閾値DTH1,DTH2、等を調整することで、検出感度を調整することができる(検出感度のチューニング)。例えば、階調分散度DRATEが低減されるように閾値ATH1,ATH2が調整されると、検出感度が低減される。上限値PMAXが高められると、検出感度が低減される。検出感度ペナルティPが高められるように閾値BTH1,BTH2が調整されると、検出感度が低減される。そして、検出感度補正ゲインRGAINが高められるように閾値DTH1,DTH2が調整されると、検出感度が低減される。
次に、スケーラ部102について詳しく説明する。図10は、スケーラ部102で行われるスケーラ処理の一例を示す図である。スケーラ処理では、入力画像に画素が存在しない位置に対して、補間画素(SC補間画素)が生成される。図10において、「P0」は注目位置を示し、「P1」はSC補間位置(SC補間画素の生成位置)を示す。注目位置は特に限定されないが、本実施例では、図10に示すように、入力画像データIDの2行2列の4画素の中心位置が注目位置として使用される。注目位置P0は、SC補間位置P1に最も近い注目位置である。SC補間位置P1は、スケーラ処理の拡大率や縮小率に依存する。図10において、「ix_i」は、入力画像データIDの画素の水平位置を示すための整数値であり、「iy_i」は、入力画像データIDの画素の垂直位置(垂直方向の位置)を示すための整数値である。また、「ix_s」は、SC補間位置P1の水平位置を示すための小数値であり、「iy_s」は、SC補間位置P1の垂直位置を示すための小数値である。SC補間位置P1の座標(水平位置,垂直位置)は、(ix_i+ix_s,iy_i+iy_s)で表すことができる。
本実施例では、スケーラ処理において、角度情報ANGLEに基づいて、入力画像データIDの4つ画素U1,U2,D1,D2が選択される。そして、選択された4つの画素U1,U2,D1,D2の画素値を用いて、SC補間位置P1の画素値DOUTが算出される。その後、算出された画素値DOUTが、画像データODの画素値として出力される。
画素U1,U2は、SC補間位置P1の1つ上のライン上の画素であり、画素D1,D2は、SC補間位置P1の1つ下のライン上の画素である。本実施例では、角度情報ANGLEとして、注目位置を基準とする画素U,Dの水平位置を示す値が使用される。本実施例では、角度情報ANGLEに基づいて画素U1,D1が選択される。画素U1,D1は、角度情報ANGLEが示すエッジの方向において注目位置P0に隣接する画素である。そして、画素U1,D1の水平位置をSC補間位置P1の側に1画素分だけシフトさせることにより、画素U2,D2が選択される。画素U1,U2,D1,D2の水平位置U1(x),U2(x),D1(x),D2(x)は、以下の式5を用いて算出できる。式5において、「INT(X)」は、Xの整数部分を得る関数である。

U1(x)=INT(ix_i+ix_s+ANGLE_SC×iy_s)
U2(x)=U1(x)+1
D1(x)=U1(x)−ANGLE_SC
D2(x)=D1(x)+1
・・・(式5)
図10の「k」は、SC補間位置P1の画素値を算出する際に用いるパラメータであり、画素U1,U2,D1,D2の画素値の重みを決定するためのパラメータである。図10に示すように、パラメータkは、第1位置と画素U1との間の距離である。第1位置は、SC補間位置P1の1つ上のライン上の位置であり、角度情報ANGLEが示すエッジの方向においてSC補間位置P1に隣接する位置である。パラメータkは、第2位置と画素D2との間の距離でもある。第2位置は、SC補間位置P1の1つ下のライン上の位置であり、角度情報ANGLEが示すエッジの方向においてSC補間位置P1に隣接する位置である。パラメータkは、以下の式6を用いて算出される。

k=(ix_s+ANGLE_SC×iy_s)
−INT(ix_s+ANGLE_SC×iy_s)
・・・(式6)
そして、画素U1,U2,D1,D2の画素値をパラメータkに基づく重み(SC補間位置P1からの距離に基づく重み)で重み付け合成することにより、SC補間位置P1の画素値DOUTが算出される。具体的には、以下の式7を用いて画素値DOUTが算出される。式7において、「PD(U1(x),iy_i)」は画素U1の画素値、「PD(U2(x),iy_i)」は画素U2の画素値、「PD(D1(x),iy_i+1)」は画素D1の画素値、「PD(D2(x),iy_i+1)」は画素D2の画素値である。

DOUT=(PD(U1(x),iy_i)×(1−k)
+PD(U2(x),iy_i)×k)×(1−iy_s)
+(PD(D1(x),iy_i+1)×k
+PD(D2(x)、iy_i+1)×(1−k))×iy_s
・・・(式7)
式7によれば、画素値PD(U1(x),iy_i)の重みとして「1−k」(第1位置と画素U2の間の距離)が使用され、画素値PD(U2(x),iy_i)の重みとして「k」(第1位置と画素U1の間の距離)が使用される。それらの重みを用いて、画素値PD(U1(x),iy_i)と画素値PD(U2(x),iy_i)が重み付け合成され、第1合成値が算出される。
また、画素値PD(D1(x),iy_i+1)の重みとして「k」(第2位置と画素D2の間の距離)が使用され、画素値PD(D2(x),iy_i+1)の重みとして「1−k」(第2位置と画素D1の間の距離)が使用される。それらの重みを用いて、画素値PD(D1(x),iy_i+1)と画素値PD(D2(x),iy_i+1)が重み付け合成され、第2合成値が算出される。
そして、第1合成値の重みとして「1−iy_s」(画素D1,D2のラインとSC補間位置P1との間の垂直距離(垂直方向の距離))が使用される。また、第2合成値の重みとして「iy_s」(画素U1,U2のラインとSC補間位置P1との間の垂直距離)が使用される。それらの重みを用いて、第1合成値と第2合成値が重み付け合成され、画素値DOUTが算出される。
以上述べたように、本実施例によれば、入力画像データの階調値の分散度合いに基づいて、複数の方向のそれぞれについて、その方向のエッジの検出されやすさである検出感度が決定される。そして、決定された検出感度で、入力画像からエッジが検出される。それにより、エッジをより高精度に検出することができる。例えば、自然画に含まれる水平線に近い浅い角度の斜め線、文字に含まれる斜め線、等を高精度に検出することができる。その結果、エッジの検出結果に基づく種々の処理をより高精度に行うことができる。例えば、スケーラ処理によるジャギーの発生をより高精度に抑制することができる。
<実施例2>
以下、本発明の実施例2について説明する。実施例1では、ブロックマッチングの結果であるSAD値を補正する例を説明した。本実施例では、ブロックマッチングの結果に応じたエッジの検出結果を補正する例を説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明は省略する。
本実施例に係る画像処理装置の構成は、実施例1(図1)と同じである。但し、本実施
例では、エッジ検出部101の処理が実施例1と異なる。図11は、本実施例に係るエッジ検出部101の構成の一例を示すブロック図である。図11において、実施例1と同じ機能部には実施例1と同じ符号を付し、その機能部についての説明は省略する。
信頼度ペナルティ決定部305は、階調分散度検出部204から出力された階調分散度DRATEに基づいて、信頼度ペナルティQPENAを決定する。そして、信頼度ペナルティ決定部305は、決定した信頼度ペナルティQPENAをマッチング角度決定部307へ出力する。信頼度ペナルティQPENAは、ブロックマッチングの結果(SAD値SAD_ARRAY(n))に応じた角度情報ANGLEを補正する補正パラメータである。信頼度ペナルティQPENAは「SAD値SAD_ARRAY(n)に応じた角度情報ANGLEの非信頼度」とも言える。
本実施例では、信頼度ペナルティ決定部305は、図12に示す対応関係に基づいて、階調分散度DRATEを信頼度ペナルティQPENAに変換する。図12に示す対応関係によれば、階調分散度DRATEが大きい場合に、階調分散度DRATEが小さい場合に比べ小さい信頼度ペナルティQPENAが決定される。具体的には、閾値ETH1以下の階調分散度DRATEは、信頼度ペナルティQPENAに変換され、閾値ETH2以上の階調分散度DRATEは、信頼度ペナルティQPENA=0に変換される。そして、閾値ETH1より大きく且つ閾値ETH2より小さい階調分散度DRATEは、階調分散度DRATEの増加に伴い信頼度ペナルティQPENAが1から0へ線形に低下するように、信頼度ペナルティQPENAに変換される。信頼度ペナルティ決定部305は、1つの注目位置に対応する1つの信頼度ペナルティQPENAを決定する。
実施例1で述べたように、テキスト画像の画像領域では、水平方向から遠い方向のエッジが存在するにも拘らず水平方向に近い方向のエッジが誤検出されることがある。そのため、階調分散度DRATEが小さい場合には、階調分散度DRATEが大きい場合に比べ、SAD値SAD_ARRAY(n)に応じた角度情報ANGLEの信頼度が低いと考えられる。図12に示すような対応関係で階調分散度DRATEを信頼度ペナルティQPENAに変換するのは、このためである。
なお、閾値ETH1,ETH2は特に限定されない。閾値ETH1,ETH2は、メーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよい。閾値ETH1,ETH2は、画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により決定される値であってもよい。また、階調分散度DRATEと信頼度ペナルティQPENAの対応関係は図12の対応関係に限られない。例えば、階調分散度DRATEの増加に対して信頼度ペナルティQPENAが非線形に低下してもよい。
マッチング角度決定部307は、ブロックマッチング部203から出力された17個のSAD_ARRAY(n)の最小値SADminと、信頼度ペナルティ決定部305から出力された信頼度ペナルティQPENAとに基づいて、角度情報ANGLEを決定する。具体的には、マッチング角度決定部307は、ブロックマッチング部203から出力された17個のSAD_ARRAY(n)の最小値SADminに応じて、角度情報ANGLEを決定する。ここでは、SADminであるSAD_ARRAY(n)のnが、角度情報ANGLEとして決定される。そして、マッチング角度決定部307は、信頼度ペナルティ決定部305から出力された信頼度ペナルティQPENAに応じて、角度情報ANGLEを補正する。
このように、本実施例では、SAD値SAD_ARRAY(n)と信頼度ペナルティQPENAとに基づいて角度情報ANGLEが決定される。そのため、信頼度ペナルティQ
PENAを決定する処理は、「検出感度を決定する処理」と言える。そして、SAD値SAD_ARRAY(n)と信頼度ペナルティQPENAとに基づいて角度情報ANGLEを決定する処理は、「決定された検出感度でエッジを検出する処理」と言える。
本実施例では、信頼度ペナルティQPENAと閾値QTHとの比較結果に応じて、以下のように角度情報ANGLEが補正される。なお、閾値QTHは特に限定されない。閾値QTHは、メーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよい。閾値QTHは、画像処理装置の動作モード、入力画像データIDの種類、等に応じて画像処理装置により決定される値であってもよい。

・QPENA>QTHの場合:
角度情報ANGLE=0に、角度情報ANGLEが補正される。
・QPENA≦QTHの場合:
角度情報ANGLEは補正されない。
このように、本実施例では、信頼度ペナルティQPENAが大きい場合に、SAD値SAD_ARRAY(n)に応じた角度情報ANGLEの信頼度が低いと判断され、角度情報ANGLEが0に補正される。角度情報ANGLE=0は、垂直方向のエッジが存在すること、または、エッジが存在しないことを示す。そして、信頼度ペナルティQPENAが小さい場合に、SAD値SAD_ARRAY(n)に応じた角度情報ANGLEの信頼度が高いと判断され、角度情報ANGLEは補正されない。
そして、図12に示すように、階調分散度DRATEが小さい場合に、階調分散度DRATEが大きい場合に比べ大きい信頼度ペナルティQPENAが得られる。そのため、信頼度ペナルティQPENAを決定する処理は、「階調分散度DRATEが小さい場合に、階調分散度DRATEが大きい場合に比べ低い検出感度を決定する処理」と言うことができる。信頼度ペナルティQPENAを決定する処理は、「階調分散度DRATEが小さい場合に、水平方向に近い方向のエッジの検出感度として、水平方向から遠い方向のエッジの検出感度よりも低い検出感度を決定する処理」と言うこともできる。そして、信頼度ペナルティQPENAを決定する処理は、「階調分散度DRATEが大きい場合に、複数のエッジの方向の間で略同一の検出感度を決定する処理」と言うこともできる。
以上述べたように、本実施例によれば、階調分散度に基づいて、エッジの検出結果を補正する補正パラメータが決定される。そして、決定された補正パラメータを用いて、エッジの検出結果が補正される。それにより、エッジをより高精度に検出することができる。
なお、本実施例では、補正後の角度情報ANGLEとして1つの値「0」を使用する例を説明したが、これに限らない。例えば、信頼度ペナルティQPENAが大きいほど大きい補正量(変化量)で、角度情報ANGLEが0に近づけられてもよい。
なお、本実施例では、信頼度ペナルティQPENAに応じて角度情報ANGLEを補正する例を示したが、信頼度ペナルティQPENAに応じて最小値SADminが補正されてもよい。例えば、最小値SADminに信頼度ペナルティQPENAを加算する補正が行われてもよい。最小値SADminが大きいほど、最小値SADminに応じた角度情報ANGLEの信頼度は低い。そのため、最小値SADminに信頼度ペナルティQPENAを加算する補正は「角度情報ANGLEの信頼度を下げる補正」と言える。そして、補正後のSADminと閾値との比較結果に応じて、角度情報ANGLEが補正されてもよい。補正後の信頼度(補正後のSAD値など)に応じて、スケーラ部102での補間方法(画素値DOUTの決定方法)が変更されてもよい。例えば、信頼度が高い場合に、実
施例1の方法で画素値DOUTが決定され、信頼度が低い場合に、SC補間位置に最も近い4つの画素を用いて画素値DOUTが決定されてもよい。
<実施例3>
以下、本発明の実施例3について説明する。実施例1では、階調分散度の検出対象の画像領域のサイズが固定されている場合の例を説明した。本実施例では、ブロックマッチングで使用される参照範囲のサイズに応じて、階調分散度の検出対象の画像領域のサイズを決定する例を説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明は省略する。
本実施例に係る画像処理装置の構成は、実施例1(図1)と同じである。但し、本実施例では、エッジ検出部101の処理が実施例1と異なる。図13は、本実施例に係るエッジ検出部101の構成の一例を示すブロック図である。図13において、実施例1と同じ機能部には実施例1と同じ符号を付し、その機能部についての説明は省略する。
ブロックバッファ部402は、実施例1のブロックバッファ部202と同様の処理を行う。但し、本実施例では、ブロックバッファ部402は、ブロックデータBLKDATAの画像領域のサイズを変更する。具体的には、参照範囲のサイズを示す範囲情報RANGEが、画像処理装置に入力される。ブロックバッファ部402は、範囲情報RANGEによって示されたサイズを有する画像領域を参照領域として設定し、参照領域のデータをブロックデータBLKDATAとして出力する。範囲情報RANGEを変更することにより参照範囲のサイズが変更可能である。
階調分散度検出部404は、実施例1の階調分散度検出部204と同様の方法で、階調分散度DRATEを決定する。但し、本実施例では、階調分散度検出部404は、階調分散度DRATEの検出対象の画像領域(分散検出領域)のサイズを変更する。具体的には、階調分散度検出部404は、参照範囲のサイズが大きい場合に、参照範囲のサイズが小さい場合に比べ大きい画像領域を、分散検出領域として設定する。その結果、参照範囲のサイズが大きい場合に、参照範囲のサイズが小さい場合に比べ大きい画像領域における階調値の分散度合いが、階調分散度DRATEとして検出される。
入力画像データIDの解像度が低い場合、広い範囲内で参照ブロックの位置を変更すると、エッジが誤検出される虞がある。そこで、本実施例では、入力画像データIDの解像度が低い場合における参照範囲のサイズとして、入力画像データIDの解像度が高い場合における参照範囲のサイズよりも小さいサイズを示す情報が、範囲情報RANGEとして使用される。これにより、入力画像データIDの解像度に応じた好適な参照範囲を設定することができる。ひいては、エッジの誤検出を抑制し、より高精度なエッジ検出を実現できる。
また、上述した範囲情報RANGEが使用されることにより、入力画像データIDの解像度が低い場合に、入力画像データIDの解像度が高い場合に比べ小さい分散検出領域が設定される。これにより、参照範囲のサイズに応じた好適な分散検出領域を設定することができる。ひいては、より好適な階調分散度DRATEを得ることができ、より高精度なエッジ検出を実現できる。
範囲情報RANGEは、例えば、以下の式8を用いて算出された値である。式8において、「HRESO」は、入力画像データIDの水平解像度(水平方向の画素数)であり、例えば1920である。「VRESO」は、入力画像データIDの垂直解像度(垂直方向の画素数;垂直方向のライン数)であり、例えば1080である。「α」は、所定の係数であり、例えば、0以上1以下の任意の値である。

RESO=(HRESO×VRESO)×α ・・・(式8)
なお、入力画像データIDの解像度とは無関係のサイズが、参照範囲のサイズとして使用されてもよい。例えば、ユーザによって選択されたサイズが、参照範囲のサイズとして使用されてもよい。また、外部からの情報(範囲情報RANGE)を用いずに、参照範囲のサイズが決定されてもよい。例えば、画像処理装置内において、入力画像データIDの解像度を検出する処理、解像度の検出結果に応じて参照範囲のサイズを決定する処理、等が行われてもよい。
本実施例では、範囲情報RANGEと、分散検出領域のサイズとの対応関係が予め定められている。例えば、図14に示すような対応関係を示す情報(テーブルや関数)が、不図示のメモリに予め記録されている。そして、階調分散度検出部404は、予め定められた上記対応関係と、取得した範囲情報RANGEとに基づいて、分散検出領域のサイズを決定する。図14の例では、範囲情報RANGE_Aに、分散検出領域のサイズ=3(水平方向の画素数)×3(垂直方向のライン数)が対応付けられており、範囲情報RANGE_Bに、サイズ=5×5が対応付けられている。そして、範囲情報RANGE_Cに、サイズ=7×7が対応付けられており、範囲情報RANGE_Dに、サイズ=9×9が対応付けられている。図14では、範囲情報RANGE_Aが示す(参照範囲の)サイズ<範囲情報RANGE_Bが示すサイズ<RANGE_Cが示すサイズ<RANGE_Dが示すサイズである。範囲情報RANGE_Aが取得された場合には、サイズ=3×3を有する分散検出領域が設定される。範囲情報RANGE_B,RANGE_C,RANGE_Dが取得された場合には、同様に、サイズ=5×5,7×7,9×9を有する分散検出領域が設定される。
以上述べたように、本実施例によれば、参照範囲のサイズに応じて、分散検出領域のサイズが変更される。それにより、階調分散度の算出精度を高めることができ、より高精度なエッジ検出を実現できる。
なお、実施例1〜3はあくまで一例であり、本発明の要旨の範囲内で実施例1〜3の構成を適宜変形したり変更したりすることにより得られる構成も、本発明に含まれる。実施例1〜3の構成を適宜組み合わせて得られる構成も、本発明に含まれる。
<その他の実施例>
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101:エッジ検出部 203:ブロックマッチング部
204,204:階調分散度検出部 205:オフセット値決定部
206:オフセット部 207,307:マッチング角度決定部
305:信頼度ペナルティ決定部

Claims (16)

  1. 入力画像データの階調値の分散度合いを検出する検出手段と、
    前記検出手段によって検出された前記分散度合いに基づいて、複数の方向のそれぞれについて、その方向のエッジの検出されやすさである検出感度を決定する決定手段と、
    前記決定手段によって決定された検出感度で、前記入力画像データに基づく入力画像からエッジを検出するエッジ検出手段と、
    を有し、
    前記決定手段は、前記分散度合いが小さい場合に、前記分散度合いが大きい場合に比べ低い検出感度を決定する
    ことを特徴とするエッジ検出装置。
  2. 前記決定手段は、前記分散度合いが小さい場合に、水平方向に近い方向のエッジの検出感度として、水平方向から遠い方向のエッジの検出感度よりも低い検出感度を決定する
    ことを特徴とする請求項に記載のエッジ検出装置。
  3. 前記検出手段は、前記入力画像データの階調値のヒストグラムの複数のカテゴリのうち、度数が多いカテゴリから順番にN個(Nは2以上の整数)のカテゴリの度数の総和が大きい場合に、前記総和が小さい場合に比べ小さい分散度合いを決定する
    ことを特徴とする請求項1または2に記載のエッジ検出装置。
  4. 前記検出手段は、前記入力画像データの階調値のヒストグラムの複数のカテゴリのうち、度数が閾値より多いカテゴリの総数が少ない場合に、前記総数が多い場合に比べ小さい分散度合いを決定する
    ことを特徴とする請求項1または2に記載のエッジ検出装置。
  5. 前記検出手段は、前記入力画像データの階調値が略同一である画素の総数が少ない場合に、前記総数が多い場合に比べ小さい分散度合いを決定する
    ことを特徴とする請求項1または2に記載のエッジ検出装置。
  6. 前記検出手段は、前記入力画像データの階調値が所定の画素の前記入力画像データの階
    調値と略同一である画素の総数に基づいて、前記分散度合いを決定する
    ことを特徴とする請求項に記載のエッジ検出装置。
  7. 前記検出手段は、
    複数の階調値のそれぞれについて、その階調値と前記入力画像データの階調値が略同一である画素の総数を検出し、
    検出した複数の総数の最大値に基づいて、前記分散度合いを決定する
    ことを特徴とする請求項に記載のエッジ検出装置。
  8. 前記エッジ検出手段は、2つの参照ブロックの位置を変えながら前記2つの参照ブロックにおける前記入力画像を比較するブロックマッチングの結果に基づいてエッジを検出し、
    前記決定手段は、前記検出感度として、前記ブロックマッチングの結果を補正する補正パラメータを決定する
    ことを特徴とする請求項1〜のいずれか1項に記載のエッジ検出装置。
  9. 前記決定手段は、
    前記2つの参照ブロックの間の距離に応じて第1補正パラメータを決定し、
    前記分散度合いに応じて第2補正パラメータを決定し、
    前記第1補正パラメータと前記第2補正パラメータに応じて、前記ブロックマッチングの結果を補正する前記補正パラメータを決定する
    ことを特徴とする請求項に記載のエッジ検出装置。
  10. 前記エッジ検出手段は、2つの参照ブロックの位置を変えながら前記2つの参照ブロックにおける前記入力画像を比較するブロックマッチングの結果に基づいてエッジを検出し、
    前記決定手段は、前記検出感度として、前記ブロックマッチングの結果に応じたエッジの検出結果を補正する補正パラメータを決定する
    ことを特徴とする請求項1〜のいずれか1項に記載のエッジ検出装置。
  11. 前記検出手段は、所定の画像領域における階調値の分散度合いを検出する
    ことを特徴とする請求項1〜10のいずれか1項に記載のエッジ検出装置。
  12. 前記エッジ検出手段は、参照範囲内で2つの参照ブロックの位置を変えながら前記2つの参照ブロックにおける前記入力画像を比較するブロックマッチングの結果に基づいてエッジを検出し、
    前記参照範囲のサイズは変更可能であり、
    前記検出手段は、前記参照範囲のサイズが大きい場合に、前記参照範囲のサイズが小さい場合に比べ大きい画像領域における階調値の分散度合いを検出する
    ことを特徴とする請求項1〜11のいずれか1項に記載のエッジ検出装置。
  13. 前記入力画像データの解像度が低い場合における前記参照範囲のサイズは、前記入力画像データの解像度が高い場合における前記参照範囲のサイズよりも小さい
    ことを特徴とする請求項12に記載のエッジ検出装置。
  14. 前記エッジ検出手段による検出結果に基づき、前記入力画像データの解像度を変換する変換手段、をさらに有する
    ことを特徴とする請求項1〜13のいずれか1項に記載のエッジ検出装置。
  15. 入力画像データの階調値の分散度合いを検出する検出ステップと、
    前記検出ステップにおいて検出された前記分散度合いに基づいて、複数の方向のそれぞれについて、その方向のエッジの検出されやすさである検出感度を決定する決定ステップと、
    前記決定ステップにおいて決定された検出感度で、前記入力画像データに基づく入力画像からエッジを検出するエッジ検出ステップと、
    を有し、
    前記決定ステップでは、前記分散度合いが小さい場合に、前記分散度合いが大きい場合に比べ低い検出感度が決定される
    ことを特徴とするエッジ検出方法。
  16. 請求項15に記載のエッジ検出方法の各ステップをコンピュータに実行させるためのプログラム。
JP2015248321A 2015-12-21 2015-12-21 エッジ検出装置、エッジ検出方法、及び、プログラム Expired - Fee Related JP6704726B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015248321A JP6704726B2 (ja) 2015-12-21 2015-12-21 エッジ検出装置、エッジ検出方法、及び、プログラム
US15/362,167 US10311546B2 (en) 2015-12-21 2016-11-28 Edge detection apparatus and edge detection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015248321A JP6704726B2 (ja) 2015-12-21 2015-12-21 エッジ検出装置、エッジ検出方法、及び、プログラム

Publications (3)

Publication Number Publication Date
JP2017116985A JP2017116985A (ja) 2017-06-29
JP2017116985A5 JP2017116985A5 (ja) 2019-01-24
JP6704726B2 true JP6704726B2 (ja) 2020-06-03

Family

ID=59064424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015248321A Expired - Fee Related JP6704726B2 (ja) 2015-12-21 2015-12-21 エッジ検出装置、エッジ検出方法、及び、プログラム

Country Status (2)

Country Link
US (1) US10311546B2 (ja)
JP (1) JP6704726B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110702705B (zh) * 2019-11-20 2022-04-29 大连交通大学 一种基于原子分辨电镜的负载金属催化剂分散度测算方法
CN113781506B (zh) * 2021-08-06 2023-12-15 东北大学 一种带钢偏移量检测方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60105081A (ja) 1983-11-14 1985-06-10 Fujitsu Ltd 輪郭抽出装置
JP3826412B2 (ja) * 1995-05-31 2006-09-27 ソニー株式会社 エッジ検出方法及びエッジ検出装置
JP4358055B2 (ja) 2004-07-21 2009-11-04 株式会社東芝 補間画素生成回路
WO2012098854A1 (ja) * 2011-01-20 2012-07-26 日本電気株式会社 画像処理システム、画像処理方法および画像処理用プログラム

Also Published As

Publication number Publication date
US10311546B2 (en) 2019-06-04
US20170178337A1 (en) 2017-06-22
JP2017116985A (ja) 2017-06-29

Similar Documents

Publication Publication Date Title
US11044453B2 (en) Data processing apparatus, imaging apparatus and data processing method
JP6157138B2 (ja) 画像処理装置
US9983841B2 (en) Projection type image display apparatus, method, and storage medium in which changes in luminance between an image overlap area and an area outside the image overlap area are less visible
JP6172935B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP6128987B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
US10163035B2 (en) Edge detecting apparatus and edge detecting method
JP2017151908A (ja) 画像補正装置、画像補正方法及び画像補正用コンピュータプログラム
JP2012165146A (ja) 画像処理装置及び方法
JP5887764B2 (ja) 動き補償フレーム生成装置及び方法
US8036459B2 (en) Image processing apparatus
JP6704726B2 (ja) エッジ検出装置、エッジ検出方法、及び、プログラム
JP2014027373A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2011205477A (ja) 画像処理装置および方法,ならびに画像処理プログラム
JP6815345B2 (ja) 画像信号処理装置、画像処理回路
KR100690171B1 (ko) 이미지 보정 회로 및 이미지 보정 방법
JP4872508B2 (ja) 画像処理装置および画像処理方法、並びにプログラム
US20070086059A1 (en) Image sharpness device and method
JP5322824B2 (ja) 解像度変換装置および解像度変換方法
JP5928465B2 (ja) 劣化復元システム、劣化復元方法およびプログラム
JP6583008B2 (ja) 画像補正装置、画像補正方法及び画像補正用コンピュータプログラム
JP2011171991A (ja) 画像処理装置、電子機器、画像処理方法、および、画像処理プログラム
US9591220B2 (en) Selection apparatus, selection method, and storage medium
JP2019045990A (ja) 画像処理装置、画像処理方法、およびプログラム
JP6808770B2 (ja) データ処理装置、撮像装置、およびデータ処理方法
JP6150576B2 (ja) 画像処理装置及びその制御方法

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20181116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181205

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191218

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200513

R151 Written notification of patent or utility model registration

Ref document number: 6704726

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees