KR101674340B1 - 돌리 줌 효과를 자동으로 렌더링하기 위한 방법 및 장치 - Google Patents

돌리 줌 효과를 자동으로 렌더링하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR101674340B1
KR101674340B1 KR1020157026640A KR20157026640A KR101674340B1 KR 101674340 B1 KR101674340 B1 KR 101674340B1 KR 1020157026640 A KR1020157026640 A KR 1020157026640A KR 20157026640 A KR20157026640 A KR 20157026640A KR 101674340 B1 KR101674340 B1 KR 101674340B1
Authority
KR
South Korea
Prior art keywords
image frame
interest
points
scaling factor
program code
Prior art date
Application number
KR1020157026640A
Other languages
English (en)
Other versions
KR20150122752A (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 KR20150122752A publication Critical patent/KR20150122752A/ko
Application granted granted Critical
Publication of KR101674340B1 publication Critical patent/KR101674340B1/ko

Links

Images

Classifications

    • H04N5/23296
    • 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/2628Alteration of picture size, shape, position or orientation, e.g. zooming, rotation, rolling, perspective, translation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B66HOISTING; LIFTING; HAULING
    • B66FHOISTING, LIFTING, HAULING OR PUSHING, NOT OTHERWISE PROVIDED FOR, e.g. DEVICES WHICH APPLY A LIFTING OR PUSHING FORCE DIRECTLY TO THE SURFACE OF A LOAD
    • B66F11/00Lifting devices specially adapted for particular uses not otherwise provided for
    • B66F11/04Lifting devices specially adapted for particular uses not otherwise provided for for movable platforms or cabins, e.g. on vehicles, permitting workmen to place themselves in any desired position for carrying out required operations
    • B66F11/048Mobile camera platform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/167Detection; Localisation; Normalisation using comparisons between temporally consecutive images
    • 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/69Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Studio Devices (AREA)
  • Structural Engineering (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Geology (AREA)
  • Mechanical Engineering (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

돌리 줌 효과를 수행하기 위해 카메라 이동에 따라 줌 특징을 자동으로 조정하기 위한 다양한 방법이 제공된다. 일 예시적인 방법은 비디오 데이터로부터 제 1 이미지 프레임을 수신하는 단계 - 제 1 이미지 프레임은 2개 이상의 관심 포인트를 포함함 -, 비디오 데이터로부터 제 2 이미지 프레임을 수신하는 단계 - 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -, 2개 이상의 관심 포인트의 위치에서 제 1 이미지 프레임에서부터 제 2 이미지 프레임까지의 차이를 추적하는 단계를 포함할 수 있다. 방법은 스케일링 팩터를 계산하는 단계 및 스케일링 팩터를 제 2 이미지 프레임에 적용하는 단계를 또한 포함할 수 있다.

Description

돌리 줌 효과를 자동으로 렌더링하기 위한 방법 및 장치 {METHOD AND APPARATUS FOR AUTOMATICALLY RENDERING DOLLY ZOOM EFFECT}
본 발명의 실시예는 일반적으로 미디어 콘텐츠(media content)에 관한 것으로서, 더 구체적으로는 돌리 줌 효과(dolly zoom effect)를 수행하도록 카메라 이동에 따라 줌 특징을 자동으로 조정하기 위한 방법, 장치, 및 컴퓨터 프로그램 제품에 관한 것이다.
콘서트, 극장 공연 및/또는 스포츠와 같은 공개 이벤트(public event)에서, 사용자가 카메라를 사용하여 이들 공개 이벤트를 캡처하고, 이어서 이미지, 비디오, 오디오 레코딩 등과 같은 미디어 콘텐츠로서 캡처된 이벤트를 저장하는 것이 점점 인기를 얻고 있다. 미디어 콘텐츠는 모바일 단말기에 부착된 카메라 또는 다른 이미지 캡처링 디바이스에 의해 더욱 더 빈번히 캡처된다. 그러나, 모바일 단말기는 시네마토그래픽 효과(cinematographic effects)를 수행하는 소프트웨어 기능의 하드웨어를 제공하지 않는다. 카메라가 피사체(subject)를 향해 또는 피사체로부터 이격하여 이동하는 동안 뷰의 각도를 조정하도록 줌 렌즈를 설정함으로써 특징화되는 시네마토그래픽 효과인 돌리 줌은 성취가 어렵다. 현재, 하이엔드(high end) 카메라가 이 효과를 성취하도록 요구된다. 비전문가는 통상적으로 전문가 장비를 사용하더라도 이 효과를 성취하기 위해 다수회 샷(shot)을 시도해야 할 것이다. 카메라 장착 이동 전화(mobile phone)의 대부분의 사용자 인터페이스는 연속적인 줌을 허용하지 않고, 대신에 통상적으로 고정된 줌 단계의 특정 세트를 채용한다. 둘째로, 현재의 사용자 인터페이스로 줌 설정을 수동으로 조정하는 것은 충분히 유연하지가 않다. 일반적으로, 초점 길이의 정확한 변화에 카메라 모션의 속도를 일치시키는 것은 하이엔드 카메라에 의해 매우 어렵고 이동 전화 카메라에 의해서는 불가능하다.
따라서, 돌리 줌 효과를 생성하기 위해 카메라 이동에 따라 줌 특징을 자동으로 조정하기 위한 방법, 장치 및 컴퓨터 프로그램 제품이 본 발명에 따른 예시적인 실시예에 따라 제공된다. 더욱이, 줌 특징의 조정은 사용자에 의한 줌 특징의 수동 동작보다는 이미지 분석에 의해 행해진다. 예시적인 실시예에 따른 방법, 장치 및 컴퓨터 프로그램 제품은 돌리 줌 효과를 표시하기 위해 사후 레코딩 이미지 프로세싱의 경우에 크롭 영역(crop area)을 결정하도록 구성될 수 있다.
일 예시적인 방법은 비디오 데이터로부터 제 1 이미지 프레임을 수신하는 단계 - 제 1 이미지 프레임은 2개 이상의 관심 포인트를 포함함 -, 비디오 데이터로부터 제 2 이미지 프레임을 수신하는 단계 - 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -, 2개 이상의 관심 포인트의 위치에서 제 1 이미지 프레임에서부터 제 2 이미지 프레임까지의 차이를 추적하는 단계, 2개 이상의 관심 포인트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하는 단계, 및 프로세서에 의해, 스케일링 팩터를 제 2 이미지 프레임에 적용하는 단계를 포함할 수 있다. 방법은 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하는 단계를 더 포함할 수 있다. 대안 실시예에서, 방법은 제 1 이미지 프레임 내의 주피사체의 선택을 수신하는 단계와, 주피사체의 선택에 따라 2개 이상의 관심 포인트를 선택하는 단계를 더 포함할 수 있다.
다른 실시예에서, 방법은 2개 이상의 관심 포인트의 각각에 대한 기술자(descriptor)를 저장하는 단계 및 스케일링 팩터의 계산에 응답하여 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하는 단계를 포함할 수 있다. 더욱이, 스케일링 팩터를 적용하는 단계는 카메라 디바이스의 광학 또는 디지털 줌 특징(zoom feature)을 조정하는 것을 포함할 수 있다. 대안적으로, 스케일링 팩터를 적용하는 단계는 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역을 선택하는 단계를 포함할 수 있다. 다른 실시예에서, 방법은 스케일링 팩터를 적용함으로써 제 2 이미지 프레임을 변환하는 단계, 및 제 1 이미지 프레임 및 변환된 제 2 이미지 프레임을 제시하는 단계를 포함할 수 있고, 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역이고, 크롭 영역은 크롭 영역에서, 2개 이상의 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 선택된다.
예시적인 장치는 적어도 하나의 프로세서와, 컴퓨터 프로그램 코드를 포함하는 적어도 하나의 메모리를 포함할 수 있고, 적어도 하나의 메모리 및 저장된 컴퓨터 프로그램 코드는, 적어도 하나의 프로세서를 사용하여, 장치로 하여금, 비디오 데이터로부터 제 1 이미지 프레임을 수신하고 - 제 1 이미지 프레임은 2개 이상의 관심 포인트를 포함함 -, 비디오 데이터로부터 제 2 이미지 프레임을 수신하고 - 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -, 2개 이상의 관심 포인트의 위치에서 제 1 이미지 프레임에서부터 제 2 이미지 프레임까지의 차이를 추적하고, 2개 이상의 관심 포인트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하고, 스케일링 팩터를 제 2 이미지 프레임에 적용하게 하도록 구성된다. 적어도 하나의 메모리 및 저장된 컴퓨터 프로그램 코드는, 적어도 하나의 프로세서를 사용하여, 장치로 하여금 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하게 하도록 더 구성된다. 대안 실시예에서, 적어도 하나의 메모리 및 저장된 컴퓨터 프로그램 코드는, 적어도 하나의 프로세서를 사용하여, 장치로 하여금 제 1 이미지 프레임 내의 주피사체의 선택을 수신하게 하고, 주피사체의 선택에 따라 2개 이상의 관심 포인트를 선택하게 하도록 더 구성된다.
적어도 하나의 메모리 및 저장된 컴퓨터 프로그램 코드는, 적어도 하나의 프로세서를 사용하여, 장치로 하여금 2개 이상의 관심 포인트의 각각에 대한 기술자를 저장하게 하고, 스케일링 팩터의 계산에 응답하여 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하게 하도록 더 구성된다. 더욱이, 스케일링 팩터를 적용하는 것은 카메라 디바이스의 줌 특징의 조정하는 것을 포함할 수 있다. 대안적으로, 스케일링 팩터를 적용하는 것은 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역을 선택하는 것을 포함할 수 있다. 다른 실시예에서, 적어도 하나의 메모리 및 저장된 컴퓨터 프로그램 코드는, 적어도 하나의 프로세서를 사용하여, 장치로 하여금 스케일링 팩터를 적용함으로써 제 2 이미지 프레임을 변환하게 하고, 제 1 이미지 프레임 및 변환된 제 2 이미지 프레임을 제시하게 하도록 더 구성되고, 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역이고, 크롭 영역은 크롭 영역에서, 2개 이상의 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 선택된다.
다른 실시예에서, 저장된 컴퓨터 판독가능 프로그램 명령어를 갖는 적어도 하나의 비일시적 컴퓨터 판독가능 저장 매체를 포함하는 컴퓨터 프로그램 제품이 제공되고, 컴퓨터 판독가능 프로그램 명령어는 비디오 데이터로부터 제 1 이미지 프레임을 수신하고 - 제 1 이미지 프레임은 2개 이상의 관심 포인트를 포함함 -, 비디오 데이터로부터 제 2 이미지 프레임을 수신하고 - 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -, 2개 이상의 관심 포인트의 위치에서 제 1 이미지 프레임에서부터 제 2 이미지 프레임까지의 차이를 추적하고, 2개 이상의 관심 포인트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하고, 프로세서에 의해, 스케일링 팩터를 제 2 이미지 프레임에 적용하기 위한 프로그램 명령어를 포함한다. 컴퓨터 판독가능 프로그램 명령어는 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하기 위해 구성된 프로그램 명령어를 더 포함한다. 대안 실시예에서, 컴퓨터 판독가능 프로그램 명령어는 제 1 이미지 프레임 내의 주피사체의 선택을 수신하고, 주피사체의 선택에 따라 2개 이상의 관심 포인트를 선택하기 위해 구성된 프로그램 명령어를 더 포함한다.
컴퓨터 판독가능 프로그램 명령어는 2개 이상의 관심 포인트의 각각에 대한 기술자를 저장하게 하고, 스케일링 팩터의 계산에 응답하여 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하기 위해 구성된 프로그램 명령어를 더 포함한다. 더욱이, 스케일링 팩터를 적용하는 것은 카메라 디바이스의 줌 특징을 조정하는 것을 포함할 수도 있다. 대안적으로, 스케일링 팩터를 적용하는 것은 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역을 선택하는 것을 포함할 수도 있다. 다른 실시예에서, 컴퓨터 판독가능 프로그램 명령어는 스케일링 팩터를 적용함으로써 제 2 이미지 프레임을 변환하고, 제 1 이미지 프레임 및 변환된 제 2 이미지 프레임을 제시하기 위한 프로그램 명령어를 더 포함할 수 있고, 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역이고, 크롭 영역은 크롭 영역에서, 2개 이상의 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 선택된다.
일 예시적인 장치는 비디오 데이터로부터 제 1 이미지 프레임을 수신하고 - 제 1 이미지 프레임은 2개 이상의 관심 포인트를 포함함 -, 비디오 데이터로부터 제 2 이미지 프레임을 수신하고 - 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -, 2개 이상의 관심 포인트의 위치에서 제 1 이미지 프레임에서부터 제 2 이미지 프레임까지의 차이를 추적하고, 2개 이상의 관심 포인트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하고, 프로세서에 의해, 스케일링 팩터를 제 2 이미지 프레임에 적용하기 위한 수단을 포함할 수 있다. 장치는 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하기 위한 수단을 더 포함할 수 있다. 대안 실시예에서, 장치는 제 1 이미지 프레임 내의 주피사체의 선택을 수신하고 주피사체의 선택에 따라 2개 이상의 관심 포인트를 선택하기 위한 수단을 더 포함할 수 있다.
장치는 2개 이상의 관심 포인트의 각각에 대한 기술자를 저장하고 스케일링 팩터의 계산에 응답하여 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하기 위한 수단을 더 포함할 수 있다. 더욱이, 스케일링 팩터를 적용하는 것은 카메라 디바이스의 줌 특징을 조정하는 것을 포함할 수도 있다. 대안적으로, 스케일링 팩터를 적용하는 것은 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역을 선택하는 것을 포함할 수도 있다. 다른 실시예에서, 장치는 스케일링 팩터를 적용함으로써 제 2 이미지 프레임을 변환하고, 제 1 이미지 프레임 및 변환된 제 2 이미지 프레임을 제시하기 위한 수단을 더 포함할 수 있고, 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역이고, 크롭 영역은 크롭 영역에서, 2개 이상의 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 선택된다.
본 발명의 실시예가 일반적인 견지에서 설명되었고, 이제, 반드시 실제 축적대로 도시되어 있는 것은 아닌 첨부 도면을 참조할 것이다.
도 1은 본 발명의 예시적인 실시예에 따라 특정하게 구성될 수 있는 시스템의 블록 다이어그램이다.
도 2는 본 발명의 예시적인 실시예에 따라 특정하게 구성될 수 있는 장치의 블록 다이어그램이다.
도 3은 돌리 줌 효과를 도시하는 예시적인 도면이다.
도 4는 본 발명의 실시예에 따른 예시적인 장치를 동작하는 방법을 도시하는 예시적인 흐름도이다.
도 5는 본 발명의 실시예에 따른 크롭 영역의 예시적인 선택 방법을 도시하는 예시적인 블록 다이어그램이다.
도 6은 본 발명의 실시예에 따른 예시적인 장치의 동작 방법을 도시하는 예시적인 흐름도이다.
도 7은 미디어 콘텐츠 프로세싱 시스템의 실시예를 실시하기 위한 예시적인 컴퓨팅 디바이스의 예시적인 블록 다이어그램이다.
몇몇 예시적인 실시예가 이제, 모든 실시예가 아니라, 몇몇 실시예가 도시되어 있는 첨부 도면을 참조하여 이하에 더 상세히 설명될 것이다. 실제로, 예시적인 실시예는 다수의 상이한 형태를 취할 수도 있고, 본 명세서에 설명된 실시예에 한정되는 것으로서 해석되어서는 안되고, 오히려, 이들 실시예는 이들 개시내용이 적용 가능한 법적 요건을 만족시킬 수 있도록 제공된다. 유사한 도면 부호는 전체에 걸쳐 유사한 요소를 나타낸다. 용어 "데이터", "콘텐츠", "정보" 및 유사 용어는 몇몇 실시예에 따라, 전송되고, 수신되고, 동작하고, 그리고/또는 저장되는 것이 가능한 데이터를 칭하기 위해 상호 교환 가능하게 사용될 수 있다. 더욱이, 용어 "예시적인"은, 본 명세서에 사용될 때, 임의의 정량적인 평가를 전달하도록 제공된 것이 아니라, 대신에 단지 예의 예시를 전달하도록 제공된다. 따라서, 임의의 이러한 용어의 사용은 본 발명의 실시예의 사상 및 범주를 한정하도록 취해져서는 안된다.
본 명세서에 사용될 때, 용어 "회로"는 이하의 것: (a) 하드웨어 전용(hardware-only) 회로 구현예(단지 아날로그 및/또는 디지털 회로에서의 구현예와 같은); (b) (적용 가능한 바와 같이) (i) 프로세서(들)의 조합 또는 (ii) 프로세서(들)/소프트웨어의 부분(이동 전화 또는 서버와 같은 장치가 다양한 기능을 수행하게 하기 위해 함께 동작하는 디지털 신호 프로세서(들), 소프트웨어, 및 메모리(들)를 포함함)의 부분; 및 (c) 소프트웨어 또는 펌웨어가 물리적으로 존재하지 않더라도, 동작을 위한 소프트웨어 또는 펌웨어를 필요로 하는 마이크로프로세서(들) 또는 마이크로프로세서(들)의 부분과 같은 회로의 모두를 칭한다.
이 "회로"의 정의는 임의의 청구항에서를 포함하여, 본 출원에서 이 용어의 모든 사용에 적용된다. 다른 예로서, 본 출원에 사용될 때, 용어 '회로'는 또한 단지 프로세서(또는 다수의 프로세서) 또는 프로세서의 부분 및 그(또는 이들의) 수반 소프트웨어 및/또는 펌웨어의 부분의 구현예를 커버할 것이다. 용어 '회로는 또한, 예를 들어 그리고 특정 청구항 요소에 적용 가능하면, 기저대역 집적 회로 또는 이동 전화용 응용 주문형 집적 회로 또는 서버, 셀룰러 네트워크 디바이스, 또는 다른 네트워크 디바이스 내의 유사한 집적 회로를 또한 커버할 것이다.
이제, 도 1을 참조하면, 컴퓨팅 디바이스(10) 및 서버(12) 또는 다른 네트워크 엔티티(이하, 일반적으로 "서버"라 칭함) 사이의, 무선 또는 유선을 통한 통신을 지원하는 시스템이 도시되어 있다. 도시된 바와 같이, 컴퓨팅 디바이스 및 서버는 셀룰러 네트워크 또는 인터넷과 같은 광역 통신망 또는 근거리 통신망과 같은, 네트워크(14)를 거쳐 통신할 수 있다. 그러나, 통신 디바이스 및 서버는 컴퓨팅 디바이스와 서버 사이의 직접 통신을 통한 것과 같은 다른 방식으로 통신할 수 있다.
컴퓨팅 디바이스(10)는 개인 휴대 정보 단말기(personal digital assistant: PDA), 이동 전화, 스마트폰, 랩탑 컴퓨터, 태블릿 컴퓨터, 또는 전술된 것들의 임의의 조합, 및 다른 유형의 음성 및 텍스트 통신 시스템을 포함하는 다수의 상이한 디바이스에 의해 구체화될 수도 있다. 대안적으로, 컴퓨팅 디바이스는 퍼스널 컴퓨터, 컴퓨터 워크스테이션 등과 같은 고정식 컴퓨팅 디바이스일 수 있다. 서버(12)는 또한 컴퓨팅 디바이스에 의해 구체화될 수 있고, 일 실시예에서 웹 서버에 의해 구체화된다. 부가적으로, 도 1의 시스템은 단일 서버를 도시하고 있지만, 서버는 컴퓨팅 디바이스에 의해 행해진 브라우징 액티비티를 지원하도록 협동할 수 있는 복수의 서버로 구성될 수 있다.
컴퓨팅 디바이스(10)를 구체화하는 디바이스의 유형에 무관하게, 컴퓨팅 디바이스는 도 2에 도시된 바와 같은 장치(20)를 포함하거나 연계될 수 있다. 이와 관련하여, 장치는 프로세서(22), 메모리 디바이스(24), 통신 인터페이스(26) 및 사용자 인터페이스(28)를 포함하거나 다른 방식으로 통신할 수 있다. 이와 같이, 몇몇 실시예에서, 디바이스 또는 요소는 서로 통신하고 있는 것으로서 도시되어 있지만, 이하 이러한 디바이스 또는 요소는 동일한 디바이스 또는 요소 내에 구체화될 수 있는 것으로 고려되어야 하고, 따라서 통신하는 것으로 도시된 디바이스 또는 요소는 대안적으로 동일한 디바이스 또는 요소의 부분인 것으로 이해되어야 한다.
몇몇 실시예에서, 프로세서(22)(및/또는 코프로세서 또는 프로세스를 보조하거나 다른 방식으로 연계된 임의의 다른 프로세싱 회로)는 장치의 구성요소들 사이에 정보를 전달시키기 위해 버스를 거쳐 메모리 디바이스(24)와 통신할 수 있다. 메모리 디바이스는 예를 들어, 하나 이상의 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 달리 말하면, 예를 들어, 메모리 디바이스는 머신(예를 들어, 프로세서와 같은 컴퓨팅 디바이스)에 의해 검색 가능할 수 있는 데이터(예를 들어, 비트)를 저장하도록 구성된 게이트를 포함하는 전자 저장 디바이스(예를 들어, 컴퓨터 판독가능 저장 매체)일 수 있다. 메모리 디바이스는 장치(20)가 본 발명의 예시적인 실시예에 따른 다양한 기능을 수행하는 것을 가능하게 하기 위해 정보, 데이터, 콘텐츠, 애플리케이션, 명령어 등을 저장하도록 구성될 수 있다. 예를 들어, 메모리 디바이스는 프로세서에 의한 프로세싱을 위해 입력 데이터를 버퍼링하도록 구성될 수 있다. 부가적으로 또는 대안적으로, 메모리 디바이스는 프로세서에 의한 실행을 위해 명령어를 저장하도록 구성될 수 있다.
전술된 바와 같이, 장치(20)는 본 발명의 예시적인 실시예를 구체화하도록 구성된 컴퓨팅 디바이스(10)에 의해 구체화될 수 있다. 그러나, 몇몇 실시예에서, 장치는 칩 또는 칩셋으로서 구체화될 수 있다. 달리 말하면, 장치는 구조적 조립체(예를 들어, 베이스보드) 상의 재료, 구성요소 및/또는 와이어를 포함하는 하나 이상의 물리적 패키지(예를 들어, 칩)를 포함할 수 있다. 구조적 조립체는 그 위에 포함된 구성요소 회로를 위한 물리적 강도, 크기의 보존 및/또는 전기적 상호작용의 제한을 제공할 수 있다. 따라서, 장치는 몇몇 경우에, 단일의 칩 상에 또는 단일의 "시스템 온 칩(system on a chip)"으로서 본 발명의 실시예를 구현하도록 구성될 수 있다. 이와 같이, 몇몇 경우에, 칩 또는 칩셋은 본 명세서에 설명된 기능을 제공하기 위해 하나 이상의 동작을 수행하기 위한 수단을 구성할 수 있다.
프로세서(22)는 다수의 상이한 방식으로 구체화될 수 있다. 예를 들어, 프로세서는 코프로세서, 마이크로프로세서, 콘트롤러, 디지털 신호 프로세서(digital signal processor: DSP), 부속 DSP를 갖거나 갖지 않는 프로세싱 요소, 또는 집적 회로, 예를 들어, 응용 주문형 집적 회로(ASIC: application specific integrated circuit), FPGA(field programmable gate array: 필드 프로그램가능 게이트 어레이), 마이크로콘트롤러 유닛(microcontroller unit: MCU), 하드웨어 가속기, 특정 용도 컴퓨터 칩 등을 포함하는 다양한 다른 프로세싱 회로와 같은 다양한 하드웨어 프로세싱 수단 중 하나 이상으로서 구체화될 수 있다. 이와 같이, 몇몇 실시예에서, 프로세서는 독립적으로 실행하도록 구성된 하나 이상의 프로세싱 코어를 포함할 수 있다. 멀티-코어 프로세서는 단일의 물리적 패키지 내에서 멀티프로세싱을 가능하게 할 수도 있다. 부가적으로 또는 대안적으로, 프로세서는 인스트럭션, 파이프라이닝 및/또는 멀티스레딩의 독립적인 실행을 가능하게 하도록 버스를 거쳐 직렬로 구성된 하나 이상의 프로세서를 포함할 수 있다.
예시적인 실시예에서, 프로세서(22)는 메모리 디바이스(24) 내에 저장되거나 프로세서에 다른 방식으로 액세스가능한 명령어를 실행하도록 구성될 수 있다. 대안적으로 또는 부가적으로, 프로세서는 하드 코딩된 기능성을 실행하도록 구성될 수 있다. 이와 같이, 하드웨어 또는 소프트웨어 방법에 의해 또는 이들의 조합에 의해 구성되는지간에, 프로세서는 이에 따라 구성되면서 본 발명의 실시예에 따른 동작을 수행하는 것이 가능한 엔티티(예를 들어, 회로 내에 물리적으로 구체화됨)를 표현할 수 있다. 따라서, 예를 들어, 프로세서가 ASIC, FPGA 등으로서 구체화될 때, 프로세서는 본 명세서에 설명된 동작을 행하기 위한 특정하게 구성된 하드웨어일 수 있다. 대안적으로, 다른 예로서, 프로세서가 소프트웨어 명령어의 실행기로서 구체화될 때, 명령어는 명령어가 실행될 때 본 명세서에 설명된 알고리즘 및/또는 동작을 수행하도록 프로세서를 특정하게 구성할 수 있다. 그러나, 몇몇 경우에, 프로세서는 본 명세서에 설명된 알고리즘 및/또는 동작을 수행하기 위해 명령어에 의한 프로세서에 추가의 구성에 의해 본 발명의 실시예를 구체화하도록 구성된 특정 디바이스(예를 들어, 헤드 장착형 디스플레이)의 프로세서일 수 있다. 프로세서는, 무엇보다도, 프로세서의 동작을 지원하도록 구성된 산술 논리 유닛(arithmetic logic unit: ALU) 및 논리 게이트를 포함할 수 있다. 일 실시예에서, 프로세서는 사용자 인터페이스(28)의 하나 이상의 요소의 적어도 몇몇 기능을 제어하도록 구성된 사용자 인터페이스 회로를 또한 포함할 수 있다.
한편, 통신 인터페이스(26)는 컴퓨팅 디바이스(10)와 서버(12) 사이에 데이터를 수신하고 그리고/또는 전송하도록 구성된 하드웨어 또는 하드웨어와 소프트웨어의 조합으로 구체화된 디바이스 또는 회로와 같은 임의의 수단일 수 있다. 이와 관련하여, 통신 인터페이스(26)는 예를 들어 무선 통신을 가능하게 하기 위한 안테나(또는 다중 안테나) 및 지원 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 부가적으로 또는 대안적으로, 통신 인터페이스는 안테나(들)를 통한 신호의 전송을 야기하거나 안테나(들)를 거쳐 수신된 신호의 수신을 취급하기 위해 안테나(들)와 상호작용하기 위한 회로를 포함할 수 있다. 예를 들어, 통신 인터페이스는 예를 들어, 와이파이, 블루투스 또는 다른 무선 통신 기술을 거쳐 헤드 장착형 디스플레이(10)와 무선으로 통신하도록 구성될 수 있다. 몇몇 경우에, 통신 인터페이스는 대안적으로 또는 유선 통신을 지원할 수 있다. 이와 같이, 예를 들어, 통신 인터페이스는 케이블, 디지털 가입자 라인(digital subscriber line: DSL), 범용 직렬 버스(universal serial bus: USB) 또는 다른 메커니즘을 통한 통신을 지원하기 위한 통신 모뎀 및/또는 다른 하드웨어/소프트웨어를 포함할 수 있다. 예를 들어, 통신 인터페이스는 컴퓨팅 디바이스의 다른 구성요소와 유선 통신을 거쳐 통신하도록 구성될 수 있다.
사용자 인터페이스(28)는 사용자 입력의 지시를 수신하고 그리고/또는 가청, 시각적, 기계적 또는 다른 사용자 입력을 사용자에게 제공하기 위해, 사용자 인터페이스 회로와 같은 프로세서(22)와 통신할 수 있다. 이와 같이, 사용자 인터페이스는 예를 들어, 키보드, 마우스, 조이스틱, 디스플레이, 터치스크린 디스플레이, 마이크로폰, 스피커 및/또는 다른 입출력 메커니즘을 포함할 수 있다. 몇몇 실시예에서, 디스플레이는 스크린 상의, 벽 상의, 글래스 상의(예를 들어, 근안용 디스플레이(near-eye-display), 공기 중의 디스플레이 등을 칭할 수 있다. 사용자 인터페이스는 또한 예를 들어 버스를 거쳐, 메모리(24) 및/또는 통신 인터페이스(26)와 통신할 수도 있다.
도 3은 버티고 효과(vertigo effect) 또는 돌리 줌 적용 효과의 시각적 설명을 도시하고 있다. 돌리 줌은, 카메라가 전체에 걸쳐 프레임 내에서 동일한 크기로 피사체를 유지하는 이러한 방식으로 피사체를 향해 또는 피사체로부터 이격하여 돌리이동하거나 이동하는 동안, 종종 시야(field of view)라 칭하는 화각(angle of view)을 조정하기 위한 줌 렌즈의 설정에 의해 성취되는 효과이다. 그 전통적인 형태에서, 카메라는 렌즈가 줌인하는 동안 피사체로부터 이격하여 당겨지거나 그 반대도 마찬가지이다. 따라서, 줌 동안에, 연속적인 원근 왜곡(perspective distortion)이 존재하는데, 가장 직접적으로 주목가능한 특징은 배경이 피사체에 대해 변화하는 것처럼 보이는 것이다.
도 4는 본 발명의 실시예에 따른 방법, 장치 및 컴퓨터 프로그램 제품에 의해 수행된 예시적인 동작의 예시적인 흐름도를 도시한다. 흐름도의 각각의 블록, 및 흐름도의 블록의 조합이 하나 이상의 컴퓨터 프로그램 명령어를 포함하는 소프트웨어의 실행과 연계된 하드웨어, 펌웨어, 프로세서, 회로 및/또는 다른 디바이스와 같은 다양한 수단에 의해 구현될 수 있다. 예를 들어, 전술된 절차들 중 하나 이상은 컴퓨터 프로그램 명령어에 의해 구체화될 수 있다. 이와 관련하여, 전술된 절차를 구체화하는 컴퓨터 프로그램 명령어는 본 발명의 실시예를 구체화하는 장치의 메모리(26)에 의해 저장되고, 장치 내에서 프로세서(24)에 의해 실행될 수 있다. 이해될 수 있는 바와 같이, 임의의 이러한 컴퓨터 프로그램 명령어는 머신을 생성하기 위해 컴퓨터 또는 다른 프로그램가능 장치(예를 들어, 하드웨어) 상에 로딩될 수 있어, 결과적인 컴퓨터 또는 다른 프로그램가능 장치가 흐름도 블록(들)에 지정된 기능의 구현을 제공하게 된다. 이들 컴퓨터 프로그램 명령어는 또한 특정 방식으로 기능하도록 컴퓨터 또는 다른 프로그램가능 장치에 명령할 수 있는 비일시적 컴퓨터 판독가능 저장 메모리 내에 저장될 수도 있어, 컴퓨터 판독가능 저장 메모리 내에 저장된 명령어가 그 실행이 흐름도 블록(들)에 지정된 기능을 구현하는 제조 물품을 생성하게 한다. 컴퓨터 프로그램 명령어는 또한 컴퓨터 또는 다른 프로그램가능 장치 상에 로딩되어 일련의 동작이 컴퓨터 또는 다른 프로그램가능 장치 상에서 수행되어 컴퓨터 구현된 프로세스를 생성하게 하게 할 수도 있어, 컴퓨터 또는 다른 프로그램가능 장치 상에서 실행하는 명령어가 흐름도 블록(들)에 지정된 기능을 구현하기 위한 동작을 제공하게 한다. 이와 같이, 도 4의 동작은 실행시에, 컴퓨터 또는 프로세싱 회로를 본 발명의 예시적인 실시예를 수행하도록 구성된 특정 머신으로 변환한다. 이에 따라, 도 4의 동작은 예시적인 실시예를 수행하도록 컴퓨터 또는 프로세싱을 구성하기 위한 알고리즘을 규정한다. 몇몇 경우에, 범용 컴퓨터는 범용 컴퓨터를 예시적인 실시예를 수행하도록 구성된 특정 머신으로 변환하기 위해 도 4의 알고리즘을 수행하는 프로세스의 인스턴스(instance)를 구비할 수 있다.
이에 따라, 흐름도의 블록은 지정된 기능을 수행하기 위한 수단의 조합 및 지정된 기능을 수행하기 위한 동작의 조합을 지원한다. 흐름도의 하나 이상의 블록, 흐름도 내의 블록의 조합은 지정된 기능을 수행하는 특정 용도 하드웨어 기반 컴퓨터 시스템 또는 특정 용도 하드웨어 및 컴퓨터 명령어의 조합에 의해 구현될 수 있다는 것이 또한 이해될 수 있을 것이다.
몇몇 실시예에서, 본 명세서의 동작들 중 특정의 것들은 이하에 설명되는 바와 같이 수정되거나 또는 더 확장될 수도 있다. 더욱이, 몇몇 실시예에서, 부가의 선택적 동작이 또한 포함될 수 있다. 이하의 수정, 선택적 추가 또는 확장의 각각은 단독으로 또는 본 명세서에 설명된 특징들 중의 임의의 다른 것과 조합하여 상기 동작과 함께 포함될 수도 있다는 것이 이해되어야 한다.
도 4는 본 발명의 실시예에 따라 수행된 예시적인 미디어 콘텐츠 프로세싱 시스템을 동작하는 방법을 도시하는 예시적인 흐름도이다. 도 4의 블록 405에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 애플리케이션을 실행하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 애플리케이션을 실행하기 위해, 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 예로서, 실행된 애플리케이션은 웹 애플리케이션, 또는 임의의 HTML5 또는 JavaScript™ 애플리케이션 또는 "앱", 예를 들어 브라우저 지원 프로그래밍 언어(애플리케이션을 실행가능하게 하기 위해 통상의 웹브라우저에 의존하는 HTML5와 같은 브라우저 렌더링된 마크업 언어와 조합된 JavaScript™과 같은)로 코딩된 컴퓨터 소프트웨어 애플리케이션을 포함한다. 웹 페이지 또는 "앱"의 열기(opening)는 사용자의 모바일 통신 디바이스(10) 상의 웹브라우저에 의해 수행될 수도 있다. HTML5 또는 JavaScript™ "앱"은 전체 웹 페이지를 재다운로드할 필요 없이 데이터를 저장하고 검색하기 위해, 웹 페이지 스크립트가 도 1에 도시된 것들과 같은 서버(12)에 접촉하게 한다. 본 발명의 다른 실시예에서, 애플리케이션은 특권부여된 웹 애플리케이션 또는 특권부여된 웹 앱일 수 있다. 특권부여된 웹 앱은 예를 들어 앱 스토어 또는 스토어들에 의해 검증되어 있을 수 있거나 또는 신뢰된 소스인 소스로부터 얻어지거나 다운로드되어 있을 수 있는 웹 콘텐츠의 부분이다. 신뢰된 소스는 디폴트 전력 설정을 오버라이드하도록 인에이블링될(enabled) 수 있는 특권부여된 웹 앱을 제공할 수 있다.
본 발명의 실시예에 있어서 특정 예는 시네마토그래픽 효과 앱일 수 있다. 일단 사용자의 이동 전화 또는 다른 프로그램가능 디바이스 상에 런칭되면, 앱은 비디오를 레코딩하고 줌 특징을 자동으로 조정하게 설정될 수 있다. 대안적으로, 앱은 비디오를 레코딩하고 비디오 후처리시에 돌리 줌 효과를 적용하도록 구성될 수 있다.
도 4의 블록 410에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 비디오 데이터의 제 1 프레임을 수신하도록 구성될 수도 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 비디오 데이터의 제 1 프레임을 수신하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다.
도 4의 블록 415에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 관심 포인트를 선택하도록 구성될 수도 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 관심 포인트를 선택하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 예로서, 주피사체의 눈 사이의 거리가 관심 포인트로서 선택될 수 있다.
도 4의 블록 420에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 각각의 관심 포인트를 위한 기술자를 저장하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 각각의 관심 포인트를 위한 기술자를 저장하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 다수의 공지의 방법 또는 알고리즘이 SIFT 또는 RIFF와 같은 이미지 내의 로컬 특징을 검출하고 기술하기 위해 존재하는데, 이들 중 임의의 것이 본 발명에 있어서 충분할 것이다.
도 4의 블록 425에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 제 1 프레임을 출력하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 제 1 프레임을 출력하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 제 1 프레임은 비디오 데이터로부터의 이미지 프레임일 수 있다. 비디오 데이터는 라이브 신호일 수 있다. 대안 실시예에서, 비디오 데이터는 이전에 레코딩된 비디오 데이터일 수 있다. 제 1 프레임을 출력하는 것은 비디오 또는 이미지로서 제시를 위해 비디오 디스플레이에 제 1 프레임을 송신하는 것을 포함할 수 있다. 대안 실시예에서, 제 1 프레임은 메모리에 저장될 수 있다.
도 4의 블록 430에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 제 2 프레임을 수신하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 제 2 프레임을 수신하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 제 2 프레임은 비디오 데이터로부터의 이미지 프레임일 수 있다. 비디오 데이터는 라이브 신호 또는 비디오 데이터가 저장되어 있는 메모리로부터의 신호일 수 있다.
도 4의 블록 435에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 관심 포인트를 추적하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 관심 포인트를 추적하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 재차, 관심 포인트 추적은 공지되어 있고, 임의의 수의 가능한 방법에 의해 구현될 수 있다.
도 4의 블록 440에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 스케일링 팩터를 계산하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 스케일링 팩터를 계산하기 위한 프로세서(22), 통신 인터페이스(26)와 같은 수단을 포함한다. 예를 들어, Xm n=(xm n, ym n)이 자동으로 추적된 관심 포인트를 나타낸다고 하자. 여기서, 프레임 넘버 n의 관심 포인트 넘버 m의 자동으로 추적된 위치는 Xm n으로 나타낸다. 이제, 주피사체 상의 2개의 추적된 관심 포인트의 가장 간단한 경우에, 프레임 n에서 이들의 거리는 간단히 dn = ∥X1 n = X2 n∥이다.
도 4의 블록 445에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 스케일링 팩터를 적용하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 스케일링 팩터를 적용하기 위한 프로세서(22), 통신 인터페이스(26)와 같은 수단을 포함한다. 구체적으로, 비디오 전체에 걸쳐 피사체의 겉보기 크기를 일정하게 유지하기 위해, 각각의 프레임에 대한 줌 팩터 스케일링 팩터는 sn = d1/d2로 설정된다.
이 팩터에 의해 후속 비디오 프레임을 스케일링하는 것은 2개의 관심 포인트 사이의 거리, 및 따라서 주피사체의 겉보기 크기를 일정하게 유지한다. 본 발명의 일 실시예에서, 스케일링 팩터를 적용하는 것은 모바일 디바이스 상의 카메라의 줌 특징을 조정하는 것을 포함할 수 있다. 다른 실시예에서, 스케일링 팩터의 적용은 변환된 이미지로서 제시되도록 센서 또는 이미지 영역의 크롭 영역을 선택하는 것을 포함할 수 있다. 예로서, 본 실시예에서, 카메라가 주피사체로부터 이격하여 이동될 때, 크롭 영역은, 크롭 영역에서, 주피사체의 눈 사이의 거리 및 제 1 이미지 내의 배경 이미지의 높이의 거리와 같은 거리들의 비가 일정하게 유지되도록 선택된다. 도 5를 참조하라.
도 4의 블록 450에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 관심 포인트 기술자를 업데이트하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 관심 포인트 기술자를 업데이트하기 위한 프로세서(22), 통신 인터페이스(26)와 같은 수단을 포함한다.
도 4의 블록 455에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 따라서 변환된 제 2 프레임을 출력하도록 구성될 수 있다. 따라서, 컴퓨팅 디바이스에 의해 구체화된 장치는 변환된 프레임을 출력하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함한다. 변환된 프레임의 출력은 변환된 이미지를 비디오 디스플레이에 제시하는 것을 포함할 수 있다.
도 6은 본 발명의 실시예에 따라 수행된 예시적인 미디어 콘텐츠 프로세싱 시스템을 동작하는 대안적인 방법을 도시하는 예시적인 흐름도이다. 구체적으로, 일 실시예에서, 전자식으로 제어가능한 광학 줌을 구비할 수 있는 카메라 모듈에 대해, 줌 팩터는 미리 설정될 수 있다. 이와 같이, 일단 프레임 넘버 X가 레코딩되어 있으면, 줌은 팩트 후에 변화되지 않을 수 있다. 실제로, 프레임 1...X를 통해 카메라 모션을 관찰한 돌리 줌 효과를 자동으로 렌더링하는 이 구현예는 카메라가 어떻게 매우 가까운 미래에 이동하여 프레임 X+1에 대해 미리 스케일링 팩터를 설정할 것인지를 예측할 수 있다.
블록 605, 610, 615, 620, 625, 630 및 635는 도 4의 블록 405, 410, 415, 420, 425, 430 및 435와 일치하고, 따라서 대응 설명은 생략된다.
도 6의 블록 640에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 후속의 프레임을 위한 모션을 예측하도록 구성될 수 있다. 컴퓨팅 디바이스에 의해 구체화된 장치는 후속 프레임을 위한 모션을 예측하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함할 수 있다.
도 6의 블록 645에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 줌 설정을 계산하도록 구성될 수 있다. 컴퓨팅 디바이스에 의해 구체화된 장치는 줌 설정을 계산하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함할 수 있다.
도 6의 블록 650에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 줌 설정을 카메라 모듈에 적용하도록 구성될 수 있다. 컴퓨팅 디바이스에 의해 구체화된 장치는 줌 설정을 카메라 모듈에 적용하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함할 수 있다.
도 6의 블록 655에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 관심 포인트 기술자를 업데이트하도록 구성될 수 있다. 컴퓨팅 디바이스에 의해 구체화된 장치는 관심 포인트 기술자를 업데이트하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함할 수 있다.
도 6의 블록 660에 도시된 바와 같이, 컴퓨팅 디바이스(10)에 의해 구체화된 장치(20)는 현재 프레임을 출력하도록 구성될 수 있다. 컴퓨팅 디바이스에 의해 구체화된 장치는 현재 프레임을 출력하기 위한 프로세서(22), 통신 인터페이스(26) 등과 같은 수단을 포함할 수 있다.
도 7은 미디어 콘텐츠 프로세싱 시스템의 실시예를 실시하기 위한 예시적인 컴퓨팅 디바이스의 예시적인 블록 다이어그램이다. 특히, 도 7은 미디어 콘텐츠 프로세싱 시스템(710)을 구현하는데 이용될 수 있는 시스템(20)을 도시한다. 하나 이상의 범용 또는 특정 용도 컴퓨팅 시스템/디바이스는 미디어 콘텐츠 프로세싱 시스템(710)을 구현하는데 사용될 수 있다는 것을 주목하라. 게다가, 시스템(20)은 하나 이상의 별개의 컴퓨팅 시스템/디바이스를 포함할 수 있고, 분산된 위치에 걸칠 수도 있다. 더욱이, 도시된 각각의 블록은 특정 실시예에 적절한 바와 같은 하나 이상의 이러한 블록을 표현할 수 있고 또는 다른 블록과 조합될 수 있다. 예를 들어, 몇몇 실시예에서, 시스템(20)은 추적 모듈(720), 스케일링 모듈(730), 카메라 모듈(780) 또는 이들 3개의 임의의 조합을 포함할 수 있다. 다른 예시적인 실시예에서, 추적 모듈(720), 스케일링 모듈(730), 또는 카메라 모듈(780)은 개별 시스템(예를 들어, 모바일 단말기 및 원격 서버, 다수의 원격 서버 등) 상에서 동작하도록 구성될 수 있다. 예를 들어, 추적 모듈(720) 및/또는 스케일링 모듈(730)은 모바일 단말기(10) 상에서 동작하도록 구성될 수 있다. 또한, 미디어 콘텐츠 프로세싱 시스템(710)은 본 명세서에 설명된 기능을 성취하기 위해 소프트웨어, 하드웨어, 펌웨어 또는 몇몇 조합으로 구현될 수 있다.
시스템(20)은 예를 들어, 모바일 단말기(10), 자립형 시스템(예를 들어, 원격 서버)에 의해 채용될 수 있지만, 이하에 설명된 구성요소, 디바이스 또는 요소는 필수적인 것은 아닐 수 있고 따라서 몇몇은 특정 실시예에서 생략될 수 있다는 것이 주목되어야 한다. 부가적으로, 몇몇 실시예는 본 명세서에 도시되고 설명된 것들 이외의 다른 또는 상이한 구성요소, 디바이스 또는 요소를 포함할 수 있다.
도시된 실시예에서, 시스템(20)은 컴퓨터 메모리("메모리")(24), 하나 이상의 프로세서(22)(예를 들어, 프로세싱 회로) 및 통신 인터페이스(26)를 포함한다. 미디어 콘텐츠 프로세싱 시스템(710)은 메모리(24) 내에 상주하는 것으로 도시되어 있다. 다른 실시예에서, 콘텐츠의 일부, 미디어 콘텐츠 프로세싱 시스템(710)의 구성요소의 일부 또는 모두는 다른 컴퓨터 판독가능 매체 상에 저장되고 그리고/또는 이를 통해 전송될 수 있다. 미디어 콘텐츠 프로세싱 시스템(710)의 구성요소는 바람직하게는 하나 이상의 프로세서(22) 상에서 실행하고, 미디어 콘텐츠를 추출하고 분류하도록 구성된다. 다른 코드 또는 프로그램(740)(예를 들어, 관리 인터페이스, 웹 서버 등) 및 잠재적으로 다른 데이터 저장소, 예를 들어 데이터 저장소(750)가 또한 메모리(24) 내에 상주하고, 바람직하게는 프로세서(22) 상에서 실행한다. 주목할점은, 도 7의 구성요소의 하나 이상은 임의의 특정 구현예에 존재하지 않을 수도 있다.
통상의 실시예에서, 전술된 바와 같이, 미디어 콘텐츠 프로세싱 시스템(710)은 추적 모듈(730), 스케일링 모듈(730) 및/또는 양자 모두를 포함할 수 있다. 추적 모듈(720) 및/또는 스케일링 모듈(730)은 도 1에 개략 설명된 것들과 같은 기능을 수행할 수 있다. 미디어 콘텐츠 프로세싱 시스템(710)은 (a) 모바일 단말기(760) 및/또는 (2) 제 3 자 콘텐츠(770)와의 통신 인터페이스(26)를 통해 네트워크(14)를 거쳐 상호 작용한다. 네트워크(14)는 원격 위치된 인간들 그리고/또는 디바이스들 사이의 통신을 용이하게 하는 매체(예를 들어, 트위스티드쌍, 동축, 광파이버, 무선 주파수), 하드웨어(예를 들어, 라우터, 스위치, 리피터, 송수신기), 및 프로토콜(예를 들어, TCP/IP, UDP, 이더넷, 와이파이, WiMAX)의 임의의 조합일 수 있다. 이와 관련하여, 통신 인터페이스(26)는 하나 이상의 공중 인터페이스 표준, 통신 프로토콜, 변조 유형, 액세스 유형 등에 따라 동작하는 것이 가능하다. 더 구체적으로, 시스템(20), 통신 인터페이스(26) 등은 다양한 1세대(1G), 2세대(2G), 2.5G, 3세대(3G) 통신 프로토콜, 4세대(4G) 통신 프로토콜, 인터넷 프로토콜 멀티미디어 서브시스템(Internet Protocol Multimedia Subsystem: IMS) 통신 프로토콜(예를 들어, 세션 개시 프로토콜(session initiation protocol: SIP)) 등에 따라 동작하는 것이 가능할 수 있다. 예를 들어, 모바일 단말기는 2G 무선 통신 프로토콜 IS-136(시분할 다중 액세스(Time Division Multiple Access: TDMA)), 모바일 통신을 위한 글로벌 시스템(Global System for Mobile communications: GSM), IS-95(코드 분할 다중 접속(Code Division Multiple Access: CDMA)) 등에 따라 동작하는 것이 가능할 수 있다. 또한, 예를 들어, 모바일 단말기는 2.5G 무선 통신 프로토콜 범용 패킷 무선 서비스(General Packet Radio Service: GPRS), 향상된 데이터 GSM 환경(Enhanced Data GSM Environment: EDGE)에 따라 동작하는 것이 가능할 수 있다. 또한, 예를 들어, 모바일 단말기는 범용 이동 통신 시스템(Universal Mobile Telecommunications System: UMTS), 코드 분할 다중 접속 2000(Code Division Multiple Access 2000: CDMA2000), 광대역 코드 분할 다중 접속(Wideband Code Division Multiple Access: WCDMA), 시분할 동기식 코드 분할 다중 접속(Time Division-Synchronous Code Division Multiple Access: TD-SCDMA) 등과 같은 3G 무선 통신 프로토콜에 따라 동작하는 것이 가능할 수 있다. 모바일 단말기는 부가적으로 장기 진화(Long Term Evolution: LTE) 또는 진화된 범용 지상 무선 액세스 네트워크(Evolved Universal Terrestrial Radio Access Network: E- UTRAN)와 같은 3.9G 무선 통신 프로토콜에 따라 동작하는 것이 가능할 수 있다. 부가적으로, 예를 들어, 모바일 단말기는 4세대(4G) 무선 통신 프로토콜 등 뿐만 아니라 미래에 개발될 수 있는 유사한 무선 통신 프로토콜에 따라 동작하는 것이 가능할 수 있다.
예시적인 실시예에서, 미디어 콘텐츠 프로세싱 시스템(710)의 구성요소/모듈은 표준 프로그래밍 기술을 사용하여 구현될 수 있다. 예를 들어, 미디어 콘텐츠 프로세싱 시스템(710)은 하나 이상의 정적 또는 동적 라이브러리와 함께, 프로세서(22) 상에서 실행하는 "네이티브" 실행파일로서 구현될 수 있다. 다른 실시예에서, 미디어 콘텐츠 프로세싱 시스템(710)은 다른 프로그램(740) 중 하나로서 실행하는 가상 머신에 의해 프로세싱되는 명령어로서 구현될 수 있다. 일반적으로, 이들에 한정되는 것은 아니지만, 객체 지향성(예를 들어, Java, C++, C#, Visual Basic.NET, Smalltalk 등), 기능적(예를 들어, ML, Lisp, Scheme 등), 절차적(예를 들어, C, Pascal, Ada, Modula 등), 스크립팅(예를 들어, Perl, Ruby, Python, JavaScript, VBScript 등), 및 선언적(예를 들어, SQL, Prolog 등)을 포함하여, 다양한 프로그래밍 언어 패러다임의 대표적인 구현예를 포함하는 당 기술 분야에 공지된 각종의 프로그래밍 언어가 이러한 예시적인 실시예를 구현하기 위해 채용될 수 있다.
전술된 실시예는 공지된 또는 전용 동기식 또는 비동기식 클라이언트-서버 컴퓨팅 기술을 또한 사용할 수 있다. 또한, 다양한 구성요소는 예를 들어, 단일의 CPU 컴퓨터 시스템 상에서 실행하는 실행파일로서 더 많은 모노리식 프로그래밍 기술을 사용하여 구현될 수 있고, 또는 대안적으로 이들에 한정되는 것은 아니지만, 하나 이상의 CPU를 각각 갖는 하나 이상의 컴퓨터 시스템 상에서 실행하는 멀티프로그래밍, 멀티스레딩, 클라이언트-서버, 또는 피어-투-피어를 포함하는 당 기술 분야에 공지된 다양한 구조화 기술을 사용하여 분해될 수 있다. 몇몇 실시예는 동시에 그리고 비동기식으로 실행될 수 있고, 메시지 전달 기술을 사용하여 통신할 수 있다. 등가의 동기식 실시예가 또한 지원된다. 또한, 다른 기능이 각각의 구성요소/모듈에 의해, 그리고 상이한 순서로, 그리고 상이한 구성요소/모듈에 의해 구현되고 그리고/또한 수행될 수 있고, 여전히 설명된 기능을 성취할 수 있다.
게다가, 미디어 콘텐츠 프로세싱 시스템(710)의 부분으로서 저장된 데이터로의 프로그래밍 인터페이스는 C, C++, C# 및 Java API와 같은 표준 메커니즘; 파일에 액세스하기 위한 라이브러리, 데이터베이스 또는 다른 데이터 저장소에 의해; XML과 같은 언어를 통해; 또는 웹 서버, FTP 서버 또는 저장된 데이터로의 액세스를 제공하는 다른 유형의 서버를 통해 이용 가능해질 수 있다. 데이터 저장부가 또한 포함될 수 있고, 하나 이상의 데이터베이스 시스템, 파일 시스템, 또는 이러한 정보를 저장하기 위한 임의의 다른 기술, 또는 분산형 컴퓨팅 기술을 사용하는 구현예를 포함하여, 상기의 임의의 조합으로서 구현될 수 있다.
프로그램 및 데이터의 상이한 구성 및 위치가 본 명세서에 설명된 기술과 함께 사용을 위해 고려된다. 다양한 분산형 컴퓨팅 기술이 이들에 한정되는 것은 아니지만, TCP/IP 소켓, RPC, RMI, HTTP, 웹 서비스(XML-RPC, JAX-RPC, SOAP 등)를 포함하는 분산형 방식으로 예시된 실시예의 구성요소를 구현하기 위해 적합하다. 다른 변형예가 가능하다. 또한, 다른 기능성이 각각의 구성요소/모듈에 의해 제공될 수 있고, 또는 현존하는 기능성이 상이한 방식으로 구성요소/모듈 사이에 분산될 수 있고, 여전히 본 명세서에 설명된 기능을 성취한다.
더욱이, 몇몇 실시예에서, 미디어 콘텐츠 프로세싱 시스템(710)의 구성요소의 일부 또는 모두는 이들에 한정되는 것은 아니지만, 하나 이상의 응용 주문형 집적 회로("ASIC"), 표준 집적 회로, 적절한 명령어를 실행하고 마이크로콘트롤러 및/또는 임베디드 콘트롤러를 포함하는 콘트롤러, 필드 프로그램가능 게이트 어레이(field-programmable gate arrays: "FPGAs"), 복합 프로그램가능 논리 디바이스(complex programmable logic devices: "CPLDs") 등을 포함하는, 적어도 부분적으로 펌웨어 및/또는 하드웨어에서와 같은, 다른 방식으로 구현되거나 제공될 수 있다. 시스템 구성요소 및/또는 데이터 구조의 일부 또는 모두는 또한 설명된 기술의 적어도 일부를 수행하기 위해 콘텐츠를 실행하거나 또는 다른 방식으로 사용하거나 또는 제공하도록 컴퓨터 판독가능 매체 및/또는 하나 이상의 연계된 컴퓨팅 시스템 또는 디바이스를 인에이블링하거나 구성하기 위해, 컴퓨터 판독가능 매체(예를 들어, 하드 디스크; 메모리; 컴퓨터 네트워크 또는 셀룰러 무선 네트워크 또는 다른 데이터 전송 매체; 또는 DVD 또는 플래시 메모리 디바이스와 같은, 적절한 접속을 거쳐 또는 적절한 드라이브에 의해 판독될 휴대용 매체 물품으로서) 상에 콘텐츠로서(예를 들어, 실행파일 또는 다른 머신 판독가능 소프트웨어 명령어 또는 구조화된 데이터로서) 저장될 수도 있다. 시스템 구성요소 및 데이터 구조의 일부 또는 모두는 또한 무선 기반 및 유선/케이블 기반 매체를 통하는 것을 포함하여, 이후에 전송되는 다양한 컴퓨터 판독가능 전송 매체 상에 데이터 신호로서 저장될 수 있고(예를 들어, 반송파의 부분으로서 인코딩되거나 또는 아날로그 또는 디지털 전파된 신호의 부분으로서 포함됨으로써), 다양한 형태를 취할 수 있다(예를 들어, 단일의 또는 멀티플렉싱된 아날로그 신호의 부분으로서, 또는 다수의 별개의 디지털 패킷 또는 프레임으로서). 이러한 컴퓨터 프로그램 제품은 또한 다른 실시예에서 다른 형태를 취할 수 있다. 이에 따라, 본 발명의 실시예는 다른 컴퓨터 시스템 구성으로 실시될 수도 있다.
본 명세서에 설명된 본 발명의 다수의 수정 및 다른 실시예는 상기 설명 및 연계된 도면에 제시된 교시의 이익을 갖는 본 발명이 속하는 기술 분야의 숙련자에게 생각이 날 것이다. 따라서, 본 발명은 개시된 특정 실시예에 한정되는 것은 아니고, 수정 및 다른 실시예가 첨부된 청구범위의 범주 내에 포함되도록 의도된다는 것이 이해되어야 한다. 더욱이, 상기 설명 및 연계된 도면은 요소 및/또는 기능의 특정 예시적인 조합의 맥락에서 예시적인 실시예를 설명하고 있지만, 요소 및/또는 기능의 상이한 조합이 첨부된 청구범위의 범주로부터 벗어나지 않고 대안적인 실시예에 의해 제공될 수 있다는 것이 이해되어야 한다. 이와 관련하여, 예를 들어, 명시적으로 전술된 것들과는 상이한 요소 및/또는 기능의 조합이 또한 첨부된 청구범위의 일부에 설명될 수 있는 바와 같이 고려될 수 있다. 특정 아이템이 본 명세서에 채용되어 있지만, 이들은 한정의 목적이 아니라, 일반적인 설명적인 개념으로만 사용된다.
10: 컴퓨팅 디바이스 12: 서버
20: 장치 22: 프로세서
24 : 메모리 디바이스 26: 통신 인터페이스
28: 사용자 인터페이스 710: 미디어 콘텐츠 프로세싱 시스템
720: 추적 모듈 730: 스케일링 모듈

Claims (21)

  1. 비디오 데이터로부터 제 1 이미지 프레임을 수신하는 단계 - 상기 제 1 이미지 프레임은 2개 이상의 관심 포인트 중 적어도 2개 세트를 포함함 - 와,
    상기 비디오 데이터로부터 제 2 이미지 프레임을 수신하는 단계 - 상기 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트 중 2개 세트를 포함함 - 와,
    상기 2개 이상의 관심 포인트의 위치의 상기 제 1 이미지 프레임으로부터 상기 제 2 이미지 프레임까지의 차이를 추적하는 단계와,
    상기 2개 이상의 관심 포인트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하는 단계와,
    상기 스케일링 팩터를 적용하는 것에 의해 상기 제 2 이미지 프레임을 변환하는 단계와,
    상기 변환된 제 2 이미지 프레임을 제시하는 단계 - 상기 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역(crop area)이고, 상기 크롭 영역 내에서 상기 2개 이상의 관심 포인트의 상기 2개 세트 사이의 거리의 비(a ratio of distances)가 일정하게 유지되도록 상기 크롭 영역이 선택됨 -
    를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하는 단계를 더 포함하는
    방법.
  3. 제 1 항에 있어서,
    상기 제 1 이미지 프레임 내의 주피사체의 선택을 수신하는 단계와,
    상기 주피사체의 선택에 따라 상기 2개 이상의 관심 포인트를 선택하는 단계를 더 포함하는
    방법.
  4. 제 1 항에 있어서,
    상기 2개 이상의 관심 포인트의 각각에 대한 기술자(descriptor)를 저장하는 단계와,
    상기 스케일링 팩터의 계산에 응답하여 상기 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하는 단계를 더 포함하는
    방법.
  5. 제 1 항에 있어서,
    후속의 이미지 수신을 위한 카메라 모션을 예측하는 단계 - 상기 스케일링 팩터를 적용하는 것은 카메라 디바이스의 줌 특징(zoom feature)을 조정하는 것을 포함함 - 와,
    상기 후속의 이미지 수신에 앞서 상기 줌 특징을 설정하는 단계를 더 포함하는
    방법.
  6. 제 1 항에 있어서,
    상기 스케일링 팩터를 적용하는 것은 상기 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역(crop area)을 선택하는 것을 포함하는
    방법.
  7. 삭제
  8. 적어도 하나의 프로세서와, 컴퓨터 프로그램 코드를 포함하는 적어도 하나의 메모리를 포함하는 장치로서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는, 상기 프로세서를 사용하여, 상기 장치로 하여금 적어도,
    비디오 데이터로부터 제 1 이미지 프레임을 수신하고 - 상기 제 1 이미지 프레임은 2개 이상의 관심 포인트 중 적어도 2개의 세트를 포함함 -,
    상기 비디오 데이터로부터 제 2 이미지 프레임을 수신하고 - 상기 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -,
    상기 2개 이상의 관심 포인트의 위치의 상기 제 1 이미지 프레임으로부터 상기 제 2 이미지 프레임까지의 차이를 추적하고,
    상기 2개 이상의 관심 포인트 중 상기 2개의 세트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하고,
    상기 스케일링 팩터를 적용함으로써 상기 제 2 이미지 프레임을 변환하고,
    상기 변환된 제 2 이미지 프레임을 제시하게 하도록 구성되고,
    상기 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역이고, 상기 크롭 영역에서 상기 2개 이상의 관심 포인트의 상기 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 상기 크롭 영역이 선택되는
    장치.
  9. 제 8 항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는, 상기 프로세서를 사용하여, 상기 장치로 하여금 상기 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하게 하도록 더 구성되는
    장치.
  10. 제 8 항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는, 상기 프로세서를 사용하여, 상기 장치로 하여금 상기 제 1 이미지 프레임 내의 주피사체의 선택을 수신하게 하고, 상기 주피사체의 선택에 따라 상기 2개 이상의 관심 포인트를 선택하게 하도록 더 구성되는
    장치.
  11. 제 8 항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는, 상기 프로세서를 사용하여, 상기 장치로 하여금,
    상기 2개 이상의 관심 포인트의 각각에 대한 기술자를 저장하게 하고,
    상기 스케일링 팩터의 계산에 응답하여 상기 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하게 하도록 더 구성되는
    장치.
  12. 제 8 항에 있어서,
    상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는, 상기 프로세서를 사용하여, 상기 장치로 하여금 후속의 이미지 수신을 위한 카메라 모션을 예측하게 하고 - 상기 스케일링 팩터를 적용하는 것은 카메라 디바이스의 줌 특징을 조정하는 것을 포함함 -, 상기 후속의 이미지 수신에 앞서 상기 줌 특징을 설정하게 하도록 더 구성되는
    장치.
  13. 제 8 항에 있어서,
    상기 스케일링 팩터를 적용하는 것은 상기 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역을 선택하는 것을 포함하는
    장치.
  14. 삭제
  15. 저장된 컴퓨터 실행가능 프로그램 코드부를 갖는 적어도 하나의 컴퓨터 판독가능 저장 매체로서,
    상기 컴퓨터 실행가능 프로그램 코드부는,
    비디오 데이터로부터 제 1 이미지 프레임을 수신하고 - 상기 제 1 이미지 프레임은 2개 이상의 관심 포인트 중 적어도 2개의 세트를 포함함 -,
    상기 비디오 데이터로부터 제 2 이미지 프레임을 수신하고 - 상기 제 2 이미지 프레임은 상이한 위치에서 2개 이상의 관심 포인트를 포함함 -,
    상기 2개 이상의 관심 포인트의 위치의 상기 제 1 이미지 프레임으로부터 상기 제 2 이미지 프레임까지의 차이를 추적하고,
    상기 2개 이상의 관심 포인트 중 2개의 세트의 배치에서 상대적인 차이를 표현하는 스케일링 팩터를 계산하고,
    상기 스케일링 팩터를 적용함으로써 상기 제 2 이미지 프레임을 변환하고,
    상기 변환된 제 2 이미지 프레임을 제시하기 위한 프로그램 코드 명령어를 포함하고,
    상기 변환된 제 2 이미지 프레임은 이미지 영역의 크롭 영역이고, 상기 크롭 영역에서 상기 2개 이상의 관심 포인트의 상기 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 상기 크롭 영역이 선택되는
    컴퓨터 판독가능 저장 매체.
  16. 제 15 항에 있어서,
    상기 컴퓨터 실행가능 프로그램 코드부는,
    상기 제 1 이미지 프레임 내의 2개 이상의 관심 포인트의 선택을 수신하기 위한 프로그램 코드 명령어를 더 포함하는
    컴퓨터 판독가능 저장 매체.
  17. 제 15 항에 있어서,
    상기 컴퓨터 실행가능 프로그램 코드부는,
    상기 제 1 이미지 프레임 내의 주피사체의 선택을 수신하고, 상기 주피사체의 선택에 따라 상기 2개 이상의 관심 포인트를 선택하기 위한 프로그램 코드 명령어를 더 포함하는
    컴퓨터 판독가능 저장 매체.
  18. 제 15 항에 있어서,
    상기 컴퓨터 실행가능 프로그램 코드부는,
    상기 2개 이상의 관심 포인트의 각각에 대한 기술자를 저장하게 하고,
    상기 스케일링 팩터의 계산에 응답하여 상기 2개 이상의 관심 포인트의 각각에 대한 기술자를 업데이트하기 위한 프로그램 코드 명령어를 포함하는
    컴퓨터 판독가능 저장 매체.
  19. 제 15 항에 있어서,
    상기 컴퓨터 실행가능 프로그램 코드부는 후속의 이미지 수신을 위한 카메라 모션을 예측하고 - 상기 스케일링 팩터를 적용하는 것은 카메라 디바이스의 줌 특징을 조정하는 것을 포함함 -, 상기 후속의 이미지 수신에 앞서 상기 줌 특징을 설정하기 위한 프로그램 코드 명령어를 더 포함하는
    컴퓨터 판독가능 저장 매체.
  20. 제 15 항에 있어서,
    상기 스케일링 팩터를 적용하는 것은 상기 관심 포인트의 2개의 세트 사이의 거리의 비가 일정하게 유지되도록 크롭 영역을 선택하는 것을 포함하는
    컴퓨터 판독가능 저장 매체.
  21. 삭제
KR1020157026640A 2013-02-28 2014-01-29 돌리 줌 효과를 자동으로 렌더링하기 위한 방법 및 장치 KR101674340B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/780,885 US9025051B2 (en) 2013-02-28 2013-02-28 Method and apparatus for automatically rendering dolly zoom effect
US13/780,885 2013-02-28
PCT/FI2014/050070 WO2014131941A1 (en) 2013-02-28 2014-01-29 Method and apparatus for automatically rendering dolly zoom effect

Publications (2)

Publication Number Publication Date
KR20150122752A KR20150122752A (ko) 2015-11-02
KR101674340B1 true KR101674340B1 (ko) 2016-11-08

Family

ID=51387774

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157026640A KR101674340B1 (ko) 2013-02-28 2014-01-29 돌리 줌 효과를 자동으로 렌더링하기 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US9025051B2 (ko)
EP (1) EP2962285A4 (ko)
JP (1) JP2016517639A (ko)
KR (1) KR101674340B1 (ko)
CN (1) CN105027167A (ko)
WO (1) WO2014131941A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9736385B2 (en) * 2014-01-08 2017-08-15 Sony Corporation Perspective change using depth information
JP6395423B2 (ja) * 2014-04-04 2018-09-26 キヤノン株式会社 画像処理装置、制御方法及びプログラム
US10437918B1 (en) 2015-10-07 2019-10-08 Google Llc Progressive image rendering using pan and zoom
US10204418B2 (en) * 2016-09-07 2019-02-12 Nokia Technologies Oy Method and apparatus for facilitating stereo vision through the use of multi-layer shifting
KR20180056182A (ko) * 2016-11-18 2018-05-28 엘지전자 주식회사 이동 단말기 및 그 제어 방법
US10402689B1 (en) 2017-04-04 2019-09-03 Snap Inc. Generating an image mask using machine learning
US10757319B1 (en) * 2017-06-15 2020-08-25 Snap Inc. Scaled perspective zoom on resource constrained devices
CN108234879B (zh) * 2018-02-02 2021-01-26 成都西纬科技有限公司 一种获取滑动变焦视频的方法和装置
JP6878736B2 (ja) * 2018-07-13 2021-06-02 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 制御装置、移動体、制御方法、及びプログラム
JP6641574B1 (ja) * 2018-11-28 2020-02-05 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 決定装置、移動体、決定方法、及びプログラム
CN109379537A (zh) * 2018-12-30 2019-02-22 北京旷视科技有限公司 滑动变焦效果实现方法、装置、电子设备及计算机可读存储介质
CN110262737A (zh) * 2019-06-25 2019-09-20 维沃移动通信有限公司 一种视频数据的处理方法及终端
CN110611767B (zh) * 2019-09-25 2021-08-10 北京迈格威科技有限公司 图像处理方法、装置和电子设备
US11423510B2 (en) 2019-10-28 2022-08-23 Samsung Electronics Co., Ltd System and method for providing dolly zoom view synthesis
CN111083380B (zh) * 2019-12-31 2021-06-11 维沃移动通信有限公司 一种视频处理方法、电子设备及存储介质
US11809998B2 (en) * 2020-05-20 2023-11-07 Qualcomm Incorporated Maintaining fixed sizes for target objects in frames
CN113949808B (zh) * 2020-07-17 2022-12-27 北京字节跳动网络技术有限公司 视频生成方法、装置、可读介质及电子设备
CN114827433A (zh) * 2021-01-27 2022-07-29 北京小米移动软件有限公司 图像处理方法及装置、电子设备、存储介质
CN114820296A (zh) * 2021-01-27 2022-07-29 北京小米移动软件有限公司 图像处理方法及装置、电子设备、存储介质
US11366328B1 (en) * 2021-01-28 2022-06-21 Zebra Technologies Corporation Controlling a level of magnification of content on a display device based on user movement
US20220358619A1 (en) * 2021-05-10 2022-11-10 Mediatek Inc. Automatic dolly zoom image processing device
WO2023136418A1 (en) * 2022-01-13 2023-07-20 Samsung Electronics Co., Ltd. Method and electronic device for automatically generating region of interest centric image

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449019B1 (en) 2000-04-07 2002-09-10 Avid Technology, Inc. Real-time key frame effects using tracking information
US20110267499A1 (en) 2010-04-30 2011-11-03 Canon Kabushiki Kaisha Method, apparatus and system for performing a zoom operation

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09233385A (ja) * 1996-02-28 1997-09-05 Nikon Corp ズームレンズの制御装置及び制御方法
US8004565B2 (en) * 2003-06-19 2011-08-23 Nvidia Corporation System and method for using motion vectors for object tracking
GB2431787B (en) * 2005-10-31 2009-07-01 Hewlett Packard Development Co A method of tracking an object in a video stream
JP4241742B2 (ja) 2006-01-31 2009-03-18 パナソニック株式会社 自動追尾装置及び自動追尾方法
JP4697810B2 (ja) * 2007-03-05 2011-06-08 パナソニック株式会社 自動追尾装置及び自動追尾方法
CN102124727B (zh) 2008-03-20 2015-07-29 无线电技术研究学院有限公司 将视频图像适配到小屏幕尺寸的方法
US8089479B2 (en) * 2008-04-11 2012-01-03 Apple Inc. Directing camera behavior in 3-D imaging system
JP4715909B2 (ja) 2008-12-04 2011-07-06 ソニー株式会社 画像処理装置及び方法、画像処理システム、並びに、画像処理プログラム
US9275680B2 (en) * 2009-06-16 2016-03-01 Microsoft Technology Licensing, Llc Viewer-centric user interface for stereoscopic cinema
JP5538865B2 (ja) * 2009-12-21 2014-07-02 キヤノン株式会社 撮像装置およびその制御方法
JP5225317B2 (ja) * 2010-04-06 2013-07-03 キヤノン株式会社 撮像装置及び撮像装置の制御方法
JP5620142B2 (ja) * 2010-04-28 2014-11-05 オリンパスイメージング株式会社 撮像装置および撮像方法
JP5783696B2 (ja) * 2010-09-02 2015-09-24 キヤノン株式会社 撮像装置、オートズーム方法、及び、プログラム
JP5725793B2 (ja) * 2010-10-26 2015-05-27 キヤノン株式会社 撮像装置およびその制御方法
US8675953B1 (en) * 2011-02-02 2014-03-18 Intuit Inc. Calculating an object size using images
JP5449448B2 (ja) * 2012-05-01 2014-03-19 キヤノン株式会社 撮像装置及びその制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449019B1 (en) 2000-04-07 2002-09-10 Avid Technology, Inc. Real-time key frame effects using tracking information
US20110267499A1 (en) 2010-04-30 2011-11-03 Canon Kabushiki Kaisha Method, apparatus and system for performing a zoom operation

Also Published As

Publication number Publication date
EP2962285A1 (en) 2016-01-06
US20140240553A1 (en) 2014-08-28
US9025051B2 (en) 2015-05-05
CN105027167A (zh) 2015-11-04
JP2016517639A (ja) 2016-06-16
EP2962285A4 (en) 2016-10-26
WO2014131941A1 (en) 2014-09-04
KR20150122752A (ko) 2015-11-02

Similar Documents

Publication Publication Date Title
KR101674340B1 (ko) 돌리 줌 효과를 자동으로 렌더링하기 위한 방법 및 장치
US9609299B2 (en) Creating time lapse video in real-time
US9706123B2 (en) Video image stabilization
KR102057488B1 (ko) 3차원 360도 가상현실 카메라 노출 제어
KR102000536B1 (ko) 합성 이미지를 촬영하는 촬영 장치 및 그 방법
KR102090105B1 (ko) 카메라를 구비하는 장치의 이미지 처리장치 및 방법
US9471993B2 (en) Method and apparatus for sensor aided extraction of spatio-temporal features
US9742995B2 (en) Receiver-controlled panoramic view video share
US20150139601A1 (en) Method, apparatus, and computer program product for automatic remix and summary creation using crowd-sourced intelligence
US9632579B2 (en) Device and method of processing image
US9826145B2 (en) Method and system to assist a user to capture an image or video
US20140082208A1 (en) Method and apparatus for multi-user content rendering
EP2704421A1 (en) System for guiding users in crowdsourced video services
WO2012150378A1 (en) Methods and apparatuses for capturing an image
JP2023536079A (ja) 画像をビデオに変換する方法、装置、機器及び記憶媒体
US11102395B2 (en) Generation of media content having multi-focus video and multi-directional audio
CN110809797A (zh) 微视频系统、格式和生成方法
JP2016506688A (ja) シングルクリックに基づく映像クリップの始点および終点の判定方法
GB2533360A (en) Method, apparatus and computer program product for processing multi-camera media content
US10818264B2 (en) Generating virtual reality and augmented reality content for a live event
KR20170009809A (ko) 영상에디팅을 수행하는 영상촬영장치 및 방법
KR101725932B1 (ko) 영상에디팅을 수행하는 영상촬영장치 및 방법
JP2016058792A5 (ko)
KR101476800B1 (ko) 파노라마 영상 기반 오브젝트 관리 장치 및 그 방법
EP3018656A1 (en) Method and device for processing data files

Legal Events

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