KR102620783B1 - 베이스볼 스티치를 갖는 360도 광각 카메라 - Google Patents
베이스볼 스티치를 갖는 360도 광각 카메라 Download PDFInfo
- Publication number
- KR102620783B1 KR102620783B1 KR1020217028201A KR20217028201A KR102620783B1 KR 102620783 B1 KR102620783 B1 KR 102620783B1 KR 1020217028201 A KR1020217028201 A KR 1020217028201A KR 20217028201 A KR20217028201 A KR 20217028201A KR 102620783 B1 KR102620783 B1 KR 102620783B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- image sensor
- pixels
- pixel
- sensor
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 70
- 230000003287 optical effect Effects 0.000 claims description 17
- 238000004422 calculation algorithm Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000013500 data storage Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000013478 data encryption standard Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- 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/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- 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/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- 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/04—Context-preserving transformations, e.g. by using an importance map
- G06T3/047—Fisheye or wide-angle transformations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
- Stereoscopic And Panoramic Photography (AREA)
Abstract
360도 구면 이미지 캡처와 관련된 장치 및 방법이 제공된다. 컴퓨팅 장치는 제1 이미지 센서로 제1 이미지를, 제2 이미지 센서로 제2 이미지를 실질적으로 동시에 캡처할 수 있다. 제1 이미지 센서는 컴퓨팅 장치의 제1 측면 상에 위치될 수 있고 회전축에 대해 제1 방향으로 배향될 수 있다. 제2 이미지 센서는 장치의 제1 측면과 실질적으로 반대인 장치의 제2 측면에 위치될 수 있고 회전축에 대해 제1 방향으로부터 축방향으로 회전된 제2 방향으로 배향될 수 있다. 컴퓨팅 장치는 컴퓨팅 장치에 대해 360도 시야를 캡처하는 출력 이미지를 생성하기 위해 제1 이미지와 제2 이미지를 함께 스티치할 수 있다.
Description
본 명세서는 베이스볼 스티치를 갖는 360도 광각 카메라에 관한 것이다.
많은 유형의 카메라 시스템이 360도 구면 이미지와 같은 광각 이미지를 캡처할 수 있다. 이러한 구면 이미지는 증강 현실(AR) 및 가상 현실(VR) 기술에 사용될 수 있다. 또한 360도 구면 이미지는 의미론적 환경 이해 및 기계 학습 시스템을 학습하는 것과 같은 인공 지능 태스크에 유용할 수 있다.
일반적으로 저렴하고 단순하며 일반적인 360도 구면 카메라 장치는 "fisheye(어안)" 렌즈가 카메라 장치의 반대쪽에 배치된 두 대의 카메라를 사용한다. 각 카메라는 장치의 각 측면에서 180도 반구보다 약간 더 많이 캡처하도록 구성할 수 있다. 결과적인 두 이미지는 360도 구면 이미지 및/또는 카메라 장치 주변의 전체 360도 뷰를 표시하는 평면 파노라마 이미지와 함께 "스티치(stitch)"될 수 있다.
일 양태에서, 장치가 제공된다. 장치는 장치의 제1 측면에 위치된 제1 이미지 센서를 포함하고, 제1 이미지 센서는 회전축에 대해 제1 방향으로 배향된다. 장치는 또한 장치의 제1 측면과 실질적으로 반대인 장치의 제2 측면에 위치된 제2 이미지 센서를 포함하며, 여기서 제2 이미지 센서는 회전축에 대해 제1 방향으로부터 축방향으로 회전된 제2 방향으로 배향된다. 장치는 기능을 수행하도록 구성된 프로세서를 더 포함한다. 이러한 기능은 제1 이미지 센서로 제1 이미지를 및 제2 이미지 센서로 제2 이미지를 실질적으로 동시에 캡처하고, 그리고 제1 이미지와 제2 이미지를 함께 스티치(stitch)하여 장치에 대한 360도 시야(field of view)를 캡처하는 출력 이미지를 생성하는 것을 포함한다.
다른 양태에서, 방법이 제공된다. 컴퓨팅 장치는 실질적으로 동시에 컴퓨팅 장치의 제1 이미지 센서로 제1 이미지를 캡처하고 제2 이미지 센서로 제2 이미지를 캡처한다. 제1 이미지 센서는 컴퓨팅 장치의 제1 측면에 위치되고 회전축에 대해 제1 방향으로 배향되며 제2 이미지 센서는 컴퓨팅 장치의 제1 측면과 실질적으로 반대되는 컴퓨팅 장치의 제2 측면에 위치된다. 컴퓨팅 장치를 포함하고 회전축에 대해 제1 방향으로부터 축방향으로 회전된 제2 방향으로 방향된다. 컴퓨팅 장치는 제1 이미지와 제2 이미지를 스티치하여 컴퓨팅 장치에 대한 360도 시야를 캡처하는 출력 이미지를 생성한다.
다른 양태에서, 장치가 제공된다. 장치는 장치의 제1 측면에 위치되고 회전축에 대해 제1 방향으로 배향된 제1 이미지 감지 수단을 포함한다. 장치는 또한 장치의 제1 측면과 실질적으로 반대인 장치의 제2 측면에 위치되고 회전축에 대해 제1 방향으로부터 축방향으로 회전된 제2 방향으로 배향된 제2 이미지 감지 수단을 포함한다. 또한, 장치는 제1 이미지 센서로 제1 이미지와 제2 이미지 센서로 제2 이미지를 실질적으로 동시에 캡처하고, 제1 이미지와 제2 이미지를 함께 스티치하여 장치에 대한 360도 시야(field of view)를 캡처하는 출력 이미지를 생성하도록 구성된 프로세서 수단을 포함한다.
전술한 요약은 단지 예시적인 것이며 어떤 식으로든 제한하려는 의도가 아니다. 위에서 설명된 예시적인 양태, 실시예 및 특징에 더하여, 추가 양태, 실시예 및 특징은 도면 및 다음의 상세한 설명 및 첨부 도면을 참조하여 명백해질 것이다.
도 1은 일부 예시적인 실시예에 따른 구면 카메라 장치를 도시하는 도면이다.
도 2는 일부 예시적인 실시예에 따른 이미지 센서를 도시하는 도면이다.
도 3은 일부 예시적인 실시예에 따른 더 큰 픽셀 활용을 위해 설계된 카메라 모듈 배열을 도시한다.
도 4a는 일부 예시적인 실시예에 따른 더 큰 픽셀 활용을 위한 대안적인 접근법을 도시한다.
도 4b는 일부 예시적인 실시예에 따른 베이스볼 스티치를 위한 방법을 도시한다.
도 4c는 일부 예시적인 실시예에 따른 카메라 모듈에 대한 시야(field of view)를 도시한다.
도 5는 일부 예시적인 실시예에 따른, 1:1 이미지 센서를 사용하여 더 큰 픽셀 활용을 위한 카메라 모듈 배열을 도시한다.
도 6은 일부 예시적인 실시예에 따른 일련의 정사각형 투시선을 도시한다.
도 7은 일부 예시적인 실시예에 따른 분산 컴퓨팅 아키텍처를 도시한다.
도 8은 일부 예시적인 실시예에 따른 컴퓨팅 장치의 기능 블록도이다.
도 9는 일부 예시적인 실시예에 따른 방법의 흐름도이다.
도 2는 일부 예시적인 실시예에 따른 이미지 센서를 도시하는 도면이다.
도 3은 일부 예시적인 실시예에 따른 더 큰 픽셀 활용을 위해 설계된 카메라 모듈 배열을 도시한다.
도 4a는 일부 예시적인 실시예에 따른 더 큰 픽셀 활용을 위한 대안적인 접근법을 도시한다.
도 4b는 일부 예시적인 실시예에 따른 베이스볼 스티치를 위한 방법을 도시한다.
도 4c는 일부 예시적인 실시예에 따른 카메라 모듈에 대한 시야(field of view)를 도시한다.
도 5는 일부 예시적인 실시예에 따른, 1:1 이미지 센서를 사용하여 더 큰 픽셀 활용을 위한 카메라 모듈 배열을 도시한다.
도 6은 일부 예시적인 실시예에 따른 일련의 정사각형 투시선을 도시한다.
도 7은 일부 예시적인 실시예에 따른 분산 컴퓨팅 아키텍처를 도시한다.
도 8은 일부 예시적인 실시예에 따른 컴퓨팅 장치의 기능 블록도이다.
도 9는 일부 예시적인 실시예에 따른 방법의 흐름도이다.
많은 유형의 카메라 시스템이 360도 구면(spherical) 이미지를 캡처할 수 있다. 예를 들어, 단순한 360도 구면 카메라 장치는 "어안" 렌즈(배럴 왜곡을 생성하는 초광각 렌즈)가 있는 두 대의 카메라를 사용할 수 있다. 두 카메라 모두 카메라 장치의 실질적으로 반대 측면에 배치될 수 있다. 작동하는 동안 각 카메라는 장치의 각 측면에서 180도 이상의 시야를 가진 반구면 이미지를 동시에 캡처할 수 있다. 그 결과 생성된 두 이미지는 카메라 장치 또는 원격 서버에 내장된 소프트웨어로 "스티치(stitch)"될 수 있으며, 최종 결과는 360도 구면 이미지 및/또는 카메라 장치 주변의 전체 360도 뷰를 표시하는 평면 파노라마 이미지이다. 특히, 본 명세서에 사용된 용어 "360도"는 360도에 있거나 실질적으로 그 근처에 있는 각도 세트를 지칭할 수 있다. 예를 들어, 360도 구면 이미지는 359.99도 구면 이미지를 포함할 수 있다.
2개의 카메라 360도 구면 카메라 장치에 대한 중요한 과제는 이미지 품질일 수 있다. 일반적인 카메라 장치가 직사각형 모양의 이미지 센서를 가지고 있다는 점을 감안할 때, 각 어안 렌즈는 직사각형 모양의 이미지 센서 내에 내접되는 이미지 서클을 가질 수 있다. 이 구성은 각 어안 렌즈가 360도 구면 카메라 장치에 의해 캡처되는 환경의 전체 반구면을 캡처하도록 할 수 있다. 그러나 결과적으로 직사각형 센서의 많은 픽셀이 어안 렌즈에서 사용되지 않을 수 있다. 일부 예에서, 어안 렌즈의 픽셀 활용도는 직사각형 센서의 활성 영역에 대해 51% - 58%만큼 낮을 수 있다. 12메가픽셀(MP) 직사각형 이미지 센서의 경우, 이는 약 5~6MP의 센서 해상도가 완전히 낭비될 수 있음을 의미한다.
낮은 픽셀 활용도를 해결하기 위한 현재 접근 방식은 맞춤형 이미지 센서 및/또는 기타 하드웨어 장치에 의존할 수 있다. 맞춤형 이미지 센서는 고도로 전문화된 사용 사례에서 작동할 수 있지만, 이러한 접근 방식은 흔히 일반적인 이미지 센서 및 하드웨어에 의존하는 대량 생산 카메라 장치의 경우 비용이 많이 들고 비현실적일 수 있다. 추가적으로, 다른 유형의 360도 구면 카메라 장치를 사용하는 접근 방식(예: 각각 고유한 뷰를 캡처하는 3개, 4개 또는 5개 카메라를 사용하는 장치)은 2개의 카메라 360도 카메라 시스템과 비교할 때 높은 제조 비용이라는 유사한 문제에 직면한다. 따라서 두 대의 카메라, 공통 이미지 센서 및/또는 기타 하드웨어가 있는 360도 구면 카메라 장치를 포함하는 솔루션이 선호될 수 있다.
따라서, 여기에 설명된 기술 및 장치는 높은 픽셀 활용도 및 이미지 품질을 달성할 수 있는 360도 구면 카메라 장치에 관한 것이다. 설명된 장치는 이미지 및/또는 비디오 데이터를 기록하는 두 개의 카메라 모듈과 캡처된 데이터를 조인하거나 스티치하는 방법을 포함할 수 있다. 카메라 모듈은 장치에서 실질적으로 반대 방향을 향할 수 있다. 특히, 본 명세서에서 사용된 바와 같이, 용어 '실질적으로'는 명시된 것의 전부는 아니지만 대부분을 의미할 수 있다. 예를 들어, '실질적으로 반대되는' 카메라 모듈은 등을 맞대어 배치하거나 카메라 모듈을 장치의 전체 너비를 줄이기 위해 상대적 오프셋을 사용하여 장치의 반대쪽에 배치할 수 있다. 각 카메라 모듈은 렌즈, 이미지 센서 및 이미지 및/또는 비디오 데이터를 읽는 회로로 구성될 수 있다. 이미지 센서는 W 픽셀 x H 픽셀 치수의 정사각형을 포함하는 직사각형 센서일 수 있다.
예시적인 실시예들에 있어서, 각 카메라 모듈용 렌즈는 180도 이상의 시야(FOV: field of view)를 가지며, 이미지 센서보다 큰 이미지 서클을 생성할 수 있다. 결과적으로, 각각의 카메라 모듈은 이미지 센서에 의해 캡처되지 않는 영역(여기에서 "gap(갭)"으로 지칭됨)을 가질 수 있다. 이러한 갭을 피하거나 최소한 최소화하기 위해 카메라 모듈은 광축을 중심으로 서로에 대해 회전할 수 있다. 정사각형이 아닌 종횡비(예: 4:3)의 이미지 센서의 경우, 상대 회전은 +/- 90도일 수 있다. 정사각형(예를 들어, 1:1) 종횡비를 갖는 이미지 센서의 경우 또는 실질적으로 그와 같은 경우, 회전은 대략 +/- 45도일 수 있다.
각 카메라 모듈은 여기에서 "(overflow pixel)오버플로 픽셀"이라고 하는 180도 시야를 넘어서는 추가 픽셀 영역을 캡처할 수 있다. 카메라 모듈 간의 상대적 회전으로 인해 한 카메라 모듈의 오버플로 픽셀이 반대쪽 카메라 모듈의 갭을 채울 수 있다. 예를 들어, 하나의 카메라 모듈은 카메라 장치의 왼쪽과 오른쪽에 오버플로 픽셀을 캡처할 수 있지만 위쪽(top)과 아래쪽(bottom)에는 갭이 있다. 회전으로 인해, 반대쪽 카메라는 카메라 장치의 위쪽과 아래쪽에 오버플로 픽셀을 캡처할 수 있지만 왼쪽과 오른쪽에는 갭이 있다. 두 카메라 모듈의 이미지가 함께 스티치되면, 결과 360도 이미지는 카메라 장치 주변의 360도 시야 내에 캡처되지 않은 영역이 없을 수 있으며 동시에 높은 픽셀 활용도를 달성한다. 본 명세서에 개시된 이미지 스티치 기술은 "베이스볼 스티치"로 지칭될 수 있는데, 그 이유는 각각의 렌즈가 유사하게 베이스볼의 스티치 패턴(stitching pattern)을 닮을 수 있는 "wrap around" 효과가 있기 때문이다.
예를 들어, 각각 4000 x 3000 픽셀인 2개의 센서로 구성된 가상의 360도 구면 카메라 장치가 주어지면, 180도 렌즈를 사용하는 표준 접근 방식은 총 24 메가픽셀 중 14.1개를 사용할 수 있으며 각도 해상도는 1도당 16.7픽셀일 수 있다(예: 360도 구면 카메라 장치로 촬영되는 환경의 각 도(degree)를 캡처하는 데 16.7픽셀이 사용됨). 베이스볼 스티치 방식에서, 렌즈는 각각 205도 시야(FOV)를 가질 수 있고, 360도 구면 카메라 장치는 총 24메가픽셀 중 19.6을 효과적으로 사용할 수 있고, 1도당 19.5픽셀의 각도 해상도(angular resolution)를 가질 수 있다. 각도 해상도가 높을수록 이미지의 각 섹션을 캡처하는 데 더 많은 픽셀이 사용되기 때문에 베이스볼 스티치 방식은 이미지 해상도를 높일 수 있다.
여기에 설명된 기술은 다중 입력 이미지로부터 360도 이미지를 생성하기 위한 유연하고 효율적인 접근 방식을 제공하는 데 도움이 될 수 있다. 상이한 오프셋 방향(orientations)을 갖는 이미지 센서로 이미지를 캡처함으로써, 여기에 설명된 베이스볼 스티치 방법은 여전히 일반적인 이미지 센서를 사용하면서 높은 픽셀 활용도를 갖는 360도 이미지를 형성할 수 있다. 이와 같이, 여기에 설명된 기술은 공통 컴포넌트를 가진 카메라 장치를 사용하여 캡처할 수 있는 고품질 이미지를 가능하게 함으로써 증강 현실(AR) 시스템, 가상 현실(VR) 시스템 또는 인공 지능 시스템의 성능을 향상시킬 수 있다. 특히, 여기의 예 및 실시예는 360도 구면 카메라 장치에 대한 2개의 카메라 접근 방식에 관한 것이지만, 베이스볼 스티치 기술은 외삽(extrapolated)되어 3개, 4개, 5개 이상의 카메라를 사용하는 360도 구면 카메라 장치에 포함될 수 있다.
카메라 장치의 예
도 1은 일부 예시적인 실시예에 따른 구면 카메라 장치(100)를 도시하는 도면이다. 설명된 바와 같이, 구면 카메라 장치(100)는 어안 렌즈(110) 및 어안 렌즈(112)로 구성될 수 있다. 이러한 렌즈는 장치 주변의 360도 시야(FOV: field of view)가 캡처될 수 있도록 하기 위해 구면 카메라 장치(100)의 실질적으로 반대 측면에 배치될 수 있는 2개 이상의 카메라 모듈의 일부일 수 있다.
실제로 어안 렌즈는 주어진 필름 평면에 대해 일반 렌즈의 초점 거리보다 상당히 작은 초점 거리로 설계할 수 있다. 이 설계를 통해 렌즈는 일반 렌즈보다 더 넓은 시야를 캡처할 수 있다. 또한, 어안 렌즈는 일반 렌즈에 비해 외형이 볼록한 경우가 많다. 이 속성은 어안 렌즈(110)와 어안 렌즈(112)의 약간의 곡선(커브)으로 개념적으로 설명될 수 있다.
어안 렌즈는 원근감이 있는 이미지(예: 직선 이미지)를 생성하는 대신 특수 매핑(예: 등입각 매핑)을 사용하여 캡처된 이미지에 볼록한 비직선형 모양을 제공할 수 있다. 예를 들어, 반구면 이미지(120)는 어안 렌즈(110)가 있는 카메라 모듈에 의해 캡처된 예시적인 이미지를 나타낼 수 있고 반구면(hemisphere) 이미지(122)는 어안 렌즈(112)가 있는 카메라 모듈에 의해 캡처될 수 있는 예시적인 이미지를 나타낼 수 있다. 각 반구면 이미지는 특히 이미지의 가장자리 근처에서 비직선적으로 어떤 형태를 나타낸다. 특별한 볼록성은 일반 렌즈와 비교할 때 각 반구면 이미지가 넓은 시야를 캡처할 수 있도록 한다. 예시적인 실시예에서, 어안 렌즈(110) 및 어안 렌즈(112)는 구면 카메라 장치(100)에 대해 180도 이상(예를 들어, 200도 또는 220도)의 시야를 캡처하도록 구성될 수 있다.
본 명세서의 실시예는 예시의 목적으로 어안 렌즈를 사용한다는 것을 이해해야 한다. 실제로, 본 명세서에 기술된 예시적인 실시예 또는 기술과 관련하여 많은 상이한 유형의 광각 렌즈가 사용될 수 있다.
반구면 이미지(120) 및 반구면 이미지(122)가 구면 카메라 장치(100)에 의해 실질적으로 동시에 캡처되면, 반구면 이미지(120) 및 반구면 이미지(122)는 이미지(140)와 같은 단일의 360도 시야 이미지를 생성하기 위해 스티치 프로세스(130)를 통해 함께 병합될 수 있다. 반구면 이미지(120) 및 반구면 이미지(122)가 넓은 시야(즉, 180도 이상)로 캡처된 이미지를 나타낼 수 있다는 점을 감안할 때, 스티치 프로세스(130)는 구면 카메라 장치(100)에 대해 전체 360도 시야를 충분히 덮도록 넓은 시야를 사용할 수 있다. 스티치 프로세스(130)는 구면 카메라 장치(100) 또는 원격 서버/컴퓨팅 장치에서 직접 발생할 수 있고 그 결과는 구면 카메라 장치(100)로 다시 전달된다. 스티치 프로세스(130)는 2개의 개별 이미지로부터의 픽셀을 결합하여 단일 코헤시브 이미지(cohesive image)를 생성하는 하나 이상의 알고리즘을 포함할 수 있다. 예제 알고리즘은 두 이미지에서 고유한 키 포인트 세트를 찾을 수 있으며, 각 키 포인트 주변의 영역을 정의하고, 키 포인트를 중심으로 영역 콘텐츠를 추출 및 정규화하고, 정규화된 영역에서 로컬 디스크립터를 계산하고, 단일 코헤시브 이미지를 생성하기 위해 로컬 디스크립터를 매칭한다.
여기에 사용된 실질적으로 동시 캡처는 짧은 시간 윈도우 내에서 다중 이미지를 캡처하는 카메라 장치를 나타낼 수 있음을 이해해야 한다. 예를 들어 카메라 장치는 정확히 동시에 여러 이미지를 캡처할 수 있다. 다른 예에서, 카메라 장치는 T=10ms에서 제1 이미지를 캡처하고 T = 10.1ms에서 제2 이미지를 캡처할 수 있다. 실질적으로 동시 캡처의 다른 예는 본 개시의 범위 내에서 인식될 수 있다.
이미지(140)는 스티치 프로세스(130)의 결과인 이미지일 수 있다. 2차원 매체에 디스플레이될 때, 이미지(140)는 구면 카메라 장치(100)에 대한 360도 시야 파노라마 이미지로 나타날 수 있다. 도 1에 도시된 바와 같이, 이미지 측면(이미지 사이드)(Image Side)(142)은 반구면 이미지(120)의 요소에 대응할 수 있고, 이미지 측면(Image Side)(142)(144)은 반구면 이미지(122)의 요소에 대응할 수 있다.
도 2는 예시적인 실시예에 따른 이미지 센서(200)를 도시하는 도면이다. 이미지 센서(200)는 구면 카메라 장치(100)의 카메라 모듈에 의해 사용될 수 있다. 구면 카메라 장치(100)가 환경의 이미지를 캡처하도록 지시되면, 환경으로부터의 입사광(220)은 구면 카메라 장치(100)로 들어가 이미지 센서(200)에 도달한다. 그 다음, 이미지 센서(200)는 픽셀 요소(예를 들어, 이미지 센서 상에 배치된 포토사이트)를 사용하여 입사광(220)에 대한 정보를 캡처하고 기록한다. 그 다음, 구면 카메라 장치(100)는 입사광(220)에 대한 기록된 정보를 활용하여, 예를 들어 도 1에 반구면 이미지(120) 및/또는 반구면 이미지(122)로서 예시된 환경의 이미지를 생성할 수 있다. 그럼에도 불구하고, 입사광(220)을 캡처하기 위해 구면 카메라 장치(100)에 의해 사용되는 픽셀 요소의 수는 카메라에 의해 사용되는 렌즈의 유형에 의존할 수 있다.
일반적으로 일반(예: 비광각) 렌즈를 사용하는 카메라 모듈은 빛을 받아들여 해당 이미지 센서의 대각선보다 지름이 큰 이미지 서클을 생성할 수 있다. 이 속성은 일반(노멀) 이미지 서클(210) 및 관련 이미지 센서(212)로 나타낼 수 있다. 일반 렌즈는 이미지 센서(212)가 일반 이미지 서클(210)에 내접되는 것을 허용하기 때문에, 이미지 센서의 모든 픽셀 요소는 이미지를 캡처할 때 활용될 수 있다.
반면, 어안 렌즈(또는 다른 광각 렌즈)를 사용할 경우, 렌즈의 광각 특성(속성)으로 인해 이미지 서클이 제한될 수 있다. 더 넓은 시야(예를 들어, 180도 이상)가 이미지 센서 내에 들어갈 수 있기 때문에, 이미지 서클은 이미지 센서의 가장 짧은 치수 이하를 커버하도록 구성될 수 있다. 이 속성은 어안 이미지 서클(230)로 나타낼 수 있다. 그 결과, 어안 이미지 서클(230)은 이미지 센서(200)의 상단에서 하단까지 도달할 수 있지만 측면 또는 모서리에는 도달할 수 없다.
어안 이미지 서클(230)은 이미지 센서(200)의 활성 영역보다 훨씬 작기 때문에, 어안 이미지 서클(230) 외부의 이미지 센서의 픽셀 요소는 미사용 영역(240)에 의해 예시된 바와 같이 활용되지 않을 수 있다. 이러한 픽셀 요소를 사용하지 않음으로써, 구면 카메라 장치(100)에 의해 캡처된 이미지는 더 낮은 품질이 될 수 있다. 즉, 각도 해상도(예를 들어, 시야(FOV)에서 1도당 픽셀)는 이미지 센서(200)의 모든 픽셀 요소가 활용되어야 하는 경우보다 낮을 수 있다. 예를 들어, 미사용 영역(240)은 이미지 센서(200)의 픽셀의 48%를 차지할 수 있으며, 이는 이용 가능한 픽셀의 52%만이 실제로 이미지를 캡처하는 데 활용되고 있음을 의미한다.
도 3은 일부 예시적인 실시예에 따른 더 큰 픽셀 활용을 위한 카메라 모듈 배열을 도시한다. 도 3은 4:3 이미지 센서(310) 및 4:3 이미지 센서(320)를 도시하며, 이는 구면 카메라 장치(100)의 카메라 모듈에 의해 장치의 실질적으로 반대 측면에서 2개의 반구면 이미지를 캡처하는 데 사용될 수 있다. 그런 다음 이 두 개의 반구면 이미지를 함께 스티치하여 최종 360도 구면 이미지 및/또는 파노라마 이미지를 생성할 수 있다.
여기에 사용된 4:3 프리픽스(prefix)는 이미지 센서의 종횡비 또는 너비 대 높이의 비율을 나타낸다. 예를 들어, 4:3 이미지 센서는 4000픽셀 너비와 3000픽셀 높이의 이미지 센서가 될 수 있으므로 이미지 센서에 총 12MP를 제공한다. 4:3이 통상적인 종횡비이지만, 1:1, 3:2 및/또는 16:9와 같은 다른 종횡비가 본 개시내용의 범위 내에서 고려될 수 있다. 예를 들어, 1:1 이미지 센서는 4000픽셀 너비와 4000픽셀 높이의 센서가 될 수 있으므로 이미지 센서에 총 16MP를 제공한다. 다른 예로, 1:1 이미지 센서는 3000픽셀 너비와 3000픽셀 높이의 센서가 될 수 있으므로 이미지 센서에 총 9MP를 제공한다.
도 3에 도시된 바와 같이, 이미지 서클(300)은 해당 4:3 이미지 센서(4:3 센서)(310)보다 클 수 있고 이미지 서클(302)은 해당 4:3 이미지 센서(320)보다 클 수 있다. 도 2에 도시된 내접 이미지 서클과 비교할 때, 도 3의 더 큰 이미지 서클이 이용될 각 이미지 센서 내의 더 많은 비율의 픽셀을 가능하게 할 수 있다. 예를 들어, 4:3 이미지 센서(310) 및 4:3 이미지 센서(320)는 이미지를 캡처할 때 픽셀의 80-90%를 사용할 수 있으며, 이는 도 2의 맥락에서 위에서 설명된 ~52% 활용률보다 더 높은 활용률이다.
그러나 더 큰 크기로 인해, 이미지 서클(300)과 이미지 서클(302) 모두 이미지 센서에 의해 캡처되지 않은 영역을 포함한다. 본 명세서에 사용된 바와 같이, "갭"은 주어진 센서에 대한 이미지 서클에 대해 캡처되지 않은 임의의 픽셀/영역을 지칭할 수 있다. 이 개념은 이미지 서클(300) 상의 갭 영역(GR)(312 및 314) 및 이미지 서클(302) 상의 갭 영역(GR)(322 및 324)에 의해 예시될 수 있다. GR(312, 314, 322, 324)에 의해 예시된 커버리지의 이러한 갭은 도 3의 카메라 모듈 배열을 비실용적으로 만들 수 있다.
도 4a는 예시적인 실시예에 따른 더 큰 픽셀 활용을 위한 대안적인 카메라 모듈 배열을 도시한다. 도 3과 같이, 도 4a는 구면 카메라 장치(100)의 카메라 모듈에 의해 장치의 실질적으로 반대 측면에서 2개의 반구면 이미지를 캡처하는 데 사용될 수 있는 2개의 4:3 이미지 센서를 사용하는 것을 예시한다. 이 두 이미지는 최종 360도 구면 이미지 및/또는 파노라마 이미지, 예를 들어 스티치된 이미지(404)를 생성하기 위해 함께 스티치될 수 있다. 도 4a의 요소들은 반드시 일정한 비율로 도시된 것은 아니며 본 명세서의 실시예들의 개념적 예시를 위해 제시된다는 점에 유의해야 한다.
도 3의 배열과 유사하게, 이미지 서클(400)은 해당 4:3 이미지 센서(410)보다 클 수 있고, 이미지 서클(402)은 대응하는 회전된 4:3 이미지 센서(420)보다 클 수 있다. 이렇게 큰 이미지 서클을 사용하면 각 이미지 센서 내에서 더 많은 비율의 픽셀을 사용할 수 있다. 예를 들어, 4:3 이미지 센서(410) 및 회전된 4:3 이미지 센서(420)는 이미지를 캡처할 때 픽셀의 80-90%를 활용할 수 있다.
그러나, 도 3의 배열과 달리, 도 4a의 카메라 모듈 배열은 회전된 4:3 센서(420)를 이용한다. 더 구체적으로, 4:3 이미지 센서(410)는 구면 카메라 장치(100)의 한 면에 배치된 제1 카메라 모듈에 있을 수 있으며, 회전된 4:3 이미지 센서(420)는 제1 카메라 모듈로부터 구면 카메라 장치(100)의 실질적으로 반대 측에 배치된 제2 카메라 모듈 상에 있을 수 있다. 예시적인 실시예에서, 회전된 4:3 이미지 센서(420) 또는 회전된 4:3 이미지 센서(420)를 포함하는 카메라 모듈은 4:3 이미지 센서(410) 또는 4:3 이미지 센서(410)를 포함하는 카메라 모듈의 방향으로부터 +/- 90도의 상대 회전으로 배향될 수 있다. 이 회전으로, 도 4a의 카메라 모듈 배열은 한 센서에서 캡처한 오버플로 픽셀(즉, 주어진 이미지 센서에 대해 180도 시야를 넘어서 캡처된 추가 픽셀)이 다른 이미지 센서에서 생성된 이미지 갭을 채울 수 있도록 한다. 오버플로 픽셀은 어안 렌즈 또는 기타 광각 렌즈의 속성을 통해 얻을 수 있다. 특히, 4:3 이미지 센서(410) 및 회전된 4:3 이미지 센서(420)에 사용되는 렌즈는 반대 반구면의 영역을 캡처하기 위해 180도보다 큰 시야를 가질 수 있다. 예를 들어, 각 렌즈는 210도 또는 220도의 시야(FOV)를 가질 수 있다. 설명된 바와 같이, 도 4a의 카메라 모듈 배열을 활용할 수 있는 스티치 프로세스는 베이스볼 스티치으로 지칭될 수 있다.
예시적인 실시예에서, 이미지 센서 또는 이미지 센서를 포함하는 카메라 모듈을 회전시킬 것인지의 결정은 구면 카메라 장치(100)에 의해 사용되는 하드웨어에 기초할 수 있다. 예를 들어, 구면 카메라 장치(100)의 카메라 모듈이 상대적으로 큰 시나리오에서, 구면 카메라 장치(100)의 더 쉬운 패키징을 허용하도록 이미지 센서가 회전될 수 있다. 다른 시나리오에서는 서로 다르게 회전된 두 개의 센서가 있는 카메라 모듈을 사용하는 것이 비실용적일 수 있다(예: 추적할 추가 부품 번호, 회전된 센서가 있는 두 모듈을 구분하기 어려운 경우 등). 따라서, 각각의 카메라 모듈은 동일한 이미지 센서 방향을 가질 수 있고 구면 카메라 장치(100)는 다른 모듈에 대해 하나의 카메라 모듈을 회전시킬 수 있다(따라서 한 센서를 다른 센서에 대해 회전).
도 4b는 일부 예시적인 실시예에 따른 베이스볼 스티치를 위한 방법(430)을 도시한다. 일부 예에서, 방법(430)은 스티치 프로세스(130)를 구현한다. 방법(430)은 구면 카메라 장치(100) 및/또는 하나 이상의 컴퓨팅 장치(800)에 의해 수행될 수 있다. 방법(430)은 2개의 입력 이미지로부터 360도 구면 이미지 및/또는 파노라마 이미지를 형성하기 위해 이용될 수 있다. 예를 들어, 방법(430)은 입력 이미지(I410 및 I420)로부터 스티치된 이미지(404)를 형성하는 데 사용될 수 있다.
방법(430)은 블록(432)에서 시작할 수 있으며, 여기서 구면 카메라 장치(100)는 실질적으로 동시에 4:3 이미지 센서(410)를 갖는 카메라 모듈을 사용하여 이미지(I410)를 캡처하고, 회전된 4:3 이미지 센서(420)를 갖는 카메라 모듈을 사용하여 이미지(I420)를 캡처한다. 도 4a에 예시된 바와 같이, I410은 이미지 서클(400) 및 4:3 이미지 센서(410) 모두의 경계 내에서 캡처된 픽셀을 나타낼 수 있는 반면 I420은 이미지 서클(402) 및 회전된 4:3 이미지 센서(420)의 경계 내에서 캡처된 픽셀을 나타낼 수 있다.
블록(434)에서, 이미지(I410)은 오버플로 영역(OR)(412A), OR(412B) 및 비-오버플로 영역(NOR)(416)으로 분할(segment)될 수 있다. OR(412A 및 OR 412B)는 4:3 이미지 센서(4:3 센서)(410)에 대해 180도 시야를 넘어 캡처된 픽셀을 식별하여 얻을 수 있다. NOR(416)은 4:3 이미지 센서(410)에 대해 180도 시야 내에서 캡처된 픽셀을 식별함으로써 얻을 수 있다. 일부 경우에, 4:3 이미지 센서(410)를 갖는 카메라 모듈은 후속 동작을 지원하기 위해 갭 영역(GR)(414A 및 GR(414B))을 결정할 수 있다. 이러한 영역은 4:3 이미지 센서(410)의 경계를 벗어나지만 이미지 서클(400)의 경계 내에 있는 캡처되지 않은 픽셀을 식별함으로써 얻을 수 있다.
블록(436)에서, 이미지(I420)는 OR(422A), OR(422B), 및 NOR(426)으로 분할될 수 있다. OR(422A) 및 OR(422B)는 회전된 4:3 이미지 센서(420)에 대해 180도 시야를 넘어 캡처된 픽셀을 식별함으로써 얻을 수 있다. NOR(426)는 회전된 4:3 이미지 센서(420)에 대해 180도 시야 내의 픽셀을 식별함으로써 얻어질 수 있다. 일부 경우에, 회전된 4:3 이미지 센서(420)가 있는 카메라 모듈은 후속 동작을 지원하기 위해 GR(424A) 및 GR(424B)을 결정할 수 있다. 이러한 영역은 회전된 4:3 센서(420)의 경계를 벗어나지만 이미지 서클(402)의 경계 내에 있는 캡처되지 않은 픽셀을 식별함으로써 얻을 수 있다.
블록(438)에서, NOR(416) 및 NOR(426)로부터의 픽셀은 360도 출력 이미지를 초기화하기 위해 추가될 수 있다. 구체적으로, NOR(416)은 이미지 서클(400)의 중심에 대응하는 360도 출력 이미지의 영역에 추가될 수 있고 NOR(426)은 이미지 서클(402)의 중심에 대응하는 360도 출력 이미지의 영역에 추가될 수 있다. 이 초기화는 스티치된 이미지(404)의 중앙-좌측에서 NOR(416) 및 스티치된 이미지(404)의 중앙-우측에서 NOR(426)에 의해 도 4a의 스티치된 이미지(404)에 도시된다.
블록(440)에서, OR(412A) 및 OR(412B)로부터의 픽셀이 360도 출력 이미지에 추가될 수 있다. 예로서, OR(412A)로부터의 픽셀은 GR(424A)에 대응하는 360도 출력 이미지의 영역에 추가될 수 있고, OR(412B)로부터의 픽셀은 GR(424B)에 대응하는 출력 이미지의 영역에 추가될 수 있다. 이러한 픽셀의 추가는 스티치된 이미지(404)의 중앙에 있는 OR(412B) 및 스티치된 이미지(404)의 맨 오른쪽에 있는 OR(412A)에 의해 도 4a의 스티치된 이미지(404)에 도시되어 있다.
일부 실시예에서, 하나의 센서의 오버플로 영역에서 캡처된 픽셀은 실질적으로 반대쪽 센서의 비-오버플로 영역에서 캡처된 픽셀과 중첩(오버랩)될 수 있다. 예를 들어, OR(412A)의 픽셀이 GR(424B)을 완벽하게 채우는 대신 OR(412A)의 픽셀이 이미 캡처된 픽셀과 중첩될 수 있다. 이 개념은 스티치된 이미지(404)로 설명될 수 있다. GR(424B)이 캡처되지 않은 픽셀이 있는 영역을 나타내는 경우, OR(412A)는 GR(424B)에서 누락된 픽셀을 채우지만 NOR(426) 영역과 중첩된다(즉, OR(412A) 내부이지만 GR(424B) 외부의 영역). 또한, 명확성을 위해 GR(424A), GR(414A) 및 GR(414B)이 스티치된 이미지(404)에서 생략된다는 점에 유의해야 한다. 그러나 실제로 이러한 영역이 존재하고 OR(422A), OR(422B) 및 OR(412B)의 픽셀이 이러한 갭 영역을 완벽하게 채우지 않으면 유사한 유형의 중첩이 발생할 수 있다.
따라서, 블록(442)에서, 베이스볼 스티치 방법(430)은 OR(412A)/OR(412B)로부터의 픽셀이 NOR(426)의 픽셀과 중첩하는지 여부를 결정할 수 있다. 중첩하는 픽셀이 발견되면, 방법(430)은 블록(444)으로 계속할 수 있다. 그렇지 않으면 방법(430)은 446으로 계속할 수 있다.
블록(444)에서, 각각의 중첩 픽셀에 대해, 방법(430)은 출력 이미지의 특정 출력 픽셀로서 사용하기 위해 OR(412A)/OR(412B)로부터 중첩하는 픽셀 또는 NOR(426)로부터 중첩하는 픽셀 중 하나를 선택할 수 있다. 일 예에서, 방법(430)은 항상 OR(412A)/OR(412B)로부터 픽셀을 선택하도록 구성될 수 있다. 다른 예에서, 방법(430)은 항상 NOR(426)로부터 픽셀을 선택하도록 구성될 수 있다. 또 다른 예에서, 방법(430)은 OR(412A)/OR(412B) 또는 NOR(426) 중에서 선택하는 것 사이에서 교대로 구성될 수 있다. 즉, 제1 중첩 픽셀은 OR(412A)/OR(412B)에서 선택될 수 있고, 제2 중첩 픽셀은 NOR(426)에서 선택될 수 있으며, 제3 중첩 픽셀은 OR(412A)/OR(412B) 등에서 선택될 수 있다. 또한, 일부 경우, 방법(430)은 출력 이미지의 출력 픽셀로서 사용하기 위해 OR(412A)/OR(412B)로부터의 중첩 픽셀과 NOR(426)로부터의 중첩 픽셀을 함께 블렌딩(blending)하는 단계를 더 포함할 수 있다. 일 예에서, 방법(430)은 중첩 픽셀을 함께 혼합할 수 있는 스티치 알고리즘(예: 깊이 추정, 광학 흐름 또는 적응 호모그래피 기반)을 사용하도록 구성될 수 있다. 스티치 알고리즘은 구면 카메라 장치(100)에 저장/실행될 수 있거나, 스티치 알고리즘이 계산 집약적인 경우 구면 카메라 장치(100)에 통신적으로 결합된 원격 컴퓨팅 장치(800)에 저장/실행될 수 있다.
블록(446)에서, OR(422A) 및 OR(422B)로부터의 픽셀이 초기 360도 출력 이미지에 추가될 수 있다. 예로서, OR(422A)로부터의 픽셀은 GR(414A)에 대응하는 출력 이미지의 영역에 추가될 수 있고 OR(422B)로부터의 픽셀은 GR(414B)에 대응하는 출력 이미지의 영역에 추가될 수 있다. 이러한 픽셀의 추가는 스티치된 이미지(404)의 좌측 상단에 있는 OR(422A) 및 스티치된 이미지(404)의 좌측 하단에 있는 OR(422B)에 의해 도 4a의 스티치된 이미지(404)에 도시된다.
블록(442)과 유사하게, 블록(448)에서, 방법(430)은 OR(422A) 및/또는 OR(422B)로부터의 픽셀이 NOR(416)의 픽셀과 중첩하는지 여부를 결정할 수 있다. 중첩하는 픽셀이 발견되면 방법(430)은 블록(450)을 계속할 수 있다. 그렇지 않으면 방법(430)은 452로 계속될 수 있다.
블록(450)에서, 각각의 중첩 픽셀에 대해, 방법(430)은 출력 이미지의 특정 출력 픽셀로서 사용하기 위해 OR(422A/OR422B)로부터 중첩 픽셀 또는 NOR(416)로부터 중첩 픽셀 중 하나를 선택할 수 있다. 일 예에서, 방법(430)은 항상 OR(422A/OR 422B)로부터 픽셀을 선택하도록 구성될 수 있다. 다른 예에서, 방법(430)은 항상 NOR(416)로부터 픽셀을 선택하도록 구성될 수 있다. 또 다른 예에서, 방법(430)은 OR(422A/OR 422B) 또는 NOR(416) 중에서 선택하는 것 사이에서 교대로 구성될 수 있다. 즉, 제1 중첩 픽셀은 OR(422A/OR422B)에서 선택될 수 있고, 제2 중첩 픽셀은 NOR(416)에서 선택될 수 있으며, 제3 중첩 픽셀은 OR(422A/OR422B) 등에서 선택될 수 있다. 블록(452)에서, 갭 영역이 없는 최종 360도 이미지, 예를 들어 스티치된 이미지(404)가 출력될 수 있다. 또한, 일부 경우, 방법(430)은 출력 이미지의 출력 픽셀로서 사용하기 위해 OR(422A/OR 422B)로부터의 중첩 픽셀과 NOR(416)로부터의 중첩 픽셀을 함께 블렌딩하는 단계를 더 포함할 수 있다. 일 예에서, 방법(430)은 중첩 픽셀을 함께 혼합할 수 있는 스티치 알고리즘(예를 들어, 깊이 추정, 광학 흐름, 또는 적응적 호모그래피에 기초함)을 사용하도록 구성될 수 있다. 스티치 알고리즘은 구면 카메라 장치(100)에 저장/실행될 수 있거나, 스티치 알고리즘이 계산 집약적인 경우 구면 카메라 장치(100)에 통신적으로 결합된 원격 컴퓨팅 장치(800)에 저장/실행될 수 있다.
도 4c는 일부 예시적인 실시예에 따른 카메라 모듈(470)에 대한 시야(field of view)(460)를 도시한다. 특히, 도 4c는 오버플로 픽셀이 카메라 모듈(470)에 의해 획득될 수 있는 방법을 예시한다. 카메라 모듈(470) 및 카메라 모듈(480)은 구면 카메라 장치(100)에 의해 사용되는 카메라 모듈을 나타낼 수 있다. 예를 들어, 카메라 모듈(470)은 4:3 이미지 센서(410)를 이용할 수 있고 카메라 모듈(480)은 회전된 4:3 이미지 센서(420)를 이용할 수 있다. 또한, 카메라 모듈(470, 480)은 모두 어안 및/또는 광각 렌즈를 이용할 수 있다.
시야(460)는 카메라 모듈(470)에 의해 캡처될 수 있는 주어진 장면의 각도 범위를 예시한다. 카메라 모듈(470) 상의 어안 렌즈의 사용은 시야(460)가 180도보다 클 수 있게 할 수 있다. 이는 카메라 모듈(470)에 의해 캡처될 수 있는 도 4c의 중앙 좌측에 추가 15도 시야 및 도 4c의 중앙 우측에 추가적인 15도 시야에 의해 도시된다. 결과적으로, 카메라 모듈(470)은 210도의 전체 시야를 가질 수 있으며, 이는 카메라 모듈(470)이 "비하인드(behind)"에서 빛을 캡처할 수 있음을 의미한다(예를 들어, 카메라 모듈(470)이 직면한 환경과 반대되는 환경에서). 이 속성은 카메라 모듈(470)이 카메라 모듈(480)이 직면한 환경으로부터 오버플로 픽셀을 획득할 수 있게 하며 그 반대의 경우도 마찬가지이다.
도 4c는 또한 회전된 4:3 이미지 센서(420) 및/또는 회전된 4:3 이미지 센서(420)를 갖는 카메라 모듈의 상대 회전이 달성될 수 있는 방법을 보여준다. 예시적인 실시예에서, 카메라 모듈(470)은 회전축(490)에 대해 회전될 수 있다. 그 축은 카메라 모듈(470, 480)의 광축에 실질적으로 평행하도록 정렬될 수 있으며, 따라서 카메라 모듈(470)은 카메라 모듈(480)의 이미지 갭을 캡처할 수 있으며 그 반대도 마찬가지이다. 도 4c는 반드시 일정한 비율로 도시된 것은 아니며 본 명세서의 실시예의 개념적 예시로서 제시된다는 점에 유의해야 한다.
일부 실시예에서, 구면 카메라 장치(100)는 2개보다 많은 카메라 모듈과 함께 방법(430)과 같은 베이스볼 스티치 방법을 이용할 수 있다. 즉, 카메라 모듈의 개수(N)가 주어지면, 각 모듈은 구면 카메라 장치(100) 주위에 배치될 수 있으며, 각 모듈은 대응하는 이미지 센서와 적어도 360/N도의 시야를 갖는 렌즈를 갖는다. 예를 들어 N = 4인 경우, 각 모듈에는 시야(시야각)가 90도 이상인 렌즈가 있을 수 있다. 더욱이, 각각의 카메라 모듈은 대략 90도 이격된 각각의 모듈을 갖는 단일 평면에 대해 구면 카메라 장치(100) 주위에 배치될 수 있다.
도 5는 일부 예시적인 실시예에 따른, 1:1 이미지 센서를 사용할 때 더 큰 픽셀 활용을 위한 카메라 모듈 배열을 도시한다. 도 5는 1:1 이미지 센서(510) 및 1:1 이미지 센서(520)를 도시하며, 이는 구면 카메라 장치(100)의 카메라 모듈에 의해 장치의 실질적으로 반대 측면에서 2개의 반구면 이미지를 캡처하는 데 사용될 수 있다. 이 두 이미지는 최종 360도 구면 이미지 및/또는 파노라마 이미지, 예를 들어 스티치된 이미지(504)를 생성하기 위해 함께 스티치될 수 있다. 도 5의 요소들은 반드시 일정한 비율로 도시된 것은 아니며 본 명세서의 실시예들의 개념적 예시를 위해 제공된다는 점에 유의해야 한다.
1:1 이미지 센서(510)는 구면 카메라 장치(100)의 일측에 배치된 카메라 모듈에 존재할 수 있고, 회전된 1:1 이미지 센서(520)는 구면 카메라 장치(100)의 실질적으로 반대측에 배치된 카메라 모듈에 존재할 수 있다. 예시적인 실시예에서, 회전된 1:1 이미지 센서(520) 또는 회전된 1:1 이미지 센서(520)를 포함하는 카메라 모듈은 1:1 이미지 센서(510)를 포함하는 카메라 모듈 또는 1:1 이미지 센서(510)의 방향으로부터 +/- 45도의 상대 회전으로 배향될 수 있다. 이 회전은 도 4c에 유사하게 설명된 바와 같이, 1:1 이미지 센서(510) 및 회전된 1:1 센서(520) 양자의 초점(또는 1:1 이미지 센서(510) 및 회전된 1:1 센서(520)를 포함하는 카메라 모듈의 초점)과 정렬되는 회전축에 대해 수행될 수 있다. 이 회전을 통해, 도 5의 배열은 한 센서에서 캡처한 오버플로 픽셀이 다른 이미지 센서에서 생성된 갭을 채우도록 할 수 있으며 그 반대의 경우도 마찬가지이다.
도 5에 의해 예시된 바와 같이, 도 4a의 회전된 4:3 이미지 센서(420)와 비교할 때 회전된 1:1 이미지 센서(520)에 대해 더 작은 회전(예: +/- 45도 대 +/- 90도)이 사용될 수 있다. 이는 1:1 이미지 센서의 속성에서 설명될 수 있으며, 4개의 별개의 갭 영역(예: 514A, 514B, 514C 및 514D)이 이미지 서클(500)의 모든 측면에서 발생하지만, 각 갭 영역은 도 4a에 도시된 것보다 작을 수 있다. 결과적으로, 1:1 이미지 센서의 기하학적 구조는 회전된 1:1 이미지 센서(520)(예: 522A, 522B, 522C, 522D)의 모서리 영역이 도 4a에 도시된 바와 같이 4:3 이미지 센서의 측면이 아니라 오버플로 영역으로 작용하도록 할 수 있다. 이 속성은 +/- 90도의 상대 회전이 아닌 +/- 45도의 상대 회전을 허용할 수 있다.
방법(430)과 유사하게, 도 5의 배열의 카메라 모듈은 베이스볼 스티치를 사용하여 갭 영역이 없는 출력 360도 이미지, 예를 들어 스티치된 이미지(504)를 생성할 수 있다. 예로서, 구면 카메라 장치(100)는 1:1 이미지 센서(510)가 있는 카메라 모듈을 사용하여 이미지(I510) 및 회전된 1:1 이미지 센서(520)가 있는 카메라 모듈을 사용하여 이미지(I520)를 실질적으로 동시에 캡처할 수 있다. 도 5에 도시된 바와 같이, I510은 이미지 서클(500) 및 1:1 이미지 센서(510) 모두의 경계 내에서 캡처된 픽셀을 나타낼 수 있는 반면 I520은 이미지 서클(502) 및 회전된 1:1 이미지 센서(520)의 경계 내에서 캡처된 픽셀을 나타낼 수 있다. 다음으로, 이미지(I510)은 오버플로 영역(512A-D) 및 비-오버플로 영역(516)으로 분할될 수 있다. 유사하게, 이미지(I520)는 오버플로 영역(522A-D) 및 비-오버플로 영역(526)으로 분할될 수 있다. 그 다음, 오버플로 영역(512A-D), 오버플로 영역(522A-D) 및 비-오버플로 영역(516 및 526)의 부분을 추가함으로써 출력 360도 이미지가 형성될 수 있다. 입력 이미지(I510 및 I520)로부터 스티치된 이미지(504)를 형성하는 데 사용되는 추가 액션은 스티치된 이미지(504)를 형성하는 데 사용되는 픽셀의 소스를 보여주는 스티치된 이미지(504)에 예시되어 있다. 명확성을 위해, GR(514A-D) 및 GR(524A-D)가 스티치된 이미지(504)에서 생략되었음을 유의해야 한다. 그러나, 실제로, 도 4a와 관련하여 설명된 바와 같이, 이러한 영역이 존재하고 중첩하는 픽셀은 OR(512A-D 및 OR 522A-D)로부터의 픽셀이 갭 영역을 완벽하게 채우지 않는 경우 발생할 수 있다.
또한 1:1 이미지 센서를 사용하는 카메라 장치는 4:3 이미지 센서를 사용하는 카메라 장치보다 더 작은 시야를 가진 렌즈를 가질 수 있다는 점에 유의해야 한다. 예를 들어, 오버플로 픽셀의 적절한 영역을 캡처하기 위해 4:3 이미지 센서가 있는 카메라 장치는 최소한 205도 시야의 렌즈를 사용할 수 있다. 반면에 1:1 이미지 센서를 사용하는 카메라 장치는 갭 영역이 작기 때문에 오버플로 픽셀의 적절한 영역을 캡처하기 위해 194도 시야 렌즈가 있는 렌즈를 사용할 수 있다.
도 6은 일부 예시적인 실시예에 따른 일련의 정사각형 투시(Equi-Rectangular Perspective) 라인을 도시한다. 각 ERP(Equi-Rectangular Perspective) 라인 세트는 특정 이미지 센서 배열에 의해 캡처된 환경의 일부를 나타낼 수 있다. ERP 라인이 이미지 센서 배열에 의해 캡처된 픽셀을 나타낼 수 있지만, ERP 라인을 둘러싼 영역(어두운 음영으로 표시됨)은 픽셀이 캡처되지 않은 환경 영역(예: 갭 영역)을 나타낼 수 있다.
ERP 라인(610)은 도 3의 카메라 모듈 배열에 의해 캡처된 이미지에 대응할 수 있다. 예를 들어, ERP 라인(610)의 왼쪽에 ERP 라인으로 표시된 이미지는 4:3 이미지 센서(310)에 의해 캡처될 수 있고, ERP 라인(610)의 우측의 ERP 라인으로 표현되는 이미지는 4:3 이미지 센서(320)에 의해 캡처될 수 있다. 특히, ERP 라인(610)은 픽셀이 캡처되지 않는 갭 영역(612 및 614)을 포함한다. 전술한 바와 같이, 이러한 갭 영역은 도 3의 카메라 모듈 배열을 비실용적으로 만들 수 있다.
ERP 라인(620)은 180도 시야를 갖는 렌즈를 사용하여 도 4a의 카메라 모듈 배열에 의해 캡처된 이미지에 대응할 수 있다. 예를 들어, ERP 라인(620)의 왼쪽에 ERP 라인으로 표시되는 이미지는 4:3 이미지 센서(410)에 의해 캡처될 수 있고, ERP 라인(620)의 우측의 ERP 라인으로 표현되는 이미지는 회전된 4:3 이미지 센서(420)에 의해 캡처될 수 있다. 그러나, 180도보다 큰 시야를 갖는 광각 렌즈를 사용하는 대신, ERP 라인(620)은 180도에서 또는 180도에 실질적으로 가까운 시야를 갖는 렌즈를 사용하여 캡처된 이미지를 나타낼 수 있다. 180도 FOV(field of view) 렌즈를 사용하면 오버플로 픽셀(즉, 카메라 모듈의 180도 FOV를 넘어서는 추가 픽셀 영역)의 양을 제한할 수 있다. 갭 영역이 오버플로 영역의 픽셀에 의해 채워질 수 있다는 점을 감안할 때, 이는 갭 영역(622, 624, 626, 628)에 의해 예시된 바와 같이 하나 이상의 채워지지 않은 갭 영역을 초래할 수 있다. 적용 범위(coverage)의 이러한 갭으로 인해 도 4의 카메라 모듈 배열과 함께 180도 시야 렌즈를 사용하는 것이 비실용적일 수 있다.
ERP 라인(630)은 광각 렌즈를 사용하여 도 4a의 카메라 모듈 배열에 의해 캡처된 이미지에 대응할 수 있다. 예를 들어, ERP 라인(630)의 왼쪽에 ERP 라인으로 표시된 이미지는 4:3 이미지 센서(410)에 의해 캡처될 수 있고, ERP 라인(630)의 우측의 ERP 라인으로 표현되는 이미지는 회전된 4:3 이미지 센서(420)에 의해 캡처될 수 있다. ERP 라인(630)은 180도보다 큰 시야를 갖는 광각 렌즈를 사용하여 캡처된 이미지를 나타낼 수 있다. 광각 렌즈의 사용은 4:3 이미지 센서(410)가 회전된 4:3 이미지 센서(420)의 갭 영역을 채우는 데 사용될 수 있는 오버플로 픽셀을 캡처하도록 할 수 있으며 그 반대도 마찬가지이다. 예를 들어, 영역(632 및 634)은 방법(430)에 의해 달성될 수 있는 이 "채움((filling)" 속성의 개념적 예시로서 제시되며, 여기서 ERP 라인(630)의 좌측의 ERP 라인은 ERP 라인(630)의 우측의 ERP 라인으로 오버플로한다.
ERP(640)는 광각렌즈를 이용하여 도 5의 카메라 모듈 배열로 캡쳐한 이미지에 해당할 수 있다. 예를 들어, 좌측의 ERP 라인으로 표현되는 이미지는 1:1 이미지 센서(510)로 캡쳐될 수 있고, 우측의 ERP 라인으로 표현되는 이미지는 회전된 1:1 이미지 센서(520)에 의해 캡쳐될 수 있다. ERP 라인(630)과 유사하게, ERP 라인(640)은 180도보다 큰 시야를 갖는 광각 렌즈를 사용하여 캡처된 이미지를 나타낼 수 있다. 광각 렌즈의 사용은 1:1 이미지 센서(510)가 회전된 1:1 이미지 센서(520)의 갭 영역을 채우는 데 사용될 수 있는 오버플로 픽셀을 캡처하도록 허용할 수 있으며 그 반대도 마찬가지이다. 예를 들어, 영역(642 및 644)은 방법(430)에 의해 달성될 수 있는 이 "채움" 속성의 개념적 예시로서 제시되며, 여기서 ERP 라인(640)의 좌측의 ERP 라인은 ERP 라인(640)의 우측의 ERP 라인으로 오버플로한다.
데이터 네트워크의 예
도 7은 예시적인 실시예에 따른 분산 컴퓨팅 아키텍처(700)를 도시한다. 분산 컴퓨팅 아키텍처(700)는 네트워크(706)를 통해 프로그래밍 가능한 장치(704a, 704b, 704c, 704d, 704e)와 통신하도록 구성된 서버 장치(708, 710)를 포함한다. 네트워크(706)는 LAN(Local Area Network), WAN(Wide Area Network), WLAN, WWAN, 기업 인트라넷, 공용 인터넷, 또는 네트워크 컴퓨팅 장치들 간의 통신 경로를 제공하도록 구성된 임의의 다른 유형의 네트워크에 해당할 수 있다. 네트워크(706)는 또한 하나 이상의 LAN, WAN, 기업 인트라넷 및/또는 공용 인터넷의 조합에 대응할 수 있다. 예시적인 실시예에서, 구면 카메라 장치(100)는 네트워크(706)에서 동작하는 프로그램 가능한 장치의 형태를 취할 수 있다.
도 7에는 5개의 프로그래밍 가능한 장치만 표시되어 있지만 분산 애플리케이션 아키텍처는 수십, 수백 또는 수천 개의 프로그래밍 가능한 장치에 서비스를 제공할 수 있다. 또한, 프로그램 가능 장치(704a, 704b, 704c, 704d, 704e)(또는 추가 프로그래밍 가능한 장치)는 일반 랩톱 컴퓨터, 데스크탑 컴퓨터, 웨어러블 컴퓨팅 장치, 모바일 컴퓨팅 장치, HMD(head-mountable device), 네트워크 터미널, 무선 통신 장치(예: 스마트폰 또는 휴대전화) 등가 같은 임의의 종류의 컴퓨팅 장치일 수 있다. 프로그램 가능 장치(704a, 704b, 704c, 704e)에 의해 예시된 것과 같은 일부 예에서, 프로그램 가능 장치는 네트워크(706)에 직접 연결될 수 있다. 프로그램 가능 장치(704d)에 의해 예시된 것과 같은 다른 예에서, 프로그램 가능 장치는 프로그램 가능 장치(704c)와 같은 연관된 컴퓨팅 장치를 통해 네트워크(706)에 간접적으로 연결될 수 있다. 이 예에서, 프로그램 가능 장치(704c)는 프로그램 가능 장치(704d)와 네트워크(706) 사이의 전자 통신을 전달하기 위해 연관된 컴퓨팅 장치로서 작용할 수 있다. 프로그램가능 장치(704e)에 의해 예시된 것과 같은 다른 예에서, 컴퓨팅 장치는 자동차, 트럭, 버스, 보트 또는 선박, 비행기 등과 같은 차량의 일부 및/또는 내부일 수 있다. 도 7에 도시되지 않은 다른 예에서, 프로그래밍 가능한 장치는 네트워크(706)에 직접 및 간접적으로 연결될 수 있다.
서버 장치(708, 710)는 프로그래밍 가능한 장치(704a-704e)에 의해 요청된 바와 같이 하나 이상의 서비스를 수행하도록 구성될 수 있다. 예를 들어, 서버 장치(708 및/또는 710)는 프로그램 가능한 장치(1604a-1604e)에 콘텐츠를 제공할 수 있다. 콘텐츠에는 웹 페이지, 하이퍼텍스트, 스크립트, 컴파일된 소프트웨어와 같은 바이너리 데이터, 이미지, 오디오 및/또는 비디오가 포함될 수 있지만 이에 국한되지 않는다. 콘텐츠는 압축 및/또는 비압축 콘텐츠를 포함할 수 있다. 콘텐츠는 암호화되거나 암호화되지 않을 수 있다. 다른 유형의 콘텐츠도 가능하다.
또 다른 예로, 서버 장치(708 및/또는 70)는 데이터베이스, 검색, 계산, 그래픽, 오디오, 비디오, 월드 와이드 웹/인터넷 활용 및/또는 기타 기능을 위한 소프트웨어에 대한 액세스를 프로그래밍 가능한 장치(704a-704e)에 제공할 수 있다. 서버 장치의 다른 많은 예도 가능하다.
컴퓨팅 장치 아키텍처
도 8은 예시적인 실시예에 따른 예시적인 컴퓨팅 장치(800)의 기능 블록도이다. 특히, 도 8에 도시된 컴퓨팅 장치(800)는 스티치 알고리즘, 컴퓨팅 장치, 운영 체제, 소프트웨어 애플리케이션, 구면 카메라 장치(디바이스)(100), 스티치 프로세스(130), 4:3 이미지 센서(410), 회전된 4:3 이미지 센서(420), 방법(430), 1:1 이미지 센서(510), 회전된 1:1 이미지 센서(520), 및/또는 컴퓨팅 아키텍처(700) 중 적어도 하나의 기능을 수행하도록 구성될 수 있다.
컴퓨팅 장치(800)는 사용자 인터페이스 모듈(801), 네트워크 통신 모듈(802), 하나 이상의 프로세서(803), 데이터 저장 장치(저장소)(804), 하나 이상의 센서(820), 및 전력 시스템(822)을 포함할 수 있으며, 이들 모두는 시스템 버스, 네트워크 또는 다른 연결 메커니즘(805)을 통해 함께 링크될 수 있다.
사용자 인터페이스 모듈(801)은 외부 사용자 입력/출력 장치에 데이터를 전송하고 및/또는 외부 사용자 입력/출력 장치로부터 데이터를 수신하도록 동작할 수 있다. 예를 들어, 사용자 인터페이스 모듈(801)은 터치 스크린, 컴퓨터 마우스, 키보드, 키패드, 터치 패드, 트랙 볼, 조이스틱, 카메라, 음성 인식 모듈, 및/또는 기타 유사한 장치와 같은 사용자 입력 장치로 및/또는 사용자 입력 장치로부터 데이터를 전송 및/또는 수신하도록 구성될 수 있다. 사용자 인터페이스 모듈(801)은 또한 하나 이상의 음극선관(CRT), 액정 디스플레이, 발광 다이오드(LED), 디지털 광 처리(DLP) 기술을 사용하는 디스플레이, 프린터, 전구 및/또는 기타 유사한 장치(현재 알려졌거나 나중에 알려짐)와 같은 사용자 디스플레이 장치에 출력을 제공하도록 구성될 수 있다. 사용자 인터페이스 모듈(801)은 또한 스피커, 스피커 잭, 오디오 출력 포트, 오디오 출력 장치, 이어폰 및/또는 기타 유사한 장치와 같은 장치를 사용하여 가청 출력을 생성하도록 구성될 수 있다. 사용자 인터페이스 모듈(801)은 진동 및/또는 컴퓨팅 장치(800)와의 물리적 접촉 및/또는 물리적 접촉에 의해 검출 가능한 다른 출력과 같은 햅틱 출력을 생성할 수 있는 하나 이상의 햅틱 장치로 더 구성될 수 있다. 일부 예에서, 사용자 인터페이스 모듈(801)은 컴퓨팅 장치(800)를 활용하기 위한 그래픽 사용자 인터페이스(GUI)를 제공하는 데 사용될 수 있다.
네트워크 통신 모듈(802)은 네트워크를 통해 통신하도록 구성 가능한 하나 이상의 무선 인터페이스(807) 및/또는 하나 이상의 유선 인터페이스(808)를 제공하는 하나 이상의 장치를 포함할 수 있다. 무선 인터페이스(들)(807)는 블루투스(Bluetooth™) 송수신기, 지그비(Zigbee®) 송수신기, 와이파이(Wi-Fi™) 송수신기, 와이맥스(WiMAX™) 송수신기 및/또는 무선 네트워크를 통해 통신하도록 구성할 수 있는 기타 유사한 유형의 무선 송수신기와 같은 송수신기, 하나 이상의 무선 송신기, 및/또는 수신기를 포함할 수 있다. 유선 인터페이스(들)(808)는 이더넷 송수신기, USB(Universal Serial Bus) 송수신기 또는 트위스트 페어 와이어, 동축 케이블, 광섬유 링크 또는 유선 네트워크에 대한 유사한 물리적 연결을 통해 통신하도록 구성 가능한 유사한 송수신기와 같은 송수신기, 하나 이상의 유선 송신기, 및/또 수신기를 포함할 수 있다.
일부 예들에서, 네트워크 통신 모듈(802)은 신뢰할 수 있는, 보안된, 및/또는 인증된 통신을 제공하도록 구성될 수 있다. 여기에 설명된 각 통신에 대해, 신뢰할 수 있는 통신을 보장(예: 메시지 전달 보장)하기 위한 정보가 메시지 헤더 및/또는 푸터(footer)의 일부로 제공될 수 있다(예: 패킷/메시지 시퀀싱 정보, 캡슐화 헤더 및/또는 푸터, 크기/시간 정보, CRC(Cyclic Redundancy Check) 및/또는 패리티 검사 값과 같은 전송 검증 정보). 통신은 DES(Data Encryption Standard), AES(Advanced Encryption Standard), RSA(Rivest-Shamir-Adelman) 알고리즘, DH(Diffie-Hellman) 알고리즘, SSL(Secure Sockets Layer) 또는 TLS(Transport Layer Security)과 같은 보안 소켓 프로토콜, DSA(Digital Signature Algorithm)(이에 국한되지 않음)와 같은, 하나 이상의 암호화 프로토콜 및/또는 알고리즘을 사용하여 보안(예: 인코딩 또는 암호화) 및/또는 암호 해독/디코딩될 수 있다. 다른 암호화 프로토콜 및/또는 알고리즘이 통신을 보호(및 해독/디코딩)하기 위해 여기에 나열된 것들에 추가로 사용될 수 있다.
하나 이상의 프로세서(803)는 하나 이상의 범용 프로세서 및/또는 하나 이상의 특수 목적 프로세서를 포함할 수 있다(예: 디지털 신호 프로세서, 그래픽 처리 장치, 애플리케이션별 집적 회로 등). 하나 이상의 프로세서(803)는 데이터 저장소(804) 및/또는 여기에 설명된 다른 명령어에 포함된 컴퓨터 판독가능 명령어(806)를 실행하도록 구성될 수 있다.
데이터 저장소(804)는 하나 이상의 프로세서(803) 중 적어도 하나에 의해 판독 및/또는 액세스될 수 있는 하나 이상의 컴퓨터 판독 가능한 저장 매체를 포함할 수 있다. 하나 이상의 컴퓨터 판독 가능 저장 매체는 하나 이상의 프로세서(803) 중 적어도 하나와 전체적으로 또는 부분적으로 통합될 수 있는 광학, 자기, 유기 또는 기타 메모리 또는 디스크 스토리지(저장소)와 같은 휘발성 및/또는 비휘발성 저장 컴포넌트를 포함할 수 있다. 일부 예에서, 데이터 스토리지(804)는 단일 물리적 디바이스를 사용하여 구현될 수 있는 반면(예: 하나의 광학, 자기, 유기 또는 기타 메모리 또는 디스크 저장 장치), 다른 예에서, 데이터 스토리지(804)는 둘 이상의 물리적 디바이스를 사용하여 구현될 수 있다.
데이터 스토리지(804)는 컴퓨터 판독가능 명령어(806) 및 추가 데이터를 포함할 수 있다. 일부 예들에서, 데이터 스토리지(804)는 본 명세서에 기재된 방법, 시나리오, 및 기술의 적어도 일부 및/또는 본 명세서에 기재된 장치 및 네트워크의 기능의 적어도 일부를 수행하는 데 필요한 스토리지를 포함할 수 있다. 일부 예들에서, 데이터 스토리지(804)는 스토리지 스티치 프로세스(들)(812)를 포함할 수 있다. 특히, 이러한 예들 중, 컴퓨터 판독가능 명령어(806)는 하나 이상의 프로세서(803)에 의해 실행될 때 컴퓨팅 장치(800)가 스티치 프로세스(들)(812)의 기능의 일부 또는 전부를 제공할 수 있게 하는 명령어를 포함할 수 있으며, 이는 전술한 바와 같은 방법(430)의 기능을 제공할 수 있다.
일부 예들에서, 컴퓨팅 장치(800)는 하나 이상의 센서들(820)을 포함할 수 있다. 센서(820)는 컴퓨팅 장치(800) 내의 조건 및/또는 컴퓨팅 장치(800) 환경의 조건을 측정하고 이러한 조건에 대한 데이터를 제공하도록 구성될 수 있다. 예를 들어, 센서(820)는, (i) 컴퓨팅 장치(800)의 온도를 측정하는 온도계, 전력 시스템(822)의 하나 이상의 배터리의 전력을 측정하기 위한 배터리 센서, 및/또는 컴퓨팅 장치(800)의 조건을 측정하는 다른 센서와 같은(이에 한정되지 않음) 컴퓨팅 장치(800)에 대한 데이터를 획득하기 위한 센서; (ii) RFID(Radio Frequency Identification) 판독기, 근접 센서, 1차원 바코드 판독기, 2차원 바코드(예: QR(Quick Response) 코드) 판독기 및 레이저 추적기와 같은 다른 객체 및/또는 장치를 식별하기 위한 식별 센서 -여기서 식별 센서는 RFID 태그, 바코드, QR 코드 및/또는 판독되도록 구성된 다른 장치 및/또는 객체와 같은 식별자를 판독하고 적어도 식별 정보를 제공하도록 구성될 수 있음-; (iii) 틸트 센서, 자이로스코프, 가속도계, 도플러 센서, GPS 장치, 소나 센서, 레이더 장치, 레이저 변위 센서 및 나침반과 같은(이에 국한되지 않음) 컴퓨팅 장치(800)의 위치 및/또는 움직임을 측정하기 위한 센서; (iv) 적외선 센서, 광학 센서, 광 센서, 카메라, 바이오센서, 정전용량 센서, 터치 센서, 온도 센서, 무선 센서, 무선 센서, 움직임 센서, 마이크로폰, 사운드 센서, 초음파 센서 및/또는 연기 센서와 같은(이에 국한되지 않음) 컴퓨팅 장치(800)의 환경을 나타내는 데이터를 획득하기 위한 환경 센서; (v) 하나 이상의 차원의 힘, 토크, 지면력, 마찰, 및/또는 ZMP(zero moment point) 및/또는 ZMP의 위치를 식별하는 ZMP 센서를 측정하는 하나 이상의 센서와 같은(이에 국한되지 않음), 컴퓨팅 장치(800)에 대해 작용하는 하나 이상의 힘(예: 관성력 및/또는 G-forces)을 측정하기 위한 힘 센서 중 하나 이상을 포함할 수 있다.
전력 시스템(822)은 컴퓨팅 장치(800)에 전력을 제공하기 위한 하나 이상의 배터리(824) 및/또는 하나 이상의 외부 전력 인터페이스(826)를 포함할 수 있다. 하나 이상의 배터리(824)의 각각의 배터리는 컴퓨팅 장치(800)에 전기적으로 결합될 때 컴퓨팅 장치(800)에 대한 저장된 전력의 소스로서 작용할 수 있다. 전력 시스템(822)의 하나 이상의 배터리(824)는 휴대 가능하도록 구성될 수 있으며; 예를 들어, 하나 이상의 배터리와 함께 컴퓨팅 장치(800)를 운반하는 사람에 의해 쉽게 운반될 수 있다. 하나 이상의 배터리(824)의 일부 또는 전부는 컴퓨팅 장치(800)로부터 쉽게 제거될 수 있다. 다른 예에서, 하나 이상의 배터리(824)의 일부 또는 전부는 컴퓨팅 장치(800) 내부에 있을 수 있고, 따라서 컴퓨팅 장치(800)로부터 쉽게 제거되지 않을 수 있다. 하나 이상의 배터리(824)의 일부 또는 전부는 재충전 가능하며; 예를 들어, 재충전 가능한 배터리는 배터리와 다른 전원 공급 장치(예를 들어, 하나 이상의 외부 전원 인터페이스를 통해 컴퓨팅 장치(800)에 연결된 컴퓨팅 장치(800) 외부에 있는 하나 이상의 전원 공급 장치) 사이의 유선 연결을 통해 재충전될 수 있다. 다른 예에서, 하나 이상의 배터리(824)의 일부 또는 전부는 비충전식 배터리일 수 있다.
전력 시스템(822)의 하나 이상의 외부 전력 인터페이스(826)는 컴퓨팅 장치(800) 외부에 있는 하나 이상의 전원 공급 장치에 유선 전력 연결을 가능하게 하는 USB 케이블 및/또는 전원 코드와 같은 하나 이상의 유선 전력 인터페이스를 포함할 수 있다. 하나 이상의 외부 전력 인터페이스(826)는 Qi 무선 충전기를 통해 하나 이상의 외부 전원에 대한 무선 전력 연결을 가능하게 하는 Qi 무선 충전기와 같은 하나 이상의 무선 전력 인터페이스를 포함할 수 있다. 하나 이상의 외부 전원 인터페이스(826)를 사용하여 외부 전원에 대한 전력 연결이 설정되면, 컴퓨팅 장치(800)는 설정된 전력 연결을 통해 외부 전원으로부터 전력을 드로우(draw)할 수 있다. 일부 예에서, 전력 시스템(822)은 관련된 센서(예를 들어, 하나 이상의 배터리와 관련된 배터리 센서, 전력 센서)를 포함할 수 있다.
작동 방법의 예
도 9는 일부 예시적인 실시예에 따른 방법(900)의 흐름도이다. 방법(900)은 컴퓨팅 장치(800)와 같은 컴퓨팅 장치에 의해 실행될 수 있다. 방법(900)은 블록(910)에서 시작할 수 있고, 컴퓨팅 장치는 컴퓨팅 장치의 제1 이미지 센서를 사용하여 제1 이미지 및 컴퓨팅 장치의 제2 이미지 센서를 사용하여 제2 이미지를 실질적으로 동시에 캡처할 수 있고, 여기서 제1 이미지 센서는 컴퓨팅 장치의 제1 측면에 위치되고 회전축에 대해 제1 방향(orientation)으로 배향(oriented)되고, 여기서 제2 이미지 센서는 적어도 도 1, 4a-c, 5 및 6의 컨텍스트에서 설명된 바와 같이, 컴퓨팅 장치의 제1 측면과 실질적으로 반대되는 컴퓨팅 장치의 제2 측면에 위치되고 회전축에 대해 제1 방향으로부터 축방향으로 회전된 제2 방향으로 배향된다.
블록(920)에서, 컴퓨팅 장치는 적어도 도 1, 4a-c, 5 및 6의 컨텍스트에서 설명된 바와 같이, 컴퓨팅 장치에 대한 360도 시야를 캡처하는 출력 이미지를 생성하기 위해 컴퓨팅 장치를 사용하여 제1 이미지 및 제2 이미지를 스티치할 수 있다.
일부 예에서, 제1 이미지는 하나 이상의 제1 갭들 및 하나 이상의 제1 오버플로 픽셀들을 포함할 수 있고, 제2 이미지는 하나 이상의 제2 갭들 및 하나 이상의 제2 오버플로 픽셀들을 포함할 수 있으며, 컴퓨터 장치의 프로세서는 도 4a-c, 5의 컨텍스트에서 설명된 바와 같이, 하나 이상의 제2 오버플로 픽셀들의 제2 오버플로 픽셀을 하나 이상의 제1 갭들의 제1 갭으로 이동시키고 그리고 하나 이상의 제1 오버플로 픽셀들의 제1 오버플로 픽셀을 하나 이상의 제2 갭들의 제2 갭으로 이동시킴으로써, 제1 이미지와 제2 이미지를 함께 스티치할 수 있다.
일부 예에서, 제1 이미지 센서 및 제2 이미지 센서 중 적어도 하나는 180도보다 큰 시야를 갖는 대응하는 렌즈를 갖는다.
일부 예에서, 제1 이미지로부터의 하나 이상의 픽셀은 제2 이미지로부터의 하나 이상의 픽셀과 중첩하고, 그리고 상기 스티치하는 것은, 적어도 도 4a-c 및 5의 컨텍스트에서 설명된 바와 같이, 제1 이미지에서 제1 중첩 픽셀 및 제2 이미지에서 제2 중첩 픽셀을 식별하는 것 -제1 중첩 픽셀 및 제2 중첩 픽셀 모두는 출력 이미지의 특정 출력 픽셀로서 사용될 수 있음-, 그리고 제1 중첩 픽셀 또는 제2 중첩 픽셀을 출력 이미지의 특정 출력 픽셀로 선택하는 것을 포함할 수 있다.
일부 예에서, 제1 이미지 센서 및 제2 이미지 센서는 적어도 도 4a-c, 5 및 6과 관련하여 위에서 설명된 것과 같은 직사각형 이미지 센서를 포함한다.
일부 예에서, 적어도 도 4a-c 및 6과 관련하여 위에서 설명된 바와 같이, 제2 방향은 회전축에 대해 제1 방향으로부터 실질적으로 90도 회전된다.
일부 예에서, 적어도 도 4a-c 및 6과 관련하여 위에서 설명된 바와 같이, 제1 이미지 센서 및 제2 이미지 센서 모두는 실질적으로 4:3의 종횡비를 갖는다.
일부 예에서, 적어도 도 5 및 6과 관련하여 위에서 설명된 바와 같이, 제1 이미지 센서 및 제2 이미지 센서 모두는 실질적으로 1:1의 종횡비를 갖는다.
일부 예에서, 적어도 도 5 및 6과 관련하여 위에서 설명된 바와 같이, 제2 방향은 회전축에 대해 제1 방향으로부터 실질적으로 45도 회전된다.
일부 예에서, 컴퓨팅 장치는 적어도 도 1, 4A-C, 5 및 6과 관련하여 위에서 설명된 바와 같이, 제1 이미지, 제2 이미지, 및 출력 이미지 중 적어도 하나를 출력하도록 구성된 프로세서를 가질 수 있다.
Claims (21)
- 장치로서,
상기 장치의 제1 측면에 위치된 제1 이미지 센서 -상기 제1 이미지 센서는 제1 광축을 가지며, 상기 제1 이미지 센서는 제1 방향(orientation)으로 상기 제1 광축을 중심으로 축방향으로 배향됨-;
상기 장치의 제1 측면과 실질적으로 반대되는 장치의 제2 측면에 위치된 제2 이미지 센서 -상기 제2 이미지 센서는 상기 제1 이미지 센서의 제1 광축과 실질적으로 평행한 제2 광축을 가지며, 상기 제2 이미지 센서는 상기 제1 방향과는 다른 제2 방향으로 상기 제2 광축을 중심으로 축방향으로 배향됨-; 그리고
프로세서를 포함하며, 상기 프로세서는,
제1 이미지 센서로 제1 이미지를 및 제2 이미지 센서로 제2 이미지를 캡처하고 -상기 제1 이미지는 상기 제1 이미지 센서에 의해 캡처되지 않는(uncaptured) 제1 갭 및 상기 제1 이미지 센서의 회전에 의해 캡처된 제1 오버플로 픽셀을 포함하고, 상기 제2 이미지는 상기 제2 이미지 센서에 의해 캡처되지 않는(uncaptured) 제2 갭 및 상기 제2 이미지 센서의 회전에 의해 캡처된 제2 오버플로 픽셀을 포함함-, 그리고
제1 이미지와 제2 이미지를 함께 스티치(stitch)하여 장치에 대한 360도 시야(field of view)를 캡처하는 출력 이미지를 생성하도록 구성되며,
상기 프로세서는,
상기 제2 오버플로 픽셀을 상기 제1 갭으로 이동시키고 그리고 상기 제1 오버플로 픽셀을 상기 제2 갭으로 이동시킴으로써 상기 제1 이미지와 상기 제2 이미지를 함께 스티치하도록 구성되는 것을 특징으로 하는 장치. - 삭제
- 제1항에 있어서, 상기 제1 이미지 센서 및 상기 제2 이미지 센서 중 적어도 하나는 180도보다 큰 시야를 갖는 해당 렌즈를 포함하는 것을 특징으로 하는 장치.
- 제1항에 있어서, 상기 제1 이미지로부터의 픽셀은 상기 제2 이미지로부터의 픽셀과 중첩하고, 그리고 상기 제1 이미지와 상기 제2 이미지를 함께 스티치하는 것은,
제1 이미지에서 제1 중첩 픽셀 및 제2 이미지에서 제2 중첩 픽셀을 식별하는 것 -제1 중첩 픽셀 및 제2 중첩 픽셀 모두는 출력 이미지의 특정 출력 픽셀로서 사용될 수 있음-, 그리고
제1 중첩 픽셀 또는 제2 중첩 픽셀을 출력 이미지의 특정 출력 픽셀로 선택하는 것을 포함하는 것을 특징으로 하는 장치. - 제1항에 있어서, 제1 이미지 센서 및 제2 이미지 센서는 직사각형 이미지 센서를 포함하는 것을 특징으로 하는 장치.
- 제1항에 있어서, 상기 제2 방향은 상기 제1 방향으로부터 실질적으로 90도 회전되는 것을 특징으로 하는 장치.
- 제1항에 있어서, 상기 제1 이미지 센서 및 상기 제2 이미지 센서 모두는 실질적으로 4:3의 종횡비를 갖는 것을 특징으로 하는 장치.
- 제1항에 있어서, 상기 제1 이미지 센서 및 상기 제2 이미지 센서 모두는 실질적으로 1:1의 종횡비를 갖는 것을 특징으로 하는 장치.
- 제1항에 있어서, 상기 제2 방향은 상기 제1 방향으로부터 실질적으로 45도 회전되는 것을 특징으로 하는 장치.
- 제1항에 있어서, 상기 프로세서는 상기 제1 이미지, 상기 제2 이미지, 및 상기 출력 이미지 중 적어도 하나를 출력하도록 구성되는 것을 특징으로 하는 장치.
- 방법으로서,
컴퓨팅 장치의 제1 이미지 센서로 제1 이미지를, 컴퓨팅 장치의 제2 이미지 센서로 제2 이미지를 캡처하는 단계 -상기 제1 이미지 센서는 제1 광축을 가지며, 상기 제1 이미지 센서는 제1 방향(orientation)으로 상기 제1 광축을 중심으로 축방향으로 배향되고, 제2 이미지 센서는 컴퓨팅 장치의 제1 측면과 실질적으로 반대인 컴퓨팅 장치의 제2 측면에 위치되고, 상기 제2 이미지 센서는 상기 제1 이미지 센서의 제1 광축과 실질적으로 평행한 제2 광축을 가지며, 상기 제2 이미지 센서는 상기 제1 방향과는 다른 제2 방향으로 상기 제2 광축을 중심으로 축방향으로 배향되고, 상기 제1 이미지는 상기 제1 이미지 센서에 의해 캡처되지 않는(uncaptured) 제1 갭 및 상기 제1 이미지 센서의 회전에 의해 캡처된 제1 오버플로 픽셀을 포함하고, 제2 이미지는 상기 제2 이미지 센서에 의해 캡처되지 않는(uncaptured) 제2 갭 및 상기 제2 이미지 센서의 회전에 의해 캡처된 제2 오버플로 픽셀을 포함함-; 그리고
상기 컴퓨팅 장치를 사용하여, 상기 제1 이미지 및 상기 제2 이미지를 스티치(stitch)하여 상기 컴퓨팅 장치에 대해 360도 시야를 캡처하는 출력 이미지를 생성하는 단계를 포함하며, 상기 컴퓨팅 장치는, 상기 제2 오버플로 픽셀을 상기 제1 갭으로 이동시키고 그리고 상기 제1 오버플로 픽셀을 상기 제2 갭으로 이동시킴으로써 상기 제1 이미지와 상기 제2 이미지를 함께 스티치하도록 구성되는 것을 특징으로 하는 방법. - 삭제
- 제11항에 있어서, 제1 이미지 센서 및 제2 이미지 센서 중 적어도 하나는 180도보다 큰 시야를 갖는 해당 렌즈를 포함하는 것을 특징으로 하는 방법.
- 제11항에 있어서, 상기 제1 이미지로부터의 픽셀은 상기 제2 이미지로부터의 픽셀과 중첩하고, 상기 제1 이미지와 상기 제2 이미지를 함께 스티치하는 것은,
제1 이미지에서 제1 중첩 픽셀 및 제2 이미지에서 제2 중첩 픽셀을 식별하는 것 -제1 중첩 픽셀 및 제2 중첩 픽셀 모두는 출력 이미지의 특정 출력 픽셀로서 사용될 수 있음-, 그리고
제1 중첩 픽셀 또는 제2 중첩 픽셀을 출력 이미지의 특정 출력 픽셀로 선택하는 것을 포함하는 것을 특징으로 하는 방법. - 제11항에 있어서, 제1 이미지 센서 및 제2 이미지 센서는 직사각형 이미지 센서를 포함하는 것을 특징으로 하는 방법.
- 제11항에 있어서, 상기 제2 방향은 상기 제1 방향으로부터 실질적으로 90도 회전되는 것을 특징으로 하는 방법.
- 제11항에 있어서, 상기 제1 이미지 센서 및 상기 제2 이미지 센서 모두는 실질적으로 4:3의 종횡비를 갖는 것을 특징으로 하는 방법.
- 제11항에 있어서, 상기 제1 이미지 센서 및 상기 제2 이미지 센서 모두는 실질적으로 1:1의 종횡비를 갖는 것을 특징으로 하는 방법.
- 제11항에 있어서, 상기 제2 방향은 상기 제1 방향으로부터 실질적으로 45도 회전되는 것을 특징으로 하는 방법.
- 제11항에 있어서, 상기 컴퓨팅 장치는 상기 제1 이미지, 상기 제2 이미지, 및 상기 출력 이미지 중 적어도 하나를 출력하도록 구성되는 것을 특징으로 하는 방법.
- 삭제
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2019/021516 WO2020185201A1 (en) | 2019-03-10 | 2019-03-10 | 360 degree wide-angle camera with baseball stitch |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210123367A KR20210123367A (ko) | 2021-10-13 |
KR102620783B1 true KR102620783B1 (ko) | 2024-01-04 |
Family
ID=65904567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217028201A KR102620783B1 (ko) | 2019-03-10 | 2019-03-10 | 베이스볼 스티치를 갖는 360도 광각 카메라 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220198605A1 (ko) |
KR (1) | KR102620783B1 (ko) |
CN (1) | CN113544733A (ko) |
WO (1) | WO2020185201A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7327478B2 (ja) * | 2019-06-13 | 2023-08-16 | 日本電気株式会社 | 画像処理装置、画像処理方法及びプログラム |
US10999527B1 (en) * | 2020-02-14 | 2021-05-04 | Gopro, Inc. | Generation of enhanced panoramic visual content |
CN117808857B (zh) * | 2024-03-01 | 2024-05-24 | 深圳大学 | 一种自监督360°深度估计方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013118518A (ja) * | 2011-12-02 | 2013-06-13 | Canon Inc | 撮像装置 |
WO2017118498A1 (en) * | 2016-01-05 | 2017-07-13 | Giroptic | Two-lens spherical camera |
KR101915729B1 (ko) * | 2017-06-20 | 2018-11-06 | 주식회사 아이닉스 | 360도 전방향 뷰 영상 생성 장치 및 방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5240453B2 (ja) * | 2008-02-14 | 2013-07-17 | 株式会社リコー | 画像処理方法、画像処理装置及び画像撮像装置 |
FR2998126B1 (fr) * | 2012-11-15 | 2014-12-26 | Giroptic | Procede et dispositif de capture et de construction d'un flux d'images panoramiques ou stereoscopiques |
US9052571B1 (en) * | 2014-06-20 | 2015-06-09 | nearmap australia pty ltd. | Wide-area aerial camera systems |
US10043237B2 (en) * | 2015-08-12 | 2018-08-07 | Gopro, Inc. | Equatorial stitching of hemispherical images in a spherical image capture system |
US10102610B2 (en) * | 2016-04-05 | 2018-10-16 | Qualcomm Incorporated | Dual fisheye images stitching for spherical video |
EP3482238B1 (en) * | 2016-07-10 | 2024-12-18 | The Trustees of Columbia University in the City of New York | Three-dimensional imaging using swept, confocally aligned planar excitation with an image relay |
US10136055B2 (en) * | 2016-07-29 | 2018-11-20 | Multimedia Image Solution Limited | Method for stitching together images taken through fisheye lens in order to produce 360-degree spherical panorama |
DE202017104934U1 (de) * | 2016-08-17 | 2017-11-20 | Google Inc. | Mehrstufiges Kameraträgersystem für die stereoskope Bildaufnahme |
JP2018046430A (ja) * | 2016-09-15 | 2018-03-22 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US10339627B2 (en) * | 2016-10-10 | 2019-07-02 | Gopro, Inc. | Apparatus and methods for the optimal stitch zone calculation of a generated projection of a spherical image |
US10560682B2 (en) * | 2017-01-13 | 2020-02-11 | Gopro, Inc. | Methods and apparatus for providing a frame packing arrangement for panoramic content |
TWI659394B (zh) * | 2017-03-31 | 2019-05-11 | 聚星電子股份有限公司 | 影像處理方法及影像處理裝置 |
CN107392851A (zh) * | 2017-07-04 | 2017-11-24 | 上海小蚁科技有限公司 | 用于生成全景图像的方法和设备 |
CN108846796B (zh) * | 2018-06-22 | 2022-08-16 | 北京航空航天大学青岛研究院 | 图像拼接方法及电子设备 |
-
2019
- 2019-03-10 US US17/437,576 patent/US20220198605A1/en active Pending
- 2019-03-10 CN CN201980093507.7A patent/CN113544733A/zh active Pending
- 2019-03-10 KR KR1020217028201A patent/KR102620783B1/ko active IP Right Grant
- 2019-03-10 WO PCT/US2019/021516 patent/WO2020185201A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013118518A (ja) * | 2011-12-02 | 2013-06-13 | Canon Inc | 撮像装置 |
WO2017118498A1 (en) * | 2016-01-05 | 2017-07-13 | Giroptic | Two-lens spherical camera |
KR101915729B1 (ko) * | 2017-06-20 | 2018-11-06 | 주식회사 아이닉스 | 360도 전방향 뷰 영상 생성 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN113544733A (zh) | 2021-10-22 |
WO2020185201A1 (en) | 2020-09-17 |
US20220198605A1 (en) | 2022-06-23 |
KR20210123367A (ko) | 2021-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10331024B2 (en) | Mobile and portable screen to view an image recorded by a camera | |
US11631155B2 (en) | Equatorial stitching of hemispherical images in a spherical image capture system | |
ES2911906T3 (es) | Dispositivos ponibles para el procesamiento de mensajería y métodos de uso de los mismos | |
KR102620783B1 (ko) | 베이스볼 스티치를 갖는 360도 광각 카메라 | |
JP6627935B2 (ja) | 情報処理装置、情報処理方法、および情報処理プログラム | |
US9171221B2 (en) | Camera to track an object | |
US20180234669A1 (en) | Six-degree of freedom video playback of a single monoscopic 360-degree video | |
US11398008B2 (en) | Systems and methods for modifying image distortion (curvature) for viewing distance in post capture | |
EP3049856B1 (en) | Head-mounted display and method of controlling the same | |
US12026833B2 (en) | Few-shot synthesis of talking heads | |
US20180205889A1 (en) | Apparatus and methods for the storage of overlapping regions of imaging data for the generation of optimized stitched images | |
JP2017513434A (ja) | 広角画像に関連する情報を記録、共有、及び処理することによるシステム挙動又はユーザエクスペリエンスの自動定義 | |
KR20170132669A (ko) | 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림 | |
US9727137B2 (en) | User view point related image processing apparatus and method thereof | |
US20140168475A1 (en) | Four-lens spherical camera orientation | |
KR20140122126A (ko) | 투명 디스플레이를 이용한 증강현실 구현 장치 및 그 방법 | |
KR20190046850A (ko) | 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림 | |
GB2555908A (en) | Multi-tier camera rig for stereoscopic image capture | |
US10244227B2 (en) | Capture and render of virtual reality content employing a light field camera array | |
Liu et al. | VCode—Pervasive data transfer using video barcode | |
US20220239832A1 (en) | Image Processing as a Function of Deformable Electronic Device Geometry and Corresponding Devices and Methods | |
US20180101090A1 (en) | Mobile and portable camera platform for tracking an object | |
US20210231810A1 (en) | Camera apparatus | |
Chen et al. | A case study of security and privacy threats from augmented reality (ar) | |
US8451346B2 (en) | Optically projected mosaic rendering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |