KR20170135855A - 패닝 샷들의 자동 생성 - Google Patents

패닝 샷들의 자동 생성 Download PDF

Info

Publication number
KR20170135855A
KR20170135855A KR1020177028259A KR20177028259A KR20170135855A KR 20170135855 A KR20170135855 A KR 20170135855A KR 1020177028259 A KR1020177028259 A KR 1020177028259A KR 20177028259 A KR20177028259 A KR 20177028259A KR 20170135855 A KR20170135855 A KR 20170135855A
Authority
KR
South Korea
Prior art keywords
image
target object
images
series
motion data
Prior art date
Application number
KR1020177028259A
Other languages
English (en)
Other versions
KR102480245B1 (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 KR20170135855A publication Critical patent/KR20170135855A/ko
Application granted granted Critical
Publication of KR102480245B1 publication Critical patent/KR102480245B1/ko

Links

Images

Classifications

    • 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
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • G06T5/002
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • 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/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • H04N5/23229
    • 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
    • H04N5/2625Studio 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 for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • Studio Circuits (AREA)

Abstract

일반적으로 설명하면, 본 개시의 양태들은 이미지 캡처 디바이스에 의해 오브젝트의 패닝된 샷을 표현하는 이미지의 생성에 관련된다. 일 실시형태에서, 패닝된 샷은 장면의 일련의 이미지 상에 수행될 수도 있다. 일련의 이미지들은 장면 내에서 이동하는 적어도 대상 오브젝트를 포함할 수도 있다. 대상 오브젝트의 모션 데이터는 일련의 이미지들의 제 2 이미지에서의 대상 오브젝트를 일련의 이미지들의 제 1 이미지에서의 대상 오브젝트와 비교하는 것에 의해 캡처될 수도 있다. 백그라운드 이미지는 모션 데이터에 기초하여 제 1 이미지 및 제 2 이미지를 이용하여 블러링 프로세스를 구현하는 것에 의해 생성된다. 최종 이미지는 백그라운드 이미지에 대상 오브젝트의 이미지를 포함시키는 것에 의해 생성된다.

Description

패닝 샷들의 자동 생성{AUTOMATED GENERATION OF PANNING SHOTS}
본 출원은 일반적으로 패닝 샷들의 생성에 관한 것이고, 보다 구체적으로, 장면을 따라 이동하는 대상 오브젝트의 다수의 이미지들로부터 패닝 샷들을 자동으로 생성하는 시스템들, 방법들 및 디바이스들에 관한 것이다.
패닝 샷은 모션 중인 대상 오브젝트의 이미지이다. 대상 오브젝트는 이미지 캡처 디바이스에 의해 캡처되는 장면 내의 임의의 관심 대상인 오브젝트이다. 패닝 샷 내에서, 장면의 배경 (예를 들어, 대상 오브젝트 이외의 장면의 양태들) 이 블러링되지만 대상 오브젝트는 선명하다. 대상 오브젝트의 방향에 있는 블러링은 패닝 샷에서 모션의 시각 효과를 생성한다. 패닝 샷들은 일반적으로 숙련된 사진가들에 의해 촬영된다. 예를 들어, 패닝 샷은 셔터 속도/노출 시간을 대상 오브젝트의 선명한 이미지를 캡처하기 위해 캘리브레이션된 값보다 작은 값으로 감소시키는 것에 의해 촬영될 수도 있다. 이러한 상황에서, 최적의 노출 시간은 주변 광뿐만 아니라 대상 오브젝트의 모션의 함수이기 때문에 결정하기 어려울 수도 있다. 다른 예로서, 패닝 샷은 대상 오브젝트와 동일한 모션 방향으로 이미지 캡처 디바이스를 이동시키는 것에 의해 촬영될 수도 있다. 그러나 이러한 패닝 샷은 대상 오브젝트를 추적하기 위하여 안정적인 손이나 삼각대를 필요로 한다. 또한, 이미지 캡처 디바이스의 움직임 레이트 및 이동 방향은 이동하는 대상 오브젝트의 것과 매칭하도록 제어되거나 또는 패닝 샷이 과도하게 블러링될 수도 있다. 따라서, 패닝 샷들의 생성을 용이하게 하는 개선된 시스템들 및 방법들이 유용하게 될 것이다.
본 발명의 시스템들, 방법들 및 디바이스들은 각각 수 개의 양태들을 포함하고, 이들 중 어느 단일한 양태도 그 바람직한 속성들을 단독으로 담당하지 않는다. 다음에 오는 청구항들에 의해 표현되는 본 발명의 범위를 제한함이 없이 여러 실시형태들의 일부 특징들이 이하 간략하게 설명된다. 이 논의를 고려한 후, 특히 "상세한 설명"이라는 명칭의 섹션을 읽은 후에, 본 발명의 다양한 실시형태들의 특징들이 보다 쉽게, 또는 자동으로 패닝 샷을 생성하는 이점들을 제공하는 방법을 이해할 것이다. 일부 실시형태들은 부가적인 특징들을 포함할 수도 있고, 일부 실시형태들은 "개요" 섹션의 실시형태에서 설명된 모든 특징을 포함하는 것은 아닐 수도 있다.
본 개시에 설명된 청구물의 혁신은 패닝 이미지를 생성하기 위한 시스템이다. 일부 실시형태들에서, 시스템은 장면의 적어도 2 개의 이미지들의 일련의 이미지를 저장하도록 구성되는 메모리 컴포넌트를 포함한다. 일련의 이미지들은 장면 내에서 이동하는 적어도 하나의 오브젝트를 포함할 수도 있다. 시스템은 메모리 컴포넌트와 통신하는 적어도 하나의 프로세서를 포함한다. 프로세서는 메모리 컴포넌트에 저장된 일련의 이미지들에 액세스하도록 구성된다. 프로기술적 스킬서는 또한, 장면에서 이동하고 일련의 이미지들에서 묘사된 대상 오브젝트를 결정하도록 구성된다. 프로세서는 또한, 일련의 이미지들 중 적어도 하나의 이미지로부터 대상 오브젝트를 묘사하는 이미지 데이터를 카피하도록 구성된다. 프로세서는 또한, 일련의 이미지들 중 제 1 이미지에서의 대상 오브젝트의 포지션에 대한, 일련의 이미지들 중 제 2 이미지에서의 대상 오브젝트의 포지션들에 기초하여 대상 오브젝트의 모션 데이터를 결정하도록 구성된다. 제 2 이미지는 제 1 이미지 뒤에 캡처된다. 프로세서는 또한, 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하도록 구성된다. 프로세서는 또한, 백그라운드 이미지 상에 대상 오브젝트의 이미지를 부가하는 것에 의해 최종 이미지를 생성하도록 구성된다.
본 개시에 설명된 청구물의 다른 양태는 패닝 이미지를 생성하기 위한 방법이다. 일부 실시형태들에서, 장면의 일련의 이미지들을 수신하는 단계를 포함하고, 일련의 이미지들은 장면 내의 적어도 하나의 오브젝트 및 백그라운 정보를 포함한다. 본 방법은 일련의 이미지들에서 적어도 하나의 오브젝트 중 모션 중인 대상 오브젝트를 묘사하는 이미지 데이터를 카피하는 단계를 더 포함한다. 본 방법은 일련의 이미지들 중 제 2 이미지에서의 대상 오브젝트의 제 2 로케이션을 일련의 이미지들 중 제 1 이미지에서의 대상 오브젝트의 제 1 로케이션과 비교하는 것에 의해 대상 오브젝트의 모션 데이터를 결정하는 단계를 더 포함하고, 제 2 이미지는 제 1 이미지 뒤에 캡처된다. 본 방법은 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하는 단계를 더 포함한다. 본 방법은 백그라운드 이미지 상에 대상 오브젝트를 묘사하는 이미지를 중첩시키는 것에 의해 최종 이미지를 생성하는 단계를 더 포함한다. 본 방법은 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성할 수도 있다. 백그라운드 이미지를 생성하기 위해, 본 방법은 제 1 이미지 및 제 2 이미지와 모션 데이터를 이용하여 블러링 프로세스를 구현할 수도 있다.
본 개시에 설명된 청구물의 다른 혁신은 패닝 이미지를 생성하기 위한 시스템이다. 일부 실시형태들에서, 시스템은 적어도 컴퓨터 실행가능 명령들을 저장하도록 구성되는 메모리를 포함한다. 시스템은 하나 이상의 프로세서들을 포함하는 컴퓨팅 디바이스를 더 포함하고, 컴퓨팅 디바이스는 메모리와 통신하며, 그리고 장면의 일련의 이미지들을 수신하도록 구성된 이미지 수집 모듈을 구현하기 위해 컴퓨터 실행가능 명령들을 실행하도록 구성되며, 일련의 이미지들은 장면 내에서 이동하는 적어도 하나의 오브젝트를 포함한다. 컴퓨팅 디바이스는 또한, 일련의 이미지들에서의 모션 중인, 적어도 하나의 오브젝트로부터 선택된 대상 오브젝트를 묘사하는 이미지 데이터를 카피하도록 구성되는 대상 오브젝트 캡처 모듈을 구현하도록 구성된다. 컴퓨팅 디바이스는 또한, 일련의 이미지들 중 제 2 이미지에서의 대상 오브젝트의 제 2 포지션을 일련의 이미지들 중 제 1 이미지에서의 대상 오브젝트의 제 1 포지션과 비교하는 것에 의해 대상 오브젝트의 모션 데이터를 결정하도록 구성되는 모션 데이터 캡처 모듈을 구현하도록 구성되고, 제 2 이미지는 제 1 이미지 뒤에 캡처된다. 컴퓨팅 디바이스는 또한, 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하여 백그라운드 이미지를 생성하도록 구성되는 블러링 프로세스 적용 모듈을 구현하도록 구성된다. 컴퓨팅 디바이스는 또한, 백그라운드 이미지 상에 대상 오브젝트를 묘사하는 이미지 데이터를 중첩시키는 것에 의해 최종 이미지를 생성하도록 구성되는 이미지 최종화 모듈을 구현하도록 구성된다.
본 개시에 설명된 청구물의 다른 혁신은 컴퓨터 실행가능 명령들을 저장한 컴퓨터 판독가능 비일시적 저장 매체이며, 컴퓨터 실행가능 명령들은 하나 이상의 컴퓨터 시스템들에 의해 실행될 때 패닝 이미지를 생성하기 위한 동작들을 수행하도록 하나 이상의 컴퓨터 시스템들을 구성시킨다. 동작들은 장면의 일련의 이미지들을 수신하는 것을 포함하고, 일련의 이미지들은 장면 내에서 이동하는 적어도 하나의 오브젝트 및 백그라운 정보를 포함한다. 동작들은 일련의 이미지들에서 적어도 하나의 오브젝트 중 모션 중인 대상 오브젝트를 묘사하는 이미지 데이터를 카피하는 것을 또한 포함한다. 동작들은 일련의 이미지들 중 제 2 이미지에서의 대상 오브젝트를 일련의 이미지들 중 제 1 이미지에서의 대상 오브젝트와 비교하는 것에 의해 대상 오브젝트의 모션 데이터를 결정하는 것을 또한 포함하고, 제 2 이미지는 제 1 이미지 뒤에 캡처된다. 동작들은 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하는 것을 또한 포함한다. 동작들은 백그라운드 이미지 상에 대상 오브젝트를 묘사하는 이미지 데이터를 중첩시키는 것에 의해 최종 이미지를 생성하는 것을 또한 포함한다.
상술한 양태들 뿐만 아니라 본 발명의 다른 특징들, 양태들, 및 이점들이 첨부된 도면을 참조하여 여러 실시형태들과 연계하여 설명될 것이다. 그러나, 예시된 실시형태들은 단지 예들일 뿐, 제한으로 의도되지 않는다. 도면 전반에 걸쳐 문맥상 다르게 지시하지 않는 한, 유사한 도면 부호는 통상 유사한 컴포넌트를 식별한다. 다음의 도면들의 상대적 치수들은 일정한 축척으로 그려지지 않을 수도 있음을 주목해야 한다.
도 1 은 본원에 설명된 실시형태들에 이용될 수도 있는 이미지 캡처 디바이스의 일 실시형태의 블록도를 예시한다.
도 2a 는 패닝 샷을 표현하는 이미지들을 생성하기 위하여, 도 1 의 이미지 캡처 디바이스에 이용될 수도 있는 예시적인 방법을 예시하는 플로우차트이다.
도 2b 는 도 1 의 이미지 캡처 디바이스에서 이용될 수도 있고 제 1 이미지 및 제 2 이미지를 이용하여 패닝 샷을 표현하는 이미지를 생성하기 위한 예시적인 방법을 예시하는 플로우차트이다.
도 3a 및 도 3b 는 이미지 캡처 디바이스 (예를 들어, 도 1) 에 의해 이미지에 의해 캡처된 모션 중인 다수의 오브젝트들을 갖는 장면의 일 예를 예시한다.
도 4a 내지 도 4h 는 패닝 샷을 생성하도록 도 3a 의 장면의 일련의 이미지들에 걸쳐 구현되는 블러링 프로세스를 예시한다.
도 5 는 도 1 의 이미지 캡처 디바이스에 이용될 수도 있는 패닝 모듈의 블록도를 예시한다.
이하, 신규 시스템들, 장치들 및 방법들의 다양한 양태들이 첨부 도면들을 참조하여 보다 충분히 설명된다. 그러나, 본 개시는, 많은 상이한 형태들로 구현될 수도 있으며, 본 개시를 통해서 제시되는 임의의 특정의 구조 또는 기능에 한정되는 것으로 해석되어서는 안된다. 오히려, 이들 양태들이 제공되어 본 개시가 철저하고 완벽하게 될 수도 있고, 당업자들에게 본 개시의 범위를 충분히 전달될 수도 있다. 본 개시의 교시들에 기초하여, 당업자는 본 개시의 범위가 본 발명의 임의의 다른 양태와 독립적으로 구현되든 또는 결합하여 구현되든 간에, 본 개시에 개시된 신규 시스템들, 장치들 및 방법들의 임의의 양태들을 커버하도록 의도된 것임을 알아야 한다. 예를 들어, 본원에 제시된 임의의 수의 양태들을 이용하여 장치가 구현될 수도 있거나 방법이 실시될 수도 있다. 또한, 본 발명의 범위는 본원에 제시된 개시의 다양한 양태들에 더하여, 또는 그 이외에 다른 구조, 기능성, 또는 구조와 기능성을 이용하여 실시되는 그러한 장치 또는 방법을 커버하고자 한다. 본원에 개시된 개시물의 임의의 양태는 청구항의 하나 이상의 요소들에 의해 구체화될 수도 있다.
특정의 양태들이 본원에서 설명되지만, 이들 양태들의 많은 변형예들 및 치환들은 본 개시의 범위 이내이다. 비록 바람직한 양태들의 일부 이득들 및 이점들이 언급되었지만, 본 개시의 범위는 특정 이득들, 이용들, 또는 목적들로 제한되고자 하지 않는다. 대신, 본 개시물의 양태들은 상이한 무선 기술들, 시스템 구성들, 네트워크들, 및 송신 프로토콜들에 넓게 적용가능한 것으로 의도되며, 이들 중 일부가 일 예로서 도면들에 그리고 바람직한 양태들의 다음 설명에 예시된다. 상세한 설명 및 도면들은 본 개시를 제한하는 것이기 보다는 단지 본 개시의 예시일 뿐이며, 본 개시의 범위는 첨부된 청구항들 및 그의 등가물들에 의해 정의된다.
일반적으로, 본 개시의 양태들은 이미지 캡처 디바이스에 의해 패닝 샷을 생성하는 것에 관한 것이다. 이미지 캡처 디바이스는 아래 설명된 바와 같이 장면의 비쥬얼 이미지들을 캡처하도록 구성되는 임의의 디바이스일 수도 있다. 패닝 샷은 장면 내에서 이동하는 대상 오브젝트의 일련의 이미지들로부터, 메모리에서의 명령들로 구성되는 프로세서를 이용하여 자동으로 생성될 수도 있다. 대상 오브젝트는 장면에 걸쳐 이미지 캡처 디바이스로부터 멀리 또는 이미지 캡처 디바이스를 향하여 임의의 방향으로를 포함하는 장면 내의 임의의 방향에서 이동중일 수도 있다. 패닝 샷은 주변 광 및 장면 내의 대상물의 모션을 포함하는 다양한 인자들에 기초하여 이미지 캡처 디바이스의 노출 시간, 이동 레이트 및 모션 방향을 결정하는 숙련된 사진가에 의해 수행될 수 있다. 그러나, 패닝 샷의 자동화된 (또는 실질적으로 자동화된) 생성은 장면 내에서 이동하는 대상 오브젝트의 다수의 이미지를 캡처하는 것 이외에 이미지 캡처 디바이스의 수동 조정을 거의 또는 전혀 행하지 않고 패닝 샷을 생성한다. 패닝 샷을 자동으로 생성하는 것은 패닝 샷 생성에 이용된 기술적 스킬의 양을 감소시키는 것에 의해 숙련된 사진 가를 넘어 폭 넓은 잠재 고객에게 패닝 샷 생성을 이용가능하게 할 수 있다. 또한, 패닝 샷들의 자동화된 (또는 실질적으로 자동화된) 생성은 동일한 로케이션에서 그리고/또한 단일의 전자 디바이스 내에서 실시간으로 패닝 샷의 생성을 가능하게 하도록, 이미지 캡처 능력들과 함께 프로세싱 능력들을 포함할 수도 있는 (프로세서를 갖춘 카메라를 포함하는) 통합된 이미지 캡처 디바이스에 유리하게 적용될 수 있다. 추가로, 패닝 샷들의 자동화된 (또는 실질적으로 자동화된) 생성은 또한, 패닝 샷들을 생성하기 위한 프로세스들을 수행하도록 구성되는 특수 하드웨어로 구현되는 것에 의해 데스크톱 및/또는 통상의 범용 컴퓨팅 디바이스들에 비해 더 큰 포터블능력과 제한된 프로세싱 전력을 갖춘 (카메라를 갖춘 스마트폰을 포함하는) 소비자 전자 디바이스들에 이용될 수도 있다.
일 실시형태에서, 패닝 샷을 생성하는 것은 장면의 일련의 이미지들을 수신하도록 구성되는 적어도 하나의 프로세서를 포함하는 시스템에 의해 수행될 수도 있다. 일련의 이미지들은 인접하는 시간 증분 단위로 캡처된 복수의 이미지들일 수도 있다. 일련의 이미지들은 장면 내에 이동하는 적어도 하나의 오브젝트 및 백그라운 정보를 캡처할 수도 있다. 백그라운드 정보는 대상 오브젝트의 일부분이 아닌 장면으로부터 캡처된 임의의 정보일 수도 있다. 장면 내에서 이동하는 복수의 오브젝트들의 한 오브젝트가 대상 오브젝트로서 지정되어, 일련의 이미지들 중 한 이미지로부터 카피될 수도 있다. 대상 오브젝트의 지정은 아래 보다 자세하게 설명될 바와 같이 (예를 들어, 사용자 입력으로부터) 수동으로 행해질 수도 있고, (예를 들어, 오브젝트 검출 알고리즘에 기초하여) 자동으로 행해질 수도 있다. 또한, 모션 데이터는 일련의 이미지들의 적어도 부분으로부터 결정될 수도 있고 방향 값 및 크기 값을 정의할 수도 있다. 예를 들어, 일 실시형태에서, 모션 데이터는 2 개의 이미지들을 비교하는 것에 의해 일련의 이미지들 중 초기 이미지와 현재 이미지로부터 결정될 수도 있다. 다른 실시형태에서, 모션 데이터는 도 4a 내지 도 4h 와 연계하여 설명된 바와 같이, 이전의 "현재 이미지' 와 새로운 현재 이미지를 비교하는 것으로 결정될 수도 있다. 일부 실시형태들에서, 모션 데이터는 2개 보다 많은 그리고/또한 전체 일련의 이미지들로부터 결정될 수도 있다.
백그라운드 이미지는 일련의 이미지들 중 2 개의 이미지들을 이용하여 블러링 프로세스를 구현하는 것에 의해 생성될 수도 있다. 예를 들어, 백그라운드 이미지는 초기 이미지를 현재 이미지와 비교하는 것에 의해 결정되는 모션 데이터에 기초하여 초기 이미지와 현재 이미지를 이용하여 블러링 프로세스를 구현하는 것에 의해 생성될 수도 있다. 일부 실시형태들에서, 블러링 프로세스는 초기 이미지 상에 현재 이미지를 오버레이하는 것을 표현하는 연산들을 수행하는 것, 및 모션 데이터의 크기 값에 의해 모션 데이터의 방향으로 현재 이미지를 시프트하는 것 (즉, 도 4a 내지 도 4h 에 설명된 바와 같이 초기 이미지의 픽셀들을 현재 이미지에서의 픽셀들에 맵핑하는 것) 을 포함할 수도 있는 오버레이 프로세스에 의해 구현될 수도 있다. 백그라운 이미지에 대한 픽셀 값들을 생성하기 위해, 시프트된 현재 이미지의 픽셀 값들이 초기 이미지에 부가될 수도 있다. 백그라운드 이미지는 백그라운드 이미지의 픽셀 값들을 정규화하는 것에 의해 (예를 들어, 픽셀 값들 각각을 2 로 나누는 것에 의해) 생성될 수도 있다. 일부 실시형태들에서, 블러링 프로세스는 모션 데이터의 크기 값들만큼 모션 데이터의 방향으로 초기 이미지 또는 현재 이미지를 블러링하도록 블러링 커넬 (또는 기능) 을 이용하는 것 그리고 그 후 백그라운드 이미지를 생성하도록 블러링된 이미지를 이용하는 것에 의해 실현될 수도 있다. 블러링 프로세스의 예들은 도 4a 내지 도 4h 와 연계하여 보다 자세하게 설명된다. 최종적으로, 패닝 샷은 현재 이미지에서의 대상 오브젝트의 로케이션에서 백그라운드 이미지에서의 대상 오브젝트의 이미지를 포함시키는 것에 의해 생성될 수도 있다.
도 1 은 예를 들어, 카메라의 시야 (field of view; FOV) 에서의 오브젝트가, FOV 에서의 대략적으로 동일한 로케이션에서 유지하도록 카메라를 이동시켜, 선명한 오브젝트 및 블러링된 배경을 갖는 이미지를 생성하는 것에 의해, 수동 패닝 기법을 이용하여 생성된 것으로 보이는 이미지를 생성하는데 이용될 수 있는 이미지 캡처 디바이스 (100) 의 일 실시형태의 블록도를 도시한다. 이미지 캡처 디바이스 (100) 는 카메라 모듈 (115) 과 통신하는 이미지 프로세서 (120) 를 포함할 수 있다. 이미지 프로세서 (120) 는 또한 이후에 전자 저장 모듈 (110) 및 전자 디스플레이 (125) 와 통신할 수 있는 작업 메모리 (105), 메모리 (130) 및 디바이스 프로세서 (150) 와 통신할 수 있다. 일부 실시형태들에서, 2 개의 개별 프로세서들 대신에 단일 프로세서가 이용될 수 있다. 일부 실시형태들은 3 개 이상의 프로세서들을 포함할 수 있다. 특정 실시형태들에서, 위에 설명된 컴포넌트들 중 일부는 이미지 캡처 디바이스 (100) 에 포함되지 않을 수도 있다. 일부 실시형태들에서, 위에 설명된 컴포넌트들 중 일부는 이미지 캡처 디바이스 (100) 에 포함될 수도 있다. 예를 들어, 일부 실시형태들에서, 카메라 모듈 (115) 및/또는 디스플레이 (125) 는 이미지 캡처 디바이스 (100) 에 포함되지 않을 수 있거나, 작업 메모리 (105) 및 메모리 (130) 는 단일 메모리 컴포넌트로서 결합될 수 있다.
도 1 에 예시된 이미지 캡처 디바이스 (100) 실시형태는 셀 폰, 디지털 카메라, 태블릿 컴퓨터, 스마트 폰, 개인 휴대 정보 단말기 (personal digital assistant) 등일 수 있거나 또는 그 일부일 수 있다. 이미지 캡처 디바이스 (100) 는 또한 정지형 컴퓨팅 디바이스 또는 패닝 샷의 자동화된 생성이 유리한 임의의 디바이스일 수 있다. 패닝 샷들의 자동화된 생성을 제공하도록 구성된 프로세스 이외에, 복수의 프로세스들이 이미지 캡처 디바이스 (100) 상에서 사용자에게 이용가능할 수 있다. 이들 프로세스들은 통상적인 사진 및 비디오 캡처 프로세스들, 고 동적 범위 이미징 프로세스들, 파노라마 사진 캡처 프로세스들 또는 스테레오스코픽 이미징 프로세스들을 포함할 수도 있다. 본원에 이용된 바와 같이, "패닝 샷들의 자동화된 생성"의 다양한 실시형태들은 다양한 레벨들의 자동 프로세싱을 포함할 수 있으며, 예를 들어, 오브젝트를 선택하고/하거나 백그라운드 이미지의 특징을 선택하는 적어도 하나의 사용자 입력을 포함할 수 있다. 백그라운드 이미지의 특징을 선택하는 일 예에서, 백그라운드 이미지의 블러링 정도를 선택하는 것을 포함한다.
이미지 캡처 디바이스 (100) 는 외부 이미지를 캡처하기 위한 카메라 모듈 (115) 을 포함한다. 카메라 모듈 (115) 은 센서, 렌즈 시스템 및 자동초점 어셈블리를 포함하지만 이에 한정되지 않는, 명확성을 위해 도시되지 않은 다양한 컴포넌트들을 포함할 수 있다. 단일 카메라 모듈 (115) 이 도시되어 있지만, 임의의 수의 카메라 모듈 및/또는 카메라 모듈 컴포넌트들 (센서 또는 렌즈 시스템을 포함) 이 본원에서 설명된 바와 같이 패닝 샷의 자동화된 패닝 생성을 위해 이용될 수도 있다. 예를 들어, 카메라 또는 광학 기기의 수는 시야에 대한 보다 양호한 해상도 또는 더 큰 깊이 결정 능력들을 실현하기 위해 증가될 수도 있다. 카메라 모듈 (115) 은 캡처된 이미지를 이미지 프로세서 (120) 로 송신하기 위해 이미지 프로세서 (120) 에 커플링될 수 있다. 이미지 프로세서 (120) 또는 디바이스 프로세서 (150) 는 패닝 샷들의 자동화된 생성과 연관된 다양한 프로세스들을 수행하기 위해 캡처된 이미지(들)을 수신하도록 구성될 수 있다.
이미지 프로세서 (120) 는 본원에 설명된 패닝 샷 생성을 위한 다양한 프로세싱 동작들을 수행하도록 구성될 수 있다. 이미지 프로세서 (120) 는 이미징 애플리케이션을 위해 특별히 설계된 프로세서일 수 있다. 이미지 프로세싱 동작들의 예들은 크롭핑, (예를 들어, 상이한 해상도로의) 스케일링, 이미지 스티칭, 이미지 포맷 변환, 컬러 보간, 컬러 프로세싱, 이미지 필터링 (예를 들어, 공간 이미지 필터링), 렌즈 아티팩트 또는 결함 수정, 렌즈 라이트 롤-오프 또는 비네트에 의해 야기된 광 레벨의 감소 등을 포함한다. 일부 실시형태들에서 이미지 프로세서 (120) 는 복수의 프로세서들을 포함할 수도 있다. 예를 들어, 복수의 프로세서들의 각각은 이하 자세히 설명될 바와 같이, 메모리 (130) 에 저장된 상이한 모듈들에 의해 결정된 바와 같이 상이한 기능들을 수행하도록 구성될 수 있다. 이미지 프로세서 (120) 는 하나 이상의 전용 이미지 신호 프로세서들 (ISP들) 또는 프로세서의 소프트웨어 구현일 수 있다.
도 1 에 예시된 실시형태를 여전히 참조하여 보면, 이미지 프로세서 (120) 는 메모리 (130) 및 작업 메모리 (105) 에 접속된다. 메모리 (130) 는 다양한 기능을 구현하기 위하여 이미지 프로세서 (120) 가 실행하는 컴퓨터 프로그램 명령들 (일부 실시형태에서는 모듈들로 그룹화됨) 을 포함할 수 있다. 메모리 (120) 는 RAM, ROM 및/또는 다른 영구적인, 보조적인 또는 비일시적인 컴퓨터 판독가능 매체를 포함할 수 있다. 메모리 (130) 는 이미지 캡처 디바이스 (100) 의 일반적인 관리 및 동작에서 이미징 프로세서 (120) 및/또는 디바이스 프로세서 (150) 에 의한 이용을 위한 컴퓨터 프로그램 명령들을 제공하는 오퍼레이팅 시스템 모듈 (145) 을 저장할 수 있다. 예를 들어, 오퍼레이팅 시스템 모듈 (145) 은 디바이스 (100) 의 작업 메모리 (105) 및 프로세싱 리소스들을 관리하도록 이미지 프로세서 (120) 를 구성할 수도 있다. 또한, 오퍼레이팅 시스템 모듈 (145) 은 하드웨어 리소스, 예를 들어, 카메라 모듈 (115) 을 관리하도록 디바이스 드라이버들을 포함할 수도 있다. 따라서, 몇몇 실시형태들에서, 위에 설명된 이미지 프로세싱 모듈들에 포함된 명령들은, 이들 하드웨어 리소스들과 직접적으로 상호작용하지 않을 수도 있고, 오히려, 오퍼레이팅 시스템 모듈 (145) 에 위치된 표준 서브루틴들 또는 API들을 통해 상호작용할 수도 있다. 그 후, 오퍼레이팅 시스템 모듈 (145) 내의 명령들은 이들 하드웨어 컴포넌트들과 직접적으로 상호작용할 수도 있다. 오퍼레이팅 시스템 모듈 (145) 은 또한, 디바이스 프로세서 (150) 와 정보를 공유하도록 이미지 프로세서 (120) 를 구성할 수도 있다.
메모리 (130) 는 본 개시의 양태들을 구현하기 위한 컴퓨터 프로그램 명령들을 및 다른 정보를 더 포함할 수도 있다. 예를 들어, 일 실시형태에서, 메모리 (130) 는 디스플레이 (125) 상에 프리젠테이션을 위한 사용자 인터페이스 (및/또는 그에 대한 명령들) 를 생성하는 사용자 인터페이스 모듈 (140) 을 포함한다. 메모리 (130) 는 또한 패닝 모듈 (155) 을 저장할 수 있다. 패닝 모듈 (155) 은 도 5 를 참조하여 설명된 바와 같이, 이미지 수집 모듈, 대상 오브젝트 캡처 모듈, 모션 데이터 캡처 모듈, 블러링 프로세스 적용 모듈 및 이미지 최종화 모듈을 포함하는 추가 모듈을 포함할 수 있다. 추가의 모듈들이 일부 실시형태들에 포함될 수 있거나, 소정의 실시형태들에 더 적은 수의 모듈들이 포함될 수도 있다. 작업 메모리 (105) 는 메모리 (130) 의 모듈들에 포함된 프로세서 명령들의 작업 세트를 저장하도록 이미지 프로세서 (120) 에 의해 이용될 수도 있다. 작업 메모리 (105) 는 또한 이미지 캡처 디바이스 (100) 의 동작 중에 생성된 동적 데이터 (예를 들어, 패닝 샷들의 자동화된 생성에 이용된 정보) 를 저장하기 위해 이미지 프로세서 (120) 에 의해 이용될 수도 있다. 이 도면에는 외부 디바이스들 또는 하드웨어에 대한 추가적인 모듈들 또는 접속들이 도시되지 않을 수도 있고 다만 패닝 샷 생성과 관련된 다른 동작들을 제공하도록 존재할 수도 있다.
디바이스 프로세서 (150) 는 이미지 캡처 디바이스에 의해 프로세싱된 이미지 (예를 들어, 패닝 샷) 를 사용자에게 디스플레이하도록 디스플레이 (125) 를 제어하도록 구성될 수 있다. 디스플레이 (125) 는 이미지 캡처 디바이스 (100) 의 외부에 있을 수 있거나 이미지 캡처 디바이스 (100) 의 일부일 수도 있다. 디스플레이 (125) 는 또한 메모리에 저장된 또는 사용자 입력을 위해 (예를 들어, 장면 내의 다수의 오브젝트들 중에서 대상 오브젝트를 선택하기 위하여) 사용자에 의해 최근에 캡처된 캡처된 이미지를 디스플레이하도록 구성될 수 있다. 디스플레이 (125) 는 패널 디스플레이, 예를 들어, LCD 스크린, LED 스크린, 또는 다른 디스플레이 기법들을 포함할 수 있으며, 터치 감지 기법들을 구현할 수 있다. 디바이스 프로세서 (150) 는 또한 사용자로부터 입력을 수신하도록 구성될 수 있다. 예를 들어, 디스플레이 (125) 는 또한 터치 스크린이 되도록 구성될 수 있으며, 따라서 사용자로부터 입력을 수신하도록 구성될 수 있다. 사용자는 디스플레이 (125) 를 이용하여 프로세서가 패닝 샷을 생성하는데 이용할 수 있는 정보를 입력할 수 있다. 예를 들어, 사용자는 터치 스크린을 이용하여 디스플레이 (125) 상에 도시된 시야로부터 대상 오브젝트를 선택할 수 있다.
디바이스 프로세서 (150) 는 데이터, 예를 들어 캡처된 이미지들을 표현하는 데이터를 저장 컴포넌트 (110) 에 기록할 수 있다. 저장 컴포넌트 (110) 는 통상의 디스크 디바이스로서 그래픽적으로 표현되지만, 당업자는 저장 컴포넌트 (110) 가 임의의 저장 매체 디바이스로서 구성될 수 있다는 것을 이해할 것이다. 예를 들어, 저장 컴포넌트 (110) 는 플로피 디스크 드라이브, 하드 디스크 드라이브, 광학 디스크 드라이브 또는 광 자기 디스크 드라이브와 같은 디스크 드라이브, 또는 플래시 메모리, RAM, ROM 및/또는 EEPROM 과 같은 고체 상태 메모리를 포함할 수도 있다. 저장 컴포넌트 (110) 는 또한 다수의 메모리 유닛을 포함할 수 있으며, 메모리 유닛들 중 임의의 하나는 이미지 캡처 디바이스 (100) 내에 있도록 구성될 수 있거나 또는 이미지 캡처 디바이스 (100) 외부에 있을 수 있다. 저장 컴포넌트 (110) 는 또한 카메라로부터 제거될 수 있는 캡처된 이미지들을 저장하도록 구성된 메모리 카드들 또는 고속 메모리들을 포함할 수 있다.
도 1 이 프로세서, 이미징 센서, 및 메모리를 포함하는개별적인 컴포넌트들을 갖는 디바이스를 도시하고 있지만, 이러한 개별적인 컴포넌트들이 특정 설계 목적들을 달성하기 위해 다양한 방식들로 결합될 수도 있음을 당업자는 인식할 것이다. 예를 들어, 대안적인 실시형태에서, 메모리 컴포넌트들은 프로세서 컴포넌트들과 결합되어 비용을 절약하고 성능을 개선시킬 수도 있다.
추가로, 도 1 이 수개의 모듈들을 포함하는 메모리 컴포넌트 (106), 및 별도의 작업 메모리 (105) 를 포함하는 복수의 메모리 컴포넌트들을 도시하고 있지만, 당업자는 상이한 메모리 아키텍처들을 이용하는 여러 실시형태들을 인식할 것이다. 예를 들어, 설계는 메모리 (130) 에 포함된 모듈들을 구현하는 프로세서 명령들의 저장을 위하여 ROM 또는 정적 RAM 메모리를 이용할 수도 있다. 프로세서 명령들은 RAM 내에 로딩되어 이미지 프로세서 (120) 에 의한 실행을 가능하게 할 수도 있다. 예를 들어, 작업 메모리 (105) 는 RAM 메모리일 수도 있고, 명령들은 이미지 프로세서 (120) 에 의한 실행 전에 작업 메모리 (105) 내에 로딩된다.
도 2a 는 일련의 이미지들을 이용하여 패닝 샷을 생성하는 프로세스 (200) 의 일 예에 대한 플로우차트를 예시한다. 일부 실시형태들에 따르면, 프로세스 (200) 는 도 1 에서의 패닝 모듈 (155) 에 통합될 수 있다. 프로세스 (200) 는 블록 202 에서 시작할 수도 있다.
블록 202 에서, 프로세스 (200) 는 "초기 이미지"로 지칭될 수 있는 이미지에 액세스할 수 있다. 초기 이미지는 이미지 캡처 디바이스 (100) 에 의해 캡처된 일련의 이미지들 중 제 1 이미지일 수도 있다.
블록 204 에서, 프로세스 (200) 는 "현재 이미지"로 지칭될 수 있는 이미지에 액세스할 수 있다. 현재 이미지는 초기 이미지가 캡처된 이후 캡처된 임의의 이미지, 예를 들어 초기 이미지 이후의 일련의 이미지에서 다음 (연속적인) 이미지일 수 있다. 일부 프로세스들에서, 현재 이미지는 초기 이미지에 후속하는 수 개의 이미지들 (일련의 이미지들) 이며, 이는 대상 오브젝트가 초기 이미지에 묘사된 자신의 포지션으로부터 소정의 (원하는) 거리만큼 이동하게 허용할 수 있다.
블록 206 에서, 프로세스 (200) 는 예를 들어 작업 메모리 (105)(도 1) 에서 대상 오브젝트를 묘사하는 현재 이미지의 일부를 저장할 수 있다. 대상 오브젝트는 사용자 입력 없이 현재 이미지 및/또는 초기 이미지로부터 자동으로 식별될 수 있다. 일부 실시형태들에서, 대상 오브젝트는 도 3b 와 연계하여 더 자세하게 설명될 바와 같이 사용자 입력에 기초하여 수동으로 식별될 수도 있다. 예를 들어, 대상 오브젝트는 일련의 이미지들을 프로세싱하여 특정 기준들을 만족하는 이미지에 묘사된 오브젝트를 식별하는 것에 의해 자동으로 식별될 수 있다. 이 기준들은 복수의 이미지들에 걸쳐 초점을 맞추거나, 특정 형상, 사이즈 및/또는 컬러로 이루어지거나, 초기 이미지의 특정 영역에 있거나 또는 특정 마크를 특징으로 하는 것을 포함할 수 있다.
블록 208 에서, 프로세스 (200) 는 대상 오브젝트에 관련된 모션 데이터를 결정할 수도 있다. 일부 실시형태들에서, 모션 데이터는 도 4a 내지 도 4h 를 참조로 보다 자세하게 설명된 바와 같이, 일련의 이미지들의 상이한 이미지들 사이의 차이, 예를 들어, 현재 이미지와 초기 이미지에서의 대상 오브젝트의 포지션에서의 차이, 또는 일련의 이미지들 중 2 개 보다 많은 이미지들에 묘사된 바와 같은 대상 오브젝트의 포지션의 분석에 기초하여 결정될 수도 있다. 모션 데이터는 방향 값 및 크기 값을 포함할 수도 있다. 방향 값은 초기 이미지와 현재 이미지 사이의 대상 오브젝트의 움직임 방향 (또는 도 4a 내지 도 4h 를 참조하여 설명된 바와 같이 새로운 현재 이미지와 이전의 현재 이미지 사이의 모션 방향) 을 지정할 수도 있다. 크기 값은 초기 이미지와 현재 이미지 사이의 대상 오브젝트의 움직임 양을 나타낼 수 있다.
블록 210 에서, 프로세서 (200) 는 결정된 모션 데이터에 기초하여 블러링 프로세스를 수행할 수도 있다. 특정 실시형태들에서, 블러링 프로세스는 도 4a 내지 도 4h 를 참조하여 보다 자세히 설명된 바와 같이, 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하여 수행될 수도 있다.
블록 212 에서, 프로세스 (200) 는 일련의 이미지들에서 패닝 샷을 생성하는데 이용되기 위해 추가적인 현재 이미지가 이용가능한지를 결정한다. 추가적인 현재 이미지가 이용가능하다면, 프로세스 (200) 는 블록 204 로 리턴한다. 또한, 블러링 프로세스 (블록 210) 후에 생성된 백그라운드 이미지는 새로운 초기 이미지로서 지정되고, 추가적인 현재 이미지는 새로운 현재 이미지로서 액세스된다. 추가적인 현재 이미지가 없다면, 프로세스 (200) 는 블록 214 로 진행한다. 3 개의 이미지들을 이용하는 것과 비교하여 모든 이미지들 (예를 들어, 30 개의 이미지들) 을 이용하는 것으로부터 현저한 이점이 없을 수도 있기 때문에, 다양한 실시형태들에서, 이용된 최대 이미지 수에 대한 값이 있을 수 있으며, 이 값은 사용자 설정될 수도 있고, 디폴트로서 설정될 수 있고/있거나 동적으로 설정될 수도 있다.
블록 214 에서, 프로세스 (200) 는 블러링 프로세스 (블록 210) 로부터 생성된 백그라운드 이미지와 대상 오브젝트를 결합하는 것에 의해 패닝 샷을 생성한다. 일부 실시형태들에서, 대상 오브젝트는 (작업 메모리 (105) 에 저장된) 대상 오브젝트를 취출하는 것 및 대상 오브젝트를 블러링 프로세스 (블록 210) 로부터 생성된 이미지 내에 위치시키는 것에 의해 결합될 수도 있다. 예를 들어, 대상 오브젝트의 픽셀들은 블러링 프로세스로부터 생성된 이미지의 특정 픽셀들을 교체할 수도 있다. 추가된 대상 오브젝트의 로케이션은 현재 이미지에서의 대상 오브젝트의 로케이션에 대응하는 로케이션 (예를 들어, 일련의 이미지들 내의 대상 오브젝트의 마지막 알려진 로케이션) 일 수도 있다.
도 2b 는 일부 실시형태들에 따라 제 1 이미지 및 제 2 이미지로부터 패닝 샷을 생성하기 위한 프로세스 (250) 의 일 예의 플로우차트를 예시한다. 이는 예를 들어, 패닝 모듈 (155)(도 1) 에 의해 행해질 수도 있다. 프로세스 (250) 는 블록 252 에서 시작할 수도 있다.
블록 252 에서, 프로세서 (250) 는 장면의 일련의 이미지들을 수신 또는 액세스한다. 일련의 이미지들은 장면 내에 이동하는 적어도 하나의 오브젝트 및 백그라운 정보를 포함할 수도 있다. 백그라운드 정보는 이동하는 오브젝트에 관련되지 않은 정보일 수도 있다.
블록 254 에서, 프로세스 (250) 는 일련의 이미지들에서 적어도 하나의 오브젝트 중 모션 중인 대상 오브젝트를 묘사하는 이미지 데이터를 생성한다. 이미지 데이터는 일련의 이미지들의 이미지들 중 한 이미지로부터 이미지 데이터를 카피하는 것에 의해 생성될 수도 있다.
블록 256 에서, 프로세스 (250) 는 모션 데이터를 결정한다. 모션 데이터는 일련의 이미지들에서 묘사된 대상 오브젝트의 움직임에 기초한다. 장면은 제 1 이미지 및 제 1 이미지 뒤에 캡처된 제 2 이미지를 포함할 수도 있다. 모션 데이터는 일련의 이미지들 중 제 2 이미지에서의 대상 오브젝트의 제 2 로케이션을, 일련의 이미지들 중 제 1 이미지에서의 대상 오브젝트의 제 1 로케이션과 비교하는 것에 의해 결정될 수도 있다.
블록 258 에서, 프로세스 (250) 는 백그라운드 이미지를 생성한다. 백그라운드 이미지는 제 1 이미지, 제 2 이미지 및 모션 데이터를 이용하여 블러링 프로세스를 구현하는 것에 의해 생성될 수도 있다. 블러링 프로세스는 도 4a 내지 도 4h 와 연계하여 보다 자세하게 설명된 바와 같이 수행될 수도 있다.
블록 260 에서, 프로세스 (250) 는 최종 이미지를 생성한다. 최종 이미지는 백그라운드 이미지에 대상 오브젝트를 묘사하는 이미지 데이터를 포함시키는 것에 의해 생성될 수도 있다. 이미지 데이터는 제 2 (또는 최종) 이미지에서 대상 오브젝트의 로케이션에 대응하는 로케이션에 포함될 수도 있다.
도 3a 는 도 1 의 이미지 캡처 디바이스에 의해 캡처될 수도 있는 모션 중인 다수의 오브젝트들을 갖는 장면 (300) 을 예시한다. 오브젝트들은 (여러 오브젝트들 다음에 오는 화살표로 표시된 바와 같이) 장면 내에서 상이한 방향들로 이동하는 원 (320), 직사각형 (340) 및 타원 (330) 을 포함한다.
도 3b 는 도 3a 의 장면 (300) 의 이미지 (350) 를 예시한다. 이미지 (350) 는 원 (320), 직사각형 (340) 및 타원 (330) 각각을 포함한다. 특정 실시형태들에서, 이미지 (350) 는 패닝 샷들의 생성에 관련된 프로세스들을 위하여 이용될 수도 있다. 예를 들어, 이미지 (350) 는 장면 (300) 내의 대상 오브젝트를 결정하는데 이용될 수도 있다. 특정 실시형태들에서, 대상 오브젝트는 이미지 (350) 내의 오브젝트들 중에서부터, 사용자 입력에 의해, 예를 들어, 대상 오브젝트의 사용자 선택에 의해 결정될 수도 있다. 이미지 캡처 디바이스 (100) 는 디스플레이 (125; 도 1) 로부터 사용자 입력을 수신하도록 구성될 수도 있고, 여기에서 예를 들어, (디스플레이 (125) 가 터치스크린 능력을 포함하는 경우) 사용자가 디스플레이 (125) 상에서 관심 대상의 오브젝트를 직접 선택할 수도 있다. 이미지 캡처 디바이스 (100) 는 디스플레이된 이미지로부터 관심 대상의 오브젝트를 사용자가 선택하도록 커서를 제공하는 것에 의해 사용자 입력을 용이하게 하도록 또한 구성될 수도 있다. 특정 실시형태들에서, 대상 오브젝트의 결정을 위해 이용된 이미지는 참조 이미지로서 지칭될 수도 있다. 일부 실시형태들에서, 이미지 캡처 디바이스 (100) 는 사용자 입력 없이 자동으로 대상 오브젝트를 결정하도록 구성될 수도 있다. 예를 들어, 이미지 캡처 디바이스는 특정 기준들을 만족시키는 것에 기초하여 대상 오브젝트를 결정할 수도 있다. 이 기준들은 (이들에 제한되는 것은 아니지만) 복수의 이미지들에 걸쳐 초점을 맞추거나, 특정 형상, 사이즈 또는 컬러로 이루어지거나, 초기 이미지의 특정 영역에 있거나 또는 특정 마크를 특징으로 하는 것을 포함할 수 있다.
도 4a 내지 도 4h 는 블러링 프로세스의 일부 실시형태들의 양태들을 예시한다. 블러링 프로세스는 패닝 샷을 생성하도록 장면 (300; 도 3a) 의 일련의 이미지들에 걸쳐 수행될 수도 있다. 도 4a 에 예시된 바와 같이, 이미지 (350) 의 원 (320) 은 대상 오브젝트로서 선택될 수도 있다. 이미지 (350) 는 대상 오브젝트를 묘사하는 일련의 이미지들에서 초기 이미지로 지정될 수 있으며, 도 4a 내지 도 4h 의 나머지 설명에서 초기 이미지 (350) 로 지칭될 것이다. 도 4b 를 참조하면, 장면 (300) 의 일련의 이미지들에서의 다음 이미지가 현재 이미지 (404) 로서 지정된다. 모션의 방향 및 모션의 크기를 특징화하는 모션 데이터는 초기 이미지 (350) 와 현재 이미지 (404) 사이의 차이에 기초하여 결정될 수 있다. 예를 들어, 모션 데이터는 대상 오브젝트 (320) 가 초기 이미지 (350) 와 현재 이미지 (404) 사이에 형성된 움직임 양 (또는 아래 설명된 바와 같이 새로운 현재 이미지와 이전 현재 이미지 사이의 차이들) 을 특징화하는 것에 의해 결정될 수도 있다. 도 4c 는 초기 이미지 (350) 가 수직선을 가지며 현재 이미지 (404) 가 수평선을 갖는 것으로 명료화를 위해 예시한다.
도 4a 내지 도 4c 에 예시된 바와 같이, 현재 이미지 (404) 는 모션 데이터로 묘사된 크기 및 방향으로 초기 이미지 (350) 에 대하여 오버레이 및 시프트될 수도 있다. 오버레이는 한 이미지의 각각의 로케이션의 각각의 픽셀을 다른 이미지의 다른 픽셀에 맵핑하는 것을 지칭한다. 시프트는 한 이미지의 각각의 로케이션의 각각의 픽셀을 상이한 로케이션에서 다른 이미지의 다른 픽셀에 맵핑하는 것을 지칭한다. 예를 들어, 도 4a 의 초기 이미지 (350) 에서의 픽셀들 (360A, 360B, 360C 및 360D) 은 도 4b 의 현재 이미지 (404) 에서의 픽셀들 (402A, 402B, 402C, 및 402D) 에 맵핑될 수도 있다. 따라서, 도 4a 의 초기 이미지 (350) 에서의 픽셀들 (360A, 360B, 360C 및 360D) 은 도 4b 의 현재 이미지 (404) 에서의 픽셀들 (402A, 402B, 402C, 및 402D) 에 의해 오버레이될 수도 있다. 또한, 도 4a 의 초기 이미지 (350) 에서의 픽셀들 (360A, 360B, 360C 및 360D) 은 도 4b 의 현재 이미지 (404) 에서의 픽셀들 (402A, 402B, 402C, 및 402D) 로케이션들로부터, 모션 데이터로부터 결정된 크기 및 방향만큼 오프셋된 로케이션들에 있을 수도 있다. 따라서, 도 4a 의 초기 이미지 (350) 에서의 픽셀들 (360A, 360B, 360C 및 360D) 로서 시프트된 픽셀들 각각은 도 4b 의 현재 이미지 (404) 에서의 픽셀들 (402A, 402B, 402C, 및 402D) 에 대해 상이한 로케이션들에서 오버레이될 수도 있다.
또한, 도 4c 에 예시된 바와 같이, 백그라운드 이미지 (407) 는 오버레이 및 시프트된 이미지들을 부가하는 것에 생성될 수도 있다. 백그라운드 이미지는 명료화를 위하여 수평선 및 수직선을 갖는 것으로서 도 4c 에 예시된다. 부가하는 것은 서로에 대해 각각의 이미지의 오버레이 및 시프트된 픽셀 값들을 부가하는 것을 지칭한다. 예를 들어, 픽셀들 (360A, 360B, 360C 및 360D) 각각이 40 의 픽셀 값을 갖고, 픽셀들 (402A, 402B, 402C, 및 402D) 각각이 60 의 픽셀 값을 가지면, 픽셀 값들을 부가하는 것은 비정규화된 백그라운드 이미지에 대응하는 각각의 픽셀에서 100 의 픽셀 값들을 가져온다. 이들 부가된 픽셀 값들은 이미지 (350) 와 이미지 (404) 에서 픽셀 데이터가 존재하는 픽셀 로케이션들일 것이다. 즉, 여기에서 이미지들 (350 및 404) 은 오버랩한다. 백그라운드 이미지 (407) 는 이미지들 (350 및 404) 의 오버랩에 대응하는 로케이션들에서 픽셀 값들의 집합으로서 생성될 수도 있다.
백그라운드 이미지 (407) 는 백그라운드 이미지를 정규화하는 것에 의해 최종화될 수도 있다. 정규화하는 것은 부가된 픽셀 값들을 2 로 나누고, 그리고 일련의 이미지들에서 이미지들의 표준 치수들로, 부가된 픽셀들을 스케일링하여 백그라운드 이미지를 가져오는 것을 지칭한다. 도 4c 에 예시된 바와 같이, 백그라운드 이미지 (407) 는 블러링된 대상 오브젝트 (406) 를 생성하지만, 초기 이미지 (350) 및 현재 이미지 (404) 의 특정 영역이 오버랩하지 않을 수도 있기 때문에 해상도를 손실한다. 다른 말로 표현하면, (예를 들어, 초기 이미지 (350) 의 영역 (403) 에서 또는 현재 이미지 (404) 의 영역 (405) 에서) 현재 이미지 (404) 의 픽셀이 초기 이미지 (350) 의 대응 픽셀을 갖지 않거나 초기 이미지 (350) 의 픽셀이 현재 이미지 (404) 의 대응 픽셀을 갖지 않는 결과로 생기는 널 값으로 인해 해상도가 손실될 수 있다. 부가된 픽셀 값들은 부가된 픽셀 값들을 2로 나누고 일련의 이미지에서의 이미지의 표준 치수들로 해상도에서 스케일업하는 것에 의해 정규화될 수도 있다. 스케일된 백그라운드 이미지 (407) 는 도 4e 에서 새로운 초기 이미지 (406) 로서 이용되는 최종화된 백그라운드 이미지 (407) 일 수 있다.
도 4e 에서, 도 4d 에 예시된 최종화된 백그라운드 이미지는 새로운 초기 이미지 (408) 로서 지정되고, 장면의 일련의 이미지들에서 다음 이미지는 새로운 현재 이미지 (408) 로서 지정된다. 도 2 의 블록 208 과 연계하여 논의된 바와 같이, 모션의 방향 및 모션의 크기를 특징화하는 모션 데이터는 이전의 현재 이미지 (404) 와 새로운 현재 이미지 (410) 사이의 차이에 기초하여 결정된다. 이전 현재 이미지는 새로운 현재 이미지가 이용될 때 현재 이미지로서 이전에 이용된 이미지이다. 그 후, 새로운 현재 이미지 (410) 는 새로운 초기 이미지 (408) 상에 오버레이되고, 모션 데이터에 의해 지시된 바와 같이 크기 및 방향으로 시프트된다. 오버레이된 새로운 초기 이미지 (408) 및 새로운 현재 이미지 (410) 의 픽셀 값들이 부가되어 백그라운드 이미지 (413) 를 생성한다. 이 백그라운드 이미지 (413) 는 그 후 도 4d 에서 새로운 초기 이미지 (414) 로서 이용되는 최종화된 백그라운드 이미지를 생성하도록 정규화된다.
도 4f 에서, 도 4c 에서 생성된 백그라운드 이미지는 새로운 초기 이미지 (414) 로서 지정되고, 장면의 일련의 이미지들에서 다음 이미지는 새로운 현재 이미지 (416) 로서 지정된다. 도 2 의 블록 208 과 연계하여 논의된 바와 같이, 모션의 방향 및 모션의 크기를 특징화하는 모션 데이터는 이전의 현재 이미지 (410) 와 새로운 현재 이미지 (416) 사이의 차이에 기초하여 결정된다. 그 후, 새로운 현재 이미지 (416) 는 새로운 초기 이미지 (414) 상에 오버레이되고, 모션 데이터에 의해 지시된 바와 같이 크기 및 방향으로 시프트된다. 오버레이된 새로운 초기 이미지 (414) 및 새로운 현재 이미지 (416) 의 픽셀 값들이 부가되어 백그라운드 이미지 (419) 를 생성한다. 이 백그라운드 이미지 (419) 는 그 후 도 4e 에서 새로운 초기 이미지 (420) 로서 이용되는 최종화된 백그라운드 이미지를 생성하도록 정규화된다.
도 4g 에서, 도 4d 에서 생성된 바와 같이 예시된 백그라운드 이미지 (419) 는 새로운 초기 이미지 (420) 로서 지정되고, 장면의 일련의 이미지들에서 다음 이미지는 새로운 현재 이미지 (422) 로서 지정된다. 도 2 의 블록 208 과 연계하여 논의된 바와 같이, 모션의 방향 및 모션의 크기를 특징화하는 모션 데이터는 이전의 현재 이미지 (416) 와 새로운 현재 이미지 (422) 사이의 차이에 기초하여 결정된다. 그 후, 새로운 현재 이미지 (422) 는 새로운 초기 이미지 (420) 상에 오버레이되고, 모션 데이터에 의해 지시된 바와 같이 크기 및 방향으로 시프트된다. 오버레이된 새로운 초기 이미지 (420) 및 새로운 현재 이미지 (422) 의 픽셀 값들이 부가되어 백그라운드 이미지 (425) 를 생성한다. 이 백그라운드 이미지 (425) 는 그 후 도 4e 에서 새로운 초기 이미지 (426) 로서 이용되는 최종화된 백그라운드 이미지를 가져오도록 정규화된다.
도 4h 에서, 도 4e 에서 생성된 바와 같이 예시된 백그라운드 이미지 (425) 는 새로운 초기 이미지 (426) 로서 지정되고, 장면의 일련의 이미지들에서 다음 이미지는 새로운 현재 이미지 (428) 로서 지정된다. 이 새로운 현재 이미지 (428) 가 일련의 이미지들 중 마지막 이미지이기 때문에, 백그라운드 이미지가 생성된 후에 새로운 현재 이미지 (428) 내의 대상 오브젝트가 이용을 위해 추출된다. 도 2 의 블록 208 과 연계하여 논의된 바와 같이, 모션의 방향 및 모션의 크기를 특징화하는 모션 데이터는 이전의 현재 이미지 (422) 와 새로운 현재 이미지 (428) 사이의 차이에 기초하여 결정된다. 그 후, 새로운 현재 이미지 (428) 는 새로운 초기 이미지 (426) 상에 오버레이되고, 모션 데이터에 의해 지시된 바와 같이 크기 및 방향으로 시프트된다. 오버레이된 새로운 초기 이미지 (426) 및 새로운 현재 이미지 (428) 의 픽셀 값들이 부가되고 그 다음, 백그라운드 이미지 (431) 를 생성하도록 정규화된다. 이 백그라운드 이미지 (431) 는 일련의 이미지들 내의 이미지들의 표준 사이즈로 해상도에 있어서 스케일업되고, 대상 오브젝트의 선명한 이미지는 패닝을 생성하기 위해 새로운 현재 이미지 (428) 에서 대상 오브젝트의 마지막 포지션 상에 오버레이된다
도 5 는 도 1 의 이미지 캡처 디바이스에 이용될 수도 있는 패닝 모듈 (155) 의 블록도를 예시한다. 패닝 모듈 (155) 은 이미지 수집 모듈 (502), 대상 오브젝트 캡처 모듈 (504), 모션 데이터 캡처 모듈 (506), 블러링 프로세스 적용 모듈 (508) 및 이미지 최종화 모듈 (510) 을 포함한다. 도 1 과 연계하여 설명된 바와 같이, 모듈들 각각은 상이한 애플리케이션들에 적합한 상이한 이미지 프로세서들, 또는 동일한 이미지 프로세서 (120) 와 연계하여 이용될 수도 있다. 예를 들어, 특정 실시형태들에서, 모듈들 각각은 배정된 모듈을 서비스하는 상이한 이미지 프로세서들에 배정될 수도 있다.
이미지 수집 모듈 (502) 은 초기 이미지 및 현재 이미지에 액세스하고 초기 이미지 및 현재 이미지를 대상 오브젝트 캡처 모듈 (504) 에 전달할 수 있다. 대상 오브젝트 캡처 모듈 (504) 은 도 3b 와 연계하여 더 자세하게 논의되는 바와 같이 사용자 입력없이 또는 사용자 입력으로 수동으로 초기 이미지 또는 현재 이미지로부터 대상 오브젝트를 결정하는데 이용될 수도 있다. 예를 들어, 현재 이미지에서의 대상 오브젝트는 카피되어 작업 메모리 (105)(도 1) 에 저장될 수 있다. 대상 오브젝트 캡처 모듈은 모션 데이터 캡처 모듈 (506) 에 대한 대상 오브젝트를 식별할 수도 있다. 모션 데이터 캡처 모듈 (506) 은 일련의 이미지들 중의 상이한 이미지들 사이, 예를 들어 현재 이미지와 초기 이미지 사이의 차이들 (또는 도 4a 내지 도 4h 와 연계하여 설명된 바와 같이 새로운 현재 이미지와 이전의 현재 이미지 사이의 차이들) 의 분석에 기초하여 또는 도 4a 내지 도 4h 와 연계하여 설명된 바와 같이 일련의 이미지들 중 2 개 보다 많은 이미지들에 걸쳐 모션 데이터를 결정할 수도 있다.
특정 실시형태들에서, 모션 데이터는 방향 값 및 크기 값을 포함할 수도 있다. 방향 값은 초기 이미지와 현재 이미지 사이 (또는 도 4a 내지 도 4h 와 연계하여 설명된 바와 같이 새로운 현재 이미지와 이전의 현재 이미지 사이) 의 대상 오브젝트의 움직임 방향을 지정할 수도 있다. 크기 값은 초기 이미지와 현재 이미지 사이에 이루어진 움직임의 양을 나타낼 수 있다. 블러링 프로세스 적용 모듈 (508) 은 모션 데이터 캡처 모듈 (506) 로부터 캡처된 모션 데이터에 기초하여 블러링 프로세스를 구현하는 것에 의해 백그라운드 이미지를 생성할 수도 있다. 블러링 프로세스는 도 4a 내지 도 4h 와 연계하여 설명된 바와 같이 초기 이미지와 현재 이미지를 오버레이하고 서로에 대해 부가하는 오버레이 프로세스에 의해 구현될 수도 있다. 일련의 이미지에서 다른 현재 이미지가 있다면, 블러링 프로세스 적용 모듈 (508) 은 이미지 수집 모듈에 새로운 백그라운드 이미지를 새로운 초기 이미지로서 지정하고 도 2 의 블록 212 에서 논의된 바와 같이, 새로운 초기 이미지와 새로운 현재 이미지를 계속 프로세싱하도록 표시할 수 있다. 일련의 이미지에 추가적인 현재 이미지들이 없다면, 백그라운드 이미지는 이미지 최종화 모듈로 전달되며 이미지 최종화 모듈은 대상 오브젝트를 백그라운드 이미지 상에 중첩시켜 패닝 샷을 생성한다. 중첩의 로케이션은 현재 이미지에서의 대상 오브젝트의 로케이션에 대응하는 로케이션 (예를 들어, 일련의 이미지들 내의 대상 오브젝트의 마지막 알려진 로케이션) 일 수도 있다.
본원에서 이용되는 바와 같이, 용어 "결정하는" 는 매우 다양한 액션들을 포괄한다. 예를 들어, "결정하는" 는 계산하는, 컴퓨팅, 프로세싱, 도출하는, 조사하는, 검색하는(예를 들어, 테이블, 데이터베이스, 또는 다른 데이터 구조에서 검색하는), 확인하는 등을 포함할 수도 있다. 또한, "결정하는"은 수신하는 (예를 들면, 정보를 수신하는), 액세스하는 (메모리의 데이터에 액세스하는) 등을 포함할 수 있다. 또한, "결정하는"은 해결하는, 선택하는, 고르는, 확립하는 등을 포함할 수 있다. 또한, 본원에 이용된 "채널 폭"은 특정 양태들에서 대역폭으로서 또한 지칭될 수도 있거나 이를 포함할 수도 있다.
본원에서 이용되는 바와 같이, 아이템들의 리스트 중 "그 중 적어도 하나" 를 지칭하는 구절은 단일 멤버들을 포함한, 이들 아이템들의 임의의 조합을 지칭한다. 일 예로서, "a, b, 또는 c: 중의 적어도 하나" 는 a, b, c, a-b, a-c, b-c, 및 a-b-c 를 포함하고자 한다.
위에서 설명된 방법들의 다양한 동작들은 다양한 하드웨어 및/또는 스프트웨어 컴포넌트(들), 회로들, 및/또는 모듈(들) 과 같은, 동작들을 수행할 수 있는 임의의 적절한 수단에 의해 수행될 수도 있다. 일반적으로, 도면들에서 도시된 임의의 동작들은 그 동작들을 수행할 수 있는 대응하는 기능적 수단에 의해 수행될 수도 있다.
본원에 이용된 용어 인터페이스는 함께 둘 이상의 디바이스들을 접속하도록 구성되는 하드웨어 또는 소프트웨어를 지칭할 수도 있다. 예를 들어, 인터페이스는 디바이스들 사이에서 정보 또는 데이터의 통신을 허용하도록 구성될 수도 있고 프로세서의 일부일 수도 있다. 인터페이스는 칩 또는 다른 디바이스로 통합될 수도 있다. 예를 들어, 일부 실시형태들에서, 인터페이스는 다른 디바이스에서 한 디바이스로부터의 통신들 또는 정보를 수신하도록 구성된 수신기를 포함할 수도 있다. (예를 들어, 프로세서 또는 버스의) 인터페이스는 수신된 정보를 프로세싱할 수도 있거나 다른 디바이스 또는 프론트 엔드부에 의해 프로세싱된 데이터 또는 정보를 수신할 수도 있다. 일부 실시형태들에서, 인터페이스는 다른 디바이스에 정보 또는 데이터를 송신 또는 통신하도록 구성되는 송신기를 포함할 수도 있다. 따라서, 인터페이스는 정보 또는 데이터를 송신할 수도 있거나 또는 (예를 들어, 버스를 통하여) 송신을 위한 출력용 데이터 또는 정보를 준비할 수도 있다.
본원 개시와 연계하여 설명된 다양한 예증적인 논리 블록들, 모듈들, 및 회로들은 본원에서 개시된 기능들을 수행하도록 디자인된 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 반도체 (ASIC), 필드 프로그래머블 게이트 어레이 (FPGA) 또는 다른 프로그래머블 로직 디바이스(PLD), 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 이들의 임의의 조합에 의해 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있으나, 대안으로, 프로세서는 임의의 상업적으로 이용가능한 프로세서, 컨트롤러, 마이크로컨트롤러, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로 구현될 수도 있다.
하나 이상의 양태들에서, 상술된 기능들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 기능들은 컴퓨터 판독가능 매체 상에 명령들 또는 코드로 저장되거나 그 매체를 통해 송신될 수도 있다. 컴퓨터 판독가능 매체들은 한 장소에서 다른 장소로 컴퓨터 프로그램의 전송을 가능하게 하는 임의의 매체를 포함한 통신 매체들 및 컴퓨터 저장 매체 양쪽을 포함한다. 저장 매체들은 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체들일 수도 있다. 비제한적인 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 이나 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 요구되는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 반송하거나 저장하는데 이용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 본원에서 이용되는 바와 같은 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (CD), 레이저 디스크, 광 디스크, DVD (digital versatile disc), 플로피 디스크, 및 블루레이 디스크를 포함하는데, 여기서 디스크 (disk) 들은 보통 자기적으로 데이터를 재생하는 반면, 디스크 (disc) 들은 레이저들로 광학적으로 데이터를 재생한다. 따라서, 일부 양태들에서 컴퓨터 판독가능 매체들은 비일시적 컴퓨터 판독가능 매체들 (예를 들어, 유형의 매체들) 을 포함할 수도 있다.
본원에서 개시된 방법들은 상술된 방법을 달성하기 위한 하나 이상의 단계들 또는 액션들을 포함한다. 방법 단계들 및/또는 액션들은 청구항들의 범위를 벗어나지 않으면서 서로 상호 교환될 수도 있다. 즉, 단계들 또는 액션들에 대한 특정 순서가 명시되지 않는 한, 특정 단계들 및/또는 액션들의 순서 및/또는 이용은 청구항들의 범위로부터 벗어남이 없이 수정될 수도 있다.
본원에 설명된 기능들은 하나 또는 그 이상의 명령들로 프로세서 판독가능 매체 또는 컴퓨터 판독가능 매체에 저장될 수도 있다. 용어 "컴퓨터 판독가능 매체" 는 컴퓨터 또는 프로세서에 의해 액세스될 수 있는 임의의 이용가능한 매체를 지칭한다. 제한하지 않는 예로서, 그러한 매체는, RAM, ROM, EEPROM, 플래시 메모리, CD-ROM 이나 다른 광학적 디스크 저장소, 자기적 디스크 저장소나 다른 자기적 저장 디바이스들, 또는 명령들이나 데이터 구조들의 형태로 원하는 프로그램 코드를 저장하는데 이용될 수도 있고 컴퓨터에 의해 액세스될 수도 있는 임의의 다른 매체를 포함할 수도 있다. 본원에서 이용된 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, DVD (digital versatile disc), 플로피 디스크, 및 블루 레이® 디스크를 포함하며, 여기서 디스크 (disk) 들은 보통 데이터를 자기적으로 재생하는데 반해, 디스크 (disc) 들은 레이저를 이용하여 데이터를 광학적으로 재생한다. 컴퓨터 판독가능 매체는 유형이고 비일시적일 수도 있음을 주지해야 한다. 용어 "컴퓨터 판독가능 제품" 은 컴퓨팅 디바이스 또는 프로세서에 의해 실행, 처리, 또는 컴퓨팅될 수도 있는 코드 또는 명령들 (예를 들어, "프로그램") 과 조합하는 컴퓨팅 디바이스 또는 프로세서를 지칭한다. 본원에서 이용된 바와 같은 용어 "코드" 는 컴퓨팅 디바이스나 프로세서에 의해 실행될 수 있는 소프트웨어, 명령들, 코드, 또는 데이터를 지칭할 수도 있다. 송신 (또는 통신) 수단은 2 개의 디바이스들 사이에서 통신하는데 이용될 수도 있다. 예를 들어, 정보가 동축 케이블, 광 섬유 케이블, 연선, 디지털 가입자 회선 (digital subscriber line; DSL), 또는 적외선, 무선, 및/또는 마이크로파와 같은 무선 기술들을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 이루어지는 경우, 동축 케이블, 광 섬유 케이블, 연선, DSL, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들은 송신 (또는 통신) 매체의 정의 내에 포함된다
따라서, 소정의 양태들은 본원에 제시된 동작들을 수행하는 컴퓨터 프로그램 제품을 포함할 수도 있다. 예를 들어, 이러한 컴퓨터 프로그램 제품은 저장된(및/또는 인코딩된) 명령들을 갖는 컴퓨터 판독가능 매체를 포함할 수도 있으며, 명령들은 본원에 설명된 동작들을 수행하기 위해 하나 이상의 프로세서들에 의해 실행가능할 수도 있다.
또한, 본원에 설명된 방법들 및 기법들을 수행하는 모듈들 및/또는 다른 적절한 수단은 다운로드될 수도 있고/있거나, 그렇지 않으면 가능한 적용가능한 사용자 단말 및/또는 기지국에 의해 획득될 수도 있다. 예를 들면, 본원에서 설명된 방법들을 수행하기 위한 수단의 전송을 용이하게 하기 위한 서버에 디바이스가 커플링될 수도 있다. 대안으로, 본원에 설명된 다양한 방법들이 저장 수단 (예를 들어, RAM, ROM, 물리적 컴팩트 디스크 (CD) 나 플로피 디스크와 같은 물리적 저장 매체 등) 을 통해 제공될 수도 있어, 사용자 단말기 및/또는 기지국은 디바이스에 커플링할 시에 또는 디바이스에 저장 수단을 제공할 시에 다양한 방법들을 획득할 수 있다. 또한, 본원에서 설명된 상기 방법들 및 기술들을 디바이스에 제공하기 위한 임의의 다른 적절한 기술들이 활용될 수 있다.
하기의 특허청구범위는 위에 설명된 정확한 구성 및 컴포넌트들로 제한되는 것이 아님을 이해해야 한다. 청구범위의 범위를 벗어나지 않으면서, 본원에서서 설명된 방법들 및 장치들의 배치, 동작 및 세부사항들에서 다양한 수정예들, 변경예들 및 변형예들이 이루어질 수도 있다.
앞서 언급한 것이 본 개시의 양태들에 대해 교시되어 있지만, 본 개시의 기본 범위로부터 벗어나지 않으면서 본 개시의 다른 양태 및 추가적인 양태들이 디바이스화될 수도 있고, 본 개시의 범위는 뒤따르는 청구항들에 의해 결정된다.

Claims (30)

  1. 시스템으로서,
    장면의 적어도 2 개의 이미지들의 일련의 이미지들을 저장하도록 구성되는 메모리 컴포넌트로서, 상기 일련의 이미지들은 장면 내에서 이동하는 적어도 하나의 오브젝트를 포함하는, 상기 메모리 컴포넌트; 및
    상기 메모리 컴포넌트와 통신하는 적어도 하나의 프로세서를 포함하고,
    상기 프로세서는:
    상기 적어도 2 개의 이미지들에서 대상 오브젝트 (subject object) 를 결정하고;
    상기 적어도 2 개의 이미지들 중 적어도 하나의 이미지로부터 상기 대상 오브젝트를 묘사하는 이미지 데이터를 생성하고;
    상기 적어도 2 개의 이미지들에서 상기 대상 오브젝트의 포지션에 기초하여 상기 대상 오브젝트의 모션 데이터를 결정하고;
    상기 적어도 2 개의 이미지들 및 상기 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하고; 그리고
    상기 백그라운드 이미지에 상기 대상 오브젝트를 묘사하는 상기 이미지 데이터를 포함시키는 것에 의해 최종 이미지를 생성하도록 구성되는, 시스템.
  2. 제 1 항에 있어서,
    상기 모션 데이터는 방향 및 크기 값을 포함하고, 상기 적어도 2 개의 이미지들은 제 1 이미지 및 상기 제 1 이미지 뒤에 캡처된 제 2 이미지를 포함하고,
    상기 백그라운드 이미지는:
    상기 모션 데이터의 크기 값에 의해 상기 모션 데이터의 방향으로 상기 제 2 이미지를 시프트하는 것,
    상기 제 1 이미지 상에, 시프트된 상기 제 2 이미지를 오버레이하는 것,
    상기 백그라운드 이미지에 대한 픽셀 값들을 생성하도록 상기 제 1 이미지에 상기 시프트된 제 2 이미지의 픽셀 값들을 추가하는 것, 및
    상기 백그라운드 이미지의 상기 픽셀 값들을 정규화하는 것을 포함하는 블러링 프로세스를 이용하는 것에 의해 생성되는, 시스템.
  3. 제 2 항에 있어서,
    상기 픽셀 값들을 정규화하는 것은 상기 제 2 이미지의 치수로 상기 백그라운드 이미지를 스케일링하는 것을 포함하는, 시스템.
  4. 제 2 항에 있어서,
    상기 픽셀 값들을 정규화하는 것은 상기 백그라운드 이미지의 픽셀 값들의 각각을 2 로 나누는 것을 포함하는, 시스템.
  5. 제 2 항에 있어서,
    상기 제 1 이미지 상에 상기 시프트된 제 2 이미지를 오버레이하는 것은, 상기 제 1 이미지의 제 1 픽셀 값을 상기 제 2 이미지의 제 2 픽셀 값들에 맵핑하는, 시스템.
  6. 제 1 항에 있어서,
    상기 적어도 2 개의 이미지들은 제 1 이미지 및 상기 제 1 이미지 뒤에 캡처된 상기 제 2 이미지를 포함하고,
    상기 적어도 하나의 프로세서는 또한:
    상기 일련의 이미지들 중 제 3 이미지에서의 대상 오브젝트의 로케이션을 상기 제 2 이미지에서의 대상 오브젝트의 로케이션과 비교하는 것에 의해 상기 대상 오브젝트의 제 2 모션 데이터를 결정하는 것으로서, 상기 제 3 이미지는 상기 제 2 이미지 뒤에 캡처되는, 상기 제 2 모션 데이터를 결정하고; 그리고
    상기 백그라운드 이미지 및 상기 제 2 모션 데이터를 이용하는 것에 의해 상기 백그라운드 이미지를 업데이트하도록 구성되는, 시스템.
  7. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는 또한, 상기 대상 오브젝트를 묘사하는 상기 이미지 데이터를 상기 제 2 이미지에서의 상기 대상 오브젝트의 로케이션에서 상기 백그라운드 이미지 상에 포함시키는 것에 의해 상기 최종 이미지를 생성하도록 구성되는, 시스템.
  8. 제 7 항에 있어서,
    상기 적어도 하나의 프로세서는 또한, 상기 제 2 이미지로부터 상기 일련의 이미지들에서 적어도 하나의 오브젝트 중 모션 중인 대상 오브젝트의 이미지를 생성하도록 구성되는, 시스템.
  9. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는 또한, 사용자 입력을 수신하고 상기 사용자 입력을 이용하여 상기 대상 오브젝트를 식별하도록 구성되는, 시스템.
  10. 제 9 항에 있어서,
    상기 적어도 하나의 프로세서는 또한, 디스플레이 상에 상기 장면을 따라 이동하는 적어도 2 개의 오브젝트들을 디스플레이하고, 사용자 입력을 수신하여 상기 적어도 2 개의 오브젝트들 중 어느 오브젝트가 대상 오브젝트인지를 식별하도록 구성되는, 시스템.
  11. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는 또한, 상기 대상 오브젝트를 식별하는데 이용하기 위해 참조 이미지로서 상기 일련의 이미지들 중 하나를 결정하도록 구성되는, 시스템.
  12. 제 11 항에 있어서,
    상기 적어도 하나의 프로세서는 또한, 상기 일련의 이미지들 중 어느 이미지가 참조 이미지인지를 표시하는 사용자 입력을 수신하도록 구성되는, 시스템.
  13. 제 1 항에 있어서,
    상기 장면의 일련의 이미지들을 캡처하도록 구성되는 카메라 모듈;
    상기 장면을 따라 이동하는 적어도 2 개의 오브젝트들을 디스플레이하도록 구성되는 디스플레이; 및
    상기 메모리, 상기 적어도 하나의 프로세서, 상기 카메라 모듈 및 상기 디스플레이를 엔벨로프하도록 구성되는 하우징으로서, 상기 디스플레이 및 상기 카메라 모듈은 또한 상기 하우징의 표면의 부분을 형성하도록 구성되는, 상기 하우징을 더 포함하는, 시스템.
  14. 패닝 샷 (panning shot) 을 생성하기 위한 방법으로서,
    장면의 일련의 이미지들을 수신하는 단계로서, 상기 일련의 이미지들은 적어도 하나의 오브젝트 및 백그라운 정보를 포함하는, 상기 일련의 이미지들을 수신하는 단계;
    상기 일련의 이미지들에서 상기 적어도 하나의 오브젝트 중 모션 중인 대상 오브젝트를 묘사하는 이미지 데이터를 생성하는 단계;
    상기 일련의 이미지들 중 제 2 이미지에서의 상기 대상 오브젝트의 제 2 로케이션을 상기 일련의 이미지들 중 제 1 이미지에서의 상기 대상 오브젝트의 제 1 로케이션과 비교하는 것에 의해 상기 대상 오브젝트의 모션 데이터를 결정하는 단계로서, 상기 제 2 이미지는 상기 제 1 이미지 뒤에 캡처되는, 상기 대상 오브젝트의 모션 데이터를 결정하는 단계;
    상기 제 1 이미지, 상기 제 2 이미지 및 상기 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하는 단계; 및
    상기 백그라운드 이미지에 상기 대상 오브젝트를 묘사하는 상기 이미지 데이터를 포함시키는 것에 의해 최종 이미지를 생성하는 단계를 포함하는, 패닝 샷을 생성하기 위한 방법.
  15. 제 14 항에 있어서,
    상기 모션 데이터는 방향 및 크기 값을 포함하고, 상기 백그라운드 이미지를 생성하는 단계는:
    상기 모션 데이터의 크기 값에 의해 상기 모션 데이터의 방향으로 상기 제 2 이미지를 시프트하는 것,
    상기 제 1 이미지 상에, 시프트된 상기 제 2 이미지를 오버레이하는 것,
    상기 백그라운드 이미지에 대한 픽셀 값들을 생성하도록 상기 제 1 이미지에 상기 시프트된 제 2 이미지의 픽셀 값들을 추가하는 것, 및
    상기 백그라운드 이미지의 상기 픽셀 값들을 정규화하는 것
    을 포함하는 블러링 프로세스를 구현하는 단계를 더 포함하는, 패닝 샷을 생성하기 위한 방법.
  16. 제 14 항에 있어서,
    상기 일련의 이미지 중 제 3 이미지를 상기 제 2 이미지와 비교하는 것에 의해 상기 대상 오브젝트의 제 2 모션 데이터를 결정하는 단계로서, 상기 제 3 이미지는 상기 제 2 이미지 뒤에 캡처되는, 상기 대상 오브젝트의 제 2 모션을 결정하는 단계; 및
    상기 백그라운드 이미지 및 상기 제 2 모션 데이터를 이용하는 것에 의해 상기 백그라운드 이미지를 업데이트하는 단계를 더 포함하는, 패닝 샷을 생성하기 위한 방법.
  17. 제 14 항에 있어서,
    상기 최종 이미지를 생성하는 단계는, 상기 제 2 이미지에서의 상기 대상 오브젝트의 로케이션에서 상기 백그라운드 이미지 상에 상기 대상 오브젝트의 이미지를 포함시키는 단계를 포함하는, 패닝 샷을 생성하기 위한 방법.
  18. 제 14 항에 있어서,
    상기 일련의 이미지들에서 적어도 하나의 오브젝트 중 모션 중인 대상 오브젝트는, 상기 제 2 이미지로부터 카피되는, 패닝 샷을 생성하기 위한 방법.
  19. 제 14 항에 있어서,
    픽셀 값들을 정규화하는 것은, 상기 제 2 이미지의 치수로 상기 백그라운드 이미지를 스케일링하는 것을 포함하는, 패닝 샷을 생성하기 위한 방법.
  20. 제 14 항에 있어서,
    픽셀 값들을 정규화하는 것은, 상기 백그라운드 이미지의 픽셀 값들의 각각을 2 로 나누는 것을 포함하는, 패닝 샷을 생성하기 위한 방법.
  21. 제 14 항에 있어서,
    상기 제 1 이미지에 상기 시프트된 제 2 이미지의 픽셀 값들을 추가하는 것으로부터 일어나는 픽셀 값들을 갖는 픽셀들의 수는 상기 제 2 이미지에서의 픽셀들의 수 미만인, 패닝 샷을 생성하기 위한 방법.
  22. 시스템으로서,
    적어도 컴퓨터 실행가능 명령들을 저장하도록 구성되는 메모리; 및
    하나 이상의 프로세서들을 포함하고, 상기 메모리와 통신하는 컴퓨팅 디바이스를 포함하고,
    상기 컴퓨팅 디바이스는:
    장면의 일련의 이미지들을 수신하도록 구성되는 이미지 수집 모듈로서, 상기 일련의 이미지들은 상기 장면 내의 적어도 하나의 오브젝트를 캡처하는, 상기 이미지 수집 모듈;
    상기 적어도 하나의 오브젝트로부터 선택되는 대상 오브젝트를 묘사하는 이미지 데이터를 생성하도록 구성되는 대상 오브젝트 캡처 모듈;
    상기 일련의 이미지들에서 상기 대상 오브젝트의 포지션에 기초하여 상기 대상 오브젝트의 모션 데이터를 결정하도록 구성되는 모션 데이터 캡처 모듈;
    상기 일련의 이미지들 및 상기 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하도록 구성되는 블러링 프로세스 적용 모듈; 및
    상기 백그라운드 이미지에 상기 대상 오브젝트를 묘사하는 상기 이미지 데이터를 포함시키는 것에 의해 최종 이미지를 생성하도록 구성되는 이미지 최종화 모듈을 구현하도록 컴퓨터 실행가능 명령들을 실행하도록 구성되는, 시스템.
  23. 제 22 항에 있어서,
    상기 대상 오브젝트 캡처 모듈은 또한, 사용자 입력을 수신하고 상기 사용자 입력을 이용하여 상기 대상 오브젝트를 식별하도록 구성되는, 시스템.
  24. 제 23 항에 있어서,
    상기 대상 오브젝트 캡처 모듈은 또한, 디스플레이 상에 장면을 따라 이동하는 적어도 2 개의 오브젝트들을 디스플레이하고, 사용자 입력을 수신하여 상기 적어도 2 개의 오브젝트들 중 어느 오브젝트가 대상 오브젝트인지를 식별하도록 구성되는, 시스템.
  25. 제 23 항에 있어서,
    상기 대상 오브젝트 캡처 모듈은 또한, 상기 대상 오브젝트를 식별하는데 이용하기 위해 참조 이미지로서 상기 일련의 이미지들 중 하나를 결정하도록 구성되는, 시스템.
  26. 제 25 항에 있어서,
    상기 대상 오브젝트 캡처 모듈은 또한, 상기 일련의 이미지들 중 어느 이미지가 참조 이미지인지를 표시하는 사용자 입력을 수신하도록 구성되는, 시스템.
  27. 컴퓨터 실행가능 명령들을 저장한, 컴퓨터 판독가능한 비일시적 저장 매체로서,
    상기 컴퓨터 실행가능 명령들은 하나 이상의 컴퓨터 시스템들에 의해 실행될 때:
    장면의 일련의 이미지들을 수신하는 것으로서, 상기 일련의 이미지들은 상기 장면 내의 적어도 하나의 오브젝트 및 백그라운 정보를 포함하는, 상기 일련의 이미지들을 수신하는 것;
    상기 적어도 하나의 오브젝트에 기초하여 대상 오브젝트를 묘사하는 이미지 데이터를 생성하는 것;
    상기 일련의 이미지들을 따라 상기 대상 오브젝트를 비교하는 것에 의해 상기 대상 오브젝트의 모션 데이터를 결정하는 것;
    상기 일련의 이미지들 및 상기 모션 데이터를 이용하는 것에 의해 백그라운드 이미지를 생성하는 것; 및
    상기 백그라운드 이미지에 상기 대상 오브젝트를 묘사하는 상기 이미지 데이터를 포함시키는 것에 의해 최종 이미지를 생성하는 것을 포함하는 동작들을 수행하도록 상기 하나 이상의 컴퓨터 시스템들을 구성하는, 컴퓨터 판독가능한 비일시적 저장 매체.
  28. 제 27 항에 있어서,
    상기 모션 데이터는 방향 및 크기 값을 포함하고, 상기 일련의 이미지들은 제 1 이미지 및 상기 제 1 이미지 뒤에 캡처된 제 2 이미지를 포함하고,
    최종 이미지를 생성하는 것은:
    상기 모션 데이터의 크기 값에 의해 상기 모션 데이터의 방향으로 상기 제 2 이미지를 시프트하는 것,
    상기 제 1 이미지 상에, 시프트된 상기 제 2 이미지를 오버레이하는 것,
    상기 백그라운드 이미지에 대한 픽셀 값들을 생성하도록 상기 제 1 이미지에 상기 시프트된 제 2 이미지의 픽셀 값들을 추가하는 것, 및
    상기 백그라운드 이미지의 상기 픽셀 값들을 정규화하는 것을 포함하는, 컴퓨터 판독가능한 비일시적 저장 매체.
  29. 제 28 항에 있어서,
    상기 픽셀 값들을 정규화하는 것은, 상기 제 2 이미지의 사이즈로 상기 백그라운드 이미지를 스케일링하는 것을 포함하는, 컴퓨터 판독가능한 비일시적 저장 매체.
  30. 제 28 항에 있어서,
    상기 픽셀 값들을 정규화하는 것은, 상기 백그라운드 이미지의 픽셀 값들의 각각을 2 로 나누는 것을 포함하는, 컴퓨터 판독가능한 비일시적 저장 매체.
KR1020177028259A 2015-04-10 2016-03-22 패닝 샷들의 자동 생성 KR102480245B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/684,227 US9591237B2 (en) 2015-04-10 2015-04-10 Automated generation of panning shots
US14/684,227 2015-04-10
PCT/US2016/023581 WO2016164166A1 (en) 2015-04-10 2016-03-22 Automated generation of panning shots

Publications (2)

Publication Number Publication Date
KR20170135855A true KR20170135855A (ko) 2017-12-08
KR102480245B1 KR102480245B1 (ko) 2022-12-21

Family

ID=55650749

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177028259A KR102480245B1 (ko) 2015-04-10 2016-03-22 패닝 샷들의 자동 생성

Country Status (6)

Country Link
US (1) US9591237B2 (ko)
EP (1) EP3281400A1 (ko)
JP (1) JP6746607B2 (ko)
KR (1) KR102480245B1 (ko)
CN (1) CN107409166B (ko)
WO (1) WO2016164166A1 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109040552B (zh) 2013-06-13 2021-06-22 核心光电有限公司 双孔径变焦数字摄影机
EP3017326B1 (en) 2013-07-04 2021-01-06 Corephotonics Ltd. Miniature telephoto lens assembly
EP3028443A2 (en) 2013-08-01 2016-06-08 Corephotonics Ltd. Thin multi-aperture imaging system with auto-focus and methods for using same
US9392188B2 (en) 2014-08-10 2016-07-12 Corephotonics Ltd. Zoom dual-aperture camera with folded lens
KR20230007523A (ko) 2015-04-16 2023-01-12 코어포토닉스 리미티드 소형 접이식 카메라의 오토 포커스 및 광학 이미지 안정화
KR102253997B1 (ko) 2015-08-13 2021-05-20 코어포토닉스 리미티드 비디오 지원 및 스위칭/비스위칭 동적 제어 기능이 있는 듀얼-애퍼처 줌 카메라
KR102002718B1 (ko) 2016-05-30 2019-10-18 코어포토닉스 리미티드 회전식 볼-가이드 음성 코일 모터
US10845565B2 (en) 2016-07-07 2020-11-24 Corephotonics Ltd. Linear ball guided voice coil motor for folded optic
WO2018116322A1 (en) * 2016-12-20 2018-06-28 Indian Institute Of Technology Madras System and method for generating pan shots from videos
CN114051092B (zh) 2016-12-28 2024-07-26 核心光电有限公司 具有延伸光折叠元件扫描范围的致动器及含其的折叠相机
US10884321B2 (en) 2017-01-12 2021-01-05 Corephotonics Ltd. Compact folded camera
KR102317624B1 (ko) 2017-03-27 2021-10-26 삼성전자 주식회사 전자 장치 및 그의 이미지 처리 방법
CN106791456A (zh) * 2017-03-31 2017-05-31 联想(北京)有限公司 一种拍照方法及电子设备
US10499042B2 (en) * 2017-04-01 2019-12-03 Intel Corporation Barreling and compositing of images
US11151727B2 (en) * 2017-08-24 2021-10-19 Sony Group Corporation Image processing devices with efficient motion blur detection and methods of operating same
CN113075838B (zh) 2017-11-23 2022-11-29 核心光电有限公司 摄影机及制法、移动电子设备及减小凸起占用空间的方法
US10600157B2 (en) 2018-01-05 2020-03-24 Qualcomm Incorporated Motion blur simulation
JP7030534B2 (ja) 2018-01-16 2022-03-07 キヤノン株式会社 画像処理装置および画像処理方法
EP3848749A1 (en) 2018-02-05 2021-07-14 Corephotonics Ltd. Reduced height penalty for folded camera
EP3785059B1 (en) 2018-04-23 2023-05-31 Corephotonics Ltd. An optical-path folding-element with an extended two degree of freedom rotation range
WO2020039302A1 (en) 2018-08-22 2020-02-27 Corephotonics Ltd. Two-state zoom folded camera
KR102061867B1 (ko) * 2018-09-10 2020-01-02 한성욱 이미지 생성 장치 및 그 방법
CN110782459B (zh) * 2019-01-08 2021-02-19 北京嘀嘀无限科技发展有限公司 一种图像处理方法及装置
CN110223245B (zh) * 2019-05-16 2021-07-16 华南理工大学 基于深度神经网络的模糊图片清晰化处理方法及系统
WO2021019318A1 (en) * 2019-07-31 2021-02-04 Corephotonics Ltd. System and method for creating background blur in camera panning or motion
US11949976B2 (en) 2019-12-09 2024-04-02 Corephotonics Ltd. Systems and methods for obtaining a smart panoramic image
CN113315903B (zh) * 2020-02-26 2023-08-22 北京小米移动软件有限公司 图像获取方法和装置、电子设备、存储介质
US11164299B1 (en) * 2020-04-06 2021-11-02 Gopro, Inc. Systems and methods for generating panning images
CN113630545B (zh) * 2020-05-07 2023-03-24 华为技术有限公司 一种拍摄方法及设备
KR102495627B1 (ko) 2020-05-17 2023-02-06 코어포토닉스 리미티드 전체 시야 레퍼런스 이미지 존재 하의 이미지 스티칭
KR102617779B1 (ko) 2020-05-30 2023-12-22 코어포토닉스 리미티드 슈퍼 매크로 이미지를 얻기 위한 시스템 및 방법
WO2022013753A1 (en) 2020-07-15 2022-01-20 Corephotonics Ltd. Point of view aberrations correction in a scanning folded camera
US11637977B2 (en) 2020-07-15 2023-04-25 Corephotonics Ltd. Image sensors and sensing methods to obtain time-of-flight and phase detection information
US11328437B2 (en) 2020-09-08 2022-05-10 Weta Digital Limited Method for emulating defocus of sharp rendered images
US11308586B2 (en) * 2020-09-08 2022-04-19 Unity Technologies Sf Method for applying a vignette effect to rendered images
EP4204885A4 (en) 2021-06-08 2024-03-06 Corephotonics Ltd. SYSTEMS AND CAMERAS FOR TILTING A FOCAL PLANE OF A SUPER MACRO-IMAGE

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120242853A1 (en) * 2011-03-25 2012-09-27 David Wayne Jasinski Digital camera for capturing an image sequence
US20150002684A1 (en) * 2013-06-28 2015-01-01 Canon Kabushiki Kaisha Image processing apparatus

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07254071A (ja) * 1994-03-15 1995-10-03 Matsushita Electric Ind Co Ltd アニメーション表示平滑化方法およびアニメーション表示平滑化装置
JP4067138B2 (ja) * 1994-06-07 2008-03-26 株式会社セガ ゲーム装置
JP2003228735A (ja) * 2002-02-05 2003-08-15 Shinnichi Electronics Kk パチンコ機の画像表示装置、パチンコ機の画像表示装置に於ける画像表示方法及び画像表示プログラム
JP2006025312A (ja) * 2004-07-09 2006-01-26 Konica Minolta Photo Imaging Inc 撮像装置、及び画像取得方法
JP2006050070A (ja) * 2004-08-02 2006-02-16 Fuji Photo Film Co Ltd 画像処理方法および装置並びにプログラム
JP2006080844A (ja) * 2004-09-09 2006-03-23 Nikon Corp 電子カメラ
JP4639965B2 (ja) * 2005-05-31 2011-02-23 カシオ計算機株式会社 撮像装置、画像処理方法及びプログラム
JP2007074031A (ja) * 2005-09-02 2007-03-22 Canon Inc 撮像装置、及び、画像処理装置及び方法
JP4818987B2 (ja) * 2007-05-21 2011-11-16 オリンパスイメージング株式会社 撮像装置、表示方法、及びプログラム
US20080309770A1 (en) 2007-06-18 2008-12-18 Fotonation Vision Limited Method and apparatus for simulating a camera panning effect
JP4561845B2 (ja) 2008-02-29 2010-10-13 カシオ計算機株式会社 撮像装置と画像処理プログラム
JP5210198B2 (ja) * 2009-02-13 2013-06-12 オリンパス株式会社 画像処理装置、画像処理方法、画像処理プログラム
JP2010268441A (ja) * 2009-04-16 2010-11-25 Sanyo Electric Co Ltd 画像処理装置、撮像装置及び画像再生装置
JP2011114823A (ja) * 2009-11-30 2011-06-09 Sanyo Electric Co Ltd 画像処理装置及び撮像装置
JP5397481B2 (ja) 2009-12-18 2014-01-22 富士通株式会社 画像選別装置及び画像選別方法
JP5581728B2 (ja) * 2010-02-24 2014-09-03 カシオ計算機株式会社 画像処理装置及び方法、並びにプログラム
JP5018937B2 (ja) * 2010-07-16 2012-09-05 カシオ計算機株式会社 撮像装置と画像処理プログラム
WO2013021767A1 (ja) 2011-08-10 2013-02-14 富士フイルム株式会社 動体検出装置及び方法
US9361703B2 (en) * 2012-04-03 2016-06-07 Sony Corporation Image processing device, control method of image processing device and program
KR20140132568A (ko) 2013-05-08 2014-11-18 삼성전자주식회사 움직이는 물체를 하나의 이미지에 합성하기 위한 장치 및 방법
JP6261205B2 (ja) * 2013-06-28 2018-01-17 キヤノン株式会社 画像処理装置
JP2015012482A (ja) * 2013-06-28 2015-01-19 キヤノン株式会社 画像処理装置及び画像処理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120242853A1 (en) * 2011-03-25 2012-09-27 David Wayne Jasinski Digital camera for capturing an image sequence
US20150002684A1 (en) * 2013-06-28 2015-01-01 Canon Kabushiki Kaisha Image processing apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Kyunman Jeong et al., ‘Digital panning shot generator from photographs’, Springer 2014, 2014.12.23.* *

Also Published As

Publication number Publication date
WO2016164166A1 (en) 2016-10-13
KR102480245B1 (ko) 2022-12-21
CN107409166B (zh) 2021-04-20
US9591237B2 (en) 2017-03-07
CN107409166A (zh) 2017-11-28
EP3281400A1 (en) 2018-02-14
JP2018513640A (ja) 2018-05-24
US20160301868A1 (en) 2016-10-13
JP6746607B2 (ja) 2020-08-26

Similar Documents

Publication Publication Date Title
KR102480245B1 (ko) 패닝 샷들의 자동 생성
KR102278776B1 (ko) 이미지 처리 방법, 기기, 및 장치
US10389948B2 (en) Depth-based zoom function using multiple cameras
US11978225B2 (en) Depth determination for images captured with a moving camera and representing moving features
US10015469B2 (en) Image blur based on 3D depth information
US9313419B2 (en) Image processing apparatus and image pickup apparatus where image processing is applied using an acquired depth map
JP6347675B2 (ja) 画像処理装置、撮像装置、画像処理方法、撮像方法及びプログラム
KR20170106325A (ko) 다중 기술 심도 맵 취득 및 융합을 위한 방법 및 장치
JP2017022694A (ja) ユーザのデバイスに明視野ベースの画像を表示するための方法および装置ならびに対応するコンピュータプログラム製品
JP5766077B2 (ja) ノイズ低減のための画像処理装置及び画像処理方法
JP2015035658A (ja) 画像処理装置、画像処理方法、および撮像装置
JP2011166264A (ja) 画像処理装置、撮像装置、および画像処理方法、並びにプログラム
JP7223079B2 (ja) 画像処理装置およびその制御方法、ならびに撮像装置
US9332195B2 (en) Image processing apparatus, imaging apparatus, and image processing method
CN105335959B (zh) 成像装置快速对焦方法及其设备
US20230033956A1 (en) Estimating depth based on iris size
US10715743B2 (en) System and method for photographic effects
JP6762779B2 (ja) 画像処理装置、撮像装置、画像処理方法、及びプログラム
JP7409604B2 (ja) 画像処理装置、撮像装置、画像処理方法、プログラムおよび記録媒体
JP7458723B2 (ja) 画像処理装置、撮像装置、制御方法、およびプログラム
JP6833772B2 (ja) 画像処理装置、撮像装置、画像処理方法およびプログラム
CN117998211A (zh) 超延时视频生成方法和装置
WO2015055892A1 (en) Method, apparatus and computer program product for detection and correction of image defect

Legal Events

Date Code Title Description
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