KR20140112064A - 가상 자 - Google Patents

가상 자 Download PDF

Info

Publication number
KR20140112064A
KR20140112064A KR1020147022274A KR20147022274A KR20140112064A KR 20140112064 A KR20140112064 A KR 20140112064A KR 1020147022274 A KR1020147022274 A KR 1020147022274A KR 20147022274 A KR20147022274 A KR 20147022274A KR 20140112064 A KR20140112064 A KR 20140112064A
Authority
KR
South Korea
Prior art keywords
image
distance
estimating
real
real world
Prior art date
Application number
KR1020147022274A
Other languages
English (en)
Inventor
선딥 바다디
크리쉬나칸스 에스. 치말라마리
존 에이치. 홍
총 유. 이
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20140112064A publication Critical patent/KR20140112064A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

몇몇 실시예들에서, 장면의 이미지를 표시하는 제1 정보가 액세스된다. 기준 피처들이 검출되고, 상기 기준 피처들은 이미지에서 기준 객체와 연관된다. 제1 정보에 기초하여, 이미지 공간과 실세계 공간 사이의 변환이 결정된다. 사용자로부터의 입력을 표시하는 제2 정보가 액세스되고, 상기 제2 정보는 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 이미지 공간에서의 이미지-공간 거리를 식별한다. 그런 다음, 제2 정보 및 결정된 변환에 기초하여, 관심 있는 실세계 거리가 추정된다.

Description

가상 자{VIRTUAL RULER}
관련 출원들에 대한 상호-참조들
본 출원은, 2012년 1월 13일자로 출원되고 "VIRTUAL RULER"로 명명된 미국 가출원 번호 제 61/586,228호, 그리고 2012년 7월 31일자로 출원되고 "VIRTUAL RULER"로 명명된 미국 출원 번호 제 13/563,330호를 우선권으로 주장하고, 이로써 상기 미국 출원들은 인용에 의해 그 전체가 포함된다.
흔히, 시야에 있는 객체들의 정확한 치수들을 식별하는 것은 중요하다. 우편료를 결정하기 위해 봉투의 치수들, 프레임 크기를 결정하기 위해 사진의 치수, 책상이 방에 맞을지를 결정하기 위해 상기 책상의 치수들 등등을 식별하는 것이 필요할 수 있다. 줄자들이 누군가가 이러한 치수들을 측정하도록 하지만, 사람은 그가 측정을 획득하길 원하는 시간에 줄자가 없을 수 있다.
몇몇 실시예들에서, 실세계 측정을 결정할 때 사용자를 돕기 위한 방법들 및 시스템들이 제공된다. 이미징 디바이스(예컨대, 셀룰러 폰 내의 카메라)가 장면의 이미지를 캡쳐할 수 있다. 변환(예컨대, 호모그래피)이 결정될 수 있고, 상기 변환은, 스케일링, 카메라 틸트(camera tilt), 카메라 회전, 카메라 팬, 카메라 포지션 등등 중 하나 또는 그 초과를 설명할 수 있다. 변환을 결정하는 것은, 장면의 이미지에서 (예컨대, 알려진 크기 및/또는 형상의) 기준 객체의 위치를 결정하는 것, 그리고 기준 객체의 실세계 공간 특성들(예컨대, 치수 특성들)을, 장면의 이미지에서 대응하는 공간 특성들(예컨대, 치수 특성들)과 비교하는 것을 포함할 수 있다. 가상 자(virtual ruler)가, 변환에 기초하여 구성될 수 있고, 장면의 이미지 상으로 중첩(예컨대, 이미징 디바이스의 디스플레이 상에 제시)될 수 있다. 사용자는, 가상 자를 이용하여, 장면에서 실세계 치수들 또는 거리들을 식별할 수 있다. 부가하여 또는 대안적으로, 거리 또는 치수에 대한 요청에 응답하여, 실세계 측정이 사용자에게 제공될 수 있다.
예컨대, 기준 카드가 장면에서 표면 상에 배치될 수 있다. 모바일 디바이스에 있는 카메라가 장면의 이미지를 획득할 수 있고, (예컨대, 변환된 좌표들 사이의 거리들이 카드의 치수를 정확하게 반영하도록) (예컨대, 그 코너들에서) 기준 카드와 연관된 이미지-기반 좌표들을, 실세계 의미를 갖는 좌표들로 변환시킬 변환을 식별할 수 있다. 모바일 디바이스의 사용자는 (예컨대, 지점들을 식별하기 위해 터치스크린을 이용함으로써) 이미징된 장면 내에서 출발점과 정지점을 식별할 수 있다. 변환에 기초하여, 디바이스는 기준 카드의 평면을 따라서 출발점과 정지점 사이의 실세계 거리를 결정하고 사용자에게 디스플레이할 수 있다. 몇몇 실시예들에서, 전체 프로세스는 모바일 디바이스(예컨대, 셀룰러 폰) 상에서 수행될 수 있다.
몇몇 실시예들에서, 실세계 거리를 추정하기 위한 방법이 제공된다. 방법은, 장면의 이미지를 표시하는 제1 정보에 액세스하는 단계, 및 상기 제1 정보에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하는 단계를 포함할 수 있다. 또한, 방법은, 상기 이미지에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하는 단계, 및 사용자로부터의 입력을 표시하는 제2 정보에 액세스하는 단계 ― 상기 제2 정보는 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ― 를 포함할 수 있다. 방법은, 상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하는 단계를 더 포함할 수 있다.
몇몇 실시예들에서, 실세계 거리를 추정하기 위한 시스템이 제공된다. 시스템은, 장면의 이미지를 표시하는 제1 정보에 액세스하기 위한 이미징 디바이스, 및 상기 제1 정보에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하기 위한 기준-피처 검출기를 포함할 수 있다. 또한, 시스템은, 검출된 하나 또는 그 초과의 기준 피처들에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하기 위한 변환 식별자, 및 모바일 디바이스의 사용자로부터의 입력을 표시하는 제2 정보에 액세스하기 위한 사용자 입력 컴포넌트 ― 상기 제2 정보는, 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ― 를 포함할 수 있다. 시스템은, 상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하기 위한 거리 추정기를 더 포함할 수 있다.
몇몇 실시예들에서, 실세계 거리를 추정하기 위한 시스템이 제공된다. 시스템은, 장면의 이미지를 표시하는 제1 정보에 액세스하기 위한 수단, 및 상기 이미지에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하기 위한 수단을 포함할 수 있다. 또한, 시스템은, 상기 제1 정보에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하기 위한 수단, 및 사용자로부터의 입력을 표시하는 제2 정보에 액세스하기 위한 수단 ― 상기 제2 정보는, 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ― 를 포함할 수 있다. 시스템은, 상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하기 위한 수단을 더 포함할 수 있다.
몇몇 실시예들에서, 컴퓨터-판독가능 매체가 제공된다. 컴퓨터-판독가능 매체는, 장면의 이미지를 표시하는 제1 정보에 액세스하는 단계, 및 상기 이미지에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하는 단계를 실행하는 프로그램을 포함할 수 있다. 프로그램은, 상기 제1 정보에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하는 단계, 및 사용자로부터의 입력을 표시하는 제2 정보에 액세스하는 단계 ― 상기 제2 정보는, 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ― 를 추가로 실행할 수 있다. 또한, 프로그램은, 상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하는 단계를 실행할 수 있다.
도 1은 실시예에 따라 이미지에 기초하여 실세계 거리를 추정하기 위한 방법을 예시한다.
도 2는 기준 피처들과 연관된 이미지-기반 좌표들의, 실세계 치수들을 갖는 제2 공간으로의 맵핑의 예를 도시한다.
도 3a 및 도 3b는 실세계 거리를 식별하기 위한 시스템의 예들을 도시한다.
도 4는 실시예에 따라 실세계 거리를 추정하기 위한 시스템을 도시한다.
도 5는 실시예에 따라 실세계 거리를 추정하기 위한 시스템을 도시한다.
도 6은 컴퓨터 시스템의 실시예를 예시한다.
몇몇 실시예들에서, 실세계 측정을 결정할 때 사용자를 돕기 위한 방법들 및 시스템들이 제공된다. 이미징 디바이스(예컨대, 셀룰러 폰 내의 카메라)가 장면의 이미지를 캡쳐할 수 있다. 변환(예컨대, 호모그래피)이 결정될 수 있고, 상기 변환은, 스케일링, 카메라 틸트, 카메라 회전, 카메라 팬, 카메라 포지션 등등 중 하나 또는 그 초과를 설명할 수 있다. 변환을 결정하는 것은, 장면의 이미지에서 (예컨대, 알려진 크기 및/또는 형상의) 기준 객체의 위치를 결정하는 것, 그리고 기준 객체의 실세계 공간 특성들(예컨대, 치수 특성들)을, 장면의 이미지에서 대응하는 공간 특성들(예컨대, 치수 특성들)과 비교하는 것을 포함할 수 있다. 가상 자가, 변환에 기초하여 구성될 수 있고, 장면의 이미지 상으로 중첩(예컨대, 이미징 디바이스의 디스플레이 상에 제시)될 수 있다. 사용자는, 가상 자를 이용하여, 장면에서 실세계 치수들 또는 거리들을 식별할 수 있다. 부가하여 또는 대안적으로, 치수 또는 거리에 대한 요청에 응답하여, 실세계 측정이 사용자에게 제공될 수 있다.
예컨대, 기준 카드가 장면에서 표면 상에 배치될 수 있다. 모바일 디바이스에 있는 카메라가 장면의 이미지를 획득할 수 있고, (예컨대, 변환된 좌표들 사이의 거리들이 카드의 치수를 정확하게 반영하도록) (예컨대, 그 코너들에서) 기준 카드와 연관된 이미지-기반 좌표들을, 실세계 의미를 갖는 좌표들로 변환시킬 변환을 식별할 수 있다. 모바일 디바이스의 사용자는 (예컨대, 지점들을 식별하기 위해 터치스크린을 이용함으로써) 이미징된 장면 내에서 출발점과 정지점을 식별할 수 있다. 변환에 기초하여, 디바이스는 기준 카드의 평면을 따라서 출발점과 정지점 사이의 실세계 거리를 결정하고 사용자에게 디스플레이할 수 있다. 몇몇 실시예들에서, 전체 프로세스는 모바일 디바이스(예컨대, 셀룰러 폰) 상에서 수행될 수 있다.
도 1은 실시예에 따라 이미지에 기초하여 실세계 거리를 추정하기 위한 방법(100)을 예시한다. 105에서, 하나 또는 그 초과의 이미지들이 캡쳐된다. 이미지들은 카메라와 같은 이미징 디바이스에 의해 캡쳐될 수 있다. 이미징 디바이스는 휴대용 및/또는 전자 디바이스, 예컨대 셀룰러 폰, 스마트폰, 퍼스널 디지털 어시스턴트, 태블릿 컴퓨터, 랩톱 컴퓨터, 디지털 시계 등등 내에 위치될 수 있다. 이미지들은 개별적으로 그리고/또는 따로따로 캡쳐될 수 있다. 예컨대, 사용자는, 이미지가 캡쳐되도록 하는 시간상 별개의 지점을 표시하기 위해 버튼을 누르거나 또는 옵션을 선택할 수 있다. 일 예에서, 이미지들은 시간 기간 동안 반복적으로 또는 연속적으로 캡쳐된다. 예컨대, 폰이 렌즈를 통해 장면을 이미징할 수 있고, 실시간 이미지들 또는 실시간 이미지들의 서브세트를 프로세싱 및/또는 디스플레이할 수 있다.
110에서, 이미지에서 하나 또는 그 초과의 기준 피처들이 검출 또는 식별된다. 몇몇 예들에서, 두 개, 세 개, 네 개 또는 그 초과의 기준 피처들이 검출 또는 식별된다. 일 실시예에서, 기준 피처(들)는 이미지에 있는 것으로 알려진 또는 이미지에 있는 것으로 짐작되는 하나 또는 그 초과의 기준 객체(들)의 피처들이다. 예컨대, 사용자는, 이미지를 캡쳐하기에 앞서, 이미징되고 있는 장면에 그리고/또는 관심 있는 평면 상에 특정 객체(예컨대, 직사각형 기준 카드)를 포지셔닝하도록 지시받을 수 있다. 다른 예로서, 사용자는, 상기 장면에 그리고/또는 상기 평면 상에 하나 또는 그 초과의 특정 특징(들)을 갖는 객체(예컨대, 표준 치수의 신용 카드, 운전자의 면허증, 직사각형 객체, 25센트 동전, U.S.-통화증권 등등)를 포지셔닝하도록 지시받을 수 있다. 객체는 예컨대 직사각형의 견고한 실질상 평면 등등일 수 있다. 객체는, 적어도 하나의 평편한 표면; 6 인치 미만의 일차원, 이차원 또는 3차원 등등을 가질 수 있다. 객체는 하나 또는 그 초과의 구별되는 피처들(예컨대, 시각적 구별되는 피처), 예컨대 별개의 시각적 패턴(예컨대, 바 코드, 일련의 색들 등등)을 가질 수 있다. 몇몇 예들에서, 사용자는 상기 장면에 기준 객체를 두도록 지시받지 않는다. 예컨대, 기술은, 적어도 하나의 직사각형 객체가 상기 장면 내에 그리고/또는 관심 있는 평면 상에 포지셔닝됨을 가정할 수 있다.
하나 또는 그 초과의 기준 피처들 또는 기준 피처들 전부는, 예컨대 기준 객체, 에지들, 및/또는 코너들에 대응하는 이미지의 일부분 또는 이미지의 전체 부분을 포함할 수 있다. 예컨대, 기준 피처들은 기준 객체를 정의하는 네 개의 에지들을 포함할 수 있다. 기준 피처들은 기준 객체의 하나 또는 그 초과의 부분들(예컨대, 기준 객체의 상단 부근의 적색 도트들 및 기준 객체의 하단 부근의 청색 도트들)을 포함할 수 있다.
기준 피처들은 (예컨대, 이미지-기반 이차원 좌표계 내에서) 포지션들을 포함할 수 있다. 예컨대, 105에서 캡쳐된 이미지는 이미징된 장면의 이차원 표현을 포함할 수 있다. 이미지는, 예컨대 행들과 열들로 조직화된 복수의 픽셀들을 포함할 수 있다. 따라서, 이미지 피처들은 픽셀 좌표들로서 또는 픽셀 좌표들에 기초하여 식별될 수 있다(예컨대, 코너 1이 (4, 16)에 위치된다; 코너 2가 (6, 18)에 위치된다 등등).
기준 피처들은 하나 또는 그 초과의 길이들 및/또는 면적들을 포함할 수 있다. 길이들 및/또는 면적들은 이미지-공간 공간 특성(image-space spatial property)들을 가질 수 있다. 예컨대, "에지 1"은 15.4 픽셀들 길이일 수 있다.
하나 또는 그 초과의 컴퓨터 비전 기술들을 이용하여, 기준 피처들이 검출될 수 있다. 예컨대, 에지-검출 알고리즘이 사용될 수 있고, 다양한 이미지 위치들에서의 공간 대비들이 분석될 수 있고, 스케일-불변 피처 변환이 사용될 수 있고 등등이다.
기준 피처들은 사용자 입력들에 기초하여 검출될 수 있다. 예컨대, 사용자는, 기준 피처들의 위치를 식별하도록 지시받을 수 있다. 사용자는, 기준 피처들에 대응하는 이미지 상의 포지션들을 식별하기 위해, 예컨대 터치스크린, 마우스, 키패드 등등을 사용할 수 있다. 일 예에서, 사용자에게는 터치-스크린 전자 디스플레이를 통해 이미지가 제시되고, 사용자는, 기준 객체의 코너들에 대응하는 네 개의 위치들에서 스크린을 터치하도록 지시받는다.
한 개, 두 개, 세 개, 네 개 또는 그 초과의 기준 피처(들)가 검출될 수 있다. 일 실시예에서, 적어도 네 개의 기준 피처들이 검출되고, 상기 기준 피처들 중 적어도 몇몇 또는 전부는 서로 간에 고정된 그리고 알려진 실세계 거리를 갖는다. 예컨대, 신용카드 기준 객체의 네 개의 코너들이 검출될 수 있다. 일 실시예에서, 적어도 네 개의 기준 피처들이 검출되고, 상기 기준 피처들 중 적어도 몇몇 또는 전부는 피처 자체와 연관된, 고정된 그리고 알려진 실세계 공간 특성(예컨대, 실세계 치수)을 갖는다. 예컨대, 신용카드 기준 객체의 네 개의 에지들이 검출될 수 있다.
115에서, 이미지에서 검출된 기준 피처(들)와 연관된 하나 또는 그 초과의 공간 특성들 및/또는 하나 또는 그 초과의 대응하는 실세계 공간 특성들에 기초하여 변환이 결정될 수 있다. 변환은 확대, 회전 변환, 병진 변환 및/또는 렌즈 왜곡 보정을 포함할 수 있다. 변환은 호모그래피를 포함할 수 있거나, 그리고/또는 임의의 원근 왜곡을 완화할 수 있거나 또는 적어도 부분적으로 설명할 수 있다. 변환은, 이미징 디바이스에 내재적인 내재적 파라미터들(예컨대, 초점 길이와 같은 파라미터들을 설명함), 및/또는 이미징되고 있는 장면에 따라 좌우되는 외재적 파라미터들(예컨대, 카메라 각도 또는 포지션을 설명함)을 포함할 수 있다. 변환은 카메라 행렬, 회전 행렬, 병진 행렬, 및/또는 공동 회전-병진 행렬을 포함할 수 있다.
변환은 이미지 공간(예컨대, 이미지와 연관된 이차원 좌표 공간)과 실세계 공간(예컨대, 실세계 거리들, 면적들 등등을 식별하는 이차원 또는 삼차원 좌표 공간) 사이의 변환을 포함할 수 있다. 변환은, 하나 또는 그 초과의 기준 피처(들)와 연관된 이미지-기반 공간 특성(예컨대, 좌표, 거리, 형상 등등)을 다른 공간(예컨대, 피처들 사이의 실세계 거리들과 연관됨)으로 변환시킬 변환을 결정함으로써 결정될 수 있다. 예컨대, 특정 직사각형 기준 객체의 네 개의 코너들의 이미지-기반 포지션들이 방법(100)의 110에서 검출될 수 있다. 이미지를 캡쳐하는데 사용되는 이미징 디바이스의 포지션, 회전 및/또는 틸트로 인해, 객체는 틸팅되는 것으로 그리고/또는 (예컨대, 사다리꼴로서 보이는 대신에) 비-직사각형으로 보일 수 있다. 이미지에 기초한 공간 특성들과 대응하는 실제 공간 특성들(예컨대, 각각이 하나 또는 그 초과의 기준 피처들과 연관됨) 사이의 형상들의 차이는 적어도 부분적으로 원근 왜곡(예컨대, 이미징 디바이스의 각도, 포지션 및/또는 초점 길이에 기초함)에 기인할 수 있다. 변환은, 원근 왜곡을 보정하기 위해 결정될 수 있다. 예컨대, 기준 피처들은 직사각형 기준-객체 카드의 에지들을 포함할 수 있다. 에지들은, 사다리꼴에 대한 이미지-기반 에지들의 결합과 같은 이미지-기반 공간 특성들과 연관될 수 있다. 이미지-기반 공간 특성들을 변환시키는 것은, 변환된 에지들을 생성할 수 있고, 상기 변환된 에지들은 (예컨대, 기준-객체 카드의 실세계 크기에 대응하는 크기의) 직사각형을 형성한다. 예컨대, 코너 1의 이미지-기반 치수들은 변환된 좌표들 (0, 0)에 맵핑될 수 있고; 코너 2의 치수들은 좌표들 (3.21, 0)에 맵핑될 수 있고 등등이다 ― 도 2를 보라 ―.
공식 1- 공식 3은, 이차원 이미지-기반 좌표들 (p, q)이 이차원 실세계 좌표들 (x, y)로 어떻게 변환될 수 있는지의 예를 나타낸다. 공식 1에서, 이미지-기반 좌표들 (p, q)은, 회전-관련 변수들(r11-r32), 병진-관련 변수들(tx-tz), 그리고 카메라-기반 또는 원근-투영 변수들(f)을 이용하여 변환된다. 공식 2는 공식 1의 단순화된 버전이고, 공식 3은 변수들을 새로운 호모그래피 변수들(h11-h33)로 결합시킨다.
공식 1:
Figure pct00001
공식 2:
Figure pct00002
공식 3:
Figure pct00003
다수의 이미지 지점들이 이러한 방식으로 변환될 수 있다. 아래에서 더욱 상세히 설명되는 바와 같이, 변환된 지점들 사이의 거리들은 실제 실세계 거리들에 대응할 수 있다.
방법(100)의 110에서 검출된 기준 피처(들)는 공식 3의 호모그래피 변수들을 결정하는데 사용될 수 있다. 몇몇 예들에서, 이미지가 먼저 프리컨디셔닝되거나, 또는 하나 또는 그 초과의 기준 피처들(예컨대, 하나 또는 그 초과의 이미지-기반 좌표들에 대응함)이 먼저 프리컨디셔닝된다. 예컨대, 프리-컨디셔닝 병진이 식별될 수 있거나(예컨대, 이미지의 도심으로 하여금 원점 좌표로 병진되도록 유발할 프리-컨디셔닝 병진으로서), 그리고/또는 프리-컨디셔닝 스케일링 팩터(scaling factor)가 식별될 수 있다(예컨대, 그래서 이미지의 좌표들과 중심 사이의 평균 거리가 2의 제곱근이 됨). 그런 다음, 프리-컨디셔닝 병진 및/또는 프리-컨디셔닝 스케일링 팩터를 적용함으로써, 검출된 기준 피처(들)와 연관된 하나 또는 그 초과의 이미지-기반 공간 특성들(예컨대, 좌표들)이 프리컨디셔닝될 수 있다.
몇몇 실시예들에서, 호모그래피 변수(h33)가 1로 셋팅될 수 있거나, 또는 호모그래피 변수들의 제곱들의 합이 1로 셋팅될 수 있다. 그런 다음, (기준 피처(들)와 연관된 좌표들을 이용하여) 공식 3을 풂으로써 다른 호모그래피 변수들이 식별될 수 있다. 예컨대, 공식 4는, 공식 3이 네 개의 실세계 지점들(x1, y1) 내지 (x4, y4) 및 네 개의 이미지-기반 지점들 (x'1, y'1) 내지 (x'4, y'4) 각각에 어떻게 적용될 수 있는지, 그리고 그런 다음 단일 공식으로서 어떻게 결합될 수 있는지를 나타낸다.
공식 4:
Figure pct00004
단순화된 행렬 형태로, 공식 4는 아래와 같이 표현될 수 있다:
공식 5:
Figure pct00005
공식 5는 선형 시스템 솔버(solver)에 의해 또는
Figure pct00006
로서 풀릴 수 있다. 호모그래피 변수들의 제곱들의 합이 1로 셋팅된다면, 공식 5는 예컨대, 단일-값 분해를 이용하여 풀릴 수 있다.
아래에서 추가로 상세화되는 바와 같이, 관심 있는 거리를 식별하는 사용자로부터 입력이 수신될 수 있다. 입력은 이미지 공간에서 획득될 수 있다. 예컨대, 사용자는, 캡쳐된 및/또는 디스플레이된 이미지에서 관심 있는 종점들을 식별하기 위해, 입력 컴포넌트(예컨대, 터치스크린, 마우스 등등)를 사용할 수 있다. 다른 예로서, 사용자가 특정 방향을 따라서 관심 있는 거리를 식별할 수 있도록, 사용자는 가상 자를 회전시킬 수 있다. 거리는 추정될 수 있다. 몇몇 예들에서, 거리의 추정은, 구체적으로 식별된 거리의 명확하고 특정한 추정에 이른다. 예컨대, 사용자는 관심 있는 거리가 두 개의 종점들 사이의 거리임을 표시할 수 있고, 그 이후에 상기 거리가 추정 및 제시될 수 있다. 몇몇 예들에서, 거리의 추정인 덜 명시적이다. 예컨대, 사용자가 가상 자의 배향을 식별한 이후, 상기 가상 자가 생성 또는 재-생성될 수 있다. 그런 다음, 사용자는, 예컨대 제시된 가상 자 상의 마킹들을 이용하여, 특정 거리를 식별할 수 있다. 방법(100)에서, 120-125는 사용자 입력에 기초한 하나의 타입의 거리 추정(예컨대, 대화식 가상 자의 생성)을 예시하고, 130-140은 사용자 입력에 기초한 다른 타입의 거리 추정(예컨대, 사용자-입력의 출발점과 정지점 사이의 실세계 거리를 추정)을 예시한다. 이러한 예들은 예시적이다. 다른 타입들의 사용자 입력들 및 추정들이 수행될 수 있다. 몇몇 예들에서, 120-125 및 130-140 중 단 한 개만이 수행된다.
방법(100)의 120-140에서, 이미지에서의 거리와 실세계 거리 사이의 대응을 추정하고 사용자에게 제시하는데 변환이 사용될 수 있다. 예컨대, 이러한 표시는, (예컨대, 두 개의 사용자-식별된 지점들 사이의 거리를 추정하기 위해) 변환을 이미지-기반 좌표들 및/또는 거리들에 적용하는 것, 그리고/또는 (예컨대, 사용자가 이미지의 대부분 또는 전부와 함께 제시된 스케일링 바를 보도록 하기 위해) 변환의 인버스를 적용하는 것을 포함할 수 있다.
120에서, 자는 디스플레이 상에 중첩될 수 있다. 자는 캡쳐된 이미지에서의 거리에 대응하는 실시계 거리를 식별할 수 있다. 예컨대, 자는 기준 객체의 표면의 평면을 따르는 거리에 대응하는 실세계 거리를 식별할 수 있다. 115에서 식별된 변환에 기초하여, 대응이 식별될 수 있다. 예컨대, 식별된 호모그래피 또는 변환 행렬의 인버스가 자의 측정 마커들에 대응하는 실세계 좌표들에 적용될 수 있다.
자는 하나 또는 그 초과의 라인들 및/또는 하나 또는 그 초과의 마킹들(예컨대, 틱 마크들)을 포함할 수 있다. 하나 또는 그 초과의 마킹들 사이의 거리들이 실세계 거리에 대응하는 것으로서 식별될 수 있다. 예컨대, 자 상에 텍스트가 제시될 수 있다(예컨대, "1", "2", "1 ㎝", "안(in)" 등등). 다른 예로서, 사용자는, 틱 마크들 사이의 거리가 특정 단위 척도(예컨대, 인치, 센티미터, 피트 등등)에 대응함을 통보받을 수 있다. 정보는 디스플레이 상에 텍스트로 제시될 수 있거나, 스케일 바로서 제시될 수 있거나, 셋팅으로서 포함될 수 있거나 등등일 수 있다.
각각의 쌍의 인접한 틱 마크들 사이의 거리들은 고정된 실세계 거리에 대응하는 것으로서 명시적으로 또는 암시적으로 식별될 수 있다(예컨대, 그래서 각각의 쌍의 인접한 틱 마크들 사이의 거리들은, 심지어 마크들 사이의 절대 이미지-기반 거리들이 자를 따르는 포지션에 따라 상이할 수 있더라도, 실세계의 일 인치에 대응함). 몇몇 예들에서, 이미지-기반 마크-간 거리들과 연관된 실세계 거리는 이미징된 장면의 크기에 기초하여 결정될 수 있다. (예컨대, 장면들 전부에 걸쳐 표준 SI 단위가 사용될 수 있지만, 특정 단위는 더 작은 이미징된 장면들에 대해 더 작은 단위, 예컨대 센티미터, 그리고 더 큰 이미징된 장면들에 대해 더 큰 단위, 예컨대 미터일 수 있다.) 몇몇 예들에서, 사용자는 마크-간 이미징-기반 거리들과 연관된 실세계 거리를 셋팅할 수 있다.
자는 (예컨대, 모바일 디바이스 또는 이미징 디바이스 상에서) 디스플레이 스크린의 일부분 또는 전부에 걸쳐 확장될 수 있다. 일 예에서, 자의 길이는 실세계 거리에 기초하여 결정된다(예컨대, 그래서 자의 대응하는 실세계 거리는 1 인치, 1 피트, 1 야드, 1 미터, 1 킬로미터 등등임). 자는 부분적으로 투명할 수 있거나 또는 그렇지 않을 수 있다. 자는 통상적인 자로서 보일 수 있거나 또는 그렇지 않을 수 있다. 몇몇 실시예들에서, 자는 일련의 도트들, 일련의 틱들, 하나 또는 그 초과의 스케일 바들, 줄자 등등으로서 보일 수 있다. 몇몇 예들에서(그러나, 다른 예들은 아님), 자의 존재로 인해, 장면의 이미지의 적어도 일부가 흐릿하거나 또는 보이지 않는다.
125에서, 사용자는, 자와 상호작용하도록 허용받을 수 있다. 예컨대, 사용자는 자를 확대시키거나 또는 수축시킬 수 있다. 예컨대, 실세계의 12 인치에 대응하는 자가 실세계의 14 인치에 대응하는 자로 확대될 수 있다. 사용자는, 예컨대 전체 자를 수평으로 또는 수직으로 움직임으로써 또는 자를 회전시킴으로써, 자를 움직일 수 있다. 몇몇 실시예들에서, 사용자는, 자의 끝 또는 중심을 새로운 위치로 드래그함으로써 자와 상호작용할 수 있다. 몇몇 실시예들에서, 사용자는 셋팅들을 통해 자와 상호작용할 수 있다(예컨대, 자의 위치를 재결정하기 위해, 측정 단위들을 셋팅하기 위해, 자 길이를 셋팅하기 위해, 디스플레이 특징들을 셋팅하기 위해 등등).
몇몇 실시예들에서, 틱-간 이미지-기반 거리들이 상호작용 이후에 변한다. 예컨대, 사용자가 수직 배향으로부터 수평 배향으로 자를 회전시키면, 회전은 틱 마크들 사이의 거리들로 하여금 더욱 균일하게 되도록 한다(예컨대, 그 이유는 카메라 틸트가 수직으로 배향된 자에 대해 더욱 고르지 않은 공간을 요구할 수 있기 때문임). 몇몇 실시예들에서, 틱-간 실세계-기반 거리들이 상호작용 이후에 변한다. 예컨대, "1 인치"의 틱-간 실세계 거리는, 자가 수평으로 배향될 때 1 ㎝의 이미지-기반 틱-간 거리에 대응할 수 있지만, 자가 수직으로 배향될 때 0.1 ㎝의 이미지-기반 틱-간 거리에 대응할 수 있다. 따라서, 수평-대-수직 회전시, 사용자가 자를 이용하여 치수들 또는 거리들을 더욱 쉽게 추정하도록 하기 위해 자에 관한 스케일링이 자동으로 가변될 수 있다.
방법(100)의 130에서, 측정 지점들 또는 종점들의 사용자 입력들이 수신될 수 있다. 예컨대, 사용자는 (예컨대, 출발점 및 정지점에서 디스플레이 스크린을 터치함으로써, 출발점 및 정지점을 클릭함으로써, 또는 지점들을 다른 방식으로 식별함으로써) 이미지-기반 출발점과 이미지-기반 정지점을 식별할 수 있다. 몇몇 실시예들에서, 이러한 지점들 각각은 이미지 공간의 좌표들에 대응한다.
135에서, 실세계 거리가 사용자 측정-지점 입력들에 기초하여 추정될 수 있다. 예컨대, 사용자 입력은 출발점 및 정지점을 포함할 수 있고, 출발점 및 정지점 각각은 이차원 이미지-공간 좌표들과 연관된다. 115에서 결정된 변환이 각각의 지점에 적용될 수 있다. 그런 다음, 변환된 지점들 사이의 거리가 추정될 수 있다. 각각의 지점이 기준 객체의 표면의 평면을 따라서 있는 것으로 가정될 때, 이러한 거리는 두 개의 지점들 사이의 실세계 거리의 추정치일 수 있다.
140에서, 추정된 거리가 출력된다. 예컨대, 거리는, 출발점 및 정지점이 식별된 이후(예컨대, 거의 직후), 사용자에게 제시 또는 디스플레이될 수 있다.
몇몇 실시예들에서, 방법(100)은 120-125를 포함하지 않거나, 그리고/또는 130-140을 포함하지 않는다. 다른 변이들이 또한 고려된다.
115에서 결정된 변환들은 도 1에 도시되지 않은 다른 애플리케이션들에 적용될 수 있다. 예컨대, (예컨대, 비어 있는 바닥 공간의) 실세계 거리가 계산될 수 있고, 사용자는 이미징된 셋팅이 다른 객체를 포함하도록 늘려질 수 있는지에 관해 통보받을 수 있다. 일 특정 예로서, 거실의 이미지가 캡쳐될 수 있다. 기준 객체가 방의 바닥 상에 배치될 수 있고, 변환이 결정될 수 있으며, 벽에 가까이 비어 있는 공간의 거리가 식별될 수 있다. (가게 안의) 긴 의자의 이미지가 캡쳐될 수 있다. 기준 객체가 바닥 상에 배치될 수 있고, 다른 변환이 결정될 수 있으며, 의자의 바닥 치수가 결정될 수 있다. 그런 다음, 의자가 거실의 비어 있는 공간에 맞을지가 결정될 수 있다. 몇몇 예들에서, 객체가 맞을 때, 늘려진 셋팅이 디스플레이될 수 있다.
도 3a는 실세계 거리를 추정하기 위한 시스템의 예를 도시한다. 이러한 실시예에서, 기준 객체는 카드(305)를 포함한다. 기준 객체는 테이블(310) 상에 배치된다. 카드의 코너들(315)이 기준 피처들로서 검출된다. 따라서, 코너들 각각이 검출될 수 있고, 이미지-기반 좌표들과 연관될 수 있다. 이러한 좌표들 및 카드의 알려진 공간 특성들(예컨대, 치수들)을 이용하여, 변환이 결정될 수 있다. 그런 다음, 사용자는, 디스플레이 스크린을 터치함으로써 출발점(320a) 및 정지점(320b)을 식별할 수 있다. 그 이후에, 커서 마커들이 이러한 위치들에 디스플레이된다. 결정된 변환을 이용하여, 출발점과 정지점 사이의 실세계 거리가 추정될 수 있다. 이러한 추정치는, 두 개의 지점들이 카드의 표면의 평면을 따른다는 가정에 기초할 수 있다. 스크린은, 결정된 실세계 거리에 관해 사용자에게 통보하는 거리 디스플레이(325)를 포함한다. 도시된 바와 같이, 거리 디스플레이(325)는 거리의 수치 추정치("3.296321"), 제시되고 있는 것의 설명("객체 길이"), 및/또는 단위들("인치들")을 포함할 수 있다.
또한, 도 3a는 사용자에게 이용가능한 다수의 다른 옵션들을 도시한다. 예컨대, 사용자는, 예컨대 줌 피처들(330)을 이용하여, 이미지를 줌 인 또는 줌 아웃할 수 있다. 줌 이후 변환이 재계산될 수 있거나, 또는 줌에 의해 수행된 알려진 확대 스케일에 기초하여 변환이 조정될 수 있다. 일 실시예에서, 사용자는, (예컨대, 이미지 캡쳐 옵션(335)을 선택함으로써) 새로운 이미지가 캡쳐될 때를 액티브하게 표시할 수 있다. 몇몇 실시예들에서, 어떤 시간 기간 동안(예컨대, 프로그램이 동작중일 동안) 이미지들이 연속적으로 또는 규칙적으로 캡쳐된다.
사용자는, 예컨대 각각의 지점을 새로운 위치로 드래그 및 드롭함으로써, 또는 (예컨대, 지점들 삭제 옵션(340)을 이용하여) 지점들을 삭제하고 새로운 지점들을 생성함으로써, 측정 지점들(예컨대, 정지점 및 출발점)을 수정할 수 있다. 사용자는, (예컨대, 측정-특성들 피처(345)를 이용하여) 측정 특성들을 셋팅하도록 허용받을 수 있다. 예컨대, 사용자는 척도 단위들, 도시된 신뢰 메트릭들 등등을 식별할 수 있다. 또한, 사용자는 (예컨대, 자 디스플레이 옵션(350)을 이용하여) 자를 나타내거나 또는 숨길 수 있다.
도 3b는 실세계 거리를 추정하기 위한 시스템의 예를 도시한다. 이러한 실시예는 도 3a에 도시된 실시예와 유사하다. 하나의 차이는 부가적인 자(360)가 나타난다는 것이다. 도 3b는 디스플레이될 수 있는 상이한 타입들의 자들을 강조한다. 일 실시예에서, 자는 보이지 않는 라인을 따라서 확장되는 일련의 마킹들로 구성될 수 있다. 예컨대, 도 3a 및 도 3b에서, 자(355a)이든 또는 자(355b)이든 인접한 도트들 사이의 각각의 거리는 (예컨대, 1 인치의) 고정된 실세계 거리에 대응할 수 있다. 자는 전체 이미지를 확장시킬 수 있거나 또는 그렇지 않을 수 있다. 도 3a 및 도 3b는 두 개의 보이지 않는-라인 자들(355a 및 355b)의 예들을 도시한다. 이러한 실시예에서, 자들은 초기에 기준 카드(305)의 경계들을 따라서 포지셔닝되고, 그래서 두 개의 자들(355a 및 355b)은 수직 실세계 방향들에 대응하는 방향들을 표현한다. 자의 초기 포지션은, 기준 객체와 접하는, 이미지 에지에 평행한, 실-공간에서 다른 자에 수직인, 이미지-공간에서 다른 자에 수직인, 이미지의 중심과 교차하는 등등의 포지션일 수 있다.
도 3b는 다른 자(360)를 도시한다. 이러한 자의 외양은 통상적인 자와 유사하다. 자(360)는 투명할 수 있고, 그래서 사용자가 밑에 있는 이미지를 볼 수 있다. 자(360)는 다시, 일련의 마킹들을 가질 수 있고, 인접한 마킹들 사이의 거리들은 고정된 실세계 거리(예컨대, 1 인치)에 대응할 수 있다. 도시되지 않았지만, 자는 (예컨대, 하나 또는 그 초과의 마킹들, 또는 마킹들 전부와 연관된) 숫자들, 및/또는 (예컨대, 척도 단위들을 표시하는) 텍스트를 포함할 수 있다. 자(360)의 마킹들은 스케일링되지 않지만, 종종, 이미지들 거리들과 연관된 실세계 거리들을 식별하는 것이 단일 스케일링 팩터를 식별하는 것보다 더욱 복잡하다는 사실을 강조하도록 도시된다. 예컨대, 이미징 디바이스는 관심 있는 평면에 대하여 틸팅될 수 있다. 따라서, 인접한 마킹들 사이의 거리들이 고정된 실세계 거리에 대응함을 표시하는 방식으로 마킹들이 디스플레이된다면, 마킹들 사이의 이미지-기반 거리들은 자의 길이를 따라서 변할 수 있다.
몇몇 예들에서, (예컨대, 자(355)와 유사한 또는 자(360)와 유사한) 단 한 개의 타입의 자가 제시된다. 몇몇 예들에서, (동일한 또는 상이한 타입의) 다수의 자들이 제시된다. 예컨대, 도 3b에서, 두 개의 자들(355)이 도시된다. 이는, 사용자가, 다수의 방향들을 따라서 치수들 또는 거리들을 동시에 추정하도록 허용할 수 있다. 몇몇 예들에서, 자들을 그들의 교차점에서 분리시키는 이미지-기반 각도와 연관된 실세계 각도가 고정되는 방식으로 다수의 자들이 제시된다. 예컨대, 자들은 상기 자들이 항상 실세계에서 수직인 방향들을 따라서 추정된 거리들을 식별하고 있도록 제시될 수 있다.
도 4는 실시예에 따라 실세계 거리를 추정하기 위한 시스템(400)을 도시한다. 시스템은, 전자 디바이스, 휴대용 디바이스 및/또는 모바일 디바이스(예컨대, 셀룰러 폰, 스마트폰, 퍼스널 디지털 어시스턴트, 태블릿 컴퓨터, 랩톱 컴퓨터, 디지털 카메라, 핸드헬드 게임 디바이스 등등)일 수 있는 디바이스를 포함할 수 있다. 도시된 바와 같이, 시스템(400)은 사용자(410)에 의해 사용될 수 있는 디바이스(405)(예컨대, 모바일 디바이스 또는 셀룰러 폰)를 포함한다. 디바이스(405)는, 상기 디바이스가 데이터 및/또는 음성 통신들을 전송 그리고/또는 수신하도록 허용할 수 있는 트랜시버(415)를 포함할 수 있다. 디바이스(405)는 (예컨대, 트랜시버(415)를 통해) 네트워크(420)(예컨대, 무선 네트워크 및/또는 인터넷)에 연결될 수 있다. 무선 네트워크를 통해, 디바이스(405)는 외부 서버(425)와 통신할 수 있다.
디바이스(405)는 마이크로폰(430)을 포함할 수 있다. 마이크로폰(430)은 디바이스(405)가 디바이스의 주위의 물리적 환경으로부터 오디오 데이터를 수집 또는 캡쳐하도록 허용할 수 있다. 디바이스(405)는, (예컨대, 호 동안에 다른 디바이스에 있는 사용자로부터 수신된, 또는 사용자(410)에게 지시 또는 통보하기 위해 디바이스에 의해 생성된) 오디오 데이터를 방출하기 위한 스피커(435)를 포함할 수 있다. 디바이스(405)는 디스플레이(440)를 포함할 수 있다. 디스플레이(440)는 도 3a-도 3b에서 도시된 것과 같은 디스플레이를 포함할 수 있다. 디스플레이(440)는 실시간 또는 비-실시간 이미지들을 사용자(410)에게 제시할 수 있고, (예컨대, 사용자-입력 종점들에 기초하여 결정된 거리를 디스플레이함으로써 또는 자를 이미지 상에 중첩시킴으로써) 이미지를 따르는 거리와 연관된 실세계 거리를 사용자에게 통보할 수 있다. 디스플레이(440)는 (예컨대, 사용자(410)가 이미지를 캡쳐하도록, 이미지 상에 중첩된 실세계-거리 자를 보도록, 자를 이동시키도록, 이미지에서 측정 종점들을 식별하도록 등등을 허용하기 위해) 사용자(410)에게 상호작용 옵션들을 제시할 수 있다. 디바이스(405)는 사용자-입력 컴포넌트들(445)을 포함할 수 있다. 사용자-입력 컴포넌트들(445)은 예컨대 버튼들, 키보드, 숫자 패드, 터치 스크린, 마우스 등등을 포함할 수 있다. 사용자-입력 컴포넌트들(445)은, 예컨대 사용자(410)가 자를 이동시키도록, 셋팅(예컨대, 자 또는 측정 셋팅)을 수정하도록, 측정 종점들을 식별하도록, 새로운 이미지를 캡쳐하도록 등등을 허용할 수 있다. 도시되지 않았지만, 디바이스(405)는 또한 이미징 컴포넌트(예컨대, 카메라)를 포함할 수 있다. 이미징 컴포넌트는 예컨대 렌즈, 광원 등등을 포함할 수 있다.
디바이스(405)는 프로세서(450)를 포함할 수 있거나, 그리고/또는 디바이스(405)는 프로세서(455)를 갖는 외부 서버(425)에 커플링될 수 있다. 프로세서(들)(450 및/또는 455)는 임의의 위에서-설명된 프로세스들 중 일부 또는 전부를 수행할 수 있다. 몇몇 예들에서, (예컨대, 실세계 거리들을 결정하기 위한) 변환의 식별 및/또는 적용이 디바이스(405) 상에서 로컬로 수행된다. 몇몇 예들에서, 외부 서버의 프로세서(455)는 변환을 결정 그리고/또는 적용할 때 수반되지 않는다. 몇몇 실시예들에서, 프로세서들(450 및 455) 둘 다가 수반된다.
디바이스(405)는 스토리지 디바이스(460)를 포함할 수 있거나, 그리고/또는 디바이스(405)는 스토리지 디바이스(465)를 갖는 외부 서버(425)에 커플링될 수 있다. 스토리지 디바이스(들)(460 및/또는 465)는, 예컨대 이미지들, 기준 데이터(예컨대, 기준 피처들 및/또는 기준-객체 치수들), 카메라 셋팅들, 및/또는 변환들을 저장할 수 있다. 예컨대, 이미지들은 ?벼될 수 있고 이미지 데이터베이스(480)에 저장될 수 있다. 이미지에서 검출될 기준 피처들을 표시하는 기준 데이터, 및 피처들에 관련된 실세계 거리 데이터(예컨대, 거리 분리)가 기준 데이터베이스(470)에 저장될 수 있다. 기준 데이터 및 이미지를 사용하여, 프로세서(450 및/또는 455)는 변환을 결정할 수 있고, 그런 다음 상기 변환이 변환 데이터베이스(475)에 저장될 수 있다. 변환을 이용하여, 가상 자가 이미지 상에 중첩될 수 있고 사용자(410)에게 디스플레이될 수 있거나, 그리고/또는 (예컨대, 사용자-정의된) 이미지 거리들에 대응하는 실세계 거리들이 (예컨대, 프로세서(450 및/또는 455)에 의해) 결정될 수 있다.
도 5는 실시예에 따라 실세계 거리를 추정하기 위한 시스템(500)을 도시한다. 시스템(500)의 일부 또는 전부가 디바이스, 예컨대 전자 디바이스, 휴대용 디바이스 및/또는 모바일 디바이스에 포함될 수 있다. 몇몇 예들에서, 시스템(500)의 일부가 원격 서버에 포함된다.
시스템(500)은 이미징 디바이스(505)를 포함한다. 이미징 디바이스(505)는 예컨대 카메라를 포함할 수 있다. 이미징 디바이스(505)는 장면을 시각적으로 이미징하도록 그리고 이로써 이미지들을 획득하도록 구성될 수 있다. 따라서, 예컨대, 이미징 디바이스(505)는 렌즈, 라이트(light) 등등을 포함할 수 있다.
이미징 디바이스(505)에 의해 획득된 하나 또는 그 초과의 이미지들이 이미지 데이터베이스(510)에 저장될 수 있다. 예컨대, 이미징 디바이스(505)에 의해 캡쳐된 이미지들이 디지털 이미지들을 포함할 수 있고, 디지털 이미지들에 대응하는 전자 정보 및/또는 디지털 이미지들 자체들이 이미지 데이터베이스(510)에 저장될 수 있다. 이미지들은, 사용자 삭제 전까지, 이미징 디바이스(505)가 다른 이미지를 캡쳐할 때까지 등등까지, 고정 시간 기간 동안 저장될 수 있다.
캡쳐 이미지는 이미지 분석기(515)에 의해 분석될 수 있다. 이미지 분석기(515)는 이미지 프리-프로세서(520)를 포함할 수 있다. 이미지 프리-프로세서(520)는, 예컨대 이미지의 대비, 밝기, 색 분포들 등등을 조정할 수 있다. 프리-프로세싱된 이미지는 기준-피처 검출기(525)에 의해 분석될 수 있다. 기준-피처 검출기(525)는 예컨대 에지 검출기 또는 대비 분석기를 포함할 수 있다. 기준-피처 검출기(525)는 에지들, 코너들, 특정 패턴들 등등을 검출하려고 시도할 수 있다. 특히, 기준-피처 검출기(525)는 이미지에 있는 기준 객체 또는 기준 객체들의 하나 또는 그 초과의 일부분들에 대해 시도할 수 있다. 몇몇 실시예들에서, 기준-피처 검출기(525)는 사용자-입력 분석기를 포함한다. 예컨대, 기준-피처 검출기(525)는, 기준 피처들의 이미지 위치들을 식별하기 위해, 입력을 수신하기 위해 그리고 이미지를 원하는 유닛들 및 포맷으로 변환하기 위한 임의의 필요한 변환들을 수행하기 위해 사용자가 입력 디바이스(예컨대, 터치 스크린)를 사용하도록 지시받았음을 식별할 수 있다. 기준-피처 검출기는 하나 또는 그 초과의 이미지-기반 공간 특성들(예컨대, 좌표들, 길이들, 형상들 등등)을 출력할 수 있다.
하나 또는 그 초과의 이미지-기반 공간 특성들은 변환 식별자(530)에 의해 분석될 수 있다. 변환 식별자(530)는 기준-피처 데이터베이스(535)를 포함할 수 있다. 기준-피처 데이터베이스(535)는 기준 객체와 연관된 실세계 공간 특성들을 포함할 수 있다. 변환 식별자(530)는 기준-피처 연관자(540)를 포함할 수 있고, 상기 기준-피처 연관자(540)는 (기준-피처 검출기(525)에 의해 출력된) 하나 또는 그 초과의 이미지-기반 공간-특성들을, (기준-피처 데이터베이스(535)로부터 식별된) 하나 또는 그 초과의 실세계-기반 공간-특성들과 연관시킨다. 몇몇 예들에서, 피처들의 정확한 대응은 필수적이지 않다. 예컨대, 기준 피처들이 직사각형 카드의 네 개의 에지들에 대응한다면, 이미지-기반 에지들 중 어느 것이 실세계-기반의 "긴" 에지에 대응하는지를 인지하는 것이 충분할 수 있다(그리고 하나의 긴 에지를 다른 에지로부터 구별하는 것은 필수적이지 않다). 이미지-기반 공간 특성들 및 연관된 실세계-기반 공간 특성들을 이용하여, 변환 식별자(530)는 변환(예컨대, 호모그래피)을 결정할 수 있다.
변환은, 본원에서 설명된 자와 같은 자를 생성하기 위한 자 생성기(550)에 의해 사용될 수 있다. 생성된 자는, (예컨대, 기준 객체의 표면의 평면을 따르는) 이미지 내의 거리들에 대응하는 실세계 거리들을 식별할 수 있다. 자는 디스플레이(560) 상에서 디스플레이될 수 있다. 디스플레이(560)는 추가로, 캡쳐된 이미지 ― 이미징 디바이스(505)에 의해 초기에 캡쳐되고, 이미지 데이터베이스(510)에 저장됨 ― 를 디스플레이할 수 있다. 몇몇 예들에서, 디스플레이(560)는 현재 이미지(예컨대, 기준 피처들의 검출 또는 변환의 식별 동안 사용되는 이미지가 아님)를 디스플레이한다. (변환들은, 예컨대 검출된 디바이스 움직임에 기초하여, 고정된 채로 유지될 수 있거나 또는 조정될 수 있다.) 자는 디스플레이된 이미지 상에 중첩될 수 있다. 사용자 입력이 사용자 입력 컴포넌트(555)를 통해 수신될 수 있고, 그래서 사용자는 생성된 자와 상호작용할 수 있다. 예컨대, 사용자는 자를 회전시킬 수 있고, 자를 확대시킬 수 있고 등등이다. 사용자 입력 컴포넌트(555)는 (예컨대, 터치스크린으로서) 디스플레이와 통합될 수 있거나 또는 통합되지 않을 수 있다.
몇몇 예들에서, 거리 추정기(545)는 이미지-기반 거리와 연관된 실세계 거리를 추정할 수 있다. 예컨대, 사용자는 (사용자 입력 컴포넌트를 통해) 디스플레이된 이미지에서 출발점과 정지점을 식별할 수 있다. 변환 식별자(530)에 의해 식별된 변환을 이용하여, (기준 객체의 표면의 평면을 따르는) 이러한 지점들 사이의 추정된 실세계 거리가 추정될 수 있다. 추정된 거리는 디스플레이(560) 상에서 디스플레이될 수 있다.
몇몇 예들에서, 이미징 디바이스(505)는 이미지들을 반복적으로 캡쳐하고, 이미지 분석기는 이미지들을 반복적으로 분석하고, 변환 식별자는 변환들을 반족적으로 식별한다. 따라서, 실시간 또는 유사-실시간 이미지들이 디스플레이(560) 상에서 디스플레이될 수 있고, 중첩된 자 또는 추정된 거리가 자주 업데이트되는 변환들에 기초하여 더욱 정확한 채로 유지될 수 있다.
도 6에 예시된 바와 같은 컴퓨터 시스템은 앞서 설명된 컴퓨터화된 디바이스들의 일부로서 통합될 수 있다. 예컨대, 컴퓨터 시스템(600)은 본 출원에서 논의된 모바일 디바이스들 및/또는 원격 컴퓨터 시스템들의 컴포넌트들 중 몇몇을 표현할 수 있다. 도 6은 컴퓨터 시스템(600)의 일 실시예의 개략적인 예시를 제공하고, 상기 컴퓨터 시스템(600)은 본원에 설명된 바와 같은 다양한 다른 실시예들에 의해 제공되는 방법들을 수행할 수 있거나, 그리고/또는 외부 서버(425) 및/또는 디바이스(405)로서 기능할 수 있다. 도 6이 다양한 컴포넌트들 ― 상기 다양한 컴포넌트들 중 임의의 컴포넌트 또는 전부가 적절한 대로 활용될 수 있음 ― 의 일반화된 예시만을 제공하려고 함이 주의되어야 한다. 그러므로, 도 6은 개별 시스템 엘리먼트들이 비교적 분리된 또는 비교적 더욱 통합된 방식으로 어떻게 구현될 수 있는지를 폭넓게 예시한다.
버스(605)를 통해 전기적으로 커플링될 수 있는(또는 적절한 대로 다른 방식으로 통신할 수 있는) 하드웨어 엘리먼트들을 포함하는 컴퓨터 시스템(600)이 도시된다. 하드웨어 엘리먼트들은, 제한 없이 하나 또는 그 초과의 일반-목적 프로세서들 및/또는 하나 또는 그 초과의 특별-목적 프로세서들(예컨대, 디지털 신호 프로세싱 칩들, 그래픽스 가속 프로세서들, 및/또는 유사 종류)을 포함한 하나 또는 그 초과의 프로세서들(610); 제한 없이 마우스, 키보드 및/또는 유사 종류를 포함할 수 있는 하나 또는 그 초과의 입력 디바이스들(615); 및 제한 없이 디스플레이 디바이스, 프린터 및/또는 유사 종류를 포함할 수 있는 하나 또는 그 초과의 출력 디바이스들(620)을 포함할 수 있다.
컴퓨터 시스템(600)은 하나 또는 그 초과의 스토리지 디바이스들(625)을 더 포함할 수 있고(그리고/또는 상기 하나 또는 그 초과의 스토리지 디바이스들(625)과 통신할 수 있고), 상기 하나 또는 그 초과의 스토리지 디바이스들(625)은, 제한 없이, 로컬 및/또는 네트워크 액세스 가능한 스토리지를 포함할 수 있거나, 그리고/또는 제한 없이 디스크 드라이브, 드라이브 어레이, 광학 스토리지 디바이스, 고체-상태 스토리지 디바이스, 예컨대 프로그래밍 가능할 수 있거나, 플래시-업데이트 가능할 수 있거나 그리고/또는 유사 종류가 가능할 수 있는 랜덤 액세스 메모리("RAM") 및/또는 읽기-전용 메모리("ROM")를 포함할 수 있다. 그러한 스토리지 디바이스들은, 제한 없이 다양한 파일 시스템들, 데이터베이스 구조들, 및/또는 유사 종류를 포함한 임의의 적절한 데이터 스토어들을 구현하도록 구성될 수 있다.
또한, 컴퓨터 시스템(600)은 통신 서브시스템(630)을 포함할 수 있고, 상기 통신 서브시스템(630)은 제한 없이 모뎀, 네트워크 카드(무선 또는 유선), 적외선 통신 디바이스, 무선 통신 디바이스 및/또는 칩셋(예컨대, BluetoothTM 디바이스, 802.11 디바이스, WiFi 디바이스, WiMax 디바이스, 셀룰러 통신 설비들 등등), 및/또는 유사 종류를 포함할 수 있다. 통신 서브시스템(630)은 네트워크(예컨대, 일 예를 들면 아래에 설명되는 네트워크), 다른 컴퓨터 시스템들, 및/또는 본원에 설명된 임의의 다른 디바이스들을 이용하여 데이터가 교환되도록 허용할 수 있다. 많은 실시예들에서, 컴퓨터 시스템(600)은 작업 메모리(635)를 더 포함할 것이고, 상기 작업 메모리(635)는 위에서 설명된 바와 같이 RAM 또는 ROM 디바이스를 포함할 수 있다.
또한, 컴퓨터 시스템(600)은 작업 메모리(635) 내에 현재 위치되어 있는 것으로서 도시된 소프트웨어 엘리먼트들을 포함할 수 있고, 상기 소프트웨어 엘리먼트들은 운영체제(640), 디바이스 드라이버들, 실행가능한 라이브러리들, 및/또는 다른 코드, 예컨대 본원에 설명된 바와 같이, 다양한 실시예들에 의해 제공된 컴퓨터 프로그램들을 포함할 수 있거나, 그리고/또는 다른 실시예들에서 제공되는 방법들을 구현하도록 그리고/또는 시스템들을 구성하도록 설계될 수 있는 하나 또는 그 초과의 애플리케이션 프로그램들(645)을 포함한다. 단지 예로서, 위에서 논의된 방법(들)에 대하여 설명된 하나 또는 그 초과의 프로시저들은 컴퓨터(및/또는 컴퓨터 내의 프로세서)에 의해 실행가능한 코드 및/또는 명령들로서 구현될 수 있다; 그런 다음, 양상에서, 그러한 코드 및/또는 명령들은, 설명된 방법들에 따라 하나 또는 그 초과의 동작들을 수행하도록 일반 목적 컴퓨터(또는 다른 디바이스)를 구성시키거나 그리고/또는 적응시키는데 사용될 수 있다.
이러한 명령들 및/또는 코드의 세트가 컴퓨터-판독가능 스토리지 매체, 예컨대 위에서 설명된 스토리지 디바이스(들)(625) 상에 저장될 수 있다. 몇몇 경우들에서, 스토리지 매체는 컴퓨터 시스템, 예컨대 시스템(600) 내에 통합될 수 있다. 다른 실시예들에서, 스토리지 매체는 컴퓨터 시스템(예컨대, 제거 가능 매체, 예컨대 콤팩트 디스크)으로부터 분리될 수 있거나, 그리고/또는 설치 패키지에 제공될 수 있고, 그래서 스토리지 매체는 그 상에 저장된 명령들/코드를 이용하여 일반 목적 컴퓨터를 프로그래밍, 구성 그리고/또는 적응시키는데 사용될 수 있다. 이러한 명령들은 실행가능한 코드 ― 컴퓨터 시스템(600)에 의해 실행가능함 ― 의 형태를 취할 수 있거나, 그리고/또는 소스 및/또는 설치가능한 코드의 형태를 취할 수 있고, 그런 다음 상기 소스 및/또는 설치가능한 코드는 (예컨대, 다양한 일반적으로 이용가능한 컴파일러들, 설치 프로그램들, 압축/압축해제 유틸리티들 등등 중 임의의 것을 이용하여) 컴퓨터 시스템(600) 상에 설치 및/또는 편집시 실행가능한 코드의 형태를 취한다.
기술분야의 당업자들에게는, 특정 요건들에 따라 실질상 변형들이 이루어질 수 있음이 명백할 것이다. 예컨대, 커스터마이징된 하드웨어가 또한 사용될 수 있거나, 그리고/또는 특정 엘리먼트들이 하드웨어로, 소프트웨어(휴대용 소프트웨어, 예컨대, 애플릿들 등등을 포함함)로, 또는 둘 다로 구현될 수 있다. 추가로, 네트워크 입력/출력 디바이스들과 같은 다른 컴퓨팅 디바이스들로의 연결이 사용될 수 있다.
위에서 언급된 바와 같이, 일 양상에서, 몇몇 실시예들은 다양한 실시예들에 따라 방법들을 수행하기 위해 컴퓨터 시스템(예컨대, 컴퓨터 시스템(600))을 사용할 수 있다. 실시예들의 세트에 따라, 그러한 방법들의 프로시저들 중 몇몇 또는 전부는, 작업 메모리(635)에 포함된 하나 또는 그 초과의 명령들(운영체제(640) 및/또는 다른 코드, 예컨대 애플리케이션 프로그램(645)에 통합될 수 있음)의 하나 또는 그 초과의 시퀀스들을 실행시키는 프로세서(610)에 응답하여 컴퓨터 시스템(600)에 의해 수행된다. 그러한 명령들은 다른 컴퓨터-판독가능 매체, 예컨대 스토리지 디바이스(들)(625) 중 하나 또는 그 초과로부터 작업 메모리(635)로 판독될 수 있다. 단지 예로서, 작업 메모리(635)에 포함된 명령들의 시퀀스들의 실행은 프로세서(들)(610)로 하여금 본원에 설명된 방법들의 하나 또는 그 초과의 프로시저들을 수행하게 유발할 수 있다.
본원에 사용된 바와 같은 용어들 "머신-판독가능 매체" 및 "컴퓨터-판독가능 매체"는, 머신으로 하여금 특정 방식으로 동작하게 유발하는 데이터를 제공하는데 참여하는 임의의 매체를 지칭한다. 컴퓨터 판독가능 매체 및 스토리지 매체는 일시적 전파 시호들을 지칭하지 않는다. 컴퓨터 시스템(600)을 이용하여 구현된 실시예에서, 다양한 컴퓨터-판독가능 매체들은, 실행을 위해 프로세서(들)(610)에 명령들/코드를 제공할 때 수반될 수 있거나, 그리고/또는 그러한 명령들/코드를 저장하는데 사용될 수 있다. 많은 구현들에서, 컴퓨터-판독가능 매체는 물리적 및/또는 유형 스토리지 매체이다. 그러한 매체는 비-휘발성 매체들 또는 휘발성 매체들의 형태를 취할 수 있다. 비-휘발성 매체들은 예컨대 광학 및/또는 자기 디스크들, 예컨대 스토리지 디바이스(들)(625)를 포함한다. 휘발성 매체들은, 제한 없이, 동적 메모리, 예컨대 작업 메모리(635)를 포함한다.
물리적 및/또는 유형 컴퓨터-판독가능 매체들의 공통 형태들은, 예컨대 플로피 디스크, 플렉서블 디스크, 하드 디스크, 자기 테이프, 또는 임의의 다른 자기 매체, CD-ROM, 임의의 다른 광학 매체, 펀치카드들, 종이테이프, 홀들의 패턴들을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 임의의 다른 메모리 칩 또는 카트리지 등등을 포함한다.
위에서 논의된 방법들, 시스템들, 및 디바이스들은 예들이다. 다양한 구성들이 적절한 대로 다양한 프로시저들 또는 컴포넌트들을 생략, 치환 또는 부가할 수 있다. 예컨대, 대안적 구성들에서, 방법들은 설명된 것과 상이한 순서로 수행될 수 있거나, 그리고/또는 다양한 단계들이 부가, 생략, 그리고/또는 결합될 수 있다. 또한, 특정 구성들에 대하여 설명된 피처들은 다양한 다른 구성들에서 결합될 수 있다. 구성들의 상이한 양상들 및 엘리먼트들이 유사한 방식으로 결합될 수 있다. 또한, 기술이 진화하고, 따라서 엘리먼트들 중 많은 엘리먼트들은 예들이고, 개시물 또는 청구항들의 범위를 제한하지 않는다.
예시적 구성들(구현들을 포함함)의 완전한 이해를 제공하기 위해 특정 세부사항들이 설명에서 제공된다. 그러나, 구성들은 이러한 특정 세부사항들 없이 구현될 수 있다. 예컨대, 잘-알려진 회로들, 프로세스들, 알고리즘들, 구조들, 및 기술들은, 구성들을 모호하게 하는 것을 방지하기 위하여, 불필요한 세부사항 없이 도시되었다. 이러한 설명은 예시적 구성들만을 제공하며, 청구항들의 범위, 적용가능성, 또는 구성들을 제한하지 않는다. 그보다는, 구성들의 앞선 설명은, 기술분야의 당업자들에게, 설명된 기술들을 구현하기 위한 인에이블링 설명을 제공할 것이다. 개시물의 사상 또는 범위로부터 벗어남 없이 엘리먼트들의 기능 및 어레인지먼트에서 다양한 변경들이 이루어질 수 있다.
또한, 구성들은 흐름도 또는 블록도로서 묘사되는 프로세스로서 설명될 수 있다. 각각이 순차적 프로세스로서 동작들을 설명할 수 있지만, 동작들 중 많은 동작들은 병렬로 또는 동시에 수행될 수 있다. 부가하여, 동작들의 순서는 재배열될 수 있다. 프로세스는 도면에 포함되지 않은 부가적인 단계들을 가질 수 있다. 또한, 방법들의 예들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 설명 언어들, 또는 이들의 임의의 결합에 의해 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어, 또는 마이크로코드로 구현될 때, 필요한 작업들을 수행하기 위한 프로그램 코드 또는 코드 세그먼트들은 비-일시적 컴퓨터-판독가능 매체, 예컨대 스토리지 매체에 저장될 수 있다. 프로세서들은 설명된 작업들을 수행할 수 있다.
여러 예시적 구성들이 설명되었지만, 개시물의 사상으로부터 벗어남 없이 다양한 수정들, 대안적 구성들, 및 등가물들이 사용될 수 있다. 예컨대, 위의 엘리먼트들은 더 큰 시스템의 컴포넌트들일 수 있고, 여기서 다른 규칙들이 애플리케이션보다 우선할 수 있거나 또는 그렇지 않으면 애플리케이션을 수정할 수 있다. 또한, 위의 엘리먼트들이 고려되기 이전에, 그 동안에, 또는 그 이후에, 다수의 단계들이 착수될 수 있다. 따라서, 위의 설명은 청구항들의 범위의 경계를 이루지 않는다.

Claims (28)

  1. 실세계 거리를 추정하기 위한 방법으로서,
    장면의 이미지를 표시하는 제1 정보에 액세스하는 단계;
    상기 제1 정보에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하는 단계;
    상기 이미지에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하는 단계;
    사용자로부터의 입력을 표시하는 제2 정보에 액세스하는 단계 ― 상기 제2 정보는 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ―; 및
    상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하는 단계
    를 포함하는,
    실세계 거리를 추정하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 제2 정보는 출발점과 종점을 포함하고, 상기 관심 있는 실세계 거리는 상기 출발점 및 상기 종점과 연관된 실세계 위치들 사이의 거리를 포함하는,
    실세계 거리를 추정하기 위한 방법.
  3. 제 1 항에 있어서,
    상기 이미지 상에 가상 자를 중첩시키는 단계
    를 더 포함하는,
    실세계 거리를 추정하기 위한 방법.
  4. 제 3 항에 있어서,
    상기 제2 정보는, 중첩된 가상 자의 적어도 일부가 상기 이미지 상에 위치될 포지션을 포함하는,
    실세계 거리를 추정하기 위한 방법.
  5. 제 1 항에 있어서,
    상기 변환은 적어도 부분적으로, 원근 왜곡을 설명하는,
    실세계 거리를 추정하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 변환은 호모그래피 행렬을 포함하는,
    실세계 거리를 추정하기 위한 방법.
  7. 제 1 항에 있어서,
    상기 방법은 그 전체가 모바일 디바이스 상에서 수행되는,
    실세계 거리를 추정하기 위한 방법.
  8. 제 7 항에 있어서,
    상기 모바일 디바이스는 셀룰러 폰을 포함하는,
    실세계 거리를 추정하기 위한 방법.
  9. 제 1 항에 있어서,
    상기 기준 객체는, 실질상 평편하고 실질상 직사각형의 객체를 포함하는,
    실세계 거리를 추정하기 위한 방법.
  10. 제 1 항에 있어서,
    상기 기준 피처들 중 하나 또는 그 초과의 기준 피처들과 연관된, 상기 이미지 공간에서의 적어도 하나의 제1 공간 특성을 결정하는 단계;
    상기 기준 피처들 중 하나 또는 그 초과의 기준 피처들과 연관된, 상기 실세계 공간에서의 적어도 하나의 제2 공간 특성을 결정하는 단계; 및
    상기 적어도 하나의 제1 공간 특성 및 상기 적어도 하나의 제2 공간 특성에 기초하여 상기 변환을 결정하는 단계
    를 더 포함하는,
    실세계 거리를 추정하기 위한 방법.
  11. 제 1 항에 있어서,
    관심 있는 추정된 실세계 거리와 상기 기준 객체의 표면 둘 다가 동일한 평면을 따라서 놓인,
    실세계 거리를 추정하기 위한 방법.
  12. 제 1 항에 있어서,
    상기 관심 있는 실세계 거리를 추정하는 단계는 상기 변환의 인버스를 적용하는 단계를 포함하는,
    실세계 거리를 추정하기 위한 방법.
  13. 실세계 거리를 추정하기 위한 시스템으로서,
    장면의 이미지를 표시하는 제1 정보에 액세스하기 위한 이미징 디바이스;
    상기 제1 정보에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하기 위한 기준-피처 검출기;
    검출된 하나 또는 그 초과의 기준 피처들에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하기 위한 변환 식별자;
    모바일 디바이스의 사용자로부터의 입력을 표시하는 제2 정보에 액세스하기 위한 사용자 입력 컴포넌트 ― 상기 제2 정보는, 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ―; 및
    상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하기 위한 거리 추정기
    를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  14. 제 13 항에 있어서,
    상기 제2 정보는 상기 이미지의 프리젠테이션 상에 중첩된 자의 회전을 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  15. 제 13 항에 있어서,
    상기 거리 추정기는 디스플레이에 의해 제시될 가상 자를 생성하기 위한 자 생성기를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  16. 제 13 항에 있어서,
    디스플레이가 관심 있는 추정된 실세계 거리와 상기 이미지를 동시에 제시하는,
    실세계 거리를 추정하기 위한 시스템.
  17. 제 13 항에 있어서,
    상기 기준-피처 검출기는 에지 검출기를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  18. 제 13 항에 있어서,
    상기 사용자 입력 컴포넌트 및 디스플레이는 터치스크린 디스플레이로서 통합되는,
    실세계 거리를 추정하기 위한 시스템.
  19. 실세계 거리를 추정하기 위한 시스템으로서,
    장면의 이미지를 표시하는 제1 정보에 액세스하기 위한 수단;
    상기 이미지에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하기 위한 수단;
    상기 제1 정보에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하기 위한 수단;
    사용자로부터의 입력을 표시하는 제2 정보에 액세스하기 위한 수단 ― 상기 제2 정보는, 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ―; 및
    상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하기 위한 수단
    을 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  20. 제 19 항에 있어서,
    상기 제1 정보에 액세스하기 위한 수단은 모바일 폰의 카메라를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  21. 제 19 항에 있어서,
    상기 하나 또는 그 초과의 기준 피처들을 검출하기 위한 수단은 에지 검출기를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  22. 제 19 항에 있어서,
    상기 사용자로부터의 입력을 표시하는 제2 정보에 액세스하기 위한 수단은, 터치스크린 디스플레이를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  23. 제 19 항에 있어서,
    상기 관심 있는 실세계 거리를 추정하기 위한 수단은 자 생성기를 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  24. 제 19 항에 있어서,
    관심 있는 추정된 실세계 거리를 제시하기 위한 수단
    을 더 포함하는,
    실세계 거리를 추정하기 위한 시스템.
  25. 장면의 이미지를 표시하는 제1 정보에 액세스하는 단계;
    상기 이미지에서 기준 객체와 연관된 하나 또는 그 초과의 기준 피처들을 검출하는 단계;
    상기 제1 정보에 기초하여 이미지 공간과 실세계 공간 사이의 변환을 결정하는 단계;
    사용자로부터의 입력을 표시하는 제2 정보에 액세스하는 단계 ― 상기 제2 정보는, 상기 실세계 공간에서 관심 있는 실세계 거리에 대응하는, 상기 이미지 공간에서의 이미지-공간 거리를 식별함 ―; 및
    상기 제2 정보 및 결정된 변환에 기초하여 상기 관심 있는 실세계 거리를 추정하는 단계
    를 실행하는 프로그램을 포함하는,
    컴퓨터-판독가능 매체.
  26. 제 25 항에 있어서,
    상기 프로그램은,
    데이터베이스로부터 상기 기준 객체와 연관된 실세계 공간 특성들을 식별하는 단계
    를 추가로 실행하는,
    컴퓨터-판독가능 매체.
  27. 제 25 항에 있어서,
    상기 변환은 호모그래피를 포함하는,
    컴퓨터-판독가능 매체.
  28. 제 25 항에 있어서,
    상기 제2 정보는 출발점과 정지점을 포함하는,
    컴퓨터-판독가능 매체.
KR1020147022274A 2012-01-13 2013-01-07 가상 자 KR20140112064A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261586228P 2012-01-13 2012-01-13
US61/586,228 2012-01-13
US13/563,330 US20130201210A1 (en) 2012-01-13 2012-07-31 Virtual ruler
US13/563,330 2012-07-31
PCT/US2013/020581 WO2013106290A1 (en) 2012-01-13 2013-01-07 Virtual ruler

Publications (1)

Publication Number Publication Date
KR20140112064A true KR20140112064A (ko) 2014-09-22

Family

ID=47710294

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147022274A KR20140112064A (ko) 2012-01-13 2013-01-07 가상 자

Country Status (8)

Country Link
US (1) US20130201210A1 (ko)
EP (1) EP2802841A1 (ko)
JP (1) JP2015510112A (ko)
KR (1) KR20140112064A (ko)
CN (1) CN104094082A (ko)
IN (1) IN2014MN01386A (ko)
TW (1) TW201346216A (ko)
WO (1) WO2013106290A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210023210A (ko) * 2019-08-22 2021-03-04 경상대학교산학협력단 치수 품질 검사 방법 및 그 시스템

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8886449B2 (en) 2012-01-13 2014-11-11 Qualcomm Incorporated Calibrated hardware sensors for estimating real-world distances
JP6036209B2 (ja) * 2012-11-19 2016-11-30 セイコーエプソン株式会社 虚像表示装置
CN104949617B (zh) * 2014-03-31 2018-06-08 大猩猩科技股份有限公司 用于对象包装的对象三维尺寸估测***及方法
US10247541B2 (en) * 2014-03-31 2019-04-02 Gorilla Technology Inc. System and method of estimating the three-dimensional size of an object for packaging or storing the object
JP6608177B2 (ja) * 2014-07-18 2019-11-20 キヤノンメディカルシステムズ株式会社 医用画像診断装置及び医用画像処理装置
KR102223282B1 (ko) * 2014-08-07 2021-03-05 엘지전자 주식회사 스마트 줄자를 구비한 이동 단말기 및 그의 물체 길이 측정 방법
US20160055641A1 (en) * 2014-08-21 2016-02-25 Kisp Inc. System and method for space filling regions of an image
US10114545B2 (en) 2014-09-03 2018-10-30 Intel Corporation Image location selection for use in depth photography system
KR102293915B1 (ko) 2014-12-05 2021-08-26 삼성메디슨 주식회사 초음파 이미지 처리 방법 및 이를 위한 초음파 장치
TWI585433B (zh) * 2014-12-26 2017-06-01 緯創資通股份有限公司 電子裝置及其目標物的顯示方法
US10063840B2 (en) * 2014-12-31 2018-08-28 Intel Corporation Method and system of sub pixel accuracy 3D measurement using multiple images
JP2016173703A (ja) * 2015-03-17 2016-09-29 株式会社ミツトヨ タッチディスプレイを用いた入力操作を支援する方法
WO2016149632A1 (en) * 2015-03-18 2016-09-22 Bio1 Systems, Llc Digital wound assessment device and method
US10795558B2 (en) * 2015-06-07 2020-10-06 Apple Inc. Device, method, and graphical user interface for providing and interacting with a virtual drawing aid
US10706457B2 (en) * 2015-11-06 2020-07-07 Fujifilm North America Corporation Method, system, and medium for virtual wall art
TWI577970B (zh) * 2015-11-19 2017-04-11 Object coordinate fusion correction method and calibration plate device thereof
US9904990B2 (en) * 2015-12-18 2018-02-27 Ricoh Co., Ltd. Single image rectification
JPWO2017134886A1 (ja) * 2016-02-02 2018-11-22 ソニー株式会社 情報処理装置、情報処理方法、及び記録媒体
JP6642153B2 (ja) * 2016-03-16 2020-02-05 富士通株式会社 3次元計測プログラム、3次元計測方法、および3次元計測システム
US10417684B2 (en) 2016-08-31 2019-09-17 Fujifilm North America Corporation Wall art hanging template
US10255521B2 (en) 2016-12-12 2019-04-09 Jack Cooper Logistics, LLC System, method, and apparatus for detection of damages on surfaces
JP6931883B2 (ja) * 2017-02-06 2021-09-08 株式会社大林組 教育支援システム、教育支援方法及び教育支援プログラム
CN107218887B (zh) * 2017-04-24 2020-04-17 亮风台(上海)信息科技有限公司 一种用于测量物体尺寸的方法与设备
JP7031262B2 (ja) 2017-12-04 2022-03-08 富士通株式会社 撮像処理プログラム、撮像処理方法、及び撮像処理装置
FI129042B (en) 2017-12-15 2021-05-31 Oy Mapvision Ltd Computer vision system with a computer-generated virtual reference object
CN108596969B (zh) * 2018-04-28 2020-06-19 上海宝冶集团有限公司 一种受力钢筋间距验收方法
AU2019100486B4 (en) * 2018-05-07 2019-08-01 Apple Inc. Devices and methods for measuring using augmented reality
US11321929B2 (en) 2018-05-18 2022-05-03 Purdue Research Foundation System and method for spatially registering multiple augmented reality devices
US10984546B2 (en) * 2019-02-28 2021-04-20 Apple Inc. Enabling automatic measurements
CN110398231B (zh) * 2019-06-18 2021-06-01 广东博智林机器人有限公司 墙面参数的获取方法、装置、计算机设备和存储介质
US11210863B1 (en) 2020-08-24 2021-12-28 A9.Com, Inc. Systems and methods for real-time object placement in augmented reality experience
US11670144B2 (en) 2020-09-14 2023-06-06 Apple Inc. User interfaces for indicating distance
US20230366665A1 (en) * 2022-05-15 2023-11-16 Eric Clifton Roberts Scaling Rulers

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09229633A (ja) * 1996-02-22 1997-09-05 Jisendou:Kk カーテン採寸方法
JP2001209827A (ja) * 1999-11-19 2001-08-03 Matsushita Electric Ind Co Ltd 画像処理装置、画像処理サービス提供方法および受注処理方法
DE10059763A1 (de) * 2000-11-30 2002-06-06 Otmar Fahrion Vorrichtung zum Vermessen eines Schienensegments für eine Magnetschwebebahn
KR100459476B1 (ko) * 2002-04-04 2004-12-03 엘지산전 주식회사 차량의 대기 길이 측정 장치 및 방법
US7310431B2 (en) * 2002-04-10 2007-12-18 Canesta, Inc. Optical methods for remotely measuring objects
EP1517116A1 (de) * 2003-09-22 2005-03-23 Leica Geosystems AG Verfahren und Vorrichtung zur Bestimmung der Aktualposition eines geodätischen Instrumentes
JP2006127104A (ja) * 2004-10-28 2006-05-18 Sharp Corp 携帯電話機、画像処理装置、画像処理方法及び画像処理プログラム
JP5124147B2 (ja) * 2007-02-01 2013-01-23 三洋電機株式会社 カメラ校正装置及び方法並びに車両
CN100575873C (zh) * 2007-12-29 2009-12-30 武汉理工大学 基于机器视觉的双集装箱定位方法
US20130215116A1 (en) * 2008-03-21 2013-08-22 Dressbot, Inc. System and Method for Collaborative Shopping, Business and Entertainment
CN101419058B (zh) * 2008-12-15 2010-06-02 北京农业信息技术研究中心 一种基于机器视觉的植物茎秆直径测量装置与测量方法
KR100969576B1 (ko) * 2009-12-17 2010-07-12 (주)유디피 카메라 파라미터 캘리브레이션 장치 및 방법
US8487889B2 (en) * 2010-01-15 2013-07-16 Apple Inc. Virtual drafting tools
US20120005624A1 (en) * 2010-07-02 2012-01-05 Vesely Michael A User Interface Elements for Use within a Three Dimensional Scene
WO2013059599A1 (en) * 2011-10-19 2013-04-25 The Regents Of The University Of California Image-based measurement tools
US9443353B2 (en) * 2011-12-01 2016-09-13 Qualcomm Incorporated Methods and systems for capturing and moving 3D models and true-scale metadata of real world objects

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210023210A (ko) * 2019-08-22 2021-03-04 경상대학교산학협력단 치수 품질 검사 방법 및 그 시스템

Also Published As

Publication number Publication date
TW201346216A (zh) 2013-11-16
IN2014MN01386A (ko) 2015-04-03
US20130201210A1 (en) 2013-08-08
JP2015510112A (ja) 2015-04-02
EP2802841A1 (en) 2014-11-19
CN104094082A (zh) 2014-10-08
WO2013106290A1 (en) 2013-07-18

Similar Documents

Publication Publication Date Title
KR20140112064A (ko) 가상 자
US9443353B2 (en) Methods and systems for capturing and moving 3D models and true-scale metadata of real world objects
US10762386B2 (en) Method of determining a similarity transformation between first and second coordinates of 3D features
JP6176598B2 (ja) 寸法測定プログラム、寸法測定装置、及び、寸法測定方法
JP5201096B2 (ja) 対話操作装置
JP5158006B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
CA2822244C (en) Mobile postural screening method and system
CN105637559B (zh) 使用深度传感器的结构建模
JP5791577B2 (ja) 画像処理装置、画像表示方法、およびプログラム
CN102484724A (zh) 投影图像区域检测装置
JP6640294B1 (ja) 複合現実システム、プログラム、携帯端末装置、及び方法
JP2015079354A (ja) 仮想現実を用いた3次元地図表示システム
CN107330974B (zh) 商品展示方法、装置及移动设备
JP2015198406A (ja) 画像読取装置、方法およびプログラム
KR101496761B1 (ko) 다면 스크린 프로젝션 기반 휴대용 3차원 모델 제어 시스템 및 그 방법
CN113810626A (zh) 基于三维地图的视频融合方法、装置、设备及存储介质
KR20220014513A (ko) 다면 스크린 프로젝션 기반 3차원 제어 시스템 및 그 방법
JP2018037766A (ja) 映像編集装置、映像編集方法及び映像編集用コンピュータプログラム
CN107742275B (zh) 一种信息处理方法及电子设备
JP2017033389A (ja) 画像処理装置、画像読取方法、コンピュータプログラム、及び記憶媒体
JP2020057430A (ja) 複合現実システム、プログラム、携帯端末装置、及び方法
JP2023122115A (ja) 俯瞰画像生成装置、俯瞰画像生成方法、俯瞰画像生成プログラム及び俯瞰画像生成システム
JP2020166531A (ja) 情報処理装置及びプログラム
JP2017107500A (ja) 画像表示装置、画像表示方法及びプログラム

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid