JP2017174311A - エッジ検出装置およびエッジ検出方法 - Google Patents
エッジ検出装置およびエッジ検出方法 Download PDFInfo
- Publication number
- JP2017174311A JP2017174311A JP2016062159A JP2016062159A JP2017174311A JP 2017174311 A JP2017174311 A JP 2017174311A JP 2016062159 A JP2016062159 A JP 2016062159A JP 2016062159 A JP2016062159 A JP 2016062159A JP 2017174311 A JP2017174311 A JP 2017174311A
- Authority
- JP
- Japan
- Prior art keywords
- distance
- value
- edge
- pixels
- pixel
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
Abstract
【課題】エッジをより高精度に検出することができる技術を提供する。【解決手段】本発明のエッジ検出装置は、入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断する判断手段と、前記判断手段によって判断された距離に基づく検出感度で、前記入力画像からエッジを検出する検出手段と、を有する。【選択図】図2
Description
本発明は、エッジ検出装置およびエッジ検出方法に関する。
近年、従来よりも解像度の高い高解像度画像を表示する画像表示装置の普及が進んでいる。高解像度画像のうち水平方向の画素数が約4000個の画像(例えば、水平方向4096画素×垂直方向2160画素の画像)は、一般的に「4k画像」と呼ばれている。また、画像表示装置に入力される入力画像データの解像度が画像表示装置の画面解像度と異なる場合、入力画像データの解像度を画像表示装置の画面解像度と同じ解像度に変換する必要がある。
画像データの解像度を変換する画像処理には、スケーラ処理等がある。スケーラ処理は、入力画像データの画像サイズを変更(拡大または縮小)することで入力画像データの解像度を変換する画像処理である。この画像処理を一般的な手法(例えばバイキュービック法)を用いて行うと、斜めエッジ(斜め方向のエッジ)の画像領域にジャギーが発生し、画質が著しく劣化する。
ジャギーの発生を抑制する技術は、例えば、特許文献1に開示されている。特許文献1に開示の技術では、画像から斜めエッジが検出され、斜めエッジの画像領域に対して、斜めエッジの傾斜角度(斜めエッジの方向)に応じた画素を用いて補間画素が生成される。また、特許文献1に開示の技術では、注目位置に近い位置と注目位置から離れた位置とのそれぞれについてエッジの存在を示す相関値が得られた場合に、注目位置に近い位置に対応する相関値を用いて注目位置におけるエッジが検出される。
しかしながら、注目位置に近い位置に対応する相関値を優先して使用すると、エッジの誤検出が生じる。例えば、自然画に含まれる水平線に近い浅い角度の斜め線は局所的に見ると水平線である。そのため、上記斜め線(自然画に含まれる水平線に近い浅い角度の斜め線)の画像領域においては、浅い角度の方向と水平方向とが、エッジの方向の候補として検出される。浅い角度の方向は注目位置から離れた位置に対応し、水平方向は注目位置に近い位置に対応するため、水平方向がエッジの方向として選択される。即ち、上記斜め線が水平線として誤検出される。その結果、上記斜め線の画像領域において、ジャギーの発生を抑制することができない。
また、注目位置に近い位置に対応する相関値を優先しない方法でも、エッジの誤検出が生じる。例えば、画像空間内に同じ絵柄が周期的に並べられた周期パターンを含む画像領域においては、エッジの方向の候補として複数の方向が検出されることがある。そして、注目位置に近い位置に対応する方向を選択すべきであるにも拘らず、注目位置から遠い位置に対応する方向が誤って選択されることがある(エッジの誤検出)。その結果、周期パターンを含む画像領域において、誤った方向に応じた画素を用いて誤った補間画素が生成され、画質が著しく劣化する。
本発明は、エッジをより高精度に検出することができる技術を提供することを目的とする。
本発明の第1の態様は、
入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断する判断手段と、
前記判断手段によって判断された距離に基づく検出感度で、前記入力画像からエッジを検出する検出手段と、
を有することを特徴とするエッジ検出装置である。
入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断する判断手段と、
前記判断手段によって判断された距離に基づく検出感度で、前記入力画像からエッジを検出する検出手段と、
を有することを特徴とするエッジ検出装置である。
本発明の第2の態様は、
入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断するステップと、
判断された距離に基づく検出感度で、前記入力画像からエッジを検出するステップと、を有することを特徴とするエッジ検出方法である。
入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断するステップと、
判断された距離に基づく検出感度で、前記入力画像からエッジを検出するステップと、を有することを特徴とするエッジ検出方法である。
本発明の第3の態様は、上述したエッジ検出方法の各ステップをコンピュータに実行させることを特徴とするプログラムである。
本発明によれば、エッジをより高精度に検出することができる。
<実施例1>
以下、本発明の実施例1について説明する。以下では、画像データの画像サイズを変更(拡大または縮小)することで画像データの解像度を変換するスケーラ処理を実行可能な画像処理装置に、本実施例に係るエッジ検出装置が設けられている例を説明する。なお、画像処理装置で実行される画像処理は、スケーラ処理に限られない。例えば、画像処理と
して、ぼかし処理、エッジ強調処理、輝度変換処理、色変換処理、等が行われてもよい。また、エッジ検出装置は、画像処理装置とは別体の装置であってもよい。
以下、本発明の実施例1について説明する。以下では、画像データの画像サイズを変更(拡大または縮小)することで画像データの解像度を変換するスケーラ処理を実行可能な画像処理装置に、本実施例に係るエッジ検出装置が設けられている例を説明する。なお、画像処理装置で実行される画像処理は、スケーラ処理に限られない。例えば、画像処理と
して、ぼかし処理、エッジ強調処理、輝度変換処理、色変換処理、等が行われてもよい。また、エッジ検出装置は、画像処理装置とは別体の装置であってもよい。
図1は、本実施例に係る画像処理装置の構成の一例を示すブロック図である。図1に示すように、本実施例に係る画像処理装置は、エッジ検出部101とスケーラ部102を有する。
エッジ検出部101は、入力画像(入力画像データ)IDからエッジを検出する。エッジの検出方法は特に限定されないが、本実施例では、エッジ検出部101は、注目位置(エッジの検出対象の位置である対象位置)からの複数の距離にそれぞれ対応する複数のエッジのいずれかを、注目位置におけるエッジとして検出する。具体的には、エッジ検出部101は、入力画像IDを用いたブロックマッチングを行う。そして、エッジ検出部101は、ブロックマッチングの結果に基づいて、注目位置からの複数の距離にそれぞれ対応する複数のエッジのいずれかを、注目位置におけるエッジとして検出する。エッジ検出部101は、エッジの検出結果として角度情報ANGLEを、スケーラ部102へ出力する。
角度情報ANGLEは、入力画像ID内に設定された注目位置におけるエッジの有無、注目位置に存在するエッジの方向、等を表す。入力画像ID内には、1つまたは複数の注目位置が設定される。本実施例では、エッジ検出部101は、角度情報ANGLEとして−16〜+16の値を出力する。具体的には、エッジ検出部101は、斜め方向のエッジが存在する位置における角度情報ANGLEとして、垂直方向に対するエッジの傾斜角度を表す値を出力する。そして、エッジ検出部101は、エッジが存在しない位置における角度情報ANGLE、及び、水平方向のエッジが存在する位置における角度情報ANGLEとしても、0(ゼロ)を出力する。なお、エッジの有無の表現方法、エッジの方向の表現方法、等は上記方法に限られない。例えば、エッジの方向は、水平方向に対するエッジの傾斜角度で表現されてもよい。
スケーラ部102は、角度情報ANGLEに基づいて入力画像IDの解像度を変換するスケーラ処理を行うことにより、画像(画像データ)ODを生成する。画像ODは、解像度が変換された後の入力画像IDである。そして、スケーラ部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)
YDATA=0.2×R値+0.7×G値+0.1×B値 ・・・(式1)
ブロックバッファ部202は、輝度変換部201から出力された輝度値YDATAを記憶し、記憶している輝度値YDATAをブロックマッチング部203へ出力する。本実施例では、ブロックバッファ部202は、ラインメモリを有しており、ラインメモリに輝度値YDATAを蓄積する。そして、ブロックバッファ部202は、水平方向X画素×垂直方向Yライン分の輝度値YDATAをラインメモリから読み出し、読み出した輝度値YDATAをブロックデータBLKDATAとしてブロックマッチング部203へ出力する。本実施例では、X=20であり、且つ、Y=4である場合の例を説明する。
本実施例では、ブロックデータBLKDATAに対応する画像領域が、検出エリアとして使用される。検出エリアは、注目位置におけるエッジの検出において入力画像IDが参照される画像領域である。本実施例では、検出エリアは、注目位置を基準とした画像領域である。具体的には、検出エリアは、注目位置を中心とする画像領域である。
なお、ブロックデータBLKDATAに対応する画像領域は、検出エリアと異なっていてもよい。注目位置、検出エリア、及び、ブロックデータBLKDATAに対応する画像領域の位置関係は特に限定されない。ブロックデータBLKDATAに対応する画像領域のサイズと、検出エリアのサイズとも特に限定されない。ブロックデータBLKDATAに対応する画像領域の形状と、検出エリアの形状とも特に限定されない。
ブロックマッチング部203は、検出エリアにおける入力画像IDを用いたブロックマッチングを行う。本実施例では、入力画像IDの輝度値YDATAを用いたブロックマッチングが行われる。なお、ブロックマッチングでは、輝度値YDATAとは異なる他の階調値(R値、G値、B値、Cb値、Cr値、等)が使用されてもよいし、複数種類の階調値が使用されてもよい。
本実施例では、図3に示すように、ブロックマッチング部203は、注目位置P0に対して、2つの参照ブロックA,Bを設定し、参照ブロックAにおける入力画像ID(輝度値YDATA)と、参照ブロックBにおける入力画像IDとを比較する。それにより、参照ブロックAにおける入力画像IDと、参照ブロックBにおける入力画像IDとの類似度または非類似度が、比較値として判断される。
具体的には、ブロックマッチング部203は、参照ブロックAにおける複数の画素のそれぞれについて、その画素の輝度値YDATAと、参照ブロックBの画素の輝度値YDATAとの差分の絶対値(差分絶対値)を算出する。参照ブロックAの画素PAについての差分絶対値を得る際には、参照ブロックBの複数の画素のうち、参照ブロックBとの位置関係が、参照ブロックAと画素PAの位置関係と等しい画素PBが使用される。そして、ブロックマッチング部203は、得られた複数の差分絶対値の総和であるSAD値(差分絶対値和)を、上記比較値として算出する。SAD値は、参照ブロックAにおける入力画像IDと、参照ブロックBにおける入力画像IDとの非類似度(類似度の逆数)に相当する。SAD値の逆数のような類似度が、比較値として算出されてもよい。
参照ブロックAの中心位置は、注目位置P0に対して、所定方向に垂直な2方向のうちの一方の側に位置し、参照ブロックBの中心位置は、注目位置P0に対して、所定方向に垂直な2方向のうちの他方の側に位置する。そして、参照ブロックペア(参照ブロックAと参照ブロックBの組み合わせ)の所定方向の中心位置は、注目位置P0の所定方向の位置と一致する。本実施例では、所定方向として水平方向が使用される。そのため、参照ブロックAの中心位置は、注目位置P0に対して上側に位置し、参照ブロックBの中心位置は、注目位置P0に対して下側に位置する。そして、参照ブロックペアの水平方向の中心位置は、注目位置P0の水平位置(水平方向の位置)と一致する。参照ブロックA,Bの
位置関係は、エッジ(エッジの方向)に対応する。
位置関係は、エッジ(エッジの方向)に対応する。
ブロックマッチング部203は、参照ブロックペアを複数設定し、複数の参照ブロックペアにそれぞれ対応する複数のSAD値を算出する。本実施例では、ブロックマッチング部203は、検出エリア内において参照ブロックA,Bの水平位置を変えることにより、参照ブロックの水平方向(所定方向)における位置関係が互いに異なる複数の参照ブロックペアを設定する。具体的には、ブロックマッチング部203は、ブロック距離nが−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)を算出し、対象位置に対して算出した複数(17個)のSAD値をSADオフセット部206へ出力する。
ブロック距離nの絶対値は、参照ブロックAの中心位置と、参照ブロックBの中心位置との間の水平方向(所定方向)の距離である。上述したように、参照ブロックペアの所定方向の中心位置は、注目位置P0の水平位置と一致する。そのため、|n|(ブロック距離nの絶対値)の1/2は、注目位置P0と参照ブロックAの中心位置との間の水平方向の距離であり、注目位置P0と参照ブロックBの中心位置との間の水平方向の距離である。また、上述したように、参照ブロックA,Bの位置関係は、エッジに対応する。従って、上記距離(注目位置P0から参照ブロックA(または参照ブロックB)の中心位置までの距離、ブロック距離n、等)はエッジに対応する。
本実施例では、参照ブロックAの中心位置が注目位置P0よりも右側に位置する場合に、ブロック距離nとして正の値が使用される。そして、参照ブロックAの中心位置が注目位置P0よりも左側に位置する場合に、ブロック距離nとして負の値が使用される。図3は、ブロック距離n=−4の場合の例を示す。ブロック距離nの絶対値の増加に伴い、対応するエッジの垂直方向に対する傾斜角度は増加する。
図3では、参照ブロックA,Bのそれぞれは、水平方向4画素×垂直方向3画素の画像領域である。そして、参照ブロックAと参照ブロックBとは、垂直方向に1画素分だけずれている。なお、参照ブロックA,Bのサイズ、垂直方向(所定方向に垂直な方向)における参照ブロックAと参照ブロックBの位置関係、参照ブロックA,Bの形状、等は特に限定されない。
極値点距離判断部204は、入力画像IDに基づいて、極大点距離と極小点距離との少なくとも一方を判断する(極値点距離判断処理)。そして、極値点距離判断部204は、極大点距離と極小点距離との少なくとも一方の判断結果である極値点距離INVALを、オフセット値決定部205へ出力する。極大点距離は、階調値が極大値となる画素である極大画素の間の距離であり、極小点距離は、階調値が極小値となる画素である極小画素の間の距離である。具体的には、極大点距離は、隣り合う2つの極大画素の間の距離であり、極小点距離は、隣り合う2つの極小画素の間の距離である。極大画素は「画素間での階調値の変化が増加から減少に転じる画素」とも言うことができ、極小画素は「画素間での階調値の変化が減少から増加に転じる画素」とも言うことができる。本実施例では、極値点距離判断部204は、判断エリアにおける入力画像IDに基づいて、極大点距離と極小点距離の少なくとも一方を判断する。そのような処理によれば、極大画素と極小画素のそれぞれとして、判断エリアにおける画素を使用することができる。その結果、極大点距離として、判断エリアにおける極大画素点の間の距離を得ることができ、極小点距離として、判断エリアにおける極小画素の間の距離を得ることができる。
判断エリアは、極値点距離判断処理において入力画像IDが参照される画像領域である
。本実施例では、判断エリアは、注目位置P0を基準とした画像領域である。例えば、判断エリアは、注目位置P0の周辺の画像領域である。具体的には、判断エリアは、注目位置P0の1つ上に存在するラインの画像領域であり、水平方向(所定方向)の中心位置が注目位置P0と一致する画像領域である。
。本実施例では、判断エリアは、注目位置P0を基準とした画像領域である。例えば、判断エリアは、注目位置P0の周辺の画像領域である。具体的には、判断エリアは、注目位置P0の1つ上に存在するラインの画像領域であり、水平方向(所定方向)の中心位置が注目位置P0と一致する画像領域である。
なお、注目位置P0と判断エリアの位置関係、判断エリアのサイズ、判断エリアの形状、等は特に限定されない。複数の注目位置の間で判断エリアが共通していてもよい。入力画像IDの全画像領域が、判断エリアとして使用されてもよい。画像処理装置は、検出エリアのサイズを設定する機能部と、判断エリアのサイズを設定する機能部とをさらに有していてもよい。その場合には、検出エリアのサイズに応じて判断エリアのサイズが設定されることが好ましい。例えば、検出エリアのサイズが大きいほど大きいサイズが、判断エリアのサイズとして設定されることが好ましい。ユーザによって指定された任意のサイズが検出エリアのサイズとして設定されてもよい。入力画像IDの種類(写真、イラスト、等)、画像ODを表示する表示部の使用環境(画像ODの視聴環境など)、等に応じて検出エリアのサイズが自動で設定されてもよい。ユーザによって指定された任意のサイズが判断エリアのサイズとして設定されてもよいし、入力画像IDの種類、表示部の使用環境、等に応じて判断エリアのサイズが自動で設定されてもよい。
本実施例では、極大画素は、輝度値YDATAが極大値となる画素であり、極小画素は、輝度値YDATAが極小値となる画素である。また、本実施例では、極大画素は、水平方向(所定方向)での階調値の変化において階調値が極大値となる画素であり、極小画素は、水平方向(所定方向)での階調値の変化において階調値が極小値となる画素である。
なお、極大画素と極小画素は上記画素に限られない。例えば、極大画素と極小画素は、輝度値YDATAとは異なる他の階調値(R値、G値、B値、Cb値、Cr値、等)を考慮した画素であってもよい。具体的には、極大画素は、G値が極大値となる画素であってもよく、極小画素は、G値が極小値となる画素であってもよい。極大画素は、面内方向(2次元方向)での階調値の変化において階調値が極大値となる画素であってもよく、極小画素は、面内方向での階調値の変化において階調値が極小値となる画素であってもよい。
ここで、極値点距離判断部204について詳しく説明する。図4は、極値点距離判断部204の構成の一例を示すブロック図である。図4に示すように、極値点距離判断部204は、階調変化判断部301、極値点検出部302、及び、極値点距離算出303を有する。
階調変化判断部301は、判断エリアにおける複数の画素のうち、水平方向において互いに隣接する画素(隣接画素)の間の輝度値YDATAの差に基づいて、隣接画素の間における階調値の変化を判断する。そして、階調変化判断部301は、階調変化(階調値の変化)の判断結果を示す階調変化値YGu(j)を、極値点検出部302へ出力する。階調変化値YGu(j)は、画素u(j)の輝度値yu(j)と、画素u(j)に対して左側に隣接する画素u(j−1)の輝度値yu(j−1)との差に基づく値である。画素u(j)は、判断エリア内の画素であり、注目位置P0の1つ上に存在するラインU上の画素である。本実施例では、注目位置P0に対して左側に存在する複数の画素u(j)のうち、注目位置P0に最も近い画素u(j)の値jとして0(ゼロ)が使用される。そして、左へ向かうにつれ値jが1ずつ減少し、右へ向かうにつれ値jが1ずつ増加する。本実施例では、12個の値j=−5〜+6にそれぞれ対応する12個の画素u(j)からなる画像領域が、判断エリアとして使用される。そして、12個の画素u(j)にそれぞれ対応する12個の階調変化値YGu(j)が得られる。
まず、階調変化判断部301は、以下の式2を用いて、画素u(j)の輝度値yu(j
)と、画素u(j)に対して左側に隣接する画素u(j−1)の輝度値yu(j−1)との差ygul(j)を算出する。
ygul(j)=yu(j)−yu(j−1) ・・・(式2)
)と、画素u(j)に対して左側に隣接する画素u(j−1)の輝度値yu(j−1)との差ygul(j)を算出する。
ygul(j)=yu(j)−yu(j−1) ・・・(式2)
次に、階調変化判断部301は、差ygul(j)に基づいて、画素u(j−1)から画素u(j)へかけての階調値の変化を判断する。具体的には、階調変化判断部301は、差ygul(j)に基づいて、階調値の変化が「UP」であるか「DOWN」であるかを判断する。「UP」は、画素u(j−1)から画素u(j)へかけて輝度値YDATA(階調値)が増加していることを意味する。「DOWN」は、画素u(j−1)から画素u(j)へかけて輝度値YDATAが減少していることを意味する。
本実施例では、差ygul(j)が正の値である場合に、階調変化判断部301は、階調値の変化が「UP」であると判断し、階調変化値YGu(j)=0を設定する。差ygul(j)が負の値である場合に、階調変化判断部301は、階調値の変化が「DOWN」であると判断し、階調変化値YGu(j)=1を設定する。差ygul(j)が0(ゼロ)である場合に、階調変化判断部301は、画素u(j−1)に対する判断結果と同じ判断結果を、画素u(j)に対する判断結果として採用し、階調変化値YGu(j)として階調変化値YGu(j−1)と同じ値を設定する。
階調変化判断部301は、上述した12個の画素u(j)のそれぞれについて、上述した処理を行う。なお、階調変化判断部301の処理は上記処理に限られない。例えば、差ygul(j)が階調変化値YGu(j)として使用されてもよい。差ygul(j)が増加閾値よりも大きい場合に、階調値の変化が「UP」であると判断され、差ygul(j)が減少閾値よりも小さい場合に、階調値の変化が「UP」であると判断されてもよい。そして、それら以外の場合に、画素u(j−1)に対する判断結果と同じ判断結果が、画素u(j)に対する判断結果として採用されてもよい。増加閾値としては0(ゼロ)以上の値を使用することができる。減少閾値としては0(ゼロ)以下の値を使用することができる。増加閾値=減少閾値=0(ゼロ)であってもよい。
図5,6を用いて、階調変化判断部301の処理の具体例を説明する。図5は、周期パターンを含まない画像領域内に注目位置P0が設定された場合の例を示す。図6は、周期パターンを含む画像領域内に注目位置P0が設定された場合の例を示す。周期パターンは、画像空間内に同じ絵柄が周期的に並べられたパターンである。周期パターンは、「画像空間内において画素値が周期的に変化するパターン」とも言うことができる。
輝度値yu(j)(輝度値YDATA)のビット数は特に限定されないが、図5,6は、輝度値yu(j)が8ビットの値(0〜255)である場合の例を示す。そして、図5,6では、輝度値yu(j)の増加に伴い色が白色から黒色へ変化するように、輝度値yu(j)が色で表現されている。図5,6には、輝度値yu(j)を表現する色と、輝度値yu(j)の具体的な値との対応関係も示されている。図5,6において、右上がり矢印が対応付けられた画素u(j)は、階調値の変化が「UP」であると判断された画素であり、右下がり矢印が対応付けられた画素u(j)は、階調値の変化が「DOWN」であると判断された画素である。
図5を用いて、判断結果「DOWN」が得られる例を説明する。図5の画素u(−2)に関する処理ついて説明する。画素u(−2)の輝度値yu(−2)は170であり、画素u(−3)の輝度値yu(−3)は212である。そのため、差ygul(−2)=170−212=−42が算出され、階調変化値YGu(−2)=1(DOWN)が設定さ
れる。図5の画素u(−1)に関する処理ついて説明する。画素u(−1)の輝度値yu(−1)は、輝度値yu(−2)と同じ170である。そのため、差ygul(−1)=170−170=0が算出され、階調変化値YGu(−1)=階調変化値YGu(−2)=1(DOWN)が設定される。図6を用いて、判断結果「UP」が得られる例を説明する。図6の画素u(+1)に関する処理ついて説明する。画素u(+1)の輝度値yu(+1)は42であり、画素u(0)の輝度値yu(0)は0である。そのため、差ygul(+1)=42−0=42が算出され、階調変化値YGu(+1)=0(UP)が設定される。
れる。図5の画素u(−1)に関する処理ついて説明する。画素u(−1)の輝度値yu(−1)は、輝度値yu(−2)と同じ170である。そのため、差ygul(−1)=170−170=0が算出され、階調変化値YGu(−1)=階調変化値YGu(−2)=1(DOWN)が設定される。図6を用いて、判断結果「UP」が得られる例を説明する。図6の画素u(+1)に関する処理ついて説明する。画素u(+1)の輝度値yu(+1)は42であり、画素u(0)の輝度値yu(0)は0である。そのため、差ygul(+1)=42−0=42が算出され、階調変化値YGu(+1)=0(UP)が設定される。
極値点検出部302は、階調変化判断部301によって得られた階調変化値YGu(j)に基づいて、判断エリアにおける複数の画素から極大画素と極小画素を検出する。そして、極値点検出部302は、極大画素と極小画素の検出結果を示す極値判断値Mu(j)を、極値点距離算出303へ出力する。本実施例では、以下の条件1が満たされる場合に、極値点検出部302は、画素u(j)が極大画素であると判断し、極値判断値Mu(j)=1を設定する。以下の条件2が満たされる場合に、極値点検出部302は、画素u(j)が極小画素であると判断し、極値判断値Mu(j)=2を設定する。そして、以下の条件1,2が満たされない場合に、極値点検出部302は、画素u(j)が極大画素でも極小画素でもないと判断し、極値判断値Mu(j)=0を設定する。
条件1:階調変化値YGu(j)=1(DOWN)、且つ、階調変化値YGu(j−1)=0(UP)
条件2:階調変化値YGu(j)=0(UP)、且つ、階調変化値YGu(j−1)=1(DOWN)
条件1:階調変化値YGu(j)=1(DOWN)、且つ、階調変化値YGu(j−1)=0(UP)
条件2:階調変化値YGu(j)=0(UP)、且つ、階調変化値YGu(j−1)=1(DOWN)
図6を用いて、極値点検出部302の処理の具体例を説明する。図6の画素u(−3)に関する処理ついて説明する。画素u(−3)の階調変化値YGu(−3)は1(DOWN)であり、画素u(−4)の階調変化値YGu(−4)は0(UP)である。即ち、画素u(−3)については条件1が満たされる。そのため、画素u(−3)が極大画素であると判断され、極値判断値Mu(−3)=1が設定される。図6の画素u(+1)に関する処理ついて説明する。画素u(+1)の階調変化値YGu(+1)は0(UP)であり、画素u(0)の階調変化値YGu(0)は1(DOWN)である。即ち、画素u(+1)については条件2が満たされる。そのため、画素u(+1)が極大画素であると判断され、極値判断値Mu(+1)=2が設定される。図6の画素u(−1)に関する処理ついて説明する。画素u(−1)の階調変化値YGu(−1)は1(DOWN)であり、画素u(−2)の階調変化値YGu(−2)も1(DOWN)である。即ち、画素u(−1)については条件1も条件2も満たされていない。そのため、画素u(−1)が極大画素でも極小画素でもないと判断され、極値判断値Mu(−1)=0が設定される。なお、図5の例では、全ての画素u(j)について階調変化値YGu(j)=1(DOWN)であるため、極大画素も極小画素も検出されない。
なお、極大画素と極小画素の検出方法は上記方法に限られない。例えば、画像空間内における階調値の変化を検出する他の方法を用いて、極大画素と極小画素が検出されてもよい。
極値点距離算出303は、極値点検出部302によって得られた極値判断値Mu(j)に基づいて、極大点距離と極小点距離との少なくとも一方を算出する。そして、極値点距離算出303は、極大点距離と極小点距離の算出結果に基づいて極値点距離INVALを決定し、極値点距離INVALをオフセット値決定部205へ出力する。
本実施例では、水平方向(所定方向)での輝度値YDATAの変化に基づいて極大画素と極小画素検出される。そのため、極値点距離算出303は、水平方向(所定方向)において隣り合う2つの極大画素の間の距離を、極大点距離として算出し、水平方向(所定方向)において隣り合う2つの極小画素の間の距離を、極小点距離として算出する。具体的には、極値点距離算出303は、水平方向(所定方向)において注目位置P0を挟み、且つ、水平方向(所定方向)において隣り合う2つの極大画素の間の距離を、極大点距離として算出する。そして、極値点距離算出303は、水平方向(所定方向)において注目位置P0を挟み、且つ、水平方向(所定方向)において隣り合う2つの極小画素の間の距離を、極小点距離として算出する。
極大点距離と極小点距離の一方のみが算出された場合には、極値点距離算出303は、算出された距離を極値点距離INVALとして決定する。極大点距離と極小点距離の両方が算出された場合には、極値点距離算出303は、極大点距離と極小点距離を代表する代表距離を極値点距離INVALとして決定する。本実施例では、代表距離として、極大点距離と極小点距離のうちの小さい方が使用される。極大点距離も極小点距離も算出されなかった場合には、極値点距離算出303は、所定の値を極値点距離INVALとして決定する。所定の値は、エッジの検出感度が部分的に変更されない値であればよい。本実施例では、所定の値として、ブロック距離nの最大値(+16)を2倍することで得られる値(32)が使用される。
図5,6を用いて、極値点距離算出303の処理の具体例を説明する。図5の例では、極大画素も極小画素も検出されないため、極値点距離INVAL=32が得られる。図6の例では、隣り合う画素u(−3)と画素u(+5)が極大画素である。そして、水平方向において、画素u(−3)と画素u(+5)は注目位置P0を挟む。そのため、極大点距離=8が得られる。図6の例では、極小画素は画素u(+1)のみであるため、極小点距離は得られない。そのため、図6の例では、極値点距離INVAL=極大点距離=8が得られる。
なお、極値点距離INVALの判断方法は上記方法に限られない。例えば、極大点距離が極値点距離INVALとして常に使用されてもよいし、極小点距離が極値点距離INVALとして常に使用されてもよい。極大点距離が極値点距離INVALとして常に使用される場合には、極小画素は検出されなくてもよい。極小点距離が極値点距離INVALとして常に使用される場合には、極大画素は検出されなくてもよい。代表距離は、極大点距離と極小点距離のうちの大きい方、極大点距離と極小点距離の平均距離、極大点距離と極小点距離の中間距離、等であってもよい。
隣り合う2つの極大画素の複数の組み合わせのそれぞれについて、対応する2つの極大画素の間の距離が算出されてもよい。そして、算出された複数の距離を代表する距離(最小距離、最大距離、平均距離、最頻距離、中間距離、等)が、極大点距離として使用されてもよい。平均距離、最頻距離、中間距離、等が使用されれば、極大点距離や極小点距離に対するノイズの影響を低減することができる。同様に、隣り合う2つの極小画素の複数の組み合わせのそれぞれについて、対応する2つの極小画素の間の距離が算出されてもよい。そして、算出された複数の距離を代表する距離が、極小点距離として使用されてもよい。極大点距離と極小点距離の両方が得られた場合には、極大点距離と極小点距離の両方を示す情報が極値点距離INVALの代わりに出力されてもよい。
エッジ検出部101の説明に戻る。オフセット値決定部205は、極値点距離判断部204によって判断された距離(極大点距離と極小点距離の少なくとも一方)に基づいて、エッジの検出感度を設定する。本実施例では、オフセット値決定部205は、極値点距離算出303によって得られた極値点距離INVALに応じて、エッジの検出感度を設定す
る。本実施例では、オフセット値決定部205は、検出感度として、ブロックマッチング部203によって得られたSAD値(ブロックマッチングの結果)を補正する補正パラメータであるオフセット値OFST(n)を設定(決定)する。具体的には、オフセット値決定部205は、ブロックマッチング部203によって得られた17個のSAD値SAD_ARRAY(n)をそれぞれ補正する17個のオフセット値OFST(n)を決定する。そして、オフセット値決定部205は、決定したオフセット値OFST(n)をSADオフセット部206へ出力する。なお、検出感度として、上記補正パラメータとは異なる値が決定されてもよい。例えば、「高」、「中」、「低」などが検出感度として決定されてもよい。
る。本実施例では、オフセット値決定部205は、検出感度として、ブロックマッチング部203によって得られたSAD値(ブロックマッチングの結果)を補正する補正パラメータであるオフセット値OFST(n)を設定(決定)する。具体的には、オフセット値決定部205は、ブロックマッチング部203によって得られた17個のSAD値SAD_ARRAY(n)をそれぞれ補正する17個のオフセット値OFST(n)を決定する。そして、オフセット値決定部205は、決定したオフセット値OFST(n)をSADオフセット部206へ出力する。なお、検出感度として、上記補正パラメータとは異なる値が決定されてもよい。例えば、「高」、「中」、「低」などが検出感度として決定されてもよい。
本実施例では、画像処理装置が不図示の記憶部を有しており、当該記憶部に、極値点距離INVALの取り得る複数の距離にそれぞれ対応する複数のオフセットテーブルOFS_TBLが予め記録されている。オフセットテーブルOFS_TBLは、ブロック距離nとオフセット値OFST(n)の対応関係を示すテーブルである。なお、オフセットテーブルOFS_TBLの代わりに、ブロック距離nとオフセット値OFST(n)の対応関係を示す関数などが使用されてもよい。
オフセット値決定部205は、極値点距離算出303によって得られた極値点距離INVALに対応するオフセットテーブルOFS_TBLを、上述した記憶部から読み出す(オフセットテーブルOFS_TBLの選択)。そして、オフセット値決定部205は、読み出したオフセットテーブルOFS_TBLに従って、オフセット値OFST(n)を決定する。
詳細は後述するが、本実施例では、オフセット値OFST(n)が大きいほど大きい低減度合いで、ブロック距離nに対応するエッジの検出感度が低減される。即ち、オフセット値OFST(n)が大きいほど、ブロック距離nに対応するエッジの検出感度は低い。そのため、オフセット値OFSTを設定する処理は、「検出感度を設定する処理」と言うことができる。
ブロック距離nとエッジの検出感度との対応関係は特に限定されないが、本実施例では、以下の条件3が満たされるように、オフセット値OFST(n)が設定(決定)される。条件3において、「第1距離」は「極値点距離判断部204によって判断された距離に基づく距離」である。本実施例では、「第1距離」は極値点距離INVALである。なお、「第1距離」は極値点距離INVALと異なっていてもよい。第1範囲は、「|n|が極値点距離INVALの1/2以下のブロック距離nの範囲」とも言うこともできる。
条件3:注目位置P0からの距離(|n|の1/2)が第1距離以下の第1範囲に対応するエッジの検出感度は、注目位置P0からの距離が第1距離よりも長い第2範囲に対応するエッジの検出感度よりも高い。
条件3:注目位置P0からの距離(|n|の1/2)が第1距離以下の第1範囲に対応するエッジの検出感度は、注目位置P0からの距離が第1距離よりも長い第2範囲に対応するエッジの検出感度よりも高い。
具体的には、第2範囲は、注目位置P0からの距離が第1距離よりも長く且つ第2距離よりも短い第3範囲と、注目位置P0からの距離が第2距離以上の第4範囲と、を含む。そして、以下の条件4〜6が満たされるように、オフセット値OFST(n)が設定(決定)される。
条件4:第1範囲に対応するエッジの検出感度として、第1検出感度が使用される。
条件5:第3範囲に対応するエッジの検出感度として、注目位置P0からの距離の増加に伴い第1検出感度から第2検出感度へ低下する検出感度が使用される。
条件6:第4範囲に対応するエッジの検出感度として、第2検出感度が使用される。
条件4:第1範囲に対応するエッジの検出感度として、第1検出感度が使用される。
条件5:第3範囲に対応するエッジの検出感度として、注目位置P0からの距離の増加に伴い第1検出感度から第2検出感度へ低下する検出感度が使用される。
条件6:第4範囲に対応するエッジの検出感度として、第2検出感度が使用される。
条件4〜6を満たすオフセット値OFST(n)の算出式は、例えば、以下の式3である。式3において、「ATH」は第2範囲を第3範囲と第4範囲に分ける閾値である。「|n|≦INVAL/2」は第1範囲に対応し、「OFST(n)=0」は第1検出感度に対応する。「|n|≧ATH」は第4範囲に対応し、「OFST(n)=OFST_MAX」は第2検出感度に対応する。「INVAL/2<|n|<ATH」は第3範囲に対応し、「OFST(n)=m」は|n|の増加に伴い第1検出感度から第2検出感度へ低下する検出感度に対応する。
|n|<INVAL/2の場合:OFST(n)=0
INVAL/2<|n|<ATHの場合:OFST(n)=m
|n|≧ATHの場合:OFST_MAX
・・・(式3)
|n|<INVAL/2の場合:OFST(n)=0
INVAL/2<|n|<ATHの場合:OFST(n)=m
|n|≧ATHの場合:OFST_MAX
・・・(式3)
図7は、極値点距離INVAL=8に対応するオフセットテーブルOFS_TBLの一例を示す図である。図7の例では、閾値ATHが8(=INVAL)である。極値点距離INVALが8であるため、−4≦n≦+4の範囲が第1範囲であり、−4≦n≦+4の範囲においてオフセット値OFST(n)=0が設定されている。閾値ATHが8であるため、n≧+8の範囲とn≦−8の範囲とが第4範囲であり、n≧+8の範囲とn≦−8の範囲とにおいてオフセット値OFST(n)=OFST_MAX=50が設定されている。そして、+4<n<+8の範囲が第3範囲であり、+4<n<+8の範囲において、ブロック距離nの増加に伴い0から50へ線形に増加するオフセット値OFST(n)が設定されている。−8<n<−4の範囲も第3範囲であり、−8<n<−4の範囲において、ブロック距離nの増加に伴い50から0へ線形に低下するオフセット値OFST(n)が設定されている。
なお、閾値ATH、第1検出感度に対応するオフセット値OFST(n)、及び、第2検出感度に対応するオフセット値OFST(n)は、上記値に限られない。オフセット値決定部205の処理は上記処理に限られない。例えば、ブロック距離nとオフセット値OFST(n)の対応関係を示す複数の情報(テーブルや関数)の代わりに、式3のような関数が予め定められていてもよい。その場合には、ユーザによって指定された任意の値が閾値ATHとして設定されてもよいし、入力画像IDの種類、表示部の使用環境、等に応じて閾値ATHが自動で設定されてもよい。同様に、ユーザによって指定された任意の値がオフセット値OFST_MAXとして設定されてもよいし、入力画像IDの種類、表示部の使用環境、等に応じてオフセット値OFST_MAXが自動で設定されてもよい。第3範囲において、オフセット値OFST(n)は、|n|の増加に伴い非線形に増加してもよい。条件3が満たされ、且つ、条件4が満たされないように、オフセット値OFST(n)が決定されてもよい。
SADオフセット部206は、オフセット値決定部205によって得られたオフセット値OFST(n)を用いて、ブロックマッチング部203によって得られたSAD値(ブロックマッチングの結果)を補正する。本実施例では、SADオフセット部206は、ブロックマッチング部203により算出された17個のSAD値SAD_ARRAY(n)を、オフセット値決定部205により決定された17個のオフセット値OFST(n)を用いて補正する。具体的には、以下の式4に示すように、SADオフセット部206は、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)
定部207へ出力する。
SAD_ARRAY_OFST(n)=SAD_ARRAY(n)
+OFST(n)
・・・(式4)
なお、本実施例では、SAD値SAD_ARRAY(n)を補正する補正パラメータとして、SAD値SAD_ARRAY(n)に加算するオフセット値OFST(n)が決定される例を説明したが、これに限らない。例えば、SAD値SAD_ARRAY(n)に乗算するゲイン値が、SAD値SAD_ARRAY(n)を補正する補正パラメータとして決定されてもよい。
マッチング角度決定部207は、SADオフセット部206から出力された17個のSAD_ARRAY_OFST(n)(ブロックマッチングの補正後の結果)に基づいて、入力画像IDからエッジを検出する。本実施例では、マッチング角度決定部207は、SADオフセット部206から出力された17個のSAD_ARRAY_OFST(n)の最小値SADminに応じて、角度情報ANGLEを決定する。そして、マッチング角度決定部207は、決定した角度情報ANGLEをスケーラ部102に出力する。具体的には、マッチング角度決定部207は、最小値SADminであるSAD値SAD_ARRAY_OFST(n)のnを、角度情報ANGLEとして決定する。例えば、SAD値SAD_ARRAY_OFST(n)の分布が図8に示す分布であった場合には、角度情報ANGLE=−4が得られる。
このように、本実施例では、極値点距離判断部204によって判断された距離(極大点距離と極小点距離の少なくとも一方)に基づいて補正された後のSAD値SAD_ARRAY_OFST(n)を用いて、入力画像IDからエッジが検出される。そのため、SAD値SAD_ARRAY_OFST(n)に基づいて角度情報ANGLEを決定する処理は、「極値点距離判断部204によって判断された距離に基づく検出感度で入力画像IDからエッジを検出する処理」と言うことができる。SAD値SAD_ARRAY_OFST(n)に基づいて角度情報ANGLEを決定する処理は、「オフセット値決定部205によって設定(決定)された検出感度で入力画像IDからエッジを検出する処理」ということもできる。
なお、極値点距離判断部204によって判断された距離に基づく検出感度でエッジが検出されれば、エッジの検出方法は特に限定されない。例えば、検出感度を設定する処理、SAD値を補正する処理、等が省略されてもよい。具体的には、画像処理装置が、オフセット値決定部205、SADオフセット部206、等を有していなくてもよい。そして、SADオフセット部206が、極値点距離INVALと補正前のSAD値SAD_ARRAY(n)とに基づいてエッジを検出してもよい。
次に、本実施例により得られる効果の具体例について説明する。ここで、複数のSAD値SAD_ARRAY(補正前のSAD値)の最小値が上記最小値SADminとして使用される場合を考える。周期パターンを含む画像領域内に注目位置P0が設定された場合には、最小値SADminとして複数のSAD値SAD_ARRAY(n)が検出されることがある。最小値SADminとして複数のSAD値SAD_ARRAY(n)が検出された場合には、最小値SADminである複数のSAD値SAD_ARRAY(n)のどれが正確なエッジに対応するのかを判断することができない。そのため、エッジが誤検出されることがある。
閾値以下の複数のSAD値SAD_ARRAY(n)のうち、注目位置P0に近い位置(|n|が小さいブロック距離n)に対応するSAD値SAD_ARRAY(n)を優先して選択する方法もある。しかしながら、非常に浅い斜め線の画像領域内に注目位置P0が設定された場合には、当該斜め線に対応するSAD値SAD_ARRAY(n)だけでなく、他のSAD値SAD_ARRAY(n)が小さい値となることがある。例えば、水平方向のエッジ(|n|=0)に対応するSAD値SAD_ARRAY(0)が小さい値となることがある。そのため、注目位置P0に近い位置を優先する上記方法では、非常に浅い斜め線に対応するエッジではなく、水平方向のエッジが誤検出されることがある。
そこで、本実施例では、極大点距離と極小点距離との少なくとも一方を用いて、正確なエッジに対応するSAD値のみが最小値SADminとなるように、検出感度を調整する。
図9(A)は、画像空間内に右上斜め線が周期的に並べられた周期パターンの一例を示す図である。図9(B)は、図9(A)の周期パターンの一部を示す図である。図9(C)は、図9(B)の周期パターンの階調分布(輝度値YDATAの分布)の一例を示す図である。図9(B),9(C)のバツ印は注目位置P0を示す。図9(B)には、注目位置P0に対して上側に隣接する2ラインと、注目位置P0に対して下側に隣接する2ラインとが示されている。図9(C)には、注目位置P0の上側における階調分布と、注目位置P0の下側における階調分布とが示されている。ここでは、極値点距離INVAL=18が得られたとする。
図9(C)の四角は、SAD値SAD_ARRAY(n)が最小となる参照ブロックペアを示す。図9(C)から、SAD値SAD_ARRAY(n)が最小となる参照ブロックペアが2つ存在することがわかる。2つの参照ブロックペアの一方は、|n|が極値点距離INVALの1/2以下のブロック距離nに対応し、図9(B)の黒矢印方向のエッジに対応する。2つの参照ブロックペアの他方は、|n|が極値点距離INVALの1/2よりも大きいブロック距離nに対応し、図9(B)の白矢印方向のエッジに対応する。黒矢印方向は、右上斜め線の方向に対応する正確な方向であるが、白矢印方向は、右上斜め線の方向に対応しない正確な方向である。そのため、複数のSAD値SAD_ARRAYの最小値が上記最小値SADminとして使用される上記方法では、白矢印方向のエッジが誤検出される。
そこで、本実施例では、|n|が極値点距離INVALの1/2よりも大きいブロック距離nに対応するエッジの検出感度を低減する。それにより、白矢印方向のエッジをより確実に検出することができる。
図10(A)は、図9(B)の画像(周期パターン)から得られたSAD値SAD_ARRAY(n)の分布を示す図である。図10(A)では、ブロック距離n=−12に対応するSAD値SAD_ARRAY(−12)と、ブロック距離n=+4に対応するSAD値SAD_ARRAY(+4)とが最小となっている。SAD値SAD_ARRAY(−12)(ブロック距離n=−12)は図9(B)の白矢印方向のエッジに対応し、SAD値SAD_ARRAY(+4)(ブロック距離n=+4)は図9(B)の黒矢印方向のエッジに対応する。
図10(B)は、極値点距離INVAL=18から得られたオフセット値OFST(n)の分布を示す図である。図10(B)では、ブロック距離n=−12に対応するオフセット値OFST(−12)は、ブロック距離n=+4に対応するオフセット値OFST(+4)よりも大きい。そのため、ブロック距離n=−12に対応するエッジの検出感度が、ブロック距離n=+4に対応するエッジの検出感度よりも低い検出感度に低減される。
図10(C)は、図10(B)のオフセット値OFST(n)を用いて図10(A)のSAD値SAD_ARRAY(n)を補正して得られたSAD値SAD_ARRAY_OFST(n)の分布を示す図である。図10(C)では、ブロック距離n=+4に対応するSAD値SAD_ARRAY_OFST(+4)のみが最小となっている。そのため、複数のSAD値SAD_ARRAY_OFST(n)の最小値を上記最小値SADminとして使用することで、図9(B)の白矢印方向のエッジが誤検出されることを抑制することができ、図9(B)の黒矢印方向のエッジを検出することができる。
図11(A)は、非常に浅い斜め線の画像の一例を示す図である。図11(B)は、図11(A)の画像から得られたSAD値SAD_ARRAY(n)の分布を示す図である。図11(B)では、ブロック距離n=−12に対応するSAD値SAD_ARRAY(−12)のみが最小となっている。ブロック距離n=−12は、非常に浅い斜め線(正確なエッジ)に対応する。しかしながら、ブロック距離n=0に対応するSAD値SAD_ARRAY(0)も非常に小さい。ブロック距離n=0は、水平方向のエッジに対応する。そのため、注目位置P0に近い位置を優先する上記方法では、非常に浅い斜め線に対応するエッジではなく、水平方向のエッジが誤検出される。
非常に浅い斜め線の画像では、極大画素や極小画素は検出されず、極値点距離INVALとして大きい値が設定される。そのため、図11(C)に示すように、全てのブロック距離nについてオフセット値OFST(n)=0が設定され、エッジの検出感度が均一となる。その結果、SAD値SAD_ARRAY_OFST(n)の分布として、図11(A)の分布と同じ分布が得られる。そして、本実施例では、複数のSAD値SAD_ARRAY_OFST(n)の最小値SADminに対応するエッジが検出されるため、水平のエッジが誤検出されることを抑制することができ、非常に浅い斜め線に対応するエッジを検出することができる。
このように、本実施例によれば、極大点距離と極小点距離との少なくとも一方を用いて検出感度を調整することにより、様々な場合において、エッジの誤検出を抑制することができ、エッジを高精度に検出することができる。
次に、スケーラ部102について詳しく説明する。図12は、スケーラ部102で行われるスケーラ処理の一例を示す図である。スケーラ処理では、入力画像IDに画素が存在しない位置に対して、補間画素(SC補間画素)が生成される。図12において、「P0」は注目位置を示し、「P1」はSC補間位置(SC補間画素の生成位置)を示す。注目位置P0は特に限定されないが、本実施例では、図12に示すように、入力画像IDの2行2列の4画素の中心位置が注目位置として使用される。注目位置P0は、SC補間位置P1に最も近い注目位置である。SC補間位置P1は、スケーラ処理の拡大率や縮小率に依存する。図12において、「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に基づいて画素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×iy_s)
U2(x)=U1(x)+1
D1(x)=U1(x)−ANGLE
D2(x)=D1(x)+1
・・・(式5)
U1(x)=INT(ix_i+ix_s+ANGLE×iy_s)
U2(x)=U1(x)+1
D1(x)=U1(x)−ANGLE
D2(x)=D1(x)+1
・・・(式5)
図12の「k」は、SC補間位置P1の画素値を算出する際に用いるパラメータであり、画素U1,U2,D1,D2の画素値の重みを決定するためのパラメータである。図12に示すように、パラメータ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×iy_s)
−INT(ix_s+ANGLE×iy_s)
・・・(式6)
k=(ix_s+ANGLE×iy_s)
−INT(ix_s+ANGLE×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)
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が算出される。
以上述べたように、本実施例によれば、極大点距離と極小点距離との少なくとも一方が判断され、極大点距離と極小点距離との少なくとも一方に基づく検出感度で、入力画像からエッジが検出される。それにより、エッジをより高精度に検出することができる。例えば、自然画に含まれる水平線に近い浅い角度の斜め線、周期パターンに含まれる斜め線、等を高精度に検出することができる。その結果、エッジの検出結果に基づく種々の処理をより高精度に行うことができる。例えば、スケーラ処理によるジャギーの発生をより高精度に抑制することができる。
なお、ブロックマッチング部203と極値点距離判断部204で使用される所定方向は水平方向に限られない。例えば、斜め方向が所定方向として使用されてもよいし、垂直方向が所定方法として使用されてもよい。検出エリアとしては、所定方向に長い画像領域が使用されることが好ましい。例えば、所定方向が水平方向である場合には、図3に示すように、水平方向に長い検出エリアが使用されることが好ましい。また、所定方向として複数の方向(例えば、水平方向と垂直方向)が考慮されてもよい。そして、複数の方向にそれぞれ対応する複数の処理が行われ、複数の処理の結果に基づいてエッジが検出されてもよい。
<実施例2>
以下、本発明の実施例2について説明する。実施例1では、ブロック距離nとオフセット値OFST(n)の対応関係が極値点距離INVALにのみ依存する例を説明した。本実施例では、ブロック距離nとオフセット値OFST(n)の対応関係が、入力画像IDの他の特徴(極値点距離INVALとは異なる特徴)にも依存する例を説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明を省略する。図13は、本実施例に係るエッジ検出部の構成の一例を示すブロック図である。図13に示すように、本実施例に係るエッジ検出部は、実施例1に係る極値点距離判断部204の代わりに極値点距離判断部401を有し、実施例1に係るオフセット値決定部205の代わりにオフセット値決定部402を有する。
以下、本発明の実施例2について説明する。実施例1では、ブロック距離nとオフセット値OFST(n)の対応関係が極値点距離INVALにのみ依存する例を説明した。本実施例では、ブロック距離nとオフセット値OFST(n)の対応関係が、入力画像IDの他の特徴(極値点距離INVALとは異なる特徴)にも依存する例を説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明を省略する。図13は、本実施例に係るエッジ検出部の構成の一例を示すブロック図である。図13に示すように、本実施例に係るエッジ検出部は、実施例1に係る極値点距離判断部204の代わりに極値点距離判断部401を有し、実施例1に係るオフセット値決定部205の代わりにオフセット値決定部402を有する。
極値点距離判断部401は、実施例1に係る極値点距離判断部204と同様の処理を行う。さらに、極値点距離判断部401は、入力画像IDの複雑さを判断し、複雑さの判断結果をオフセット値決定部402へ出力する。本実施例では、判断エリアにおける入力画像IDの複雑さが判断される。なお、複雑さの判断対象の画像領域が判断エリアに限られない。検出エリアにおける入力画像IDの複雑さが判断されてもよいし、入力画像ID全体の複雑さが判断されてもよい。
図14は、極値点距離判断部401の構成の一例を示すブロック図である。図14に示すように、極値点距離判断部401は、実施例1に係る極値点距離算出303の代わりに
、極値点距離算出403を有する。極値点距離算出403は、実施例1に係る極値点距離算出303と同様の処理を行う。さらに、極値点距離算出403は、入力画像IDの複雑さを判断し、複雑さの判断結果をオフセット値決定部402へ出力する。
、極値点距離算出403を有する。極値点距離算出403は、実施例1に係る極値点距離算出303と同様の処理を行う。さらに、極値点距離算出403は、入力画像IDの複雑さを判断し、複雑さの判断結果をオフセット値決定部402へ出力する。
本実施例では、極値点距離算出403は、極大画素の数と極小画素の数との少なくとも一方に基づく数の、入力画像IDの画素の数に対する割合を、入力画像IDの複雑さとして判断する。具体的には、極値点距離算出403は、極大画素の数と極小画素の数との合計の、入力画像IDの画素の数に対する割合を、入力画像IDの複雑さとして判断する。上述したように、本実施例では、極値点距離算出403は、判断エリアにおける入力画像の複雑さを判断する。そのため、本実施例では、判断エリアにおける極大画素の数と、判断エリアにおける極小画素の数との合計の、判断エリアにおける入力画像IDの画素の数に対する割合が、判断エリアにおける入力画像IDの複雑さとして判断される。具体的には、極値点距離算出403は、以下の式8を用いて、複雑さ(割合)INF_RATEを算出する。式8において、「INF_NUM」は、判断エリアにおける極大画素の数と、判断エリアにおける極小画素の数との合計である。「BLK_NUM」は、判断エリアにおける総画素数である。
INF_RATE=INF_NUM/BLK_NUM ・・・(式8)
INF_RATE=INF_NUM/BLK_NUM ・・・(式8)
図5の例では、判断エリアの総画素数BLK_NUM=12であり、極大画素の数=極小画素の数=0であるため、複雑さINF_RATE=0/12=0が算出される。図6の例では、極大画素の数=2であり、極小画素の数=1であるため、複雑さINF_RATE=3/12=0.25が算出される。
上記方法によれば、極大画素や極小画素が多いほど大きい値が、複雑さINF_RATEとして算出される。例えば、周期パターン(特に、絵柄の繰り返し周期が短い(絵柄の繰り返し周波数が高い)高周波周期パターン)、複数の斜め線が交わる画像、等の場合において、極大画素や極小画素が多く、高い複雑さINF_RATEが算出される。図15は、高周波周期パターンの一例を示す。
なお、複雑さの判断方法は上記方法に限られない。例えば、入力画像IDの画素の数に対する極大画素の数の割合、入力画像IDの画素の数に対する極小画素の数の割合、極大画素の数と極小画素の数の平均の、入力画像IDの画素の数に対する割合、等が、入力画像IDの複雑さとして判断されてもよい。また、入力画像IDの画素値の分散度合いが、入力画像IDの複雑さとして判断されてもよい。
オフセット値決定部402は、実施例1に係るオフセット値決定部205と同様の処理を行う。但し、本実施例では、オフセット値決定部402は、極値点距離算出403によって得られた複雑さINF_RATEに応じて、第2距離(第3範囲)を設定する。具体的には、オフセット値決定部402は、複雑さINF_RATEに応じて閾値ATHを決定(設定)し、決定した閾値ATHを用いてオフセットテーブルOFS_TBLを生成する。そして、オフセット値決定部402は、生成したオフセットテーブルOFS_TBLに従って、オフセット値OFST(n)を決定する。
図16は、複雑さINF_RATEと閾値ATHとの対応関係の一例を示す。図16の例では、複雑さINF_RATEが0.5以下の場合に、極値点距離INVALと同じ値が閾値ATHとして設定される。複雑さINF_RATEが0.5よりも大きく且つ0.75以下の場合に、極値点距離INVALの3/4の値が閾値ATHとして設定される。そして、複雑さINF_RATEが0.75よりも大きい場合に、複雑さINF_RAT
Eの1/2の値が閾値ATHとして設定される。このように、本実施例では、複雑さINF_RATEが高いほど小さい値が、閾値ATHとして設定される。そのため、本実施例では、複雑さINF_RATEが高いほど短い距離が、第2距離として設定され、複雑さINF_RATEが高いほど狭い範囲が、第3範囲として設定される。従って、本実施例では、第3範囲におけるオフセット値OFST(n)の変化(ブロック距離nの変化に対するオフセット値OFST(n)の変化)は、複雑さINF_RATEが高いほど急峻となる。
Eの1/2の値が閾値ATHとして設定される。このように、本実施例では、複雑さINF_RATEが高いほど小さい値が、閾値ATHとして設定される。そのため、本実施例では、複雑さINF_RATEが高いほど短い距離が、第2距離として設定され、複雑さINF_RATEが高いほど狭い範囲が、第3範囲として設定される。従って、本実施例では、第3範囲におけるオフセット値OFST(n)の変化(ブロック距離nの変化に対するオフセット値OFST(n)の変化)は、複雑さINF_RATEが高いほど急峻となる。
図17は、極値点距離INVAL=8と複雑さINF_RATE=0.7とに対応するオフセットテーブルOFS_TBLの一例を示す図である。図17の例では、極値点距離INVAL=8と複雑さINF_RATE=0.7とにより、閾値ATH=INVAL×3/4=6が設定されており、−6<n<−4の範囲と、+4<n<+6の範囲とが第3範囲として設定されている。そして、図17では、図7に比べ、第3範囲が狭く、且つ、第3範囲におけるオフセット値OFST(n)の変化が急峻であることがわかる。
高周波周期パターンなどの画像領域では、最小となるSAD値SAD_ARRAY(n)が複数存在し、最小となるSAD値SAD_ARRAY(n)の間隔が狭い。本実施例では、高周波周期パターンなどの画像領域では、閾値ATHとして小さい値が使用されるため、注目位置P0からの距離の増加に伴いエッジの検出感度がすぐに低減される。その結果、高周波周期パターンなどの画像領域において、エッジの誤検出を抑制することができ、高精度にエッジを検出することができる。そして、他の画像領域(非常に浅い斜め線の画像領域など)では、閾値ATHとして大きい値が使用される。そのため、上記他の画像領域においても、エッジの誤検出を抑制することができ、高精度にエッジを検出することができる。
なお、オフセット値決定部402の処理は上記処理に限られない。例えば、複雑さINF_RATEと極値点距離INVALの複数の組み合わせにそれぞれ対応する複数のオフセットテーブルが予め用意されていてもよい。そして、極値点距離算出403によって得られた複雑さINF_RATEと極値点距離INVALの組み合わせに対応するお布施っておテーブルが、複数のオフセットテーブルから選択されて使用されてもよい。
以上述べたように、本実施例によれば、入力画像の複雑さに応じて、第2距離(第3範囲;閾値ATH)が設定される。それにより、エッジの検出感度をより適切に調整することができ、エッジをより高精度に検出することができる。なお、本実施例では、入力画像の複雑さの変化によって閾値ATHが3段階で変化する例を示したが、これに限られない。例えば、閾値ATHの取り得る値の数は3つより多くても少なくてもよい。入力画像の複雑さの変化によって閾値ATHが連続的に変化してもよい。また、極値点距離INVALを用いて閾値ATHが算出される例を示したが、これに限られない。例えば、入力画像の複雑さを考慮し、且つ、極値点距離INVALを考慮せずに閾値ATHが設定されてもよい。
<その他の実施例>
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101:エッジ検出部 203:ブロックマッチング部
204,301:極値点距離判断部 205:オフセット値決定部
206:オフセット部 207:マッチング角度決定部
204,301:極値点距離判断部 205:オフセット値決定部
206:オフセット部 207:マッチング角度決定部
Claims (23)
- 入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断する第1判断手段と、
前記第1判断手段によって判断された距離に基づく検出感度で、前記入力画像からエッジを検出する検出手段と、
を有することを特徴とするエッジ検出装置。 - 前記検出手段は、エッジの検出対象の位置である対象位置からの複数の距離にそれぞれ対応する複数のエッジのいずれかを、前記対象位置におけるエッジとして検出し、
前記対象位置からの距離が、前記第1判断手段によって判断された距離に基づく第1距離以下の第1範囲に対応するエッジの検出感度は、前記対象位置からの距離が前記第1距離よりも長い第2範囲に対応するエッジの検出感度よりも高い
ことを特徴とする請求項1に記載のエッジ検出装置。 - 前記第1距離は、前記第1判断手段によって判断された距離である
ことを特徴とする請求項2に記載のエッジ検出装置。 - 前記第2範囲は、
前記対象位置からの距離が前記第1距離よりも長く且つ第2距離よりも短い第3範囲と、
前記対象位置からの距離が前記第2距離以上の第4範囲と、
を含み、
前記検出手段は、
前記第1範囲に対応するエッジの検出感度として、第1検出感度を使用し、
前記第3範囲に対応するエッジの検出感度として、前記対象位置からの距離の増加に伴い前記第1検出感度から第2検出感度へ低下する検出感度を使用し、
前記第4範囲に対応するエッジの検出感度として、前記第2検出感度を使用する
ことを特徴とする請求項2または3に記載のエッジ検出装置。 - 前記入力画像の複雑さを判断する第2判断手段と、
前記複雑さに応じて前記第2距離を設定する第1設定手段と、
をさらに有する
ことを特徴とする請求項4に記載のエッジ検出装置。 - 前記第1設定手段は、前記複雑さが高いほど短い距離を、前記第2距離として設定することを特徴とする請求項5に記載のエッジ検出装置。
- 前記複雑さは、前記極大画素の数と前記極小画素の数との少なくとも一方に基づく数の、前記入力画像の画素の数に対する割合である
ことを特徴とする請求項5または6に記載のエッジ検出装置。 - 前記複雑さは、前記極大画素の数と前記極小画素の数との合計の、前記入力画像の画素の数に対する割合である
ことを特徴とする請求項5〜7のいずれか1項に記載のエッジ検出装置。 - 前記第2判断手段は、前記対象位置を基準とした判断エリアにおける入力画像の複雑さを判断する
ことを特徴とする請求項5〜8のいずれか1項に記載のエッジ検出装置。 - 前記極大画素と前記極小画素のそれぞれは、エッジの検出対象の位置である対象位置を基準とした判断エリアにおける画素である
ことを特徴とする請求項1〜9のいずれか1項に記載のエッジ検出装置。 - 前記検出手段は、前記対象位置を基準とした検出エリアにおける入力画像を用いて、前記対象位置におけるエッジを検出し、
前記エッジ検出装置は、
前記検出エリアのサイズを設定する第2設定手段と、
前記検出エリアのサイズに応じて前記判断エリアのサイズを設定する第3設定手段と、
をさらに有する
ことを特徴とする請求項9または10に記載のエッジ検出装置。 - 前記第3設定手段は、前記検出エリアのサイズが大きいほど大きいサイズを、前記判断エリアのサイズとして設定する
ことを特徴とする請求項11に記載のエッジ検出装置。 - 前記検出手段は、
前記入力画像を用いたブロックマッチングを行い、
前記第1判断手段によって判断された距離に基づく検出感度に対応する補正パラメータを用いて、前記ブロックマッチングの結果を補正し、
前記ブロックマッチングの補正後の結果に基づいて、前記入力画像からエッジを検出する
ことを特徴とする請求項1〜12のいずれか1項に記載のエッジ検出装置。 - 前記ブロックマッチングでは、
2つの参照ブロックの組み合わせが複数設定され、
複数の組み合わせのそれぞれについて、その組み合わせに対応する一方の参照ブロックにおける入力画像と、その組み合わせに対応する他方の参照ブロックにおける入力画像との類似度または非類似度が比較値として判断され、
前記補正パラメータは、前記比較値に加算するオフセット値である
ことを特徴とする請求項13に記載のエッジ検出装置。 - 前記ブロックマッチングでは、2つの参照ブロックの所定方向における位置関係が互いに異なる複数の組み合わせが設定される
ことを特徴とする請求項14に記載のエッジ検出装置。 - 前記極大画素は、所定方向での階調値の変化において階調値が極大値となる画素であり、
前記極小画素は、前記所定方向での階調値の変化において階調値が極小値となる画素である
ことを特徴とする請求項1〜15のいずれか1項に記載のエッジ検出装置。 - 前記所定方向は、水平方向または垂直方向である
ことを特徴とする請求項15または16に記載のエッジ検出装置。 - 前記第1判断手段によって判断された距離に基づいて、前記検出感度を設定する第4設定手段、をさらに有する
ことを特徴とする請求項1〜17のいずれか1項に記載のエッジ検出装置。 - 前記極大画素の間の距離は、隣り合う2つの極大画素の間の距離であり、
前記極小画素の間の距離は、隣り合う2つの極小画素の間の距離である
ことを特徴とする請求項1〜18のいずれか1項に記載のエッジ検出装置。 - 前記第1判断手段は、前記極大画素の間の距離と前記極小画素の間の距離とを判断し、
前記検出感度は、前記極大画素の間の距離と前記極小画素の間の距離とを代表する代表距離に応じた検出感度である
ことを特徴とする請求項1〜19のいずれか1項に記載のエッジ検出装置。 - 前記代表距離は、前記極大画素の間の距離と前記極小画素の間の距離とのうちの小さい方である
ことを特徴とする請求項20に記載のエッジ検出装置。 - 入力画像に基づいて、階調値が極大値となる画素である極大画素の間の距離と、階調値が極小値となる画素である極小画素の間の距離との少なくとも一方を判断するステップと、
判断された距離に基づく検出感度で、前記入力画像からエッジを検出するステップと、を有することを特徴とするエッジ検出方法。 - 請求項22に記載のエッジ検出方法の各ステップをコンピュータに実行させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016062159A JP2017174311A (ja) | 2016-03-25 | 2016-03-25 | エッジ検出装置およびエッジ検出方法 |
US15/457,217 US10163035B2 (en) | 2016-03-25 | 2017-03-13 | Edge detecting apparatus and edge detecting method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016062159A JP2017174311A (ja) | 2016-03-25 | 2016-03-25 | エッジ検出装置およびエッジ検出方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017174311A true JP2017174311A (ja) | 2017-09-28 |
Family
ID=59898767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016062159A Pending JP2017174311A (ja) | 2016-03-25 | 2016-03-25 | エッジ検出装置およびエッジ検出方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10163035B2 (ja) |
JP (1) | JP2017174311A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114170228A (zh) * | 2022-02-14 | 2022-03-11 | 西南石油大学 | 一种计算机图像边缘检测方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107886615B (zh) * | 2017-12-15 | 2020-03-27 | 深圳怡化电脑股份有限公司 | 边缘检测方法及验钞设备 |
CN113421249B (zh) * | 2021-06-30 | 2024-02-06 | 上海申瑞继保电气有限公司 | 变电站设备可变尺度图像数值处理方法 |
CN113935996B (zh) * | 2021-12-16 | 2022-03-15 | 武汉市菲利纸业有限责任公司 | 基于图像处理的瓦楞纸透楞现象检测方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4358055B2 (ja) | 2004-07-21 | 2009-11-04 | 株式会社東芝 | 補間画素生成回路 |
US20160343143A1 (en) * | 2014-03-05 | 2016-11-24 | Mitsubishi Electric Corporation | Edge detection apparatus, edge detection method, and computer readable medium |
-
2016
- 2016-03-25 JP JP2016062159A patent/JP2017174311A/ja active Pending
-
2017
- 2017-03-13 US US15/457,217 patent/US10163035B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114170228A (zh) * | 2022-02-14 | 2022-03-11 | 西南石油大学 | 一种计算机图像边缘检测方法 |
CN114170228B (zh) * | 2022-02-14 | 2022-04-19 | 西南石油大学 | 一种计算机图像边缘检测方法 |
Also Published As
Publication number | Publication date |
---|---|
US10163035B2 (en) | 2018-12-25 |
US20170277975A1 (en) | 2017-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4517872B2 (ja) | 画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体 | |
US10163035B2 (en) | Edge detecting apparatus and edge detecting method | |
US7796191B1 (en) | Edge-preserving vertical interpolation | |
JP5669599B2 (ja) | 画像処理装置及びその制御方法 | |
JP6128987B2 (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 | |
JP5887764B2 (ja) | 動き補償フレーム生成装置及び方法 | |
JP2017151908A (ja) | 画像補正装置、画像補正方法及び画像補正用コンピュータプログラム | |
JP5198543B2 (ja) | 画像処理方法、画像処理装置及び画像処理プログラム | |
JP5091994B2 (ja) | 動きベクトル検出装置 | |
JP4872508B2 (ja) | 画像処理装置および画像処理方法、並びにプログラム | |
JP6704726B2 (ja) | エッジ検出装置、エッジ検出方法、及び、プログラム | |
US20070086059A1 (en) | Image sharpness device and method | |
JP5737072B2 (ja) | 動き補償フレーム生成装置及び方法 | |
WO2013011797A1 (ja) | 劣化復元システム、劣化復元方法およびプログラム | |
US20100091195A1 (en) | De-ringing Device and Method | |
JP2011171991A (ja) | 画像処理装置、電子機器、画像処理方法、および、画像処理プログラム | |
JP2017126885A (ja) | 画像補正装置、画像補正方法及び画像補正用コンピュータプログラム | |
JP4827137B2 (ja) | 解像度変換処理方法、画像処理装置、画像表示装置及びプログラム | |
JP5887763B2 (ja) | 動き補償フレーム生成装置及び方法 | |
JP6150576B2 (ja) | 画像処理装置及びその制御方法 | |
JP5018198B2 (ja) | 補間信号生成回路、補間信号生成方法、プログラムおよびビデオ信号処理装置 | |
JP6288920B2 (ja) | 画像処理装置及びその制御方法 | |
JP2006252108A (ja) | 画像処理装置、画像処理方法及びそのプログラム | |
US8107774B2 (en) | Image data processing method and image display apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20181116 |