JP6365117B2 - Information processing apparatus, image determination method, and program - Google Patents
Information processing apparatus, image determination method, and programInfo
- Publication number
- JP6365117B2 JP6365117B2 JP2014171298A JP2014171298A JP6365117B2 JP 6365117 B2 JP6365117 B2 JP 6365117B2 JP 2014171298 A JP2014171298 A JP 2014171298A JP 2014171298 A JP2014171298 A JP 2014171298A JP 6365117 B2 JP6365117 B2 JP 6365117B2
- Authority
- JP
- Japan
- Prior art keywords
- feature
- image
- distance
- group
- region
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 118
- 230000010365 information processing Effects 0.000 title claims description 17
- 238000004364 calculation method Methods 0.000 claims description 329
- 230000008569 process Effects 0.000 claims description 82
- 238000012545 processing Methods 0.000 description 60
- 230000004048 modification Effects 0.000 description 36
- 238000012986 modification Methods 0.000 description 36
- 235000019557 luminance Nutrition 0.000 description 32
- 230000006870 function Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 27
- 238000004891 communication Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 9
- 239000000284 extract Substances 0.000 description 9
- 230000006872 improvement Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 210000001525 retina Anatomy 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Image Analysis (AREA)
Description
本発明は、情報処理装置、画像判定方法、及びプログラムに関する。 The present invention relates to an information processing apparatus, an image determination method, and a program.
様々な分野で画像のマッチング技術が広く利用されるようになってきた。例えば、顔認証や生体認証の分野では、可視光カメラや赤外線カメラで撮像した画像とテンプレート画像とをマッチングする技術が利用されている。より一般的な用途では、カメラ付き携帯端末やデジタルカメラで撮像した画像とランドマークの画像とをマッチングする技術が利用されている。 Image matching technology has been widely used in various fields. For example, in the fields of face authentication and biometric authentication, a technique for matching an image captured with a visible light camera or an infrared camera and a template image is used. In a more general application, a technique for matching an image captured by a mobile terminal with a camera or a digital camera with a landmark image is used.
画像同士のマッチングには、例えば、入力画像の特徴点における特徴量(以下、局所特徴量)と、参照画像の特徴点における局所特徴量とを比較して、入力画像の特徴点に対応する参照画像の特徴点(以下、対応点)を探索する手法が利用される。探索により発見された対応点の集合を統計処理することで入力画像中における参照画像の存在や参照画像の位置を認識できる。統計処理の一例として、参照画像内に設定した基準点と各特徴点との相対位置を保持しておき、対応点の候補として抽出された各特徴点からの基準点の位置に投票し、その投票数の集計値を閾値判定する処理方法が提案されている。 For matching between images, for example, a feature amount at a feature point of an input image (hereinafter referred to as a local feature amount) is compared with a local feature amount at a feature point of a reference image, and a reference corresponding to the feature point of the input image is compared. A technique for searching for feature points (hereinafter referred to as corresponding points) of an image is used. By statistically processing the set of corresponding points found by the search, it is possible to recognize the presence of the reference image and the position of the reference image in the input image. As an example of statistical processing, the relative position between the reference point set in the reference image and each feature point is held, and the position of the reference point from each feature point extracted as a corresponding point candidate is voted, A processing method for determining a threshold value of the total number of votes has been proposed.
対応点の探索には、例えば、SIFT(Scale-Invariant Feature Transform)、SURF(Speeded Up Robust Features)、BRIEF(Binary Robust Independent Elementary Features)などの特徴が利用される。SIFTやSURFを利用すると高精度に対応点を検出することができる。但し、SIFTやSURFの局所特徴量はデ−タサイズが大きく、SIFTやSURFを利用すると探索時の計算負荷が高くなる。 For the search for the corresponding points, for example, features such as SIFT (Scale-Invariant Feature Transform), SURF (Speeded Up Robust Features), BREF (Binary Robust Independent Elementary Features) are used. When SIFT or SURF is used, the corresponding points can be detected with high accuracy. However, the local feature amount of SIFT or SURF has a large data size, and the use of SIFT or SURF increases the calculation load during search.
BRIEFは、各特徴点周囲の特徴領域に設定された複数の画素ペアのそれぞれについて計算された画素間の輝度差に基づく局所特徴量で表現される。例えば、輝度差の符号(正負)に対応するビット値の集合が局所特徴量となる。そのため、BRIEFはSIFTやSURFに比べて少ない計算量で高速に抽出することができる。つまり、BRIEFを利用すれば、サーバ装置などに比べて計算能力の低い携帯端末でも入力画像から高速に局所特徴量を抽出することが可能になる。 BRIEF is expressed by a local feature amount based on a luminance difference between pixels calculated for each of a plurality of pixel pairs set in a feature region around each feature point. For example, a set of bit values corresponding to the sign (positive / negative) of the luminance difference is the local feature amount. Therefore, BRIEF can be extracted at a high speed with a small amount of calculation compared to SIFT and SURF. In other words, if BREF is used, a local feature amount can be extracted from an input image at high speed even with a portable terminal having a lower calculation capability than a server device or the like.
BRIEFと同様に画素間の輝度差に基づく局所特徴量を用いて画像の特徴を表現する他の特徴としては、例えば、ORB(Oriented Fast and Rotated BRIEF)やFREAK(Fast Retina Keypoint)がある。ORBは、画素ペアの配置を決める際に多数の画像に基づく学習を利用する。FREAKは、画素ペアの配置を決める際に人間の網膜パターンに関する情報を利用する。ORBやFREAKを利用した場合も入力画像から高速に局所特徴量を抽出することができる。 Other features that express the features of an image using local feature amounts based on the luminance difference between pixels as in BREF include, for example, ORB (Oriented Fast and Rotated BRIEF) and FRAK (Fast Retina Keypoint). The ORB uses learning based on a large number of images when determining the arrangement of pixel pairs. FREEK uses information about the human retina pattern when determining the arrangement of pixel pairs. Even when ORB or FREEK is used, a local feature can be extracted from an input image at high speed.
画素ペアに基づく局所特徴量を利用する方式ではないが、画像内の小領域に含まれる画素の特徴量から、各小領域が特徴領域であるかを判定する特徴領域識別方式が提案されている。この方式は、小領域同士が互いに重複するように画像内に小領域を設定し、画素毎の判定回数及び特徴量計算の途中結果を記憶しておいて、重複部分の特徴量計算を省く仕組みを採用している。 Although it is not a method that uses local feature amounts based on pixel pairs, a feature region identification method that determines whether each small region is a feature region from the feature amount of a pixel included in a small region in an image has been proposed. . This method sets a small area in the image so that the small areas overlap each other, stores the number of determinations for each pixel and the intermediate result of the feature amount calculation, and eliminates the feature amount calculation of the overlapping portion Is adopted.
上記のように、画素ペアに基づく局所特徴量は抽出にかかる処理負荷が低く、マッチング処理の負荷低減に寄与する。一方で、入力画像の各特徴点と参照画像の各特徴点との組み合わせの数が大きいため、対応点の探索にかかる処理負荷は高い。この組み合わせ数は、特徴点を多く配置すればするほど増加する。一方、特徴点を多く配置することで、より精密な対応点の探索が可能になるほか、統計処理による判定精度が向上する可能性もある。 As described above, the local feature amount based on the pixel pair has a low processing load for extraction, and contributes to a reduction in matching processing load. On the other hand, since the number of combinations of each feature point of the input image and each feature point of the reference image is large, the processing load for searching for corresponding points is high. The number of combinations increases as more feature points are arranged. On the other hand, by arranging many feature points, it becomes possible to search for more precise corresponding points, and there is a possibility that the determination accuracy by statistical processing may be improved.
そこで、1つの側面によれば、本発明の目的は、対応する特徴点の探索にかかる処理負荷を低減することが可能な情報処理装置、画像判定方法、及びプログラムを提供することにある。 Therefore, according to one aspect, an object of the present invention is to provide an information processing apparatus, an image determination method, and a program that can reduce a processing load for searching for a corresponding feature point.
本開示の1つの側面によれば、一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、画像領域が重複する重複領域において各画像領域に配置された各画素ペアの位置が一致するように設定した配置規則を表す配置情報を記憶する記憶部と、画像領域に配置規則で配置された各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された各画像領域の特徴量と第2の画像に設定された各画像領域の特徴量との距離に基づいて第1の画像と第2の画像との類否を判定する計算部とを有し、計算部は、重複領域に位置する画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の画像領域における画素ペアの特徴量に関する計算の際に記憶部に格納した計算結果を利用する情報処理装置が提供される。 According to one aspect of the present disclosure, among a plurality of pixel pairs arranged in a common arrangement rule in each of a plurality of image areas that partially overlap, the image areas are arranged in each of the image areas in the overlap area. A storage unit for storing arrangement information indicating an arrangement rule set so that the positions of the respective pixel pairs coincide with each other, and a feature amount set of each pixel pair arranged in the image area according to the arrangement rule. The first image and the second image based on the distance between the feature amount of each image region set in the first image and the feature amount of each image region set in the second image. A calculation unit that determines the similarity of the image pair, the calculation unit stores a calculation result related to the feature amount of the pixel pair located in the overlapping region in the storage unit, and another image region at the same position as the pixel pair. When calculating the feature value of a pixel pair in The information processing apparatus is provided that utilizes a calculation result of the.
また、本開示の他の1つの側面によれば、コンピュータが、一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、画像領域が重複する重複領域において各画像領域に配置された各画素ペアの位置が一致するように設定した配置規則を表す配置情報を取得し、画像領域に配置規則で配置された各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された各画像領域の特徴量と第2の画像に設定された各画像領域の特徴量との距離に基づいて第1の画像と第2の画像との類否を判定する処理を実行し、距離を計算する処理において、重複領域に位置する画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の画像領域における画素ペアの特徴量に関する計算の際に記憶部に格納した計算結果を利用する画像判定方法が提供される。 In addition, according to another aspect of the present disclosure, the computer overlaps the image regions of a plurality of pixel pairs that are arranged in a common arrangement rule in each of the plurality of image regions that are partially overlapped. In the area, obtain arrangement information indicating an arrangement rule set so that the positions of the pixel pairs arranged in each image area coincide with each other, and set a feature amount set of each pixel pair arranged in the image area according to the arrangement rule. The first image and the first image are used based on the distance between the feature amount of each image region set in the first image and the feature amount of each image region set in the second image. In the process of determining the similarity with the image of 2 and calculating the distance, the calculation result relating to the feature amount of the pixel pair located in the overlapping region is stored in the storage unit and is located at the same position as the pixel pair. Special characteristics of pixel pairs in other image areas Image judging method utilizing the calculation results stored in the storage unit in the calculation for the amount is provided.
また、本開示の他の1つの側面によれば、コンピュータに、一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、画像領域が重複する重複領域において各画像領域に配置された各画素ペアの位置が一致するように設定した配置規則を表す配置情報を取得し、画像領域に配置規則で配置された各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された各画像領域の特徴量と第2の画像に設定された各画像領域の特徴量との距離に基づいて第1の画像と第2の画像との類否を判定する処理を実行させ、距離を計算する処理において、重複領域に位置する画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の画像領域における画素ペアの特徴量に関する計算の際に記憶部に格納した計算結果を利用する処理を実行させるためのプログラムが提供される。 In addition, according to another aspect of the present disclosure, overlapping of overlapping image areas among a plurality of pixel pairs arranged in a common arrangement rule in each of a plurality of overlapping image areas on the computer. In the area, obtain arrangement information indicating an arrangement rule set so that the positions of the pixel pairs arranged in each image area coincide with each other, and set a feature amount set of each pixel pair arranged in the image area according to the arrangement rule. The first image and the first image are used based on the distance between the feature amount of each image region set in the first image and the feature amount of each image region set in the second image. In the process of determining the similarity with the image of 2 and calculating the distance, the calculation result related to the feature amount of the pixel pair located in the overlapping region is stored in the storage unit, and is in the same position as the pixel pair. Of pixel pairs in other image areas Program for executing a process to utilize the calculation results stored in the storage unit in the calculation regarding symptoms amount is provided.
本発明によれば、対応する特徴点の探索にかかる処理負荷を低減することが可能になる。 According to the present invention, it is possible to reduce the processing load for searching for a corresponding feature point.
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。 Embodiments of the present invention will be described below with reference to the accompanying drawings. In addition, about the element which has the substantially same function in this specification and drawing, duplication description may be abbreviate | omitted by attaching | subjecting the same code | symbol.
<1.第1実施形態>
図1を参照しながら、第1実施形態について説明する。図1は、第1実施形態に係る情報処理装置の一例を示した図である。図1に例示した情報処理装置10は、第1実施形態に係る情報処理装置の一例である。
<1. First Embodiment>
The first embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of an information processing apparatus according to the first embodiment. An
図1に示すように、情報処理装置10は、記憶部11及び計算部12を有する。
記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置、或いは、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置である。計算部12は、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサである。但し、計算部12は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの電子回路であってもよい。計算部12は、例えば、記憶部11又は他のメモリに記憶されたプログラムを実行する。
As illustrated in FIG. 1, the
The
記憶部11は、一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、画像領域が重複する重複領域において各画像領域に配置された各画素ペアの位置が一致するように設定した配置規則を表す配置情報を記憶する。
The
例えば、画像領域Ain1の右半分の領域(右領域R2)と、画像領域Ain2の左半分の領域(左領域R1)とが重複するように設定されている場合、画像領域Ain1の右領域R2及び画像領域Ain2の左領域R1が上記の重複領域(図1でハッチングを付した領域)に該当する。また、画像領域Ar1の右領域R2と、画像領域Ar2の左領域R1とが重複するように設定されている場合、画像領域Ar1の右領域R2及び画像領域Ar2の左領域R1が上記の重複領域に該当する。 For example, when the right half area (right area R2) of the image area Ain1 and the left half area (left area R1) of the image area Ain2 are set to overlap, the right area R2 of the image area Ain1 and The left region R1 of the image region Ain2 corresponds to the overlapping region (the hatched region in FIG. 1). When the right region R2 of the image region Ar1 and the left region R1 of the image region Ar2 are set to overlap, the right region R2 of the image region Ar1 and the left region R1 of the image region Ar2 are the above overlapping regions. It corresponds to.
図1の例において、記憶部11は、右領域R2に各画素が配置される画素ペアの情報と、左領域R1に各画素が配置される画素ペアの情報と、領域R1、R2にそれぞれ1つずつ画素が配置される画素ペアの情報とを配置情報として記憶している。以下、領域R1、R2にそれぞれ1つずつ画素が配置される画素ペアの集合をA群、左領域R1に各画素が配置される画素ペアの集合をB群、右領域R2に各画素が配置される画素ペアの集合をC群と表現する。
In the example of FIG. 1, the
配置情報が示す配置規則は、B群の画素ペアとC群の画素ペアとが同じ配置となるように設定される。例えば、この配置規則に従って画像領域Ain1、Ain2に画素ペアを配置した場合、画像領域Ain1の右領域R2に配置される画素ペアの位置と、画像領域Ain2の左領域R1に配置される画素ペアの位置とが一致する。画像領域Ar1、Ar2に画素ペアを配置した場合も同様である。 The arrangement rule indicated by the arrangement information is set so that the B group pixel pair and the C group pixel pair have the same arrangement. For example, when pixel pairs are arranged in the image areas Ain1 and Ain2 in accordance with this arrangement rule, the positions of the pixel pairs arranged in the right area R2 of the image area Ain1 and the pixel pairs arranged in the left area R1 of the image area Ain2 The position matches. The same applies when pixel pairs are arranged in the image areas Ar1 and Ar2.
計算部12は、画像領域に配置規則で配置された各画素ペアの特徴量の組を当該画像領域の特徴量として利用する。また、計算部12は、第1の画像に設定された各画像領域の特徴量と第2の画像に設定された各画像領域の特徴量との距離に基づいて第1の画像と第2の画像との類否を判定する。
The
特徴量としては、例えば、BRIEF、SIFT、SURF、CARD(Compact And Realtime Descriptors)、FREAK、BRISK(Binary Robust Invariant Scalable Keypoints)などが利用可能である。例えば、BRIEFを利用する場合、画素ペアの2つの画素における輝度差の符号(正負)に基づくビット値が、画素ペアの特徴量となる。輝度差の符号(正負)と、特徴量となるビット値とは予め対応付けられている。また、各画素ペアの特徴を表すビット値を並べたビット列(特徴量の組)は、各画素ペアが配置された画像領域の特徴を表す特徴量となる。 For example, BREF, SIFT, SURF, CARD (Compact And Realtime Descriptors), FRAK, BRISK (Binary Robust Invariant Scalable Keypoints) and the like can be used as the feature amount. For example, when BRIEF is used, the bit value based on the sign (positive / negative) of the luminance difference between the two pixels of the pixel pair becomes the feature amount of the pixel pair. The sign (positive / negative) of the luminance difference is associated with the bit value serving as the feature amount in advance. In addition, a bit string (a set of feature amounts) in which bit values representing the features of each pixel pair are arranged is a feature amount representing the features of the image area in which each pixel pair is arranged.
図1の例において、画像領域Ain1の特徴量Qin1は、A群の画素ペアの特徴量を並べたビット列と、B群の画素ペアの特徴量を並べたビット列と、C群の画素ペアの特徴量を並べたビット列とを結合したビット列で表現されている。また、画像領域Ain2の特徴量Qin2は、A群の画素ペアの特徴量を並べたビット列と、B群の画素ペアの特徴量を並べたビット列と、C群の画素ペアの特徴量を並べたビット列とを結合したビット列で表現されている。 In the example of FIG. 1, the feature quantity Qin1 of the image area Ain1 is a bit string in which the feature quantities of the A group pixel pairs are arranged, a bit string in which the feature quantities of the B group pixel pairs are arranged, and the characteristics of the C group pixel pairs. It is expressed as a bit string obtained by combining a bit string in which quantities are arranged. The feature amount Qin2 of the image area Ain2 is a bit string in which the feature amounts of the pixel pairs in the A group are arranged, a bit string in which the feature amounts of the B group pixel pairs are arranged, and the feature amounts of the C group pixel pairs are arranged. It is expressed as a bit string combined with a bit string.
画像領域Ain1が第1の画像に設定された画像領域であり、画像領域Ar1が第2の画像に設定された画像領域であるとすると、計算部12は、特徴量Qin1、Qr1の距離を計算する。このとき、計算部12は、A群のビット列同士の距離dA11、B群のビット列同士の距離dB11、C群のビット列同士の距離dC11を計算し、距離dA11、dB11、dC11の和を特徴量Qin1、Qr1の距離とする。
If the image area Ain1 is an image area set as the first image and the image area Ar1 is an image area set as the second image, the
同様に、計算部12は、他の画像領域(例えば、画像領域Ain2、Ar2)の組についても距離を計算する。例えば、計算部12は、特徴量Qin2、Qr2の距離を計算する。このとき、計算部12は、A群のビット列同士の距離dA22、B群のビット列同士の距離dB22、C群のビット列同士の距離dC22を計算し、距離dA22、dB22、dC22の和を特徴量Qin2、Qr2の距離とする。そして、計算部12は、計算した距離に基づいて第1の画像と第2の画像との類否を判定する。
Similarly, the
但し、計算部12は、重複領域に位置する画素ペアの特徴量に関する計算結果を記憶部11に格納し、当該画素ペアと同じ位置にある、他の画像領域における画素ペアの特徴量に関する計算の際に記憶部11に格納した計算結果を利用する。
However, the
例えば、画像領域Ain1、Ar1の距離を計算する場合(比較#1)、計算部12は、C群の画素ペアに関する距離dC11を計算する。その後、画像領域Ain2、Ar2の距離を計算する場合(比較#2)、計算部12は、B群の画素ペアに関する距離dB22を求めることになる。
For example, when calculating the distance between the image areas Ain1 and Ar1 (comparison # 1), the
画像領域Ain1に配置されたC群の画素ペアと、画像領域Ain2に配置されたB群の画素ペアとは同じ位置に設定される。そのため、画像領域Ain1に配置されたC群の画素ペアの特徴を表すビット列と、画像領域Ain2に配置されたB群の画素ペアの特徴を表すビット列とは同じビット列となる。同様に、画像領域Ar1に配置されたC群の画素ペアの特徴を表すビット列と、画像領域Ar2に配置されたB群の画素ペアの特徴を表すビット列とは同じビット列となる。 The group C pixel pair arranged in the image area Ain1 and the group B pixel pair arranged in the image area Ain2 are set at the same position. Therefore, the bit string representing the characteristics of the C group pixel pairs arranged in the image area Ain1 and the bit string representing the characteristics of the B group pixel pairs arranged in the image area Ain2 are the same bit string. Similarly, the bit string representing the characteristics of the group C pixel pair arranged in the image area Ar1 and the bit string representing the characteristics of the group B pixel pair arranged in the image area Ar2 are the same bit string.
従って、距離dC11と距離dB22とは同じ値になる。そこで、計算部12は、距離dC11を計算した際に、その計算結果を記憶部11に格納する。そして、距離dB22を計算する際に、その計算を省略して記憶部11に格納しておいた距離dC11を利用する。つまり、計算部12は、画像領域Ain2、Ar2の距離を計算する際、距離dA22、dC22を計算し、dA22、dC22、dC11の和を特徴量Qin2、Qr2の距離とする。このように、重複領域に関する一部の計算結果を記憶部11に格納しておき、以後の計算に利用することで、距離計算の計算量を低減することが可能になる。
Therefore, the distance dC11 and the distance dB22 have the same value. Therefore, when the
第1及び第2の画像に設定された画像領域同士の距離計算にかかる負荷が低減されることで、少ない計算量で高速に最小距離の画像領域の組を抽出することができ、対応する特徴点の探索にかかる処理負荷を低減することが可能になる。 By reducing the load on the distance calculation between the image areas set in the first and second images, a set of image areas with the minimum distance can be extracted at a high speed with a small amount of calculation, and corresponding features It becomes possible to reduce the processing load for the point search.
以上、第1実施形態について説明した。
<2.第2実施形態>
次に、第2実施形態について説明する。
The first embodiment has been described above.
<2. Second Embodiment>
Next, a second embodiment will be described.
[2−1.システム]
図2を参照しながら、第2実施形態に係るシステムについて説明する。図2は、第2実施形態に係るシステムの一例を示した図である。
[2-1. system]
A system according to the second embodiment will be described with reference to FIG. FIG. 2 is a diagram illustrating an example of a system according to the second embodiment.
図2に示すように、第2実施形態に係るシステムは、端末装置100及びサーバ装置200を含む。携帯電話、スマートフォン、デジタルカメラ、パーソナルコンピュータなどのデバイスは、端末装置100の一例である。アプリケーションサーバやコンテンツマネジメントシステムなどは、サーバ装置200の一例である。
As shown in FIG. 2, the system according to the second embodiment includes a
端末装置100は、無線基地局BS及びネットワークNWを介してサーバ装置200にアクセスできる。無線基地局BSは、例えば、移動体通信用の基地局や無線LAN(Local Area Network)用の基地局などである。ネットワークNWは、移動体通信の基幹回線網やWAN(Wide Area Network)などである。
The
図2のシステムは、例えば、端末装置100で撮像した撮像画像を、サーバ装置200で管理できるようにする写真管理サービスなどに適用できる。また、このシステムは、写真管理機能を有するSNS(Social Networking Service)などのソーシャルメディアサービスにも適用できる。以下では、写真管理サービスの例について説明するが、第2実施形態に係るシステムの適用範囲はこれに限定されない。
The system in FIG. 2 can be applied to, for example, a photo management service that enables the
多くの場合、画像の管理には、時間情報や位置情報が用いられる。例えば、撮影日時を利用して画像をグループ化して管理する方法や、GPS(Global Positioning System)で取得した撮影場所の情報を利用して画像をグループ化して管理する方法などがある。画像をグループ化しておけば、撮影時間や撮影場所の情報をヒントに画像を検索することが容易になる。その他にも、「家族旅行」や「結婚式」などのタグを画像に付し、タグを利用して画像を管理する方法などがある。 In many cases, time information and position information are used for image management. For example, there are a method of grouping and managing images using shooting date and time, and a method of grouping and managing images using shooting location information acquired by GPS (Global Positioning System). If the images are grouped, it becomes easy to search for images with hints of shooting time and shooting location. In addition, there are methods of tagging images such as “family trip” and “wedding” and managing the images using the tags.
第2実施形態は、画像から特定の物体(以下、ランドマーク)を自動認識し、その認識結果を画像にタグ付けする仕組みに関する。例えば、図2のシステムは、端末装置100により旅行先で撮影した画像の情報をサーバ装置200へと送信すると、サーバ装置200がランドマークを自動認識してタグを付与する仕組みを提供できる。この仕組みがあれば、ランドマークを指定した画像検索や画像の自動整理の実現が容易になる。
The second embodiment relates to a mechanism for automatically recognizing a specific object (hereinafter referred to as a landmark) from an image and tagging the recognition result to the image. For example, the system of FIG. 2 can provide a mechanism in which the
ランドマークの認識は、ランドマークの画像(以下、参照画像)と類似する部分が入力画像に含まれるかを判定する処理により実現される。参照画像は複数利用される。また、参照画像は、ランドマークを正面から撮影した画像、他の方向から撮影した画像、同じ方向から異なる画角や明るさで撮影した画像などである。同じランドマークに対して複数の参照画像を利用することで、認識の失敗や誤認識の発生が少なくなる。 Landmark recognition is realized by a process of determining whether a portion similar to a landmark image (hereinafter referred to as a reference image) is included in the input image. A plurality of reference images are used. The reference image is an image of the landmark taken from the front, an image taken from another direction, an image taken from the same direction with a different angle of view or brightness, and the like. By using a plurality of reference images for the same landmark, the occurrence of recognition failure or erroneous recognition is reduced.
ランドマークの認識は、例えば、次のような手順で行われる。
まず、端末装置100が、ランドマークの認識対象とする入力画像に対して複数の特徴点を設定する。但し、特徴点の位置は予め設定されている。特徴点の配置は、例えば、予め決められた間隔で等間隔に配置する方法や、ランダムに決められた不規則な配置パターンで配置する方法などにより決定される。但し、参照画像における特徴点の配置と、入力画像に設定される特徴点の配置とは同じである。
The landmark is recognized, for example, by the following procedure.
First, the
特徴点を設定した端末装置100は、入力画像に設定した特徴点の周辺領域(以下、特徴領域)から特徴量を抽出する。特徴領域は、例えば、特徴点を中心とする矩形領域(例えば、一辺が48画素の矩形領域)である。特徴量は、例えば、BRIEF、SIFT、SURF、CARD、FREAK、BRISKなどである。以下では、BRIEFを利用する例について説明する。
The
端末装置100により抽出された特徴量はサーバ装置200に送信される。サーバ装置200は、参照画像の各特徴領域から抽出した特徴量を利用して、端末装置100から受信した特徴量に対応する特徴領域を特定する。例えば、サーバ装置200は、入力画像の各特徴領域と参照画像の各特徴領域との組について特徴量同士の距離を計算し、距離が最小となる特徴領域の組を特定する。つまり、サーバ装置200は、特徴点のペアを抽出する。
The feature amount extracted by the
次に、サーバ装置200は、抽出した特徴点のペアについて統計処理を実行し、入力画像中に参照画像が含まれているか否かを判定する。サーバ装置200は、全ての参照画像について上記の判定処理を実行し、入力画像に含まれる参照画像を特定する。そして、サーバ装置200は、特定した参照画像に対応するランドマークの情報を端末装置100に送信する。端末装置100は、サーバ装置200から受信したランドマークの情報を画面に表示する処理や画像に付与する処理を実行する。
Next, the
上記のように、図2のシステムは、端末装置100からサーバ装置200へと入力画像を送らず、特徴量だけを送る仕組みとしている。そのため、個人情報である入力画像がネットワークNWなどを介して端末装置100の外部へ漏れる心配が少なくなる。また、図2のシステムは、BRIEFなどの画素ペアに基づく特徴量を利用しており、端末装置100に過度な負荷をかけずにサービスを提供することができる。
As described above, the system in FIG. 2 is configured to send only the feature amount without sending the input image from the
以上、第2実施形態に係るシステムについて説明した。以下、このシステムに含まれる端末装置100及びサーバ装置200について、さらに説明する。
[2−2.ハードウェア]
図3を参照しながら、端末装置100が有する機能を実現することが可能なハードウェアについて説明する。図3は、第2実施形態に係る端末装置が有する機能を実現可能なハードウェアの一例を示した図である。
The system according to the second embodiment has been described above. Hereinafter, the
[2-2. hardware]
With reference to FIG. 3, hardware capable of realizing the functions of the
端末装置100が有する機能は、例えば、図3に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、端末装置100が有する機能は、コンピュータプログラムを用いて図3に示すハードウェアを制御することにより実現される。
The functions of the
図3に示すように、このハードウェアは、主に、CPU902と、ROM(Read Only Memory)904と、RAM906と、ホストバス908と、ブリッジ910とを有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926とを有する。
As shown in FIG. 3, this hardware mainly includes a
CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
The
これらの要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
These elements are connected to each other via, for example, a
出力部918としては、例えば、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、又はELD(Electro-Luminescence Display)などのディスプレイ装置が用いられる。また、出力部918として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部918は、情報を視覚的又は聴覚的に出力することが可能な装置である。
As the
記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、HDDなどの磁気記憶デバイスが用いられる。また、記憶部920として、SSD(Solid State Drive)やRAMディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
The
ドライブ922は、着脱可能な記録媒体であるリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。
The
接続ポート924は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS−232Cポート、又は光オーディオ端子など、外部接続機器930を接続するためのポートである。外部接続機器930としては、例えば、プリンタやカメラなどが用いられる。
The
通信部926は、ネットワーク932に接続するための通信デバイスである。通信部926としては、例えば、有線又は無線LAN(Local Area Network)用の通信回路、WUSB(Wireless USB)用の通信回路、光通信用の通信回路やルータ、ADSL(Asymmetric Digital Subscriber Line)用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークであり、例えば、インターネット、LAN、放送網、衛星通信回線などを含む。
The
以上、端末装置100のハードウェアについて説明した。なお、上記のハードウェアは、サーバ装置200が有する機能を実現することも可能である。従って、サーバ装置200のハードウェアについては説明を省略する。
The hardware of the
[2−3.端末装置の機能]
次に、図4〜図11を参照しながら、端末装置100の機能について説明する。
図4は、第2実施形態に係る端末装置が有する機能の一例を示したブロック図である。図5は、第2実施形態に係る画素ペア情報の一例を示した図である。図6は、第2実施形態に係る入力画像の特徴点と特徴領域について説明するための図である。図7は、第2実施形態に係る特徴量の計算について説明するための図である。
[2-3. Terminal device functions]
Next, functions of the
FIG. 4 is a block diagram illustrating an example of functions of the terminal device according to the second embodiment. FIG. 5 is a diagram illustrating an example of pixel pair information according to the second embodiment. FIG. 6 is a diagram for explaining feature points and feature regions of an input image according to the second embodiment. FIG. 7 is a diagram for explaining calculation of feature amounts according to the second embodiment.
図8は、第2実施形態に係る特徴点計算の効率化について説明するための第1の図である。図9は、第2実施形態に係る特徴点計算の効率化について説明するための第2の図である。図10は、第2実施形態に係る特徴点計算の効率化について説明するための第3の図である。図11は、第2実施形態に係る特徴点計算の効率化について説明するための第4の図である。 FIG. 8 is a first diagram for explaining the efficiency of the feature point calculation according to the second embodiment. FIG. 9 is a second diagram for explaining the efficiency of the feature point calculation according to the second embodiment. FIG. 10 is a third diagram for explaining the efficiency of the feature point calculation according to the second embodiment. FIG. 11 is a fourth diagram for explaining the efficiency of the feature point calculation according to the second embodiment.
図4に示すように、端末装置100は、記憶部101、画像取得部102、特徴点設定部103、特徴量計算部104、及び送信部105を有する。
なお、記憶部101の機能は、上述したRAM906や記憶部920などを用いて実現できる。画像取得部102、特徴点設定部103、及び特徴量計算部104の機能は、上述したCPU902などを用いて実現できる。送信部105の機能は、上述した接続ポート924や通信部926などを用いて実現できる。
As illustrated in FIG. 4, the
Note that the function of the
(画素ペア情報101aについて)
記憶部101には、画素ペア情報101aが格納される。画素ペア情報101aは、画像の特徴点毎に設定される特徴領域の特徴量を計算する際に用いる画素のペア(以下、画素ペア)を表す情報である。例えば、画素ペア情報101aには、画素ペアを成す2つの画素の位置を示す位置情報が含まれる。なお、特徴領域は、例えば、特徴点を中心とする矩形領域であり、32画素×32画素や48画素×48画素などのサイズに設定される。
(Regarding
The
画素ペア情報101aの一例を図5に示す。図5に示すように、画素ペア情報101aには、画素ペアLk(k=1、2、…)を成す2つの画素の座標(X1,Y1)及び(X2,Y2)が含まれる。画素の座標は、特徴領域の左上を原点(0,0)とした座標値で表現される。また、画素ペアの数は、例えば、128個、256個、512個などに設定される。例えば、画素ペアの数を256個に設定した場合、特徴領域毎に256個の画素ペアが設定される。
An example of the
(特徴点の設定について)
再び図4を参照する。画像取得部102は、ランドマークの認識対象となる画像(以下、入力画像Pin)を取得する。例えば、画像取得部102は、外部の記憶装置(非図示)又は端末装置100に接続されたカメラ(非図示)から入力画像Pinを取得する。また、画像取得部102は、端末装置100が有するカメラ機能を利用して入力画像Pinを取得してもよい。このようにして画像取得部102により取得された入力画像Pinは、記憶部101に格納される。
(About feature point settings)
Refer to FIG. 4 again. The
特徴点設定部103は、記憶部101に格納された入力画像Pinを読み出し、読み出した入力画像Pinに複数の特徴点を設定する。例えば、特徴点設定部103は、図6に示すように、等間隔に配置された複数の特徴点を抽出する方法(Dense Sampling)を用いて入力画像Pinに特徴点を設定する。但し、特徴点の設定にはFAST(Features from Accelerated Segment Test)などの方法も適用できる。
The feature
図6に示すように、特徴点Winを基準に特徴領域Ainが設定される。なお、入力画像Pinに設定される特徴点をWinと表記する。また、m番目の特徴点をWin(m)、m+1番目の特徴点をWin(m+1)と表記する。さらに、m番目の特徴点Win(m)を基準に設定される特徴領域をAin(m)と表記する。特徴点設定部103により設定された特徴点Win及び特徴領域Ainの情報は、記憶部101に格納されると共に、特徴量計算部104に入力される。
As shown in FIG. 6, a feature area Ain is set with reference to the feature point Win. Note that the feature point set in the input image Pin is denoted as Win. In addition, the m-th feature point is represented as Win (m), and the m + 1-th feature point is represented as Win (m + 1). Further, a feature region set with the m-th feature point Win (m) as a reference is denoted as Ain (m). Information on the feature points Win and the feature area Ain set by the feature
(特徴量の計算及び送信について)
再び図4を参照する。特徴量計算部104は、画素ペア情報101aを参照し、特徴点設定部103により設定された各特徴領域Ainの特徴量を計算する。
(About feature amount calculation and transmission)
Refer to FIG. 4 again. The feature
例えば、特徴量計算部104は、図7に示すように、入力画像Pinの特徴領域Ainに設定された画素ペアに含まれる各画素の輝度を抽出する(C1)。次いで、特徴量計算部104は、抽出した2つの輝度の差分を求めて、各画素ペアの輝度差を計算する(C2)。但し、特徴量計算部104は、後述する効率化手法により一部の画素ペアについて輝度差の計算を省略してもよい。次いで、特徴量計算部104は、計算した輝度差の符号(正負)を表すビット値を並べたビット列(以下、局所特徴量)を生成する(C3)。
For example, as shown in FIG. 7, the feature
輝度差の符号とビット値とは予め対応付けられている。例えば、正の符号がビット値「1」に対応付けられ、負の符号がビット値「0」に対応付けられている。また、輝度差を計算する際、画素ペアを成す2つの画素のうち、どちらの画素の輝度から、他方の画素の輝度を減算するかも予め設定されている。例えば、座標(X1,Y1)に位置する画素の輝度から座標(X2,Y2)に位置する画素の輝度を減算した輝度差の符号を局所特徴量の生成に利用することが予め設定されている。また、上記C3の工程でビット値を並べる順番も予め設定されている。 The sign of the luminance difference and the bit value are associated in advance. For example, a positive sign is associated with the bit value “1”, and a negative sign is associated with the bit value “0”. In addition, when calculating the luminance difference, it is also set in advance which one of the two pixels forming the pixel pair is subtracted from the luminance of the other pixel. For example, it is preset that the sign of the luminance difference obtained by subtracting the luminance of the pixel located at the coordinates (X2, Y2) from the luminance of the pixel located at the coordinates (X1, Y1) is used for generating the local feature amount. . The order in which the bit values are arranged in the step C3 is also set in advance.
256個の画素ペアが設定された場合、256ビットのビット列で表現された局所特徴量が得られる。局所特徴量は、入力画像Pinに含まれる全ての特徴領域Ainについて計算される。入力画像Pinについて特徴量計算部104により計算された局所特徴量の組は、送信部105に入力される。送信部105は、特徴量計算部104から入力された局所特徴量をサーバ装置200へ送信する。このように、入力画像Pinそのものは送信されないため、ユーザの個人情報が外部へ漏洩するリスクを低減できる。
When 256 pixel pairs are set, a local feature amount expressed by a 256-bit bit string is obtained. The local feature amount is calculated for all feature regions Ain included in the input image Pin. A set of local feature amounts calculated by the feature
(特徴量計算の効率化手法について)
ここで、図6、図8〜図11を参照しながら、上述した特徴量計算の効率化手法について説明する。
(About efficient feature calculation)
Here, the above-described technique for improving the amount of feature calculation will be described with reference to FIGS. 6 and 8 to 11.
既に説明したように、特徴点Winの配置及び特徴領域Ainのサイズは予め設定される。設定の例としては、図6に示すように、隣り合う特徴領域Ain同士が一部で重なるように各特徴領域Ainを配置する設定や、隣り合う特徴領域Ain同士が接するように各特徴領域Ainを配置する設定などがある。 As already described, the arrangement of the feature points Win and the size of the feature area Ain are set in advance. As an example of the setting, as shown in FIG. 6, each feature region Ain is set so that adjacent feature regions Ain are in contact with each other, or the feature regions Ain are arranged so that the adjacent feature regions Ain partially overlap each other. There is a setting to arrange.
図6の例は、左右の方向(X方向)に並んで配置された特徴領域Ain同士について、特徴領域Ainの1/2の部分だけ重なるように設定した場合を示している。この例において、m番目の特徴点Win(m)を基準に設定された特徴領域Ain(m)の右1/2の部分は、m+1番目の特徴点Win(m+1)を基準に設定された特徴領域Ain(m+1)の左1/2の部分と重複している。また、この例において、上下に隣り合う特徴領域Ain同士は接するように設定されている。 The example of FIG. 6 shows a case where the characteristic areas Ain arranged side by side in the left-right direction (X direction) are set so as to overlap only a half of the characteristic area Ain. In this example, the right half portion of the feature area Ain (m) set with the mth feature point Win (m) as a reference is a feature set with the m + 1th feature point Win (m + 1) as a reference. It overlaps with the left half of the area Ain (m + 1). Further, in this example, the feature areas Ain that are vertically adjacent to each other are set to contact each other.
特徴領域Ain(m)、Ain(m+1)の局所特徴量を計算する場合、特徴量計算部104は、特徴領域Ain(m)、Ain(m+1)にそれぞれ画素ペアLk(k=1,2,…)を配置し、各画素ペアLkの輝度差に基づくビット値を計算する。
When calculating the local feature quantities of the feature areas Ain (m) and Ain (m + 1), the feature
特徴領域Ain(m)、Ain(m+1)について各々独立にビット値の計算を実行してもよいが、特徴領域Ain(m)、Ain(m+1)の重複部分に関するビット値の計算は冗長である。特徴領域Ain(m+1)の左半分についてビット値を計算する際に、特徴領域Ain(m)の右半分について計算したビット値を流用できれば、局所特徴量の計算量を低減することができる。 The bit values may be calculated independently for the feature areas Ain (m) and Ain (m + 1), but the calculation of the bit values regarding the overlapping portions of the feature areas Ain (m) and Ain (m + 1) is redundant. . When calculating the bit value for the left half of the feature area Ain (m + 1), if the bit value calculated for the right half of the feature area Ain (m) can be used, the amount of calculation of the local feature amount can be reduced.
ビット値を流用するためには、特徴領域Ain(m)の右半分の領域(右領域)における画素ペアの配置と、特徴領域Ain(m+1)の左半分の領域(左領域)における画素ペアの配置とが同じであることが前提となる。但し、特徴領域Ain(m)の右領域にある画素ペアの一部だけが、特徴領域Ain(m+1)の左領域にある画素ペアと同じ配置であっても、ビット値の流用による計算量の低減効果は得られる。 In order to use the bit value, the pixel pair arrangement in the right half area (right area) of the feature area Ain (m) and the pixel pair in the left half area (left area) of the feature area Ain (m + 1) It is assumed that the arrangement is the same. However, even if only a part of the pixel pair in the right region of the feature region Ain (m) has the same arrangement as the pixel pair in the left region of the feature region Ain (m + 1), the calculation amount due to the diversion of the bit value is reduced. A reduction effect is obtained.
そこで、各特徴領域Ainにおいて、右領域と左領域とで同じ配置となる画素ペア(流用可能な画素ペア)が含まれるように画素ペア情報101aが設定される。この場合、特徴量計算部104は、図8に示すように、特徴領域Ain(m)の局所特徴量を計算した後、流用可能な画素ペアに対応するビット値を保持する。
Therefore, in each feature area Ain, the
次いで、特徴量計算部104は、特徴領域Ain(m+1)の局所特徴量を計算する際、特徴領域Ain(m+1)の左領域にある流用可能な画素ペアに対応するビット値の計算を省略し、保持していたビット値を利用して局所特徴量を求める。また、特徴量計算部104は、特徴領域Ain(m+1)の局所特徴量を計算した後、特徴領域Ain(m+2)の計算に流用可能な画素ペアに対応するビット値を保持する。
Next, when calculating the local feature amount of the feature region Ain (m + 1), the feature
上記のように、重複領域に設定される画素ペアの一部について局所特徴量の計算時に、既に計算済みのビット値を流用することで、局所特徴量の計算量を低減できる。
ここで、上記の計算方法を適用可能にする画素ペアの配置について、さらに説明する。
As described above, the calculation amount of the local feature amount can be reduced by diverting the already calculated bit value when calculating the local feature amount for a part of the pixel pairs set in the overlapping region.
Here, the arrangement of the pixel pair that allows the above calculation method to be applied will be further described.
図9に示すように、画素ペアは、特徴領域Ainの右領域と左領域との境界を跨ぐように2つの画素が配置されるもの(A群)と、左領域に各画素が配置されるもの(B群)と、右領域に各画素が配置されるもの(C群)とに分類できる。B群に属する画素ペアの左領域における配置と、C群に属する画素ペアの右領域における配置とは同じである。つまり、左領域と右領域とを重ねた場合、左領域に設定された各画素ペアの位置と右領域に設定された各画素ペアの位置とが一致する。 As shown in FIG. 9, in the pixel pair, two pixels are arranged so as to straddle the boundary between the right region and the left region of the feature region Ain (Group A), and each pixel is arranged in the left region. It can be classified into one (group B) and one in which each pixel is arranged in the right region (group C). The arrangement of the pixel pairs belonging to the B group in the left region and the arrangement of the pixel pairs belonging to the C group in the right region are the same. That is, when the left area and the right area are overlapped, the position of each pixel pair set in the left area matches the position of each pixel pair set in the right area.
上記のようにA群、B群、C群に属する画素ペアの配置を決定し、全ての画素ペアの配置を統合した全体が、画素ペア情報101aに記録されて局所特徴量の計算に利用される。画素ペア情報101aは、画素ペア毎にA群、B群、C群を特定する属性情報を含んでいてもよい。例えば、図10に示すように、特徴領域Ain(m)、Ain(m+1)に画素ペアL1、L2、…、L6を配置すると、重複領域において画素ペアL5、L6の位置が一致する。よって、図8に示した局所特徴量の効率的な計算が実現可能になる。
As described above, the arrangement of the pixel pairs belonging to the A group, the B group, and the C group is determined, and the whole arrangement of all the pixel pairs is recorded in the
A群、B群、C群に属する各画素ペアの特徴を表すビット値を流用しやすくするため、図11に示すように、A群のビット列、B群のビット列、C群のビット列を区分けした局所特徴量の構造を採用することが好ましい。この構造を採用した場合、例えば、図11に示すように、特徴領域Ain(m)の局所特徴量からC群のビット列を抽出し、特徴領域Ain(m+1)の局所特徴量のうちB群のビット列の部分に挿入することで、計算結果の流用が実現できる。 In order to facilitate the diversion of the bit values representing the characteristics of the pixel pairs belonging to the A group, the B group, and the C group, the bit string of the A group, the bit string of the B group, and the bit string of the C group are divided as shown in FIG. It is preferable to adopt a structure of local feature amounts. When this structure is adopted, for example, as shown in FIG. 11, a group C bit string is extracted from the local feature quantity of the feature area Ain (m), and the B group of the local feature quantity of the feature area Ain (m + 1) is extracted. By inserting it in the bit string portion, the calculation result can be diverted.
上記のように、図8に示した計算結果の流用、図9に示した画素ペアの配置、及び図11に示した局所特徴量の構造を組み合わせることで、局所特徴量の計算を効率化することが可能になる。また、後述するように、図9に示した画素ペアの配置、及び図11に示した局所特徴量の構造を採用することで、サーバ装置200の処理も効率化される。
As described above, by combining the calculation result shown in FIG. 8, the arrangement of the pixel pairs shown in FIG. 9, and the structure of the local feature shown in FIG. 11, the calculation of the local feature is made efficient. It becomes possible. Further, as will be described later, the processing of the
以上、端末装置の機能について説明した。
[2−4.サーバ装置の機能]
次に、図12〜図20を参照しながら、サーバ装置200の機能について説明する。
The function of the terminal device has been described above.
[2-4. Server device functions]
Next, functions of the
図12は、第2実施形態に係るサーバ装置が有する機能の一例を示したブロック図である。図13は、第2実施形態に係る参照画像情報(参照画像管理テーブル)の一例を示した図である。図14は、第2実施形態に係る参照画像情報(特徴量管理テーブル)の一例を示した図である。図15は、第2実施形態に係る距離情報(距離記録テーブル)の一例を示した図である。 FIG. 12 is a block diagram illustrating an example of functions of the server device according to the second embodiment. FIG. 13 is a diagram illustrating an example of reference image information (reference image management table) according to the second embodiment. FIG. 14 is a diagram illustrating an example of reference image information (feature amount management table) according to the second embodiment. FIG. 15 is a diagram illustrating an example of distance information (distance recording table) according to the second embodiment.
図16は、第2実施形態に係る参照画像の特徴点と特徴領域について説明するための図である。図17は、第2実施形態に係る投票処理について説明するための図である。図18は、第2実施形態に係る判定について説明するための図である。図19は、第2実施形態に係る対応点探索(距離計算)の効率化について説明するための第1の図である。図20は、第2実施形態に係る対応点探索(距離計算)の効率化について説明するための第2の図である。 FIG. 16 is a diagram for explaining feature points and feature regions of a reference image according to the second embodiment. FIG. 17 is a diagram for explaining voting processing according to the second embodiment. FIG. 18 is a diagram for describing determination according to the second embodiment. FIG. 19 is a first diagram for explaining the efficiency of the corresponding point search (distance calculation) according to the second embodiment. FIG. 20 is a second diagram for explaining the efficiency of the corresponding point search (distance calculation) according to the second embodiment.
図12に示すように、サーバ装置200は、記憶部201、受信部202、距離計算部203、投票処理部204、及び判定部205を有する。
記憶部201の機能は、上述したRAM906や記憶部920などを用いて実現できる。受信部202の機能は、上述した接続ポート924や通信部926などを用いて実現できる。距離計算部203、投票処理部204、及び判定部205の機能は、上述したCPU902などを用いて実現できる。
As illustrated in FIG. 12, the
The function of the
(画素ペア情報201a、参照画像情報201b、距離情報201cについて)
記憶部201には、参照画像Prが格納されている。また、記憶部201には、画素ペア情報201a、参照画像情報201b、及び距離情報201cが格納される。
(Regarding
The
画素ペア情報201aは、端末装置100の記憶部101に格納されている画素ペア情報101aと同じ画素ペアに関する情報である。参照画像情報201bは、参照画像Prに関連する情報である。距離情報201cは、局所特徴点同士の距離を計算する際に一部の計算結果が格納される距離記録テーブルを含む情報である。
The
参照画像情報201bは、参照画像管理テーブル、及び特徴量管理テーブルを含む。記憶部201には、様々なランドマークに対応する参照画像Prが格納されている。また、1つのランドマークについて複数のサイズ、複数の撮影方向に対応する複数の参照画像Prが記憶部201に格納されている。これらの参照画像Prのデータとランドマークとを対応付ける情報が参照画像管理テーブルである。
The
参照画像管理テーブルは、図13に示すように、ランドマーク名と参照画像Prの画像データ(又は画像データへのリンク)とを対応付けるデータベースである。参照画像管理テーブルの各レコードは識別番号ID#1により特定される。
As shown in FIG. 13, the reference image management table is a database that associates landmark names with image data (or links to image data) of the reference image Pr. Each record in the reference image management table is specified by the identification
特徴量管理テーブルは、図14に示すように、参照画像Prに含まれる各特徴点と、特徴点毎に計算された局所特徴量とを対応付けるデータベースである。特徴量管理テーブルは、識別番号ID#1で特定される各参照画像Prについて生成される。特徴量管理テーブルの各レコードは識別番号ID#2により特定される。
As shown in FIG. 14, the feature amount management table is a database that associates each feature point included in the reference image Pr with a local feature amount calculated for each feature point. The feature amount management table is generated for each reference image Pr specified by the identification
距離記録テーブルは、図15に示すように、入力画像Pinの特徴領域Ain(m)(m=1,2,…,M)と、参照画像Prの特徴領域Ar(n)(n=1,2,…,N)との距離Dを計算する際に、計算結果の一部(距離d)が記録されるデータベースである。距離dについては、後述する特徴量計算の効率化手法に関する説明の中で詳述する。 As shown in FIG. 15, the distance recording table includes a feature area Ain (m) (m = 1, 2,..., M) of the input image Pin and a feature area Ar (n) (n = 1, 1) of the reference image Pr. 2,.., N) is a database in which a part of the calculation result (distance d) is recorded when the distance D is calculated. The distance d will be described in detail in the description of the method for improving the characteristic amount calculation described later.
(特徴点の設定について)
参照画像Prの特徴点は、入力画像Pinに特徴点を設定する場合と同様に、Dense SamplingやFASTなどの方法により設定される。
(About feature point settings)
The feature points of the reference image Pr are set by a method such as Dense Sampling or FAST as in the case of setting feature points in the input image Pin.
図16に示すように、特徴点Wrを基準に特徴領域Arが設定される。参照画像Prに設定される特徴点をWrと表記する。また、n番目の特徴点をWr(n)、n+1番目の特徴点をWr(n+1)と表記する。さらに、n番目の特徴点Wr(n)を基準に設定される特徴領域をAr(n)と表記する。特徴領域Ar(n)(n=1,2,…,N)の局所特徴量は、予め計算されて特徴量管理テーブルに格納されている。局所特徴量の計算は、特徴領域Ainの局所特徴量を計算する方法と同じである。 As shown in FIG. 16, a feature area Ar is set based on the feature point Wr. A feature point set in the reference image Pr is denoted as Wr. In addition, the nth feature point is denoted as Wr (n), and the (n + 1) th feature point is denoted as Wr (n + 1). Further, a feature region set based on the nth feature point Wr (n) is denoted as Ar (n). Local feature amounts of the feature region Ar (n) (n = 1, 2,..., N) are calculated in advance and stored in the feature amount management table. The calculation of the local feature amount is the same as the method of calculating the local feature amount of the feature region Ain.
(距離計算について)
再び図12を参照する。受信部202は、端末装置100から入力画像Pinの局所特徴量を受信する。受信部202により受信された入力画像Pinの局所特徴量は、距離計算部203に入力される。距離計算部203は、局所特徴量に基づき、入力画像Pinの各特徴領域Ainと、参照画像Prの各特徴領域Arとの距離Dを計算する。距離Dは、特徴領域Ain、Ar間における特徴の違いを表す。
(About distance calculation)
Refer to FIG. 12 again. The receiving
ここで、特徴領域Ain、Arの距離Dを計算する方法について、さらに説明する。
以下では、特徴領域Ainの局所特徴量をLFinと表記し、特徴領域Arの局所特徴量をLFrと表記する。距離計算部203は、下記の式(1)により、局所特徴量LFin、LFrからビット列HVを計算する。次いで、距離計算部203は、ビット列HVの長さ(HVに含まれるビット値1の数)を計算する。ビット列HVの長さは、距離Dであり、特徴領域Ain、Ar間における特徴の違いを表す。
Here, a method for calculating the distance D between the feature regions Ain and Ar will be further described.
Hereinafter, the local feature amount of the feature region Ain is denoted as LFin, and the local feature amount of the feature region Ar is denoted as LFr. The
HV={LFin XOR LFr}
…(1)
上記の式(1)に含まれるXORは排他的論理和演算を表す。この演算は、局所特徴量LFin、LFrの各ビット値について、一致する場合に1、不一致の場合に0とする演算である。そのため、この演算により1となったビット値の数を合計することで、局所特徴量に基づく特徴領域Ain、Ar間の距離D(特徴の違い)が得られる。
HV = {LFin XOR LFr}
... (1)
XOR included in the above equation (1) represents an exclusive OR operation. This calculation is an operation in which the bit values of the local feature values LFin and LFr are set to 1 when they match and 0 when they do not match. Therefore, by summing the number of bit values that are 1 by this calculation, the distance D (feature difference) between the feature regions Ain and Ar based on the local feature amount is obtained.
距離計算部203は、全ての参照画像Prについて、上記の方法により入力画像Pinの各特徴領域Ainと、参照画像Prの各特徴領域Arとの間の距離Dを計算する。但し、距離計算部203は、後述する効率化手法により一部の計算を省略し、効率的に上記の距離Dを計算する。距離計算部203により計算された距離Dの情報は、投票処理部204に入力される。
The
(投票処理について)
投票処理部204は、特徴領域Ar、Ainの各組について計算された距離Dに基づき、類似度が最も高い(距離Dが最も小さくなる)特徴領域Ar、Ainの組を抽出する。例えば、投票処理部204は、図17に示すように、特徴領域Ar(n)について、特徴領域Ain(1)、…、Ain(M)の中から距離Dが最小となる特徴領域Ain(m)を抽出する(対応点探索)。
(About voting process)
The
また、投票処理部204は、特徴領域Arの特徴点Wrと参照画像Prの中心との位置関係(例えば、ベクトル)を利用し、抽出した特徴領域Ainの特徴点Winを基準に、参照画像Prの中心に対応する点(以下、特定点)を特定する(中心推定)。例えば、投票処理部204は、既知である特徴領域Arの特徴点から参照画像Prの中心への向き及び距離(ベクトル)に基づき、対応する入力画像Pinの特徴点から同じ向き及び距離へ移動した点を特定点とする。
The
図17の場合、投票処理部204は、特徴領域Ar(n)の特徴点Wr(n)と参照画像Prの中心との位置関係を利用し、特徴領域Ain(m)の特徴点Win(m)を基準に特定点(白矩形の点)を特定する。この特定処理は、入力画像Pinの特徴点と、対応する参照画像Prの特徴点とが一致するように参照画像Prを入力画像Pinに重ねた場合に、入力画像Pinにおける参照画像Prの中心を特定する処理に相当する。
In the case of FIG. 17, the
入力画像Pinの横幅をwi、高さをhi、参照画像Prの横幅をwr、高さをhrとすると、特定点の座標(Xv,Yv)は、下記の式(2)及び式(3)により計算できる。下記の式(2)及び式(3)において、特徴点Wrの座標を(Xr,Yr)と表記し、特徴点Wrに対応する特徴点Winの座標を(Xi,Yi)と表記している。 When the horizontal width of the input image Pin is wi, the height is hi, the horizontal width of the reference image Pr is wr, and the height is hr, the coordinates (Xv, Yv) of the specific point are expressed by the following equations (2) and (3). Can be calculated by In the following equations (2) and (3), the coordinates of the feature point Wr are expressed as (Xr, Yr), and the coordinates of the feature point Win corresponding to the feature point Wr are expressed as (Xi, Yi). .
Xv = Xi−Xr+wr/2
…(2)
Yv = Yi−Yr+hr/2
…(3)
特定点の座標を計算した投票処理部204は、統計的手法(例えば、投票)により入力画像Pinに参照画像Prが含まれるか否かを判定する。投票は、図17に示すように、入力画像Pinと同じサイズの領域に枡目を設けた投票マップを利用して行われる。投票マップの各枡目にはカウンタが対応付けられている。投票処理部204は、特定点の座標を含む枡目を特定し、特定した枡目に対応するカウンタのカウント値(投票数)をカウントアップする。このカウントアップに係る処理が投票である。
Xv = Xi-Xr + wr / 2
... (2)
Yv = Yi-Yr + hr / 2
... (3)
The
投票処理部204は、参照画像Prの各特徴点について投票を行う。投票が終了した後の投票マップから、図18に示すように投票数の分布が得られる。投票が終了すると、判定部205は、投票数の最大値を抽出する。判定部205は、抽出した最大数と予め設定した閾値Thとを比較する。一変形例として、判定部205は、最大数を投票マップ内の全投票数で割った正規化値と閾値とを比較してもよい。なお、閾値は、様々な画像を用いて実験し、正解確率などの評価値が許容範囲内になるように設定される。
The
最大数が閾値Thより大きい場合、判定部205は、入力画像Pinの中に参照画像Prが存在すると判定する。この場合、判定部205は、最大数に対応する枡目の位置を参照画像Prの中心位置と判断する。一方、最大数が閾値Thより小さい場合、判定部205は、入力画像Pinの中に参照画像Prが存在しないと判定する。投票マップを利用して判定を行うことで、入力画像Pinと参照画像Prとの間に存在する軽微な誤差を吸収し、ロバストな判定を行うことができる。
When the maximum number is larger than the threshold Th, the
入力画像Pinの中に参照画像Prが存在すると判定した場合、判定部205は、その参照画像Prに対応する参照画像管理テーブルを記憶部201から読み出し、参照画像Prに対応するランドマークの情報を端末装置100に送信する。ランドマークの情報は、例えば、ランドマークの名称や位置、参照画像管理テーブルのIDなどである。
If it is determined that the reference image Pr exists in the input image Pin, the
ランドマーク毎にタグ情報を用意しておき、判定結果に応じてランドマークに対応するタグ情報が端末装置100に送信されるようにしてもよい。この場合、端末装置100でタグ情報が入力画像Pinに自動付与される仕組みとしてもよい。
Tag information may be prepared for each landmark, and tag information corresponding to the landmark may be transmitted to the
複数のランドマークが存在すると判定された場合、判定部205は、それら全てのランドマークの情報を端末装置100に送信してもよいし、投票数の合計値や最大数が最も大きいランドマークの情報を端末装置100に送信してもよい。
When it is determined that there are a plurality of landmarks, the
参照画像管理テーブルに含まれる全ての参照画像Prについて、入力画像Pinの中に参照画像Prが存在しないと判定した場合、判定部205は、ランドマークが存在しない旨を示すエラー情報を端末装置100に送信する。
When it is determined that the reference image Pr does not exist in the input image Pin for all the reference images Pr included in the reference image management table, the
(対応点探索の効率化手法について)
ここで、図9、図17、図19及び図20を参照しながら、対応点探索の効率化手法について説明する。
(About efficient search method for corresponding points)
Here, a method for improving the efficiency of the corresponding point search will be described with reference to FIGS. 9, 17, 19, and 20.
既に説明したように、距離計算部203は、対応点探索のために、参照画像Prの各特徴点Wrと、入力画像Pinの各特徴点Winとの間で局所特徴量の距離Dを計算する。例えば、図17に示すように、距離計算部203は、特徴点Wr(n)(n=1,2,…,N)を基準に設定された特徴領域Ar(n)と、特徴点Win(m)(m=1,2,…,M)を基準に設定された特徴領域Ain(m)とについて距離Dを計算する。特徴点Wr、Winの数が多くなればなるほど、距離Dの計算にかかる負荷は高くなる。そのため、距離Dの計算にかかる負荷を低減できれば、対応点探索の処理を効率化できる。
As already described, the
例えば、特徴点Win(m)、Win(m+1)と、特徴点Wr(n)、Wr(n+1)との距離Dを計算する場合、図19に示すように、距離計算部203は、4通りの計算S1、…、S4を実行する。 For example, when calculating the distance D between the feature points Win (m) and Win (m + 1) and the feature points Wr (n) and Wr (n + 1), as shown in FIG. Calculations S1,..., S4 are executed.
距離計算部203は、(S1)特徴領域Ain(m)の局所特徴量及び特徴領域Ar(n)の局所特徴量に基づく距離Dの計算、(S2)特徴領域Ain(m)の局所特徴量及び特徴領域Ar(n+1)の局所特徴量に基づく距離Dの計算を実行する。また、距離計算部203は、(S3)特徴領域Ain(m+1)の局所特徴量及び特徴領域Ar(n)の局所特徴量に基づく距離Dの計算、(S4)特徴領域Ain(m+1)の局所特徴量及び特徴領域Ar(n+1)の局所特徴量に基づく距離Dの計算を実行する。
The
特徴領域Ain(m)の右領域と特徴領域Ain(m+1)の左領域とは重複領域である。また、特徴領域Ar(n)の右領域と特徴領域Ain(n+1)の左領域とは重複領域である。また、図9に示すように、左領域に配置されるB群の画素ペアと、右領域に配置されるC群の画素ペアとは同じ配置である。 The right area of the feature area Ain (m) and the left area of the feature area Ain (m + 1) are overlapping areas. Further, the right region of the feature region Ar (n) and the left region of the feature region Ain (n + 1) are overlapping regions. Further, as shown in FIG. 9, the group B pixel pair arranged in the left region and the group C pixel pair arranged in the right region are the same arrangement.
つまり、特徴領域Ain(m)の局所特徴量のうちC群のビット列は、特徴領域Ain(m+1)の局所特徴量のうちB群のビット列と同じである。さらに、特徴領域Ar(n)の局所特徴量のうちC群のビット列は、特徴領域Ar(n+1)の局所特徴量のうちB群のビット列と同じである。従って、S1で計算される距離DのうちC群のビット列に関する計算結果(距離d)は、S4で計算される距離DのうちB群のビット列に関する計算結果と一致する。そのため、S1で計算した計算結果の一部(距離d)をS4の計算に流用すれば、D4の計算の一部を省略して距離Dの計算にかかる負荷を低減できる。 That is, the group C bit string of the local feature quantities of the feature area Ain (m) is the same as the group B bit string of the local feature quantities of the feature area Ain (m + 1). Further, the bit string of group C among the local feature values of the feature area Ar (n) is the same as the bit string of group B of the local feature values of the feature area Ar (n + 1). Therefore, the calculation result (distance d) regarding the bit string of the C group in the distance D calculated in S1 coincides with the calculation result regarding the bit string of the B group among the distance D calculated in S4. Therefore, if a part of the calculation result (distance d) calculated in S1 is diverted to the calculation of S4, a part of the calculation of D4 can be omitted and the load on the calculation of the distance D can be reduced.
距離計算部203は、図20に示すように、A群のビット列同士、B群のビット列同士、C群のビット列同士で排他的論理和演算を実行し、それぞれA群の距離DA、B群の距離DB、C群の距離DCを計算する。そして、距離計算部203は、A群の距離DA、B群の距離DB、C群の距離DCを合計して距離Dを求める。例えば、特徴領域Ain(m)、Ar(n)の距離D(m,n)は、A群の距離DA(m,n)、B群の距離DB(m,n)、C群の距離DC(m,n)の和で与えられる。
As shown in FIG. 20, the
距離D(m,n)を計算した距離計算部203は、特徴領域Ain(m+1)、Ar(n+1)の距離D(m+1,n+1)を計算する際に流用するため、C群の距離DC(m,n)を保持する。このとき、距離計算部203は、距離DC(m,n)を距離記録テーブル(図15を参照)のd(m,n)の欄に格納する。
The
距離計算部203は、特徴領域Ain(m+1)、Ar(n+1)の距離D(m+1,n+1)を計算する際、B群の距離DB(m+1,n+1)の計算を省略し、距離記録テーブルのd(m,n)の欄に格納した値をB群の距離DB(m+1,n+1)として利用する。つまり、距離計算部203は、A群の距離DA(m+1,n+1)、d(m,n)欄の値(距離DC(m,n))、C群の距離DC(m+1,n+1)の和を距離D(m+1,n+1)とする。
When calculating the distance D (m + 1, n + 1) between the feature areas Ain (m + 1) and Ar (n + 1), the
上記の例は、画像内に配置された複数の特徴点のうち、左上に配置された特徴点を始点として、右側へと順番に処理対象を移動させ、右端の特徴点の次に、下段の左端の特徴点を処理対象とし、右下の特徴点まで順次処理を行う場合を示した。この場合、左端に位置する特徴点については流用可能な距離dはないため、距離計算部203は、右端に位置する特徴点について距離を計算する際にC群の距離DCを保持しない。このように、端部に位置する特徴点に関する処理を実行する際、距離計算部203は、流用可能な距離dの有無に応じて図20に示した処理を実行するか否かを判断する。
In the above example, among the plurality of feature points arranged in the image, the feature point arranged at the upper left is used as the starting point, the processing target is moved in order to the right side, and the lowermost feature point is followed by the lower row. The case is shown in which the leftmost feature point is the target of processing, and processing is performed sequentially up to the lower right feature point. In this case, since there is no divertable distance d for the feature point located at the left end, the
上記の方法を適用すると、図19の例では計算量が3/4に削減される。このように、距離Dの計算負荷を低減することで、対応点探索にかかる処理が効率化され、画像同士のマッチングにかかる処理が高速化される。 When the above method is applied, the calculation amount is reduced to 3/4 in the example of FIG. In this way, by reducing the calculation load of the distance D, the processing for searching for corresponding points is made efficient, and the processing for matching images is accelerated.
以上、サーバ装置の機能について説明した。
[2−5.処理の流れ]
次に、図21〜図33を参照しながら、端末装置100及びサーバ装置200が実行する処理の流れについて説明する。
The function of the server device has been described above.
[2-5. Process flow]
Next, the flow of processing executed by the
(2−5−1.端末装置の動作)
まず、図21及び図22を参照しながら、端末装置100の動作に係る処理の流れについて説明する。
(2-5-1. Operation of terminal device)
First, the flow of processing related to the operation of the
図21は、第2実施形態に係る端末装置の動作について説明するためのフロー図である。図22は、第2実施形態に係る端末装置の動作のうち、特徴量の計算に関する動作について説明するためのフロー図である。 FIG. 21 is a flowchart for explaining the operation of the terminal device according to the second embodiment. FIG. 22 is a flowchart for explaining operations related to feature quantity calculation among the operations of the terminal device according to the second embodiment.
(端末装置の動作)
(S101)画像取得部102は、ランドマークの認識対象となる画像(入力画像Pin)を取得する。
(Operation of terminal equipment)
(S101) The
例えば、画像取得部102は、外部の記憶装置又は端末装置100に接続されたカメラから入力画像Pinを取得する。また、画像取得部102は、端末装置100が有するカメラ機能を利用して入力画像Pinを取得してもよい。画像取得部102により取得された入力画像Pinは、記憶部101に格納される。
For example, the
(S102)特徴点設定部103は、記憶部101に格納された入力画像Pinを読み出し、読み出した入力画像Pinに複数の特徴点Winを設定する。
例えば、特徴点設定部103は、等間隔に配置された複数の特徴点Winを抽出する方法(Dense Sampling)を用いて入力画像Pinに特徴点Winを設定する。但し、特徴点Winの設定にはFASTなどの方法も適用できる。特徴点設定部103により設定された特徴点Win及び特徴領域Ainの情報は、記憶部101に格納される。また、特徴点Win及び特徴領域Ainの情報は、特徴量計算部104に入力される。
(S102) The feature
For example, the feature
(S103)特徴量計算部104は、S102で設定された特徴点Winの1つを選択する。
(S104)特徴量計算部104は、画素ペア情報101aを参照し、S103で選択した特徴点Winに対応する特徴領域Ainの局所特徴量を計算する。
(S103) The feature
(S104) The feature
例えば、特徴量計算部104は、入力画像Pinの特徴領域Ainから画素ペア毎に各画素の輝度を抽出する(C1)。次いで、特徴量計算部104は、画素ペア毎に抽出した2つの輝度の差分を求めることで、各画素ペアの輝度差を計算する(C2)。次いで、特徴量計算部104は、計算した輝度差の符号(正負)を表すビット値を並べたビット列(局所特徴量)を生成する(C3)。
For example, the feature
(S105)特徴量計算部104は、入力画像Pinに含まれる全ての特徴点Winについて特徴量の計算を終えたか否かを判定する。入力画像Pinに含まれる全ての特徴点Winについて特徴量の計算を終えた場合、処理はS106へと進む。一方、入力画像Pinに含まれる全ての特徴点Winについて特徴量の計算を終えていない場合、処理はS103へと進む。
(S105) The feature
(S106)特徴量計算部104は、入力画像Pinについて計算した局所特徴量の組を送信部105に入力する。そして、送信部105は、特徴量計算部104から入力された局所特徴量をサーバ装置200へ送信する。S106の処理が完了すると、図21に示した一連の処理は終了する。
(S106) The feature
ここで、S104の処理について、さらに説明する。
(S111)特徴量計算部104は、画素ペア情報101aを参照し、特徴点Winの周辺に設定された特徴領域Ainに複数の画素ペアを設定する。
Here, the process of S104 will be further described.
(S111) The feature
S111の処理後、S112〜S116の処理は、A群、B群、C群の順に、各群に属する画素ペアの集合について順次実行される。A群は、特徴領域Ainの左側1/2の範囲に一方の画素が含まれ、右側1/2の範囲に他方の画素が含まれる画素ペアの集合である。B群は、特徴領域Ainの左側1/2の範囲に両方の画素が含まれる画素ペアの集合である。C群は、特徴領域Ainの右側1/2の範囲に両方の画素が含まれる画素ペアの集合である。 After the process of S111, the processes of S112 to S116 are sequentially executed for a set of pixel pairs belonging to each group in the order of the A group, the B group, and the C group. The group A is a set of pixel pairs in which one pixel is included in the left half range of the feature area Ain and the other pixel is included in the right half range. Group B is a set of pixel pairs in which both pixels are included in the left half of the feature area Ain. Group C is a set of pixel pairs in which both pixels are included in the right half of the feature area Ain.
(S112)特徴量計算部104は、流用可能なビット列があるか否かを判定する。B群の画素ペアとC群の画素ペアとは同じ配置である。そのため、例えば、特徴領域Ain(m)の左隣に位置する特徴領域Ain(m−1)の局所特徴量が計算済みの場合、特徴領域A(m−1)のC群のビット列を特徴領域A(m)のB群のビット列に流用できる。
(S112) The feature
処理対象がA群又はC群である場合、流用可能なビット列はないため、処理はS113へと進む。処理対象がB群であり、流用可能なビット列がある場合、特徴量計算部104は、流用元となるC群のビット列を流用先となるB群のビット列とする。そして、S113〜S116の処理は省略され、処理対象がC群に切り替わる。処理対象がB群であり、流用可能なビット列がない場合、処理はS113へと進む。
When the processing target is the A group or the C group, there is no divertable bit string, so the process proceeds to S113. When the processing target is the group B and there is a divertable bit string, the feature
(S113)特徴量計算部104は、処理対象の群に属する画素ペアを1つ選択する。
(S114)特徴量計算部104は、S113で選択した画素ペアの輝度差を計算する。例えば、特徴量計算部104は、入力画像Pinの特徴領域Ainから画素ペアの各画素の輝度を抽出する。そして、特徴量計算部104は、抽出した2つの輝度の差分を求めることで、画素ペアの輝度差を計算する。
(S113) The feature
(S114) The feature
(S115)特徴量計算部104は、S114で計算した輝度差の符号(正負)に対応するビット値を選択し、選択したビット値を局所特徴量のビット値に設定する。
輝度差の符号とビット値とは予め対応付けられている。例えば、正の符号がビット値「1」に対応付けられ、負の符号がビット値「0」に対応付けられている。また、輝度差を計算する際、画素ペアを成す2つの画素のうち、どちらの画素の輝度から、他方の画素の輝度を減算するかも予め設定されている。例えば、座標(X1,Y1)に位置する画素の輝度から座標(X2,Y2)に位置する画素の輝度を減算した輝度差の符号を局所特徴量の生成に利用することが予め設定されている。
(S115) The feature
The sign of the luminance difference and the bit value are associated in advance. For example, a positive sign is associated with the bit value “1”, and a negative sign is associated with the bit value “0”. In addition, when calculating the luminance difference, it is also set in advance which one of the two pixels forming the pixel pair is subtracted from the luminance of the other pixel. For example, it is preset that the sign of the luminance difference obtained by subtracting the luminance of the pixel located at the coordinates (X2, Y2) from the luminance of the pixel located at the coordinates (X1, Y1) is used for generating the local feature amount. .
(S116)特徴量計算部104は、処理対象の群に属する全ての画素ペアを選択し終えたか否かを判定する。全ての画素ペアを選択し終えていない場合、処理はS113へと進む。一方、全ての画素ペアを選択し終えた場合、処理はS117へと進む。
(S116) The feature
(S117)特徴量計算部104は、各群のビット列を結合して局所特徴量とする。また、特徴量計算部104は、C群のビット列を記憶部101に格納して保存する。S117の処理が完了すると、図22に示した一連の処理は終了する。
(S117) The feature
以上、端末装置100の動作に係る処理の流れについて説明した。
(2−5−2.サーバ装置の動作)
次に、図23〜図25を参照しながら、サーバ装置200の動作に係る処理の流れについて説明する。
The processing flow related to the operation of the
(2-5-2. Operation of server device)
Next, the flow of processing related to the operation of the
図23は、第2実施形態に係るサーバ装置の動作について説明するためのフロー図である。図24は、第2実施形態に係るサーバ装置の動作のうち、参照画像の探索に関する動作について説明するためのフロー図である。図25は、第2実施形態に係るサーバ装置の動作のうち、距離計算に関する動作について説明するためのフロー図である。 FIG. 23 is a flowchart for explaining the operation of the server apparatus according to the second embodiment. FIG. 24 is a flowchart for explaining the operation related to the search for the reference image among the operations of the server apparatus according to the second embodiment. FIG. 25 is a flowchart for explaining operations related to distance calculation among the operations of the server device according to the second embodiment.
(S201)受信部202は、端末装置100から入力画像Pinの局所特徴量を受信する。受信部202により受信された入力画像Pinの局所特徴量は、距離計算部203に入力される。
(S201) The receiving
(S202)距離計算部203は、参照画像管理テーブルに含まれる参照画像Prを1つ選択する。
(S203)距離計算部203、投票処理部204、及び判定部205は、S202で選択した参照画像Prの探索処理を実行する。
(S202) The
(S203) The
例えば、距離計算部203は、参照画像Prの特徴領域Arと入力画像Pinの特徴領域Ainとの相違度を表す距離Dを計算する。投票処理部204は、距離計算部203が計算した距離Dに基づいて投票マップMPを生成する。判定部205は、投票処理部204が生成した投票マップMPを利用し、最大の投票数と閾値Thとの比較結果に基づいて参照画像Prが入力画像Pinに存在するか否かを判断する。
For example, the
(S204)判定部205は、参照画像管理テーブルに含まれる全ての参照画像Prを選択し終えたか否かを判定する。参照画像管理テーブルに含まれる全ての参照画像Prを選択し終えていない場合、処理はS202へと進む。一方、参照画像管理テーブルに含まれる全ての参照画像Prを選択し終えた場合、処理はS205へと進む。
(S204) The
(S205)判定部205は、S203の結果に基づき、少なくとも1つの参照画像Prが入力画像Pinに存在したか否かを判定する。少なくとも1つの参照画像Prが入力画像Pinに存在した場合、処理はS206へと進む。一方、S203の結果から、少なくとも1つの参照画像Prが入力画像Pinに存在すると判定されなかった場合、処理はS207へと進む。
(S205) The
(S206)判定部205は、対応する参照画像Prの参照画像管理テーブルを記憶部201から読み出し、参照画像Prに含まれるランドマークの情報を端末装置100に送信する。S206の処理が完了すると、図23に示した一連の処理は終了する。
(S206) The
(S207)判定部205は、ランドマークの検出に失敗した旨を示すエラー情報を端末装置100に送信する。S207の処理が完了すると、図23に示した一連の処理は終了する。
(S207) The
ここで、S203の処理について、さらに説明する。
(S221)距離計算部203は、参照画像Prの特徴点Wrを1つ選択する。
(S222)距離計算部203は、受信部202により受信された入力画像Pinの局所特徴量に基づき、入力画像Pinの各特徴領域Ainと参照画像Prの各特徴領域Arとの距離D(特徴の相違度)を計算する。例えば、距離計算部203は、上記の式(1)に従って、局所特徴量LFin、LFrからビット列HVを計算する。但し、LFinは特徴領域Ainの局所特徴量であり、LFrは特徴領域Arの局所特徴量である。
Here, the process of S203 will be further described.
(S221) The
(S222) The
距離計算部203は、ビット列HVの長さ(HVに含まれるビット値1の数)を計算する。ビット列HVの長さは、特徴領域Ain、Ar間における特徴の相違度を表す距離Dとなる。つまり、距離Dが大きいほど特徴領域Ain、Arの特徴が大きく相違し、距離Dが小さいほど特徴領域Ain、Arの特徴が類似していることを表す。距離計算部203により計算された距離Dは、投票処理部204に入力される。
The
(S223)投票処理部204は、参照画像Prの特徴領域Arと、入力画像Pinの各特徴領域Ainとの組について計算された距離Dに基づき、類似度が最も高い(距離Dが最も小さくなる)特徴領域Ar、Ainの組を抽出する。また、投票処理部204は、抽出した組に対応する特徴点Win、Wrの組を特定する。投票処理部204は、特徴領域Arの特徴点Wrと参照画像Prの中心との位置関係に基づき、参照画像Prの中心が位置する入力画像Pin内の位置(特定点)を検出(特定)する。
(S223) The
(S224)投票処理部204は、S223で特定した特定点に対応する投票マップMPの位置(枡目)に投票する。つまり、投票処理部204は、特定点の座標を含む投票マップMPの枡目を抽出し、抽出した枡目に対応するカウンタのカウント値(投票数)をカウントアップする。
(S224) The
(S225)投票処理部204は、参照画像Prに含まれる全ての特徴点を選択し終えたか否かを判定する。参照画像Prに含まれる全ての特徴点を選択し終えていない場合、処理はS221へと進む。一方、参照画像Prに含まれる全ての特徴点を選択し終えた場合、処理はS226へと進む。
(S225) The
(S226)判定部205は、投票マップMPから投票数の最大値を抽出する。
(S227)判定部205は、S226で抽出した投票数の最大値が閾値Thより大きいか否かを判定する。投票数の最大値が閾値Thより大きい場合、処理はS229へと進む。一方、投票数の最大値が閾値Thより大きくない場合、処理はS228へと進む。
(S226) The
(S227) The
(S228)判定部205は、S203の処理結果として、入力画像Pin中に参照画像Prが存在しないと判定する。S228の処理が完了すると、図24に示した一連の処理は終了する。
(S228) The
(S229)判定部205は、S203の処理結果として、入力画像Pin中に参照画像Prが存在すると判定する。S229の処理が完了すると、図24に示した一連の処理は終了する。
(S229) The
ここで、S222の処理について、さらに説明する。
(S231)距離計算部203は、入力画像Pinに配置された複数の特徴点Win(m)(m=1,2,…、M)について、左上を始点として、右下を終点とする特徴点Winの位置を示すインデックスjを1に初期化する。つまり、Win(1)を左上の特徴点とし、jが大きくなるにつれて、特徴点の位置が右側へと移動し、右端に位置する特徴点の次は下段左端の特徴点に位置が移動し、Win(M)が右下の特徴点となるようにjに応じて特徴点Win(j)の位置が特定される。
Here, the process of S222 will be further described.
(S231) The
(S232)距離計算部203は、処理対象の特徴領域Ar(n)の局所特徴量のうちA群のビット列と、特徴領域Ain(j)の局所特徴量のうちA群のビット列との距離DAを計算する。つまり、距離計算部203は、距離DAとして、A群のビット列同士の排他的論理和を計算する。
(S232) The
(S233)距離計算部203は、B群について流用可能な計算結果があるか否かを判定する。
(判定#1)距離計算部203は、特徴領域Ain(j)、Ain(j−1)の重複領域があるか否かを判定する。例えば、jが1の場合、Ain(j−1)がないため、距離計算部203は、重複領域がないと判定する。また、特徴領域Ain(j)が左端に位置する場合、特徴領域Ain(j)、Ain(j−1)は重複しないため、距離計算部203は、重複領域がないと判定する。
(S233) The
(Decision # 1) The
(判定#2)判定#1で重複領域があると判定した場合、距離計算部203は、特徴領域Ar(n)、Ar(n−1)の重複領域があるか否かを判定する。例えば、Ar(n)が左上に位置する場合、Ar(n−1)がないため、距離計算部203は、重複領域がないと判定する。また、特徴領域Ar(n)が左端に位置する場合、特徴領域Ar(n)、Ar(n−1)は重複しないため、距離計算部203は、重複領域がないと判定する。
(Decision # 2) When it is determined in the
上記の判定#1で特徴領域Ain(j)、Ain(j−1)の重複領域がないと判定した場合、距離計算部203は、流用可能な計算結果がないと判定する。また、上記の判定#2で特徴領域Ar(n)、Ar(n−1)の重複領域がないと判定した場合も、距離計算部203は、流用可能な計算結果がないと判定する。一方、上記の判定#2で特徴領域Ar(n)、Ar(n−1)の重複領域があると判定した場合、距離計算部203は、流用可能な計算結果があると判定する。
When it is determined in the
流用可能な計算結果があると判定された場合、処理はS235へと進む。一方、流用可能な計算結果がないと判定された場合、処理はS234へと進む。
(S234)距離計算部203は、処理対象の特徴領域Ar(n)の局所特徴量のうちB群のビット列と、特徴領域Ain(j)の局所特徴量のうちB群のビット列との距離DB(j,n)を計算する。つまり、距離計算部203は、距離DB(j,n)として、B群のビット列同士の排他的論理和を計算する。
If it is determined that there is a divertable calculation result, the process proceeds to S235. On the other hand, if it is determined that there is no divertable calculation result, the process proceeds to S234.
(S234) The
(S235)距離計算部203は、処理対象の特徴領域Ar(n)の局所特徴量のうちB群のビット列と、特徴領域Ain(j)の局所特徴量のうちB群のビット列との距離DB(j,n)として、過去に計算した流用可能な計算結果を利用する。つまり、距離計算部203は、特徴領域Ar(n−1)の局所特徴量のC群のビット列と、特徴領域Ain(j−1)の局所特徴量のうちC群のビット列との距離DC(j−1,n−1)を距離DB(j,n)とする。距離DC(j−1,n−1)は、距離記録テーブルに格納されている。
(S235) The
(S236)距離計算部203は、処理対象の特徴領域Ar(n)の局所特徴量のうちC群のビット列と、特徴領域Ain(j)の局所特徴量のうちC群のビット列との距離DC(j,n)を計算する。つまり、距離計算部203は、距離DC(j,n)として、C群のビット列同士の排他的論理和を計算する。
(S236) The
(S237)距離計算部203は、S236で計算した距離DC(j,n)を距離記録テーブルに格納する。このとき、距離計算部203は、距離DC(j,n)を距離記録テーブルのd(j,n)欄に格納する。
(S237) The
(S238)距離計算部203は、距離DA(j,n)、距離DB(j,n)、及び距離DC(j,n)を加算して、特徴領域Ain(j)、Ar(n)の距離D(j,n)を求める。
(S238) The
(S239)距離計算部203は、インデックスjをインクリメント(j=j+1)する。つまり、距離計算部203は、処理対象とする特徴領域Ainを移動させる。
(S240)距離計算部203は、jがNより大きい(j>N)か否かを判定する。j>Nである場合、図25に示した一連の処理は終了する。一方、j>Nでない場合、処理はS232へと進む。
(S239) The
(S240) The
上記のように、重複領域について流用可能な計算結果がある場合に、その計算結果を流用(S235)して一部の計算(S234)を省略することで、距離計算の負荷が低減される。その結果、対応点探索にかかる処理負担の軽減及び処理の高速化が実現される。 As described above, when there is a calculation result that can be used for the overlapping region, the calculation result can be used (S235) and a part of the calculation (S234) can be omitted to reduce the load of distance calculation. As a result, it is possible to reduce the processing load related to the corresponding point search and to speed up the processing.
以上、サーバ装置200の動作に係る処理の流れについて説明した。
[2−6.変形例#1(重複領域を大きくする例)]
ここで、第2実施形態に係る一変形例(変形例#1)について説明する。変形例#1は、重複領域が特徴領域に占める割合を大きくする方法に関する。例えば、変形例#1の技術は、図6に例示した特徴点の配置よりも密に特徴点を配置する場合や、特徴点の密度を変えずに、特徴領域のサイズを大きくする場合に適用できる。ここでは、図26及び図27を参照しながら、密に特徴点を配置する場合を例に説明する。
The flow of processing related to the operation of the
[2-6. Modification # 1 (Example of Enlarging Overlapping Area)]
Here, a modification (modification # 1) according to the second embodiment will be described.
図26は、第2実施形態の一変形例(変形例#1)に係る特徴点の配置について説明するための図である。図27は、第2実施形態の一変形例(変形例#1)に係る画素ペアの配置及び局所特徴量の構造について説明するための図である。 FIG. 26 is a diagram for explaining the arrangement of feature points according to a modification (Modification # 1) of the second embodiment. FIG. 27 is a diagram for explaining the arrangement of pixel pairs and the structure of local feature amounts according to a modified example (modified example # 1) of the second embodiment.
既に説明した図6の例において、隣り合う特徴領域Ain同士の重複領域は、特徴領域Ainの1/2の範囲に設定されていた。一方、図26の例は、隣り合う特徴領域Ain同士の重複領域が、特徴領域Ainの3/4の範囲に設定されている。この場合、特徴領域Ain(1)には、特徴領域Ain(2)、Ain(3)、Ain(4)の一部が重なる。そのため、画素ペアの配置は、図27に示すように、特徴領域Ainを4つに分割した小領域のいずれに各画素が位置するかを考慮して設定される。 In the example of FIG. 6 which has already been described, the overlapping region between adjacent feature regions Ain is set to a range of 1/2 of the feature region Ain. On the other hand, in the example of FIG. 26, the overlapping area between adjacent characteristic areas Ain is set to a range of 3/4 of the characteristic area Ain. In this case, a part of the feature areas Ain (2), Ain (3), and Ain (4) overlaps the feature area Ain (1). Therefore, the arrangement of the pixel pairs is set in consideration of which of the small regions obtained by dividing the feature region Ain into four as shown in FIG.
既に説明した図9の例は、一方の画素が右領域、他方の画素が左領域に位置する画素ペアをA群、両画素が左領域に位置する画素ペアをB群、両画素が右領域に位置する画素ペアをC群とする画素ペアの分類を示していた。一方、図27の例は、画素ペアを結ぶ線が小領域の境界を跨ぐ数で、A群、B群、C群、D群を分類し、さらに、画素の位置に応じてB群を2つの群に分け、C群を3つの群に分け、D群を4つの群に分けた分類を示している。以下、小領域を左から順に、小領域#1、小領域#2、小領域#3、小領域#4と呼ぶことにする。
In the example of FIG. 9 already described, one pixel is in the right region, the other pixel is in the left region, the pixel pair is A group, both pixels are in the left region, the pixel pair is B group, and both pixels are in the right region. The pixel pair classification in which the pixel pair located at C is the C group is shown. On the other hand, the example of FIG. 27 classifies the A group, the B group, the C group, and the D group by the number of lines connecting the pixel pairs across the boundaries of the small regions, and further sets the B group to 2 according to the pixel position. The grouping is divided into three groups, group C is divided into three groups, and group D is divided into four groups. Hereinafter, the small areas are referred to as
(A群について)
A群に属する画素ペアは、一方の画素が小領域#1に位置し、他方の画素が小領域#4に位置する。そのため、A群に属する画素ペアを結ぶ線は3つの境界を跨ぐことになる。
(About Group A)
In the pixel pair belonging to the A group, one pixel is located in the
(B群について)
B群は、B1群とB2群とに分けられる。B1群に属する画素ペアは、一方の画素が小領域#1に位置し、他方の画素が小領域#3に位置する。B2群に属する画素ペアは、一方の画素が小領域#2に位置し、他方の画素が小領域#4に位置する。そのため、B1、B2群に属する画素ペアを結ぶ線は2つの境界を跨ぐ。
(About Group B)
The B group is divided into a B1 group and a B2 group. In the pixel pair belonging to the group B1, one pixel is located in the
B1群の画素ペアとB2群の画素ペアとは同じ配置となるように設定される。そのため、B2群は、B1群に関する局所特徴量又は距離Dの計算時に流用可能なビット列又は距離Dの一部(距離d)を与える。 The pixel pairs in the B1 group and the pixel pairs in the B2 group are set to have the same arrangement. Therefore, the B2 group gives a bit string or a part of the distance D (distance d) that can be used when calculating the local feature amount or the distance D regarding the B1 group.
例えば、特徴領域Ain(1)のB2群のビット列は、特徴領域Ain(2)のB1群のビット列と一致する。特徴領域Ain(2)の局所特徴量を計算する際に、特徴領域Ain(1)のB2群のビット列を流用できる。また、特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちB2群の距離DB2(1,1)は、特徴領域Ar(2)、Ain(2)の距離D(2,2)のうちB1群の距離DB1(2,2)と一致する。そのため、距離D(2,2)を計算する際に距離DB2(1,1)を流用することができる。 For example, the bit string of the B2 group in the feature area Ain (1) matches the bit string of the B1 group in the feature area Ain (2). When calculating the local feature amount of the feature region Ain (2), the bit string of the group B2 of the feature region Ain (1) can be used. In addition, among the distances D (1,1) between the feature regions Ar (1) and Ain (1), the distance DB2 (1,1) of the B2 group is the distance D (between the feature regions Ar (2) and Ain (2). 2, 2) coincides with the distance DB1 (2, 2) of the B1 group. Therefore, the distance DB2 (1, 1) can be used when calculating the distance D (2, 2).
(C群について)
C群は、C1群、C2群、C3群に分けられる。C1群に属する画素ペアは、一方の画素が小領域#1に位置し、他方の画素が小領域#2に位置する。C2群に属する画素ペアは、一方の画素が小領域#2に位置し、他方の画素が小領域#3に位置する。C3群に属する画素ペアは、一方の画素が小領域#3に位置し、他方の画素が小領域#4に位置する。そのため、C1、C2、C3群に属する画素ペアを結ぶ線は1つの境界を跨ぐ。
(About Group C)
Group C is divided into group C1, group C2, and group C3. In the pixel pair belonging to the group C1, one pixel is located in the
C1群の画素ペア、C2群の画素ペア、C3群の画素ペアは同じ配置となるように設定される。そのため、C2群は、C1群に関する局所特徴量又は距離Dの計算時に流用可能なビット列又は距離Dの一部(距離d)を与える。C3群は、C1群又はC2群に関する局所特徴量又は距離Dの計算時に流用可能なビット列又は距離Dの一部(距離d)を与える。 The pixel pair of the C1 group, the pixel pair of the C2 group, and the pixel pair of the C3 group are set to have the same arrangement. Therefore, the C2 group gives a bit string or a part of the distance D (distance d) that can be used when calculating the local feature amount or the distance D related to the C1 group. The C3 group gives a bit string or a part of the distance D (distance d) that can be used when calculating the local feature amount or the distance D related to the C1 group or the C2 group.
例えば、特徴領域Ain(1)のC2群のビット列は、特徴領域Ain(2)のC1群のビット列と一致する。特徴領域Ain(1)のC3群のビット列は、特徴領域Ain(2)のC2群のビット列、特徴領域Ain(3)のC1群のビット列と一致する。そのため、特徴領域Ain(2)の局所特徴量を計算する際に、特徴領域Ain(1)のC2群及びC3群のビット列を流用できる。また、特徴領域Ain(3)の局所特徴量を計算する際に、特徴領域Ain(1)のC3群のビット列を流用できる。 For example, the bit string of the C2 group of the feature area Ain (1) matches the bit string of the C1 group of the feature area Ain (2). The bit string of the C3 group of the feature area Ain (1) matches the bit string of the C2 group of the feature area Ain (2) and the bit string of the C1 group of the feature area Ain (3). Therefore, when calculating the local feature amount of the feature region Ain (2), the bit strings of the C2 group and the C3 group of the feature region Ain (1) can be used. Further, when calculating the local feature amount of the feature region Ain (3), the bit string of the C3 group of the feature region Ain (1) can be diverted.
また、特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちC2群の距離DC2(1,1)は、特徴領域Ar(2)、Ain(2)の距離D(2,2)のうちC1群の距離DC1(2,2)と一致する。特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちC3群の距離DC3(1,1)は、特徴領域Ar(2)、Ain(2)の距離D(2,2)のうちC2群の距離DC2(2,2)と一致する。そのため、距離D(2,2)を計算する際に距離DC2(1,1)、DC3(1,1)を流用することができる。 Further, among the distances D (1, 1) between the feature regions Ar (1) and Ain (1), the distance DC2 (1, 1) of the C2 group is the distance D () between the feature regions Ar (2) and Ain (2). 2, 2) which is the same as the distance DC1 (2, 2) of the C1 group. Among the distances D (1,1) between the feature areas Ar (1) and Ain (1), the distance DC3 (1,1) of the C3 group is the distance D (2,2) between the feature areas Ar (2) and Ain (2). It corresponds to the distance DC2 (2, 2) of the C2 group in 2). Therefore, the distances DC2 (1,1) and DC3 (1,1) can be used when calculating the distance D (2,2).
また、特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちC3群の距離DC3(1,1)は、特徴領域Ar(3)、Ain(3)の距離D(3,3)のうちC1群の距離DC1(3,3)と一致する。そのため、距離D(3,3)を計算する際に距離DC3(1,1)を流用することができる。 In addition, among the distances D (1,1) between the characteristic regions Ar (1) and Ain (1), the distance DC3 (1,1) of the C3 group is the distance D (between the characteristic regions Ar (3) and Ain (3). 3, 3) which is the same as the distance DC1 (3, 3) of the C1 group. Therefore, the distance DC3 (1, 1) can be used when calculating the distance D (3, 3).
(D群について)
D群は、D1群、D2群、D3群、D4群に分けられる。D1群に属する画素ペアは、両画素が小領域#1に位置する。D2群に属する画素ペアは、両画素が小領域#2に位置する。D3群に属する画素ペアは、両画素が小領域#3に位置する。D4群に属する画素ペアは、両画素が小領域#4に位置する。つまり、D1、D2、D3、D4群に属する画素ペアを結ぶ線は境界を跨がない。
(About Group D)
The D group is divided into a D1, D2, D3, and D4 groups. In the pixel pair belonging to the D1 group, both pixels are located in the
D1群の画素ペア、D2群の画素ペア、D3群の画素ペア、D4群の画素ペアは同じ配置となるように設定される。そのため、D2群は、D1群に関する局所特徴量又は距離Dの計算時に流用可能なビット列又は距離Dの一部(距離d)を与える。D3群は、D1群又はD2群に関する局所特徴量又は距離Dの計算時に流用可能なビット列又は距離Dの一部(距離d)を与える。D4群は、D1群、D2群、D3群に関する局所特徴量又は距離Dの計算時に流用可能なビット列又は距離Dの一部(距離d)を与える。 The pixel pair of the D1 group, the pixel pair of the D2 group, the pixel pair of the D3 group, and the pixel pair of the D4 group are set to have the same arrangement. Therefore, the D2 group gives a bit string or a part of the distance D (distance d) that can be used when calculating the local feature amount or the distance D regarding the D1 group. The D3 group gives a bit string or a part of the distance D (distance d) that can be used when calculating the local feature amount or the distance D regarding the D1 group or the D2 group. The D4 group gives a bit string or a part of the distance D (distance d) that can be used when calculating the local feature amount or the distance D regarding the D1, D2, and D3 groups.
例えば、特徴領域Ain(1)のD2群のビット列は、特徴領域Ain(2)のD1群のビット列と一致する。また、特徴領域Ain(1)のD3群のビット列は、特徴領域Ain(2)のD2群のビット列、特徴領域Ain(3)のD1群のビット列と一致する。特徴領域Ain(1)のD4群のビット列は、特徴領域Ain(2)のD3群のビット列、特徴領域Ain(3)のD2群のビット列、特徴領域Ain(4)のD1群のビット列と一致する。 For example, the bit string of the D2 group in the feature area Ain (1) matches the bit string of the D1 group in the feature area Ain (2). The bit string of the D3 group in the feature area Ain (1) matches the bit string of the D2 group in the feature area Ain (2) and the bit string of the D1 group in the feature area Ain (3). The bit string of the D4 group of the feature area Ain (1) matches the bit string of the D3 group of the feature area Ain (2), the bit string of the D2 group of the feature area Ain (3), and the bit string of the D1 group of the feature area Ain (4) To do.
そのため、特徴領域Ain(2)の局所特徴量を計算する際に、特徴領域Ain(1)のD2群、D3群、D4群のビット列を流用できる。また、特徴領域Ain(3)の局所特徴量を計算する際に、特徴領域Ain(1)のD3群、D4群のビット列を流用できる。また、特徴領域Ain(4)の局所特徴量を計算する際に、特徴領域Ain(1)のD4群のビット列を流用できる。 Therefore, when calculating the local feature amount of the feature region Ain (2), the bit strings of the D2, D3, and D4 groups of the feature region Ain (1) can be used. Further, when calculating the local feature amount of the feature region Ain (3), the bit strings of the D3 group and the D4 group of the feature region Ain (1) can be used. In addition, when calculating the local feature amount of the feature region Ain (4), the bit string of the D4 group of the feature region Ain (1) can be used.
また、特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちD2群の距離DD2(1,1)は、特徴領域Ar(2)、Ain(2)の距離D(2,2)のうちD1群の距離DD1(2,2)と一致する。また、特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちD3群の距離DD3(1,1)は、特徴領域Ar(2)、Ain(2)の距離D(2,2)のうちD2群の距離DD2(2,2)と一致する。さらに、距離DD3(1,1)は、特徴領域Ar(3)、Ain(3)の距離D(3,3)のうちD1群の距離DD1(3,3)と一致する。 Further, among the distances D (1, 1) of the feature areas Ar (1) and Ain (1), the distance DD2 (1, 1) of the D2 group is the distance D () of the feature areas Ar (2) and Ain (2). 2, 2) coincides with the distance DD1 (2, 2) of the D1 group. Further, among the distances D (1, 1) of the feature areas Ar (1) and Ain (1), the distance DD3 (1, 1) of the group D3 is the distance D () of the feature areas Ar (2) and Ain (2). 2, 2), which matches the distance DD2 (2, 2) of the D2 group. Further, the distance DD3 (1, 1) matches the distance DD1 (3, 3) of the D1 group among the distances D (3, 3) of the feature regions Ar (3), Ain (3).
また、特徴領域Ar(1)、Ain(1)の距離D(1,1)のうちD4群の距離DD4(1,1)は、特徴領域Ar(2)、Ain(2)の距離D(2,2)のうちD3群の距離DD3(2,2)と一致する。さらに、距離DD4(1,1)は、特徴領域Ar(3)、Ain(3)の距離D(3,3)のうちD2群の距離DD2(3,3)と一致する。そして、距離DD4(1,1)は、特徴領域Ar(4)、Ain(4)の距離D(4,4)のうちD1群の距離DD1(4,4)と一致する。 The distance DD4 (1,1) of the D4 group out of the distance D (1,1) between the feature regions Ar (1) and Ain (1) is the distance D () between the feature regions Ar (2) and Ain (2). 2, 2), which coincides with the distance DD3 (2, 2) of the D3 group. Furthermore, the distance DD4 (1, 1) matches the distance DD2 (3, 3) of the D2 group among the distances D (3, 3) of the feature regions Ar (3), Ain (3). The distance DD4 (1, 1) matches the distance DD1 (4, 4) of the D1 group among the distances D (4, 4) of the feature regions Ar (4), Ain (4).
そのため、距離D(2,2)を計算する際に距離DD2(1,1)、DD3(1,1)、DD4(1,1)を流用することができる。また、距離D(3,3)を計算する際に距離DD3(1,1)、DD4(1,1)を流用することができる。さらに、距離D(4,4)を計算する際に距離DD4(1,1)を流用することができる。 Therefore, when calculating the distance D (2, 2), the distances DD2 (1, 1), DD3 (1, 1), and DD4 (1, 1) can be used. Further, when calculating the distance D (3, 3), the distances DD3 (1, 1) and DD4 (1, 1) can be used. Furthermore, the distance DD4 (1, 1) can be used when calculating the distance D (4, 4).
上記の流用を容易にするため、図27に示すように、局所特徴量は、A群、B1群、B2群、C1群、…、C3群、D1群、…、D4群のビット列をそれぞれ結合したビット列で表現される。また、距離Dは、同じ群のビット列同士の距離を加算した値で表現される。変形例#1の場合、上記のように流用可能なビット列及び距離dの種類が変更されるが、図22や図25などに記載した処理フローの基本的な流れは同じである。
In order to facilitate the above-mentioned diversion, as shown in FIG. 27, the local feature amounts are obtained by combining bit groups of A group, B1 group, B2 group, C1 group,..., C3 group, D1 group,. It is expressed as a bit string. The distance D is expressed by a value obtained by adding the distances between bit strings of the same group. In the case of the modified
以上、変形例#1について説明した。
[2−7.変形例#2(2次元的に特徴領域の一部が重複する配置)]
次に、第2実施形態に係る一変形例(変形例#2)について説明する。変形例#2は、上下左右に隣接する特徴領域が一部で重なるように配置する方法に関する。
The
[2-7. Modification # 2 (Arrangement in which part of the feature region overlaps two-dimensionally)]
Next, a modification (modification # 2) according to the second embodiment will be described. The modified
(2−7−1.特徴点、画素ペア、距離記録テーブル)
図28〜図30を参照しながら、変形例#2に係る特徴点の配置、画素ペアの配置、距離記録テーブルの設定などについて説明する。
(2-7-1. Feature points, pixel pairs, distance recording table)
With reference to FIGS. 28 to 30, the arrangement of feature points, the arrangement of pixel pairs, the setting of a distance recording table, and the like according to the modified
図28は、第2実施形態の一変形例(変形例#2)に係る特徴点の配置について説明するための図である。図29は、第2実施形態の一変形例(変形例#2)に係る画素ペアの配置及び局所特徴量の構造について説明するための図である。図30は、第2実施形態の一変形例(変形例#2)に係る距離情報の一例を示した図である。 FIG. 28 is a diagram for describing arrangement of feature points according to a modification (Modification # 2) of the second embodiment. FIG. 29 is a diagram for explaining the arrangement of pixel pairs and the structure of local feature amounts according to a modification (modification # 2) of the second embodiment. FIG. 30 is a diagram illustrating an example of distance information according to a modification (Modification # 2) of the second embodiment.
図28の例は、上下左右に隣接する特徴領域Ainが、特徴領域Ainの1/2の範囲で重なるように特徴点Winの配置及び特徴領域Ainのサイズを設定する場合を示している。この例では2次元的な座標表示を利用して特徴点Winの位置が表現されている。特徴領域Ainの位置についても同様である。 The example of FIG. 28 shows a case where the arrangement of the feature points Win and the size of the feature area Ain are set so that the feature areas Ain that are adjacent in the vertical and horizontal directions overlap in the range of ½ of the feature area Ain. In this example, the position of the feature point Win is expressed using a two-dimensional coordinate display. The same applies to the position of the feature region Ain.
例えば、左上端の特徴点がWin(1,1)、Win(1,1)の右隣の特徴点がWin(1,2)、Win(1,1)の下段の特徴点がWin(2,1)である。また、特徴領域Ain(1,1)の右領域と特徴領域Ain(1,2)の左領域とが重なり、特徴領域Ain(1,1)の下側1/2の領域(下領域)と特徴領域Ain(2,1)の上側1/2の領域(上領域)とが重なる。さらに、特徴領域Ain(1,2)の左下1/4の領域(左下領域)と、特徴領域Ain(2,1)の右上1/4の領域(右上領域)とが重なる。このように、変形例#2では様々な形状及びサイズの重複領域が考慮される。
For example, the feature point at the upper left corner is Win (1,1), the feature point right next to Win (1,1) is Win (1,2), and the feature point below Win (1,1) is Win (2 , 1). Further, the right region of the feature region Ain (1, 1) and the left region of the feature region Ain (1, 2) overlap, and the lower half region (lower region) of the feature region Ain (1, 1) The upper half region (upper region) of the feature region Ain (2, 1) overlaps. Furthermore, the lower left quarter area (lower left area) of the feature area Ain (1, 2) and the upper right quarter area (upper right area) of the feature area Ain (2, 1) overlap. As described above, the modified
変形例#2の場合、図29に示すように、特徴領域Ainを上下左右に4分割した4つの小領域を利用して画素ペアが分類される。ここでは、右上の小領域(第1象限)を小領域#1、左上の小領域(第2象限)を小領域#2、左下の小領域(第3象限)を#3、右下の小領域(第4象限)を#4と表記する。
In the case of the modified
(A群について)
A群は、対角線上に配置される2つの小領域にそれぞれ画素がある画素ペアの集合である。つまり、A群は、一方の画素が小領域#1にあり、他方の画素が小領域#3にある画素ペア、及び一方の画素が小領域#2にあり、他方の画素が小領域#4にある画素ペアを含む。
(About Group A)
Group A is a set of pixel pairs each having a pixel in two small areas arranged on a diagonal line. That is, in the group A, a pixel pair in which one pixel is in the
(B群について)
B群は、上下に配置される2つの小領域にそれぞれ画素が位置する画素ペアの集合である。B群は、B1群とB2群とに分けられる。B1群は、左領域を上下に分ける小領域#2、#3にそれぞれ画素が位置する画素ペアの集合である。B2群は、右領域を上下に分ける小領域#1、#4にそれぞれ画素が位置する画素ペアの集合である。B1群の画素ペアと、B2群の画素ペアとは同じ配置となるように設定される。
(About Group B)
Group B is a set of pixel pairs in which pixels are respectively located in two small areas arranged above and below. The B group is divided into a B1 group and a B2 group. The B1 group is a set of pixel pairs in which pixels are located in
(C群について)
C群は、左右に配置される2つの小領域にそれぞれ画素が位置する画素ペアの集合である。C群は、C1群とC2群とに分けられる。C1群は、上領域を左右に分ける小領域#1、#2にそれぞれ画素が位置する画素ペアの集合である。C2群は、下領域を左右に分ける小領域#3、#4にそれぞれ画素が位置する画素ペアの集合である。C1群の画素ペアと、C2群の画素ペアとは同じ配置となるように設定される。
(About Group C)
Group C is a set of pixel pairs in which pixels are respectively located in two small regions arranged on the left and right. Group C is divided into group C1 and group C2. Group C1 is a set of pixel pairs in which pixels are located in
(D群について)
D群は、各小領域に2つの画素が位置する画素ペアの集合である。D群は、D1群、D2群、D3群、D4群に分けられる。D1群は、小領域#1に各画素が位置する画素ペアである。D2群は、小領域#2に各画素が位置する画素ペアである。D3群は、小領域#3に各画素が位置する画素ペアである。D4群は、小領域#4に各画素が位置する画素ペアである。D1群、D2群、D3群、D4群の画素ペアは同じ配置となるように設定される。
(About Group D)
Group D is a set of pixel pairs in which two pixels are located in each small region. The D group is divided into a D1, D2, D3, and D4 groups. The D1 group is a pixel pair in which each pixel is located in the
変形例#2の場合も、局所特徴量は、A群、B1群、B2群、C1群、C2群、D1群、…、D4群のビット列を結合したビット列で表現される。また、距離Dは、同じ群のビット列同士の距離を加算した値で表現される。また、流用可能な距離dを格納するための距離記録テーブルは、図30に示すように、B2群用テーブル、C2群用テーブル、D3群用テーブル、D4群用テーブルの4通り用意される。
Also in the
(2−7−2.サーバ装置の動作)
ここで、図31〜図33を参照しながら、変形例#2に係るサーバ装置200の動作について説明する。但し、変形例#2において主に変形される部分は、上述したS222に係る処理の流れにある。そのため、この部分について説明する。
(2-7-2. Operation of server device)
Here, the operation of the
図31は、第2実施形態の一変形例(変形例#2)に係るサーバ装置の動作のうち、距離計算に関する動作について説明するための第1のフロー図である。図32は、第2実施形態の一変形例(変形例#2)に係るサーバ装置の動作のうち、距離計算に関する動作について説明するための第2のフロー図である。図33は、第2実施形態の一変形例(変形例#2)に係るサーバ装置の動作のうち、距離計算に関する動作について説明するための第3のフロー図である。 FIG. 31 is a first flowchart for explaining operations related to distance calculation among the operations of the server device according to the modified example (modified example # 2) of the second embodiment. FIG. 32 is a second flowchart for explaining the operation related to the distance calculation among the operations of the server device according to the modified example (modified example # 2) of the second embodiment. FIG. 33 is a third flowchart for explaining operations related to distance calculation among the operations of the server apparatus according to the modified example (modified example # 2) of the second embodiment.
(S301)距離計算部203は、入力画像Pinに配置された複数の特徴点Win(m)(m=1,2,…、M)について、左上を始点として、右下を終点とする特徴点Winの位置を示すインデックスjx、jyを1に初期化する。インデックスjx、Jyで表現される座標(jx,jy)は、特徴点Winの2次元的な位置(図28を参照)を表す。但し、座標(1,1)を左上端にある特徴点の位置とする。また、参照画像Prに配置された特徴点Wrも同様に、2次元的な座標(nx,ny)を用いて位置を表現する。
(S301) The
(S302)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちA群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちA群のビット列との距離DAを計算する。つまり、距離計算部203は、距離DAとして、A群のビット列同士の排他的論理和を計算する。
(S302) The
(S303)距離計算部203は、B1群について流用可能な計算結果があるか否かを判定する。
距離計算部203は、特徴領域Ain(jx−1,jy)、Ar(nx−1,ny)があるか否かを判定する。例えば、特徴領域Ain(jx,jy)が左端に位置する場合(jx=1の場合)、Ain(jx−1,jy)はない。同様に、Ar(nx,ny)が左端に位置する場合(nx=1の場合)、Ar(nx−1,ny)はない。
(S303) The
The
特徴領域Ain(jx−1,jy)、Ar(nx−1,ny)がある場合、距離計算部203は、B1群について流用可能な計算結果があると判定する。少なくともAin(jx−1,jy)又はAr(nx−1,ny)がない場合、距離計算部203は、B1群について流用可能な計算結果がないと判定する。
When there are feature regions Ain (jx-1, yy) and Ar (nx-1, ny), the
流用可能な計算結果があると判定された場合、処理はS305へと進む。一方、流用可能な計算結果がないと判定された場合、処理はS304へと進む。
(S304)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちB1群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちB1群のビット列との距離DB1(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DB1(jx,jy,nx,ny)として、B1群のビット列同士の排他的論理和を計算する。
If it is determined that there is a divertable calculation result, the process proceeds to S305. On the other hand, if it is determined that there is no divertable calculation result, the process proceeds to S304.
(S304) The
(S305)距離計算部203は、距離DB1(jx,jy,nx,ny)として、過去に計算した流用可能な計算結果を利用する。つまり、距離計算部203は、特徴領域Ar(nx−1,ny)の局所特徴量のB2群のビット列と、特徴領域Ain(jx−1,jy)の局所特徴量のうちB2群のビット列との距離DB2(jx−1,jy,nx−1,ny)を距離DB1(jx,jy,nx,ny)とする。距離DB2(jx−1,jy,nx−1,ny)は、B2群用テーブルのd(jx−1,jy,nx−1,ny)欄に格納されている。
(S305) The
(S306)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちB2群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちB2群のビット列との距離DB2(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DB2(jx,jy,nx,ny)として、B2群のビット列同士の排他的論理和を計算する。
(S306) The
(S307)距離計算部203は、S306で計算した距離DB2(jx,jy,nx,ny)をB2群用テーブルに格納する。このとき、距離計算部203は、距離DB2(jx,jy,nx,ny)をB2群用テーブルのd(jx,jy,nx,ny)欄に格納する。
(S307) The
(S308)距離計算部203は、C1群について流用可能な計算結果があるか否かを判定する。
距離計算部203は、特徴領域Ain(jx,jy−1)、Ar(nx,ny−1)があるか否かを判定する。例えば、特徴領域Ain(jx,jy)が上端に位置する場合(jy=1の場合)、Ain(jx,jy−1)はない。同様に、Ar(nx,ny)が上端に位置する場合(ny=1の場合)、Ar(nx,ny−1)はない。
(S308) The
The
特徴領域Ain(jx,jy−1)、Ar(nx,ny−1)がある場合、距離計算部203は、C1群について流用可能な計算結果があると判定する。少なくともAin(jx,jy−1)又はAr(nx,ny−1)がない場合、距離計算部203は、C1群について流用可能な計算結果がないと判定する。
When there are feature areas Ain (jx, gy−1) and Ar (nx, ny−1), the
流用可能な計算結果があると判定された場合、処理はS310へと進む。一方、流用可能な計算結果がないと判定された場合、処理はS309へと進む。
(S309)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちC1群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちC1群のビット列との距離DC1(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DC1(jx,jy,nx,ny)として、C1群のビット列同士の排他的論理和を計算する。S309の処理が完了すると、処理は図32のS311へ進む。
If it is determined that there is a divertable calculation result, the process proceeds to S310. On the other hand, if it is determined that there is no divertable calculation result, the process proceeds to S309.
(S309) The
(S310)距離計算部203は、距離DC1(jx,jy,nx,ny)として、過去に計算した流用可能な計算結果を利用する。つまり、距離計算部203は、特徴領域Ar(nx,ny−1)の局所特徴量のC2群のビット列と、特徴領域Ain(jx,jy−1)の局所特徴量のうちC2群のビット列との距離DC2(jx,jy−1,nx,ny−1)を距離DC1(jx,jy,nx,ny)とする。距離DC2(jx,jy−1,nx,ny−1)は、C2群用テーブルのd(jx,jy−1,nx,ny−1)欄に格納されている。S310の処理が完了すると、処理は図32のS311へ進む。
(S310) The
(S311)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちC2群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちC2群のビット列との距離DC2(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DC2(jx,jy,nx,ny)として、C2群のビット列同士の排他的論理和を計算する。
(S311) The
(S312)距離計算部203は、S311で計算した距離DC2(jx,jy,nx,ny)をC2群用テーブルに格納する。このとき、距離計算部203は、距離DC2(jx,jy,nx,ny)をC2群用テーブルのd(jx,jy,nx,ny)欄に格納する。
(S312) The
(S313)距離計算部203は、D1群について流用可能な計算結果があるか否かを判定する。
距離計算部203は、特徴領域Ain(jx,jy−1)、Ar(nx,ny−1)があるか否かを判定する。例えば、特徴領域Ain(jx,jy)が上端に位置する場合(jy=1の場合)、Ain(jx,jy−1)はない。同様に、Ar(nx,ny)が上端に位置する場合(ny=1の場合)、Ar(nx,ny−1)はない。
(S313) The
The
特徴領域Ain(jx,jy−1)、Ar(nx,ny−1)がある場合、距離計算部203は、D1群について流用可能な計算結果があると判定する。少なくともAin(jx,jy−1)又はAr(nx,ny−1)がない場合、距離計算部203は、D1群について流用可能な計算結果がないと判定する。
When there are feature regions Ain (jx, gy−1) and Ar (nx, ny−1), the
流用可能な計算結果があると判定された場合、処理はS315へと進む。一方、流用可能な計算結果がないと判定された場合、処理はS314へと進む。
(S314)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちD1群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちD1群のビット列との距離DD1(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DD1(jx,jy,nx,ny)として、D1群のビット列同士の排他的論理和を計算する。
If it is determined that there is a divertable calculation result, the process proceeds to S315. On the other hand, if it is determined that there is no divertable calculation result, the process proceeds to S314.
(S314) The
(S315)距離計算部203は、距離DD1(jx,jy,nx,ny)として、過去に計算した流用可能な計算結果を利用する。つまり、距離計算部203は、特徴領域Ar(nx,ny−1)の局所特徴量のD4群のビット列と、特徴領域Ain(jx,jy−1)の局所特徴量のうちD4群のビット列との距離DD4(jx,jy−1,nx,ny−1)を距離DD1(jx,jy,nx,ny)とする。距離DD4(jx,jy−1,nx,ny−1)は、D4群用テーブルのd(jx,jy−1,nx,ny−1)欄に格納されている。
(S315) The
(S316)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちD4群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちD4群のビット列との距離DD4(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DD4(jx,jy,nx,ny)として、D4群のビット列同士の排他的論理和を計算する。
(S316) The
(S317)距離計算部203は、S316で計算した距離DD4(jx,jy,nx,ny)をD4群用テーブルに格納する。このとき、距離計算部203は、距離DD4(jx,jy,nx,ny)をD4群用テーブルのd(jx,jy,nx,ny)欄に格納する。
(S317) The
(S318)距離計算部203は、D2群について流用可能な計算結果があるか否かを判定する。
距離計算部203は、特徴領域Ain(jx,jy−1)、Ar(nx,ny−1)があるか否かを判定する。例えば、特徴領域Ain(jx,jy)が上端に位置する場合(jy=1の場合)、Ain(jx,jy−1)はない。同様に、Ar(nx,ny)が上端に位置する場合(ny=1の場合)、Ar(nx,ny−1)はない。
(S318) The
The
特徴領域Ain(jx,jy−1)、Ar(nx,ny−1)がある場合、距離計算部203は、D2群について流用可能な計算結果があると判定する。少なくともAin(jx,jy−1)又はAr(nx,ny−1)がない場合、距離計算部203は、D2群について流用可能な計算結果がないと判定する。
When there are feature regions Ain (jx, gy−1) and Ar (nx, ny−1), the
流用可能な計算結果があると判定された場合、処理はS320へと進む。一方、流用可能な計算結果がないと判定された場合、処理はS319へと進む。
(S319)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちD2群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちD2群のビット列との距離DD2(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DD2(jx,jy,nx,ny)として、D2群のビット列同士の排他的論理和を計算する。S319の処理が完了すると、処理は図33のS321へ進む。
If it is determined that there is a divertable calculation result, the process proceeds to S320. On the other hand, if it is determined that there is no divertable calculation result, the process proceeds to S319.
(S319) The
(S320)距離計算部203は、距離DD2(jx,jy,nx,ny)として、過去に計算した流用可能な計算結果を利用する。つまり、距離計算部203は、特徴領域Ar(nx,ny−1)の局所特徴量のD3群のビット列と、特徴領域Ain(jx,jy−1)の局所特徴量のうちD3群のビット列との距離DD3(jx,jy−1,nx,ny−1)を距離DD2(jx,jy,nx,ny)とする。距離DD3(jx,jy−1,nx,ny−1)は、D3群用テーブルのd(jx,jy−1,nx,ny−1)欄に格納されている。S320の処理が完了すると、処理は図33のS321へ進む。
(S320) The
(S321)距離計算部203は、D4群について流用可能な計算結果があるか否かを判定する。
距離計算部203は、特徴領域Ain(jx−1,jy)、Ar(nx−1,ny)があるか否かを判定する。例えば、特徴領域Ain(jx,jy)が左端に位置する場合(jx=1の場合)、Ain(jx−1,jy)はない。同様に、Ar(nx,ny)が左端に位置する場合(nx=1の場合)、Ar(nx−1,ny)はない。
(S321) The
The
特徴領域Ain(jx−1,jy)、Ar(nx−1,ny)がある場合、距離計算部203は、D4群について流用可能な計算結果があると判定する。少なくともAin(jx−1,jy)又はAr(nx−1,ny)がない場合、距離計算部203は、D4群について流用可能な計算結果がないと判定する。
When there are feature regions Ain (jx-1, yy) and Ar (nx-1, ny), the
流用可能な計算結果があると判定された場合、処理はS323へと進む。一方、流用可能な計算結果がないと判定された場合、処理はS322へと進む。
(S322)距離計算部203は、処理対象の特徴領域Ar(nx,ny)の局所特徴量のうちD3群のビット列と、特徴領域Ain(jx,jy)の局所特徴量のうちD3群のビット列との距離DD3(jx,jy,nx,ny)を計算する。つまり、距離計算部203は、距離DD3(jx,jy,nx,ny)として、D3群のビット列同士の排他的論理和を計算する。S322の処理が完了すると、処理はS324へ進む。
If it is determined that there is a divertable calculation result, the process proceeds to S323. On the other hand, if it is determined that there is no divertable calculation result, the process proceeds to S322.
(S322) The
(S323)距離計算部203は、距離DD3(jx,jy,nx,ny)として、過去に計算した流用可能な計算結果を利用する。つまり、距離計算部203は、特徴領域Ar(nx−1,ny)の局所特徴量のD4群のビット列と、特徴領域Ain(jx−1,jy)の局所特徴量のうちD4群のビット列との距離DD4(jx−1,jy,nx−1,ny)を距離DD3(jx,jy,nx,ny)とする。距離DD4(jx−1,jy,nx−1,ny)は、D4群用テーブルのd(jx,jy−1,nx,ny−1)欄に格納されている。
(S323) The
(S324)距離計算部203は、距離DA(jx,jy,nx,ny)、距離DB1(jx,jy,nx,ny)、…、距離DD4(jx,jy,nx,ny)を加算する。そして、距離計算部203は、加算値を特徴領域Ain(jx,jy)、Ar(nx,ny)の距離D(jx,jy,nx,ny)とする。
(S324) The
(S325)距離計算部203は、特徴点の座標(jx,jy)を表すインデックスjx、jyを更新する。例えば、jx<Mxである場合、距離計算部203は、jxをインクリメント(jx=jx+1)する。jx=Mxである場合、距離計算部203は、jxを1に更新し、jyをインクリメント(jy=jy+1)する。つまり、距離計算部203は、処理対象とする特徴領域Ainを移動させる。但し、jxの最大数がMxである。
(S325) The
(S326)距離計算部203は、全ての特徴点Winについて処理を終えたか否かを判定する。全ての特徴点Winについて処理を終えている場合、図31〜図33に示した一連の処理は終了する。一方、処理を終えていない特徴点Winがある場合、処理は図31のS302へと進む。
(S326) The
上記のように、重複領域について流用可能な計算結果がある場合に、その計算結果を流用(S305、S310、S315、S320、S323)して一部の計算(S304、S309、S314、S319、S322)を省略することで、距離計算の負荷が低減される。その結果、対応点探索にかかる処理負担の軽減及び処理の高速化が実現される。 As described above, when there is a calculation result that can be diverted for the overlapping region, the calculation result is diverted (S305, S310, S315, S320, S323), and a part of the calculation (S304, S309, S314, S319, S322) is performed. ) Is omitted, the load of distance calculation is reduced. As a result, it is possible to reduce the processing load related to the corresponding point search and to speed up the processing.
以上、変形例#2について説明した。
以上説明したように、第2実施形態に係る技術を適用することにより、対応点探索にかかる処理負荷を低減でき、対象物の有無を高速に判断することが可能になる。
The
As described above, by applying the technology according to the second embodiment, it is possible to reduce the processing load for the corresponding point search and to determine the presence or absence of the target object at high speed.
以上、第2実施形態について説明した。
上記説明においてはランドマークの認識機能を例に説明を進めてきたが、例えば、画像の類否判定を伴う任意のアプリケーションプログラムなどに応用することもできる。また、サーバ装置200で顔認識を行うアプリケーションプログラムやAR(Augmented Reality)を利用したアプリケーションプログラムなどにも応用できる。こうした応用例についても当然に第2実施形態の技術的範囲に属する。
The second embodiment has been described above.
In the above description, the landmark recognition function has been described as an example. However, the present invention can be applied to, for example, an arbitrary application program that involves image similarity determination. Further, the present invention can be applied to an application program for performing face recognition by the
<3.付記>
以上説明した実施形態に関し、さらに以下の付記を開示する。
(付記1) 一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、前記画像領域が重複する重複領域において前記各画像領域に配置された前記各画素ペアの位置が一致するように設定した前記配置規則を表す配置情報を記憶する記憶部と、
前記画像領域に前記配置規則で配置された前記各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された前記各画像領域の特徴量と第2の画像に設定された前記各画像領域の特徴量との距離に基づいて前記第1の画像と前記第2の画像との類否を判定する計算部と
を有し、
前記計算部は、前記重複領域に位置する前記画素ペアの特徴量に関する計算結果を前記記憶部に格納し、当該画素ペアと同じ位置にある、他の前記画像領域における前記画素ペアの特徴量に関する計算の際に前記記憶部に格納した前記計算結果を利用する
情報処理装置。
<3. Addendum>
The following additional notes are disclosed with respect to the embodiment described above.
(Supplementary Note 1) Among the plurality of pixel pairs arranged in a common arrangement rule in each of a plurality of image areas partially overlapping, each of the image areas arranged in each image area in the overlapping area where the image areas overlap A storage unit for storing arrangement information representing the arrangement rule set so that the positions of the pixel pairs match;
A feature amount set of each pixel pair arranged in the image region according to the arrangement rule is used as a feature amount of the image region, and a feature amount of each image region set in the first image and a second amount A calculation unit that determines similarity between the first image and the second image based on a distance from the feature amount of each image region set in the image;
The calculation unit stores a calculation result related to the feature amount of the pixel pair located in the overlap region in the storage unit, and relates to the feature amount of the pixel pair in the other image region at the same position as the pixel pair. An information processing apparatus that uses the calculation result stored in the storage unit during calculation.
(付記2) 前記記憶部は、前記第1の画像に設定された前記各画像領域の特徴量を記憶し、
前記計算部は、前記第2の画像に設定された前記各画像領域に前記配置規則で配置される前記各画素ペアの特徴量を計算する際、前記重複領域に位置する前記画素ペアの特徴量を前記記憶部に格納し、当該画素ペアと同じ位置にある他の前記画素ペアの特徴量の計算を回避して前記記憶部に格納されている前記画素ペアの特徴量を利用する
付記1に記載の情報処理装置。
(Additional remark 2) The said memory | storage part memorize | stores the feature-value of each said image area | region set to the said 1st image,
The calculation unit calculates the feature amount of each pixel pair arranged in the arrangement rule in each image region set in the second image, and the feature amount of the pixel pair located in the overlap region Is stored in the storage unit, and the feature amount of the pixel pair stored in the storage unit is used while avoiding the calculation of the feature amount of the other pixel pair at the same position as the pixel pair. The information processing apparatus described.
(付記3) 前記記憶部は、両方の画素が前記重複領域に含まれる前記画素ペアの集合と、一方の画素が前記重複領域に含まれる前記画素ペアの集合と、両方の画素が前記重複領域に含まれない前記画素ペアの集合とを特定するための集合情報をさらに記憶し、
前記計算部は、前記集合情報に基づいて、両方の画素が前記重複領域に含まれる前記画素ペアを、前記重複領域に位置する前記画素ペアとして利用する
付記1又は2に記載の情報処理装置。
(Supplementary Note 3) The storage unit includes a set of pixel pairs in which both pixels are included in the overlapping region, a set of pixel pairs in which one pixel is included in the overlapping region, and both pixels in the overlapping region. Further storing set information for specifying the set of pixel pairs not included in
The information processing apparatus according to
(付記4) コンピュータが、
一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、前記画像領域が重複する重複領域において前記各画像領域に配置された前記各画素ペアの位置が一致するように設定した前記配置規則を表す配置情報を取得し、
前記画像領域に前記配置規則で配置された前記各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された前記各画像領域の特徴量と第2の画像に設定された前記各画像領域の特徴量との距離に基づいて前記第1の画像と前記第2の画像との類否を判定する処理を実行し、
前記距離を計算する処理において、前記重複領域に位置する前記画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の前記画像領域における前記画素ペアの特徴量に関する計算の際に前記記憶部に格納した前記計算結果を利用する
画像判定方法。
(Appendix 4) The computer
The position of each pixel pair arranged in each image region in the overlapping region where the image regions overlap among the plurality of pixel pairs arranged in a common arrangement rule in each of the plurality of image regions partially overlapping To obtain the placement information representing the placement rule set to match,
A feature amount set of each pixel pair arranged in the image region according to the arrangement rule is used as a feature amount of the image region, and a feature amount of each image region set in the first image and a second amount Executing a process of determining similarity between the first image and the second image based on a distance from the feature amount of each image region set in the image;
In the process of calculating the distance, the calculation result relating to the feature amount of the pixel pair located in the overlap region is stored in the storage unit, and the feature of the pixel pair in the other image region at the same position as the pixel pair An image determination method that uses the calculation result stored in the storage unit when calculating a quantity.
(付記5) コンピュータに、
一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、前記画像領域が重複する重複領域において前記各画像領域に配置された前記各画素ペアの位置が一致するように設定した前記配置規則を表す配置情報を取得し、
前記画像領域に前記配置規則で配置された前記各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された前記各画像領域の特徴量と第2の画像に設定された前記各画像領域の特徴量との距離に基づいて前記第1の画像と前記第2の画像との類否を判定する処理を実行させ、
前記距離を計算する処理において、前記重複領域に位置する前記画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の前記画像領域における前記画素ペアの特徴量に関する計算の際に前記記憶部に格納した前記計算結果を利用する
処理を実行させるためのプログラム。
(Supplementary note 5)
The position of each pixel pair arranged in each image region in the overlapping region where the image regions overlap among the plurality of pixel pairs arranged in a common arrangement rule in each of the plurality of image regions partially overlapping To obtain the placement information representing the placement rule set to match,
A feature amount set of each pixel pair arranged in the image region according to the arrangement rule is used as a feature amount of the image region, and a feature amount of each image region set in the first image and a second amount A process of determining similarity between the first image and the second image based on a distance from the feature amount of each image region set in the image;
In the process of calculating the distance, the calculation result relating to the feature amount of the pixel pair located in the overlap region is stored in the storage unit, and the feature of the pixel pair in the other image region at the same position as the pixel pair A program for executing a process of using the calculation result stored in the storage unit when calculating the quantity.
(付記6) 付記5に記載のプログラムが格納された、コンピュータにより読み取り可能な記録媒体。
(Supplementary Note 6) A computer-readable recording medium in which the program according to
10 情報処理装置
11 記憶部
12 計算部
Ain1、Ain2、Ar1、Ar2 画像領域
dA11、dB11、dC11、dA22、dB22、dC22 距離
Qin1、Qr1、Qin2、Qr2 特徴量
R1 左領域
R2 右領域
10
Claims (5)
前記画像領域に前記配置規則で配置された前記各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された前記各画像領域の特徴量と第2の画像に設定された前記各画像領域の特徴量との距離に基づいて前記第1の画像と前記第2の画像との類否を判定する計算部と
を有し、
前記計算部は、前記重複領域に位置する前記画素ペアの特徴量に関する計算結果を前記記憶部に格納し、当該画素ペアと同じ位置にある、他の前記画像領域における前記画素ペアの特徴量に関する計算の際に前記記憶部に格納した前記計算結果を利用する
情報処理装置。 The position of each pixel pair arranged in each image region in the overlapping region where the image regions overlap among the plurality of pixel pairs arranged in a common arrangement rule in each of the plurality of image regions partially overlapping A storage unit for storing arrangement information representing the arrangement rule set to match,
A feature amount set of each pixel pair arranged in the image region according to the arrangement rule is used as a feature amount of the image region, and a feature amount of each image region set in the first image and a second amount A calculation unit that determines similarity between the first image and the second image based on a distance from the feature amount of each image region set in the image;
The calculation unit stores a calculation result related to the feature amount of the pixel pair located in the overlap region in the storage unit, and relates to the feature amount of the pixel pair in the other image region at the same position as the pixel pair. An information processing apparatus that uses the calculation result stored in the storage unit during calculation.
前記計算部は、前記第2の画像に設定された前記各画像領域に前記配置規則で配置される前記各画素ペアの特徴量を計算する際、前記重複領域に位置する前記画素ペアの特徴量を前記記憶部に格納し、当該画素ペアと同じ位置にある他の前記画素ペアの特徴量の計算を回避して前記記憶部に格納されている前記画素ペアの特徴量を利用する
請求項1に記載の情報処理装置。 The storage unit stores the feature amount of each image area set in the first image,
The calculation unit calculates the feature amount of each pixel pair arranged in the arrangement rule in each image region set in the second image, and the feature amount of the pixel pair located in the overlap region 2 is stored in the storage unit, and the feature amount of the pixel pair stored in the storage unit is used while avoiding the calculation of the feature amount of the other pixel pair at the same position as the pixel pair. The information processing apparatus described in 1.
前記計算部は、前記集合情報に基づいて、両方の画素が前記重複領域に含まれる前記画素ペアを、前記重複領域に位置する前記画素ペアとして利用する
請求項1又は2に記載の情報処理装置。 The storage unit includes a set of pixel pairs in which both pixels are included in the overlap region, a set of pixel pairs in which one pixel is included in the overlap region, and both pixels are not included in the overlap region. Further storing set information for specifying the set of pixel pairs;
The information processing apparatus according to claim 1, wherein the calculation unit uses the pixel pair in which both pixels are included in the overlapping area as the pixel pair located in the overlapping area based on the set information. .
一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、前記画像領域が重複する重複領域において前記各画像領域に配置された前記各画素ペアの位置が一致するように設定した前記配置規則を表す配置情報を取得し、
前記画像領域に前記配置規則で配置された前記各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された前記各画像領域の特徴量と第2の画像に設定された前記各画像領域の特徴量との距離に基づいて前記第1の画像と前記第2の画像との類否を判定する処理を実行し、
前記距離を計算する処理において、前記重複領域に位置する前記画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の前記画像領域における前記画素ペアの特徴量に関する計算の際に前記記憶部に格納した前記計算結果を利用する
画像判定方法。 Computer
The position of each pixel pair arranged in each image region in the overlapping region where the image regions overlap among the plurality of pixel pairs arranged in a common arrangement rule in each of the plurality of image regions partially overlapping To obtain the placement information representing the placement rule set to match,
A feature amount set of each pixel pair arranged in the image region according to the arrangement rule is used as a feature amount of the image region, and a feature amount of each image region set in the first image and a second amount Executing a process of determining similarity between the first image and the second image based on a distance from the feature amount of each image region set in the image;
In the process of calculating the distance, the calculation result relating to the feature amount of the pixel pair located in the overlap region is stored in the storage unit, and the feature of the pixel pair in the other image region at the same position as the pixel pair An image determination method that uses the calculation result stored in the storage unit when calculating a quantity.
一部が重複する複数の画像領域の各々に共通の配置規則で配置される複数の画素ペアのうち、前記画像領域が重複する重複領域において前記各画像領域に配置された前記各画素ペアの位置が一致するように設定した前記配置規則を表す配置情報を取得し、
前記画像領域に前記配置規則で配置された前記各画素ペアの特徴量の組を当該画像領域の特徴量として利用し、第1の画像に設定された前記各画像領域の特徴量と第2の画像に設定された前記各画像領域の特徴量との距離に基づいて前記第1の画像と前記第2の画像との類否を判定する処理を実行させ、
前記距離を計算する処理において、前記重複領域に位置する前記画素ペアの特徴量に関する計算結果を記憶部に格納し、当該画素ペアと同じ位置にある、他の前記画像領域における前記画素ペアの特徴量に関する計算の際に前記記憶部に格納した前記計算結果を利用する
処理を実行させるためのプログラム。 On the computer,
The position of each pixel pair arranged in each image region in the overlapping region where the image regions overlap among the plurality of pixel pairs arranged in a common arrangement rule in each of the plurality of image regions partially overlapping To obtain the placement information representing the placement rule set to match,
A feature amount set of each pixel pair arranged in the image region according to the arrangement rule is used as a feature amount of the image region, and a feature amount of each image region set in the first image and a second amount A process of determining similarity between the first image and the second image based on a distance from the feature amount of each image region set in the image;
In the process of calculating the distance, the calculation result relating to the feature amount of the pixel pair located in the overlap region is stored in the storage unit, and the feature of the pixel pair in the other image region at the same position as the pixel pair A program for executing a process of using the calculation result stored in the storage unit when calculating the quantity.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014171298A JP6365117B2 (en) | 2014-08-26 | 2014-08-26 | Information processing apparatus, image determination method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014171298A JP6365117B2 (en) | 2014-08-26 | 2014-08-26 | Information processing apparatus, image determination method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016045837A JP2016045837A (en) | 2016-04-04 |
JP6365117B2 true JP6365117B2 (en) | 2018-08-01 |
Family
ID=55636313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014171298A Expired - Fee Related JP6365117B2 (en) | 2014-08-26 | 2014-08-26 | Information processing apparatus, image determination method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6365117B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6997369B2 (en) | 2017-02-28 | 2022-02-04 | 富士通株式会社 | Programs, ranging methods, and ranging devices |
JP6985132B2 (en) * | 2017-12-20 | 2021-12-22 | 株式会社ダスキン | Facility identification equipment and its program |
CN111385489B (en) * | 2020-03-20 | 2022-09-23 | 百度在线网络技术(北京)有限公司 | Method, device and equipment for manufacturing short video cover and storage medium |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61217884A (en) * | 1985-03-25 | 1986-09-27 | Hitachi Ltd | Discrimination system for feature area of picture |
JP2013037549A (en) * | 2011-08-08 | 2013-02-21 | Sumitomo Electric Ind Ltd | Moving object detector, computer program, and moving object detection method |
JP5625196B2 (en) * | 2012-04-09 | 2014-11-19 | 株式会社モルフォ | Feature point detection device, feature point detection method, feature point detection program, and recording medium |
-
2014
- 2014-08-26 JP JP2014171298A patent/JP6365117B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2016045837A (en) | 2016-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190272438A1 (en) | Method and apparatus for detecting text | |
US10528844B2 (en) | Method and apparatus for distance measurement | |
US20110311100A1 (en) | Method, Apparatus and Computer Program Product for Providing Object Tracking Using Template Switching and Feature Adaptation | |
CN105184238A (en) | Human face recognition method and system | |
JP6347155B2 (en) | Image processing apparatus, image determination method, and program | |
CN103577818A (en) | Method and device for recognizing image characters | |
CN110852311A (en) | Three-dimensional human hand key point positioning method and device | |
WO2017056312A1 (en) | Image processing program and image processing device | |
JP6365117B2 (en) | Information processing apparatus, image determination method, and program | |
CN101286230A (en) | Image processing apparatus and method | |
US9087272B2 (en) | Optical match character classification | |
Chen et al. | Method on water level ruler reading recognition based on image processing | |
CN103955713B (en) | A kind of icon-based programming method and apparatus | |
JP5430636B2 (en) | Data acquisition apparatus, method and program | |
CN103733225A (en) | Characteristic point coordination system, characteristic point coordination method, and recording medium | |
CN111881740A (en) | Face recognition method, face recognition device, electronic equipment and medium | |
CN105190689A (en) | Image processing including adjoin feature based object detection, and/or bilateral symmetric object segmentation | |
CN108255352B (en) | Multi-touch implementation method and system in projection interaction system | |
CN112348008A (en) | Certificate information identification method and device, terminal equipment and storage medium | |
JP6281207B2 (en) | Information processing apparatus, information processing method, and program | |
JP2016045538A (en) | Information processing apparatus, image determination method, and program | |
JP6244887B2 (en) | Information processing apparatus, image search method, and program | |
WO2022205841A1 (en) | Robot navigation method and apparatus, and terminal device and computer-readable storage medium | |
CN114359352A (en) | Image processing method, apparatus, device, storage medium, and computer program product | |
JP2014225168A (en) | Program, device, and method for calculating similarity between images represented by feature point set |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170511 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180521 |
|
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: 20180605 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180618 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6365117 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |