KR20160095058A - 카메라 모션에 의해 손상된 비디오 프레임의 처리 - Google Patents

카메라 모션에 의해 손상된 비디오 프레임의 처리 Download PDF

Info

Publication number
KR20160095058A
KR20160095058A KR1020167017881A KR20167017881A KR20160095058A KR 20160095058 A KR20160095058 A KR 20160095058A KR 1020167017881 A KR1020167017881 A KR 1020167017881A KR 20167017881 A KR20167017881 A KR 20167017881A KR 20160095058 A KR20160095058 A KR 20160095058A
Authority
KR
South Korea
Prior art keywords
frame
frames
video
viewing
motion
Prior art date
Application number
KR1020167017881A
Other languages
English (en)
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 KR20160095058A publication Critical patent/KR20160095058A/ko

Links

Images

Classifications

    • 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/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • H04N5/23245
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • H04N5/772Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera the recording apparatus and the television camera being placed in the same enclosure
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • 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/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image
    • 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/667Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
    • 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/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
    • H04N23/6811Motion detection based on the image signal
    • 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
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/685Vibration or motion blur correction performed by mechanical compensation
    • H04N5/23222
    • H04N5/23251
    • H04N5/23254
    • H04N5/23258
    • H04N5/23267
    • H04N5/2328

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)
  • Picture Signal Circuits (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

예시적인 실시예는 비디오 캡처 동안 카메라 모션의 악영향을 감소시키는 것에 관한 것이다. 모션 손상된 비디오 데이터를 프로세싱, 전송 또는 디스플레이하는 것은 대역폭, 배터리 전력, 메모리 및 기타 자원의 비효율적인 사용을 낸다. 움직이는 비디오 카메라로부터 획득된 비디오를 보는 것은 멀미를 유도할 수 있다. 보다 나은 개별 프레임들을 생성하도록 프레임 캡처 레이트를 증가시킴으로써 모션에 대처하려는 시도를 하는 종래의 시스템과는 달리, 예시적인 실시예는 모션 데이터에 의해 손상되는 프레임들을 식별하고 이들을 시청을 위해 제시하거나 제공하지 않는다. 손상된 프레임들은 비디오 스트림 또는 메모리로부터 논리적으로 또는 물리적으로 삭제될 수 있다. 모션은 물리적 장치(예컨대, 가속도계)에 의해 또는 이미지 프로세싱을 통해 검출될 수 있다(예를 들어, 동작 음영, 프레임들 간의 적은 상관관계, 낮은 신호 대 잡음 비). 디스플레이 디바이스는 캡처된 비디오 프레임에서 검출된 모션에 따라 비디오 디스플레이 모드 또는 스틸 프레임 모드로 동작하도록 제어될 수 있다.

Description

카메라 모션에 의해 손상된 비디오 프레임의 처리{HANDLING VIDEO FRAMES COMPROMISED BY CAMERA MOTION}
본 발명은 카메라 모션(motion)에 의해 손상된(compromised) 비디오 프레임의 처리에 관한 것이다.
이동 디바이스 상의 비디오 카메라는 거의 어디에서나 존재한다. 그리 많은 카메라들이 사용되고 있으며, 많은 수의 비디오들이 캡처(capture)되고 그 다음 시청된다. 비디오는 다양한 시나리오로 캡처되고 시청될 수 있다. 예를 들어, 사용자는 자신의 스마트폰 상에서 비디오를 캡처한 다음, 그 자신의 비디오를 볼 수 있다. "see-what-I-see" 모드에서, 사용자는 자신의 스마트 폰 상에서 비디오를 캡처한 다음, 그것을 다른 누군가에게 보도록, 아마도 이벤트가 진행되고 있을 때에 실시간으로 전송할 수 있다. 또한, 비디오 카메라는 영상 통화를 포함한 다른 실시간 애플리케이션에 사용될 수 있다. 삼각대에 고정된 카메라나 랩톱 상에 비교적 움직이지 않고 있는 웹캠과는 달리, 이동 전화는 비디오를 캡처하는 동안 상당히 움직이는 경향이 있으며, 특히 see-what-I-see 시나리오에서 그러하다.
움직이고 있는 비디오 카메라는 차선의 시청 경험을 내놓는 비디오를 제작할 수 있다. 캡처되는 비디오는 카메라의 움직임으로 인해 상당한 잡음 또는 상당한 인공결함(artifact)을 포함할 수 있다. 잡음의 양과 인공결함의 정도는 프레임 캡처 레이트 및 인코딩 속도와 관련될 수 있다. 카메라가 임계 속도보다 더 빨리 움직이고 있을 경우, 프레임 캡처 레이트, 인코딩 및 전송은 디바이스 모션을 처리하지 못할 수 있다. 프레임 캡처 레이트, 인코딩 및 전송이 움직이는 카메라를 따라잡을 수 없을 때 제작된 비디오는 다양한 이유들로 보기가 불쾌할 수 있다. 어떤 경우에, 시청자는 비디오를 보려고 시도하는 경우 심지어 멀미를 느끼게 될 수도 있다. 비디오가 상당히 볼 수 없을 정도일 수 있지만, 비디오는 캡처 디바이스 상에 저장될 때 여전히 메모리를 소비하고, 인코딩 또는 디코딩될 때 여전히 프로세서 사이클을 소비하며, 전송될 때 여전히 대역폭을 소비하고, 여전히 수신 디바이스 상의 메모리를 소비한다.
메모리와 대역폭은 둘 다 유한(finite) 자원이다. 실질적으로 쓸모없는 비디오로 유한 자원을 소비하는 것은 비효율적이다. 또한, 대역폭은, 특히 비디오가 셀룰러 네트워크, 위성 네트워크, 또는 기타 네트워크를 통해 전송되고 있을 때, 비용이 많이 들 수 있다. 사용자는 멀미에 들게 하는 실질적으로 쓸모없는 비디오의 전송 또는 소비에 지불하였다는 것을 알며 실망할 수 있다. 비디오를 캡처하고 저장하며 전송하는 것은 또한 스마트 폰 상의 배터리 전력과 같은 다른 자원을 소비한다. 배터리 전력은 디바이스 프로세서가 원치않는 신호 대 잡음(SNR; signal-to-noise) 비를 갖는 비디오 스트림을 인코딩/디코딩함으로써 소비될 수 있다. 사용자는 볼 수 없을 정도의 비디오에 자신의 배터리 전력을 낭비했다는 것에 실망할 수 있다.
종래에는, 카메라가 비디오를 캡처하는 동안 움직이고 있다는 것을 검출할 경우, 카메라는 개별 프레임들의 동작 음영(motion artifact)을 완화시키려는 시도로 그의 프레임 캡처 레이트 또는 다른 캡처 파라미터를 증가시킬 수 있다. 프레임 캡처 레이트를 개선하는 것은 움직이는 경치를 더 높은 충실도(fidelity)로 보다 잘 정지시킬(freeze) 수 있지만, 멀미 현상에 대처하기 위해서는 아무 것도 하지 않을 수 있다. 더 높은 캡처 레이트에 의해 블러링(blurring)이나 인공결함이 완화될 수 있지만, 이러한 비디오를 보는 것에 의해 유도된 멀미는 실제로 증가될 수 있다. 카메라가 그의 프레임 캡처 레이트를 증가시킬 경우, 추가의 메모리가 요구될 수 있고, 추가의 코딩 및 디코딩이 요구될 수 있다. 또한, 캡처 디바이스와 시청 디바이스 사이에 더 많은 프레임이 보내질 수 있다. 따라서, 카메라 모션이 검출될 때 프레임 캡처 레이트를 증가시키는 것은 움직이는 카메라와 연관된 문제를 실제로 악화시킬 수 있다. 예를 들어, 여전히 실질적으로 쓸모없거나 시청자를 멀미나게 만드는 비디오를 생성하기 위해, 더 많은 메모리가 사용될 수 있고 더 많은 배터리 전력이 사용될 수 있으며 더 많은 대역폭이 소비될 수 있다.
이 요약은 아래에 상세한 설명에서 더 기재되는 개념의 선택을 단순화된 형태로 소개하고자 제공된다. 이 요약은 청구 내용의 핵심 특징 또는 필수 특징을 나타내고자 하는 것이 아니며, 청구 내용의 범위를 한정하는데 사용되도록 의도되는 것도 아니다.
예시적인 방법 및 장치는 카메라 모션에 의해 영향받을 수 있는 비디오에 대한 개선된 시청 경험을 제공하는 것에 관한 것이다. 비디오 모션에 의해 손상될 수 있는 프레임은 비디오 모션에 의해 손상되지 않은 프레임과 상이하게 처리될 수 있다. 프레임은, 카메라로부터의 센서 데이터(예를 들어, 자이로스코프, 가속도계)에 기초하여, 프레임-대-프레임(frame-to-frame) 분석(예를 들어, 레지스트레이션(registration))에 기초하여, 프레임내(in-frame) 분석(예를 들어, 블러링)에 기초하여, 또는 다른 방식으로, 손상된 것으로서 식별될 수 있다. 프레임이 손상된 것으로 식별되었다면, 프리젠테이션(presentation)으로부터 그 프레임을 제외하려는 결정이 행해질 수 있다. 특정 기간 내에 임계 수의 프레임들이 손상된 경우, 프리젠테이션은 일부 프레임이 드롭되고 있다는 사실을 숨기려고 하지 않는 스틸(still) 프레임 모드로 전환될 (drop)수 있다. 대신에, 스틸 프레임 모드는, 미리 결정된 간격동안(예를 들어, 1/2초) 마지막 손상되지 않은 프레임을 제시(present)할 수 있거나, 또는 프레임들 사이에 만족스러운 시각적 효과 변환을 가한 슬라이드 쇼 포맷으로 선택된 손상되지 않은 프레임들을 제시할 수 있다. 특정 기간 내에 임계 수의 손상되지 않은 프레임들이 검출되면, 프리젠테이션은 다시 비디오 모드로 전환할 수 있다.
예시적인 장치의 일부 실시예는, 비디오 카메라와 연관된 장치를 제어하는 로직 세트(예를 들어, 회로)를 포함할 수 있다. 장치는 카메라 모션을 분석하고 카메라 모션에 적어도 부분적으로 기초하여 비디오 프레임에 관한 결정을 행할 수 있다. 예를 들어, 카메라가 움직임 임계량보다 더 많이 움직이고 있는 동안 획득되는 프레임들은 메모리에 저장되지 않을 수 있으며, 또는 프레임들이 메모리에 저장되는 경우에는 모션 플래그로 마킹되거나 플레이리스트로부터 제외될 수 있다 카메라가 움직이는 동안 획득된 것으로 마킹되는 프레임들은 인코딩 또는 디코딩되지 않으며 또는 획득 디바이스로부터 디스플레이를 위한 또다른 디바이스로 전송되지 않을 수 있다. 장치는 비디오 캡처 동안 검출된 모션에 적어도 부분적으로 기초하여 프레임들이 어떻게 디스플레이될지 조작할 수 있다. 예를 들어, 카메라가 너무 움직여서, 짧은 기간에만, 디스플레이된 비디오 이미지가 안정적이며 동작 음영이 없을 것이라면, 장치는 비디오를 디스플레이하려고 하는 것을 멈출 수 있고, 대신에 시청 표준을 충족시키는 스틸 이미지를 디스플레이할 수 있다.
첨부 도면은 여기에 기재된 다양한 예시적인 장치, 방법 및 기타 실시예를 예시한다. 도면에서의 예시된 요소 경계들(예를 들어, 박스, 박스 그룹 또는 기타 형상)은 경계의 하나의 예를 나타낸 것임을 알아야 한다. 일부 예에서, 하나의 요소는 복수의 요소로서 설계될 수 있고, 또는 복수의 요소가 하나의 요소로서 설계될 수 있다. 일부 예에서, 다른 요소의 내부 컴포넌트로서 도시된 요소가 외부 컴포넌트로서 구현될 수 있고, 그 반대로도 가능하다. 또한, 요소들은 실축척대로 도시되지 않을 수 있다.
도 1은 비디오 프레임들의 스트림을 생성하는 카메라 및 카메라 모션에 의해 손상되는 프레임들을 처리하는 예시적인 제어기를 예시한다.
도 2는 비디오 데이터 및 스틸 프레임들을 포함하는 예시적인 프리젠테이션 스트림을 예시한다.
도 3은 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것과 연관된 예시적인 방법을 예시한다.
도 4는 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것과 연관된 예시적인 방법을 예시한다.
도 5는 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것과 연관된 예시적인 장치를 예시한다.
도 6은 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것과 연관된 예시적인 장치를 예시한다.
도 7은 예시적인 방법 또는 장치가 카메라 모션에 의해 손상된 비디오 프레임들을 처리할 수 있는 예시적인 클라우드 운영 환경을 예시한다.
도 8은 카메라 모션에 의해 손상된 비디오 프레임들을 처리하도록 구성된 예시적인 이동 통신 디바이스를 도시한 시스템 도면이다.
예시적인 장치 및 방법은 비디오 카메라가 프레임들을 캡처하면서 움직이고 있을 때 생기는 문제점들을 다룬다. 카메라 모션이 검출될 때 프레임 캡처 레이트를 증가시킴으로써 추가의 자원을 소비하는 종래의 시스템과는 달리, 예시적인 장치 및 방법은 상이한 접근을 취함으로써 자원 소비를 감소시키고자 한다. 더 많은 프레임들을 캡처하는 것이 아니라, 예시적인 장치 및 방법은 카메라 모션에 의해 임계량보다 덜 영향받은 프레임들만 디스플레이함으로써 카메라 모션에 대응할 수 있다. 또한, 카메라 속도를 높이는 것이 아니라, 예시적인 장치 및 방법은 모션이 검출되는 동안 카메라 속도를 늦출 수 있으며, 비디오 프리젠테이션 대신에 슬라이드 쇼 프리젠테이션에 적합한 스틸 프레임들이 획득될 수 있도록 카메라를 변경할 수 있다.
도 1은 비디오 프레임들의 스트림(100)을 생성하고 있는 카메라(100)를 예시한다. 비디오 프레임들의 스트림(110)이 제어기(120)에 의해 처리된다. 제어기(120)는 카메라(100)의 모션에 의해 원치않게 영향받는 스트림(110) 내의 프레임들을 식별할 수 있다. 시청가능한 것으로 간주되는 프레임들은 제시될 수 있으며, 시청불가능한 것으로 간주되는 프레임들은 제시되지 않을 수 있다. 프레임이 카메라(100)의 모션으로 인해 임계량보다 덜한 손상을 나타내는 경우에 프레임은 시청가능한 것으로 간주될 수 있다. 손상은 신호 대 잡음 비(SNR; signal-to-noise ratio), 블러링의 양, 동작 음영, 또는 기타 기준에 의해 식별될 수 있다.
제어기(120)는 시청가능한 것으로 간주되었던 단일 프레임(130)을 제시할 수 있고, 그 다음 또다른 단일 프레임(140)을 제시하기 전에 시청불가능한 것으로 간주되었던 다수의 프레임들을 스킵할 수 있다. 하나의 실시예에서, 단일 프레임(130)은 미리 결정된 기간(예를 들어, 일 초) 동안 디스플레이될 수 있거나, 또는 다음 시청가능한 프레임(140)이 제공될 때까지 디스플레이될 수 있다. 그러면, 제어기(120)는 클립(clip)(150)을 제공할 수 있다. 클립(150)은 카메라(100)가 임계량보다 덜 움직인 동안 획득된 일련의 인접 프레임들을 포함할 수 있다. 클립(150)이 제공된 후에, 제어기(120)는 단일 프레임(160)을 제공할 수 있다. 프레임(160)은 너무 긴 기간 동안(예를 들어, 또다른 시청가능한 프레임이 제공될 때까지) 제시될 수 있다. 어느 프레임들이 시청을 위해 제공되는지 제어하는 것에 더하여, 제어기(120)는 또한 카메라(100)에 제어 신호를 제공할 수 있다. 제어 신호는 예를 들어, 카메라(100)가 비디오 데이터를 계속해서 획득하려고 할지 또는 카메라(100)가 스틸 프레임들을 획득할 것인지 결정할 수 있다.
도 2는 카메라(100) 내의 센서(102)를 예시한다. 센서(102)는 예를 들어, 카메라(100)의 모션이 결정될 수 있는 자이로스코프, 가속도계, 또는 기타 전기적, 기계적 또는 전자 디바이스일 수 있다. 카메라(100)는 스트림(110) 내의 프레임들에 관련된 모션 데이터(112)를 생성할 수 있다. 카메라(100)는 또한 분석기(104)에 데이터를 제공할 수 있다. 분석기(104)는 모션 데이터(112)를 생성하거나 변경하거나 또는 달리 조작할 수 있다. 예를 들어, 센서(102)는 모션 데이터(112)에 원시 가속도계 데이터를 제공할 수 있으며, 분석기(104)는 모션 데이터(112)에 제공/미제공(do-not-provide) 값을 제공할 수 있다.
제어기(120)는 스트림(110)을 수신하고, 모션 데이터(112)에 적어도 부분적으로 기초하여 시청을 위해 어느 프레임들을 제공할지(만약 있다면) 결정할 수 있다. 제어기(120)는 시청을 위해 프레임들(예를 들어, 130, 140, 150, 160)을 제공할 수 있거나, 또는 디스플레이 디바이스(170)에 프레임들 또는 제어 정보를 제공할 수 있다. 디스플레이 디바이스(170)는 제어기(120)에 의해 제공된 어느 프레임들을 디스플레이할지 결정할 수 있다. 디스플레이 디바이스(170)는 또한, 디스플레이 디바이스(170)가 제시하는 프레임들을 어떻게 포맷팅할지 결정할 수 있다.
다음 시나리오를 고려하자. 사용자는 축구 게임을 보면서 자신의 손에 자신의 스마트 폰을 쥐고 있다. 게임이 시작하기 전에, 사용자는 그의 주변을 보여주도록 운동장의 파노라마 비디오를 찍을 수 있다. 사용자가 어떠한 갑작스런 가속 또는 감속 없이 완만한 호로 카메라를 움직이는 경우, 비디오는 볼 만할 수 있다. 막 게임이 시작하려고 할 때에, 사용자는 움직이지 않고 서서 센터 포워드가 게임을 시작하라는 신호를 기다리고 있는 센터 서클 상에 움직임 없이 카메라를 쥘 수 있다. 사용자가 움직이지 않고 동작이 없으므로, 다시 한번 비디오는 시청을 위해 받아들여질 수 있다.
그러나, 게임이 시작되면, 사용자가 여기저기 움직이고 있는 경우 비디오는 보기가 어렵게 될 수 있다. 예를 들어, 사용자가 자신의 팀을 응원하려고 발을 구르고 있는 경우, 카메라는 갑작스러운 가속을 경험하고 있을 수 있다. 대부분의 비디오는 시청가능할 수 있지만, 사용자의 발이 콘크리트 스탠드를 칠 때의 충격 동안 획득된 프레임들은 손상될 수 있다. 예시적인 장치 및 방법은, 매끄러운 비디오인 다른 프레임들을 제공하면서 이들 손상된 프레임들을 드롭시킬 수 있다.
게임 동안, 프리킥의 세트 피스 플레이가 있을 수 있다. 사용자는 보다 빠르게 동작을 캡처하도록 줌인할 수 있다. 빠른 줌은 비디오를 보기가 매우 어렵게 만드는 명백한 모션을 생성할 수 있다. 다시 한 번, 예시적인 장치 및 방법은 이들 프레임들을 드롭시킬 수 있다.
게임 동안, 또한 빠른 플레이어에 의한 엔드투엔드(end-to-end) 러쉬가 있을 수 있다. 사용자는 동작을 따라가도록 카메라를 패닝하려고 시도할 수 있다. 그러나, 사용자는 매끄럽게 패닝할 수 없을 수 있으며, 이는 흔들리는 다수의 프레임들을 생성한다. 또는, 어지러움 없이 비디오를 보기가 어려울 정도로 많은 움직임이 장면 내에 있을 수 있다. 흐릿한 프레임들 또는 현기증을 유도하는 프레임들을 제시하기보다는, 예시적인 장치 및 방법은 이들 프레임들을 드롭시킬 수 있다.
프레임을 드롭시키는 것은 카메라에서 또는 디스플레이에서 일어날 수 있다. 스마트 폰 또는 기타 핸드헬드 디바이스의 경우에, 디스플레이는 카메라 상에도 있을 수 있다. 프레임을 드롭시키는 것은, 메모리에 프레임을 저장하지 않거나, 메모리로부터 프레임을 제거하거나, 또는 메모리 내의 프레임을 손상된 것으로 마킹하는 것을 포함할 수 있다. 프레임을 드롭시키는 것은 또한, 하나의 디바이스로부터 다른 디바이스로 프레임을 전송하지 않는 것을 포함할 수 있다.
프레임들이 드롭될 때, 빈 공간을 어떻게 채울지에 관한 결정이 행해질 수 있다. 하나의 실시예에서, 또다른 프레임이 수신될 때까지, 수신된 마지막 프레임이 디스플레이될 수 있다. 또다른 실시예에서, 수신된 프레임들은 버퍼링될 수 있거나, 또는 달리 저장된 다음, 설계된 변환이 있는 슬라이드 쇼 방식으로 디스플레이될 수 있다.
이 시나리오로 제시된 비디오는 보기가 더 쉬울 수 있다. 비디오는, 볼 수 없을 정도이거나 적어도 보기가 불쾌할 클립들로부터 선택된 일련의 스틸 프레임들을 포함할 수 있다. 프레임들을 드롭시키는 것은 메모리 요건을 감소시키고 수행되는 프로세싱을 감소시키며 네트워크를 통해 전송된 데이터의 양을 감소시킬 수 있다. 셀룰러 전화에 대하여, 전송되는 데이터의 양을 감소시키는 것은 배터리 전력의 절약 및 소비되는 대역폭의 절약을 끌어낼 수 있다.
사용자가 카메라를 착용하고 있거나 카메라가 자전거, 카약, 낙하산 띠, 암벽 등반 헬멧, 또는 상당한 움직임을 발생시키기 마련인 다른 장비 상에 장착되는 보다 극한 시나리오를 고려하자. 이 시나리오에서, 비디오를 캡처하고 있는 카메라는 시청 디바이스에 저장 또는 시청되지 않을 프레임들을 식별할 수 있고, 또는 비디오를 캡처하고 있는 카메라는 시청 디바이스가 제거하기를 원할 수 있는 프레임들을 식별할 수 있다.
이어지는 다음 상세한 설명의 일부 부분은 메모리 내의 데이터 비트에 대한 동작들의 알고리즘 및 부호 표현에 관련하여 제시된다. 이들 알고리즘 설명 및 표현은 당해 기술 분야에서의 숙련자들에 의해 작업 내용을 다른 자들에게 전달하도록 사용된다. 알고리즘은 결과를 생성하는 동작들의 시퀀스인 것으로 간주된다. 동작들은 전자 값들의 형태를 취할 수 있는 물리적 양들을 생성하고 조작하는 것을 포함할 수 있다. 전자 값의 형태로 물리적 양을 생성하거나 조작하는 것은 구체적이고 명확하며 유용한 실세계 결과를 생성한다.
주로 일반 용도의 이유로, 이들 신호를 비트, 값, 요소, 심볼, 문자, 용어, 숫자 및 기타 항목으로서 지칭하는 것이 때때로 편리한 것으로 증명되었다. 그러나, 이들 및 유사 용어들은 적절한 물리적 양과 연관될 것이고 이들 양에 적용된 단지 편리한 라벨일 뿐인 것을 유념하여야 한다. 달리 구체적으로 서술되지 않는 한, 설명 전반에 걸쳐, 프로세싱, 계산 및 결정을 포함한 용어는 물리적 양(예컨대, 전자 값)으로 표현된 데이터를 조작하고 변환하는 컴퓨터 시스템, 로직, 프로세서, 또는 유사한 전자 디바이스의 동작 및 프로세스를 지칭하는 것을 알아야 할 것이다.
예시적인 방법은 흐름도를 참조하여 보다 잘 인식될 수 있다. 단순하게 하기 위해, 예시된 방법은 일련의 블록들로 도시되고 기재되어 있다. 그러나, 방법은, 일부 실시예에서 블록들이 도시 및 기재된 바와 상이한 순서로 일어날 수 있기 때문에, 블록들의 순서에 의해 한정되지 않을 수 있다. 또한, 예시된 블록들 전부보다 적은 수가 예시적인 방법을 구현하는데 요구될 수 있다. 블록들은 결합되거나 또는 복수의 컴포넌트들로 분리될 수 있다. 또한, 추가의 또는 대안의 방법은 추가의 예시되지 않은 블록을 채용할 수 있다.
도 3은 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것과 연관된 예시적인 방법(300)을 예시한다. 방법(300)은, 310에서, 비디오 카메라에 의해 캡처된 프레임에 액세스하는 것을 포함한다. 카메라는 스마트폰 카메라(예컨대, 스마트폰 디바이스의 일부), 태블릿 내의 카메라, 개인용 컴퓨터 내의 카메라, PDA 내의 카메라, 또는 다른 카메라일 수 있다. 하나의 실시예에서, 카메라는 다운로드 또는 업로드를 위한 이미지를 저장하는 단독형 카메라일 수 있다. 다른 실시예에서, 카메라는 클라우드에 직접 접속되어 라이브 비디오를 스트리밍하도록 구성될 수 있다. 하나의 실시예에서, 카메라는 스마트폰, 태블릿, 컴퓨터, 또는 비디오를 스트리밍하는 다른 인터넷 접속 디바이스에 무선으로 접속될 수 있다. 비디오 카메라에 의해 캡처된 프레임에 액세스하는 것은, 메모리의 컨텐츠를 검사하는 것, 메모리에의 포인터를 수신하는 것, 블랍(binary large object)을 수신하는 것, 객체를 수신하는 것, 또는 다른 동작을 포함할 수 있다. 비디오 카메라에 의해 캡처된 프레임에 액세스하는 것은, 메모리 또는 프레임을 저장한 디바이스 상에 저장된 데이터에 액세스하는 것 또는 프레임을 캡처하지 않은 또다른 디바이스 상의 메모리 또는 데이터에 액세스하는 것을 포함할 수 있다. 프레임에 액세스하는 것은, 프레임들의 스트림 내의 프레임을 수신하는 것, 단일 프레임으로서 프레임을 수신하는 것, 프레임들의 콜렉션으로부터 프레임을 파싱하는 것, 또는 다른 동작을 포함할 수 있다.
방법(300)은 또한, 320에서, 프레임이 캡처되었을 때에 비디오 카메라의 모션의 함수로서 프레임에 대한 시청 요인(viewing factor)을 결정하거나 계산하는 것을 포함한다. 하나의 실시예에서, 비디오 카메라의 모션은 프레임이 캡처되었을 때에 비디오 카메라와 연관된 가속도계 데이터로부터 결정된다. 다른 실시예에서, 비디오 카메라의 모션은 프레임이 캡처되었을 때에 비디오 카메라와 연관된 자이로스코프 데이터로부터 결정된다. 카메라 상의 센서가 그로부터 모션이 식별될 수 있는 일부 정보를 제공할 수 있지만, 캡처된 프레임도 또한 그로부터 모션이 식별될 수 있는 데이터를 제공할 수 있다. 하나의 실시예에서, 비디오 카메라의 모션은 프레임과 연관된 단일 프레임 모션 분석 데이터로부터 결정된다. 다른 실시예에서, 비디오 카메라의 모션은 비디오 카메라로부터 획득된 프레임 및 하나 이상의 다른 프레임과 연관된 프레임-대-프레임 모션 분석 데이터로부터 결정된다. 다른 실시예에서, 가속도계, 자이로스코프, 단일 프레임 및 프레임-대-프레임 데이터의 상이한 치환 및 조합이 카메라 모션을 식별하도록 사용될 수 있다.
하나의 실시예에서, 시청 요인이 시청 표준을 충족시키지 않는다고 결정하면, 프레임은 시청 표준을 충족시켰던 이전에 획득된 프레임으로 교체될 수 있다. 시청 표준은, 예를 들어 수락가능한 신호 대 잡음 비(SNR), 수락가능한 수의 동작 음영, 모션에 의해 손상된 이미지의 수락가능한 퍼센티지, 프레임이 손상된 정도, 또는 다른 정보를 기술할 수 있다. 교체는, 이전에 획득된 프레임을 나타내는 비트가 프레임을 덮어쓰기하는데 사용되는 경우 물리적일 수 있거나, 프레임에의 포인터가 이전에 획득된 프레임에의 포인터로 교체되는 경우 논리적일 수 있다. 교체는 프레임이 저장되는 메모리에서 행해질 수 있거나, 소스(예컨대, 카메라)로부터 종착지(예컨대, 디스플레이)로 제공되고 있는 프레임들의 스트림에서 행해질 수 있거나, 또는 다른 방식으로 행해질 수 있다. 하나의 실시예에서, 메모리 또는 대역폭을 절약하기 위해, 이전에 획득된 프레임은 손상된 프레임을 교체하기 전에 압축 프레임으로 압축될 수 있다. 다른 실시예에서, 교체는, 카메라에서, 카메라를 대신하여 비디오를 스트리밍하는 디바이스에서, 또는 비디오를 디스플레이하는 디바이스에서 수행될 수 있다.
하나의 실시예에서, 시청 요인이 시청 표준을 충족시키지 않는다고 결정하면, 방법(300)은 프레임이 시청 표준을 충족시키지 않음을 나타내는 신호를 제공할 수 있다. 신호는 메모리에 값을 저장함으로써 프레임과 연관될 수 있거나, 아웃바운드 비디오 스트림에 배치될 수 있거나, 프레임들이 제공되고 있는 채널과 별개의 채널 상에 제공될 수 있거나, 프레임을 처리하는 인코더/디코더에의 인터럽트의 형태를 취할 수 있거나, 또는 다른 방식으로 제공될 수 있다. 따라서, 마지막 수락가능한 프레임을 여러 번 보내는 것이 아니라, 송신 디바이스는 마지막 수락가능한 프레임을 한 번 보낸 다음, 수신 디바이스가 슬라이드 쇼 모드로 들어가도록 사용할 수 있다는 신호를 보낼 수 있다.
방법(300)은 또한, 330에서, 프레임이 어떻게 제시될 것인지 제어하는 것을 포함한다. 시청을 위해 프레임이 어떻게 제시될 것인지 제어하는 것은 시청 요인의 함수일 수 있다. 프레임이 어떻게 제시될 것인지 제어하는 것은, 비디오 카메라가 비디오 카메라 모드로 동작할 것인지 아니면 스틸 프레임 모드로 동작할 것인지 제어하는 것을 포함할 수 있다. 하나의 실시예에서, 비디오 카메라 모드 및 스틸 프레임 모드는 이미지들이 어떻게 획득 및 디스플레이될지 제어할 수 있다. 예를 들어, 스틸 프레임 모드로 동작하는 것은, 비디오 카메라에 대한 프레임 캡처 레이트를 초당 24 프레임 아래로 조정하고, 비디오 카메라에 대한 셔터 속도를 1/500 초보다 빠르게 조정하는 것을 포함할 수 있다. 다른 예에서, 비디오 카메라 모드로 동작하는 것은, 비디오 카메라에 대한 프레임 캡처 레이트를 적어도 초당 24 프레임으로 조정하고, 비디오 카메라에 대한 셔터 속도를 1/500초보다 느리게 조정하는 것을 포함할 수 있다. 다른 프레임 캡처 레이트 및 셔터 속도가 채용될 수 있다.
하나의 실시예에서, 시청을 위해 프레임이 어떻게 제시될 것인지 제어하는 것은, 프레임이 프레임을 캡처한 장치로부터 전송될 것인지 여부를 제어하는 것을 포함한다. 프레임이 제시되지 않을 것이라면, 프레임은 캡처 디바이스로부터 디스플레이 디바이스 또는 프로세싱 디바이스로 전송되지 않을 수 있다. 하나의 실시예에서, 시청을 위해 프레임이 어떻게 제시될 것인지 제어하는 것은, 메모리로부터 프레임을 삭제하는 것을 포함한다. 삭제는, 프레임을 나타내는 비트가 실제로 제로화되거나 또는 달리 조작되는 경우에 물리적일 수 있다. 삭제는, 프레임을 나타내는 비트에의 포인터가 삭제되거나 조작되는 경우에, 디스플레이 리스트 내의 멤버십이 제거되는 경우에, 또는 이미지를 나타내는 비트에 액세스되는 것이 금지되는 다른 물리적 동작이 취해지는 경우에, 논리적일 수 있다.
방법(300)에 기재된 다양한 동작들은 상이한 장치에서 수행될 수 있다. 예를 들어, 310에서 프레임에 액세스하는 것은, 프레임을 캡처한 제1 장치에서 또는 프레임을 캡처하지 않은 제2 장치에서 일어날 수 있다. 마찬가지로, 시청 요인을 결정하는 것은, 제1 장치에서 또는 프레임을 캡처하지 않은 장치에서 일어날 수 있다. 또한, 프레임이 어떻게 제시될 것인지 제어하는 것은, 제1 장치에서 또는 또다른 장치에서 일어날 수 있다. 예를 들어, 하나의 디바이스는 모션 잡음을 갖는 비디오 스트림을 보낼 수 있다. 제2 디바이스는, 모션을 보정할 수 있고 따라서 보는 사람에게 더 나은 뷰를 보여줄 수 있다. 제2 디바이스는 시청자를 어지럽고 멀미나게 만드는 세그먼트를 더 양호하고 매끄러우며 느린 변환으로 교체할 수 있다. 예시로써, 사용자는 수락불가능한 모션 잡음을 생성하는 제1 전화 상의 비디오를 찍을 수 있다. 비디오는 제2 스마트 폰으로 보내질 수 있으며, 제2 스마트 폰은 뷰를 깨끗하게 할 수 있고 쾌적한 것을 제시할 수 있다.
도 4는 방법(300)에서 알아낸 것과 유사한 일부 동작들을 포함하는 예시적인 방법(400)을 예시한다. 방법(400)은, 410에서 프레임에 액세스하고, 420에서 시청 요인을 결정하거나 계산하고, 430에서 시청을 위해 프레임이 어떻게 제시될 것인지 제어하는 것을 포함한다. 그러나, 방법(400)은 추가의 동작들을 포함한다.
예를 들어, 방법(400)은, 425에서, 비디오 카메라에 의해 캡처된 일련의 프레임들에 대한 연속성 요인(continuity factor)을 계산하는 것을 포함한다. 연속성 요인은 일련의 프레임들의 멤버들에 대한 시청 요인에 적어도 부분적으로 기초할 수 있다. 시청 요인이 단일 프레임의 프리젠테이션을 제어하는데 사용될 수 있는 것과 마찬가지로, 연속성 요인은 일련의 프레임들의 프리젠테이션을 제어하는데 사용될 수 있다. 하나의 실시예에서, 연속성 요인이 연속성 표준을 충족시키지 않는다고 결정하면, 방법(400)은, 연속성 요인이 연속성 표준을 충족시킨 경우 일련의 프레임들을 디스플레이하였을 디바이스를 스틸 프레임 디스플레이 모드로 들어가도록 제어할 수 있다. 또한, 방법(400)은, 연속성 요인이 연속성 표준을 충족시킨다고 결정하면, 디바이스를 비디오 디스플레이 모드로 들어가도록 제어하는 것을 포함할 수 있다.
하나의 실시예에서, 스틸 프레임 디스플레이 모드는 단일 프레임이 이용가능하게 될 때에 시청 표준을 충족시키는 단일 프레임을 선택적으로 디스플레이하도록 구성된다. 고르지 못하거나 조마조마한 시청 경험을 막기 위해, 단일 프레임은 적어도 미리 결정된 단일 프레임 기간(예컨대, .1초, .25초, .5초, 1초) 동안 디스플레이될 수 있다. 하나의 실시예에서, 스틸 프레임들이 이용가능하게 될 때에 디스플레이되고 있는 경우, 단일 프레임 모드는 다양한 비디오 효과들(예를 들어, 페이드인, 페이드아웃, 디졸브, 왼쪽으로 들어가기, 오른쪽으로 나가기)을 사용하여 프레임들 사이에 넘어감으로써 프레임들을 연결하는 것을 포함할 수 있다. 다른 실시예에서, 스틸 프레임 디스플레이 모드는, 연속성 표준이 충족될 때까지 시청 표준을 충족시킨 이전에 제공된 프레임을 디스플레이하도록 구성될 수 있다. 이는, 연속성 요인을 충족시킨 일련의 프레임들 내의 시청 요인을 충족시킨 마지막 프레임이, 연속성 요인을 충족시키는 일련의 프레임들 내의 시청 요인을 충족시키는 다음 프레임이 제공될 때까지, 디스플레이되는 경우에, "프리즈 프레임(freeze frame)" 모드와 비슷할 수 있다. 방법(300 또는 400)은 둘 다, 모션이 임계치 아래로 감소하였다고 결정하면, 비디오 모드로 자동으로 돌아가는 것을 포함할 수 있다.
도 3 및 도 4는 연속적으로 일어나는 다양한 동작들을 예시하지만, 도 3 및 도 4에 예시된 다양한 동작들은 실질적으로 동시에 일어날 수 있다는 것을 알아야 할 것이다. 예시로써, 제1 프로세스는 프레임들에 액세스할 수 있고, 제2 프로세스는 시청 요인 및 연속성 요인을 결정할 수 있으며, 제3 프로세스는 카메라 동작을 제어할 수 있고, 제4 프로세스는 디스플레이 동작을 제어할 수 있다. 4개의 프로세스가 기재되어 있지만, 더 많거나 더 적은 수의 프로세스들이 채용될 수 있고 가벼운 프로세스, 규칙적인 프로세스, 쓰레드, 및 기타 접근이 채용될 수 있다는 것을 알아야 할 것이다.
하나의 예에서, 방법은 컴퓨터 실행가능한 명령어들로서 구현될 수 있다. 따라서, 하나의 예에서, 컴퓨터 판독가능한 저장 매체는, 머신(예컨대, 컴퓨터)에 의해 실행되는 경우, 머신이 방법(300) 또는 방법(400)을 비롯하여 여기에 기재되거나 청구된 방법을 수행하게 하는 컴퓨터 실행가능한 명령어들을 저장할 수 있다. 열거된 방법과 연관된 실행가능한 명령어들이 컴퓨터 판독가능한 저장 매체 상에 저장되는 것으로 기재되어 있지만, 여기에 기재되거나 청구된 다른 예시적인 방법과 연관된 실행가능한 명령어들이 또한 컴퓨터 판독가능한 저장 매체 상에 저장될 수 있다는 것을 알아야 할 것이다. 다른 실시예에서, 여기에 기재된 예시적인 방법은 상이한 방식들로 트리거될 수 있다. 하나의 실시예에서, 방법은 사용자에 의해 수동으로 트리거될 수 있다. 다른 예에서, 방법은 자동으로 트리거될 수 있다.
도 5는 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것과 연관된 장치(500)를 예시한다. 하나의 실시예에서, 장치(500)는 프로세서(510), 메모리(520), 및 로직 세트(530)를 연결하도록 구성된 인터페이스(540)를 포함한다. 장치(500)의 요소들은 서로 통신하도록 구성될 수 있지만, 예시를 명확하게 하기 위해 모든 연결이 도시된 것은 아니다.
장치(500)는 프로세서(510)를 포함할 수 있다. 프로세서(510)는, 예를 들어 신호 프로세서, 마이크로프로세서, ASIC(application specific integrated circuit), 또는 신호 코딩, 데이터 프로세싱, 입력/출력 프로세싱, 전력 제어, 또는 다른 기능을 포함한 작업을 수행하기 위한 기타 제어 및 프로세싱 로직 회로일 수 있다. 프로세서(510)는 로직 세트(530)에 의해 수행된 프로세싱을 지원하는 동작들을 수행하도록 구성될 수 있다.
장치(500)는 메모리(520)를 포함할 수 있다. 메모리(520)는 비이동식 메모리 또는 이동식 메모리를 포함할 수 있다. 비이동식 메모리는 RAM(random access memory), ROM(read only memory), 플래시 메모리, 하드 디스크, 또는 기타 메모리 저장 기술을 포함할 수 있다. 이동식 메모리는 플래시 메모리 또는 "스마트 카드"와 같은 기타 메모리 저장 기술을 포함할 수 있다. 메모리(520)는, 비디오 카메라에 의해 획득된 프레임 세트를 저장하도록, 카메라에 의해 획득된 개별 프레임들을 저장하도록, 또는 프레임들에 관한 메타데이터를 저장하도록 구성될 수 있다. 메타데이터는, 예를 들어, 프레임에 대한 센서 데이터, 프레임들에 대한 모션 분석 데이터, 포함/제외 값, 또는 다른 값을 포함할 수 있다.
하나의 실시예에서, 장치(500)는 로직 세트(530)의 포함을 통해 특수 용도 컴퓨터로 변환된 범용 컴퓨터일 수 있다. 로직 세트(530)는 카메라 모션에 의해 손상된 비디오 프레임들을 처리하도록 구성될 수 있다. 카메라 모션에 의해 손상된 비디오 프레임들을 처리하는 것은, 프레임들을 삭제하는 것, 프레임들이 디스플레이되는 것을 막는 것, 프레임들이 어떻게 디스플레이될지 제어하는 것, 카메라가 프레임들을 어떻게 획득할 것인지 제어하는 것, 디스플레이가 프레임들을 어떻게 제시할 것인지 제어하는 것, 또는 다른 동작들을 포함할 수 있다. 장치(500)는 예를 들어 컴퓨터 네트워크를 통해 다른 장치, 프로세스, 및 서비스와 상호작용할 수 있다.
장치(500)는 제1 로직(531)을 포함할 수 있다. 제1 로직(531)은 비디오 카메라가 프레임 세트의 멤버들을 획득한 동안 비디오 카메라가 어떻게 움직이고 있었는지 기술하는 모션 데이터를 생성하도록 구성될 수 있다. 모션은 다양한 센서 또는 프로세스로부터의 데이터를 사용하여 식별될 수 있다. 예를 들어, 모션 데이터는 비디오 카메라에 의해 생성된 자이로스코프 데이터 또는 비디오 카메라에 의해 생성된 가속도계 데이터의 함수일 수 있다. 또한, 모션 데이터는 단일 프레임 모션 분석 또는 프레임-대-프레임 모션 분석의 함수일 수 있다. 단일 프레임 모션 분석은, 예를 들어 동작 음영, 신호 대 잡음 비, 또는 다른 요인을 식별할 수 있다. 프레임-대-프레임 모션 분석은 객체들 간의 레지스트레이션, 객체들 사이의 연속성, 또는 다른 요인을 검사할 수 있다. 모션 데이터는 프레임당 모션 데이터 또는 클립당 모션 데이터를 포함할 수 있다. 클립은 미리 결정된 기간 내에 획득된 관련 프레임 세트이다. 하나의 실시예에서, 모션 데이터는 카메라의 실제 이동을 기술할 수 있거나(예컨대, 사용자가 카메라를 격렬하게 흔들고 있음), 또는 명백한 움직임을 보고할 수 있다(예컨대, 사용자가 빠르게 줌인 또는 줌아웃하고 있음).
장치(500)는 제2 로직(532)을 포함할 수 있다. 제2 로직(532)은, 프레임 세트의 멤버들이 연속 비디오 디스플레이로서 디스플레이될지, 아니면 선택된 스틸 프레임들로서 디스플레이될지, 아니면 전혀 디스플레이되지 않을지 제어하도록 구성될 수 있다. 멤버들이 디스플레이될지 여부와 멤버들이 스틸 프레임들로서 아니면 연속 비디오 디스플레이로서 디스플레이될지는 모션 데이터에 적어도 부분적으로 기초할 수 있다. 예를 들어, 모션 데이터가 모션 임계치를 충족시키지 않은 동안 획득된 제1의 일련의 프레임들의 멤버들은 제1 이산 디스플레이 모드로 제시될 수 있으며, 모션 데이터가 모션 임계치를 충족시킨 동안 획득된 제2의 일련의 프레임들의 멤버들은 제2 연속 디스플레이 모드로 제시될 수 있다. 보다 일반적으로, 움직이는 카메라로부터의 프레임들은 스틸 이미지로서 제시될 수 있는 반면, 움직이고 있지 않거나 조금만 움직이고 있는 카메라로부터의 프레임들은 비디오로서 제시될 수 있다.
하나의 실시예에서, 제2 로직(532)은 프레임당 모션 데이터에 기초하여 프레임 세트의 개별 멤버들을 선택적으로 제외하도록 구성된다. 예를 들어, 일련의 프레임들이 일련의 프레임들 내의 집단 움직임에 대한 연속성 표준을 충족시킬 수 있지만, 하나 이상의 개별 멤버들은 개별 프레임에 대한 시청 표준을 충족시키지 않을 수 있다. 제2 로직(532)은 또한, 클립당 모션 데이터에 기초하여 프레임 세트의 개별 멤버들을 선택적으로 제외하도록 구성될 수 있다. 예를 들어, 클립당 모션 데이터는 수락불가능한 연속성 또는 흔들림에 기여하는 프레임들을 식별할 수 있다. 제2 로직(532)은 또한, 클립당 모션 데이터에 기초하여 프레임 세트의 멤버들의 서브세트를 선택적으로 제외하도록 구성될 수 있다. 예를 들어, 클립당 모션 데이터는 연속성 표준을 충족시키지 않는 일련의 프레임들을 식별할 수 있고 전체 시리즈를 제외할 수 있다.
도 6은 장치(500)의 또다른 실시예를 예시한다. 이 실시예는, 비디오 카메라에 대한 프레임 캡처 파라미터를 제어하도록 구성되는 제3 로직(533)을 포함한다. 프레임 캡처 파라미터는 예를 들어 프레임 캡처 레이트 또는 셔터 속도일 수있다. 프레임 캡처 파라미터가 조정되는지 여부와 어떻게 조정될지는 모션 데이터에 적어도 부분적으로 기초할 수 있다. 예를 들어, 카메라가 움직이고 있는 경우, 카메라는 스틸 프레임들의 제작을 최적화하도록 조정될 수 있다. 카메라가 움직이고 있지 않은 경우, 카메라는 비디오 디스플레이를 위해 인접한 일련의 프레임들의 제작을 최적화하도록 조정될 수 있다. 하나의 실시예에서, 제3 로직(533)은 카메라가 움직이는 동안 카메라가 프레임들을 캡처하는 것을 막도록 구성될 수 있다. 이는 예를 들어 프레임 캡처 레이트를 제로로 설정함으로써 달성될 수 있다.
도 7은 예시적인 클라우드 운영 환경(700)을 예시한다. 클라우드 운영 환경(700)은 단독형 제품이 아니라 추상 서비스로서 전달, 계산, 프로세싱, 저장, 데이터 관리, 애플리케이션 및 기타 기능을 지원한다. 서비스는 하나 이상의 컴퓨팅 디바이스 상의 하나 이상의 프로세스로서 구현될 수 있는 가상 서버에 의해 제공될 수 있다. 일부 실시예에서, 프로세스는 클라우드 서비스를 방해하지 않고서 서버들 사이에 이동할 수 있다. 클라우드에서, 공유 자원(예를 들어, 계산, 저장)은 네트워크를 통해 서버, 클라이언트 및 이동 디바이스를 포함하는 컴퓨터에 제공될 수 있다. 상이한 네트워크(예컨대, 이더넷, 와이파이, 802.x, 셀룰러)가 클라우드 서비스에 액세스하는데 사용될 수 있다. 클라우드와 상호작용하는 사용자는 서비스(예컨대, 계산, 저장)를 실제로 제공하고 있는 디바이스의 세부(예컨대, 위치, 명칭, 서버, 데이터베이스)를 알 필요가 없을 수 있다. 사용자는 예를 들어 웹 브라우저, 신 클라이언트, 모바일 애플리케이션을 통해 또는 다른 방식으로 클라우드 서비스에 액세스할 수 있다.
도 7은 클라우드에 상주하는 예시적인 비디오 프로세싱 서비스(760)를 예시한다. 비디오 프로세싱 서비스(760)는, 프로세싱을 수행하도록 서버(702) 또는 서비스(704)에 의존할 수 있거나, 데이터를 저장하도록 데이터 스토어(706) 또는 데이터베이스(708)에 의존할 수 있다. 단일 서버(702), 단일 서비스(704), 단일 데이터 스토어(706), 및 단일 데이터베이스(708)가 예시되어 있지만, 복수의 사례들의 서버, 서비스, 데이터 스토어 및 데이터베이스가 클라우드에 상주할 수 있고, 따라서 비디오 프로세싱 서비스(760)에 의해 사용될 수 있다. 비디오 프로세싱 서비스(760)는, 카메라 모션에 의해 영향받았거나 손상되었거나 또는 카메라 모션에 의해 달리 악영향을 받은 프레임들을 식별할 수 있다. 하나의 실시예에서, 비디오 프로세싱 서비스(760)는 시청 스트림으로부터 이들 프레임들을 물리적으로 또는 논리적으로 삭제할 수 있다. 다른 실시예에서, 비디오 프로세싱 서비스(760)는 프레임들이 디스플레이되는 것을 막을 수 있다. 또 다른 실시예에서, 비디오 프로세싱 서비스(760)는, 프레임들이 프리즈 프레임 모드로, 슬라이드 쇼 모드로, 비디오 모드로, 아니면 다른 모드로 디스플레이될지 제어할 수 있다. 비디오 프로세싱 서비스(760)는 또한, 카메라가 프레임들을 어떻게 획득할 것인지(예를 들어, 비디오에 최적화됨, 스틸에 최적화됨) 제어할 수 있다.
도 7은 클라우드 내의 비디오 프로세싱 서비스(760)에 액세스하는 다양한 디바이스들을 예시한다. 디바이스는, 컴퓨터(710), 태블릿(720), 랩톱 컴퓨터(730), PDA(740), 이동 디바이스(예컨대, 셀룰러 전화, 위성 전화)(750), 게임 콘솔(770), 또는 게임 제어기(780)를 포함한다. 상이한 디바이스를 사용하여 상이한 위치에 있는 상이한 사용자들이 상이한 네트워크 또는 인터페이스를 통해 비디오 프로세싱 서비스(760)에 액세스할 수 있는 것이 가능하다. 하나의 예에서, 비디오 프로세싱 서비스(760)는 비디오를 캡처하는 이동 디바이스(예컨대, 전화(750))에 의해 액세스될 수 있다. 비디오 프로세싱 서비스(760)는 전화(750)로부터의 일부 비디오가 디스플레이되거나 저장되거나 전송되는 것을 막을 수 있다. 또다른 예에서, 비디오 프로세싱 서비스(760)의 일부가 이동 디바이스(예컨대, 전화(750)) 상에 상주할 수 있다.
도 8은 전반적으로 802로 도시된, 다양한 선택적 하드웨어 및 소프트웨어 컴포넌트를 포함하는 예시적인 이동 디바이스(800)를 도시한 시스템 도면이다. 여기에 기재된 예시적인 방법, 장치 및 서비스에 의해 처리되는 프레임들은 디바이스(800)에 의해 획득될 수 있다. 이동 디바이스(800) 내의 컴포넌트(802)는 다른 컴포넌트들과 통신할 수 있지만, 예시를 용이하게 하기 위해 모든 연결들이 도시된 것은 아니다. 이동 디바이스(800)는 다양한 컴퓨팅 디바이스(예컨대, 휴대폰, 스마트 폰, 핸드헬드 컴퓨터, PDA 등)일 수 있고, 셀룰러 또는 위성 네트워크와 같은 하나 이상의 이동 통신 네트워크(804)와의 무선 양방향 통신을 가능하게 할 수 있다.
이동 디바이스(800)는 신호 코딩, 데이터 프로세싱, 입력/출력 프로세싱, 전력 제어 또는 기타 기능을 포함한 작업을 수행하기 위해 제어기 또는 프로세서(810)(예컨대, 신호 프로세서, 마이크로프로세서, ASIC, 또는 기타 제어 및 프로세싱 로직 회로)를 포함할 수 있다. 운영 체제(812)는 컴포넌트(802)의 할당 및 사용을 제어하고 애플리케이션 프로그램(814)을 지원할 수 있다. 애플리케이션 프로그램(814)은 비디오 캡처, 비디오 프로세싱, 비디오 디스플레이, 모바일 컴퓨팅 애플리케이션(예컨대, 이메일 애플리케이션, 칼렌다, 컨택 매니저, 웹 브라우저, 메시징 애플리케이션) 또는 기타 컴퓨팅 애플리케이션을 포함할 수 있다.
이동 디바이스(800)는 메모리(820)를 포함할 수 있다. 메모리(820)는 비이동식 메모리(822) 또는 이동식 메모리(824)를 포함할 수 있다. 비이동식 메모리(822)는 RAM, ROM, 플래시 메모리, 하드 디스크, 또는 기타 메모리 저장 기술을 포함할 수 있다. 이동식 메모리(824)는 플래시 메모리 또는 GSM 통신 시스템에서 알려져 있는 SIM(Subscriber Identity Module) 카드, 또는 "스마트 카드"와 같은 기타 메모리 저장 기술을 포함할 수 있다. 메모리(820)는 운영 체제(812) 및 애플리케이션(814)을 실행하기 위한 데이터 또는 코드를 저장하는데 사용될 수 있다. 예시적인 데이터는, 비디오 카메라에 의해 캡처된 개별 프레임들, 비디오 카메라에 의해 캡처된 일련의 프레임들, 프레임들에 관한 메타데이터 및 기타 데이터를 포함할 수 있다. 메모리(820)는 IMSI(International Mobile Subscriber Identity)와 같은 가입자 식별자, 및 IMEI(International Mobile Equipment Identifier)와 같은 장비 식별자를 저장할 수 있다. 식별자는 사용자 또는 장비를 식별하도록 네트워크 서버에 전송될 수 있다.
이동 디바이스(800)는 터치스크린(832), 마이크(834), 카메라(836), 물리적 키보드(838) 또는 트랙볼(840)을 포함하지만 이에 한정되는 것은 아닌 하나 이상의 입력 디바이스(830)를 지원할 수 있다. 이동 디바이스(800)는 또한, 스피커(852) 및 디스플레이(854)를 포함하지만 이에 한정되는 것은 아닌 출력 디바이스(850)를 지원할 수 있다. 다른 가능한 입력 디바이스(도시되지 않음)는 가속도계(예를 들어, 일차원, 이차원, 삼차원)를 포함한다. 다른 가능한 출력 디바이스(도시되지 않음)는 압전 또는 기타 햅틱 출력 디바이스를 포함할 수 있다. 일부 디바이스는 하나보다 더 많은 입력/출력 기능을 지원할 수 있다. 예를 들어, 터치스크린(832) 및 디스플레이(854)는 단일 입력/출력 디바이스에 결합될 수 있다. 입력 디바이스(830)는 NUI(Natural User Interface)를 포함할 수 있다. NUI는, 마우스, 키보드, 리모콘 등과 같은 입력 디바이스에 의해 부여되는 인공적 제약으로부터 자유로이, 사용자가 "자연적인(natural)" 방식으로 디바이스와 상호작용할 수 있게 하는 인터페이스 기술이다. NUI 방법의 예는, 음성 인식, 터치 및 스타일러스 인식, 제스처 인식(스크린 및 스크린 부근 둘 다), 공기 인식, 헤드 및 아이 트래킹, 음성 및 스피치, 비전, 터치, 제스처, 및 인공 지능에 의존하는 것들을 포함한다. NUI의 다른 예는, 가속도계/자이로스코프를 사용한 모션 제스처 검출, 안면 인식, 삼차원(3D) 디스플레이, 헤드, 아이 및 시선 트래킹, 실감 증감 현실 및 가상 현실 시스템을 포함하며, 이들은 전부 보다 자연적인 인터페이스 뿐만 아니라 전기장 감지 전극(EEG 및 관련 방법)을 사용하여 뇌 활동을 감지하는 기술을 제공한다. 따라서, 하나의 특정 예에서, 운영 체제(812) 또는 애플리케이션(814)은 사용자가 음성 명령을 통해 디바이스(800)를 동작시킬 수 있게 해주는 음성 사용자 인터페이스의 일부로서 음성 인식 소프트웨어를 포함할 수 있다. 또한, 디바이스(800)는, 게임 애플리케이션에 입력을 제공하도록 제스처를 검출 및 해석하는 것과 같이, 사용자의 공간 제스처를 통해 사용자 상호작용을 가능하게 하는 입력 디바이스 및 소프트웨어를 포함할 수 있다.
무선 모뎀(860)이 안테나(891)에 연결될 수 있다. 일부 예에서, 무선 주파수(RF; radio frequency) 필터가 사용되고, 프로세서(810)는 선택된 주파수 대역에 대한 안테나 구성을 선택할 필요가 없다. 무선 모뎀(860)은 프로세서(810)와 외부 디바이스 사이의 양방향 통신을 지원할 수 있다. 모뎀(860)은 일반적으로 도시되어 있으며, 이동 통신 네트워크(804) 및/또는 기타 무선 기반의 모뎀(예컨대, 블루투스(864) 또는 Wi-Fi(862))과 통신하기 위한 셀룰러 모뎀을 포함할 수 있다. 무선 모뎀(860)은, 단일 셀룰러 네트워크 내에서, 셀룰러 네트워크들 사이에, 또는 이동 디바이스와 PSTN(public switched telephone network) 사이에 데이터 및 음성 통신을 위해 GSM(Global system for mobile communications) 네트워크와 같은 하나 이상의 셀룰러 네트워크와의 통신을 위해 구성될 수 있다. 이동 디바이스(800)는 또한, 예를 들어 NFC(near field communication) 요소(892)를 사용하여 국부적으로 통신할 수 있다.
이동 디바이스(800)는 적어도 하나의 입력/출력 포트(880), 전원(882), GPS(Global Positioning System) 수신기와 같은 위성 네비게이션 시스템 수신기(884), 가속도계(886), 또는 물리적 커넥터(890)를 포함할 수 있으며, 물리적 커넥터(890)는 USB(Universal Serial Bus) 포트, IEEE 1394(FireWire) 포트, RS-232 포트 또는 기타 포트일 수 있다. 예시된 컴포넌트(802)는 다른 컴포넌트가 삭제되거나 추가될 수 있으므로 필수이거나 모두 포함된 것은 아니다.
이동 디바이스(800)는 이동 디바이스(800)에 대한 기능을 제공하도록 구성되는 비디오 프로세싱 로직(899)을 포함할 수 있다. 예를 들어, 비디오 프로세싱 로직(899)은 서비스(예컨대, 서비스(760), 도 7)와 상호동작하기 위한 클라이언트를 제공할 수 있다. 비디오 프로세싱 로직(899)은 카메라(예컨대, 카메라(836))에 의해 획득된 프레임들이 비디오로서의 시청에 적합한지 아니면 선택된 스틸 프레임들로서의 시청에 더 적합한지 아니면 전혀 시청에 적합하지 않은지 결정할 수 있다. 비디오 프로세싱 로직(899)은 가속도계(866), 자이로스코프, 또는 디바이스(800) 상의 다른 센서로부터의 데이터에 의존할 수 있다. 여기에 기재된 예시적인 방법의 일부는 비디오 프로세싱 로직(899)에 의해 수행될 수 있다. 마찬가지로, 비디오 프로세싱 로직(899)은 여기에 기재된 장치의 일부를 구현할 수 있다.
다음은 여기에 채용된 선택된 용어의 정의를 포함한다. 정의는, 용어의 범위 내에 속하고 구현에 사용될 수 있는 컴포넌트의 다양한 예 또는 형태를 포함한다. 예는 한정하는 것으로 의도되지 않는다. 단수형 및 복수형 둘 다의 용어가 정의 내에 속할 수 있다.
"하나의 실시예", "실시예", "하나의 예", "예"의 참조는, 그리 기재된 실시예(들) 또는 예(들)가 특정 특징, 구조, 특성, 요소 또는 한정을 포함할 수 있지만, 모든 실시예 또는 예가 그 특정 특징, 구조, 특성, 요소 또는 한정을 반드시 포함하는 것은 아님을 나타낸다. 또한, 문구 "하나의 실시예에서"의 반복 사용은, 그럴 수 있다 하더라도, 반드시 동일 실시예를 참조하는 것은 아니다.
여기에서 사용된 "컴퓨터 판독가능한 저장 매체"는, 명령어 또는 데이터를 저장하는 매체를 지칭한다. "컴퓨터 판독가능한 저장 매체"는 전파 신호를 지칭하지 않는다. 컴퓨터 판독가능한 저장 매체는 비휘발성 매체 및 휘발성 매체를 포함하지만 이에 한정되는 것은 아닌 형태를 취할 수 있다. 비휘발성 매체는 예를 들어 광학 디스크, 자기 디스크, 테이프 및 기타 매체를 포함할 수 있다. 휘발성 매체는 예를 들어 반도체 메모리, 동적 메모리 및 기타 매체를 포함할 수 있다. 컴퓨터 판독가능한 저장 매체의 일반적인 형태는, 플로피 디스크, 플렉서블 디스크, 하드 디스크, 자기 테이프, 기타 자기 매체, ASIC, CD(compact disk), 기타 광학 매체, RAM, ROM, 메모리 칩 또는 카드, 메모리 스틱, 및 컴퓨터, 프로세서 또는 기타 전자 디바이스가 판독할 수 있는 기타 매체를 포함할 수 있지만, 이에 한정되는 것은 아니다.
여기에서 사용되는 "데이터 스토어"는, 데이터를 저장할 수 있는 물리적 또는 논리적 엔티티를 지칭한다. 데이터 스토어는, 예를 들어 데이터베이스, 테이블, 파일, 리스트, 큐, 히프, 메모리, 레지스터, 및 기타 물리적 레포지토리일 수 있다. 다른 예에서, 데이터 스토어는 하나의 논리적 또는 물리적 엔티티에 상주할 수 있거나 둘 이상의 논리적 또는 물리적 엔티티 간에 분산될 수 있다.
여기에서 사용된 "로직"은, 기능(들) 또는 동작(들)을 수행하거나 또다른 로직, 방법 또는 시스템으로부터 기능 또는 동작을 일으키도록 하는 하드웨어, 펌웨어, 머신 상의 실행 중인 소프트웨어, 또는 각각의 조합을 포함하지만, 이에 한정되는 것은 아니다. 로직은, 소프트웨어 제어 마이크로프로세서, 이산 로직(예컨대, ASIC), 아날로그 회로, 디지털 회로, 프로그램된 로직 디바이스, 명령어를 포함하는 메모리 디바이스, 및 기타 물리적 디바이스를 포함할 수 있다. 로직은 하나 이상의 게이트, 게이트의 조합, 또는 기타 회로 컴포넌트를 포함할 수 있다. 복수의 논리적 로직이 기재되는 경우에, 복수의 논리적 로직을 하나의 물리적 로직으로 통합하는 것이 가능할 수 있다. 마찬가지로, 단일 논리적 로직이 기재되는 경우에, 복수의 물리적 로직들 사이에 그 단일 논리적 로직을 분산시키는 것이 가능할 수 있다.
용어 "포함한다" 또는 "포함하는"이 상세한 설명 또는 청구항에서 채용되는 경우에, 이는 청구항에서 전이어로서 채용될 때 그 용어가 해석되는 대로 용어 "포함하는(comprising)"과 유사한 방식으로 포괄적이도록 의도된다.
용어 "또는"이 상세한 설명 또는 청구항에서 채용되는 경우(예컨대, A 또는 B), "A 또는 B 또는 둘 다"를 의미하도록 의도된다. 출원인이 "A만 또는 B만, 하지만 둘 다는 아님"을 나타내고자 할 경우에는, 용어 "A만 또는 B만, 하지만 둘 다는 아님"이 채용될 것이다. 따라서, 여기에서의 용어 "또는"의 사용은 포괄적인 것이며, 배타적인 사용이 아니다. Bryan A. Garner의 A Dictionary of Modern Legal Usage 624(2d, Ed, 1995)을 참조하자.
내용이 구조적 특징 또는 방법적 동작에 특정한 언어로 기재되었지만, 첨부된 청구항에 정의된 내용이 반드시 상기에 기재된 구체적 특징 또는 동작에 한정되는 것은 아님을 이해하여야 한다. 오히려, 상기에 기재된 구체적 특징 및 동작은 청구항을 구현하는 예시적인 형태로서 개시된 것이다.

Claims (15)

  1. 방법에 있어서,
    비디오 카메라에 의해 캡처된 프레임에 액세스하는 단계;
    상기 프레임이 캡처되었을 때에 상기 비디오 카메라의 모션(motion)의 함수로서 상기 프레임에 대한 시청 요인(viewing factor)을 결정하는 단계; 및
    상기 시청 요인의 함수로서 상기 프레임이 시청을 위해 어떻게 제시(present)될 것인지 제어하는 단계를 포함하는 방법.
  2. 청구항 1에 있어서, 상기 시청 요인의 함수로서, 상기 비디오 카메라가 비디오 카메라 모드로 동작할 것인지 아니면 스틸(still) 프레임 모드로 동작할 것인지 제어하는 단계를 더 포함하는 방법.
  3. 청구항 2에 있어서, 상기 스틸 프레임 모드로 동작하는 것은, 상기 비디오 카메라에 대한 프레임 캡처 레이트를 초당 24 프레임 아래로 조정하고 상기 비디오 카메라에 대한 셔터 속도를 1/500 초보다 더 빠르게 조정하는 것을 포함하는 것인 방법.
  4. 청구항 2에 있어서, 상기 비디오 카메라 모드로 동작하는 것은, 상기 비디오 카메라에 대한 프레임 캡처 레이트를 초당 적어도 24 프레임으로 조정하고 상기 비디오 카메라에 대한 셔터 속도를 1/500 초보다 더 느리게 조정하는 것을 포함하는 것인 방법.
  5. 청구항 1에 있어서, 상기 프레임에 액세스하는 단계는 상기 프레임을 캡처한 제1 장치 상에서 일어나거나, 상기 시청 요인을 결정하는 단계는 상기 제1 장치 상에서 일어나거나, 상기 프레임이 어떻게 제시될 것인지 제어하는 단계는 상기 제1 장치 상에서 일어나거나, 상기 프레임에 액세스하는 단계는 상기 프레임을 캡처하지 않은 제2 장치에서 일어나거나, 상기 시청 요인을 결정하는 단계는 상기 제2 장치 상에서 일어나거나, 또는 상기 프레임이 어떻게 제시될 것인지 제어하는 단계는 상기 제2 장치 상에서 일어나는 것인 방법.
  6. 청구항 1에 있어서, 상기 비디오 카메라의 모션은, 상기 프레임이 캡처되었을 때에 상기 비디오 카메라와 연관된 가속도계 데이터로부터, 상기 프레임이 캡처되었을 때에 상기 비디오 카메라와 연관된 자이로스코프 데이터로부터, 상기 프레임과 연관된 단일 프레임 모션 분석으로부터, 또는 상기 프레임 및 상기 비디오 카메라로부터 획득된 하나 이상의 다른 프레임들과 연관된 프레임-대-프레임(frame-to-frame) 모션 분석으로부터, 결정되는 것인 방법.
  7. 청구항 1에 있어서, 상기 프레임이 시청을 위해 어떻게 제시될 것인지 제어하는 단계는, 상기 프레임이 상기 프레임을 캡처한 장치로부터 전송될 것인지 여부를 제어하는 단계를 포함하는 것인 방법.
  8. 청구항 1에 있어서, 상기 프레임이 시청을 위해 어떻게 제시될 것인지 제어하는 단계는, 메모리로부터 상기 프레임을 삭제하는 단계를 포함하는 것인 방법.
  9. 청구항 1에 있어서, 상기 시청 요인이 시청 표준을 충족시키지 않는다고 결정하면, 상기 프레임을 이전에 획득된 프레임으로 교체하는 단계를 더 포함하는 방법.
  10. 청구항 9에 있어서, 상기 프레임을 이전에 획득된 프레임으로 교체하는 단계 전에, 상기 이전에 획득된 프레임을 압축 프레임으로 압축하는 단계를 더 포함하는 방법.
  11. 청구항 1에 있어서, 상기 시청 요인이 시청 표준을 충족시키지 않는다고 결정하면, 상기 프레임이 상기 시청 표준을 충족시키지 않음을 나타내는 신호를 제공하는 단계를 더 포함하는 방법.
  12. 청구항 1에 있어서,
    상기 비디오 카메라에 의해 캡처된 일련의 프레임들에 대한 연속성 요인 - 상기 연속성 요인은, 일련의 인접 프레임들의 멤버들에 대한 시청 요인에 적어도 부분적으로 기초함 - 을 계산하는 단계; 및
    상기 연속성 요인이 연속성 표준을 충족시키지 않는다고 결정하면, 상기 연속성 요인이 상기 연속성 표준을 충족시켰을 경우 상기 일련의 프레임들을 디스플레이하였을 디바이스를 스틸 프레임 디스플레이 모드로 들어가도록 제어하는 단계를 더 포함하는 방법.
  13. 청구항 12에 있어서,
    상기 연속성 요인이 상기 연속성 표준을 충족시킨다고 결정하면, 상기 디바이스를 비디오 디스플레이 모드로 들어가도록 제어하는 단계를 더 포함하는 방법.
  14. 청구항 12에 있어서, 상기 스틸 프레임 디스플레이 모드는, 상기 시청 표준을 충족시키는 단일 프레임을, 상기 단일 프레임이 이용가능하게 될 때에 선택적으로 디스플레이하도록 구성되며, 상기 단일 프레임은 적어도 미리 결정된 단일 프레임 기간동안 디스플레이되는 것인 방법.
  15. 청구항 12에 있어서, 상기 스틸 프레임 디스플레이 모드는, 상기 연속성 표준이 충족될 때까지 상기 시청 표준을 충족시킨 이전에 제공된 프레임을 디스플레이하도록 구성되는 것인 방법.
KR1020167017881A 2013-12-09 2014-12-05 카메라 모션에 의해 손상된 비디오 프레임의 처리 KR20160095058A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/100,189 2013-12-09
US14/100,189 US9407823B2 (en) 2013-12-09 2013-12-09 Handling video frames compromised by camera motion
PCT/US2014/068679 WO2015088884A2 (en) 2013-12-09 2014-12-05 Handling video frames compromised by camera motion

Publications (1)

Publication Number Publication Date
KR20160095058A true KR20160095058A (ko) 2016-08-10

Family

ID=52144911

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167017881A KR20160095058A (ko) 2013-12-09 2014-12-05 카메라 모션에 의해 손상된 비디오 프레임의 처리

Country Status (15)

Country Link
US (1) US9407823B2 (ko)
EP (1) EP3080980B1 (ko)
JP (1) JP2017503399A (ko)
KR (1) KR20160095058A (ko)
CN (1) CN105830429B (ko)
AU (1) AU2014364151A1 (ko)
CA (1) CA2932416A1 (ko)
CL (1) CL2016001401A1 (ko)
HK (1) HK1223759A1 (ko)
IL (1) IL245728A0 (ko)
MX (1) MX2016007153A (ko)
PH (1) PH12016500955A1 (ko)
RU (1) RU2016122612A (ko)
SG (1) SG11201604568UA (ko)
WO (1) WO2015088884A2 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5888348B2 (ja) * 2014-01-23 2016-03-22 カシオ計算機株式会社 撮像装置、撮像制御方法、及びプログラム
US11228906B2 (en) 2015-07-14 2022-01-18 Ujet, Inc. Customer communication system
US9838533B2 (en) 2015-07-14 2017-12-05 Ujet, Inc. Customer communication system including scheduling
WO2017160293A1 (en) * 2016-03-17 2017-09-21 Hewlett-Packard Development Company, L.P. Frame transmission
US10097765B2 (en) * 2016-04-20 2018-10-09 Samsung Electronics Co., Ltd. Methodology and apparatus for generating high fidelity zoom for mobile video
JP6775386B2 (ja) * 2016-11-02 2020-10-28 キヤノン株式会社 撮像装置、その制御方法、プログラムならびに記録媒体
US10455165B2 (en) 2016-12-28 2019-10-22 Microsoft Technology Licensing, Llc Systems, methods, and computer-readable media for using a video capture device to alleviate motion sickness via an augmented display for a passenger
EP3622513A1 (en) * 2017-10-03 2020-03-18 Google LLC Microvideo system, format, and method of generation
CN116208842A (zh) * 2021-11-30 2023-06-02 顺丰科技有限公司 视频处理方法、装置、设备和计算机可读存储介质

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11298890A (ja) * 1998-04-13 1999-10-29 Hitachi Ltd 画像データの圧縮又は伸張方法とその装置、並びに、それを用いた画像伝送システム及び監視システム
US7593026B2 (en) * 2005-05-11 2009-09-22 L-3 Communications Corporation Dynamic display optimization method and system with image motion
JP4289326B2 (ja) * 2005-06-09 2009-07-01 ソニー株式会社 情報処理装置および方法、撮影装置、並びにプログラム
US7546026B2 (en) 2005-10-25 2009-06-09 Zoran Corporation Camera exposure optimization techniques that take camera and scene motion into account
WO2008064270A2 (en) 2006-11-20 2008-05-29 Micropower Appliance Wireless network camera systems
US8063942B2 (en) 2007-10-19 2011-11-22 Qualcomm Incorporated Motion assisted image sensor configuration
CN100587638C (zh) * 2008-04-29 2010-02-03 上海交通大学 针对高实时性图像采集与处理的机器视觉系统
US8179466B2 (en) 2009-03-11 2012-05-15 Eastman Kodak Company Capture of video with motion-speed determination and variable capture rate
US8830339B2 (en) 2009-04-15 2014-09-09 Qualcomm Incorporated Auto-triggered fast frame rate digital video recording
CN101651845B (zh) * 2009-08-21 2011-03-30 中国电子技术标准化研究所 一种显示设备运动图像清晰度测试方法
US8615111B2 (en) 2009-10-30 2013-12-24 Csr Technology Inc. Method and apparatus for image detection with undesired object removal
US8837576B2 (en) 2009-11-06 2014-09-16 Qualcomm Incorporated Camera parameter-assisted video encoding
US8964298B2 (en) * 2010-02-28 2015-02-24 Microsoft Corporation Video display modification based on sensor input for a see-through near-to-eye display
KR101052207B1 (ko) 2010-05-12 2011-07-27 엠텍비젼 주식회사 물체의 속도에 따른 카메라 모듈의 영상 녹화 속성 조절 방법 및 장치
JP5303685B2 (ja) * 2010-11-09 2013-10-02 富士フイルム株式会社 拡張現実感提供装置
US20120148216A1 (en) * 2010-12-14 2012-06-14 Qualcomm Incorporated Self-editing video recording
US8736704B2 (en) 2011-03-25 2014-05-27 Apple Inc. Digital camera for capturing an image sequence
GB2492529B (en) 2011-05-31 2018-01-10 Skype Video stabilisation
US9081177B2 (en) * 2011-10-07 2015-07-14 Google Inc. Wearable computer with nearby object response
US20130242120A1 (en) 2012-03-15 2013-09-19 Qualcomm Incorporated Motion-state classification for camera applications
JP5873390B2 (ja) * 2012-05-24 2016-03-01 キヤノン株式会社 表示制御装置及びその制御方法、プログラム、並びに記憶媒体
JP2014127744A (ja) * 2012-12-25 2014-07-07 Casio Comput Co Ltd 撮像装置、撮像制御方法、及びプログラム
JP2015089059A (ja) * 2013-11-01 2015-05-07 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
JP6079566B2 (ja) * 2013-11-01 2017-02-15 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
MX2016007153A (es) 2016-07-21
RU2016122612A3 (ko) 2018-10-01
US9407823B2 (en) 2016-08-02
EP3080980B1 (en) 2020-01-22
PH12016500955A1 (en) 2016-07-11
CL2016001401A1 (es) 2017-02-17
CN105830429B (zh) 2019-06-18
JP2017503399A (ja) 2017-01-26
RU2016122612A (ru) 2017-12-14
CA2932416A1 (en) 2015-06-18
WO2015088884A2 (en) 2015-06-18
CN105830429A (zh) 2016-08-03
HK1223759A1 (zh) 2017-08-04
AU2014364151A1 (en) 2016-06-16
SG11201604568UA (en) 2016-07-28
US20150163407A1 (en) 2015-06-11
WO2015088884A3 (en) 2015-08-06
IL245728A0 (en) 2016-07-31
EP3080980A2 (en) 2016-10-19

Similar Documents

Publication Publication Date Title
EP3080980B1 (en) Handling video frames compromised by camera motion
KR102363364B1 (ko) 파노라마 비디오의 상호작용적 전송을 위한 방법 및 시스템
CN108495142B (zh) 视频编码方法及装置
US10062412B2 (en) Hierarchical segmentation and quality measurement for video editing
JP7514848B2 (ja) 選択的な動きの描画を伴う画像表示
US20230010905A1 (en) Content collection navigation queue
US20160189752A1 (en) Constrained system real-time capture and editing of video
US9742995B2 (en) Receiver-controlled panoramic view video share
US20150381930A1 (en) Compositing and Transmitting Contextual Information during an Audio or Video Call
CN110192395B (zh) 客户端侧视频转码
US9327199B2 (en) Multi-tenancy for cloud gaming servers
US10134137B2 (en) Reducing storage using commonalities
CN104244101A (zh) 对多媒体内容进行评论的方法和设备
KR20200004388A (ko) Vr 멀티미디어의 경험 품질을 결정하기 위한 방법 및 장치
US20140082208A1 (en) Method and apparatus for multi-user content rendering
CN111343503A (zh) 视频的转码方法、装置、电子设备及存储介质
CN110913118A (zh) 视频处理方法、装置及存储介质
CN109716770B (zh) 用于图像压缩的方法和系统以及非暂时性计算机可读介质
US11488633B2 (en) Playback device
CN107004018B (zh) 数据处理方法及装置
KR102372721B1 (ko) 영상 분석 방법, 사용자 디바이스 및 컴퓨터 프로그램
US20200137321A1 (en) Pulsating Image
CN116264640A (zh) 自由视角视频的视角切换方法、装置及系统

Legal Events

Date Code Title Description
A201 Request for examination