KR102384177B1 - 전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템 - Google Patents

전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템 Download PDF

Info

Publication number
KR102384177B1
KR102384177B1 KR1020190174554A KR20190174554A KR102384177B1 KR 102384177 B1 KR102384177 B1 KR 102384177B1 KR 1020190174554 A KR1020190174554 A KR 1020190174554A KR 20190174554 A KR20190174554 A KR 20190174554A KR 102384177 B1 KR102384177 B1 KR 102384177B1
Authority
KR
South Korea
Prior art keywords
image
images
mapping
features
feature
Prior art date
Application number
KR1020190174554A
Other languages
English (en)
Other versions
KR20200145643A (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 US17/429,616 priority Critical patent/US12002260B2/en
Priority to JP2021540146A priority patent/JP7393809B2/ja
Priority to PCT/KR2020/008072 priority patent/WO2020256517A2/ko
Publication of KR20200145643A publication Critical patent/KR20200145643A/ko
Application granted granted Critical
Publication of KR102384177B1 publication Critical patent/KR102384177B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/32Determination of transform parameters for the alignment of images, i.e. image registration using correlation-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/37Determination of transform parameters for the alignment of images, i.e. image registration using transform domain methods
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)

Abstract

자동 위상 매핑 처리방법 및 시스템이 개시된다.
상기 자동 위상 매핑 처리방법은 자동 위상 매핑 처리시스템이 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하는 단계, 상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하는 단계, 상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하는 단계를 포함한다.

Description

전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템{Auto topology mapping method based on omni-directional image and system thereof}
본 발명은 서로 다른 위치에서 촬영된 복수의 이미지들간에 효과적인 위치관계의 매핑 또는 연결(또는 정합)할 수 있는 방법 및 그 시스템에 관한 것이다.
서로 다른 이미지들 간의 위상 매핑을 위한 기술이 널리 알려져 있다. 위상 매핑은 서로 다른 이미지들간의 상대적 위치관계를 파악하거나 또는 이미지들을 연결(또는 정합)하기 위한 기술일 수 있다.
일반적으로 서로 다른 이미지를 연결하기 위해서는 서로 공통된 공간을 포함하고 있는 두 이미지들 각각으로부터 피쳐 포인트를 검출하고, 검출된 피쳐 포인트들이 가장 에러가 적을 수 있도록 겹쳐지게 하는 변환함수(변환행렬, transformation matrix)를 통해 이미지를 변환하여 연결하는 방식이 이용된다.
또한 서로 다른 이미지들을 연결(정합)하지 않더라도 두 이미지간의 위치관계를 파악하기 위해 두 이미지에 각각 존재하는 서로 매칭되는 포인트들(예컨대, 공간에서 동일한 포인트에 해당하는 서로 다른 두 이미지에서의 포인트들)을 이용하는 기술적 사상들(예컨대, 에피폴라 지오메트리(epipolar geometry) 등)이 공지된 바 있다.
하지만 복수의 이미지들이 존재하고 이러한 이미지들 중에서 어떤 이미지들이 서로 연결되어야 할지 또는 어떤 이미지들이 서로 매핑될 수 있는 이미지들인지(예컨대, 동일한 공간을 포함하고 있는 이미지들)를 알 수 없는 경우가 존재할 수 있다. 즉 이미지들 각각의 위치 및/또는 방향을 알지 못하는 경우가 그러한 경우일 수 있다.
예컨대, 실내 공간의 서로 다른 복수의 위치들에서 각각 이미지((예컨대, 360도 이미지)을 촬영한 경우, 각각의 이미지들의 위치관계를 특정함으로써 실내 공간의 내비게이션 등과 같은 다양한 서비스가 원활히 이루어질 수 있다. 하지만 각각의 이미지가 촬영된 위치가 알려져 있지 않는 상태에서는 어떠한 이미지가 서로 매핑될 수 있는 이미지들인지 알 수 없다.
이러한 경우 이미지들 각각의 조합별로 서로 매핑될 수 있는지 여부를 판단하여야 한다. 하지만 이러한 태스크는 매우 많은 자원과 시간이 소요될 수 있다. 예컨대, 5개의 서로 다른 이미지가 존재하는 경우 서로 매핑될 수 있는 이미지 페어를 찾기 위해서는 제1이미지를 제2이미지 내지 제5이미지와 각각 페어로 설정하여 서로 매핑될 수 있는 이미지인지를 판단할 수 있다. 예컨대, 제1이미지와 공통된 피쳐 포인트들이 가장 많이 발견되는 이미지가 제1이미지와 매핑되는 이미지가 될 수 있다. 왜냐하면 서로 매핑되는 이미지는 공통된 공간을 촬영한 영역이 존재하는 경우이고, 이렇게 공통된 공간이 촬영된 영역에서는 서로 동일한 피쳐 포인트가 발견될 수 있기 때문이다.
이러한 태스크를 모든 이미지 페어별로 수행하여야만이 이미지들 간의 위상관계가 결정될 수 있고, 그 후 서로 인접한 이미지들간에 매핑이 수행될 수 있다. 본 명세서에서 매핑이 수행된다고 함은 두 이미지들이 연결(정합)될 수 있는 경우에는 두 이미지들을 정합하는 경우일 수도 있지만, 서로 다른 두 위치에서 촬영된 이미지들과 같이 연결(정합)될 필요가 없는 경우에는 두 이미지들간의 상대적인 위치관계를 파악하는 것을 포함하는 의미로 정의할 수 있다.
이처럼 이미지들의 개수가 많아질수록 매핑될 수 있는 이미지들의 파악 및 파악된 이미지들 간의 위치관계를 특정하는데 소요되는 비용은 기하급수적으로 증가하는 문제점이 있다.
따라서 본 발명이 이루고자 하는 기술적인 과제는 복수의 이미지들간의 매핑을를 빠르고 효과적으로 판단할 수 있는 방법 및 시스템을 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 자동 위상 매핑 처리방법은 자동 위상 매핑 처리시스템이 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하는 단계, 상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하는 단계, 상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하는 단계를 포함한다.
상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하는 단계는, 상기 이미지들 각각으로부터 추출된 피쳐들에 상응하는 벡터들을 DB로 구축하는 단계, 상기 이미지들 중 소정의 제1이미지로부터 추출된 제1피쳐들에 상응하는 제1벡터들 중 적어도 일부인 벡터 세트를 상기 구축된 DB에 벡터 서치하는 단계, 상기 벡터 서치 결과에 기초하여 추출된 제2이미지를 상기 제1이미지의 매핑 이미지로 판단하는 단계를 포함할 수 있다.
상기 자동 위상 매핑 처리방법은 상기 제1이미지와 상기 제1이미지의 매핑 이미지로 판단된 상기 제2이미지의 매핑을 수행하는 단계를 더 포함할 수 있다.
상기 제1이미지와 상기 제1이미지의 매핑 이미지로 판단된 상기 제2이미지의 매핑을 수행하는 단계는, 상기 제1이미지로부터 추출된 제1피쳐들에 각각에 대응되는 상기 제1이미지상의 제1피쳐대응위치들 및 상기 제2이미지로부터 추출된 제2피쳐들에 각각에 대응되는 상기 제2이미지상의 제2피쳐대응위치들을 판단하는 단계, 판단된 제1피쳐대응위치들 및 상기 제2피쳐대응위치들에 기초하여 상기 제1이미지 및 상기 제2이미지의 상대적 위치관계를 판단하는 단계를 포함할 수 있다.
상기 뉴럴 네트워크는 소정의 이미지를 겹치는 영역이 존재하도록 분할한 후, 분할한 이미지들 각각의 겹치는 공통영역에서 각각 추출되는 서로 대응되는 포인트들이 최적으로 매칭될 수 있는 변환관계를 출력하도록 학습된 뉴럴 네트워크일 수 있다.
상기 이미지들 각각은 실내의 서로 다른 위치에서 촬영된 360도 영상인 것을 특징으로 할 수 있다.
다른 실시 예에 따른 자동 위상 매핑 처리방법은 자동 위상 매핑 처리시스템이 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하는 단계, 상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 피쳐를 추출하는 단계, 상기 이미지들 각각으로부터 추출된 피쳐들에 상응하는 벡터들을 DB로 구축하는 단계, 상기 이미지들 중 소정의 제1이미지로부터 추출된 제1피쳐들에 상응하는 제1벡터들 중 적어도 일부인 벡터 세트를 상기 구축된 DB에 벡터 서치하는 단계, 상기 벡터 서치 결과에 기초하여 추출된 제2이미지를 상기 제1이미지에 상응하는 매핑 이미지로 판단하는 단계를 포함할 수 있다.
상기의 방법은 데이터 처리장치에 설치되며 기록매체에 저장된 컴퓨터프로그램에 의해 구현될 수 있다.
일 실시 예에 따른 자동 위상 매핑 처리시스템은 프로세서, 상기 프로세서에 의해 구현되는 프로그램이 저장된 메모리를 포함하며, 상기 프로그램은 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하고, 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하며, 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단한다.
상기 프로세서는 상기 이미지들 각각으로부터 추출된 피쳐들에 상응하는 벡터들을 DB로 구축하고, 상기 이미지들 중 소정의 제1이미지로부터 추출된 제1피쳐들에 상응하는 제1벡터들 중 적어도 일부인 벡터 세트를 상기 구축된 DB에 벡터 서치하며, 상기 벡터 서치 결과에 기초하여 추출된 제2이미지를 상기 제1이미지의 매핑 이미지로 판단할 수 있다.
상기 프로세서는 상기 제1이미지로부터 추출된 제1피쳐들에 각각에 대응되는 상기 제1이미지상의 제1피쳐대응위치들 및 상기 제2이미지로부터 추출된 제2피쳐들에 각각에 대응되는 상기 제2이미지상의 제2피쳐대응위치들을 판단하고, 판단된 제1피쳐대응위치들 및 상기 제2피쳐대응위치들에 기초하여 상기 제1이미지 및 상기 제2이미지의 상대적 위치관계를 판단할 수 있다.
다른 일 실시 예에 따른 자동 위상 매핑 처리시스템은 프로세서, 상기 프로세서에 의해 구현되는 프로그램이 저장된 메모리를 포함하며, 상기 프로그램은 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하고, 상기 이미지들 각각으로부터 피쳐를 추출하며, 상기 이미지들 각각으로부터 추출된 피쳐들에 상응하는 벡터들을 DB로 구축하고, 상기 이미지들 중 소정의 제1이미지로부터 추출된 제1피쳐들에 상응하는 제1벡터들 중 적어도 일부인 벡터 세트를 상기 구축된 DB에 벡터 서치하고, 상기 벡터 서치 결과에 기초하여 추출된 제2이미지를 상기 제1이미지에 상응하는 매핑 이미지로 판단할 수 있다.
본 발명에 의하면 뉴럴 네트워크를 이용한 이미지 피쳐들을 이용하여 빠른 시간 내에 피쳐를 추출할 수 있고, 이를 활용하여 벡터 서치 방식으로 복수의 이미지들이 존재하는 경우에 서로 매핑될 수 있는 이미지들의 파악을 효과적으로 수행할 수 있는 효과가 있다.
또한 매핑될 수 있는 이미지들을 파악한 후에도 뉴럴 네트워크에서 이용하여 되는 피쳐를 이용함으로써 효과적인 매핑이 수행될 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법을 구현하기 위한 개략적인 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시 예에 따른 자동 위상 매핑 처리시스템의 개략적인 구성을 나타내는 도면이다.
도 3은 본 발명의 실시 예에 따른 자동 위상 매핑 처리시스템의 논리적 구성을 개략적으로 설명하기 위한 도면이다.
도 4는 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법을 위해 뉴럴 네트워크의 피쳐를 이용하는 개념을 설명하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따른 뉴럴 네트워크 피쳐를 이용할 경우의 장점을 설명하기 위한 도면이다.
도 6은 본 발명의 실시 예에 따른 뉴럴 네트워크 피쳐에 대응되는 피쳐위치를 설명하기 위한 도면이다.
도 7은 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법에서 이미지들 간의 매핑 이미지를 탐색하는 방법을 설명하기 위한 플로우 차트이다.
도 8은 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법에서 이미지들을 매핑하기 위한 방법을 설명하기 위한 플로우 차트이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법을 구현하기 위한 개략적인 구성을 설명하기 위한 도면이다. 또한, 도 2는 본 발명의 실시 예에 따른 자동 위상 매핑 처리시스템의 개략적인 구성을 나타내는 도면이다.
본 발명의 기술적 사상에 따른 자동 위상 매핑 처리방법을 구현하기 위해서는 자동 위상 매핑 처리시스템(100)이 구비된다.
상기 자동 위상 매핑 처리시스템(100)은 본 발명의 기술적 사상을 구현하기 위한 프로그램이 저장되는 메모리(2), 및 상기 메모리(2)에 저장된 프로그램을 실행하기 위한 프로세서(1)가 구비될 수 있다.
상기 프로세서(1)는 상기 자동 위상 매핑 처리시스템(100)의 구현 예에 따라, CPU, 모바일 프로세서 등 다양한 명칭으로 명명될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
상기 메모리(2)는 상기 프로그램이 저장되며, 상기 프로그램을 구동시키기 위해 상기 프로세서가 접근할 수 있는 어떠한 형태의 저장장치로 구현되어도 무방하다. 또한 하드웨어적 구현 예에 따라 상기 메모리(2)는 어느 하나의 저장장치가 아니라 복수의 저장장치로 구현될 수도 있다. 또한 상기 메모리(2)는 주기억장치 뿐만 아니라, 임시기억장치를 포함할 수도 있다. 또한 휘발성 메모리 또는 비휘발성 메모리로 구현될 수도 있으며, 상기 프로그램이 저장되고 상기 프로세서에 의해 구동될 수 있도록 구현되는 모든 형태의 정보저장 수단을 포함하는 의미로 정의될 수 있다.
상기 자동 위상 매핑 처리시스템(100)은 실시 예에 따라 웹 서버, 컴퓨터, 모바일 폰, 태블릿, TV, 셋탑박스 등 다양한 방식으로 구현될 수 있으며, 본 명세서에서 정의되는 기능을 수행할 수 있는 어떠한 형태의 데이터 프로세싱 장치도 포함하는 의미로 정의될 수 있다.
또한 상기 자동 위상 매핑 처리시스템(100)의 실시 예에 따라 다양한 주변장치들(3)이 더 구비될 수 있다. 예컨대, 키보드, 모니터, 그래픽 카드, 통신장치 등이 주변장치로써 상기 자동 위상 매핑 처리시스템(100)에 더 포함될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
본 발명의 기술적 사상에 따른 자동 위상 매핑 처리시스템(100)은 복수의 이미지들 중 서로 매핑될 수 있는 이미지들 즉 매핑 이미지들을 파악할 수 있다. 또한 실시 예에 따라서는 상기 자동 위상 매핑 처리시스템(100)은 파악한 매핑 이미지들간의 매핑을 수행할 수도 있다.
매핑 이미지들은 서로 가장 근접한 위상관계를 가지는 이미지들을 의미할 수 있다. 가장 근접한 위상관계는 거리가 가까운 것뿐 아니라 공간적으로도 직접 서로 이동이 가능하여야 하는 경우일 수 있고, 이러한 예는 공통된 공간이 가장 많이 포함되어 있는 이미지들일 수 있다.
또한 매핑을 수행한다고 함은, 전술한 바와 같이 두 이미지들간에 정합을 의미할 수도 있지만, 본 발명에서는 두 이미지들의 위상 즉, 상대적인 위치관계를 파악하는 경우를 위주로 설명하도록 한다.
예컨대, 도 1에 도시된 바와 같이 상기 자동 위상 매핑 처리시스템(100)은 복수 개(예컨대, 5개)의 이미지들을 입력받을 수 있다. 그러면 상기 자동 위상 매핑 처리시스템(100)은 복수 개의 이미지들 중 서로 매핑될 수 있는 이미지 즉 매핑 이미지들이 어떤 것인지를 파악하고, 파악한 매핑 이미지들의 매핑을 수행할 수 있다.
예컨대 본 발명의 실시 예에서 이미지들은 서로 다른 위치에서 촬영된 전방위 이미지(360 이미지)일 수 있다. 그리고 매핑 이미지들은 서로 공통된 공간을 가장 많이 공유하고 있는 이미지들 페어일 수 있다.
예컨대, 도 1b에 도시된 바와 같이 위치 a, b, c, d, e 에서 촬영된 이미지들 각각이 이미지 1, 이미지 2, 이미지 3, 이미지 4, 및 이미지 5일 수 있다.
이러한 경우 이미지 1과 이미지 2 및 이미지 3은 공통된 촬영된 영상 내에 공통된 공간이 상당히 많이 포함되어 있지만, 상대적으로 이미지 1과 이미지 2에 더 많은 공통된 공간이 포함되어 있을 수 있다. 따라서 이미지 1의 매핑 이미지는 이미지 2일 수 있다.
그러면 이미지 2에 대해서 매핑 이미지를 탐색해야하고 이때 이미 매핑 이미지가 확정된 이미지 1은 제외될 수 있다. 그러면 이미지 2의 매핑 이미지는 이미지 3이 될 수 있다.
이와 같은 방식을 이미지 3의 매핑 이미지는 이미지 4가 될 수 있고, 이미지 4의 매핑 이미지는 이미지 5가 될 수 있다.
그러면 자동 위상 매핑 처리시스템(100)은 이미지 1을 기준으로 매핑 이미지인 이미지 2에 대한 매핑을 수행할 수 있다. 즉, 이미지 2의 이미지 1에 대한 위상 이미지 2의 이미지 1에 대한 상대적 위치를 파악할 수 있다. 그리고 이미지 3의 이미지 2에 대한 위상, 이미지 4의 이미지 3에 대한 위상, 및 이미지 5의 이미지 4에 대한 위상을 순차적으로 파악함으로써 전체 이미지들간의 위상관계가 특정될 수 있다.
결국 종래는 전방위 이미지들이 복수 존재하고 각각의 전방위 이미지들의 정확한 위치를 알 수 없는 경우에는, 복수의 이미지들의 위치관계를 파악하기 위해서는 상당한 시간과 자원이 필요할 수 있다.
예컨대, 종래의 방식에 의하면 모든 이미지들별로 소정의 피쳐 포인트를 추출하고, 추출된 피쳐 포인트들을 이용하여 모든 이미지 쌍(페어)별로 공통된 피쳐 포인트가 얼마나 존재하는지를 파악하여야 한다. 그리고 공통된 피쳐 포인트가 가장 많은 이미지 쌍이 서로 매핑 이미지로 파악될 수 있고, 공통된 피쳐 포인트들의 위치에 따라 매핑 즉, 상대적 위치관계가 결정될 수 있다. 만약 정합이 필요한 경우에는 공통된 피쳐 포인트들을 최소한의 에러로 겹쳐지게 하기 위한 변환행렬이 결정되고 이러한 변환행렬을 통한 어느 하나의 이미지의 변환을 통해 두 이미지는 연결(정합)될 수 있다.
하지만 이러한 종래의 방식에서 사용되는 피쳐 포인트는 피쳐 포인트의 추출에도 상당한 시간과 연산량이 소요된다. 또한 매핑 이미지를 파악하기 위해 위해 모든 이미지 페어별로 피쳐 포인트를 비교하는 연산을 수행하여야 하는데 이미지들의 피쳐 포인트의 개수가 많을수록 이러한 연산은 상당한 시간이 걸리는 문제점이 있다.
하지만 전술한 바와 같이 본 발명의 기술적 사상에 의하면 빠르고 정확하게 자동으로 이러한 복수의 이미지들 중에서 매핑 이미지를 탐색하고 탐색된 매핑 이미지들에 대한 매핑을 수행할 수 있다.
이러한 문제점을 해결하기 위해 본 발명의 기술적 사상에 따른 자동 위상 매핑 처리시스템(100)은 뉴럴 네트워크 피쳐를 이용할 수 있다.
본 명세서에서 정의되는 뉴럴 네트워크 피쳐는 소정의 목적을 달성하기 위해 학습된 뉴럴 네트워크의 소정의 레이어의 피쳐 맵(feature map)에서 선택된 전부 또는 일부의 피쳐들을 의미할 수 있다.
이러한 피쳐들은 특정 목적을 달성하기 위해 학습된 뉴럴 네트워크(예컨대, 컨벌루셔널 뉴럴 네트워크)에서 이용되며 상기 특정 목적을 달성하도록 뉴럴 네트워크가 학습되면 학습된 뉴럴 네트워크에 의해 도출되는 정보일 수 있다.
예컨대, 도 4에 도시된 바와 같은 뉴럴 네트워크(20)가 존재할 수 있고, 상기 뉴럴 네트워크는 컨벌루션 뉴럴 네트워크(CNN)일 수 있다.
이러한 경우 복수의 레이어들(21 ,22, 23, 24)이 상기 뉴럴 네트워크(20)에 포함될 수 있고, 입력 레이어(21)와 출력 레이어(24) 및 복수의 히든 레이어들(22, 23)이 존재할 수 있다. 상기 출력 레이어(24)는 이전 레이어와 완전 연결(fully connected)된 레이어일 수 있고, 본 발명의 기술적 사상에 따른 자동 위상 매핑 처리시스템(100)은 상기 출력 레이어(24) 또는 풀리 커넥티드 레이어 이전의 임의의 피쳐 맵이 포함되는 레이어(예컨대, 23)에서 상기 뉴럴 네트워크 피쳐(f1, f2, f3)를 선택할 수 있다.
상기 자동 위상 매핑 처리시스템(100)이 이용하는 뉴럴 네트워크 피쳐(f1, f2, f3)는 해당 레이어의 피쳐 맵에 포함된 모든 피쳐일 수도 있고, 이중에서 일부 선택된 피쳐일 수도 있다.
상기 자동 위상 매핑 처리시스템(100)은 이러한 피쳐를 종래의 핸드 크래프트 피쳐 포인트 예컨대, SIFT(Scale-Invariant Feature Transform)], SURF (Speeded Up Robust Features), 또는 ORB(Oriented FAST and Rotated BRIEF) 대신 이용하여 매핑 이미지를 파악하거나 매핑 이미지들간의 매핑을 수행하는데 이용할 수 있다. 즉, 종래의 핸드 크래프트 피쳐들 대신에 컨벌루셔널 뉴럴 네트워크에서 이용되는 피쳐들이 이용될 수 있다.
이는 이미지의 피쳐는 스케일(scale) 또는 오리엔테이션(orientation)에 무관하게 동일한 특성을 가져야 하는 것이 바람직한데, 컨벌루셔널 뉴럴 네트워크에서 출력 레이더(23) 이전의 레이어는 복수의 비선형적 컨벌루션 함수 및/또는 풀링 함수 등을 통해 이러한 특징을 가지게 된다. 더욱이 종래의 핸드 크래프트 피쳐들은 이미지에서의 모서리 등과 같이 사람이 정의한 특징적인 위치에서만 추출되며 대개는 에지가 존재하는 곳(예컨대, 에지가 꺾이는 위치 등)에서만 추출되는 특징이 있다.
하지만 뉴럴 네트워크 피쳐는 이러한 위치가 아니라 이미지의 플랫(flat)한 영역에서도 발견될 수 있도록 뉴럴 네트워크(20)가 학습될 수 있는 장점이 있다. 또한, 핸드 크래프트 피쳐는 이미지의 왜곡이나 이미지 품질에 따라 피쳐 포인트가 검출되어야 함에도 불구하고 검출되지 않는 경우가 종종 발생하는데 비해 뉴럴 네트워크 피쳐는 이러한 이미지 왜곡에 훨씬 강인한 특성이 있어서 피쳐 추출에 있어서도 정확도의 향상이 존재할 수 있다.
상기 뉴럴 네트워크(20)는 그 자체가 피쳐 추출기(feature extracter)일 수도 있다. 예컨대, 출력 레이어(24) 또는 풀리 커넥티드 직전 레이어(23)에서 피쳐가 선택되는 경우, 상기 출력 레이어(24)는 직전 레이어(23)의 선택된 피쳐(f1, f2, f3) 자체를 출력하도록 설계될 수도 있고, 이러한 경우는 상기 뉴럴 네트워크(20) 자체가 피쳐 추출기로 작동할 수 있다.
또는 상기 뉴럴 네트워크(20)는 별개의 고유 목적(예컨대, 클래시피케이션, 오브젝트 디텍팅 등)을 달성하기 위해 학습된 것일 수도 있다. 이러한 경우에도 소정의 레이어에서 항상 일관된 피쳐를 선택하여 뉴럴 네트워크 피쳐로 이용할 수 있다. 예컨대, 도 4의 경우에는 출력 레이어(24)를 제외한 나머지 레이어들의 결합이 피쳐 추출기로 동작할 수 있다.
본 발명의 일 실시 예에 의하면, 상기 뉴럴 네트워크(20)는 어느 하나의 이미지를 겹치는 영역이 존재하도록 분할한 후, 분할한 이미지들 각각의 겹치는 공통영역에서 각각 추출되는 서로 대응되는 포인트들이 매칭될 수 있도록 최적의 변환관계(예컨대 에러가 최소가 되는)를 도출할 수 있도록 학습된 뉴럴 네트워크일 수 있다.
예컨대, 도 4b에 도시된 바와 같이 소정의 이미지(6)의 전부 또는 일부는 겹치는 공통영역(6-3)이 존재하도록 분할될 수 있다. 그리고 분할된 이미지들(6-1 및 6-2) 각각으로부터 서로 대응되는 포인트들(예컨대, P11 내지 P14, P21 내지 P24)이 소정의 개수 추출될 수 있다.
그러면 제1분할 이미지(6-1)에서 추출된 포인트들(P11 내지 P14)이 제2분할 이미지(6-2)에서 추출된 포인트들(P21 내지 P24)을 최소에러로 변환될 수 있도록(예컨대, 변환행렬의 파라미터를 결정) 학습되는 뉴럴 네트워크를 상기 뉴럴 네트워크(20)로 구현할 수 있다.
이때 상기 포인트들(예컨대, P11 내지 P14, P21 내지 P24)은 임의로 선택되는 포인트일 수도 있고, 각각의 이미지들의 공통영역에서 소정의 방식으로 추출된 피쳐 포인트일 수도 있다.
어떠한 경우든 소정의 목적을 달성하기 위해 잘 학습된 뉴럴 네트워크(20)의 전부 또는 일부가 이미지에서 피쳐를 선택하고 추출하는 피쳐 추출기로 이용될 수 있다.
그리고 이러한 피쳐 추출기를 이용해 상기 자동 위상 매핑 처리시스템(100)이 입력받은 서로 다른 이미지들 각각에 포함된 공통영역에서는 동일한 피쳐가 추출될 수 있다. 따라서 어떤 하나의 이미지에서 동일한 피쳐(서로 대응되는 피쳐)가 가장 많이 존재하는 이미지가 매핑 이미지로 판단될 수 있다.
한편 본 발명의 기술적 사상에 따르면, 뉴럴 네트워크 피쳐들은 벡터로 표현되므로 특정 이미지의 매핑 이미지를 탐색하기 위해 종래와 같이 이미지 페어들 마다 피쳐들을 비교하는 것이 아니라, 고속 연산이 가능한 벡터 서치 엔진을 이용함으로써 보다 빠른 위치관계의 판단이 가능할 수 있다.
대용량의 벡터들을 고속으로 서치하는 기술들이 최근에 널리 공개된 바 있다.
벡터 서치 엔진은 입력되는 벡터(또는 벡터 세트)와 가장 근사한(근거리의) 벡터들을 고속으로 찾기 위해 구축되는 엔진일 수 있다. 모든 벡터들은 DB 상에서 인덱스화되어 저장되며, 상기 벡터 서치 엔진은 입력되는 벡터(또는 벡터 세트)와 가장 근사한 벡터(또는 벡터 세트)를 출력할 수 있도록 설계될 수 있다.
이러한 벡터 서치 엔진은 예컨대, faiss 등과 같은 알려진 벡터 서치 기법들을 이용해 구축될 수 있다. 이러한 벡터 서치 엔진은 GPU 기반으로 수행되는 경우 대용량의 고속연산이 가능한 효과가 있다.
본 발명의 기술적 사상에 따른 벡터 서치 엔진은 대상 이미지(예컨대, 이미지 1)에서 추출된 피쳐들의 세트를 입력받고 그에 대한 응답으로 가장 유사한(근거리)의 벡터 또는 벡터들의 집합을 출력할 수 있다. 그리고 이러한 벡터 또는 벡터들의 집합의 출처가 어떤 이미지인지를 판단함으로써 고속으로 대상 이미지의 매핑 이미지가 결정될 수 있다.
예컨대, 제1이미지에서 추출된 피쳐들 전부가 벡터 서치 엔진에 입력될 수 있다. 벡터 서치 엔진은 벡터 DB에서 입력된 피쳐들 각각과 가장 거리가 짧은 벡터 또는 가장 거리가 짧은 벡터와의 거리를 출력할 수 있다. 이러한 태스크는 이미지들별로 수행될 수 있다.
예컨대, 다섯 개의 이미지가 존재하고 각각의 이미지들별로 10개의 피쳐가 추출된 경우를 가정하면, 벡터 DB에는 50개의 벡터가 인덱스화되어 저장될 수 있다. 그리고 각각의 출처 이미지에 대한 정보가 같이 저장될 수 있다.
그러면 상기 벡터 서치 엔진은 제1이미지로부터 추출된 10개의 벡터를 입력받을 수 있다. 그리고 벡터 서치 엔진은 10개의 벡터들 각각과 제2이미지에서 추출된 벡터들 중 거리가 가장 짧은 벡터들 10개 또는 이들의 거리의 합을 출력할 수 있다. 이러한 방식으로 제3이미지에서 추출된 벡터들, 제4이미지에서 추출된 벡터들, 제5이미지에서 추출된 벡터들에 대해 수행하면 입력된 벡터 세트와 가장 근사한 피쳐 세트들을 포함하는 이미지가 고속으로 탐색될 수 있다. 그리고 탐색된 이미지가 제1이미지의 매핑 이미지로 결정될 수 있다.
실시 예에 따라서는 상기 벡터 서치 엔진은 제1이미지로부터 출력된 10개의 벡터들 각각에 대해서 상기 제1이미지로부터 추출된 10개의 벡터를 제외한 나머지 벡터들(40개)에 전체에 대해 거리가 가장 짧은 벡터 순서대로 출력할 수 있다. 예컨대, 10개의 벡터 리스트가 출력되면 상기 자동 위상 매핑 처리시스템(100)은 이러한 벡터 리스트를 분석하여 매핑 이미지를 출력할 수 있다.
벡터 서치 엔진이 출력하는 결과 또는 방식은 다양할 수 있다. 하지만 어떠한 경우든 본 발명의 기술적 사상에 의하면 입력된 이미지들 각각으로부터 피쳐들을 추출하고, 이러한 피쳐들을 벡터 서치가 가능하도록 구축된 DB에 입력할 수 있으며, 벡터 서치 엔진은 입력되는 벡터 또는 벡터 세트를 입력받으면 가장 유사한(거리가 짧은) 벡터 또는 벡터 세트를 출력하는 기능을 수행할 수 있다. 이러한 기능을 통해 매핑 이미지를 고속으로 탐색할 수 있다.
실시 예에 따라서는 대상 이미지 즉, 매핑 이미지를 찾고자 하는 이미지(예컨대, 제1이미지)의 모든 피쳐들이 입력되지 않고, 일부의 피쳐들이 벡터 서치 엔진에 입력될 수도 있다. 예컨대, 이미지 중 미리 정의된 영역에 대응되는 피쳐들만이 위치 관계를 파악하기 위해 벡터 서치 엔진에 입력될 수도 있다. 미리 정의된 영역은 통상 이미지의 중앙부분이 아니라 좌우상하의 모서리에 인접한 영역이 될 수 있으므로 이미지의 외곽쪽 영역을 임의로 설정하고, 설정된 영역에 대응되는 위치의 피쳐가 선택적으로 벡터 서치를 위한 입력으로 이용될 수도 있다. 물론 벡터 DB 역시 이러한 외곽 영역에 대응되는 피쳐만이 입력될 수도 있고, 전체 피쳐들이 입력될 수도 있다.
또한 본 발명의 기술적 사상에 따른 뉴럴 네트워크 피쳐는 그 자체로는 추출된 이미지에서의 위치가 특정되지 않는다. 따라서 뉴럴 네트워크 피쳐에 대응되는 원본 이미지에서의 위치(포인트)가 특정되어야 매핑이 수행될 수 있다. 따러서 뉴럴 네트워크 피쳐에 대응되는 원본 이미지 상의 위치를 특정하는 기술적 사상이 요구되는데, 이에 대해서는 도 6을 참조하여 후술하도록 한다.
상술한 바와 같은 기술적 사상을 구현하기 위한 자동 위상 매핑 처리시스템(100)은 도 3에 도시된 바와 같은 기능적 또는 논리적 구성으로 정의될 수 있다.
도 3은 본 발명의 실시 예에 따른 자동 위상 매핑 처리시스템의 논리적 구성을 개략적으로 설명하기 위한 도면이다.
도 3을 참조하면, 본 발명의 기술적 사상에 따른 자동 위상 매핑 처리시스템(100)은 제어모듈(110), 인터페이스 모듈(120), 피쳐 추출기(130)를 포함한다. 상기 자동 위상 매핑 처리시스템(100)은 매핑모듈(140) 및/또는 벡터 서치 엔진(150)을 더 포함할 수도 있다.
상기 자동 위상 매핑 처리시스템(100)은 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비한 논리적인 구성을 의미할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 자동 위상 매핑 처리시스템(100)은 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 자동 위상 매핑 처리시스템(100)은 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다. 예컨대, 상기 제어모듈(110), 인터페이스 모듈(120), 피쳐 추출기(130), 매핑모듈(140), 및/또는 벡터 서치 엔진(150) 각각은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. 또한, 구현 예에 따라서는 상기 제어모듈(110), 인터페이스 모듈(120), 피쳐 추출기(130), 매핑모듈(140), 및/또는 벡터 서치 엔진(150) 각각을 구성하는 소프트웨어 및/또는 하드웨어의 결합 역시 서로 다른 물리적 장치에 위치하고, 서로 다른 물리적 장치에 위치한 구성들이 서로 유기적으로 결합되어 각각의 상기 모듈들을 구현할 수도 있다.
또한, 본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스(resource)의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
상기 제어모듈(110)은 본 발명의 기술적 사상을 구현하기 위해 자동 위상 매핑 처리시스템(100)에 포함된 다른 구성(예컨대, 인터페이스 모듈(120), 피쳐 추출기(130), 매핑모듈(140), 및/또는 벡터 서치 엔진(150) 등)을 제어할 수 있다.
상기 인터페이스 모듈(120)은 외부로부터 복수의 이미지들을 입력받을 수 있다. 상기 복수의 이미들은 서로 다른 위치에서 촬영된 영상일 수 있다. 일 예에 의하면 상기 복수의 이미지들은 실내에서 촬영된 360 영상일 수 있지만 이에 국한되지는 않는다.
상기 복수의 이미지들 중에는 공통된 공간을 다른 위치에서 촬영한 것들이 존재할 수 있으며, 공통된 공간 즉 공통영역을 포함하는 두 이미지들은 매핑 가능한 관계에 있다고 정의될 수 있다. 그 중에서 가장 많은 공통영역을 포함하는 이미지를 매핑 이미지로 정의할 수 있으며, 이는 대응되는 피쳐가 가장 많은 이미지들로 정의될 수도 있다.
상기 인터페이스 모듈(120)을 통해 입력받은 복수의 이미지들 각각으로부터 상기 피쳐 추출기(130)는 본 발명의 기술적 사상에 따라 정의되는 피쳐 즉, 뉴럴 네트워크 피쳐를 추출할 수 있다.
뉴럴 네트워크 피쳐는 소정의 뉴럴 네트워크(예컨대, CNN)에서 출력 레이어 이전에 특정되는 이미지의 피쳐들일 수 있음은 전술한 바와 같다. 상기 피쳐 추출기(130)는 도 4에 도시된 바와 같은 뉴럴 네트워크(20) 그 자체일 수도 있고, 입력 레이어(21)부터 뉴렬 네트워크에서 출력 레이어(24) 이전의 소정의 레이어(예컨대, 23)까지의 구성을 의미할 수도 있다. 상기 레이어(23)에 의해 정의되는 피쳐 맵에 포함된 피쳐 전부 또는 일부가 뉴럴 네트워크 피쳐일 수 있다.
상기 뉴럴 네트워크(20)는 뉴럴 네트워크 피쳐를 추출하기 위한 목적 이외의 별개의 목적(예컨대, 분류, 디텍팅 등)을 위해 학습된 것일 수도 있지만, 전술한 바와 같이 두 이미지를 최소의 에러로 정합하기 위해 설계된 뉴럴 네트워크이거나 뉴럴 네트워크 피쳐를 추출하는 목적으로 학습되는 것일 수도 있다.
예컨대, 후자의 경우는 사용자가 임의로 설정한 위치 및/또는 이미지의 특징을 잘 표현할 수 있는 핸드 크래프트 피쳐 포인트를 출력할 수 있도록 학습될 수 있고, 이러한 경우는 상기 뉴럴 네트워크(20) 자체가 피쳐 추출기(130)가 될 수 있다.
사용자가 임의로 설정한 위치는 소정의 오브젝트(예컨대, 벽, 문 등)에서 사용자가 설정한 위치(예컨대, 해당 오브젝트의 중앙위치)로 설정할 수 있다. 또한 이러한 사용자 설정 위치는 종래의 핸드 크래프트 피쳐 포인트와 달리 플랫한 영역 즉, 에지 또는 모서리가 존재하지 않는 플랫(flat)한 이미지 영역에 설정할 수 있다. 이러한 경우 종래의 핸드 크래프트 피쳐 포인트에서는 피쳐 포인트로 추출되지 않는 플랫한 이미지 영역 내에서도 피쳐가 정의될 수 있고 이를 활용하는 경우 보다 정확도 있는 매핑 이미지의 판단 및 매핑이 수행될 수도 있다.
도 5는 본 발명의 실시 예에 따른 뉴럴 네트워크 피쳐를 이용할 경우의 장점을 설명하기 위한 도면이다.
도 5에 도시된 바와 같이, 상기 피쳐 추출기(130)는 미리 정해진 오브젝트(예컨대, 벽, 문, 테이블) 내의 임의의 위치가 피쳐 포인트(fp1, fp2, fp3)로 특정될 수 있도록 학습될 수 있다.
또한 도 5에 도시된 바와 같이 상기 임의의 위치는 오브젝트별로 미리 정해진 위치(예컨대, 벽의 중심, 테이블의 중심, 문의 중심 등)과 같이 통상적으로 플랫한 이미지 영역 내로 설정될 수 있다.
물론 상기 피쳐 추출기(130)는 종래의 에지 또는 모서리가 꺽인 부분 등과 같이 핸드 크래프트 피쳐 포인트에 대응되는 피쳐를 추출할 수 있도록 학습될 수도 있다.
예컨대, 사용자는 다수의 이미지에 오브젝트별로 핸드 크래프트 피쳐 포인트, 사용자가 설정한 플랫한 영역의 설정위치 들을 어노테이션하고, 이를 학습 데이터로 이용하여 뉴럴 네트워크(20)를 학습시킬 수도 있다. 이러한 경우 각각의 피쳐 포인트(fp1, p2, fp3)에 대응되는 피쳐들이 추출될 수 있으며, 피쳐 포인트 자체가 출력될 수도 있다.
어떠한 경우든 뉴럴 네트워크 피쳐를 이용하는 경우에는 도 5에 도시된 바와 같이 종래의 핸드 크래프트 피쳐로는 추출되지 않는 위치가 피쳐로 활용될 수 있으므로, 보다 이미지 특성을 정의하거나 이미지를 매핑하는데 유리한 효과가 있을 수 있다.
한편 뉴럴 네트워크 피쳐는 뉴럴 네트워크(20)가 원하는 목적을 출력하기 위해 복수의 컨벌루션 및/또는 풀링을 통해 결정되는 이미지의 특징적인 정보이긴 하지만, 이러한 뉴럴 네트워크 피쳐 자체가 해당하는 원본 이미지에서의 특정 위치를 나타내는 것은 아닐 수 있다.
따라서 뉴럴 네트워크 피쳐가 추출된 경우라도, 뉴럴 네트워크 피쳐에 대응되는 원본 이미지상의 위치 즉, 피쳐 위치가 특정될 필요가 있다. 이러한 피쳐 위치가 특정되어야 이미지의 매핑이 수행될 수 있기 때문이다.
이처럼 뉴럴 네트워크 피쳐의 피쳐 위치를 특정하기 위한 기술적 사상은 도 6을 참조하여 설명하도록 한다.
도 6은 본 발명의 실시 예에 따른 뉴럴 네트워크 피쳐에 대응되는 피쳐위치를 설명하기 위한 도면이다.
도 6에 도시된 바와 같이 소정의 레이어에서 뉴럴 네트워크 피쳐(f)가 추출될 수 있다. 이러한 경우 상기 뉴럴 네트워크 피쳐(f)는 이전 소정의 레이어(l)에서는 소정의 대응영역(Sl)과 대응되며, 이러한 대응영역(Sl)에 포함된 픽셀 정보들이 미리 정의된 컨벌루션 및 풀링 함수에 의해 상기 뉴럴 네트워크 피쳐(f)로 매핑될 수 있다.
이때 상기 l 레이어에서의 상기 뉴럴 네트워크 피쳐(f)의 대응영역(Sl) 내의 소정의 위치(예컨대, 중앙 또는 특정 꼭지점 등)가 상기 뉴럴 네트워크 피쳐(f)의 l 레이어에서의 대응위치(PSl)로 정의될 수 있다.
그러면 마찬가지 방식으로 상기 l 레이어에서의 대응위치(PSl)에 대응되는 원본 이미지 상에서의 대응영역(So)가 원본 이미지와 l 레이어사이의 컨벌루션 및 풀링 관계에 의해 특정될 수 있고, 상기 대응영역(So) 내의 소정의 위치(예컨대, 중앙)가 상기 뉴럴 네트워크 피쳐(f)의 원본 이미지상에서의 대응위치 즉, 피쳐 위치로 특정될 수 있다.
이러한 방식으로 뉴럴 네트워크 피쳐들 별로 피쳐 위치가 결정되면, 각각의 피쳐 위치가 이미지 매핑을 위한 피쳐 포인트가 될 수 있다.
그러면 매핑모듈(140)은 매핑 이미지들 간의 서로 대응되는 피쳐위치들을 이용하여 이미지 매핑을 수행할 수 있다.
두 이미지들간의 이미지 매핑은, 두 이미지들간의 상대적인 위치관계를 특정하는 매핑의 경우에는 두 이미지 각각에서 서로 대응되는 포인트들을 이용하여 수행될 수 있다. 이때 서로 대응되는 포인트들은 두 이미지 각각에서 추출된 뉴럴 네트워크 피쳐의 피쳐 포인트일 수 있으며, 서로 대응되는 피쳐 포인트들은 벡터 서치 엔진을 통해 용이하게 탐색될 수 있다.
서로 대응되는 포인트(공간상에서 동일한 위치를 나타내는)들이 각각 서로 다른 이미지에 존재하는 경우 이들 두 이미지의 상대적인 위치관계를 특정하기 위한 기술적 사상은 공지된 바 있다.
예컨대, 에피폴라 지오메트리(Epipolar Geometry)를 이용하여 상대적인 위치관계를 판단할 수 있음은 본 발명의 기술분야의 평균적 전문가에게 용이하게 추론될 수 있다. 이외에도 다양한 방식이 가능할 수도 있다.
다른 실시 예에 의하면, 두 이미지들 즉, 매핑 이미지들 간의 매핑이 두 이미지를 정합하는 경우에는, 두 이미지를 정합하기 위한 변환행렬을 특정하는 것이 매핑을 수행하는 것일 수도 있다.
이러한 변환행렬을 특정하기 위해서는 서로 대응되는 피쳐 3개 쌍을 추출하고 추출된 3개 쌍이 변환될 수 있도록 변환 행렬이 정의될 수 있음은 널리 알려진 바와 같다. 그리로 이러한 피쳐 3개 쌍은 모든 피쳐들이 가장 작은 에러로 변환될 수 있도록 탐색될 수 있으며, 랜색(RANSAC) 등의 알고리즘이 이용될 수 있음은 물론이다.
상기 벡터 서치 엔진(150)은 전술한 바와 같이 피쳐 추출기(130)에 의해 추출된 각각의 이미지들의 피쳐들에 상응하는 벡터를 DB에 입력하고, 대상 이미지(예컨대, 제1이미지)로부터 추출된 피쳐 세트에 대응되는 벡터 세트를 입력받을 수 있다. 그러면 전술한 바와 같이 벡서 서치 결과를 출력할 수 있다.
그러면 제어모듈(110)은 상기 벡터 서치 결과에 기초하여 대상 이미지와 인접한 위치관계에 존재하는 이미지를 결정할 수 있다.
도 7은 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법에서 이미지들 간의 매핑 이미지를 탐색하는 방법을 설명하기 위한 플로우 차트이다.
도 7을 참조하면, 본 발명의 기술적 사상에 따른 자동 위상 매핑 처리시스템(100)은 복수의 이미지들 각각으로부터 뉴럴 네트워크 피쳐를 추출할 수 있다(S100). 그러면 피쳐들을 벡터 DB로 구축하고 대상 이미지로부터 추출된 벡터 세트(피쳐 세트)에 대한 벡터 서치를 수행할 수 있다(S110, S120).
그러면 벡터 서치 결과에 기초하여 대상 이미지의 매핑 이미지를 판단할 수 있으며(S130), 모든 이미지에 대해 동일한 태스크를 수행함으로써 각각의 이미지들의 매핑 이미지를 판단할 수 있다(S140).
도 8은 본 발명의 실시 예에 따른 자동 위상 매핑 처리방법에서 이미지들을 매핑하는 방법을 설명하기 위한 플로우 차트이다.
도 8을 참조하면, 본 발명의 기술적 사상에 따른 자동 위상 매핑 처리시스템(100)은 서로 매핑 이미지로 판단된 제1이미지와 제2이미지를 매핑하기 위해 제1이미지로부터 추출된 피쳐들에 대응되는 피쳐위치들을 특정할 수 있다(S200). 이를 위해 도 6에 도시된 바와 같은 방식을 이용할 수 있다.
또한 제2이미지로부터 추출된 피쳐들에 대응되는 피쳐위치들을 특정할 수 있다(S210).
그러면 상기 자동 위상 매핑 처리시스템(100)은 각각의 이미지들의 피쳐위치들에 기초하여 Epipolar Geometry 알고리즘을 통한 상대적인 위치관계를 판단하거나 또는 이미지 연결을 위한 변환행렬을 소정의 방식(예컨대, RANSAC 알고리즘)을 통해 결정할 수 있다(S220).
본 발명의 실시 예에 따른 자동 위상 매핑 처리방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (12)

  1. 자동 위상 매핑 처리시스템이 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하는 단계;
    상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하는 단계;
    상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하는 단계; 및
    상기 자동 위상 매핑 처리시스템이 판단된 매핑 이미지들 간의 매핑을 수행하는 단계를 포함하며,
    상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하는 단계는,
    상기 이미지들 각각으로부터 추출된 피쳐들에 상응하는 벡터들을 DB-상기 DB에는 상기 이미지들 전체의 피쳐들에 상응하는 벡터들이 포함됨-로 구축하는 단계;
    상기 이미지들 중 소정의 제1이미지로부터 추출된 제1피쳐들에 상응하는 제1벡터들 중 적어도 일부인 벡터 세트를 상기 구축된 DB에 벡터 서치하는 단계-한 번의 상기 벡터 서치에 의해 DB에 포함된 벡터들 중 최근접 벡터 세트가 특정됨-;
    상기 벡터 서치 결과에 기초하여 특정되는 상기 최근접 벡터 세트에 상응하는 제2이미지를 상기 제1이미지의 매핑 이미지로 판단하는 단계를 포함하는 자동 위상 매핑 처리방법.

  2. 삭제
  3. 삭제
  4. 자동 위상 매핑 처리시스템이 복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하는 단계;
    상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하는 단계;
    상기 자동 위상 매핑 처리시스템이 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하여 제2이미지를 제1이미지의 매핑 이미지로 판단하는 단계; 및
    상기 제1이미지와 상기 제1이미지의 매핑 이미지로 판단된 상기 제2이미지의 매핑을 수행하는 단계를 포함하며,
    상기 제1이미지와 상기 제1이미지의 매핑 이미지로 판단된 상기 제2이미지의 매핑을 수행하는 단계는,
    상기 제1이미지로부터 추출된 제1피쳐들에 각각에 대응되는 상기 제1이미지상의 제1피쳐대응위치들 및 상기 제2이미지로부터 추출된 제2피쳐들에 각각에 대응되는 상기 제2이미지상의 제2피쳐대응위치들을 판단하는 단계;
    판단된 제1피쳐대응위치들 및 상기 제2피쳐대응위치들에 기초하여 상기 제1이미지 및 상기 제2이미지의 상대적 위치관계를 판단하는 단계를 포함하는 자동 위상 매핑 처리방법.
  5. 제1항에 있어서, 상기 뉴럴 네트워크는,
    소정의 이미지를 겹치는 영역이 존재하도록 분할한 후, 분할한 이미지들 각각의 겹치는 공통영역에서 각각 추출되는 서로 대응되는 포인트들이 최적으로 매칭될 수 있는 변환관계를 출력하도록 학습된 뉴럴 네트워크인 자동 위상 매핑 처리방법.
  6. 제1항에 있어서, 상기 이미지들 각각은,
    실내의 서로 다른 위치에서 촬영된 360도 영상인 것을 특징으로 하는 자동 위상 매핑 처리방법.
  7. 삭제
  8. 데이터 처리장치에 설치되며 청구항 제1항, 제4항 내지 제6항 중 어느 한 항에 기재된 방법을 수행하기 위한 기록매체에 저장된 컴퓨터프로그램.
  9. 프로세서;
    상기 프로세서에 의해 구동되는 프로그램이 저장된 메모리를 포함하며,
    상기 프로세서는 상기 프로그램을 구동하여,
    복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하고, 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하며, 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하고, 판단된 매핑 이미지들 간의 매핑을 수행하되,
    상기 이미지들 각각으로부터 추출된 피쳐들에 상응하는 벡터들을 DB-상기 DB에는 상기 이미지들 전체의 피쳐들에 상응하는 벡터들이 포함됨-로 구축하고, 상기 이미지들 중 소정의 제1이미지로부터 추출된 제1피쳐들에 상응하는 제1벡터들 중 적어도 일부인 벡터 세트를 상기 구축된 DB에 벡터 서치하며-한 번의 상기 벡터 서치에 의해 DB에 포함된 벡터들 중 최근접 벡터 세트가 특정됨-, 상기 벡터 서치 결과에 기초하여 특정되는 상기 최근접 벡터 세트에 상응하는 제2이미지를 상기 제1이미지의 매핑 이미지로 판단하는 자동 위상 매핑 처리시스템.
  10. 삭제
  11. 프로세서;
    상기 프로세서에 의해 구동되는 프로그램이 저장된 메모리를 포함하며,
    상기 프로세서는 상기 프로그램을 구동하여,
    복수의 이미지들-상기 복수의 이미지들 중 적어도 두 개는 공통된 공간이 촬영된 공통영역이 존재함-을 획득하고, 상기 이미지들 각각으로부터 뉴럴 네트워크를 이용한 피쳐 추출기를 통해 상기 이미지들 각각의 피쳐들을 추출하며, 상기 이미지들 각각으로부터 추출된 피쳐들에 기초하여 상기 이미지들 각각의 매핑 이미지를 판단하여 제2이미지를 제1이미지의 매핑 이미지로 판단하며,
    상기 제1이미지로부터 추출된 제1피쳐들에 각각에 대응되는 상기 제1이미지상의 제1피쳐대응위치들 및 상기 제2이미지로부터 추출된 제2피쳐들에 각각에 대응되는 상기 제2이미지상의 제2피쳐대응위치들을 판단하고, 판단된 제1피쳐대응위치들 및 상기 제2피쳐대응위치들에 기초하여 상기 제1이미지 및 상기 제2이미지의 상대적 위치관계를 판단하는 자동 위상 매핑 처리시스템.


  12. 삭제
KR1020190174554A 2019-06-21 2019-12-24 전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템 KR102384177B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/429,616 US12002260B2 (en) 2019-06-21 2020-06-22 Automatic topology mapping processing method and system based on omnidirectional image information
JP2021540146A JP7393809B2 (ja) 2019-06-21 2020-06-22 全方位画像情報に基づく自動位相マッピング処理方法及びそのシステムとコンピュータープログラム
PCT/KR2020/008072 WO2020256517A2 (ko) 2019-06-21 2020-06-22 전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190074387 2019-06-21
KR1020190074387 2019-06-21

Publications (2)

Publication Number Publication Date
KR20200145643A KR20200145643A (ko) 2020-12-30
KR102384177B1 true KR102384177B1 (ko) 2022-04-29

Family

ID=74087841

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190174554A KR102384177B1 (ko) 2019-06-21 2019-12-24 전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR102384177B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101915540B1 (ko) * 2018-05-24 2019-01-07 주식회사 다누시스 이미지유사도 분석에 대한 합성시스템 및 이미지유사도 분석에 대한 합성방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3398016A4 (en) * 2016-01-03 2019-08-28 HumanEyes Technologies Ltd ADAPTIVE IMAGE ASSEMBLY DURING THE PROCESS OF CREATING A PANORAMIC IMAGE

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101915540B1 (ko) * 2018-05-24 2019-01-07 주식회사 다누시스 이미지유사도 분석에 대한 합성시스템 및 이미지유사도 분석에 대한 합성방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIAYI MA 등, 'Robust Topological Navigation via Convolutional Neural Network Feature and Sharpness Measure', Advanced Data Analytics for Large-scale Complex Data Env., IEEE Access Vol. 5, (2017.9.28.)*

Also Published As

Publication number Publication date
KR20200145643A (ko) 2020-12-30

Similar Documents

Publication Publication Date Title
WO2021057742A1 (zh) 定位方法及装置、设备、存储介质
US9984280B2 (en) Object recognition system using left and right images and method
WO2020051114A9 (en) Information detection method, apparatus and device
US8531519B1 (en) Automatic multi-device localization and collaboration using cameras
Liang et al. Image-based positioning of mobile devices in indoor environments
CN110986969A (zh) 地图融合方法及装置、设备、存储介质
KR102387797B1 (ko) 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치
US20150098659A1 (en) Method and apparatus for image retrieval
KR102300570B1 (ko) 전방위 이미지 촬영 어셈블리 및 이에 의해 수행되는 방법
CN110672102B (zh) 视觉辅助机器人初始化定位方法、机器人及可读存储介质
KR102384177B1 (ko) 전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템
KR102196749B1 (ko) 가중치 특징점을 이용한 이미지 정합 방법 및 그 시스템
KR102617222B1 (ko) 전방위 화상정보 기반의 자동위상 매핑 처리 방법 및 그 시스템
Demiröz et al. Affordable person detection in omnidirectional cameras using radial integral channel features
CN114429192B (zh) 一种图像匹配方法、装置和电子设备
KR102449031B1 (ko) 딥러닝을 이용한 실내 위치 측위 방법
KR101943097B1 (ko) 가상 특징점을 이용한 이미지 정합 방법 및 그 시스템
US11961256B2 (en) Method for indoor localization using deep learning
KR20230049969A (ko) 글로벌 측위 장치 및 방법
US11915449B2 (en) Method and apparatus for estimating user pose using three-dimensional virtual space model
JP7393809B2 (ja) 全方位画像情報に基づく自動位相マッピング処理方法及びそのシステムとコンピュータープログラム
US12002260B2 (en) Automatic topology mapping processing method and system based on omnidirectional image information
KR102495005B1 (ko) 딥러닝을 이용한 실내 위치 측위 방법
US20220139073A1 (en) Automatic topology mapping processing method and system based on omnidirectional image information
JP2021026723A (ja) 画像処理装置、画像処理方法およびプログラム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)