JP6068896B2 - Image processing apparatus and program - Google Patents
Image processing apparatus and program Download PDFInfo
- Publication number
- JP6068896B2 JP6068896B2 JP2012208502A JP2012208502A JP6068896B2 JP 6068896 B2 JP6068896 B2 JP 6068896B2 JP 2012208502 A JP2012208502 A JP 2012208502A JP 2012208502 A JP2012208502 A JP 2012208502A JP 6068896 B2 JP6068896 B2 JP 6068896B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- edge
- image processing
- pixel
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 199
- 239000013598 vector Substances 0.000 claims description 151
- 238000000034 method Methods 0.000 claims description 88
- 230000008569 process Effects 0.000 claims description 81
- 238000003708 edge detection Methods 0.000 claims description 79
- 230000008859 change Effects 0.000 claims description 25
- 230000006835 compression Effects 0.000 claims description 8
- 238000007906 compression Methods 0.000 claims description 8
- 238000004040 coloring Methods 0.000 claims description 4
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 35
- 238000003860 storage Methods 0.000 description 23
- 230000010354 integration Effects 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 14
- 238000011156 evaluation Methods 0.000 description 12
- 238000003384 imaging method Methods 0.000 description 10
- 230000015572 biosynthetic process Effects 0.000 description 9
- 238000003786 synthesis reaction Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 241000220317 Rosa Species 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Description
本発明は、画像処理装置およびプログラムに関する。 The present invention relates to an image processing apparatus and a program.
従来から、画像の領域分割のために、画像のエッジを検出する技術が種々提案されている。 Conventionally, various techniques for detecting an edge of an image have been proposed for image segmentation.
しかし、従来の技術では、例えば、ユーザがエッジと認識していない部分からエッジを検出する場合や、ユーザがエッジと認識している部分でエッジが欠ける場合があり、エッジの検出精度になお改善の余地があった。 However, in the conventional technology, for example, the edge may be detected from a part that the user does not recognize as an edge, or the edge may be missing in a part that the user recognizes as an edge, and the edge detection accuracy is still improved. There was room for.
本発明の一例としての画像処理装置は、入力画像を取得する取得部と、ベクトル生成部と、エッジ検出部と、設定部と、分割部と、を有する。ベクトル生成部は、入力画像の注目画素につき、画像の変化の方向を示す確率場と画像の変化の強さを示すエネルギー場とを各方向で求める。また、ベクトル生成部は、確率場およびエネルギー場を用いて注目画素のエッジフローベクトルを生成する。エッジ検出部は、入力画像の各位置でそれぞれ生成したエッジフローベクトルを合成し、合成後のエッジフローベクトルが画像内で対向する位置から入力画像のエッジ画素を検出する。設定部は、注目画素の周方向に第1範囲と、第1範囲よりも確率場が大きい第2範囲とを設定する。分割部は、第2範囲を複数の領域に分割する。そして、ベクトル生成部は、複数の領域でそれぞれエッジフローベクトルを生成する。
本発明の一例としての画像処理装置は、入力画像を取得する取得部と、ベクトル生成部と、エッジ検出部と、決定部と、を有する。ベクトル生成部は、入力画像の注目画素につき、画像の変化の方向を示す確率場と画像の変化の強さを示すエネルギー場とを各方向で求める。また、ベクトル生成部は、確率場およびエネルギー場を用いて注目画素のエッジフローベクトルを生成する。エッジ検出部は、入力画像の各位置でそれぞれ生成したエッジフローベクトルを合成し、合成後のエッジフローベクトルが画像内で対向する位置から入力画像のエッジ画素を検出する。決定部は、注目画素から第1距離の画素と、注目画素から第1距離とは異なる第2距離の画素とを決定する。そして、ベクトル生成部は、注目画素から第1距離の画素を用いて得られた第1エッジフローベクトルと、注目画素から第2距離の画素を用いて得られた第2エッジフローベクトルとを生成する。
An image processing apparatus as an example of the present invention includes an acquisition unit that acquires an input image, a vector generation unit, an edge detection unit, a setting unit, and a division unit. The vector generation unit obtains, in each direction, a random field indicating the direction of image change and an energy field indicating the intensity of image change for the target pixel of the input image. The vector generation unit generates an edge flow vector of the target pixel using the random field and the energy field. The edge detection unit combines edge flow vectors generated at each position of the input image, and detects edge pixels of the input image from positions where the combined edge flow vectors face each other in the image. The setting unit sets a first range and a second range having a larger probability field than the first range in the circumferential direction of the target pixel. The dividing unit divides the second range into a plurality of regions. The vector generation unit generates an edge flow vector in each of the plurality of regions.
An image processing apparatus as an example of the present invention includes an acquisition unit that acquires an input image, a vector generation unit, an edge detection unit, and a determination unit. The vector generation unit obtains, in each direction, a random field indicating the direction of image change and an energy field indicating the intensity of image change for the target pixel of the input image. The vector generation unit generates an edge flow vector of the target pixel using the random field and the energy field. The edge detection unit combines edge flow vectors generated at each position of the input image, and detects edge pixels of the input image from positions where the combined edge flow vectors face each other in the image. The determination unit determines a pixel at a first distance from the target pixel and a pixel at a second distance different from the first distance from the target pixel. The vector generation unit generates a first edge flow vector obtained using a pixel at a first distance from the target pixel and a second edge flow vector obtained using a pixel at a second distance from the target pixel. To do.
本発明によれば、エッジの検出精度をより改善することができる。 According to the present invention, the edge detection accuracy can be further improved.
<一の実施形態での画像処理装置の構成例>
図1は、一の実施形態での画像処理装置の構成例を示す図である。一の実施形態では、画像処理装置の一例として、エッジフロー(EdgeFlow)ベクトルを用いたエッジ検出処理で入力画像の領域分割処理を行うコンピュータを説明する。
<Example of Configuration of Image Processing Apparatus in One Embodiment>
FIG. 1 is a diagram illustrating a configuration example of an image processing apparatus according to an embodiment. In one embodiment, as an example of an image processing apparatus, a computer that performs region division processing of an input image by edge detection processing using an edge flow vector will be described.
画像処理装置11は、入出力I/F12と、画像蓄積部13と、バンドパス処理部14と、ベクトル生成部15と、エッジ検出部16と、統合処理部17と、領域情報蓄積部18と、画像処理部19と、CPU20と、プログラム記憶部21を備える。 The image processing apparatus 11 includes an input / output I / F 12, an image storage unit 13, a band pass processing unit 14, a vector generation unit 15, an edge detection unit 16, an integration processing unit 17, and a region information storage unit 18. , An image processing unit 19, a CPU 20, and a program storage unit 21.
画像処理装置11の入出力I/F12には、入力デバイス22(キーボード、ポインティングデバイスなど)と、出力デバイス23(モニタ、プリンタなど)と、データ読込部24とが接続されている。データ読込部24は、領域分割処理の対象となる入力画像のデータや、プログラムを外部から読み込むときに用いられる。データ読込部24は、例えば、着脱可能な記憶媒体からデータを取得する読込デバイス(光ディスク、磁気ディスク、光磁気ディスクの読込装置など)や、公知の通信規格に準拠して外部装置と通信を行う通信デバイス(USBインターフェース、LANモジュール、無線LANモジュールなど)である。 An input device 22 (keyboard, pointing device, etc.), an output device 23 (monitor, printer, etc.), and a data reading unit 24 are connected to the input / output I / F 12 of the image processing apparatus 11. The data reading unit 24 is used when reading input image data or a program to be subjected to area division processing from the outside. The data reading unit 24 communicates with, for example, a reading device (such as an optical disk, a magnetic disk, or a magneto-optical disk reading device) that acquires data from a removable storage medium, or an external device in accordance with a known communication standard. It is a communication device (USB interface, LAN module, wireless LAN module, etc.).
入出力I/F12は、入力デバイス22やデータ読込部24からのデータを受け付けるとともに、出力デバイス23に対して画像のデータを出力する。 The input / output I / F 12 receives data from the input device 22 and the data reading unit 24 and outputs image data to the output device 23.
画像蓄積部13は、入力画像のデータを記憶する記憶媒体である。なお、図2(a)は入力画像の一例を示す図である。画像蓄積部13の入力画像のデータは、CPU20の制御により、バンドパス処理部14および画像処理部19に出力される。 The image storage unit 13 is a storage medium that stores input image data. FIG. 2A shows an example of the input image. The input image data of the image storage unit 13 is output to the band pass processing unit 14 and the image processing unit 19 under the control of the CPU 20.
バンドパス処理部14は、入力画像に対してバンドパスフィルタ処理を施す。なお、バンドパス処理部14の出力はベクトル生成部15に接続されている。 The bandpass processing unit 14 performs bandpass filter processing on the input image. The output of the bandpass processing unit 14 is connected to the vector generation unit 15.
ベクトル生成部15は、入力画像の注目画素のエッジフローベクトルを生成する。なお、ベクトル生成部15の出力はエッジ検出部16に接続されている。 The vector generation unit 15 generates an edge flow vector of the target pixel of the input image. The output of the vector generation unit 15 is connected to the edge detection unit 16.
エッジ検出部16は、入力画像の各位置でそれぞれ生成したエッジフローベクトルを合成し、合成後のエッジフローベクトルが画像内で対向する位置から入力画像のエッジ画素を検出する。そして、エッジ検出部16は、入力画像からエッジ画素に囲まれた閉空間(部分領域)を抽出する。なお、エッジ検出部16の出力は統合処理部17に接続されている。 The edge detection unit 16 combines edge flow vectors generated at each position of the input image, and detects edge pixels of the input image from positions where the combined edge flow vectors face each other in the image. Then, the edge detection unit 16 extracts a closed space (partial region) surrounded by edge pixels from the input image. Note that the output of the edge detection unit 16 is connected to the integration processing unit 17.
統合処理部17は、入力画像から抽出された複数の部分領域のうち、画像の特徴が類似する隣接領域を統合する。そして、統合処理部17は、入力画像の領域分割結果を示すエッジ画像(領域情報)を出力する。なお、図2(b)は、図2(a)に対応する領域情報の一例を示す図である。 The integration processing unit 17 integrates adjacent regions having similar image characteristics among a plurality of partial regions extracted from the input image. Then, the integration processing unit 17 outputs an edge image (region information) indicating the region division result of the input image. FIG. 2B is a diagram illustrating an example of region information corresponding to FIG.
領域情報蓄積部18は、上記の領域情報を記憶する記憶媒体である。なお、領域情報蓄積部18の領域情報は、CPU20の制御により画像処理部19に出力される。 The area information storage unit 18 is a storage medium that stores the area information. The area information stored in the area information storage unit 18 is output to the image processing unit 19 under the control of the CPU 20.
画像処理部19は、領域情報による境界線を入力画像に重畳して出力画像を生成する。また、画像処理部19は、領域情報を用いて、入力画像の部分領域ごとに各種の画像処理(例えば、領域別のぼかし処理、領域別のタグ情報の付与、画像分割、被写体抽出を伴う画像合成など)を施すこともできる。なお、図2(c)は、図2(a),(b)に対応する出力画像の一例を示す図である。 The image processing unit 19 generates an output image by superimposing a boundary line based on the region information on the input image. In addition, the image processing unit 19 uses the region information to perform various types of image processing for each partial region of the input image (for example, an image with region-specific blur processing, region-specific tag information addition, image division, subject extraction). Synthesis etc.) can also be applied. FIG. 2C is a diagram illustrating an example of an output image corresponding to FIGS. 2A and 2B.
CPU20は、プログラムの実行により画像処理装置11の動作を統括的に制御するプロセッサである。 The CPU 20 is a processor that comprehensively controls the operation of the image processing apparatus 11 by executing a program.
プログラム記憶部21は、CPU20の実行するプログラムや、プログラムの実行に必要となる各種のデータを記憶する。例えば、プログラム記憶部21は、ハードディスクや不揮発性の半導体メモリなどの記憶媒体である。 The program storage unit 21 stores a program executed by the CPU 20 and various data necessary for executing the program. For example, the program storage unit 21 is a storage medium such as a hard disk or a nonvolatile semiconductor memory.
ここで、図1に示す画像処理装置11内の機能ブロックは、ハードウェア的には任意のプロセッサ、メモリ、その他のLSIで実現でき、ソフトウェア的にはメモリにロードされたプログラムによって実現される。例えば、バンドパス処理部14、ベクトル生成部15、エッジ検出部16、統合処理部17、画像処理部19は、ASIC(Application Specific Integrated Circuit)であってもよく、またはCPU20によって処理されるプログラムモジュールであってもよい。なお、画像蓄積部13および領域情報蓄積部18は、同一のメモリ上に確保されている複数の記憶領域であってもよい。 Here, the functional blocks in the image processing apparatus 11 shown in FIG. 1 can be realized by an arbitrary processor, memory, or other LSI in terms of hardware, and realized by a program loaded in the memory in terms of software. For example, the bandpass processing unit 14, the vector generation unit 15, the edge detection unit 16, the integration processing unit 17, and the image processing unit 19 may be an ASIC (Application Specific Integrated Circuit) or a program module processed by the CPU 20. It may be. The image storage unit 13 and the area information storage unit 18 may be a plurality of storage areas secured on the same memory.
<領域分割処理の説明>
図3は、一の実施形態における領域分割処理の例を示す流れ図である。図3の流れ図の処理は、ユーザからの指示を受け付けたときに、CPU20がプログラムを実行することによって開始される。
<Description of area division processing>
FIG. 3 is a flowchart illustrating an example of region division processing in one embodiment. The process of the flowchart of FIG. 3 is started when the CPU 20 executes a program when an instruction from the user is received.
ステップ#101:画像処理装置11は、データ読込部24を介して入力画像を取得する。入力画像のデータは、CPU20の制御により画像蓄積部13に記録される。 Step # 101: The image processing apparatus 11 acquires an input image via the data reading unit 24. The input image data is recorded in the image storage unit 13 under the control of the CPU 20.
ステップ#102:バンドパス処理部14は、バンドパスフィルタにより、入力画像のノイズ成分を除去する。例えば、#102のバンドパス処理部14は、入力画像にローパスフィルタ処理を施す。 Step # 102: The band-pass processing unit 14 removes noise components from the input image using a band-pass filter. For example, the # 102 band pass processing unit 14 performs low pass filter processing on the input image.
ステップ#103:ベクトル生成部15およびエッジ検出部16は、入力画像のエッジ検出処理を実行する。なお、一の実施形態におけるエッジ検出処理の動作については後述する。 Step # 103: The vector generation unit 15 and the edge detection unit 16 execute an edge detection process of the input image. The operation of edge detection processing in one embodiment will be described later.
ステップ#104:統合処理部17は、部分領域の統合処理を実行する。そして、統合処理部17は、入力画像の領域分割結果を示す領域情報を出力する。 Step # 104: The integration processing unit 17 executes integration processing of partial areas. Then, the integration processing unit 17 outputs area information indicating the result of area division of the input image.
ここで、#104での統合処理は、公知の領域統合のアルゴリズムを用いて行われる。例えば、統合処理部17は、入力画像から抽出された複数の部分領域について、或る部分領域とその周辺の部分領域との類似度を算出する。この類似度は、例えば画像の輝度・色差などの特徴を用いて算出される。そして、統合処理部17は、算出した類似度の高い隣接領域を1つの領域に統合する。かかる統合処理を繰り返すことで、エッジ検出処理で細分化された部分領域のうち、画像の特徴が類似する隣接領域が1つにまとまるので、ユーザの感覚に近い領域分割結果を得ることができる。 Here, the integration process in # 104 is performed using a known area integration algorithm. For example, the integration processing unit 17 calculates the similarity between a certain partial area and its surrounding partial areas for a plurality of partial areas extracted from the input image. This similarity is calculated using, for example, features such as luminance and color difference of the image. Then, the integration processing unit 17 integrates the calculated adjacent areas with high similarity into one area. By repeating such integration processing, adjacent regions having similar image characteristics are grouped into one of the partial regions subdivided by the edge detection processing, so that a region division result close to the user's sense can be obtained.
図4は、部分領域の統合処理例を示す図である。図4(a)は、薔薇の花を撮影した画像に対してエッジ検出処理を施した状態を示している。図4(a)では、個々の薔薇の花びらがそれぞれ独立した部分領域として抽出されている。一方、図4(b)は、図4(a)の画像に対して部分領域の統合処理を施した状態を示している。図4(b)では、色の類似する薔薇の花びらの部分領域が統合され、薔薇の花全体が1つの領域として抽出されている。 FIG. 4 is a diagram illustrating an example of partial area integration processing. FIG. 4A shows a state in which edge detection processing is performed on an image obtained by photographing rose flowers. In FIG. 4A, each rose petal is extracted as an independent partial region. On the other hand, FIG. 4B shows a state where partial region integration processing has been performed on the image of FIG. In FIG. 4B, partial regions of rose petals having similar colors are integrated, and the entire rose is extracted as one region.
ステップ#105:画像処理部19は、領域分割処理の結果を出力する。 Step # 105: The image processing unit 19 outputs the result of the area division processing.
例えば、画像処理部19は、領域情報による境界線を入力画像に重畳して出力画像を生成する。そして、CPU20は、出力画像を出力デバイス23に表示させる。また、画像処理部19は、領域情報を用いて、入力画像の部分領域ごとに選択的に画像処理を施してもよい。なお、#105での画像処理の例は後述する。以上で、図3の流れ図の説明を終了する。 For example, the image processing unit 19 generates an output image by superimposing a boundary line based on the region information on the input image. Then, the CPU 20 displays the output image on the output device 23. Further, the image processing unit 19 may selectively perform image processing for each partial region of the input image using the region information. An example of image processing in # 105 will be described later. Above, description of the flowchart of FIG. 3 is complete | finished.
<エッジ検出処理の説明>
次に、エッジ検出処理(図3の#103)のサブルーチンの例を説明する。
<Description of edge detection processing>
Next, an example of a subroutine of edge detection processing (# 103 in FIG. 3) will be described.
以下の説明では、理解の便宜のため、まず図5の流れ図に沿って、エッジフローベクトルを用いた一般的なエッジ検出処理の概要を説明する。その後に、一の実施形態での特徴的処理について詳述する。 In the following description, for convenience of understanding, an outline of general edge detection processing using edge flow vectors will be described first with reference to the flowchart of FIG. Then, the characteristic process in one embodiment is explained in full detail.
ステップ#201:ベクトル生成部15は、入力画像のうちからエッジフローベクトルを求める注目画素を指定する。一例として、#201でのベクトル生成部15は、入力画像の左上隅を起点として1行ずつ左から右の順で、全ての画素を順次注目画素に指定する。 Step # 201: The vector generation unit 15 specifies a pixel of interest for which an edge flow vector is obtained from the input image. As an example, the vector generation unit 15 in # 201 sequentially designates all pixels as target pixels in order from left to right one line at a time starting from the upper left corner of the input image.
ステップ#202:ベクトル生成部15は、注目画素(#201)の各方向で、画像の変化の方向を示す確率場と、画像の変化の強さを示すエネルギー場とをそれぞれ求める。 Step # 202: The vector generation unit 15 obtains a random field indicating the direction of image change and an energy field indicating the intensity of image change in each direction of the target pixel (# 201).
図6は、確率場およびエネルギー場の説明図である。ベクトル生成部15は、注目画素から一定距離の円周上に等間隔をあけて複数個の周辺画素(標本点)をサンプリングする。以下の例では、注目画素s(x,y)から周辺画素までの距離をrと定義する。また、周辺画素は、注目画素s(x,y)を中心として45°間隔で8個設定する。注目画素s(x,y)の右側に位置する周辺画素の角度をθ0と定義し、θ0から反時計回りで各周辺画素の角度をθ1〜θ7と定義する。 FIG. 6 is an explanatory diagram of a random field and an energy field. The vector generation unit 15 samples a plurality of peripheral pixels (sample points) at equal intervals on the circumference of a certain distance from the target pixel. In the following example, the distance from the target pixel s (x, y) to the peripheral pixel is defined as r. Further, eight peripheral pixels are set at 45 ° intervals with the target pixel s (x, y) as the center. The angle of the peripheral pixel located on the right side of the target pixel s (x, y) is defined as θ0, and the angles of the peripheral pixels counterclockwise from θ0 are defined as θ1 to θ7.
このとき、或る周辺画素F(s,r,θi)は、エネルギー場E(s,θi)および確率場P(s,r,θi)の集合として表現できる(F(s,r,θi)=(P(s,r,θi),E(s,θi)))。ただし、iは0〜7の整数である。 At this time, a certain peripheral pixel F (s, r, θi) can be expressed as a set of an energy field E (s, θi) and a random field P (s, r, θi) (F (s, r, θi)). = (P (s, r, θi), E (s, θi))). However, i is an integer of 0-7.
エネルギー場E(s,θi)は、画像の変化の強さ(エッジのエネルギーの大きさ)を示す。なお、注目画素を中心に180°回転した位置にある周辺画素同士のエネルギー場Eは等しくなる(すなわち、E(s,θ)=E(s,θ+π))。 The energy field E (s, θi) indicates the strength of change in the image (the magnitude of the edge energy). It should be noted that the energy fields E of peripheral pixels at positions rotated by 180 ° about the target pixel are equal (that is, E (s, θ) = E (s, θ + π)).
確率場P(s,r,θi)は、距離rが離れた画素から、エネルギーの方向(θまたはθ+π)を決定する確率の値である。なお、確率場Pの値は、注目画素を中心に180°回転した位置にある周辺画素同士で正規化され、P(s,r,θ)+P(s,r,θ+π)=1の関係にある。 The random field P (s, r, θi) is a value of the probability of determining the energy direction (θ or θ + π) from the pixels separated by the distance r. Note that the value of the random field P is normalized between neighboring pixels at positions rotated by 180 ° around the pixel of interest, and P (s, r, θ) + P (s, r, θ + π) = 1. is there.
一例として、#202でのベクトル生成部15は、各周辺画素でのエネルギー場E(s,θi)および確率場P(s,r,θi)の組み合わせを、以下の手順で求めればよい。なお、周辺画素が8つの場合、エネルギー場E(s,θi)および確率場P(s,r,θi)はそれぞれ8つずつ求められることとなる。 As an example, the vector generation unit 15 in # 202 may obtain a combination of the energy field E (s, θi) and the random field P (s, r, θi) in each peripheral pixel by the following procedure. Note that when there are eight peripheral pixels, eight energy fields E (s, θi) and eight random fields P (s, r, θi) are obtained.
ここで、座標(x,y)での画素値をI(x,y)と定義し、座標(x,y)でのガウシアンをG(x,y)と定義する。また、G(x,y)のx方向への1次偏微分をGD(x,y)と定義する(GD(x,y)=dG(x,y)/dx)。また、導関数GD(x,y)をθだけ回転させた関数をGD(x,y,θ)=GD(x’,y’)と定義する。ただし、x’=xcosθ+ysinθであり、y’=−xsinθ+ycosθである。 Here, the pixel value at the coordinates (x, y) is defined as I (x, y), and the Gaussian at the coordinates (x, y) is defined as G (x, y). Further, a first-order partial differential of G (x, y) in the x direction is defined as GD (x, y) (GD (x, y) = dG (x, y) / dx). A function obtained by rotating the derivative GD (x, y) by θ is defined as GD (x, y, θ) = GD (x ′, y ′). However, x ′ = x cos θ + y sin θ, and y ′ = − x sin θ + y cos θ.
このとき、エネルギー場E(s,θi)の値は、式(1)で求めることができる。
E(s,θi)=|I(x,y)*GD(x,y,θi)| …(1)
また、Err(s,r,θi)=|I(x+rcos(θi),y+rsin(θi))*G(x,y)−I(x,y)*G(x,y)|のとき、確率場P(s,r,θi)の値は、式(2)で求めることができる。
P(s,r,θi)=Err(s,r,θi)/(Err(s,r,θi)+Err(s,r,θi+π)) …(2)
ステップ#203:ベクトル生成部15は、確率場およびエネルギー場を用いて注目画素のエッジフローベクトルを生成する。
At this time, the value of the energy field E (s, θi) can be obtained by Expression (1).
E (s, θi) = | I (x, y) * GD (x, y, θi) | (1)
Further, when Err (s, r, θi) = | I (x + rcos (θi), y + rsin (θi)) * G (x, y) −I (x, y) * G (x, y) | The value of the field P (s, r, θi) can be obtained by equation (2).
P (s, r, θi) = Err (s, r, θi) / (Err (s, r, θi) + Err (s, r, θi + π)) (2)
Step # 203: The vector generation unit 15 generates an edge flow vector of the target pixel using the random field and the energy field.
図7は、エッジフローベクトルの生成例を示す図である。まず、ベクトル生成部15は、サンプリングする周辺画素を変化させつつ、所定角度(例えば180°)の範囲内での確率場の総和をそれぞれ求める。そして、ベクトル生成部15は、上記の確率場の総和が最も大きくなる範囲(画像の変化の大きい方向Θ(s))を求める。また、ベクトル生成部15は、画像の変化の大きい方向Θ(s)について、エネルギー場の値からエッジフローベクトルを求める。 FIG. 7 is a diagram illustrating an example of generation of edge flow vectors. First, the vector generation unit 15 obtains each sum of random fields within a range of a predetermined angle (for example, 180 °) while changing surrounding pixels to be sampled. Then, the vector generation unit 15 obtains a range in which the total sum of the random fields is the largest (direction Θ (s) in which the image changes greatly). Further, the vector generation unit 15 obtains an edge flow vector from the value of the energy field in the direction Θ (s) in which the image changes greatly.
一例として、#203でのベクトル生成部15は、式(3)により、画像の変化の大きい方向Θ(s)を求めればよい。
Θ(s)=argmax_{θ}Σ_{A}P(s,r,θ’)
ただし、A={θ’|θ≦θ’<θ+π} …(3)
また、#203でのベクトル生成部15は、式(4)により、エッジフローベクトルFLを求めればよい。
FL=Σ_{B}E(s,θ’)exp(jθ’)
ただし、B={θ’|Θ(s)≦θ’<Θ(s)+π} …(4)
ステップ#204:ベクトル生成部15は、全注目画素でエッジフローベクトルの生成が完了したか否かを判定する。なお、図8(a)は入力画像の一例であり、図8(b)は図8(a)におけるエッジフローベクトルの初期状態を示す図である。なお、図8は、非特許文献1の図4を引用したものである。
As an example, the vector generation unit 15 in # 203 may obtain the direction Θ (s) in which the image change is large using Expression (3).
Θ (s) = argmax_ {θ} Σ_ {A} P (s, r, θ ′)
However, A = {θ ′ | θ ≦ θ ′ <θ + π} (3)
In addition, the vector generation unit 15 in # 203 may obtain the edge flow vector FL by Expression (4).
FL = Σ_ {B} E (s, θ ′) exp (jθ ′)
However, B = {θ ′ | Θ (s) ≦ θ ′ <Θ (s) + π} (4)
Step # 204: The vector generation unit 15 determines whether or not the generation of the edge flow vector is completed for all the target pixels. 8A is an example of an input image, and FIG. 8B is a diagram showing an initial state of the edge flow vector in FIG. 8A. In addition, FIG. 8 quotes FIG. 4 of a nonpatent literature 1. FIG.
ここで、上記要件を満たす場合(YES側)には、#205に処理が移行する。一方、上記要件を満たさない場合(NO側)には、ベクトル生成部15は#201に戻って、次の画素を注目画素に指定して上記動作を繰り返す。 If the above requirement is satisfied (YES side), the process proceeds to # 205. On the other hand, if the above requirement is not satisfied (NO side), the vector generating unit 15 returns to # 201, designates the next pixel as the target pixel, and repeats the above operation.
ステップ#205:エッジ検出部16は、入力画像の各位置でそれぞれ生成したエッジフローベクトルを各ベクトルの方向に伝搬させて合成する。そして、エッジ検出部16は、合成すべきエッジフローベクトルがなくなって静定するまで、上記の合成処理を反復する。なお、図8(c)は、図8(b)からエッジフローベクトルを合成して静定した状態を示す図である。 Step # 205: The edge detection unit 16 synthesizes the edge flow vector generated at each position of the input image by propagating it in the direction of each vector. Then, the edge detection unit 16 repeats the above synthesis process until there is no edge flow vector to be synthesized and it is settled. FIG. 8C is a diagram illustrating a state in which the edge flow vectors are synthesized and settled from FIG. 8B.
ここで、図9を参照しつつ、エッジフローベクトルの合成処理を説明する。図9(a)は、画像の上下方向に延長するエッジ近傍でのエッジフローベクトルの初期状態を示している。#205の合成処理ではエッジフローベクトルを各ベクトルの方向に伝搬させる。このとき、ベクトル同士が対向する位置ではエッジフローベクトルが動かない。第1回目の合成処理では、エッジ近傍に位置する第1のエッジフローベクトルは動かず、第2のエッジフローベクトルおよび第3のエッジフローベクトルはエッジの方向に向かって移動する。そして、第1のエッジフローベクトルと第2のエッジフローベクトルとが合成される(図9(b)参照)。その後、第2回目の合成処理では、合成後の第1のエッジフローベクトルは動かず、第3のエッジフローベクトルはエッジの方向に向かって移動する。そして、第1のエッジフローベクトルと第3のエッジフローベクトルとが合成される(図9(c)参照)。かかる合成処理により、エッジ近傍のベクトルにパワーが集中することとなる。 Here, the synthesis process of the edge flow vector will be described with reference to FIG. FIG. 9A shows the initial state of the edge flow vector in the vicinity of the edge extending in the vertical direction of the image. In the synthesis process of # 205, the edge flow vector is propagated in the direction of each vector. At this time, the edge flow vector does not move at a position where the vectors face each other. In the first synthesis process, the first edge flow vector located in the vicinity of the edge does not move, and the second edge flow vector and the third edge flow vector move in the direction of the edge. Then, the first edge flow vector and the second edge flow vector are synthesized (see FIG. 9B). Thereafter, in the second synthesis process, the first edge flow vector after synthesis does not move, and the third edge flow vector moves in the direction of the edge. Then, the first edge flow vector and the third edge flow vector are synthesized (see FIG. 9C). By such a synthesis process, power is concentrated on a vector near the edge.
ステップ#206:エッジ検出部16は、合成後のエッジフローベクトルを用いて入力画像のエッジ画素を検出する。例えば、#206のエッジ検出部16は、以下の(A1)〜(A3)の処理によってエッジ画素を検出すればよい。 Step # 206: The edge detection unit 16 detects edge pixels of the input image using the combined edge flow vector. For example, the edge detection unit 16 in # 206 may detect edge pixels by the following processes (A1) to (A3).
(A1)エッジ検出部16は、合成後のエッジフローベクトルが対向する位置を対象として、垂直方向および水平方向のエッジの大きさをそれぞれ求める。 (A1) The edge detection unit 16 obtains edge sizes in the vertical direction and the horizontal direction, respectively, for positions where the combined edge flow vectors face each other.
図10(a)は、垂直方向のエッジV(x,y)の求め方を示す図であり、図10(b)は、水平方向のエッジH(x,y)の求め方を示す図である。例えば、エッジフローベクトルFL(x,y)の水平成分をa(x,y)、垂直成分をb(x,y)と定義したとき、エッジ検出部16は、式(5)により垂直方向のエッジV(x,y)を求め、式(6)により水平方向のエッジH(x,y)を求めればよい。
V(x,y)=|b(x,y)−b(x,y+1)| …(5)
H(x,y)=|a(x,y)−a(x+1,y)| …(6)
(A2)エッジ検出部16は、上記のV(x,y)およびH(x,y)を用いて、上記の各位置でのエッジ強度を求める。例えば、エッジ検出部16は、式(7)により、V(x,y)およびH(x,y)のユークリッドノルムからエッジ強度(edgeNorm(x,y))を求めればよい。
edgeNorm(x,y)=√(V(x,y)^2+H(x,y)^2) …(7)
(A3)エッジ検出部16は、各位置でのエッジ強度(edgeNorm(x,y))の値と閾値edgeTH1とを比較する。そして、エッジ検出部16は、エッジ強度の値が閾値edgeTH1を超える画素(edgeNorm(x,y)>edgeTH1)を、エッジ画素として検出する。
FIG. 10A is a diagram illustrating how to obtain the vertical edge V (x, y), and FIG. 10B is a diagram illustrating how to obtain the horizontal edge H (x, y). is there. For example, when the horizontal component of the edge flow vector FL (x, y) is defined as a (x, y) and the vertical component is defined as b (x, y), the edge detection unit 16 uses the expression (5) to determine the vertical direction. The edge V (x, y) may be obtained, and the horizontal edge H (x, y) may be obtained from the equation (6).
V (x, y) = | b (x, y) −b (x, y + 1) | (5)
H (x, y) = | a (x, y) −a (x + 1, y) | (6)
(A2) The edge detection unit 16 obtains the edge strength at each position using the V (x, y) and H (x, y). For example, the edge detection unit 16 may obtain the edge strength (edge Norm (x, y)) from the Euclidean norm of V (x, y) and H (x, y) by Expression (7).
edgeNorm (x, y) = √ (V (x, y) ^ 2 + H (x, y) ^ 2) (7)
(A3) The edge detection unit 16 compares the value of the edge strength (edgeNorm (x, y)) at each position with the threshold edgeTH1. Then, the edge detection unit 16 detects, as an edge pixel, a pixel whose edge intensity value exceeds the threshold edgeTH1 (edgeNorm (x, y)> edgeTH1).
なお、エッジ検出部16は、エッジ画素か否かを示すフラグedgeBIN(x,y)を各画素で生成する。エッジ検出部16は、エッジ画素の位置ではedgeBIN(x,y)の値を「1」とし、エッジ画素以外の位置ではedgeBIN(x,y)の値を「0」とする。エッジ検出部16は、edgeBIN(x,y)の値を参照することで、エッジ画素の位置を2値化したエッジ画像を得ることができる。なお、図8(d)は、入力画像(図8(a))にエッジ画像を重畳させた例を示している。 The edge detection unit 16 generates a flag edgeBIN (x, y) indicating whether each pixel is an edge pixel. The edge detection unit 16 sets the value of edgeBIN (x, y) to “1” at the position of the edge pixel, and sets the value of edgeBIN (x, y) to “0” at the position other than the edge pixel. The edge detection unit 16 can obtain an edge image in which the position of the edge pixel is binarized by referring to the value of edgeBIN (x, y). FIG. 8D shows an example in which an edge image is superimposed on the input image (FIG. 8A).
ステップ#207:エッジ検出部16は、エッジ画像に対して、それぞれ公知の細線化処理およびスパイクノイズ除去処理を施す。なお、#207の処理は適宜省略してもよい。 Step # 207: The edge detection unit 16 performs known thinning processing and spike noise removal processing on the edge image, respectively. Note that the process of # 207 may be omitted as appropriate.
ステップ#208:エッジ検出部16は、エッジ画像のエッジ画素を連結して、入力画像からエッジ画素で囲まれた閉空間(部分領域)を抽出する。このとき、エッジ検出部16は、必要に応じて閉空間を形成していないエッジを、近傍のエッジ画素に連結されるように補間する。ここで、図11(a)は、エッジ画素の補間前の例を示す図であり、図11(b)は、エッジ画素の補間後の例を示す図である。図11(a)でエッジが欠けている部分(破線で示す)は、図11(b)においてエッジが補間されている。 Step # 208: The edge detection unit 16 connects edge pixels of the edge image, and extracts a closed space (partial region) surrounded by the edge pixels from the input image. At this time, the edge detection unit 16 interpolates edges that do not form a closed space as necessary so as to be connected to neighboring edge pixels. Here, FIG. 11A is a diagram illustrating an example before interpolation of edge pixels, and FIG. 11B is a diagram illustrating an example after interpolation of edge pixels. The portion where the edge is missing in FIG. 11A (indicated by a broken line) is interpolated in FIG. 11B.
そして、CPU20は、#208の処理の後、図3の#104の処理に復帰する。以上で、図5の流れ図の説明を終了する。次に、一の実施形態での特徴的処理を詳述する。なお、後述する特徴的処理は、必ずしも全て行う必要はなく、1ないし複数の特徴的処理を選択的に行うようにしてもよい。 Then, after the process of # 208, the CPU 20 returns to the process of # 104 in FIG. Above, description of the flowchart of FIG. 5 is complete | finished. Next, the characteristic processing in one embodiment will be described in detail. It is not always necessary to perform all the characteristic processes described later, and one or a plurality of characteristic processes may be selectively performed.
<一の実施形態での特徴的処理1>
例えば、図12(a)に示すように、画像の階調が緩やかに変化するグラデーションの部分では、僅かな階調変化を捉えたパワーの小さいエッジフローベクトルが生成される。上記のエッジフローベクトルにより、グラデーションの途中で不自然なエッジが検出される場合がある。
<Characteristic Process 1 in One Embodiment>
For example, as shown in FIG. 12A, in a gradation portion where the gradation of the image changes gradually, an edge flow vector with a small power capturing a slight gradation change is generated. Due to the above edge flow vector, an unnatural edge may be detected in the middle of gradation.
上記の対策として、#202において、ベクトル生成部15は、所定の方向の確率場およびエネルギー場の大きさが閾値未満であるときに、所定の方向の確率場およびエネルギー場の値を別の値に置換して処理する。例えば、ベクトル生成部15は、所定の方向の確率場およびエネルギー場の大きさが閾値未満であるときに、所定の方向の確率場およびエネルギー場の値を強制的にゼロに置換する(確率場およびエネルギー場のゼロクリップ処理)。 As a countermeasure for the above, in # 202, the vector generation unit 15 sets the values of the random field and energy field in the predetermined direction to different values when the magnitude of the random field and energy field in the predetermined direction is less than the threshold value. Replace with and process. For example, the vector generation unit 15 forcibly replaces the value of the random field and energy field in the predetermined direction with zero when the magnitude of the random field and energy field in the predetermined direction is less than the threshold (random field). And zero clipping of energy fields).
例えば、一の実施形態でのベクトル生成部15は、所定の方向のErr(s,r,θ)の値と、所定の方向に対して反対方向のErr(s,r,θ+π)の値とがいずれも閾値TH未満の場合、これらの方向の確率場およびエネルギー場の値を強制的にゼロに置換する。すなわち、Err(s,r,θ)<0かつErr(s,r,θ+π)<0のとき、E(s,θ)=E(s,θ+π)=0かつP(s,r,θ)=P(s,r,θ+π)=0とする。このとき、F(s,r,θ)=F(s,r,θ+π)=0となる。 For example, the vector generation unit 15 in one embodiment includes a value of Err (s, r, θ) in a predetermined direction and a value of Err (s, r, θ + π) in the opposite direction to the predetermined direction. Are both less than the threshold TH, the values of the random and energy fields in these directions are forced to zero. That is, when Err (s, r, θ) <0 and Err (s, r, θ + π) <0, E (s, θ) = E (s, θ + π) = 0 and P (s, r, θ) = P (s, r, θ + π) = 0. At this time, F (s, r, θ) = F (s, r, θ + π) = 0.
上記のゼロクリップ処理を行うことで、図12(b)に示すように、グラデーションの途中でエッジフローベクトルが生成されなくなる。かかる特徴的処理1によれば、ユーザがエッジと認識していない部分からエッジが検出される可能性が低減するので、エッジの検出精度が改善し、エッジ検出の結果をユーザの認識により近づけることができる。 By performing the above-described zero clip processing, an edge flow vector is not generated in the middle of gradation as shown in FIG. According to the characteristic processing 1, since the possibility that an edge is detected from a portion that the user does not recognize as an edge is reduced, the edge detection accuracy is improved, and the edge detection result is made closer to the user's recognition. Can do.
<一の実施形態での特徴的処理2>
一般的なエッジフローベクトルによるエッジ検出処理では、1つの注目画素について1つのエッジフローベクトルが生成される。上記の場合には、画像の変化が最も強くなる方向のみエッジフローベクトルが生成されるため、注目画素の近傍にエッジを検出すべき箇所が複数存在するときに、画像の変化が最も強くなる方向以外は境界が欠けてしまう。
<Characteristic process 2 in one embodiment>
In edge detection processing using a general edge flow vector, one edge flow vector is generated for one pixel of interest. In the above case, since the edge flow vector is generated only in the direction in which the image change is strongest, the direction in which the image change is strongest when there are multiple locations where the edge should be detected in the vicinity of the target pixel. Otherwise, the boundary is missing.
上記の対策として、#202、#203において、ベクトル生成部15は1つの注目画素につき複数のエッジフローベクトルを生成する。例えば、ベクトル生成部15は、以下に示す第1処理および第2処理の少なくとも一方を実行することで、1つの注目画素から複数のエッジフローベクトルを生成する。勿論、第1処理と第2処理を組み合わせて実行してもかまわない。 As a countermeasure against the above, in # 202 and # 203, the vector generation unit 15 generates a plurality of edge flow vectors for one target pixel. For example, the vector generation unit 15 generates a plurality of edge flow vectors from one target pixel by executing at least one of the following first process and second process. Of course, the first process and the second process may be executed in combination.
(第1処理の説明)
図13は、第1処理におけるエッジフローベクトルの生成例を示す図である。第1処理において、各周辺画素でのエネルギー場E(s,θi)および確率場P(s,r,θi)を求めるまでの処理は、#202と同様である。第1処理でのベクトル生成部15は、画像の変化の大きい方向Θ(s)の範囲を周方向に複数の領域に分割し、各領域でそれぞれエッジフローベクトルを生成する。なお、以下の説明では、第1処理において、画像の変化の大きい方向Θ(s)を3つに分割する例を説明する。
(Description of the first process)
FIG. 13 is a diagram illustrating an example of generating an edge flow vector in the first process. In the first process, the process until obtaining the energy field E (s, θi) and the random field P (s, r, θi) in each peripheral pixel is the same as that in # 202. The vector generation unit 15 in the first process divides the range of the direction Θ (s) in which the image changes greatly into a plurality of regions in the circumferential direction, and generates an edge flow vector in each region. In the following description, an example in which the direction Θ (s) in which the image changes greatly is divided into three in the first process will be described.
例えば、第1処理でのベクトル生成部15は、式(8)により、画像の変化の大きい方向Θ(s)を求める。
Θ(s)=argmax_{θ}Σ_{A}P(s,r,θ’)
ただし、A={θ’|θ≦θ’<θ+1.5π} …(8)
また、第1処理でのベクトル生成部15は、式(9)〜式(11)により、エッジフローベクトルFL1〜FL3をそれぞれ求めればよい。
FL1=Σ_{B1}E(s,θ’)exp(jθ’)
ただし、B1={θ’|Θ(s)≦θ’<Θ(s)+2β} …(9)
FL2=Σ_{B2}E(s,θ’)exp(jθ’)
ただし、B2={θ’|Θ(s)+2β≦θ’<Θ(s)+4β} …(10)
FL3=Σ_{B3}E(s,θ’)exp(jθ’)
ただし、B3={θ’|Θ(s)+4β≦θ’<Θ(s)+6β} …(11)
つまり、上記の式(8)〜式(11)の例では、ベクトル生成部15は、270°の刻みで、確率場の総和が最も大きくなる範囲(画像の変化の大きい方向Θ(s))を求める。そして、ベクトル生成部15は、画像の変化の大きい方向Θ(s)の範囲を周方向に3分割し、それぞれの領域でエネルギー場の値からエッジフローベクトルを生成している。なお、分割する領域は空間的に連続している必要はなく、周方向に離れていてもよい。
For example, the vector generation unit 15 in the first process obtains the direction Θ (s) in which the image change is large using Expression (8).
Θ (s) = argmax_ {θ} Σ_ {A} P (s, r, θ ′)
However, A = {θ ′ | θ ≦ θ ′ <θ + 1.5π} (8)
In addition, the vector generation unit 15 in the first process may obtain the edge flow vectors FL1 to FL3 from Expressions (9) to (11), respectively.
FL1 = Σ_ {B1} E (s, θ ′) exp (jθ ′)
However, B1 = {θ ′ | Θ (s) ≦ θ ′ <Θ (s) + 2β} (9)
FL2 = Σ_ {B2} E (s, θ ′) exp (jθ ′)
However, B2 = {θ ′ | Θ (s) + 2β ≦ θ ′ <Θ (s) + 4β} (10)
FL3 = Σ_ {B3} E (s, θ ′) exp (jθ ′)
However, B3 = {θ ′ | Θ (s) + 4β ≦ θ ′ <Θ (s) + 6β} (11)
That is, in the examples of the above formulas (8) to (11), the vector generation unit 15 has a range in which the sum of the random fields is the largest in increments of 270 ° (direction Θ (s) in which the image changes greatly) Ask for. Then, the vector generation unit 15 divides the range of the direction Θ (s) where the image changes greatly into three in the circumferential direction, and generates an edge flow vector from the value of the energy field in each region. In addition, the area | region to divide | segment does not need to be spatially continuous and may be separated in the circumferential direction.
図14は、上記の第1処理での作用例を示す図である。上記の第1処理では、1つの注目画素につき複数のフローベクトルが生成される。注目画素の周辺に境界が複数存在する場合には、複数のフローベクトルでそれぞれ異なる境界のエッジが検出される。したがって、上記の第1処理では、エッジ検出処理のときにエッジの欠けが生じる可能性が低減するので、エッジの検出精度が改善し、エッジ検出の結果をユーザの認識により近づけることができる。 FIG. 14 is a diagram illustrating an operation example in the first process. In the first process, a plurality of flow vectors are generated for one pixel of interest. When there are a plurality of boundaries around the pixel of interest, different boundary edges are detected by a plurality of flow vectors. Therefore, in the first process described above, the possibility of missing edges during the edge detection process is reduced, so that the edge detection accuracy is improved and the edge detection result can be made closer to the user's recognition.
なお、画像の変化の大きい方向Θ(s)の分割数は3つに限定されず、分割数を適宜変更してもよい。また、上記の式(8)の領域Aの範囲は270°に限定されず、任意に設定することが可能である。 The number of divisions in the direction Θ (s) where the image changes greatly is not limited to three, and the number of divisions may be changed as appropriate. Further, the range of the region A in the above formula (8) is not limited to 270 °, and can be arbitrarily set.
(第2処理の説明)
図15は、第2処理におけるエッジフローベクトルの生成例を示す図である。第2処理でのベクトル生成部15は、異なる複数の標本点を利用して複数の確率場およびエネルギー場を求める。例えば、ベクトル生成部15は、注目画素と周辺画素との距離を相違させて確率場およびエネルギー場を複数組求める。そして、ベクトル生成部15は、異なる距離の確率場およびエネルギー場からそれぞれエッジフローベクトルを生成する。
(Explanation of the second process)
FIG. 15 is a diagram illustrating an example of generating an edge flow vector in the second process. The vector generation unit 15 in the second process obtains a plurality of random fields and energy fields using a plurality of different sample points. For example, the vector generation unit 15 obtains a plurality of sets of random fields and energy fields by differentiating the distance between the target pixel and the surrounding pixels. And the vector production | generation part 15 produces | generates an edge flow vector from the random field and energy field of a different distance, respectively.
例えば、第2処理でのベクトル生成部15は、注目画素s(x,y)を中心として45°間隔で、注目画素s(x,y)からr1離れた8つの第1周辺画素と、注目画素s(x,y)からr2離れた8つの第2周辺画素とをそれぞれサンプリングする。なお、図15の例では、r1>r2である。 For example, the vector generation unit 15 in the second process includes eight first peripheral pixels separated from the target pixel s (x, y) by r1 at 45 ° intervals around the target pixel s (x, y), and the target pixel The eight second peripheral pixels that are r2 away from the pixel s (x, y) are sampled. In the example of FIG. 15, r1> r2.
ベクトル生成部15は、8つの第1周辺画素について、エネルギー場E(s,θi)および確率場P(s,r1,θi)をそれぞれ求め、上記の確率場およびエネルギー場を用いてエッジフローベクトルFL1を生成する。同様に、ベクトル生成部15は、8つの第2周辺画素について、エネルギー場E(s,θi)および確率場P(s,r2,θi)をそれぞれ求め、上記の確率場およびエネルギー場を用いてエッジフローベクトルFL2を生成する。なお、上記の確率場、エネルギー場およびエッジフローベクトルFL1,FL2は、上記の式(1)〜式(4)により求めればよい。 The vector generation unit 15 obtains an energy field E (s, θi) and a random field P (s, r1, θi) for each of the eight first peripheral pixels, and uses the above random field and energy field to obtain an edge flow vector. FL1 is generated. Similarly, the vector generation unit 15 obtains an energy field E (s, θi) and a random field P (s, r2, θi) for each of the eight second peripheral pixels, and uses the above random field and energy field. An edge flow vector FL2 is generated. In addition, what is necessary is just to obtain | require said random field, energy field, and edge flow vector FL1, FL2 by said Formula (1)-Formula (4).
図16は、上記の第2処理での作用例を示す図である。一般に、注目画素と標本点との距離を変えると、両者の差分から求まる画像の変化の向きも相違することが多い。例えば、図16のように、直線距離の異なる2つのL字状の境界が注目画素の周囲に存在する場合を考える。このとき、注目画素と標本点との距離が短ければ、注目画素から比較的近い方の境界に向けてエッジフローベクトルが生成される。同様に、注目画素と標本点との距離が長ければ、注目画素から比較的遠い方の境界に向けてエッジフローベクトルが生成される。異なる距離の確率場およびエネルギー場から複数のエッジフローベクトルを生成することで異なる境界のエッジが検出される。したがって、上記の第2処理では、エッジ検出処理のときにエッジの欠けが生じる可能性が低減するので、エッジの検出精度が改善し、エッジ検出の結果をユーザの認識により近づけることができる。 FIG. 16 is a diagram illustrating an operation example in the second process. In general, when the distance between the pixel of interest and the sample point is changed, the direction of the image change obtained from the difference between the two is often different. For example, as shown in FIG. 16, consider a case where two L-shaped boundaries having different linear distances exist around the pixel of interest. At this time, if the distance between the target pixel and the sample point is short, an edge flow vector is generated toward a boundary relatively closer to the target pixel. Similarly, if the distance between the target pixel and the sample point is long, an edge flow vector is generated toward the boundary that is relatively far from the target pixel. Different boundary edges are detected by generating a plurality of edge flow vectors from random and random fields. Therefore, in the second processing described above, the possibility of missing edges during the edge detection processing is reduced, so that the edge detection accuracy can be improved and the result of edge detection can be made closer to the user's recognition.
なお、注目画素から周辺画素の距離を3種類以上設定し、それぞれエッジフローベクトルを求めてもよい。 Note that three or more types of distances from the target pixel to the surrounding pixels may be set, and the edge flow vector may be obtained for each.
<一の実施形態での特徴的処理3>
上記のエッジ画素の検出(#206)では、エッジ強度を閾値処理してエッジ画素を検出する。そのため、エッジ画像のノイズを抑制できる一方で、境界として本来検出されるべき画素が欠けてしまう場合がある。
<Characteristic process 3 in one embodiment>
In the above edge pixel detection (# 206), the edge intensity is detected by threshold processing to detect the edge pixel. Therefore, while it is possible to suppress noise in the edge image, there are cases where pixels that should be detected as boundaries are missing.
上記の対策として、#206において、エッジ検出部16は、画素のエッジ強度と近傍のエッジ画素の有無とに基づいて補間処理を行う。 As the above countermeasure, in # 206, the edge detection unit 16 performs an interpolation process based on the edge strength of the pixel and the presence / absence of a nearby edge pixel.
図17は特徴的処理3での補間処理の説明図であって、図17(a)は補間処理前の状態を示し、図17(b)は補間処理後の状態を示す。エッジ画素はedgeBIN(x,y)=1であり、非エッジ画素はedgeBIN(x,y)=0である。また、非エッジ画素のうち、エッジ強度が第1閾値edgeTH1以下で、かつ第2閾値edgeTH2以上である画素(edgeTH2≦edgeNorm(x,y)≦edgeTH1)を図中黒色で示す。なお、第2閾値edgeTH2は、第1閾値edgeTH1よりも低い値であり、相対的に小さいエッジを検出できる程度の値に設定される。 17A and 17B are explanatory diagrams of the interpolation process in the characteristic process 3. FIG. 17A shows a state before the interpolation process, and FIG. 17B shows a state after the interpolation process. The edge pixel has edgeBIN (x, y) = 1, and the non-edge pixel has edgeBIN (x, y) = 0. In addition, among the non-edge pixels, pixels whose edge intensity is equal to or lower than the first threshold edgeTH1 and equal to or higher than the second threshold edgeTH2 (edgeTH2 ≦ edgeNorm (x, y) ≦ edgeTH1) are shown in black in the drawing. Note that the second threshold edgeTH2 is lower than the first threshold edgeTH1, and is set to a value that can detect a relatively small edge.
追加処理例3でのエッジ検出部16は、エッジ強度が第2閾値以上である非エッジ画素のうち、エッジ画素に隣接する画素のedgeBIN(x,y)を「0」から「1」に置換する。これにより、エッジ強度が第2閾値以上である非エッジ画素はエッジ画素に変更される。上記のように、エッジ画素に隣接し、かつある程度のエッジ強度を有する画素をエッジ画素として扱うことで、連続する境界のエッジが欠ける可能性が低減し、エッジの検出精度が改善する。 In the additional processing example 3, the edge detection unit 16 replaces edgeBIN (x, y) of the pixel adjacent to the edge pixel from “0” to “1” among the non-edge pixels whose edge strength is equal to or greater than the second threshold value. To do. As a result, non-edge pixels whose edge strength is equal to or greater than the second threshold are changed to edge pixels. As described above, by treating a pixel adjacent to an edge pixel and having a certain degree of edge strength as an edge pixel, the possibility of missing edges at successive boundaries is reduced, and the edge detection accuracy is improved.
<一の実施形態での特徴的処理4>
エッジ画素を検出した後に、閉空間を形成するためにエッジ画素を連結して補間をするとき(#208)、エッジの端点から最短距離を結ぶように補間を行うと画像のエッジが不自然に接続されることがある。
<Characteristic Process 4 in One Embodiment>
When the edge pixels are detected and then interpolated by connecting the edge pixels to form a closed space (# 208), if the interpolation is performed so as to connect the shortest distance from the end point of the edge, the edge of the image becomes unnatural. May be connected.
上記の対策として、#208において、エッジ検出部16は、エッジの端点からエッジ画素の延長方向を求める。そして、エッジ検出部16は、閉空間を形成するために端点に接続される補間エッジの位置を延長方向に基づいて決定する。 As the above countermeasure, in # 208, the edge detection unit 16 obtains the extension direction of the edge pixel from the end point of the edge. Then, the edge detection unit 16 determines the position of the interpolation edge connected to the end point to form a closed space based on the extension direction.
(エッジ画素の延長方向の求め方)
第1の例として、エッジ検出部16は、端点の画素位置と、端点から延長して所定距離離れたエッジ画素の画素位置との変化からエッジの延長方向を求めればよい。図18は、エッジ画素の端点からエッジ画素の延長方向を求める一例を示す図である。図18の例では、エッジ検出部16は、端点から2画素離れたエッジ画素の画素位置の変化から、エッジの延長方向を求める。なお、図18では、水平方向(x方向)の右移動を正の値とし、垂直方向(y方向)の上移動を正の値で表現する。
(How to find the extension direction of edge pixels)
As a first example, the edge detection unit 16 may obtain an edge extension direction from a change between a pixel position of an end point and a pixel position of an edge pixel extending from the end point and separated by a predetermined distance. FIG. 18 is a diagram illustrating an example of obtaining the extension direction of the edge pixel from the end point of the edge pixel. In the example of FIG. 18, the edge detection unit 16 obtains the edge extension direction from the change in the pixel position of the edge pixel that is two pixels away from the end point. In FIG. 18, the rightward movement in the horizontal direction (x direction) is represented by a positive value, and the upward movement in the vertical direction (y direction) is represented by a positive value.
ここで、図18(a)の場合、端点から2画素離れたエッジ画素から端点までの移動量は、x方向に2画素分、y方向に−1画素分である。図18(a)の場合、エッジの延長方向はatan(1/−2)=333°となる。 Here, in the case of FIG. 18A, the amount of movement from the edge pixel that is two pixels away from the end point to the end point is two pixels in the x direction and −1 pixel in the y direction. In the case of FIG. 18A, the extending direction of the edge is atan (1 / −2) = 333 °.
また、図18(b)の場合、端点から2画素離れたエッジ画素から端点までの移動量は、x方向に0画素分、y方向に−2画素分である。図18(b)の場合、エッジの延長方向はatan(2/0)=270°となる。 In the case of FIG. 18B, the amount of movement from the edge pixel 2 pixels away from the end point to the end point is 0 pixel in the x direction and −2 pixel in the y direction. In the case of FIG. 18B, the extending direction of the edge is atan (2/0) = 270 °.
また、第2の例として、エッジ検出部16は、エッジ画素のパターンと延長方向との対応関係を示すテンプレートを用いたマッチング処理により、エッジ画素の延長方向を求めてもよい。 As a second example, the edge detection unit 16 may obtain the extension direction of the edge pixel by a matching process using a template indicating a correspondence relationship between the pattern of the edge pixel and the extension direction.
図19(a)〜(e)は、エッジの延長方向(角度)がそれぞれ360°,333°,315°,297°,270°のテンプレートの例を示す。図19のテンプレートは、3×3画素のサイズであって、端点から2画素分のエッジ画素の連結パターンを示している。図19のテンプレートにおいて、「1」はエッジ画素を示し、「0」は非エッジ画素を示す。また、各テンプレートで端点の位置は周囲にハッチングをして示す。なお、各々のテンプレートは、エッジの延長方向(角度)の情報を予め対応付けした状態で、例えばプログラム記憶部21に記憶されている。 FIGS. 19A to 19E show examples of templates whose edge extending directions (angles) are 360 °, 333 °, 315 °, 297 °, and 270 °, respectively. The template of FIG. 19 has a size of 3 × 3 pixels and shows a connection pattern of edge pixels for two pixels from the end point. In the template of FIG. 19, “1” indicates an edge pixel, and “0” indicates a non-edge pixel. In addition, the position of the end point in each template is shown by hatching around it. Each template is stored in, for example, the program storage unit 21 in a state where information on the extension direction (angle) of the edge is associated in advance.
図20は、テンプレートを用いた延長方向の求め方を示す図である。エッジ検出部16は、エッジ画像とテンプレートとのマッチングを実行し、端点から2画素分のエッジ画素と合致するテンプレートを探索する。そして、エッジ検出部16は、エッジ画像と合致したテンプレートからエッジの延長方向(角度)を求めればよい。 FIG. 20 is a diagram illustrating how to obtain the extension direction using a template. The edge detection unit 16 performs matching between the edge image and the template, and searches for a template that matches the edge pixels of two pixels from the end point. Then, the edge detection unit 16 may obtain the edge extension direction (angle) from the template that matches the edge image.
例えば、図20(a)の場合、端点から2画素分のエッジ画素のパターンは、図19(b)のテンプレートと合致する。そのため、図20(a)の場合はエッジの延長方向が333°となる。また、例えば、図20(b)の場合、端点から2画素分のエッジ画素のパターンは、図19(e)のテンプレートと合致する。そのため、図20(b)の場合はエッジの延長方向が270°となる。 For example, in the case of FIG. 20A, the pattern of edge pixels for two pixels from the end point matches the template of FIG. Therefore, in the case of FIG. 20A, the extending direction of the edge is 333 °. For example, in the case of FIG. 20B, the pattern of edge pixels for two pixels from the end point matches the template of FIG. Therefore, in the case of FIG. 20B, the extending direction of the edge is 270 °.
(補間エッジの位置の決定方法)
そして、エッジ検出部16は、エッジの端点から補間エッジの接続先を探索するときに、エッジの延長方向に位置するエッジ画素を優先して探索を行う。図21は、補間エッジの接続先の探索例を示す図である。例えば、エッジ検出部16は、以下の(B1)〜(B3)の処理を行えばよい。
(Method for determining the position of the interpolation edge)
Then, when searching for the connection destination of the interpolation edge from the end point of the edge, the edge detection unit 16 preferentially searches for the edge pixel located in the extension direction of the edge. FIG. 21 is a diagram illustrating a search example of the connection destination of the interpolation edge. For example, the edge detection unit 16 may perform the following processes (B1) to (B3).
(B1)まず、エッジ検出部16は、エッジの延長方向に沿った直線上に位置するエッジ画素を探索する(図21(a)参照)。そして、上記の直線上にエッジ画素が存在する場合、エッジ検出部16は、検出されたエッジ画素を補間エッジの接続先として決定する。 (B1) First, the edge detection unit 16 searches for an edge pixel located on a straight line along the extending direction of the edge (see FIG. 21A). If an edge pixel exists on the straight line, the edge detection unit 16 determines the detected edge pixel as a connection destination of the interpolation edge.
(B2)次に、上記(B1)で補間エッジの接続先が検出できない場合、エッジ検出部16は、上記(B1)の直線を中心として、端点から所定角度の範囲に位置するエッジ画素を探索する(図21(b)参照)。そして、上記の範囲内にエッジ画素が存在する場合、エッジ検出部16は、検出されたエッジ画素を補間エッジの接続先として決定する。なお、上記の範囲から複数のエッジ画素が検出された場合、エッジ検出部16は、エッジの延長方向の直線と、端点およびエッジ画素を結ぶ直線のなす角度が最も小さくなるエッジ画素か、端点からの直線距離が最も小さくなるエッジ画素を補間エッジの接続先として決定すればよい。 (B2) Next, when the connection destination of the interpolation edge cannot be detected in (B1) above, the edge detection unit 16 searches for an edge pixel located within a predetermined angle range from the end point with the straight line in (B1) as the center. (See FIG. 21 (b)). When an edge pixel exists within the above range, the edge detection unit 16 determines the detected edge pixel as a connection destination of the interpolation edge. When a plurality of edge pixels are detected from the above range, the edge detection unit 16 determines whether the angle formed by the straight line between the edge extension direction and the straight line connecting the end point and the edge pixel is the smallest or from the end point. The edge pixel having the smallest linear distance may be determined as the connection destination of the interpolation edge.
(B3)さらに、上記(B2)で補間エッジの接続先が検出できない場合、エッジ検出部16は、上記(B1)の直線を中心として、上記(B2)よりも広い角度の範囲でエッジ画素を探索する(図21(c)参照)。そして、上記の範囲内にエッジ画素が存在する場合、エッジ検出部16は、検出されたエッジ画素を補間エッジの接続先として決定すればよい。 (B3) Further, when the connection destination of the interpolation edge cannot be detected in (B2), the edge detection unit 16 selects edge pixels in a wider angle range than (B2) with the straight line (B1) as the center. Search (see FIG. 21C). If an edge pixel exists within the above range, the edge detection unit 16 may determine the detected edge pixel as a connection destination of the interpolation edge.
上記の処理によれば、閉空間を形成するときに、エッジの延長方向に近いエッジ画素ほど補間エッジの接続先に決定されやすくなる。したがって、閉空間を形成するときに画像のエッジが比較的自然な状態で接続されるので、最終的なエッジの検出精度を改善することができる。 According to the above processing, when forming a closed space, an edge pixel closer to the edge extension direction is more easily determined as a connection destination of an interpolation edge. Therefore, since the edges of the image are connected in a relatively natural state when forming the closed space, the final edge detection accuracy can be improved.
<一の実施形態での特徴的処理5>
エッジ画素を検出した後に閉空間を形成するとき(#208)、近傍に別のエッジが存在しないエッジは消去することが好ましい一方で、1つの境界を断続的に検出しているエッジは連結して補間することが好ましい。
<Characteristic Process 5 in One Embodiment>
When a closed space is formed after detecting edge pixels (# 208), it is preferable to delete edges that do not have other edges in the vicinity, while edges that detect one boundary intermittently are connected. Are preferably interpolated.
そのため、図22に示すように、#208において、エッジ検出部16は、エッジ検出部16は、エッジの長さが閾値未満で所定範囲内に他のエッジ画素がない場合には、ノイズとみなしてエッジ画素を削除する。また、エッジ検出部16は、エッジの長さが閾値未満で所定範囲内に他のエッジ画素がある場合にはエッジ画素と他のエッジ画素とを連結して補間する。 Therefore, as shown in FIG. 22, in # 208, the edge detection unit 16 regards the edge detection unit 16 as noise when the edge length is less than the threshold and there is no other edge pixel within the predetermined range. To delete edge pixels. Further, when the edge length is less than the threshold value and there is another edge pixel within a predetermined range, the edge detection unit 16 connects the edge pixel and the other edge pixel to perform interpolation.
上記の処理により、ノイズのエッジが他のエッジに不自然に連結される場合や、逆に検出されるべきエッジが過剰に除去される場合が回避されるので、最終的なエッジの検出精度を改善することができる。 The above processing avoids cases where noise edges are unnaturally connected to other edges, or conversely, edges that should be detected are removed excessively. Can be improved.
<領域情報を用いた画像処理の例>
次に、領域情報を用いた画像処理(#105)について詳述する。例えば、#105でのCPU20は、以下の(1)〜(8)の画像処理を画像処理部19に実行させることができる。
<Example of image processing using region information>
Next, image processing (# 105) using region information will be described in detail. For example, the CPU 20 in # 105 can cause the image processing unit 19 to execute the following image processing (1) to (8).
(1:塗り絵用の元画像の生成)
例えば、CPU20は、領域情報(エッジ画像)を塗り絵用の元画像として出力してもよい。なお、画像処理部19は、必要に応じて線幅の正規化やスパイクノイズ除去などの処理をエッジ画像に施して塗り絵用の元画像を生成してもよい。
(1: Generation of original image for coloring)
For example, the CPU 20 may output the area information (edge image) as an original image for coloring. Note that the image processing unit 19 may generate an original image for coloring by performing processing such as line width normalization and spike noise removal on the edge image as necessary.
(2:注目領域のレタッチ)
画像処理部19は、入力画像の注目領域に対してレタッチを施してもよい。
(2: Retouching the attention area)
The image processing unit 19 may retouch the attention area of the input image.
一例として、画像処理部19は、注目領域の被写体を削除するとともに、削除で欠損した部分を補間する処理を行ってもよい(図23参照)。ここで、画像の補間は、周囲の領域の画素値で単純に補間してもよいが、例えば、河合紀彦 他,「パターン類似度に基づくエネルギー最小化による画像修復」 電子情報通信学会 技術研究報告,PRMU2006-106,Dec.2006に開示の手法を適用してもよい。上記の処理により、領域分割の結果を用いて後処理工程で入力画像の被写体を選択的に削除できるので、ユーザにとって好ましい画像を得ることができる。 As an example, the image processing unit 19 may perform a process of deleting a subject in a region of interest and interpolating a portion that has been lost due to the deletion (see FIG. 23). Here, the image may be simply interpolated with the pixel values of the surrounding area. For example, Norihiko Kawai et al., "Image restoration by energy minimization based on pattern similarity" IEICE Technical Report , PRMU2006-106, Dec.2006 may apply the disclosed method. As a result of the above processing, the subject of the input image can be selectively deleted in the post-processing step using the result of area division, so that an image preferable for the user can be obtained.
また、他の一例として、画像処理部19は、注目領域の被写体の位置を移動させる処理を行ってもよい(図24参照)。この場合、画像処理部19は、注目領域の被写体の位置をユーザの操作に応じて画像内で移動させる。そして、画像処理部19は、注目領域の被写体を移動先の位置に合成するとともに、画像の欠損部分(注目領域の移動元)を補間する。上記の処理により、領域分割の結果を用いて後処理工程で入力画像上の被写体の位置を調整できるので、ユーザにとって好ましい画像を得ることができる。 As another example, the image processing unit 19 may perform a process of moving the position of the subject in the attention area (see FIG. 24). In this case, the image processing unit 19 moves the position of the subject in the attention area in the image according to the user's operation. Then, the image processing unit 19 synthesizes the subject in the attention area at the position of the movement destination, and interpolates the missing portion of the image (the movement source of the attention area). With the above processing, the position of the subject on the input image can be adjusted in the post-processing step using the result of the region division, so that an image preferable for the user can be obtained.
また、他の一例として、画像処理部19は、注目領域の被写体に対して選択的にフィルタ処理を施してもよい。図25は、注目領域の被写体(人物)にぼかしフィルタをかけた例を示している。なお、注目領域に施すフィルタは、例えばノイズ除去フィルタ、エッジ強調フィルタ、モザイクフィルタなどであってもよい。上記の処理により、領域分割の結果を用いて後処理工程で入力画像上の任意の部分に所望の画像効果を付与できるので、ユーザにとって好ましい画像を得ることができる。 As another example, the image processing unit 19 may selectively perform a filtering process on the subject in the attention area. FIG. 25 shows an example in which a blur filter is applied to a subject (person) in the attention area. Note that the filter applied to the region of interest may be, for example, a noise removal filter, an edge enhancement filter, a mosaic filter, or the like. With the above processing, a desired image effect can be given to an arbitrary portion on the input image in the post-processing step using the result of region division, so that an image preferable for the user can be obtained.
(3:注目領域へのタグ情報の付与)
画像処理部19は、ユーザの指定した注目領域に対してタグ情報(メタデータ)を付与してもよい(図26参照)。タグ情報は、例えば、注目領域の属性(人名、山、建物等)やユーザのコメントを記述したテキスト情報や、領域の画像サイズ、画像のデータ量、色情報、入力画像上での領域の位置、などの画像情報を含む概念である。タグ情報のうち、テキスト情報は例えばユーザによって入力され、画像情報は例えば画像処理装置11によって生成される。なお、上記のタグ情報は、例えば、画像検索のツールや、ユーザのメモとして使用することができる。
(3: Attaching tag information to the attention area)
The image processing unit 19 may add tag information (metadata) to the attention area designated by the user (see FIG. 26). The tag information includes, for example, text information describing attributes of the attention area (person name, mountain, building, etc.) and user comments, area image size, image data amount, color information, and position of the area on the input image. This is a concept including image information such as. Of the tag information, text information is input by a user, for example, and image information is generated by, for example, the image processing apparatus 11. The tag information can be used as, for example, an image search tool or a user's memo.
一の実施形態では、領域分割の結果を用いて注目領域を簡単に指定できるので、ユーザは所望の被写体の領域に効率よくタグ情報を付与できる。 In one embodiment, since a region of interest can be easily specified using the result of region division, the user can efficiently add tag information to a desired subject region.
(4:認識対象の抽出処理)
画像処理部19は、領域分割の結果を用いて、入力画像から所定の認識対象を抽出する処理を実行してもよい。この場合、画像の特徴により認識対象か否かを判別する識別器を画像処理部19に予め準備する。上記の識別器は、例えば、ニューラルネットワークによる識別モデルや、サポートベクターマシンなどの公知のパターン認識手段で構成される。そして、画像処理部19は、入力画像の各領域をそれぞれ識別器に入力し、領域毎に認識対象であるか否かを判定する。そして、画像処理部19は、認識対象と判定された領域を示す表示を入力画像に重畳させて表示装置に表示させる。なお、画像内での認識対象の有無や認識対象の位置の情報は、例えば、画像のシーン認識や、類似画像の検索に用いることもできる。
(4: Recognition target extraction process)
The image processing unit 19 may execute a process of extracting a predetermined recognition target from the input image using the result of area division. In this case, a classifier that determines whether or not the image is a recognition target based on the characteristics of the image is prepared in the image processing unit 19 in advance. The classifier includes, for example, a known model recognition unit such as a discrimination model using a neural network or a support vector machine. Then, the image processing unit 19 inputs each area of the input image to the classifier, and determines whether each area is a recognition target. Then, the image processing unit 19 superimposes a display indicating an area determined as a recognition target on the input image and causes the display device to display the display. The information on the presence / absence of the recognition target in the image and the position of the recognition target can also be used, for example, for scene recognition of the image and search for similar images.
図27は、認識対象の抽出処理の一例を示す図である。図27では、看板を認識対象とする識別器を用いて、入力画像から看板に対応する領域を抽出し、その抽出結果の画像を表示する例を示している。なお、識別器による認識対象は上記に限定されることなく適宜変更することができる。例えば、識別器は、文字、バーコードや、特定種類の被写体(金網など)を認識対象とするものであってもよい。 FIG. 27 is a diagram illustrating an example of recognition target extraction processing. FIG. 27 shows an example in which an area corresponding to a signboard is extracted from an input image using an identifier that recognizes the signboard, and an image of the extraction result is displayed. The recognition target by the classifier is not limited to the above and can be changed as appropriate. For example, the discriminator may recognize characters, barcodes, or a specific type of subject (such as a wire mesh) as a recognition target.
一の実施形態では、領域分割の結果を用いて領域毎に認識対象を判定することで、効率よく認識対象の抽出を行うことができる。 In one embodiment, the recognition target can be efficiently extracted by determining the recognition target for each region using the result of region division.
(5:立体画像復元時の対応点の探索)
各々の撮影位置が異なる複数の画像から立体画像を復元するときに、画像処理部19は、領域分割の結果を用いて画像間の対応点を探索してもよい。
(5: Search for corresponding points at the time of stereoscopic image restoration)
When restoring a stereoscopic image from a plurality of images with different shooting positions, the image processing unit 19 may search for corresponding points between the images using the result of region division.
図28は、立体画像復元時の対応点の探索例を示す図である。一般に立体画像を復元するときには、撮影位置の異なる画像間でそれぞれ対応点を求め、対応点間の位置変化から被写体の三次元形状を推定する。図28の例では、画像処理部19は、例えば色成分ヒストグラムのマッチング等の公知の手法によって、2画像間で同じ物体の領域を探索する。そして、画像処理部19は、2画像間の同じ物体の領域から対応点を探索する。一の実施形態では、領域分割の結果を用いて、対応する物体の範囲内から対応点を探索するので、画像全体から対応点を探索する場合と比べて、効率よく対応点を探索できる。 FIG. 28 is a diagram illustrating a search example of corresponding points at the time of restoring a stereoscopic image. In general, when a stereoscopic image is restored, corresponding points are obtained between images at different shooting positions, and the three-dimensional shape of the subject is estimated from the change in position between the corresponding points. In the example of FIG. 28, the image processing unit 19 searches for the same object region between two images by a known method such as matching of color component histograms. Then, the image processing unit 19 searches for corresponding points from the same object region between the two images. In one embodiment, the corresponding points are searched from the range of the corresponding object using the result of the region division, so that the corresponding points can be searched more efficiently than in the case where the corresponding points are searched from the entire image.
(6:画像の類否判定)
また、画像処理部19は、領域分割の結果を用いて2画像間の類否を判定してもよい。
(6: Image similarity determination)
Further, the image processing unit 19 may determine the similarity between two images using the result of area division.
図29は、画像の類否判定の例を示す図である。ここで、類否判定の基準となる入力画像を基準画像と称し、類否を判定される入力画像を処理対象画像と称する。なお、基準画像および処理対象画像には、それぞれ領域分割処理が施されることを前提とする。 FIG. 29 is a diagram illustrating an example of image similarity determination. Here, an input image that is a criterion for similarity determination is referred to as a reference image, and an input image for which similarity is determined is referred to as a processing target image. It is assumed that the reference image and the processing target image are each subjected to area division processing.
図29の例では、まず、基準画像の注目領域を、処理対象画像の各領域とマッチングするマッチング処理を画像処理部19が実行する。このマッチング処理では、画像処理部19は、対比する2領域の相関の高さを示す評価値を求めるものとする。基準画像の注目領域と処理対象画像の領域とが合致する場合、画像処理部19は相対的に高い評価値を算出する。例えば、上記の領域間のマッチング処理は、例えばコーナーを特徴量とするマッチングや、色成分ヒストグラムによるマッチングなどの公知の手法を適用できる。 In the example of FIG. 29, first, the image processing unit 19 executes matching processing for matching the attention area of the reference image with each area of the processing target image. In this matching process, the image processing unit 19 obtains an evaluation value indicating the level of correlation between the two areas to be compared. When the attention area of the reference image matches the area of the processing target image, the image processing unit 19 calculates a relatively high evaluation value. For example, for the matching processing between the above-described regions, for example, a known method such as matching using a corner as a feature amount or matching using a color component histogram can be applied.
ここで、画像処理部19は、領域のサイズや画像の差違に応じて、上記の評価値を重み付けする。例えば、面積の大きい領域ほど画像の類否に大きな影響を与えるため、画像処理部19は、マッチングする領域の面積が大きいほど評価値の重み係数を大きくする。また、基準画像の注目領域の位置と、処理対象画像で対応する領域の位置とが画像上で乖離している場合、物体の位置ズレを画像の類否に反映させるため、画像処理部19は領域位置の乖離量の大きさに応じて評価値の重み係数を小さくする。 Here, the image processing unit 19 weights the evaluation value according to the size of the region or the difference in the images. For example, since the region having a larger area has a greater influence on the similarity of the image, the image processing unit 19 increases the weight coefficient of the evaluation value as the area of the matching region is larger. In addition, when the position of the attention area in the reference image and the position of the corresponding area in the processing target image are deviated on the image, the image processing unit 19 reflects the positional deviation of the object in the similarity of the image. The weighting coefficient of the evaluation value is reduced in accordance with the size of the region position deviation.
また、画像処理部19は、マッチング処理のときに、比較する領域の一方に対して、拡大、縮小、回転などの幾何学的変換を行ってもよい。上記の幾何学的変換により領域のマッチングが成功した場合、物体のサイズや向きの違いを画像の類否に反映させるため、画像処理部19は幾何学的変換の度合いの大きさに応じて評価値の重み係数を小さくする。 Further, the image processing unit 19 may perform geometric transformation such as enlargement, reduction, and rotation on one of the areas to be compared during the matching process. When the region matching is successful by the above geometric transformation, the image processing unit 19 evaluates according to the degree of the geometric transformation in order to reflect the difference in the size and orientation of the object in the similarity of the image. Decrease the value weighting factor.
画像処理部19は、基準画像の全ての領域を順次注目領域に指定し、処理対象画像の領域とのマッチング処理で算出された評価値をそれぞれ求める。そして、画像処理部19は、求めた評価値による演算結果(例えば、領域ごとに算出した評価値の積算値をパラメータとする値)が閾値以上の場合には処理対象画像が基準画像に類似すると判定し、求めた評価値による演算結果が閾値未満の場合には処理対象画像が基準画像に類似しないと判定する。 The image processing unit 19 sequentially designates all areas of the reference image as attention areas, and obtains evaluation values calculated by matching processing with the area of the processing target image. Then, the image processing unit 19 determines that the processing target image is similar to the reference image when a calculation result based on the obtained evaluation value (for example, a value using an integrated value of evaluation values calculated for each region as a parameter) is equal to or larger than a threshold value. When the calculation result based on the obtained evaluation value is less than the threshold value, it is determined that the processing target image is not similar to the reference image.
図29の例において、処理対象画像1のように基準画像と類似する画像は、基準画像と多くの領域が合致するため評価値の演算結果は高い値を示す。一方、処理対象画像2のように、基準画像と大きく異なる画像は、基準画像とほとんどの領域が合致しないため、評価値の演算結果は低い値を示す。よって、一の実施形態では、上記の評価値の演算結果により、基準画像との総合的な類否を判定できる。 In the example of FIG. 29, an image similar to the reference image such as the processing target image 1 has a high evaluation value calculation result because many areas match the reference image. On the other hand, an image that is significantly different from the reference image, such as the processing target image 2, has a low value in the evaluation value calculation result because most of the regions do not match the reference image. Therefore, in one embodiment, comprehensive similarity with the reference image can be determined based on the calculation result of the evaluation value.
(7:画像圧縮)
また、画像処理部19は、領域分割の結果を用いて、分割された領域単位で画像の圧縮率を変化させてもよい。例えば、画像処理部19は注目領域の画像の圧縮率を低くし、注目領域以外の画像の圧縮率を高くしてもよい(図30参照)。上記の場合には、ユーザが注目する主要被写体の情報を保持しつつ、画像全体のデータ量を効率よく削減することができる。なお、画像の圧縮率は、ユーザの指定や、ROI(Region of Interest)の領域内での注目度の平均値や、領域内での高周波数成分の量に応じて変更してもよい。
(7: Image compression)
Further, the image processing unit 19 may change the compression rate of the image for each divided region using the result of the region division. For example, the image processing unit 19 may decrease the compression ratio of the image in the attention area and increase the compression ratio of the image other than the attention area (see FIG. 30). In the above case, it is possible to efficiently reduce the data amount of the entire image while maintaining the information of the main subject that the user pays attention to. Note that the compression rate of the image may be changed according to the designation of the user, the average value of the attention degree in the region of ROI (Region of Interest), or the amount of high frequency components in the region.
(8:動きベクトルの演算)
また、画像処理部19は、領域分割の結果を用いて、動画撮影時に分割された領域単位で被写体の動きベクトルを求めてもよい(図31参照)。上記の場合には、通常のブロックよりも大きなサイズの領域単位でマッチングを行うことでマッチングの回数を少なくできる。また、領域の面積や形状の特徴を考慮してマッチングを行うことで、フレーム間で大きな動きがある場合にも誤検出のおそれを低減させることができる。
(8: Motion vector calculation)
Further, the image processing unit 19 may obtain the motion vector of the subject in units of areas divided at the time of moving image shooting using the result of area division (see FIG. 31). In the above case, the number of times of matching can be reduced by performing matching in a region unit having a size larger than that of a normal block. In addition, by performing matching in consideration of the area area and shape characteristics, it is possible to reduce the possibility of erroneous detection even when there is a large movement between frames.
<他の実施形態の説明>
図32は、他の実施形態での撮像装置の構成例を示す図である。他の実施形態は、上記の一の実施形態の画像処理装置11を電子カメラ31に実装した例であって、電子カメラ31の撮像部33から画像処理装置が入力画像を取得する。
<Description of other embodiments>
FIG. 32 is a diagram illustrating a configuration example of an imaging apparatus according to another embodiment. The other embodiment is an example in which the image processing apparatus 11 of the above-described one embodiment is mounted on the electronic camera 31, and the image processing apparatus acquires an input image from the imaging unit 33 of the electronic camera 31.
電子カメラ31は、撮影レンズ32と、撮像部33と、画像処理エンジン34と、第1メモリ35および第2メモリ36と、記録I/F37と、操作部38とを備えている。ここで、撮像部33、第1メモリ35、第2メモリ36、記録I/F37および操作部38は、それぞれ画像処理エンジン34と接続されている。 The electronic camera 31 includes a photographic lens 32, an imaging unit 33, an image processing engine 34, a first memory 35 and a second memory 36, a recording I / F 37, and an operation unit 38. Here, the imaging unit 33, the first memory 35, the second memory 36, the recording I / F 37, and the operation unit 38 are each connected to the image processing engine 34.
撮像部33は、撮影レンズ32によって結像された被写体の像を撮像(撮影)するモジュールである。例えば、撮像部33は、光電変換を行う撮像素子と、アナログ信号処理を行うアナログフロントエンド回路と、A/D変換およびデジタル信号処理を行うデジタルフロントエンド回路とを含んでいる。 The imaging unit 33 is a module that captures (captures) an image of a subject formed by the photographing lens 32. For example, the imaging unit 33 includes an imaging device that performs photoelectric conversion, an analog front-end circuit that performs analog signal processing, and a digital front-end circuit that performs A / D conversion and digital signal processing.
画像処理エンジン34は、電子カメラ31の動作を統括的に制御するプロセッサである。例えば、画像処理エンジン34は、撮影モードにおいて、ユーザの撮影指示入力に応じて、画像を撮像部33に撮像させる。また、画像処理エンジン34は、プログラムの実行により、一の実施形態の画像処理装置11におけるバンドパス処理部14、ベクトル生成部15、エッジ検出部16、統合処理部17、画像処理部19、CPU20として動作する。 The image processing engine 34 is a processor that comprehensively controls the operation of the electronic camera 31. For example, the image processing engine 34 causes the imaging unit 33 to capture an image in response to a user's shooting instruction input in the shooting mode. In addition, the image processing engine 34 is configured to execute the program by the bandpass processing unit 14, the vector generation unit 15, the edge detection unit 16, the integration processing unit 17, the image processing unit 19, and the CPU 20 in the image processing apparatus 11 of the embodiment. Works as.
第1メモリ35は、画像のデータ等を一時的に記憶するメモリであって、例えば揮発性の記憶媒体であるSDRAMである。この第1メモリ35は、一の実施形態の画像処理装置11における画像蓄積部13、領域情報蓄積部18として動作する。 The first memory 35 is a memory that temporarily stores image data and the like, and is, for example, an SDRAM that is a volatile storage medium. The first memory 35 operates as the image storage unit 13 and the region information storage unit 18 in the image processing apparatus 11 of one embodiment.
第2メモリ36は、画像処理エンジン34の実行するプログラム等を記憶するメモリであって、例えばフラッシュメモリ等の不揮発性メモリである。この第2メモリ36は、一の実施形態の画像処理装置11におけるプログラム記憶部21として動作する。 The second memory 36 is a memory for storing a program executed by the image processing engine 34 and is a non-volatile memory such as a flash memory, for example. The second memory 36 operates as the program storage unit 21 in the image processing apparatus 11 of one embodiment.
記録I/F37は、不揮発性の記憶媒体39を接続するためのコネクタを有している。そして、記録I/F37は、コネクタに接続された記憶媒体39に対して画像のデータの書き込み/読み込みを実行する。上記の記憶媒体39は、例えば、ハードディスクや、半導体メモリを内蔵したメモリカードである。なお、図32では記憶媒体39の一例としてメモリカードを図示する。 The recording I / F 37 has a connector for connecting a nonvolatile storage medium 39. The recording I / F 37 writes / reads image data to / from the storage medium 39 connected to the connector. The storage medium 39 is, for example, a hard disk or a memory card incorporating a semiconductor memory. In FIG. 32, a memory card is illustrated as an example of the storage medium 39.
操作部38は、ユーザの操作を受け付ける複数のスイッチを有している。この操作部38は、例えば、記録用の静止画像の撮影指示を受け付けるレリーズ釦などを含む。 The operation unit 38 has a plurality of switches that accept user operations. The operation unit 38 includes, for example, a release button for receiving a recording still image shooting instruction.
以下、他の実施形態での電子カメラ31の動作例を簡単に説明する。一例として、他の実施形態での領域分割処理は、被写体検出や、オートフォーカス(AF)のAF領域検出の前処理として実行される。 Hereinafter, an operation example of the electronic camera 31 in another embodiment will be briefly described. As an example, the area division process in another embodiment is executed as a pre-process for subject detection and AF area detection for autofocus (AF).
他の実施形態の電子カメラ31では、撮像部33が画像を撮影する。これにより、図3の#101の処理に相当する入力画像の取得が行われる。なお、入力画像は、ユーザの撮影指示に応じて取得された静止画像であってもよく、撮影モード下で所定の時間間隔ごとに取得される観測用の画像(スルー画像)であってもよい。 In the electronic camera 31 of another embodiment, the imaging unit 33 captures an image. Thereby, an input image corresponding to the process of # 101 in FIG. 3 is acquired. Note that the input image may be a still image acquired in accordance with a user's shooting instruction, or may be an image for observation (through image) acquired at predetermined time intervals in the shooting mode. .
そして、画像処理エンジン34は、図3の#102〜#105の処理を実行し、入力画像の領域分割を行う。なお、画像処理エンジン34は、#103のエッジ検出処理において、図5の#201〜#208の処理と、上記の特徴的処理1〜5の少なくとも1つとを実行する。かかる他の実施形態においても、上記の一の実施形態とほぼ同様の効果を得ることができる。 Then, the image processing engine 34 executes the processes of # 102 to # 105 in FIG. 3 and divides the input image into regions. The image processing engine 34 performs the processes of # 201 to # 208 in FIG. 5 and at least one of the characteristic processes 1 to 5 in the edge detection process of # 103. In such other embodiments, substantially the same effects as those of the above-described one embodiment can be obtained.
<実施形態の補足事項>
上記の特徴的処理3〜5は、エッジフローベクトルによるエッジ検出処理に限定されず、例えば微分フィルタ等による他の公知のエッジ検出処理に組み合わせることもできる。
<Supplementary items of the embodiment>
The characteristic processes 3 to 5 described above are not limited to the edge detection process using the edge flow vector, and may be combined with other known edge detection processes using a differential filter, for example.
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲が、その精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図する。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずであり、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物によることも可能である。 From the above detailed description, features and advantages of the embodiments will become apparent. It is intended that the scope of the claims extend to the features and advantages of the embodiments as described above without departing from the spirit and scope of the right. Further, any person having ordinary knowledge in the technical field should be able to easily come up with any improvements and modifications, and there is no intention to limit the scope of the embodiments having the invention to those described above. It is also possible to use appropriate improvements and equivalents within the scope disclosed in.
11…画像処理装置、12…入出力I/F、13…画像蓄積部、14…バンドパス処理部、15…ベクトル生成部、16…エッジ検出部、17…統合処理部、18…領域情報蓄積部、19…画像処理部、20…CPU、21…プログラム記憶部、22…入力デバイス、23…出力デバイス、24…データ読込部 DESCRIPTION OF SYMBOLS 11 ... Image processing apparatus, 12 ... Input / output I / F, 13 ... Image storage part, 14 ... Band pass processing part, 15 ... Vector generation part, 16 ... Edge detection part, 17 ... Integration processing part, 18 ... Area information storage , 19 ... Image processing unit, 20 ... CPU, 21 ... Program storage unit, 22 ... Input device, 23 ... Output device, 24 ... Data reading unit
Claims (14)
前記入力画像の注目画素につき、画像の変化の方向を示す確率場と画像の変化の強さを示すエネルギー場とを各方向で求め、前記確率場および前記エネルギー場を用いて前記注目画素のエッジフローベクトルを生成するベクトル生成部と、
前記入力画像の各位置でそれぞれ生成した前記エッジフローベクトルを合成し、合成後の前記エッジフローベクトルが画像内で対向する位置から前記入力画像のエッジ画素を検出するエッジ検出部と、
前記注目画素の周方向に第1範囲と、前記第1範囲よりも前記確率場が大きい第2範囲とを設定する設定部と、
前記第2範囲を複数の領域に分割する分割部と、を有し、
前記ベクトル生成部は、前記複数の領域でそれぞれ前記エッジフローベクトルを生成する画像処理装置。 An acquisition unit for acquiring an input image;
For each target pixel of the input image, a random field indicating the direction of image change and an energy field indicating the intensity of the image change are obtained in each direction, and the edge of the target pixel is obtained using the random field and the energy field. A vector generation unit for generating a flow vector;
An edge detection unit that synthesizes the edge flow vectors generated at each position of the input image, and detects edge pixels of the input image from a position where the combined edge flow vectors oppose each other in the image;
A setting unit for setting a first range in the circumferential direction of the target pixel and a second range having a larger random field than the first range;
A dividing unit that divides the second range into a plurality of regions,
The vector generation unit is an image processing device that generates the edge flow vector in each of the plurality of regions .
前記入力画像の注目画素につき、画像の変化の方向を示す確率場と画像の変化の強さを示すエネルギー場とを各方向で求め、前記確率場および前記エネルギー場を用いて前記注目画素のエッジフローベクトルを生成するベクトル生成部と、
前記入力画像の各位置でそれぞれ生成した前記エッジフローベクトルを合成し、合成後の前記エッジフローベクトルが画像内で対向する位置から前記入力画像のエッジ画素を検出するエッジ検出部と、
前記注目画素から第1距離の画素と、前記注目画素から前記第1距離とは異なる第2距離の画素とを決定する決定部と、を有し、
前記ベクトル生成部は、前記注目画素から前記第1距離の画素を用いて得られた第1エッジフローベクトルと、前記注目画素から前記第2距離の画素を用いて得られた第2エッジフローベクトルとを生成する画像処理装置。 An acquisition unit for acquiring an input image;
For each target pixel of the input image, a random field indicating the direction of image change and an energy field indicating the intensity of the image change are obtained in each direction, and the edge of the target pixel is obtained using the random field and the energy field. A vector generation unit for generating a flow vector;
An edge detection unit that synthesizes the edge flow vectors generated at each position of the input image, and detects edge pixels of the input image from a position where the combined edge flow vectors oppose each other in the image;
A determination unit that determines a pixel at a first distance from the target pixel and a pixel at a second distance different from the first distance from the target pixel;
The vector generation unit includes a first edge flow vector obtained using the pixel at the first distance from the target pixel, and a second edge flow vector obtained using the pixel at the second distance from the target pixel. An image processing apparatus that generates
前記注目画素から第1距離の画素と、前記注目画素から前記第1距離とは異なる第2距離の画素とを決定する決定部を有し、
前記ベクトル生成部は、前記注目画素から前記第1距離の画素を用いて得られた第1エッジフローベクトルと、前記注目画素から前記第2距離の画素を用いて得られた第2エッジフローベクトルとを生成する画像処理装置。 The image processing apparatus according to claim 1.
A determination unit that determines a pixel at a first distance from the target pixel and a pixel at a second distance different from the first distance from the target pixel;
The vector generation unit includes a first edge flow vector obtained using the pixel at the first distance from the target pixel, and a second edge flow vector obtained using the pixel at the second distance from the target pixel. An image processing apparatus that generates
前記エッジ検出部のエッジ検出結果を用いて領域分割された画像に対して、画像処理を施す画像処理部をさらに有する画像処理装置。 The image processing apparatus according to any one of claims 1 to 3 ,
An image processing apparatus further comprising an image processing unit that performs image processing on an image divided into regions using the edge detection result of the edge detection unit.
前記画像処理部は、前記領域分割された画像を用いて塗り絵用の元画像を生成する画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing device that generates an original image for coloring using the image obtained by the region division.
前記画像処理部は、前記領域分割された画像に対して、注目領域の被写体の削除、注目領域の被写体の移動、注目領域への局所的なフィルタ処理の少なくとも1つを行う画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing device that performs at least one of deletion of a subject in a region of interest, movement of a subject in a region of interest, and local filter processing to a region of interest for the region-divided image.
前記画像処理部は、前記領域分割された画像の注目領域に対して、タグ情報を付与する画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing device that assigns tag information to a region of interest of the region-divided image.
前記画像処理部は、前記領域分割された画像を用いて、所定の認識対象を抽出する画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing apparatus that extracts a predetermined recognition target using the region-divided image.
前記画像処理部は、前記領域分割された画像を用いて、立体画像を復元するときの対応点を探索する画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit searches for corresponding points when a stereoscopic image is restored using the region-divided image.
前記画像処理部は、それぞれ領域分割された基準画像および処理対象画像を領域単位でマッチングして、前記基準画像に対する前記処理対象画像の類否を判定する画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing apparatus that determines a similarity of the processing target image with respect to the reference image by matching each region-divided reference image and processing target image in units of regions.
前記画像処理部は、前記領域分割された画像に対して、領域単位で圧縮率を変化させた画像圧縮を行う画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing apparatus that performs image compression by changing a compression rate in units of regions with respect to the region-divided images.
前記画像処理部は、前記領域分割された画像を用いて、領域単位で動きベクトルを求める画像処理装置。 The image processing apparatus according to claim 4 .
The image processing unit is an image processing apparatus that obtains a motion vector in units of areas using the image obtained by dividing the area.
前記入力画像の注目画素につき、画像の変化の方向を示す確率場と画像の変化の強さを示すエネルギー場とを求め、前記確率場および前記エネルギー場を用いて前記注目画素のエッジフローベクトルを生成するベクトル生成処理と、
前記入力画像の各位置でそれぞれ生成した前記エッジフローベクトルを合成し、合成後の前記エッジフローベクトルが画像内で対向する位置から前記入力画像のエッジ画素を検出するエッジ検出処理と、
前記注目画素の周方向に第1範囲と、前記第1範囲よりも前記確率場が大きい第2範囲とを設定する設定処理と、
前記第2範囲を複数の領域に分割する分割処理と、をコンピュータに実行させ、
前記ベクトル生成処理では、前記複数の領域でそれぞれ前記エッジフローベクトルを生成するプログラム。 Processing to acquire the input image;
For the target pixel of the input image, a random field indicating the direction of the image change and an energy field indicating the intensity of the image change are obtained, and an edge flow vector of the target pixel is determined using the random field and the energy field. A vector generation process to generate;
Combining the edge flow vectors generated at each position of the input image, and detecting edge pixels of the input image from positions where the combined edge flow vectors oppose each other in the image; and
A setting process for setting a first range in the circumferential direction of the target pixel and a second range having a larger random field than the first range;
Dividing the second range into a plurality of regions, and causing a computer to execute the division processing,
In the vector generation process, a program for generating the edge flow vector in each of the plurality of regions .
前記入力画像の注目画素につき、画像の変化の方向を示す確率場と画像の変化の強さを示すエネルギー場とを求め、前記確率場および前記エネルギー場を用いて前記注目画素のエッジフローベクトルを生成するベクトル生成処理と、
前記入力画像の各位置でそれぞれ生成した前記エッジフローベクトルを合成し、合成後の前記エッジフローベクトルが画像内で対向する位置から前記入力画像のエッジ画素を検出するエッジ検出処理と、
前記注目画素から第1距離の画素と、前記注目画素から前記第1距離とは異なる第2距離の画素とを決定する決定処理と、をコンピュータに実行させ、
前記ベクトル生成処理では、前記注目画素から前記第1距離の画素を用いて得られた第1エッジフローベクトルと、前記注目画素から前記第2距離の画素を用いて得られた第2エッジフローベクトルとを生成するプログラム。
Processing to acquire the input image;
For the target pixel of the input image, a random field indicating the direction of the image change and an energy field indicating the intensity of the image change are obtained, and an edge flow vector of the target pixel is determined using the random field and the energy field. A vector generation process to generate;
Combining the edge flow vectors generated at each position of the input image, and detecting edge pixels of the input image from positions where the combined edge flow vectors oppose each other in the image; and
A determination process for determining a pixel at a first distance from the target pixel and a pixel at a second distance different from the first distance from the target pixel;
In the vector generation process, a first edge flow vector obtained using the pixel at the first distance from the target pixel and a second edge flow vector obtained using the pixel at the second distance from the target pixel. And a program that generates .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012208502A JP6068896B2 (en) | 2012-09-21 | 2012-09-21 | Image processing apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012208502A JP6068896B2 (en) | 2012-09-21 | 2012-09-21 | Image processing apparatus and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014063377A JP2014063377A (en) | 2014-04-10 |
JP6068896B2 true JP6068896B2 (en) | 2017-01-25 |
Family
ID=50618548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012208502A Active JP6068896B2 (en) | 2012-09-21 | 2012-09-21 | Image processing apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6068896B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102249831B1 (en) * | 2014-09-26 | 2021-05-10 | 삼성전자주식회사 | image generation apparatus and method for generating 3D panorama image |
CN105989174B (en) * | 2015-03-05 | 2019-11-01 | 欧姆龙株式会社 | Region-of-interest extraction element and region-of-interest extracting method |
CN111612834B (en) * | 2017-07-19 | 2023-06-30 | 创新先进技术有限公司 | Method, device and equipment for generating target image |
JP2021012093A (en) * | 2019-07-05 | 2021-02-04 | 住友ゴム工業株式会社 | Tire grounding state observation device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08116540A (en) * | 1994-10-14 | 1996-05-07 | Sanyo Electric Co Ltd | Image coder and image decoder using area division |
JP3415700B2 (en) * | 1995-03-31 | 2003-06-09 | 株式会社エム・シー・シー | Closed area extraction device |
JP2000293696A (en) * | 1999-04-07 | 2000-10-20 | Matsushita Electric Ind Co Ltd | Picture recognizing device |
JP2007141222A (en) * | 2005-10-19 | 2007-06-07 | Keyence Corp | Image processor and image processing method |
JP4859025B2 (en) * | 2005-12-16 | 2012-01-18 | 株式会社リコー | Similar image search device, similar image search processing method, program, and information recording medium |
JP2008146278A (en) * | 2006-12-08 | 2008-06-26 | National Institute Of Advanced Industrial & Technology | Cell outline extraction device, cell outline extraction method and program |
US8485975B2 (en) * | 2010-06-07 | 2013-07-16 | Atheropoint Llc | Multi-resolution edge flow approach to vascular ultrasound for intima-media thickness (IMT) measurement |
JP5439277B2 (en) * | 2010-05-11 | 2014-03-12 | 日本電信電話株式会社 | Position / orientation measuring apparatus and position / orientation measuring program |
-
2012
- 2012-09-21 JP JP2012208502A patent/JP6068896B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014063377A (en) | 2014-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101709380B1 (en) | Image processing apparatus, image processing method and program thereof | |
JP5908599B2 (en) | Multispectral imaging system | |
JP4712487B2 (en) | Image processing method and apparatus, digital camera apparatus, and recording medium recording image processing program | |
JP5554984B2 (en) | Pattern recognition method and pattern recognition apparatus | |
CN111583097A (en) | Image processing method, image processing device, electronic equipment and computer readable storage medium | |
WO2016155377A1 (en) | Picture display method and device | |
JP4911191B2 (en) | Image processing apparatus and image processing program | |
CN107944403B (en) | Method and device for detecting pedestrian attribute in image | |
US20130215234A1 (en) | Method and apparatus for stereo matching | |
JP6068896B2 (en) | Image processing apparatus and program | |
JP6068895B2 (en) | Image processing apparatus and program | |
KR20130120175A (en) | Apparatus, method and computer readable recording medium for generating a caricature automatically | |
JP2016505185A (en) | Image processor having edge selection function | |
JP5656768B2 (en) | Image feature extraction device and program thereof | |
CN116385546A (en) | Multi-mode feature fusion method for simultaneously segmenting and detecting grabbing pose | |
CN111079521A (en) | Three-dimensional modeling face recognition method, storage medium, embedded device and system | |
CN112288817B (en) | Three-dimensional reconstruction processing method and device based on image | |
JP6150419B2 (en) | Camera and program | |
JP4888111B2 (en) | Subject recognition device, image search method, and subject recognition program | |
JP2011170554A (en) | Object recognition device, object recognition method, and object recognition program | |
CN112580544A (en) | Image recognition method, device and medium and electronic equipment thereof | |
JP5865687B2 (en) | Image feature extraction device and program thereof | |
JP4803148B2 (en) | Binocular position detection method and detection apparatus for human face image | |
JP5463688B2 (en) | Focus evaluation device, camera and program | |
KR20120077422A (en) | Apparatus and method for determining symmetry of face |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A625 | Written request for application examination (by other person) |
Free format text: JAPANESE INTERMEDIATE CODE: A625 Effective date: 20150806 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160616 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160628 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160826 |
|
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: 20161129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6068896 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |