KR20180120801A - 양안 및 단안시 간의 전환 - Google Patents

양안 및 단안시 간의 전환 Download PDF

Info

Publication number
KR20180120801A
KR20180120801A KR1020187031251A KR20187031251A KR20180120801A KR 20180120801 A KR20180120801 A KR 20180120801A KR 1020187031251 A KR1020187031251 A KR 1020187031251A KR 20187031251 A KR20187031251 A KR 20187031251A KR 20180120801 A KR20180120801 A KR 20180120801A
Authority
KR
South Korea
Prior art keywords
image
composite
view
scene
camera
Prior art date
Application number
KR1020187031251A
Other languages
English (en)
Other versions
KR102027897B1 (ko
Inventor
브라이언 키이스 캐브럴
포레스트 사무엘 브릭스
Original Assignee
페이스북, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 페이스북, 인크. filed Critical 페이스북, 인크.
Publication of KR20180120801A publication Critical patent/KR20180120801A/ko
Application granted granted Critical
Publication of KR102027897B1 publication Critical patent/KR102027897B1/ko

Links

Images

Classifications

    • G02B27/2214
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B30/00Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images
    • G02B30/20Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images by providing first and second parallax images to an observer's left and right eyes
    • G02B30/26Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images by providing first and second parallax images to an observer's left and right eyes of the autostereoscopic type
    • G02B30/27Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images by providing first and second parallax images to an observer's left and right eyes of the autostereoscopic type involving lenticular arrays
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B7/00Mountings, adjusting means, or light-tight connections, for optical elements
    • G02B7/02Mountings, adjusting means, or light-tight connections, for optical elements for lenses
    • G02B7/04Mountings, adjusting means, or light-tight connections, for optical elements for lenses with mechanism for focusing or varying magnification
    • G02B7/06Focusing binocular pairs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/147Details of sensors, e.g. sensor lenses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • 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/20228Disparity calculation for image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/028Multiple view windows (top-side-front-sagittal-orthogonal)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/16Image acquisition using multiple overlapping images; Image stitching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0088Synthesising a monoscopic image signal from stereoscopic images, e.g. synthesising a panoramic or high resolution monoscopic image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Health & Medical Sciences (AREA)
  • Vascular Medicine (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Optics & Photonics (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Studio Devices (AREA)
  • Stereoscopic And Panoramic Photography (AREA)
  • Image Generation (AREA)

Abstract

이미지 프로세싱 시스템은 양안시와 단안시 간의 부드러운 전환을 가지는 캔버스 뷰를 생성하도록 설계된다. 처음에, 이미지 프로세싱 시스템은 장면의 상부/하부 이미지 및 측면 이미지를 수신하고 사용자의 좌측 및 우측 뷰를 위한 합성 측면 이미지를 생성하기 위하여 오프셋을 계산한다. 양안시와 단안시 간의 부드러운 전환을 실현하기 위하여, 이미지 프로세싱 시스템은 먼저 상부/하부 이미지를 대응하는 합성 측면 이미지에 워프하여 워프된 상부/하부 이미지를 생성하는데, 형상의 관점에서 부드러운 전환을 실현한다. 이미지 프로세싱 시스템은 그 후 워프된 상부/하부 이미지를 대응하는 합성 측면 이미지로 모핑하여 블렌딩된 이미지로 좌측 및 우측 눈 뷰를 위한 블렌딩된 이미지를 생성한다. 이미지 프로세싱 시스템은 블렌딩된 이미지에 기반하여 이미지 형상 및 색상의 관점에서 양안시와 단안시 간의 부드러운 전환을 가지는 캔버스 뷰를 생성한다.

Description

양안 및 단안시 간의 전환
본 명세서는 일반적으로 시각 시스템에 관한 것이고, 보다 구체적으로 양안 및 단안시 간의 부드러운 전환을 실현하는 이미지 프로세싱 시스템에 관한 것이다.
가상 현실(VR)은 점점 대중화되고 다중 카메라 시스템이 종종 이미지 및/또는 비디오를 캡처하여 VR 시스템을 경험하는 사용자를 위해 가상 장면을 생성하기 위해 VR 시스템에서 사용된다. 상이한 카메라에 의해 캡처된 이미지가 조합되어 사용자가 VR 효과를 경험하기 위해 가상 장면을 제공하는데 사용되는 카메라 뷰를 생성할 수 있다. 하지만, 상이한 카메라에 의해 캡처된 이미지를 조합하여 합성 이미지를 생성할 때 문제가 생길 수 있다. 일례로, 상이한 카메라로 찍은 동일 객체의 이미지를 거칠게 블렌딩하는 것은 조합된 이미지에서 복시(double vision)를 유발할 수 있다. 나아가, 위아래를 보는 사용자를 위한 뷰를 시뮬레이트하기 위해 캔버스 뷰를 생성할 때, 양안시 및 단안시 간의 전환이 요동치거나 양안시의 상부 및 측면 카메라 간의 이음매를 제공할 수 있는데, 생성된 뷰에 왜곡을 유발하고 VR 시스템과의 사용자 경험을 저하시킨다.
따라서, 양안 및 단안시 간의 부드러운 전환이 필요하다.
이미지 프로세싱 시스템은 이미지 블렌딩을 통해 양안시 및 단안시 간에 부드럽게 전환하는 캔버스를 생성한다.
이미지 프로세싱 시스템은 객체를 포함하는 장면의 이미지를 수신하는데, 카메라 리그(rig) 시스템에 의해 캡처된다. 캡처된 이미지는 카메라 리그 시스템에 포함된 상부/하부 축 카메라에 의해 찍힌 상부/하부 이미지 및 주변 카메라에 의해 찍힌 측면 이미지를 포함한다. 또한 이미지 프로세싱 시스템은 하나 이상의 주변 카메라 사이의 합성 카메라의 위치로부터의 뷰를 시뮬레이트하기 위하여 측면 이미지로부터 합성 이미지를 생성한다. 합성 이미지는 사용자의 눈의 시야선이 객체를 향할 때 사용자의 좌측/우측 뷰를 시뮬레이트하는 합성 뷰를 반영한다. 다중 합성 뷰가 생성될 수 있는데, 예컨대 사용자의 왼쪽 및 오른쪽 눈을 위한 뷰를 시뮬레이트하고, 이로써 양안시를 제공하기 위함이다.
합성 이미지가 생성된 후, 이미지 프로세싱 시스템은 양안시(각 눈이 다름) 및 단안시(각 눈이 같음) 간의 부드러운 전환을 위한 이미지 블렌딩을 실행한다. 주변 카메라의 시야보다 높은 각도에서 캔버스 뷰의 일부에 대해, 상부 또는 하부 카메라가 사용되는데, 두 눈에 대해 동일 이미지를 제공하고 이로써 단안시를 제공할 수 있다. 단안 및 양안시 간의 전환을 부드럽게 하기 위하여, 상부/하부 이미지가 대응하는 합성 이미지에 먼저 워프되어 형상의 관점에서 부드러운 전환을 위한 워프된 상부/하부 이미지를 생성하고, 광학 흐름이 형상 워프를 위해 사용된다. 이미지 프로세싱 시스템은 워프된 상부/하부 이미지를 합성 이미지로 모핑하여 색상의 관점에서 부드러운 전환을 위한 블렌딩된 이미지를 생성하고, 알파 블렌딩이 색상 모핑을 위해 사용된다. 이미지 프로세싱 시스템은 상술한 블렌딩 프로세스를 좌측 눈 뷰 및 우측 눈 뷰 모두에 적용하는데, 왼쪽 및 오른쪽 눈 모두를 위한 캔버스 뷰를 생성한다.
일부 실시예에서, 이미지 프로세싱 시스템은 합성 뷰의 위치를 수직 각도의 함수로 조정하여, 두 눈을 위한 두 합성 카메라가 지면의 수직각 레벨에서 최대 동공간 거리에 위치하도록 하고, 수직 각도가 주변 카메라의 시야보다 높은 각도에 접근함에 따라 두 합성 카메라 간의 거리가 감소된다. 두 합성 카메라 간의 거리는 감소된 동공간 거리를 수직 각도의 함수로 시뮬레이트함으로써 감소될 수 있다. 일부 실시예에서, 동공간 거리는 수직 각도가 임계치보다 높을 때 0인데, 이는 주변 카메라의 시야보다 높은 수직 각도에 대응할 수 있다. 이 경우, 합성 카메라는 동일 위치 및 뷰를 가질 수 있다.
일부 예시에서, 카메라 뷰는 카메라 리그의 지지 구조체와 같은 객체에 의해 가려질 수 있다. 객체의 가림은 부 카메라 뷰를 주 카메라 뷰에 병합함으로써 제거된다. 주 카메라 뷰는 다른 카메라의 시점과 일치하는 뷰를 포함할 수 있지만, 환경의 일부의 뷰를 가리는 객체를 포함한다. 부 카메라는 객체의 다른 쪽에 위치하여, 부 카메라는 주 뷰에서 객체에 의해 가려진 환경의 일부를 포함한다. 주 및 부 뷰에서, 필터가 가리는 객체를 포함하는 뷰의 일부에 적용된다. 필터는 필터가 적용되는 픽셀의 알파 채널 또는 픽셀 값을 제외하거나 제로 아웃할 수 있다. 광학 흐름이 부 뷰로부터 주 뷰로 계산되고, 부 뷰가 광학 흐름을 사용하여 주 뷰와 조합된다. 주 카메라와 유사한 환경 뷰를 가지는 부 뷰를 가지고 결과 이미지를 조합함으로써, 가려짐 없이 환경을 캡처하는 단일 카메라의 환상을 만들어내는 조합된 뷰가 생성될 수 있다.
본 발명에 따른 실시예들은 특히 방법, 저장 매체, 시스템 및 컴퓨터 프로그램 제품에 대한 첨부된 청구항에 개시되고, 한 청구항 카테고리, 예컨대 방법에 언급된 임의의 특징은 다른 청구항 카테고리, 예컨대 시스템에도 청구될 수 있다. 첨부된 청구항의 인용 또는 참조는 형식상의 이유를 위해 선택되었을 뿐이다. 하지만 임의의 선행 청구항으로의 의도적인 참조(특히 다중 인용)에서 야기되는 임의의 주제 또한 청구될 수 있어, 청구항 및 그 특징의 임의의 조합이 첨부된 청구항에서 선택된 인용에 관계 없이 개시되고 청구될 수 있다. 청구될 수 있는 주제는 첨부된 청구항에 나타난 바와 같은 특징의 조합뿐만 아니라 청구항의 특징의 다른 임의의 조합을 포함하는데, 청구항에 언급된 각 특징은 청구항의 임의의 다른 특징 또는 다른 특징의 조합과 조합될 수 있다. 나아가, 임의의 실시예와 본 명세서에 서술되거나 도시된 특징은 별개의 청구항 및/또는 임의의 실시예나 본 명세서에 서술되거나 도시된 특징과의 또는 첨부된 청구항의 임의의 특징과의 조합에 청구될 수 있다.
본 발명에 따른 일실시예에서, 방법은:
장면의 상부 이미지를 수신하는 단계;
장면의 제1 및 제2 합성 이미지를 수신하는 단계; 및
제1 및 제2 합성 이미지 각각에 대하여:
장면의 상부 이미지의 합성 이미지와의 오버랩되는 부분을 식별하는 단계;
오버랩되는 부분 내에서, 장면의 상부 이미지로부터 합성 이미지로의 광학 흐름을 결정하는 단계;
광학 흐름을 적용함으로써 상부 이미지를 합성 이미지에 블렌딩함으로써 워프된 상부 이미지를 생성하는 단계; 및
장면의 상부 이미지, 합성 이미지 및 워프된 상부 이미지를 조합함으로써 사용자의 대응하는 눈의 뷰를 위한 캔버스 뷰를 생성하는 단계를 포함할 수 있고,
제1 및 제2 합성 이미지는 개별적으로 사용자의 좌측 눈 뷰 및 우측 눈 뷰에 대응하고,
광학 흐름은 수직 각도의 함수로 적용된다.
광학 흐름을 적용하기 위한 함수는 오버랩되는 부분이 상부 이미지와 인접하기 시작하는 수직 각도에서 광학 흐름을 적용하지 않을 수 있다.
광학 흐름을 적용하기 위한 함수는 오버랩되는 부분의 피봇 행에서 전체 광학 흐름을 적용할 수 있다.
본 발명에 따른 일실시예에서, 방법은:
제1 및 제2 합성 이미지 각각에 대하여: 피봇 행 및 오버랩되는 부분이 측면 부분과 인접하는 이미지의 측면 전용 부분 사이의 합성 이미지로 상부 이미지의 색상을 모핑하는 단계를 포함할 수 있다.
색상 모핑은 피봇 행 및 측면 부분과 인접하는 오버랩되는 부분 사이에서 0 내지 측면 이미지 색상의 완전 색상 모핑의 범위를 가질 수 있다.
제1 및 제2 뷰는 사용자의 좌측 우측 눈 뷰와 우측 눈 뷰 사이의 IPD(interpupillary distance)의 함수로서 거리만큼 이격될 수 있다.
IPD는 장면의 수직 각도의 함수일 수 있다.
π/2의 수직 각도에서 IPD는 최대 IPD일 수 있다.
π의 수직 각도에서 IPD는 0일 수 있다.
본 발명에 따른 일실시예에서, 비일시적 컴퓨터 판독가능한 저장 매체는 컴퓨터 프로그램 명령어를 저장할 수 있고, 컴퓨터 프로그램 명령어는 컴퓨터 프로세서에 의해 실행될 때 프로세서로 하여금:
장면의 상부 이미지를 수신하는 단계;
장면의 제1 및 제2 합성 이미지를 수신하는 단계; 및
제1 및 제2 합성 이미지 각각에 대하여:
장면의 상부 이미지의 합성 이미지와의 오버랩되는 부분을 식별하는 단계;
오버랩되는 부분 내에서, 장면의 상부 이미지로부터 합성 이미지로의 광학 흐름을 결정하는 단계;
광학 흐름을 적용함으로써 상부 이미지를 합성 이미지에 블렌딩함으로써 워프된 상부 이미지를 생성하는 단계; 및
장면의 상부 이미지, 합성 이미지 및 워프된 상부 이미지를 조합함으로써 사용자의 대응하는 눈의 뷰를 위한 캔버스 뷰를 생성하는 단계를 수행하도록 야기할 수 있고,
제1 및 제2 합성 이미지는 개별적으로 사용자의 좌측 눈 뷰 및 우측 눈 뷰에 대응하고,
광학 흐름은 수직 각도의 함수로 적용된다.
광학 흐름을 적용하기 위한 함수는 오버랩되는 부분이 상부 이미지와 인접하기 시작하는 수직 각도에서 광학 흐름을 적용하지 않을 수 있다.
광학 흐름을 적용하기 위한 함수는 오버랩되는 부분의 피봇 행에서 전체 광학 흐름을 적용할 수 있다.
본 발명에 따른 일실시예에서, 비일시적 컴퓨터 판독가능한 저장 매체는,
제1 및 제2 합성 이미지 각각에 대하여: 피봇 행 및 오버랩되는 부분이 측면 부분과 인접하는 이미지의 측면 전용 부분 사이의 합성 이미지로 상부 이미지의 색상을 모핑하는 단계를 포함할 수 있다.
색상 모핑은 피봇 행 및 측면 부분과 인접하는 오버랩되는 부분 사이에서 0 내지 측면 이미지 색상의 완전 색상 모핑의 범위를 가질 수 있다.
제1 및 제2 뷰는 사용자의 좌측 우측 눈 뷰와 우측 눈 뷰 사이의 IPD(interpupillary distance)의 함수로서 거리만큼 이격될 수 있다.
IPD는 장면의 수직 각도의 함수일 수 있다.
π/2의 수직 각도에서 IPD는 최대 IPD일 수 있다.
π의 수직 각도에서 IPD는 0일 수 있다.
본 발명에 따른 실시예로, 하나 이상의 컴퓨터-판독가능한 비-일시적 저장매체는 본 발명 또는 상술한 실시예들 중 임의의 것에 따른 방법을 수행하도록 실행시 동작가능한 소프트웨어를 포함할 수 있다.
본 발명에 따른 실시예로, 시스템은 하나 이상의 프로세서; 및 프로세서에 결합되며 프로세서에 의해 실행가능한 명령어들을 포함하는 적어도 하나의 메모리를 포함할 수 있으며, 상기 프로세서는 명령어들을 실행시 본 발명 또는 상술한 실시예들 중 임의의 것에 따른 방법을 수행하도록 동작가능하다.
본 발명에 따른 실시예로, 바람직하게는 컴퓨터-판독가능한 비-일시적 저장 매체를 포함하는 컴퓨터 프로그램 제품이 데이터 처리 시스템에서 실행시 본 발명 또는 상술한 실시예들 중 임의의 것에 따른 방법을 수행하도록 동작가능할 수 있다.
본 발명의 내용 중에 포함되어 있다.
도 1은 일실시예에 따른 이미지 프로세싱 시스템이 구동되는 시스템 환경의 블록도이다.
도 2a는 일실시예에 따른 카메라 리그 시스템의 사시도를 도시한다.
도 2b는 일실시예에 따른 카메라 리그 시스템의 측면도를 도시한다.
도 3은 일실시예에 따른 이미지 프로세싱 시스템의 구조의 블록도를 도시한다.
도 4a는 일실시예에 따른 카메라 리그 시스템을 사용하여 객체를 보는 사용자의 눈의 뷰를 시뮬레이트하는 환경을 도시하는 라인 다이어그램을 도시한다.
도 4b는 일실시예에 따른 사용자의 왼쪽 눈과 오른쪽 눈의 뷰를 시뮬레이트하는 합성 이미지에 대한 오프셋을 식별하는 프로세스를 도시하는 라인 다이어그램을 도시한다.
도 4c는 일실시예에 따른 수직 각도의 변화에 응답한 동공간 거리의 변화를 도시하는 라인 다이어그램을 도시한다.
도 5는 일실시예에 따른 캔버스 뷰를 생성하기 위해 합성 이미지로의 상부/하부 이미지를 위한 이미지 블렌딩을 도시하는 라인 다이어그램을 도시한다.
도 6은 일실시예에 따른 이미지 프로세싱 시스템을 통한 합성 이미지 생성 및 대응하는 합성 이미지로의 상부 이미지의 이미지 블렌딩을 실행하는 프로세스를 도시하는 흐름도의 예시를 도시한다.
도 7은 일실시예에 따른 가려진 하부 카메라를 가지는 카메라 리그 시스템의 예시를 도시한다.
도 8은 일실시예에 따른 주 하부 카메라 및 부 하부 카메라 각각에 의해 찍힌 주 하부 이미지 및 부 하부 이미지의 카메라 뷰를 도시한다.
도면들은 단지 예로서 본 발명의 다양한 실시예들을 도시한다. 통상의 기술자는 후술할 설명으로부터 본 명세서에 설명되는 구조 및 방법의 대안적인 실시예가 본 명세서에 설명되는 원리로부터 벗어나지 않고 채용될 수 있음을 용이하게 인식할 것이다.
시스템 구조
도 1은 일실시예에 따른 이미지 프로세싱 시스템(300)이 구동되는 시스템 환경(100)의 블록도이다. 도 1에 도시된 시스템 환경(100)은 카메라 리그 시스템(200), 이미지 프로세싱 시스템(300) 및 클라이언트 VR 장치(180)을 포함한다. 단 하나의 카메라 리그 시스템(200), 하나의 이미지 프로세싱 시스템(300) 및 하나의 클라이언트 VR 장치(180)만이 설명의 목적으로 도 1에 도시되어 있다. 도시되지 않은 대안의 실시예에서, 시스템 환경(100)은 다수의 카메라 리그 시스템(200), 이미지 프로세싱 시스템(300) 및 클라이언트 VR 장치(180) 및 상이한 및/또는 추가적인 컴포넌트를 포함할 수 있다. 유사하게, 시스템 환경(100)의 다양한 엔티티에 의해 수행되는 기능이 상이한 실시예에서 상이할 수 있다.
카메라 리그 시스템(200)은 로컬 영역 또는 객체의 이미지 및/또는 비디오를 캡처하도록 설계된 다중 카메라 시스템이다. 로컬 영역은 카메라 리그 시스템(200)을 둘러싸는 환경이다. 예를 들어, 로컬 영역은 카메라 리그 시스템(200)이 안에 위치된 방일 수 있다. 카메라 리그 시스템(200)이 캡처한 이미지는 장면이나 객체의 다수의 뷰일 수 있는데, VR 시스템을 위한 장면의 캔버스 뷰를 생성하는데 사용되고 클라이언트 VR 장치(180)에 생성된 캔버스 뷰가 제공된다. 캔버스 뷰는 카메라 리그 시스템(200)의 다양한 카메라로부터의 뷰를 조합하는 뷰를 지칭하고, 임의의 파노라마, 구형 파노라마 또는 적합한 장면의 광각 뷰일 수 있다. 보다 구체적으로, 한 캔버스 뷰는 사용자의 왼눈을 위해 생성되고 다른 캔버스 뷰는 사용자의 오른눈을 위해 생성된다. 사용자가 클라이언트 VR 장치(180)를 착용할 때, 캔버스 뷰가 사용자에게 가상 현실 장면을 생성하는데 사용된다.
일부 실시예에서, 카메라 리그 시스템(200)은 카메라 리그 시스템의 원점에 서있는 클라이언트 VR 장치(180)를 착용한 사용자를 위한 경험을 시뮬레이트하기 위한 이미지도 캡처한다. 도 2a-2b에서 더 자세히 후술되는 바와 같이, 카메라 리그 시스템(200)은 다수의 주변 카메라(230), 상부 축 카메라(240A) 및 하부 축 카메라(240B)를 포함한다. 일부 실시예에서, 카메라 리그 시스템(200)에 포함된 카메라가 캡처한 이미지와 관련된 이미지 데이터가 이미지 프로세싱을 위하여 이미지 프로세싱 시스템(300)으로 출력된다. 더 자세히 후술되는 바와 같이, 주변 카메라(230)는 장면의 측면 이미지를 캡처하고, 상부 축 카메라(240A)는 장면의 상부 이미지를 캡처하고, 하부 축 카메라(240B)는 장면의 하부 이미지를 캡처하고, 캡처된 이미지는 캔버스 뷰를 생성하기 위하여 이미지 프로세싱 시스템(300)에 제공된다. 상부/하부 축 카메라가 캡처한 상부/하부 이미지도 상부/하부 카메라 뷰를 나타낸다. 상부 및 하부 카메라가 장면의 상부 및 하부의 단일 이미지를 캡처할 수 있기 때문에, 상부 및 하부를 위한 뷰는 단안일 수 있고, 즉 좌측 및 우측 눈 모두를 위한 동일한 이미지를 가진다. 이미지 프로세싱 시스템은 보다 자세히 후술되는 바와 같이, 대응하는 합성 카메라가 위치해야 하는 장소로부터의 사용자의 왼쪽 및 오른쪽 뷰를 시뮬레이트하는 합성 이미지도 생성한다. 사용자가 주변 카메라에 의해 보이는 방향을 볼 때, 주변 카메라(230)는 왼쪽 및 오른쪽 눈을 위한 상이한 뷰를 생성하고 이로써 사용자에게 장면의 객체의 깊이 지각을 제공하는 양안시를 제공하는데 사용될 수 있다. 사용자가 위나 아래를 볼 때 사용자의 단안시와 양안시 간의 전환을 시뮬레이트하기 위하여, 이미지 프로세싱 시스템(300)은 두 합성 이미지 각각에 상부 이미지와 하부 이미지를 블렌딩하여 사용자의 좌측 눈 뷰와 우측 눈 뷰를 시뮬레이트한다.
이미지 프로세싱 시스템(300)은 카메라 리그 시스템(200)으로부터 캡처된 이미지를 수신하고 클라이언트 VR 장치(180)를 착용한 사용자를 위한 좌측 뷰와 우측 뷰를 생성한다. 생성된 좌측 뷰와 우측 뷰는 사용자가 위나 아래를 볼 때 양안시와 단안시 간의 부드러운 전환을 제공한다. 좌측 및 우측 뷰를 생성하기 위하여, 주변 카메라(230)에 의해 찍힌 측면 이미지가 수신된 후, 이미지 프로세싱 시스템(300)은 좌측 눈 뷰와 우측 눈 뷰를 위한 합성 이미지를 생성한다. 예를 들어, 좌측 눈 뷰를 위하여, 합성 측면 이미지가 왼눈의 뷰를 나타내는 대응하는 합성 카메라를 위하여 생성된다. 상부/하부 축 카메라(240)가 찍은 상부/하부 이미지가 합성 이미지에 블렌딩되어 상부/하부 이미지 및 합성 이미지의 형상과 색상의 부드러운 블렌딩을 실현한다.
도 4a-4b에 보다 자세히 후술되는 바와 같이, 주변 카메라(230) 및 축 카메라(240)와 같은 실제 카메라와 대조적으로, 합성 카메라는 카메라 리그 주변부(215)과 사용자의 왼눈과 오른눈이 장면의 객체를 볼 때 사용자의 시야선 간의 교차점에 위치한 가상 카메라이다. 더 자세히, 적어도 두 개의 합성 카메라(430)가 시뮬레이트되는데, 하나는 왼눈의 합성 이미지를 “생성”하기 위한 것이고, 다른 하나는 오른눈의 합성 측면 이미지를 “생성”하기 위한 것이다. 일실시예에서, 합성 이미지는 대응하는 주변 카메라(230)가 찍은 측면 이미지 및 이미지 프로세싱 시스템(300)에 의해 계산되는 합성 카메라를 위한 주변 카메라 사이의 위치에 기반하여 생성된다. 다른 실시예에서, 좌측 눈 뷰 또는 우측 눈 뷰를 위하여, 실제의 주변 카메라(230)가 합성 카메라를 위한 위치에서 이미지를 캡처할 수 있다. 이 경우 실제 주변 카메라가 찍은 이미지는 눈을 위한 합성 이미지로 간주된다.
상부/하부 이미지는 생성된 합성 이미지에 블렌딩되어 합성 측면 이미지에 비해 형상 및 색상 변화를 부드럽게 한다. 보다 자세히 후술되는 바와 같이, 좌측 눈 뷰 및 우측 눈 뷰에 대응하는 합성 이미지 각각에 대하여, 이미지 프로세싱 시스템(300)이 먼저 상부/하부 이미지를 합성 이미지에 워프하여 형상 블렌딩을 실현하고, 워프된 상부/하부 이미지를 합성 이미지에 모핑하여 색상 모핑을 실현한다. 이들 프로세스 각각은 이미지의 수직 각도의 함수일 수 있다. 즉, 각도가 높을수록(상부 카메라의 경우), 결과 이미지가 더 가까이 상부 카메라 뷰로서 형상 및 색상이 될 수 있다.
광학 흐름을 통한 형상 워프 및 알파 블렌딩을 통한 색상 모핑 이후 블렌딩된 이미지가 캔버스 뷰를 생성하는데 사용될 수 있다. 예를 들어, 좌측 눈 뷰를 위한 블렌딩된 이미지가 사용자의 왼눈을 위한 캔버스 뷰를 생성하는데 사용되고, 우측 눈 뷰를 위한 블렌딩된 이미지가 사용자의 오른눈을 위한 캔버스 뷰를 생성하는데 사용된다. 도 5에 더 자세히 후술되는 바와 같이, 캔버스 뷰는 상부 전용 부분, 하부 전용 부분, 측면 전용 부분, 상부 뷰와 측면 뷰 간의 오버랩된 부분 및 하부 뷰와 측면 뷰 간의 오버랩된 부분을 포함한다. 상부 전용 부분은 상부 이미지에 의하여만 제공되는 캔버스 뷰의 부분을 지칭하고, 하부 전용 부분은 하부 이미지에 의하여만 제공되는 캔버스 뷰의 부분을 지칭하고, 오버랩된 부분은 상부/하부 이미지와 측면 이미지 모두에 의하여 공유 및 제공되는 캔버스 뷰의 부분을 지칭한다. 블렌딩된 이미지는 상부/하부 뷰와 측면 뷰 간의 오버랩된 부분을 정확하게 만들고 복시와 같은 이미지 문제 없이 부드럽게 한다.
클라이언트 VR 장치(180)는 사용자에게 미디어를 표시하는 헤드 마운트 디스플레이이다. 보다 구체적으로, 클라이언트 VR 장치(180)는 이미지 프로세싱 시스템(300)에 의해 제공되는 이미지나 비디오를 수신하고, 클라이언트 VR 장치를 착용한 사용자에게 가상 장면을 제공한다. 예를 들어, 클라이언트 VR 장치(180)는 사용자에게 이미지 프로세싱 시스템(300)에 의해 생성된 캔버스 뷰에 의해 생성된 입체 3D 가상 장면을 제공한다. 클라이언트 VR 장치(180)는 상호작용성이고 사용자의 행위에 응답하여 상이한 이미지 및/또는 비디오를 보여줄 수도 있다. 예를 들어, 가상 장면의 다른 부분을 보기 위하여 사용자의 눈이 한 방향에서 다른 방향으로 회전할 때(예컨대, 위에서 아래로), 클라이언트 VR 장치(180)는 사용자의 눈의 회전에 응답하여 정확한 이미지를 제공하여, 사용자가 가상 장면의 상이한 부분의 부드러운 전환을 경험할 수 있게 한다.
도 2a 및 도 2b는 일실시예에 따른 카메라 리그 시스템(200)의 상이한 도면을 도시한다. 특히, 도 2a는 일실시예에 따른 카메라 리그 시스템(200)의 사시도이다. 도 2a에 도시된 바와 같이, 카메라 리그 시스템(200)은 정렬 축(205), 상부 플레이트(210), 하부 플레이트(220), 다수의 주변 카메라(230) 및 다수의 축 카메라(240)를 포함한다. 다수의 주변 카메라(230)는 정렬 축(205)에 의해 이등분되는 중심점 주위로 링을 형성하도록 배열된다. 카메라 리그 시스템(200)은 다수의 주변 카메라(230)의 링의 주변을 보여주는 카메라 리그 주변부(215)도 포함한다. 보다 구체적으로, 카메라 리그 주변부(215)는 각 주변 카메라(230)의 렌즈가 위치하는 링의 주변부를 보여준다. 상부 플레이트(210)는 주변 카메라(230)의 링의 상부 표면에 연결되고 하부 플레이트(220)는 주변 카메라(230)의 링의 하부 표면에 연결된다. 축 카메라(240)는 정렬 축(205)을 따라 정렬되고 로컬 영역이나 장면의 상부 뷰 및 하부 뷰를 캡처할 수 있다. 이 구성은 주변 카메라(230)의 진동을 방지하는 강성 구조를 생성하고 주변 카메라가 VR 시스템을 위한 360도 이미지/비디오를 생성하는데 사용되는 품질의 이미지 및/또는 비디오를 캡처할 수 있게 하는데, 또한 주변 카메라와 축 카메라가 함께 VR 시스템의 캔버스 뷰를 생성할 수 있게 한다. 보다 자세히는, 장면의 캔버스 뷰가 상부 축 카메라(240A)가 캡처한 상부 뷰, 하부 축 카메라(240B)(도 2b에 도시)가 캡처한 하부 뷰 및 다수의 주변 카메라(230)가 캡처한 측면 뷰를 조합함으로써 생성된다.
도 2a에서, 14개의 주변 카메라(230)와 상부 축 카메라(240) 및 하부 축 카메라(여기에 도시되지 않음)를 포함하여 두 축 카메라가 설명의 목적으로 도시된다. 도시되지 않은 대안의 실시예에서, 상이한 수의 주변 카메라(230) 및/또는 축 카메라(240)가 카메라 리그 시스템(200)에 포함될 수 있다. 유사하게, 추가적 및/또는 상이한 컴포넌트가 카메라 리그 시스템(200)에 포함될 수 있다. 나아가, 도 2a에 도시된 다양한 엔티티에 의해 수행되는 기능은 상이한 실시예에서 상이할 수 있다.
보다 자세히, 주변 카메라(230)는 로컬 영역이나 장면의 360도 뷰의 이미지 및/또는 비디오를 캡처하도록 설계된다. 상술한 바와 같이, 다수의 주변 카메라(230)는 정렬 축(205)에 의해 이등분되는 중심점 주위로 링을 형성하도록 위치된다. 다수의 주변 카메라(230)도 각 주변 카메라의 광학 축이 한 면에 있고 각 주변 카메라의 시야는 중심점 반대를 향하도록 중심점 주위에 위치된다. 도 2a에 도시된 바와 같이, 각 주변 카메라(230)는 인접 주변 카메라 옆에 특정 거리 및 특정 각도로 또한 위치한다. 이 구성은 캡처되는 이미지 및/또는 비디오가 인가의 시각 지각을 더 잘 시뮬레이트할 수 있게 하는데, 클라이언트 VR 장치(180)를 착용한 사용자에게 VR 시스템에서 향상된 사용자 경험을 더 제공한다.
축 카메라(240)는 로컬 영역이나 장면의 상부 및 하부 뷰의 이미지 및/또는 비디오를 캡처하도록 설계된다. 각 축 카메라(240)는 정렬 축(205)를 따라 정렬되고 각 축 카메라의 광학 축이 정렬 축과 동일 평면이도록 배치된다. 각 축 카메라(240)의 시야는 카메라 리그 시스템(200)의 중심점 반대를 향한다. 도 2a에 도시된 바와 같이, 상부 축 카메라(240A)는 로컬 영역이나 로컬 장면의 상부 뷰를 캡처한다. 하부 축 카메라(240B)(도 2b에 도시)는 정렬 축(205)을 따라 상부 축 카메라(240)와 대칭으로 위치되어 로컬 영역의 하부 뷰를 캡처한다. 일례로, 상부 축 카메라(240) 및 하부 카메라는 어안 렌즈를 포함할 수 있는데, 넓은 시야, 예컨대 180도 반구의 시야를 캡처한다.
도 2b는 일실시예에 따른 카메라 리그 시스템(200)의 측면도를 도시한다. 도 2a에서 상술한 바와 같이, 상부 축 카메라(240A) 및 하부 축 카메라(240B)에 설치된 렌즈는 넓은 시야각을 가지는 어안 렌즈인데, 도 2b에 도시된 θ3이다. 도시되지 않은 대안적인 실시예에서, 시야각 θ3은 달라질 수 있다. 상부 축 카메라(240A) 및 하부 축 카메라(240B)에 설치된 렌즈의 넓은 시야각은 환경의 상부 및 하부 영역을 넓게 커버하게 하고 주변 카메라(230)와 충분한 오버랩을 제공하여 고품질의 3D 360도 이미지가 생성될 수 있다.
도 3은 일시시예에 따른 이미지 프로세싱 시스템(300)의 구조의 블록도의 예시를 도시한다. 이미지 프로세싱 시스템(300)은 카메라 리그 시스템(200)으로부터 카메라 리그 시스템의 다수의 카메라가 캡처한 이미지 및/또는 비디오와 같은 입력을 수신한다. 예를 들어, 이미지 프로세싱 시스템(300)은 카메라 리그 시스템(200)이 캡처한 로컬 장면의 상부 이미지, 하부 이미지 및 측면 이미지를 수신한다. 이미지 프로세싱 시스템(300)은 주변 카메라(230)가 캡처한 수신된 이미지에 기반하여 합성 측면 이미지를 생성한다. 이미지 프로세싱 시스템(300)은 좌측 눈 뷰 및 우측 눈 뷰 각각에 대하여, 상부/하부 이미지를 합성 측면 이미지에 블렌딩하여 캔버스 뷰를 생성하는데, 클라이언트 VR 장치(180)를 착용한 사용자가 클라이언트 VR 장치가 제공하는 가상 장면에서 위나 아래를 보려 의도할 때 양안시와 단안시 간의 부드러운 전환을 가능하게 한다. 보다 자세히 후술하는 바와 같이, 블렌딩 프로세스는 형상 워프 및 색상 모핑을 포함하고, 형상 워프는 광학 흐름을 사용하고 색상 모핑은 알파 블렌딩을 사용한다.
도 3에서, 이미지 프로세싱 시스템(300)은 인터페이스 모듈(322), 합성 이미지 생성 모듈(324), 오프셋 계산 모듈(326), 블렌딩 모듈(328), 캔버스 뷰 생성 모듈(330), 로우 이미지 데이터 스토어(342), 파라미터 데이터 스토어(344), 합성 이미지 데이터 스토어(346), 블렌딩 데이터 스토어(348) 및 캔버스 뷰 데이터 스토어(350)를 포함한다. 도시되지 않은 대안적 실시예에서, 추가적 및/또는 상이한 컴포넌트가 이미지 프로세싱 시스템(300)에 포함될 수 있다. 유사하게, 이미지 프로세싱 시스템(300)의 다양한 엔티티에 의해 수행되는 기능이 상이한 실시예에서 상이할 수 있다.
인터페이스 모듈(322)은 카메라 리그 시스템(200) 및/또는 클라이언트 VR 장치(180)로부터 입력 데이터를 수신한다. 보다 구체적으로, 인터페이스 모듈(322)은 로컬 장면에 대하여, 카메라 리그 시스템(200)이 캡처한 상부 이미지, 하부 이미지 및 측면 이미지를 수신한다. 상부 이미지는 상부 축 카메라(240A)에 의해 캡처되고, 하부 이미지는 하부 축 카메라(240B)에 의해 캡처되고, 측면 이미지는 주변 카메라(230)에 의해 캡처된다. 인터페이스 모듈(322)은 카메라 리그 시스템(200)이 캡처한 이미지에 관련된 이미지 데이터 및/또는 비디오 데이터도 수신할 수 있다. 일실시예에서, 인터페이스 모듈(322)은 더 자세히 후술되는 바와 같이, 카메라 리그 시스템(200)에 대한 및 클라이언트 VR 장치(180)를 착용한 사용자에 대한 파라미터 데이터도 수신할 수 있다. 파라미터 데이터의 예시는 사용자의 IPD(interpupillary distance) 및 객체에 대한 영 시차 거리를 포함한다. 파라미터의 예시는 파라미터 데이터 스토어(344)의 관점에서 더 서술된다. 수신된 이미지 및/또는 관련 이미지 데이터는 이미지 데이터 스토어(342)에 저장된다. 수신된 파라미터 데이터는 파라미터 데이터 스토어(344)에 저장된다.
인터페이스 모듈(322)은 클라이언트 VR 장치(180)로부터 입력 데이터도 수신할 수 있다. 일례로, 인터페이스 모듈(322)은 클라이언트 VR 장치(180)를 착용한 사용자에게 제공되는 뷰, 이미지 및/또는 데이터에 대한 피드백 정보를 수신하고 피드백에 응답하여 사용자에게 가상 장면을 렌더링하기 위하여 출력 데이터, 예컨대 수정되거나 업데이트된 이미지를 제공한다. 보다 구체적으로, 인터페이스 모듈(322)은 클라이언트 VR 장치(180)에 캔버스 뷰 생성 모듈(330)이 생성한 캔버스 뷰를 제공한다.
인터페이스 모듈(322)은 상술하는 바와 같이 카메라 리그 시스템(200) 및/또는 클라이언트 VR 장치(180)로 데이터를 출력할 수도 있다. 클라이언트 VR 장치(180)로의 출력 데이터는 상술한 바와 같이 이미지 및/또는 비디오를 포함할 수 있다. 카메라 리그 시스템(200)으로의 출력 데이터는 상이한 장면에 대한 추가 이미지 요청일 수 있다.
합성 이미지 생성 모듈(324)은 합성 측면 이미지를 포함하는 합성 이미지를 생성한다. 합성 이미지는 도 4a에 더 도시되는 바와 같이 카메라 리그 주변부(215)의 한 점에 위치한 합성 카메라가 찍은 이미지를 지칭한다. 일실시예에서, 합성 이미지는 주변 카메라(230)와 같은 실제 카메라가 찍은 둘 이상의 카메라 이미지 간의 광학 흐름을 사용하여 생성될 수 있다. 인접 주변 카메라(230)로부터의 카메라 이미지 각각은 다른 주변 카메라를 향하는 광학 흐름에 의하여 수정될 수 있고, 결과 이미지는 조합되어 합성 이미지를 생성한다. 다른 실시예에서, 본 출원에서 논의되는 합성 이미지는 실제 주변 카메라를 대응하는 합성 카메라가 위치해야 하는 지점에 배치함으로써 생성될 수 있다.
합성 이미지를 생성하기 위하여, 합성 이미지 생성 모듈(324)은 로우 이미지 데이터 스토어(342)에 저장된 측면 이미지 또는 관련 이미지 데이터 및 파라미터 데이터 스토어(344)에 저장된 파라미터 데이터를 추출한다. 추출된 측면 이미지나 관련 데이터는 합성 카메라가 위치된 지점 근처의 하나 이상의 주변 카메라(230)가 찍을 수 있다. 추출된 파라미터 데이터는 도 4a에 도시되는 바와 같이 대응하는 눈에 대한 시야선(434)에 대한 정보카메라 리그 시스템(200)에 대한 구성 정보, 예컨대 합성 카메라가 위치해야 하는 점(431)에 위치한 카메라 리그 시스템(200)의 크기와 형상을 포함할 수 있다. 일부 실시예에서, 식별 넘버 또는 인덱스는 합성 이미지 및/또는 관련 이미지 데이터에 추가되어 합성 이미지들 간에 서로 구별될 수 있다.
오프셋 계산 모듈(326)은 캔버스 뷰에 대한 합성 이미지 내의 오프셋을 계산한다. 더 자세히, 도 4a-4b에 더 후술되는 바와 같이, 오프셋은 눈이 장면의 특정 객체를 볼 때 합성 카메라가 위치한 점에서 시야를 시뮬레이트하는 합성 이미지의 일부를 생성하기 위한 합성 이미지의 시프트를 지칭한다. 더 자세히, 도 4b에 더 후술되는 바와 같이, 합성 카메라의 시야의 중간선은 사용자의 대응 시야의 시야선과 정렬되지 않을 수 있는데, 합성 카메라가 위치해야 하는 위치(431)로부터 사용자의 좌측 눈 뷰를 반영하기 위하여 합성 카메라가 찍은 합성 이미지가 오프셋으로 조정된 경우이다.
오프셋 계산 모듈(326)은 파라미터 데이터 스토어(344)에 저장된 파라미터 데이터, 예컨대 사용자의 동공간 거리(410), 시야선(434)의 영 시차 거리 및 각도(432A)를 추출한다. 오프셋 값은 동공간 거리(410), 시야선(434)의 영 시차 거리 및 각도(432A)의 함수이다. 도 4a-b에 더 자세히 후술되는 바와 같이, 특히, 사용자의 눈이 회전할 때, 예컨대 점진적으로 양안시로 위를 보는 사용자가 단안시로 전환할 때, 동일 사용자 및 동일 카메라 리그 시스템(200)에 대하여, 오프셋은 동공간 거리(410)의 변화에 응답하여 변화한다.
계산된 오프셋은 파라미터 데이터 스토어(344)에 저장된다. 일부 실시예에서, 장면의 상이한 이미지를 위한 왼눈과 오른눈을 위한 상이한 오프셋이 식별 넘버로 인덱싱 또는 라벨링되어 서로 구별된다.
블렌딩 모듈(328)은 사용자의 왼눈 및 오른눈 각각에 대하여, 양안 및 단안시 간의 전환을 위하여 상부/하부 이미지를 합성 이미지에 블렌딩한다. 더 자세히, 왼눈을 위해 찍힌 상부 이미지를 예시로, 블렌딩 모듈(328)은 로우 이미지 데이터 스토어(342)로부터 상부 이미지 및 합성 이미지 스토어(346)로부터 합성 이미지를 추출하고, 형상 워프를 실행하여 상부 이미지를 합성 이미지에 블렌딩하여, 워프된 상부 이미지를 생성한다. 일부 실시예에서, 형상 워프의 프로세스는 광학 흐름을 통하여 수행된다. 블렌딩 모듈(328)은 색상 모핑을 위하여 워프된 상부 이미지를 동일한 합성 이미지에 더 블렌딩하여, 왼눈을 위한 캔버스 뷰를 생성하기에 준비된 블렌딩된 이미지를 생성한다. 일부 실시예에서, 색상 모핑의 프로세스는 상이한 기술을 통해 실현되고, 기술의 일례는 보다 자세히 후술되는 바와 같이 알파 블렌딩이다. 이미지에서 워프와 블렌딩 정도는 도 5에 더 자세히 서술되는 바와 같이 합성 이미지의 부분과 상부 이미지의 오버랩 내의 수직 각도의 함수일 수 있다. 유사한 프로세스가 형상 워프 및 색상 모핑을 통해 하부 이미지를 왼눈을 위한 합성 이미지에 블렌딩하기 위해 실행된다. 나아가, 위와 유사한 프로세스가 상부/하부 이미지를 오른눈을 위한 합성 이미지에 블렌딩하기 위하여도 실행된다.
워프된 상부/하부 이미지 및/또는 왼쪽/오른쪽을 위한 상부/하부 이미지를 위한 관련 이미지 데이터는 블렌딩 데이터 스토어(348)에 저장된다. 일부 실시예에서, 워프된 상부/하부 이미지 및/또는 관련 이미지 데이터는 식별 넘버로 인덱싱 또는 라벨링되어 서로 구별된다. 블렌딩된 이미지 및/또는 왼쪽/오른쪽을 위한 상부/하부 이미지를 위한 관련 이미지 데이터도 블렌딩 데이터 스토어(348)에 저장된다. 일부 실시예에서, 블렌딩된 상부/하부 이미지 및/또는 관련 이미지 데이터는 식별 넘버로 인덱싱 또는 라벨링되어 서로 구별되거나, 워프된 하부/상부 이미지 및/또는 관련 이미지 데이터와 구별된다.
캔버스 뷰 생성 모듈(330)은 왼쪽 및 오른쪽 눈 각각에 대하여, 캔버스 뷰를 생성한다. 캔버스 뷰는 동일 장면에 대하여, 상부 뷰, 하부 뷰 및 360도 뷰를 조합한 뷰를 지칭하는데, 임의의 파노라마, 구형 파노라마 또는 적합한 장면의 광각 뷰일 수 있다. 일부 실시예에서, 캔버스 뷰는 장면에 대한 모든 정보를 포함하는데, 상부/하부 축 카메라(240) 및 주변 카메라(230)에 의하여 상이한 관점에서 상이한 이미지로부터 획득된다. 상술한 바와 같이, 단일 장면에 대하여, 그 이미지는 카메라 리그 시스템(200)의 다양한 카메라에 의해 캡처되고, 한 캔버스 뷰는 왼눈에 대해 생성되고, 한 캔버스 뷰는 오른눈에 대해 생성된다. 복시와 같은 이미지 문제를 일으킬 수 있게 단순히 상부/하부 이미지를 주변 카메라가 찍은 측면 이미지와 조합하는 대신, 캔버스 뷰 생성 모듈(330)은 도 5에서 더 자세히 후술되는 바와 같이, 상부 이미지와 하부 이미지로부터 생성되는 블렌딩된 이미지를 조합함으로써 한 특정 눈(예컨대, 왼쪽/오른쪽 눈)에 대해 캔버스 뷰를 생성한다. 대응하는 눈에 대해 생성된 캔버스 뷰는 상이한 뷰간 부드러운 전환을 가능하게 한다. 일례로, 캔버스 뷰는 사용자의 눈의 시야선(434)이 동일 수평면에서 회전하며 사용자가 왼쪽 및/또는 오른쪽이나 앞 및/또는 뒤를 볼 때, 측면 뷰 간의 부드러운 전환을 가능하게 한다. 측면 뷰는 주변 카메라(230)에 의하여만 찍힌 이미지에 의하여 시뮬레이트될 수 있다. 다른 예시로, 캔버스 뷰는 사용자의 눈의 시야선(434)이 위 및/또는 아래로 회전하며 사용자가 위 및/또는 아래를 볼 때, 양안시와 단안시 간의 부드러운 전환을 가능하게 한다. 생성된 캔버스 뷰는 캔버스 뷰 데이터 스토어(350)에 저장된다.
로우 이미지 데이터 스토어(342)는 카메라 리그 시스템(200)의 다양한 카메라에 의해 캡처된 이미지 및 캡처된 이미지에 관련된 이미지 데이터를 저장한다. 일례로, 로우 이미지 데이터 스토어(342)는 상부/하부 이미지와 관련 이미지 데이터를 저장하고, 상부/하부 이미지는 대응하는 상부/하부 축 카메라(240)에 의해 캡처된다. 로우 이미지 데이터 스토어(342)는 측면 이미지와 관련 이미지 데이터도 저장하고, 측면 이미지는 주변 카메라(230)에 의해 캡처된다. 이미지 데이터는 2D 이미지 상의 각 픽셀에 대한 정보, 예컨대 각 픽셀의 강도, 그래디언트 및 색상을 포함할 수 있다. 이미지 데이터 스토어(322)에 저장된 이미지 및 이미지 데이터는 합성 이미지 생성 모듈(324)이 상술한 바와 같이 합성 이미지를 생성하는데 사용된다. 이미지 데이터 스토어(322)에 저장된 이미지 및 이미지 데이터는 블렌딩 모듈(328)이 상술한 바와 같이 워프된 상부/하부 이미지 및 블렌딩된 이미지를 생성하는데도 사용된다.
파라미터 데이터 스토어(344)는 합성 이미지를 생성하는데 사용되는 파라미터 데이터를 저장한다. 파라미터 데이터는 카메라 리그 시스템(200)의 구성 데이터, 예컨대, 카메라 리그 주변부(215)의 크기, 카메라 리그 시스템에 포함되는 각 주변 카메라(230)의 위치, 카메라 리그 시스템의 중심점(405)의 위치 등을 포함한다. 카메라 리그 시스템(200)의 구성 데이터는 각 주변 카메라(230)와 각 축 카메라(240)의 구성 정보, 예컨대 카메라에 설치된 렌즈의 속성, 예컨대 렌즈의 시야도 포함할 수 있다. 파라미터 데이터는 도 4a에 더 자세히 후술되는 바와 같이, 사용자의 눈이 특정 객체(445)를 볼 때 사용자의 뷰를 시뮬레이트하기 위한 정보도 포함한다. 정보는 사용자의 동공간 거리(410), 왼눈과 오른눈 모두에 대한 시야선(434)의 영 시차 거리, 중심점(405)과 객체(445) 사이의 중앙선(440)의 거리, 광학 축(433)과 중앙선 사이의 각도(432A) 등을 포함한다. 정보는, 예컨대 합성 이미지를 생성하는데 사용될 수 있다. 파라미터 데이터 스토어(344)에 저장된 파라미터 데이터는 오프셋 계산 모듈(326)에 의해 계산된 오프셋도 포함한다.
합성 이미지 데이터 스토어(346)는 합성 이미지 및 관련 이미지 데이터를 저장한다. 이미지 데이터는 2D 이미지 상의 각 픽셀에 대한 정보, 예컨대 각 픽셀의 강도, 그래디언트 및 색상을 포함할 수 있다.
블렌딩 데이터 스토어(348)는 워프된 상부/하부 이미지 및/또는 관련 데이터, 및 블렌딩된 이미지 및/또는 관련 데이터를 저장한다. 상술한 바와 같이, 워프된 상부/하부 이미지는 이미지의 형상의 관점에서 합성 이미지로 워프된 상부/하부 이미지를 지칭한다. 일실시예 또는 한 정의에서, 상부 이미지를 예시로, 워프된 상부 이미지는 광학 흐름을 통해 대응하는 합성 이미지로 워프된 상부 이미지로 왜곡된 이미지인데, 워프된 상부 이미지가 상부 이미지에 의하여만 커버되는(즉, 상부 카메라로부터의 원래 이미지 데이터를 포함하는) 상부 전용 부분, 합성 이미지에 의하여만 커버되는 측면 전용 부분 및 상부 이미지 및 합성 이미지 모두에 의하여 커버되는 오버랩되는 부분을 포함하는 경우이다. 위와 유사한 실시예도 하부 이미지로부터 생성된 워프된 하부 이미지에 적용한다. 나아가, 왼눈과 오른눈 각 눈에 대하여, 한 워프된 상부 이미지는 상부 이미지에 대해 생성되고 한 워프된 하부 이미지는 하부 이미지에 대해 생성된다.
블렌딩 데이터 스토어(348)도 왼눈과 오른눈을 위한 블렌딩된 이미지를 저장한다. 상술한 바와 같이, 블렌딩된 이미지는 이미지의 색상의 관점에서 워프된 상부/하부 이미지로 모핑된 합성 이미지를 지칭한다. 일실시예 또는 한 정의에서, 상부 이미지를 예시로, 블렌딩된 이미지는 알파 블렌딩을 통해 대응하는 합성 이미지로 모핑된 워프된 상부 이미지와 조합된 이미지인데, 블렌딩된 이미지가 상부 이미지에 의하여만 커버되는(즉, 상부 카메라로부터의 원래 이미지 데이터를 포함하는) 상부 전용 부분, 워프된 상부 이미지에 의하여만 커버되는 측면 전용 부분 및 합성 측면 이미지 및 워프된 상부 이미지 모두에 의하여 커버되는 오버랩되는 부분을 포함하는 경우이다. 이 실시예에서, 대응하는 캔버스 뷰는 상부 이미지를 더 이상 사용하지 않고 블렌딩 이미지로부터 직접 생성될 수 있는데, 상부 전용 부분은 블렌딩된 이미지에 이미 포함되어 있기 때문이다. 위와 유사한 실시예도 하부 이미지로부터 생성된 워프된 하부 이미지에 적용한다. 나아가, 왼눈과 오른눈 각 눈에 대하여, 한 워프된 상부 이미지는 상부 이미지에 대해 생성되고 한 워프된 하부 이미지는 하부 이미지에 대해 생성된다.
블렌딩 데이터 스토어(348)에 저장된 블렌딩된 이미지 및/또는 관련 데이터는 상술한 바와 같이 캔버스 뷰 생성 모듈(330)이 캔버스 뷰를 생성하는데 사용된다.
캔버스 뷰 데이터 스토어(350)는 캔버스 뷰 생성 모듈(330)이 생성한 캔버스 뷰 및/또는 관련 데이터를 저장한다. 상술한 바와 같이, 특정 장면을 위한 캔버스 뷰가 상부/하부 이미지 및 합성 이미지를 포함하여 장면의 모든 관련 이미지를 조합함으로써 생성된다. 더 자세히, 상술한 바와 같이 캔버스 뷰는 장면의 상부 이미지에 의하여만 커버되는 상부 전용 부분, 장면의 하부 이미지에 의하여만 커버되는 하부 전용 부분, 장면의 합성 이미지에 의하여만 커버되는 측면 전용 부분 및 상부/하부 이미지와 합성 이미지 간에 공유되어 함께 블렌딩된 오버랩되는 부분은 포함한다.
도 4a는 일실시예에 따른 카메라 리그 시스템(200)을 사용하여 객체(445)에 수렴하는 사용자의 눈의 뷰를 시뮬레이트하는 환경(400)을 도시하는 라인 다이어그램을 도시한다. 도 4a에 도시된 환경(400)은 카메라 리그 시스템(200)의 일부, 사용자의 머리(415)의 왼눈과 오른눈에 대응하는 좌측 동공(425A)과 우측 동공(425B), 좌측 합성 카메라(430A)와 우측 합성 카메라(430B), 눈이 보고 있는 객체(445)를 포함한다. 객체(445)는 카메라 리그 시스템(200) 외부에 카메라 리그 시스템의 카메라가 객체의 이미지를 캡처할 수 있는 범위에 위치한 임의의 적절한 객체이고, 이미지는 이미지 프로세싱 시스템(300)의 추후 프로세싱에 적합하다. 객체는 실제 물체일 수도 있고, 단순히 각 눈의 시야선이 향하는 점을 나타낼 수도 있다.
도 4a에 도시된 카메라 리그 시스템(200)의 일부는 중심점(405), 카메라 리그 주변부(215), 좌측 주변 카메라(230A) 및 우측 주변 카메라(230B)를 더 포함한다. 상술한 바와 같이, 클라이언트 VR 장치(180)를 착용한 사용자가 카메라 리그 시스템(200)에 의해 캡처된 가상 장면을 보고 경험하는데, 가상 장면에서 좌측 동공(425A) 및 우측 동공(425B) 사이의 중앙이 카메라 리그 시스템의 중심점(405)와 오버랩되며 사용자가 카메라 리그 시스템의 중심점(405)에 서있는 것으로 시뮬레이트된다. 나아가, 환경(400)은 사용자의 머리(415)가 객체(445)를 향하고 눈이 객체에 수렴하며 중심점(405)에 서있는 사용자의 왼눈과 오른눈의 뷰를 시뮬레이트한다. 환경(400)은 좌측 동공(425A)과 객체(445) 사이의 시야선(434A), 우측 동공(425B)과 객체 사이의 시야선(434B), 중심점(405)과 객체 사이의 중앙선(440)을 더 포함한다.
합성 카메라(430)의 위치를 결정하기 위하여, 시야선이 각 동공(425)에 대하여 객체(445)로 시뮬레이트된다. 시야선이 카메라 리그 주변부(215)와 교차하는 점은 사용자가 객체 방향을 볼 때 뷰를 결정하기 위하여 합성 카메라(430)가 위치한 곳이다. 다른 말로 하면, 그 객체를 향하는 뷰는 그 객체(445)에 초점이 맞을 때 동공이 경험할 광 시야도 나타낸다. 도 4a에 도시된 바와 같이, 시야선(434A)은 점(431A)에서 카메라 리그 주변부(215)와 교차한다. 유사하게, 시야선(434B)은 점(431B)에서 카메라 리그 주변부(215)와 교차한다. 상술한 바와 같이, 점(431A)에서 좌측 눈 뷰를 시뮬레이트하는데 사용되는 합성 카메라(430A)는 점(431A)에 위치하고, 점(431B)에서 우측 눈 뷰를 시뮬레이트하는데 사용되는 합성 카메라(430B)는 점(431B)에 위치한다. 도 4a에 도시된 바와 같이, 좌측 합성 카메라(430A)의 광학 축(433A) 및 중앙선(440)이 동일 점인 중심점(405)에서 기인하지만, 광학 축과 중앙선은 중심점에서 멀어질 때 상이한 방향으로 발산하여, 광학 축과 중앙선 사이에 각도(432A)를 생성한다.
상술한 바와 같이, 합성 이미지가 각 합성 카메라(430)에 대해 생성된다. 하지만, 합성 이미지의 뷰는 객체(445)의 중앙에 있지 않은 시야를 가질 수 있다. 오히려, 합성 이미지의 시야는 광학 축(433)에 의하여, 예컨대 여기 도시된 것처럼 좌측 합성 카메라(430A)의 광학 축(433A)에 의하여 주어질 수 있다. 따라서, 합성 뷰의 픽셀의 중간 열은 좌측 합성 카메라의 광학 축(433A)에 의해 지시되는 영역에 대응할 수 있다. 하지만, 좌측 동공(425A)은 좌측 합성 카메라(430A)의 광학 축(433A)와 다른 방향으로 객체(445)를 향하는데, 이 경우 합성 이미지는 상술한 바와 같이 캔버스 뷰를 생성할 때 오프셋으로 조정될 것이다. 도 4a의 환경(400)은 설명을 단순화하기 위하여 좌측 합성 카메라(430A)의 광학 축(433A)만 도시한다. 도시되지 않은 대안적인 실시예에서, 우측 합성 카메라(430B)의 광학 축도 환경(400)에 포함될 수 있고, 좌측 합성 카메라(430A)의 합성 이미지와 유사하게, 우측 합성 카메라의 합성 이미지도 오른눈의 점(431B)에서의 뷰를 시뮬레이트하기 위하여 오프셋으로 조정됨을 이해할 것이다.
도 3에서 상술한 바와 같이, 각도(432A)와 오프셋은 동공간 거리(410) 및 중앙선(440)의 거리와 같은 파라미터의 함수이다. 더 자세히 후술되는 바와 같이, 동공간 거리(410)도 수직 각도 φ의 함수일 수 있다.
도 4b는 일실시예에 따른 합성 이미지로의 오프셋을 도시하는 라인 다이어그램(450)이다. 라인 다이어그램(450)은 도 4a에 도시된 환경(400)의 일부, 좌측 합성 이미지(454A), 우측 합성 이미지(454B) 및 오프셋(452A 및 452B)을 포함한다. 도 4a에 도시된 환경(400)의 일부는 도 4a에 도시되는데, 환경의 일부의 구성의 자세한 설명은 여기 제공되지 않는다.
좌측 합성 이미지(454A)는 마치 점(431A)에 위치한 좌측 합성 카메라(430A)에 의해 찍힌 것처럼 이미지 프로세싱 시스템(300)에 의하여 생성되고, 우측 합성 이미지(454B)는 마치 점(431B)에 위치한 우측 합성 카메라(430B)에 의해 찍힌 것처럼 이미지 프로세싱 시스템(300)에 의하여 생성된다. 보다 구체적으로, 좌측 합성 이미지(454A)와 우측 합성 이미지(454B)는 동일 장면의 이미지인데, 구름 오른쪽에 나무가 나타나는 것으로 구름과 나무를 포함하고, 좌측 합성 카메라(430A)에 의해 “캡처”된 객체(445)의 장면을 나타낸다. 도 4b에 도시된 것처럼, 나무는 좌측 합성 이미지(454A)에서 상대적으로 중간 열(455A)의 오른쪽에 위치한 반면, 나무는 우측 합성 이미지(454B)에서 상대적으로 중간 열(455B)의 왼쪽에 위치한다. 대응하는 왼쪽/오른쪽 합성 이미지(454)에서 중간선(455)에 상대적인 나무의 위치의 차이는 두 합성 카메라(430)의 광학 축(433)(도 4a에 도시)의 발산 방향의 차이로 인한 것이다. 왼쪽/오른쪽 합성 이미지(454)는 단지 한 예시이고, 도시되지 않은 대안적인 실시예에서 특정 객체(예컨대, 구름과 나무)는 도 4b에 도시된 이미지의 장소와 다른 이미지 내의 장소에 위치할 수 있다.
표시된 바와 같이, 오프셋(452A)은 중앙선(440)의 방향을 보는데 있어 좌측 동공(425A)을 나타내는데 사용되는 픽셀을 조정하는데 사용된다. 유사하게, 오프셋(452B)은 대응하는 우측 뷰를 생성하기 위하여 우측 동공(425B)을 나타내는데 사용되는 픽셀을 조정하는데 사용된다. 좌측 합성 이미지(454A)는 점(431A)에서 객체(445)의 좌측 눈 뷰를 시뮬레이트하기 위해 생성되는데, 좌측 동공(425A)이 객체(445)를 보고 시야선(434A)(도 4a에 도시)은 객체(445)를 향하는 경우이다. 따라서, 오프셋(452A)은 도 3에 상술한 바와 같이 환경(400)의 파라미터에 기반하여 이미지 프로세싱 시스템(300)에 의해 계산된다. 보다 구체적으로, 후술하는 바와 같이 오프셋(452B)의 값은 IPD(410)의 함수이고, IPD는 시뮬레이트된 구(480)의 수직 각도 φ(482)의 함수이다.
도 4c는 일실시예에 따른 수직 각도 φ(482)의 변화에 응답한 동공간 거리(410)의 변화를 도시하는 라인 다이어그램(470)을 도시한다. 도 4c에서, 라인 다이어그램(470)은 수직 각도 φ(482)의 변화를 도시하는 시뮬레이트된 구(480) 및 IPD(410)와 수직 각도 φ(482) 간의 수학적 관계를 도시하는 함수(485)를 도시한다. 라인 다이어그램(470)은 보다 자세히 후술하는 바와 같은 수직 각도 φ(482)가 변화함에 따라 IPD(410)의 변화의 세 단계(491, 492 및 493)도 도시한다.
구(480)에 도시된 수직 각도 φ(482)는 0 내지 π의 범위를 가지고, 중심 아래 축(481)과 중앙선(440) 간의 각도를 측정한다. 보다 구체적으로, 라인 다이어그램(470)은 환경(400)의 중심점(405)(도 4a에 도시)에 서있는 사용자가 위나 아래를 볼 때 사용자의 IPD(410)의 변화를 시뮬레이트한다. 예를 들어, 사용자가 시야의 가장 아래 부분으로부터 가장 위 부분을 향해 점진적으로 봄에 따라, 수직 각도 φ(482)는 이에 대응하여 0에서 π로 변화하고, IPD(410)는 먼저 0에서 최대값으로 점진적으로 증가하고 그 뒤 최대값에서 0으로 점진적으로 감소하는데, 사용자의 좌측 및 우측 눈 뷰가 먼저 단안시에서 양안시로 변화하고 그 후 양안시에서 단안시로 변화함을 더 가리킨다. 특히, 사용자의 눈이 시야에서 가장 아래 부분에 닿았을 때, 수직 각도 φ(482)의 값은 0이고, 사용자의 눈이 시야에서 수평선에 닿았을 때, 수직 각도 φ(482)의 값은 π/2이고, 사용자의 눈이 시야에서 가장 위 부분에 닿았을 때, 수직 각도 φ(482)의 값은 π이다. 이에 대응하여, 함수(485)로 도시된 바와 같이, 수직 각도 φ(482)의 값이 대략 0이나 π일 때 IPD(410)의 값은 대략 0이고, 수직 각도 φ의 값이 π/2일 때 IPD의 값은 최대값이다. 함수(485)로 도시된 바와 같이, IPD(410)는 수직 각도 φ(482)가 0이나 π에 접근함에 따라 각도가 실제로 0이나 π에 닿기 전에 0 값을 수신한다. 함수(485)는 설명의 목적을 위한 한 예시일 뿐이다. 실제로, IPD(410)와 수직 각도 φ(482) 간의 정확한 수학적 곡선은 도 4c에 도시된 함수(485)와 약간 다를 수 있다.
도 4c에 도시된 세 단계(491, 492 및 493)는 세 특정 단계를 사용자의 눈이 수평선에서 시야의 가장 위 부분으로 향하여, 수직 각도 φ가 점진적으로 π/2에서 π로 변화하는 것으로 도시한다. 더 구체적으로, 단계(491)는 사용자가 시야 중 수평선을 볼 때, IPD(410)이 최대값을 가지는 것을 도시한다(예컨대, π/2에서). 단계(491)에서, 좌측 및 우측 눈의 두 시야선(434)은 두 합성 카메라(430)가 위치한 두 점에서 카메라 리그 주변부(215)와 교차한다. 단계(492)는 사용자의 눈이 수평선(π/2)과 시야 중 가장 위 부분(π) 사이 어딘가에 수렴할 때, IPD(410)가 단계(491)에서 최대인 것과 비교하여 감소된 값을 가지는 것을 도시한다. 단계(492)에서, 좌측 및 우측 눈의 두 시야선(434)은 두 합성 카메라(430)가 위치한 두 점에서 카메라 리그 주변부(215)와 교차하고, 두 점은 단계(491)와 비교할 때 서로 더 가까이 위치한다. 단계(493)은 사용자의 눈이 시야의 가장 위 부분에 수렴할 때, 값 IPD(410)가 0으로 감소하는 것을 보여준다. 단계(493)에서, 좌측 및 우측 눈의 두 시야선(434)은 서로 오버랩되고 오버랩된 시야선은 두 합성 카메라(430)가 위치한 동일한 점에서 카메라 리그 주변부(215)와 교차하고, 양 눈을 위한 두 합성 카메라는 그 점에서 서로 오버랩된다. 이 방법으로, IPD를 수직 각도의 함수로 조정함으로써, 뷰는 단일 카메라 위치로 부드럽게 전환하고, 단일 상부 또는 하부 카메라로의 전환이 사용자에게 더 매끄럽다. 카메라 위치는 합성이기 때문에, 시스템은 함수(485)를 사용하여 상이한 IPD 거리에 대해 합성 카메라를 쉽게 계산할 수 있다.
단계(491-493)는 단지 한 예를 도시한다. 도시되지 않은 대안적 실시예에서, IPD(410)의 다른 단계를 나타내는 다른 단계가 포함될 수 있다.
도 5는 일실시예에 따른 캔버스 뷰를 생성하기 위해 합성 측면 이미지로의 상부/하부 이미지를 위한 이미지 블렌딩을 도시하는 라인 다이어그램을 도시한다. 도 5에서, 라인 다이어그램(500)은 상부 이미지(510), 합성 측면 이미지(520) 및 워프된 상부 이미지(530)를 포함하고 이 모든 이미지는 동일 장면, 예컨대 도 4b에 도시된 구름과 나무를 포함하는 장면에 대한 이미지 데이터를 포함한다. 라인 다이어그램은 오버랩된 이미지(550), 형상 워프 함수 및 색상 모핑 함수도 포함하는데, 더 자세히 후술되는 바와 같은 이미지 블렌딩의 프로세스를 도시한다. 설명을 단순화하기 위하여, 상부 이미지(510), 합성 측면 이미지(520) 및 워프된 상부 이미지(530)는 모두 사용자의 한 단일 눈(예컨대, 왼쪽/오른쪽 눈)에 대한 것이고 상부 이미지를 합성 측면 이미지와의 블렌딩만을 위한 것이다. 동일 눈에 대한 이미지 블렌딩의 유사한 프로세스가 하부 이미지를 합성 측면 이미지(520)에 블렌딩하고, 대응하는 워프된 하부 이미지를 생성하고, 대응하는 블렌딩된 이미지를 더 생성하기 위하여 실행될 수 있다. 유사하게, 사용자의 다른 눈을 위한 상부 및 하부 이미지에 대한 비슷한 이미지 블렌딩 프로세스가 실행된다. 나아가, 도 5에 도시된 이미지(510-530)는 단지 설명의 목적을 위한 한 예시일 뿐이고, 장면의 객체(예컨대, 구름과 나무)의 정확하고 자세한 위치, 형상 및 색상은 도 5에 도시된 이미지(510-530)를 생성하는데 사용되는 관련 이미지를 캡처하는 카메라에 의존한다.
상부 이미지(510)가 먼저 합성 측면 이미지(520)로 워프되어 함께 블렌딩됐을 때의 두 이미지 간의 형상의 관점에서 상부 이미지와 측면 이미지 간의 전환을 부드럽게 한다. 워프는 상부 이미지의 객체의 형상을 적어도 부분적으로 측면 이미지의 객체의 형상과 일치하도록 변화시킨다. 광학 흐름이 상부 이미지와 측면 이미지 간의 오버랩되는 부분 간에 결정된다. 이미지를 워프하기 위하여, 광학 흐름이 상부 이미지에 적용된다. 후술하는 바와 같이, 수직 각도에 따라서, 상부 이미지에 형상 워프 함수(570)를 통해 적용되는 광학 흐름의 일부가 측면 및 상부 이미지의 오버랩되는 부분을 통해 0에서 100퍼센트로 증가할 수 있다. 상부 이미지(510)가 합성 측면 이미지(520)에 워프된 후, 상부 이미지와 합성 이미지 간의 형상의 관점에서 부드러운 전환을 가지는 워프된 상부 이미지(530)가 생성된다.
워프된 상부 이미지는 장면의 수직 뷰가 측면 이미지만을 포함하는 부분에 도달할 때 측면 이미지와 임의의 색상 불일치를 일치시키기 위하여 색상 모핑된다. 보다 자세히, 워프된 상부 이미지(530)는 합성 측면 이미지(520)에 모핑되어 함께 블렌딩되었을 때 두 이미지 간의 색상의 관점에서 부드러운 전환을 실현한다. 알파 블렌딩과 같은 기술이 색상 모핑을 실현하기 위하여 사용될 수 있다. 워프된 상부 이미지(530)가 합성 측면 이미지(520)에 모핑된 후, 수직 각도의 함수로 상부 이미지와 합성 이미지(520) 간의 형상과 색상 모두의 관점에서 부드러운 전환을 가지는 블렌딩된 이미지(여기에 도시되지 않음)가 생성된다. 블렌딩된 이미지의 정의와 더 자세한 설명은 도 3에 상술되었다.
도 5의 라인 다이어그램(500)은 오버랩된 이미지(550), 형상 워프 함수(570) 및 색상 모핑 함수(580)도 도시하는데, 상술한 이미지 블렌딩을 함께 도시한다. 오버랩된 이미지(550)는 합성 이미지(520)와 오버랩되는 상부 이미지(510)를 도시한다. 오버랩된 이미지(550)는 상부 전용 부분(553), 측면 전용 부분(554) 및 오버랩 부분(555)을 더 도시한다. 상부 전용 부분(553)은 상부 이미지(510)의 가장 위 영역을 도시하는데, 상부 카메라에 의하여만 제공되는 뷰이다. 측면 전용 부분(554)은 합성 이미지(520)의 가장 아래 부분을 도시하고 이것은 합성 측면 이미지에 의하여만 제공된다. 오버랩 부분(555)은 상부 이미지(510)와 합성 이미지(520)에 의해 공유되는 영역을 도시하고, 오버랩 부분(555)은 상부 이미지의 상대적으로 아래 부분에 대응하고 합성 측면 이미지의 상대적으로 위 부분에 대응한다. 오버랩된 이미지(550)는 오버랩된 이미지의 상이한 부분에 대응하는 수직 각도 φ의 변화도 도시한다. 예를 들어, π 값의 수직 각도 φ는 상부 이미지(510)의 위쪽 끝에 대응하고, π/2 값의 수직 각도 φ는 합성 이미지(520)의 아래쪽 끝에 대응한다. 시작 행(567)과 끝 행(569)도 상부 카메라 뷰에 대한 오버랩 부분(555)의 시작 부분과 끝 부분을 도시하기 위하여 도 5에 도시된다. 도 5에 도시된 피봇 행(568)은 상부 이미지에 대한 수정이 워프에서 색상 모핑으로 변화하는 오버랩 부분(555)의 행을 지칭한다. 여기에는 단일 행으로 도시되었지만, 상부 카메라가 완전히 워프되었지만 아직 측면 이미지로 색상 모핑이 시작되지 않은 하나 이상의 행이 있을 수 있다.
도 5는 형상 워프 함수(570)와 색상 모핑 함수(580)도 도시하는데, 수행되는 형상 워프와 색상 모핑의 비율을 수직 각도 φ의 함수로 도시한다. 함수(570 및 580) 각각에 대하여, 수직 축은 수직 각도 φ를 도시하고 수평 축은 적용되는 블렌딩의 비율을 도시한다. 예를 들어, 형상 워프 함수(570)에 대하여, 수평 축은 얼마나 많은 비율의 워프가 적용되는지, 즉 얼마나 많은 비율의 상부 이미지(510)가 형상 워프의 관점에서 합성 이미지(520)에 적용되는지 보여준다. 유사하게, 색상 모핑 함수(580)에 대하여, 수평 축은 얼마나 많은 비율의 색상 모핑이 적용되는지, 즉 얼마나 많은 비율의 상부 이미지(510)가 색상 모핑을 위해 사용되는 알파 블렌딩의 관점에서 합성 이미지(520)에 적용되는지 보여준다.
도 5에 도시된 바와 같이, 형상 워프의 경우, 시작 행(567) 위의 상부 전용 부분(553)에 대해, 워프는 형상 워프가 그 부분에 대해 적용되지 않음을 가리키는 0으로 유지된다. 워프는 시작 행(567)에서 피봇 행(568)까지 0에서 100%까지 증가하기 시작한다. 피봇 행(568)은 형상 워프가 100%인 곳을 가리키는데, 상부 이미지(510)의 대응하는 오버랩 부분(555)의 100%가 합성 이미지(520)의 대응하는 오버랩 부분(555)으로 워프됨을 가리킨다. 피봇 행(568) 밑 및 끝 행(569) 위의 측면 전용 부분(554)의 경우, 워프는 100%로 유지된다. 측면 전용 부분(554)의 경우, 상부 이미지(510)로부터 합성 측면 이미지(520)로의 형상 워프가 없는데 그 부분은 상부 이미지에 의해 공유되지 않기 때문이다.
색상 모핑, 즉 알파 블렌딩의 경우, 피봇 행(568) 위의 상부 전용 부분(553)에 대하여 알파 블렌딩은 상부 이미지의 색상 컴포넌트가 유지됨을 가리키는 100%로 유지된다. 알파 블렌딩은 피봇 행(568)에서 끝 행(569)까지 100%에서 0으로 감소되기 시작한다. 피봇 행(568)은 알파 블렌딩이 100%에서 감소되기 시작하는 곳을 가리키는데, 상부 이미지 색상 컴포넌트의 100% 미만이 사용되고, 측면 이미지의 나머지 부분이 사용됨을 가리킨다. 측면 전용 부분(554)의 경우, 알파 블렌딩은 0으로 유지되어 상부 이미지(510)로부터 합성 측면 이미지(520)로의 색상 모핑을 위한 알파 블렌딩이 없는데 그 부분은 상부 이미지에 의해 공유되지 않기 때문이다. 이 방법으로, 사용자가 상부 이미지로부터 아래를 보기 시작함에 따라, 상부 카메라의 형상 컴포넌트가 점진적으로 측면 이미지의 형상을 취하고, 측면 이미지의 색상을 취할 수 있다. IPD도 증가함에 따라, 사용자의 양안시의 지각은 증가할 것이고 부드러운 형상 및 색상 블렌딩이 측면 카메라로의 전환 도중 뷰들 간의 찢김(tear), 미끄러짐(slip) 또는 건너뜀(jump)을 감소시킨다.
도 6은 일실시예에 따른 이미지 프로세싱 시스템(300)을 통한 합성 이미지 생성 및 대응하는 합성 이미지로의 상부 이미지의 이미지 블렌딩 프로세스를 도시하는 흐름도(600)의 예시를 도시한다. 설명을 단순화하기 위하여, 도 6에 도시된 흐름도(600)는 한 눈의 뷰(예컨대, 왼눈 뷰)를 위한 합성 이미지의 생성 및 상부 이미지의 합성 이미지와의 블렌딩만을 도시한다. 다른 눈의 뷰(예컨대, 오른눈 뷰)를 위한 유사한 프로세스가 대응하는 합성 이미지를 생성하고 상부 이미지를 합성 이미지로 블렌딩하기 위해 실행됨을 이해할 것이다. 유사하게, 보다 자세히 후술되는 바와 같이, 동일한 눈의 뷰를 위해, 흐름도(600)의 단계(640 및 650)와 유사한 프로세스가 하부 이미지를 대응하는 합성 이미지에 블렌딩하기 위하여 실행된다.
처음에, 이미지 프로세싱 시스템(300)은 동일 장면에 대하여, 카메라 리그 시스템(200)에 의해 사용자의 한 눈의 뷰를 위해 캡처된 상부/하부 이미지 및 측면 이미지를 수신한다(610). 이미지 프로세싱 시스템(300)은 수신된 측면 이미지와 합성 이미지를 “캡처”한 대응하는 합성 카메라의 위치에 기반하여 눈의 뷰를 위한 합성 이미지를 생성한다(620). 합성 이미지가 사용 준비가 된 후, 이미지 프로세싱 시스템(300)은 상부 이미지를 합성 이미지에 블렌딩하기 위하여 이미지 블렌딩을 실행한다. 보다 자세히, 이미지 프로세싱 시스템(300)은 광학 흐름을 사용하여 상부 이미지를 합성 이미지로 워프함으로써 워프된 상부 이미지를 생성하고(630), 알파 블렌딩을 사용하여 색상 모핑을 위해 워프된 상부 이미지를 합성 이미지로 블렌딩함으로써 블렌딩된 이미지를 생성한다(640). 이미지 프로세싱 시스템(300)은 사용자의 눈의 실제 뷰를 반영하기 위하여 오프셋이 적용되는 동안 추후의 캔버스 뷰 생성을 위해 생성된 블렌딩된 이미지를 사용한다(650).
상술한 바와 같이, 동일한 눈의 뷰를 위해, 단계(640 및 650)가 하부 이미지를 합성 측면 이미지에 블렌딩하기 위하여도 실행된다.
도 7은 일실시예에 따른 가려진 하부 카메라를 가지는 카메라 리그 시스템(700)의 예시를 도시한다. 도 7에 도시된 바와 같이, 도 1-2b에 도시된 카메라 리그 시스템(200)의 일례로, 이 예시에서, 카메라 리그 시스템(700)은 카메라 리그 시스템 아래로 연장하고 예컨대 장면의 다양한 부분의 캡처를 위해 공중에서 카메라 리그 시스템을 지탱할 수 있는 지지 포스트(730)에 의해 지지된다. 주 하부 카메라 뷰(또는 하부의 임의의 단일 카메라)를 반영하는 주 하부 이미지에 대하여, 주 하부 카메라(710)를 위한 뷰의 일부가 지지 포스트(730)에 의해 막히는데, 카메라 리그 시스템(700) 주위 환경의 나머지 부분의 매끄러운 뷰를 방해할 수 있다. 부 하부 카메라(720)의 사용 및 부와 주 카메라 간의 광학 흐름은 조합된 하부 카메라 뷰로부터 가려짐을 제거하고 리그가 전혀 지지되지 않는 착각을 가능하게 한다. 전술한 바와 같이 조합된 하부 뷰는 예컨대, 캔버스 뷰를 위하여 또는 측면 뷰와의 블렌딩을 위하여 사용될 수 있다.
도 8은 일실시예에 따른 주 하부 카메라(710) 및 부 하부 카메라(720) 각각에 의해 찍힌 주 하부 이미지(800) 및 부 하부 이미지(810)의 카메라 뷰를 도시한다. 도시된 바와 같이, 주 하부 카메라 뷰는 지지 포스트(730)에 의해 가려질 수 있다. 유사하게, 부 하부 카메라의 상이한 부분도 지지 포스트(730)에 의해 가려질 수 있다.
지지 포스트를 제거한 조합된 뷰를 생성하기 위하여, 지지 포스트를 포함하는 주 하부 카메라의 영역과 부 하부 카메라의 영역이 식별된다. 이 식별은 조작자에 의하여 수동으로 이루어질 수 있거나, 예컨대 지지 포스트의 출현에 대해 알려진 데이터, 에지 검출 알고리즘 및 유사한 기술을 사용하여 지지 포스트가 뷰로부터 자동으로 식별될 수 있다. 식별은 필터링된 하부 카메라 뷰(830)를 위한 필터링된 영역(835) 및 필터링된 부 하부 카메라 뷰(840)를 위한 필터링된 영역(845)을 가리킨다. 필터링된 영역에서, 뷰의 이미지 값(즉, 픽셀 데이터)이 예컨대 이미지의 알파 채널로부터 제거 또는 마스킹된다.
마스킹된 영역을 사용하여, 광학 흐름이 부 하부 카메라로부터 주 카메라 뷰로 계산된다. 필터링된 영역 내에서, 광학 흐름 알고리즘은 부 카메라 뷰에 대한 광학 흐름 결과를 무시하고, 주 카메라와의 일치에 따라서 광학 흐름에 어떤 가중치를 부여하지 않는다. 즉, 필터링된 영역(835)으로 흐르는 것으로 식별된 부 카메라의 부분은 광학 흐름의 성공을 평가할 때 가중치가 제공되지 않는다. 하지만, 이들 부분은 부 카메라 뷰로부터의 광학 흐름의 다른 부분과의 일치에 따라 가중치화될 수 있다. 따라서, 부 카메라 뷰는 주 하부 카메라 뷰의 필터링된 영역(835)을 채우도록 흐를 수 있다.
주 하부 카메라 뷰의 필터링된 영역(835)을 채우기 위해, 부 카메라 이미지는 주 카메라로의 광학 흐름에 따라 워프된다. 다음으로, 워프된 부 카메라 이미지는 주 카메라의 위치에 기반하여 주 하부 카메라 뷰와 색상 병합된다. 대부분의 주 카메라 뷰에 대해, 주 카메라는 환경의 실제 뷰를 가진다. 주 카메라 뷰의 그 부분에 대해, 주 카메라는 그 색상 컴포넌트의 100%를 유지하고 워프된 부 뷰로부터 색상의 0%를 수신한다. 주 카메라 뷰의 필터링된 부분에 대해, 색상 컴포넌트는 부 카메라로부터만 수신될 수 있고, 워프된 부 카메라 색상 컴포넌트는 이 부분에서 100% 사용된다. 필터링된 영역(835)을 둘러싸는 블렌딩 영역(850)에서, 부 카메라의 색상 컴포넌트는 100%에서 0%로 전환되어, 부 카메라 컴포넌트의 부분은 주 카메라의 부분과 블렌딩된다. 일실시예에서, 색상 컴포넌트는 100% 및 0% 블렌딩 컴포넌트로부터의 거리의 선형 함수이다. 다른 예시로, 색상 컴포넌트는 유사하게 조합되지만, 색상 차이의 크기 및 부 카메라 뷰의 광학 흐름의 양에 기반하여도 선택된다. 색상 컴포넌트의 크기가 현저히 다를 때, 색상 컴포넌트의 선택은 부 카메라의 광학 흐름의 양에 대해 더 크게 가중화된다. 주 카메라가 광학 흐름을 가지지 않기 때문에, 일반적으로 현저한 색상 크기 차이가 있을 때 그 색상 값은 더 크게 가중화된다.
부 카메라 뷰를 주 하부 카메라 뷰와 조합함으로써, 지지 빔은 효과적으로 조합된 뷰에서 제거될 수 있다. 나아가, 주 카메라 뷰가 예컨대, 도 2a에 도시된 바와 같이 정렬 축(205)에 대해 중심에 위치하기 때문에, 조합된 하부 카메라는 상술한 바와 같이 캔버스를 생성하기 위한 다른 기술에서 쉽게 사용될 수 있다.
추가적인 구성 정보
본 발명의 실시예들의 상술한 설명은 예시의 목적으로 제시된 것으로, 배타적이거나 개시된 정확한 형태들로 본 발명을 제한하고자 하는 것이 아니다. 당업자는 상술한 명세서의 관점에서 많은 변경 및 변형이 가능함을 이해할 수 있다.
본 명세서의 몇몇 부분들은 알고리즘 또는 정보에 대한 동작의 기호적 표현으로 본 발명의 실시예들을 설명한다. 이러한 알고리즘적 설명이나 표현은 본 기술분야에서 통상의 지식을 가진 자들에게 효과적으로 그들의 작업의 실체를 전달하기 위하여 데이터 프로세싱 기술분야에서 통상의 지식을 가진 자에 의하여 공통적으로 사용되는 것이다. 기능적으로, 계산적으로 또는 논리적으로 설명되고 있는 이들 동작은 컴퓨터 프로그램 또는 등가의 전기 회로, 마이크로 코드 등에 의해 구현되는 것으로 이해된다. 또한, 종종 이러한 동작의 배열은 일반성의 손실 없이 모듈로 언급될 수 있는 것으로 확인된다. 기술된 동작 및 그와 관련된 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들의 임의의 결합으로 구현될 수 있을 것이다.
본 명세서에 설명된 임의의 단계들, 동작들 또는 프로세스들은 하나 이상의 하드웨어 또는 소프트웨어 모듈들에 의해 또는 이들과 다른 장치들의 결합에 의해 수행되거나 구현될 수 있다. 일실시예에서, 소프트웨어 모듈은 기술된 단계들, 동작들 또는 프로세스들 일부 또는 전부를 수행하기 위하여 컴퓨터 프로세서에 의해 실행될 수 있는 컴퓨터 프로그램 코드를 포함하는 컴퓨터 판독가능한 매체를 포함하는 컴퓨터 프로그램 제품으로 구현된다.
본 발명에 기술된 실시예들은 또한, 본 명세서의 동작들을 수행하기 위한 장치와 관련될 수 있다. 이 장치는 요청된 목적을 위하여 구체적으로 구성될 수 있고/있거나 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨팅 장치를 포함할 수 있다. 이런 컴퓨터 프로그램은 비-일시적 유형(tangible)의 컴퓨터 판독가능한 저장 매체나 컴퓨터 시스템 버스에 결합될 수 있는 전자 명령어를 저장하기에 적절한 임의의 타입의 매체에 저장될 수 있다. 게다가, 본 명세서에서 언급된 임의의 컴퓨팅 시스템들은 단일 프로세서를 포함할 수 있거나, 증가한 컴퓨팅 능력을 위해 다중 프로세서 설계를 채용한 구조일 수 있다.
또한, 본 발명의 실시예들은 본 명세서에 기술된 컴퓨팅 프로세스로 제조된 제품에 관한 것일 수 있다. 이런 제품은 컴퓨팅 프로세스의 처리 결과인 정보를 포함할 수 있으며, 여기서 정보는 비-일시적, 유형의 컴퓨터 판독가능한 저장 매체에 저장되고 본 명세서에 개시된 컴퓨터 프로그램 제품 또는 다른 데이터 조합의 임의의 실시예를 포함할 수 있다.
마지막으로, 본 명세서에 사용된 언어는 가독성과 지시의 목적으로 이론적으로 선택된 것으로 발명의 사상을 제한하거나 한정하기 위하여 선택된 것이 아니다. 따라서, 본 발명의 범위는, 본 발명의 상세한 설명에 의해 제한되는 것이 아니며, 본 출원이 기초로 하는 제출되는 청구범위에 의해 정의되는 것으로 의도되었다. 따라서, 본 발명의 실시예들의 개시는 설명을 위한 것이며, 본 발명의 범위를 제한하고자 하는 것이 아니다. 본 발명의 범위는 이하의 청구범위에 개시된다.

Claims (29)

  1. 장면의 상부 이미지를 수신하는 단계;
    장면의 제1 및 제2 합성 이미지를 수신하는 단계; 및
    제1 및 제2 합성 이미지 각각에 대하여:
    장면의 상부 이미지의 합성 이미지와의 오버랩되는 부분을 식별하는 단계;
    오버랩되는 부분 내에서, 장면의 상부 뷰로부터 합성 이미지로의 광학 흐름을 결정하는 단계;
    광학 흐름을 적용함으로써 상부 이미지를 합성 이미지에 블렌딩함으로써 워프된 상부 이미지를 생성하는 단계; 및
    장면의 상부 이미지, 합성 이미지 및 워프된 상부 이미지를 조합함으로써 사용자의 대응하는 눈의 뷰를 위한 캔버스 뷰를 생성하는 단계를 포함하고,
    제1 및 제2 합성 이미지는 개별적으로 사용자의 좌측 눈 뷰 및 우측 눈 뷰에 대응하고,
    광학 흐름은 수직 각도의 함수로 적용되는 방법.
  2. 청구항 1에 있어서,
    광학 흐름을 적용하기 위한 함수는 오버랩되는 부분이 상부 부분과 인접하기 시작하는 수직 각도에서 광학 흐름을 적용하지 않고, 오버랩되는 부분의 피봇 행에서 전체 광학 흐름을 적용하는 방법.
  3. 청구항 2에 있어서,
    제1 및 제2 합성 이미지 각각에 대하여: 피봇 행 및 오버랩되는 부분이 측면 부분과 인접하는 이미지의 측면 전용 부분 사이의 합성 이미지로 상부 이미지의 색상을 모핑하는 단계를 더 포함하는 방법.
  4. 청구항 3에 있어서,
    색상 모핑은 피봇 행 및 측면 부분과 인접하는 오버랩되는 부분 사이에서 0 내지 측면 이미지 색상의 완전 색상 모핑의 범위를 가지는 방법.
  5. 청구항 1에 있어서,
    제1 및 제2 뷰는 사용자의 좌측 우측 눈 뷰와 우측 눈 뷰 사이의 IPD(interpupillary distance)의 함수로서 거리만큼 이격되는 방법.
  6. 청구항 5에 있어서,
    IPD는 장면의 수직 각도의 함수인 방법.
  7. 청구항 6에 있어서,
    π/2의 수직 각도에서 IPD는 최대 IPD이고, π의 수직 각도에서 IPD는 0인 방법.
  8. 컴퓨터 프로그램 명령어를 저장하는 비일시적 컴퓨터 판독가능한 저장 매체로서, 컴퓨터 프로그램 명령어는 컴퓨터 프로세서에 의해 실행될 때 프로세서로 하여금:
    장면의 상부 이미지를 수신하는 단계;
    장면의 제1 및 제2 합성 이미지를 수신하는 단계; 및
    제1 및 제2 합성 이미지 각각에 대하여:
    장면의 상부 이미지의 합성 이미지와의 오버랩되는 부분을 식별하는 단계;
    오버랩되는 부분 내에서, 장면의 상부 뷰로부터 합성 이미지로의 광학 흐름을 결정하는 단계;
    광학 흐름을 적용함으로써 상부 이미지를 합성 이미지에 블렌딩함으로써 워프된 상부 이미지를 생성하는 단계; 및
    장면의 상부 이미지, 합성 이미지 및 워프된 상부 이미지를 조합함으로써 사용자의 대응하는 눈의 뷰를 위한 캔버스 뷰를 생성하는 단계를 수행하도록 야기하고,
    제1 및 제2 합성 이미지는 개별적으로 사용자의 좌측 눈 뷰 및 우측 눈 뷰에 대응하고,
    광학 흐름은 수직 각도의 함수로 적용되는 비일시적 컴퓨터 판독가능한 저장 매체.
  9. 청구항 8에 있어서,
    광학 흐름을 적용하기 위한 함수는 오버랩되는 부분이 상부 부분과 인접하기 시작하는 수직 각도에서 광학 흐름을 적용하지 않고, 오버랩되는 부분의 피봇 행에서 전체 광학 흐름을 적용하는 비일시적 컴퓨터 판독가능한 저장 매체.
  10. 청구항 9에 있어서,
    제1 및 제2 합성 이미지 각각에 대하여: 피봇 행 및 오버랩되는 부분이 측면 부분과 인접하는 이미지의 측면 전용 부분 사이의 합성 이미지로 상부 이미지의 색상을 모핑하는 단계를 더 포함하는 비일시적 컴퓨터 판독가능한 저장 매체.
  11. 청구항 10에 있어서,
    색상 모핑은 피봇 행 및 측면 부분과 인접하는 오버랩되는 부분 사이에서 0 내지 측면 이미지 색상의 완전 색상 모핑의 범위를 가지는 비일시적 컴퓨터 판독가능한 저장 매체.
  12. 청구항 8에 있어서,
    제1 및 제2 뷰는 사용자의 좌측 우측 눈 뷰와 우측 눈 뷰 사이의 IPD(interpupillary distance)의 함수로서 거리만큼 이격되는 비일시적 컴퓨터 판독가능한 저장 매체.
  13. 청구항 12에 있어서,
    IPD는 장면의 수직 각도의 함수인 비일시적 컴퓨터 판독가능한 저장 매체.
  14. 청구항 13에 있어서,
    π/2의 수직 각도에서 IPD는 최대 IPD이고, π의 수직 각도에서 IPD는 0인 비일시적 컴퓨터 판독가능한 저장 매체.
  15. 장면의 상부 이미지를 수신하는 단계;
    장면의 제1 및 제2 합성 이미지를 수신하는 단계; 및
    제1 및 제2 합성 이미지 각각에 대하여:
    장면의 상부 이미지의 합성 이미지와의 오버랩되는 부분을 식별하는 단계;
    오버랩되는 부분 내에서, 장면의 상부 뷰로부터 합성 이미지로의 광학 흐름을 결정하는 단계;
    광학 흐름을 적용함으로써 상부 이미지를 합성 이미지에 블렌딩함으로써 워프된 상부 이미지를 생성하는 단계; 및
    장면의 상부 이미지, 합성 이미지 및 워프된 상부 이미지를 조합함으로써 사용자의 대응하는 눈의 뷰를 위한 캔버스 뷰를 생성하는 단계를 포함하고,
    제1 및 제2 합성 이미지는 개별적으로 사용자의 좌측 눈 뷰 및 우측 눈 뷰에 대응하고,
    광학 흐름은 수직 각도의 함수로 적용되는 방법.
  16. 청구항 15에 있어서,
    광학 흐름을 적용하기 위한 함수는 오버랩되는 부분이 상부 부분과 인접하기 시작하는 수직 각도에서 광학 흐름을 적용하지 않고, 오버랩되는 부분의 피봇 행에서 전체 광학 흐름을 적용하는 방법.
  17. 청구항 15 또는 청구항 16에 있어서,
    제1 및 제2 합성 이미지 각각에 대하여: 피봇 행 및 오버랩되는 부분이 측면 부분과 인접하는 이미지의 측면 전용 부분 사이의 합성 이미지로 상부 이미지의 색상을 모핑하는 단계를 더 포함하는 방법.
  18. 청구항 17에 있어서,
    색상 모핑은 피봇 행 및 측면 부분과 인접하는 오버랩되는 부분 사이에서 0 내지 측면 이미지 색상의 완전 색상 모핑의 범위를 가지는 방법.
  19. 청구항 15 내지 청구항 18 중 어느 하나의 항에 있어서,
    제1 및 제2 뷰는 사용자의 좌측 우측 눈 뷰와 우측 눈 뷰 사이의 동공간 거리의 함수로서 거리만큼 이격되는 방법.
  20. 청구항 19에 있어서,
    동공간 거리는 장면의 수직 각도의 함수인 방법.
  21. 청구항 20에 있어서,
    π/2의 수직 각도에서 동공간 거리는 최대 동공간 거리이고, π의 수직 각도에서 동공간 거리는 0인 방법.
  22. 컴퓨터 프로그램 명령어를 저장하는 비일시적 컴퓨터 판독가능한 저장 매체로서, 컴퓨터 프로그램 명령어는 컴퓨터 프로세서에 의해 실행될 때 프로세서로 하여금:
    장면의 상부 이미지를 수신하는 단계;
    장면의 제1 및 제2 합성 이미지를 수신하는 단계; 및
    제1 및 제2 합성 이미지 각각에 대하여:
    장면의 상부 이미지의 합성 이미지와의 오버랩되는 부분을 식별하는 단계;
    오버랩되는 부분 내에서, 장면의 상부 뷰로부터 합성 이미지로의 광학 흐름을 결정하는 단계;
    광학 흐름을 적용함으로써 상부 이미지를 합성 이미지에 블렌딩함으로써 워프된 상부 이미지를 생성하는 단계; 및
    장면의 상부 이미지, 합성 이미지 및 워프된 상부 이미지를 조합함으로써 사용자의 대응하는 눈의 뷰를 위한 캔버스 뷰를 생성하는 단계를 수행하도록 야기하고,
    제1 및 제2 합성 이미지는 개별적으로 사용자의 좌측 눈 뷰 및 우측 눈 뷰에 대응하고,
    광학 흐름은 수직 각도의 함수로 적용되는 비일시적 컴퓨터 판독가능한 저장 매체.
  23. 청구항 22에 있어서,
    광학 흐름을 적용하기 위한 함수는 오버랩되는 부분이 상부 부분과 인접하기 시작하는 수직 각도에서 광학 흐름을 적용하지 않고, 오버랩되는 부분의 피봇 행에서 전체 광학 흐름을 적용하는 비일시적 컴퓨터 판독가능한 저장 매체.
  24. 청구항 22 또는 청구항 23에 있어서,
    제1 및 제2 합성 이미지 각각에 대하여: 피봇 행 및 오버랩되는 부분이 측면 부분과 인접하는 이미지의 측면 전용 부분 사이의 합성 이미지로 상부 이미지의 색상을 모핑하는 단계를 더 포함하는 비일시적 컴퓨터 판독가능한 저장 매체.
  25. 청구항 24에 있어서,
    색상 모핑은 피봇 행 및 측면 부분과 인접하는 오버랩되는 부분 사이에서 0 내지 측면 이미지 색상의 완전 색상 모핑의 범위를 가지는 비일시적 컴퓨터 판독가능한 저장 매체.
  26. 청구항 22 내지 청구항 24 중 어느 하나의 항에 있어서,
    제1 및 제2 뷰는 사용자의 좌측 우측 눈 뷰와 우측 눈 뷰 사이의 동공간 거리의 함수로서 거리만큼 이격되는 비일시적 컴퓨터 판독가능한 저장 매체.
  27. 청구항 26에 있어서,
    동공간 거리는 장면의 수직 각도의 함수인 비일시적 컴퓨터 판독가능한 저장 매체.
  28. 청구항 26에 있어서,
    π/2의 수직 각도에서 동공간 거리는 최대 동공간 거리이고, π의 수직 각도에서 동공간 거리는 0인 비일시적 컴퓨터 판독가능한 저장 매체.
  29. 하나 이상의 프로세서; 및 프로세서에 연결되고 프로세서에 의해 실행 가능한 명령어를 포함하는 적어도 하나의 메모리를 포함하는 시스템으로서, 프로세서는 명령어를 실행할 때 청구항 15 내지 청구항 21 중 어느 하나의 항에 따른 방법을 수행하도록 동작 가능한 시스템.
KR1020187031251A 2016-04-06 2017-04-05 양안 및 단안시 간의 전환 KR102027897B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662319208P 2016-04-06 2016-04-06
US62/319,208 2016-04-06
US15/096,162 US9934615B2 (en) 2016-04-06 2016-04-11 Transition between binocular and monocular views
US15/096,162 2016-04-11
PCT/US2017/026244 WO2017176947A2 (en) 2016-04-06 2017-04-05 Transition between binocular and monocular views

Publications (2)

Publication Number Publication Date
KR20180120801A true KR20180120801A (ko) 2018-11-06
KR102027897B1 KR102027897B1 (ko) 2019-10-04

Family

ID=59998231

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187031251A KR102027897B1 (ko) 2016-04-06 2017-04-05 양안 및 단안시 간의 전환

Country Status (11)

Country Link
US (3) US9934615B2 (ko)
EP (1) EP3292437A4 (ko)
JP (2) JP6595726B2 (ko)
KR (1) KR102027897B1 (ko)
CN (1) CN109313346B (ko)
AU (1) AU2017246304B2 (ko)
BR (1) BR112018070572A2 (ko)
CA (1) CA3019583C (ko)
IL (1) IL261933B (ko)
MX (1) MX2018012148A (ko)
WO (1) WO2017176947A2 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10051180B1 (en) * 2016-03-04 2018-08-14 Scott Zhihao Chen Method and system for removing an obstructing object in a panoramic image
US10057562B2 (en) 2016-04-06 2018-08-21 Facebook, Inc. Generating intermediate views using optical flow
US10187629B2 (en) 2016-04-06 2019-01-22 Facebook, Inc. Camera calibration system
US9934615B2 (en) * 2016-04-06 2018-04-03 Facebook, Inc. Transition between binocular and monocular views
US20180357819A1 (en) * 2017-06-13 2018-12-13 Fotonation Limited Method for generating a set of annotated images
BR112019022798A2 (pt) 2017-12-14 2020-05-26 Canon Kabushiki Kaisha Dispositivo de geração, método de geração e programa para modelo tridimensional
DE102018102601A1 (de) * 2018-02-06 2019-08-08 Sick Ag Optoelektronischer Sensor und Verfahren zur Erfassung von Objekten in einem Überwachungsbereich
JP7165935B2 (ja) * 2018-02-07 2022-11-07 株式会社アクセル 撮影装置およびプログラム
JP1625469S (ko) * 2018-04-06 2019-02-25
US11017585B1 (en) * 2018-06-11 2021-05-25 Facebook, Inc. Systems and methods for capturing image data for recreation in a virtual environment
CN108989704B (zh) * 2018-07-27 2021-03-12 创新先进技术有限公司 图像生成方法和装置、终端设备
US11030719B2 (en) * 2019-01-22 2021-06-08 Varjo Technologies Oy Imaging unit, display apparatus and method of displaying
JP7306089B2 (ja) 2019-06-17 2023-07-11 株式会社リコー 画像処理システム、撮像システム、画像処理装置、撮像装置およびプログラム
US11710247B2 (en) 2020-01-30 2023-07-25 Unity Technologies Sf System for image compositing including training with synthetic data
US11676252B2 (en) 2020-01-31 2023-06-13 Unity Technologies Sf Image processing for reducing artifacts caused by removal of scene elements from images
US11694313B2 (en) 2020-02-28 2023-07-04 Unity Technologies Sf Computer-generated image processing including volumetric scene reconstruction
US20210274092A1 (en) 2020-02-28 2021-09-02 Weta Digital Limited Reconstruction of obscured views in captured imagery using pixel replacement from secondary imagery
US20210274091A1 (en) * 2020-02-28 2021-09-02 Weta Digital Limited Reconstruction of obscured views of captured imagery using arbitrary captured inputs
US11758101B2 (en) 2020-08-25 2023-09-12 Samsung Electronics Co., Ltd. Restoration of the FOV of images for stereoscopic rendering
US11989854B2 (en) * 2021-06-23 2024-05-21 Apple Inc. Point-of-view image warp systems and methods

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120155786A1 (en) * 2010-12-17 2012-06-21 Microsoft Corporation Seamless left/right views for 360-degree stereoscopic video
US20140132706A1 (en) * 2012-11-09 2014-05-15 Nintendo Co., Ltd. Image generation method, image display method, storage medium storing image generation program, image generation system, and image display device
US20160088280A1 (en) * 2014-09-22 2016-03-24 Samsung Electronics Company, Ltd. Camera system for three-dimensional video

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5703961A (en) * 1994-12-29 1997-12-30 Worldscape L.L.C. Image transformation and synthesis methods
US5760826A (en) * 1996-05-10 1998-06-02 The Trustees Of Columbia University Omnidirectional imaging apparatus
JP3817302B2 (ja) * 1996-05-28 2006-09-06 キヤノン株式会社 画像生成装置
JP3232408B2 (ja) * 1997-12-01 2001-11-26 日本エルエスアイカード株式会社 画像生成装置,画像呈示装置及び画像生成方法
US6269175B1 (en) * 1998-08-28 2001-07-31 Sarnoff Corporation Method and apparatus for enhancing regions of aligned images using flow estimation
JP2001036898A (ja) * 1999-07-22 2001-02-09 Hitachi Ltd パノラマ映像生成用カメラシステム
US7015954B1 (en) * 1999-08-09 2006-03-21 Fuji Xerox Co., Ltd. Automatic video system using multiple cameras
US6778207B1 (en) * 2000-08-07 2004-08-17 Koninklijke Philips Electronics N.V. Fast digital pan tilt zoom video
US6760026B2 (en) * 2001-01-02 2004-07-06 Microsoft Corporation Image-based virtual reality player with integrated 3D graphics objects
US6947059B2 (en) 2001-08-10 2005-09-20 Micoy Corporation Stereoscopic panoramic image capture device
US7058237B2 (en) * 2002-06-28 2006-06-06 Microsoft Corporation Real-time wide-angle image correction system and method for computer image viewing
CN1771740A (zh) * 2003-01-24 2006-05-10 米科伊公司 立体全景图像捕捉装置
US7463280B2 (en) * 2003-06-03 2008-12-09 Steuart Iii Leonard P Digital 3D/360 degree camera system
US8405323B2 (en) * 2006-03-01 2013-03-26 Lancaster University Business Enterprises Limited Method and apparatus for signal presentation
US8274530B2 (en) * 2007-03-12 2012-09-25 Conversion Works, Inc. Systems and methods for filling occluded information for 2-D to 3-D conversion
US8073190B2 (en) * 2007-11-16 2011-12-06 Sportvision, Inc. 3D textured objects for virtual viewpoint animations
US8531449B2 (en) * 2007-12-18 2013-09-10 Navteq B.V. System and method for producing multi-angle views of an object-of-interest from images in an image dataset
JP5083052B2 (ja) * 2008-06-06 2012-11-28 ソニー株式会社 立体視画像生成装置、立体視画像生成方法およびプログラム
DE102008040985B4 (de) * 2008-08-05 2021-05-27 Robert Bosch Gmbh Verfahren zur Kalibrierung eines Mehrkamerasystems
CA2679903A1 (en) * 2008-09-25 2010-03-25 Orthosoft Inc. Optical camera calibration for cas navigation
US8310525B2 (en) * 2008-10-07 2012-11-13 Seiko Epson Corporation One-touch projector alignment for 3D stereo display
JP2011135246A (ja) 2009-12-24 2011-07-07 Sony Corp 画像処理装置、撮像装置、および画像処理方法、並びにプログラム
EP2408196B1 (en) * 2010-07-14 2017-01-11 Alcatel Lucent A method, server and terminal for generating a composite view from multiple content items
US9876953B2 (en) * 2010-10-29 2018-01-23 Ecole Polytechnique Federale De Lausanne (Epfl) Omnidirectional sensor array system
EP2695385B8 (en) * 2011-04-08 2016-03-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Capturing panoramic or semi-panoramic 3d scenes
DE202011005083U1 (de) * 2011-04-09 2011-06-09 Maier, Florian, 82205 Vorrichtung zum Kalibrieren von Mehrkamera-Aufnahmevorrichtungen
EP2541547A1 (en) * 2011-06-30 2013-01-02 Thomson Licensing Method and apparatus for changing the relative positions of sound objects contained within a higher-order ambisonics representation
JP5834259B2 (ja) * 2011-06-30 2015-12-16 パナソニックIpマネジメント株式会社 薬剤計数装置およびその方法
JP5025814B2 (ja) * 2011-07-06 2012-09-12 ベルボン株式会社 アダプター装置
SG11201400429RA (en) * 2011-09-08 2014-04-28 Paofit Holdings Pte Ltd System and method for visualizing synthetic objects withinreal-world video clip
US9813607B2 (en) * 2011-12-16 2017-11-07 Nokia Technologies Oy Method and apparatus for image capture targeting
WO2014071400A1 (en) * 2012-11-05 2014-05-08 360 Heros, Inc. 360 degree camera mount and related photographic and video system
WO2014169952A1 (de) * 2013-04-16 2014-10-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Justieren eines multi-kamerasystems, multi kamerasystem und justierhilfe
JP6104066B2 (ja) * 2013-06-18 2017-03-29 キヤノン株式会社 画像処理装置および画像処理方法
US20160255322A1 (en) * 2013-10-07 2016-09-01 Vid Scale, Inc. User adaptive 3d video rendering and delivery
US10186087B2 (en) * 2013-12-06 2019-01-22 Hewlett-Packard Development Company, L. P. Occluding augmented reality objects
US9292765B2 (en) * 2014-01-07 2016-03-22 Microsoft Technology Licensing, Llc Mapping glints to light sources
NL2012462B1 (en) 2014-03-18 2015-12-15 Avinash Jayanth Changa Anand Encoding and decoding of three-dimensional image data.
US9892493B2 (en) * 2014-04-21 2018-02-13 Texas Instruments Incorporated Method, apparatus and system for performing geometric calibration for surround view camera solution
US9648300B2 (en) * 2014-05-23 2017-05-09 Leap Motion, Inc. Calibration of multi-camera devices using reflections thereof
DE102014210099B3 (de) * 2014-05-27 2015-10-22 Carl Zeiss Meditec Ag Verfahren zur bildbasierten Kalibrierung von Mehrkamerasystemen mit einstellbarem Fokus und / oder Zoom
US10368011B2 (en) * 2014-07-25 2019-07-30 Jaunt Inc. Camera array removing lens distortion
US9560345B2 (en) * 2014-12-19 2017-01-31 Disney Enterprises, Inc. Camera calibration
US10531071B2 (en) * 2015-01-21 2020-01-07 Nextvr Inc. Methods and apparatus for environmental measurements and/or stereoscopic image capture
KR20170127505A (ko) 2015-03-01 2017-11-21 넥스트브이알 인코포레이티드 환경 측정들을 하고 및/또는 3d 이미지 렌더링에서 이러한 측정들을 사용하기 위한 방법들 및 장치
CN104883556B (zh) * 2015-05-25 2017-08-29 深圳市虚拟现实科技有限公司 基于增强现实的三维显示方法和增强现实眼镜
US20160353146A1 (en) * 2015-05-27 2016-12-01 Google Inc. Method and apparatus to reduce spherical video bandwidth to user headset
US9877016B2 (en) 2015-05-27 2018-01-23 Google Llc Omnistereo capture and render of panoramic virtual reality content
US9704298B2 (en) * 2015-06-23 2017-07-11 Paofit Holdings Pte Ltd. Systems and methods for generating 360 degree mixed reality environments
US10237473B2 (en) * 2015-09-04 2019-03-19 Apple Inc. Depth map calculation in a stereo camera system
US10217189B2 (en) 2015-09-16 2019-02-26 Google Llc General spherical capture methods
US10057562B2 (en) * 2016-04-06 2018-08-21 Facebook, Inc. Generating intermediate views using optical flow
US9934615B2 (en) * 2016-04-06 2018-04-03 Facebook, Inc. Transition between binocular and monocular views
USD830445S1 (en) * 2016-06-30 2018-10-09 Facebook, Inc. Panoramic virtual reality camera
USD830444S1 (en) * 2016-06-30 2018-10-09 Facebook, Inc. Panoramic virtual reality camera

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120155786A1 (en) * 2010-12-17 2012-06-21 Microsoft Corporation Seamless left/right views for 360-degree stereoscopic video
US20140132706A1 (en) * 2012-11-09 2014-05-15 Nintendo Co., Ltd. Image generation method, image display method, storage medium storing image generation program, image generation system, and image display device
US20160088280A1 (en) * 2014-09-22 2016-03-24 Samsung Electronics Company, Ltd. Camera system for three-dimensional video

Also Published As

Publication number Publication date
EP3292437A2 (en) 2018-03-14
JP6595726B2 (ja) 2019-10-23
CA3019583C (en) 2019-08-20
WO2017176947A2 (en) 2017-10-12
MX2018012148A (es) 2019-02-07
EP3292437A4 (en) 2019-08-21
CN109313346A (zh) 2019-02-05
JP2020061137A (ja) 2020-04-16
US20180182175A1 (en) 2018-06-28
US9934615B2 (en) 2018-04-03
AU2017246304B2 (en) 2018-11-22
US20170294006A1 (en) 2017-10-12
CA3019583A1 (en) 2017-10-12
BR112018070572A2 (pt) 2019-02-12
IL261933A (en) 2018-10-31
US10460521B2 (en) 2019-10-29
JP2019519128A (ja) 2019-07-04
WO2017176947A3 (en) 2018-07-26
AU2017246304A1 (en) 2018-11-08
KR102027897B1 (ko) 2019-10-04
CN109313346B (zh) 2020-04-24
US10210660B2 (en) 2019-02-19
US20170294045A1 (en) 2017-10-12
IL261933B (en) 2019-10-31

Similar Documents

Publication Publication Date Title
KR102027897B1 (ko) 양안 및 단안시 간의 전환
KR101956149B1 (ko) 이미지 사이의 광학 흐름의 효율적 결정
US10609282B2 (en) Wide-area image acquiring method and apparatus
US9407904B2 (en) Method for creating 3D virtual reality from 2D images
US20180130264A1 (en) Virtual reality editor
JP2006042298A (ja) 立体視画像作成方法および装置
US20120320152A1 (en) Stereoscopic image generation apparatus and method
US9681122B2 (en) Modifying displayed images in the coupled zone of a stereoscopic display based on user comfort
AU2018249563B2 (en) System, method and software for producing virtual three dimensional images that appear to project forward of or above an electronic display
US11659158B1 (en) Frustum change in projection stereo rendering
EP3098777A1 (en) Drawing apparatus, drawing method, and drawing program
US9897806B2 (en) Generation of three-dimensional imagery to supplement existing content
KR101121979B1 (ko) 입체 영상 변환 방법 및 입체 영상 변환 장치
US10110876B1 (en) System and method for displaying images in 3-D stereo
US20180041749A1 (en) Method and apparatus for stimulating stereoscopic depth perception of stereoscopic data inside head mounted displays when viewing panoramic immersive stereoscopic content
US10326976B2 (en) Method and apparatus for providing personal 3-dimensional image using convergence matching algorithm
JP2021047468A (ja) 画像処理装置、画像処理方法、および画像処理プログラム
KR20090013925A (ko) 실시간 입체영상 생성방법
AU2004226624A1 (en) Image processing

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right