KR20080028973A - 파노라마 이미지에 대한 실시간 미리 보기 - Google Patents

파노라마 이미지에 대한 실시간 미리 보기 Download PDF

Info

Publication number
KR20080028973A
KR20080028973A KR1020087002200A KR20087002200A KR20080028973A KR 20080028973 A KR20080028973 A KR 20080028973A KR 1020087002200 A KR1020087002200 A KR 1020087002200A KR 20087002200 A KR20087002200 A KR 20087002200A KR 20080028973 A KR20080028973 A KR 20080028973A
Authority
KR
South Korea
Prior art keywords
image
mosaic
camera
images
viewfinder
Prior art date
Application number
KR1020087002200A
Other languages
English (en)
Other versions
KR101343220B1 (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 KR20080028973A publication Critical patent/KR20080028973A/ko
Application granted granted Critical
Publication of KR101343220B1 publication Critical patent/KR101343220B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B17/00Details of cameras or camera bodies; Accessories therefor
    • G03B17/18Signals indicating condition of a camera member or suitability of light
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B13/00Viewfinders; Focusing aids for cameras; Means for focusing for cameras; Autofocus systems for cameras
    • G03B13/02Viewfinders
    • 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/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/633Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
    • H04N23/634Warning indications
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects

Abstract

"파노라마 뷰파인더"는 디지털 카메라 디스플레이 화면 상에서 동작하는 직관적 대화형 뷰파인더 디스플레이를 제공한다. 이 대화형 뷰파인더는 파노라마 이미지 모자이크를 구성하기 위한 이미지들을 캡처하는 데 있어서 실시간 지원을 제공한다. 파노라마 뷰파인더는 임의의 순서로 캡처된 이미지들로부터의 파노라마를 "브러시(brushes)"하는 한편, 최종 파노라마에서 원하는 씬 요소들(scene elements)이 나타나는 것을 보증하기 위해 사용자에게 시각적 피드백을 제공한다. 이 시각적 피드백은 이미지들을 캡처하는 동안 파노라마의 실시간 스티칭된 미리 보기들을 제공한다. 일 실시예에서, 파노라마 뷰파인더의 뷰파인더 디스플레이는, 캡처된 이미지들의 스티칭된 모자이크 미리 보기를 제공하는 "모자이크 미리 보기(mosaic preview)"; 모자이크 미리 보기 내의 매칭하는 위치에 매핑되는, 카메라 뷰파인더의 "현 내용(current content)"을 나타내는 라이브 디스플레이 창; 및 모자이크의 직사각형 자르기에서 살아남을 모자이크의 부분을 예시하는 모자이크 미리 보기 상에 오버레이되는 옵션인 파노라마 "자르기 프레임(cropping frame)"을 포함한다.
파노라마 이미지, 미리 보기(preview), 자르기(cropping), 모자이크, 스티 칭(stitching)

Description

파노라마 이미지에 대한 실시간 미리 보기{REAL-TIME PREVIEW FOR PANORAMIC IMAGES}
본 발명은 파노라마 이미지들의 구성에 관한 것으로, 특히, 파노라마 이미지들을 구성하는 데 사용되는 이미지들을 캡처하는 데 있어 사용자에게 실시간 대화형 지원(real-time interactive assistance)을 제공하는, 디지털 스틸 또는 비디오 카메라 등의 이미지 캡처 디바이스에 관한 것이다.
일반적으로, 모자이크 파노라마 이미지는 파노라마를 생성하기 위해 다수의 중첩하는 이미지 프레임들을 결합함으로써 하나 이상의 차원으로 확장된 이미지이다. 그 결과, 파노라마 이미지는 전형적으로 (디지털 스틸 또는 비디오 카메라 등의) 종래의 이미지 캡처 디바이스가 단일 이미지 프레임에서 캡처할 수 있는 크기보다 더 크다.
그러한 파노라마 이미지들을 생성하기 위해 다수의 종래의 기법들이 개발되어 있다. 예를 들면, 기본적인 접근법은 원하는 뷰잉 공간(viewing space)의 전체를 커버하기 위하여 단순히 복수의 규칙적인 사진 또는 비디오 이미지들을 촬영하는 것이다. 이들 이미지들은 그 후 다수의 종래의 이미지 "모자이킹(mosaicing)" 또는 "스티칭(stitching)" 알고리즘들 중 임의의 것을 이용하여 정렬되고 완전한 파노라마 이미지들로 합성된다.
초기 스티칭 방식들은 일반적으로 이미지들 간의 알려진 중첩(overlap)으로 귀결되는 주의 깊게 제어된 카메라 이동(camera motion) 필요로 하였다. 그러나, 보다 최근의 스티칭 방식들은 사용자들이 임의의 순서로 촬영된 그림들로 랜덤 2D 필드(random 2D field)를 커버하는 사진들을 촬영하는 것을 가능케 하였다. 어느 경우든, 숙련된 당업자에게 잘 알려져 있는 바와 같이, 그러한 시스템들은 일반적으로 디지털 스틸 또는 비디오 카메라에 의해 캡처된 이미지들의 세트를 촬영하고 그 이미지들에 대해, 예를 들어, 정렬(aligning), 합성(compositing), 디고스팅(deghosting), 중첩된 영역들의 블렌딩(blending), 색, 밝기, 대비(contrast) 등의 자동 조정을 포함하는 후처리(post-processing) 동작들을 수행하여 모자이크 이미지를 생성하고, 이 모자이크 이미지는 그 후 전형적으로 직사각형 영역 또는 프레임으로 잘려 최종 파노라마 이미지를 생성한다.
그러나, 이미지들의 그러한 후처리와 관련한 하나의 문제점은 어느 나중 시점에 파노라마가 실제로 생성될 때까지는 캡처된 이미지 프레임들의 세트로부터 원하는 파노라마가 구성될 수 있도록 하기 위해 씬(scene)의 충분한 커버리지가 달성되었는지를 사용자가 결코 확실히 알지 못한다는 점이다. 그 결과 사용자들이 "큰 그림(the big picture)"을 알기 어려울 수 있다.
특히, 종래의 이미지 스티칭 방식들을 이용할 경우, 카메라로부터 (PC-유형 컴퓨터 등의) 컴퓨팅 장치로 이미지들이 업로드될 때까지는 사용자들이 결과의 파노라마에 결함(flaw)이 생겼는지를 알지 못한다. 예를 들면, 사용자들이 하나 이 상의 스폿(spot)들을 놓치면 파노라마에 갭(gap)들이 생길 것이다. 또한 스티칭 프로그램이, 예를 들어, 그림들 간의 너무 작은 중첩으로 인해, 텍스처(texture)의 부족으로 인해, 이미지 포커스과 관련한 문제점(너무 흐릿한 이미지) 등으로 인해, 캡처된 이미지들 중 하나 이상을 파노라마에 삽입할 수 없는 경우에도 갭들이 생길 수 있다. 또한, 파노라마의 가장자리(edge)에서의 갭들은 파노라마를 자름(cropping)으로써 제거될 수 있지만, 이로 인해 자르기 경계 외부에 다른 원하는 이미지 요소들이 분실될 수도 있다. 최악의 경우, 단일 파노라마가 되도록 의도되었던 것이 결국은 전체 이미지의 다수의 연결되지 않은 (이상한 형상의) 단편들이 될 수 있다.
종래의 후처리 접근법들과 관련한 다른 문제점은 파노라마를 위한 이미지들이 촬영되는 동안 개체들이 하나의 프레임에서 다음 프레임으로 이동한 "고스팅(ghosting)"의 문제점을 수반한다. 사용자들은 뷰 파인더를 이용하여 그림 내의 결함들(예컨대, 포커스가 맞지 않음)을 식별하고, 그것을 재촬영할 수 있지만, 고스팅 또는 명암의 차이 등과 같은 사진들 간의 결함들은 촬영 중에 발견될 가능성이 적다. 불행하게도, 사용자들이 그러한 결함들을 인지할 때에는, 전형적으로 분실되거나 결함이 있는 이미지 프레임들을 재촬영하기에는 너무 늦다.
사용자들은 이미지들 간의 보다 큰 중첩을 이용함으로써 그리고 고스팅의 영향을 받는 것으로 의심되는 영역들의 다수의 사본들을 촬영함으로써 갭 또는 고스팅과 같은 결함들의 위험을 줄일 수 있다. 그러나, 이러한 중복성(redundancy)-기반 접근법은, 시간 면에서 그리고 특히 저장 공간 면에서(보다 많은 그림들이 촬용 되므로) 손실이 크고 그럼에도 결과의 파노라마 이미지들의 성공적인 생성을 보증할 수도 없다.
적어도 하나의 종래의 방식은 이들 문제점들 중 일부를 부분적으로 처리한다. 예를 들면,"VideoBrushTM"라 불리는 하나의 종래의 방식은 비디오 카메라에 의해 캡처된 이미지들로부터 구성된 파노라마 이미지의 근실시간 미리 보기(near-real-time preview)를 제공한다. 그러나, VideoBrushTM 시스템은 전체 뷰 파노라마(full-view panoramas)가 아니라 병진 운동(translational motion)만을 지원한다. 특히, VideoBrushTM 시스템은 대략 고정된 카메라 위치, 또는 대략 평면 씬(planar scene)을 캡처하는 임의로 움직이는 카메라로 캡처된 비디오들을 포함하는 파라미터 정렬을 이용한 1D 및 2D 비디오 모자이킹을 위한 기법들을 제공한다. 또한, VideoBrushTM에 의해 제공되는 것과 같은 시스템들에 관련한 또 다른 문제점은 그 시스템들은 원하는 씬 요소(scene element)들이 종래의 직사각형 포맷으로 자르기(cropping)에서 살아남을지 여부, 또는 결과의 파노라마가 고스팅의 영향을 받을지 여부와 같은 문제들에 대한 명시적인 지시(explicit indications)를 제공하지 않는다는 점이다.
유사하게, 몇몇 디지털 컨슈머 카메라(digital consumer camera)들은 "스티치 지원 모드(stitch assist mode)" 등을 지원하고, 이 모드에서 LCD(또는 다른 전자 디스플레이)는 카메라 "뷰파인더" 및 시각적 참조를 위해 촬영된 최후 프레 임(the last frame)의 일부를 보여준다. 예를 들면, "Canon Powershot S230"과 같은 디지털 카메라들은, 뷰파인더가 뷰파인더의 소구역(sub-region)에 표시된 참조 이미지(전형적으로 캡처된 최후 이미지)와 정렬하도록, 사용자가 카메라를 겨냥(aim)할 것을 요구하는 대략 1D 파노라마 스티치 지원을 제공한다. 그 후 최후 프레임은 다음 숏에 대한 참조가 되고, 이런 식으로 계속 진행된다. 이러한 접근법은 적정한 중첩의 양을 보증함으로써 성공적인 스티칭을 보증한다. 또한, 프레임들 간의 알려진 공간 관계는 별도의 컴퓨팅 장치를 이용하여 이미지들의 최종 사후 스티칭(final post-hoc stitching)을 단순화할 수 있다.
불행하게도, 그러한 카메라들에 의해 제공되는 접근법은 몇 가지 점에서 제한된다. 첫째로, 그러한 접근법들은 2D 파노라마로 잘 확장되지 않는다. 특히, 사용자들이 이동하면서 이미지들 간의 연결 방향을 선택할 수 있다 하더라도, 행(row)들에서 전후로 브러싱함으로써 큰 2D 이미지를 촬영하는 것은, 행들 자체 간의 연결이 아니라, 전후 이미지들 간의 연결만을 보증할 것이다. 둘째로, 그러한 접근법들은 원하는 씬 요소들이 자르기에서 살아남을 것이라는 보증을 제공하지 않는다. 셋째로, 그러한 접근법들은, 사용자가 카메라의 LCD 디스플레이에 항시 집중할 필요가 있으므로, 사용자의 자유를 제한하는 경향이 있다. 또한, 고스팅 및 포커스와 같은 문제점들은 그러한 시스템들에 의해 적절히 처리되지 않는다.
유사한 시스템이 "HP Photosmart R7O7" 카메라에 의해 제공되고, 이는 전술한 "Canon Powershot S230"의 것과 유사한 스티치 지원 모드를 제공하므로, 파노라마 사진을 촬영하는 것은 동일한 제한을 받기 쉽다. 그러나, 또한 HP Photosmart R7O7과 같은 카메라들은 사용자들이 재생(playback) 시에 카메라의 LCD 화면 상에서 전체 파노라마를 미리 볼 수 있게 한다. 이는 사용자들이 현장에 있는(on-site) 동안 결함들을 볼 수 있게 한다. 불행하게도, 그러한 결함들을 수정하려면 여전히 사용자가 전체 파노라마를 재촬영할 필요가 있다. 그 이유는 임의의 식별된 결함들을 수정하기 위해 기존의 파노라마에 이미지들이 삽입될 수 없기 때문이다.
이 요약은 아래 상세한 설명에서 더 설명되는 선택된 개념들을 간략화한 형태로 소개하기 위해 제공된다. 이 요약은 청구된 내용의 중요한 특징들 또는 필수적인 특징들을 식별하기 위한 것도 아니고, 청구된 내용의 범위를 결정하는 데 도움을 주기 위한 것도 아니다.
여기에서 기술된, "파노라마 뷰파인더(Panoramic Viewfinder)"는 씬의 이미지들의 세트로부터 파노라마 모자이크 이미지들을 구성하는 데 이용될 이미지들을 캡처하기 위한 대화형 뷰파인더 디스플레이(interactive viewfinder display) 형태의 직관적 인터페이스를 제공한다. 일반적으로, 파노라마 뷰파인더의 대화형 뷰파인더 디스플레이는 디지털 스틸 또는 비디오 카메라의 뷰파인더 디스플레이 화면 상에서 동작하여, 파노라마 이미지들을 구성하는 데 이용될 이미지들을 캡처하는 데 있어서 사용자에게 실시간 대화형 지원을 제공한다. 보다 구체적으로는, 파노라마 뷰파인더는 사용자들이 씬의 파노라마 이미지를 임의의 순서로 "브러시(brush)"하는 것을 허용함과 동시에, 최종 파노라마 이미지에 원하는 씬 요소들이 나타날 것임을 보증하는 데 있어서 사용자를 지원하기 위하여 사용자에게 시각적 피드백을 제공한다.
특히, 파노라마 뷰파인더의 대화형 뷰파인더 디스플레이는 이미지들을 촬영하는 동안 파노라마의 스티칭된 미리 보기(stitched preview)를 사용자들에게 제공하는 파노라마 구성을 위한 대화형 시스템을 제공한다. 파노라마 뷰파인더의 테스트된 실시예는, 협력하여, 사용자들이 (원하지 않는다면) 이미 커버된 영역들을 재촬영할 필요 없이 원하는 파노라마를 완성하는 데 필요한 씬의 단편들만을 정확히 캡처할 수 있게 하는 인터페이스 컴포넌트들의 고유한 컬렉션을 포함하도록 변경된 이미지 캡처 디바이스에서의 뷰파인더 디스플레이를 제공하였다. 일반적으로, 이들 인터페이스 컴포넌트들은 "모자이크 미리 보기(mosaic preview)"; 카메라 뷰파인더의 "현 내용(current content)"을 나타내는 라이브 디스플레이 창(live display window); 및 모자이크 미리 보기 위에 오버레이된 파노라마 "자르기 프레임(cropping frame)"을 포함하였다.
전체 모자이크 미리 보기는 일반적으로 현 파노라마에 대하여 캡처된 모든 이미지들로부터 구성될 수 있는 스티칭된 이미지의 미리 보기를 제공한다. 이 전체 모자이크 미리 보기는 직사각형 영역으로 잘리지 않지만, 대신에 카메라에 의해 이미 캡처된 이미지들의 세트로부터 구성될 수 있는 모자이크 이미지의 전체 범위(full extents)를 보여준다. 다양한 실시예들에서, 이 모자이크 미리 보기 이미지의 섹션들은, 예를 들어, 최종 파노라마 이미지에서 명백해질 모자이크 내의 고스팅, 포거스 문제, 또는 갭들과 같은 모자이크 내의 잠재적 문제점들에 대하여 사용자에게 경고하기 위해 강조(highlight)되거나, 또는 다른 식으로 변경된다. 또한, 또 다른 실시예들에서는, 단일 이미지 프레임의 크기에 대하여, 모자이크 미리 보기 이미지가 점점 더 커질 때, 모자이크 미리 보기 이미지는 뷰파인더 디스플레이의 현 내용 디스플레이 창에 대하여, 크기 조정(scale)되거나, 패닝(pan)되거나, 또는 줌(zoom)될 수 있다.
"현 내용(current content)" 디스플레이 창은 기본적으로 전체 카메라 디스플레이 창의 동적인 소구역(dynamic sub-region)이다. 일반적으로, 현 디스플레이 창은 종래의 디지털 카메라의 LCD "뷰파인더" 디스플레이와 유사하게, 다음에 어떤 이미지가 캡처되든 그 이미지의 표시를 나타내는 라이브 창이다. 그러나, 종래의 디지털 카메라의 뷰파인더 디스플레이와는 달리, 이 라이브 현 내용 창은 전체 모자이크 미리 보기 이미지 내의 매칭 위치(matching position)에 자동으로 매핑된다는 점에서 동적이다. 그 결과, 사용자는 현 이미지가 기존의 전체 모자이크 내의 어디에 맞추어질지를 즉시 알 수 있다. 또한, 뷰 파인더의 현 내용은 이 라이브 동적 창 내에 표시되기 때문에, 그것은 사용자들에게 참조 시스템을 제공하고 그들이 카메라를 원하는 파노라마의 커버되지 않은 영역들에 향하게 하도록 돕는다. 또한 다양한 실시예들에서, "모자이크 미리 보기" 및 "현 내용" 창의 어느 한쪽 또는 양쪽 모두는 디지털 카메라의 전체 뷰파인더 디스플레이 창 내에 더 잘 맞도록 크기 조정될 수 있다는 점에 유의해야 할 것이다.
마지막으로, 전술한 파노라마 "자르기 프레임"은 단순히 "모자이크 미리 보기" 내에서 강조되는 직사각형 영역이다. 일반적으로, 이 자르기 프레임은 모자이크된 이미지의 직사각형 자르기의 결과로 생길 내용을 나타낸다. 따라서, 이 자르기 프레임은 어느 씬 요소들이 직사각형 형상으로 잘린 후에 최종 이미지 내에 있을지를 사용자들에게 보여준다. 또한, 이 자르기 프레임은 자동으로 이동하고, 크기 조정되고, 기존의 모자이크 미리 보기 이미지로부터 잘릴 수 있는 가장 큰 가능한 직사각형 크기로 (X축 및 Y축 둘 다에서) 조정된다는 점에서 동적이다.
상기 요약을 감안할 때, 여기에 기술된 파노라마 뷰파인더는 디지털 카메라를 이용하여 씬의 모자이크된 파노라마 이미지들을 생성하는 고유한 시스템 및 방법을 제공한다는 것이 명백하다. 방금 기술된 이점들 외에, 파노라마 뷰파이더의 다른 이점들은 다음의 상세한 설명을 첨부 도면들과 함께 참조할 때 명백해질 것이다.
본 특허의 파일은 컬러로 작성된 적어도 하나의 도면을 포함하다. 컬러 도면(들)을 갖는 이 특허의 사본들은 신청서와 함께 필요한 요금을 지불하면 특허상표청에 의해 제공될 것이다.
본 발명의 특정 특징들, 양태들, 및 이점들은 다음의 설명, 부속된 청구항들, 및 첨부 도면들에 관련하여 더 잘 이해될 것이다.
도 1은 여기에 기술된, 파노라마 뷰파인더를 구현하기 위한 예시적 시스템을 구성하는 범용 컴퓨팅 장치를 도시하는 일반 시스템도이다.
도 2는 여기에 기술된, 파노라마 뷰파인더를 구현하기 위한 디지털 카메라 및 기타 이미지 입력 소스와 함께 사용되는 간략화한 컴퓨팅 및 I/O 성능들을 갖는 일반 컴퓨팅 장치를 도시하는 일반 시스템도이다.
도 3은 여기에 기술된, 파노라마 뷰파인더를 구현하기 위한 통합된 컴퓨팅 및 I/O 성능들 및 일체형 디스플레이 화면을 갖는 디지털 카메라를 도시하는 일반 시스템도이다.
도 4는 A) 워싱턴주 시애틀 도심의 스카이라인의 이미지들의 세트의 스티칭된 모자이크: B) 그 스티칭된 모자이크의 직사각형 자르기에서의 갭들; 및 C) 스티칭된 모자이크의 갭들로 인해 원하는 내용의 분실(시애들 "스페이스 니들(Space Needle)"의 상부가 잘림)을 보여주는 최종 잘린 파노라마 이미지를 예시하는 3개의 그림들의 시퀀스이다.
도 5는 여기에 기술된, 파노라마 뷰파인더를 구현하기 위한 예시적 프로그램 모듈들을 보여주는 예시적 아키텍처 시스템도를 예시한다.
도 6은 디지털 카메라 내에 구현된 예시적 사용자 인터페이스를 예시한 것으로, 이 사용자 인터페이스는 여기에 기술된, 파노라마 뷰파인더를 구현하기 위한 일체형 LCD 디스플레이, "모자이크 미리 보기", 카메라 뷰파인더의 "현 내용"을 나타내는 라이브 디스플레이 창, 및 옵션인 파노라마 "자르기 프레임"을 보여준다.
도 7은 모자이크 미리 보기, 카메라 뷰파인더의 현 내용 창, 및 파노라마 자르기 프레임을 보여주는, 도 6의 LCD 디스플레이의 보다 더 큰 뷰(view)를 예시한다.
도 8은 파노라마 뷰파인더가 구현되는 디스플레이 장치의 4개의 그림들의 시퀀스로, A) 씬의 제1 캡처된 이미지, B) 씬의 추가 이미지들, 눈에 보이는 자르기 프레임 및 카메라 뷰파인더의 현 내용 창의 캡처; C) 씬의 추가 이미지들, 눈에 보이는 자르기 프레임 및 카메라 뷰파인더의 현 내용 창의 캡처(여기서 현 내용 창은 모자이크 미리 보기 내로의 통합에 대하여 현 이미지의 워핑(warping)을 반영하도록 휘어져 있다), 및 D) 씬의 추가 이미지들, 눈에 보이는 자르기 프레임 및 카메라 뷰파인더의 현 내용 창의 캡처(여기서 현 내용 창은 모자이크 미리 보기 내로의 통합에 대하여 현 이미지의 워핑을 반영하도록 휘어져 있다)를 예시한다.
도 9는 도 8의 이미지 (D)에 예시된 파노라마 미리 보기 및 자르기 프레임에 기초하여 구성된 최종 잘린 파노라마 이미지를 예시한다.
도 10A는 파노라마 뷰파인더가 구현되는 디스플레이 장치의 12개의 그림들의 시퀀스로, 이미지들의 세트의 순차적 캡처, 대응하는 모자이크 미리 보기의 성장, 및 카메라 뷰파인더의 현 내용 창의 동적인 매핑을 예시한다.
도 lOB는 도 10A의 이미지들 중 4개의 서브세트로, 자르기 프레임의 사용, 자르기 프레임의 범위 외부에 있는 카메라 뷰파인더의 현 내용 창 및 모자이크 미리 보기의 영역들의 디엠퍼시스(de-emphasis)를 포함하는, 파노라마 뷰파인더의 다양한 실시예들을 예시한다.
도 11은 씬의 이미지들의 세트로부터 360도 원통형 파노라마 모자이크 미리 보기들의 생성을 예시한다.
도 12는 파노라마 뷰파인더의 실시예를 예시하는 것으로, 스티칭 실패들(기존의 모자이크에 대한 현 이미지에 관한 트래킹의 상실(lose of tracking))이 사용자에게 식별된다.
본 발명의 바람직한 실시예들에 대한 다음의 설명에서는, 본 명세서의 일부를 형성하는 첨부 도면들이 참조되고, 첨부 도면들에는 본 발명이 실시될 수 있는 특정 실시예들이 예시로서 도시되어 있다. 다른 실시예들이 이용될 수도 있고 본 발명의 범위에서 벗어나지 않고 구조적 변경이 이루어질 수도 있다는 것을 이해해야 할 것이다.
1.0 예시적 운영 환경:
도 1, 도 2, 및 도 3은 여기에 기술된, "파노라마 뷰파인더"의 다양한 실시예들 및 요소들이 구현될 수 있는 적합한 컴퓨팅 환경들의 다양한 예들을 예시한다.
예를 들면, 도 1은 일반적인 컴퓨팅 시스템 환경(100)의 일례를 도시하고 있다. 컴퓨팅 시스템 환경(100)은 적합한 컴퓨팅 환경의 일례에 불과하며, 본 발명의 용도 또는 기능성의 범위에 관해 어떤 제한을 암시하고자 하는 것이 아니다. 컴퓨팅 환경(100)이 예시적인 운영 환경(100)에 도시된 컴포넌트들 중 임의의 하나 또는 그 컴포넌트들의 임의의 조합과 관련하여 어떤 의존성 또는 요구사항을 갖는 것으로 해석되어서는 안 된다.
본 발명은 기타 범용 또는 특수 목적의 컴퓨팅 시스템 환경 또는 구성으로 동작한다. 본 발명과 함께 사용하기에 적합할 수 있는 잘 알려진 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터; 서버 컴퓨터; 핸드-헬드, 랩톱 또는 휴대폰 및 PDA와 같은 모바일 컴퓨터 또는 통신 장치, 멀티프로세서 시스템; 마이크로프로세서 기반 시스템; 셋톱 박스; 프로그램가능한 가전제품; 네트워크 PC; 미니컴퓨터; 메인프레임 컴퓨터; 상기 시스템들이나 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 기타 등등이 있지만 이에 제한되는 것은 아니다.
본 발명은 일반적으로 마이크 어레이(198)의 컴포넌트들을 포함하는, 하드웨어 모듈들과 조합하여 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어와 관련하여 기술될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 개체, 컴포넌트, 데이터 구조 등을 포함한다. 본 발명은 또한 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경들에서 실시될 수도 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 메모리 저장 장치를 비롯한 로컬 및 원격 컴퓨터 저장 매체 둘 다에 위치할 수 있다. 도 1을 참조하면, 본 발명을 구현하기 위한 예시적인 시스템은 컴퓨터(110) 형태의 범용 컴퓨팅 장치를 포함한다.
컴퓨터(110)의 컴포넌트들은 처리 장치(120), 시스템 메모리(130), 및 시스템 메모리를 비롯한 각종 시스템 컴포넌트들을 처리 장치(120)에 연결시키는 시스템 버스(121)를 포함할 수 있지만 이에 제한되는 것은 아니다. 시스템 버스(121)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 어느 것이라도 될 수 있다. 예로서, 이러한 아키텍처는 ISA(Industry Standard Architecture) 버스, MCA(Micro Channel Architecture) 버스, EISA(Enhanced ISA) 버스, VESA(Video Electronics Standards Association) 로컬 버스, 및 메자닌 버스(Mezzanine bus)로도 알려진 PCI(Peripheral Component Interconnect) 버스 등을 포함하지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 통상적으로 각종 컴퓨터 판독가능 매체를 포함한다. 컴퓨터 판독가능 매체는 컴퓨터(110)에 의해 액세스 가능한 매체는 그 어떤 것이든지 될 수 있고, 이 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체를 포함한다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성 이동식 및 비이동식 매체를 포함한다.
컴퓨터 저장 매체는 RAM, ROM, PROM, EPROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술; CD-ROM, DVD(digital versatile disk), 또는 기타 광 디스크 저장 장치; 자기 카세트, 자기 테이프, 자기 디스크 저장 장치, 또는 기타 자기 저장 장치; 또는 컴퓨터(110)에 의해 액세스될 수 있고 원하는 정보를 저장하는 데 이용될 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 모든 정보 전달 매체 를 포함한다. "피변조 데이터 신호"라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF 및 기타 무선 매체와 같은 무선 매체를 포함하지만, 이에 제한되는 것은 아니다. 상기한 것들 중 임의의 것의 조합들도 컴퓨터 판독가능 매체의 범위 내에 포함되어야 할 것이다.
시스템 메모리(130)는 ROM(131) 및 RAM(132)과 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 시동 중과 같은 때에, 컴퓨터(110) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(133)은 통상적으로 ROM(131)에 저장되어 있다. RAM(132)은 통상적으로 처리 장치(120)가 즉시 액세스 할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로서, 도 1은 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136) 및 프로그램 데이터(137)를 도시하고 있지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장매체를 포함할 수 있다. 단지 예로서, 도 1은 비이동식, 비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(141), 이동식, 비휘발성 자기 디스크(152)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(151), CD-ROM 또는 기타 광 매체 등의 이동식, 비휘발성 광 디스크(156)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(155)를 예시한다. 예시적인 운영 환경에서 사용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 기억 매체로는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고상(solid state) RAM, 고상 ROM 등이 있지만 이에 제한되는 것은 아니다. 하드 디스크 드라이브(141)는 통상적으로 인터페이스(140)와 같은 비이동식 메모리 인터페이스를 통해 시스템 버스(121)에 접속되고, 자기 디스크 드라이브(151) 및 광 디스크 드라이브(155)는 통상적으로 인터페이스(150)와 같은 이동식 메모리 인터페이스에 의해 시스템 버스(121)에 접속된다.
위에서 설명되고 도 1에 도시된 드라이브들 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(110)에 대한 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터를 저장한다. 도 1에서, 예를 들어, 하드 디스크 드라이브(141)는 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146), 및 프로그램 데이터(147)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136), 및 프로그램 데이터(137)와 동일하거나 그와 다를 수 있다는 것이다. 여기에서 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146) 및 프로그램 데이터(147)에는 다른 번호가 부여되어, 최소한, 그들이 서로 다른 사본(copy)이라는 것을 예시한다. 사용자는 키보드(162) 및 통상적으로 마우스, 트랙볼, 또는 터치 패드로 불리는 포인팅 장치(162) 등의 입력 장치를 통해 명령 및 정보를 컴퓨터(110)에 입력할 수 있다.
다른 입력 장치(도시 생략)로는 조이스틱, 게임 패드, 위성 안테나, 스캐너, 라디오 수신기, 및 텔레비전 또는 방송 비디오 수신기 등을 포함할 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스(121)에 결합된 유선 또는 무선 사용자 입력 인터페이스(160)를 통해 처리 장치(120)에 접속되지만, 예를 들어, 병렬 포트, 게임 포트, USB(universal serial bus), IEEE 1394 인터페이스, BluetoothTM 무선 인터페이스, IEEE 802.11 무선 인터페이스 등의 다른 종래의 인터페이스 및 버스 구조에 의해 접속될 수도 있다. 또한, 컴퓨터(110)는 오디오 인터페이스(199)를 통하여 연결된 확성기(loudspeaker)(197) 또는 기타 사운드 출력 장치뿐만 아니라, 마이크 또는 마이크 어레이(198) 등의 음성 또는 오디오 입력 장치를 포함할 수 있고, 오디오 인터페이스(198)도, 예를 들어, 병렬, 시리얼, USB, IEEE 1394, BluetoothTM, 등의 다른 종래의 유선 또는 무선 인터페이스를 포함한다.
모니터(191) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(190) 등의 인터페이스를 통해 시스템 버스(121)에 접속될 수 있다. 모니터(191) 외에, 컴퓨터들은 또한 프린터(196) 등의 기타 주변 출력 장치를 포함할 수 있고, 이들은 출력 주변장치 인터페이스(195)를 통해 접속될 수 있다.
또한, 컴퓨터(110)는, 입력 장치로서, 이미지들(193)의 시퀀스를 캡처할 수 있는 (디지털/전자 스틸 또는 비디오 카메라, 또는 필름/사진 스캐너 등의) 카메라(192)를 포함할 수 있다. 또한, 단지 하나의 카메라(192)만 도시되어 있지만, 다양한 유형의 다수의 카메라들이 컴퓨터(110)에의 입력 장치들로서 포함될 수도 있다. 다수의 카메라들의 사용은 3차원 또는 깊이 이미지(depth images)를 캡처하 기 위해, 또는 씬의 파노라마 이미지들을 캡처하기 위해, 이미지의 다수의 뷰(view)들을 동시에 또는 순차적으로 캡처하는 성능을 제공한다. 하나 이상의 카메라(192)로부터의 이미지들(193)은, 예를 들어, USB, IEEE 1394, BluetoothTM, IEEE 802.11 등의 다른 종래의 유선 또는 무선 인터페이스를 이용한 적당한 카메라 인터페이스(194)를 통하여 컴퓨터(110)에 입력된다. 이 인터페이스는 시스템 버스(121)에 연결됨으로써, 이미지들(193)이 RAM(132), 또는 컴퓨터(110)와 관련된 다른 전술한 데이터 저장 장치들 중 임의의 것에 라우팅되어 저장되게 한다. 그러나, 이전에 저장된 이미지 데이터는, 카메라(192)의 사용을 직접 요구하지 않고, 전술한 컴퓨터 판독가능 매체 중 임의의 것으로부터 컴퓨터(110)에 입력될 수도 있다는 것에 유의한다.
컴퓨터(110)는 원격 컴퓨터(180)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(180)는 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 비록 도 1에는 메모리 저장 장치(181)만 도시되어 있지만, 통상적으로 컴퓨터(110)와 관련하여 상술된 구성요소들의 다수 또는 그 전부를 포함한다. 도 1에 도시된 논리적 접속으로는 LAN(171) 및 WAN(173)이 포함되지만, 또한 기타 네트워크를 포함할 수도 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 네트워크 인터페이스 또는 어댑터(170)를 통해 LAN(171)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 통상적으로 인터넷과 같은 WAN(173)을 통해 통신을 설정하기 위한 모뎀(172) 또는 기타 수단을 포함할 수 있다. 내장형 또는 외장형일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 기타 적절한 메커니즘을 통해 시스템 버스(121)에 접속될 수 있다. 네트워크화된 환경에서, 컴퓨터(110) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치 내에 저장될 수도 있다. 예로서, 도 1은 원격 애플리케이션 프로그램(185)이 메모리 장치(181)에 있는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속은 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 이해할 것이다.
도 2에 관하여, 이 도면은 디지털 카메라에 연결된 간략화한 컴퓨팅 장치를 보여주는 일반 시스템도를 보여준다. 그러한 컴퓨팅 장치들은 전형적으로 통신 인터페이스와 협력하여 적어도 일부 최소한의 계산 성능을 갖는 디바이스들에서 찾아볼 수 있다. 본 발명과 함께 사용하기에 적합할 수 있는 잘 알려진 간략화한 컴퓨팅 시스템, 환경, 및/또는 구성의 예로는, 핸드-헬드, 랩톱 또는 모바일 컴퓨터, 휴대폰 및 PDA와 같은 통신 디바이스 등을 포함하지만, 이들에 제한되는 것은 아니다.
도 2에서 파선 또는 대시 선으로 나타내어진 임의의 박스들은 여기에 기술된 간략화한 컴퓨팅 장치의 대안 실시예들을 나타내고, 아래에서 설명되는 이들 대안 실시예들 중 임의의 것 또는 모두는 이 명세서 전반에 걸쳐서 설명되는 다른 대안 실시예들과 조합하여 이용될 수도 있다는 것에 유의해야 할 것이다.
최소한, 컴퓨팅 장치가 (아래에서 더 상세히 설명되는) "파노라마 뷰파인더"를 구현할 수 있게 하려면, 컴퓨팅 장치(200)는 어떤 최소한의 계산 성능 및 디지털 카메라(290) 또는 기타 이미지 입력 소스를 연결하기 위한 유선 또는 무선 인터페이스(240)를 구비해야 한다.
특히, 도 2에 예시된 바와 같이, 컴퓨팅 장치(200)의 계산 성능은 일반적으로 처리 장치(들)(210)(도 1에 관하여 위에서 기술된 처리 장치들(120)과 대략 유사함) 및 시스템 메모리(220)에 의해 예시된다. 도 1의 일반 컴퓨팅 장치의 처리 장치(들)(120)과 대비하여, 도 2에 예시된 처리 장치(들)(210)은 상술한 바와 같이 PC 유형 컴퓨터 등의 범용 프로세서가 아니라 DSP, VLIW 프로세서, 또는 기타 마이크로-컨트롤러와 같은 특수화된(그리고 값싼) 마이크로프로세서들일 수 있다는 것에 유의한다.
게다가, 도 2의 간략화한 컴퓨팅 디바이스(200)는 또한, 이를 들어 하나 이상의 입력 장치들(240)(도 1에 관하여 기술된 입력 장치들과 유사함)에 대한 접속들과 같은 다른 컴포넌트들을 포함할 수 있다. 도 2의 간략화한 컴퓨팅 장치는 또한, 예를 들어 외부 디스플레이 장치(280)와 같은 하나 이상의 출력 장치들(250)(도 1에 관하여 기술된 출력 장치들과 유사함)과 같은 기타 옵션인 컴포넌트들을 포함할 수 있다. 마지막으로, 도 2의 간략화한 컴퓨팅 장치는 이동식 및/또는 비이동식 저장 장치(260 및 270)(도 1에 관하여 기술된 저장 장치들과 유사함) 을 각각 포함할 수 있다.
마지막으로, 도 3에 관하여, 이 도면은 여기에 기술된 파노라마 뷰파인더를 구현하기 위한 통합된 컴퓨팅(340) 및 I/O 성능들(345), 및 LCD 화면과 같은 디스플레이 장치(310)를 갖는 디지털 카메라(300)를 도시하는 일반 시스템도이다.
일반적으로, 숙련된 당업자들에게 잘 알려져 있는 바와 같이, 종래의 디지털 카메라들은, 이동식(325) 또는 비이동식(330) 중 어느 하나인 카메라 메모리(320) 외에, 위에 기술된 것들과 같은 컴포넌트들(예컨대, I/O, 컴퓨팅, 및 디스플레이)을 포함한다. 그러한 카메라들은 또한 렌즈(305) 및 하나 이상의 컨트롤들(315)의 세트를 포함한다. 또한, 도 2에 관하여 기술된 간략화한 컴퓨팅 장치에서와 같이, 디지털 카메라의 컴퓨팅 성능(340)은 도 1에 관하여 상술한 바와 같이 PC 유형 컴퓨터 등의 범용 처리 장치가 아니라 DSP, VLIW 프로세서, 또는 기타 마이크로-컨트롤러와 같은 저가의 특수화된 마이크로프로세서들을 이용하여 구현될 수 있다. 아래에서 더 설명되는 바와 같이, 이들 컴포넌트들은 독립형 디지털 카메라에서 파노라마 뷰파이더의 기능을 가능케 하기 위해 조합하여 사용된다.
이제 예시적 운영 환경에 대하여 논의하였고, 이 설명의 나머지 부분에서는 "파노라마 뷰파인더"를 구현하는 프로그램 모듈들 및 프로세스들의 논의에 전념할 것이다.
2.0 도입:
여기에 기술된 "파노라마 뷰파인더"는 씬의 이미지들의 세트로부터 파노라마 모자이크 이미지들을 구성하는 데 이용될 이미지들을 캡처하기 위한 대화형 뷰파인더 디스플레이(interactive viewfinder display) 형태의 직관적 인터페이스를 제공한다. 일반적으로, 파노라마 뷰파인더의 대화형 뷰파인더 디스플레이는 디지털 스틸 또는 비디오 카메라(또는 이미지 캡처 디바이스)의 뷰파인더 디스플레이 화면 상에서 동작하여, 파노라마 이미지들을 구성하는 데 이용될 이미지들을 캡처하는 데 있어서 사용자에게 실시간 대화형 지원을 제공한다.
또한, 또 다른 실시예들에서, 파노라마 뷰파인더의 대화형 뷰파이더 디스플레이는 디지털 카메라에 직접 연결되거나, 또는 별도의 컴퓨팅 장치를 통하여 디지털 카메라에 연결된, 외부 디스플레이 장치 상에 구현된다. 그러나, 이들 각각의 경우에서, 여기에 기술된 파노라마 뷰파인더는 본질적으로 동일한 방식으로 동작한다. 따라서, 여기에서는 파노라마 뷰파인더가 일반적으로 디지털 카메라 내에 구현되는 것으로 기술되겠지만, 여기에 제공된 파노라마 뷰파인더의 상세한 설명은 외부 디스플레이 장치들 및/또는 외부 컴퓨팅 장치들을 포함하는 추가 실시예들에도 동등하게 적용된다는 것을 이해해야 할 것이다.
2.1 시스템 개관:
위에서 언급한 바와 같이, 여기에 기술된 파노라마 뷰파인더는 씬의 이미지들의 세트로부터 파노라마 모자이크 이미지들을 구성하는 데 이용될 이미지들을 캡처하기 위한 대화형 뷰파인더 디스플레이 형태의 직관적 인터페이스를 제공한다.
일반적으로, 파노라마 뷰파인더는 사용자들이 씬의 파노라마 이미지를 임의 의 순서로 "브러시(brush)"하는 것을 허용함과 동시에, 최종 파노라마 이미지에 원하는 씬 요소들이 나타날 것임을 보증하는 데 있어서 사용자를 지원하기 위하여 사용자에게 시각적 피드백을 제공한다. 이 시각적 피드백은 파노라마를 구성하는 데 이용될 씬의 이미지들을 촬영(shooting)하는 동안 사용자에게 파노라마의 실시간 스티칭된 미리 보기를 제시(presenting)함으로써 제공된다. 파노라마 뷰파인더에 의해 제공된 뷰파인더 디스플레이는 사용자들이 (원하지 않는다면) 이미 커버된 영역들을 재촬영할 필요 없이 원하는 파노라마를 완성하는 데 필요한 씬의 단편들만을 정확히 캡처할 수 있게 하는 고유한 성능을 이미지 캡처 디바이스에 제공한다.
파노라마 뷰파인더에 구현된 인터페이스 컴포넌트들은 캡처된 이미지들의 스티칭된 모자이크 미리 보기를 제시하는 "모자이크 미리 보기"; 모자이크 뷰파인더 내의 매칭 위치에 매핑되는, 카메라 뷰파인더의 "현 내용"을 나타내는 라이브 디스플레이 창; 및 모자이크의 직사각형 자르기에서 살아남을 모자이크의 섹션을 예시하는 모자이크 미리 보기 상에 오버레이된 옵션인 파노라마 "자르기 프레임" 또는 "자르기 박스"를 포함한다.
일반적으로, 전체 모자이크 미리 보기는 일반적으로 현 파노라마에 대하여 캡처된 모든 이미지들로부터 구성될 수 있는 스티칭된 이미지의 미리 보기를 제공한다. 이 전체 모자이크 띠리 보기는 직사각형 영역으로 잘리지 않지만, 대신에 카메라에 의해 이미 껍처된 이미지들의 세트로부터 구성될 수 있는 모자이크 이미지의 전체 범위(full extents)를 보여준다.
보다 구체적으로는, 모자이크 미리 보기는 사용자가 파노라마를 촬영하는 동 안 사용자에 의해 캡처된 이미지들로부터 구성될 수 있는 모자이크의 라이브, 실시간, 미리 보기이다. 디지털 카메라에서 구현될 때, 카메라의 내장 LCD 화면은 완료의 현 상태에서 파노라마의 미리 보기를 보여줄 것이다. 미리 보기는 사용자가 이미지들을 촬영할 때 진행 중에(on-the-fly) 사진 또는 비디오 장면(footage)을 단일 파노라마 그림으로 편집(compile)함으로써 생성된다(이미지들의 스티칭에 관한 보다 상세에 대해서는 섹션 3.3 참조).
다양한 실시예들에서, 이 모자이크 미리 보기 이미지의 섹션들은, 예를 들어, 최종 파노라마 이미지에서 명백해질 모자이크 내의 고스팅, 포거스 문제, 또는 갭들과 같은 모자이크 내의 잠재적 문제점들에 대하여 사용자에게 경고하기 위해 강조되거나, 또는 다른 식으로 변경된다. 또한, 또 다른 실시예들에서는, 단일 이미지 프레임의 크기에 대하여, 모자이크 미리 보기 이미지가 점점 더 커지므로, 사용자가 뷰파인더의 현 내용 디스플레이 창과 함께 모자이크 미리 보기를 볼 수 있도록 모자이크 미리 보기 이미지는 뷰파인더 디스플레이의 현 내용 디스플레이 창에 대하여, 크기 조정(scale)되거나, 패닝(pan)되거나, 또는 줌(zoom)될 수 있다.
전술한 "현 내용(current content)" 디스플레이 창은 기본적으로 전체 카메라 디스플레이 창의 동적인 소구역(dynamic sub-region)이다. 일반적으로, 현 디스플레이 창은 종래의 디지털 카메라의 LCD "뷰파인더" 디스플레이와 유사하게, 다음에 어떤 이미지가 캡처되든 그 이미지의 표시를 나타내는 라이브 창이다. 그러나, 종래의 디지털 카메라의 뷰파인더 디스플레이와는 달리, 이 라이브 현 내용 창은 전체 모자이크 미리 보기 이미지 러의 매칭 위치에 자동으로 매핑된다는 점에서 동적이다. 그 결과, 사용자는 현 이미지가 기존의 전체 모자이크 내의 어디에 맞추어질지를 즉시 알 수 있다. 섹션 3에서 더 상세히 설명되는 일 실시예에서, 현 내용 창은, 새로운 이미지가 기존의 모자이크 내의 어디에 맞추어질지가 사용자에게 보다 즉시 명백하도록 모자이크 미리 보기에 대하여 강조된다.
또한, 뷰 파인더의 현 내용은 이 라이브 동적 창 내에 표시되기 때문에, 그것은 사용자들에게 그들이 카메라를 원하는 파노라마의 커버되지 않은 영역들에 향하게 하도록 돕는 참조 시스템을 제공한다. 또한 다양한 실시예들에서, "현 내용" 창은 디지털 카메라의 전체 디스플레이 내에 더 잘 맞도록 모자이크 미리 보기와 함께 크기 조정된다는 점에 유의해야 할 것이다.
마지막으로, 전술한 파노라마 "자르기 프레임"은 단순히 "모자이크 미리 보기" 내에서 강조되는 직사각형 영역이다. 일반적으로, 이 자르기 프레임은 모자이크된 이미지의 직사각형 자르기의 결과로 생길 내용을 나타낸다. 특히, 숙련된 당업자들에게 잘 알려져 있는 바와 같이, 개개의 이미지 세그먼트들 간의 오정렬(misalignment)로 인해서뿐만 아니라 종래의 이미지 스티칭 동안에 행해지는 일그러짐(distortions)으로 인해, 원시 파노라마들(raw panoramas)은 "술이 있는(fringy)" 경향이 있다. 따라서, 술이 없는(fringeless) 직사각형 출력 이미지들을 획득하기 위하여, 일 실시예에서, 파노라마 뷰파이더는 자동으로 파노라마들을 이미지들(또는 이미지 세그먼트들)로 커버되는 가장 큰 가능한 직사각형 영역으로 자른다. 이 직사각형 영역의 내용의 미리 보기는 자르기 프레임에 의해 사용자에게 예시된다.
일반적으로, 자르기 프레임은 어느 씬 요소들이 직사각형 형상으로 잘린 후에 최종 이미지 내에 있을지를 사용자들에게 보여준다. 또한, 이 자르기 프레임은 자동으로 이동하고, 크기 조정되고, 기존의 모자이크 미리 보기 이미지로부터 잘릴 수 있는 가장 큰 가능한 직사각형 크기로 (X축 및 Y축 둘 다에서) 조정된다는 점에서 동적이다. 자르기 프레임은 동적이기 때문에, 이것은 자르기 프레임이 직접적인 사용자 제어 하에 있지 않다는 것을 의미한다는 점에 유의해야 할 것이다. 대신에, 사용자들은 그들이 촬영하는 이미지 재료를 통하여 간접적으로 자르기 프레임을 제어한다. 이 특징의 한 가지 이점은 파노라마 이미지들을 구성하는 데 있어서의 사용자 경험이 실질적으로 덜 복잡한 사용자 인터페이스를 통하여 향상된다는 것이다.
예를 들면, 도 4는 A) 워싱턴주 시애틀 도심의 스카이라인의 이미지들의 세트의 스티칭된 모자이크(400); B) 그 스티칭된 모자이크의 직사각형 자르기(420)에서의 갭들; 및 C) 스티칭된 모자이크의 갭들로 인한 원하는 내용의 분실(시애틀 "스페이스 니들(Space Needle)"의 상부가 잘림)을 보여주는 최종 잘린 파노라마 이미지(430)를 예시하는 3개의 그림들의 시퀀스를 제공한다. 이것은 사용자가 여전히 추가 이미지들을 캡처할 기회를 갖고 있는 동안에 최종 파노라마가 무엇을 포함할지에 대한 안내가 사용자에게 제공되지 않을 때 얻어지는 전형적인 결과이다. 특히, 실시간 모자이크 미리 보기 상에서 오버레이로서 자르기 프레임을 이용할 때, 사용자는 모자이크의 직사각형 자르기에 이어서 ("스페이스 니들"의 상부와 같은) 정보가 분실될 것임을 즉시 알 수 있다. 따라서, 사용자는 원하는 이미지 내 용의 그러한 분실을 피하도록, 자르기 프레임에 의해 예시되는 모자이크 내의 갭들을 채워넣을 기회를 갖는다(단순히 추가 이미지들을 캡처함으로써).
또 다른 실시예에서, 자르기 프레임 외부의 모자이크 미리 보기의 영역들은 디엠퍼사이즈(de-emphasize)된다(예를 들면, 자르기 프레임 외부의 영역들의 밝기를 감소시킴으로써). 이 모자이크 미리 보기의 선택된 부분들의 디엠퍼시스(de-emphasis)는 최종 모자이크 이미지의 직사각형 자르기 후에 남아있을 모자이크 미리 보기 이미지의 부분들을 강조하기 위해 유용하다.
파노라마 뷰파인더의 테스트된 실시예에서, 파노라마 뷰파인더와의 사용자 상호작용은 종래의 디지털 카메라의 통상의 사용과 일관된 방식으로 동작하도록 설계되었다. 예를 들면, 파노라마 뷰파인더의 일 실시예에서, 사용자는 제1 이미지를 촬영함으로써 카메라의 통상의 사진 모드에서 시작하고, 카메라 LCD는 뷰파인더가 무엇을 보는지를 보여주고, 그 이미지는 사용자가 셔터 버튼을 누르자마자 캡처된다. 다음으로, 일단 사용자가 파노라마의 형태로 추가 씬 요소들을 포함하기로 결정하면, 사용자는 카메라 컨트롤을 이용함으로써, "파노라마 모드" 등을 선택한다. 일단 이 파노라마 모드가 선택되면, 캡처되는 임의의 추가 이미지들은 모자이크 미리 보기 내에 자동으로 포함된다. 다양한 실시예들에서, 추가 이미지들은 사용자가 개개의 사진들을 촬영할 때 수동으로, 또는 사용자가 씬을 가로질러 카메라를 패닝(pan)할 때 자동으로 캡처된다는 점에 유의한다.
여기에 기술된 파노라마 뷰파인더의 하나의 이점은 사용자들이 이미지 모자이크들을 구성하는 데 이용되는 이미지들을 용이하게 캡처할 수 있다는 점이다. 이를테면, 위에 제공된 예들에 부연하여, 특히 효과적인 것으로 관찰된 파노라마 이미지들을 구성하기 위해 파노라마 뷰파인더의 테스트된 실시예를 이용하는 한 가지 간단한 전략은 사용자가 전체 파노라마를 위하여 소망되는 경계들에서 또는 그 근처에서 임의의 "랜드마크(landmarks)"(또는 다른 낀 요소들)의 이미지들을 단순히 수동으로 캡처하는 것으로 시작하였다. 이들 랜드마크들은 개개의 요소들의 통상의 그림들을 촬영하는 것과 정확히 동일한 방식으로 캡처된다. 그 후, 단순히 이들 경계 랜드마크들 사이의 추가 이미지들을 캡처함으로써 결국 랜드마크들 모두를 단일 파노라마 내로 연결하도록 작용할 것이다.
또한, 전술한 자르기 프레임 때문에, 결과의 모자이크 미리 보기는 사용자가 랜드마크들 사이에 위치하는 모자이크 미리 보기 이미지의 "블랙" 또는 빈(empty) 영역들을 가로질러 카메라를 이동시키면서 단순히 추가 이미지들을 캡처함으로써 모자이크의 분실한 영역들을 쉽게 채워넣을 수 있게 하는 참조의 프레임을 제공한다. (자르기 프레임에 대한) 최종 파노라마의 가장자리들은 모든 원하는 씬 요소들이 자르기 프레임 내에 포함될 때까지 (단순히 자르기 프레임에 의해 예시된 경계들을 따라서 추가 이미지들을 캡처함으로써) 수정(touch up)될 수 있다. 마지막으로, 단순히 추가 "랜드마크들"을 포함시키고 상술한 바와 같이 임의의 빈 공간을 채워넣음으로써 파노라마의 확장이 용이하게 달성된다.
섹션 3에서 더 상세히 설명되는 바와 같이, 파노라마 모드에 있는 동안 추가 이미지들의 캡처에 관련된 몇 개의 실시예들이 더 있다는 것에 유의한다. 예를 들면, 일 실시예에서는, 사용자가 카메라 셔터 버튼을 누르는 경우에만 추가 이미지 들이 캡처된다. 다른 실시예에서는, 사용자가 씬 주위로 카메라를 패닝할 때 자동으로 이미지들이 캡처된다. 이 자동 캡처는 미리 정해진 프레임 레이트로, 또는 (기존의 모자이크 미리 보기에 대한) 현 내용 디스플레이 창에서의 새로운 자료(및 중첩)의 양의 함수로서 동작할 수 있다. 대안적으로, 비디오 카메라의 경우에, 이미지들은 전형적으로 주어진 프레임 레이트로 자동으로 캡처되고, 그 이미지들은 그 후 모자이크 미리 보기를 생성하는 데 이용된다. 그러나, 다양한 실시예들에서, 그러한 비디오 카메라들은 또한 (기존의 모자이크 미리 보기에 대한) 현 내용 디스플레이 창에서의 새로운 자료(및 중첩)의 양의 함수로서 이미지들을 캡처할 수도 있다.
파노라마 뷰파인더의 상술한 특징들은 "스티치 지원 모드" 등을 제공하는 카메라들을 포함하는, 종래의 디지털 카메라들에 비하여 다수의 이점들을 제공한다.
예를 들면, 파노라마 뷰파인더의 하나의 이점은 성공적인 파노라마 완성을 위한 명백한 시각적 피드백(자르기 프레임에서의 원하는 씬 요소들)을 제공함으로써, 파노라마 뷰파이더는 사용자들의 보증된 결과들을 얻게 한다는 것이다. 자르기 프레임은 사후 자르기(post-hoc cropping)가 직면하는 딜레마를 해결한다. 자르기 프레임이 없다면, 사용자들은 종종 모든 원하는 씬 요소들을 보여주는 파노라마와 술이 없는 파노라마 간에 절충(tradeoffs)을 해야 하는 문제와 직면하게 된다. 그 이유는, 자르기 프레임이 없다면, 파노라마들은 잘못된 어포던스(affordance)를 제공한다는 것이다: 구체적으로, 파노라마는 전형적으로 그것이 (일단 잘리면) 실제보다 더 크게 사용자에게 보여져서, 사용자들이 너무 일찍 이미 지들을 캡처하는 것을 중단하게 한다는 것이다. 자르기 프레임은 이 부서진 어포던스(broken affordance)를 회복시킨다. 자르기 프레임은 일단 이미지가 잘릴 경우 사용자들이 실제로 획득할 것을 정확히 사용자들에게 보여주기 때문이다. 따라서, 파노라마 뷰파인더는 사용자들이 원하는 출력을 얻기 위하여 무엇을 해야할지를 사용자들에게 정확히 보여준다.
파노라마 뷰파인더의 또 다른 이점은 이미지 모자이크의 실시간 미리 보기는 스티치될 수 없는 프레임들 또는 고스팅과 같은 결함들을 그들이 발생할 때 눈에 보이게 한다는 것이다. 이는 사용자들이 이들 영역들을 재촬영함으로써, 모자이크로부터 그러한 문제점들을 제거할 수 있게 한다.
파노라마 뷰파인더의 또 다른 이점은 사용자의 노력을 최소화하면서 사용자가 파노라마를 위한 이미지들을 캡처하는 데 소비하는 시간의 사용을 최대화하는 것을 돕는다는 것이다. 구체적으로, 모자이크 미리 보기는 사용자들이 이미 커버된 영역들을 피할 수 있게 한다. 또한, 모자이크 미리 보기는 사용자들이 불필요한 이미지 자료, 즉, 랜드마크들에 의해 스팬(span)되는 공간 외부에 위치하는 자료를 촬영하는 것을 피하도록 돕는다. 또한, 자르기 프레임은 완료되었을 때 사용자들이 갖고 있는 것이 원하는 파노라마를 구성하는 데 완전히 충분하지는 않은 경우에 추가 이미지들을 촬영하는 대신, 중단할 수 있게 한다. 자르기 프레임은 또한 낭비를 최소화하는 형상(직사각형)으로 촬영하는 것을 지원한다. 이것은 특히 길고 가는 팬들을 촬영하는 데 유용하다. (삼각대 또는 기타 카메라 거치대(mount)와 같은) 지지(support)가 없으면, 이러한 유형의 카메라 팬들은 약간 기 울거나 굽은 이미지 모자이크들을 생성하는 경향이 있어, 임의의 직사각형 자르기 동안에 파노라마의 큰 부분들을 제거할 것이다.
파노라마 뷰파인더의 또 다른 이점은 그것이 저장 공간 필요 조건들을 최소화하도록 도와, 사용자들이 주어진 양의 저장소로 보다 많고 보다 큰 파노라마들을 촬영할 수 있게 한다는 것이다. 한 가지 이유는 사용자가 최종 파노라마가 포함하게 될 것을 정확히 실시간으로 볼 수 있기 때문에 불필요한 이미지 자료를 촬영하는 것이 피해진다는 것이다. 또한, 일 실시예에서, (내부적으로, 또는 외부적으로 접속된 컴퓨팅 장치를 통하여) 디지털 카메라에 충분한 계산 능력을 제공하는 것은 근실시간으로 최종, 또는 세미파이널(semi-final) 스티칭 및 자르기를 가능케 함으로써, 카메라가 보다 많은 공간-집약적인 원시 이미지 자료(space-intensive raw image material)를 자동으로 폐기하게 한다. 그러나, 이 특징은 사용자들이 저장 필요 조건들을 최소화함으로써 보다 큰 파노라마들을 캡처하도록 허용하지만, 사용자들은 종종 차후의 처리를 위해 원본 프레임들의 서브세트를 유지하기를 원할 것이다. 이 경우, 이미지 자료의 자동 폐기는 사용 가능하게(enable) 되지 않는다.
마지막으로, 파노라마 뷰파인더에 의해 제공되는 또 다른 이점은 사용자들에게 최종 결과를 즉시 제공함으로써, 파노라마 뷰파인더는 사용자에게 "즉시 만족(instant gratification)"을 제공한다는 것이다. 이 즉시 만족은 일반적인 사용자들이 (이미지들을 생성하기 위해 카메라 필름의 현상과 그 필름의 후속 처리를 필요로 하는) 전통적인 사진보다 디지털 사진을 선호하는 가장 중요한 이유들 중 하나이다. 이런 식으로, 파노라마 뷰파인더는 파노라마들을 촬영하는 동안의 사용 자 경험을 통상의 사진을 촬영하는 경험에 필적하게 만든다.
2.2 시스템 아키텍처 개관:
위에서 요약된 프로세스들은 도 5의 일반 시스템도에 의해 예시되어 있다. 특히, 도 5의 시스템도는 여기에 기술된 파노라마 뷰파인더를 구현하기 위한 프로그램 모듈들 간의 상호 관계를 예시한다. 도 5에서 임의의 박스들 및 파선 또는 대시 선에 의해 나타내어진 박스들 간의 상호 연결은 여기에 개시된 파노라마 뷰파인더의 대안 실시예들을 나타내고, 후술되는, 이들 대안 실시예들 중 임의의 것 또는 모두는 본 명세서의 전반에 걸쳐서 설명되는 다른 대안 실시예들과 조합하여 이용될 수 있다는 것에 유의해야 할 것이다. 또한, 설명의 명확성을 위하여, 도 5에 예시된 파노라마 뷰파인더는 카메라 또는 이미지 소스(500)가 파노라마 뷰파인더의 전체 시스템의 외부에 있는 것으로 보여준다는 것에 유의해야 할 것이다. 그러나, 위에서 언급한 바와 같이, 다양한 실시예들에서, 도 5에 예시된 컴포넌트들 및 프로그램 모듈들의 일부 또는 전부가 카메라(500)에 일체로 된다.
일반적으로, 도 5에 의해 예시된 바와 같이, 파노라마 뷰파인더는 일반적으로 디지털 카메라 또는 다른 이미지 소스(500)로부터 기록된 이미지들(505)을 실시간 스티칭 모듈(510)로 제공함으로써 동작한다. 실시간 스티칭 모듈(510)은 실시간으로 작용하여 원하는 파노라마 이미지를 위하여 캡처된 기록된 이미지들(505)의 스티칭을 나타내는 모자이크 미리 보기 이미지를 생성한다. 본 명세서에서 더 상세히 설명되는 바와 같이, 이 모자이크 미리 보기 이미지는 더 많은 이미지들이 캡 처되고 실시간 스티칭 모듈(510)에 의해 함께 스티치되면서 시간에 따라서 성장한다. 그 후 이 모자이크 미리 보기 이미지는 디스플레이 장치(515)(예를 들면, 디지털 카메라(500)의 일체형 LCD 디스플레이 등) 상에 실시간으로 표시된다.
또한, 라이브 입력 매핑 모듈(520)은 카메라(500)로부터의 입력(즉, 카메라의 렌즈를 통한 카메라의 뷰파인더로의 뷰(view))을 분석하고, 실시간 스티칭 모듈(510)과 협력하여, 그 입력을 디스플레이 장치 상에 표시되어 있는 전체 모자이크 미리 보기 이미지에 대한 디스플레이 장치(515) 상의 대응하는 위치에 매핑한다. 카메라 뷰파인더의 라이브 또는 "현 내용(current content)"의 이 매핑은 저장을 위해 이미지를 실제로 캡처할 필요없이 실시간으로 일어난다는 것에 유의한다. 그 결과, 사용자는 촬영될 다음 그림이 실제로 그 그림을 촬영하지 않고 도 전체 모자이크 미리 보기 내의 어디에 맞추어질지를 즉시 알 수 있다. 이 특징은 사용자가 최종 파노라마 이미지를 위하여 소망되는 씬 요소들을 용이하게 캡처하도록 허용한다. 또한, 카메라 뷰파인더의 현 내용 창의 보기 및 인식을 더욱 분명하게 하기 위하여, 테스트된 실시예에서, 현 내용 창을 분명히 보이는 경계로 둘러쌈으로써 현 내용 창이 더 강조되었다.
위에서 언급한 바와 같이, 일 실시예에서, "자르기 박스(cropping box)"는 모자이크 미리 보기 이미지의 어떤 부분이 직사각형 자르기에서 살아남을지를 사용자에게 지시하는 데 이용된다. 일반적으로, 이 자르기 박스는 실시간 스티칭 모듈(510)의 출력을 분석하여 모자이크 미리 보기 이미지의 임의의 경계를 따라서 갭들(분실 이미지 정보)을 갖지 않고 모자이크 미리 보기 이미지 위에 그려질 수 있 는 최대 직사각형의 범위를 결정하는 자르기 박스 오버레이 모듈(cropping box overlay module)(525)에 의해 생성된다. 일단 계산되면, 이 자르기 박스는 단순히 모자이크 미리 보기 이미지 상에 오버레이로서 표시된다.
관련 실시예에서, 모자이크 강조 모듈(mosaic highlight module)(535)은, 자르기에서 살아남을 영역이 사용자에게 한층 더 용이하게 보이도록, 자르기 박스 내의 영역을 엠퍼사이즈(emphasize)하거나, 또는 자르기 박스 외부의 영역을 디엠퍼사이즈(de-emphasize)하는 데 이용된다. 자르기 박스의 외부 영역의 디엠퍼시스의 일례는 단순히 자르기 박스 내의 영역들에 대하여 자르기 박스 외부의 모자이크 미리 보기의 영역들의 밝기를 감소시키는 것이다. 유사하게, 밀접하게 관련된 실시예에서, 사용자가 현재의 뷰가 전체 파노라마에 추가될 기여(contribution)를 즉시 알 수 있도록 현 자르기 박스 범위 외부에 있는 카메라 뷰파인더의 현 내용 창의 임의의 부분도 디엠퍼사이즈된다.
또 다른 실시예에서는, 기록된 이미지들의 실시간 스티칭(또는 카메라(500)로부터의 라이브 입력의 매핑)에서의 문제점들을 사용자에게 경고하는 스티칭 경고 모듈(530)이 제공된다. 예를 들면, 섹션 3에서 더 상세히 설명되는 바와 같이, 어떤 이미지 스티칭 기법이라도 (기록된 이미지들(505) 또는 카메라(500)로부터의 라이브 입력을 포함하는) 이미지가 전체 모자이크 내의 어디에 맞추어질지의 트랙을 상실(lose track of)할 수 있다. 그러한 실패의 원인으로는, (랜드마크가 포함되지 않은 맑은 푸른 하늘과 같은) 정확한 매핑에 대한 불충분한 이미지 상세 또는 텍스처를 포함할 수 있지만 이에 제한되는 것은 아니다. 스티칭 경고 모듈에 의해 식별될 수 있는 다른 가능한 문제들은 모자이크 미리 보기 내의 고스팅 효과의 검출, 자르기 박스의 내부 경계 내의 갭들, 하나 이상의 이미지들에 대한 이미지 초점의 문제 등과 같은 문제점들을 포함한다.
스티칭 경고 모듈(530)에 의해 임의의 그러한 문제들이 식별되는 경우에, 그 문제를 수정할 시간이 있는 동안에 그 특정 문제에 사용자의 주의를 환기시키는 경고가 디스플레이 장치(515) 상에 제공된다. 전형적으로, 임의의 특정 문제를 수정하기 위한 해법은 문제들이 식별된 모자이크 미리 보기의 영역들을 커버하는 하나 이상의 이미지들을 재촬영하는 것이다. 또한, 실시간 스티칭 모듈(510)이 이미지가 전체 모자이크 미리 보기 내의 어디에 맞추어져야 할지의 트랙을 상실하는 경우에, 스티칭 경고 모듈(530)은 사용자가 이미 캡처되어 성공적으로 스티칭된 영역으로 카메라를 이동시킨 다음, 그 영역으로부터 트래킹이 상실된 영역 쪽으로 다시 이동하면서 추가 이미지들을 재촬영할 것을 제안할 것이다.
맑은 푸른 하늘 예와 같이, 텍스처가 문제인 경우에, 스티칭 경고 모듈은 또한 사용자가 몇몇 이미 매핑된 랜드마크들 외에 저-텍스처(low-texture) 영역을 포함하는 보다 넓은 시야각을 캡처하도록 줌 아웃(zoom out)할 것을 제안할 수도 있다. 실시간 스티칭 모듈은 입력된 이미지들을, 이미지들 간에 줌 레벨이 상이한 경우에도, 모자이크 미리 보기 이미지에 매핑하기 위해 입력된 이미지들을 크기 조정(scaling)(및 필요하다면 워핑(warping))할 수 있다는 것에 유의해야 할 것이다.
관련 실시예에서, 스티칭 경고 모듈(530)은 모자이크 강조 모듈(535)과 협력하여 작용하여 모자이크 미리 보기 이미지 내의 특정 문제 영역들을 강조하거나 다 른 식으로 엠퍼사이즈한다.
위에서 언급한 바와 같이, 모자이크 미리 보기 이미지는 보다 많은 이미지들이 캡처되어 실시간 스티칭 모듈(510)에 의해 함께 스티칭되면서 시간에 따라서 성장한다. 따라서, 일 실시예에서, 크기 조정/패닝 모듈(scaling/panning module)(540)은 전체 모자이크 미리 보기 이미지가 디스플레이 장치(515)의 범위 내에 들어맞도록 모자이크 미리 보기 이미지의 범위를 크기 조정한다. 그러나, 라이브 입력 매핑 모듈(20)은 카메라(500)로부터의 입력을 전체 모자이크 미리 보기 이미지에 대한 대응하는 위치로 매핑하기 때문에, 그 라이브 입력(즉, 현 내용 창)의 뷰도 크기 조정된다. 따라서, 시간에 따라서, 모자이크 미리 보기가 성장하면서, 현 내용 창은 사응자가 그 창 내의 내용을 알기가 곤란한 지점까지 축소(shrink)할 수 있다. 그러므로, 다른 관련 실시예에서는, 현 내용 창은 최소 한도의 크기 아래로는 크기 조정되지 않겠지만, 대신에 이미지가 캡처되면 그 이미지가 스티치될 모자이크 미리 보기의 영역을 오버레이할 것이다(이 점의 추가 논의에 대해서는 섹션 3.4 참조).
또 다른 관련 실시예에서는, 전체 모자이크 미리 보기(및 현 내용 창)를 균일하게 크기 조정하기보다는, 크기 조정/패닝 모듈(540)은 현 내용 창을 보다 크게, 그리고 일부 허용 한계 내에서, 대략 디스플레이 장치(515)의 중심 가까이에 유지하면서 모자이크 미리 보기의 부분들을 크기 조정하거나 및/또는 워핑하여 그 모자이크 미리 보기의 가장자리들을 압축한다. 유사하게, 다른 실시예에서는, 크기 조정/패닝 모듈(540)은 모자이크 미리 보기(및 현 내용 창)를 모자이크 미리 보 기 또는 현 내용 창에서 충분한 상세를 알기가 곤란한 지점까지 축소하는 것을 피하도록 현 디스플레이 창을 화면상(on-screen)에 유지하면서 모자이크 미리 보기의 부분들이 "화면에서 벗어나는(off-screen)" 것을 허용하도록 모자이크 미리 보기의 패닝(panning)을 제공한다.
크기 조정/패닝 모듈(540)에 대하여 위에서 설명된 특징들은 전형적으로 디지털 카메라들에 일체로 된 디스플레이 화면들에서 보다 중요하다는 것에 유의한다. 그러한 화면들은 전형적으로 크기와 해상도 모두가 제한되기 때문이다.
파노라마 뷰파인더의 또 다른 실시예에서, 데이터 저장 감소 모듈(data storage reduction module)(545)은 기록된 이미지들(505)로부터 중복(redundant) 이미지 정보를 자동으로 제거하는 데 이용된다. 예를 들면, 모자이크를 위한 이미지들을 캡처할 때, 자연히 이미지들 간에 어느 정도의 중첩이 있을 것이다. 그러므로, 일 실시예에서는, 실시간 스티칭 모듈(510)에 의한 스티칭에 이어서, 데이터 저장 감소 모듈(545)은 기록된 이미지 데이터(505)로부터 임의의 중복 이미지 정보의 일부 또는 전부를 자동으로 삭제할 것이다.
데이터 저장 감소 모듈에 의해 사용 가능하게 된 실시예들의 하나의 이점은 디지털 카메라의 내부 메모리와 같은 비교적 제한된 이미지 저장 공간을 이용할 때, 보다 큰 파노라마 이미지 모자이크들을 캡처하기 위해 추가 공간이 이용 가능하게 된다는 점이다. 반대로, 이 실시예의 하나의 불리점은 개개의 이미지들의 일부 또는 전부가 더 이상 자체로 사용하기 위한 완전한(직사각형) 이미지가 되지 않을 것이라는 점이다. 다양한 실시예들에서, 데이터 저장 감소 모듈(545)은 사용자 에 의해 수동으로 사용 가능(enable)하게 또는 사용 불가(disable)하게 될 수 있고, 또는 디지털 카메라(500) 내의 남아 있는 저장 공간의 함수로서 자동으로 사용 가능하게 될 수 있다는 것에 유의한다.
일단 특정 파노라마를 위하여 원하는 모든 이미지들이 실시간 스티칭 모듈(510)에 의해 스티칭되고, 옵션으로 자르기 박스 오버레이 모듈(cropping box overlay module)(525)에 의해 제공된 자르기 박스에 대응하는 이미지 범위까지 잘리면, 결과의 파노라마들은, 희망에 따라, 나중의 사용을 위해 파노라마 이미지들의 파일 또는 데이터베이스(550)로 저장된다.
그러나, 다른 실시예에서는, 실시간 스티칭 모듈(510)은 디스플레이 장치(515) 상에 표시하기 위한 모자이크의 "미리 보기 전용(preview only)" 버전을 생성하기 위해 예비 스티칭(preliminary stitching)만을 수행한다. 이 실시예에서는, 기록된 이미지들(505)의 최종 스티칭을 계산하는 데 이용될, 이미지 매핑, 워핑(warping), 및 크기 조정(scaling) 정보와 같은, 이미지들 간의 기본적인 관계 정보가 최종 파노라마 이미지 모자이크 대신에 저장된다(550). 그 후 이 저장된 정보(550)는 오프라인 스티칭 모듈(555)에 의해 기록된 이미지들의 비실시간 오프라인 스티칭에 이용된다.
오프라인 스티칭 모듈(555)에 의해 제공되는 실시예의 하나의 이점은 종래의 블렌딩(blending), 피처링(featuring), 대비 및 밝기 조정, 디고스팅(de-ghosting) 동작 등을 포함하는, 최종 이미지 스티칭이 계산적으로 비용이 들고, 따라서 전형적인 디지털 카메라에 의해 제공되는 비교적 제한된 계산 능력 내에서 구현되기 어 렵다는 점이다. 그러나, 최종 이미지 모자이크의 간단한 미리 보기를 생성하는 예비 저-해상도 스티칭은 계산적으로 비용이 적게 들어, 계산 능력이 제한된 경우에 보다 나은 성능을 제공한다. 오프라인 스티칭 모듈에 의한 실시예의 또 다른 이점은, 완성된 파노라마의 최종 스티칭된 버전의 저장은, 극한에서, 최종 파노라마를 구성하는 데 이용되는 각각의 개별 이미지에 대한 저장 공간의 합에 가까운 상당한 양의 저장 공간을 필요로 할 수 있다는 것이다. 그러나, 최종 파노라마의 오프라인 구성에 이용되는 이미지들 간의 관계 정보의 저장은 실제 파노라마 이미지에 비하여 상대적으로 매우 적은 공간을 차지한다. 따라서, 이 실시예는 카메라 메모리가 제한되는 경우에도 유용하다.
3.0 동작 개관:
상술한 프로그램 모듈들은 여기에 기술된 파노라마 뷰파인더를 구현하기 위해 이용된다. 위에서 요약한 바와 같이, 이 파노라마 뷰파인더는 씬의 이미지들의 세트로부터 파노라마 모자이크 이미지들을 구성하는 데 이용될 이미지들을 캡처하기 위한 대화형 뷰파인더 디스플레이(interactive viewfinder display) 형태의 직관적 인터페이스를 제공한다. 이하의 섹션들은 파노라마 뷰파인더의 동작, 및 섹션 2에서 기술된 프로그램 모듈들을 구현하기 위한 예시적 방법들에 관한 상세 논의를 제공한다.
3.1 파노라마 뷰파인더의 동작 상세:
다음의 단락들은 여기에 기술된 파노라마 뷰파인더의 특정 동작 실시예들을 상세히 설명한다. 특히, 다음의 단락들은 파노라마 뷰파인더와 함께 사용되는 카메라들 및 입력 이미지들, 종래의 스티칭 기법들을 이용한 이미지 모자이크들의 일반적 구성; 파노라마 뷰파인더 사용자 인터페이스의 요소들; 파노라마 뷰파인더와의 사용자 인터페이스; 및 파노라마 뷰파인더의 추가 실시예들을 설명한다.
3.2 카메라들 및 이미지 또는 비디오 스트림들 :
위에서 언급한 바와 같이, 일 실시예에서, 파노라마 뷰파인더는 실시간 모자이크 미리 보기를 생성하고, 현 뷰파인더 내용을 모자이크 미리 보기들에 매핑하고, 이미지 모자이크의 직사각형 자르기에서 살아남을 수 있는 최대 내용을 예시하는 자르기 프레임들을 생성하기 위해 충분한 통합 계산 능력을 갖는 디지털 스틸 또는 비디오 카메라 내에 구현된다. 그러나, 파노라마 뷰파인더를 디지털 스틸 또는 비디오 카메라 내에 구현하는 것 외에도, 파노라마 뷰파인더와 조합하여 다수의 종래의 카메라 유형들 또는 비디오 피드(video feed)들 중 어떤 것이라도 이용될 수 있다.
사실, 파노라마 뷰파인더로의 확장에 의해, 외부 컴퓨팅 장치와 인터페이스 가능한 사실상 임의의 디지털 카메라 또는 비디오 스트림 피드들이 이용될 수 있다. 또한, 다수의 새로운 스틸 또는 비디오 카메라들에 컴퓨터의 기존 포트들에 직접 연결될 수 있다(USB 인터페이스, IEEE 1394 인터페이스, BluetoothTM 무선 인 터페이스, IEEE 802.11 무선 인터페이스 등). 임의의 그러한 카메라가 파노라마 뷰파인더에 의해 사용될 수 있다.
또한, 파노라마 뷰파인더의 기능이 그 카메라에 일체로 되지 않으면, 파노라마 뷰파인더는 마치 파노라마 뷰파인더가 디지털 카메라의 LCD 화면 상에 표시되어 있는 것과 동일한 방식으로 부착된 컴퓨터의 디스플레이 장치 상에서 인스턴스화(instantiate)될 수 있다. 예를 들면, 사용자는 데스크톱, 노트북, 또는 핸드헬드 컴퓨팅 장치에 연결된, 일체형 계산 성능을 갖고 있지 않은) 종래의 "웹 캠(web cam)" 등을 이용하여 마치 통합 파노라마 뷰파인더 성능을 갖는 전용 디지털 카메라에 의해 캡처되는 것과 기본적으로 동일한 방식으로 파노라마 이미지들을 생성할 수 있다.
그러나, 위에서 언급한 바와 같이, 파노라마 뷰파인더를 사용 가능하게 하기 위해 개별 컴퓨팅 장치에 연결된 외부 카메라의 모든 가능한 조합을 설명하기보다는, 파노라마 뷰파인더는 본 명세서에서 일반적으로 디지털 카메라 내에 구현되는 것으로 기술될 것이다. 그러나, 본 명세서에 제공된 뷰파인더의 상세한 설명은 일체형 디스플레이 장치 또는 계산 성능을 포함할 수도 있고 포함하지 않을 수도 있는 카메라들에 연결된 외부 컴퓨팅 장치들 및/또는 외부 디스플레이 장치들을 포함하는 추가 실시예들에도 동등하게 적용된다는 것을 이해해야 할 것이다.
3.3 이미지 모자이크의 구성:
유사한 또는 관련된 이미지 프레이들의 세트 또는 클러스트로부터의 모자이 크의 생성은 숙련된 당업자들에게 잘 알려진 개념이므로, 여기에서는 일반적으로만 설명하겠다. 일반적으로, 종래의 모자이킹 기법들의 기본적인 아이디어는 공간적으로 관련된 이미지 프레임들의 세트 또는 시퀀스가 주어진 씬의 넓은 시야각(field of view)(FOV) 또는 파노라마 이미지를 획득하는 것이다. 이 파노라마는 일반적으로 카메라가 이동하면서 이미지들을 캡처하고 그 후 이미지들의 사후 스티칭(post-hoc stitching)을 적용하여 보다 큰 이미지를 획득함으로써 구성된다.
예를 들면, 많은 디지털 카메라들은 카메라로부터 획득된 이미지들로부터의 파노라마 이미지 모자이크들의 자동 사후 구성을 위한 소프트웨어와 함께 묶여 온다(사후 처리는 별도의 컴퓨팅 장치 상에서 수행됨). 일반적으로, 디지털 카메라에 대한 모자이킹 문제의 기하학은 잘 이해되고, 전형적으로 각 이미지에 대하여 비교적 작은 카메라 매트릭스 또는 호모그래피(homography)를 추정하는 것으로 이루어진다. 이 추정 프로세스는 전형적으로 이미지들을 자동으로 또는 사용자 입력을 통하여 대충 배열(ordering)하는 것으로 초기화된다. 전형적인 모자이킹 방식들은 특징-기반(feature-based) 또는 다이렉트(direct) 방법들을 자주 이용한다.
종래의 특징-기반 방법들은 전형적으로 이미지에서 검출된 점들, 선들 또는 다른 기하학적 엔티티들 간의 대응성을 수립함으로써 시작한다. 예를 들면, 전형적인 특징-기반 접근법은 해리스 모서리들(Harris corners)을 추출하고 국소 명암도(local intensity) 값들의 정규화된 상호상관(normalized cross-correlation)을 이용하여 그들을 매칭시키는 것일 것이다.
다이렉트 방법들은 중첩의 영역에서의 명암도 차이에 기초하여 오차 함 수(error function)을 최소화함으로써 카메라 파라미터들을 반복하여 추정하려고 시도한다는 점에서 특징-기반 방법들과 상이하다. 다이렉트 방법들은 이용 가능한 데이터 전부를 이용하므로 매우 정확한 레지스트레이션(registration)을 제공할 수 있다는 이점을 갖고 있다. 그러나, 그러한 방법들의 하나의 불리점은 그것들이 유효하지(hold true) 않을 수도 있는 '밝기 항등성(brightness constancy)' 가정에 의존한다는 점이다. 또한, 그러한 방법들은 전형적으로 또한 초기화를 필요로 한다.
또한, 이들 스티칭 기법들의 다수는 360도 파노라마들, 즉 그 좌측 단부가 우측 단부에 논리적으로 연결되는 파노라마들을 생성할 수 있다. 따라서, 일 실시예에서는, 파노라마 뷰파인더의 스티칭 프로세스들이 파노라마가 완료(wrap)하였다는 것을 판정할 때마다, 모자이크 미리 보기 이미지의 외관을 변경하여 파노라마가 사실상 연속 360도 이미지임을 나타낸다. 테스트된 실시예에서, 모자이크 미리 보기는 모자이크 미리 보기의 디스플레이의 좌측 및 우측 가장자리를 상징적 지퍼(symbolic zipper)로서 표시하여, 그 2개의 단부가 논리적으로 연결됨을 나타냄으로써 360도 파노라마들에 대하여 변경되었다. 분명히, 다양한 실시예들에서 360도 파노라마를 형성하도록 파노라마의 단부들이 논리적으로 연결됨을 나타내기 위해 텍스트, 화살표 등과 같은 다른 표시들이 이용될 수도 있다.
이미지들을 스티칭하기 위해 어떤 방법들이 이용되든 관계없이, 일단 여러 이미지들 간에 특징들이 매칭되면, 이미지들 간에 명암도 변화가 있는 경우에도, 이미지들 간에 매끄러운 전이를 제공하는 한편, 여러 이미지들 간에 작은 레지스트 레이션 오차가 존재하는 경우에도 선명한 상세(sharp detail)를 유지하도록 전형적으로 종래의 블렌딩, 워핑, 및 크기 조정 기법들을 이용하여 모자이크 이미지들이 구성된다.
다수의 이들 종래의 스티칭 기법들은 반드시 최종 스티칭된 모자이크를 생성할 필요 없이 모자이크 이미지의 실시간 미리 보기들을 생성하는 데 이용되도록 적응 가능하다. 또한, 충분한 계산 능력이 있다면, 다수의 종래의 스티칭 기법들은 실시간, 또는 근실시간으로 모자이크 이미지의 최종 스티칭된 버전들을 생성하는 데 이용되도록 적응 가능하다. 위에서 요약된 모자이킹 기법들은 매우 많은 수의 종래의 기법들 중 소수일 뿐이고, 다수의 이들 종래의 모자이킹 기법들 중 어느 것이라도 여기에 기술된 파노라마 뷰파인더에 의한 캡처된 이미지들의 실시간 및/또는 오프라인 스티칭(스티칭된 모자이크의 실시간 미리 보기 버전과 함께)에 이용되도록 적응 가능하다는 것에 유의해야 할 것이다.
3.4 파노라마 뷰파인더 사용자 인터페이스:
위에서 언급한 바와 같이, 파노라마 뷰파인더의 사용자 인터페이스는 일반적으로, 디스플레이 또는 카메라 뷰파인더 화면에, 스티칭된 모자이크의 시각적 미리 보기(즉, "모자이크 미리 보기"), 카메라 뷰파인더의 "현 내용"을 나타내는 라이브 디스플레이 창; 및 모자이크 미리 보기 상에 오버레이된 옵션인 파노라마 "자르기 프레임"을 포함한다. 또한, 다양한 실시예들에서, 파노라마 뷰파인더의 사용자 인터페이스는 또한 스티칭된 모자이크에서 식별된 특정 문제들에 관한 다양한 시각적 경계(alerts), 경고(warnings), 또는 지시(instructions)를 포함한다. 이들 요소(모자이크, 현 뷰파인더 디스플레이, 자르기 프레임)의 각각이 매우 한정된 공간(예컨대 디지털 카메라의 소형 LCD 화면)에서 공존하고, 중첩하고, 서로 독립적으로 변할 수 있다고 가정하면, 시각적 간섭의 위험이 있다. 따라서, 이들 요소들의 복잡한 표시들이 구현될 수 있지만, 이들 요소들의 조합을 가능한 한 단순하게 하는 것이 파노라마 이미지 모자이크를 위한 이미지들을 캡처할 때 사용자 경험을 향상시킨다는 것이 관찰되었다.
예를 들면, 도 6에 의해 예시된 바와 같이, 일 실시예에서, 모자이크 미리 보기(620)는 디지털 카메라(600)의 LCD 디스플레이 화면(610)에 맞도록 자동으로 크기 조정된다. 그 후 카메라 뷰파인더(630)의 "현 내용"(렌즈가 현재 보는 것)을 나타내는 라이브 디스플레이 창이 모자이크 미리 보기(620) 내의 대응하는 위치에 매핑된다. 또한, 자르기 프레임(640)은 모자이크 미리 보기(640)의 상부에 오버레이된다. 카메라(600)는 또한 종래의 방식으로 카메라를 조작하거나, 또는 특정 옵션들(예컨데 여기에서 설명된 파노라마 뷰파인더 모드의 촬영과 같은)을 수동으로 선택하기 위한 종래의 컨트롤들(660)의 세트를 포함할 수도 있다. 도 7은 모자이크 미리 보기(720), 카메라 뷰파인더의 현 내용 창(730), 및 옵션인 파노라마 자르기 프레임(740)을 보여주는, 도 6의 LCD 디스플레이의 더 큰 뷰(view)(도 6에 도시된 씬의 상이한 뷰를 가짐)를 예시한다.
이들 특징들(모자이크 미리 보기, 현 내용 창, 및 자르기 프레임)의 동작의 예들에 대해서는 도 8 내지 도 lOB에 관련하여 아래에서 섹션 3.4.3 및 3.4.4에서 상세히 논의된다.
3.4.1 카메라 디스플레이 장치:
본 명세서에서 기술된 바와 같이, 일 실시예에서, 파노라마 뷰파이더의 사용자 인터페이스는 디지털 스틸 또는 비디오 카메라의 LCD 화면 상에 구현된다. 전형적으로, 그러한 일체형 카메라 디스플레이들은 (대각선으로) 크기가 약 2.5 인치 정도이고, 카메라의 유형에 따라서 다양한 해상도 성능을 갖는 LCD 디스플레이들이다. 그러나, 여기에서 제공된 논의에 비추어볼 때, 카메라 디스플레이의 논의는 또한 카메라에 직접 연결되거나, 또는 카메라 자체가 연결되어 있는 외부 컴퓨팅 장치를 통하여 카메라에 연결되어 있는 다른 외부 디스플레이 장치들을 포함하도록 의도된다는 점이 분명할 것이다.
일 실시예에서, "경계 박스(bounding box)"가 카메라의 LCD 디스플레이 상에 포함되었다. 경계 박스의 일반적인 목적은 사용자가 관심 있는 씬을 커버하는 어떤 소정의 영역을 가로질러 카메라를 "브러싱(brusing)"함으로써 사용자가 채워넣는 영역을 제공하기 위한 것이다. 모자이크 미리 보기는, 일단 모든 이미지들이 스티칭되면 전체 씬이 경계 박스 내에 들어맞도록, 경계 박스에 대하여 크기 조정된다. 그러나, 이 경계 박스는 몇몇 응용에서 유용하지만, 사용자에게 먼저 경계 박스의 범위를 정의하는 여분의 단계를 요구함으로써 사용자를 혼란케 하는 경향이 있다. 따라서, 다른 실시예에서는, 경계 박스가 사용되지 않았다. 사실, LCD 디스플레이 화면의 크기는 그 자체가 제한되므로, 그것은 본질적으로 그 안에서 모자 이크 미리 보기가 렌더링되는 암시적 경계 박스로서 작용한다.
다른 실시예에서, 카메라 디스플레이 화면의 배경은 모자이크 미리 보기 이미지의 범위 외부에서 상이한 색과 패턴으로 렌더링될 수 있다. 그러나, 모자이크 미리 보기 이미지의 범위 외부에서 공백(또는 블랙) 배경을 사용하는 것이 가장 단순하고, 가장 직관적인 사용자 인터페이스를 제공한다는 것이 관찰되었다.
3.4.2 모자이크 미리 보기 이미지:
위에서 언급한 바와 같이, 파노라마 뷰파인더는 카메라 디스플레이 화면 상에 실시간 또는 근실시간 모자이크 미리 보기 이미지를 제공하는데, 이는 그 모자이크 이미지는 새로운 이미지가 추가되자마자 그 모자이크 미리 보기 내로 추가 이미지들의 스티칭과 함께 성장하기 때문이다. 디스플레이 화면 상에 이미지 모자이크를 표시할 때, 시각적 표현은 사용자에 대한 시각적 혼란을 최소화하도록 가능한 한 똑바른(straightforward) 것이 되도록 설계된다.
테스트된 실시예에서, 모자이크 미리 보기는, 그 모자이크 미리 보기와 예컨대 현 내용 창의 자르기 프레임과 같은 파노라마 뷰파인더의 다른 요소들, 또는 카메라 디스플레이 화면의 단순히 채워지지 않은 영역들 간의 분명한 시각적 분리를 보증하기 위해, 예를 들면, 백색 또는 채색 실선과 같은 한정된 경계에 의해 둘러싸였다.
또한, 위에서 지적한 바와 같이, 파노라마 뷰파인더는 360도 파노라마 이미지들을 구성하는 것이 가능하다. 따라서, 일 실시예에서는, 도 11에 의해 예시된 바와 같이, 파노라마 뷰파인더는 모자이크 미리 보기 이미지들의 좌측 및 우측 범위들 상에 좌측 및 우측 상징적 지퍼들(1120 및 1130)을 예시함으로써 360도 원통형 파노라마 모자이크(1100)의 존재를 나타낸다. 이 경우, 모자이크 미리 보기 이미지의 패닝을 이용하여, 카메라 뷰파인더로부터의 라이브 입력을 보여주는 현 내용 창(1100)이 대략 카메라 디스플레이의 중심 가까이에 남아 있도록 한다. 그러한 상징적 지퍼들은 그러한 360도 파노라마들이 나타내어질 수 있는 다수의 방법들 중 하나일 뿐이라는 것에 유의한다. 다른 방법들은 텍스트, 화살표, 연결 선 등의 사용을 포함한다.
또한, 위에서 언급한 바와 같이, 모자이크 미리 보기 이미지는 더 많은 이미지들이 캡처되고 함께 스티칭되어 카메라 LCD 화면에 표시된 모자이크 미리 보기 이미지를 생성하면서 시간에 따라 성장한다. 이러한 이미지 성장의 결과로, 모자이크 미리 보기 이미지는 카메라의 LCD 디스플레이의 범위 내에 들어맞지 않도록 너무 커지는 지점에 신속히 도달할 수 있다. 그러므로, 일 실시예에서는, 모자이크 미리 보기 이미지가 추가 이미지들의 통합과 함께 시간에 따라 성장할 때, 파노라마 뷰파인더는 모자이크 미리 보기 이미지를 크기 조정하거나, 워핑하거나, 및/또는 패닝하도록 작용한다.
예를 들면, 일 실시예에서, 파노라마 뷰파인더는 전체 모자이크 미리 보기 이미지가 디스플레이 장치의 범위 내에 들어맞도록 (하나 이상의 디멘전에서) 모자이크 미리 보기 이미지의 범위를 크기 조정한다. 이 크기 조정은, 필요할 경우, 새로운 이미지가 모자이크 미리 보기에 스티칭될 때마다, 적용된다는 점에서 자동 이면서 동적이다. 또한, 아래에서 더 논의되는 바와 같이, 현 내용 창에 대응하는 카메라로부터의 라이브 입력도 다양한 실시예들에서 모자이크 미리 보기의 크기 조정에 매칭하도록 크기 조정된다.
구체적으로, (사용자가 카메라로 캡처하고 있는 것을 실제로 볼 수 있도록) 사용자에게 카메라 뷰파인더의 중요성이 주어진다면, 파노라마 뷰파인더는 사용자가 카메라 뷰파인더를 나타내는 현 내용 창의 크기를 증가시킬 수 있게 하는 다양한 추가 실시예들을 제공한다. 또 다른 실시예들에서는, 전체 모자이크 미리 보기를 균일하게 크기 조정하기보다는, 파노라마 뷰파인더는 모자이크 미리 보기의 부분들을 크기 조정하거나 및/또는 워핑하여 그 모자이크 미리 보기의 가장자리들을 압축한다. 그러한 크기 조정의 이점들 중 하나는 카메라 뷰파인더의 현 내용 창이 전체 모자이크 미리 보기 이미지에 대하여 보다 큰 창에 표시될 수 있게 한다는 점이다.
예를 들면, 일 실시예에서, 보다 큰 뷰파인더를 위한 추가 공간을 만들기 위하여 뷰파인더 창 외부의 일부 내용을 축소(shrink)함으로써 보다 큰 카메라 뷰파인더 창을 제공하기 위해 "어안 모드(fisheye mode)"가 이용된다. 이러한 일그러짐(distortion)은 선형적, 또는 비선형적일 수 있다. 또한, 일 실시예에서는, 이미지 모자이크의 원하는 부분들을 완전히 채워넣기 위해 요구되는 시각적 도움(visual aids)이 사용자에게 남겨지도록 하기 위하여, 수평 및 수직선들을 보전하는 일그러짐이 카메라 뷰파인더의 현 내용 창 외부의 모자이크 미리 보기의 영역들에 적용된다. 구체적으로, 카메라 뷰파인더의 현 내용 창의 위와 아래에 있는 모자이크 미리 보기 이미지의 부분들은 수직으로 압축되고 카메라 뷰파인더의 현 내용 창의 좌측과 우측에 있는 모자이크 미리 보기 이미지의 부분들은 수평으로 압축된다.
관련 실시예에서, 카메라 뷰파인더의 현 내용 창이 전체 화면을 채우도록 하기 위해 "오버레이 모드(overlay mode)"가 이용된다. 이 실시예에서, 모자이크 미리 보기는 카메라 뷰파인더의 현 내용 창의 위에 오버레이되는 선 드로잉(line drawing)으로 축소된다. 그 후, 모자이크 미리 보기 윤곽선, 옵션인 자르기 프레임 윤곽선, 및 상대적 매핑된 위치(relative mapped position) 및 카메라 뷰파인더의 현 내용 창의 크기를 보여주는 윤곽선이 모두 카메라 뷰파인더의 현 내용 창의 디스플레이에 오버레이하는 선들로서 표현된다. 이들 선들은 임의의 원하는 두께, 스타일, 또는 색으로 될 수 있다. 그러나, 밀접하게 관련된 실시예에서, 카메라 뷰파인더의 현 내용 창에 오버레이하는 이들 선들은 카메라 뷰파인더의 사용과의 시각적 간섭을 최소화하도록 종래의 이미지 처리 기법들을 이용하여 "엠보스(embossed)"되었다.
또 다른 관련 실시예에서는, 카메라의 LCD 디스플레이 화면이 통상의 모자이크 미리 보기 이미지를 보여주지만, (모자이크 미리보기 이미지의 성장 때문에) 카메라 뷰파인더의 현 내용 창이 최소 임계값 아래로 축소할 때, 카메라 뷰파인더의 현 내용 창의 보다 큰 사본이 화면의 가장 밀도가 낮게 채워진 영역(least densely populated area)에서 나타내어지는 "콜아웃 모드(callout mode)"가 이용된다. 그 후, 예를 들면, 윤곽 고무줄(outlined rubber band), 화살표, 선 등과 같은 콜아웃 지시자(callout indicator)가 카메라 뷰파인더의 현 내용 창의 보다 큰 사본을 전체 모자이크 미리 보기 이미지 내의 대응하는 위치에 매핑되는 보다 작은 사본에 연결한다.
또 다른 실시예에서는, 모자이크 미리 보기 또는 현 내용 창에서 충분한 상세를 보기 어려운 지점까지 모자이크 미리 보기를 축소하는 것을 피하기 위해 현 디스플레이 창을 화면상에 유지하면서 모자이크 미리 보기의 부분들이 "화면에서 벗어나게(off screen)" 하기 위해 모자이크 미리 보기가 패닝된다.
모자이크 미리 보기의 (및 카메라 뷰파인더의 현 내용 창의) 크기 조정 및/또는 패닝에 관하여 위에서 설명된 특징들은 전형적으로 디지털 카메라들에 일체로 된 디스플레이 화면들에서 보다 중요하다는 것에 유의한다. 그러한 화면들은 전형적으로 크기와 해상도 모두가 제한되기 때문이다. 그러나, 이 동일한 특징들은 임의의 유형 또는 크기의 화면 또는 디스플레이에서 사용될 수 있다.
3.4.3 카메라 뷰파인더("현 내용" 디스플레이 창):
상술한 바와 같이, 전술한 "현 내용" 창은 기본적으로, 종래의 디지털 카메라의 전용 LCD "뷰파인더" 디스플레이 화면과 유사하게, 무엇이든 다음에 캡처될 이미지의 표시를 나타내는 전체 카메라 디스플레이의 동적인 소구역(sub-region)이다. 그러나, 종래의 디지털 카메라의 뷰파인더 디스플레이와 달리, 이 라이브 현 내용 창은 전체 모자이크 미리 보기 이미지 내의 매칭하는 위치에 자동으로 매핑된다는 점에서 동적이다. 그 결과, 사용자는 현 이미지가 기존의 전체 모자이크 내 의 어디에 맞추어질지를 즉시 알 수 있다.
테스트된 실시예에서, 현 내용 창은 채색 직사각형과 같은 가시적인 경계를 이용하여 강조(highlight)된다. 그러나, 이 목적을 위해 어떤 색, 두께 또는 스타일의 선이라도 이용될 수 있다. 또한, 관련 실시예에서는, 선들을 이용하여 현 내용 창의 경계를 정하기보다는, 그 창은 단순히 전체 모자이크 미리 보기 이미지에 대한 현 내용 창의 가시도를 오프셋(offset)하기 위하여 그 자체가 어둑해지거나 다른 방법으로 디엠퍼사이즈되는 전체 모자이크 이미지 상의 그것의 대응하는 위치에 오버레이된다. 어느 경우든, 요지는 캡처될 임의의 새로운 이미지가 기존의 모자이크 내의 어디에 맞추어질지를 사용자가 즉시 알 수 있게 하는 것이다.
상술한 바와 같이, 모자이크 미리 보기 이미지가 성장하면서, 카메라 뷰파인더의 현 내용 창은 축소한다. 이 뷰파인더 창은 그 후 전체 모자이크 미리 보기 이미지 내의 매칭하는 위치에 매핑된다. 그러나, 또한 위에서 설명한 바와 같이(섹션 3.4.2), 전술한 "어안", "오버레이", 및 "콜아웃" 모드들을 포함하는 다양한 추가 실시예들은 사용자가 카메라 뷰파인더의 현 내용 창의 내용을 알기 어려운 크기 아래로 그 창을 축소하는 것을 피하는 데 이용된다.
또한, 카메라 뷰파인더의 현 내용 창이 전체 모자이크 미리 보기 이미지 내의 매칭하는 위치로 자동으로 매핑되는 방법 때문에, 현 내용 창이 부분적으로 화면에서 벗어날 수 있는(또는 360도 모자이크의 경우에는 "깨질(broken)" 수도 있는) 가능성이 있다. 따라서, 일 실시예에서는, 전체 모자이크 미리 보기 이미지를 표시할 때 뷰파인더가 항상 이은 데 없이(in one piece)(그리고 완전히) 있도록 하 기 위하여, 모자이크 이미지는 뷰파인더를 대략 화면의 중앙에 유지하도록 패닝된다(임의의 필요한 방향으로). 그러나, 현 내용 창이 전체 디스플레이 화면 내에서 너무 많이 주위로 이동하지 않게 하기 위하여, 히스테리시스(hysteresis)를 이용하여 패닝 이동을 줄인다. 즉, 뷰파인더가 특정량만큼(테스트된 실시예에서는 50%) 중심에서 떠나게 하고, 그 후 카메라 뷰파인더의 현 내용 창이 임계값을 넘어가는 경우에만 화면을 패닝한다. 이 패닝은 섹션 3.4.2에서 상술한 모자이크 미리 보기 크기 조정 기법들 중 어느 것과도 조합하여 이용될 수 있다는 것에 유의한다.
예를 들면, 도 8은 모자이크 미리 보기 이미지의 성장 및 카메라 뷰파인더의 현 내용 창의 대응하는 축소 및 매핑의 개념들을 예시한다. 특히, 도 8은 파노라마 뷰파인더가 구현되는 디스플레이 장치의 4개의 그림들의 시퀀스를 제공한다. 도 8의 이미지 (A)에서 예시된 바와 같이, 씬(810)의 제1 캡처된 이미지는 본질적으로 LCD 디스플레이 화면(800)의 전체를 채우는 것으로 표시되어 있다. 다음으로, 이미지 (B)에서 예시된 바와 같이, 제2 이미지(811)가 캡처되자마자 LCD 디스플레이(800)의 내용은 몇몇 점에서 변화한다. 우선, 카메라가 모자이크를 위한 제2(또는 후속) 이미지(811)를 캡처하자마자, 그 새로운 이미지를 기존의(또는 새로운) 모자이크로 스티칭함으로써 모자이크 미리 보기 이미지(820)가 생성된다. 적색 윤곽선에 의해 예시된 바와 같이, 이미지 (B)에서 현 내용 창(811)에 캡처된 이미지(811)의 크기는 이미지 (A)에서 대응하는 이미지(810)보다 약간 작다는 것에 유의한다.
다음으로, 도 8의 이미지 (C) 및 (D)에서 예시된 바와 같이, 모자이크 이미 지(820)는 대응하는 현 내용 창들에서 추가 이미지들(812 및 813)이 캡처되면서 계속해서 성장한다. 또한, 모자이크 미리 보기에 대한 오버레이로서 표시된 옵션인 자르기 프레임(830)도 계속해서 성장한다. 반대로, 이들 이미지들 각각에서, 현 내용 창(812 및 813)의 크기는 전체 모자이크 미리 보기 이미지(820) 내의 그것의 매핑된 위치에 대하여 계속해서 축소한다.
또한, 모자이크가 성장할 때, 전형적으로 성장하는 모자이크 내로의 이미지들의 스티칭을 달성하기 위해 이미지들을 워핑할 필요가 있다. 이 워핑은 전형적으로 다양한 이미지들을 캡처하기 위해 이용되는 상이한 카메라 앵글들 및 퍼스펙티브들(perspectives)을 설명(account for)하기 위해 필요하다. 따라서, 도 8의 이미지들의 진행에서 예시된 바와 같이, 현 내용 창의 이미지들의 워핑(810에서 811로 812로, 그리고 최종적으로 813으로 진행)은 점점 더 비직사각형이 되는 현 내용 창에 의해 예시되어 있다. 흥미롭게도, 8의 이미지들, 모자이크 미리 보기(820)의 구성을 위해 캡처된 이미지들(810, 811, 812, 및 813)의 진행은 어떤 특정한 순서 또는 방향으로 캡처되지 않았다는 것에 유의한다. 사용자에게 특정 방향, 중첩, 또는 배향으로 이미지들을 캡처할 것으로 요구하지 않고, 파노라마 뷰파인더는 단순히 이들 이미지들의 적당한 위치, 크기 조정, 및 워핑을 식별하였고 그들을 전체 모자이크 내로 스티칭하였다.
도 8의 이미지 (D)의 자르기 프레임(830) 및 모자이크 미리 보기(820)에 기초하여 생성된 잘려진 최종 모자이크 파노라마는 도 9에 예시되어 있다. 또한, 도 8의 이미지 (D)의 모자이크 미리 보기를 포함하는 다양한 스티칭된 이미지들은 다 양한 밝기 레벨을 나타내지만, 도 9에 예시된 최종 모자이크 파노라마는 이들 이미지들을 전체 파노라마의 단 하나의 일관된 뷰로 이음매 없이(seamlessly) 블렌딩하였다는 것에 유의해야 할 것이다.
도 10A는 도 8에 관하여 설명한 예와 유사하게 모자이크 미리 보기 이미지의 성장 및 카메라 뷰파인더의 현 내용 창의 대응하는 축소 및 매핑의 개념들의 다른 예를 예시한다. 그러나, 도 8의 이미지들과 달리, 도 10A에 제공된 12개의 이미지들(이미지 (A) 내지 이미지 (I))의 시퀀스는 카메라 뷰파인더의 현 내용 창이 고정된 직사각형 형상(고정 크기는 아님)임을 보여준다. 이 실시예에서, 현 내용 창은 모자이크의 미리 보기 자체가 직사각형 현 내용 창의 주위로 워핑하는 동안 그것의 직사각형 형상을 유지한다.
도 8에서와 같이, 도 10A에 제공된 이미지들의 시퀀스는 일반적으로 모자이크 미리 보기 이미지의 구성, 성장, 및 크기 조정 및 현 내용 창의 대응하는 매핑 및 크기 조정을 보여준다. 옵션인 자르기 프레임은 이 이미지들의 시퀀스에서는 표시되어 있지 않다는 것에 유의한다. 다시, 도 8의 시퀀스에서와 같이, 도 10A에 도시된 모자이크 미리 보기의 구성을 위해 캡처된 이미지들은 어떤 특정 순서 또는 방향으로 캡처되지 않았다. 사용자에게 특정 방향, 중첩, 또는 배향으로 이미지들을 캡처할 것으로 요구하지 않고, 파노라마 뷰파인더는 단순히 이들 이미지들의 적당한 위치, 크기 조정, 및 워핑을 식별하였고 그들을 전체 모자이크 내로 스티칭하였다.
3.4.4 자르기 프레임:
위에서 언급한 바와 같이, 옵션인 "자르기 프레임(cropping frame)"은 단순히 직사각형 영역의 자동 자르기에서 살아남을 모자이크 미리 보기의 부분을 나타내기 위해 모자이크 미리 보기 내에서 강조되는 직사각형 영역이다. 자르기 프레임의 범위는 모자이크 미리 보기를 분석하여 가장자리들 중 임의의 것을 따라서도 어떤 갭도 갖지 않고 모자이크 미리 보기로부터 추출될 수 있는 가장 큰 연속 직사각형 섹션을 결정함으로써 결정된다. 또한, 이 자르기 프레임은 임의의 새로운 이미지들이 모자이크 미리 보기 내에 스티칭될 때마다 자동으로 이동하고, 크기 조정되고, 기존의 모자이크 미리 보기 이미지로부터 잘릴 수 있는 가장 큰 가능한 직사각형 크기로 (X축 및 Y축 둘 다에서) 조정된다는 점에서 동적이다. 일 실시예에서는, 자르기 프레임의 범위에 영향을 미치지 않고 모자이크의 내부의 갭들이 허용된다는 것에 유의한다. 그러나, (섹션 3.4.5에서 더 설명되는) 일 실시예에서는, 사용자은 그러한 갭들에 대하여 자동으로 경고를 받는다.
자르기에서 살아남을 내용을 강조하기 위해 자르기 프레임을 이용하는 다수의 방법들이 있다. 예를 들면, 일 실시예에서, 자르기 프레임은 자르기 프레임의 내부 영역 외부의 모자이크 미리 보기의 부분들을 디엠퍼사이즈함으로써 가시적인 선들을 갖거나 또는 갖지 않고 구현된다. 다른 실시예에서 자르기 프레임은 "행진하는 개미들(marching ants)" 유형의 직사각형 프레임을 이용하여 구현되고, 여기서는 모자이크 미리 보기의 부분의 직사각형 선택을 지시하기 위해 애니메이트된 점선 마키(animated dotted-line marquee)가 이용된다. 이러한 유형의 자르기 프 레임을 이용하는 것의 하나의 이점은 다수의 사용자들이 종래의 행진하는 개미 유형의 선택 지시자들과 같은 애니메이트된 점선 기법들을 이용한 이미지들에서의 개체 선택에 친숙하다는 점이다. 또한, 디엠퍼시스 및 선들(고정되거나 애니메이트된) 둘 다는 자르기 프레임의 범위를 지시하기 위해 조합하여 이용될 수도 있다.
예를 들면, 도 10B에 예시된 바와 같이, 자르기 프레임들의 사용은 자르기 프레임의 경계 외부의 영역들의 디엠퍼시스와 함께 사용될 수 있다. 특히, 도 10B는 도 10A로부터의 이미지들 중 4개의 서브세트(이미지 (G), (H), (I) 및 (J))를 예시한다. 그러나, 도 10A에 제공된 이미지들에서는 자르기 프레임(1020)이 오프되었지만, 도 10B의 이미지들에서는 온되었다. 또한, 도 10B는 자르기 프레임(1020) 외부의 모자이크 미리 보기(1010)의 영역들이 모자이크 미리 보기의 그 영역들의 밝기 또는 광도를 감소시킴으로써 디엠퍼사이즈되어 있음을 보여준다. 또한, 다른 실시예에서는, 도 10B에 의해서도 예시된 바와 같이, 현 내용 창(1030) 내의 내용(또는 내용의 일부)도 현 내용 창의 매핑된 위치가 자르기 프레임(1020) 외부에 있으면 디엠퍼사이즈된다.
테스트된 실시예에서, 자르기 프레임 외부의 영역, 즉, 버려질 영역은 밝기와 대비를 약 57% 정도 감소시킴으로써 디엠퍼사이즈되었다. 즉, 블랙은 블랙으로 매핑되고, 화이트는 57% 그레이(= 0-255 스케일에서 147)로 매핑된다. 또한, 관련 실시예에서, 디엠퍼시스는, 예컨대, 밝은 햇빛에서 LCD 디스플레이의 보다 양호한 가시도를 가능케 하기 위해, 또는 단순히 사용자 선호의 문제로서, 사용자에 의해 수동으로 오프될 수 있다. 자르기 프레임 자체는 테스트된 실시예에서 영향을 받 은 픽셀들의 광도를 광도 = (광도 + 128) % 256으로서 계산된, 128만큼 오프셋함으로써 렌더링되었다. 이것은 "개미들(ants)"이 밝은 배경에서는 더 어둡고, 어두운 배경에서는 더 밝고, 50% 광도에서 갑자기 밝기를 변화시킨다는 것을 의미한다.
그러나, 카메라 뷰파인더(현 내용 창)의 판독성은 특히 중요한데, 그 이유는 사용자들은 씬 요소들을 찾아내고 프레임들이 정확히 촬영되었음을 검증하기 위해 그 판독성에 의지하기 때문이다. 따라서, 그 판독성을 보증하기 위하여, 일 실시에에서, 현 내용 창은 부분적으로 또는 완전히 자르기 프레임 외부에 위치하더라도 결코 디엠퍼사이즈되지 않는다. 그러나, 관련 실시예에서는, 자르기 프레임을 일관되게 유지하고, 다음 프레임이 성장하는 모자이크 내의 어디에 맞추어질지를 사용자에게 보여주기 위하여 자르기 프레임의 "행진하는 개미들" 비주얼이 현 내용 창 상에 오버레이로서 여전히 보여진다.
또한, 자르기 프레임은 결코 모자이크 미리 보기의 가장자리와 교차하지 않지만(그러한 교차는 결과의 파노라마에 갭들 또는 결함들을 초래할 것이므로), 연장된 스트리크(streaks) 상에서 그 가장자리와 일치(coincide)하는 경향이 있다. 이 경우, 자르기 프레임의 행진하는 개미들만 렌더링되고, 모자이크 미리 보기 주위의 어떤 실선 경계(solid border)도 그 위치에서 렌더링되지 않을 것이다. 이러한 접근법의 하나의 이점은, 예컨대, 자르기 프레임을 소수의 픽셀만큼 축소하거나 또는 자르기 프레임의 모서리들을 둥글게 함으로써 그 가장자리와 자르기 프레임을 분리하려는 시도들보다 시간적 간섭이 더 적은 경향이 있다는 정이다.
마지막으로, 자르기 프레임이 변화하는 경우(추가 이미지들의 스티칭의 결과 로), 한 단계 성장하거나 또는 형상을 변경함으로써, 즉시 새로운 형상을 지닌다. 슬로우-인 슬로우-아웃(slow-in slow-out) 유형 애니메이션의 사용이 일 실시예에서 구현되었지만, 그러한 애니메이션은 파노라마 뷰파인더의 명백한 반응성을 감소시키는 것으로 관찰되었다.
테스트된 실시예에서, 파노라마 뷰파인더 밑에 있는 사용자 인터페이스는 사용자가 결과의 파노라마의 범위를 즉시 알 수 있도록 신속히 자르기 프레임을 업데이트하는 그것의 능력에 크게 의지하기 때문에 자르기 프레임은 실시간으로 계산될 수 있다. 다음의 논의는 자르기 프레임의 실시간 계산을 제공하는 데 이용되는 기법을 설명한다.
특히, 일 실시예에서, 파노라마 뷰파인더의 스티칭 알고리즘은 알파 매트 합성 비트맵 이미지(alpha-matted composite bitmap image)로서 파노라마를 출력한다. 자르기 프레임의 크기를 정하고(size) 위치시키기 위하여, 시스템은 완전히 불투명한 픽셀들만을 포함하는 가장 큰 내부 직사각형을 계산한다. 임의 형상의 다각형에서 가장 큰 내접 직사각형(largest inscribed rectangle)을 계산하는 문제는 계산 기하학 커뮤니티에서 연구되었다. 그러나, 종래의 기법들은 기하학이 다각형으로 기술될 것을 요구하고, 이는 내부 투명 영역들(예컨대 추가 이미지들을 캡처함으로써 채워질 필요가 있는 모자이크 내의 갭 등)을 수반하는 케이스들을 커버하지 못한다. 또한, (입력 이미지들을 파노라마 내로 매핑하기 위해 그 이미지들을 워핑한 결과로 생기는) 파노라마의 둥글게 된 윤곽선들을 다각형으로 변환하는 것은 계산적으로 비용이 많이 들 수 있다. 따라서, 이 테스트된 실시예에서, 자르기 프레임의 계산은 파노라마의 픽셀-기반 표현에 기초하여 수행된다.
예를 들면, 최상위 레벨에서, 자르기 프레임의 계산은 상부-좌측 및 하부-우측 모서리들의 모든 가능한 조합들을 테스트하고, 그에 의해 주어진 영역 내에서 내접될 수 있는 모든 가능한 테스트하는 것으로 진행된다. 이 기법은 이동하는 상부 경계보다 낮은 기대 면적들을 갖는 박스들의 상부 좌측 모서리들을 제거하고 또한 하부 우측 모서리들에 대한 검색을 가능한 후보들의 선형 수(linear number)로 제한함으로써 실시간 성능을 획득한다.
이렇게 함으로써, 자르기 프레임을 결정하는 계산적인 복잡도는 대략 O(n2)의 복잡도를 갖고, 여기서 n은 실시간 사용을 위해 적합한 그림의 폭이다. 이 프로세스에서의 상세 단계들을 아래에서 설명한다:
단계 1 - 다운-샘플링: 보다 고속의 성능을 위하여, 자르기 프레임의 계산은 다운-샘플링되는 파노라마 비트맵의 버전을 생성하는 것으로 시작된다. 테스트된 실시예에서, 비트맵은 4의 인수로 다운샘플링되었다. 그러나, 이용 가능한 계산 처리 능력에 따라서, 다른 다운샘플링 인수들이 이용될 수도 있다. 그 후 이 다운샘플링된 비트맵의 버전에 대하여 모든 후속 계산들이 행해진다.
단계 2 - 스팬 길이의 사전-계산: 직사각형 표면들을 계산할 때, 스팬들의 길이에 관한 정보가 이용된다. 동일한 스팬 정보가 반복하여 이용되므로, 그것은 후술하는 바와 같이 캐싱된다. 먼저, 설명을 위하여, 2개의 어레이들이 생성되는데, 제1 어레이는 "폭 이미지"라 불릴 것이고, 제2 이미지는 "높이 이미지"라 불릴 것이다. 각 픽셀에 대하여, 폭 이미지는 이 픽셀의 우측으로 수평 스팬의 길이를 저장하고, 높이 이미지는 이 픽셀 아래로 수직 스팬의 길이를 저장한다. 양자는 파노라마를 최종 행으로부터 제1 행으로 이들 행들 각각을 최종 열로부터 제1 열로 횡단함으로써 동시에 생성된다. 각 스팬 값은 그것의 우측 또는 하부 이웃에 기초하여 생성되므로, 이 단계는 O(n2) 동작들을 필요로 한다.
단계 3 - 직사각형 표면 계산: 다음으로, 자르기 프레임의 계산은 최대 내부 직사각형을 검색하는 것으로 계속된다. 이 검색은 발견된 최대 직사각형을 면적 0으로 초기화하는 것으로 시작된다. 그 후 그것은 이미지를 위에서 아래로 그리고 좌측에서 우측으로 횡단한다.
(a) 각 픽셀 위치에서 상부-좌측 모서리가 그 픽셀 위치에 있는 최대 가능한 직사각형의 크기에 대한 상부 경계가 계산된다. 상부 경계는 수평 스팬과 수직 스팬의 곱으로서 계산되고, 양자는 폭 이미지 및 높이 이미지 어레이들에서 조회된다.
(b) 만일 상부 경계가 현재의 최선(최대)보다 작다면, 이 픽셀은 추구되는 직사각형의 상부-좌측 모서리가 될 수 없고 다음 픽셀이 평가된다.
(c) 만일 상부 경계가 현재의 최선보다 크다면, 이 특징 상부-좌측 모서리를 갖는 진정한 최대 직사각형이 계산된다. 그를 위하여, 계산은 최대 직사각형 표면으로 귀결되는 하부 좌측 모서리를 찾아서 폭 이미지 어레이의 현재의 열 아래로 횡단함으로써 진행한다. 이 횡단 중에, 임의의 하부 좌측 모서리에 의해 생성된 최대 직사각형이 식별된다. 이 계산은 또한 횡단되고 있는 열에서 지금까지 발견된 최단 수평 스팬의 길이를 계속 추적한다(keep track of). 주어진 하부 좌측 모서리를 갖는 직사각형의 폭은 위에서 발견된 최단 스팬이다.
그 열의 각 픽셀에 대하여, 곱 또는 그 폭 곱하기 상부 좌측 모서리로부터의 그것의 거리로서 그것의 하부 우측 모서리로서 각각의 픽셀을 갖는 직사각형의 표면이 계산된다. 최선(최대) 값은 모든 픽셀들이 횡단될 때까지 업데이트된다.
최악의 경우, 위에서 설명된 단계 3은 O(n3) 동작들을 행한다. 그러나 일찍 종결하는 그 능력으로 인해, 실제로는 그것은 O(n2)에 더 가깝고 실시간 필요 조건에 적합하다는 것이 관찰되었다. 흥미롭게도, 성능 분석에 의하면 위에서 설명된 계산 기법이 단계 1에서 그 시간의 80%를 소비하는 것을 나타낸다. 따라서, 일 실시예에서, 위에서 설명된 자르기 프레임 계산 프로세스는, 각 새로운 이미지의 전체 어레이를 다시 계산하기보다는, 새로운 입력 이미지들이 성장하는 파노라마에 추가될 때 폭 이미지 및 높이 이미지 어레이들을 반복 계산함으로써 더욱 최적화된다. 그 결과, 최대 자르기 프레임을 계산하기 위하여 단계 1에 소비되는 계산 부담이 감소된다.
3.4.5 모자이크 내의 문제점들을 사용자에게 경고:
위에서 언급한 바와 같이, 파노라마 뷰파인더의 사용자 인터페이스는 또한 스티칭된 모자이크에서 식별된 특정 문제점들에 관한 시각적 경계, 경고, 또는 지 시를 포함한다. 예를 들면, 파노라마를 위한 이미지들을 촬영하는 동안 몇 가지 문제점들이 발생할 수 있다. 예컨대, 스티칭 알고리즘이 카메라 뷰파인더의 트랙을 상실할 수 있고(따라서 그 알고리즘은 그 시간에 캡처된 이미지를 스티칭할 수 없을 것이다); 고스팅 또는 포커스 문제와 같은 결함이 검출될 수 있고; 또는 자르기 프레임의 내부 내의 갭 또는 다른 결함이 검출될 수 있다. 실시간 진행중 스티칭(real-time on-the-fly stitching)을 디지털 카메라에 연결된 사용자 인터페이스와 결합하는 것의 중요한 이점들 중 하나는 파노라마 뷰파인더가 이들 문제점들에 관하여 사용자에게 즉시 알릴 수 있고 상호 작용하여 그것들을 해결하도록 도울 수 있다는 점이다.
예를 들면, 파노라마 뷰파인더가 모자이크에서, 씬의 분실된 영역, 고스팅 문제, 성공적인 스티칭 및 블렌딩을 위한 불충분한 중첩 등의 결함을 식별할 경우, 하나의 접근법은 단순히 그 문제 영역들을 피하기 위해 자르기 프레임을 축소시키는 것이다. 그러나, 전형적으로 사용자가 넓은 영역에 걸쳐서 그림들을 캡처하고 있다면, 사용자는 아마도 큰 파노라마를 캡처하기를 원한다고 가정하는 것이 안전하다. 따라서, 일 실시예에서, 식별된 결함이 자르기 프레임의 경계와 교차하지 않는 경우에, 파노라마 뷰파인더는 일관되지만 비교적 작은 모자이크보다는 식별된 결함을 갖는 큰 모자이크 그림을 촬영할 것이라고 가정한다.
그 결과, 파노라마 뷰파인더는 자르기 프레임이 결함 위로 성장하게 한다. 그러나, 사용자가 너무 늦기 전에 결함을 정정하게 하기 위하여, 그 결함에 대하여 사용자의 주의를 환기시키기 위하여 결함은 애니메이트된 패턴 및/또는 텍스트 경 고로 강조된다. 그 후 사용자는 단순히 그 영역 위로 카메라 뷰파인더를 패닝하여, 필요한 대로, 하나 이상의 그림들을 재촬영함으로써, 분실되거나 결함이 있는 자료를 채워넣고, 그 후에 문제가 정정될 때 경고를 제거할 수 있다. 이미지들을 재촬영하거나 문제가 있는 것으로 식별된 영역 "위로 브러싱(brushing over)"할 때, 파노라마 뷰파인더는 임의의 중복 이미지 정보를 분석할 것이고 파노라마에서 결함을 정정할 때 그 중복 정보로부터 최선의 내용을 자동으로 선택할 것이라는 점에 유의한다.
고스팅에 관해서는, 파노라마가 촬영되는 동안 씬 요소들이 이동하면, 프레임들을 가로질러 물체들이 불연속하게 보일 수 있다(즉, "고스팅"). 파노라마 뷰파인더의 스티칭 알고리즘은 매칭된 프레임들의 2개의 중첩하는 버전들 간의 차이에 기초하여 고스팅을 검출한다. 만일 파노라마 뷰파인더가 "고스팅"을 검출하면 그것은 고스팅된 영역을 밝은 적색 직사각형으로 커버하거나, 또는 다른 경고 또는 아이콘에 의해 고스팅된 영역을 표시하거나 다른 식으로 강조한다. 그 후, 사용자가 다시 그 영역 위를 브러싱하여 고스팅을 수정하면 고스팅 경고는 사라진다.
위에서 언급한 바와 같이, 이미지 모자이크들을 구성할 때 발생할 수 있는 또 다른 잠재적인 문제점은, 몇 가지 이유들 중 어떤 이유로, 스티칭 알고리즘들이 때때로 전체 모자이크 내의 어디로 이미지가 맞추어져야 할지의 트랙을 상실한다는 것이다. 따라서 사용자에게 제공되는 다른 경고는 "스티칭 실패(stitching failure)" 또는 "트랙 상실(lost track)" 유형의 경고이다.
특히, 일 실시예에서는, 스티칭 알고리즘이 실패하여, 프레임을 파노라마의 나머지에 연결할 수 없게 될 때, 사용자에게 경고된다. 실시간 스티칭의 경우에 스티칭될 프레임은 항상 뷰파인더 내용이므로, 스티칭할 수 없다는 것은 항상 또한 시스템이 카메라가 전체 모자이크에 대하여 어디를 보고 있는지의 트랙을 상실했다는 것을 의미한다. 이러한 일이 발생할 경우, 파노라마 뷰파인더는 계속해서 뷰파인더 내용을 보여주지만, 그 이미지를 모자이크 내의 어디에 맞출지를 알지 못한다. 상실되었을 때, 파노라마 뷰파인더의 스티칭 알고리즘은 그것이 뷰파인더를 통하여 보는 것을 모자이크에 매칭하려고 계속해서 시도하고, 또한 사용자에게 그 문제에 대하여 경고하여 사용자가 파노라마 뷰파인더의 스티칭 알고리즘이 트랙을 되찾도록 도울 수 있게 한다.
예를 들면, 도 12에 의해 예시된 바와 같이, 상실되었을 때, 파노라마 뷰파인더는 전체 모자이크 미리 보기(1210)의 옵션인 자르기 프레임(1220)을 계속해서 표시하고, 또한, 화면 상의 오류 메시지(1230)를 통하여, 예를 들어, "트랙 상실. 다시 연결하려면, 카메라를 이미 캡처된 영역에 향하게 하시오"라고 하는 텍스트 메시지 등을 통하여, 스티칭 단절 문제를 사용자에게 알려준다. 그와 동시에, 뷰파인더의 프레임은 사용자에게 문제점에 대하여 경고하도록 변경된다. 그러한 경고의 일례는 카메라 뷰파인더의 현 내용 창(1240) 주위의 윤곽선의 크기를 증가시키고 또한 옵션으로 문제점을 지시하기 위해 추가적인 애니메이트된(animated) 또는 논-애니메이트된(non-animated) 아이콘들을 추가하는 것이다(예컨대, 도 12에 도시된 번개 볼트(lightning volt), 또는 어떤 다른 아이콘 또는 지시자 등). 또한, 현 내용 창은 더 이상 모자이크에 매핑될 수 없으므로, 그것은 스티칭 알고리 즘을 다시 연결하는 데 가장 도움을 줄 것 같은 영역, 즉 최종 프레임을 방해하지 않도록 최종 캡처된 (그리고 성공적으로 스티칭된) 프레임으로부터 가능한 한 멀리 있는 위치로 이동된다.
또한, 일 실시예에서, 파노라마 뷰파인더는 사용자에게 동일한 오류가 재발하는 것을 방지하는 방법을 알려주려고 시도한다. 따라서, 사용자에게 제공되는 특정한 오류 메시지는 트랙을 상실한 이유에 대한 스티칭 알고리즘의 가설에 의존한다. 예를 들어, 만일 처음 매칭되지 않은 프레임이 매우 적은 텍스처를 포함한다면(즉, 맑은 푸른 하늘), 스티칭 알고리즘은 이 텍스처의 부족이 트랙 상실의 원인이 되었다고 의심할 것이다. 이것은 그 영역에서 반복하여 계속 트랙을 상실할 것임을 시사하므로, "영역이 매칭되기에는 너무 적은 텍스처를 갖고 있다. 추가 이미지들을 캡처하기 전에 줌 아웃(zooming out)을 시도하라"와 유사한 어떤 것을 기술하는 문제 특정 조언이 표시된다. 줌 아웃은 스티칭 알고리즘을 도울 것 같다. 그것은 저 텍스처 영역 내로 다시 이동할 때 먼 거리의 랜드마크를 포함할 가능성을 증가시킬 것이기 때문이다. 다시, 파노라마 뷰파인더의 스티칭 알고리즘은 이미지들을 파노라마 내로 스티칭하기 위해 이미지들을 크기 조정 및 워핑할 수 있다는 것에 유의해야 할 것이다. 따라서, 줌 아웃하여 이미지들을 캡처하는 것은 모자이크를 구성하는 데 문제를 일으키지 않을 것이다(비록 줌 아웃된 영역들의 해상도는 주밍되지 않은 영역들의 해상도에 대하여 다소 감소될 수 있지만).
대안적으로, 만일 프레임이 충분한 텍스처를 갖고 있지 않다면, 프레임들 간의 너무 적은 중첩이 트랙 상실에 대한 가장 유망한 이유이다. 이 경우, 파노라마 뷰파인더는 다시 "다시 시도하라, 그러나 카메라를 더 천천히 이동하거나, 또는 보다 큰 이미지 중첩 영역을 제공하라"와 유사한 어떤 것을 제안함으로써 문제 특정 조언을 제공할 것이다. 사용자가 카메라를 패닝하면서 자동으로 그림들을 촬영할 때, 파노라마 뷰파인더는 사용자의 패닝 속도를 계속적으로 모니터한다. 관련 실시예에서, 사용자가 너무 빨리 이동하여 프레임들 간의 중첩이 어떤 소정의 임계값 아래로 떨어질 때마다, 파노라마 뷰파인더는 사용자에게 패닝 속도가 최대 허용 가능한 속도를 초과하였음을 경고할 것이다. 그 후 파노라마 뷰파인더는 사용자에게 패닝 속도를 감소시키거나, 또는 현재의 패닝 속도를 초과하지 않도록 경고할 것이다. 다른 관련 실시예에서는, 사용자들에게 (현 프레임 레이트에서의 이미지들 간의 측정된 중첩의 함수로서 계산된) 최고 가능한 패닝 속도에 관련하여 속도를 보여주기 위해 동적인 "속도 게이지(speed gauge)" 등이 이용된다. 그 결과, 사용자는 그들이 패닝 속도를 올려야 할지 내려야 할지를 즉시 판정할 수 있다.
3.5 파노라마 뷰파이더와의 사용자 상호작용:
위에서 언급한 바와 같이, 파노라마 뷰파인더의 이점들 중 하나는 파노라마 뷰파인더와의 사용자 상호작용이 대부분의 디지털 카메라 사용자들이 이미 친숙해 있는 것과 매우 유사하다는 점이다. 예를 들면, 종래의 디지털 카메라의 컨트롤들은 일반적으로 모드 셀렉터(mode selector)와 셔터 버튼을 포함한다. 가장 단순한 실시예에서, 여기에 기술된 파노라마 뷰파인더는 자동 촬영 모드(사용자가 카메라를 패닝할 때)를 제공하고 또한 사용자에게 자르기 프레임의 범위를 식별하거나 한 정하도록 요구하기보다는 자르기 프레임을 파노라마에 종속시켜 작동시킴으로써 그와 동일한 기본적인 컨트롤들을 제공하였다.
또한, 상술한 바와 같이, 사용자들은 자르기 프레임을 간접적으로 제어한다. 즉, 사용자들은 단순히 더 많은 그림들을 촬영함으로써 자르기 프레임을 확장한다. 그러나, 일 실시예에서, 자르기 프레임의 크기를 감소시키기 위한 카메라 제어는 사용자가 의도된 것보다 더 많은 이미지들, 또는 더 큰 파노라마를 캡처한 경우에 제공된다. 이 경우, 최종 파노라마에 대한 원하는 커버리지(coverage)를 달성하기 위해 자르기 프레임을 수평 및/또는 수직으로 축소하기 위한 컨트롤들이 사용자에 제공된다. 그러나, 어떤 점에서, 그러한 컨트롤은 사용자가 항상 단순히 파노라마 뷰파인더에 의해 생성된 임의의 파노라마들의 사후 프로세싱을 이용하여 임의의 원하는 크기로 파노라마 이미지를 자를 수 있다는 점에서 중복되는 것으로 간주될 수 있다.
3.7 파노라마 뷰파인더의 추가 실시예들 :
위에서 언급한 바와 같이, 파노라마 뷰파인더의 다양한 실시예들은, 예를 들어, 중복 이미지 내용을 자동으로 삭제함으로써 저장 요건을 감소시키고, (이미지들이 캡처되는 동안에 실시간 미리 보기 스티칭이 사용자에게 제공되어) 최종 오프라인 이미지 스티칭을 수행함으로써 저장 요건을 감소시키는 성능; 및 이미지들이 캡처될 때 트리거하는 다양한 방법 등과 같은 추가 성능을 포함한다.
이들 다양한 추가 실시예들이 주어지면, 추가 이미지들 또는 보다 큰 모자이 크들을 위하여 더 많은 저장 공간을 제공하기 위하여 사용자가 할 수 있는 또는 가능하게 할 수 있는 몇 가지 것들이 있다. 예를 들면, 아래는 사용자들이 실시간 및/또는 사후 동작들을 수행하도록 파노라마 뷰파인더를 구성할 수 있는 방법에 대한 몇 가지 옵션들이다.
1. 실시간으로 이미지들을 스티칭하고, 모자이크가 완전할 경우 자르기 프레임의 경계들에 대하여 모자이크를 자동 자르기하고, 원시 이미지들(raw images)을 버린다.
2. 실시간으로 이미지들을 스티칭하고, 자르거나 또는 자르지 않고, 그러나 원시 이미지들을 저장한다.
3. 예비 스티칭을 수행하고, 이미지들에 대한 공간적 관계 데이터를 저장하고, 원시 이미지들을 유지하고 저장된 공간 관계 정보를 이용하여 사후 스티칭을 수행하여 오프-라인 스티칭을 초기화한다.
3.7.1 중복 정보의 삭제에 의한 저장/메모리 감소:
위에서 언급한 바와 같이, 일 실시예에서, 추가 이미지들을 저장하기 위한 이용 가능한 메모리는 스티칭 및 이미지 중첩의 결과로 임의의 중복 정보가 식별되지마자 실시간으로 중복 이미지 정보를 삭제함으로써 자동으로 증가된다. 동작 시에, 이 실시예는 사용자에 의해 수동으로 사용 가능하거나 사용 불가하게 되거나, 또는 디지털 카메라 내의 남아 있는 저장 공간의 함수로서 자동으로 사용 가능하게 된다.
관련 실시예에서, 중복 이미지 정보는 단순히 전혀 기록되지 않는다. 특히, 위에서 언급한 바와 같이, 일 실시예에서는, 사용자가 파노라마의 생성을 위해 캡처될 씬 상에서 카메라를 패닝할 때 이미지들이 자동으로 캡처된다. 그러나, 특정 프레임 레이트에서 이미지들을 캡처하기보다는, 카메라가 씬 상에서 이동할 대 기존의 이미지 프레임과 새로운 이미지 프레임 간의 계산된 중첩의 함수로서 이미지들이 캡처된다. 또한, 일 실시예에서는, 이미 횡단된 영역 위를 "브러싱(brushing)"할 때, 파노라마 뷰파인더의 스티칭 알고리즘은 단지 다양한 파라미터들의 함수로서 2개의 패스들 중 더 나은 것을 유지한다. 그 파라미터들은, 예를 들면, 각 이미지가 기존의 모자이크에 얼마나 잘 매칭하는지와, 이미지들의 계산된 포커스와, 이미지들 중 어느 하나가 모자이크에 고스팅을 도입할지를 포함한다.
3.7.2 오프라인 스티칭을 이용한 저장/메모리 감소:
위에서 언급한 바와 같이, 저장 공간을 절약하는 또 다른 방법은 디지털 카메라의 잠재적으로 제한된 메모리 내에 스티칭된 파노라마를 저장하는 것을 피하기 위해 오프라인 스티칭을 수행하는 것이다. 이 실시예에서는, 1) 카메라 LCD 화면(또는 다른 디스플레이 장치) 상에 표시하기 위한 모자이크 미리 보기 이미지를 생성하고; 2) 예비적으로 스티칭되고 있는 이미지들 간의 공간적 관계를 결정하는 두 가지 일을 하기에 충분한 방식으로 예비 스티칭이 수행된다.
일단 이미지들의 상대적 위치들이 결정되면, 그 공간 정보는 단순히 수치 정보로서 저장되어 이미지들의 후속 오프라인 스티칭을 초기화하는 데 이용된다. 또 한, 이러한 이미지들 간의 공간적 관계의 결정과 함께, 이러한 노력의 일부로서 중첩의 양도 자연히 결정될 것이다. 따라서, 관련 실시예에서는, 추가 이미지들을 위한 더 많은 저장 공간들을 자유롭게 하기 위해 상술한 바와 같이, 중복 이미지 정보가 삭제된다.
파노라마 뷰파인더에 대한 전술한 설명은 예시와 설명을 목적으로 제공되었다. 그것은 빠짐없이 총망라하거나 발명을 개시된 것과 바로 그 형태로 제한하려는 것이 아니다. 상기 교시 내용에 비추어 많은 변경 및 변형이 가능하다. 또한, 전술한 대안 실시예들 중 임의의 것 또는 모두는 파노라마 뷰파인더의 추가적인 혼성 실시예들을 형성하기 위해 원하는 임의의 조합으로 이용될 수 있다는 것에 유의해야 할 것이다. 본 발명의 범위는 이 상세한 설명에 의해 제한되지 않고, 그보다는 여기에 부속된 청구항들에 의해 제한될 것이다.

Claims (20)

  1. 씬(scene)의 이미지들의 세트로부터 모자이크 이미지들을 자동으로 생성하는 카메라로서,
    상기 카메라에 의해 캡처된 이미지들로부터 모자이크 이미지의 실시간 생성을 수행하는 디바이스 - 상기 디바이스는 상기 이미지들이 임의의 미리 정해진 공간적 관계를 갖도록 요구하지 않고 모자이크 이미지의 실시간 생성을 수행함 - ;
    상기 모자이크 이미지를 표시하기 위한 디스플레이 화면; 및
    상기 카메라에 의해 아마도 캡처될 다음 이미지 프레임의 카메라 렌즈를 통한 현재의 뷰(view)를 보여주는 디스플레이 창 - 상기 디스플레이 창은 상기 디스플레이 화면 상에 표시되어 있는 싱기 모자이크 이미지 상의 대응하는 위치에 실시간으로 자동으로 매핑됨 -
    을 포함하는 카메라.
  2. 제1항에 있어서, 상기 모자이크 이미지에 자르기 프레임(cropping frame)을 매핑하는 디바이스를 더 포함하는 카메라.
  3. 제2항에 있어서, 상기 자르기 프레임은 상기 자르기 프레임의 임의의 경계를 따라서 이미지 데이터의 갭(gap)들을 허용하지 않고 상기 모자이크로부터 추출될 수 있는 가장 큰 가능한 연속 파노라마의 범위(extents)를 나타내는 카메라.
  4. 제1항에 있어서, 상기 모자이크 이미지 내의 결함들(flaws)에 관한 경고를 상기 디스플레이 장치 상에 자동으로 표시하는 디바이스를 더 포함하는 카메라.
  5. 제1항에 있어서, 사용자가 씬 상에서 상기 카메라를 패닝(pan)할 때 계산된 이미지 중첩의 함수로서 이미지 캡처를 자동으로 트리거하는 디바이스를 더 포함하는 카메라.
  6. 제1항에 있어서, 상기 모자이크 이미지의 실시간 생성 중에 상기 모자이크 이미지에 각 이미지가 추가될 때 중복(redundant) 이미지 정보를 자동으로 식별하여 삭제하는 디바이스를 더 포함하는 카메라.
  7. 제1항에 있어서, 상기 모자이크에 실시간으로 이미지들이 추가될 때 상기 디스플레이 장치의 범위에 맞도록 상기 모자이크 이미지를 자동으로 크기 조정(scaling)하는 디바이스를 더 포함하는 카메라.
  8. 제7항에 있어서, 상기 모자이크 이미지의 크기 조정의 함수로서 상기 모자이크 이미지에 매핑된 상기 디스플레이 창을 자동으로 크기 조정하는 디바이스를 더 포함하는 카메라.
  9. 제1항에 있어서, 상기 카메라 렌즈를 통한 상기 현재의 뷰를 보여주는 상기 디스플레이 창과 상기 디스플레이 화면 상에 표시되어 있는 상기 모자이크 이미지 간의 트래킹의 상실(a loss of tracking)에 관한 경고를 상기 디스플레이 장치 상에 자동으로 표시하는 디바이스를 더 포함하고, 상기 경고는 상기 디스플레이 창을 상기 모자이크 상의 대응하는 위치에 자동으로 매핑하기 위해 상기 트래킹을 다시 획득하기 위한 방법에 대한 제안(suggestions)을 포함하는 카메라.
  10. 실시간 모자이크 미리 보기 이미지들을 자동으로 생성하기 위한 컴퓨터 실행가능 명령들을 갖는 컴퓨터 판독가능 매체로서,
    상기 컴퓨터 실행가능 명령들은,
    입력 카메라로부터 씬의 복수의 입력 이미지들을 수신하는 것과;
    상기 입력 카메라로부터 각 이미지가 수신될 때 상기 입력 이미지들로부터 실시간으로 모자이크 이미지를 구성하고 상기 모자이크 이미지를 상기 입력 카메라에 연결된 디스플레이 장치 상에 표시하는 것과;
    상기 표시된 모자이크 이미지 상에 매핑된 오버레이(mapped overlay)로서 실시간으로 상기 입력 카메라의 현재의 뷰를 표시하는 것과;
    상기 모자이크 이미지 상에 매핑된 오버레이로서 자동으로 크기가 정해진 자르기 프레임(automatically sized cropping frame)을 표시하는 것 - 상기 자르기 프레임은 상기 모자이크 이미지의 자동 자르기(automatic cropping)에 이어서 남아 있을 상기 모자이크 이미지의 영역을 예시함 -
    을 포함하는 컴퓨터 판독가능 매체.
  11. 제10항에 있어서, 상기 모자이크 이미지 내의 결함들을 자동으로 검출하는 것과, 상기 디스플레이 장치를 통하여 자동 경고를 제공하는 것을 더 포함하고, 상기 경고는 식별된 결함의 유형에 특정한(specific) 것인 컴퓨터 판독가능 매체.
  12. 제10항에 있어서, 식별된 결함의 유형은,
    고스팅(ghosting) 관련 결함;
    이미지 갭(image gap) 관련 결함; 및
    상기 모자이크 이미지에 상기 입력 카메라의 상기 현재의 뷰를 매핑하는 것과 상기 모자이크 이미지를 구성하는 데 이용하기 위해 상기 모자이크 이미지에 상기 입력 이미지들 중 하나를 매핑하는 것 중 어느 하나에 관한 트래킹의 상실(loss of tracking) 결함 중 어느 하나를 포함하는 컴퓨터 판독가능 매체.
  13. 제10항에 있어서, 구성되는 상기 모자이크 이미지는 저충실도(low-fidelity) 미리 보기 이미지이고, 상기 저충실도 미리 보기 이미지를 구성하는 데 이용되는 상기 입력 이미지들 간의 공간적 관계 데이터에 관한 예비 이미지 스티칭 정보(preliminary image stitching information)가 저장되어 최종 모자이크 이미지를 구성하기 위해 상기 입력 이미지들의 사후 스티칭(post-hoc stitching)을 초기화하는 데 이용되는 컴퓨터 판독가능 매체.
  14. 제10항에 있어서, 상기 모자이크 이미지는 최종 모자이크 이미지이고, 상기 최종 모자이크 이미지를 구성하는 데 이용되는 상기 입력 이미지들은 상기 최종 모자이크 이미지에 각 이미지가 추가될 때 자동으로 폐기되는 컴퓨터 판독가능 매체.
  15. 제10항에 있어서, 상기 카메라가 씬 상에서 패닝될 때 계산된 이미지 중첩의 함수로서 상기 입력 카메라로부터의 이미지 캡처를 자동으로 트리거하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  16. 대화형 뷰파인더 디스플레이(interactive viewfinder display)를 통하여 모자이크 이미지들을 생성하는 시스템으로서,
    카메라 디바이스에 의해 이미지들이 캡처될 때 실시간으로 상기 카메라 디바이스로부터 컴퓨팅 장치로 복수의 입력 이미지들을 제공하는 것;
    상기 컴퓨팅 장치가 상기 카메라 디바이스로부터 각 이미지를 수신할 때 상기 입력 이미지들로부터 실시간으로 모자이크 이미지를 구성하는 것;
    상기 입력 이미지들로부터 실시간으로 상기 모자이크가 구성될 때 실시간으로 상기 컴퓨팅 장치에 연결된 디스플레이 장치 상에 상기 모자이크 이미지를 표시하는 것;
    상기 카메라 디바이스의 카메라 렌즈를 통한 현재의 뷰를 보여주는 뷰파인더 창(viewfinder window)을 표시하는 것 - 상기 뷰파인더 창은 상기 디스플레이 장치 상에 표시되어 있는 상기 모자이크 이미지 상의 대응하는 위치 내에 실시간으로 자동으로 매핑됨 - ; 및
    상기 모자이크 이미지 상에 매핑된 오버레이로서 자동으로 크기가 정해진 자르기 프레임을 표시하는 것 - 상기 자르기 프레임은 상기 모자이크 이미지의 자동 자르기에 이어서 남아 있을 상기 모자이크 이미지의 영역을 예시함 -
    을 포함하는 시스템.
  17. 제16항에 있어서, 상기 컴퓨팅 장치는 상기 카메라에 일체로 된(integral to the camera) 시스템.
  18. 제16항에 있어서, 상기 모자이크 이미지의 실시간 생성 중에 상기 모자이크 이미지에 각 이미지가 추가될 때 상기 입력 이미지들로부터 중복 이미지 정보를 자동으로 식별하여 삭제하는 것을 더 포함하는 시스템.
  19. 제16항에 있어서, 상기 모자이크 이미지는 360도 모자이크 이미지인 시스템.
  20. 제16항에 있어서, 상기 모자이크 이미지 내의 결함들을 자동으로 검출하는 것과, 상기 디스플레이 장치를 통하여 자동 경고를 제공하는 것을 더 포함하고, 상기 경고는 식별된 결함의 유형에 특정한 것인 시스템.
KR1020087002200A 2005-07-28 2008-01-28 파노라마 이미지에 대한 실시간 미리 보기 KR101343220B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/193,091 US7424218B2 (en) 2005-07-28 2005-07-28 Real-time preview for panoramic images
US11/193,091 2005-07-28
PCT/US2006/029348 WO2007016318A2 (en) 2005-07-28 2006-07-28 Real-time preview for panoramic images

Publications (2)

Publication Number Publication Date
KR20080028973A true KR20080028973A (ko) 2008-04-02
KR101343220B1 KR101343220B1 (ko) 2013-12-18

Family

ID=37694415

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087002200A KR101343220B1 (ko) 2005-07-28 2008-01-28 파노라마 이미지에 대한 실시간 미리 보기

Country Status (4)

Country Link
US (1) US7424218B2 (ko)
KR (1) KR101343220B1 (ko)
CN (1) CN101228477B (ko)
WO (1) WO2007016318A2 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8436930B2 (en) 2008-12-24 2013-05-07 Samsung Electronics Co., Ltd. Apparatus and method for capturing an image utilizing a guide image and live view image corresponding to the guide image
KR20140129631A (ko) * 2013-04-30 2014-11-07 삼성전자주식회사 휴대 단말기에서 이미지 데이터를 생성하는 장치 및 방법
KR20170040533A (ko) * 2015-10-05 2017-04-13 삼성전자주식회사 디스플레이장치 및 그 제어방법
KR20180046789A (ko) * 2016-10-28 2018-05-09 삼성전자주식회사 가이드를 출력하는 전자 장치 및 방법

Families Citing this family (317)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7813589B2 (en) * 2004-04-01 2010-10-12 Hewlett-Packard Development Company, L.P. System and method for blending images into a single image
US20080309817A1 (en) * 2004-05-07 2008-12-18 Micronas Usa, Inc. Combined scaling, filtering, and scan conversion
US7408590B2 (en) * 2004-05-07 2008-08-05 Micronas Usa, Inc. Combined scaling, filtering, and scan conversion
US7411628B2 (en) * 2004-05-07 2008-08-12 Micronas Usa, Inc. Method and system for scaling, filtering, scan conversion, panoramic scaling, YC adjustment, and color conversion in a display controller
US20070103544A1 (en) * 2004-08-26 2007-05-10 Naofumi Nakazawa Panorama image creation device and panorama image imaging device
EP1820159A1 (en) * 2004-11-12 2007-08-22 MOK3, Inc. Method for inter-scene transitions
TWI299463B (en) * 2005-04-13 2008-08-01 Via Tech Inc Method and device for dynamically displaying image by virtual plane coordinate conversion
CN101697572B (zh) * 2005-09-09 2012-02-22 佳能株式会社 摄像设备
US20070081081A1 (en) * 2005-10-07 2007-04-12 Cheng Brett A Automated multi-frame image capture for panorama stitching using motion sensor
JP2007159095A (ja) * 2005-11-14 2007-06-21 Olympus Imaging Corp 撮像装置
JP2007266667A (ja) * 2006-03-27 2007-10-11 Nec Electronics Corp カメラ付き携帯機器、その制御方法及びその撮影支援方法
SE532236C2 (sv) * 2006-07-19 2009-11-17 Scalado Ab Metod i samband med tagning av digitala bilder
US8189100B2 (en) * 2006-07-25 2012-05-29 Qualcomm Incorporated Mobile device with dual digital camera sensors and methods of using the same
US8135342B1 (en) 2006-09-15 2012-03-13 Harold Michael D System, method and apparatus for using a wireless cell phone device to create a desktop computer and media center
CA2669409C (en) * 2006-11-13 2019-09-17 Everyscape, Inc. Method for scripting inter-scene transitions
US8565552B2 (en) * 2006-11-14 2013-10-22 Codonics, Inc. Assembling multiple medical images into a single film image
US20080111831A1 (en) * 2006-11-15 2008-05-15 Jay Son Efficient Panoramic Image Generation
JP5168537B2 (ja) * 2007-05-16 2013-03-21 楽天株式会社 広告サーバ装置、広告表示方法、および広告サーバプログラム
DE102007029884A1 (de) * 2007-06-28 2009-01-15 Siemens Ag Verfahren und Einrichtung zum Erzeugen eines aus einer Mehrzahl von endoskopischen Einzelbildern zusammengesetztes Gesamtbildes von einer Innenoberfläche eines Körperhohlraums
US8009178B2 (en) * 2007-06-29 2011-08-30 Microsoft Corporation Augmenting images for panoramic display
EP2018049B1 (en) * 2007-07-18 2013-05-01 Samsung Electronics Co., Ltd. Method of assembling a panoramic image and camera therefor
US8068693B2 (en) * 2007-07-18 2011-11-29 Samsung Electronics Co., Ltd. Method for constructing a composite image
US8717412B2 (en) * 2007-07-18 2014-05-06 Samsung Electronics Co., Ltd. Panoramic image production
US20090042605A1 (en) * 2007-08-10 2009-02-12 Nokia Corporation Mobile communication terminal and mehtod therefore
US8073259B1 (en) * 2007-08-22 2011-12-06 Adobe Systems Incorporated Method and apparatus for image feature matching in automatic image stitching
KR101606655B1 (ko) 2007-09-24 2016-03-25 애플 인크. 전자 장치 내의 내장형 인증 시스템들
JP4932660B2 (ja) * 2007-10-05 2012-05-16 富士フイルム株式会社 画像記録装置及び画像記録方法
JP5144237B2 (ja) * 2007-12-05 2013-02-13 キヤノン株式会社 画像処理装置、その制御方法、プログラム
JP5092722B2 (ja) 2007-12-07 2012-12-05 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
US20090160936A1 (en) * 2007-12-21 2009-06-25 Mccormack Kenneth Methods and apparatus for operating a video camera assembly
US7805066B2 (en) * 2007-12-24 2010-09-28 Microsoft Corporation System for guided photography based on image capturing device rendered user recommendations according to embodiments
US8600120B2 (en) 2008-01-03 2013-12-03 Apple Inc. Personal computing device control using face detection and recognition
US20090232415A1 (en) * 2008-03-13 2009-09-17 Microsoft Corporation Platform for the production of seamless orthographic imagery
KR101423918B1 (ko) 2008-05-29 2014-07-28 삼성전자주식회사 피사체의 경계 영상을 표시하는 디지털 영상 처리장치 및그 제어방법
US20090300490A1 (en) * 2008-05-30 2009-12-03 Yahoo! Inc. System for displaying a position viewer for previewing the display of an advertisement
US8144232B2 (en) * 2008-07-03 2012-03-27 Sony Ericsson Mobile Communications Ab Camera system and method for picture sharing using geotagged pictures
US9307165B2 (en) * 2008-08-08 2016-04-05 Qualcomm Technologies, Inc. In-camera panorama image stitching assistance
US8554014B2 (en) * 2008-08-28 2013-10-08 Csr Technology Inc. Robust fast panorama stitching in mobile phones or cameras
JP4656216B2 (ja) * 2008-09-04 2011-03-23 ソニー株式会社 撮像装置、画像処理装置、画像処理方法、プログラム及び記録媒体
JP5202211B2 (ja) * 2008-09-25 2013-06-05 三洋電機株式会社 画像処理装置及び電子機器
JP4697289B2 (ja) 2008-11-05 2011-06-08 ソニー株式会社 撮像装置、撮像装置の表示制御方法
JP5096303B2 (ja) * 2008-12-12 2012-12-12 株式会社キーエンス 撮像装置
JP5096302B2 (ja) * 2008-12-12 2012-12-12 株式会社キーエンス 撮像装置
JP5154392B2 (ja) * 2008-12-12 2013-02-27 株式会社キーエンス 撮像装置
JP5218071B2 (ja) * 2009-01-07 2013-06-26 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
WO2010103527A2 (en) 2009-03-13 2010-09-16 Ramot At Tel-Aviv University Ltd. Imaging system and method for imaging objects with reduced image blur
CN101852979A (zh) * 2009-03-30 2010-10-06 鸿富锦精密工业(深圳)有限公司 全景相机
US20100265313A1 (en) * 2009-04-17 2010-10-21 Sony Corporation In-camera generation of high quality composite panoramic images
US9300834B2 (en) 2009-05-20 2016-03-29 Dacuda Ag Image processing for handheld scanner
US8582182B2 (en) * 2009-05-20 2013-11-12 Dacuda Ag Automatic sizing of images acquired by a handheld scanner
US8441695B2 (en) 2009-05-20 2013-05-14 Dacuda Ag Handheld scanner with high image quality
US8441696B2 (en) 2009-05-20 2013-05-14 Dacuda Ag Continuous scanning with a handheld scanner
US8339467B2 (en) * 2010-03-25 2012-12-25 Dacuda Ag Synchronization of navigation and image information for handheld scanner
CN101577795A (zh) * 2009-06-17 2009-11-11 深圳华为通信技术有限公司 一种实现全景图像的实时预览的方法和装置
JP2011035752A (ja) * 2009-08-04 2011-02-17 Olympus Corp 撮像装置
US8947502B2 (en) 2011-04-06 2015-02-03 Qualcomm Technologies, Inc. In camera implementation of selecting and stitching frames for panoramic imagery
US20110050723A1 (en) * 2009-09-03 2011-03-03 Sony Corporation Image processing apparatus and method, and program
US9792012B2 (en) 2009-10-01 2017-10-17 Mobile Imaging In Sweden Ab Method relating to digital images
JP5359762B2 (ja) * 2009-10-15 2013-12-04 ソニー株式会社 情報処理装置、表示制御方法及び表示制御プログラム
EP2323102A1 (en) * 2009-10-23 2011-05-18 ST-Ericsson (France) SAS Image capturing aid
KR101631912B1 (ko) * 2009-11-03 2016-06-20 엘지전자 주식회사 이동 단말기 및 그 제어 방법
SG171494A1 (en) * 2009-12-01 2011-06-29 Creative Tech Ltd A method for showcasing a built-up structure and an apparatus enabling the aforementioned method
US20110141226A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama imaging based on a lo-res map
US8294748B2 (en) * 2009-12-11 2012-10-23 DigitalOptics Corporation Europe Limited Panorama imaging using a blending map
US20110141224A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama Imaging Using Lo-Res Images
US10080006B2 (en) * 2009-12-11 2018-09-18 Fotonation Limited Stereoscopic (3D) panorama creation on handheld device
US20110141225A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama Imaging Based on Low-Res Images
US20110141229A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama imaging using super-resolution
US9766089B2 (en) * 2009-12-14 2017-09-19 Nokia Technologies Oy Method and apparatus for correlating and navigating between a live image and a prerecorded panoramic image
JP2013518529A (ja) * 2010-01-28 2013-05-20 パスウェイ イノベーションズ アンド テクノロジーズ インク カメラ・スキャナ装置およびパーソナル・コンピュータ・ベースの処理ソフトウェアを有するドキュメント・イメージング・システム
KR20150008840A (ko) * 2010-02-24 2015-01-23 아이피플렉 홀딩스 코포레이션 시각 장애인들을 지원하는 증강 현실 파노라마
JP5163676B2 (ja) * 2010-03-19 2013-03-13 カシオ計算機株式会社 撮像装置、撮像方法及びプログラム
JP4985808B2 (ja) 2010-03-19 2012-07-25 カシオ計算機株式会社 撮像装置、及びプログラム
US8497840B2 (en) * 2010-03-25 2013-07-30 Dacuda Ag Computer peripheral for scanning
JP5663934B2 (ja) * 2010-04-09 2015-02-04 ソニー株式会社 画像処理装置、撮像装置、画像処理方法およびプログラム
US9204040B2 (en) * 2010-05-21 2015-12-01 Qualcomm Incorporated Online creation of panoramic augmented reality annotations on mobile platforms
US8933986B2 (en) 2010-05-28 2015-01-13 Qualcomm Incorporated North centered orientation tracking in uninformed environments
US8488040B2 (en) * 2010-06-18 2013-07-16 Microsoft Corporation Mobile and server-side computational photography
JP5517843B2 (ja) * 2010-08-31 2014-06-11 キヤノン株式会社 画像処理装置、画像処理方法及びコンピュータプログラム
CN103189796B (zh) 2010-09-20 2015-11-25 瑞典移动影像股份公司 用于形成图像的方法
US9398211B2 (en) * 2010-09-23 2016-07-19 Intel Corporation Multi-device alignment for collaborative media capture
JP5574423B2 (ja) 2010-09-24 2014-08-20 カシオ計算機株式会社 撮像装置、表示制御方法及びプログラム
WO2012048252A1 (en) 2010-10-07 2012-04-12 Aria Glassworks, Inc. System and method for transitioning between interface modes in virtual and augmented reality applications
US9325804B2 (en) * 2010-11-08 2016-04-26 Microsoft Technology Licensing, Llc Dynamic image result stitching
JP5853359B2 (ja) 2010-11-11 2016-02-09 ソニー株式会社 撮像装置、撮像装置の制御方法およびプログラム
US9041743B2 (en) 2010-11-24 2015-05-26 Aria Glassworks, Inc. System and method for presenting virtual and augmented reality scenes to a user
US9017163B2 (en) * 2010-11-24 2015-04-28 Aria Glassworks, Inc. System and method for acquiring virtual and augmented reality scenes by a user
US9070219B2 (en) 2010-11-24 2015-06-30 Aria Glassworks, Inc. System and method for presenting virtual and augmented reality scenes to a user
CN103081455B (zh) 2010-11-29 2017-03-08 快图有限公司 从手持设备所捕获的多个图像进行肖像图像合成
US8548269B2 (en) 2010-12-17 2013-10-01 Microsoft Corporation Seamless left/right views for 360-degree stereoscopic video
TW201227601A (en) * 2010-12-23 2012-07-01 Altek Corp Image capturing device and image patchwork method
US8953022B2 (en) 2011-01-10 2015-02-10 Aria Glassworks, Inc. System and method for sharing virtual and augmented reality scenes between users and viewers
JP2012160904A (ja) * 2011-01-31 2012-08-23 Sony Corp 情報処理装置、情報処理方法、プログラム、及び撮像装置
KR101723642B1 (ko) * 2011-01-31 2017-04-19 삼성전자주식회사 파노라마 이미지를 촬영하는 촬영 기기 및 그 파노라마 촬영 방법
US8520080B2 (en) 2011-01-31 2013-08-27 Hand Held Products, Inc. Apparatus, system, and method of use of imaging assembly on mobile terminal
US20120198386A1 (en) * 2011-01-31 2012-08-02 Nokia Corporation Causing display of thumbnail images
US9118970B2 (en) 2011-03-02 2015-08-25 Aria Glassworks, Inc. System and method for embedding and viewing media files within a virtual and augmented reality scene
WO2012126136A1 (en) * 2011-03-21 2012-09-27 Intel Corporation Panorama picture scrolling
US8600194B2 (en) 2011-05-17 2013-12-03 Apple Inc. Positional sensor-assisted image registration for panoramic photography
US20120293607A1 (en) * 2011-05-17 2012-11-22 Apple Inc. Panorama Processing
US9088714B2 (en) 2011-05-17 2015-07-21 Apple Inc. Intelligent image blending for panoramic photography
US8957944B2 (en) 2011-05-17 2015-02-17 Apple Inc. Positional sensor-assisted motion filtering for panoramic photography
US9762794B2 (en) 2011-05-17 2017-09-12 Apple Inc. Positional sensor-assisted perspective correction for panoramic photography
US8970665B2 (en) * 2011-05-25 2015-03-03 Microsoft Corporation Orientation-based generation of panoramic fields
KR101784176B1 (ko) * 2011-05-25 2017-10-12 삼성전자주식회사 영상 촬영 장치 및 그 제어방법
US9247133B2 (en) 2011-06-01 2016-01-26 Apple Inc. Image registration using sliding registration windows
JP2013034081A (ja) * 2011-08-02 2013-02-14 Sony Corp 画像処理装置、その制御方法およびプログラム
KR101843450B1 (ko) * 2011-08-23 2018-03-29 엘지전자 주식회사 이동 단말기 및 이동 단말기의 제어 방법
WO2013031155A1 (ja) * 2011-08-30 2013-03-07 パナソニック株式会社 撮像装置
JP5299488B2 (ja) * 2011-09-13 2013-09-25 カシオ計算機株式会社 画像処理装置、画像処理方法及びプログラム
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
US9171384B2 (en) * 2011-11-08 2015-10-27 Qualcomm Incorporated Hands-free augmented reality for wireless communication devices
US9679306B2 (en) * 2011-11-11 2017-06-13 Excalibur Ip, Llc Live advertisement preview display and distribution
US8830317B2 (en) * 2011-11-23 2014-09-09 Robert Bosch Gmbh Position dependent rear facing camera for pickup truck lift gates
US8521128B1 (en) 2011-12-09 2013-08-27 Google Inc. Method, system, and computer program product for obtaining crowd-sourced location information
CN103167246A (zh) * 2011-12-16 2013-06-19 李海 一种基于互联网的全景画面展示方法及用于该方法的全景摄像装置
JP6102749B2 (ja) * 2012-01-11 2017-03-29 ソニー株式会社 情報処理装置、撮像制御方法、プログラム、デジタル顕微鏡システム、表示制御装置、表示制御方法及びプログラム
US8736664B1 (en) * 2012-01-15 2014-05-27 James W. Gruenig Moving frame display
US8655163B2 (en) * 2012-02-13 2014-02-18 Cameron Pace Group Llc Consolidated 2D/3D camera
US9881354B2 (en) 2012-03-15 2018-01-30 Microsoft Technology Licensing, Llc Image completion including automatic cropping
US8803916B1 (en) 2012-05-03 2014-08-12 Sprint Communications Company L.P. Methods and systems for an augmented reality service delivery platform
US9385324B2 (en) * 2012-05-07 2016-07-05 Samsung Electronics Co., Ltd. Electronic system with augmented reality mechanism and method of operation thereof
JP5966584B2 (ja) * 2012-05-11 2016-08-10 ソニー株式会社 表示制御装置、表示制御方法およびプログラム
US9846799B2 (en) 2012-05-18 2017-12-19 Apple Inc. Efficient texture comparison
US8902335B2 (en) 2012-06-06 2014-12-02 Apple Inc. Image blending operations
US10306140B2 (en) 2012-06-06 2019-05-28 Apple Inc. Motion adaptive image slice selection
US9098922B2 (en) 2012-06-06 2015-08-04 Apple Inc. Adaptive image blending operations
US8918087B1 (en) * 2012-06-08 2014-12-23 Sprint Communications Company L.P. Methods and systems for accessing crowd sourced landscape images
US10681304B2 (en) 2012-06-08 2020-06-09 Apple, Inc. Capturing a panoramic image using a graphical user interface having a scan guidance indicator
US9064184B2 (en) 2012-06-18 2015-06-23 Ebay Inc. Normalized images for item listings
US9202099B2 (en) * 2012-06-29 2015-12-01 Apple Inc. Fingerprint sensing and enrollment
US9715616B2 (en) 2012-06-29 2017-07-25 Apple Inc. Fingerprint sensing and enrollment
JP5940394B2 (ja) * 2012-07-02 2016-06-29 オリンパス株式会社 撮像装置
US9870504B1 (en) * 2012-07-12 2018-01-16 The United States Of America, As Represented By The Secretary Of The Army Stitched image
US9690458B2 (en) 2012-09-10 2017-06-27 Mediatek Inc. Image viewing method for displaying portion of selected image based on user interaction input and related image viewing system and machine readable medium
US9626799B2 (en) 2012-10-02 2017-04-18 Aria Glassworks, Inc. System and method for dynamically displaying multiple virtual and augmented reality scenes on a single display
KR101819851B1 (ko) * 2012-10-24 2018-01-17 가부시키가이샤 모르포 화상 처리 장치, 화상 처리 방법, 및 기록 매체
US9270885B2 (en) 2012-10-26 2016-02-23 Google Inc. Method, system, and computer program product for gamifying the process of obtaining panoramic images
US9325861B1 (en) * 2012-10-26 2016-04-26 Google Inc. Method, system, and computer program product for providing a target user interface for capturing panoramic images
US8773502B2 (en) * 2012-10-29 2014-07-08 Google Inc. Smart targets facilitating the capture of contiguous images
TWI485505B (zh) * 2012-11-20 2015-05-21 Benq Corp 數位相機及數位相機之影像擷取方法
CN116405747A (zh) 2012-11-28 2023-07-07 核心光电有限公司 多孔径成像系统以及通过多孔径成像系统获取图像的方法
CN103016921A (zh) * 2012-12-04 2013-04-03 江苏清投视讯科技有限公司 一种可移动整体拼接屏支架
US9554049B2 (en) * 2012-12-04 2017-01-24 Ebay Inc. Guided video capture for item listings
US20140160264A1 (en) * 2012-12-10 2014-06-12 The Johns Hopkins University Augmented field of view imaging system
US9088625B1 (en) 2012-12-12 2015-07-21 Google Inc. Obtaining an image for a place of interest
US10216381B2 (en) * 2012-12-25 2019-02-26 Nokia Technologies Oy Image capture
CN107580178B (zh) * 2013-01-07 2022-04-05 华为技术有限公司 一种图像处理方法及装置
US10769852B2 (en) 2013-03-14 2020-09-08 Aria Glassworks, Inc. Method for simulating natural perception in virtual and augmented reality scenes
US20140300686A1 (en) * 2013-03-15 2014-10-09 Tourwrist, Inc. Systems and methods for tracking camera orientation and mapping frames onto a panoramic canvas
US10068120B2 (en) 2013-03-15 2018-09-04 Apple Inc. High dynamic range fingerprint sensing
EP2994025B1 (en) 2013-05-05 2023-09-20 Trax Technology Solutions Pte Ltd. System and method of monitoring retail units
US9350916B2 (en) 2013-05-28 2016-05-24 Apple Inc. Interleaving image processing and image capture operations
US9491360B2 (en) 2013-06-06 2016-11-08 Apple Inc. Reference frame selection for still image stabilization
US9384552B2 (en) 2013-06-06 2016-07-05 Apple Inc. Image registration methods for still image stabilization
US9832378B2 (en) 2013-06-06 2017-11-28 Apple Inc. Exposure mapping and dynamic thresholding for blending of multiple images using floating exposure
US9262684B2 (en) 2013-06-06 2016-02-16 Apple Inc. Methods of image fusion for image stabilization
CN109040553B (zh) 2013-06-13 2021-04-13 核心光电有限公司 双孔径变焦数字摄影机
KR102172354B1 (ko) * 2013-06-28 2020-10-30 삼성전자주식회사 이미지 파일 생성 방법 및 장치
EP3779564B1 (en) 2013-07-04 2024-04-10 Corephotonics Ltd. Miniature telephoto lens assembly
CN103413339B (zh) * 2013-07-23 2016-08-10 清华大学 十亿像素高动态范围图像重建与显示的方法
US9343043B2 (en) * 2013-08-01 2016-05-17 Google Inc. Methods and apparatus for generating composite images
WO2015015383A2 (en) 2013-08-01 2015-02-05 Corephotonics Ltd. Thin multi-aperture imaging system with auto-focus and methods for using same
JP6581086B2 (ja) 2013-08-09 2019-09-25 サーマル イメージング レーダ、エルエルシーThermal Imaging Radar, Llc 複数の仮想デバイスを使用して熱画像データを解析するための方法、及び深度値を画像画素と相関させるための方法
WO2015028587A2 (en) 2013-08-31 2015-03-05 Dacuda Ag User feedback for real-time checking and improving quality of scanned image
US20150071547A1 (en) 2013-09-09 2015-03-12 Apple Inc. Automated Selection Of Keeper Images From A Burst Photo Captured Set
US9898642B2 (en) 2013-09-09 2018-02-20 Apple Inc. Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs
KR20150034558A (ko) 2013-09-26 2015-04-03 엘지전자 주식회사 헤드 마운트 디스플레이 및 제어 방법
US9137459B2 (en) * 2013-10-03 2015-09-15 Olympus Corporation Image processing device, display device, image processing method, and computer-readable recording medium for generating composite image data
US20150098000A1 (en) * 2013-10-03 2015-04-09 Futurewei Technologies, Inc. System and Method for Dynamic Image Composition Guidance in Digital Camera
KR20150051085A (ko) * 2013-11-01 2015-05-11 삼성전자주식회사 하이 다이나믹 레인지 영상을 표시하는 방법 및 상기 방법을 기록한 컴퓨터 판독 가능 저장매체 및 디지털 영상 처리 장치.
EP3540683A1 (en) 2013-12-03 2019-09-18 ML Netherlands C.V. User feedback for real-time checking and improving quality of scanned image
WO2015081563A1 (zh) * 2013-12-06 2015-06-11 华为终端有限公司 一种生成图片的方法及一种双镜头设备
CN103685952B (zh) * 2013-12-06 2017-07-14 宇龙计算机通信科技(深圳)有限公司 终端和图像处理方法
US9915857B2 (en) * 2013-12-09 2018-03-13 Geo Semiconductor Inc. System and method for automated test-pattern-free projection calibration
CN103685956B (zh) * 2013-12-11 2017-12-15 宇龙计算机通信科技(深圳)有限公司 一种全景照片拍摄方法及装置
US10410321B2 (en) 2014-01-07 2019-09-10 MN Netherlands C.V. Dynamic updating of a composite image
US10708491B2 (en) 2014-01-07 2020-07-07 Ml Netherlands C.V. Adaptive camera control for reducing motion blur during real-time image capture
US20150193909A1 (en) * 2014-01-09 2015-07-09 Trax Technology Solutions Pte Ltd. Method and device for panoramic image processing
US20150207988A1 (en) * 2014-01-23 2015-07-23 Nvidia Corporation Interactive panoramic photography based on combined visual and inertial orientation tracking
US20150215532A1 (en) * 2014-01-24 2015-07-30 Amazon Technologies, Inc. Panoramic image capture
WO2015114621A1 (en) 2014-02-02 2015-08-06 Trax Technology Solutions Pte. Ltd. System and method for panoramic image processing
US10977864B2 (en) 2014-02-21 2021-04-13 Dropbox, Inc. Techniques for capturing and displaying partial motion in virtual or augmented reality scenes
US20150271400A1 (en) * 2014-03-19 2015-09-24 Htc Corporation Handheld electronic device, panoramic image forming method and non-transitory machine readable medium thereof
WO2015173173A1 (en) 2014-05-12 2015-11-19 Dacuda Ag Method and apparatus for scanning and printing a 3d object
US10482461B2 (en) 2014-05-29 2019-11-19 Apple Inc. User interface for payments
US10402777B2 (en) 2014-06-18 2019-09-03 Trax Technology Solutions Pte Ltd. Method and a system for object recognition
JP2016015567A (ja) * 2014-07-01 2016-01-28 株式会社東芝 電子機器、処理方法およびプログラム
US9392188B2 (en) 2014-08-10 2016-07-12 Corephotonics Ltd. Zoom dual-aperture camera with folded lens
US9724177B2 (en) 2014-08-19 2017-08-08 Align Technology, Inc. Viewfinder with real-time tracking for intraoral scanning
CN107005675B (zh) * 2014-09-05 2019-08-06 富士胶片株式会社 动态图像编辑装置、动态图像编辑方法及存储介质
US20160077422A1 (en) * 2014-09-12 2016-03-17 Adobe Systems Incorporated Collaborative synchronized multi-device photography
US10270959B1 (en) * 2014-11-03 2019-04-23 Alarm.Com Incorporated Creating preview images for controlling pan and tilt cameras
US9781348B1 (en) * 2014-11-03 2017-10-03 Alarm.Com Incorporated Automatic orientation of a camera in response to sensor data
WO2016102365A1 (en) * 2014-12-22 2016-06-30 Thomson Licensing Method and apparatus for generating an extrapolated image based on object detection
US9998655B2 (en) * 2014-12-23 2018-06-12 Quallcomm Incorporated Visualization for viewing-guidance during dataset-generation
WO2016101155A1 (en) 2014-12-23 2016-06-30 SZ DJI Technology Co., Ltd. Uav panoramic imaging
KR101844032B1 (ko) * 2014-12-26 2018-05-14 주식회사 케이티 파노라믹 비디오 영상의 관심 영역의 영상 전송 방법, 장치 및 디바이스
CN112327463B (zh) 2015-01-03 2022-10-14 核心光电有限公司 微型长焦镜头模块和使用该镜头模块的相机
US11962908B2 (en) * 2015-03-17 2024-04-16 Microsoft Technology Licensing, Llc. Automatic image frame processing possibility detection
EP3492958B1 (en) 2015-04-02 2022-03-30 Corephotonics Ltd. Dual voice coil motor structure in a dual-optical module camera
USD777734S1 (en) 2015-04-10 2017-01-31 Google Inc. Portion of a display panel with a transitional augmented reality graphical user interface
CN112305833A (zh) 2015-04-16 2021-02-02 核心光电有限公司 紧凑型折叠式相机中的自动对焦和光学图像稳定
EP3722860B1 (en) 2015-05-28 2023-04-19 Corephotonics Ltd. Bi-directional stiffness for optical image stabilization and auto-focus in a digital camera
US9571738B2 (en) * 2015-06-23 2017-02-14 Toshiba Tec Kabushiki Kaisha Image processing apparatus
EP3317816A4 (en) * 2015-06-30 2019-02-27 GoPro, Inc. PICTURES OF PICTURES IN A MULTIPLE CAMERAS ARRANGEMENT
US9681046B2 (en) 2015-06-30 2017-06-13 Gopro, Inc. Image stitching in a multi-camera array
US9466109B1 (en) 2015-06-30 2016-10-11 Gopro, Inc. Image stitching in a multi-camera array
US20170006219A1 (en) 2015-06-30 2017-01-05 Gopro, Inc. Image stitching in a multi-camera array
US9842264B2 (en) * 2015-08-12 2017-12-12 Chiman KWAN Method and system for UGV guidance and targeting
US10230898B2 (en) 2015-08-13 2019-03-12 Corephotonics Ltd. Dual aperture zoom camera with video support and switching / non-switching dynamic control
US20170060404A1 (en) * 2015-08-28 2017-03-02 Facebook, Inc. Systems and methods for providing interactivity for panoramic media content
US10070060B2 (en) 2015-09-06 2018-09-04 Corephotonics Ltd Auto focus and optical image stabilization with roll compensation in a compact folded camera
US10257412B2 (en) * 2015-09-30 2019-04-09 Universidad De Los Andes Method for obtaining chromatic attributes of natural surroundings to design colour patterns
US10298841B2 (en) 2015-11-20 2019-05-21 Sony Corporation Device and method for generating a panoramic image
KR102291525B1 (ko) 2015-12-29 2021-08-19 코어포토닉스 리미티드 자동 조정가능 텔레 시야(fov)를 갖는 듀얼-애퍼처 줌 디지털 카메라
US9992502B2 (en) 2016-01-29 2018-06-05 Gopro, Inc. Apparatus and methods for video compression using multi-resolution scalable coding
US10291910B2 (en) 2016-02-12 2019-05-14 Gopro, Inc. Systems and methods for spatially adaptive video encoding
KR102460906B1 (ko) * 2016-02-17 2022-11-01 삼성전자주식회사 이미지 처리 방법 및 이를 지원하는 전자 장치
US10484621B2 (en) 2016-02-29 2019-11-19 Gopro, Inc. Systems and methods for compressing video content
US10645362B2 (en) 2016-04-11 2020-05-05 Gopro, Inc. Systems, methods and apparatus for compressing video content
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
US10163030B2 (en) 2016-05-20 2018-12-25 Gopro, Inc. On-camera image processing based on image activity data
WO2017208090A1 (en) 2016-05-30 2017-12-07 Corephotonics Ltd. Rotational ball-guided voice coil motor
US10009536B2 (en) 2016-06-12 2018-06-26 Apple Inc. Applying a simulated optical effect based on data received from multiple camera sensors
WO2017218834A1 (en) 2016-06-17 2017-12-21 Kerstein Dustin System and method for capturing and viewing panoramic images having motion parralax depth perception without images stitching
CN107925728B (zh) 2016-06-19 2020-12-08 核心光电有限公司 双孔径摄影机系统中的帧同步
US10462466B2 (en) 2016-06-20 2019-10-29 Gopro, Inc. Systems and methods for spatially selective video coding
EP4224233A1 (en) 2016-07-07 2023-08-09 Corephotonics Ltd. Linear ball guided voice coil motor for folded optic
WO2018007951A1 (en) 2016-07-07 2018-01-11 Corephotonics Ltd. Dual-camera system with improved video smooth transition by image blending
US11190653B2 (en) * 2016-07-26 2021-11-30 Adobe Inc. Techniques for capturing an image within the context of a document
US20230188579A1 (en) * 2016-07-29 2023-06-15 Smarter Systems, Inc. Systems and Methods for Providing Individual and/or Synchronized Virtual Tours through a Realm for a Group of Users
US9940695B2 (en) * 2016-08-26 2018-04-10 Multimedia Image Solution Limited Method for ensuring perfect stitching of a subject's images in a real-site image stitching operation
US10681327B2 (en) 2016-09-20 2020-06-09 Cyberlink Corp. Systems and methods for reducing horizontal misalignment in 360-degree video
CN109691074A (zh) * 2016-09-23 2019-04-26 苹果公司 用于增强的用户交互的图像数据
US10628869B2 (en) * 2016-10-17 2020-04-21 Jamie Daniel Braxton System and method for real-time video processing to find and display related social content, related videos, and related images
US10866102B2 (en) * 2016-12-23 2020-12-15 X Development Llc Localization of robotic vehicles
CN114051092A (zh) 2016-12-28 2022-02-15 核心光电有限公司 具有延伸光折叠元件扫描范围的致动器及含其的折叠相机
EP3789810B1 (en) 2017-01-12 2022-09-28 Corephotonics Ltd. Compact folded camera
US10560682B2 (en) * 2017-01-13 2020-02-11 Gopro, Inc. Methods and apparatus for providing a frame packing arrangement for panoramic content
US10198862B2 (en) 2017-01-23 2019-02-05 Gopro, Inc. Methods and apparatus for providing rotated spherical viewpoints
EP3579040B1 (en) 2017-02-23 2021-06-23 Corephotonics Ltd. Folded camera lens designs
CN114137791A (zh) 2017-03-15 2022-03-04 核心光电有限公司 具有全景扫瞄范围的照相装置及移动装置
US20180276800A1 (en) * 2017-03-23 2018-09-27 Gopro, Inc. Apparatus and methods for source dynamic range processing of panoramic content
US10291855B2 (en) * 2017-04-14 2019-05-14 Facebook, Inc. Three-dimensional, 360-degree virtual reality camera live preview
JP6516787B2 (ja) * 2017-04-28 2019-05-22 キヤノン株式会社 画像処理装置、画像処理装置の制御方法およびプログラム
US10861359B2 (en) * 2017-05-16 2020-12-08 Texas Instruments Incorporated Surround-view with seamless transition to 3D view system and method
KR20230144661A (ko) 2017-05-16 2023-10-16 애플 인크. 이모지 레코딩 및 전송
DK180859B1 (en) 2017-06-04 2022-05-23 Apple Inc USER INTERFACE CAMERA EFFECTS
WO2019048904A1 (en) 2017-09-06 2019-03-14 Corephotonics Ltd. STEREOSCOPIC DEPTH CARTOGRAPHY AND COMBINED PHASE DETECTION IN A DOUBLE-OPENING CAMERA
KR102389678B1 (ko) 2017-09-09 2022-04-21 애플 인크. 생체측정 인증의 구현
KR102185854B1 (ko) 2017-09-09 2020-12-02 애플 인크. 생체측정 인증의 구현
US10630895B2 (en) 2017-09-11 2020-04-21 Qualcomm Incorporated Assist for orienting a camera at different zoom levels
CN109600543B (zh) * 2017-09-30 2021-01-22 京东方科技集团股份有限公司 用于移动设备拍摄全景图像的方法以及移动设备
US10951834B2 (en) 2017-10-03 2021-03-16 Corephotonics Ltd. Synthetically enlarged camera aperture
US10459622B1 (en) * 2017-11-02 2019-10-29 Gopro, Inc. Systems and methods for interacting with video content
US10574886B2 (en) * 2017-11-02 2020-02-25 Thermal Imaging Radar, LLC Generating panoramic video for video management systems
KR102104761B1 (ko) 2017-11-23 2020-04-27 코어포토닉스 리미티드 컴팩트 폴디드 카메라 구조
US10935651B2 (en) 2017-12-15 2021-03-02 Google Llc Radar angular ambiguity resolution
CN109934931B (zh) * 2017-12-19 2023-03-28 阿里巴巴集团控股有限公司 采集图像、建立目标物体识别模型的方法及装置
EP3502837B1 (en) * 2017-12-21 2021-08-11 Nokia Technologies Oy Apparatus, method and computer program for controlling scrolling of content
EP3848749A1 (en) 2018-02-05 2021-07-14 Corephotonics Ltd. Reduced height penalty for folded camera
US11112964B2 (en) 2018-02-09 2021-09-07 Apple Inc. Media capture lock affordance for graphical user interface
CN111448793B (zh) 2018-02-12 2021-08-31 核心光电有限公司 具有光学图像稳定化的折叠摄像机
US11573311B2 (en) 2018-04-05 2023-02-07 Google Llc Smart-device-based radar system performing angular estimation using machine learning
CN110351492B (zh) * 2018-04-06 2021-11-19 中兴通讯股份有限公司 一种视频数据处理方法、装置及介质
US10694168B2 (en) 2018-04-22 2020-06-23 Corephotonics Ltd. System and method for mitigating or preventing eye damage from structured light IR/NIR projector systems
EP3822588B1 (en) 2018-04-23 2022-09-07 Corephotonics Ltd. An optical-path folding-element with an extended two degree of freedom rotation range
US10375313B1 (en) 2018-05-07 2019-08-06 Apple Inc. Creative camera
DK180078B1 (en) 2018-05-07 2020-03-31 Apple Inc. USER INTERFACE FOR AVATAR CREATION
US11722764B2 (en) 2018-05-07 2023-08-08 Apple Inc. Creative camera
US11170085B2 (en) 2018-06-03 2021-11-09 Apple Inc. Implementation of biometric authentication
CN111316346B (zh) 2018-08-04 2022-11-29 核心光电有限公司 摄像机上方的可切换连续显示信息系统
US11635596B2 (en) 2018-08-22 2023-04-25 Corephotonics Ltd. Two-state zoom folded camera
DK201870623A1 (en) 2018-09-11 2020-04-15 Apple Inc. USER INTERFACES FOR SIMULATED DEPTH EFFECTS
US11770601B2 (en) 2019-05-06 2023-09-26 Apple Inc. User interfaces for capturing and managing visual media
US10674072B1 (en) 2019-05-06 2020-06-02 Apple Inc. User interfaces for capturing and managing visual media
US11321857B2 (en) 2018-09-28 2022-05-03 Apple Inc. Displaying and editing images with depth information
US10860096B2 (en) 2018-09-28 2020-12-08 Apple Inc. Device control using gaze information
US11128792B2 (en) 2018-09-28 2021-09-21 Apple Inc. Capturing and displaying images with multiple focal planes
US11100349B2 (en) 2018-09-28 2021-08-24 Apple Inc. Audio assisted enrollment
DE112019004977T5 (de) * 2018-10-05 2021-08-12 Google Llc Herunterskalierte Aufnahmevorschau für eine Panoramaaufnahmen-Benutzeroberfläche
US10708507B1 (en) * 2018-10-11 2020-07-07 Zillow Group, Inc. Automated control of image acquisition via use of acquisition device sensors
KR102166106B1 (ko) * 2018-11-21 2020-10-15 스크린엑스 주식회사 가상 카메라를 활용한 다면 영상 생성 방법 및 시스템
KR102242437B1 (ko) 2019-01-07 2021-04-20 코어포토닉스 리미티드 슬라이딩 조인트를 갖는 회전 메커니즘
US11107261B2 (en) 2019-01-18 2021-08-31 Apple Inc. Virtual avatar animation based on facial feature movement
JP7148648B2 (ja) * 2019-02-07 2022-10-05 富士フイルム株式会社 撮影システム、撮影箇所設定装置、撮影装置及び撮影方法
CN110020995B (zh) * 2019-03-06 2023-02-07 沈阳理工大学 针对复杂图像的图像拼接方法
EP4224841A1 (en) 2019-03-09 2023-08-09 Corephotonics Ltd. System and method for dynamic stereoscopic calibration
CN110086987B (zh) * 2019-04-22 2021-01-05 惠州Tcl移动通信有限公司 一种摄像头视角裁剪方法、装置及存储介质
US11706521B2 (en) 2019-05-06 2023-07-18 Apple Inc. User interfaces for capturing and managing visual media
KR102365748B1 (ko) 2019-07-31 2022-02-23 코어포토닉스 리미티드 카메라 패닝 또는 모션에서 배경 블러링을 생성하는 시스템 및 방법
JP7263983B2 (ja) * 2019-08-30 2023-04-25 富士通株式会社 撮影漏れ検出装置、及び、撮影漏れ検出方法
US11659135B2 (en) 2019-10-30 2023-05-23 Corephotonics Ltd. Slow or fast motion video using depth information
US11601605B2 (en) 2019-11-22 2023-03-07 Thermal Imaging Radar, LLC Thermal imaging camera device
CN110830724B (zh) * 2019-12-05 2022-01-18 维沃移动通信(杭州)有限公司 一种拍摄方法及电子设备
CN114641983A (zh) 2019-12-09 2022-06-17 核心光电有限公司 用于获得智能全景图像的系统及方法
US11949976B2 (en) 2019-12-09 2024-04-02 Corephotonics Ltd. Systems and methods for obtaining a smart panoramic image
US11185774B1 (en) * 2020-01-22 2021-11-30 Gil-ad Goldstein Handheld computer application for creating virtual world gaming spheres
US11080879B1 (en) * 2020-02-03 2021-08-03 Apple Inc. Systems, methods, and graphical user interfaces for annotating, measuring, and modeling environments
KR20220003550A (ko) 2020-04-26 2022-01-10 코어포토닉스 리미티드 홀 바 센서 보정을 위한 온도 제어
CN117372248A (zh) 2020-05-17 2024-01-09 核心光电有限公司 全视场参考图像的图像拼接
WO2021245488A1 (en) 2020-05-30 2021-12-09 Corephotonics Ltd. Systems and methods for obtaining a super macro image
US11039074B1 (en) 2020-06-01 2021-06-15 Apple Inc. User interfaces for managing media
CN111651155B (zh) * 2020-06-03 2020-12-11 北京智趣工场教育科技有限公司 一种编程学习操作系统及外接交互系统
CN111818300B (zh) * 2020-06-16 2022-05-27 浙江大华技术股份有限公司 一种数据存储、查询方法、装置、计算机设备及存储介质
CN111858799B (zh) * 2020-06-28 2022-10-21 江苏核电有限公司 一种核电厂用全景图像动态标注定位方法、系统及设备
US11637977B2 (en) 2020-07-15 2023-04-25 Corephotonics Ltd. Image sensors and sensing methods to obtain time-of-flight and phase detection information
EP4045960A4 (en) 2020-07-15 2022-12-14 Corephotonics Ltd. CORRECTING THE ABERRATION OF VIEWPOINTS IN A FOLDED SCANNING CAMERA
WO2022023914A1 (en) 2020-07-31 2022-02-03 Corephotonics Ltd. Hall sensor - magnet geometry for large stroke linear position sensing
US11212449B1 (en) * 2020-09-25 2021-12-28 Apple Inc. User interfaces for media capture and management
CN113038004B (zh) * 2021-02-26 2022-09-23 展讯通信(天津)有限公司 一种多窗口预览图像方法、装置、计算机设备和存储介质
CN112954220A (zh) * 2021-03-03 2021-06-11 北京蜂巢世纪科技有限公司 图像预览方法及装置、电子设备、存储介质
US11778339B2 (en) 2021-04-30 2023-10-03 Apple Inc. User interfaces for altering visual media
US11539876B2 (en) 2021-04-30 2022-12-27 Apple Inc. User interfaces for altering visual media
CN114827684B (zh) * 2022-04-25 2023-06-02 青岛海尔乐信云科技有限公司 一种基于5g的交互式视频服务方法及系统
CN116055868B (zh) * 2022-05-30 2023-10-20 荣耀终端有限公司 一种拍摄方法及相关设备

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6111702A (en) 1995-11-30 2000-08-29 Lucent Technologies Inc. Panoramic viewing system with offset virtual optical centers
US5982951A (en) * 1996-05-28 1999-11-09 Canon Kabushiki Kaisha Apparatus and method for combining a plurality of images
US6466254B1 (en) 1997-05-08 2002-10-15 Be Here Corporation Method and apparatus for electronically distributing motion panoramic images
JPH11133484A (ja) 1997-10-29 1999-05-21 Canon Inc 複眼撮像装置
US6195204B1 (en) 1998-08-28 2001-02-27 Lucent Technologies Inc. Compact high resolution panoramic viewing system
JP4146938B2 (ja) 1998-09-08 2008-09-10 オリンパス株式会社 パノラマ画像合成装置及びパノラマ画像合成プログラムを格納した記録媒体
US6686955B1 (en) 1999-01-29 2004-02-03 International Business Machines Corporation Lightweight image manipulation for maximizing the capacity of digital photo storage media
US6891561B1 (en) * 1999-03-31 2005-05-10 Vulcan Patents Llc Providing visual context for a mobile active visual display of a panoramic region
US6677981B1 (en) 1999-12-31 2004-01-13 Stmicroelectronics, Inc. Motion play-back of still pictures comprising a panoramic view for simulating perspective
US7064783B2 (en) 1999-12-31 2006-06-20 Stmicroelectronics, Inc. Still picture format for subsequent picture stitching for forming a panoramic image
US7162102B2 (en) * 2001-12-19 2007-01-09 Eastman Kodak Company Method and system for compositing images to produce a cropped image
US20040041906A1 (en) 2002-09-04 2004-03-04 Fruit Theodoric Benjamin Method for producing a real-time, moving, stereoscopic, preview image
US20040189849A1 (en) 2003-03-31 2004-09-30 Hofer Gregory V. Panoramic sequence guide
JP4434624B2 (ja) * 2003-05-12 2010-03-17 キヤノン株式会社 撮像装置、撮像方法、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
US7646400B2 (en) * 2005-02-11 2010-01-12 Creative Technology Ltd Method and apparatus for forming a panoramic image

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8436930B2 (en) 2008-12-24 2013-05-07 Samsung Electronics Co., Ltd. Apparatus and method for capturing an image utilizing a guide image and live view image corresponding to the guide image
KR20140129631A (ko) * 2013-04-30 2014-11-07 삼성전자주식회사 휴대 단말기에서 이미지 데이터를 생성하는 장치 및 방법
KR20170040533A (ko) * 2015-10-05 2017-04-13 삼성전자주식회사 디스플레이장치 및 그 제어방법
WO2017061684A1 (ko) * 2015-10-05 2017-04-13 삼성전자(주) 디스플레이장치 및 그 제어방법
US10572973B2 (en) 2015-10-05 2020-02-25 Samsung Electronics Co., Ltd. Display device and method of controlling same
KR20180046789A (ko) * 2016-10-28 2018-05-09 삼성전자주식회사 가이드를 출력하는 전자 장치 및 방법

Also Published As

Publication number Publication date
WO2007016318A3 (en) 2007-12-21
CN101228477B (zh) 2010-12-08
KR101343220B1 (ko) 2013-12-18
US7424218B2 (en) 2008-09-09
CN101228477A (zh) 2008-07-23
US20070025723A1 (en) 2007-02-01
WO2007016318A2 (en) 2007-02-08

Similar Documents

Publication Publication Date Title
KR101343220B1 (ko) 파노라마 이미지에 대한 실시간 미리 보기
US7656429B2 (en) Digital camera and method for in creating still panoramas and composite photographs
EP2017783B1 (en) Method for constructing a composite image
JP3695119B2 (ja) 画像合成装置、及び画像合成方法を実現するプログラムを記録した記録媒体
US11758265B2 (en) Image processing method and mobile terminal
US9712745B2 (en) Method and apparatus for operating camera function in portable terminal
US20160295108A1 (en) System and method for panoramic imaging
US7292261B1 (en) Virtual reality camera
US10585344B1 (en) Camera system with a plurality of image sensors
US20130265311A1 (en) Apparatus and method for improving quality of enlarged image
US20080253685A1 (en) Image and video stitching and viewing method and system
CN106296589B (zh) 全景图像的处理方法及装置
GB2422739A (en) Sequentially displaying regions of interest in a captured ima ge according to saliency and size
US10999527B1 (en) Generation of enhanced panoramic visual content
CN110771140A (zh) 云台系统及其图像处理方法、无人机
CN110278366A (zh) 一种全景图像虚化方法、终端及计算机可读存储介质
US20090059018A1 (en) Navigation assisted mosaic photography
Baudisch et al. Panoramic viewfinder: providing a real-time preview to help users avoid flaws in panoramic pictures
CN108810326B (zh) 一种拍照方法、装置及移动终端
JP6312426B2 (ja) 撮像装置およびその制御方法
CN112529778A (zh) 多摄像头设备的图像拼接方法及装置、存储介质、终端
EP3595287A1 (en) Capturing video content with at least two cameras of a multi-camera rig
Baudisch et al. An exploration of user interface designs for real-time panoramic
US11119396B1 (en) Camera system with a plurality of image sensors
CN111194556B (zh) 一种基于智能终端的全景照片显示方法及显示装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161205

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171201

Year of fee payment: 5