KR101435010B1 - Method for learning of sequential binary code using features and apparatus for the same - Google Patents

Method for learning of sequential binary code using features and apparatus for the same Download PDF

Info

Publication number
KR101435010B1
KR101435010B1 KR1020120146194A KR20120146194A KR101435010B1 KR 101435010 B1 KR101435010 B1 KR 101435010B1 KR 1020120146194 A KR1020120146194 A KR 1020120146194A KR 20120146194 A KR20120146194 A KR 20120146194A KR 101435010 B1 KR101435010 B1 KR 101435010B1
Authority
KR
South Korea
Prior art keywords
binary code
alpha
features
image
learning
Prior art date
Application number
KR1020120146194A
Other languages
Korean (ko)
Other versions
KR20140077409A (en
Inventor
최승진
강윤섭
김세훈
Original Assignee
포항공과대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포항공과대학교 산학협력단 filed Critical 포항공과대학교 산학협력단
Priority to KR1020120146194A priority Critical patent/KR101435010B1/en
Publication of KR20140077409A publication Critical patent/KR20140077409A/en
Application granted granted Critical
Publication of KR101435010B1 publication Critical patent/KR101435010B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

다수의 특징으로 구성된 이미지를 검색하는데 높은 정확도를 제공할 수 있는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법 및 학습 장치가 개시된다. 질의 이미지를 획득하는 단계와, 획득한 질의 이미지로부터 특징을 추출하는 단계와, 추출된 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습하는 단계 및 학습된 다중뷰 알고리즘을 통해 생성된 바이너리 코드와 대응되는 바이너리 코드를 가지는 이미지를 검색하는 단계를 포함한다. 따라서, 다수의 특징으로 구성된 이미지를 검색하는데 높은 정확도를 제공할 수 있고, 내용 기반 이미지 검색 시스템에 성공적으로 적용될 수도 있다.A sequential binary code learning method and apparatus using a plurality of features capable of providing high accuracy in retrieving an image composed of a plurality of features is disclosed. A step of extracting features from the acquired query image, a step of learning a multiple view hashing algorithm using the extracted features, and a step of acquiring a binary code corresponding to the binary code generated through the learned multi- And retrieving the image having the code. Thus, it is possible to provide a high degree of accuracy in retrieving an image composed of a plurality of features, and may be successfully applied to a content-based image retrieval system.

Description

다수의 특징을 이용한 순차적 바이너리 코드 학습 방법 및 학습 장치{METHOD FOR LEARNING OF SEQUENTIAL BINARY CODE USING FEATURES AND APPARATUS FOR THE SAME}TECHNICAL FIELD The present invention relates to a sequential binary code learning method and a learning apparatus using a plurality of features,

본 발명은 데이터 기반 해싱 기술에 관한 것으로, 더욱 상세하게는 이미지의 다수의 특징을 이용하여 높은 정확도를 갖는 바이너리 코드를 생성할 수 있는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법 및 학습 장치에 관한 것이다.The present invention relates to a data-based hashing technique, and more particularly, to a sequential binary code learning method and apparatus using a plurality of features capable of generating binary codes with high accuracy using a plurality of features of an image .

최근접 이웃점 탐색 문제(nearest-neighbor search problem)는 주어진 데이터에서 질의 데이터와 가장 유사한 데이터를 찾아내는 문제이다.The nearest-neighbor search problem is a problem of finding the most similar data to the query data in a given data.

여기서, 최근접 이웃점 탐색은 컴퓨터 비전 분야, 정보 검색 및 기계학습 분야에서 지속적으로 연구되고 있는 분야이다.Here, the nearest neighbors are continuously studied in the areas of computer vision, information retrieval, and machine learning.

또한, 최근점 이웃점 탐색 문제에서 중요한 응용은 내용 기반 이미지 검색(content-based image retrieval, CBIR)이다.Also, an important application in recent point-to-point search problems is content-based image retrieval (CBIR).

여기서, CBIR은 데이터베이스에서 질의 이미지와 가장 유사한 이미지를 검색하는 기술이며, CBIR을 성공적으로 수행하기 위해서는 질의 이미지와 유사한 이미지를 빠른 시간 안에 검색할 수 있어야 한다.Here, CBIR is a technique for retrieving the image most similar to the query image in the database. In order to successfully execute the CBIR, it is necessary to search the image similar to the query image in a short time.

최근접 이웃점 탐색 문제를 가장 간단하게 풀 수 있는 방법은 질의 데이터와 데이터베이스에 존재하는 모든 데이터와의 유사도를 계산하여 가장 유사한 데이터를 찾아내는 것이다. 이와 같은 단순한 방법은 시간 복잡도가 데이터베이스에 존재하는 데이터 개수에 비례한다.The easiest way to solve the nearest neighbor search problem is to find the most similar data by calculating the similarity between the query data and all the data in the database. In this simple method, the time complexity is proportional to the number of data in the database.

CBIR과 같은 응용에서는 데이터베이스의 이미지 개수가 백 만장 이상으로 매우 크기 때문에 위와 같은 단순한 방법으로는 최근접 이웃점 탐색 문제를 해결할 수 없다.In applications such as CBIR, since the number of images in the database is very large, more than one million, the nearest neighbor search problem can not be solved by the simple method described above.

이에 따라 최근접 이웃점 탐색 문제를 적은 시간 복잡도로 해결하기 위해서 트리 구조를 활용하는 알고리즘이 제안되었다.Therefore, an algorithm that utilizes a tree structure has been proposed to solve the nearest point search problem with a small time complexity.

그러나, 트리 구조를 활용하는 알고리즘은 데이터가 저차원으로 표현되었을 경우에 선형 시간복잡도보다 낮은 차원으로 최근접 이웃점을 구할 수 있지만 데이터가 고차원으로 표현되었을 경우 선형 시간 복잡도보다 오히려 느리게 최근접 이웃점을 계산한다.However, the algorithm using the tree structure can obtain the closest neighbors with a lower dimension than the linear time complexity when the data is expressed in low dimensions. However, when the data is expressed in high dimensional order, .

따라서, 고차원 데이터의 경우 최근접 이웃점을 선형 시간복잡도보다 낮게 구하기 어렵기 때문에 질의 데이터와 정확한 최단 이웃 데이터를 구하지 않고 근사 이웃 데이터(approximate nearest neighbor, ANN)를 빠른 시간에 검색하고자 하는 연구가 진행되고 있다.Therefore, it is difficult to find the nearest neighbors to be lower than the linear time complexity in the case of high-dimensional data. Therefore, researches to retrieve approximate nearest neighbor (ANN) quickly without retrieving query data and accurate shortest neighbor data .

해싱은 ANN을 해결하기 위한 대표적인 방법으로서 고차원 데이터를 바이너리 코드로 변환하는 해쉬 함수를 설계하는 알고리즘이다. 여기서 해쉬 함수는 코드 간의 유사도가 데이터의 유사도를 잘 반영할 수 있도록 설계한다.Hashing is an algorithm for designing a hash function that converts high-dimensional data into binary code as a representative method for solving ANN. Here, the hash function is designed so that the degree of similarity between codes can reflect the similarity of data.

초창기 해싱은 데이터 분포를 고려하지 않고 임의로 해쉬 함수를 만들어서 유사한 데이터가 동일한 바이너리 코드를 갖도록 이론적인 근거를 제시하였다. 그러나 데이터 분포를 고려하지 않는 해쉬 함수는 데이터의 유사도를 잘 반영할 수 없기 때문에 최근 들어 데이터의 유사도를 최대한 반영하는 해싱 알고리즘이 제안되었다.In the early days of hashing, a hash function was randomly generated without regard to the distribution of data, and the theoretical basis for the similar data to have the same binary code was proposed. However, since the hash function that does not consider the data distribution can not reflect the similarity of the data, a hashing algorithm that maximizes the similarity of the data has recently been proposed.

데이터 기반 해싱 알고리즘은 데이터의 유사도를 잘 보존하면서 코드 길이가 적은 바이너리 코드를 찾는 것이 목적이다.The data-based hashing algorithm aims to find binary code with a small code length while preserving the similarity of the data.

데이터 기반 해싱 알고리즘은 크게 비지도 학습(Spectral Hashing, Iterative Quantization, Anchor Graph hashing), 준지도 학습(Semi-Supervised Hashing), 지도 학습(Semantic Hashing, Supervised Hashing with Kernel)으로 구분할 수 있다.Data-based hashing algorithms can be broadly divided into spectral hashing, iterative quantization, anchor graph hashing, semi-supervised hashing, and semantic hashing and supervised hashing with kernel.

여기서, 대부분의 데이터 기반 해싱 알고리즘은 이미지가 단일 특징으로만 구성되어 있다고 가정하지만, 이미지는 여러 이질적인 특징들로 표현될 수 있기 때문에 여러 특징들을 이용한 해싱 알고리즘에 대한 연구가 필요하다. 다수의 특징을 활용한 데이터 기반 해싱 알고리즘을 다중 뷰 해싱으로 명명한다.Here, most data-based hashing algorithms assume that an image consists of only a single feature, but since an image can be represented by several heterogeneous features, it is necessary to study a hashing algorithm using various features. A data - based hashing algorithm using multiple features is named multi - view hashing.

대표적인 다중 뷰 해싱 알고리즘은 스펙트럴 해싱 방법을 확장한 방법으로 통합된 유사도를 보존하는 통합된 바이너리 코드를 찾는 것이 목적이다.A typical multi-view hashing algorithm is an extension of the spectral hashing method and aims to find an integrated binary code that preserves the integrated similarity.

그러나 기존의 다중 뷰 해싱 알고리즘은 바이너리 코드 길이가 증가함에 따라 성능이 저하되며 통합된 유사행렬을 단순하게 구하는 문제점이 있다.However, the conventional multi-view hashing algorithm has a problem that the performance is degraded as the length of the binary code increases and the integrated similarity matrix is simply obtained.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 다수의 특징으로 구성된 이미지를 검색하는데 높은 정확도를 제공할 수 있는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to solve the above problems and provide a sequential binary code learning method using a plurality of features capable of providing high accuracy in searching an image composed of a plurality of features.

또한, 본 발명의 다른 목적은 상기 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법을 수행하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치를 제공하는 것이다.It is another object of the present invention to provide a sequential binary code learning apparatus using a plurality of features for performing a sequential binary code learning method using the plurality of features.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법에 따르면, 순차적 바이너리 코드 학습 장치에서 수행하는 방법에 있어서, 질의 이미지를 획득하는 단계와, 상기 획득한 질의 이미지로부터 특징을 추출하는 단계와, 상기 추출된 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습하는 단계 및 상기 학습된 다중 뷰 알고리즘을 통해 생성된 바이너리 코드와 유사한 바이너리 코드를 가지는 이미지를 검색하는 단계를 포함한다.According to another aspect of the present invention, there is provided a sequential binary code learning method using a plurality of features according to the present invention, the method comprising: acquiring a query image; Extracting features from a query image, learning a multi-view hashing algorithm using the extracted features, and retrieving an image having a binary code similar to the binary code generated through the learned multi-view algorithm .

여기서, 상기 추출된 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습하는 단계는, 상기 추출된 특징으로부터 거리 행렬을 획득하고, 상기 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성하는 단계 및 상기 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습하는 단계를 포함할 수 있다.Here, learning the multiple view hashing algorithm using the extracted features may include obtaining a distance matrix from the extracted features, and generating an alpha- integrated similarity matrix using the alpha- And sequentially learning binary codes using the generated alpha- integrated similar matrices.

여기서, 상기 추출된 특징으로부터 거리 행렬을 획득하고, 상기 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성하는 단계는, 상기 추출된 특징을 주성분 분석을 통해 두 개의 부분 집합으로 나누는 디바이드 단계와, 상기 두 개의 부분 집합을 이용하여 상기 추출된 특징이 미리 설정된 개수의 데이터가 될 때까지 나누는 단계와, 상기 미리 설정된 개수로 나누어진 각각의 데이터의 뷰에 해당하는 거리 행렬에 alpha 결합을 수행하여 k 최근접 그래프를 생성하는 단계 및 상기 두개의 부분 집합에서 생성된 k 최근접 그래프가 하나의 k 최근접 그래프로 합쳐져 하나의 k 최근접 그래프를 생성하는 단계를 포함할 수 있다.Here, the step of obtaining a distance matrix from the extracted features and generating an alpha- integrated similar matrix using the alpha- conjugation method on the obtained distance matrix may include: dividing the extracted feature into two subsets through principal component analysis Dividing the extracted features into a predetermined number of data by using the two subsets, and calculating a distance matrix corresponding to a view of each data divided into the predetermined number, Generating a kth nearest neighbor graph and combining the k nearest neighbor graphs generated in the two subset with a k nearest neighbor graph to generate a k nearest neighbor graph.

여기서, 상기 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습하는 단계는, 비 대각 요소를 근사화하여 바이너리 코드를 순차적으로 학습할 수 있다.Here, the step of sequentially learning the binary codes using the generated alpha- integrated similar matrices may sequentially learn the binary codes by approximating non-diagonal elements.

또한, 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치에 따르면, 저장부와, 질의 이미지를 획득하고 획득한 질의 이미지를 제공하는 이미지 획득부 및 상기 이미지 획득부로부터 제공 받은 상기 질의 이미지로부터 특징을 추출하고, 추출된 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습한 후, 학습한 다중 뷰 알고리즘을 통해 생성된 바이너리 코드와 유사한 바이너리 코드를 가지는 이미지를 상기 저장부에서 검색하는 처리부를 포함한다.According to another aspect of the present invention, there is provided a sequential binary code learning apparatus using a plurality of features according to an exemplary embodiment of the present invention. The sequential binary code learning apparatus includes a storage unit, an image acquisition unit that acquires a query image, Extracting features from the query image provided from the image acquiring unit, learning a multi-view hashing algorithm using the extracted features, and generating a binary code having a binary code similar to the binary code generated through the learned multi- And a processing unit for searching an image in the storage unit.

여기서, 상기 제어부는, 상기 추출된 특징으로부터 거리 행렬을 획득하고, 상기 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성한 후, 상기 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습할 수 있다.Here, the controller obtains a distance matrix from the extracted features, generates an alpha- integrated similarity matrix using the alpha- conjugation method on the obtained distance matrix, and then uses the generated alpha- Binary code can be learned sequentially.

여기서, 상기 제어부는, 상기 추출된 특징을 주성분 분석을 통해 두 개의 부분 집합으로 나누고, 상기 두 개의 부분 집합을 이용하여 상기 추출된 특징이 미리 설정된 개수의 데이터가 될 때까지 나눈 후, 상기 미리 설정된 개수로 나누어진 각각의 데이터의 뷰에 해당하는 거리 행렬에 alpha 결합을 수행하여 k 최근접 그래프를 생성하고, 상기 두개의 부분 집합에서 생성된 k 최근접 그래프가 하나의 k 최근접 그래프로 합쳐져 하나의 k 최근접 그래프를 생성할 수 있다.Here, the controller may divide the extracted feature into two subsets through principal component analysis, divide the extracted features until a predetermined number of pieces of data are obtained using the two subsets, The k nearest neighbor graph is generated by performing alpha combining on the distance matrix corresponding to the view of each data divided by the number, and the k nearest neighbor graph generated from the two subset is combined into one k nearest neighbor graph Can be generated.

여기서, 상기 제어부는, 비 대각 요소를 근사화하여 바이너리 코드를 순차적으로 학습할 수 있다.Here, the controller may sequentially learn binary codes by approximating non-diagonal elements.

상기와 같은 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법 및 학습 장치에 따르면, 획득된 질의 이미지로부터 다수의 특징을 추출하고, 추출된 다수의 특징을 이용하여 alpha-통합 유사행렬을 생성하고, 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습한다.According to the above-described sequential binary code learning method and apparatus using a plurality of features according to an embodiment of the present invention, a plurality of features are extracted from the acquired query image, and alpha- A similarity matrix is generated, and the binary code is sequentially learned using the generated alpha- integrated similarity matrix.

따라서, 다수의 특징으로 구성된 이미지를 검색하는데 높은 정확도를 제공할 수 있고, 내용 기반 이미지 검색 시스템에 성공적으로 적용될 수도 있다.Thus, it is possible to provide a high degree of accuracy in retrieving an image composed of a plurality of features, and may be successfully applied to a content-based image retrieval system.

도 1은 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법을 나타내는 개념도이다.
도 2는 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 과정을 나타내는 흐름도이다.
도 3은 도 2 중 다중 뷰 해싱 알고리즘을 학습하는 단계를 구체화한 흐름도이다.
도 4는 본 발명의 일 실시예에 따라 alpha 값 변화에 따른 alpha 통합 유사행렬의 정확도를 나타내는 그래프이다.
도 5는 본 발명의 일 실시예에 따라 alpha 통합 유사행렬을 빠르게 구하는 알고리즘을 나타낸다.
도 6은 본 발명의 일 실시예에 따라 바이너리 코드를 순차적으로 학습하기 위한 알고리즘을 설명하기 위한 개념도이다.
도 7은 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치의 구성을 나타내는 블록도이다.
도 8은 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법을 적용한 이미지 검색 실험과 종래의 방법을 적용한 이미지 검색 실험 결과를 나타낸다.
1 is a conceptual diagram illustrating a sequential binary code learning method using a plurality of features according to an embodiment of the present invention.
FIG. 2 is a flowchart illustrating a sequential binary code learning process using a plurality of features according to an embodiment of the present invention.
FIG. 3 is a flowchart illustrating a step of learning a multiple view hashing algorithm in FIG.
FIG. 4 is a graph illustrating the accuracy of an alpha-integrated similarity matrix according to alpha value change according to an embodiment of the present invention.
Figure 5 illustrates an algorithm for quickly obtaining an alpha integration similarity matrix according to an embodiment of the present invention.
6 is a conceptual diagram for explaining an algorithm for sequentially learning binary codes according to an embodiment of the present invention.
FIG. 7 is a block diagram illustrating a configuration of a sequential binary code learning apparatus using a plurality of features according to an embodiment of the present invention.
FIG. 8 shows an image search experiment using a sequential binary code learning method using a plurality of features according to an exemplary embodiment of the present invention, and an image search experiment result using a conventional method.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the relevant art and are to be interpreted in an ideal or overly formal sense unless explicitly defined in the present application Do not.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the understanding of the present invention, the same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

도 1은 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법을 나타내는 개념도이다.1 is a conceptual diagram illustrating a sequential binary code learning method using a plurality of features according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 순차적 바이너리 코드 학습 장치(100)(이하, 순차적 바이너리 코드 학습 장치라 약칭함)는 질의 이미지로부터 GIST와 HOG 등 다양한 이미지 특징들을 추출하고, 추출한 다양한 이미지 특징들을 이용하여 다중 뷰 해쉬 함수를 통해 통합된 바이너리 코드(0101001)를 생성한다.Referring to FIG. 1, a sequential binary code learning apparatus 100 (hereinafter, referred to as a sequential binary code learning apparatus) extracts various image features such as GIST and HOG from a query image, The integrated binary code (0101001) is generated through a multi-view hash function using various image features.

이후, 순차적 바이너리 코드 학습 장치(100)는 생성한 통합된 바이너리 코드(0101001)와 저장부에 미리 저장된 이미지에 해당하는 바이너리 코드를 비교하여 가장 대응되는 이미지를 검색한다.Then, the sequential binary code learning apparatus 100 compares the generated integrated binary code 0101001 with binary code corresponding to an image stored in the storage unit, and searches for the most corresponding image.

이하, 본 발명의 일 실시예에 따라 순차적 바이너리 코드 학습 장치(100)가 수행하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 과정을 설명하도록 한다.
Hereinafter, a sequential binary code learning process using a plurality of features performed by the sequential binary code learning apparatus 100 according to an embodiment of the present invention will be described.

도 2는 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 과정을 나타내는 흐름도이다.FIG. 2 is a flowchart illustrating a sequential binary code learning process using a plurality of features according to an embodiment of the present invention.

도 2를 참조하면, 순차적 바이너리 코드 학습 장치(100)는 질의 이미지가 획득되는지 여부를 판단하고(S210), 질의 이미지가 획득된 것으로 판단되면 획득한 질의 이미지로부터 복수의 특징을 추출한다(S220).Referring to FIG. 2, the sequential binary code learning apparatus 100 determines whether a query image is acquired (S210), and extracts a plurality of features from the acquired query image if it is determined that the query image is acquired (S220) .

이후, 순차적 바이너리 코드 학습 장치(100)는 단계 220을 통해 추출된 복수의 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습한다(S230).Thereafter, the sequential binary code learning apparatus 100 learns a multiple view hashing algorithm using a plurality of features extracted in step 220 (S230).

순차적 바이너리 코드 학습 장치(100)는 단계 230을 통해 학습된 다중 뷰 해싱 알고리즘을 이용해 질의 이미지와 대응되는 이미지를 미리 저장된 이미로부터 검색한다(S240).In step S240, the sequential binary code learning apparatus 100 retrieves the image corresponding to the query image from the pre-stored image using the learned multi-view hashing algorithm in operation 230.

이하, 도 3을 이용하여 단계 230의 추출된 복수의 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습하는 과정을 구체적으로 설명하도록 한다.
Hereinafter, a process of learning a multiple view hashing algorithm using the extracted features of step 230 will be described in detail with reference to FIG.

도 3은 도 2 중 다중 뷰 해싱 알고리즘을 학습하는 단계를 구체화한 흐름도이고, 도 4는 본 발명의 일 실시예에 따라 alpha 값 변화에 따른 alpha 통합 유사행렬의 정확도를 나타내는 그래프이며, 도 5는 본 발명의 일 실시예에 따라 alpha 통합 유사행렬을 빠르게 구하는 알고리즘을 나타낸다. 또한, 도 6은 본 발명의 일 실시예에 따라 바이너리 코드를 순차적으로 학습하기 위한 알고리즘을 설명하기 위한 개념도이다.FIG. 3 is a flowchart illustrating a step of learning a multiple view hashing algorithm in FIG. 2, FIG. 4 is a graph illustrating an accuracy of an alpha integrated similarity matrix according to an alpha value change according to an embodiment of the present invention, And shows an algorithm for quickly obtaining an alpha integration similar matrix according to an embodiment of the present invention. 6 is a conceptual diagram illustrating an algorithm for sequentially learning binary codes according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 다중 뷰 해싱 알고리즘은 스펙트럴 해싱 방법을 확장한 것이므로 먼저 스펙트럴 해싱에 대한 설명을 간단히 기술한다.Since the multi view hashing algorithm according to an embodiment of the present invention is an extension of the spectral hashing method, a description of spectral hashing will be briefly described first.

스펙트럴 해싱은 데이터의 유사도를 잘 보존할 수 있는 컴팩트한 바이너리 코드를 찾는 것이 목적이며 목적식은 다음의 수학식 1과 같다.Spectral hashing is intended to find a compact binary code that can preserve the similarity of data well, and the objective expression is expressed by Equation 1 below.

Figure 112012104172710-pat00001
Figure 112012104172710-pat00001

수학실 1에서

Figure 112012104172710-pat00002
는 i 번째 데이터와 j 번째 데이터의 유사도를 표현한 유사행렬,
Figure 112012104172710-pat00003
는 i번째 데이터에 해당하는 바이너리 코드,
Figure 112012104172710-pat00004
는 데이터의 바이너리 코드를 모두 모아둔 바이너리 코드 행렬, M과 N은 바이너리 코드 길이와 데이터 개수를 의미한다.In mathematics room 1
Figure 112012104172710-pat00002
A similarity matrix expressing the degree of similarity between the i-th data and the j-th data,
Figure 112012104172710-pat00003
Is a binary code corresponding to the i-th data,
Figure 112012104172710-pat00004
Denotes a binary code matrix in which binary codes of data are all collected, and M and N denote a binary code length and the number of data.

수학식 1은 대표적인 NP 난해 문제로서 정확한 해답을 다항시간 안에 찾을 수 없다. 따라서 스펙트럴 해싱은 Laplace-Beltrami operator를 이용하여 바이너리 코드를 구한다.Equation (1) is a representative NP problem and can not find an exact answer within a polynomial time. Therefore, spectral hashing uses the Laplace-Beltrami operator to obtain the binary code.

스펙트럴 해싱 기반의 기존 다중 뷰 해싱 알고리즘은 크게 두 가지 방법이 존재한다. 첫 번째 방법은 composite hashing with multiple information sources(CHMIS)이고, 두 번째 방법은 multi-view hashing for cross-view similarity(MVH-CS)이다.There are two main methods of existing multiple view hashing algorithm based on spectral hashing. The first method is composite hashing with multiple information sources (CHMIS) and the second method is multi-view hashing for cross-view similarity (MVH-CS).

첫 번째 방법에 대해 간략히 설명하기 위하여 특정 뷰에 대한 바이너리 코드를 다음의 수학식 2와 같이 정의한다.To briefly describe the first method, the binary code for a particular view is defined as: < EMI ID = 2.0 >

Figure 112012104172710-pat00005
Figure 112012104172710-pat00005

여기서, 수학식 2에서 sgn은 sign 함수이다. CHMIS는 통합된 유사도를 특정 뷰에서 얻은 유사도를 합하여 얻을 수 있다. 이렇게 얻은 통합된 유사도를 스펙트럴 해싱에 적용하여 통합된 바이너리 코드를 다음의 수학식 3으로 얻을 수 있다.In Equation (2), sgn is a sign function. CHMIS can be obtained by summing the degree of similarity obtained from a specific view. By applying the integrated similarity thus obtained to spectral hashing, an integrated binary code can be obtained by the following equation (3).

Figure 112012104172710-pat00006
Figure 112012104172710-pat00006

여기서, 수학식 3은 스펙트럴 해싱과 동일한 문제이기 때문에 정확한 해를 찾을 수 없으므로 근사 해를 구해야한다. 근사 해를 구하기 위해 다음의 수학식 4를 이용한다.Since Equation (3) is the same problem as spectral hashing, an exact solution can not be found, so an approximate solution should be sought. To obtain an approximate solution, the following Equation (4) is used.

Figure 112012104172710-pat00007
Figure 112012104172710-pat00007

여기서, 수학식 4 중

Figure 112012104172710-pat00008
는 특정 뷰 k에 대한 투영 행렬이다. 수학식 4를 해결하면 통합된 바이너리 코드는 다음의 수학식 5를 통해 얻을 수 있다.In Equation 4,
Figure 112012104172710-pat00008
Is the projection matrix for a particular view k. By solving Equation (4), the integrated binary code can be obtained by the following Equation (5).

Figure 112012104172710-pat00009
Figure 112012104172710-pat00009

여기서, MVH-CS는 유사한 데이터의 경우 서로 다른 뷰에 대해서도 유사한 바이너리 코드를 구하는 알고리즘이다. 각 뷰에 대한 바이너리 코드를 생성한 다음 통합된 바이너리 코드는 다음과 같이

Figure 112012104172710-pat00010
각 뷰에 대한 코드를 합쳐서 구한다.Here, MVH-CS is an algorithm for obtaining similar binary codes for different views in the case of similar data. After generating the binary code for each view, the integrated binary code looks like this
Figure 112012104172710-pat00010
The code for each view is combined.

그러나, 상술한 다중 뷰 해싱 알고리즘은 바이너리 코드 길이가 증가함에 따라 성능이 저하되며 통합된 유사행렬을 단순하게 구하는 단점이 존재한다.However, the multi-view hashing algorithm described above has a disadvantage in that performance is degraded as the length of the binary code increases, and an integrated similarity matrix is simply obtained.

도 3을 참조하면, 순차적 바이너리 코드 학습 장치(100)는 도 2의 단계 220을 통해 추출된 복수의 특징으로부터 거리 행렬을 획득한다(S231).Referring to FIG. 3, the sequential binary code learning apparatus 100 acquires a distance matrix from a plurality of features extracted through step 220 of FIG. 2 (S231).

이후, 순차적 바이너리 코드 학습 장치(100)는 단계 231을 통해 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha 통합 유사행렬을 생성한다(S233).Then, the sequential binary code learning apparatus 100 generates an alpha integrated similarity matrix using the alpha-combining method on the distance matrix obtained in step 231 (S233).

여기서, alpha 통합 유사행렬을 생성하기 위한 alpha 결합 방법을 구체적으로 설명하도록 한다.Here, the alpha combining method for generating the alpha integrated similar matrices will be described in detail.

Alpha 결합 방법은 널리 사용하는 산술 평균, 기하 평균, 조화 평균 등을 alpha 값의 변화에 따라 표현할 수 있는 일반화된 결합방법이다.Alpha combining method is a generalized combining method which can express widely used arithmetic mean, geometric mean, harmonic mean, etc. according to the change of alpha value.

K개의 거리 행렬

Figure 112012104172710-pat00011
이 주어진 경우 통합된 거리 행렬은 다음의 수학식 6을 통해 구할 수 있다.K distance matrix
Figure 112012104172710-pat00011
The integrated distance matrix can be obtained by the following equation (6).

Figure 112012104172710-pat00012
Figure 112012104172710-pat00012

수학식 6에서

Figure 112012104172710-pat00013
는 k번째 뷰에 대한 scailing 요소이며
Figure 112012104172710-pat00014
는 양수 a와 b에 대한 alpha-divergence이고 다음의 수학식 7로 정의된다.In Equation (6)
Figure 112012104172710-pat00013
Is the scailing element for the kth view
Figure 112012104172710-pat00014
Is the alpha-divergence for the positive numbers a and b and is defined by the following equation (7).

Figure 112012104172710-pat00015
Figure 112012104172710-pat00015

수학식 6의 해는 수학식 8로 표현되며 alpha 값에 따라 산술 평균(alpha=-1), 기하평균(alpha=1), 조화평균(alpha=3)으로 표현된다.The solution of Equation (6) is expressed by Equation (8) and is represented by arithmetic mean (alpha = -1), geometric mean (alpha = 1), and harmonic mean (alpha = 3) according to alpha value.

Figure 112012104172710-pat00016
Figure 112012104172710-pat00016

수학식 6의 해는 수학식 16으로 표현되며 alpha 값에 따라 산술 평균(alpha=-1), 기하평균(alpha=1), 조화평균(alpha=3)으로 표현된다. Alpha-결합 방법은 alpha 값이 커짐에 따라 적은 값(거리)에 더 많은 가중치를 부여하는 방법이다.The solution of Equation (6) is expressed by Equation (16) and expressed as an arithmetic mean (alpha = -1), a geometric mean (alpha = 1), and a harmonic mean (alpha = 3) according to an alpha value. The Alpha-combining method is a method of giving more weight to a smaller value (distance) as the alpha value increases.

도 4를 참조하면, 각각의 그래프는 alpha 값의 변화에 따른 본 발명의 일 실시예에 따른 다중 뷰 해싱 알고리즘에 대한 성능의 차이를 나타낸다.Referring to FIG. 4, each graph represents a difference in performance for a multiple view hashing algorithm according to an embodiment of the present invention according to a change in alpha value.

Caltech-256, CIFAR-20, NUS-WIDE 데이터 셋을 이용하였으며 질의 이미지에 대한 정확도로 성능을 평가한다.Caltech-256, CIFAR-20, and NUS-WIDE datasets were used.

도 4를 통해 alpha 값에 따라 성능 차이가 존재하며 alpha가 1 이상일 경우 좋은 성능을 제공한다. 이 것은 적은 거리에 조금 더 많은 가중치를 부여하는 것이 타당하다는 실험 적인 근거로 해설될 수 있다.4, there is a performance difference according to alpha value, and when alpha is 1 or more, good performance is provided. This can be explained by an experimental basis that it is reasonable to give a little more weight to a small distance.

도 5를 참조하면, 도 5는 alpha 결합 방법을 빠르게 수행하는 것으로 데이터 개수가 N이라 가정하였을 경우 단순하게 alpha 결합을 수행하면 시간 복잡도가 0(N^2) 만큼 소요되기 때문에 대용량 데이터에 적용할 수 없다.Referring to FIG. 5, FIG. 5 illustrates a fast alpha combining method. Assuming that the number of data is N, simply performing alpha combining requires a time complexity of 0 (N ^ 2) I can not.

따라서, 이를 해결하기 위해서는 divide-and-conquer 기법을 사용하여 alpha 결합을 빠르게 해결하였다.To solve this problem, we solved the alpha coupling quickly by using the divide-and-conquer technique.

이 방법은 기존의 fast kNN(J. Chen, JMLR-09)의 방법을 변형하여 개발한 알고리즘이다. 우선 divide 과정에서 수학식 9를 이용하여 데이터를 주성분 분석을 통해 두 개의 부분 집합으로 나눈다.This method is an algorithm developed by modifying the existing method of fast kNN (J. Chen, JMLR-09). First, in the divide process, the data is divided into two subsets through principal component analysis using Equation (9).

Figure 112012104172710-pat00017
Figure 112012104172710-pat00017

수학식 9에서

Figure 112012104172710-pat00018
는 데이터 행렬의 주성분 요소이며
Figure 112012104172710-pat00019
은 두 개의 부분 집합이 서로 얼마나 많은 원소들을 공유하는지 결정하는 상수이다. 또한, 수학식 9를 이용하여 데이터가 일정 개수 이하일 때가지 지속적으로 나눈다.In Equation (9)
Figure 112012104172710-pat00018
Is the principal component of the data matrix
Figure 112012104172710-pat00019
Is a constant that determines how many elements the two subsets share with each other. Further, using Equation (9), the data is continuously divided until the number of data is equal to or smaller than a certain number.

데이터 개수가 매우 작아지면 각 뷰에 해당하는 거리 행렬에 alpha 결합을 수행한 다음 k 최근접 그래프를 생성한다. 두 개의 부분집합에서 생성된 k 최근접 그래프는 하나의 k 최근접 그래프로 합쳐지고 이 과정을 반복하면서 모든 데이터에 대한 k 최근접 그래프를 구할 수 있다.When the number of data becomes very small, alpha combination is performed on the distance matrix corresponding to each view, and then k nearest neighbor graph is generated. The k closest graphs generated from the two subsets are combined into one k closest graph and the k closest graph for all data can be obtained by repeating this process.

다시 도 3을 참조하면, 순차적 바이너리 코드 학습 장치(100)는 단계 233을 생성한 alpha 통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습한다(S235).Referring back to FIG. 3, the sequential binary code learning apparatus 100 sequentially learns binary codes using the alpha integrated similarity matrix generating step 233 (S235).

여기서, 바이너리 코드를 순차적으로 학습하는 과정에 대해 구체적으로 설명하도록 한다.Here, the process of sequentially learning the binary codes will be described in detail.

바이너리 코드를 순차적으로 학습하는 것 즉, 순차적 바이너리 코드 학습 알고리즘은 기존 다중 뷰 해싱 방법과 동일하게 스펙트럴 해상 방법을 다중 뷰 데이터로 확장한 것이다.Sequential learning of binary codes, that is, a sequential binary code learning algorithm, is the same as the existing multi view hashing method, in which the spectral resolution method is extended to multiple view data.

다음의 수학식 10은 통합된 유사행렬인

Figure 112012104172710-pat00020
를 잘 보존하는 통합된 바이너리 코드를 찾는 문제로 본 발명에 따른 일 실시예에서도 수학식 10을 해결하기 위해 순차적 해쉬 함수 학습 알고리즘을 개발하였다.The following equation (10)
Figure 112012104172710-pat00020
In order to solve Equation (10), a sequential hash function learning algorithm has been developed in an embodiment according to the present invention.

Figure 112012104172710-pat00021
Figure 112012104172710-pat00021

수학식 10에서

Figure 112012104172710-pat00022
은 통합된 유사행렬,
Figure 112012104172710-pat00023
는 j번째 데이터에 해당하는 통합된 바이너리 코드이다. 통합된 바이너리 코드 간의 거리는 수학식 11로 정의된다.In Equation (10)
Figure 112012104172710-pat00022
Is an integrated similarity matrix,
Figure 112012104172710-pat00023
Is an integrated binary code corresponding to the jth data. The distance between the integrated binary codes is defined by Equation (11).

Figure 112012104172710-pat00024
Figure 112012104172710-pat00024

수학식 11에서

Figure 112012104172710-pat00025
는 k번째 뷰에 해당하는 i번째 데이터의 바이너리 코드이며 수학식 12로 정의된 해쉬 함수를 통해 구할 수 있다.In Equation (11)
Figure 112012104172710-pat00025
Is the binary code of the i-th data corresponding to the k-th view and can be obtained through a hash function defined by Equation (12).

Figure 112012104172710-pat00026
Figure 112012104172710-pat00026

수학식 12를 이용하여 다중 뷰 해싱 알고리즘이 해결하고지 하는 10의 목적식을 정리하면 수학식 13과 같은 형태를 얻을 수 있다.Using Equation (12), the objective equations of 10 solved by the multi-view hashing algorithm can be summarized as Equation (13).

Figure 112012104172710-pat00027
Figure 112012104172710-pat00027

수학식 13을 통해서 통합된 바이너리 코드는

Figure 112012104172710-pat00028
로 근사할 수 있다. 상기 과정에서 근사한 통합된 바이너리 코드를 이용하면 수학식 10을 수학식 14로 표현할 수 있다.The integrated binary code through equation (13)
Figure 112012104172710-pat00028
. Equation (10) can be expressed by Equation (14) using an approximate integrated binary code in the above procedure.

Figure 112012104172710-pat00029
Figure 112012104172710-pat00029

수학식 14는 일반화된 고유치 문제로 해결할 수 있지만, 이를 통해 얻어진 바이너리 코드는 코드 길이가 길어질수록 데이터의 유사도를 잘 반영하지 못하는 단점을 지니고 있다. 이는 바이너리 코드 간의 이계 비상관관계 조건을 수학식 10과 같이 단순하게 근사하여 발생하는 문제이다.Equation (14) can be solved by the generalized eigenvalue problem, but the binary code obtained through this has a disadvantage that it does not reflect the similarity of data as the code length becomes longer. This is a problem that occurs when the non-correlation condition between binary codes is simply approximated as shown in Equation (10).

본 발명에 따른 일 실시예에서는 이 문제를 해결하기 위해 순차적으로 바이너리 코드를 학습하는 알고리즘을 개발하였다.In order to solve this problem, an embodiment of the present invention has developed an algorithm for sequentially learning binary codes.

바이너리 코드의 이계 비상관관계 조건은

Figure 112012104172710-pat00030
이며, 도 6에서 확인 할 수 있듯이 대각 요소는 어떤 바이너리 코드와도 관계없이 항상 같은 상수 값이다.The binary noncorrelation condition of the binary code is
Figure 112012104172710-pat00030
. As shown in FIG. 6, the diagonal elements are always the same constant value regardless of any binary code.

따라서, 비 대각 요소만을 근사화하는 것이 중요하며, 비 대각 요소는 다음의 수학식 15를 만족해야 한다.Therefore, it is important to approximate only non-diagonal elements, and the non-diagonal elements must satisfy Equation (15).

Figure 112012104172710-pat00031
Figure 112012104172710-pat00031

수학식 15는 sign 함수 때문에 미분 불가하므로 sign 함수를 제거하고 수학식 14의 목적식에 penalty term으로 추가하여 해쉬 함수를 순차적으로 구할 수 있도록 수학식 16을 고안한다.Equation (15) can not be differentiated due to the sign function, so that Equation (16) is devised so that the sign function is removed and the hash function is sequentially obtained by adding the penalty term to the objective expression of Equation (14).

Figure 112012104172710-pat00032
Figure 112012104172710-pat00032

수학식 16에

Figure 112012104172710-pat00033
조건을 추가하면 다음의 수학식 17의 가장 큰 고유 벡터를 구하는 것으로 수학식 16을 해결할 수 있다.In Equation 16,
Figure 112012104172710-pat00033
By adding the condition, equation (16) can be solved by finding the largest eigenvector of the following equation (17).

Figure 112012104172710-pat00034
Figure 112012104172710-pat00034

따라서, 순차적 바이너리 코드 학습 알고리즘은 i번째 해쉬 함수를 학습하기 위해 수학식 17의 가장 큰 고유 벡터를 구하는 것으로 구성된다.Thus, the sequential binary code learning algorithm consists of finding the largest eigenvector of equation (17) to learn the i-th hash function.

상기 과정에서 설명한 순차적 바이너리 코드 학습 알고리즘은 통합된 유사행렬인

Figure 112012104172710-pat00035
를 필요로 하므로 단계 233을 통해 생성된
Figure 112012104172710-pat00036
를 이용한다.The sequential binary code learning algorithm described in the above process is an integrated similarity matrix
Figure 112012104172710-pat00035
Quot ;, so that the < RTI ID = 0.0 >
Figure 112012104172710-pat00036
.

따라서, 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법에 따르면, 다수의 특징으로 구성된 이미지를 검색하는데 높은 정확도를 제공할 수 있고, 내용 기반 이미지 검색 시스템에 성공적으로 적용될 수도 있다.
Therefore, according to the sequential binary code learning method using a plurality of features according to an exemplary embodiment of the present invention, it is possible to provide a high accuracy in searching an image composed of a plurality of features, have.

도 7은 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치의 구성을 나타내는 블록도이다.FIG. 7 is a block diagram illustrating a configuration of a sequential binary code learning apparatus using a plurality of features according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일 실시예에 따른 순차적 바이너리 코드 학습 장치(100)는 이미지 획득부(110), 처리부(120) 및 저장부(130)를 포함할 수 있다.Referring to FIG. 7, the sequential binary code learning apparatus 100 according to an embodiment of the present invention may include an image acquisition unit 110, a processing unit 120, and a storage unit 130.

먼저, 이미지 획득부(110)는 질의 이미지가 획득되면, 획득한 질의 이미지를 처리부(120)로 제공한다.First, the image obtaining unit 110 provides the obtained query image to the processing unit 120 when the query image is obtained.

처리부(120)는 이미지 획득부(110)로부터 제공 받은 질의 이미지로부터 복수의 특징을 추출한다. 여기서, 복수의 특징은 GIST와 HOG 등 다양한 이미지 특징을 포함할 수 있다.The processing unit 120 extracts a plurality of features from the query image provided from the image obtaining unit 110. [ Here, a plurality of features may include various image features such as GIST and HOG.

또한, 처리부(120)는 추출된 복수의 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습한다.In addition, the processing unit 120 learns a multiple view hashing algorithm using the extracted features.

구체적으로 처리부(120)는 추출된 복수의 특징으로부터 거리 행렬을 획득하고, 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성한다. 또한, 처리부(120)는 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습한다.Specifically, the processing unit 120 obtains a distance matrix from the extracted features and generates an alpha- integrated similarity matrix using the alpha- conjugation method on the obtained distance matrix. In addition, the processing unit 120 sequentially learns the binary codes using the generated alpha- integrated similarity matrix.

여기서, alpha 통합 유사행렬을 생성하기 위한 alpha 결합 방법과 바이너리 코드를 순차적으로 학습하는 과정은 상술 하였으므로, 발명의 용이한 이해를 돕기 위해 중복된 설명은 생략하도록 한다.Here, the alpha combining method for generating the alpha integrated similar matrices and the process of sequentially learning the binary codes have been described above, so that redundant explanations are omitted for easy understanding of the invention.

또한, 처리부(120)는 학습된 다중 뷰 해싱 알고리즘을 이용해 질의 이미지의 바이너리 코드를 생성하고, 저장부(130)에서 생성된 바이너리 코드와 가장 대응되는 바이너리 코드를 가지는 이미지를 검색한다. The processing unit 120 generates a binary code of a query image using the learned multi-view hashing algorithm and searches for an image having a binary code corresponding to the binary code generated in the storage unit 130. [

저장부(130)는 대용량의 비휘발성 저장장치(예를 들면, 하드 디스크 드라이브)로 구성될 수 있고, 바이너리 코드를 가지는 복수의 이미지가 저장될 수 있다.The storage unit 130 may be constituted by a large-capacity non-volatile storage device (for example, a hard disk drive), and a plurality of images having a binary code may be stored.

여기서, 저장부(130)는 처리부(120)의 제어에 기초하여 이미지 검색시 마다 추가로 이미지를 갱신할 수 있다. 또한, 저장부(130)는 순차적 바이너리 코드 학습 장치(100)의 동작을 위한 운영체제(Operating System)와, 다양한 기능의 실행을 위해 필요한 어플리케이션 프로그램 등과 같이 사용자에 의해 설정된 다양한 정보들이 저장될 수 있다.Here, the storage unit 130 may further update the image every time the image is retrieved, under the control of the processing unit 120. [ Also, the storage unit 130 may store various information set by the user such as an operating system for the operation of the sequential binary code learning apparatus 100 and an application program necessary for executing various functions.

따라서, 본 발명의 일 실시예에 따른 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치에 따르면, 다수의 특징으로 구성된 이미지를 검색하는데 높은 정확도를 제공할 수 있고, 내용 기반 이미지 검색 시스템에 성공적으로 적용될 수도 있다.
Therefore, according to the sequential binary code learning apparatus using a plurality of features according to an embodiment of the present invention, it is possible to provide a high accuracy in searching an image composed of a plurality of features, have.

도 8은 본 발명의 일 실시예에 다른 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법을 적용한 이미지 검색 실험과 종래의 방법을 적용한 이미지 검색 실험 결과를 나타낸다.FIG. 8 shows an image search experiment using a sequential binary code learning method using a plurality of features according to an embodiment of the present invention, and an image search experiment result using a conventional method.

도 8을 참조하면, 본 발명의 일 실시예에 따른 알고리즘(Sequential Updated for Multi-View Spectral Hashing, SU-MVSH)와 종래 제안된 방법들(CHMIS, MVH-CS, MVH-CCA, SH)와 성능 비교는 Caltech-356, CIFAR-20, NUS-WIDE 데이터를 이용하여 진행하였고 질의 이미지 1000개를 데이터에서 랜덤하게 추출한 다음 각 알고리즘을 통해 질의 이미지와 가장 대응되는 500개(Caltech-256의 경우 100개)의 이미지를 저장부(130)에서 검색하였다.Referring to FIG. 8, an algorithm according to an embodiment of the present invention (Sequential Updated for Multi-View Spectral Hashing (SU-MVSH) and CHMIS, MVH-CS, MVH- The comparison was carried out using Caltech-356, CIFAR-20 and NUS-WIDE data, and 1000 query images were randomly extracted from the data. Then, each of the 500 query images (100 for Caltech-256 ) Is retrieved from the storage unit (130).

성능 평가는 정확도를 계산하여 비교하는 방법으로 수행하였으며, 정확도는 검색된 이미지에서 질의 이미지와 동일한 레이블을 갖는 이미지가 얼마나 많은 지를 측정하였다.The performance evaluation was performed by comparing the accuracy and calculating the accuracy of the image with the same label as the query image in the retrieved image.

도 8에 도시된 바와 같이 본 발명의 일 실시예에 따른 알고리즘(SU-MVSH)이 가장 높은 성능을 제공한다.
As shown in FIG. 8, the algorithm (SU-MVSH) according to an embodiment of the present invention provides the highest performance.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined in the appended claims. It will be possible.

100: 순차적 바이너리 코드 학습 장치 110: 이미지 획득부
120: 처리부 130: 저장부
100: Sequential binary code learning apparatus 110: Image acquisition unit
120: processing unit 130:

Claims (8)

순차적 바이너리 코드 학습 장치에서 수행하는 방법에 있어서,
획득한 질의 이미지로부터 특징을 추출하는 단계;
추출된 상기 특징을 이용하여 다중 뷰 해싱(multi view hashing) 알고리즘을 학습하는 단계; 및
상기 학습된 다중뷰 알고리즘을 통해 생성된 바이너리 코드와 대응되는 바이너리 코드를 가지는 이미지를 검색하는 단계를 포함하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법.
A method for performing in a sequential binary code learning apparatus,
Extracting features from the acquired query image;
Learning a multi view hashing algorithm using the extracted features; And
And searching for an image having a binary code corresponding to the binary code generated through the learned multi-view algorithm.
청구항 1에 있어서,
상기 추출된 특징을 이용하여 다중 뷰 해싱 알고리즘을 학습하는 단계는,
상기 추출된 특징으로부터 거리 행렬을 획득하고, 상기 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성하는 단계; 및
상기 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습하는 단계를 포함하는 것을 특징으로 하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법.
The method according to claim 1,
The step of learning a multiple view hashing algorithm using the extracted feature may include:
Obtaining a distance matrix from the extracted feature, and generating an alpha- integrated similarity matrix using the alpha- conjugation method on the obtained distance matrix; And
And sequentially learning the binary codes using the generated alpha- integrated similar matrices. ≪ Desc / Clms Page number 19 >
청구항 2에 있어서,
상기 추출된 특징으로부터 거리 행렬을 획득하고, 상기 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성하는 단계는,
상기 추출된 특징을 주성분 분석을 통해 두 개의 부분 집합으로 나누는 디바이드 단계;
상기 두 개의 부분 집합을 이용하여 상기 추출된 특징이 미리 설정된 개수의 데이터가 될 때까지 나누는 단계;
상기 미리 설정된 개수로 나누어진 각각의 데이터의 뷰에 해당하는 거리 행렬에 alpha 결합을 수행하여 k 최근접 그래프를 생성하는 단계; 및
상기 두개의 부분 집합에서 생성된 k 최근접 그래프가 하나의 k 최근접 그래프로 합쳐져 하나의 k 최근접 그래프를 생성하는 단계를 포함하는 것을 특징으로 하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법.
The method of claim 2,
The step of obtaining a distance matrix from the extracted feature and generating an alpha- integrated similarity matrix using the alpha-
Dividing the extracted feature into two subsets through principal component analysis;
Dividing the extracted features until a predetermined number of data is obtained using the two subsets;
Generating a k nearest neighbor graph by performing alpha combining on a distance matrix corresponding to a view of each of the data divided by the predetermined number; And
And combining the k nearest neighbor graphs generated in the two subsets into one k nearest neighbor graph to generate a k nearest neighbor graph.
청구항 2에 있어서,
상기 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습하는 단계는,
비 대각 요소를 근사화하여 바이너리 코드를 순차적으로 학습하는 것을 특징으로 하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 방법.
The method of claim 2,
The step of sequentially learning the binary codes using the generated alpha-
And sequentially approximating non-diagonal elements to learn binary codes sequentially.
저장부;
질의 이미지를 획득하고 획득한 질의 이미지를 제공하는 이미지 획득부; 및
상기 이미지 획득부로부터 제공 받은 상기 질의 이미지로부터 특징을 추출하고, 추출된 특징을 이용하여 다중 뷰 해싱(multi view hashing) 알고리즘을 학습한 후, 학습한 다중뷰 알고리즘을 통해 생성된 바이너리 코드와 대응되는 바이너리 코드를 가지는 이미지를 상기 저장부에서 검색하는 처리부를 포함하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치.
A storage unit;
An image obtaining unit obtaining a query image and providing a query image obtained; And
Extracts a feature from the query image provided from the image acquisition unit, learns a multi view hashing algorithm using the extracted feature, and then generates a view corresponding to the binary code generated through the learned multi view algorithm And a processing unit for searching the storage unit for an image having a binary code.
청구항 5에 있어서,
상기 처리부는,
상기 추출된 특징으로부터 거리 행렬을 획득하고, 상기 획득한 거리 행렬에 alpha-결합 방법을 이용해 alpha-통합 유사행렬을 생성한 후, 상기 생성된 alpha-통합 유사행렬을 이용하여 바이너리 코드를 순차적으로 학습하는 것을 특징으로 하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치.
The method of claim 5,
Wherein,
A distance matrix is obtained from the extracted features, an alpha- integrated similarity matrix is generated using the alpha- conjugation method on the obtained distance matrix, and then the binary code is sequentially learned using the generated alpha- Wherein the binary code is a binary code.
청구항 6에 있어서,
상기 처리부는,
상기 추출된 특징을 주성분 분석을 통해 두 개의 부분 집합으로 나누고, 상기 두 개의 부분 집합을 이용하여 상기 추출된 특징이 미리 설정된 개수의 데이터가 될 때까지 나눈 후, 상기 미리 설정된 개수로 나누어진 각각의 데이터의 뷰에 해당하는 거리 행렬에 alpha 결합을 수행하여 k 최근접 그래프를 생성하고, 상기 두개의 부분 집합에서 생성된 k 최근접 그래프가 하나의 k 최근접 그래프로 합쳐져 하나의 k 최근접 그래프를 생성하는 것을 특징으로 하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치.
The method of claim 6,
Wherein,
Dividing the extracted feature into two subsets through principal component analysis, dividing the extracted features until a predetermined number of pieces of data are obtained using the two subsets, The k nearest neighbor graph is generated by performing alpha combining on the distance matrix corresponding to the view of the data, and the k nearest neighbor graph generated from the two subset is combined into one k nearest neighbor graph to form a k nearest neighbor graph. And generating a plurality of binary code sequences based on the plurality of features.
청구항 6에 있어서,
상기 처리부는,
비 대각 요소를 근사화하여 바이너리 코드를 순차적으로 학습하는 것을 특징으로 하는 다수의 특징을 이용한 순차적 바이너리 코드 학습 장치.
The method of claim 6,
Wherein,
And the binary code is sequentially learned by approximating the non-diagonal elements.
KR1020120146194A 2012-12-14 2012-12-14 Method for learning of sequential binary code using features and apparatus for the same KR101435010B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120146194A KR101435010B1 (en) 2012-12-14 2012-12-14 Method for learning of sequential binary code using features and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120146194A KR101435010B1 (en) 2012-12-14 2012-12-14 Method for learning of sequential binary code using features and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20140077409A KR20140077409A (en) 2014-06-24
KR101435010B1 true KR101435010B1 (en) 2014-08-28

Family

ID=51129349

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120146194A KR101435010B1 (en) 2012-12-14 2012-12-14 Method for learning of sequential binary code using features and apparatus for the same

Country Status (1)

Country Link
KR (1) KR101435010B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106444706B (en) * 2016-09-22 2018-08-17 宁波大学 The industrial process fault detection method kept based on data neighborhood feature
CN108629233A (en) 2017-03-20 2018-10-09 华为技术有限公司 A kind of pedestrian retrieval method and device
KR102178880B1 (en) * 2018-03-30 2020-11-16 대구가톨릭대학교산학협력단 Network system and data trasmission method based on device clustering in lorawan communication
CN110213656A (en) * 2019-06-17 2019-09-06 山东云缦智能科技有限公司 A kind of IPTV content tampering kind identification method and system based on the comparison of picture portion domain
CN112907712A (en) * 2021-01-22 2021-06-04 杭州电子科技大学 Three-dimensional model feature representation method based on multi-view hash enhanced hash
CN118312637B (en) * 2024-06-07 2024-08-23 泸州职业技术学院 Image retrieval method for guiding hash learning based on specific labels

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080010202A (en) * 2006-07-26 2008-01-30 인하대학교 산학협력단 Adaptive clustering method for relevance feedback in region-based image search engine
KR20080106815A (en) * 2007-06-04 2008-12-09 인하대학교 산학협력단 A region based image retrieval method using region weights
KR20120079968A (en) * 2011-01-06 2012-07-16 서울대학교산학협력단 Method and system for associative image search based on bi-source topic model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080010202A (en) * 2006-07-26 2008-01-30 인하대학교 산학협력단 Adaptive clustering method for relevance feedback in region-based image search engine
KR20080106815A (en) * 2007-06-04 2008-12-09 인하대학교 산학협력단 A region based image retrieval method using region weights
KR20120079968A (en) * 2011-01-06 2012-07-16 서울대학교산학협력단 Method and system for associative image search based on bi-source topic model

Also Published As

Publication number Publication date
KR20140077409A (en) 2014-06-24

Similar Documents

Publication Publication Date Title
Middlehurst et al. HIVE-COTE 2.0: a new meta ensemble for time series classification
KR102449191B1 (en) Method and apparatus for supporting machine learning algorithms and data pattern matching in ethernet solid state drive
KR101435010B1 (en) Method for learning of sequential binary code using features and apparatus for the same
He et al. Scalable similarity search with optimized kernel hashing
Zhen et al. Spectral multimodal hashing and its application to multimedia retrieval
WO2013129580A1 (en) Approximate nearest neighbor search device, approximate nearest neighbor search method, and program
Kim et al. Sequential spectral learning to hash with multiple representations
US20160283564A1 (en) Predictive visual search enginge
Ding et al. A fast sampling algorithm for maximum inner product search
US10394777B2 (en) Fast orthogonal projection
WO2017072890A1 (en) Data management system, data management method, and program
Banda et al. Steps toward a large-scale solar image data analysis to differentiate solar phenomena
Li et al. Two-stage hashing for fast document retrieval
JP5971722B2 (en) Method for determining transformation matrix of hash function, hash type approximate nearest neighbor search method using the hash function, apparatus and computer program thereof
Schuh et al. A comprehensive study of iDistance partitioning strategies for k NN queries and high-dimensional data indexing
CN117435685A (en) Document retrieval method, document retrieval device, computer equipment, storage medium and product
Yang et al. Submodular reranking with multiple feature modalities for image retrieval
CN114020948B (en) Sketch image retrieval method and system based on sequencing cluster sequence discrimination selection
Banda et al. Imagefarmer: introducing a data mining framework for the creation of large-scale content-based image retrieval systems
Mosbah et al. Majority voting re-ranking algorithm for content based-image retrieval
CN111061903B (en) Image feature searching method and device, electronic equipment and storage medium
Borges et al. High-dimensional indexing by sparse approximation
Zhao et al. MapReduce-based clustering for near-duplicate image identification
CA2613936C (en) Image classification and search
Ankayarkanni et al. A new statistical rule model for image retrieval system of remote sensing images

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee