KR101780534B1 - 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템 - Google Patents

이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템 Download PDF

Info

Publication number
KR101780534B1
KR101780534B1 KR1020140194730A KR20140194730A KR101780534B1 KR 101780534 B1 KR101780534 B1 KR 101780534B1 KR 1020140194730 A KR1020140194730 A KR 1020140194730A KR 20140194730 A KR20140194730 A KR 20140194730A KR 101780534 B1 KR101780534 B1 KR 101780534B1
Authority
KR
South Korea
Prior art keywords
image
visual word
vector
feature
slave node
Prior art date
Application number
KR1020140194730A
Other languages
English (en)
Other versions
KR20160081231A (ko
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 KR1020140194730A priority Critical patent/KR101780534B1/ko
Publication of KR20160081231A publication Critical patent/KR20160081231A/ko
Application granted granted Critical
Publication of KR101780534B1 publication Critical patent/KR101780534B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템을 제공한다. 이미지에서 이미지의 특징을 나타내는 이미지 벡터를 추출하는 분산 시스템은 적어도 하나의 슬레이브 노드 및 이미지에서 특징 벡터를 추출하고 상기 슬레이브 노드에 상기 추출된 특징 벡터를 분산 할당하는 마스터 노드를 포함하고, 상기 슬레이브 노드 각각은 이미지 데이터베이스에 저장된 특징점들을 클러스터링함으로써 생성된 비주얼 워드(visual word)와 상기 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정하고, 상기 이미지의 식별자를 기반으로 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산하며, 상기 잔여 벡터를 이용하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성할 수 있다.

Description

이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템{METHOD AND SYSTEM FOR EXTRACTING IMAGE FEATURE BASED ON MAP-REDUCE FOR SEARCHING IMAGE}
본 발명의 실시예들은 이미지 기반의 검색을 위하여 맵리듀스(map-reduce) 기반으로 이미지에서 특징을 추출하는 방법 및 시스템에 관한 것이다.
최근 디지털 카메라, 카메라를 내장한 스마트폰 등의 대중화로 인해 대용량의 이미지 데이터가 발생하고 있으며, SNS(Social Network Service)를 통해 제공되는 이미지의 수도 급격히 증가하고 있다. 이에 따라 이미지 데이터베이스에서 질의 이미지와 유사한 이미지들을 검색하고, 관련된 추가 정보를 제공하는 이미지 검색 기술이 많은 관심을 받고 있다. 기존의 키워드 기반 검색은 사용자가 정확한 키워드를 입력해야만 검색이 가능하기 때문에 불명확한 키워드 또는 오타가 발생한 경우에는 검색을 할 수 없다. 그러나 이미지 기반의 검색은 키워드 없이 이미지를 통해 검색 서비스를 제공할 수 있다.
일 예로 한국공개특허번호 특2003-0005908호(공개일 2003년 1월 23일) "영상의 객체 특징 추출과 이를 이용한 내용 기반 영상검색 장치 및 방법"에는 한 영상의 내용을 적절하게 표현하는 대표 객체 특성을 추출하고 이를 영상검색에 이용함으로써 내용 기반의 영상 검색이 가능한 장치 및 방법이 게시되어 있다.
이러한 이미지 검색 서비스를 제공하기 위해서는 효과적인 이미지 데이터베이스 구축이 요구된다. 이미지 데이터베이스 구축을 위한 가장 대중화된 방법으로 BoW(Bag-of-Words) 모델이 있다. BoW 모델은 각 이미지의 특징점(Feature Point)들을 정량화하고 비주얼 워드(visual word)로 표현하여 이미지를 하나의 문서와 같이 처리한다. 따라서 BoW 모델은 하나의 이미지를 이미지 벡터로 표현하기 위해 고차원의 데이터 정량화를 요구한다. 그러나 최근 이미지 데이터의 크기와 양이 급증함에 따라 BoW 모델을 이용하는 경우 많은 수행 시간이 요구되며, 또한 메모리의 한계로 인해 충분한 특징점을 추출하지 못하여 검색 정확도의 저하가 발생되는 문제가 있다.
본 발명의 기술적 과제는 대용량의 이미지 데이터를 실시간으로 처리할 수 있으며 검색 정확도를 높일 수 있는 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템을 제공함에 있다.
본 발명의 일 양태에 따르면, 이미지의 특징을 나타내는 이미지 벡터를 추출하는 분산 시스템은 적어도 하나의 슬레이브 노드 및 이미지에서 특징 벡터를 추출하고 상기 슬레이브 노드에 상기 추출된 특징 벡터를 분산 할당하는 마스터 노드를 포함하고, 상기 적어도 하나의 슬레이브 노드 각각은 이미지 데이터베이스에 저장된 특징점들을 클러스터링함으로써 생성된 비주얼 워드(visual word)와 상기 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정하고, 상기 이미지의 식별자를 기반으로 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산하며, 상기 잔여 벡터를 이용하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성할 수 있다.
일측에 따르면, 상기 마스터 노드는 상기 적어도 하나의 슬레이브 노드의 상태를 관리하고 각 슬레이브 노드에 블록 단위로 분산 저장된 이미지의 위치 정보를 관리하는 관리부 및 상기 적어도 하나의 슬레이브 노드 중 이미지 블록을 처리할 특정 슬레이브 노드를 결정하고 상기 특정 슬레이브 노드에 태스크(task)를 할당하는 할당부를 포함할 수 있다.
다른 측면에 따르면, 상기 적어도 하나의 슬레이브 노드 각각은 상기 이미지의 식별자 및 상기 결정된 비주얼 워드를 키(key) 값으로 하여 동일한 키를 가지는 데이터를 통합할 수 있다.
또 다른 측면에 따르면, 상기 적어도 하나의 슬레이브 노드 각각은 상기 이미지의 식별자를 키 값으로 변환하고 상기 변환된 키 값과 동일한 키를 가지는 비주얼 워드에 할당된 잔여 벡터를 더함으로써 상기 이미지 벡터를 구성할 수 있다.
또 다른 측면에 따르면, 상기 적어도 하나의 슬레이브 노드 각각은 상기 이미지의 식별자를 키(key) 값으로 하여 동일한 비주얼 워드에 할당된 잔여 벡터를 더함으로써 상기 이미지 벡터를 구성할 수 있다.
본 발명의 다른 양태에 따르면. 이미지 기반 검색을 위하여 마스터 노드 및 적어도 하나의 슬레이브 노드를 포함하는 분산 파일 시스템에서 상기 슬레이브 노드에 의한 이미지 특징 추출 방법은 상기 마스터 노드로부터 이미지의 식별자 및 상기 이미지에서 추출된 특징 벡터의 집합을 할당 받는 단계, 각 이미지의 특징점들을 정량화함으로써 생성된 비주얼 워드와 상기 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정하는 단계, 상기 이미지의 식별자를 기반으로 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산하는 단계 및 상기 잔여 벡터를 이용하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성하는 단계를 포함할 수 있다.
이미지의 특징점이 속하는 비주얼 워드 할당과 차이 벡터 계산을 위한 태스크를 분산 처리함으로써 기존의 단일 컴퓨팅으로는 불가능했던 대용량의 이미지 데이터 처리를 분산을 통해 효율적으로 수행할 수 있다.
도 1은 본 발명의 일실시예에 따른 이미지 특징 추출을 위한 분산 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일실시예에 따른 맵리듀스 기반의 이미지 벡터 추출 과정을 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 특징 벡터 집계 태스크를 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 이미지 벡터 계산 태스크를 나타내는 도면이다.
도 5는 본 발명의 다른 실시예에 따른 이미지 식별자 기반의 벡터 추출 태스크를 나타내는 도면이다.
도 6은 이미지 특징 추출 방법 별 수행 시간을 나타내는 그래프이다.
도 7은 본 발명의 일실시예에 따른 이미지 특징 추출 방법을 나타내는 흐름도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "~부" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어(hardware)나 소프트웨어(software) 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 일실시예에 따른 이미지 특징 추출을 위한 분산 시스템을 나타내는 블록도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 분산 시스템은 마스터 노드(110; master node) 및 적어도 하나의 슬레이브 노드(120, 130, 140; slave node)를 포함한다. 도 1에는 일 예로 하나의 마스터 노드와 N개(여기서, N은 자연수)의 슬레이브 노드로 분산 시스템이 구축된 경우가 도시되어 있다.
마스터 노드(110)는 이미지에서 특징 벡터(feature vector)를 추출하고 각 슬레이브 노드(120, 130, 140)에 상기 추출된 특징 벡터를 분산 할당한다. 이를 위하여 마스터 노드(110)는 각 슬레이브 노드(120, 130, 140)의 상태를 관리하고 각 슬레이브 노드(120, 130, 140)에 블록 단위로 분산 저장된 이미지의 위치 정보를 관리하는 관리부(112) 및 각 슬레이브 노드(120, 130, 140) 중 이미지 블록을 처리할 슬레이브 노드를 결정하고 각 슬레이브 노드에 몇 개의 태스크(task)를 할당할지를 결정하며 해당 슬레이브 노드에 태스크를 할당하는 할당부(114)를 포함할 수 있다.
슬레이브 노드(120, 130, 140)는 각각 맵퍼(mapper)와 리듀서(reducer)를 포함할 수 있다(미도시). 맵퍼와 리듀서의 구체적인 기능과 동작은 도 2에서 상세히 설명된다.
슬레이브 노드(120, 130, 140)의 동작을 구체적으로 살펴보면, 각 슬레이브 노드(120, 130, 140)는 이미지 데이터베이스(미도시)에 저장된 특징점들을 클러스터링함으로써 생성된 비주얼 워드(visual word)와 상기 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정한다. 또한 각 슬레이브 노드(120, 130, 140)는 상기 이미지의 식별자(ImageID)를 기반으로 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산하며, 상기 잔여 벡터를 이용하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성한다.
각각의 슬레이브 노드(120, 130, 140)는 상기 이미지의 식별자(ImageID) 및 상기 결정된 비주얼 워드를 키(key) 값으로 하여 동일한 키를 가지는 데이터를 통합할 수 있다. 이 경우, 각각의 슬레이브 노드(120, 130, 140)는 이미지 별 집계를 위해 상기 이미지의 식별자를 키 값으로 변환하고 상기 변환된 키 값과 동일한 키를 가지는 비주얼 워드에 할당된 잔여 벡터를 더함으로써 이미지 벡터를 구성할 수 있다.
한편, 각각의 슬레이브 노드(120, 130, 140)는 이미지의 식별자만을 키 값으로 하여 동일한 비주얼 워드에 할당된 잔여 벡터를 더함으로써 상기 이미지 벡터를 구성할 수도 있다.
도 2는 본 발명의 일실시예에 따른 맵리듀스 기반의 이미지 벡터 추출 과정을 나타내는 도면이고, 도 3은 본 발명의 일실시예에 따른 특징 벡터 집계 태스크를 나타내는 도면이며, 도 4는 본 발명의 일실시예에 따른 이미지 벡터 계산 태스크를 나타내는 도면이다. 이하, 도 2 내지 도 4를 참조하여 본 발명에 일실시예에 따른 분산 시스템이 이미지에서 해당 이미지의 특징을 대표하는 이미지 벡터를 추출하는 과정을 보다 상세히 설명한다.
본 발명에 따른 분산 시스템은 맵리듀스(map-reduce)를 기반으로 이미지 데이터를 분산 처리할 수 있다. BoW(Bag-of-Words)는 이미지의 특징점들을 비주얼 워드를 이용하여 정량화하기 때문에, 각각의 특징점들은 서로 독립적으로 연산된다. 따라서, 이미지 데이터 정량화 과정은 맵리듀스를 이용하여 분산처리할 수 있다.
일 실시예로, 본 발명에 따른 분산 시스템은 도 2와 같이 2개의 태스크에 기반하여 이미지 데이터의 정량화를 수행할 수 있다. 첫 번째 태스크는 도 3과 같은 알고리즘 1(Algorithm 1)을 처리하는 과정이며, 구체적으로 이미지 데이터의 특징점(특징 벡터)에 할당될 비주얼 워드를 계산하고, 특징 벡터와 해당 특징 벡터에 할당된 비주얼 워드의 차이인 잔여 벡터(residual vector)를 계산하는 과정을 포함한다. 두 번째 태스크는 도 4와 같은 알고리즘 2(Algorithm 2)를 처리하는 과정이며, 구체적으로 첫 번째 과정의 결과를 이미지별로 수집하여 이미지 벡터를 생성하는 과정을 포함한다. 상기 2개의 태스크는 각 슬레이브 노드에 각각 포함된 맵퍼와 리듀서에 의해 분산 수행될 수 있다.
구체적으로 도 3을 참조하면, 첫 번째 태스크에서 각각의 맵퍼는 <이미지의 식별자(ImageID), 특징 벡터 집합(X={x1, x2,...,xm})>을 입력 값으로 받는다.
예를 들어, 각 맵퍼는 마스터 노드로부터 <이미지의 식별자(ImageID), 특징 벡터 집합(X={x1, x2,...,xm})>을 입력 값으로 받을 수 있다. 각각의 맵퍼는 이미지 데이터베이스의 특징점을 클러스터링함으로써 생성된 비주얼 워드 중 특징 벡터에 할당될 비주얼 워드를 결정하기 위해 각 특징 벡터에 대해 가장 인접한 비주얼 워드(c)를 결정하여 <(c, ImageID), x>를 출력한다. 여기서, 상기 가장 인접한 비주얼 워드(c)는 두 벡터(비주얼 워드 벡터 및 특징 벡터) 간의 거리 계산을 통해 결정될 수 있다.
그리고 결정된 비주얼 워드(c), 해당 이미지의 식별자(ImageID) 그리고 특징 벡터(x)를 리듀서로 전달한다. 리듀서는 리듀서 함수(Calculate_RV_Reducer)를 이용하여 각 특징 벡터(xi)에 대해 해당 특징 벡터에 할당된 비주얼 워드(ci) 차이인 잔여 벡터(ri)를 구한 뒤, <(ci, ImageID), ri>를 출력한다.
다음으로 도 4를 참조하면, 두 번째 태스크에서 각각의 맵퍼는 알고리즘 1의 결과 값(즉, 첫 번째 태스크의 결과값)을 입력값으로 가진다. 각각의 맵퍼는 리듀서가 이미지별로 이미지 벡터를 도출할 수 있도록 첫 번째 태스크의 키 값을 분리 및 재조합한 출력값을 리듀서로 전달한다. 예를 들어, 맵퍼는 키 값(비주얼 워드(ci)와 이미지의 식별자(ImageID))에서 이미지의 식별자(ImageID)로 변환하고, 잔여 벡터(ri)를 (ci, ri)로 재조합한다. 따라서, 맵퍼의 출력값은 <ImageID, (ci, ri)>가 된다.
리듀서는 집성 함수(Aggregating_IV_Reducer)를 사용하여 입력된 값 중 같은 비주얼 워드에 대한 값들을 하나로 표현한다. 하나의 비주얼 워드에 여러 개의 특징 벡터가 할당될 수 있기 때문에, 이미지의 식별자를 기반으로 동일한 식별자를 가지는 모든 값들을 더해 하나의 이미지 벡터(v)로 표현한다. 최종적으로 이미지의 식별자(ImageID)와 이미지 벡터(v)의 값을 출력한다.
도 5는 본 발명의 다른 실시예에 따른 이미지 식별자 기반의 벡터 추출 태스크를 나타내는 도면이다.
도 2 내지 도 4를 통해 설명한 바와 같이 이미지의 식별자(ImageID)와 비주얼 워드를 키 값으로 이용할 경우 이미지별 집계를 위해 두 개의 태스크가 필요하다. 그러나 이는 서로 다른 크기의 이미지에 대해서 처리하는 데는 효율적이나, 하나의 태스크가 끝날 때 불필요하게 중간결과를 출력하고 적재하는 I/O(Input/Output) 연산이 발생한다. 따라서, 다른 실시예에 따른 이미지 특징 추출 방법은 태스크의 수를 줄이기 위해 도 5에 도시된 것과 같이 이미지의 식별자를 기준으로 재설계된 태스크를 포함할 수 있다. 이 경우, 하나의 태스크로 이미지 벡터를 생성할 수 있으므로 불필요한 I/O연산이 효율적으로 제거될 수 있다.
도 5를 참조하면, 맵퍼는 도 3에서와 같이 두 벡터간의 거리를 계산하여 각 특징 벡터에 할당될 비주얼 워드(c)를 결정하고, <ImageID, (ci, xi)>를 출력한다. 다. 리듀서는 맵퍼로부터 각각 이미지의 식별자, 비주얼 워드(ci) 및 특징 벡터(xi)를 전달받는다. 그리고, 리듀서는 이미지 벡터 집합 내의 모든 이미지 벡터를 초기화한 후 상기 특징 벡터(xi)와 비주얼 워드(ci) 간의 차이를 이용하여 잔여벡터(ri)를 구하고 동일한 비주얼 워드로 할당된 값들을 더한다. 그리고 이미지 별로 각각의 비주얼 워드에 대해 계산한 값들을 이미지 벡터로 구성한다.
도 6은 이미지 특징 추출 방법 별 수행 시간을 나타내는 그래프이다.
도 6은 이미지 데이터 셋이 약 1500개로 구성되어 있는 INRIA Holidays data set 데이터를 사용한 결과이다. 실험 장치로서 아마존 ec2를 이용하여 하나의 마스터 노드와 4개의 슬레이브 노드로 구성되는 분산 시스템이 사용되었다. 그리고 성능비교를 위해 단일 머신에서 BoW를 계산한 기술(BoW)과 맵리듀스 기반의 기법을 비교하였다. 맵리듀스 기반의 기법은 이미지 식별자와 비주얼 워드 식별자를 키 값으로 설정한 방법(ImageID+VW)과 이미지 식별자를 키 값으로 설정한 방법(ImageID)로 구성하였다. 도 6도 참조하면, 맵리듀스 기반의 기법은 단일 머신에서 수행한 BoW보다 성능이 약 33% 이상 향상되었다. 맵리듀스 기반의 기법은 키 값의 설정에 따라 2배정도 성능 차이가 발생하는데, 이는 이미지 집계를 위해 두 개의 태스크를 수행하기 때문에 초기화에 요구되는 시간과 각각의 특징 벡터를 매번 다시 기록하며 발생하는 I/O처리 횟수의 차이로 인한 것이다.
도 7은 본 발명의 일실시예에 따른 이미지 특징 추출 방법을 나타내는 흐름도이다.
본 발명에 따른 분산 시스템은 이미지 기반 검색을 위하여 마스터 노드 및 적어도 하나의 슬레이브 노드를 포함할 수 있다.
각각의 슬레이브 노드는 마스터 노드로부터 이미지의 식별자 및 상기 이미지에서 추출된 특징 벡터의 집합을 할당 받는다(S710). 마스터 노드에 의해 이미지에서 추출된 특징 벡터가 각각의 슬레이브 노드로 분산 할당되면, 각각의 슬레이브 노드는 맵퍼를 이용하여 각 이미지의 특징점들을 정량화함으로써 생성된 비주얼 워드와 마스터 노드로부터 할당 받은 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정한다(S720). 그리고, 리듀서를 이용하여 상기 이미지의 식별자를 기반으로 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산한다(S730).
이후, 상기 잔여 벡터를 이용하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성한다(S740). 상술한 각 단계에서, 각각의 슬레이브 노드는 상기 이미지의 식별자 및 상기 결정된 비주얼 워드 중 적어도 하나를 키 값으로 하여 동일한 키를 가지는 데이터(레코드)는 하나로 통합할 수 있다.
일 실시예로서 이미지의 식별자 및 상기 결정된 비주얼 워드가 키 값으로 사용되는 경우, 각 슬레이브 노드는 두 번째 태스크에서 상기 이미지의 식별자를 키 값으로 변환하고, 상기 변환된 키 값과 동일한 키를 가지는 비주얼 워드에 할당된 잔여 벡터를 더함으로써 이미지 벡터를 구성할 수 있다.
다른 실시예로서 이미지의 식별자만이 키 값으로 사용되는 경우, 각 슬레이브 노드는 이미지의 식별자 및 상기 결정된 비주얼 워드가 키 값으로 사용되는 경우와 같은 방법으로 잔여 벡터를 구한 후, 동일한 비주얼 워드에 할당된 잔여 벡터를 더함으로써 이미지 벡터를 구성할 수도 있다.
본 발명은 기존 이미지 데이터베이스를 사용하는 곳에 사용 가능하다. 이전 기법들은 단일 컴퓨팅으로 인해 대용량 이미지 데이터 처리에 있어서 정확도나 처리 속도 중 일부를 포기해야 검색이 가능하지만 본 발명은 분산 기법을 이용함으로써 이미지 검색을 보다 효율적으로 지원 가능하다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
110: 마스터 노드
112: 관리부
114: 할당부
120: 제1 슬레이브 노드
130: 제2 슬레이브 노드
140: 제N 슬레이브 노드

Claims (10)

  1. 이미지의 특징을 나타내는 이미지 벡터를 추출하는 분산 시스템에 있어서,
    적어도 하나의 슬레이브 노드(slave node); 및
    이미지에서 특징 벡터(feature vector)를 추출하고 상기 슬레이브 노드에 상기 추출된 특징 벡터를 분산 할당하는 마스터 노드(master node)
    를 포함하고,
    상기 적어도 하나의 슬레이브 노드 각각은,
    이미지 데이터베이스에 저장된 특징점들을 클러스터링함으로써 생성된 비주얼 워드(visual word) 와 상기 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정하고, 상기 이미지의 식별자와 상기 결정된 비주얼 워드를 키(key) 값으로 하여 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산하며, 상기 키 값을 상기 이미지의 식별자로 변환하고 상기 변환된 키 값과 동일한 키 값을 가지는 비주얼 워드에 대한 잔여 벡터를 더하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성하는 것을 특징으로 하는 분산 시스템.
  2. 제1항에 있어서,
    상기 마스터 노드는,
    상기 적어도 하나의 슬레이브 노드의 상태를 관리하고 각 슬레이브 노드에 블록 단위로 분산 저장된 이미지의 위치 정보를 관리하는 관리부; 및
    상기 적어도 하나의 슬레이브 노드 중 이미지 블록을 처리할 특정 슬레이브 노드를 결정하고 상기 특정 슬레이브 노드에 태스크(task)를 할당하는 할당부
    를 포함하는 것을 특징으로 하는 분산 시스템.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 이미지 기반 검색을 위하여 마스터 노드(master node) 및 적어도 하나의 슬레이브 노드(slave node)를 포함하는 분산 파일 시스템에서 상기 슬레이브 노드에 의한 이미지 특징 추출 방법에 있어서,
    상기 마스터 노드로부터 이미지의 식별자 및 상기 이미지에서 추출된 특징 벡터(feature vector)의 집합을 할당 받는 단계;
    각 이미지의 특징점들을 정량화함으로써 생성된 비주얼 워드(visual word)와 상기 특징 벡터 간의 거리를 기반으로 각각의 특징 벡터가 할당될 비주얼 워드를 결정하는 단계;
    상기 이미지의 식별자 및 상기 결정된 비주얼 워드를 키(key) 값으로 하여 상기 결정된 비주얼 워드에 할당된 특징 벡터와 상기 결정된 비주얼 워드의 차이인 잔여 벡터를 계산하는 단계;
    상기 키 값을 상기 이미지의 식별자로 변환하는 단계; 및
    상기 변환된 키 값과 동일한 키 값을 가지는 비주얼 워드에 대한 잔여 벡터를 더하여 상기 이미지의 특징을 나타내는 이미지 벡터를 구성하는 단계
    를 포함하는 이미지 특징 추출 방법.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 제6항에 있어서,
    상기 특징 벡터는,
    상기 마스터 노드에 의해 추출되어 각 슬레이브 노드에 분산 할당되는 것을 특징으로 하는 이미지 특징 추출 방법
KR1020140194730A 2014-12-31 2014-12-31 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템 KR101780534B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140194730A KR101780534B1 (ko) 2014-12-31 2014-12-31 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140194730A KR101780534B1 (ko) 2014-12-31 2014-12-31 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20160081231A KR20160081231A (ko) 2016-07-08
KR101780534B1 true KR101780534B1 (ko) 2017-09-20

Family

ID=56503498

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140194730A KR101780534B1 (ko) 2014-12-31 2014-12-31 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101780534B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108107457B (zh) * 2016-11-24 2021-07-23 百度在线网络技术(北京)有限公司 用于获取位置信息的方法和装置
KR101974455B1 (ko) 2017-12-22 2019-05-03 인천대학교 산학협력단 사회적 사물 인터넷을 기반으로 빅 데이터의 특징 선택 모델링 최적화 장치 및 방법
KR20220040244A (ko) 2020-09-23 2022-03-30 펄스나인 주식회사 다중 이미지 검색엔진에서 병렬로 검색하고 결과를 통합하여 제공하는 이미지 검색 방법 및 장치
KR20220040247A (ko) 2020-09-23 2022-03-30 펄스나인 주식회사 이미지 카테고리별 병렬 검색 기반 통합 정규화 이미지 검색 장치

Also Published As

Publication number Publication date
KR20160081231A (ko) 2016-07-08

Similar Documents

Publication Publication Date Title
US9922051B2 (en) Image-based faceted system and method
CN110019876B (zh) 数据查询方法、电子设备及存储介质
Bahmani et al. Efficient distributed locality sensitive hashing
JP5917719B2 (ja) 画像データベースにおける画像管理のための方法、装置、および、コンピュータで読取り可能な記録媒体
CN107515878B (zh) 一种数据索引的管理方法及装置
CN104408163B (zh) 一种数据分级存储方法和装置
KR101780534B1 (ko) 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템
CN107391502B (zh) 时间间隔的数据查询方法、装置及索引构建方法、装置
CN106156755A (zh) 一种人脸识别中的相似度计算方法及系统
CN104331421A (zh) 一种大数据的高效处理方法及系统
CN104298541A (zh) 云存储系统的数据分布算法及其装置
CN107832440B (zh) 一种数据挖掘方法、装置、服务器及计算机可读存储介质
CN104077723A (zh) 一种社交网络推荐系统及方法
CN103530168A (zh) 基于虚拟化技术的多卫星遥感数据处理系统和方法
CN108287889B (zh) 一种基于弹性表模型的多源异构数据存储方法和系统
JP6434162B2 (ja) データ管理システム、データ管理方法およびプログラム
CN113900810A (zh) 分布式图处理方法、系统及存储介质
CN112764940A (zh) 多级分布式数据处理部署系统及其方法
CN105701128B (zh) 一种查询语句的优化方法和装置
CN104679966B (zh) 基于多层次方法和离散粒子群的赋权超图优化划分方法
CN108090186A (zh) 一种大数据平台上的电力数据去重方法
CN110019400B (zh) 数据存储方法、电子设备及存储介质
WO2017065795A1 (en) Incremental update of a neighbor graph via an orthogonal transform based indexing
JP2018156458A (ja) 生成装置、生成方法、及び生成プログラム
CN109213972B (zh) 确定文档相似度的方法、装置、设备和计算机存储介质

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