KR102218608B1 - 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치 - Google Patents
증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치 Download PDFInfo
- Publication number
- KR102218608B1 KR102218608B1 KR1020190110345A KR20190110345A KR102218608B1 KR 102218608 B1 KR102218608 B1 KR 102218608B1 KR 1020190110345 A KR1020190110345 A KR 1020190110345A KR 20190110345 A KR20190110345 A KR 20190110345A KR 102218608 B1 KR102218608 B1 KR 102218608B1
- Authority
- KR
- South Korea
- Prior art keywords
- label
- overlay
- overlay position
- frames
- real time
- Prior art date
Links
- 230000003190 augmentative effect Effects 0.000 title abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000015654 memory Effects 0.000 claims description 18
- 230000002123 temporal effect Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 6
- 230000000007 visual effect Effects 0.000 abstract description 7
- 238000002474 experimental method Methods 0.000 description 10
- 238000013459 approach Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008447 perception Effects 0.000 description 4
- 230000001149 cognitive effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- VEUMANXWQDHAJV-UHFFFAOYSA-N 2-[2-[(2-hydroxyphenyl)methylideneamino]ethyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCN=CC1=CC=CC=C1O VEUMANXWQDHAJV-UHFFFAOYSA-N 0.000 description 2
- OXSYGCRLQCGSAQ-UHFFFAOYSA-N CC1CCC2N(C1)CC3C4(O)CC5C(CCC6C(O)C(O)CCC56C)C4(O)CC(O)C3(O)C2(C)O Chemical compound CC1CCC2N(C1)CC3C4(O)CC5C(CCC6C(O)C(O)CCC56C)C4(O)CC(O)C3(O)C2(C)O OXSYGCRLQCGSAQ-UHFFFAOYSA-N 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000014616 translation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/265—Mixing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/20—Linear translation of whole images or parts thereof, e.g. panning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/812—Monomedia components thereof involving advertisement data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/004—Annotating, labelling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Architecture (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
증강 현실(AR) 응용들 내의 텍스트 오버레이들/라벨들 부가 맥락 관련 정보. 라벨들의 공간적 배치는 특히, 실 시간 비디오들을 위해 도전적인 과제이다. 본 개시의 실시예들은 보다 나은 장면 해석을 돕기 위해 라벨들을 최적으로 배치시킴으로써 관심 대상/장면의 가림의 제약들을 극복하기 위해 증강 현실(AR) 응용들을 위한 맥락 관련 정보의 최적 배치를 위한 시스템들과 방법들을 제공한다. 이것은 비디오 내의 라벨 배치를 위해 업데이트된 오버레이 위치를 계산하기 위해 라벨의 초기 오버레이 위치에 기반하여 각각의 프레임을 위한 현재 및 사전 오버레이 위치들 사이의 유클리드 거리를 이용하여 입력 비디오의 각각의 프레임을 위해 연산되는 세일런시 지도들의 결합에 의해 달성된다. 오버레이들의 배치는 관심 대상 주위의 시각적 세일런시를 최소화하고 실-시간 AR 응용들 내의 코히런스를 용이하게 가능하게 하는 시간 시터를 최소화시키는 목적 함수로서 구성된다.
Description
본 출원은 2018.9.6.자로 출원된 인도 출원 번호 201821033541의 "증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치"의 우선권을 주장한다. 이 출원의 전체 내용은 인용에 의해 본 명세서에 통합된다.
본 개시는 비디오 분석에 관한 것으로서, 보다 구체적으로, 증강 현실 응용들을 위한 비디오 내의 실 시간 오버레이 배치를 위한 시스템들과 방법들에 관한 것이다.
가상 현실(VR)을 이용한 증강 현실(AR)은 개인용 컴퓨터, 인터넷 및 모바일 기술 후의 4차 산업 혁명으로 간주된다. AR에서, 실 세계의 장면은 더 좋은 상황 인식을 가능하게 하고 사람의 인지와 지각을 증가시키는 가상 정보의 오버레이에 의해 증강된다. 이러한 맥락 관련 정보(contextual information)는, 텍스트, 3D 물체들, GPS 좌표들, 및 오디오의 형태를 취할 수 있지만, 이에 한정되지는 않는다. 그러한 맥락 관련 정보를 배치하는 것은 장면(scene)을 이해하는데 중요한 역할을 하고, 인공 지능에서 주요한 문제이다. 라벨(label)들의 공간적 배치는, (i) 라벨들이 관심 대상/장면을 가리지 않는 제약과, (ii) 라벨들이 더 좋은 장면의 해석을 위해 최적으로 배치되는 제약에 기인하여, 도전적인 과제이다. 텍스트 라벨의 최적 포지셔닝을 위한 수준 높은 최신 기법은 이미지들에만 유효하고 종종 디바이스들(예, 스마트폰, 태블릿 등과 같은 모바일 통신 디바이스들) 상의 실-시간 성능을 위해서는 비효율적이다.
본 개시는 종래의 시스템들의 발명자들에 의해 인식된 전술한 기술적 문제들의 하나 이상에 대한 해결책으로서 기술적 개선들을 제공한다.
일 측면에서, 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치를 위한 프로세서 구현된 방법이 제공된다. 방법은, (i) 다수의 프레임들과 다수의 프레임들 내의 관심 대상를 구비하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 입력 비디오의 센터 프레임 상의 배치를 위해 사전(pre)-연산되기 위한 라벨을, 실 시간으로, 수신하는 단계; 다수의 세일리언시 지도(saliency map)들을 얻기 위해 다수의 프레임들의 각각을 위한 세일리언시 지도를, 실 시간으로, 연산하는 단계; 다수의 프레임들의 각각을 위해, 다수의 유클리드 거리(Euclidean distance)들을 얻기 위해 라벨의 초기 오버레이 위치에 기반하여, 현재 오버레이 위치와 사전(previous) 오버레이 위치 사이의 유클리드 거리를, 실 시간으로, 연산하는 단계; 및 다수의 세일리언시 지도들과 다수의 유클리드 거리들에 기반하여 입력 비디오 내의 배치를 위한 라벨의 업데이트된 오버레이 위치를, 실 시간으로, 계산하는 단계를 포함한다.
일 실시예에서, 라벨의 업데이트된 오버레이 위치는 다수의 세일리언시 지도들과 다수의 유클리드 거리들의 조합에 의해 연산될 수 있다.
일 실시예에서, 다수의 프레임들의 각각을 위한 유클리드 거리는, 입력 비디오 내에 배치될 라벨의 위치 내의 시간 지터(temporal jitter)를, 실 시간으로, 제어하기 위해 연산된다. 일 실시예에서, 방법은, 관심 대상의 조망의 가림(occlusion)을 최소화하기 위해 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨을 쉬프트시키는 단계를 더 포함할 수 있다.
일 실시예에서, 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨을 쉬프트시키기 위해 선택된다.
다른 측면에서, 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치를 위한 시스템이 제공된다. 시스템은, 명령들을 저장하기 위한 메모리; 하나 이상의 통신 인터페이스들; 및 하나 이상의 통신 인터페이스들을 통해 메모리에 결합된 하나 이상의 하드웨어 프로세서를 구비하고, 하나 이상의 하드웨어 프로세서들은, (i) 다수의 프레임들 및 다수의 프레임들 내의 관심 있는 물체를 구비하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 입력 비디오의 센터 프레임 상의 배치를 위한 사전-연산을 위한 라벨을, 실 시간으로 수신하는 명령; 다수의 세일리언시 지도들을 얻기 위해 다수의 프레임들의 각각을 위한 세일리언시 지도를, 실 시간으로 연산하는 명령; 다수의 프레임들의 각각을 위해, 다수의 유클리드 거리들을 얻기 위해 라벨의 초기 오버레이 위치에 기반하여 현재 오버레이 위치와 사전 오버레이 위치 사이의 유클리드 거리를, 실 시간으로 연산하는 명령; 및 다수의 세일리언시 지도들과 다수의 유클리드 거리들에 기반하여 입력 비디오 내의 배치를 위한 라벨의 업데이트된 오버레이 위치를, 실 시간으로 계산하는 명령에 의해 구성된다.
일 실시예에서, 라벨의 업데이트된 오버레이 위치는 다수의 세일리언시 지도들과 다수의 유클리드 거리들의 조합에 의해 연산된다. 일 실시예에서, 다수의 프레임들의 각각을 위한 유클리드 거리는, 입력 비디오 내에 배치될 라벨의 위치 내의 시간 지터를, 실 시간으로, 제어하기 위해 연산된다.
일 실시예에서, 하나 이상의 하드웨어 프로세서들은 관심 대상의 조망의 가림을 최소화하기 위해 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨을 쉬프트시키도록 더 구성된다. 일 실시예에서, 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨을 쉬프트시키기 위해 선택된다.
또 다른 측면에서, 하나 이상의 하드웨어 프로세서들에 의해 실행될 때, 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치를 위한 방법을 수행하는 하나 이상의 명령들을 포함하는 하나 이상의 비-일시적 기계 판독가능한 정보 저장 매체들이 제공된다. 명령들은, (i) 다수의 프레임들 및 다수의 프레임들 내의 관심 대상를 구비하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 입력 비디오의 센터 프레임 상에 배치를 위해 사전-연산되기 위한 라벨을, 실 시간으로, 수신하고; 다수의 세일리언시 지도들을 얻기 위해 다수의 프레임들의 각각을 위한 세일리언시 지도를, 실 시간으로 연산하고; 다수의 플레임들의 각각을 위해, 다수의 유클리드 거리들을 얻기 위해 라벨의 초기 오버레이 위치에 기반하여 현재 오버레이 위치와 사전 오버레이 위치 사이의 유클리드 거리를, 실 시간으로 연산하고; 및 다수의 세일리언시 지도들과 다수의 유클리드 거리들에 기반하여 입력 비디오 내의 배치를 위한 라벨의 업데이트된 오버레이 위치를, 실 시간으로 계산한다.
일 실시예에서, 라벨의 업데이트된 오버레이 위치는 다수의 세일리언시 지도들과 다수의 유클리드 거리들의 조합에 의해 연산될 수 있다.
일 실시예에서, 다수의 프레임들의 각각을 위한 유클리드 거리는, 입력 비디오 내에 배치될 라벨의 위치 내의 시간 지터를, 실 시간으로 제어하기 위해 연산된다. 일 실시예에서, 하나 이상의 하드웨어 프로세서들에 의해 실행될 때, 명령들은 관심 대상의 조망의 가림을 최소화하기 위해 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 바렙을 쉬프트시키도록 더 구성될 수 있다.
일 실시예에서, 초기 오버레이 위치와 미리정의된 임계 범위 내에 있는 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨을 쉬프트시키기 위해 선택된다.
전술한 일반적인 설명과 이어지는 상세한 설명 모두는 예시적이고 설명을 위한 것일 뿐이고 본 발명을 제한하는 의도가 아님을 이해해야 한다.
본 개시에 통합되고 본 개시의 일부를 구성하는 첨부된 도면들은 상세한 설명과 함께 예시적인 실시예들을 설명하고, 개시된 기술적 사상을 설명하는데 기여한다.
도 1은 본 개시의 일 실시예에 따라, 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치를 위한 시스템의 예시적인 블록도를 나타낸다.
도 2는 본 개시의 일 실시예에 따라, 도 1의 시스템을 이용하여 증강 현실(AR) 응용들을 위해 비디오들 내의 실 시간 오버레이 배치를 위한 방법의 예시적인 플로우챠트를 나타낸다.
도 3은 본 개시의 일 실시예에 따라 세일리언시 지도들과 유클리드 거리들의 연산에 의해 입력 비디오 내의 실 시간 오버레이 배치를 위한 블록도를 나타낸다.
도 4는 본 개시의 일 실시예에 따라 등고선 선도로서 λ와 ∑의 변화들을 가진 평균 세일런시 위의 라벨 가림(LOS) 스코어의 변이를 나타내는 그래프이다.
도 1은 본 개시의 일 실시예에 따라, 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치를 위한 시스템의 예시적인 블록도를 나타낸다.
도 2는 본 개시의 일 실시예에 따라, 도 1의 시스템을 이용하여 증강 현실(AR) 응용들을 위해 비디오들 내의 실 시간 오버레이 배치를 위한 방법의 예시적인 플로우챠트를 나타낸다.
도 3은 본 개시의 일 실시예에 따라 세일리언시 지도들과 유클리드 거리들의 연산에 의해 입력 비디오 내의 실 시간 오버레이 배치를 위한 블록도를 나타낸다.
도 4는 본 개시의 일 실시예에 따라 등고선 선도로서 λ와 ∑의 변화들을 가진 평균 세일런시 위의 라벨 가림(LOS) 스코어의 변이를 나타내는 그래프이다.
예시적인 실시예들은 첨부된 도면들을 참조하여 설명된다. 도면들에서, 참조 부호의 제일 왼쪽의 숫자(들)는 참조 부호가 처음 나타나는 도면을 나타낸다. 편의상, 동일하거나 유사한 구성요소들을 나타내기 위해 동일한 참조 부호들이 도면을 통틀어 사용되었다. 개시된 기술적 사상의 예시들과 특징들이 본 명세서에 설명되었지만, 개시된 실시예들의 정신과 범위를 벗어나지 않는 한 변형들, 개조들 및 다른 구현들이 가능하다. 이어지는 상세한 설명은 예시적인 것으로만 간주되고, 그 진정한 보호 범위는 이어지는 청구항들에 의해서만 평가되어야 함을 의도한다.
전술한 바와 같이, 가상 현실(VR)을 이용한 증강 현실(AR)은 개인용 컴퓨터, 인터넷, 및 모바일 기술 이후의 4차 산업 혁명으로 간주된다. 실 세계 장면 상에 가상 정보를 오버레이시키는 것은 더 좋은 상황 인식을 가능하게 하고 인간의 인지와 지각을 증가시키는 데 엄청나게 중요한 것으로 간주된다. 이러한 맥락 관련 정보의 배치는 장면 이해를 위한 중요한 기여이고 인공 지능 내의 주요한 문제이다.
텍스트 라벨들의 최적 배치와 관련된 일부 응용들은 다음과 같다. (i) 옥내/옥외 장면들과 비디오들 내의 광고의 최적 배치는 보는 사람들의 시각적 주의를 끌기 위한 결정적인 광고 전략이고, (ii) 근처의 기념물들과 건물들의 이름들을 식별하는 라벨들은 관광객들을 위해 더 좋은 상황 인식을 돕고, (iii) 다양한 종래의 응용들은, 그것의 카메라들을 이용함으로써, 다양한 운영체제들(예, Android® 디바이스) 상의 실-시간 번역들을 제공한다. 휴대폰 상의 AR 응용들은 낮은 인지 부하(cognitive load)로 작업들을 더 빠르고, 정확하게, 효율적으로 수행하는 것을 돕는 것을 유의해야 한다. 최적 오버레이 배치가 유용할 수 있는 다른 예는 군인들이 머리 장착 디바이스(HMD)들을 사용하는 상황들이다. HMD 상에 도시된 싸움터 지도 내의 구성원들의 GPS 좌표의 오버레이는 결정적 시간에 장면의 리얼 뷰(real view)를 가려서는 안된다. 또한, 비디오 내의 자막의 최적 배치는 초점의 교란을 방지하는데 도움을 준다. 스마트 라벨 배치는 만화 스타일의 오버레이 배치를 사용함으로써 비디오들을 흥미롭게 만드는데 도움을 준다.
이러한 2D 텍스트 라벨들의 배치는, 오버레이들이 관심 대상/장면을 가리지 않고 최적으로 배치됨으로써 더 좋은 해석에 도움을 주는 그러한 방식으로 맥락 관련 정보가 중첩되기 때문에, 한계가 있다. 증강 현실 응용들을 위한 라벨 배치가 실-시간으로 작업을 할 필요가 있을 만큼 사소한 것이 아니라는 사실을 발견한 연구 성과는 드물다. 정적(static) 이미지 상에 라벨을 배치시키는 간단한 작업을 위해, 가능한 라벨 위치들의 수는 라벨링될 항목들의 수가 커짐에 따라 기하급수적으로 증가한다. 다른 도전들은 AR 응용들을 위한 라벨 배치와 관련한 인식적 및 지각적 이슈들의 이해의 부족을 포함한다.
전술한 바와 같이, 관심 대상/장면 주위의 오버레이 배치는 물체 탐지 및 세그멘테이션과 비교하여 비젼 공동체에서 거의 주목을 받지 못했다. 최근에, 라벨 배치는 텍스트 라벨을 실-시간으로 배치하는 증강 현실 응용들 내에서 요구가 증가됨에 따라 많은 주목을 받고 있다. 라벨의 렌더링, 미학 규칙, 및 적응적 오버레이들을 위한 기하학적 구조 기반 레이아웃 및 이미지-기반 레이아웃들에 근거하는 텍스트 라벨들의 최적 배치의 관련 연구들이 수행되고 있다.
기하학적 구조 기반 레이아웃 접근법들에서, 포인트 특징 라벨 배치는 NP-하드 문제임이 입증되었고 시뮬레이티드 어닐링(simulated annealing)과 경사 하강법(gradient descent)이 해결책으로 제안되었다. 영상 미학(image aesthetics) 기반(또는 이미지 기반 레이아웃) 접근법들은 사용자들의 만족의 강한 결정 요인으로서 컴퓨터 인터페이스의 시각적 미학을 고려하기 위해 개발되었다. 그들은 구성요소들 중에서 공간적 레이아웃 규칙들, 대칭, 균형 뿐만 아니라 다른 색채 배합들과 포토북(photobook) 세대의 사용-사례와의 조화와 같은 일반적인 설계 법칙을 이용한다. 그러나, 전술한 접근법들은 이미지들 상에서 유효하고, 실-시간 카메라 스트림들(또는 실 시간 비디오 스트림들)에는 적합하지 않다.
세일리언시 지도들과 에지(edge) 지도들의 조합을 사용하는 비디오 스트림들 상에 라벨들의 배치를 위한 AR 브라우저들을 위한 이미지 구동 뷰 관리에 초점을 맞춘 다른 연구들은 많지 않다. 이러한 접근법을 모바일 디바이스들 상의 비디오 스트림에 적용할 때 부닥치는 몇몇 주요한 한계들이 그러한 연구들에서 관찰되고 있다. 첫째, 이러한 기법들은 카메라가 약간 움직일 때 동적으로 적용된다. 엄청나게 큰 움직임의 경우, 그들은 라벨들을 위한 정적인 레이아웃을 사용한다. AR-기반 응용들의 경우, 이러한 접근법은 분명히 실현가능하지 않다. 둘째, 시각적 세일런시 알고리즘들의 구현은 연산하는데 비싼 매트릭들의 조작들을 수반한다. 이러한 이슈는 제한된 연산 자원과 메모리를 가진 모바일 디바이스들 상에서 특히 두드러지게 된다. 나아가서, 텍스트 오버레이의 이러한 연구들과 전술한 바와 같은 종래의 다른 알려진 접근법들은 연산적으로 무겁고, 대부분 데스크탑 컴퓨터 상의 이미지들에서 유효하고 실-시간 성능이 약하고 비디오들 내의 오버레이에는 더 이상 적합하지 않다. 더군다나, 가림(occlusion), 약광(dim light) 시나리오들, 라이브 시야(field of view) 내의 장면의 변화들에 기인하여, 오버레이들은 그들 자신의 제약들을 가진다.
본 개시의 실시예들은 증강 현실 응용들을 위한 맥락 관련 라벨들의 전략적 배치를 위한 시스템과 방법을 제공한다. 본 개시의 시스템과 방법은 스마트폰과 태블릿과 같은 저렴한 안드로이드 디바이스 상에서 실-시간으로 작동하는 라벨 배치 기법을 제공한다. 본 개시에서, 라벨 배치는 이미지 세일리언시와 시간 지터에 의해 파라미터로 나타낸 목적 함수로서 표현된다. 본 개시는 오버레이 배치의 유효성을 측정하기 위해 세일런시 위의 라벨 가림(LOS) 스코어의 연산을 구현한다.
도 1은 본 개시의 일 실시예에 따라 증강 현실 응용들을 위한 비디오들 내에 실 시간 오버레이 배치를 위한 시스템(100)의 예시적 블록도를 도시한다. 시스템(100)은 '오버레이 배치 시스템'으로도 명명될 수 있고, 본 명세서에서 상호교환적으로 사용된다. 일 실시예에서, 시스템(100)은 하나 이상의 프로세서들(104), 통신 인터페이스 디바이스(들) 또는 입력/출력(I/O) 인터페이스(들)(106), 및 하나 이상의 프로세서들(104)에 작동가능하게 결합된 하나 이상의 데이터 저장 디바이스들 또는 메모리(102)를 구비한다. 하나 이상의 프로세서들(104)은 하나 이상의 소프트웨어 처리 모듈들 및/또는 하드웨어 프로세서들일 수 있다. 일 실시예에서, 하드웨어 프로세서들은 하나 이상의 마이크로프로세서들, 마이크로컴퓨터들, 마이크로컨트롤러들, 디지털 신호 프로세서들, 중앙처리장치, 상태 기계들, 논리 회로들, 및/또는 연산 명령어들에 기반하여 신호들을 조작하는 임의의 디바이스들로서 구현될 수 있다. 프로세서(들)는 다른 능력들 중에서 메모리 내에 저장된 컴퓨터-판독가능한 명령어들을 불러와서 실행할 수 있도록 구성된다. 일 실시예에서, 디바이스(100)는 랩탑 컴퓨터들, 노트북들, 소형 디바이스들, 워크스테이션들, 메인프레임 컴퓨터들, 서버들, 네트워크 클라우드 등과 같이, 다양한 연산 시스템들 내에 구현될 수 있다.
I/O 인터페이스 디바이스(들)(106)은, 웹 인터페이스, 그래픽 사용자 인터페이스 등과 같은 다양한 소프트웨어 인터페이스와 하드웨어 인터페이스를 포함할 수 있고, LAN, 케이블 등과 같은 무선 네트워크 및 WLAN, 셀룰라, 또는 위성과 같은 무선 네트워크를 포함하는 다양한 네트워크(N/W)와 프로토콜 형태들 내의 다중 통신들을 가능하게 할 수 있다. 일 실시예에서, I/O 인터페이스 디바이스(들)는 다수의 디바이스들을 다른 하나에 또는 다른 서버에 연결하기 위한 하나 이상의 포트들을 포함할 수 있다.
메모리(102)는 예를 들어, 정적 기억 장치(SRAM)와 동적 기억 장치(DRAM)와 같은 활성 메모리, 및/또는 읽기 전용 메모리(ROM), 소거가능한 프로그램가능한 ROM, 플래쉬 메모리들, 하드 디스크들, 광 디스크들, 및 자기 테이프들과 같은 비-활성 메모리를 포함하는 업계에 알려진 임의의 컴퓨터-판독가능한 매체를 포함할 수 있다. 일 실시예에서, 데이터베이스(108)는 메모리(102) 내에 저장될 수 있고, 데이터베이스(108)는, 정보 입력 비디오, 프레임들, 관심 대상, 라벨, 라벨의 초기 오버레이 위치, 라벨 폭과 높이, 세일런시 지도들 출력, 유클리드 거리 출력(들), 비디오 내의 배치를 위한 업데이트된 오버레이 위치를 포함할 수 있지만 이에 한정되지는 않는다. 보다 구체적으로, 입력 비디오에 속하는 정보는 픽셀 정보, 각각의 프레임을 위한 현재 오버레이 위치와 사전 오버레이 위치, 시간 지터, 미리정의된 임계 범위 등을 포함한다. 일 실시예에서, 메모리(102)는, 본 명세서에 개시된 방법론을 수행하기 위해 하나 이상의 하드웨어 프로세서들(104)에 의해 실행될 때 하나 이상의 기법(들)(예, 세일런시 지도 연산 기법(들), 유클리드 거리 연산 기법(들))을 저장할 수 있다. 메모리(102)는 본 개시의 시스템들과 방법들에 의해 수행되는 각각의 단계의 입력(들)/출력(들)에 속하는 정보를 더 포함할 수 있다.
도 2는 본 개시의 일 실시예에 따라, 도 1의 시스템(100)을 이용하여 증강 현실(AR) 응용들을 위해 비디오들 내에 실 시간 오버레이 배치를 위한 방법의 예시적인 플로우챠트를 나타낸다. 일 실시예에서, 시스템(들)(100)은 하나 이상의 하드웨어 프로세서들(104)에 작동가능하게 결합되고 하나 이상의 프로세서들(104)에 의해 방법의 단계들의 실행을 위한 명령어들을 저장하도록 구성된 하나 이상의 데이터 저장 디바이스들 또는 메모리(102)를 구비한다. 본 개시의 방법의 단계들은 도 1에 도시된 시스템(100)의 구성요소들과 도 2에 설명된 플로우챠트를 참조하여 설명된다. 입력 비디오를 실 시간으로(이하, '실-시간'으로서 명명되고 본 명세서에서 상호교환적으로 사용될 수 있음) 수신하기 전에, 시스템(100)과 연관된 방법은 사용자(들)에 의해 특정된 다수의 파라미터들 즉, k, λ, ∑, Oh 및 Ow을 입력으로 취한다. 여기서,
1) k: 처리를 스킵(skip)하기 위한 프레임들의 수이다. 본 개시의 기법/방법은 각각의 k 프레임들을 실행한다. 만약, k = 1이면, 본 개시의 방법은 모든 프레임 상에서 실행된다. 유사하게, 만약, k = 2이면, 본 개시의 방법은 각각의 교호하는 프레임 상에서 실행된다.
2) λ는 차후의 오버레이들의 시간적 코히런스(temporal coherence)를 제어한다. λ의 낮은 값은 오버레이가 약한 세일런트 구역 내에서 배치될 가능성이 있지만, 또한 다수의 지터의 대상이 됨을 의미한다. λ의 높은 값은 지터를 감소시키지만, 또한 오버레이의 움직임을 제한하다.
3) ∑: 검색 공간 샘플링 파라미터. 이것은 2-차원 이미지 공간 내에서 픽셀들을 균일하게 샘플링한다. 예를 들어, 임의 문맥에서 검색 공간의 차원들로서 각각 프레임 폭과 높이로 uw와 uh를 고려하면, uh/∑ 픽셀과 uw/∑ 픽셀은 각각의 이미지 차원들에서 스킵된다.
4) Oh, Ow: 오버레이 높이와 오버레이 폭.
본 개시의 기법 또는 방법이 가장 좋은 오버레이 위치를 계산하기 위한 모든 픽셀 값들을 검색하는 것은 실현 가능하지 않을 수 있다. 세일런시 지도는 별개의 값들 가지므로, 그것은 확률적 경사 하강법 등과 같은 최적 기법들의 사용이 가능하지 않을 수 있다. 모든 픽셀들을 통틀어 선형 검색은 엄청나게 비싸다. 본 개시에서, 균일 샘플링 접근법이 취해진다. 본 개시의 방법과 시스템(100)에 의해 연산된 일부 다른 중간 변수들은 다음과 같다.
a) Xp; Yp: 사전 반복 내의 오버레이의 최적 위치. 이것은 프레임의 센터로 초기화된다.
b) X; Y: 현재 반복 내에서 연산된 오버레이의 최적 위치.
c) SM: 종래의 연산 기법(들)(예, 'Radhakrishna Achanta, Sheila Hemami, Francisco Estrada, 및 Sabine Susstrunk의 "주파수-동조된 세일런트 구역 탐지", 컴퓨터 비전 및 패턴 인식, 2009. cvpr 2009. IEEE 컨퍼런스. IEEE, 2009, pp. 1597-1604.' 참조 - 또한 Achanta 등 또는 종래 시각적 세일런시 기법으로 명명될 수 있고 본 명세서에서 상호교환적으로 사용될 수 있음)을 이용하여 연산된 세일런시 지도.
d) P: 검색 공간으로부터 샘플링된 픽셀들의 세트.
e) Fw: Fh: 비디오 프레임들의 프레임 폭과 높이.
전술한 설명은 도 2에서 설명된 단계들에 의해 더 잘 이해될 것이다. 본 개시의 실시예에서, 단계 202에서, 하나 이상의 하드웨어 프로세서들(104)은, (i) 다수의 프레임들과 다수의 프레임들 내의 관심 대상을 구비하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 입력 비디오의 센터 프레임 상의 배치를 위해 사전-연산되는 라벨을, 실시간으로 수신한다. 일 실시예에서, 라벨은 라벨 높이와 라벨 폭을 포함한다. 본 개시의 실시예에서, 입력 비디오는 도 3에 도시된다. 초기 오버레이 위치를 가진 라벨(예, 입력 비디오의 센터 프레임 상에 있거나 배치될 라벨)은 입력으로서 또한 수신된다. 입력 비디오와 라벨을 수신하면, 단계 204에서, 하나 이상의 하드웨어 프로세서들은 다수의 세일런시 지도들을 얻기 위해 다수의 프레임들의 각각을 위한 세일런시 지도를 실 시간으로 연산한다. 예시적인 세일런시 지도는 도 3에 도시된다. 본 개시에서, 시스템(100)은 입력 비디오 내에 존재하는 각각의 프레임을 위해 세일런시 지도를 연산한다. 다시 말해서, 입력 비디오의 각각의 상응하는 프레임을 위해 하나의 세일런시 지도가 있을 것이다. 그래서, 세일런시 지도 연산은 다수의 세일런시 지도들을 얻기 위해 입력 비디오의 최종 프레임까지 반복적으로 수행된다.
단계 206에서, 하나 이상의 하드웨어 프로세서들(104)은, 다수의 유클리드 거리들을 얻기 위해 라벨의 초기 오버레이 위치에 기반하여 현재 오버레이 위치와 사전 오버레이 위치 사이의 유클리드 거리를 실 시간으로 연산한다. 유클리드 거리 연산은 다수의 유클리드 거리들을 얻기 위해 입력 비디오의 최종 프레임까지 반복적으로 수행된다. 다시 말해서, 유클리드 거리는 다수의 프레임들의 각각을 위해 연산된다. 다시 말해서, 세일런시 지도 연산의 경우와 마찬가지로 입력 비디오의 각각의 상응하는 프레임을 위해 하나의 유클리드 거리가 있을 것이다. 예시적인 유클리드 거리 연산은 도 3에 도시된다. 본 개시에서, 유클리드 거리는 입력 비디오 내에 배치될 라벨의 위치에 있는 시간 지터를 제어하기 위해 프레임들의 각각을 위해 연산된다. 시간 지터의 제어는 입력 비디오가 실-시간으로 수신되어 처리될 때 실 시간으로 발생한다.
다수의 세일런시 지도들과 다수의 유클리드 거리를 연산할 때, 단계 208에서, 하나 이상의 하드웨어 프로세서들(104)은, 다수의 세일런시 지도들과 다수의 유클리드 거리들에 기반하여 입력 비디오 내의 배치를 위한 라벨의 업데이트된 오버레이 위치를 실 시간으로 계산한다. 다시 말해서, 라벨의 업데이트된 오버레이 위치는, 도 3에 도시된 바와 같이, 다수의 세일런시 지도들과 다수의 유클리드 거리들의 연산에 의해 연산된다. 비록 단계 204와 단계 206은 순서대로 수행되지만, (i) 다수의 프레임들의 각각을 위한 세일런시 지도의 연산, 및 (ii) 다수의 프레임들의 각각을 위해, 현재 오버레이 위치와 사전 오버레이 위치 사이의 유클리드 거리는 동시에 수행될 수 있음을 유의해야 한다. 이것은 연산 시간을 더 줄 일 수 있고, 자원들을 더 좋거나 최적으로 활용할 수 있게 한다. 나아가서, 업데이트된 오버레이 위치를 계산할 때, 시스템(100)(또는 하나 이상의 하드웨어 프로세서들(104))은 단계 210에서 관심 대상의 조망의 가림을 최소화(또는 감소)하기 위해 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨이 쉬프트된다. 대안적으로, 조망은 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨이 쉬프트될 때 가림이 없는 것을 보장한다. 본 개시에서, 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은 초기 오버레이 위치로부터 업데이트된 오버레이 위치까지 라벨을 쉬프트하기 위해 선택된다. 다시 말해서, 유클리드 거리가 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 사전 오버레이 위치 사이인 하나 이상의 픽셀들은, 초기 오버레이 위치로부터 시스템(100)에 의해 실 시간으로 계산되는 업데이트된 오버레이 위치까지 라벨을 쉬프트하기 위해 선택된다. 업데이트된 오버레이 위치는 라벨 높이와 라벨 폭(예, 이 경우, 폭과 높이는 초기 오버레이 위치와 연관된 초기 폭과 높이와 동일할 수 있거나, 다수의 픽셀들의 선택에 의존하여 변화할 수 있음)을 가진 라벨에 속하는 정보를 구비한다. 예시적인 중첩된 프레임은 도 3에 도시된다. 보다 구체적으로, 도 3은 도 1 및 도 2를 참조하여, 본 개시의 일 실시예에 따라, 세일런시 지도들과 유클리드 거리들의 연산에 의해 입력 비디오 내의 실시간 배치를 위한 블록도를 나타낸다.
본 개시의 방법은 모든 k 프레임들에 대해 운영된다. 주어진 프레임에서, 시각적 세일런시 지도(세일런시 지도로도 명명되고, 상호교환적으로 사용됨)는 유사(pseudo) 코드(예, 세일런시 지도 연산)를 사용한다. 그러면, 시스템(100)은 검색 공간(예, ∑-검색 공간 샘플링 파라미터) 내에 제공된 픽셀 값들을 통해 반복하고, 사이즈(Oh,Ow)의 가상(hypothetical) 박스 내의 지도에 의해 주어진 세일런시 값들을 합산한다. 본 개시에서, 가장 낮은 합을 가진 픽셀 값은 가장 낮은 세일런스를 암시하는 이상(ideal) 후보로서 뽑힌다. λ(미리정의된 임계 범위 또는 미리정의된 임계값으로 명명됨)에 의해 변경된 사전 위치와 현재 위치 사이의 유클리드 거리(d)가 가능한 한 낮으면 오버레이가 쉬프트된다. 낮은 세일런시와 시간 지터 모두에 의해 부과된 제약들을 결합하기 위해, 본 개시는 다음과 같은 등식 (1)의 최적화 문제를 구성한다.
아래는 본 개시의 기법/방법의 예시적인 유사 코드이다.
for overalltransition
위의 유사 코드에서, 라인(또는 명령어 또는 프로그램 코드) 'SM = SaliencyMapComputation(frame)'을 실행하기 위해, 세일런스 지도 연산의 종래 기법이 참조될 수 있다(예, 컴퓨터 비젼 및 패턴 인식, 2009. cvpr 2009. IEEE 컨프런스. IEEE, 2009, pp. 1597-1604의 'Radhakrishna Achanta, Sheila Hemami, Francisco Estrada, 및 Sabine Susstrunk'의 "주파수-동조된 세일런트 구역 탐지" 참조 - 또한 https://infoscience.epfl.ch/record/135217/files/1708.pdf에서 찾아 볼 수 있는 Achanta 등으로 참조). 보다 구체적으로, 일 실시예에서, 세일런시 지도 연산의 보다 더 나은 이해를 위해 - 등식 (1),(2),(3) 및 (4)를 포함하는 Achanta 등의 전술한 참고문헌의 섹션 3.2.이 참조될 수 있다.
실험들 및 결과들
실험들은 검사-태블릿을 통한 3D 프린터 하의 대상을 조망하기 위해 피험자들(예, 방법/유사 코드를 시험하기 위해 25-34세의 집단들의 25명의 연구원들, 10명의 남성 및 15명의 여성)이 참여하였다. (a) 사용자 경험 및 (b) 오버레이들의 배치를 평가하기 위해 주관적 메트릭과 객관적 매트릭의 세트가 캡쳐되었다. 모든 실험들에서, 사용자들의 요구들에 따라 사용자 지정될 수 있는 50×50 치수를 가진 라벨이 사용되었다. 실험들은 Nexus® 6 안드로이드 폰과 Nexus® 9 태블릿 상에서 수행되었다. 사용자들은 1 내지 5의 규모에서 다음과 같은 파라미터들을 평가하기 위해 과제가 주어졌다. 그 후, 평균 평가점(mean opinion score)은 캡쳐되었다. 사용된 매트릭들은 (i) 오버레이의 위치, (ii) 오버레이 내의 낮은 지터, (iii) 오버레이의 색상과 텍스트, 및 (iv) 오버레이 민감성(responsiveness)이다.
본 개시의 방법을 평가하기 위하여, 본 개시는 DIEM 데이터세트(예, 'Parag K Mital, Tim J Smith, Robin L Hill, 및 John M Henderson의 "동적 장면 조망 동안 시선(gaze)의 클러스터링은 모션에 의해 예측된다", 인지적 연산, vol. 3, no. 1, pp. 5-24, 2011.' 참조 - 'http://pkmital.com/home/wp-content/uploads/2010/03/Mital_Clustering_of_Gaze_During_Dynamic_Scene_Viewing_is_Predicted.pdf')를 사용하였다. 본 개시에 의한 실험들을 수행하기 위해 데이터세트로부터 1280×720 해상도의 비디오들이 취해졌다. 이러한 테이터세트는 상이한 장르들의 광고들, 트레일러(trailer)들, 텔레비젼-시리즈들로부터 다양한 비디오들로 구성된다. 또한, 눈이 움직일 때마다, 이러한 데이터세트는 구체적인 눈 고정 세일런시 주석(annotation)들을 제공하였다.
실험 동안, 파라미터들(λ,∑)의 값들은, DIEM 데이터세트 상에서, 그리드 검색(업계에 알려짐)으로부터 실험적으로 발견되었고, 전체 비디오에 대하여 평균 세일런시 위의 라벨 가림(LOS) 스코어(아래에서 정의되고 논의됨)가 비교되었다. 도 4는 본 개시의 일 실시예에 따라, 등고선 선도로서 λ와 ∑의 변화에 따른 평균 세일런시 위의 라벨 가림(LOS) 스코어의 변화를 예시하는 그래프를 나타낸다. 보다 구체적으로, 도 4는 λ와 ∑에 대한 평균 LOS 스코어들의 등고선 선도를 나타낸다. 실험 동안, LOS 스코어는 λ에 독립하고, λ와 ∑의 최적 조합은 (5,0.021)임이 관찰되었다(도 4에서 참조부호 402에 의해 표시되고 더 작은 ∑가 바람직한 등고선 사이의 역 Y 유사 기호를 가진 라인 표현 참조).
결과들
주관적인 매트릭들(Subjective Metrics)
아래의 예시적인 [표 1]은 주관적인 매트릭 스코어들을 보여준다.
주관적 매트릭 | 값 (0-5) |
오버레이의 위치 | 4.5 |
오버레이 박스의 민감성 | 4.7 |
지터의 결핍 | 4.2 |
오버레이 박스의 색상 | 3.9 |
위의 [표 1]로부터, 본 개시에 따르면, 오버레이의 위치는 4.5로 평가됨으로써, 장면 내의 세일런트 구역들을 쉐도우(shadow)시키는 오버레이를 방지하는데 결정적임을 추론할 수 있다. 대략 초당 20 프레임(fps)의 속도로 운영하는 본 개시의 방법의 전술한 유사 코드의 실-시간 성능은 4.7의 오버레이 민감성이라는 높은 스코어의 결과를 낳는다. 간단한 색채 배합-흑색 폰트들을 가진 백색 박스 및 그 반대가 선택되었고, 박스 색상은 α=0.5의 투명도로 설정되었다. 오버레이 박스의 색상은 아래와 같은 예시적 등식(표현) (2)에 의해 주어진 픽셀 강도(intensities)(휘도 채널 Y)에 적용되는 간단한 적응성 임계에 의존한다.
데이터-구동 임계(Thresh)는 주어진 장면의 최소 휘도값과 최대 휘도값 사이의 차이의 평균이다. 만약, 값이 Thresh보다 크거나 같으면, 오버레이 박스는 흑색 배경을 사용하고, 그 반대도 성립한다(텍스트 라벨이 중첩되는 방식의 전체 구성이 제시되지만 실험들을 통해 입증되었음을 유의해야 함). 실험 동안 고려되는 샘플 오버레이는 전체 장면에 대한 맥락 관련 정보를 단지 보여 주었다. 또한, 이러한 예증으로부터 오버레이들은 실-시간으로 작동하고 동시에 지터가 덜하였음을 유의해야 한다.
객관적인 메트릭들(Objective Metrics)
본 개시의 방법/유사 코드에 의해 실행된 오버레이 배치의 유효성이 비교되었다. 이러한 비교의 평가 기준은 비디오들의 세일런시 실측 자료(ground truth)를 가진 라벨에 의해 가려진 평균 LOS 스코어에 기반하였다. 더 낮은 스코어는 더 낮은 가림을 가진 효과적인 오버레이 배치를 보인다. 세일런시 위의 라벨 가림(LOS) 스코어(S)는 다음과 같은 등식 (3)으로 정의되고 표현된다.
여기서, L은 오버레이에 의해 가려진 픽셀들(x,y)의 세트이고, G는 실측 자료 세일런시 지도이다. 본 개시의 방법을 위한 전술한 유사 코드는 0.042의 평균 LOS 스코어를 가지고, 오버레이 위치를 연산하기 위해 0.021초의 시간이 소요되었음이 발견되었다.
본 개시의 실시예들은 AR 응용들을 위한 비디오들 내의 실 시간 오버레이(맥락 관련 정보) 배치의 시스템들과 방법들을 제공한다. 전술한 실험들과 결과들에 기반하여, 본 개시는 장면의 보다 나은 해석을 돕는 라벨의 최적의 배치를 통해 관심 대상/장면에 대한 가림의 제한들을 극복하는 것이 관찰되었다. 오버레이들의 배치는, (i) 관심 대상 주위의 시각적 세일런시 및 (ii) 실시간 AR 응용들(특히, (저가 또는 고가의) 스마트폰들, 태블릿(들), AR 기반 브라우저들 등에 실행되는) 내의 코히런스를 가능하게 하는 시간 지터를 최소화시키는 목적 함수로서 표현된다. AR 응용들의 예는, 네비게이션 지도, 게임 응용들에서 시각화될 수 있는 것과 같은 가상 환경 경험 등을 포함할 수 있지만 이에 한정되는 것은 아니다. AR 기반 응용들의 다른 예들은, 박물관 탐구 작업들을 위한 라이브 상황 인식, 산업적 검사 및 수리 작업들, 광고 및 미디어, 및 관광 산업을 포함하지만 이에 한정되는 것은 아니다.
본 명세서의 상세한 설명은 본 발명의 주제를 당업자가 실시예들을 만들고 사용할 수 있도록 하기 위해 기술한다. 본 발명의 주제의 실시예들의 범위는 청구항들에 의해 정의되고 당업자에게 생길 수 있는 다른 변형들을 포함할 수 있다. 이러한 변형들은 청구항들의 문언적 의미를 벗어나지 않는 유사한 구성요소들을 그들이 가거나 그들이 청구항들의 문언적 의미를 벗어나지 않는 비실질적인 차이를 가지면 청구항들의 범위 내에 속하는 것을 의미한다.
본 발명의 보호 범위는 그 안에 미시지를 가진 컴퓨터-판독가능한 수단에 부가하여 그러한 프로그램에도 확장되는 것을 의도하고, 이러한 컴퓨터-판독가능한 저장 매체는, 프로그램이 서버 또는 모바일 디바이스 또는 임의의 적절한 프로그램 가능한 디바이스 상에서 운영될 때 본 발명의 방법의 하나 이상의 단계들의 구현을 위한 프로그램-코드 수단을 포함한다. 하드웨어 디바이스는 예컨대, 임의의 종류의 컴퓨터 유사 서버 또는 개인용 컴퓨터 등, 또는 임의의 조합일 수 있는 임의의 종류의 디바이스일 수 있다. 또한, 디바이스는 예컨데, 하드웨어 수단, 특수 용도 집적 회로(ASIC), 필드-프로그램가능한 게이트 어레이(FPGA)와 같은 하드웨어 수단, 또는 ASIC과 FPGA와 같이 하드웨어와 소프트웨어 수단의 조합, 또는 그 안에 위치된 소프트웨어 모듈을 가진 적어도 하나의 마이크로프로세서와 적어도 하나의 메모리일 수 있다. 따라서, 수단은 하드웨어 수단과 소프트웨어 수단 모두를 포함할 수 있다. 본 명세서에 개시된 방법 실시예들은 하드웨어와 소프트웨어에 의해 구현될 수 있다. 또한, 디바이스는 소프트웨어 수단을 포함할 수 있다. 대안적으로, 실시예들은 예컨대, 다수의 CPU들을 이용하여, 상이한 하드웨어 디바이스들 상에서 구현될 수도 있다.
본 명세서의 실시예들은 하드웨어 요소와 소프트웨어 요소를 포함할 수 있다. 소프트웨어 내에 구현된 실시예들은 펌웨어, 상주 소프트웨어, 마이크로코드 등을 포함할 수 있지만 이에 한정되는 것은 아니다. 본 명세서에서 설명된 다양한 모듈들에 의해 수행된 기능들은 다른 모듈들 또는 다른 모듈들의 조합들 내에서 구현될 수도 있다. 이러한 설명의 목적으로, 컴퓨터-이용가능하거나 컴퓨터 판독가능한 매체는, 명령어 실행 시스템, 장치, 또는 디바이스와 함께 또는 그에 의해 사용하기 위한 프로그램을 저장, 통신, 전파, 또는 전송할 수 있는 임의의 장치일 수 있다.
예시된 단계들은 도시된 예시적 실시예들을 설명하기 위해 착수되었고, 계속되는 기술적 개발은 특정의 기능들이 수행되는 방식을 변경시킬 것임을 예상한다. 이러한 예들은 본 명세서에서 예시를 목적으로 제시되었고 제한하지는 않는다. 나아가서, 기능적 구성 요소들의 경계들은 설명의 편의상 본 명세서에서 임의적으로 정의되었다. 대안적인 경계들은 특정의 기능들 및 그 관계들이 적절하게 수행되는 한 정의될 수 있다. 대안들(본 명세서에 개시된 것들의 균등물, 연장물, 변형물, 변이물 등을 포함)은 본 명세서 내에 개시된 시사점들에 기반하여 당업자에게 명백할 것이다. 이러한 대안들은 개시된 실시예들의 정신과 범위에 속한다.
100...시스템
102...메모리
104...프로세서
106...인터페이스 디바이스
108...데이터베이스
102...메모리
104...프로세서
106...인터페이스 디바이스
108...데이터베이스
Claims (15)
- 프로세서 구현된 방법으로서,
(i) 다수의 프레임들과 상기 다수의 프레임들 내의 관심 대상을 구비하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 상기 입력 비디오의 센터 프레임 상의 배치를 위해 사전(pre)-연산되기 위한 라벨을, 실 시간으로 수신하는 단계(202);
다수의 세일런시(saliency) 지도들을 얻기 위해 상기 다수의 프레임들의 각각을 위한 세일런시 지도를, 실 시간으로 연산하는 단계(204);
상기 다수의 프레임들의 각각을 위해, 다수의 유클리드 거리(Euclidean distance)들을 얻기 위해 현재 오버레이 위치와 라벨의 초기 오버레이 위치에 기반하는 사전(previous) 오버레이 위치 사이의 유클리드 거리를, 실 시간으로 연산하는 단계(206);
상기 다수의 세일리언시 지도들과 상기 다수의 유클리드 거리들에 기반하여 상기 입력 비디오 내의 배치를 위한 라벨의 업데이트된 오버레이 위치를, 실 시간으로 계산하는 단계; 및
관심 대상의 조망(viewing)의 가림(occlusion)을 최소화하기 위해, 상기 초기 오버레이 위치로부터 상기 업데이트된 오버레이 위치까지 상기 라벨을 쉬프트시키는 단계(210)를 포함하는, 프로세서 구현 방법.
- 청구항 1에서,
상기 라벨의 업데이트된 오버레이 위치는, 상기 다수의 세일런시 지도들과 상기 다수의 유클리드 거리들의 조합에 의해 연산되는, 프로세서 구현 방법.
- 청구항 1에서,
상기 다수의 프레임들의 각각의 위한 유클리드 거리는, 상기 입력 비디오 내에 배치될 라벨의 위치 내의 시간 지터(temporal jitter)를, 실 시간으로, 제어하기 위해 연산되는, 프로세서 구현 방법.
- 삭제
- 청구항 1에서,
상기 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 상기 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은, 상기 초기 오버레이 위치로부터 상기 업데이트된 오버레이 위치까지 상기 라벨을 쉬프트시키기 위해 선택되는, 프로세서 구현 방법.
- 시스템(100)으로서,
명령들을 저장하는 메모리(102);
하나 이상의 통신 인터페이스들(106); 및
상기 하나 이상의 통신 인터페이스들(106)을 통해 상기 메모리(102)에 결합된 하나 이상의 하드웨어 프로세서들(104)을 구비하고, 상기 하나 이상의 하드웨어 프로세서들(104)은,
(i) 다수의 프레임들과 상기 다수의 프레임들 내의 관심 대상을 포함하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 상기 입력 비디오의 센터 프레임 상의 배치를 위해 사전-연산되기 위한 라벨을, 실 시간으로 수신하는 명령;
다수의 세일런시 지도들을 얻기 위해 상기 다수의 프레임들의 각각을 위한 세일런시 지도를, 실 시간으로 연산하는 명령;
다수의 유클리드 거리들을 얻기 위해 현재 오버레이 위치와 상기 라벨의 상기 초기 오버레이 위치에 기반하는 사전 오버레이 위치 사이의 유클리드 거리를, 상기 다수의 프레임들의 각각을 위해, 실 시간으로 연산하는 명령;
상기 다수의 세일런시 지도들과 상기 다수의 유클리드 거리들에 기반하여 상기 입력 비디오 내의 배치를 위한 상기 라벨의 업데이트된 오버레이 위치를, 실 시간으로 계산하는 명령; 및
관심 대상의 조망의 가림을 최소화시키기 위해 상기 초기 오버레이 위치로부터 상기 업데이트된 오버레이 위치까지 상기 라벨을 쉬프트시키는 명령에 의해, 구성된, 시스템.
- 청구항 6에서,
상기 라벨의 상기 업데이트된 오버레이 위치는 상기 다수의 세일런시 지도들과 상기 다수의 유클리드 거리들의 조합에 의해 연산되는, 시스템.
- 청구항 6에서,
상기 다수의 프레임들의 각각을 위한 유클리드 거리는, 상기 입력 비디오 내에 배치될 상기 라벨의 위치 내의 시간 지터를, 실 시간으로, 제어하기 위해 연산되는, 시스템.
- 삭제
- 청구항 6에서,
상기 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 상기 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은, 상기 초기 오버레이 위치로부터 상기 업데이트된 오버레이 위치까지 상기 라벨을 쉬프트시키기 위해 선택되는, 시스템.
- 하나 이상의 하드웨어 프로세서들에 의해 실행될 때 하나 이상의 명령들을 포함하는 하나 이상의 비-일시적 기계 판독가능한 정보 저장 매체들로서,
상기 하나 이상의 명령들은,
(i) 다수의 프레임들과 상기 다수의 프레임들 내의 관심 대상을 구비하는 입력 비디오, 및 (ii) 초기 오버레이 위치가 상기 입력 비디오의 센터 프레임 상의 배치를 위해 사전(pre)-연산되기 위한 라벨을, 실 시간으로 수신하고;
다수의 세일런시 지도들을 얻기 위해 상기 다수의 프레임들의 각각을 위한 세일런시 지도를, 실 시간으로 연산하고;
상기 다수의 프레임들의 각각을 위해, 다수의 유클리드 거리들을 얻기 위해 현재 오버레이 위치와 라벨의 초기 오버레이 위치에 기반하는 사전 오버레이 위치 사이의 유클리드 거리를, 실 시간으로 연산하고;
상기 다수의 세일리언시 지도들과 상기 다수의 유클리드 거리들에 기반하여 상기 입력 비디오 내의 배치를 위한 라벨의 업데이트된 오버레이 위치를, 실 시간으로 계산하고; 및
관심 대상의 조망의 가림을 최소화시키기 위해 상기 초기 오버레이 위치로부터 상기 업데이트된 오버레이 위치까지 상기 라벨을 쉬프트시키는, 하나 이상의 비-일시적 기계 판독가능한 정보 저장 매체들.
- 청구항 11에서,
상기 라벨의 상기 업데이트된 오버레이 위치는 상기 다수의 세일런시 지도들과 상기 다수의 유클리드 거리들의 조합에 의해 연산되는, 하나 이상의 비-일시적 기계 판독가능한 정보 저장 매체들.
- 청구항 11에서,
상기 다수의 프레임들의 각각을 위한 유클리드 거리는, 상기 입력 비디오 내에 배치될 상기 라벨의 위치 내의 시간 지터를, 실 시간으로, 제어하기 위해 연산되는, 하나 이상의 비-일시적 기계 판독가능한 정보 저장 매체들.
- 삭제
- 청구항 11에서,
상기 현재 오버레이 위치와 미리정의된 임계 범위 내에 있는 상기 사전 오버레이 위치 사이의 유클리드 거리에 상응하는 다수의 픽셀들은, 상기 초기 오버레이 위치로부터 상기 업데이트된 오버레이 위치까지 상기 라벨을 쉬프트시키기 위해 선택되는, 하나 이상의 비-일시적 기계 판독가능한 정보 저장 매체들.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201821033541 | 2018-09-06 | ||
IN201821033541 | 2018-09-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200028317A KR20200028317A (ko) | 2020-03-16 |
KR102218608B1 true KR102218608B1 (ko) | 2021-02-19 |
Family
ID=65408871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190110345A KR102218608B1 (ko) | 2018-09-06 | 2019-09-05 | 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10636176B2 (ko) |
EP (1) | EP3621039A1 (ko) |
JP (1) | JP6811796B2 (ko) |
KR (1) | KR102218608B1 (ko) |
CN (1) | CN110881109B (ko) |
AU (1) | AU2019201358B2 (ko) |
CA (1) | CA3035482C (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444295B (zh) * | 2020-03-09 | 2023-05-02 | 北京明略软件***有限公司 | 一种管理感知设备的方法和装置 |
WO2021238145A1 (zh) * | 2020-05-26 | 2021-12-02 | 北京市商汤科技开发有限公司 | Ar场景内容的生成方法、展示方法、装置及存储介质 |
US20220207787A1 (en) * | 2020-12-28 | 2022-06-30 | Q Alpha, Inc. | Method and system for inserting secondary multimedia information relative to primary multimedia information |
KR102423096B1 (ko) * | 2020-12-29 | 2022-07-19 | 한국세라믹기술원 | 가상 결함 데이터 생성 방법 |
CN117409175B (zh) * | 2023-12-14 | 2024-03-19 | 碳丝路文化传播(成都)有限公司 | 一种视频录制方法、***、电子设备及介质 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6282317B1 (en) | 1998-12-31 | 2001-08-28 | Eastman Kodak Company | Method for automatic determination of main subjects in photographic images |
JP4048996B2 (ja) * | 2003-04-11 | 2008-02-20 | ソニー株式会社 | テロップの抽出装置および抽出方法、並びにプログラムおよび媒体 |
JP5110978B2 (ja) * | 2007-06-25 | 2012-12-26 | 三菱電機株式会社 | 送信装置、受信装置及び再生装置 |
WO2010026745A1 (ja) * | 2008-09-02 | 2010-03-11 | パナソニック株式会社 | コンテンツ表示処理装置及びコンテンツ表示処理方法 |
US8693780B2 (en) | 2009-06-22 | 2014-04-08 | Technion Research & Development Foundation Limited | Automated collage formation from photographic images |
US9183580B2 (en) * | 2010-11-04 | 2015-11-10 | Digimarc Corporation | Methods and systems for resource management on portable devices |
US20110287811A1 (en) * | 2010-05-21 | 2011-11-24 | Nokia Corporation | Method and apparatus for an augmented reality x-ray |
US8698843B2 (en) * | 2010-11-02 | 2014-04-15 | Google Inc. | Range of focus in an augmented reality application |
US9147221B2 (en) * | 2012-05-23 | 2015-09-29 | Qualcomm Incorporated | Image-driven view management for annotations |
ITRM20130022A1 (it) * | 2013-01-11 | 2014-07-12 | Natural Intelligent Technologies S R L | Procedimento e apparato di riconoscimento di scrittura a mano |
US9467750B2 (en) * | 2013-05-31 | 2016-10-11 | Adobe Systems Incorporated | Placing unobtrusive overlays in video content |
JP2014235224A (ja) * | 2013-05-31 | 2014-12-15 | 株式会社ニコン | 撮像装置および制御プログラム |
US20150262428A1 (en) * | 2014-03-17 | 2015-09-17 | Qualcomm Incorporated | Hierarchical clustering for view management augmented reality |
EP3140716B1 (en) * | 2014-05-08 | 2020-04-01 | Sony Corporation | Portable electronic equipment and method of controlling a portable electronic equipment |
US20170023793A1 (en) * | 2015-03-16 | 2017-01-26 | RaayonNova, LLC | Smart Contact Lens with Embedded Display and Image Focusing System |
US9684993B2 (en) * | 2015-09-23 | 2017-06-20 | Lucasfilm Entertainment Company Ltd. | Flight path correction in virtual scenes |
WO2017219288A1 (zh) * | 2016-06-22 | 2017-12-28 | 华为技术有限公司 | 头戴式显示设备及其处理方法 |
-
2019
- 2019-01-29 EP EP19154180.4A patent/EP3621039A1/en active Pending
- 2019-02-01 US US16/265,969 patent/US10636176B2/en active Active - Reinstated
- 2019-02-27 AU AU2019201358A patent/AU2019201358B2/en active Active
- 2019-03-04 CA CA3035482A patent/CA3035482C/en active Active
- 2019-03-06 JP JP2019040829A patent/JP6811796B2/ja active Active
- 2019-09-05 KR KR1020190110345A patent/KR102218608B1/ko active IP Right Grant
- 2019-09-06 CN CN201910843028.4A patent/CN110881109B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
US10636176B2 (en) | 2020-04-28 |
AU2019201358B2 (en) | 2021-02-25 |
JP2020042759A (ja) | 2020-03-19 |
EP3621039A1 (en) | 2020-03-11 |
CN110881109B (zh) | 2022-02-08 |
CN110881109A (zh) | 2020-03-13 |
CA3035482A1 (en) | 2020-03-06 |
CA3035482C (en) | 2022-06-28 |
AU2019201358A1 (en) | 2020-03-26 |
JP6811796B2 (ja) | 2021-01-13 |
US20200082574A1 (en) | 2020-03-12 |
KR20200028317A (ko) | 2020-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102218608B1 (ko) | 증강 현실 응용들을 위한 비디오들 내의 실 시간 오버레이 배치 | |
CN109508681B (zh) | 生成人体关键点检测模型的方法和装置 | |
US10956967B2 (en) | Generating and providing augmented reality representations of recommended products based on style similarity in relation to real-world surroundings | |
US10789622B2 (en) | Generating and providing augmented reality representations of recommended products based on style compatibility in relation to real-world surroundings | |
US11244430B2 (en) | Digital image fill | |
US10846870B2 (en) | Joint training technique for depth map generation | |
KR20200040885A (ko) | 타겟 추적 방법 및 장치, 전자 기기, 저장 매체 | |
US10140513B2 (en) | Reference image slicing | |
JP2021507388A (ja) | インスタンスセグメンテーション方法および装置、電子機器、プログラムならびに媒体 | |
US11158077B2 (en) | Disparity estimation | |
US11978216B2 (en) | Patch-based image matting using deep learning | |
US20180329927A1 (en) | Thumbnail Generation from Panoramic Images | |
CN116235209A (zh) | 稀疏光流估计 | |
US20140369622A1 (en) | Image completion based on patch offset statistics | |
US20240005587A1 (en) | Machine learning based controllable animation of still images | |
CN110827341A (zh) | 一种图片深度估计方法、装置和存储介质 | |
CN114299105A (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
Porzi et al. | An automatic image-to-DEM alignment approach for annotating mountains pictures on a smartphone | |
US20240161364A1 (en) | Generating image mattes without trimap segmenetations via a multi-branch neural network | |
US20230196817A1 (en) | Generating segmentation masks for objects in digital videos using pose tracking data | |
CN114596516A (zh) | 目标跟踪方法、装置、电子设备及计算机可读存储介质 | |
Chao et al. | Spherical triangle mesh representation and multi-channel residual graph convolution network-based blind omnidirectional image quality assessment | |
Pham | Integrating a Neural Network for Depth from Defocus with a Single MEMS Actuated Camera | |
CN113256361A (zh) | 商品发布方法及图像处理方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |