KR20200040665A - 컨볼루션 신경망을 이용하여 poi 변화를 검출하기 위한 시스템 및 방법 - Google Patents

컨볼루션 신경망을 이용하여 poi 변화를 검출하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20200040665A
KR20200040665A KR1020190121389A KR20190121389A KR20200040665A KR 20200040665 A KR20200040665 A KR 20200040665A KR 1020190121389 A KR1020190121389 A KR 1020190121389A KR 20190121389 A KR20190121389 A KR 20190121389A KR 20200040665 A KR20200040665 A KR 20200040665A
Authority
KR
South Korea
Prior art keywords
poi
images
image
training
processor
Prior art date
Application number
KR1020190121389A
Other languages
English (en)
Other versions
KR102261061B1 (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 네이버 주식회사
Publication of KR20200040665A publication Critical patent/KR20200040665A/ko
Application granted granted Critical
Publication of KR102261061B1 publication Critical patent/KR102261061B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2433Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/772Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/63Scene text, e.g. street names
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • G06T2207/20104Interactive definition of region of interest [ROI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Image Analysis (AREA)

Abstract

한 쌍의 입력된 POI(Point of Interest) 이미지들에서 POI 변화를 검출하는 방법. 상기 방법의 제1 프로세서는: 훈련 POI 이미지들의 베이스를 사용하여 훈련 POI 이미지들의 트리플릿들을 생성하고, 훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴 유형의 컨볼루션 신경망(Convolutional Neural Network; CNN)을 훈련시킨다. 상기 방법의 제2 프로세서는: 상기 한 쌍의 입력된 POI 이미지들의 각각의 이미지에 대해, 3-스트림 샴 유형의 상기 CNN의 스트림을 사용하여 그 이미지의 디스크립터를 계산하고, 상기 이미지의 디스크립터들에 기초하여 유사성 스코어를 계산하고, 유사성 스코어 함수를 사용하여 상기 한 쌍의 입력된POI 이미지들의 상기 이미지들의 디스크립터들에 기초하여 유사성 스코어를 계산하고, 상기 유사성 스코어에 기초하여 상기 POI 변화를 선택적으로 검출한다. 상기 방법의 제3 프로세서는: POI 이미지들의 초기 세트 및 합성 POI 이미지들 세트를 포함하도록 상기 훈련 POI 이미지들의 베이스를 생성한다.

Description

컨볼루션 신경망을 이용하여 POI 변화를 검출하기 위한 시스템 및 방법{SYSTEMS AND METHODS FOR DETECTING A POINT OF INTEREST CHANGE USING A CONVOLUTIONAL NEURAL NETWORK}
본 출원은 2018 년 10 월 9 일에 출원된 유럽 출원 제 18306335.3 호의 우선권을 주장한다. 참조된 출원의 전체 개시는 여기에 참조로서 포함된다.
본 발명은 기계 학습에 관한 것으로, 보다 상세하게는, POI(Point of Interest)의 변화를 검출하기 위한 컨볼루션 신경망(Convolutional Neural Network; CNN)을 훈련시키기 위해 훈련 베이스(training base)를 생성하고, POI의 변화를 검출하기 위해 이러한 컨볼루션 신경망을 이용하기 위한 시스템 및 방법에 관한 것이다.
여기에 제공되는 배경기술 설명은 본 개시의 맥락을 일반적으로 제시하기 위한 것이다. 출원 당시의 선행기술과 달리 자격이 되지 않을 수 있는 설명의 측면뿐만 아니라, 본 배경기술 섹션에 기술된 범위 내에서, 본 발명의 발명가의 작업은 본 발명에 대한 선행기술로서 명시적으로 또는 암시적으로 인정되지 않는다.
컴퓨터 비전은 컴퓨터에 디지털 비디오의 높은 수준의 이해를 제공하는 것을 목표로 하는 최근의 혁신 분야이다.
예를 들어, 특정 랜드마크들이 큰 사진 데이터세트(large photo dataset)로부터 검색될 수 있거나 개인들이 카메라 감시 네트워크들을 사용하여 식별될 수 있다.
컨볼루션 신경망들(Convolutional Neural Networks; CNNs)이 컴퓨터 비전에 사용될 수 있다. CNN들은 뉴런들 간의 연결 패턴이 동물들의 시각 피질에 의해 영향을 받는 신경망(Neural Network; NN)의 한 유형이다. CNN들은 비디오 처리에 적합할 수 있고, 이미지들의 엔티티들을 효율적으로 인식할 수 있다.
랜드 마크들이 이미 레이블링된 주석이 달린 이미지들의 훈련 세트를 제공함으로써 CNN이 훈련되는 지도 학습 단계 이후, CNN은 CNN 훈련에 사용되는 이미지들의 세트에 없는 입력 "프레시(fresh)" 이미지들에 기초하여 처리할 수 있다.
POIs(Points of Interests)는 누군가 또는 무언가(예를 들어, 자율주행 차)가 유용하거나 흥미로울 수 있는 잘-위치화된 지리적 랜드마크들을 나타낼 수 있다. POI들의 예시들은 식당들, 카페들, 은행들 등과 같은 모든 종류들의 샵들 또는 상점들이 있다.
컴퓨터 비전 기법들이 설명된 바와 같이 POI들을 자동으로 인식하는데 사용될 수 있지만, 주어진 영역의 각 POI들에 대해, 일정 기간 동안 변화되었는지 여부를 자동으로 결정하는 대응 작업을 수행할 수 있다는 것도 흥미롭다(즉, 다른 POI들로 대체 됨). 이것은 두 개의 서로 다른 타임-스탬프들에서 캡쳐된 두 개의 지리적-위치화된(geo-localized) 사진들의 데이터세트들을 통해 수행될 수 있다.
POI 변화 검출은 시간에 따라 지리적-위치화된 사진들을 모니터링함으로써 최신 POI들의 데이터베이스의 반-자동 유지를 가능하게 하는 이니셔티브들을 매핑하는 데 유용하다.
예시적인 시나리오는, 예를 들어 360-도 카메라를 사용하고 그 영역에 걸쳐있는 특정 영역에서 주변들의 정기적인 사진들을 캡쳐하는 장치(유인 또는 무인, 예를 들어 자동차, 트롤리, 로봇)를 포함한다. 캡쳐 장치는 각각의 사진을 6- 자유도(6-Degrees-of-Freedom; 6DoF) 포즈와 연결할 수 있는 몇몇 위치화 기능들(예를 들어, LIDAR)을 갖는다. 대안적으로, 6DoF 이미지 포즈들은 자동 3 차원(Three Dimensional; 3D) 재구성 기술들을 사용하여 복구될 수 있다.
"순위-기반(Ranking-based)" 접근방식들은 두 개의 인스턴스들이 동일한지(또는 동등하게, 다른지)를 여부를 식별 할 수 있다. 하지만, POI의 변화들을 검출하는 것은 POI들의 모양이 시간이 지남에 따라 크게 다를 수 있기 때문에 어렵다. POI의 모양은 예를 들어 날씨/조명 조건들, 시점 변화들, 폐색(자동차, 나무, 사람 등), 경계의 계절별 변화들(크리스마스, 특별 판매) 등으로 인해 변화될 수 있다. 훈련을 위한 POI 변화들의 실제 예시들을 수집하는 것도 어렵다.
POI 변화 검출은 모든 후보 이미지들이 비교될 수 있는 앵커 이미지들이 사용될 수 있는 위성 이미징 또는 의료 이미징에 대해 수행될 수 있다. 하지만 POI들 이미지들에 대해서는 불가능하다.
POI 변화들을 확실하고 제한 없이 검출하기 위한 시스템들 및 방법들이 필요하다.
이러한 목적들을 위해, 본 출원은 한 쌍의 입력된 POI 이미지들에서 POI(Point of Interest) 변화를 검출하기 위해 컨볼루션 신경망(Convolutional Neural Network; CNN)을 훈련시키기 위한 훈련 이미지들의 베이스를 생성하는 특징, 방법에 따라 제공한다. 이러한 방법은, 제1 서버의 데이터 프로세서에 의해: (a1) 레이블링된 POI 이미지들의 초기 세트를 획득하는 단계; (a2) 초기 세트의 서브세트로부터의 각각의 이미지에 대해, 이미지 내의 사이니지 영역을 식별하는 단계 -상기 사이니지 영역은 이미지에 의해 묘사된 POI의 주요 시각적 특징을 묘사함- (a3) 서브세트의 제1 이미지에 대응하는 적어도 하나의 합성 POI 이미지를 생성하는 단계 -사이니지 영역은 서브세트의 제2 이미지의 해당 이미지로 대체되고, 합성 POI 이미지에 제2 이미지의 레이블을 연관시킴-; (a4) POI 이미지들의 초기 세트 및 각각의 생성된 합성 POI 이미지를 포함하는 POI 이미지들의 최종 세트를 훈련 이미지들의 베이스로서 제공하는 단계를 포함한다.
본 출원의 추가적인 특징들은 다음과 같다: (a2) 크롭된(cropped) 사이니지 이미지들의 컬렉션을 획득하는 단계를 포함하고, (a3) 크롭된 사이니지 이미지들의 컬렉션으로부터 램덤으로 선택된 크롭된 사이니지 이미지들을 사용하여 주어진 이미지의 사이니지 영역을 대체하는 단계를 포함하고; (a3) 주어진 이미지의 사이니지 영역의 크기 및 형상에 적응하기 위해 선택된 크롭된 사이니지 이미지의 아핀 워핑(afine warping)하고, 이후 푸아송 블렌딩하는 단계를 포함하고; POI의 주요 시각적 특징은 POI의 명칭 및/또는 로고이고, 사이니지 영역은 (a2)에서 광학 문자 인식 및/또는 로고 검출을 사용하여 이미지에서 식별되고; 각각의 POI 이미지는 이미지에 의해 표현된 POI를 식별하는 레이블에 연관되거나, 또는 각각의 POI 이미지는 이미지의 위치 및/또는 방향, 가능하면 이미지의 6-자유도 포즈를 정의하는 레이블에 연관되고; 각각의 POI 이미지는 이미지의 6-자유도 포즈를 정의하는 레이블에 연관되고, (a1)는 이미지 획득 장치를 사용하여 POI들의 지리적 위치화된 사진들을 획득함으로써 POI 이미지들의 초기 세트를 생성하는 단계를 포함한다.
일 특징에서, 본 출원은 한 쌍의 입력된 POI 이미지들에서 POI(Point of Interest 변화를 검출하기 위해 CNN(Convolutional Neural Network)을 훈련시키는 방법을 제공한다. 이 방법은: 제1 서버의 데이터 프로세서에 의해, 훈련 이미지들의 베이스를 생성하는 단계; 제2 서버의 데이터 프로세서에 의해, 복수의 훈련 이미지들의 트리플릿들(triplets)을 생성하는 단계 -각각의 트리플릿(triplet)은 한 쌍의 관련된 POI 이미지들 및 한 쌍의 관련 없는 POI 이미지들을 포함하고, 두 개의 POI 이미지들은 그들의 레이블들에 기초하여 관련되거나 그렇지 않은 것으로 판단 됨-; 제2 서버의 데이터 프로세서에 의해, 복수의 트리플릿들로부터, 3-스트림 샴(Siamese) 유형의 CNN을 훈련시키는 단계를 포함한다.
추가적인 특징들은 다음과 같다: 각각의 POI 이미지는 이미지의 6-자유도 포즈를 정의하는 레이블과 연관되고, 두 개의 POI 이미지들은 그것들이 제1 임계 값 보다 큰 기하학적 중첩을 나타내는 경우, 관련된 것으로 판단되고, 그것들이 각각의 6-자유도 포즈에 기초하는, 제2 임계 값 보다 작은 기하학적 중첩을 나타내는 경우 관련 없는 것으로 판단한다; 두 개의 이미지들 간의 기하학적 중첩은 두 개의 이미지들 각각에서 각각 보이는 코리더 아웃라인들(corridor outlines)의 세트들 간의 교차 겹침 결합(intersection-over-union)으로 계산되고; 적어도 하나의 트리플릿은 한 쌍의 관련 없는 POI 이미지들로서 합성 이미지 및 생성된 합성 이미지로부터 제1 이미지를 포함한다.
일 특징에서, 본 출원은 한 쌍의 입력된 POI 이미지들에서 POI(Point of Interest) 변화를 검출하는 방법을 제공한다. 이러한 방법은: 제2 서버의 데이터 프로세서에 의해, 3-스트림 샴 유형의 CNN을 훈련시키는 단계; 제3 서버의 데이터 프로세서에 의해, 입력된 한 쌍의 POI 이미지들의 각각의 이미지에 대해, CNN의 스트림을 사용하여 이미지의 디스크립터를 계산하는 단계; 제3 서버의 데이터 프로세서에 의해, 계산된 디스크립터들의 유사성 스코어 함수에 기초하여 POI 변화를 검출하는 단계를 포함한다.
추가적인 특징들은 다음과 같다: 한 쌍의 입력된 POI 이미지들의 이미지들이 동일한 위치에서 두 개의 다른 타임 스탬프들로 캡쳐된다; 상기 방법은 주어진 영역에 걸쳐, 두 개의 상이한 타임 스탬프들에서 캡쳐된 지리적 위치화된 이미지들의 두 개의 주어진 데이터세트들로부터 획득되는 복수의 한 쌍의 입력된 이미지들에 대해 수행된다.
추가적인 특징들에 따르면, 본 출원은 훈련 이미지들의 베이스를 생성하기 위한, 컨볼루션 신경망(CNN)을 훈련시키기 위한 또는 한 쌍의 입력된 POI 이미지들에서 POI를 검출하기 위한 상기에 따른 방법을 실행하기 위한 코드 명령어들을 포함하는 컴퓨터 프로그램 제품; 및 컴퓨터-판독가능 매체를 제공하고, 그것 상에 훈련 이미지의 베이스를 생성하기 위한, 제1, 제2 또는 제3 측면에 따른 방법을 실행하거나, 컨볼루션 신경망(CNN)을 훈련 시키거나 또는 한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하기 위한 코드 명령어들을 포함하는 컴퓨터 프로그램 제품이 저장된다.
일 특징에서, 한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하기 위한 방법은: 제1 프로세서에 의해, 훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴 유형의 컨볼루션 신경망(CNN)을 훈련시키는 단계; 제2 프로세서에 의해, 한 쌍의 입력된 POI 이미지들의 각각의 이미지에 대해 3-스트림 샴 유형의 CNN의 스트림을 사용하여 해당 이미지의 디스크립터를 계산하는 단계; 제2 프로세서에 의해, 유사성 스코어 함수를 사용하여 한 쌍의 입력된 POI 이미지들의 상기 이미지들의 디스크립터들에 기초하여 유사성 스코어를 계산하는 단계; 및 제2 프로세서에 의해, 유사성 스코어에 기초하여 POI 변화를 선택적으로 검출하는 단계를 포함한다.
다른 특징들에서, POI 변화를 선택적으로 검출하는 단계는, 제2 프로세서에 의해 유사성 스코어가 임계 값보다 큰 경우, POI 변화를 검출하는 단계를 포함한다.
다른 특징들에서, POI 변화를 선택적으로 검출하는 단계는, 제 2 프로세서에 의해 유사성 스코어가 임계 값보다 작은 경우, POI 변화를 검출하지 않는 단계를 포함한다.
다른 특징들에서, 한 쌍의 입력된 POI 이미지들의 이미지들은 두 개의 상이한 시간들에 동일한 위치에서 캡쳐된다.
다른 특징들에서, 훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴 유형의 CNN을 훈련하는 단계는: 제3 프로세서에 의해, 훈련 POI 이미지들의 베이스를 생성하는 단계; 제1 프로세서에 의해, 훈련 POI 이미지들의 베이스를 사용하여 복수의 훈련 POI 이미지들의 트리플릿들을 생성하는 단계 -각각의 트리플릿은 제1 훈련 POI 이미지, 제1 훈련 POI 이미지와 관련되는 제2 훈련 POI 이미지, 및 제1 및 제2 훈련 POI 이미지들과 관련 없는 제3 POI 훈련 이미지를 포함 함-; 제1프로세서에 의해, 훈련 POI 이미지들이 각각 훈련 POI 이미지들과 연관된 레이블들에 기초하여 관련되는지 또는 관련 없는지 여부를 판단하는 단계; 및 제1 프로세서에 의해, 훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴 유형의 CNN을 훈련시키는 단계를 포함한다.
다른 특징들에서, 레이블들 각각은 연관된 훈련 POI 이미지의 6-자유도 포즈를 포함한다.
다른 특징들에서, 훈련 POI 이미지들이 관련되는지 또는 관련 없는지 여부를 결정하는 단계는: 제1 프로세서에 의해, 두 개의 훈련 POI 이미지들이 제3 임계 값보다 큰 기하학적 중첩을 나타내는 경우, 두 개의 훈련 POI 이미지들이 관련되는 것으로 판단하는 단계; 및 제1 프로세서에 의해, 기하학적 중첩이 제2 임계 값보다 작은 경우, 두 개의 훈련 POI 이미지들이 관련 없는 것으로 판단하는 단계를 포함한다.
다른 특징들에서, 상기 방법은 제1 프로세서에 의해, 두 개의 POI 이미지들의 각각에서 각각 보이는 코리더 아웃라인들의 세트들 간의 교차 겹침 결합(intersection-over-union)에 기초하여 두 개의 훈련 POI 이미지들 간의 기하학적 중첩을 계산하는 단계를 더 포함한다.
다른 특징들에서, 적어도 하나의 트리플릿은 제1 훈련 이미지의 제1 사이니지 영역을 다른 훈련 POI 이미지로부터의 제2 사이니지 영역으로 대체함으로써 생성되는 합성 POI 이미지를 포함한다.
다른 특징들에서, 훈련 POI 이미지들의 베이스를 생성하는 단계는: 제3 프로세서에 의해, 각각 연관된 레이블들을 갖는 POI 이미지들의 초기 세트를 획득하는 단계; 제3 프로세서에 의해, 초기 세트의 서브세트 내의 각각의 POI 이미지에 대해, 해당 POI 이미지에서 사이니지 영역을 식별하는 단계 -사이니지 영역은 POI 이미지에 의해 표현되는 POI 상에 위치된 사이니지를 포함 함-; 제3 프로세서에 의해, 제1 POI 이미지의 사이니지 영역을 제2 POI 이미지의 사이니지 영역으로 대체함으로써 서브세트의 제1 POI 이미지에 대응하는 합성 POI 이미지를 생성하는 단계; 제3 프로세서에 의해, 합성 POI 이미지에 제2 POI 이미지의 레이블을 연관시키는 단계; 및 훈련 POI 이미지들의 베이스로서, POI 이미지들의 초기 세트 및 합성 POI 이미지를 포함하는 POI 이미지들의 최종 세트를 저장하는 단계를 포함한다.
다른 특징들에서, 상기 방법은: 제3 프로세서에 의해, 제3 POI 이미지의 사이니지 영역을 제4 POI 이미지의 사이니지 영역으로 대체함으로써 서브세트의 제3 POI 이미지에 대응하는 제2 합성 POI 이미지를 생성하는 단계; 및 제3 프로세서에 의해, 합성 POI 이미지에 제4 POI 이미지의 레이블을 연관시키는 단계를 포함하고, 상기 저장하는 단계는 제2 합성 POI 이미지를 최종 세트에 저장하는 단계를 더 포함한다.
다른 특징들에서, 최종 세트 내의 POI 이미지들의 전체 수 중 적어도 5%는 다른 POI 이미지들로부터 사이니지 영역들로 생성된 합성 POI 이미지들이다.
다른 특징들에서, 최종 세트 내의 POI 이미지들의 전체 수 중 적어도 25%는 다른 POI 이미지들로부터 사이니지 영역들로 생성된 합성 POI 이미지들이다.
다른 특징들에서, 상기 방법은: 크롭된 사이니지 이미지들의 컬렉션을 획득하는 단계를 포함하고, 여기서 합성 POI 이미지를 생성하는 단계는 제1 POI 이미지의 사이니지 영역을 크롭된 사이니지 이미지들의 컬렉션으로부터 크롭된 사이니지 이미지들 중 선택된 하나의 크롭된 사이니지 이미지로 대체하는 단계를 포함한다.
다른 특징들에서, 상기 방법은 크롭된 사이니지 이미지들의 컬렉션으로부터 크롭된 사이니지 이미지들 중 선택된 하나를 랜덤으로 선택하는 단계를 더 포함한다.
다른 특징들에서, 상기 방법은 제1 POI 이미지의 사이니지 영역의 크기 및 형상에 적응하기 위해 크롭된 사이니지 이미지들 중 선택된 하나의 아핀 워핑(affine warping)을 수행하는 단계를 더 포함한다.
다른 특징들에서, 상기 방법은 푸아송 블렌딩을 수행하는 단계를 더 포함한다.
다른 특징들에서, 사이니지는 (a) POI 이미지에 의해 표현되는 POI 상에 위치된 명칭 및 (b) POI 이미지에 의해 표현된 POI 상에 위치된 로고 중 적어도 하나를 포함한다.
다른 특징들에서, 각각의 POI 이미지에서 사이니지 영역을 식별하는 단계는 광학 문자 인식 및 로고 검출 중 적어도 하나를 사용하여 각각의 POI 이미지들에서 사이니지 영역을 식별하는 단계를 포함한다.
다른 특징들에서, POI 이미지들과 연관된 레이블들 각각은 POI 이미지들 중 하나에 의해 표현되는 POI를 식별하는 레이블을 포함한다.
다른 특징들에서, POI 이미지들과 연관된 레이블들 각각은 POI 이미지들 중 하나의 위치 및 방향 중 적어도 하나를 정의하는 레이블을 포함한다.
다른 특징들에서, POI 이미지들과 연관된 레이블들 각각은 POI 이미지들 중 하나의 6-자유도 포즈를 정의하는 레이블을 포함한다.
다른 특징들에서, 상기 방법은 이미지 획득 장치를 사용하여 POI들의 지리적-위치화된 이미지들을 획득함으로써 POI 이미지들의 초기 세트를 생성하는 단계를 더 포함한다.
다른 특징들에서, 서브세트는 모든 초기 세트를 포함한다.
일 특징에서, 한 쌍의 입력된 POI 이미지들의 POI 변화를 검출하는 컨볼루션 신경망(CNN)을 훈련시키기 위한 훈련 이미지들의 베이스를 생성하는 방법은: 프로세서에 의해, 각각 연관된 레이블들을 갖는 POI 이미지들의 초기 세트를 획득하는 단계; 프로세서에 의해, 초기 세트의 서브세트 내의 각각의 POI 이미지에 대해, POI 이미지에서 사이니지 영역을 식별하는 단계 -사이니지 영역은 POI 이미지에 의해 표현되는 POI 상에 위치된 사이니지를 포함 함-; 프로세서에 의해, 제1 POI 이미지의 사이니지 영역을 제2 POI 이미지의 사이니지 영역으로 대체함으로써 서브세트의 제1 POI 이미지에 대응하는 합성 POI 이미지를 생성하는 단계; 프로세서에 의해, 제2 POI 이미지의 레이블을 합성 POI 이미지에 연관시키는 단계; 및 훈련 이미지들의 베이스로서, POI 이미지들의 초기 세트 및 합성 POI 이미지를 포함하는 POI 이미지들의 최종 세트를 저장하는 단계를 포함한다.
일 특징에서, 한 쌍의 입력된 POI 이미지들의 POI 변화를 검출하기 위한 컨볼루션 신경망(CNN)을 훈련시키는 방법은: 제1 프로세서에 의해, 훈련 POI 이미지들의 베이스를 생성하는 단계; 제2 프로세서에 의해, 복수의 훈련 POI 이미지들의 트리플릿들을 생성하는 단계 -각각의 트리플릿은 제1 POI 이미지, 제1 POI 이미지와 관련된 제2 POI 이미지, 및 제1 및 제2 POI와 관련 없는 제3 POI 이미지를 포함 함-; 제2 프로세서에 의해, POI 이미지들이 각각 POI 이미지들과 연관된 레이블들에 기초하여 관련되는지 또는 관련 없는지 여부를 판단하는 단계; 및 제2 프로세서에 의해, 훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴(Siamese) 유형의 CNN을 훈련시키는 단계를 포함한다.
본 개시 내용의 다른 적용 분야는 상세한 설명, 청구범위들 및 도면들로부터 명백해질 것이다. 상세한 설명 및 특정 예시들은 단지 예시를 위한 것이며 본 개시의 범위를 제한하려는 것이 아니다.
본 특허 또는 출원 파일은 컬러로 작성되는 적어도 하나의 도면을 포함한다. 컬러 도면(들)을 갖는 본 특허 또는 특허 출원 간행물은 요청 및 필요한 비용을 지불하면 사무실에서 제공될 것이다.
본 개시는 상세한 설명 및 첨부 도면들로부터 보다 완전히 이해될 것이다:
도 1은 POI의 변화 또는 변화하지 않는 것을 나타내는 POI 이미지들의 비교들의 예시들을 나타낸다;
도 2는 방법이 수행되는 아키텍처의 일례를 도시한다;
도 3은 방법에 사용하기 위한 CNN 아키텍처의 일례를 나타낸다;
도 4a는 특히 검출하기 어려운 실제 POI 변화의 일례를 나타낸다;
도 4b는 합성 POI 이미지들 및 대응하는 원본 POI 이미지들의 예시들을 나타낸다;
도 5a 내지 5c는 문제가 있는 후보 POI 이미지들의 세 가지 예시들을 나타낸다;
도 6은 두 이미지들 간에 기하학적 중첩이 어떻게 계산되는지를 도시한다;
도 7a 내지 7b는 방법들의 성능을 평가하기 위한 두 가지 테스트들을 나타낸다;
도 8은 훈련을 위해 이미지들의 한 세트를 생성하는 예시적인 방법을 도시한 흐름도를 포함한다;
도 9는 예시적인 훈련 방법을 도시한 흐름도를 포함한다;
도 10은 POI 변화를 검출하는 예시적인 방법을 도시한 흐름도를 포함한다.
도면에서, 참조 번호들 유사하고 또는/추가로 동일한 엘리먼트들을 식별하기 위해 재사용될 수 있다.
아키텍처
본 출원은: 한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하기 위해 컨볼루션 신경망(CNN)을 훈련시키기 위한 훈련 이미지들의 베이스를 생성하는 방법; 유리하게는 상기 제1 방법에 따라 생성되는 베이스로부터 한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하기 위해 CNN을 훈련시키는 방법; 상기 제2 방법에 따라 유리하게 훈련된 CNN을 사용하여 한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하는 방법을 개시한다.
설명된 바와 같이, "관심 지점(Point Of Interest)"은 누군가 또는 어떤 것이 유용하거나 흥미로울 수 있는 잘-위치화된 지리적 랜드마크를 의미할 수 있다. POI들의 전형적인 예시들은 식당들, 카페들, 은행들 등과 같은 모든 종류들의 샵들 또는 상점들이 있다. 하지만POI들은 모든 건물의 모든 점유에 일반화될 수 있다. POI들의 다른 예시들은 공공 건물들, 병원들, 학교들, 교회들, 주차장들, 경찰서들, 소방서들, 기차역들, 공항들 등을 포함한다.
일반적으로, POI들은 "웹 맵(web map)"과 같이 맵에 표시될 수 있는 "스팟들(spots)"이다. 웹 맵은 모바일 장치(예를 들어, 스마트 폰, 태블릿, 랩탑 등) 또는 내장되거나 그렇지 않은 어플리케이션을 사용하는 모바일 장치(예를 들어, 자동차 컴퓨터, 데스크 탑, 디스플레이 또는 프로젝션 유닛 등)와 같은 클라이언트 장비(10)에 제공되는 맵일 수 있다. 웹 맵은 사용자 요청들에 기초하여 맵 상에 디스플레이하기 위해 POI들의 데이터베이스로부터 생성될 수 있다.
POI가 사용되는 상황에 따라, POI는 건축물 외부(예를 들어, 관광 명소, 정부 건물 등)에 있는지 또는 구조물 내부(예를 들어, POI들은 박물관 내의 예술의 위치 또는 시설들의 위치를 식별할 수 있다)에 있는지 관계없이, 관심이 있거나 없을 수도 있는 특징들(예를 들어, 여행할 때, 다음 POI들이 관심이 있을 수 있다: 급유소들, 주차장들, 식당들 등)을 식별할 수 있다. 따라서, POI들은 상이한 상황에서 상이한 의미들을 가질 수 있다.
각각의 POI는 특정 위치(일반적으로 건물)과 연관되어 설명되어, 이러한 위치의 이미지는 POI를 나타낸다.
"POI 변화(POI change)"는 한 쌍의 입력된 이미지들에 의해 정의되는 주어진 기간 동안(이유와 상관없이) 다른 POI에 의해 위치에 의해 특정 위치에서 POI를 대체하는 것을 지칭할 수 있다.
이러한 이미지들은 두 개의 상이한 타임-스탬프들에서 동일한 위치를 캡쳐하고(따라서 기간을 정의), 각각의 "이전-이미지(before-image)" 및 "이후-이미지(after-image)"로 표시된다. 예를 들어, 동일한 위치에서 이전-이미지가 은행을 나타내고, 이후-이미지가 패스트 푸드 식당을 나타내는 경우 은행에서 식당으로 POI가 변화된다.
본 출원은 POI 변화의 발생을 검출하는 방법을 설명한다. 방법의 출력은 부울 값(Boolean value), 예를 들어 POI 변화가 검출될 때의 제1 값 및 POI 변화가 검출되지 않을 때의 제2 값일 수 있다. POI 변화가 검출되면, "새로운" POI를 결정하기 위해 POI 검출기가 트리거될 수 있다.
기술된 방법은 POI가 시간의 경과에 따라 변했는지 아닌지를 주어진 영역 내의 각각의 POI에 대해 자동으로 결정하기 위해 대규모로 사용될 수 있다. 다시 말해, POI 변화 검출 방법은 대략 동일한 지리적 위치들(지리적 위치된 사진)에서 촬영된 두 개의 주어진 사진들(이미지들)의 데이터세트들로부터 획득되는 복수의 한 쌍의 입력된 이미지들에 대해 수행될 수 있다. 두 개의 데이터세트들은 예를 들어, 영역을 로밍하는 차량에 의해 캡쳐될 수 있다. 두 개의 데이터세트들은 두 개의 상이한 시간들(두 개의 상이한 타임-스탬프들을 가짐)에서 캡쳐되고, 각각 "이전-데이터세트(before-dataset)"("이전-이미지들"의 세트) 및 "이후-데이터"("이후-이미지들"의 세트)로 표시된다.
도 1의 예시에서, 맵은 두 개의 위치들이 POI 변화에 대해 확인되는 영역을 나타낸다. 왼쪽에서, 제1 위치(체크 마크로 표시)에는 POI 변화가 없음을 알 수 있다. 오른쪽에서, 제2 위치(X로 표시)에 POI 변화가 있음을 알 수 있다.
설명된 방법들은 제1 서버 및/또는 제2 서버 및/또는 제3 서버(1a, 1b, 1c)를 사용하여, 도 2에 도시된 바와 같은 아키텍처 내에서 구현된다. 제1 서버(1a)는 베이스 생성 서버(제1 방법을 구현 함)이고, 제2 서버(1b)는 학습 서버(제2 방법을 구현 함)이고, 제3 서버(1c)는 POI 변화 검출 서버(제3 방법을 구현 함)이다. 두 개의 기능(예를 들어, 제1 서버(1a) 및 제2 서버(1b)) 또는 모든 서버들의 기능이 결합될 수 있다. 대안적으로, 각각의 서버들의 기능은 프로세서 회로에 의해 제공되거나 공유 프로세서 회로에 의해 결합될 수 있다.
제1, 제2 및 제3 서버(1a, 1b, 1c) 각각은 데이터 교환을 위한 인터넷과 같은 확장 네트워크(2)에 연결되는 원격 컴퓨터 장비를 포함한다. 제1, 제2 및 제3 서버(1a, 1b, 1c) 각각은 데이터 프로세서와 같은 데이터 처리 모듈(11a, 11b, 11c)을 포함한다. 제2 서버(1b)의 데이터 처리 모듈(11b)은 데이터 처리 모듈들(11a 및 11c)의 기능보다 학습이 계산 집약적일 수 있으므로, 데이터 처리 모듈들(11a 및 11c)보다 더 큰 데이터 처리 능력들을 가질 수 있다. 제1, 제2 및 제3 서버(1a, 1b 및 1c) 각각은 또한 메모리와 같은 저장 모듈들(12a, 12b, 12c)을 포함할 수 있다.
제1 및 제2 서버들(1a 및 1b)은 훈련 베이스를 저장하거나 액세스할 수 있다. 훈련 베이스는 훈련 이미지들의 베이스를 포함 할 수 있고, 이는 "POI 이미지들"로 지칭될 수 있다. 각각의 POI 이미지들은 제1 및 제2 서버들(1a 및 1b)이 POI 이미지들 중 두 개가 "관련" 또는 "비관련"인지를 결정할 수 있게 하는 레이블(또는 "태그")와 연련된다. 관련은 동일한 POI를 의미할 가능성이 높다. 비관련은 동일한 POI를 의미하지 않을 수도 있다.
제1 예시에서, 레이블은 POI 이미지에 의해 묘사되는 POI를 직접 식별한다. 다시 말해, POI가 이러한 이미지에 의해 묘사되는 훈련 베이스의 각각의 POI 이미지에 대해 알려질 수 있다. 예를 들어, 식당의 이미지는 식당의 이름인 레이블과 연관될 수 있다.
제2 예시에서, 각각의 POI 이미지들은 위치 및/또는 방향 데이터로 레이블링된다. 이러한 예시에서, POI 이미지의 레이블은 POI 이미지의 위치 및/또는 방향을 정의한다. 예를 들어, 레이블은 위치의 세 개의 컴포넌트들 및 방향의 세 개의 컴포넌트들을 포함하는 6D 포즈를 포함할 수 있다. 이러한 경우에, 그것들의 위치/방향(레이블들)이 대략적으로 동일하다면(예를 들어, 이미지를 획득 할 때 카메라가 유사한 시점을 갖는 경우), 두 개의 POI 이미지들은 관련되는 것으로 결정될 수 있다.
본 출원은 특정 레이블링 방식으로 제한되지 않는다. 레이블이 도시된 POI에 대한 정보를 제공하고 서버들(1a, 1b 및 1c)가 두 개의 POI 이미지들과 관련되는지 아닌지의 여부를 결정할 수 있는 한, 레이블들은 임의의 적절한 특성을 가질 수 있다.
아키텍처는: 카메라를 구비한 자동차 및 6D 포즈(six degrees of freedom)와 같은 각각의 획득된 이미지의 위치(예를 들어, 세 개의 컴포넌트들) 및/또는 방향(예를 들어, 세 개의 컴포넌트들)을 결정하도록 구성되는 지리적 위치 유닛(GPS 모듈, LIDAR 등과 같은)과 같은 이미지 획득 장치(3)를 더 포함할 수 있다.
클라이언트 장비(10)의 하나 이상의 아이템들은 사용자 단말(또한 네트워크(2)에 연결됨)일 수 있고, 서버들(1a, 1b, 1c)로부터 분리될 수 있지만, POI 정보에 액세스하기 위해 하나 및/또는 그것의 다른 것과 병합될 수 있다. 예를 들어, 클라이언트 장비(10)는 하나 이상의 서버들(1a, 1b 및 1c)로부터의 POI 정보에 기초하여 맵 상에 POI를 표시하는 맵핑 어플리케이션을 구현할 수 있다.
샴(SIAMESE) NN
상점 앞과 관련된 일 예시에서, POI 변화가 먼저 이미지들에서 검출된 후, 그 프랜차이즈의 인식이 검출된다. 예를 들어, 프랜차이즈가 변화된 경우, POI 변화가 검출될 수 있다. 본 출원은 어떠한 POI 검출기 또는 POI 프랜차이즈들에 대한 어떠한 명시적 지식을 요구하지 않는다. 다시 말해, 본 출원은 대응하는 프랜차이즈(전후)가 훈련 동안 전혀 보이지 않았더라도 상점 앞의 POI 변화를 검출할 수 있다.
POI 변화 검출 문제는 랭킹 문제를 포함하는 것으로 설명될 수 있다. 랭킹 접근 방식은, 입력 쿼리에 따라 유사성 측면에서 이 쿼리와 관련된 모든 데이터베이스 엘리먼트들의 랭킹을 예측하는 것을 목표로 한다. 유사성은 전형적으로 당면 과제에 따라 정의된다(예를 들어, 임의로).
유사성/비유사성 인스턴스들(이 경우, POI인 경우)의 예시 쌍들로부터 유사성이 학습될 수 있다. 랭킹 접근 방식은 "식별(identification)" 문제를 해결하고 데이터세트에서 쿼리와 가장 유사한 인스턴스들을 찾는 것처럼 보이지만, 랭킹 접근 방식들이 두 인스턴스들의 유사성을 확인하고 두 인스턴스들 유사한지 아닌지 여부를 확인하기 위해 사용될 수 있다. 두 인스턴스들이 예상대로 비슷하지 않은 경우 변화가 있다.
랭킹 시스템을 훈련시키는 한 가지 방법은 트리플릿 손실을 사용하는 것이다. 본 출원은 이미지 트리플릿들에 기초한 랭킹 손실의 특정 형태를 포함한다. 목표는 쿼리 이미지로 구성되는 트리플릿, "관련된" 이미지(쿼리 이미지와 관련된 이미지, 즉 동일한 인스턴스의 이미지)와 "무관한" 이미지 (다시 말해, 쿼리 이미지와 관련 없는 이미지)로 명시적으로 적용하는 것이고, 관련 이미지의 훈련된 표현은 관련 없는 이미지의 표현보다 쿼리 이미지의 표현에 더 가깝다.
POI들과 관련하여 말을 바꾸어도, 이후-이미지, 이전-이미지 및 다른 POI(예를 들어, 이전 이미지의 레이블과 호환되지 않고/관련이 없는 레이블과 연관되는 임의의 POI 이미지, 즉 관련 없고 또 다른 상이한 POI를 묘사하는)의 이미지로 구성된 트리플릿이 있는 경우, 이후-이미지의 훈련된 표현은 다른 POI의 이미지의 표현보다 이전-이미지의 표현에 더 가깝다
이를 위해, 본 출원의 CNN은 3-스트림 샴 신경망일 수 있다. 세 개의 스트림 각각에 의해 생성되는 이미지 표현은 손실에 의해 공동으로 고려된다. POI 변화 검출을 위한 이러한 샴 NN의 실시예는 도 3에 의해 표현된다.
"샴(Siamese)" NN은 스트림들이라고 하는 둘 이상의 동일한 서브네트워크들을 포함하는 신경망 아키텍처의 유형이다. 도 3은 3 개의 스트림들이 있는 예시를 보여준다. "동일(Identical)"은 동일한 파라미터들 및 가중치들로 동일한 구성을 갖는 것을 의미할 수 있다. 파라미터 업데이트는 모든 스트림에서 미러링될 수 있다.
컨볼루션 필터들(레이어 CONV) 및 전-연결된 레이어(fully-connected layer; FC)의 가중치는 크기가 이미지들의 크기와 무관하므로 스트림들 간에 공유된다. 즉, 샴 아키텍처는 모든 크기들과 종횡비들의 이미지들을 처리할 수 있고, 테스트 시 사용되는 동일한(고) 해상도의 이미지들을 사용하여 훈련될 수 있다.
일반적인 ResNet-101은 일반화된 맥스풀링(maxpooling)을 기반으로 하는 글로벌 풀링 레이어(global pooling layer)를 갖는 각각의 스트림의 백본으로 사용될 수 있다.
FC 레이어는 "디스크립터(descriptor)"를 출력한다. 디스크립터는 두 개의 입력들이 비교될 수 있는 기초 벡터일 수 있다. 스트림이 동일한 구성을 갖기 때문에, 입력이 주어지면 획득한 디스크립터는 각각의 스트림에 대해 동일하다.
FC 레이어들 이후의 샴 NN의 일부(예를 들어, 레이어)는 손실을 계산하고 훈련 중에만 사용된다. 다음 랭킹 손실은 훈련에 사용될 수 있다. I q 를 디스크립터 d q 를 갖는 쿼리 이미지라고 하면, I + 는 디스크립터 d + 를 갖는 관련 이미지이고, I - 는 디스크립터 d - 와 관련 없는 이미지이다. 따라서 랭킹 트리플릿 손실은 다음과 같이 정의된다:
Figure pat00001
,
여기서 m은 마진을 제어하는 스칼라이다.
트리플릿 손실을 랭킹화하는 예시가 논의되지만, L2 표준 이외의 거리 함수들과 같은 다른 손실 함수들이 사용될 수 있다.
3-스트림 샴 NN은 트리플릿들(I a , I b , I c )로 훈련될 수 있고, 여기서 I a I b 는 동일한 인스턴스(즉, 동일한 POI를 나타냄)를 나타내고, I c 는 다른 인스턴스를 나타낸다(즉, 상이한 POI를 나타냄). 트리플릿 손실에 대한 다음 공식은 인스턴스가 무엇이든 디스크립터들 d a d b 사이의 거리가 항상 d a d c 사이의 거리보다 작아야 한다는 사실을 적용한다. 이러한 관계가 어떠한 트리플릿에 적용되는 경우, 일반적으로 동일한 인스턴스로부터의 이미지들이 상이한 인스턴스들로부터의 이미지들보다 공간에서 더 가깝다는 것을 의미한다. 다시 말해, 두 이미지 디스크립터들 사이의 거리를 측정하면 두 인스턴스들 사이의 관계를 알 수 있다:
Figure pat00002
,
여기서
Figure pat00003
는 미리 결정된 임계 값이다 (아래 참조).
베이스 생성 방법
훈련 이미지들의 베이스를 생성하는 방법은 제1 서버(1a)의 데이터 프로세서(11a)에 의해 구현된다. 이러한 방법은 CNN(특히 3-스트림 샴 유형 NN)을 훈련하기 위한 훈련 베이스를 설정한다.
샴 NN을 훈련시키기 위한 일반적인 설정은 이미지 당 단일 인스턴스(즉, 단일 POI를 나타내는 각각의 이미지)를 가지고, 연관된 레이블이 있는 이미지들의 데이터 세트를 생성하는 것이다. 앞에서 언급 한 바와 같이: 각각의 레이블은 이미지로 묘사된 POI를 식별한다. 트리플릿들을 생성하는 것은 다음과 같다. 이미지 I a 의 레이블을 I a 로 나타낸다. 트리플릿(I a , I b , I c )을 생성하기 위해 I a = I b I a I c 를 적용한다.
POI 변화 검출을 위해 네트워크를 훈련하는 것은 실제 POI 이미지들의 쌍들의 대규모 데이터세트를 사용할 수 있고, 그 중 일부는 POI 변화들이 있거나 일부는 POI 변화들이 없다. 훈련은 데이터세트를 랜덤으로 샘플링하여 적절한 트리플릿들을 형성한다. 하지만 이러한 대규모 데이터세트를 수집하는 것은 어렵고 시간이 많이 소모되며 비용이 많이들 수 있다.
POI 변화를 시뮬레이션하고 POI 변화 쌍들이 없는 트리플릿들(I a , I b , I c )을 직접 생성하면 결함들이 있을 수 있다. 예를 들어, (훈련 된) NN은 날씨, 폐색 또는 계절 상점-앞 변화들과 같은 변화가 아닌 시각적 혼란에 대해 충분한 불변성을 학습하지 못할 수 있다. 이것은 가능한 변형들의 전체 패널을 나타내지 않을 수 있는 훈련에 사용되는 제한된 데이터 때문일 수 있다. 제한된 데이터세트는 POI 변화들의 예시 쌍들만을 시뮬레이션할 수 있다. 또한, 실제 POI 변화를 나타내는 동일한 장소의 이미지들의 예시적인 쌍을 제공하는 대신에, 두 개의 상이한 장소들로부터의 두 개의 상이한 POI들이 사용될 수 있다. 하지만 실제로는 도 1의 오른쪽에 보이는 것과 같이, POI "이전"과 "이후"사이에 특정 유사성 또는 상관관계가 있는 경우가 종종 있다.
본 출원은 인스턴스의 시각적 아이덴티티를 구성하는 것을 구별한다. 이를 "주요 시각적 특징(key visual feature)"이라고 한다. POI들의 경우, 상이한 상점들이 동일한 제품들이나 서비스들을 판매할 수 있으므로, 상점-앞 그 자체는 별로 구별되지 않는다. 특히, 두 개의 상이한 POI들을 명백하게 구별할 수 있는 유일한 것은, 이러한 주요 시각적 특징이고, 이것은 일반적으로 POI의 이름 및/또는 로고이다. 다양한 구현들에서, 3 차원 엠블럼, 특정 패턴, 특정 가구 등과 같은 다른 시각적 아이덴티티 특징들이 사용될 수 있다. POI의 이러한 주요 시각적 특징은 일반적으로 이미지에서 잘 식별되고 분리될 수 있다.
예를 들어, 도 4a는 훈련된 NN을 검출하기 어려울 수 있는 실제 POI 변화의 예시를 보여준다. 상점 소유자(프랜차이즈)가 변화되었지만, 상점 컨텐츠는 동일하게 유지되었다. 주요 시각적 특징(사이니지)만 변경되었지만, 비교적 독특한 방식은 아니다.
상점 앞들의 POI 이미지들에 나타나는 주요 시각적 특징을 "사이니지(signage)"라고 하고, POI 이미지의 해당 부분을 "사이니지 영역(signage region)"이라고 한다. 사이니지 영역들의 예시는 도 4a에서 점선 사각형들로 정의된다.
본 출원은 사이니지 영역을 다른 사이니지 영역과 합성적으로 교환하고, 선택적으로, 보다 사실적인 이미지 블렌딩 기술을 사용하여, 훈련 베이스를 확대함으로써 POI 변화들의 인공적인 예시들의 생성을 포함한다.
베이스 생성 방법은 도 8에 도시되어 있고, POI 이미지들의 초기 세트를 획득하는 단계(a1)로 시작하고, 각각의 POI 이미지는 저장된 연관된 레이블을 갖는다. 레이블은 이미지에 의해 묘사된 POI를 직접 식별하거나 이미지의 위치 및/또는 방향을 정의할 수 있다. 이하에 두 실시예들을 설명한다. 하지만 다양한 기법들이 초기 세트를 획득하기 위해 사용될 수 있다.
레이블들이 POI들을 식별하는 경우, 이러한 포인트에서 초기 세트의 각각의 이미지는 올바르게 레이블링된 단일 POI를 나타내는 것으로 가정한다.
단계(a2)에서, 초기 세트의 서브세트로부터의 각각의 이미지에 대해, 사이니지 영역이 이미지에서 식별되고, 사이니지 영역은 이미지에 의해 묘사된 POI의 주요 시각적 특징을 설명하는 것으로서, -특히 이미지와 연관된 레이블- 일반적으로 이름 및/또는 로고이다. 서브세트는 전체 초기 세트일 수 있거나 전체 초기 세트보다 적을 수 있다. 사이니지 영역은 예를 들어 광학 문자 인식 및/또는 로고 검출을 사용하여 이미지에서 식별될 수 있다.
사이니지 영역이 식별될 때, 사이니지 영역은 "사이니지 이미지(signage image)", 즉 사이니지 영역으로 제한되는 작은 이미지를 얻기 위해 크롭될 수 있다. 이 단계(a2)는 상이한 이미지들로부터 크롭된 사이니지 이미지들의 컬렉션을 획득하는 단계를 포함할 수 있음을 주목해야 한다.
단계(a3)에서, 적어도 하나의 "합성" POI 이미지가 생성된다. 합성 POI 이미지는 사이니지 영역이 서브세트의 제2 이미지의 사이니지 영역으로 대체된 서브세트의 제1 이미지에 대응하는 인공적으로, 구성되는, 훈련 이미지이다. 다시 말해, 실제 POI 이미지(제1 이미지)가 주어지면, 이 이미지의 사이니지 영역이 다른 사이니지 영역(제2 이미지의 영역)으로 대체된다. 제2 이미지(다른 사이니지 영역이 획득되는 것으로부터)는 서브세트로부터 랜덤으로 선택될 수 있다.
단계(a3)는 주어진 이미지의 사이니지 영역의 크기 및 형상에 적응하기 위해 선택된 크롭된 사이니지 이미지의 아핀 워핑을 포함할 수 있다. 이것은 더 사실적인 푸아송 블렌딩이 이어질 수 있다.
생성된 합성 POI 이미지들의 예시가 도 4b에 도시되어 있다. 각각의 예시에서, 왼쪽 이미지는 원본 사이니지 영역을 포함하는 원본 이미지(제1 이미지)이고, 위 이미지는(제2 이미지로부터) 선택된 크롭된 사이니지 영역을 나타내고, 오른쪽 이미지는 제1 이미지의 사이니지 영역을 제2 이미지의 사이니지 영역으로 교체함으로써 획득된 합성 POI 이미지이다.
훈련에 사용하기 위해, 합성 POI 이미지는 레이블링된다. 합성 이미지는 크롭된 사이니지 영역의 POI를 나타내는 것으로 간주된다.
원본 이미지와 합성 이미지는 훈련 베이스에 추가된 새로운 비유사(비관련) 쌍을 구성한다.
단계(a4)에서, 초기 세트의 POI 이미지들 및 각각의 생성된 합성 POI 이미지를 포함하는 POI 이미지들의 최종 세트가 훈련 이미지의 베이스로서 제공된다. 훈련은 훈련 이미지들의 베이스로 수행된다.
이 프로세스는 가시적인 사이니지를 가진 각각의 POI 이미지들에 대해 여러 번 실행될 수 있다. 합성 데이터 생성은 간단한 방식으로 사전 지식을 주입할 수 있게 하고, 부족한 데이터에 대해 접근 방식을 강력하게 만들 수 있게 한다.
아래에 더 논의되는 바와 같이, 훈련 베이스에서 최대 50%의 합성 이미지(즉, 원본 POI 이미지 당 최대 하나의 POI 합성 이미지)로 유리한 결과들이 얻어진다. 훈련 베이스에서의 합성 POI 이미지들의 비율은 4% (및 96% 원본 POI 이미지들) 내지 80% (및 20% 원본 POI 이미지들) 범위일 수 있다. 다양한 구현들에서, 훈련 베이스는 10% 내지 70%의 합성 POI 이미지들을 포함할 수 있고, 나머지는 원본 POI 이미지들이다. 다양한 구현에서, 훈련 베이스는 20% 내지 60%의 합성 POI 이미지들을 포함할 수 있고, 나머지는 원본 POI 이미지들이다. 다양한 구현들에서, 훈련 베이스는 40% 내지 55%의 합성 POI 이미지들을 포함할 수 있고, 나머지는 원본 POI 이미지들이다.
POI 이미지 레이블링
위에서 논의된 제1 예시에서, 각각의 POI 이미지는 POI를 식별하는 레이블과 연관된다. 이러한 경우에, 단계(a1)은 캡쳐된 POI 이미지들을 수동으로 레이블링함으로써 수행될 수 있다. 하지만 캡쳐된 POI 이미지들에 수동으로 레이블링을 하는 것은 시간과 자원이 소모될 수 있다.
이미지들을 자동으로 수집 및 레이블링 하는 것이 수행될 수 있다. 하지만 "잘못 형성된 트리플릿"이 발생할 수 있다. 그 이유는 세 가지일 수 있다: (1) 예를 들어, 도 5a에 도시된 바와 같이, 하나 이상의 인스턴스가 이미지 상에 나타날 수 있다; (2) 단일 이미지는 POI의 일부만을 커버할 수 있으므로, 동일한 POI로부터의 두 개의 이미지들은, 예를 들어도 5b에 도시된 바와 같이 중첩되지 않을 수 있다; (3) 일부 이미지들은 POI를 전혀 포함하지 않을 수 있지만, 이러한 이미지와 쌍을 이루는 POI 이미지는 도 5c에 도시된 바와 같이 변화로 간주되지 않는다.
각각의 POI 이미지에 도시된 POI를 식별하는 레이블의 정확성을 위해, 레이블 및 POI 이미지들의 휴먼 리뷰(human review) 및 검증이 수행될 수 있다. 각각의 POI 이미지가 또한 단일 POI만을 포함하는 휴먼 리뷰도 수행될 수 있다.
두 번째 예시에서, 각각의 POI 이미지는 6D 포즈와 같은 위치 및/또는 방향 데이터로 레이블링된다. 이러한 예시에서, 트리플릿들은 이미지 콘텐츠 중첩의 기하학적 측정에 기초하여 생성될 수 있다: 두 개의 이미지들 실질적으로 공통의 뷰를 공유하는 경우, 즉 이들이 중첩되는 경우 관련된다.
상기 영역의 맵이 이용 가능하다고 가정하면, 맵은 도 1의 예시에 도시된 바와 같이 코리더들(corridors)의 아웃라인(예를 들어, 그것만을(only))을 보여줄 수 있다. 지도를 사용할 수 없는 경우, 3D 재구성 기술들을 사용하여 포즈와 지도를 획득할 수 있다.
코리더 아웃라인들(corridor outlines)에 속하는 포인트는
Figure pat00004
로 표시되며, 여기서 W는 도 6의 예시와 같이 이러한 모든 포인트들의 세트이다. 각각의 이미지 I a 에 대해, 이러한 이미지에서 코리더 아웃라인들의 세트
Figure pat00005
를 나타내는 기하학적 파라미터V a 가 계산될 수 있다. 이것은 광선-투사(ray-casting)를 통해 달성된다: 이미지의 각각의 픽셀에 대해, 카메라 렌즈에서 시작하는 3D 광선은, 이 픽셀을 통과한 다음 처음 발생하는
Figure pat00006
에 투사된다.
두 이미지들(I a I b ) 사이의 오버랩 0(I a ; I b )은 가시성 세트들 사이의 교차 겹침 결합(intersection-over-union)을 사용하여 계산할 수 있다:
Figure pat00007
.
두 개의 이미지들이 관련되어 있는지 여부는 기하학적 중첩에 기초하여 결정한다. 두 POI 이미지들은 제1 임계 값(0 ( I a ; I b ) >
Figure pat00008
) 이상의 기하학적 중첩이 존재하는 경우 관련이 있는 것으로 판단되고(진정 쌍(true pair)), 제2 임계 값 (0 (I a ; I b ) ≤
Figure pat00009
) 미만의 기하학적 중첩이 있는 경우 비-관련(거짓 쌍(false pair))으로 판단된다.
제1 임계 값(
Figure pat00010
)은 제2 임계 값 (
Figure pat00011
)보다 크거나 같다. 예시 값은
Figure pat00012
= 0.5 (즉, 중첩의 50%) 및
Figure pat00013
= 0 (중첩 없음, 즉 두 이미지가 구별됨)이다. 두 이미지들 사이의 기하학적 중첩이 임계 값 사이에 있는 경우
Figure pat00014
(I a ; I b ) >
Figure pat00015
), 두 이미지들 사이의 관계는 불확실한 것으로 표시될 수 있다(관련 및 비관련). 불확실한 관계를 갖는 두 이미지들은 동일한 트리플릿에서 사용되지 않는다.
훈련 방법
훈련 방법은 제2 서버(11b)의 데이터 프로세서(11b)에 의해 구현되고 도 9에 도시되어 있다. 훈련 방법은 POI 변화를 검출하기 위해 3-스트림 샴 유형의 CNN을 훈련시킨다.
제1 단계(a)에서, 훈련 이미지의 베이스는 합성 POI 이미지로 "증강(augmented)"되도록, 도 8을 참조하여 위에서 논의된 제1 예시(즉, 각각의 POI 이미지가 POI를 식별하는 레이블과 연관되어있는 경우)에 따라 생성된다.
제1 및 제2 서버(1b 및 1c)는 동일한 서버일 수 있거나, 단계(a)는 메모리(12b)에 저장하기 위해 제1 서버(1a)로부터 제2 서버(1b)로 훈련 베이스의 전송을 포함할 수 있다.
제2 단계(b)에서, 훈련 이미지들의 베이스를 사용하여 복수의 훈련 이미지들의 트리플릿들이 생성된다. 각각의 트리플릿에는 한 쌍의 관련 POI 이미지들과 관련 없는 POI 이미지가 포함된다. 다시 말해서, 각각의 트리플릿은 두 개의 관련 POI 이미지들 및 두 개의 다른 POI 이미지들과 관련 없는 제3 POI 이미지를 포함한다. 다시 말해, 트리플릿에는 세 개의 이미지들이 있다. 트리플릿의 제3 이미지는 트리플릿의 제1 이미지 또는 제2 이미지(관련된)와 관련이 없다. 즉, Ic가 트리플릿(Ia, Ib, Ic)의 "관련 없는 이미지"인 경우, Ia는 트리플릿의 두 쌍들(Ia, Ib) - 관련된 이미지들의 쌍- 및 (Ia, Ic)-관련 없는 이미지들의 쌍- 에 속한다. 두 개의 POI 이미지들은 레이블들을 기준으로 관련이 있는지 여부를 판단한다. 적어도 하나의 트리플릿은 합성 이미지와 합성 이미지가 생성된 제1 이미지의 한 쌍의 관련 없는 POI 이미지들을 포함할 수 있다. 예를 들어, 일단 페어링이 이루어지면 트리플릿들이 랜덤으로 생성될 수 있다.
라벨이 POI 자체를 식별하는 경우, 두 개의 POI 이미지가 동일한 레이블을 갖는 경우 두 개의 POI 이미지가 관련되는 것으로 식별될 수 있다. 각각의 POI 이미지가 이미지의 6-자유도 포즈를 정의하는 레이블에 연관되는 경우, 두 개의 POI 이미지들은 그것들의 각각의 6-자유도 포즈에 기초하여 기하학적 중첩의 함수로서 관련되거나 관련 없는 것으로 식별될 수 있다.
단계(b)는 POI 변화 및 POI 변화 쌍들이 없는 것을 시뮬레이션하기 위해 기하학적 중첩 제약 조건들을 따르는 트리플릿을 선택하기 위해 베이스 내의 모든 이미지 쌍 사이의 기하학적 중첩을 계산하는 단계를 포함할 수 있다.
6DoF 예시에서, 훈련 베이스는 더 나은 훈련을 제공하기 위해 실제 POI 변화들이 없을 수 있다. 그렇지 않은 경우, 훈련 베이스는 동일한 포즈를 갖지만 상이한 POI들을 나타내는 한 쌍의 POI 이미지들을 포함할 수 있다. POI 변화들은 드물게 발생한다. POI 이미지들이 정시 또는 한 세션에서 가까운 타임-스탬프들로 수집되는 경우 더욱 그렇다.
세 번째 단계(c)에서, 샴 NN은 세 개의 트리플릿들의 세 개의 이미지들을 세 개의 스트림들의 입력들로서 사용하고 "랭킹 트리플릿 손실"을 손실 함수로 사용하여 훈련된다. 훈련을 위해 다음을 사용할 수 있다: 10-5의 학습 속도를 Adam을 사용하여 2000 회 반복마다 2 로 나눈, 배치 크기는 16이고, 32 회 반복마다 하드 트리플릿 마이닝이 수행된다. 하드 트리플릿 마이닝 중, 512 개의 이미지들의 풀이 랜덤으로 샘플링될 수 있다.
데이터 확대 기법들(예를 들어, 랜덤 스케일링, 컬러 지터링, 랜덤 회전, 랜덤 틸팅, 랜덤 소거, 랜덤 크롭)을 모든 실험에 대해 동일한 파라미터와 함께 사용할 수 있다.
수렴이 수천 번 반복될 때까지 모델을 훈련하면 모든 훈련 트리플릿들에 대한 트리플릿은 널(null)이 된다. 트리플릿 손실이 없으면, 추가 훈련이 효과가 없을 수 있다.
POI 변화 검출 방법
한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하는 방법은 제2 서버(1b)의 데이터 프로세서 유닛(11c)에 의해 실행될 수 있고, 도 10에 도시되어 있다. 이 방법은 훈련된 CNN을 사용하여 입력된 POI 이미지들의 비교를 통해 POI 변화가 발생했는지 여부를 판단한다.
입력된 한 쌍의 POI 이미지들의 이미지는 두 개의 상이한 타임 스탬프들에서 동일한 위치에 캡쳐되었을 수 있다. 이 방법은 두 개의 상이한 타임 스탬프("이전-데이터세트" 및 "이후-데이터세트")에서 캡쳐된 지리적 위치화된 이미지들의 두 개의 주어진 데이터세트(동일 지리적 위치에서 촬영된 이미지들)로부터 획득된 복수의 입력 이미지 쌍들에 대해 수행될 수 있다. 특정 영역에서 주변의 이미지의 데이터세트는 예를 들어 X 일, 주, 월 또는 년마다 이미지 획득 장치(3)를 사용하여 정기적으로 캡쳐될 수 있다.
이미지 쌍들은 이미지 지리적-위치화된 메타-데이터에 따라 형성된다. 구체적으로, 두 이미지들 I a I b 는 이들 중 적어도 하나가 근접 사진(예를 들어, 코리더 아웃라인까지의 평균 거리가 임계 값(
Figure pat00016
) 미만 임)이고 가시성 IoU가 충분하면 쌍을 이루고: 0 ( I a ; I b ) >
Figure pat00017
, 기하학적 중첩 계산 방법을 참조하라. 다음의 예시적인 값 또는 다른 적절한 값이
Figure pat00018
= 8 미터 및
Figure pat00019
= 0.5로 사용될 수 있다.
제1 단계(a')에서, 3-스트림 샴 타입의 CNN의 훈련은 제2 서버(1b)에 의해 수행된다. 훈련은 도 9를 참조하여 상술된 방법과 일치한다. 샴 NN은 한 쌍의 관련 POI 이미지들 및 한 쌍의 관련 없는 POI 이미지들을 포함하는 POI 이미지들의 트리플릿들을 기초로 훈련된다.
제2 및 제3 서버(1b 및 1c)는 동일한 장비일 수 있거나, 또는 단계(a')는 메모리(12c)에 저장하기 위해 훈련된 CNN 파라미터 및 가중치를 제2 서버(1b)로부터 제3 서버(1c)로 전송하는 것을 포함할 수 있다.
제2 단계(b')에서, 제2 서버(1b)의 데이터 프로세서(11b)는 입력된 이미지의 평가를 위해 훈련된 CNN을 사용한다.
이를 위해, 단계(b')는 한 쌍의 입력된 POI 이미지들 각각의 이미지에 대해, CNN의 스트림을 사용하여 이미지의 디스크립터를 계산하는 단계를 포함한다. 도 3을 참조하여 위에서 설명한 것처럼 세 개의 스트림이 모두 동일하므로 샴 NN의 단일 스트림만을 사용하여 이미지 디스크립터를 계산할 수 있다. 다양한 구현들에서, 두 개의 스트림들은 두 개의 디스크립터들을 병렬로 계산하기 위해 사용될 수 있다.
세 번째 단계(c')에서, 두 이미지들에 대해 계산된 디스크립터들의 유사성 스코어 함수에 기초하여 POI 변화를 검출할 수 있다. 유사성 스코어는 두 디스크립터들 사이의 거리를 나타낸다. 유사성 스코어가 높을수록 POI가 변화될 가능성이 증가하고 그 반대도 마찬가지이다.
제1 실시예에서, 유사성 스코어는 미리 결정된 임계 값과 비교되어 POI 변화가 발생했는지 여부를 나타내는 최종 결과를 판단한다. 예를 들어, 유사성 스코어가 미리 결정된 임계 값보다 크면 POI 변화가 검출될 수 있고(입력된 POI 이미지들이 다름) 유사성 스코어가 미리 결정된 임계 값보다 작으면 POI 변화가 검출되지 않을 수 있다(입력된 POI 이미지는 유사함).
제2 실시예에서, 이진 레이블 대신에 변화 확률을 결정하기 위해 시그모이드 함수(sigmoid function)와 같은 손실 함수가 적용될 수 있다.
유사성 스코어는 함수 S (I a ; I b ) =〈d a , d b 〉에 의해, 즉 그것들의 디스크립터들 사이의 내적(dot-product)으로서 주어질 수 있다. 차이의 표준들과 같은 다른 스코어링 함수들도 가능하다.
이 방법은 공간에 대한 모든 POI들에 대해 수행될 수 있어, 공간적 집계가 사용될 수 있다. 각각의 코리더 아웃라인
Figure pat00020
은 POI 변화 스코어 S w 를 수신하며, 모든 이미지 쌍들 "(시잉(seeing))"에 대한 최대 스코어들로 계산된다:
Figure pat00021
마지막으로 코리더 아웃라인들 스코어들{S w }는 너비가 1D인 가우시안 커널(예를 들어,
Figure pat00022
= 2 미터) 또는 다른 적절한 값을 사용하여 코리더 아웃라인들을 따라 국부적으로 매끄러워진다.
다양한 구현들에서, 주어진 영역에서 검출된 POI 변화들은 가능성에 의해 순위가 매겨진다. POI 데이터베이스를 업데이트하기 전에 변경 사항을 수동으로 검토하라는 경고가 생성(예를 들어, 표시)될 수 있다.
제안된 접근법은 많은 수의 이미지들(예를 들어, 수천)을 검토하고 이미지들을 필터링하며, POI 변화를 보여줄 가능성에 대한 요약을 수동으로 검토할 수 있다. 이것은 수동 검토 및 검증과 관련된 시간과 자원 소비를 줄이고 운영 안정성을 향상시킬 수 있다.
얻어진 결과는 장비(10)에 제공될 수 있다. 인터랙티브 그래픽 사용자 인터페이스(GUI)를 사용하여, 사용자는 가능한 POI 변화 영역들을 클릭하여 각 위치에서 이미지 쌍들을 신속하게 보고, POI 변화가 발생되었는지 여부를 확인할 수 있다.
테스트
본 방법의 효율은 표준 mAP(mean-Average-Precision) 메트릭을 사용하여 평가될 수 있다. mAP는 인스턴스 검색 시스템을 평가하는 방법이다.
mAP 측정은 POI 변화 가능성과 관련하여 주어진 특정 영역의 모든 위치들을 전체적으로 랭킹화 하는 것이 목표가 될 수 있는 POI 변화 검출 작업과 정확하게 일치하지 않을 수 있다.
위치를 각각의 지상-검증 POI 변화에 수동으로 연결하여 지리적 지상-검증을 정의할 수 있다. 테스트 시 제안된 시스템의 출력(각각의 위치에서 POI 변화가 발생할 가능성을 나타내는 값 생성)을 지상-검증과 비교할 수 있다.
POI 변화가 발생한 지상 검증 지점 근처의 모든 위치는 "포지티브(positive)"(5 미터 반경)로 표시되고 다른 모든 위치는 "네거티브(negative)"로 표시된다(POI 변화가 발생하지 않았음을 나타냄). 전체적으로 모든 위치의 0.75 % 미만이 포지티브로 표시될 수 있다. 이러한 지리적 레이블링이 주어진 평균 정밀도(Average-Precision)를 "PCD AP"라고 하며 제안된 시스템의 글로벌 성능을 반영한다.
도 7a는 위에서 설명한 두 가지 레이블링 체계의 성능을 비교한 첫 번째 테스트를 나타낸다(POI를 식별하는 레이블 대 이미지의 위치 및/또는 방향을 정의하는 레이블). 도시된 바와 같이, 위치 및/또는 방향을 정의하는 레이블링이 더 잘 수행될 수 있다.
도 7b는 훈련 베이스에서 상이한 비율의 합성 이미지에 따른 성능을 비교하는 제2 테스트를 나타낸다.
합성 이미지들을 추가하면 왼쪽 그림의 흔적으로 알 수 있듯이 훈련이 더 어렵고 오래 지속된다. 하지만 합성 이미지들을 추가하면 mAP에 미치는 영향이 미미하다. 즉, 합성 이미지를 추가하면 이미지 랭킹에 거의 영향을 미치지 않는다.
하지만, 합성 이미지들은 PCD AP 메트릭에 큰 영향을 미친다(더 많을수록 우수). 합성 예시들을 추가하면 CNN이 차별화된 시각적 기능인: 사이니지에 주의를 집중시켜야 하기 때문이다. 훈련 후 마지막 컨볼루션 레이어의 활성화 맵은 CNN이 사이니지에만 관심을 집중하도록 학습한다는 것을 보여준다. 결과적으로 사이니지가 다른 이미지들 간의 거리 간격을 강화하여 POI 변화 검출을 보다 정확하게 만든다.
예를 들어, 도 4a에 도시된 두 이미지들 I a I b 사이의 거리는 각각 합성 이미지를 추가하거나 추가하지 않고 훈련되는 CNN에 대하여
Figure pat00023
Figure pat00024
와 같다.
컴퓨터 프로그램 제품
다양한 구현들에서, 본 출원은: 다음 중 적어도 하나를 실행하기 위한 (특히, 제1, 제2 및/또는 제3 서버(1a, 1b, 1c)의 데이터 프로세서(11a, 11b, 11c) 상에서) 코드 명령을 포함하는 컴퓨터 프로그램 제품을 포함한다: 상기 논의된 훈련 이미지의 베이스를 생성하는 방법; 상기 논의된 컨볼루션 신경망 CNN을 훈련시키는 방법; 및 상기 논의된 한 쌍의 입력된 POI 이미지들에서 POI 변화를 검출하는 방법. 컴퓨터 프로그램 제품은 컴퓨터 장비(예를 들어, 제 1, 제 2 및 제 3 서버 (1a, 1b, 1c) 중 적어도 하나)에 의해 판독 가능하고 실행 가능한 저장 수단(예를 들어, 메모리(12a, 12b, 12c))에 저장될 수 있다.
결론
주제가 "사이니지"로 식별되는 그것의 주요 시각적 특징을 갖는, 매장 정면을 식별하는 POI들에 대한 특정 참조로 설명되었지만, 첨부된 청구범위에 정의된 주제는 반드시 특정한 특징으로 제한되는 것은 아니라는 것이 이해될 것이다. 또는 위에서 설명한 행위. 오히려, 전술한 특정 특징 및 행위는 하나의 예시적인 형태를 제공한다. 예를 들어, 상점 정면 대신에, POI들은 박물관을 식별할 수 있고, 그러한 POI들의 주요 시각적 특징(또는 사이니지 영역)은 박물관 내의 작품일 수 있다.
전술한 설명은 본질적으로 단지 예시적인 것이며 본 개시, 그것의 응용, 또는 사용을 제한하려는 것이 아니다. 본 개시의 광범위한 교시는 다양한 형태들로 구현될 수 있다. 그러므로, 본 개시는 특정 예를 포함하지만, 본 개시의 진정한 범위는 도면, 명세서 및 하기 청구 범위의 연구에 따라 다른 변형이 명백해질 것이기 때문에 그렇게 제한되지 않아야 한다. 방법 내의 하나 이상의 단계는 본 개시의 원리를 변경하지 않고 상이한 순서로 (또는 동시에) 실행될 수 있음을 이해해야 한다. 또한, 각각의 실시예는 특정 특징을 갖는 것으로 설명되었지만, 본 개시 내용의 임의의 실시예와 관련하여 설명된 이들 특징 중 임의의 하나 이상은 다른 실시예의 특징으로 구현 및/또는 결합될 수 있다. 그 조합은 명시적으로 설명되어 있지 않다. 다시 말해, 설명된 실시예는 상호 배타적이지 않으며, 하나 이상의 실시예의 서로의 순열은 본 개시의 범위 내에 있다.
엘리먼트들 사이(예를 들어, 모듈들, 회로 엘리먼트들, 반도체 레이어들 등) 사이의 공간적 및 기능적 관계는 "연결된(connected)", "결합된(engaged)", "인접한(adjacent)", "옆에(next to)", "상위에(on top of)", "위(above)", "아래(below)" 및 "배치된(disposed)" 을 포함하는 다양한 용어를 사용하여 설명된다. "직접(direct)"인 것으로 명시적으로 기술되지 않는 한, 제1 및 제2 엘리먼트 사이의 관계가 상기 개시에서 설명될 때, 그 관계는 제1 및 제2 엘리먼트 사이에 다른 엘리먼트가 존재하지 않는 직접적인 관계일 수 있지만, 하나 이상의 엘리먼트가 제1 및 제2 엘리먼트 사이에(공간적으로 또는 기능적으로) 존재하는 간접적인 관계일 수도 있다. 본 명세서에 사용된 바와 같이, 문구 A, B 및 C 중 적어도 하나는 비 배타적 논리합을 사용하여 논리(A OR B OR C)를 의미하는 것으로 해석되어야 하고, "A 중 적어도 하나, B 중 적어도 하나 및 C 중 적어도 하나"를 의미하는 것으로 해석되어서는 안 된다.
도면에서, 화살표로 표시되는 화살표의 방향은 일반적으로 예시에 관심이 있는 정보의 흐름(데이터 또는 명령과 같은)을 나타낸다. 예를 들어, 엘리먼트 A와 엘리먼트 B가 다양한 정보를 교환하지만 엘리먼트 A에서 엘리먼트 B로 전송되는 정보가 예시와 관련이 있는 경우, 화살표는 엘리먼트 A에서 엘리먼트 B를 가리킬 수 있다.
이러한 단방향 화살표는 다른 정보가 엘리먼트 B로부터 엘리먼트 A로 전송되지 않음을 의미하지는 않는다. 또한, 엘리먼트 A에서 엘리먼트 B로 전송되는 정보에 대해, 엘리먼트 B는 정보의 요청 또는 수신 확인을 엘리먼트 A로 전송할 수 있다.
아래의 정의를 포함하여 본 출원에서 "모듈" 또는 "제어기"라는 용어는 "회로"라는 용어로 대체될 수 있다. "모듈"이라는 용어는 다음을 지칭하거나 일부이거나 포함할 수 있다: 주문형 집적 회로(Application Specific Integrated Circuit; ASIC); 디지털, 아날로그 또는 혼합 아날로그/디지털 이산 회로; 디지털, 아날로그 또는 혼합 아날로그/디지털 집적 회로; 조합 논리 회로; FPGA(Field Programmable Gate Array); 코드를 실행하는 프로세서 회로(공유, 전용 또는 그룹); 프로세서 회로에 의해 실행되는 코드를 저장하는 메모리 회로(공유, 전용 또는 그룹); 설명된 기능을 제공하는 다른 적합한 하드웨어 구성 요소; 또는 시스템-온-칩(system-on-chip)에서와 같이 상기 일부 또는 전부의 조합일 수 있다.
모듈은 하나 이상의 인터페이스 회로를 포함할 수 있다. 일부 예시에서, 인터페이스 회로는 근거리 통신망(LAN), 인터넷, 광역 통신망(WAN) 또는 이들의 조합에 연결된 유선 또는 무선 인터페이스를 포함할 수 있다. 본 개시의 임의의 주어진 모듈의 기능은 인터페이스 회로를 통해 연결된 다수의 모듈에 분산될 수 있다. 예를 들어, 여러 모듈이 로드 밸런싱을 허용 할 수 있다. 다른 예시에서, 서버(원격 또는 클라우드라고도 함) 모듈은 클라이언트 모듈 대신 일부 기능을 달성할 수 있다.
상기 사용된 용어 코드는 소프트웨어, 펌웨어 및/또는 마이크로 코드를 포함할 수 있으며, 프로그램, 루틴, 기능, 클래스, 데이터 구조 및/또는 객체를 지칭할 수 있다. 공유 프로세서 회로라는 용어는 여러 모듈에서 일부 또는 모든 코드를 실행하는 단일 프로세서 회로를 포함한다. 그룹 프로세서 회로라는 용어는 추가 프로세서 회로와 결합하여 하나 이상의 모듈로부터 일부 또는 모든 코드를 실행하는 프로세서 회로를 포함한다. 다중 프로세서 회로에 대한 언급은 개별 다이 상의 다중 프로세서 회로, 단일 다이 상의 다중 프로세서 회로, 단일 프로세서 회로의 다중 코어, 단일 프로세서 회로의 다중 스레드, 또는 이들의 조합을 포함한다. 공유 메모리 회로라는 용어는 여러 모듈의 일부 또는 모든 코드를 저장하는 단일 메모리 회로를 포함한다. 그룹 메모리 회로라는 용어는 추가 메모리와 결합하여 하나 이상의 모듈로부터의 일부 또는 모든 코드를 저장하는 메모리 회로를 포함한다.
본 명세서에서 사용되는 용어 프로세서는 데이터 프로세서/메모리를 갖는 서버의 기능 및 프로세서 회로를 포함한다. 용어 메모리 회로는 용어 컴퓨터 판독 가능 매체의 서브 세트이다. 본 명세서에서 사용되는 컴퓨터 판독 가능 매체라는 용어는 매체를 통해 전파되는 일시적인 전기 또는 전자기 신호(예를 들어, 반송파)를 포함하지 않으며; 따라서 컴퓨터 판독 가능 매체라는 용어는 유형 및 비-일시적인 것으로 간주될 수 있다. 비-일시적, 유형의 컴퓨터 판독 가능 매체의 비-제한적 예시는 비 휘발성 메모리 회로(플래시 메모리 회로, 소거 가능 프로그래밍 가능 읽기 전용 메모리 회로 또는 마스크 읽기 전용 메모리 회로와 같은), 휘발성 메모리 회로(정적 랜덤 액세스 메모리 회로 또는 동적 랜덤 액세스 메모리 회로와 같은), 자기 저장 매체(아날로그 또는 디지털 자기 테이프 또는 하드 디스크 드라이브와 같은) 및 광학 저장 매체(CD, DVD 또는 Blu-ray 디스크와 같은)이다.
본 출원에 설명된 장치 및 방법은 컴퓨터 프로그램으로 구현된 하나 이상의 특정 기능을 실행하도록 범용 컴퓨터를 구성함으로써 생성된 특수 목적 컴퓨터에 의해 부분적으로 또는 완전히 구현될 수 있다. 전술한 기능 블록, 흐름도 구성 요소 및 기타 요소는 숙련된 기술자 또는 프로그래머의 일상적인 작업에 의해 컴퓨터 프로그램으로 변환될 수 있는 소프트웨어 사양으로서 기능한다.
컴퓨터 프로그램은 적어도 하나의 비-일시적, 유형의 컴퓨터 판독 가능 매체에 저장된 프로세서 실행 가능 명령어를 포함한다. 컴퓨터 프로그램은 또한 저장된 데이터를 포함하거나 의존할 수 있다. 컴퓨터 프로그램은 특수 목적 컴퓨터의 하드웨어와 상호 작용하는 기본 입/출력 시스템(BIOS), 특수 목적 컴퓨터의 특정 장치와 상호 작용하는 장치 드라이버, 하나 이상의 운영 체제, 사용자 응용 프로그램, 백그라운드 서비스, 백그라운드 어플리케이션 등을 포함할 수 있다.
컴퓨터 프로그램은 다음을 포함할 수 있다: (i) HTML(하이퍼 텍스트 마크 업 언어), XML(확장 가능 마크 업 언어), 또는 JSON(JavaScript Object Notation) (ii) 어셈블리 코드, (iii) 생성 된 객체 코드와 같은 구문 분석 할 설명 텍스트 컴파일러에 의한 소스 코드, (iv) 인터프리터에 의해 실행되는 소스 코드, (v) JIT(just-in-time) 컴파일러에 의한 컴파일 및 실행을 위한 소스 코드 등. 예를 들어, 소스 코드는 C, C ++, C #, Objective C, Swift, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, Javascript®, HTML5 (Hypertext Markup Language 5th 개정판), Ada, ASP (Active Server Pages), PHP (PHP : Hypertext Preprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, MATLAB, SIMULINK, 및 Python®를 포함한 언어의 구문을 사용하여 작성할 수 있다.

Claims (26)

  1. 한 쌍의 입력된 POI(Point of Interest) 이미지들에서 POI 변화를 검출하는 방법에 있어서,
    제1 프로세서에 의해, 훈련 POI 이미지들의 트리플릿(triplet)들에 기초하여 3-스트림 샴 유형(three-stream Siamese type)의 컨볼루션 신경망(Convolutional Neural Network; CNN)을 훈련시키는 단계;
    제2 프로세서에 의해, 상기 한 쌍의 입력된 POI 이미지들의 각각의 이미지에 대해, 3-스트림 샴 유형의 CNN의 스트림을 사용하여 해당 이미지의 디스크립터를 계산하는 단계;
    상기 제2 프로세서에 의해, 유사성 스코어 함수를 사용하여 상기 한 쌍의 입력된 POI 이미지들의 상기 이미지들의 디스크립터들에 기초하여 유사성 스코어를 계산하는 단계; 및
    상기 제2 프로세서에 의해, 상기 유사성 스코어에 기초하여 POI 변화를 선택적으로 검출하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 POI 변화를 선택적으로 검출하는 단계는, 상기 제2 프로세서에 의해, 상기 유사성 스코어가 임계 값보다 큰 경우, 상기 POI 변화를 검출하는 단계를 포함하는
    방법.
  3. 제2항에 있어서,
    상기 POI 변화를 선택적으로 검출하는 단계는, 상기 제2 프로세서에 의해, 상기 유사성 스코어가 상기 임계 값보다 작은 경우, 상기 POI 변화를 검출하지 않는 단계를 포함하는
    방법.
  4. 제1항에 있어서,
    상기 한 쌍의 입력된 POI 이미지들의 이미지들은 두 개의 상이한 시간들에 동일한 위치에서 캡쳐되는
    방법.
  5. 제1항에 있어서,
    훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴 유형의 CNN을 훈련시키는 단계는:
    제3 프로세서에 의해, 훈련 POI 이미지들의 베이스(base)를 생성하는 단계;
    상기 제1 프로세서에 의해, 상기 훈련 POI 이미지들의 베이스를 사용하여 복수의 훈련 POI 이미지들의 트리플릿들을 생성하는 단계 -각각의 트리플릿은 제1 훈련 POI 이미지, 상기 제1 훈련 POI 이미지와 관련된 제2 훈련 POI 이미지, 및 상기 제1 및 제2 훈련 POI 이미지들과 관련 없는 제3 훈련 POI 이미지를 포함함-;
    상기 제1 프로세서에 의해, 훈련 POI 이미지들이 각각 상기 훈련 POI 이미지들과 연관된 레이블들에 기초하여 관련되는지 또는 관련 없는지 여부를 판단하는 단계; 및
    상기 제1 프로세서에 의해, 훈련 POI 이미지들의 상기 트리플릿들에 기초하여 3-스트림 샴 유형의 CNN을 훈련시키는 단계
    를 더 포함하는 방법.
  6. 제5항에 있어서,
    상기 레이블들 각각은 상기 연관된 훈련 POI 이미지의 6-자유도 포즈(6-degrees-of-freedom pose)를 포함하는
    방법.
  7. 제6항에 있어서,
    상기 훈련 POI 이미지들이 관련되는지 또는 관련 없는지 여부를 판단하는 단계는:
    상기 제1 프로세서에 의해, 두 개의 훈련 POI 이미지들이 제3 임계 값보다 큰 기하학적 중첩을 나타내는 경우, 두 개의 훈련 POI 이미지들이 관련되는 것으로 판단하는 단계; 및
    상기 제1 프로세서에 의해, 상기 기하학적 중첩이 제2 임계 값보다 작을 경우, 상기 두 개의 훈련 POI 이미지들이 관련 없는 것으로 판단하는 단계
    를 포함하는 방법.
  8. 제7항에 있어서,
    상기 제1 프로세서에 의해, 상기 두 개의 POI 이미지들 각각에서 각각 보이는 코리더 아웃라인들(corridor outlines)의 세트들 간의 교차 겹침 결합(intersection-over-union)에 기초하여 상기 두 개의 훈련 POI 이미지들 간의 기하학적 중첩을 계산하는 단계를 더 포함하는
    방법.
  9. 제5항에 있어서,
    적어도 하나의 트리플릿은 제1 훈련 이미지의 제1 사이니지 영역(signage region)을 다른 훈련 POI 이미지로부터의 제2 사이니지 영역으로 대체함으로써 생성되는 합성 POI 이미지를 포함하는
    방법.
  10. 제5항에 있어서,
    훈련 POI 이미지들의 베이스를 생성하는 단계는:
    상기 제3 프로세서에 의해, 각각 연관된 레이블들을 갖는 POI 이미지들의 초기 세트를 획득하는 단계;
    상기 제3 프로세서에 의해, 초기 세트의 서브세트 내의 각각의 POI 이미지에 대해, 해당(that) POI 이미지에서 사이니지 영역을 식별하는 단계 -상기 사이니지 영역은 상기 POI 이미지에 의해 표현된 POI 상에 위치되는 사이니지를 포함 함-;
    상기 제3 프로세서에 의해, 상기 제1 POI 이미지의 사이니지 영역을 상기 제2 POI 이미지의 사이니지 영역으로 대체함으로써 서브세트의 제1 POI 이미지에 대응하는 합성 POI 이미지를 생성하는 단계;
    상기 제3 프로세서에 의해, 상기 합성 POI 이미지에 상기 제2 POI 이미지의 레이블을 연관시키는 단계; 및
    훈련 POI 이미지들의 기초로서, 상기 POI 이미지들의 초기 세트 및 상기 합성 POI 이미지를 포함하는 POI 이미지들의 최종 세트를 저장하는 단계
    를 더 포함하는 방법.
  11. 제10항에 있어서,
    상기 제3 프로세서에 의해, 상기 제3 POI 이미지의 사이지니 영역을 제4 POI 이미지의 사이니지 영역으로 대체함으로써 상기 서브세트의 제3 POI 이미지에 대응하는 제2 합성 POI 이미지를 생성하는 단계; 및
    상기 제3 프로세서에 의해, 합성 POI 이미지에 상기 제4 POI 이미지의 레이블을 연관시키는 단계를 더 포함하고,
    상기 저장하는 단계는 상기 제2 합성 POI 이미지를 상기 최종 세트에 저장하는 단계를 더 포함하는
    방법.
  12. 제11항에 있어서,
    상기 최종 세트 내에서 POI 이미지들의 전체 수 중 적어도 5%는 다른 POI 이미지들로부터 사이니지 영역들로 생성되는 합성 POI 이미지들인
    방법.
  13. 제11항에 있어서,
    최종 세트 내에서 POI 이미지들의 전체 수 중 적어도 25%는 다른 POI 이미지들로부터 사이니지 영역들로 생성되는 합성 POI 이미지들인
    방법.
  14. 제10항에 있어서,
    크롭된(cropped) 사이니지 이미지들의 컬렉션을 획득하는 단계를 더 포함하고,
    상기 합성 POI 이미지를 생성하는 단계는 상기 제1 POI 이미지의 상기 사이니지 영역을 상기 크롭된 사이니지 이미지들의 컬렉션으로부터 상기 크롭된 사이니지 이미지들 중 선택된 하나의 크롭된 사이니지 이미지로 교체하는 단계를 포함하는
    방법.
  15. 제14항에 있어서,
    상기 크롭된 사이니지 이미지들의 컬렉션으로부터 상기 크롭된 사이니지 이미지들 중 상기 선택된 하나를 랜덤으로 선택하는 단계를 더 포함하는
    방법.
  16. 제15항에 있어서,
    상기 제1 POI 이미지의 상기 사이니지 영역의 크기 및 형상에 적응하기 위해 상기 크롭된 사이니지 이미지들 중 상기 선택된 하나의 아핀 워핑(affine warping)을 수행하는 단계를 더 포함하는
    방법.
  17. 제16항에 있어서,
    푸아송 블렌딩을 수행하는 단계를 더 포함하는
    방법.
  18. 제10항에 있어서,
    상기 사이니지는 (a) 상기 POI 이미지에 의해 표현되는 상기 POI 상에 위치된 명칭 및 (b) POI 이미지에 의해 표현되는 상기 POI 상에 위치된 로고 중 적어도 하나를 포함하는
    방법.
  19. 제18항에 있어서,
    상기 POI 이미지의 각각에서 상기 사이니지 영역을 식별하는 단계는 광학 문자 인식 및 로고 검출 중 적어도 하나를 사용하여 상기 POI 이미지들의 각각에서 상기 사이니지 영역을 식별하는 단계를 포함하는
    방법.
  20. 제10항에 있어서,
    상기 POI 이미지들 연관된 상기 레이블들은 각각 상기 POI 이미지들 중 하나에 의해 표현되는 상기 POI를 식별하는 레이블을 포함하는
    방법.
  21. 제10항에 있어서,
    상기 POI 이미지들과 연관된 상기 레이블들은 각각 상기 POI 이미지들 중 하나의 위치 및 방향 중 적어도 하나를 정의하는 레이블을 포함하는
    방법.
  22. 제10항에 있어서,
    상기 POI 이미지들과 연관된 상기 레이블들은 각각 상기 POI 이미지들 중 하나의 6-자유도 포즈를 정의하는 레이블을 포함하는
    방법.
  23. 제10항에 있어서,
    이미지 획득 장치를 사용하여 POI들의 지리적-위치화된(geo-localized) 이미지들을 획득함으로써 POI 이미지들의 상기 초기 세트를 생성하는 단계를 더 포함하는
    방법.
  24. 제10항에 있어서,
    상기 서브세트는 상기 초기 세트의 모두를 포함하는
    방법.
  25. 한 쌍의 입력된 POI 이미지들에서 POI(Point of Interest) 변화를 검출하기 위해 컨볼루션 신경망(Convolutional Neural Network; CNN)을 훈련시키기 위한 훈련 이미지들의 베이스를 생성하는 방법에 있어서,
    프로세서에 의해, 연관된 레이블들을 갖는 POI 이미지들의 초기 세트를 각각 획득하는 단계;
    상기 프로세서에 의해, 상기 초기 세트의 서브세트 내의 각각의 POI 이미지들에 대해, 해당(that) POI 이미지에서 사이니지 영역을 식별하는 단계 -상기 사이니지 영역은 POI 이미지에 의해 표현된 POI 상에 위치되는 사이니지를 포함 함-;
    상기 프로세서에 의해, 제1 POI 이미지의 사이니지 영역을 제2 POI 이미지의 사이니지 영역으로 대체함으로써 상기 서브세트의 제1 POI 이미지에 대응하는 합성 POI 이미지를 생성하는 단계;
    상기 프로세서에 의해, 상기 합성 POI 이미지에 상기 제2 POI 이미지의 상기 레이블을 연관시키는 단계; 및
    상기 훈련 이미지들의 베이스로서, 초기 세트의 POI 이미지들 및 합성 POI 이미지를 포함하는 POI 이미지들의 최종 세트를 저장하는 단계
    를 포함하는 방법.
  26. 한 쌍의 입력된 POI 이미지들에서 POI(Point of Interest) 변화를 검출하기 위한 컨볼루션 신경망(Convolutional Neural Network; CNN)을 훈련시키는 방법에 있어서,
    제1 프로세서에 의해, 훈련 POI 이미지들의 베이스를 생성하는 단계;
    제2 프로세서에 의해, 복수의 훈련 POI 이미지들의 트리플릿들을 생성하는 단계 -각각의 트리플릿은 제1 POI 이미지, 상기 제1 POI 이미지와 관련된 제2 POI 이미지, 및 상기 제1 및 제2 POI 이미지들과 관련 없는 제3 POI 이미지를 포함 함-;
    상기 제2 프로세서에 의해, 상기 POI 이미지들이 각각 POI 이미지들과 연관된 레이블들에 기초하여 관련되는지 또는 관련 없는지 여부를 판단하는 단계; 및
    상기 제2 프로세서에 의해, 훈련 POI 이미지들의 트리플릿들에 기초하여 3-스트림 샴 유형의 CNN을 훈련시키는 단계
    를 포함하는 방법.
KR1020190121389A 2018-10-09 2019-10-01 컨볼루션 신경망을 이용하여 poi 변화를 검출하기 위한 시스템 및 방법 KR102261061B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP18306335.3A EP3637303B1 (en) 2018-10-09 2018-10-09 Methods for generating a base of training images, for training a cnn and for detecting a poi change in a pair of inputted poi images using said cnn
EP18306335.3 2018-10-09
US16/575,687 US11055569B2 (en) 2018-10-09 2019-09-19 Systems and methods for detecting a point of interest change using a convolutional neural network
US16/575,687 2019-09-19

Publications (2)

Publication Number Publication Date
KR20200040665A true KR20200040665A (ko) 2020-04-20
KR102261061B1 KR102261061B1 (ko) 2021-06-04

Family

ID=65138788

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190121389A KR102261061B1 (ko) 2018-10-09 2019-10-01 컨볼루션 신경망을 이용하여 poi 변화를 검출하기 위한 시스템 및 방법

Country Status (4)

Country Link
US (1) US11055569B2 (ko)
EP (1) EP3637303B1 (ko)
JP (1) JP6821762B2 (ko)
KR (1) KR102261061B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220019885A (ko) * 2020-08-10 2022-02-18 (주)아이웨이 Gis 및 cnn 기반 공공데이터를 이용한 변화탐지 서비스 제공 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101595797B1 (ko) * 2014-05-12 2016-02-22 네이버 주식회사 지도 서비스를 제공하기 위한 방법과 시스템, 그리고 기록 매체 및 파일 배포 시스템
US11080884B2 (en) * 2019-05-15 2021-08-03 Matterport, Inc. Point tracking using a trained network
CN110647886A (zh) * 2019-09-19 2020-01-03 北京百度网讯科技有限公司 兴趣点标注方法、装置、计算机设备和存储介质
CN111898440B (zh) * 2020-06-30 2023-12-01 成都思晗科技股份有限公司 一种基于三维卷积神经网络的山火检测方法
CN111832579B (zh) * 2020-07-20 2024-01-16 北京百度网讯科技有限公司 地图兴趣点数据处理方法、装置、电子设备以及可读介质
CN111859002A (zh) * 2020-07-20 2020-10-30 北京百度网讯科技有限公司 兴趣点名称生成方法及装置、电子设备和介质
CN112417322B (zh) * 2020-12-10 2024-03-22 长春理工大学 一种面向兴趣点名称文本的类型判别方法及系统
EP4016377A1 (en) * 2020-12-21 2022-06-22 Axis AB A device and a method for associating object detections between frames using a neural network
CN112288048B (zh) * 2020-12-28 2021-03-26 湖南师范大学 一种基于多源数据驱动的城市人群出行识别方法
CN112861026B (zh) * 2021-02-07 2022-02-25 贝壳找房(北京)科技有限公司 用户偏好挖掘方法、装置、介质和电子设备
CN113240023B (zh) * 2021-05-19 2022-09-09 中国民航大学 基于变化图像分类和特征差值先验的变化检测方法及装置
CN113362373B (zh) * 2021-06-01 2023-12-15 北京首都国际机场股份有限公司 基于双孪生网络的复杂机坪区域内飞机跟踪方法
CN113705588B (zh) * 2021-10-28 2022-01-25 南昌工程学院 基于卷积自注意力模块的孪生网络目标跟踪方法与系统
WO2023132840A1 (en) * 2022-01-10 2023-07-13 Zeku, Inc. Picture frame processing using machine learning
CN115270007B (zh) * 2022-08-17 2023-09-22 烟台大学 一种基于混合图神经网络的poi推荐方法及系统
CN115601318B (zh) * 2022-10-10 2023-05-02 广东昱升个人护理用品股份有限公司 快吸收低反渗纸尿裤智能生产方法及其系统
KR20240061265A (ko) * 2022-10-31 2024-05-08 네이버랩스 주식회사 Poi 변화 자동 탐지를 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017079529A1 (en) * 2015-11-04 2017-05-11 Nec Laboratories America, Inc. Universal correspondence network
US20170357896A1 (en) * 2016-06-09 2017-12-14 Sentient Technologies (Barbados) Limited Content embedding using deep metric learning algorithms
US10007863B1 (en) * 2015-06-05 2018-06-26 Gracenote, Inc. Logo recognition in images and videos
US20190035431A1 (en) * 2017-07-28 2019-01-31 Adobe Systems Incorporated Apparatus, systems, and methods for integrating digital media content
WO2019029272A1 (en) * 2017-08-08 2019-02-14 Zhejiang Dahua Technology Co., Ltd. SYSTEMS AND METHODS FOR SEARCHING IMAGES

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7336803B2 (en) 2002-10-17 2008-02-26 Siemens Corporate Research, Inc. Method for scene modeling and change detection
DE102005036998B4 (de) 2005-08-05 2014-11-20 Siemens Aktiengesellschaft Vorrichtung zur automatischen Detektion von Auffälligkeiten in medizinischen Bilddaten
AU2015376657B2 (en) 2015-06-12 2017-03-30 Intergraph Corporation Image change detection
US10037477B2 (en) * 2015-08-31 2018-07-31 Massachusetts Institute Of Technology Combined intensity and coherent change detection in images
US10181185B2 (en) * 2016-01-11 2019-01-15 Kla-Tencor Corp. Image based specimen process control
EP3526781A4 (en) * 2016-10-14 2020-07-01 ID Metrics Group Incorporated MANIPULATION DETECTION FOR IDENTIFICATION DOCUMENTS
JP6216024B1 (ja) * 2016-11-15 2017-10-18 株式会社Preferred Networks 学習済モデル生成方法及び信号データ判別装置
JP6804965B2 (ja) * 2016-12-15 2020-12-23 株式会社日立製作所 画像処理装置、画像処理システム、および画像処理方法
US10445928B2 (en) * 2017-02-11 2019-10-15 Vayavision Ltd. Method and system for generating multidimensional maps of a scene using a plurality of sensors of various types
US10678846B2 (en) * 2017-03-10 2020-06-09 Xerox Corporation Instance-level image retrieval with a region proposal network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10007863B1 (en) * 2015-06-05 2018-06-26 Gracenote, Inc. Logo recognition in images and videos
WO2017079529A1 (en) * 2015-11-04 2017-05-11 Nec Laboratories America, Inc. Universal correspondence network
US20170357896A1 (en) * 2016-06-09 2017-12-14 Sentient Technologies (Barbados) Limited Content embedding using deep metric learning algorithms
US20190035431A1 (en) * 2017-07-28 2019-01-31 Adobe Systems Incorporated Apparatus, systems, and methods for integrating digital media content
WO2019029272A1 (en) * 2017-08-08 2019-02-14 Zhejiang Dahua Technology Co., Ltd. SYSTEMS AND METHODS FOR SEARCHING IMAGES

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
비특허문헌 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220019885A (ko) * 2020-08-10 2022-02-18 (주)아이웨이 Gis 및 cnn 기반 공공데이터를 이용한 변화탐지 서비스 제공 방법

Also Published As

Publication number Publication date
EP3637303B1 (en) 2024-02-14
US11055569B2 (en) 2021-07-06
JP6821762B2 (ja) 2021-01-27
EP3637303A1 (en) 2020-04-15
JP2020061146A (ja) 2020-04-16
KR102261061B1 (ko) 2021-06-04
US20200110966A1 (en) 2020-04-09

Similar Documents

Publication Publication Date Title
KR102261061B1 (ko) 컨볼루션 신경망을 이용하여 poi 변화를 검출하기 위한 시스템 및 방법
US20200364554A1 (en) Systems and methods for deep localization and segmentation with a 3d semantic map
US11003956B2 (en) System and method for training a neural network for visual localization based upon learning objects-of-interest dense match regression
US10949999B2 (en) Location determination using street view images
Anagnostopoulos et al. Gaze-Informed location-based services
EP3274964B1 (en) Automatic connection of images using visual features
KR101645959B1 (ko) 복수의 오버헤드 카메라와 사이트 맵에 기반한 객체 추적 장치 및 그 방법
CN111881804B (zh) 基于联合训练的姿态估计模型训练方法、系统、介质及终端
CN110516707B (zh) 一种图像标注方法及其装置、存储介质
Revaud et al. Did it change? learning to detect point-of-interest changes for proactive map updates
Perez-Yus et al. Peripheral expansion of depth information via layout estimation with fisheye camera
Park et al. Estimating the camera direction of a geotagged image using reference images
KR20200013156A (ko) 간판 검출 성능 향상을 위한 방법 및 시스템
CN111310595B (zh) 用于生成信息的方法和装置
CN103903269B (zh) 球机监控视频的结构化描述方法和系统
Bulbul et al. Populating virtual cities using social media
Hu et al. Computer vision for sight: Computer vision techniques to assist visually impaired people to navigate in an indoor environment
CN115393423A (zh) 目标检测方法和装置
CN112541403B (zh) 一种利用红外摄像头的室内人员跌倒检测方法
CN111833253B (zh) 兴趣点空间拓扑构建方法和装置、计算机系统和介质
Molina et al. Visual noun navigation framework for the blind
Ahmad et al. Multi-view 3d objects localization from street-level scenes
Luttrell IV Data Collection and Machine Learning Methods for Automated Pedestrian Facility Detection and Mensuration
Xu et al. Robust object detection with real-time fusion of multiview foreground silhouettes
JP2024072568A (ja) 情報処理プログラム、情報処理装置、情報処理方法及びモデルの生成方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant