KR20190054076A - 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림 - Google Patents

글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림 Download PDF

Info

Publication number
KR20190054076A
KR20190054076A KR1020197008271A KR20197008271A KR20190054076A KR 20190054076 A KR20190054076 A KR 20190054076A KR 1020197008271 A KR1020197008271 A KR 1020197008271A KR 20197008271 A KR20197008271 A KR 20197008271A KR 20190054076 A KR20190054076 A KR 20190054076A
Authority
KR
South Korea
Prior art keywords
image
data
motion
stream
images
Prior art date
Application number
KR1020197008271A
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 인터디지털 브이씨 홀딩스 인코포레이티드
Priority to KR1020237012225A priority Critical patent/KR102658946B1/ko
Publication of KR20190054076A publication Critical patent/KR20190054076A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 개시물은 입력 이미지에 글로벌 회전 모션 보상을 적용함으로써 이미지 시퀀스를 인코딩 및 디코딩하는 방법, 장치 또는 시스템에 관한 것이다. 상이한 실시형태에 따르면, 입력 이미지는 압축 루프 내의 기준 이미지 또는 인코딩될 이미지이다. 인코딩할 이미지는 전방향성 이미지이다. 결과적으로, 이들에 글로벌 회전 모션 보정을 적용하는 것은 상이한 전방 방향에 따라 캡처된 것처럼 새로운 이미지를 생성하는 것에 대응한다. 이 새로운 전방 방향이 기준 이미지의 하나일 때, 겉보기 모션의 보상은 용이해진다.

Description

글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림
본 개시물은 예를 들어 몰입형 비디오가 가상 현실, 증강 현실 또는 증강된 가상화를 위해 시스템에서 프로세싱되는 경우, 또는 헤드 장착형 디스플레이 디바이스에서 디스플레이되는 경우, 몰입형 비디오에서 모션 보상을 인코딩하는 도메인에 관한 것이다.
최근에 이용 가능한 큰 시야 콘텐츠 (최대 360°) 의 성장이 있었다. 이러한 콘텐츠는 헤드 장착형 디스플레이, 스마트 안경, PC 스크린, 태블릿, 스마트 폰 등과 같은 몰입형 디스플레이 디바이스에서 콘텐츠를 보는 사용자가 잠재적으로 완전히 볼 수 없다. 즉, 주어진 순간에 사용자는 콘텐츠의 일부만을 볼 수 있다. 그러나, 사용자는 전형적으로 머리 움직임, 마우스 움직임, 터치 스크린, 음성 등과 같은 다양한 수단에 의해 콘텐츠 내에서 이동할 수 있다. 이 콘텐츠를 인코딩하고 디코딩하는 것이 일반적으로 바람직하다.
본 원리의 일 양태에 따르면, 본 개시물은 이미지들의 시퀀스 중 제 1 이미지를 스트림에 인코딩하는 방법에 관한 것이다. 그 방법은 다음을 포함한다:
- 회전 파라미터에 따른 글로벌 회전 모션 보상을 제 3 이미지에 적용하여 제 2 이미지를 획득하는 단계. 제 3 이미지는, 압축 프로세스의 단계에서 제 1 이미지를 프로세싱하는 것에 의해 획득됨; 및
- 제 2 이미지를 모션 보상 모듈의 입력 이미지로서 사용하여 제 1 이미지 및 연관 회전 파라미터를 스트림에 인코딩하는 단계.
특정 특성에 따르면, 제 3 이미지는 제 1 이미지이므로, 글로벌 회전 모션 보상이 압축 루프의 입력에서 제 1 이미지에 직접 적용된다.
특정 실시형태에 따르면, 제 3 이미지는, 압축 프로세스 동안, 입력된 제 1 이미지에 응답하여 잔여 이미지를 획득하는 것; 제 1 이미지에 응답하여 모션 예측 이미지를 획득하는 것에 의해 상기 제 1 이미지로부터 획득되고; 그리고 제 3 이미지는 잔여 이미지를 모션 예측 이미지에 합산함으로써 획득된 재구성 이미지이다.
본 개시물은 또한 스트림으로부터 이미지들의 시퀀스 중 제 1 이미지를 디코딩하는 방법에 관한 것이다. 그 방법은 다음을 포함한다:
- 상기 스트림으로부터 연관된 제 2 이미지 및 연관 회전 파라미터들을 획득하는 단계; 및
- 상기 회전 파라미터에 따른 글로벌 회전 모션 보상을 제 3 이미지에 적용하여 제 1 이미지를 디코딩하는 단계. 제 3 이미지는 압축 해제 프로세스 동안 제 2 이미지로부터 획득된 모션 보상 모듈의 출력 이미지이다.
특정 특성에 따르면, 제 3 은 디코딩된 제 1 이미지이므로, 글로벌 모션 회전은 압축 해제 루프의 출력에서 디코딩된 이미지에 적용된다.
특정 실시형태에 따르면, 제 3 이미지는 제 2 이미지에 응답하여 잔여 이미지를 획득하는 것; 제 2 이미지에 응답하여 모션 예측 이미지를 획득하는 것에 의해 획득되고; 그리고 제 3 이미지는 압축 해제 프로세스 동안 잔여 이미지를 모션 예측 이미지를 합산함으로써 획득된 재구성 이미지이다.
본 개시물은 또한 이미지들의 시퀀스를 나타내는 데이터를 운반하는 비트 스트림에 관한 것이다. 데이터는 다음을 포함한다:
Figure pct00001
이미지들의 시퀀스를 나타내는 신택스의 제 1 엘리먼트; 및
Figure pct00002
이미지들의 시퀀스 중 적어도 하나의 이미지의 식별자와 연관된 파라메트릭 글로벌 회전 모션의 파라미터들을 나타내는 신택스의 제 2 엘리먼트.
본 개시물은 또한 이미지들의 시퀀스 중 제 1 이미지를 스트림에 인코딩하기 위한 디바이스에 관한 것이다. 디바이스는 적어도 프로세서와 연관된 메모리를 포함하고, 프로세서는:
- 회전 파라미터들에 따른 글로벌 회전 모션 보상을 제 3 이미지에 적용하여 제 2 이미지를 획득하도록 구성된다. 제 3 이미지는, 압축 프로세스의 단계에서 제 1 이미지를 프로세싱하는 것에 의해 획득됨; 및
- 제 2 이미지를 모션 보상 모듈의 입력 이미지로서 사용하여 제 1 이미지 및 연관 회전 파라미터를 스트림에 인코딩하도록 구성된다.
특정 특성에 따르면, 제 3 이미지는 상기 제 1 이미지이므로, 글로벌 회전 모션 보상이 압축 루프의 입력에서 제 1 이미지에 직접 적용된다.
특정 실시형태에 따르면, 제 3 이미지는, 압축 해제 프로세스 동안, 제 1 이미지에 응답하여 잔여 이미지를 획득하는 것; 제 1 이미지에 응답하여 모션 예측 이미지를 획득하는 것에 의해 제 1 이미지로부터 획득되고; 그리고 제 3 이미지는 잔여 이미지를 모션 예측 이미지를 합산함으로써 획득된 재구성 이미지이다.
본 개시물은 또한 이미지들의 시퀀스 중 제 1 이미지를 스트림으로부터 디코딩하기 위한 디바이스에 관한 것이다. 디바이스는 적어도 프로세서와 연관된 메모리를 포함하고, 프로세서는:
- 제 2 이미지 및 연관 회전 파라미터들을 스트림으로부터 획득하고; 그리고
- 상기 회전 파라미터들에 따른 글로벌 회전 모션 보상을 제 3 이미지에 적용하여 제 1 이미지를 디코딩하도록 구성된다. 제 3 이미지는 모션 보상 모듈의 출력 이미지이고 압축 해제 프로세스 동안 일 단계에서 제 2 이미지로부터 획득된다.
본 개시물은 첨부된 도면을 참조하는 이하의 설명을 읽을 때 보다 잘 이해될 것이고, 다른 특정 피쳐들 및 장점들이 나타날 것이다.
- 도 1은 본 개시물의 실시형태들의 예시적인 환경에 따른 인코딩 및 디코딩 시스템의 기능적 개관을 나타낸다.
- 도 2는 본 원리들의 특정 실시형태에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 3은 본 원리들의 특정 실시형태에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 4는 본 원리들의 특정 실시형태에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 5는 본 원리들의 특정 실시형태에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 6은 본 원리들의 특정 실시형태에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 7은 본 원리들의 특정 실시형태에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 8은 본 개시물에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 9는 본 개시물에 따른 시스템의 제 1 실시형태를 나타낸다.
- 도 10은 본 개시물에 따른 몰입형 비디오 렌더링 디바이스의 제 1 실시형태를 나타낸다.
- 도 11은 본 개시물에 따른 몰입형 비디오 렌더링 디바이스의 제 1 실시형태를 나타낸다.
- 도 12는 본 개시물에 따른 몰입형 비디오 렌더링 디바이스의 제 1 실시형태를 나타낸다.
- 도 13은 본 원리의 특정 실시형태에 따라, 2 개의 상이한 맵핑 함수에 따라 프레임 상에 전방향성 (omnidirectional) 비디오를 맵핑하는 예를 도시한다.
- 도 14는 본 원리의 특정 실시형태에 따라, 패닝 이후에 도 13의 전방향성 비디오를 맵핑하는 예를 도시한다.
- 도 15는 본 원리의 특정 실시형태에 따라, 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 인코딩될 이미지를 인코딩하는 방법을 도식적으로 나타낸다.
- 도 16은 본 원리의 특정 실시형태에 따라, 디코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 디코딩하는 방법을 도식적으로 나타낸다.
- 도 17은 본 원리의 특정 실시형태에 따라, 디코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 디코딩하는 다른 방법을 도식적으로 나타낸다.
- 도 18은 본 원리의 특정 실시형태에 따라, 도 15의 방법에 따라 인코딩된 이미지들의 시퀀스를 나타내는 데이터를 운반하는 비트 스트림의 데이터 구조의 특정 실시형태를 나타낸다.
- 도 24는 본 원리들의 특정 실시형태에 따른 도 15의 방법 (150) 의 제 1 실시형태를 나타낸다.
- 도 25는 본 원리들의 특정 실시형태에 따른 도 16의 방법 (160) 의 실시형태를 나타낸다.
- 도 26은 본 원리들의 특정 실시형태에 따른 도 15의 방법 (150) 의 제 2 실시형태를 나타낸다.
- 도 27는 본 원리들의 특정 실시형태에 따른 도 17의 방법 (170) 의 실시형태를 나타낸다.
- 도 19는 본 원리들의 특정 실시형태에 따라, 도 24의 방법의 단계들을 구현하는, 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 인코딩하도록 구성된 디바이스의 제 1 실시형태의 블록도를 도시한다.
- 도 20은 본 원리들의 특정 실시형태에 따라, 도 24에 나타낸 방법의 제 1 실시형태에 따라 인코딩된 비트 스트림을 디코딩하도록 구성된 디바이스의 일 실시형태를 도시한다.
- 도 21은 본 원리들의 특정 실시형태에 따라, 도 26의 방법의 단계들을 구현하는, 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 인코딩하도록 구성된 디바이스의 제 2 실시형태의 블록도를 도시한다.
- 도 22는 본 원리들의 특정 실시형태에 따라, 도 26에 나타낸 방법의 제 2 실시형태에 따라 인코딩된 비트 스트림을 디코딩하도록 구성된 디바이스의 일 실시형태를 도시한다.
- 도 23은 본 원리들의 특정 실시형태에 따라, 도 15, 16, 17, 19, 20, 21 또는 22와 관련하여 설명된 방법을 구현하도록 구성된 장치의 하드웨어 실시형태를 도시한다.
이하, 본 요지는 도면을 참조하여 설명되고, 여기서 유사 참조 부호는 전체적으로 유사 엘리먼트를 지칭하도록 사용된다. 이하의 상세한 설명에서, 설명의 목적을 위해, 많은 특정 세부사항들이 본 요지의 철저한 이해를 제공하기 위하여 제시되어 있다. 본 요지의 실시형태들은 이러한 특정 세부 사항 없이도 실시될 수 있음이 이해된다.
큰 시야 콘텐츠는 그 중에서도, 3 차원 컴퓨터 그래픽 이미지 장면 (3D CGI 장면), 포인트 클라우드 또는 몰입형 (immersive) 비디오일 수 있다. 이러한 몰입형 비디오를 디자인하는데 많은 용어가 사용될 수 있다: 예를 들자면, 가상 현실 (VR), 360, 파노라마, 4π, 스테라디안, 몰입형, 전방향성 또는 큰 시야.
몰입형 비디오는, “일반” 비디오와 같이 픽셀의 2 차원 어레이 (즉, 색상 정보의 엘리먼트) 인, 적어도 하나의 직사각형 프레임 상에 인코딩된 비디오이다. 렌더링되기 위해서는, 프레임이 먼저 맵핑 표면 (예를 들어, 구, 정육면체, 피라미드) 이라고도 하는 볼록 볼륨의 내부면에 맵핑되고, 두 번째로 이 볼륨의 일부가 가상 카메라에 의해 캡처된다. 가상 카메라에 의해 캡쳐된 이미지는 몰입형 디스플레이 디바이스의 스크린 상에 렌더링된다. 입체 비디오는, 디바이스의 특성에 따라 두 개의 가상 카메라에 의해 캡처되도록 결합되는 두 개의 맵핑 표면에 투영된 하나 또는 두 개의 직사각형 프레임 상에 인코딩된다.
픽셀은 프레임의 맵핑 함수에 따라 인코딩된다. 맵핑 기능은 맵핑 표면에 따라 달라진다. 동일한 맵핑 표면의 경우, 여러 맵핑 기능이 가능한다. 예를 들어, 정육면체의 면은 프레임 표면 내의 상이한 레이아웃에 따라 구조화될 수 있다. 예를 들어 등장방형 투영법이나 그노몬 (gnomonic) 투영법에 따라 구가 맵핑될 수 있다. 선택된 투영 함수로부터 생성된 픽셀의 조직화는 라인 연속성, 직교 정규 국부 프레임, 픽셀 밀도를 수정하거나 끊고, 시간 및 공간 면에서 주기성을 도입한다. 이들은 비디오를 인코딩하고 디코딩하는데 사용되는 일반적인 특징이다. 몰입형 비디오의 특수성을 인코딩 및 디코딩 방법에서 고려하지는 않는다. 사실은, 몰입형 비디오는 360° 비디오이므로, 패닝 (panning) 은 예를 들어 장면의 콘텐츠가 변경되지 않는 동안 다량의 데이터를 인코딩해야 하는 모션 및 불연속성을 도입한다. 비디오 프레임의 인코딩 및 디코딩 동안 몰입형 비디오 특수성을 고려하면 최첨단 방법에 가치있는 이점을 가져올 것이다.
도 1은 예시적인 실시형태에 따른 인코딩 및 디코딩 시스템의 일반적인 개관을 도시한다. 도 1의 시스템은 기능 시스템이다. 전처리 모듈 (300) 은 인코딩 디바이스 (400) 에 의한 인코딩을 위해 콘텐츠를 준비할 수 있다. 전처리 모듈 (300) 은 멀티-이미지 획득, 공통 공간 (방향을 인코딩하는 경우 전형적으로 3D 구) 에서의 획득된 다수의 이미지의 병합, 및 예를 들어, 다음에 한정되지 않지만 등장방형 맵핑 (equirectangular mapping) 또는 큐브 맵핑 (cube mapping) 을 이용한 3D 구의 2D 프레임으로의 맵핑을 수행할 수 있다. 전처리 모듈 (300) 은 또한 입력으로서 특정 포맷 (예를 들어, 등장방형) 의 전방향성 비디오를 수용할 수 있고, 인코딩에 보다 적합한 포맷으로 맵핑을 변경하기 위해 비디오를 전처리할 수 있다. 획득된 비디오 데이터 표현에 의존하여, 전처리 모듈 (300) 은 맵핑 공간 변경을 수행할 수 있다. 인코딩 디바이스 (400) 및 인코딩 방법에 대해서는 명세서의 다른 도면을 참조하여 설명할 것이다. 인코딩된 이후에, 예를 들어, 몰입형 비디오 데이터 또는 3D CGI 인코딩된 데이터를 인코딩할 수 있는 데이터는, 예를 들어 게이트웨이에 존재하는 임의의 네트워크 인터페이스에서 전형적으로 구현될 수 있는 네트워크 인터페이스 (500) 로 전송된다. 그후, 데이터는 인터넷과 같은 통신 네트워크를 통해 송신되지만 임의의 다른 네트워크도 예상될 수 있다. 그후, 데이터는 네트워크 인터페이스 (600) 를 통해 수신된다. 네트워크 인터페이스 (600) 는 게이트웨이, 텔레비전, 셋톱 박스, 헤드 장착형 디스플레이 디바이스, 몰입형 (투영성) 벽 또는 임의의 몰입형 비디오 렌더링 디바이스에서 구현될 수 있다. 수신 이후에, 데이터는 디코딩 디바이스 (700) 로 전송된다. 디코딩 기능은 다음의 도 2 내지 12에 설명된 프로세싱 기능들 중 하나이다. 그후 디코딩된 데이터는 플레이어 (800) 에 의해 프로세싱된다. 플레이어 (800) 는 렌더링 디바이스 (900) 에 대한 데이터를 준비하고 센서로부터의 외부 데이터 또는 사용자 입력 데이터를 수신할 수 있다. 보다 정확하게, 플레이어 (800) 는 렌더링 디바이스 (900) 에 의해 디스플레이될 비디오 콘텐츠의 일부를 준비한다. 디코딩 디바이스 (700) 및 플레이어 (800) 는 단일 디바이스 (예를 들어, 스마트폰, 게임 콘솔, STB, 태블릿, 컴퓨터 등) 에 통합될 수 있다. 변형예에서, 플레이어 (800) 는 렌더링 디바이스 (900) 에 통합된다.
예를 들어, 몰입형 비디오를 렌더링할 때, 몰입형 디스플레이 디바이스의 디코딩, 플레잉 및 렌더링 기능을 수행하기 위해 여러 유형의 시스템이 계획될 수 있다.
증강 현실, 가상 현실, 또는 증강된 가상 콘텐츠를 프로세싱하기 위한 제 1 시스템이 도 2 내지 도 6에 도시되어 있다. 이러한 시스템은, 예를 들어 헤드 장착형 디스플레이 (HMD, head-mounted display), 태블릿 또는 스마트폰일 수 있고, 그리고 센서를 포함할 수 있는, 프로세싱 기능들, 몰입형 비디오 렌더링 디바이스를 포함한다. 몰입형 비디오 렌더링 디바이스는 또한 디스플레이 디바이스와 프로세싱 기능들 사이에 추가적인 인터페이스 모듈을 포함할 수 있다. 프로세싱 기능은 하나 또는 여러개의 디바이스에 의해 수행될 수 있다. 이들은 몰입형 비디오 렌더링 디바이스에 통합되거나 하나 또는 여러개의 프로세싱 디바이스에 통합될 수 있다. 프로세싱 디바이스는 무선 또는 유선 통신 인터페이스와 같은 몰입형 비디오 렌더링 디바이스를 갖는 통신 인터페이스 및 하나 또는 여러개의 프로세서를 포함한다.
프로세싱 디바이스는 또한 직접적으로 또는 가정 또는 로컬 게이트웨이와 같은 네트워크 디바이스를 통해 클라우드에 위치한 인터넷 및 액세스 콘텐츠와 같은 넓은 액세스 네트워크를 갖는 제 2 통신 인터페이스를 포함할 수 있다. 프로세싱 디바이스는 또한 이더넷 유형의 로컬 액세스 네트워크 인터페이스와 같은 제 3 인터페이스를 통해 로컬 스토리지에 액세스할 수 있다. 일 실시형태에서, 프로세싱 디바이스는 하나 또는 여러개의 프로세싱 유닛을 갖는 컴퓨터 시스템일 수 있다. 다른 실시형태에서, 그것은 몰입형 비디오 렌더링 디바이스에 대한 유선 또는 무선 링크를 통해 연결될 수 있거나 또는 몰입형 비디오 렌더링 디바이스의 하우징에 삽입될 수 있고 커넥터를 통해 또는 무선으로 그것과 통신할 수 있는 스마트폰일 수 있다. 프로세싱 디바이스의 통신 인터페이스는 유선 인터페이스 (예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스 (예컨대, IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스) 이다.
몰입형 비디오 렌더링 디바이스에 의해 프로세싱 기능이 수행되는 경우, 몰입형 비디오 렌더링 디바이스에는 콘텐츠를 수신 및/또는 송신하기 위해 네트워크에 직접 또는 게이트웨이를 통해 인터페이스가 제공될 수 있다.
다른 실시형태에서, 시스템은 몰입형 비디오 렌더링 디바이스 및 프로세싱 디바이스와 통신하는 보조 디바이스를 포함한다. 이러한 실시형태에서, 이 보조 디바이스는 프로세싱 기능들 중 적어도 하나를 포함할 수 있다.
몰입형 비디오 렌더링 디바이스는 하나 또는 여러개의 디스플레이를 포함할 수 있다. 이 디바이스는 각 디스플레이 전방에 렌즈와 같은 광학 디바이스를 채용할 수 있다. 디스플레이는 또한 스마트폰 또는 태블릿의 경우에서와 같이 몰입형 디스플레이 디바이스의 일부가 될 수도 있다. 다른 실시형태에서, 디스플레이 및 광학 디바이스는 헬멧, 안경, 또는 사용자가 착용할 수 있는 바이저에 내장될 수 있다. 몰입형 비디오 렌더링 디바이스는 또한 후술되는 바와 같이 여러개의 센서를 통합할 수 있다. 몰입형 비디오 렌더링 디바이스는 또한 여러개의 인터페이스 또는 커넥터를 포함할 수 있다. 센서, 프로세싱 기능, 핸드헬드 또는 기타 신체 부위 관련 디바이스 또는 센서와 통신하기 위해 하나 또는 여러개의 무선 모듈을 포함할 수 있다.
몰입형 비디오 렌더링 디바이스는 또한 하나 또는 여러개의 프로세서에 의해 실행되고 콘텐츠를 디코딩하거나 콘텐츠를 프로세싱하도록 구성된 프로세싱 기능을 포함할 수 있다. 여기에서 콘텐츠를 프로세싱함으로써, 모든 기능이 디스플레이될 수 있는 콘텐츠를 준비하는 것으로 이해된다. 이것은, 예를 들어, 콘텐츠를 디코딩하고, 디스플레이하기 이전에 콘텐츠를 병합하고, 디스플레이 디바이스에 적합하도록 콘텐츠를 수정하는 것을 포함할 수 있다.
몰입형 콘텐츠 렌더링 디바이스의 하나의 기능은 가상 볼륨으로 구조화된 콘텐츠의 적어도 일부를 캡처하는 가상 카메라를 제어하는 것이다. 시스템은 가상 카메라의 포즈를 프로세싱하기 위해 사용자의 포즈, 예를 들어 사용자의 머리의 포즈를 전체적으로 또는 부분적으로 추적하는 포즈 추적 센서를 포함할 수 있다. 일부 포지셔닝 센서는 사용자의 변위를 추적할 수 있다. 시스템은 또한 예를 들어 조명, 온도 또는 사운드 조건을 측정하기 위해 환경과 관련된 다른 센서를 포함할 수 있다. 이러한 센서는 또한 예를 들어 발한 또는 심박수를 측정하기 위해 사용자의 신체와 관련될 수 있다. 이러한 센서를 통해 획득된 정보는 콘텐츠를 프로세싱하는데 사용될 수 있다. 시스템은 또한 사용자 입력 디바이스 (예를 들어, 마우스, 키보드, 원격 제어기, 조이스틱) 를 포함할 수 있다. 사용자 입력 디바이스로부터의 정보는 콘텐츠를 프로세싱하거나, 사용자 인터페이스를 관리하거나, 또는 가상 카메라의 포즈를 제어하는데 사용될 수 있다. 센서 및 사용자 입력 디바이스는 유선 또는 무선 통신 인터페이스를 통해 프로세싱 디바이스 및/또는 몰입형 렌더링 디바이스와 통신한다.
도 2 내지 도 6을 사용하여, 증강 현실, 가상 현실, 증강된 가상 또는 임의의 콘텐츠를 증강 현실에서 가상 현실로 디스플레이하기 위한 이 제 1 유형의 시스템에 대해 여러 실시형태가 설명된다.
도 2는 몰입형 비디오를 디코딩, 프로세싱 및 렌더링하도록 구성된 시스템의 특정 실시형태를 나타낸다. 이 시스템은 몰입형 비디오 렌더링 디바이스 (10), 센서 (20), 사용자 입력 디바이스 (30), 컴퓨터 (40) 및 게이트웨이 (50) (옵션) 를 포함한다.
도 10에 나타낸 몰입형 비디오 렌더링 디바이스 (10) 는 디스플레이 (101) 를 포함한다. 디스플레이는 예를 들어 OLED 또는 LCD 유형의 것이다. 몰입형 비디오 렌더링 디바이스 (10) 는 예를 들어 HMD, 태블릿 또는 스마트폰이다. 디바이스 (10) 는 터치 표면 (102) (예를 들어, 터치패드 또는 촉각 스크린), 카메라 (103), 적어도 하나의 프로세서 (104) 와 연결된 메모리 (105) 및 적어도 하나의 통신 인터페이스 (106) 를 포함할 수 있다. 적어도 하나의 프로세서 (104) 는 센서 (20) 로부터 수신된 신호를 프로세싱한다. 센서로부터의 측정치 중 일부는 디바이스의 포즈를 컴퓨팅하고 가상 카메라를 제어하는데 사용된다. 포즈 추정에 사용되는 센서는 예를 들어 자이로스코프, 가속도계 또는 컴파스이다. 보다 복잡한 시스템, 예를 들어 카메라의 리그를 사용하는 시스템이 또한 사용될 수 있다. 이 경우, 적어도 하나의 프로세서는 디바이스 (10) 의 포즈를 추정하기 위해 이미지 프로세싱를 수행한다. 환경 조건이나 사용자의 반응에 따라 콘텐츠를 프로세싱하기 위해 일부 다른 측정이 사용된다. 환경 및 사용자를 관찰하는데 사용되는 센서는 예를 들어 마이크로폰, 광 센서 또는 접촉 센서이다. 보다 복잡한 시스템은 예를 들어 사용자의 눈을 추적하는 비디오 카메라처럼 사용될 수도 있다. 이 경우, 적어도 하나의 프로세서는 예상되는 측정치를 동작시키기 위해 이미지 프로세싱을 수행한다. 센서 (20) 및 사용자 입력 디바이스 (30) 로부터의 데이터는 또한 이들 센서의 입력에 따라 데이터를 프로세싱할 컴퓨터 (40) 로 송신될 수 있다.
메모리 (105) 는 프로세서 (104) 에 대한 파라미터 및 코드 프로그램 명령을 포함한다. 메모리 (105) 는 또한 센서 (20) 및 사용자 입력 디바이스 (30) 로부터 수신된 파라미터를 포함할 수 있다. 통신 인터페이스 (106) 는 몰입형 비디오 렌더링 디바이스가 컴퓨터 (40) 와 통신할 수 있게 한다. 프로세싱 디바이스의 통신 인터페이스 (106) 는 유선 인터페이스 (예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스 (예컨대, IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스) 이다. 컴퓨터 (40) 는 데이터 및 임의로 제어 커맨드를 몰입형 비디오 렌더링 디바이스 (10) 로 전송한다. 컴퓨터 (40) 는 데이터 프로세싱를 담당하며, 즉, 몰입형 비디오 렌더링 디바이스 (10) 에 의해 디스플레이를 준비한다. 프로세싱은 컴퓨터 (40) 에 의해 배타적으로 행해질 수 있고, 또는 프로세싱의 일부는 컴퓨터에 의해 및 몰입형 비디오 렌더링 디바이스 (10) 에 의해 일부 행해질 수 있다. 컴퓨터 (40) 는 직접 또는 게이트웨이 또는 네트워크 인터페이스 (50) 를 통해 인터넷에 접속된다. 컴퓨터 (40) 는 몰입형 비디오를 나타내는 데이터를 인터넷으로부터 수신하고, 이들 데이터를 프로세싱하고 (예를 들어, 이들을 디코딩하고, 가능하게는 몰입형 비디오 렌더링 디바이스 (10) 에 의해 디스플레이될 비디오 콘텐츠의 일부를 준비하고), 그리고 프로세싱된 데이터를 디스플레이하기 위해 몰입형 비디오 렌더링 디바이스 (10) 로 전송한다. 변형예에서, 시스템은 또한 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 를 포함할 수 있고, 상기 로컬 스토리지는 예를 들어 컴퓨터 (40) 상에 또는 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 액세스 가능한 로컬 서버 상에 있을 수 있다.
도 3은 제 2 실시형태를 나타낸다. 이 실시형태에서, STB (90) 는 인터넷과 같은 네트워크에 직접 접속되거나 (즉, STB (90) 는 네트워크 인터페이스를 포함한다) 또는 게이트웨이 (50) 를 통해 접속된다. STB (90) 는 무선 인터페이스를 통해 또는 유선 인터페이스를 통해 텔레비전 세트 (100) 또는 몰입형 비디오 렌더링 디바이스 (200) 와 같은 렌더링 디바이스에 접속된다. STB의 고전적인 기능 외에도, STB (90) 는 텔레비전 (100) 또는 임의의 몰입형 비디오 렌더링 디바이스 (200) 상에 렌더링하기 위해 비디오 콘텐츠를 프로세싱하는 프로세싱 기능을 포함한다. 이들 프로세싱 기능은 컴퓨터 (40) 에 대해 기술된 기능과 동일하고 여기에서 다시 설명하지 않는다. 센서 (20) 및 사용자 입력 디바이스 (30) 는 또한 도 2와 관련하여 앞서 설명한 것과 동일한 유형이다. STB (90) 는 몰입형 비디오를 나타내는 데이터를 인터넷으로부터 획득한다. 변형예에서, STB (90) 는 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오를 나타내는 데이터를 획득한다.
도 4는 도 2에 나타낸 것과 관련된 제 3 실시형태를 나타낸다. 게임 콘솔 (60) 은 콘텐츠 데이터를 프로세싱한다. 게임 콘솔 (60) 은 데이터 및 임의로 제어 커맨드를 몰입형 비디오 렌더링 디바이스 (10) 로 전송한다. 게임 콘솔 (60) 은 몰입형 비디오를 나타내는 데이터를 프로세싱하고 프로세싱된 데이터를 디스플레이하기 위해 몰입형 비디오 렌더링 디바이스 (10) 에 전송하도록 구성된다. 프로세싱은 게임 콘솔 (60) 에 의해 배타적으로 행해질 수 있고, 또는 프로세싱의 일부는 몰입형 비디오 렌더링 디바이스 (10) 에 의해 행해질 수 있다.
게임 콘솔 (60) 은 직접 또는 게이트웨이 또는 네트워크 인터페이스 (50) 를 통해 인터넷에 접속된다. 게임 콘솔 (60) 은 몰입형 비디오를 나타내는 데이터를 인터넷으로부터 획득한다. 변형예에서, 게임 콘솔 (60) 은 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오를 나타내는 데이터를 획득하고, 상기 로컬 스토리지는 게임 콘솔 (60) 상에 또는 예를 들어 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 액세스 가능한 로컬 서버 상에 있을 수 있다.
게임 콘솔 (60) 은 몰입형 비디오를 나타내는 데이터를 인터넷으로부터 수신하고, 이들 데이터를 프로세싱하고 (예를 들어, 이들을 디코딩하고, 가능하게는 디스플레이될 비디오 콘텐츠의 일부를 준비하고), 그리고 프로세싱된 데이터를 디스플레이하기 위해 몰입형 비디오 렌더링 디바이스 (10) 로 전송한다. 게임 콘솔 (60) 은 센서 (20) 및 사용자 입력 디바이스 (30) 로부터 데이터를 수신할 수 있고 인터넷 또는 로컬 스토리지로부터 획득된 몰입형 비디오를 나타내는 데이터를 프로세싱하기 위해 이들을 사용할 수 있다.
도 5는 몰입형 비디오 렌더링 디바이스 (70) 가 하우징 (705) 에 삽입된 스마트폰 (701) 에 의해 형성되는 상기 제 1 유형의 시스템의 제 4 실시형태를 나타낸다. 스마트폰 (701) 은 인터넷에 연결될 수 있으며, 따라서 몰입형 비디오를 나타내는 데이터를 인터넷으로부터 획득할 수 있다. 변형예에서, 스마트폰 (701) 은 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오를 나타내는 데이터를 획득하고, 상기 로컬 스토리지는 스마트폰 (701) 상에 또는 예를 들어 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 액세스 가능한 로컬 서버 상에 있을 수 있다.
몰입형 비디오 렌더링 디바이스 (70) 는 몰입형 비디오 렌더링 디바이스 (70) 의 바람직한 실시형태를 제공하는 도 11을 참조하여 설명된다. 선택적으로, 적어도 하나의 네트워크 인터페이스 (702) 및 스마트폰 (701) 을 위한 하우징 (705) 을 포함한다. 스마트폰 (701) 은 스마트폰 및 디스플레이의 모든 기능을 포함한다. 몰입형 비디오 렌더링 디바이스 (70) 디스플레이로서 스마트폰의 디스플레이가 사용된다. 따라서, 스마트폰 (701) 이외의 디스플레이는 포함되지 않는다. 그러나, 렌즈와 같은 광학 디바이스 (704) 는 스마트폰 디스플레이 상의 데이터를 보기 위해 포함된다. 스마트폰 (701) 은 가능하게 센서 (20) 및 사용자 입력 디바이스 (30) 로부터 수신된 데이터에 따라 몰입형 비디오를 나타내는 데이터를 프로세싱 (예를 들어, 디코딩 및 디스플레이하기 위해 준비) 하도록 구성된다. 센서로부터의 측정치 중 일부는 디바이스의 포즈를 컴퓨팅하고 가상 카메라를 제어하는데 사용된다. 포즈 추정에 사용되는 센서는 예를 들어 자이로스코프, 가속도계 또는 컴파스이다. 보다 복잡한 시스템, 예를 들어 카메라의 리그를 사용하는 시스템이 또한 사용될 수 있다. 이 경우, 적어도 하나의 프로세서는 디바이스 (10) 의 포즈를 추정하기 위해 이미지 프로세싱를 수행한다. 환경 조건이나 사용자의 반응에 따라 콘텐츠를 프로세싱하기 위해 일부 다른 측정이 사용된다. 환경 및 사용자를 관찰하는데 사용되는 센서는 예를 들어 마이크로폰, 광 센서 또는 접촉 센서이다. 보다 복잡한 시스템은 예를 들어 사용자의 눈을 추적하는 비디오 카메라와 같이 사용될 수도 있다. 이 경우, 적어도 하나의 프로세서는 예상되는 측정치를 동작시키기 위해 이미지 프로세싱을 수행한다.
도 6은 몰입형 비디오 렌더링 디바이스 (80) 가 데이터 콘텐츠를 프로세싱하고 디스플레이하기 위한 모든 기능을 포함하는 상기 제 1 유형의 시스템의 제 5 실시형태를 나타낸다. 이 시스템은 몰입형 비디오 렌더링 디바이스 (80), 센서 (20) 및 사용자 입력 디바이스 (30) 를 포함한다. 몰입형 비디오 렌더링 디바이스 (80) 는 가능하게 센서 (20) 및 사용자 입력 디바이스 (30) 로부터 수신된 데이터에 따라 몰입형 비디오를 나타내는 데이터를 프로세싱 (예를 들어, 디코딩 및 디스플레이하기 위해 준비) 하도록 구성된다. 몰입형 비디오 렌더링 디바이스 (80) 는 인터넷에 연결될 수 있으며, 따라서 몰입형 비디오를 나타내는 데이터를 인터넷으로부터 획득할 수 있다. 변형예에서, 몰입형 비디오 렌더링 디바이스 (80) 는 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오를 나타내는 데이터를 획득하고, 상기 로컬 스토리지는 렌더링 디바이스 (80) 상에서 또는 예를 들어 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 접근 가능한 로컬 서버 상에 있을 수 있다.
몰입형 비디오 렌더링 디바이스 (80) 는 도 12에 도시되어 있다. 몰입형 비디오 렌더링 디바이스는 디스플레이 (801) 를 포함한다. 디스플레이는 예를 들어 OLED 또는 LCD 유형의 것, 터치패드 (옵션) (802), 카메라 (옵션) (803), 적어도 하나의 프로세서 (804) 및 적어도 하나의 통신 인터페이스 (806) 와 연결된 메모리 (805) 일 수 있다. 메모리 (805) 는 프로세서 (804) 에 대한 파라미터 및 코드 프로그램 명령을 포함한다. 메모리 (805) 는 또한 센서 (20) 및 사용자 입력 디바이스 (30) 로부터 수신된 파라미터를 포함할 수 있다. 메모리는 또한 몰입형 비디오 콘텐츠를 나타내는 데이터를 저장할만큼 커질 수 있다. 이를 위해, 여러 유형의 메모리가 존재할 수 있고 메모리 (805) 는 단일 메모리일 수 있거나 여러 유형의 스토리지 (SD 카드, 하드 디스크, 휘발성 또는 비 휘발성 메모리...) 일 수 있다. 통신 인터페이스 (806) 는 몰입형 비디오 렌더링 디바이스가 인터넷 네트워크와 통신할 수 있게 한다. 프로세서 (804) 는 디스플레이 (801) 를 디스플레이하기 위해 비디오를 나타내는 데이터를 프로세싱한다. 카메라 (803) 는 이미지 프로세싱 단계를 위해 환경 이미지를 캡처한다. 몰입형 비디오 렌더링 디바이스를 제어하기 위해 이 단계에서 데이터가 추출된다.
증강 현실, 가상 현실, 또는 증강된 가상 콘텐츠를 프로세싱하기 위한 제 2 시스템이 도 7 내지 도 9에 도시되어 있다. 그러한 시스템은 몰입형 벽을 포함한다.
도 7은 제 2 유형의 시스템을 나타낸다. 이는 컴퓨터 (4000) 로부터 데이터를 수신하는 몰입형 (투영성) 벽인 디스플레이 (1000) 를 포함한다. 컴퓨터 (4000) 는 몰입형 비디오 데이터를 인터넷으로부터 수신할 수 있다. 컴퓨터 (4000) 는 직접 또는 게이트웨이 (5000) 또는 네트워크 인터페이스를 통해 인터넷에 보통 접속된다. 변형예에서는, 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오 데이터가 컴퓨터 (4000) 에 의해 획득되고, 상기 로컬 스토리지는 스마트폰 (4000) 에 또는 예를 들어 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 액세스 가능한 로컬 서버에 있을 수 있다.
이 시스템은 또한 센서 (2000) 및 사용자 입력 디바이스 (3000) 를 포함할 수 있다. 몰입형 벽 (1000) 은 OLED 또는 LCD 유형의 것일 수 있다. 하나 또는 여러개의 카메라가 구비될 수 있다. 몰입형 벽 (1000) 은 센서 (2000) (또는 복수의 센서 (2000)) 로부터 수신된 데이터를 프로세싱할 수 있다. 센서 (2000) 로부터 수신된 데이터는 조명 조건, 온도, 사용자의 환경, 예를 들어 물체의 위치와 관련될 수 있다.
몰입형 벽 (1000) 은 또한 사용자 입력 디바이스 (3000) 로부터 수신된 데이터를 프로세싱할 수 있다. 사용자 입력 디바이스 (3000) 는 사용자 감정에 대한 피드백을 주기 위해 햅틱 신호와 같은 데이터를 전송한다. 사용자 입력 디바이스 (3000) 의 예는 스마트폰, 원격 제어기 및 자이로스코프 기능을 갖는 디바이스와 같은 핸드헬드 디바이스이다.
센서 (2000) 및 사용자 입력 디바이스 (3000) 데이터는 또한 컴퓨터 (4000) 로 송신될 수 있다. 컴퓨터 (4000) 는 이들 센서/사용자 입력 디바이스로부터 수신된 데이터에 따라 비디오 데이터를 프로세싱 (예를 들어, 비디오 데이터를 디코딩 및 비디오 데이터를 디스플레이하기 위해 준비) 할 수 있다. 센서 신호는 몰입형 벽의 통신 인터페이스를 통해 수신될 수 있다. 이 통신 인터페이스는 블루투스 유형, WIFI 유형 또는 임의의 다른 유형의 접속, 우선적으로 무선이지만, 또한 유선 접속일 수도 있다.
컴퓨터 (4000) 는 프로세싱된 데이터 및 임의로 제어 커맨드를 몰입형 벽 (1000) 에 전송한다. 컴퓨터 (4000) 는 몰입형 벽 (1000) 에 의해 디스플레이될 데이터를 프로세싱하도록, 즉 디스플레이를 준비하도록 구성된다. 프로세싱은 컴퓨터 (4000) 에 의해 배타적으로 행해질 수 있고, 또는 프로세싱의 일부는 컴퓨터 (4000) 에 의해 및 몰입형 비디오 렌더링 디바이스 (1000) 에 의해 일부 행해질 수 있다.
도 8은 제 2 유형의 다른 시스템을 나타낸다. 이는 프로세싱하고 (예를 들어, 디코딩하고 데이터를 디스플레이하기 위해 준비하고) 비디오 콘텐츠를 디스플레이하도록 구성된 몰입형 (투영성) 벽 (6000) 을 포함한다. 센서 (2000), 사용자 입력 디바이스 (3000) 를 더 포함한다.
몰입형 벽 (6000) 은 게이트웨이 (5000) 를 통해 또는 인터넷으로부터, 또는 직접 인터넷으로부터 몰입형 비디오 데이터를 수신한다. 변형예에서는, 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오 데이터가 몰입형 벽 (6000) 에 의해 획득되고, 상기 로컬 스토리지는 몰입형 벽 (6000) 에 또는 예를 들어 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 액세스 가능한 로컬 서버에 있을 수 있다.
이 시스템은 또한 센서 (2000) 및 사용자 입력 디바이스 (3000) 를 포함할 수 있다. 몰입형 벽 (6000) 은 OLED 또는 LCD 유형의 것일 수 있다. 하나 또는 여러개의 카메라가 장착될 수 있다. 몰입형 벽 (6000) 은 센서 (2000) (또는 복수의 센서 (2000)) 로부터 수신된 데이터를 프로세싱할 수 있다. 센서 (2000) 로부터 수신된 데이터는 조명 조건, 온도, 사용자의 환경, 예를 들어 물체의 위치와 관련될 수 있다.
몰입형 벽 (6000) 은 또한 사용자 입력 디바이스 (3000) 로부터 수신된 데이터를 프로세싱할 수 있다. 사용자 입력 디바이스 (3000) 는 사용자 감정에 대한 피드백을 주기 위해 햅틱 신호와 같은 데이터를 전송한다. 사용자 입력 디바이스 (3000) 의 예는 스마트폰, 원격 제어기 및 자이로스코프 기능을 갖는 디바이스와 같은 핸드헬드 디바이스이다.
몰입형 벽 (6000) 은 이들 센서/사용자 입력 디바이스로부터 수신된 데이터에 따라 비디오 데이터를 프로세싱 (예를 들어, 비디오 데이터를 디코딩 및 비디오 데이터를 디스플레이하기 위해 준비) 할 수 있다. 센서 신호는 몰입형 벽의 통신 인터페이스를 통해 수신될 수 있다. 이 통신 인터페이스는 블루투스 유형, WIFI 유형 또는 임의의 다른 유형의 접속, 우선적으로 무선이지만, 또한 유선 접속일 수도 있다. 몰입형 벽 (6000) 은 센서 및 인터넷과 통신하기 위한 적어도 하나의 통신 인터페이스를 포함할 수 있다.
도 9는 몰입형 벽이 게임용으로 사용되는 제 3 실시형태를 도시한다. 하나 또는 여러개의 게임 콘솔 (7000) 은 바람직하게는 무선 인터페이스를 통해 몰입형 벽 (6000) 에 연결된다. 몰입형 벽 (6000) 은 게이트웨이 (5000) 를 통해 또는 인터넷으로부터, 또는 직접 인터넷으로부터 몰입형 비디오 데이터를 수신한다. 변형예에서는, 몰입형 비디오를 나타내는 데이터가 저장되는 로컬 스토리지 (도시되지 않음) 로부터 몰입형 비디오 데이터가 몰입형 벽 (6000) 에 의해 획득되고, 상기 로컬 스토리지는 몰입형 벽 (6000) 에 또는 예를 들어 로컬 에어리어 네트워크 (도시되지 않음) 를 통해 액세스 가능한 로컬 서버에 있을 수 있다.
게임 콘솔 (7000) 은 명령 및 사용자 입력 파라미터를 몰입형 벽 (6000) 에 전송한다. 몰입형 벽 (6000) 은 디스플레이용 콘텐츠를 준비하기 위해 가능하게는 센서 (2000) 및 사용자 입력 디바이스 (3000) 및 게임 콘솔 (7000) 로부터 수신된 입력 데이터에 따라 몰입형 비디오 콘텐츠를 프로세싱한다. 몰입형 벽 (6000) 은 또한 디스플레이될 콘텐츠를 저장하기 위한 내부 메모리를 포함할 수 있다.
본 개시물의 비제한적인 실시형태에 따르면, 스트림에 큰 시야 비디오의 이미지를 인코딩하는 방법 및 디바이스가 개시된다. 스트림으로부터 큰 시야 비디오의 이미지를 디코딩하는 방법 및 디바이스가 또한 개시된다. 큰 시야 비디오의 이미지들을 인코딩하는 스트림의 신택스들이 또한 개시된다.
도 13은 2 개의 상이한 맵핑 기능에 따라 프레임 상에 전방향성 비디오를 맵핑하는 예를 도시한다. 3D 장면, 여기서는 호텔 홀은 구형 맵핑 표면 (130) 상에 투영된다. 프레임 상의 표면을 맵핑하기 위해 전방 방향이 선택된다. 전방 방향은 도 2 내지 도 12에서 설명한 바와 같이 몰입형 비디오 렌더링 디바이스 상에 렌더링할 때 사용자 앞에 디스플레이되는 콘텐츠의 부분에 대응할 수 있다. 도 13의 예에서, 전방 방향은 'A'가 인쇄된 창을 대면하고 있다. 전방 방향의 좌측에는 'B'가 인쇄된 회전문이 있다. 도 1의 전처리 모듈은 프레임 내의 돌출부 (130) 의 맵핑을 수행한다. 상이한 맵핑 기능이 사용되어 상이한 프레임으로 이어질 수 있다. 도 13의 예에서, 전처리 모듈 (300) 은 구 (130) 에 적용된 등장방형 맵핑 함수에 따라 프레임 (131) 의 시퀀스를 생성한다. 변형예에서, 전처리 모듈 (300) 은 큐브 레이아웃 (134) 에 따라 프레임 (133) 상에 큐브 (132) 를 맵핑하기 이전에 구 (130) 를 큐브 (132) 로 변환하는 맵핑 공간 변경을 수행한다. 도 13의 예시적인 큐브 레이아웃은 3 개의 사각형의 2 행으로 프레임을 분할한다. 상부 행에는 큐브의 좌측, 전방 및 우측 면이 놓이고; 하부 행에는 90° 회전한 큐브의 상부, 후방 및 하부 면이 놓인다. 각 행마다 연속성이 보장된다. 큐브 레이아웃 (134) 의 표현 상의 번호는 큐브 에지의 연결을 나타낸다.
하나 이상의 직사각형 픽처에 3D 표면을 맵핑하면 필연적으로 결과 비디오를 인코딩할 때 압축 효율에 영향을 줄 수 있는 일부 효과가 도입된다.
유형 등장방형 정육면체형 피라미드형
3D 표면 정육면체 피라미드
직선 라인 연속적으로 왜곡됨 구간 (piece wise) 직선 구간 직선
직교 (orthonormal) 로컬 픽처 없음 면 경계 외에는, 있음 정사각형 면 외에는, 없음
픽셀 밀도 불균일 (적도선에서는 보다 높음) 거의 일정 정사각형 면 외에는, 없음
불연속 없음 각 면 경계 외에는, 있음 각 면 경계 외에는, 있음
주기성 수평 방향에서, 있음 일부 면들 사이에서, 있음 일부 면들 사이에서, 있음
실제로, 투영법은 다음과 같은 효과를 도입할 수 있다:
Figure pct00003
강력한 기하학적 왜곡:
o 직선 라인은 더 이상 직선이 아니다
o 직교 좌표계는 더 이상 직교가 아니다
Figure pct00004
뷸균일한 픽셀 밀도: 인코딩할 픽처의 픽셀이 인코딩할 표면에 항상 같은 표면을 나타내는 것은 아니다 (예를 들어, 구의 극점이 2D 이미지에서 픽셀들의 라인에 의해 나타내질 수 있음),
Figure pct00005
강한 불연속성: 픽처 레이아웃은 표면 상의 인접한 두 픽셀 사이에 강한 불연속성을 도입할 수 있다,
Figure pct00006
일부 주기성이 픽처에서 발생할 수 있다 (예를 들어 하나의 경계에서 반대쪽 경계까지).
표 1은 다양한 맵핑 기능에 대한 이러한 효과의 예를 나열한다. 이러한 효과 중 일부는 도 13의 비디오 프레임 (131 및 133) 및 도 14의 프레임 (141 및 143) 에 나타난다.
도 14는 패닝 이후에 도 13의 전방향성 비디오를 맵핑하는 예를 도시한다. 3D 장면의 전방 방향은 회전한다 (144). 3D 장면은 도 13의 3D 장면과 동일하며 전방 방향만 회전한다. 도 14의 예에서, 회전은 좌측편의 패닝에 대응한다. 구 (140) 의 전방 방향은 복도를 대면하고 'A'가 있는 창은 좌측에 있는 한편 'B'가 있는 회전문은 후방에 있다. 등장방형 맵핑 함수에 따른 구 (140) 의 맵핑은 비디오 프레임 (141) 을 생성한다. 변형예에서, 전처리 모듈은 도 13의 정육면체 레이아웃 (134) 에 따라 프레임 (143) 상에 정육면체 (142) 를 맵핑하기 이전에 구 (140) 를 큐브 (142) 로 변환하는 맵핑 공간 변경을 수행한다. 맵핑 표면의 3D 회전 (144) 은 오일러 (Euler) 각도 표기법 (α, β, γ) 을 사용하여 디스플레이된다. 시간 t에서의 3D 장면에서의 전방 방향의 방위를 (α(t), β(t), γ(t)) 로 나타낸다. 각도는 기준이 되는 프레임에 따라 설정된다. 전방 방향은 기준이 되는 절대 프레임에 따라, 예를 들어 북쪽 방향은 수평 평면에 따라 표현될 수 있다. 변형예에서, 이미지와 연관된, 글로벌 회전 모션 파라미터 (global rotation motion parameter) 로도 또한 불리는, 전방 방향은 기준 이미지의 전방 방향에 대한 기준 프레임에서 설정된다. 그러한 변형예에서, 이미지와 연관된 각도는 그 자신의 전방 방향과 기준 이미지의 전방 방향 간의 차이 (예를 들어, 감산) 에 대응한다.
이 각도는 실제 또는 가상일 수 있는 획득 시스템의 방위에 해당한다. 획득 시스템은 전방 방향의 방위를 나타내는 각도를 각 프레임과 연관된 인코딩 모듈 (400) 로 송신한다. 변형예에서, 전방 방향 각도는 획득 시스템의 회전이 검출될 때에만 송신된다. 또 다른 변형예에서, 전방 방향 각도는 규칙적인 주파수로, 예를 들어 10 프레임마다 또는 24 프레임마다 인코딩 모듈 (400) 에 송신된다. 다른 실시형태에서, 획득 시스템은 회전하지 않는다. 전방 방향은 획득 시스템과 인코딩 모듈 (400) 사이의 중간에 있는 편집 모듈 (도 1에 도시되지 않음) 에 의해 관리된다. 편집 모듈은 인간 조작자 또는 알고리즘에 의해 수정된 전방 방향 각도를 각 프레임과 연관된 인코딩 모듈 (400) 로 또는 회전이 검출될 때마다 또는 선택된 변형에 따라 규칙적인 주파수로 송신한다. 또 다른 실시형태에서, 전처리 모듈 (300) 은 2 개의 맵핑된 표면 (예를 들어, 구 (130 및 140)) 또는 선택된 맵핑함에 따라 생성된 2 개의 프레임 (예를 들어, 프레임 (131 및 141) 또는 프레임 (133 및 143)) 을 비교함으로써 전방 방향 각도를 컴퓨팅한다. 전방 방향 각도의 변형은 프레임의 글로벌 회전 모션에 해당한다. 전방향성 비디오의 경우, 전체 장면이 캡처되므로 글로벌 회전 동작은 이미지의 콘텐츠 정보를 수정하지 않는다. 프레임 (131 및 141) (상호적으로 133 및 143) 은 동일한 3D 장면을 나타내며 상이한 전방 방향에서 인코딩된 동일한 컬러 정보 (격자 보간까지) 를 포함한다. 그러나, 픽처 (131 및 141) 의 픽셀은 현저히 상이하다. (예를 들어, 패닝으로서) 글로벌 회전 모션을 포함하는 프레임의 시퀀스의, 비디오 압축 표준 방법을 사용한 인코딩은, 컴퓨팅이 까다로우며 인코딩된 3D 장면이 동일하게 남아있는 동안 다량의 데이터를 필요로 하는 모션 모델의 계산을 의미한다.
HEVC, H.264/AVC 등과 같은 비디오 압축 표준은 시간적 중복성을 활용하여 인코딩할 정보를 줄이다. 그것은 이전 또는 다른 순간에 대응하는 픽처의 재구성된 블록의 모션 보상 (MC) 을 동작시키는 인터-예측에 기초한다. 시간 t2 에서의 픽처 P2 의 픽셀 P2 는 시간 t1 에서의 픽처 P1 의 픽셀 P1 에 대응한다.
[eq1]
Figure pct00007
P1과 P2 사이의 픽셀의 변위는 방정식 eq2 에서와 같이 분해될 수 있다.
[eq2]
Figure pct00008
식중 p는 픽셀이고 (즉, 동일한 픽셀로서 p1 과 P2 의 식별), dp는 3D 장면에 물리적 지점의 적절한 모션에 의한 픽셀의 겉보기 모션이고 gmc는 글로벌 회전 모션에 의한 픽셀의 겉보기 모션이다. 전방 방향이 회전하는 경우, 픽처의 픽셀은 장면이 변경되지 않은 경우에도 크게 변경된다 (즉, dp(t1, t2) = (0, 0)). 이것은, 전방 방향이 종종 장면의 관심 대상을 향해 가리키고 기준이 되는 프레임을 회전시켜 시점을 조정하기 때문에 실제로 자주 발생한다.
본 원리들의 비제한적인 예에서, 입력 이미지에 대한 글로벌 회전 모션 보상의 동작으로 새로운 이미지를 생성한다. 글로벌 회전 모션 파라미터 (예를 들어, 입력 이미지와 연관된 전방 방향 각도) 는 제 1 이미지의 글로벌 회전 모션 파라미터와 비교되며, 예를 들어, 감산된다. 입력 이미지의 픽셀은 새 이미지가 제 1 이미지의 전방 방향으로 캡처된 것처럼 입력 이미지의 콘텐츠과 동일한 콘텐츠를 나타내는 방식으로 재구성된다. 이 원리에 따르면, 입력 이미지와 기준 이미지는 쉽게 비교될 수 있는 장점이 있다. 제 1 변형예에서, 입력 이미지는 압축 루프, 예를 들어 HEVC 또는 H.264/AVC와 같은 압축 표준의 압축 루프 내의 기준 이미지이고, 제 1 이미지는 인코딩될 이미지이다. 또 다른 변형예에서, 입력 이미지는 인코딩될 이미지이고, 제 1 이미지는 압축 루프의 기준 이미지이다. 이 실시형태는 비제한적이다.
도 15는 인코딩될 이미지 (I1) 에 응답하여 입력 이미지 (I2) 를 모션 보상함으로써 시퀀스 이미지들의 이미지 (I1) 를 인코딩하는 방법 (150) 을 개략적으로 도시한다. 이 방법은 도 1의 인코딩 모듈 (400) 에서 구현된다. 단계 (151) 에서, 이미지 (I1) 는 글로벌 회전 모션 보상 단계 (152) 의 입력 이미지 (I2) 로 준비된다. 단계 (151) 의 실시형태는 도 19 및 도 21과 관련하여 더 설명된다. 단계 (152) 에서, 글로벌 회전 모션 보상은 이전에 획득된 글로벌 회전 모션 파라미터 (RP) (즉, 전방 방향 각도) 에 따라 입력 이미지 (I2) 에 적용된다. 단계 (152) 의 실시형태는 도 24 및 도 26과 관련하여 더 설명된다. 단계 (152) 는 글로벌적으로 회전 모션 보상된 이미지 (I3) 를 생성한다. 단계 (153) 에서, 이미지 (I3) 는 예측 이미지에 응답하여 잔여 데이터, 블록에 대한 모션 벡터 및 기준 이미지에 대한 정보 데이터 (ID1) 를 생성하는 모션 보상 모듈의 입력으로서 사용된다. 본 원리들의 특정 실시형태에서, 단계 (154) 는 인코딩될 이미지를 나타내는 데이터를 운반하는 비트 스트림 (S) 을 생성한다. 글로벌 회전 모션 파라미터 (RP) 는 무손실 방식으로 스트림 내에서 인코딩된다.
도 16은 디코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 디코딩하는 방법 (160) 을 도식적으로 나타낸다. 데이터 소스 (S) 는 도 15의 방법 (150) 의 제 1 실시형태 (도 24에 의해 도시됨) 에 따라 인코딩된 비트 스트림을 제공한다. 예를 들어, 데이터 소스는 로컬 메모리 (예를 들어, 비디오 메모리, 랜덤 액세스 메모리, 플래시 메모리, 읽기 전용 메모리, 하드 디스크 등), 스토리지 인터페이스 (예를 들어, 매스 스토리지, 광학 디스크 또는 자기 서포트를 갖는 인터페이스) 및 통신 인터페이스 (예를 들어, 유선 인터페이스 (예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 근거리 네트워크 인터페이스) 또는 무선 인터페이스 (예를 들어, IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스)) 를 포함하는 소스의 세트에 속하다. 단계 (161) 에서, 이미지 (I4) 는 스트림으로부터 획득되며, 이미지 (I4) 는 글로벌 회전 모션 보상 단계 (162) 의 입력에 대응한다. 글로벌 회전 모션 파라미터는 비트 스트림으로부터 획득된다. 단계 (161) 의 실시형태는 도 20과 관련하여 더 설명된다. 단계 (162) 에서, 글로벌 회전 모션 파라미터 (RP) 에 따라 입력 이미지 (I4) 에 글로벌 회전 모션 보상을 적용함으로써 이미지 (I5) 가 생성된다. 단계 (162) 의 실시형태는 도 20과 관련하여 더 설명된다. 단계 (163) 에서, 이미지 (I3) 는 디코딩된 이미지 (I6) 를 생성하는 모션 보상 모듈의 입력으로서 사용된다.
도 17은 디코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 디코딩하는 방법 (170) 을 도식적으로 나타낸다. 데이터 소스 (S) 는 도 15의 방법 (150) 의 제 2 실시형태 (도 26에 의해 도시됨) 에 의해 인코딩된 비트 스트림을 제공한다. 예를 들어, 소스는 로컬 메모리 (예를 들어, 비디오 메모리, 랜덤 액세스 메모리, 플래시 메모리, 읽기 전용 메모리, 하드 디스크 등), 스토리지 인터페이스 (예를 들어, 매스 스토리지, 광학 디스크 또는 자기 서포트를 갖는 인터페이스) 및 통신 인터페이스 (예를 들어, 유선 인터페이스 (예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 근거리 네트워크 인터페이스) 또는 무선 인터페이스 (예를 들어, IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스)) 를 포함하는 소스의 세트에 속하다. 단계 (171) 에서, 디코딩될 이미지에 응답하여 잔여 데이터, 모션 벡터 및 이미지 기준에 대한 정보 데이터 (ID2) 는 비트 스트림으로부터 획득되고, 글로벌 회전 모션 파라미터는 비트 스트림으로부터 획득된다. 단계 (172) 에서, 이미지 (I7) 는 정보 데이터 (ID2) 에 따라 획득된 모션 예측 이미지와 잔여 이미지를 합산함으로써 디코딩된다. 단계 (172) 의 실시형태는 도 22과 관련하여 더 설명된다. 단계 (173) 에서, 글로벌 회전 모션 파라미터 (RP) 에 따라 디코딩된 이미지 (I7) 에 글로벌 회전 모션 보상을 적용함으로써 이미지 (I8) 가 생성된다. 단계 (173) 의 실시형태는 도 22과 관련하여 더 설명된다.
도 24는 도 15의 방법 (150) 의 제 1 실시형태를 나타낸다. 이 방법에서, 압축 루프는 HEVC, H.264/AVC와 같은 비디오 압축 표준에 따라 개시된다. 시퀀스의 이미지 중 일부는 기준 이미지로 사용되어 메모리에 저장된다. 방법 (150) 의 단계 (151) 는 이 실시형태에서 3 개의 서브 단계 (241, 242 및 243) 를 포함한다. 단계 (241) 에서, 잔여 이미지는 기준 이미지와 인코딩하기 위해 이미지를 비교, 예를 들어 감산함으로써 계산된다. 잘 알려진 프로세스에 따르면, 모션 추정 프로세스는 모션 예측 이미지를 획득하기 위해 단계 (242) 에서 사용된다. 프로세스는 인코딩할 이미지의 픽셀과 기준 이미지의 픽셀 사이에 컴퓨팅된 오류를 최소화하거나 또는 레이트 왜곡 비용과 같은 다른 메트릭을 최소화하기 위해, 모션 벡터와 같은 모션 데이터를 기준 이미지에서 검색한다. 단계 (243) 에서, 잔여 이미지 및 모션 예측 이미지를 합산함으로써 재구성된 이미지가 생성된다. 단계 (243) 의 출력은 단계 (151) 의 출력에 대응한다. 단계 (152) 에서, 기준 이미지는 인코딩할 이미지의 GRM 파라미터에 따라 글로벌 회전 모션 보상된다. 변형예에서, 이미지는 인코딩할 이미지의 RM 파라미터와 기준 이미지의 GRM 파라미터 사이의 각도 차이로 보상된다. 단계 (153) 는 글로벌 회전 모션 보상된 기준 이미지에 따라 인코딩할 이미지를 모션 보상하는 단계를 포함한다. 기준 이미지가 글로벌 회전 모션 보상된 경우, 단계 (153) 는 용이해지고 계산된 모션 모델은 인코딩될 소량의 비트를 요구한다. 단계 (154) 에서, 인코딩할 준비된 이미지는 엔트로피 인코딩된다. 시퀀스의 엔트로피 인코딩된 이미지는 비트 스트림 (180) 의 페이로드 부분 (182) 에 저장되는 비트 스트림 (180) 의 신택스의 제 1 엘리먼트를 형성한다. 글로벌 회전 모션 파라미터는 비트 스트림의 신택스의 제 2 엘리먼트에 포함되며, 신택스의 상기 제 2 엘리먼트는 비트 스트림 (180) 의 헤더부 (181) 에 포함된다. 헤더부 (181) 는 무손실 방식으로 인코딩된다.
도 25는 도 16의 방법 (160) 의 일 실시형태를 나타낸다. 이 방법에서, 압축 루프는 HEVC, H.264/AVC와 같은 비디오 압축 표준에 따라 개시된다. 방법 (160) 의 단계 (161) 는 이 실시형태에서 2 개의 서브 단계 (251 및 252) 를 포함한다. 단계 (251) 에서, 잔여 이미지는 엔트로피 디코딩되고 모션 모델은 비트 스트림으로부터 획득된다. 모션 예측 이미지는 모션 모델에 따라 계산된다. 비트 스트림으로부터 추출된 이미지들 중 일부는 기준 이미지로서 사용되고 메모리에 저장된다. 디코딩하기 위한 이미지에 응답하는 이미지는, 예를 들어 잔여 이미지 및 모션 보상된 이미지를 합산함으로써 재구성된다. 단계 (252) 에서, 디코딩할 이미지와 연관된 GRM 파라미터가 비트 스트림으로부터 획득된다. 메모리에 저장된 기준 이미지는 또한 이전에 디코딩된 이미지와 같은 GRM 파라미터와 연관된다. 단계 (162) 에서, 디코딩할 이미지와 연관된 기준 이미지는 디코딩할 이미지의 GRM 파라미터에 따라 글로벌 회전 모션 보상된다. 변형예에서, 이미지는 인코딩할 이미지의 RM 파라미터와 기준 이미지의 GRM 파라미터 사이의 각도 차이로 보상된다. 단계 (163) 는 글로벌 회전 모션 보상된 기준 이미지에 따라 디코딩할 이미지를 모션 보상하는 단계를 포함한다. 기준 이미지가 글로벌 회전 모션 보상되었으므로, 단계 (163) 가 용이해진다.
도 26은 도 15의 방법 (150) 의 제 2 실시형태를 나타낸다. 방법 (150) 의 이 실시형태에서, 단계 (151) 는 인코딩할 프레임 및 이미지와 연관된 GRM 파라미터를 획득하고 있다. 압축 루프는 개시되었고, 선택된 이미지들의 시퀀스 중 일부 이미지는 기준 이미지를 가지며 메모리에 저장된다. 기준 이미지는 또한 GRM 파라미터와도 연관된다. 단계 (152) 에서, 인코딩할 이미지는 입력 이미지로서 사용되며, 연관되는 GRM 파라미터에 따라 글로벌 회전 모션 보상된다. 이미지는 예를 들어 로컬 수평면에서 북쪽과 같이 절대 기준 방향에 따라 정의되고 GRM 파라미터에 포함된 각도로 회전된다. 변형예에서, 인코딩할 이미지는 메모리에 저장된 기준 이미지와 연관되고 인코딩할 이미지의 GRM 파라미터와 기준 이미지의 GRM 파라미터 사이의 차이에 따라 계산된 각도로 회전된다. 단계 (153) 에서, 이미지 출력 단계 (152) 는 HEVC, H.264/AVC와 같은 비디오 압축 표준에 따라 구성된 압축 루프에 진입한다. 모션 보상 단계가 수행된다. 잘 알려진 프로세스에 따라, 인코딩할 이미지 (I1) 의 픽셀과 기준 이미지 (I3) 의 픽셀 사이에 컴퓨팅된 오류를 최소화하기 위해 또는 레이트 왜곡 비용과 같은 다른 메트릭을 최소화하기 위해, 모션 추정은 기준 이미지 (I3) 에서 모션 데이터, 예컨대 모션 벡터를 검색한다. 인코딩할 이미지 (I1) 가 단계 (152) 에서 글로벌 회전 모션 보상되었기 때문에, 모션 데이터의 검색이 용이해지고 그들을 인코딩하는데 필요한 데이터의 양이 적다. 단계 (154) 에서, 인코딩할 준비된 이미지는 엔트로피 인코딩된다. 시퀀스의 엔트로피 인코딩된 이미지는 비트 스트림 (180) 의 페이로드 부분 (182) 에 저장되는 비트 스트림 (180) 의 신택스의 제 1 엘리먼트를 형성한다. 글로벌 회전 모션 파라미터는 비트 스트림의 신택스의 제 2 엘리먼트에 포함되며, 신택스의 상기 제 2 엘리먼트는 비트 스트림 (180) 의 헤더부 (181) 에 포함된다. 헤더부 (181) 는 무손실 방식으로 인코딩된다.
도 27은 도 17의 방법 (170) 의 일 실시형태를 나타낸다. 데이터 소스 (S) 는 도 15의 방법 (150) 의 제 2 실시형태 (도 26에 의해 도시됨) 에 의해 인코딩된 비트 스트림을 제공한다. 이 방법에서, 압축 루프는 HEVC, H.264/AVC와 같은 비디오 압축 표준에 따라 개시된다. 적어도 하나의 기준 이미지의 압축 해제 및 디코딩이 이미 수행되었다. 적어도 하나의 기준 이미지는 메모리에 저장되고 데이터 소스 (S) 로부터 추출된 GRM 파라미터와 연관된다. 단계 (171) 에서, 디코딩할 이미지에 응답하여 잔여 데이터, 모션 벡터 및 글로벌 회전 모션 파라미터에 대한 정보 데이터가 비트 스트림으로부터 획득된다. 단계 (172) 에서, 이미지는 정보 데이터에 따라 획득된 모션 예측 이미지와 잔여 이미지를 합산함으로써 디코딩된다. 디코딩할 이미지는 메모리에 저장된 기준 이미지와 관련하여 모션 보상 프로세스를 포함하는, 잘 알려진 압축 해제 프로세스에 따라 재구성된다. 단계 (173) 에서, 재구성된 이미지는 디코딩할 이미지와 연관된 글로벌 회전 모션 파라미터에 따라 글로벌 회전 모션 보상된다. 재구성된 이미지는 예를 들어 로컬 수평 평면에서 북쪽 방향을 사용하여 좌표계에서 디코딩할 이미지와 연관된 GRM 파라미터에 의해 인코딩된 절대 각도 값에 대응하는 3 차원 각도로 회전된다. 변형예에서, 재구성된 이미지는 그 GRM 파라미터로 인코딩된 각도와 디코딩할 이미지를 재구성하는데 사용되는 기준 이미지와 연관된 GRM 파라미터로 인코딩된 각도 간의 차이에 대응하는 3 차원 각도로 회전된다.
도 18은 도 15의 방법 (150) 에 따라 인코딩된 이미지들의 시퀀스를 나타내는 데이터를 운반하는 비트 스트림의 데이터 구조의 특정 실시형태를 나타낸다. 시퀀스의 엔트로피 인코딩된 이미지는 비트 스트림 (180) 의 페이로드 부분 (182) 에 저장되는 비트 스트림 (180) 의 신택스의 제 1 엘리먼트를 형성한다. 글로벌 회전 모션 파라미터는 비트 스트림의 신택스의 제 2 엘리먼트에 포함되며, 신택스의 상기 제 2 엘리먼트는 비트 스트림 (180) 의 헤더부 (181) 에 포함된다. 헤더부 (181) 는 무손실 방식으로 인코딩된다.
도 19는 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 인코딩하기 위한 디바이스의 제 1 실시형태의 블록도를 도시한다. 도 19의 디바이스의 모듈은 도 24의 방법의 단계들을 구현한다.
시간 예측 기반 코딩 (즉, INTER 코딩) 과 관련하여 디바이스의 기능 모듈만이 도 19에 도시되어 있다. 종래 기술에서 잘 알려진 다른 모듈 (도시되지 않음) 은 예를 들어 공간 예측을 사용하거나 사용하지 않는 INTRA 코딩을 구현한다.
인코딩될 이미지 (I1) 는 모듈 (191) 에 의해 입력으로서 취해지며, 모듈 (191) 은 예를 들어 픽셀에 기초하여, 현재의 이미지 (I1) 로부터 예측 이미지 (Ip) 를 추출하여 잔여 이미지 (Ir) 를 생성한다. 모듈 (192) 은 잔여 이미지 (Ir) 를 변환하고 정량화한다. 변환 (T) 은 예를 들어 이산 코사인 변환 (DCT), 블록 기반의 변환 또는 웨이블릿 기반의 변환이다. 모듈 (193) 은 역 연산: 역 양자화 (IQ), 뒤이은 역 변환 (IT) 을 구현한다. 모듈 (194) 은 디코딩된 픽처 버퍼 (DPB) 인 메모리 (모듈 (195)) 에 저장되는 재구성된 (별칭 디코딩된) 이미지를 생성하기 위해, 예를 들어 픽셀에 기초하여, 이미지 출력 모듈 (193) 및 예측 이미지 (Ip) 를 병합한다. 모듈 (193) 은 시간적 예측 모듈에 대한 기준 입력 이미지로서 사용될 수 있는 이미지 (I2) 를 메모리 (모듈 (195)) 에서 생성 및 저장한다.
모듈 (196) 은 메모리 (195) 에 저장된 기준 입력 이미지 (I2) 와 글로벌 회전 모션 파라미터 (전방 방향의 각도) 를 입력으로 취한다. 현재 이미지의 각 픽셀의 겉보기 모션은 글로벌 회전 모션이 처음 적용되는 기준 입력 (I2) 에 따라 추가 모듈 (197) 에 의해 계산된다. 인코딩할 현재 이미지 (I1) 는 글로벌 회전 모션 파라미터 (GRM 파라미터) (α(t), β(t), γ(t)) 와 연관되고 m (x, y) 는 이 픽처에서의 픽셀이다. 디코딩된 픽처 버퍼 (모듈 195) 로부터의 재구성된 이미지 (I2) 는 GRM 파라미터 (α(t'), β(t'), γ(t')) 와 연관되고 n(x', y') 는 이 픽처에서의 픽셀이다. 글로벌적으로 모션 보상된 기준 픽처는 다음과 같이 I2에서 해당 픽셀을 획득하기 위해 I1의 각 픽셀에 모션 보상을 적용하여 재구성된다: (x, y) → (x', y'). 좌표 (x', y') 는 글로벌 회전 모션 보상을 적용하여 계산된다. 지점 (Mt') 가 계산된다. Mt’ 는 순간 t'에서의 이미지 (I1) 의 기준 프레임에 대한 순간 t 에서의 이미지 (I1) 의 기준 프레임으로 표현되는 픽셀 m(x, y) 의 투영에 대응한다. 방정식 [eq.3]은 축 시스템 변경 변환을 연산한다.
[eq. 3]
Figure pct00009
함수 fProj 는 이미지 (I1 및 I2) 의 맵핑에 따라 정의된 함수이고; R t 는 GRM 파라미터 (α(t), β(t), γ(t)) 에 따라 계산되는 회전 행렬이고; 그리고 R t’ 는 GRM 파라미터 (α(t'), β(t'), γ(t')) 에 따라 계산된 회전 행렬이다. 픽셀 n (x', y') 은 방정식 [eq. 4] 에 따라 기준 입력 이미지 (I2) 에 지점 (Mt') 을 투영함으로써 계산된다.
[eq. 4]
Figure pct00010
[eq. 5]
Figure pct00011
방정식 [eq. 5]는 한번에 글로벌 회전 모션 보상을 표현한다. 도 19의 실시형태의 변형예에서, 이미지 (I1 및 I2) 는 도 13의 이미지 (131) 및 도 14의 이미지 (141) 로 도시된 바와 같이 등장방형 맵핑에 따라 인코딩된다. 등장방형 맵핑은 함수 fProj 를 다음과 같이 정의한다.
Figure pct00012
도 19의 실시형태의 변형예에서, 이미지 (I1 및 I2) 는 도 13의 이미지 (131) 및 도 14의 이미지 (141) 로 도시된 바와 같이 도 13의 레이아웃 (134) 과 큐브 맵핑에 따라 인코딩된다. 이 경우, 함수 fProj는 다음과 같이 정의된다.
Figure pct00013
식중 w는 이미지 폭의 3 분의 1이고 h는 이미지 높이의 절반이다. 역 함수 f-1 은 위의 방정식으로부터 간단하다.
Figure pct00014
역 함수 Proj 는 위의 방정식으로부터 간단하다.
도 19에 도시된 모듈 (197) 에서, 모듈 (152) 에서 출력되는 이미지 (I3) 에 대해 모션 보상 및 예측이 수행된다. 모듈 (196) 은 인코딩할 이미지 (I1) 와 글로벌 회전 모션 보상된 기준 이미지 (I3) 사이의 적어도 하나의 모션 벡터를 추정한다. 잘 알려진 프로세스에 따라, 인코딩할 이미지 (I1) 의 픽셀과 기준 이미지 (I3) 의 픽셀 사이에 컴퓨팅된 오류를 최소화하기 위해 또는 레이트 왜곡 비용과 같은 다른 메트릭을 최소화하기 위해, 모션 추정은 기준 이미지 (I3) 에서 모션 데이터, 예컨대 모션 벡터를 검색한다. 기준 이미지 (I3) 가 모듈 (196) 에 의해 글로벌 회전 모션 보상되었기 때문에, 모션 데이터의 검색이 용이해진다. 이미지 (I1) 는 예측 이미지 (Ip) 로서 인코딩된다.
모듈 (198) 은 양자화된 데이터를 코딩된 데이터의 비트 스트림 (S) 으로 엔트로피 인코딩한다. 이 모듈은 도 18과 관련하여 설명된대로 스트림을 생성한다. 비트 스트림의 신택스의 제 1 엘리먼트에서, 즉 비트 스트림 (180) 의 페이로드 부분 (182) 을 형성하는 신택스 엘리먼트에서, 모듈은 통상적인 CABAC (컨텍스트-적응 이진 산술 코딩) 을 사용하고 이미지 시퀀스를 나타내는 엔트로피 인코딩된 데이터를 저장한다. 비트 스트림 (180) 의 헤더부 (181) 를 형성하는 신택스의 제 2 엘리먼트에서, 모듈은, 다른 데이터 중에서, 무손실 방식으로 이미지의 식별자와 연관된 글로벌 회전 모션 파라미터들을 인코딩한다.
도 20은 도 24에 도시된 방법 (150) 의 제 1 실시형태에 따라 인코딩된 비트 스트림 (S) 을 디코딩하도록 구성된 디바이스의 일 실시형태를 도시한다. 비트 스트림 (S) 은 이미지들의 시퀀스를 나타내며, 도 18 및 도 19와 관련하여 기재된 신택스의 2 개의 엘리먼트들을 포함한다. 도 20의 디바이스의 모듈은 도 25의 방법의 단계들을 구현한다.
모듈 (201) 은 디코딩할 이미지들의 코딩된 시퀀스에 관련된 잔여 데이터, 및 예를 들어 코딩 모드, 이미지들, 모션 데이터를 인코딩하는데 사용되는 맵핑 또는 상당한 맵과 같은 디코딩된 이미지를 재구성하기 위해 필요한 신택스 엘리먼트들을 엔트로피 디코딩하기 위한 CABAC를 구현한다. 모듈은 또한, 각 이미지와 연관되어, 글로벌 회전 모션 파라미터를 추출한다. 도 20에 도시되지 않은 변형예에 따르면, 모션 데이터를 디코딩하는 것은 모션 추정을 포함한다. 디코딩될 이미지에 관련된 디코딩된 비디오 데이터는 모듈 (202) 로 송신되며, 모듈 (202) 은 역 양자화 이후에 역 변환을 적용한다. 모듈 (202) 은 도 19의 모듈 (193) 과 동등하다. 모듈 (202) 은 모듈 (202) 에서 출력되는 잔여 이미지 및 디코딩될 이미지를 나타내는 디코딩된 이미지 (I6) 를 생성하기 위한 예측 이미지 (Ip) 를 예를 들어 픽셀 단위로 병합하는 모듈 (203) 에 링크된다. 재구성된 이미지 (I6) 는 또한 메모리 (204) 에 저장된다.
모듈 (205) 은 메모리 (204) 에 저장된 기준 입력 이미지 (I4) 및 이 이미지 (I4) 와 연관된 글로벌 회전 모션 파라미터 및 디코딩하기 위해 현재 이미지와 연관된 GRM 파라미터를 입력으로서 취한다. 현재 이미지의 각 픽셀의 겉보기 모션은 글로벌 회전 모션이 처음 적용되는 기준 입력 (I2) 에 따라 추가 모듈 (206) 에 의해 계산된다. 글로벌적으로 모션 보상된 기준 픽처는 다음과 같이 I5의 해당 픽셀을 획득하기 위해 I4의 각 픽셀에 모션 보상을 적용하여 재구성된다. (x, y) → (x', y'). 좌표 (x', y') 는 도 19의 모듈 (196) 과 관련하여 설명된 바와 같이 글로벌 회전 모션 보상을 적용함으로써 계산된다. 함수 f, f -1 , ProjProj -1 은 이미지 인코딩에 사용되는 맵핑에 따라 선택된다.
모션 보상 및 예측은 모듈 (206) 에 의해 모듈 (205) 에서 출력되는 이미지 (I5) 상에서 수행된다. 모듈 (206) 은 디코딩할 이미지와 글로벌 회전 모션 보상된 기준 이미지 (I5) 사이의 적어도 하나의 모션 벡터를 추정한다. 잘 알려진 프로세스에 따라, 디코딩할 이미지의 픽셀과 기준 이미지 (I5) 의 픽셀 사이에 컴퓨팅된 오류를 최소화하기 위해 또는 레이트 왜곡 비용과 같은 다른 메트릭을 최소화하기 위해, 모션 추정은 기준 이미지 (I5) 에서 모션 데이터, 예컨대 모션 벡터를 검색한다. 기준 이미지 (I5) 가 모듈 (205) 에 의해 글로벌 회전 모션 보상되었기 때문에, 모션 데이터의 검색이 용이해진다. 이미지는 예측 이미지 (Ip) 로서 인코딩된다.
도 21은 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 인코딩하도록 구성된 디바이스의 제 2 실시형태의 블록도를 도시한다. 도 21의 디바이스의 모듈은 도 26의 방법의 단계들을 구현한다.
모듈 (211) 은 이미지 (I1) 를 획득하도록 구성된다. 모듈 (211) 은 예를 들어 인코딩할 이미지 (I1) 와 연관된 GRM 파라미터, 및 시퀀스의 제 1 이미지의 GRM 파라미터 또는 인트라-예측으로만 코딩된 최종 이미지의 GRM 파라미터와 같은 기준 글로벌 회전 모션 파라미터에 따라 도 19와 관련하여 기술된 바와 같은 함수 f , f -1 , ProjProj -1 을 적용함으로써 글로벌 회전 모션 보상을 수행한다. 이미지 (I1) 는 기준 이미지의 전방 방향에 따라 맵핑된다. 기준 이미지와 모듈 (211) 에서 출력되는 GRM 보상된 이미지 (I3) 간의 픽셀 차이는 장면에서의 오브젝트의 겉보기 모션에 기인하고 더 이상 전방 방향의 회전에 기인하지 않는다. GRM 보상된 이미지 (I3) 는 모듈 (213) 의 구조에 의해 종래 기술에서 잘 알려진 방법에 따라 모션 보상되고 모듈 (213) 에 의해 엔트로피 인코딩된다. 모듈 (213) 은 양자화된 데이터를 코딩된 데이터의 비트 스트림 (S) 으로 엔트로피 인코딩한다. 이 모듈은 도 18과 관련하여 설명된대로 스트림을 생성한다. 비트 스트림의 신택스의 제 1 엘리먼트에서, 즉 비트 스트림 (180) 의 페이로드 부분 (182) 을 형성하는 신택스 엘리먼트에서, 모듈은 통상적인 CABAC (컨텍스트-적응 이진 산술 코딩) 을 사용하고 이미지 시퀀스를 나타내는 엔트로피 인코딩된 데이터를 저장한다. 비트 스트림 (180) 의 헤더부 (181) 를 형성하는 신택스의 제 2 엘리먼트에서, 모듈은, 다른 데이터 중에서, 무손실 방식으로 이미지의 식별자와 연관된 글로벌 회전 모션 파라미터들을 인코딩한다.
도 22는 도 26에 도시된 방법 (150) 의 제 2 실시형태에 따라 인코딩된 비트 스트림 (S) 을 디코딩하도록 구성된 디바이스의 일 실시형태를 도시한다. 비트 스트림 (S) 은 이미지들의 시퀀스를 나타내며, 도 18 및 도 21와 관련하여 기재된 신택스의 2 개의 엘리먼트들을 포함한다. 도 22의 디바이스의 모듈은 도 27의 방법의 단계들을 구현한다.
모듈 (221) 은 디코딩할 이미지들의 코딩된 시퀀스에 관련된 잔여 데이터, 및 예를 들어 코딩 모드, 이미지들, 모션 데이터를 인코딩하는데 사용되는 맵핑 또는 상당한 맵과 같은 디코딩된 이미지를 재구성하기 위해 필요한 신택스 엘리먼트들을 엔트로피 디코딩하기 위한 CABAC를 구현한다. 모듈은 또한 각 이미지와 연관된 글로벌 회전 모션 파라미터를 추출한다. 도 20에 도시되지 않은 변형예에 따르면, 모션 데이터를 디코딩하는 것은 모션 추정을 포함한다. 디코딩될 이미지에 관련된 디코딩된 비디오 데이터는 모듈 (222) 로 송신되며, 모듈 (222) 은 역 양자화 이후에 역 변환을 적용한다. 모듈 (222) 은 도 19의 모듈 (193) 과 동등하다. 모듈 (222) 은 단계 (222) 에서 출력되는 잔여 이미지 및 디코딩될 이미지를 나타내는 디코딩된 이미지 (I7) 를 생성하기 위한 예측 이미지 (Ip) 를 예를 들어 픽셀 단위로 병합하는 모듈 (223) 에 링크된다. 재구성된 이미지 (I7) 는 또한 메모리 (224) 에 저장된다. 모션 보상 및 예측은 모듈 (225) 에 의해 메모리 (224) 에서 출력되는 이미지 상에서 수행된다. 모듈 (226) 은 디코딩할 이미지와 글로벌 회전 모션 보상된 기준 이미지 사이의 적어도 하나의 모션 벡터를 추정한다. 잘 알려진 프로세스에 따라, 디코딩할 이미지의 픽셀과 기준 이미지의 픽셀 사이에 컴퓨팅된 오류를 최소화하기 위해 또는 레이트 왜곡 비용과 같은 임의의 다른 메트릭을 최소화하기 위해, 모션 추정은 기준 이미지에서 모션 데이터, 예컨대 모션 벡터를 검색한다. 기준 이미지가 모듈에 의해 글로벌 회전 모션 보상되었기 때문에, 모션 데이터의 검색이 용이해진다. 디코딩할 이미지는 예측 이미지 (Ip) 로서 인코딩된다.
도 23은 도 15, 16, 17, 19, 20, 21 또는 22와 관련하여 설명된 방법을 구현하도록 구성된 장치 (230) 의 하드웨어 실시형태를 도시한다. 이 예에서, 디바이스 (230) 는 클럭 신호도 송신하는 데이터 및 어드레스의 버스 (231) 에 의해 서로 접속되는 이하의 엘리먼트들을 포함한다:
- 예를 들어 DSP (또는 디지털 신호 프로세서) 인 마이크로 프로세서 (232) (또는 CPU);
- ROM (Read Only Memory) 유형의 비휘발성 메모리 (233);
- 랜덤 액세스 메모리 또는 RAM (234);
- 애플리케이션으로부터 송신할 데이터의 수신을 위한 I/O 인터페이스 (235); 및
- 랜덤 액세스 메모리의 레지스터를 내장할 수 있는 그래픽 카드 (236);
- 전원 (237).
일 예에 따르면, 전원 (237) 은 디바이스 외부에 있다. 언급된 각각의 메모리에서, 명세에서 사용된 "레지스터”라는 단어는 작은 용량의 영역 (일부 비트) 또는 매우 큰 영역 (예를 들어, 전체 프로그램 또는 다량의 수신 또는 디코딩된 데이터) 에 해당할 수 있다. ROM (233) 은 적어도 프로그램 및 파라미터를 포함한다. ROM (233) 은 본 원리에 따라 기술을 수행하기 위한 알고리즘 및 명령을 저장할 수 있다. 스위치 온되면, CPU (232) 는 RAM에 프로그램을 업로드하고 대응하는 명령을 실행한다.
RAM (234) 은, 레지스터에, CPU (232) 에 의해 실행되고 디바이스 (230) 의 스위치 온 이후에 업로드된 프로그램, 레지스터 내의 입력 데이터, 레지스터에서의 방법의 다른 상태의 중간 데이터, 및 레지스터에서의 방법의 실행을 위해 사용된 다른 변수를 포함한다.
여기에 설명된 구현예들은, 예를 들어, 방법 (150, 160 또는 170) 중 하나의 모듈 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림 또는 신호로 구현될 수도 있다. 단일 구현 형태의 맥락에서만 논의 (예를 들어, 방법 또는 디바이스로서만 논의) 되었더라도, 논의된 피쳐들의 구현은 또한 다른 형태들 (예를 들어, 프로그램) 로 구현될 수도 있다. 장치는, 예를 들어, 도 2 내지 도 12에 설명된 시스템의 컴포넌트 중 하나일 수 있는 적절한 하드웨어, 소프트웨어 및 펌웨어로 구현될 수 있다. 예를 들어, 방법들 및 그 모듈들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적 회로 또는 프로그래머블 로직 디바이스를 일반적으로 포함하는 프로세싱 디바이스들을 지칭하는, 예를 들어 프로세서와 같은 장치에서 구현될 수도 있다. 프로세서는 또한 통신 디바이스, 예를 들어 컴퓨터, 셀 폰, 휴대용/개인 디지털 보조 디바이스 ("PDA"), 셋톱 박스 및 최종 사용자들 사이의 정보 통신을 용이하게 하는 다른 디바이스들, 예를 들어 도 2 내지 도 12에 설명된 시스템의 컴포넌트를 포함한다.
도 15, 도 19 및 도 21에 도시된 바와 같이 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 시퀀스 이미지의 이미지를 인코딩하는 예에 따르면, 이미지 시퀀스를 나타내는 비트 스트림이 소스로부터 획득된다. 예를 들어, 소스는 다음을 포함하는 세트에 속한다:
- 로컬 메모리 (233, 234 또는 236), 예를 들어 비디오 메모리 또는 RAM (또는 랜덤 액세스 메모리), 플래시 메모리, ROM (또는 판독 전용 메모리), 하드 디스크:
- 스토리지 인터페이스 (235), 예를 들어 매스 스토리지, RAM, 플래시 메모리, ROM, 광학 디스크 또는 자기 서포트를 갖는 인터페이스; 및
- 통신 인터페이스 (235), 예를 들어 유선 인터페이스 (예를 들어, 버스 인터페이스, 광역 네트워크 인터페이스, 로컬 영역 네트워크 인터페이스) 또는 무선 인터페이스 (예컨대, IEEE 802.11 인터페이스 또는 Bluetooth® 인터페이스).
일 특정 실시형태에 따르면, 인코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 시퀀스 이미지의 이미지를 인코딩하는 방법 (150) 의 단계를 구현하는 알고리즘은, 이들 단계를 구현하는 디바이스 (230) 와 연관된 그래픽 카드 (236) 의 메모리 GRAM에 저장된다. 변형예에 따르면, RAM (234) 의 일부는 알고리즘의 저장을 위해 CPU (232) 에 의해 할당된다. 이러한 단계들은, 로컬 메모리, 예를 들어 비디오 메모리 (234), RAM (234), ROM (233), 플래시 메모리 (233) 및 하드 디스크 (233), 스토리지 인터페이스 (235), 예를 들어 매스 스토리지, RAM, ROM, 플래시 메모리, 광학 디스크 또는 자기 서포트를 갖는 인터페이스를 포함하는 세트에 속하는 목적지에 전송되고 및/또는 통신 인터페이스 (235), 예를 들어 포인트 투 포인트 링크, 버스, 포인트 투 멀티포인트 링크 또는 브로드캐스트 네트워크에 대한 인터페이스로부터 수신되는, 비디오 스트림의 생성을 유도한다.
디코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스 중 일 이미지를 디코딩하는 예에 따라, 이미지들의 시퀀스를 나타내는 스트림이 소스로부터 획득된다. 예시적으로, 비트 스트림은 로컬 메모리, 예를 들어 비디오 메모리 (234), RAM (234), ROM (233), 플래시 메모리 (233) 또는 하드 디스크 (233) 로부터 판독된다. 변형예에서, 스트림은 스토리지 인터페이스 (235), 예를 들어 매스 스토리지, RAM, ROM, 플래시 메모리, 광학 디스크 또는 자기 서포트를 갖는 인터페이스로부터 수신되고 및/또는 통신 인터페이스 (235), 예를 들어, 포인트 투 포인트 링크, 버스, 포인트 투 멀티포인트 링크 또는 브로드캐스트 네트워크에 대한 인터페이스로부터 수신된다.
일 특정 실시형태에 따르면, 디코딩될 이미지에 응답하여 입력 이미지를 모션 보상함으로써 이미지들의 시퀀스의 이미지를 디코딩하는 방법의 단계를 구현하는 알고리즘은, 이들 단계를 구현하는 디바이스 (230) 와 연관된 그래픽 카드 (236) 의 메모리 GRAM에 저장된다. 변형예에 따르면, RAM (234) 의 일부는 알고리즘의 저장을 위해 CPU (232) 에 의해 할당된다. 이러한 단계들은 예를 들어 다음과 같은 도 2 내지 도 12에 설명된 시스템의 컴포넌트를 포함하는 세트에 속하는 목적지로 전송되는 비디오의 구성을 유도한다:
- 모바일 디바이스;
- 통신 디바이스;
- 게임 디바이스;
- 셋톱 박스;
- TV 세트;
- 태블릿 (또는 태블릿 컴퓨터);
- 랩탑;
- 디스플레이 및
- 디코딩 칩.
당연히, 본 개시물은 이전에 설명된 실시형태들에 한정되지 않는다.
특히, 본 개시물은 이미지들의 시퀀스를 인코딩 및 디코딩하는 방법에 제한되지 않고, 디코딩된 비디오를 디스플레이하는 임의의 방법 및 이 디스플레이 방법을 구현하는 임의의 디바이스, 예를 들어 도 2 내지 도 12의 디스플레이 디바이스로 확장된다. 비트 스트림을 인코딩 및 디코딩하는데 필요한 계산들의 구현은 셰이더 유형 마이크로프로그램에서의 구현에 한정되지 않고, 임의의 프로그램 유형, 예를 들어, CPU 유형 마이크로프로세서에 의해 실행될 수 있는 프로그램에서의 구현으로도 확장된다. 본 개시물의 방법들의 사용은 라이브 활용 (live utilisation) 에 한정되지 않고, 예를 들어 레코딩 스튜디오에서 포스트프로덕션 프로세싱으로 알려진 프로세싱을 위한 임의의 다른 활용으로도 확장된다.
여기에 설명된 구현들은 예를 들어, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림 또는 신호로 구현될 수도 있다. 단일 구현 형태의 맥락에서만 논의 (예를 들어, 방법 또는 디바이스로서만 논의) 되었더라도, 논의된 피쳐들의 구현은 또한 다른 형태들 (예를 들어, 프로그램) 로 구현될 수도 있다. 장치는 예를 들어 적절한 하드웨어, 소프트웨어 및 펌웨어로 구현될 수도 있다. 예를 들어, 방법들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적 회로 또는 프로그래머블 로직 디바이스를 일반적으로 포함하는 프로세싱 디바이스들을 지칭하는, 예를 들어 프로세서와 같은 장치에서 구현될 수도 있다. 프로세서들은 또한 예를 들어, 스마트폰, 태블릿, 컴퓨터, 이동 전화, 휴대/개인 휴대 정보 단말기 ("PDA") 및 최종 사용자들 간의 정보 통신을 가능하게 하는 다른 디바이스들와 같은 통신 디바이스들을 포함한다.
본 명세서에 설명된 다양한 프로세스 및 피쳐들의 구현은 다양한 상이한 장비 또는 애플리케이션, 특히 예를 들어, 데이터 인코딩, 데이터 디코딩, 뷰 생성, 텍스처 프로세싱, 및 이미지 및 관련 텍스처 정보 및/또는 깊이 정보의 다른 프로세싱와 연관된 장비 또는 애플리케이션에서 구체화될 수도 있다. 이러한 장비의 예들은 인코더, 디코더, 디코더로부터의 출력을 프로세싱하는 포스트 프로세서, 인코더에 입력을 제공하는 프리 프로세서 (pre-processor), 비디오 코더, 비디오 디코더, 비디오 코덱, 웹 서버, 셋톱 박스, 랩톱, 퍼스널 컴퓨터, 휴대 전화, PDA 및 다른 통신 디바이스들을 포함한다. 명백해야 하는 바처럼, 장비는 이동식일 수도 있고 심지어 이동 차량에 설치될 수도 있다.
추가적으로, 방법들은 프로세서에 의해 수행되는 명령들에 의해 구현될 수도 있으며, 그러한 명령들 (및/또는 구현에 의해 생성된 데이터 값들) 은 예를 들어, 집적 회로, 소프트웨어 캐리어 또는 다른 스토리지 디바이스, 이를테면 예를 들어 하드 디스크, 컴팩트 디스켓 ("CD"), (예를 들어, 종종 디지털 다용도 디스크 또는 디지털 비디오 디스크로 지칭되는 DVD 와 같은) 광학 디스크, 랜덤 액세스 메모리 ("RAM"), 또는 판독 전용 메모리 ("ROM") 와 같은 프로세서 판독가능 매체에 저장될 수도 있다. 명령들은 프로세서 판독가능 매체 상에 유형적으로 구체화된 애플리케이션 프로그램을 형성할 수도 있다. 명령들은 예를 들어 하드웨어, 펌웨어, 소프트웨어 또는 조합에 있을 수도 있다. 명령들은 예를 들어 운영 체제, 별도의 애플리케이션 또는 이 둘의 조합에서 발견될 수도 있다. 따라서, 프로세서는 프로세스를 수행하도록 구성된 디바이스 및 프로세스를 수행하기 위한 명령을 갖는 프로세서 판독가능 매체 (이를테면, 스토리지 디바이스) 를 포함하는 디바이스 양자 모두로서 특징지어질 수도 있다. 또한, 프로세서 판독가능 매체는 명령들에 추가하여 또는 명령들 대신에, 구현에 의해 생성된 데이터 값들을 저장할 수도 있다.
당업자에게 명백한 바와 같이, 구현들은 예를 들어 저장되거나 송신될 수도 있는 정보를 운반하도록 포맷팅된 다양한 신호들을 생성할 수도 있다. 정보는 예를 들어 방법을 수행하기 위한 명령들 또는 설명된 구현들 중 하나에 의해 생성된 데이터를 포함할 수도 있다. 예를 들어, 신호는 설명된 실시형태의 신택스를 기록 또는 판독하기 위한 규칙들을 데이터로서 운반하거나, 또는 설명된 실시형태에 의해 기록된 실제 신택스 값들을 데이터로서 운반하도록 포맷팅될 수도 있다. 이러한 신호는, 예를 들어 전자기파 (예를 들어, 스펙트럼의 무선 주파수 부분을 사용) 또는 기저대역 신호로서 포맷팅될 수도 있다. 포맷팅은, 예를 들어 데이터 스트림을 인코딩하고 인코딩된 데이터 스트림로 캐리어를 변조하는 것을 포함할 수도 있다. 신호가 운반하는 정보는 예를 들어, 아날로그 또는 디지털 정보일 수도 있다. 신호는 알려진 바와 같이 다양한 상이한 유선 또는 무선 링크를 통해 송신될 수도 있다. 신호는 프로세서 판독가능 매체에 저장될 수도 있다.
다수의 구현들이 설명되었다. 그럼에도 불구하고, 다양한 수정이 이루어질 수 있음이 이해될 것이다. 예를 들어, 상이한 구현들의 엘리먼트들은 조합, 보충, 수정 또는 제거되어 다른 구현들을 생성할 수도 있다. 또한, 당업자는 다른 구조들 및 프로세스들이 개시된 것들을 대체할 수도 있고 결과적인 구현들은 적어도 실질적으로 동일한 방식(들)으로, 적어도 실질적으로 동일한 기능(들)을 수행하여, 적어도 실질적으로 개시된 구현 예들과 동일한 결과(들)를 달성할 것이라고 이해할 것이다. 따라서, 이들 및 다른 구현들은 본원에 의해 고려된다.

Claims (15)

  1. 이미지들의 시퀀스 중 제 1 이미지 (I1) 를 스트림에 인코딩하는 방법으로서,
    - 제 2 이미지 (I3) 를 획득하는 단계로서, 상기 제 1 이미지로부터 획득되는 제 3 이미지 (I2) 에 회전 파라미터들에 따라 글로벌 회전 모션 보상을 적용하여, 상기 제 2 이미지 (I3) 를 획득하는 단계; 및
    - 상기 제 2 이미지 (I3) 를 모션 보상 모듈의 입력 이미지로 사용함으로써 상기 제 1 이미지 (I1) 및 상기 제 1 이미지와 연관된 회전 파라미터들을 상기 스트림에 인코딩하는 단계를 포함하는, 인코딩하는 방법.
  2. 제 1 항에 있어서,
    상기 제 3 이미지는 상기 제 1 이미지인, 인코딩하는 방법.
  3. 제 1 항에 있어서,
    상기 제 3 이미지는:
    - 상기 제 1 이미지에 응답하여 잔여 이미지를 획득하는 단계;
    - 상기 제 1 이미지에 응답하여 모션 예측 이미지를 획득하는 단계
    에 의해 상기 제 1 이미지로부터 획득되고, 그리고
    상기 제 3 이미지는 상기 잔여 이미지를 상기 모션 예측 이미지에 합산함으로써 획득된 재구성 이미지인, 인코딩하는 방법.
  4. 스트림으로부터 이미지들의 시퀀스 중 제 1 이미지를 디코딩하는 방법으로서,
    - 상기 스트림으로부터 제 2 이미지 및 상기 제 2 이미지와 연관된 회전 파라미터들을 획득하는 단계; 및
    - 상기 회전 파라미터들에 따라 글로벌 회전 모션 보상을 제 3 이미지 (I4, I7) 에 적용하여 상기 제 1 이미지를 디코딩하는 단계로서, 상기 제 3 이미지는 모션 보상 모듈의 출력 이미지이고, 상기 출력 이미지는 상기 제 2 이미지로부터 획득되는, 상기 제 1 이미지를 디코딩하는 단계를 포함하는, 디코딩하는 방법.
  5. 제 4 항에 있어서,
    상기 제 3 이미지는 디코딩된 상기 제 1 이미지인, 디코딩하는 방법.
  6. 제 4 항에 있어서,
    상기 제 3 이미지는:
    - 상기 제 2 이미지에 응답하여 잔여 이미지를 획득하는 단계;
    - 상기 제 2 이미지에 응답하여 모션 예측 이미지를 획득하는 단계
    에 의해 획득되고, 그리고
    상기 제 3 이미지는 상기 잔여 이미지를 상기 모션 예측 이미지에 합산함으로써 획득된 재구성 이미지인, 디코딩하는 방법.
  7. 이미지들의 시퀀스를 나타내는 데이터를 운반하는 비트 스트림으로서,
    상기 데이터는:
    - 상기 이미지들의 시퀀스를 나타내는 신택스의 제 1 엘리먼트; 및
    - 상기 이미지들의 시퀀스 중 적어도 하나의 이미지의 식별자와 연관된 파라메트릭 글로벌 회전 모션의 파라미터들을 나타내는 신택스의 제 2 엘리먼트를 포함하는 것을 특징으로 하는 비트 스트림.
  8. 이미지들의 시퀀스 중 제 1 이미지 (I1) 를 스트림에 인코딩하기 위한 디바이스로서,
    상기 디바이스는 적어도 프로세서와 연관된 메모리를 포함하며, 상기 프로세서는:
    - 제 2 이미지 (I3) 를 획득하는 것으로서, 상기 제 1 이미지로부터 획득되는 제 3 이미지 (I2) 에 회전 파라미터들에 따라 글로벌 회전 모션 보상을 적용하여, 상기 제 2 이미지 (I3) 를 획득하고; 그리고
    - 상기 제 2 이미지 (I3) 를 모션 보상 모듈의 입력 이미지로 사용함으로써 상기 제 1 이미지 (I1) 및 상기 제 1 이미지와 연관된 회전 파라미터들을 상기 스트림에 인코딩하도록 구성되는, 인코딩하기 위한 디바이스.
  9. 제 8 항에 있어서,
    상기 제 3 이미지는 상기 제 1 이미지인, 인코딩하기 위한 디바이스.
  10. 제 8 항에 있어서,
    상기 제 3 이미지는:
    - 상기 제 1 이미지에 응답하여 잔여 이미지를 획득하는 것;
    - 상기 제 1 이미지에 응답하여 모션 예측 이미지를 획득하는 것
    에 의해 상기 제 1 이미지로부터 획득되고, 그리고
    상기 제 3 이미지는 상기 잔여 이미지를 상기 모션 예측 이미지에 합산함으로써 획득된 재구성 이미지인, 인코딩하기 위한 디바이스.
  11. 스트림으로부터 이미지들의 시퀀스 중 제 1 이미지를 디코딩하기 위한 디바이스로서,
    상기 디바이스는 적어도 프로세서와 연관된 메모리를 포함하며, 상기 프로세서는:
    - 상기 스트림으로부터 제 2 이미지 및 상기 제 2 이미지와 연관된 회전 파라미터들을 획득하고; 그리고
    - 상기 회전 파라미터들에 따라 글로벌 회전 모션 보상을 제 3 이미지 (I4, I7) 에 적용하여 상기 제 1 이미지를 디코딩하는 것으로서, 상기 제 3 이미지는 모션 보상 모듈의 출력 이미지이고, 상기 출력 이미지는 상기 제 2 이미지로부터 획득되는, 상기 제 1 이미지를 디코딩하도록 구성되는, 디코딩하기 위한 디바이스.
  12. 제 11 항에 있어서,
    상기 제 3 이미지는 디코딩된 상기 제 1 이미지인, 디코딩하기 위한 디바이스.
  13. 제 12 항에 있어서,
    상기 제 3 이미지는:
    - 상기 제 2 이미지에 응답하여 잔여 이미지를 획득하는 것;
    - 상기 제 2 이미지에 응답하여 모션 예측 이미지를 획득하는 것
    에 의해 획득되고, 그리고
    상기 제 3 이미지는 상기 잔여 이미지를 상기 모션 예측 이미지에 합산함으로써 획득된 재구성 이미지인, 디코딩하기 위한 디바이스.
  14. 프로세서로 하여금 제 2 항, 제 3 항, 제 5 항 또는 제 6 항 중 어느 한 항에 따른 방법의 단계들을 적어도 수행하게 하는 명령들을 저장한, 비일시적 프로세서 판독가능 매체.
  15. 비트스트림으로 인코딩된 큰 시야 비디오의 몰입형 렌더링을 위한 시스템으로서,
    - 데이터 네트워크로부터 상기 비트스트림을 수신하는 네트워크 인터페이스 (600),
    - 제 12 항 또는 제 13 항에 따른 상기 비트스트림을 디코딩하는 디바이스 (700),
    - 몰입형 렌더링 디바이스 (900) 를 적어도 포함하는, 몰입형 렌더링을 위한 시스템.
KR1020197008271A 2016-09-30 2017-09-21 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림 KR20190054076A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237012225A KR102658946B1 (ko) 2016-09-30 2017-09-21 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16306266.4A EP3301928A1 (en) 2016-09-30 2016-09-30 Methods, devices and stream to encode global rotation motion compensated images
EP16306266.4 2016-09-30
PCT/EP2017/073906 WO2018060048A1 (en) 2016-09-30 2017-09-21 Methods, devices and stream to encode global rotation motion compensated images

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237012225A Division KR102658946B1 (ko) 2016-09-30 2017-09-21 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림

Publications (1)

Publication Number Publication Date
KR20190054076A true KR20190054076A (ko) 2019-05-21

Family

ID=57138002

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197008271A KR20190054076A (ko) 2016-09-30 2017-09-21 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림
KR1020237012225A KR102658946B1 (ko) 2016-09-30 2017-09-21 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237012225A KR102658946B1 (ko) 2016-09-30 2017-09-21 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림

Country Status (9)

Country Link
US (1) US11812066B2 (ko)
EP (2) EP3301928A1 (ko)
JP (1) JP7217226B2 (ko)
KR (2) KR20190054076A (ko)
CN (1) CN110024404B (ko)
BR (1) BR112019006250A2 (ko)
CA (1) CA3038689A1 (ko)
MX (1) MX2019003587A (ko)
WO (1) WO2018060048A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560678B2 (en) * 2016-11-09 2020-02-11 Mediatek Inc. Method and apparatus having video encoding function with syntax element signaling of rotation information of content-oriented rotation applied to 360-degree image content or 360-degree video content represented in projection format and associated method and apparatus having video decoding function
WO2020053329A1 (en) * 2018-09-14 2020-03-19 Koninklijke Kpn N.V. Video coding based on global motion compensated motion vectors
US11356695B2 (en) 2018-09-14 2022-06-07 Koninklijke Kpn N.V. Video coding based on global motion compensated motion vector predictors
CN111225208B (zh) * 2018-11-27 2022-09-02 北京小米移动软件有限公司 视频编码方法及装置
EP3895425A4 (en) * 2018-12-14 2021-12-15 ZTE Corporation PROCESSING AN IMMERSIVE VIDEO BITSTREAM
KR102476057B1 (ko) * 2019-09-04 2022-12-09 주식회사 윌러스표준기술연구소 클라우드 가상 현실을 위한 imu 센서 데이터를 활용한 비디오 인코딩 및 디코딩 가속 방법 및 장치
CN114915791B (zh) * 2021-02-08 2023-10-20 荣耀终端有限公司 基于二维规则化平面投影的点云序列编解码方法及装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3505199B2 (ja) * 1992-06-30 2004-03-08 株式会社リコー ビデオカメラジッタ補正装置、データ圧縮装置、データ伸長装置、データ圧縮方法及びデータ伸長方法
US5844613A (en) 1997-03-17 1998-12-01 Microsoft Corporation Global motion estimator for motion video signal encoding
JP2005020478A (ja) 2003-06-27 2005-01-20 Olympus Corp 画像処理装置、画像処理方法及び画像処理プログラム
CN1258925C (zh) * 2003-06-27 2006-06-07 中国科学院计算技术研究所 多视角视频编解码预测补偿方法及装置
KR100703283B1 (ko) 2004-03-15 2007-04-03 삼성전자주식회사 회전 매칭을 통해 움직임을 예측하는 영상 부호화 장치 및방법
JP4965429B2 (ja) 2004-04-02 2012-07-04 トムソン ライセンシング 複雑度スケーラブルなビデオエンコーダの方法及び装置
KR101365445B1 (ko) * 2007-01-03 2014-02-19 삼성전자주식회사 전역 및 국부 움직임 보상을 순차적으로 이용하는 움직임보상 방법, 복호화 방법, 장치, 인코더 및 디코더
CN101350920A (zh) 2007-07-17 2009-01-21 北京华辰广正科技发展有限公司 一种面向全景视频的全局运动估计方法
JP2009081622A (ja) 2007-09-26 2009-04-16 Oki Semiconductor Co Ltd 動画像圧縮符号化装置
US10104361B2 (en) * 2014-11-14 2018-10-16 Samsung Electronics Co., Ltd. Coding of 360 degree videos using region adaptive smoothing
CN107409231B (zh) * 2015-03-05 2021-05-11 索尼公司 图像处理装置和图像处理方法
US11228754B2 (en) * 2016-05-06 2022-01-18 Qualcomm Incorporated Hybrid graphics and pixel domain architecture for 360 degree video
US10887577B2 (en) * 2016-05-26 2021-01-05 Lg Electronics Inc. Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, and apparatus for receiving 360-degree video
US10127637B2 (en) * 2016-08-30 2018-11-13 Adobe Systems Incorporated Automatic orientation adjustment of spherical panorama digital images
US10390039B2 (en) * 2016-08-31 2019-08-20 Microsoft Technology Licensing, Llc Motion estimation for screen remoting scenarios
EP3518534B1 (en) 2016-09-26 2023-05-17 Sony Group Corporation Encoding device, encoding method, decoding device, decoding method, transmission device, and reception device

Also Published As

Publication number Publication date
CN110024404B (zh) 2023-06-20
CA3038689A1 (en) 2018-04-05
US20200045342A1 (en) 2020-02-06
US11812066B2 (en) 2023-11-07
EP3301928A1 (en) 2018-04-04
MX2019003587A (es) 2019-06-10
EP3520411A1 (en) 2019-08-07
CN110024404A (zh) 2019-07-16
KR20230051638A (ko) 2023-04-18
BR112019006250A2 (pt) 2019-06-18
JP2019534608A (ja) 2019-11-28
KR102658946B1 (ko) 2024-04-18
JP7217226B2 (ja) 2023-02-02
WO2018060048A1 (en) 2018-04-05

Similar Documents

Publication Publication Date Title
JP7008903B2 (ja) 適応イントラ予測による全方位映像符号化および復号のための方法および装置
JP7043148B2 (ja) 適応型イントラ最確モードを用いた全方位映像符号化のための方法および装置
KR102658946B1 (ko) 글로벌 회전 모션 보상된 이미지들을 인코딩하기 위한 방법, 디바이스 및 스트림
JP6939883B2 (ja) 自由視点映像ストリーミング用の復号器を中心とするuvコーデック
JP2019534620A (ja) 広視野ビデオを符号化及び復号する方法及び装置
KR20190055101A (ko) 전방향성 비디오를 인코딩하고 디코딩하기 위한 방법 및 장치
JP2019537294A (ja) 全方位ビデオのための補正された動き補償方法および装置
EP3301933A1 (en) Methods, devices and stream to provide indication of mapping of omnidirectional images
JP7177034B2 (ja) レガシー及び没入型レンダリングデバイスのために没入型ビデオをフォーマットする方法、装置、及びストリーム
US11653014B2 (en) Method and apparatus for encoding and decoding an omnidirectional video
KR20200053498A (ko) 전방위 비디오를 위한 움직임 벡터 예측기의 적응을 위한 방법 및 장치
WO2018130478A1 (en) Method and apparatus for coding/decoding a picture of an omnidirectional video
CN111095930A (zh) 用于全向视频的编码的方法和设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
A107 Divisional application of patent