KR102011430B1 - Method and apparatus for parallel processing image - Google Patents

Method and apparatus for parallel processing image Download PDF

Info

Publication number
KR102011430B1
KR102011430B1 KR1020170143426A KR20170143426A KR102011430B1 KR 102011430 B1 KR102011430 B1 KR 102011430B1 KR 1020170143426 A KR1020170143426 A KR 1020170143426A KR 20170143426 A KR20170143426 A KR 20170143426A KR 102011430 B1 KR102011430 B1 KR 102011430B1
Authority
KR
South Korea
Prior art keywords
perspective
image
processing
decoding
encoding
Prior art date
Application number
KR1020170143426A
Other languages
Korean (ko)
Other versions
KR20180059348A (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 PCT/KR2017/013284 priority Critical patent/WO2018097577A1/en
Publication of KR20180059348A publication Critical patent/KR20180059348A/en
Application granted granted Critical
Publication of KR102011430B1 publication Critical patent/KR102011430B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Abstract

본 개시는 복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 부/복호화 방법 및 장치에 관한 것이다. 본 개시에 따르는 영상의 부호화 방법은 상기 복수의 퍼스펙티브 영상 중 부호화 대상 퍼스펙티브 영상의 처리 순서를 식별하는 단계, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하는 단계, 및 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 부호화 대상 퍼스펙티브 영상을 변환하는 단계를 포함할 수 있다.The present disclosure relates to a method and apparatus for encoding / decoding an image including a plurality of perspective images. An encoding method of an image according to the present disclosure may include: identifying a processing order of an encoding target perspective image among the plurality of perspective images, determining whether the identified processing sequence is the same as a predetermined processing sequence, and the identified If the processing sequence is not the same as the predetermined processing sequence, the method may include converting the encoding target perspective image.

Description

영상 병렬 처리 방법 및 장치{METHOD AND APPARATUS FOR PARALLEL PROCESSING IMAGE}Image parallel processing method and apparatus {METHOD AND APPARATUS FOR PARALLEL PROCESSING IMAGE}

본 개시는 영상의 부/복호화 방법 및 장치에 관한 것이다.The present disclosure relates to a method and apparatus for encoding / decoding an image.

구체적으로, 본 개시는 가상 현실 영상의 부/복호화 방법 및 장치에 관한 것이며, 보다 구체적으로, 가상 현실 영상의 부/복호화의 병렬 처리 방법 및 장치에 관한 것이다.Specifically, the present disclosure relates to a method and apparatus for encoding / decoding a virtual reality image, and more particularly, to a method and apparatus for parallel processing of encoding / decoding of a virtual reality image.

최근 HD(High Definition), UHD(Ultra High Definition) 해상도(1920x1080 혹은 3840x2160)를 가지는 방송 서비스가 국내뿐만 아니라 세계적으로 확대되고 있다. 사용자들은 고해상도, 고화질의 영상에 익숙해지고 있으며 그에 발맞춰서 많은 기관에서는 차세대 영상기기에 대한 개발에 박차를 가하고 있다. Recently, broadcast services having a high definition (HD) and ultra high definition (UHD) resolution (1920x1080 or 3840x2160) have been expanded not only in Korea but also worldwide. Users are getting used to high-resolution, high-definition video, and in response, many organizations are speeding up the development of next-generation video devices.

현재 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)는 공동으로 차세대 비디오 코덱인 HEVC(High Efficiency Video Coding)의 표준화를 완료하였다. 이에 따르면, UHD 영상을 포함한 영상에 대한 압축 효율은 H.264/AVC 대비 2배의 압축 효율을 보인다. 영상의 해상도가 높아지고 기술이 개발됨에 따라 기존에 2D영상 뿐 아니라 스테레오스코픽 영상이나 전방향(360도) 비디오와 같은 실감형 영상에 대한 관심이 높아지고 있다. 이에 따라 많은 기업에서 헤드 마운트 디스플레이나 실감형 영상을 재생할 수 있는 장치가 출시되고 있다.Currently, the Moving Picture Experts Group (MPEG) and the Video Coding Experts Group (VCEG) have jointly completed the standardization of High Efficiency Video Coding (HEVC), the next generation video codec. According to this, the compression efficiency for the image including the UHD video shows twice the compression efficiency compared to H.264 / AVC. As the resolution of images increases and technology is developed, interest in realistic images such as stereoscopic images and omnidirectional (360 degree) video as well as 2D images is increasing. As a result, many companies are launching devices capable of playing head-mounted displays or realistic images.

본 개시의 기술적 과제는 영상의 부/복호화 효율을 향상시키는 방법 및 장치를 제공하는 것이다.An object of the present disclosure is to provide a method and apparatus for improving the encoding / decoding efficiency of an image.

본 개시의 다른 기술적 과제는 가상 현실 영상의 부/복호화 효율을 향상시키는 방법 및 장치를 제공하는 것이다.Another technical problem of the present disclosure is to provide a method and apparatus for improving the encoding / decoding efficiency of a virtual reality image.

본 개시의 또 다른 기술적 과제는 가상 현실 영상의 부/복호화를 병렬 처리하기 위한 방법 및 장치를 제공하는 것이다.Another technical problem of the present disclosure is to provide a method and apparatus for parallel processing of encoding / decoding of a virtual reality image.

본 개시의 또 다른 기술적 과제는 다면체 360도 VR 영상과 같이, 복수의 퍼스펙티브(perspective)를 가진 영상의 부/복호화 속도를 향상시키는 방법 및 장치를 제공하는 것이다.Another technical problem of the present disclosure is to provide a method and apparatus for improving the encoding / decoding speed of an image having a plurality of perspectives, such as a polyhedral 360 degree VR image.

본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Technical problems to be achieved in the present disclosure are not limited to the above-mentioned technical problems, and other technical problems not mentioned above will be clearly understood by those skilled in the art from the following description. Could be.

본 개시에 따른, 복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 부호화 방법은, 상기 복수의 퍼스펙티브 영상 중 부호화 대상 퍼스펙티브 영상의 처리 순서를 식별하는 단계, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하는 단계, 및 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 부호화 대상 퍼스펙티브 영상을 변환하는 단계를 포함할 수 있다.According to the present disclosure, a method of encoding an image including a plurality of perspective images includes: identifying a processing sequence of an encoding target perspective image among the plurality of perspective images, wherein the identified processing sequence corresponds to a predetermined processing sequence; And determining whether or not they are the same, and converting the encoding target perspective image when the identified processing sequence is not the same as the predetermined processing sequence.

본 개시에 따른 부호화 방법에 있어서, 상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고, 상기 소정의 처리 순서의 처리 시작 위치는 상기 퍼스펙티브 영상의 좌상단 위치이고, 상기 소정의 처리 순서의 처리 진행 방향은 시계 방향일 수 있다.In the encoding method according to the present disclosure, the processing sequence is identified by a processing starting position and a processing progress direction, and the processing starting position of the predetermined processing sequence is the upper left position of the perspective image, and the processing progress of the predetermined processing sequence is performed. The direction may be clockwise.

본 개시에 따른 부호화 방법에 있어서, 상기 변환은 상기 부호화 대상 퍼스펙티브 영상에 대한 대칭 변환 및 이동 변환 중 적어도 하나를 포함할 수 있다.In the encoding method according to the present disclosure, the transform may include at least one of a symmetric transform and a motion transform on the encoding target perspective image.

본 개시에 따른 부호화 방법에 있어서, 상기 대칭 변환은 상기 식별된 처리 순서의 처리 진행 방향이 상기 소정의 처리 순서의 처리 진행 방향과 상이할 때 수행될 수 있다.In the encoding method according to the present disclosure, the symmetric transformation may be performed when the processing progress direction of the identified processing sequence is different from the processing progress direction of the predetermined processing sequence.

본 개시에 따른 부호화 방법에 있어서, 상기 대칭 변환은 좌우 대칭 변환, 상하 대칭 변환 및 대각 대칭 변환 중 하나일 수 있다.In the encoding method according to the present disclosure, the symmetric transformation may be one of left and right symmetry transformation, vertical symmetry transformation, and diagonal symmetry transformation.

본 개시에 따른 부호화 방법에 있어서, 상기 회전 변환은 상기 식별된 처리 순서의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 상이할 때 수행될 수 있다.In the encoding method according to the present disclosure, the rotation transformation may be performed when the processing start position of the identified processing sequence is different from the processing start position of the predetermined processing sequence.

본 개시에 따른 부호화 방법에 있어서, 상기 회전 변환은 상기 부호화 대상 퍼스펙티브 영상의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 동일해지도록 상기 부호화 대상 퍼스펙티브 영상을 회전시키는 변환일 수 있다.In the encoding method according to the present disclosure, the rotation transformation may be a transformation for rotating the encoding target perspective image such that the processing start position of the encoding target perspective image is the same as the processing start position of the predetermined processing sequence.

본 개시에 따른 부호화 방법에 있어서, 상기 부호화 대상 퍼스펙티브 영상을 변환하는 단계는. 상기 부호화 대상 퍼스펙티브 영상을 제1 변환하는 단계, 상기 제1 변환된 부호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일한지 여부를 판단하는 단계 및 상기 제1 변환된 부호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 제1 변환된 부호화 대상 퍼스펙티브 영상을 제2 변환하는 단계를 포함할 수 있다.In the encoding method according to the present disclosure, the transforming of the target image to be encoded may be performed. First converting the encoding target perspective image, determining whether a processing order of the first transformed encoding target perspective image is the same as the predetermined processing sequence, and processing the first transformed encoding target perspective image If the order is not the same as the predetermined processing sequence, the method may include converting the first transformed encoding target perspective image.

본 개시에 따른 부호화 방법에 있어서, 상기 제1 변환은 대칭 변환 및 이동 변환 중 하나이고, 상기 제2 변환은 나머지 다른 하나일 수 있다.In the encoding method according to the present disclosure, the first transform may be one of a symmetric transform and a shift transform, and the second transform may be the other.

본 개시에 따른, 복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 부호화 장치는 변환기를 포함하고, 상기 변환기는, 상기 복수의 퍼스펙티브 영상 중 부호화 대상 퍼스펙티브 영상의 처리 순서를 식별하고, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하고, 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 부호화 대상 퍼스펙티브 영상을 변환하도록 구성될 수 있다.According to the present disclosure, an apparatus for encoding an image including a plurality of perspective images includes a transducer, wherein the transducer identifies a processing sequence of an encoding target perspective image among the plurality of perspective images and performs the identified processing. It may be configured to determine whether the order is the same as the predetermined processing order, and convert the encoding target perspective image when the identified processing order is not the same as the predetermined processing order.

본 개시에 따른, 복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 복호화 방법은, 상기 복수의 퍼스펙티브 영상 중 복호화 대상 퍼스펙티브 영상의 처리 순서를 식별하는 단계, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하는 단계, 및 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 복호화 대상 퍼스펙티브 영상을 변환하는 단계를 포함할 수 있다.According to the present disclosure, a method of decoding an image including a plurality of perspective images includes: identifying a processing sequence of a decoding target perspective image among the plurality of perspective images, wherein the identified processing sequence is determined by a predetermined processing sequence; And determining whether or not they are the same, and converting the decoding target perspective image when the identified processing order is not the same as the predetermined processing order.

본 개시에 따른 복호화 방법에 있어서, 상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고, 상기 소정의 처리 순서의 처리 시작 위치는 상기 퍼스펙티브 영상의 좌상단 위치이고, 상기 소정의 처리 순서의 처리 진행 방향은 시계 방향일 수 있다.In the decoding method according to the present disclosure, the processing sequence is identified by a processing start position and a processing progress direction, and the processing start position of the predetermined processing sequence is the upper left position of the perspective image, and the processing progress of the predetermined processing sequence is performed. The direction may be clockwise.

본 개시에 따른 복호화 방법에 있어서, 상기 변환은 상기 복호화 대상 퍼스펙티브 영상에 대한 대칭 변환 및 이동 변환 중 적어도 하나를 포함할 수 있다.In the decoding method according to the present disclosure, the transform may include at least one of a symmetric transform and a shift transform on the decoding target perspective image.

본 개시에 따른 복호화 방법에 있어서, 상기 대칭 변환은 상기 식별된 처리 순서의 처리 진행 방향이 상기 소정의 처리 순서의 처리 진행 방향과 상이할 때 수행될 수 있다.In the decoding method according to the present disclosure, the symmetric transformation may be performed when the processing progress direction of the identified processing order is different from the processing progress direction of the predetermined processing order.

본 개시에 따른 복호화 방법에 있어서, 상기 대칭 변환은 좌우 대칭 변환, 상하 대칭 변환 및 대각 대칭 변환 중 하나일 수 있다.In the decoding method according to the present disclosure, the symmetric transformation may be one of symmetric transformation, vertical symmetry transformation, and diagonal symmetry transformation.

본 개시에 따른 복호화 방법에 있어서, 상기 회전 변환은 상기 식별된 처리 순서의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 상이할 때 수행될 수 있다.In the decoding method according to the present disclosure, the rotation conversion may be performed when the processing start position of the identified processing sequence is different from the processing start position of the predetermined processing sequence.

본 개시에 따른 복호화 방법에 있어서, 상기 회전 변환은 상기 복호화 대상 퍼스펙티브 영상의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 동일해지도록 상기 복호화 대상 퍼스펙티브 영상을 회전시키는 변환일 수 있다.In the decoding method according to the present disclosure, the rotation transformation may be a transformation for rotating the decoding target perspective image such that the processing start position of the decoding target perspective image is the same as the processing start position of the predetermined processing sequence.

본 개시에 따른 복호화 방법에 있어서, 상기 복호화 대상 퍼스펙티브 영상을 변환하는 단계는. 상기 복호화 대상 퍼스펙티브 영상을 제1 변환하는 단계, 상기 제1 변환된 복호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일한지 여부를 판단하는 단계, 및 상기 제1 변환된 복호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 제1 변환된 복호화 대상 퍼스펙티브 영상을 제2 변환하는 단계를 포함할 수 있다.In the decoding method according to the present disclosure, the step of converting the decoding target perspective image. First converting the decoding target perspective image, determining whether the processing order of the first transformed decoding target perspective image is the same as the predetermined processing order, and the first transformed decoding target perspective image If the processing order is not the same as the predetermined processing order, the method may include performing a second transformation on the first transformed decoding target perspective image.

본 개시에 따른 복호화 방법에 있어서, 상기 제1 변환은 대칭 변환 및 이동 변환 중 하나이고, 상기 제2 변환은 나머지 다른 하나일 수 있다.In the decoding method according to the present disclosure, the first transform may be one of a symmetric transform and a shift transform, and the second transform may be the other.

본 개시에 따른, 복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 복호화 장치는 변환기를 포함하고, 상기 변환기는, 상기 복수의 퍼스펙티브 영상 중 복호화 대상 퍼스펙티브 영상의 처리 순서를 식별하고, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하고, 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 복호화 대상 퍼스펙티브 영상을 변환하도록 구성될 수 있다.According to the present disclosure, an apparatus for decoding an image including a plurality of perspective images includes a transducer, wherein the transducer identifies a processing sequence of a decoding target perspective image among the plurality of perspective images, and the identified processing. It may be configured to determine whether the order is the same as a predetermined processing order, and convert the decoding target perspective image when the identified processing order is not the same as the predetermined processing order.

본 개시에 따른, 컴퓨터 판독 가능한 기록 매체는, 본 개시에 따른 영상의 부호화 방법 및/또는 장치에 의해 생성된 비트스트림을 저장할 수 있다.The computer-readable recording medium according to the present disclosure may store a bitstream generated by the method and / or apparatus for encoding an image according to the present disclosure.

본 개시에 따르면, 영상의 부/복호화 효율을 향상시키는 방법 및 장치를 제공할 수 있다.According to the present disclosure, a method and apparatus for improving encoding / decoding efficiency of an image may be provided.

또한, 본 개시에 따르면, 가상 현실 영상의 부/복호화 효율을 향상시키는 방법 및 장치를 제공할 수 있다.In addition, according to the present disclosure, a method and apparatus for improving encoding / decoding efficiency of a virtual reality image may be provided.

또한, 본 개시에 따르면, 가상 현실 영상의 부/복호화를 병렬 처리하는 방법 및 장치를 제공할 수 있다.In addition, according to the present disclosure, a method and apparatus for parallel processing of encoding / decoding of a virtual reality image may be provided.

또한, 본 개시에 따르면, 다면체 360도 VR 영상과 같이, 복수의 퍼스펙티브(perspective)를 가진 영상의 부/복호화 속도를 향상시키는 방법 및 장치를 제공할 수 있다.In addition, according to the present disclosure, a method and apparatus for improving the encoding / decoding speed of an image having a plurality of perspectives, such as a polyhedral 360 degree VR image, can be provided.

본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the present disclosure are not limited to the above-mentioned effects, and other effects not mentioned above may be clearly understood by those skilled in the art from the following description. will be.

도 1은 360도 비디오를 촬영하기 위한 다양한 종류의 카메라를 예시한 도면이다.
도 2는 360도 비디오를 3차원 공간상에 투영시킨 영상을 예시적으로 도시한 도면이다.
도 3은 본 개시에 따른 영상 부호화 장치의 구조를 예시한 도면이다.
도 4는 본 개시에 따른 영상 복호화 장치의 구조를 예시한 도면이다.
도 5는 다이버전트 카메라 영상 및 컨버전트 카메라 영상을 예시적으로 설명하기 위한 도면이다.
도 6은 영상의 분할을 설명하기 위한 예시도이다.
도 7은 영상 내에서 WPP 처리 순서를 설명하기 위한 도면이다.
도 8은 타일 기반 병렬 처리를 설명하기 위한 도면이다.
도 9는 360도 전방향 비디오를 부/복호화하기 위한 전개도를 예시한 도면이다.
도 10은 360도 전방향 영상을 정육면체에 투영한 경우의 전개도를 설명하기 위한 도면이다.
도 11은 정육면체에 투영되는 전방향 영상을 2차원으로 전개하기 위한 다양한 방식을 설명하기 위한 도면이다.
도 12는 인접한 퍼스펙티브에 속하는 CTU 사이의 의존성을 설명하기 위한 예시도이다.
도 13은 전개 방식에 따른 부/복호화 종료 시점을 설명하기 위한 도면이다.
도 14는 전개도에 따른 영상 처리 시간의 차이를 설명하기 위한 도면이다.
도 15는본 개시에 따른 영상 병렬 처리를 설명하기 위한 개념도이다.
도 16은 본 개시에 따른 영상 병렬 처리를 설명하기 위한 흐름도이다.
도 17은 정육면체 상에서의 전방향 영상의 처리 순서를 예시한 도면이다.
도 18은 도 17의 전방향 영상을 전개한 전개도를 예시한 도면이다.
도 19는 정육면체 전개도 형태의 360도 VR 영상의 일 예이다.
도 20은 도 19의 비디오를 병렬적으로 부/복호화하는 단계(스텝 1)를 설명하기 위한 도면이다.
도 21은 도 19의 비디오를 병렬적으로 부/복호화하는 단계(스텝 2)를 설명하기 위한 도면이다.
도 22는 도 19의 비디오를 병렬적으로 부/복호화하는 단계(스텝 3)를 설명하기 위한 도면이다.
도 23은 퍼스펙티브의 부/복호화 방향을 설명하기 위한 예시도이다.
도 24는 정육면체 전방향 영상에 있어서, 이웃하지 않는 두 개의 퍼스펙티브에 대한 부/복호화 순서를 설명하기 위한 도면이다.
도 25는 정육면체 전방향 영상에 있어서, 마주보는 두 개의 퍼스펙티브의 부/복호화 순서를 설명하기 위한 도면이다.
도 26은 도 25의 (a) 및 (b)에 따른 차이를 설명하기 위한 도면이다.
도 27은 도 25의 (b)에 따른 부/복호화를 설명하기 위한 도면이다.
도 28은 둘 이상의 퍼스펙티브를 참조할 수 있는 퍼스펙티브의 부/복호화를 설명하기 위한 도면이다.
도 29는 하나의 퍼스펙티브를 두 개의 영역으로 분할하고, 각각의 영역을 부/복호화하는 방법을 설명하기 위한 도면이다.
도 30은 둘 이상의 퍼스펙티브를 참조하는 경우의 부/복호화 처리 순서를 설명하기 위한 도면이다.
도 31은 정육면체 전방향 영상의 부/복호화 순서를 설명하기 위한 예시도이다.
도 32는 본 개시에 따른 부호화 장치의 구성을 예시한 도면이다.
도 33은 본 개시에 따른 복호화 장치의 구성을 예시한 도면이다.
도 34는 퍼스펙티브의 처리 순서를 변환하는 방법을 설명하기 위한 예시도이다.
도 35는 33가지 공간적 예측 모드를 예시한 도면이다.
도 36은 이웃 퍼스펙티브의 예측 모드를 참조한 현재 퍼스펙티브의 공간적 예측을 설명하기 위한 예시도이다.
도 37은 현재 블록과 참조 블록의 예측 모드의 차이를 설명하기 위한 도면이다.
도 38은 참조 블록의 방향성 예측 모드의 해석 방법을 설명하기 위한 도면이다.
도 39는 퍼스펙티브의 전개 방식에 따른 방향성 예측 모드의 8 가지 경우를 예시한 도면이다.
도 40은 정육면체 전방향 영상의 공간적 예측에 사용되는 참조 샘플의 위치를 설명하기 위한 도면이다.
도 41은 정육면체 전방향 영상을 전개도상에의 연속성을 활용하여 병렬 처리하는 방법을 설명하기 위한 도면이다.
1 illustrates various types of cameras for capturing 360 degree video.
2 is a diagram exemplarily illustrating an image in which a 360 degree video is projected on a 3D space.
3 is a diagram illustrating a structure of a video encoding apparatus according to the present disclosure.
4 is a diagram illustrating a structure of an image decoding apparatus according to the present disclosure.
5 is a diagram for exemplarily describing a divergent camera image and a converged camera image.
6 is an exemplary diagram for describing segmentation of an image.
7 is a diagram for explaining a WPP processing procedure in an image.
8 is a diagram for explaining tile-based parallel processing.
9 is a diagram illustrating a development view for encoding / decoding a 360 degree omnidirectional video.
FIG. 10 is a diagram for explaining a developed view when a 360 degree omnidirectional image is projected onto a cube. FIG.
FIG. 11 is a diagram for describing various methods for developing an omnidirectional image projected on a cube in two dimensions.
12 is an exemplary diagram for explaining dependencies between CTUs belonging to adjacent perspectives.
FIG. 13 is a diagram for describing an end point of decoding / decoding according to a deployment method.
14 is a diagram for explaining a difference in image processing time according to a developed view.
15 is a conceptual diagram for describing image parallel processing according to the present disclosure.
16 is a flowchart for explaining image parallel processing according to the present disclosure.
17 is a diagram illustrating a processing sequence of an omnidirectional image on a cube.
FIG. 18 is a diagram illustrating an expanded view of the omnidirectional image of FIG. 17. FIG.
19 is an example of a 360-degree VR image in the form of a cube exploded view.
20 is a diagram for explaining a step (step 1) of encoding / decoding the video of FIG. 19 in parallel.
21 is a diagram for explaining a step (step 2) of encoding / decoding the video of FIG. 19 in parallel.
22 is a diagram for explaining a step (step 3) of encoding / decoding the video of FIG. 19 in parallel.
23 is an exemplary diagram for explaining a negative / decoding direction of a perspective.
FIG. 24 is a diagram for describing an encoding / decoding procedure for two non-neighboring perspectives in a cube omnidirectional image.
FIG. 25 is a diagram for describing a decoding / decoding procedure of two perspectives facing each other in a cube omnidirectional image. FIG.
FIG. 26 is a diagram for explaining a difference according to FIGS. 25A and 25B.
FIG. 27 is a diagram for describing encoding / decoding according to FIG. 25B.
FIG. 28 is a diagram for describing encoding / decoding of perspectives that may refer to two or more perspectives.
FIG. 29 is a diagram for describing a method of dividing one perspective into two regions and encoding / decoding each region. FIG.
30 is a diagram for explaining a coding / decoding process procedure when referring to two or more perspectives.
FIG. 31 is an exemplary diagram for describing an encoding / decoding procedure of a cube omnidirectional image. FIG.
32 is a diagram illustrating a configuration of an encoding device according to the present disclosure.
33 is a diagram illustrating a configuration of a decoding apparatus according to the present disclosure.
34 is an exemplary diagram for explaining a method of converting a processing order of a perspective.
35 is a diagram illustrating 33 spatial prediction modes.
36 is an exemplary diagram for describing spatial prediction of a current perspective with reference to a prediction mode of a neighbor perspective.
37 is a diagram for explaining a difference between prediction modes of a current block and a reference block.
38 is a diagram for explaining a method of analyzing a directional prediction mode of a reference block.
FIG. 39 is a diagram illustrating eight cases of directional prediction modes according to a method of developing a perspective. FIG.
40 is a diagram for explaining a position of a reference sample used for spatial prediction of a cube omnidirectional image.
FIG. 41 is a view for explaining a method of parallel processing a cube omnidirectional image utilizing continuity on a developed view.

이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present disclosure. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention.

본 개시의 실시 예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.In the following description of embodiments of the present disclosure, when it is determined that a detailed description of a known structure or function may obscure the subject matter of the present disclosure, a detailed description thereof will be omitted. In the drawings, parts irrelevant to the description of the present disclosure are omitted, and like reference numerals designate like parts.

본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.In the present disclosure, when a component is "connected", "coupled" or "connected" with another component, it is not only a direct connection, but also an indirect connection in which another component exists in the middle. It may also include. In addition, when a component "includes" or "having" another component, it means that it may further include another component, without excluding the other component unless otherwise stated. .

본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시 예에서의 제1 구성요소는 다른 실시 예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시 예에서의 제2 구성요소를 다른 실시 예에서 제1 구성요소라고 칭할 수도 있다. In the present disclosure, terms such as first and second are used only for the purpose of distinguishing one component from other components, and do not limit the order or importance between the components unless specifically mentioned. Accordingly, within the scope of the present disclosure, a first component in one embodiment may be referred to as a second component in another embodiment, and likewise, a second component in one embodiment may be referred to as a first component in another embodiment. It may also be called.

본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시 예도 본 개시의 범위에 포함된다. In the present disclosure, components that are distinguished from each other are for clearly describing each feature, and do not necessarily mean that the components are separated. That is, a plurality of components may be integrated into one hardware or software unit, or one component may be distributed and formed into a plurality of hardware or software units. Therefore, even if not mentioned otherwise, such integrated or distributed embodiments are included in the scope of the present disclosure.

본 개시에 있어서, 다양한 실시 예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들은 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시 예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시 예도 본 개시의 범위에 포함된다. 또한, 다양한 실시 예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시 예도 본 개시의 범위에 포함된다.In the present disclosure, components described in various embodiments are not necessarily required components, and some may be optional components. Therefore, an embodiment composed of a subset of components described in an embodiment is also included in the scope of the present disclosure. In addition, embodiments including other components in addition to the components described in the various embodiments are included in the scope of the present disclosure.

이하, 첨부한 도면을 참조하여 본 개시의 실시 예들에 대해서 설명한다.Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings.

본 개시는 영상의 병렬 처리에 관한 것이다. 구체적으로, 본 개시는 다양한 시점을 가진 영상을 병렬적으로 부/복호화함으로써 처리 속도를 높이는 장치에 관한 것이다. 다양한 시점을 가진 영상은 예컨대, 360도 동영상, 전방향 비디오, 다면체 360도 VR 영상 등일 수 있다. 본 개시에 따른 영상의 부/복호화에 있어서, 영상 내 또는 영상 간의 여러 방향으로의 참조가 가능하다는 점이 이용될 수 있다. 본 개시에서, 퍼스펙티브(perspective, 또는 시점)란 비디오를 촬영하는 카메라의 위치 또는 카메라의 방향을 의미할 수 있다.The present disclosure relates to parallel processing of images. Specifically, the present disclosure relates to an apparatus for increasing processing speed by encoding / decoding an image having various viewpoints in parallel. The image having various viewpoints may be, for example, a 360 degree video, an omnidirectional video, a polyhedral 360 degree VR image, or the like. In encoding / decoding of an image according to the present disclosure, it may be used that reference can be made in various directions within or between images. In the present disclosure, a perspective may refer to a position of a camera or a direction of a camera that captures video.

기존의 2D 비디오는 고정된 시점을 갖는다. 그러나, 전방향 비디오 또는 360도 비디오는 사용자가 원하는 시점으로 볼 수 있는 비디오를 의미한다. 전방향 비디오 또는 360도 비디오는 여러 대의 카메라, 어안 렌즈 또는 반사경을 이용하여 한 지점으로부터 360도의 모든 방향을 촬영한 뒤 3차원 공간상의 다면체 또는 구에 투영시킴으로써 획득될 수 있다. 전방향 비디오 또는 360도 비디오는 전체 영역 중 사용자가 바라보는 시점에 대응하는 영역만 재생될 수 있다. Conventional 2D video has a fixed viewpoint. However, omni-directional video or 360-degree video refers to video that the user can see at a desired point in time. Omni-directional video or 360-degree video can be obtained by photographing all directions of 360 degrees from a point using multiple cameras, fisheye lenses or reflectors and then projecting onto polyhedrons or spheres in three-dimensional space. In the omnidirectional video or 360 degree video, only an area corresponding to the viewpoint viewed by the user may be played.

도 1은 360도 비디오를 촬영하기 위한 다양한 종류의 카메라를 예시한 도면이다. 1 illustrates various types of cameras for capturing 360 degree video.

도 1의 (a)는 여러 대의 카메라를 예시한 것이고, 도 1의 (b)는 어안 렌즈를 예시한 것이다. 도 1의 (c)는 반사경을 예시한 것이다.FIG. 1A illustrates a plurality of cameras, and FIG. 1B illustrates a fisheye lens. (C) of FIG. 1 illustrates a reflector.

도 2는 360도 비디오를 3차원 공간상에 투영시킨 영상을 예시적으로 도시한 도면이다. 2 is a diagram exemplarily illustrating an image in which a 360 degree video is projected on a 3D space.

도 2의 (a)는 360도 영상을 3차원 공간의 다면체에 투영시킨 예를 나타낸다. 도 2의 (b)는 360도 영상을 3차원 공간의 구에 투영시킨 예를 나타낸다. 도 2의 예에서, 음영으로 표시된 부분은 360도 영상 중 재생되는 위치를 가리킨다. 즉, 도 2의 음영 부분은 사용자가 바라보는 시점에 대응하는 영역일 수 있다.2A illustrates an example of projecting a 360 degree image onto a polyhedron in a three-dimensional space. 2B shows an example in which a 360 degree image is projected onto a sphere in a three-dimensional space. In the example of FIG. 2, the shaded portion indicates the position of the 360-degree image. That is, the shaded portion of FIG. 2 may be an area corresponding to the viewpoint viewed by the user.

전방향 비디오(360도 비디오)를 압축 부호화하기 위해, 2D 비디오를 압축 부호화하기 위한 방법 및 장치가 사용될 수 있다. In order to compressively encode omnidirectional video (360 degree video), a method and apparatus for compression encoding 2D video may be used.

도 3 및 4는 본 개시에 따른 영상 부호화 장치 및 복호화 장치의 구조를 예시한 도면이다.3 and 4 illustrate the structures of an image encoding apparatus and a decoding apparatus according to the present disclosure.

도 3의 영상 부호화 장치는 입력 영상을 수신하여 부호화함으로써 비트스트림을 생성할 수 있다. 영상 부호화 장치는 복원 픽쳐 버퍼(301), 화면 간 예측부(302), 화면 내 예측부(303), 스위치(304), 감산기(305), 변환부(306), 양자화부(307), 부호화부(308), 역양자화부(309), 역변환부(310) 및/또는 가산기(311)를 포함할 수 있다.The image encoding apparatus of FIG. 3 may generate a bitstream by receiving and encoding an input image. The image encoding apparatus includes a reconstructed picture buffer 301, an inter prediction unit 302, an intra prediction unit 303, a switch 304, a subtractor 305, a transform unit 306, a quantization unit 307, and an encoding. The unit 308 may include an inverse quantization unit 309, an inverse transform unit 310, and / or an adder 311.

입력 영상은 블록 단위로 부호화될 수 있다. 현재 블록은 이미 부/복호화된 영상에 기초하여 화면 내 예측 또는 화면 간 예측될 수 있다. The input image may be encoded in block units. The current block may be intra prediction or inter prediction based on an already decoded / decoded image.

현재 블록이 화면 내 예측되는 경우, 스위치(304)는 화면 내 예측부(303)로 전환될 수 있다. 화면 내 예측부(303)는 현재 픽쳐 내의 이미 부/복호화된 영역을 참조하여 현재 블록을 예측할 수 있다. 현재 블록이 화면 간 예측되는 경우, 스위치(304)는 화면 간 예측부(302)로 전환될 수 있다. 화면 간 예측부(302)는 이미 부/복호화되어 복원 픽쳐 버퍼(301)에 저장된 적어도 하나의 픽쳐를 참조하여 현재 블록을 예측할 수 있다. When the current block is predicted in the screen, the switch 304 may be switched to the in-screen predictor 303. The intra prediction unit 303 may predict the current block by referring to an already encoded / decoded area within the current picture. When the current block is predicted inter screen, the switch 304 may be switched to the inter screen predictor 302. The inter prediction unit 302 may predict the current block by referring to at least one picture that is already encoded / decoded and stored in the reconstructed picture buffer 301.

화면 내 예측 또는 화면 간 예측에 의해 생성된 현재 블록의 예측 블록은 감산기(305)로 전송될 수 있다. 감산기(305)는 현재 블록과 현재 블록의 예측 블록 간의 차분 블록을 생성할 수 있다. 생성된 차분 블록에 대해 변환부(306)에서의 변환 및/또는 양자화부(307)에서의 양자화가 수행될 수 있다. 변환 및/또는 양자화를 거친 차분 계수(residual coefficient)는 부호화부(308)에서 부호화될 수 있다. 부호화부(308)는 예컨대, 심볼의 발생 확률에 기초한 엔트로피 부호화를 수행할 수 있다.The prediction block of the current block generated by the intra prediction or the inter prediction may be transmitted to the subtractor 305. The subtractor 305 may generate a difference block between the current block and the prediction block of the current block. The transform block 306 and / or the quantization block 307 may be performed on the generated difference block. The residual coefficients, which have been transformed and / or quantized, may be encoded by the encoder 308. The encoder 308 may perform, for example, entropy encoding based on a probability of occurrence of a symbol.

변환 및/또는 양자화된 차분 블록에 대해 역양자화부(309)에서의 역양자화 및/또는 역변환부(310)에서의 역변환이 수행될 수 있다. 역양자화 및/또는 역변환된 차분 블록은 가산기(311)로 전송될 수 있다. 가산기(311)는 전송받은 차분 블록을 현재 블록의 예측 블록과 가산하여 현재 블록을 복원할 수 있다. 복원된 블록을 포함하는 복원 픽쳐는 복원 픽쳐 버퍼(301)에 저장될 수 있다.Inverse quantization and / or inverse transform in the inverse transform unit 310 may be performed in the transform and / or quantized difference block. The inverse quantized and / or inversely transformed differential blocks may be sent to the adder 311. The adder 311 may reconstruct the current block by adding the received difference block to the prediction block of the current block. The reconstructed picture including the reconstructed block may be stored in the reconstructed picture buffer 301.

도 4의 영상 복호화 장치는 비트스트림을 수신하여 복호화함으로써 복원 영상을 생성할 수 있다. 영상 복호화 장치는 복호화부(401), 역양자화부(402), 역변환부(403), 가산기(404), 화면 간 예측부(405), 화면 내 예측부(406), 스위치(407) 및/또는 복원 픽쳐 버퍼(408)를 포함할 수 있다.The image decoding apparatus of FIG. 4 may generate a reconstructed image by receiving and decoding a bitstream. The video decoding apparatus includes a decoder 401, an inverse quantizer 402, an inverse transform unit 403, an adder 404, an inter prediction unit 405, an intra prediction unit 406, a switch 407, and / Alternatively, the reconstructed picture buffer 408 may be included.

복호화부(401)는 비트스트림을 복호화하여 현재 블록의 차분 블록을 생성할 수 있다. 복호화부(401)는 예컨대, 심볼의 발생 확률에 기초한 엔트로피 복호화를 수행할 수 있다. 차분 블록은 변환 및/또는 양자화된 차분 계수를 포함할 수 있다.The decoder 401 may generate a difference block of the current block by decoding the bitstream. The decoder 401 may perform entropy decoding based on, for example, a probability of occurrence of a symbol. The difference block may include transformed and / or quantized difference coefficients.

변환 및/또는 양자화된 차분 계수를 포함하는 차분 블록에 대해 역양자화부(402)에서의 역양자화 및/또는 역변환부(403)에서의 역변환이 수행될 수 있다. 역양자화 및/또는 역변환된 차분 블록은 가산기(404)로 전송될 수 있다. 가산기(404)는 전송받은 차분 블록을 현재 블록의 예측 블록과 가산하여 현재 블록을 복원할 수 있다. 복원된 블록을 포함하는 복원 픽쳐는 복원 픽쳐 버퍼(408)에 저장될 수 있다.An inverse quantization in the inverse quantization unit 402 and / or an inverse transformation in the inverse transform unit 403 may be performed on the difference block including the transform and / or quantized difference coefficients. The inverse quantized and / or inversely transformed differential blocks may be sent to the adder 404. The adder 404 may reconstruct the current block by adding the received difference block to the prediction block of the current block. The reconstructed picture including the reconstructed block may be stored in the reconstructed picture buffer 408.

가산기(404)로 입력되는 현재 블록의 예측 블록은 이미 복호화된 영상에 기초하여 생성될 수 있다. 현재 블록이 화면 내 예측되는 경우, 스위치(407)는 화면 내 예측부(406)로 전환될 수 있다. 화면 내 예측부(406)는 현재 픽쳐 내의 이미 부/복호화된 영역을 참조하여 현재 블록을 예측할 수 있다. 현재 블록이 화면 간 예측되는 경우, 스위치(407)는 화면 간 예측부(405)로 전환될 수 있다. 화면 간 예측부(405)는 이미 부/복호화되어 복원 픽쳐 버퍼(408)에 저장된 적어도 하나의 픽쳐를 참조하여 현재 블록을 예측할 수 있다. The prediction block of the current block input to the adder 404 may be generated based on an image that is already decoded. When the current block is predicted in the screen, the switch 407 may be switched to the in-screen predictor 406. The intra prediction unit 406 may predict the current block by referring to an already encoded / decoded area within the current picture. When the current block is predicted inter screen, the switch 407 may be switched to the inter screen predictor 405. The inter prediction unit 405 may predict the current block by referring to at least one picture that is already encoded / decoded and stored in the reconstructed picture buffer 408.

본 개시에 따른 부/복호화 방법은 전방향(360도) 비디오 외에도 실감 미디어 영상에 적용될 수 있다. 실감 미디어 영상은 다이버전트(Divergent) 카메라 영상, 컨버전트(Convergent) 카메라 영상 등을 포함할 수 있다. The encoding / decoding method according to the present disclosure may be applied to immersive media images in addition to omnidirectional (360 degree) video. The sensational media image may include a divergent camera image, a convergent camera image, and the like.

도 5는 다이버전트 카메라 영상 및 컨버전트 카메라 영상을 예시적으로 설명하기 위한 도면이다. 5 is a diagram for exemplarily describing a divergent camera image and a converged camera image.

다이버전트 카메라 영상은 여러 대의 카메라(C1, C2, C3)를 이용하여 획득한 다양한 방향의 영상(W1, W2, W3)을 포함할 수 있다. 컨버전트 카메라 영상은 여러 대의 카메라(C1 내지 C4)를 이용하여 획득한 특정 방향의 영상(W, W2, W3, W4)을 포함할 수 있다.The divergent camera image may include images W1, W2, and W3 of various directions obtained by using a plurality of cameras C1, C2, and C3. The converged camera image may include images W, W2, W3, and W4 of a specific direction obtained by using the plurality of cameras C1 to C4.

동영상 부호화 장치는 정지 영상 또는 동영상을 압축할 수 있다. 동영상 부호화 장치는 영상 전체를 하나의 처리 단위로 압축하는 프레임(Frame) 기반 압축 또는 영상을 특정 블록 단위로 나누어서 처리하는 블록(Block) 기반 압축 등을 수행할 수 있다. 프레임 기반 압축을 수행하는 영상 부/복호화 장치는 예측 기술을 적용하기 어렵고, 많은 메모리와 계산량을 요구하는 문제점이 있다. 따라서, 대부분의 영상 부/복호화 장치들은 블록 기반 압축을 수행하고 있다. The video encoding apparatus may compress a still image or a video. The video encoding apparatus may perform frame-based compression, which compresses the entire image in one processing unit, or block-based compression, which divides and processes the image in specific block units. An image encoding / decoding apparatus that performs frame-based compression has difficulty in applying a prediction technique and requires a large amount of memory and computation. Therefore, most video encoding / decoding apparatuses perform block-based compression.

블록 기반 압축은 예컨대, 영상을 큰 블록 단위인 부호화 트리 유닛(Coding Tree Unit, CTU)으로 분할하여 수행할 될 수 있다. CTU들은 순차 주사 순서로 부/복호화될 수 있다. 순차 주사 순서는 래스터 스캔 순서 또는 Z 스캔 순서일 수 있다. 예컨대, CTU는 보다 작은 블록 단위인 코딩 유닛(Coding Unit, CU)로 분할된 후 부/복호화될 수 있다. 이러한 방식은 영상의 특성에 따라 블록의 크기를 보다 정밀하게 조정할 수 있으므로, 압축 효율면에서 유리하다. For example, block-based compression may be performed by dividing an image into coding tree units (CTUs), which are large block units. CTUs may be encoded / decoded in sequential scanning order. The sequential scan order may be a raster scan order or a Z scan order. For example, the CTU may be divided into coding units (CUs) which are smaller block units and then encoded / decoded. This method is advantageous in terms of compression efficiency since the block size can be more precisely adjusted according to the characteristics of the image.

도 6은 영상의 분할을 설명하기 위한 예시도이다.6 is an exemplary diagram for describing segmentation of an image.

도 6의 (a)는 한 영상을 CTU 단위로 나눈 모습을 나타낸다. 도 6의 (a)를 참조하면, 각각의 CTU는 순차 주사 순서에 따라, CTU A에서 CTU K의 순서로 부/복호화될 수 있다. 6 (a) shows a state in which an image is divided by CTU. Referring to FIG. 6A, each CTU may be encoded / decoded in order of CTU A to CTU K according to a sequential scanning order.

블록 기반 동영상 압축 장치는 영상 내의 이웃 블록 간 상관도를 이용하여 중복되는 정보를 없앰으로써, 전송할 정보의 양을 줄여, 압축 효율을 높일 수 있다. 도 6의 (a)를 참조하면, CTU F의 부/복호화가 시작되는 시점에서는 이웃 CTU인 B, C, D, E의 부/복호화가 완료되어 있다. 따라서 이웃 CTU의 정보들을 이용하여 CTU F의 압축 효율을 높일 수 있다. 이는 CTU F를 복호화하기 위해서는 CTU B, C, D, E의 복호화가 완료되어 있어야함을 의미할 수도 있다.The block-based video compression apparatus may reduce the amount of information to be transmitted by using the correlation between neighboring blocks in the image, thereby increasing compression efficiency. Referring to (a) of FIG. 6, at the time when the encoding / decoding of the CTU F begins, the encoding / decoding of the neighboring CTUs B, C, D, and E is completed. Therefore, the compression efficiency of the CTU F can be increased by using information of the neighbor CTU. This may mean that decoding of CTU B, C, D, and E should be completed in order to decode the CTU F.

도 6의 (b)는 CTU를 재귀적으로 분할하는 예를 나타낸다. 전술한 바와 같이, CTU는 복수의 CU들로 분할될 수 있고, 이 때, 재귀적인 분할이 적용될 수 있다. 재귀적인 분할을 위해 예컨대, 쿼드 트리 분할이 이용될 수 있다. 도 6의 (b)에 도시된 예에서와 같이, CTU F는 4개의 CU로 분할될 수 있다. 이 때, CTU F의 분할 여부를 지시하는 분할 플래그는 1일 수 있다. 분할된 각 CU는 Z 스캔 순서로 부/복호화될 수 있다. 또한, 각 CU는 다시 4개의 CU로 분할될 수 있다. 또는 각 CU는 해당 깊이에서 분할이 중단될 수 있다. 각 CU의 분할 플래그는 해당 CU의 분할 여부를 나타낼 수 있다. 이와 같은, 재귀적 분할은 분할 플래그 값 또는 영상에서 명시된 분할 허용 최대 깊이에 이르러 중단될 수 있다. 도 6의 (b)에 도시된 바와 같이, CTU F는 4개의 CU로 분할되고 Z스캔 순으로 첫번째, 두번째 및 세번째 CU는 분할되지 않을 수 있다. 또한, 4번째 CU F1은 다시 4개의 CU로 분할될 수 있다. CU F1을 분할하여 생성된 4개의 CU 중 Z스캔 순서로 첫번째, 두번째 및 세번째 CU는 분할되지 않을 수 있다. 또한, 네번째 CU F2는 다시 4개의 CU로 분할될 수 있다. 도 6의 (b)에 예시된 분할 구조를 통해 영상 안에서 예측 블록의 크기를 조정할 수 있게 되어 예측의 효율을 향상시킬 수 있다.6B illustrates an example of recursively dividing the CTU. As described above, the CTU may be divided into a plurality of CUs, where recursive partitioning may be applied. For example, quad tree splitting can be used for recursive splitting. As in the example shown in FIG. 6B, the CTU F may be divided into four CUs. In this case, the division flag indicating whether to divide the CTU F may be 1. Each partitioned CU may be encoded / decoded in a Z scan order. In addition, each CU may be further divided into four CUs. Or, each CU can be broken at the corresponding depth. The partition flag of each CU may indicate whether to partition the corresponding CU. As such, the recursive segmentation may be stopped by reaching the segmentation flag value or the maximum allowable segmentation depth specified in the image. As shown in (b) of FIG. 6, the CTU F may be divided into four CUs, and the first, second and third CUs may not be divided in the Z scan order. In addition, the fourth CU F1 may be further divided into four CUs. The first, second and third CUs may not be divided in the Z scan order among the four CUs generated by dividing the CU F1. In addition, the fourth CU F2 may be further divided into four CUs. Through the division structure illustrated in FIG. 6B, the size of the prediction block can be adjusted in the image, thereby improving the efficiency of prediction.

영상의 부/복호화 속도를 향상시키기 위해 WPP(Wavefront Parallel Processing) 및/또는 타일(Tile) 기반 부/복호화가 이용될 수 있다. Wavefront 기술은 픽셀 정보에 대한 의존성이 해결될 경우 병렬 처리를 시작하는 기술이다. 도 6의 (a)를 참조하면, CTU D는 상단 행의 CTU인 B의 부/복호화가 완료되면 픽셀 정보 대한 의존성이 해결될 수 있다. 따라서, CTU B의 정보를 이용한 예측 알고리즘을 적용할 수 있다. 마찬가지로 CTU H는 상단 행의 CTU E의 부/복호화가 완료되면 픽셀 정보에 대한 의존성이 해결될 수 있다. 따라서, CTU E의 정보를 이용한 예측 알고리즘을 적용할 수 있다. 하지만 픽셀 정보 의존성을 고려하여 영상을 병렬적으로 부/복호화 하더라도 엔트로피 코딩은 병렬적으로 진행하지 못하고 순차 주사 순서로 실행이 된다. 따라서, 엔트로피 코딩이 부/복호화시 병렬 처리의 병목 지점이 되고 있다. 이러한 문제점은 WPP의 적용에 의해 해결될 수 있다. WPP는 추가적으로 엔트로피 코딩에 대해서도 병렬적인 부/복호화를 지원할 수 있다. 이를 위하여 각 CTU의 행 단위로 서브 비트스트림을 생성하고 해당 서브 비트스트림들의 위치를 슬라이스 헤더에 전송해 줌으로써 각 서브 비트스트림에 대해서 병렬적인 엔트로피 코딩을 가능하게 해준다. 즉 WPP를 통해 각 행마다 엔트로피 코딩을 독립적으로 사용할 수 있다. Wavefront parallel processing (WPP) and / or tile based encoding / decoding may be used to improve the encoding / decoding speed of an image. Wavefront technology starts parallel processing when the dependence on pixel information is resolved. Referring to FIG. 6A, when the CTU D completes the decoding / decoding of B, which is the CTU of the upper row, the dependency on pixel information may be resolved. Therefore, the prediction algorithm using the information of the CTU B can be applied. Similarly, CTU H can resolve the dependence on pixel information when the CTU E's encoding / decoding of the top row is completed. Therefore, the prediction algorithm using the information of the CTU E can be applied. However, even if the image is encoded / decoded in parallel in consideration of the pixel information dependency, entropy coding is not executed in parallel but executed in sequential scanning order. Therefore, entropy coding has become a bottleneck for parallel processing in encoding / decoding. This problem can be solved by the application of WPP. WPP can additionally support parallel encoding / decoding for entropy coding. To this end, by generating a sub bitstream in the row unit of each CTU and transmitting the position of the corresponding sub bitstream to the slice header, parallel entropy coding is possible for each sub bitstream. In other words, entropy coding can be used independently for each row through WPP.

WPP에서는 엔트로피 코딩의 부호화 효율 저하를 최소화하는 동시에 병렬 부/복호화를 지원하기 위해, 하단 행은 상단 행의 2번째 블록이 완성될 시점에서 엔트로피 문맥 모델을 획득하고 부/복호화를 시작한다. 현재 블록과 이웃 블록은 상관도가 높다. 따라서, 각 행에서 완전히 초기화된 문맥 모델을 사용하는 것보다 업데이트된 문맥 정보를 이웃 블록으로부터 획득하여, 현재 행의 문맥 모델을 초기화하는 것이 부/복호화기의 압축 효율을 높이는데 더 유리하다. In WPP, in order to minimize the deterioration in encoding efficiency of entropy coding and simultaneously support parallel encoding / decoding, the lower row acquires an entropy context model and starts encoding / decoding at the time when the second block of the upper row is completed. The current block and neighboring blocks are highly correlated. Therefore, it is more advantageous to increase the compression efficiency of the decoder / decoder by obtaining the updated context information from the neighboring block and initializing the context model of the current row than using the fully initialized context model in each row.

도 7은 영상 내에서 WPP 처리 순서를 설명하기 위한 도면이다. 7 is a diagram for explaining a WPP processing procedure in an image.

도 7의 영상내 블록은 CTU를 의미한다. 블록 내 숫자는 각 CTU의 처리 순서를 의미한다. 도 7의 화살표는 상단 행의 문맥 정보를 획득하여 현재 행의 문맥 모델을 초기화는 것을 나타낸다.The intra-picture block of FIG. 7 means CTU. The number in the block means the processing order of each CTU. Arrows in FIG. 7 indicate that the context information of the top row is obtained to initialize the context model of the current row.

도 7에 있어서, 음영처리된 CTU는 부호화 및/또는 복호화가 완료된 CTU를 나타낸다. 또한, 음영처리되지 않은 CTU는 아직 부호화 및/또는 복호화가 시작되지 않은 CTU를 나타낸다.In FIG. 7, the shaded CTU represents a CTU in which encoding and / or decoding is completed. In addition, unshaded CTUs represent CTUs that have not yet started encoding and / or decoding.

도 8은 타일 기반 병렬 처리를 설명하기 위한 도면이다. 8 is a diagram for explaining tile-based parallel processing.

도 8에 도시된 바와 같이, 한 픽쳐는 직사각형 모양을 갖는 여러 개의 타일(예컨대, 6개의 타일)로 분할될 수 있다. 각각의 타일은 서로 독립적인 영역으로 부/복호화될 수 있다. 각각의 타일에 포함된 CTU 들은 순차 주사 순서대로 부/복호화가 수행될 수 있다. 즉, 타일 기반 병렬 처리의 경우, 타일의 경계에 위치하는 블록들은 이웃하는 타일에 속하는 블록의 픽셀 값이나 움직임 벡터와 같은 정보를 사용하지 않고 부호화 또는 복호화될 수 있다. 따라서, 타일을 이용할 경우, 슬라이스의 경우와 유사하게, 각 타일 영역을 동시에 인코딩하거나 디코딩할 수 있다. As shown in FIG. 8, one picture may be divided into several tiles (eg, six tiles) having a rectangular shape. Each tile may be encoded / decoded into areas independent of each other. CTUs included in each tile may be encoded / decoded in sequential scanning order. That is, in tile-based parallel processing, blocks located at a boundary of a tile may be encoded or decoded without using information such as pixel values or motion vectors of blocks belonging to neighboring tiles. Thus, when using tiles, similarly to slices, each tile area can be simultaneously encoded or decoded.

타일 분할 정보는 예컨대, 픽쳐 파라미터 셋(Picture Parameter Set, PPS)을 통해 시그널링될 수 있다. 타일 분할 정보는 각 타일의 시작점에 관한 정보를 포함할 수 있다. 또는 타일 분할 정보는 픽쳐를 분할하는 하나 이상의 수직 경계선 및/또는 하나 이상의 수평 경계선에 관한 정보를 포함할 수 있다. 또는 타일 분할 정보는 픽쳐를 균등한 크기의 타일로 분할할 지에 관한 정보를 포함할 수 있다. The tile division information may be signaled through, for example, a picture parameter set (PPS). The tile splitting information may include information about a starting point of each tile. Alternatively, the tile division information may include information regarding one or more vertical borders and / or one or more horizontal borders that divide the picture. Alternatively, the tile splitting information may include information about splitting the picture into tiles of equal size.

도 9는 360도 전방향 비디오를 부/복호화하기 위한 전개도를 예시한 도면이다.9 is a diagram illustrating a development view for encoding / decoding a 360 degree omnidirectional video.

360도 전방향 비디오의 영상은 도 9에 도시된 바와 같이, 다면체의 전개도, 또는 구를 펼친 등장방형(Equirectangular) 형태로 투영되어 처리될 수 있다. 영상을 재생할 때는 해당 영상이 다면체, 또는 구에 투영되고 사용자는 다면체 또는 구의 중심에서 영상을 시청하는 형태로 재생될 수 있다. 예컨대, 도 2에 도시된 바와 같이, 사용자의 시점은 다면체 또는 구의 중심에 있는 것으로 가정할 수 있다.As shown in FIG. 9, an image of a 360-degree omnidirectional video may be processed by being projected in an unfolded view of a polyhedron or an elongated isometric (Equirectangular) form. When the image is played back, the image may be projected onto a polyhedron or sphere, and the user may play the image in the form of viewing the image from the center of the polyhedron or sphere. For example, as shown in FIG. 2, the user's viewpoint may be assumed to be in the center of a polyhedron or sphere.

도 10은 360도 전방향 영상을 정육면체에 투영한 경우의 전개도를 설명하기 위한 도면이다.FIG. 10 is a diagram for explaining a developed view when a 360 degree omnidirectional image is projected onto a cube. FIG.

도 10에 도시된 예에서와 같이, 360도 전방향 영상이 정육면체에 투영될 경우, 영상의 정보는 6개의 면 P1, P2, P3, P4, P5 및 P6 별로 저장될 수 있다. 또한, 영상이 재생이 될 때는 도 10의 (a)에 도시된 예에서와 같이, 6개 면의 각각의 영상을 3차원 공간의 정육면체에 투영시켜 재생할 수 있다. 여기서 시청자의 위치는 정육면체의 중심에 있으며, 각 면들은 눈이 바라보는 시점의 위치 및/또는 방향(퍼스펙티브, Perspective)이 될 수 있다. 예를 들어, 도 10에 도시된 예에서, 퍼스펙티브 P4가 정육면체의 정면, 퍼스펙티브 P1이 정육면체의 위쪽이라고 한다면 퍼스펙티브 P2는 정육면체의 뒤쪽, 퍼스펙티브 P3는 정육면체의 왼쪽, 퍼스펙티브 P5는 정육면체의 오른쪽, 퍼스펙티브 P6는 정육면체의 아래쪽에 해당될 수 있다. As shown in the example of FIG. 10, when a 360-degree omnidirectional image is projected onto a cube, information of the image may be stored for six planes P1, P2, P3, P4, P5, and P6. In addition, when the image is reproduced, as shown in the example of FIG. 10A, each image of six surfaces may be reproduced by projecting onto a cube in a three-dimensional space. Here, the viewer's position is at the center of the cube, and each side may be a position and / or a direction (perspective) of the eye view. For example, in the example shown in Figure 10, if perspective P4 is the front of the cube, perspective P1 is the top of the cube, then perspective P2 is the back of the cube, perspective P3 is the cube's left, perspective P5 is the cube's right, perspective P6 May correspond to the bottom of the cube.

다면체에 투영되는 전방향 영상은 다면체를 어떻게 전개하느냐에 따라 다양한 전개도로 표현될 수 있다. 도 11은 정육면체에 투영되는 전방향 영상을 2차원으로 전개하기 위한 다양한 방식을 설명하기 위한 도면이다.The omnidirectional image projected on the polyhedron can be expressed in various developments depending on how the polyhedron is developed. FIG. 11 is a diagram for describing various methods for developing an omnidirectional image projected on a cube in two dimensions.

예컨대, 도 11에 도시된 예에서와 같이, 11가지 전개 방식이 존재할 수 있다. 또는 도 11에 도시된 전개도를 상/하/좌/우로 대칭시켜 얻어진 전개도를 다른 형태의 전개도로 취급할 수도 있다. For example, as in the example shown in FIG. 11, there may be eleven deployment schemes. Alternatively, the developed view obtained by symmetry of the developed view shown in FIG. 11 up / down / left / right may be treated as another form of developed view.

각 퍼스펙티브를 독립적으로 부/복호화하는 경우, 도 11에 도시된 전개도는 영상이 어디에 위치하는지에 대한 정보 이외에 별다른 의미가 없을 수 있다. 하지만, 퍼스펙티브간 영상 정보의 연속성을 이용하여 순차 주사 순으로 부/복호화를 처리하게 되면 전개도의 형태에 따라 부/복호화 속도에 차이가 발생할 수 있다. In the case of independently encoding / decoding each perspective, the developed view illustrated in FIG. 11 may have little meaning other than information about where the image is located. However, if the encoding / decoding process is performed in the sequential scanning order using the continuity of the image information between perspectives, the encoding / decoding rate may be different depending on the form of the developed view.

이하에서, 전개도에 따른 부/복호화 속도의 차이에 대해 상세히 설명한다.In the following, the difference of the decoding / decoding rate according to the development will be described in detail.

도 12는 인접한 퍼스펙티브에 속하는 CTU 사이의 의존성을 설명하기 위한 예시도이다. 도 12에서, A, B, C, D, E, F의 각각은 전개도 상에 전개되는 퍼스펙티브들의 위치를 나타내고 굵은 선은 퍼스펙티브간의 경계를 나타낸다. 각 퍼스펙티브 내부의 작은 사각형은 영상 처리의 단위가 되는 블록(예컨대, CTU)를 나타낸다. 12 is an exemplary diagram for explaining dependencies between CTUs belonging to adjacent perspectives. In Fig. 12, each of A, B, C, D, E, and F represents the positions of the perspectives that are developed on the developed view, and the thick lines represent the boundaries between the perspectives. Small squares inside each perspective represent blocks (eg, CTUs) that are units of image processing.

WPP 병렬 처리를 통해서 해당 영상을 부/복호화 할 경우, 퍼스펙티브 E의 CTU e1은 퍼스펙티브 B의 CTU b1 및 퍼스펙티브 D의 CTU d2에 대해 의존성을 갖는다. 따라서, 퍼스펙티브 B의 CTU b1 및 퍼스펙티브 D의 CTU d2의 부/복호화가 완료되어야 퍼스펙티브 E의 CTU e1의 부/복호화가 가능해진다. 마찬가지 이유로 퍼스펙티브 C의 CTU c1 및 퍼스펙티브 E의 CTU e2의 부/복호화가 완료되어야 퍼스펙티브 F의 CTU f1의 부/복호화가 가능하진다. When the video is encoded / decoded through WPP parallel processing, CTU e1 of Perspective E has a dependency on CTU b1 of Perspective B and CTU d2 of Perspective D. Therefore, the CTU b1 of the Perspective B and the CTU d2 of the Perspective D must be completed to decode / decode the CTU e1 of the Perspective E. For the same reason, the CTU c1 of the Perspective C and the CTU e2 of the Perspective E must be completed to decode / decode the CTU f1 of the Perspective F.

전방향 영상의 경우 전개도에 따라서 영상의 특정 위치에 정보가 존재하지 않을 수 있다. 예를 들어, 전개도에 따라 도 12에 도시된 퍼스펙티브 D의 영상 존재하지 않을 수 있다. 하지만 기존 WPP 병렬 처리 방식으로는 퍼스펙티브 D의 영상이 존재하지 않더라도 퍼스펙티브 E의 부/복호화는 퍼스펙티브 B의 CTU b1의 부/복호화가 완료된 후 시작될 수 있다. 따라서, 전체 영상의 부/복호화 처리 시간은 퍼스펙티브 D의 영상가 존재할 때와 차이가 없다. 하지만, 전개도 상으로 퍼스펙티브 F의 영상이 없을 경우 퍼스펙티브 E의 영상의 부/복호화 처리가 끝나면 전체 영상의 부/복호화가 완료될 수 있다. In the case of the omnidirectional image, information may not exist at a specific position of the image according to the development view. For example, the image of the perspective D shown in FIG. 12 may not exist according to the developed view. However, even if there is no perspective D image according to the existing WPP parallel processing method, the encoding / decoding of the perspective E may be started after the encoding / decoding of the CTU b1 of the perspective B is completed. Therefore, the time of sub / decoding processing of the entire image is not different from that of the perspective D image. However, if there is no image of the perspective F on the developed view, when the encoding / decoding process of the image of the perspective E is finished, the encoding / decoding of the entire image may be completed.

도 13은 전개 방식에 따른 부/복호화 종료 시점을 설명하기 위한 도면이다.FIG. 13 is a diagram for describing an end point of decoding / decoding according to a deployment method.

도 13의 (a)는 부/복호화 순서상 마지막 퍼스펙티브가 도 12의 D 위치에 있는 경우를 도시한 도면이다. 도 13의 (b)는 마지막 퍼스펙티브가 도 12의 E 위치에 있는 경우를 도시한 도면이다. 도 13의 (a) 및 (b)에 있어서, 굵은 선은 퍼스펙티브 사이의 경계를 나타낸다. 또한, 각 퍼스펙티브 내의 작은 사각형은 CTU를 나타낸다. 또한, 각 CTU 내부의 숫자는 해당 CTU의 부/복호화 순서를 나타낸다.FIG. 13A illustrates a case where the last perspective in the sub / decoding sequence is at the D position of FIG. 12. FIG. 13B is a diagram illustrating a case in which the last perspective is at position E of FIG. 12. In Figs. 13A and 13B, thick lines indicate boundaries between perspectives. In addition, the small squares in each perspective represent CTUs. In addition, the number inside each CTU indicates the encoding / decoding order of the corresponding CTU.

각 CTU의 부/복호화 처리 시간이 동일하다고 가정할 때, 도 13의 (a)의 경우 23번째 CTU를 처리할 때 전체 영상의 부/복호화가 완료됨을 알 수 있다. 또한, 도 13의 (b) 경우 28번째 CTU를 처리할 때 전체 영상의 부/복호화가 완료됨을 확인할 수 있다. 전술한 바와 같이, 좌상단에서 우하단의 순서로 부/복호화를 수행하는 WPP 방식을 이용하면, 영상에 포함된 퍼스펙티브의 개수가 동일하더라도 전체 영상의 부/복호화가 완료되는 시점이 다름을 알 수 있다. 즉, 퍼스펙티브의 위치(또는 전개 방식)가 부/복호화 처리 속도에 영향을 줄 수 있다. On the assumption that the encoding / decoding processing time of each CTU is the same, it can be seen that in the case of FIG. 13A, when the 23rd CTU is processed, encoding / decoding of the entire image is completed. In addition, in case (b) of FIG. 13, when processing the 28 th CTU, it may be confirmed that encoding / decoding of the entire image is completed. As described above, when using the WPP method of performing the decoding / decoding in the order of the upper left to the lower right, even when the number of perspectives included in the image is the same, it can be seen that the timing at which the encoding / decoding of the entire image is completed is different. . In other words, the position (or deployment method) of the perspective may affect the speed of the decoding / decoding process.

WPP를 이용한 부/복호화 처리 순서는 영상 정보 의존성에 의해 결정될 수 있다. 즉, CTU의 처리는 위쪽 행의 2개의 CTU가 처리되어야 시작될 수 있다. 각 CTU의 부/복호화 처리 시간이 동일하다고 가정하면, 위와 같은 의존성으로 인해 행(row)당 지연은 2개의 CTU를 처리하는 시간이 된다. 또한, CTU의 처리는 좌측에 인접한 1개의 CTU가 처리되어야 시작될 수 있으므로, 열(column)당 지연은 1개의 CTU를 처리하는 시간이 된다. The encoding / decoding process order using WPP may be determined by image information dependency. That is, the processing of the CTU can be started when two CTUs in the upper row are processed. Assuming that each CTU's encoding / decoding processing time is the same, the delay per row becomes the time to process two CTUs due to the above dependency. In addition, since the processing of the CTU can be started only when one CTU adjacent to the left is processed, the delay per column becomes the time to process one CTU.

도 14는 전개도에 따른 영상 처리 시간의 차이를 설명하기 위한 도면이다.14 is a diagram for explaining a difference in image processing time according to a developed view.

도 14의 (a)를 참조하면, 각 시점(퍼스펙티브)은 5×5개의 CTU를 가진다. 마지막 시점은 4번째 행 3번째 열에 위치하고, 마지막 CTU는 20번째 행, 15번째 열에 위치한다. 전술한 바와 같이, 행당 2개의 CTU, 열 당 1개의 CTU 지연이 발생한다. 따라서, 마지막 CTU는 (2 × 20(행) - 1) + (1 × 15(열) - 1)번째에 처리된다. 결국, 도 14의 (a)에서, 마지막 CTU는 53번째에 완료됨을 확인할 수 있다. 따라서, 1개의 CTU의 처리 시간을 t(CTU)라고 하면, 도 14의 (a)의 전개도에 따른 전체 영상의 처리에 소요되는 시간은 53*t(CTU)가 된다. Referring to FIG. 14A, each viewpoint (perspective) has 5 × 5 CTUs. The last time point is located in the third row of the fourth row, and the last CTU is located in the 20th row and the 15th column. As mentioned above, there are two CTU delays per row and one CTU delay per column. Therefore, the last CTU is processed at (2 × 20 (row) -1) + (1 × 15 (column) -1). As a result, in FIG. 14A, it can be seen that the last CTU is completed at the 53rd time. Therefore, when the processing time of one CTU is t (CTU), the time required for processing the entire image according to the development of FIG. 14A becomes 53 * t (CTU).

도 14의 (b)는 시점당 5×5개의 CTU를 가진 전방향 영상의 또 다른 전개도를 예시한 도면이다. 도 14의 (b)를 참조하면, 전개도의 오른쪽 하단에 위치한 CTU는 15번째 행, 5번째 열 및 10번째 행, 20번째 열의 2군데에 존재한다. 각각의 경우에 대해서 처리 시간을 계산해보면 15번째 행, 5번째 열의 CTU는 (2 × 15(행) - 1) + (1 × 5(열) -1) = 33번째에 처리된다. 10번째 행, 20번째 열의 CTU는 (2 × 10(행) - 1) + (1 × 20(열) -1) = 38번째에 처리된다. 따라서, 전체 영상의 처리에 소요되는 시간은 38*t(CTU)가 된다. 전술한 바와 같이, 같은 크기의 정육면체의 전개도지만 어떻게 전개되느냐에 따라서 WPP의 처리 속도에 차이가 있음을 알 수 있다.FIG. 14B is a diagram illustrating another developed view of an omnidirectional image having 5 × 5 CTUs per view. Referring to FIG. 14B, the CTU located at the lower right of the developed view exists in two places of the 15th row, the 5th column, the 10th row, and the 20th column. In each case, when the processing time is calculated, the CTU of the 15th row and the 5th column is processed at (2 × 15 (row) − 1) + (1 × 5 (column) −1) = 33rd. The CTU of the 10th row and the 20th column is processed at (2 × 10 (row)-1) + (1 × 20 (column) -1) = 38th. Therefore, the time required for processing the entire image is 38 * t (CTU). As described above, it can be seen that there is a difference in the processing speed of the WPP depending on how the developed view of the cube of the same size is developed.

인접한 CTU 사이의 의존성에 의해 발생하는 처리 시간의 지연은, 타일 기반 기술을 적용하여 완화시킬 수 있다. 즉, 각각의 면(즉, 서로 다른 퍼스펙티브를 갖는 영역)을 독립적 타일로 취급하여 병렬적으로 부/복호화하는 것이다. 각 퍼스펙티브를 독립적 타일로 병렬 처리하는 경우, 전체 영상의 처리 시간은 하나의 퍼스펙티브를 처리하는 시간(예컨대, 도 14의 예에서는 25*t(CTU))으로 단축될 수 있다. 타일 기반의 병렬 부/복호화는 사용자가 일정 거리를 두고 시청하게 되는 영상에 유용하게 적용될 수 있다. 하지만, 360도 VR 영상과 같은 실감형 영상의 경우, 사용자는 영상의 일부를 매우 근접한 위치에서 시청할 수 있으므로, 기존 영상들 보다 훨씬 큰 해상도를 가져야 한다. 특히, 360도 VR 영상의 경우, 몰입도가 매우 중요하므로, 영상 재생시 픽셀이 보이지 않을 정도의 고화질이 요구된다. Delays in processing time caused by dependencies between adjacent CTUs can be mitigated by applying tile-based techniques. In other words, each face (that is, an area having different perspectives) is treated as an independent tile to be encoded / decoded in parallel. When each perspective is processed in parallel with independent tiles, the processing time of the entire image may be shortened to the processing time of one perspective (eg, 25 * t (CTU) in the example of FIG. 14). Tile-based parallel encoding / decoding can be usefully applied to an image that a user watches at a certain distance. However, in the case of a realistic image such as a 360-degree VR image, the user can watch a part of the image at a very close position, and thus, the user must have a much larger resolution than the existing images. Particularly, in the case of a 360-degree VR image, immersion is very important, and thus high image quality is required such that pixels are not visible during image reproduction.

타일 기반 기술을 사용하면, 각 타일이 독립적으로 처리되므로, 예측에 활용할 수 있는 참조 영역이 줄어들고, 압축 효율이 낮아지게 된다. 따라서, 압축 효율이 크게 요구되는 360도 전방향 영상에는 타일 기반 기술을 그대로 적용하는 것이 적합하지 않을 수 있다.Using tile-based techniques, each tile is processed independently, reducing the reference area available for prediction and lowering compression efficiency. Therefore, it may not be suitable to apply the tile-based technology to the 360 degree omnidirectional image which requires a great compression efficiency.

따라서, 360도 VR 영상의 병렬 처리를 위해서는 퍼스펙티브간의 의존성을 이용한 부/복호화가 중요하다. 도 13 및 도 14를 참조하여, 360도 VR 영상의 처리를 위해 다양한 전개 방식이 적용될 수 있고, 각 전개도상에서 인접한 퍼스펙티브간 의존성을 이용하여 병렬 처리를 수행할 수 있음을 설명하였다. 그러나, 전개도상에서의 퍼스펙티브간 연속성만을 고려하게 되면, 전체 영상 처리 시간을 단축하는 것은 한계가 있다. 예컨대, 360도 VR 영상의 전개도는 도 10에 도시된 바와 같이, 3차원으로 연결된 퍼스펙티브들을 펴서 만들어진 것이다. 따라서, 다면체상에서는 퍼스펙티브의 변의 개수만큼 인접한 퍼스펙티브가 존재한다. 즉, 전개도 상에서 이용할 수 있는 인접 퍼스펙티브의 수보다 다면체 상에서 이용할 수 있는 인접 퍼스펙티브의 수가 더 많다.Therefore, encoding / decoding using the dependencies between perspectives is important for parallel processing of a 360 degree VR image. Referring to FIGS. 13 and 14, various development methods may be applied to process 360-degree VR images, and parallel processing may be performed using dependencies between adjacent perspectives on each development view. However, if only the continuity between perspectives in the developed view is taken into consideration, there is a limit in shortening the entire image processing time. For example, a developed view of a 360-degree VR image is made by unfolding three-dimensionally connected perspectives as shown in FIG. 10. Therefore, on the polyhedron, there are adjacent perspectives as many as the number of sides of the perspective. That is, the number of adjacent perspectives available on a polyhedron is greater than the number of adjacent perspectives available on a development view.

이하에서는 360도 VR 영상의 특성을 고려한, 영상의 병렬 부/복호화 방법 및 장치를 설명한다. 구체적으로, 본 개시에 따르면, 360도 비디오(전방향 비디오)와 같은 복수의 퍼스펙티브를 가진 영상에서 각 퍼스펙티브간의 연속성이 하나 이상 존재함을 이용하여 부/복호화의 병렬적 처리를 보다 효율적으로 처리할 수 있다.Hereinafter, a method and apparatus for parallel encoding / decoding of an image in consideration of characteristics of a 360 degree VR image will be described. Specifically, according to the present disclosure, in the image having a plurality of perspectives such as 360 degree video (omnidirectional video), the parallel processing of encoding / decoding may be more efficiently processed by using one or more continuities between each perspective. Can be.

도 10의 (a)에 도시된 예에서와 같이, 360도 전방향 영상은 정육면체와 같은 여러 퍼스펙티브를 가진 다면체의 전개도에 저장이 된다. 전개도상에서는, 도 10의 (c)에 도시된 예에서와 같이, 퍼스펙티브 P1은하나의 퍼스펙티브와 인접하고 있다. 그러나, 실제로는 도 10의 (a)에 도시된 예에서와 같이, 각 퍼스펙티브는 좌우상하 방향으로 네 개의 퍼스펙티브와 인접하고 있다. 이는 기존의 왼쪽 상단에서 오른쪽 하단의 순차 주사 방향과 다른 방향으로 영상 정보의 부/복호화가 진행될 수 있음을 의미한다. 또한, 3차원 공간상에서 이웃하지 않는 퍼스펙티브간에는 영상간 연속성이 없기 때문에 의존성이 존재하지 않는다. 즉, 이웃하지 않는 퍼스펙티브들은 서로 참조하지 않기 때문에, 병렬적으로 부/복호화를 진행해도 예측 효율이 떨어지지 않는다. 연속되는 퍼스펙티브가 여러 방향으로 존재하여 부/복호화 방향이 여러 방향으로 가능하다는 점과, 영상간 연관성이 서로 없는 퍼스펙티브가 하나 이상 존재한다는 특성을 활용하여 부/복호화 병렬 처리를 진행함으로써, 압축 효율의 손실을 최소화 하면서 처리 속도를 높일 수 있다.As in the example shown in FIG. 10A, the 360 degree omnidirectional image is stored in a developed view of a polyhedron with several perspectives, such as a cube. In the development view, as in the example shown in Fig. 10C, the perspective P1 is adjacent to one perspective. In practice, however, as in the example shown in Fig. 10A, each perspective is adjacent to four perspectives in the horizontal direction. This means that the encoding / decoding of the image information may be performed in a direction different from the sequential scanning direction of the existing upper left to lower right. In addition, since there is no continuity between images between perspectives that do not neighbor in three-dimensional space, there is no dependency. That is, since the neighboring perspectives do not refer to each other, even if the encoding / decoding proceeds in parallel, the prediction efficiency does not decrease. Compression / decoding parallel processing is performed by taking advantage of the fact that successive perspectives exist in multiple directions and that the decoding and decoding directions can be performed in multiple directions, and that there is one or more perspectives with no correlation between images. Speed up processing while minimizing losses.

도 15는본 개시에 따른 영상 병렬 처리를 설명하기 위한 개념도이다.15 is a conceptual diagram for describing image parallel processing according to the present disclosure.

도 16은 본 개시에 따른 영상 병렬 처리를 설명하기 위한 흐름도이다.16 is a flowchart for explaining image parallel processing according to the present disclosure.

도 17은 정육면체 상에서의 전방향 영상의 처리 순서를 예시한 도면이다.17 is a diagram illustrating a processing sequence of an omnidirectional image on a cube.

도 18은 도 17의 전방향 영상을 전개한 전개도를 예시한 도면이다.FIG. 18 is a diagram illustrating an expanded view of the omnidirectional image of FIG. 17. FIG.

도 15, 도 17 및 도 18에서 같은 알파벳이 기재된 면들은 서로 참조하지 않는 시점들을 의미한다. 예를 들어 A와 A'는 서로 참조하지 않는 시점들을 나타낸다. B와 B'는 A, A' 시점을 제외한 나머지 시점들 중 서로 참조하지 않는 시점들을 나타낸다. C, C'는 위의 시점들을 제외한 시점들 중 서로 참조하지 않는 시점들을 나타낸다. 서로 참조하지 않는 시점들은 병렬적으로 부/복호화될 수 있다. Surfaces in which the same alphabet is written in FIGS. 15, 17, and 18 refer to points of time that do not refer to each other. For example, A and A 'represent time points not referenced to each other. B and B 'represent viewpoints not referenced to each other, except for A and A' viewpoints. C and C 'represent viewpoints not referenced to each other among the viewpoints except for the above viewpoints. Time points that do not refer to each other may be encoded / decoded in parallel.

도 15에서, 시점과 시점을 연결하는 화살표는 시점간 참조 관계를 나타낸다. 예를 들어 시점 A와 시점 B를 연결한 화살표는 시점 B의 부/복호화시 시점 A를 참조한다는 것을 의미한다. 스레드의 개수는 병렬적으로 부/복호화할 수 있는 시점의 개수에 의해 결정될 수 있다. 예를 들어 병렬적으로 부/복호화할 수 있는 시점의 개수가 N개라면 N개 이상의 스레드가 사용될 수 있다. In FIG. 15, an arrow connecting a viewpoint and a viewpoint represents a reference relationship between viewpoints. For example, an arrow connecting the view point A and the view point B means that the view point A refers to a time point B when decoding / decoding the view point B. The number of threads may be determined by the number of time points that can be encoded / decoded in parallel. For example, if the number of time points that can be encoded / decoded in parallel is N, N or more threads may be used.

도 15를 참조하여, 본 개시에 따른 부/복호화 방법을 설명한다. 도 15의 (a)를 참조하면, 먼저 시점 A 및 시점 A와 동시에 부/복호화할 수 있는 하나 이상의 시점들을 병렬로 부/복호화할 수 있다. 예컨대, 시점 A와 시점 A'는 연속성이 없으므로, 병렬 처리될 수 있다. 도 15의 (b)를 참조하면, 도 15의 (a)에서 처리되는 시점들(A, A')의 일부 또는 전부가 부/복호화된 후, 이 시점들(A. A')을 참조하는 시점 B 및 시점 B와 동시에 부/복호화할 수 있는 하나 이상의 시점들을 병렬로 부/복호화할 수 있다. 예컨대, 시점 B와 시점 B'는 연속성이 없으므로, 병렬 처리될 수 있다. 도 15의 (c)를 참조하면, 같은 방식으로 시점 C 및 시점 C와 동시에 부/복호화할 수 있는 하나 이상의 시점들을 병렬로 부/복호화할 수 있다. 이와 같은 방식으로 나머지 시점들도 병렬로 부/복호화가 가능한 시점들끼리 묶어 부/복호화할 수 있다.Referring to FIG. 15, the encoding / decoding method according to the present disclosure will be described. Referring to FIG. 15A, first, one or more viewpoints that may be encoded / decoded simultaneously with the viewpoint A and the viewpoint A may be encoded / decoded in parallel. For example, since the viewpoint A and the viewpoint A 'are not continuous, they can be processed in parallel. Referring to FIG. 15B, after some or all of the time points A and A ′ processed in FIG. 15A are encoded / decoded, the time points A. A ′ are referred to. One or more viewpoints that can be encoded / decoded simultaneously with the viewpoint B and the viewpoint B may be encoded / decoded in parallel. For example, the viewpoint B and the viewpoint B 'are not continuous, and thus may be processed in parallel. Referring to FIG. 15C, in the same manner, one or more viewpoints that can be encoded / decoded simultaneously with the viewpoint C and the viewpoint C may be encoded / decoded in parallel. In this way, the remaining views can also be encoded / decoded by combining the points that can be encoded / decoded in parallel.

도 15를 참조하여 설명한 방법은 도 16의 흐름도로 나타낼 수 있다.The method described with reference to FIG. 15 may be represented by the flowchart of FIG. 16.

도 16의 단계 S1610에서, 하나의 퍼스펙티브 또는 이웃하지 않는 둘 이상의 퍼스펙티브에 대한 부/복호화를 시작할 수 있다.In step S1610 of FIG. 16, it is possible to start encoding / decoding of one perspective or two or more perspectives that are not neighboring.

단계 S1620에서, 부/복호화가 시작된 퍼스펙티브에 대한 부/복호화가 진행될 수 있다. 부/복호화는 각 퍼스펙티브에 포함된 부호화 단위(예컨대, CTU 단위)로 진행될 수 있다.In step S1620, encoding / decoding of the perspective in which encoding / decoding has started may proceed. Encoding / decoding may be performed in coding units (eg, CTU units) included in each perspective.

단계 S1630에서, 모든 퍼스펙티브에 대한 부/복호화가 완료되었는지 판단할 수 있다. 모든 퍼스펙티브에 대한 부/복호화가 완료되었으면(단계 S1630에서 Yes), 영상 부/복호화를 종료할 수 있다.In step S1630, it may be determined whether encoding / decoding for all perspectives is completed. If encoding / decoding for all perspectives has been completed (Yes in step S1630), video encoding / decoding can be ended.

모든 퍼스펙티브에 대한 부/복호화가 완료되지 않았으면(단계 S1630에서 No), 단계 S1640에서, 부/복호화가 진행중인 또는 완료된 퍼스펙티브에 의해 의존성이 해결된 이웃 퍼스펙티브가 존재하는지 여부를 판단할 수 있다. 의존성이 해결된 이웃 퍼스펙티브가 존재하지 않는다면(단계 S1640에서, No), 단계 S1620에서, 부/복호화가 진행중인 퍼스펙티브에 대한 부/복호화를 계속 진행할 수 있다.If the encoding / decoding for all the perspectives is not completed (No in step S1630), in step S1640, it may be determined whether there is a neighbor perspective in which the encoding / decoding is in progress or whose dependencies are resolved by the completed perspective. If there is no neighbor perspective in which the dependency is resolved (No in step S1640), in step S1620, the encoding / decoding for the perspective in which the decoding / decoding is in progress may continue.

의존성이 해결된 이웃 퍼스펙티브가 존재한다면(단계 S1640에서, Yes), 단계 S1650에서, 상기 이웃 퍼스펙티브에 대한 부/복호화를 시작할 수 있다.If there is a neighbor perspective in which the dependency is resolved (Yes in step S1640), then in step S1650, encoding / decoding of the neighbor perspective can be started.

이후, 단계 S1620에서, 부/복호화가 시작된 복수의 퍼스펙티브에 대한 부/복호화가 계속 진행될 수 있다. 상기 단계 S1620 내지 S1650은 모든 퍼스펙티브들에 대한 부/복호화가 완료될 때까지 반복될 수 있다.Subsequently, in step S1620, encoding / decoding for a plurality of perspectives in which encoding / decoding is started may proceed. Steps S1620 to S1650 may be repeated until the encoding / decoding of all the perspectives is completed.

도 19는 정육면체 전개도 형태의 360도 VR 영상의 일 예이다.19 is an example of a 360-degree VR image in the form of a cube exploded view.

도 20 내지 도 22는 도 19의 비디오를 병렬적으로 부/복호화하는 단계를 설명하기 위한 도면이다. 도 20 내지 도 22를 참조하는 이하의 설명에 있어서, 각 퍼스펙티브를 나타내는 기호는 도 18에 도시된 해당 퍼스펙티브의 기호와 같다. 도 21 및 도 22에 도시된 화살표는 퍼스펙티브간의 참조 관계를 나타낸다.20 to 22 are diagrams for describing an operation of encoding / decoding a video of FIG. 19 in parallel. In the following description with reference to FIGS. 20 to 22, symbols representing each perspective are the same as symbols of the corresponding perspective shown in FIG. 18. Arrows shown in FIGS. 21 and 22 indicate reference relationships between perspectives.

먼저, 도 20에 도시된 바와 같이, 서로 이웃하지 않는 퍼스펙티브 A 및/또는 A'는 병렬적으로 부/복호화될 수 있다. First, as shown in FIG. 20, perspectives A and / or A 'which are not adjacent to each other may be negative / decoded in parallel.

그 후, 도 21에 도시된 바와 같이, 퍼스펙티브 A 및/또는 A'를 참조하여 퍼스펙티브 B 및/또는 B'를 병렬적으로 부/복호화할 수 있다. 퍼스펙티브 B 및/또는 B'의 부/복호화는 퍼스펙티브 A 및/또는 A'와의 의존성이 해결되면 시작될 수 있다. 즉, 퍼스펙티브 A 및/또는 A'의 부/복호화가 일부 또는 전부 수행되었을 때 퍼스펙티브 B 및/또는 B'의 부/복호화가 시작될 수 있다. 도 21에 도시된 바와 같이, 퍼스펙티브 B 및/또는 B'는 퍼스펙티브 A 및/또는 A'를 참조하여 부/복호화될 수 있다. 퍼스펙티브 B 및/또는 B'는 각각 퍼스펙티브 A 및/또는 A'와 인접한 경계 부분에서, 퍼스펙티브 A 및/또는 A'의 부/복호화에 따라 의존성이 해결된 부분부터 부/복호화될 수 있다. Thereafter, as illustrated in FIG. 21, perspective B and / or B 'may be encoded / decoded in parallel with reference to perspective A and / or A'. Encoding / decoding of perspective B and / or B 'can be initiated once the dependencies with perspective A and / or A' are resolved. That is, the encoding / decoding of the perspectives B and / or B 'may be started when the encoding / decoding of the perspectives A and / or A' is performed in part or in whole. As shown in FIG. 21, perspective B and / or B 'may be encoded / decoded with reference to perspective A and / or A'. Perspectives B and / or B 'may be decoded / decoded from the portion where the dependency is resolved according to the encoding / decoding of the perspectives A and / or A' at the boundary portion adjacent to the perspectives A and / or A ', respectively.

예컨대, 퍼스펙티브 B의 상단 경계는 퍼스펙티브 A의 좌측 경계와 인접한다. 따라서, 퍼스펙티브 A의 두번째 행, 첫번째 열의 블록이 부/복호화되면, 퍼스펙티브 B의 첫번째 행, 첫번째 열의 블록에 대한 부/복호화가 시작될 수 있다. 이 경우, 퍼스펙티브 A를 참조하는 퍼스펙티브 B의 부/복호화는 래스터 스캔 순서에 따라 수행될 수 있다.For example, the top boundary of Perspective B is adjacent to the left boundary of Perspective A. Thus, if the block of the second row, first column of perspective A is negative / decoded, the block / decoding of the block of the first row, first column of perspective B can be started. In this case, the encoding / decoding of the perspective B referring to the perspective A may be performed according to the raster scan order.

또한, 예컨대, 퍼스펙티브 B의 하단 경계는 퍼스펙티브 A'의 좌측 경계와 인접한다. 따라서, 퍼스펙티브 A'의 두번째 행, 첫번째 열의 블록이 부/복호화되면, 퍼스펙티브 B의 마지막 행, 마지막 열의 블록에 대한 부/복호화가 시작될 수 있다. 이 경우, 퍼스펙티브 A'를 참조하는 퍼스펙티브 B의 부/복호화는 역래스터 스캔 순서(예컨대, 우하단에서 좌상단의 순서)에 따라 수행될 수 있다.Also, for example, the bottom border of perspective B is adjacent to the left border of perspective A '. Thus, if the block of the second row, first column of perspective A 'is negative / decoded, the block / decoding of the block of the last row, last column of perspective B can be started. In this case, the encoding / decoding of perspective B referring to perspective A 'may be performed according to an inverse raster scan order (eg, order from bottom right to top left).

퍼스펙티브 A 및/또는 A'를 참조하여 퍼스펙티브 B 및/또는 B'를 부/복호화할 경우, 참조되는 블록의 정보는 그대로 이용될 수도 있고, 현재 부/복호화가 진행중인 시점에 따라 적절한 변형을 거친 후 이용될 수도 있다.When encoding / decoding Perspective B and / or B 'with reference to Perspective A and / or A', the information of the referenced block may be used as is, or after appropriate modification depending on the time point at which the current decoding / decoding is in progress. May be used.

그 후, 도 22에 도시된 바와 같이, 일부 또는 전부에 대해 부/복호화가 완료된 퍼스펙티브 A, A', B 및/또는 B'를 참조하여 퍼스펙티브 C 및/또는 C'를 부/복호화할 수 있다. 도 22에서는 퍼스펙티브 A 및/또는 A'를 참조하여 퍼스펙티브 C 및/또는 C'를 부/복호화하는 경우가 도시되었다. 그러나 이에 한정되지 않으며, 예컨대, 퍼스펙티브 B 및/또는 B'를 참조하여 퍼스펙티브 C 및/또는 C'를 부/복호화할 수도 있다. 또는 퍼스펙티브 C 및/또는 C'는 퍼스펙티브 A, A', B 및 B' 중 하나 이상의 퍼스펙티브를 참조하여 부/복호화될 수 있다. 이 경우, 참조되는 블록은 현재 부/복호화가 진행중인 시점에 따라 적절히 변형된 후 참조될 수 있다. Then, as shown in FIG. 22, perspective C and / or C 'may be encoded / decoded with reference to perspectives A, A', B and / or B 'that have been partially / decoded for some or all. . In FIG. 22, a case of encoding / decoding perspective C and / or C 'with reference to perspective A and / or A' is illustrated. However, the present invention is not limited thereto, and for example, perspective C and / or C 'may be encoded / decoded with reference to perspective B and / or B'. Or perspective C and / or C 'may be encoded / decoded with reference to one or more perspectives of perspectives A, A', B and B '. In this case, the referenced block may be referenced after being appropriately modified according to the point in time at which encoding / decoding is currently in progress.

정육면체의 경우는 도 20 내지 도 22에 도시된 3단계로 360도 VR 영상의 부/복호화가 종료될 수 있다. 그러나, 정팔면체나 정이십면체의 경우는 아직 부/복호화가 완료되지 않은 퍼스펙티브가 존재할 수 있다. 따라서 모든 퍼스펙티브의 부/복호화가 완료될 때까지 상기 과정을 반복할 수 있다.In the case of a cube, encoding / decoding of a 360 degree VR image may be terminated in three steps shown in FIGS. 20 to 22. However, in the case of octahedrons or icosahedrons, there may be perspectives that have not yet been decoded or decoded. Therefore, the above process can be repeated until the encoding / decoding of all perspectives is completed.

전술한 바와 같이, 전방향 영상의 각 퍼스펙티브는 복수의 퍼스펙티브와 연속성을 가지고 있다. 또한 각 퍼스펙티브는 적어도 하나의 퍼스펙티브와 연속성을 갖지 않을 수 있다. 본 개시는 이를 이용하여 전방향 영상의 퍼스펙티브들을 병렬적으로 부/복호화할 수 있다. As described above, each perspective of the omnidirectional image has a plurality of perspectives and continuity. Also, each perspective may not have continuity with at least one perspective. The present disclosure may use the same to encode / decode perspectives of an omnidirectional image in parallel.

또한, 전술한 방법에 더하여, 각 퍼스펙티브마다 WPP 기반 기술을 적용하면, 높은 압축 효율을 유지하면서 병렬적으로 더욱 빠르게 처리할 수 있다. 그러나, 도 7을 참조하여 설명한 바와 같이, 각 퍼스펙티브의 왼쪽 상단 블록으로부터 오른쪽 하단 블록의 방향으로 각 행을 병렬적으로 처리하면, 각 퍼스펙티브의 왼쪽 상단 블록의 의존성이 해결될 때까지 해당 퍼스펙티브의 부/복호화는 시작될 수 없다. In addition, in addition to the method described above, applying the WPP-based technology to each perspective, it can be processed faster in parallel while maintaining a high compression efficiency. However, as described with reference to FIG. 7, if each row is processed in parallel in the direction of the upper left block to the lower right block of each perspective, the negative side of the perspective until the dependence of the upper left block of each perspective is resolved. Decryption cannot be started.

도 23은 퍼스펙티브의 부/복호화 방향을 설명하기 위한 예시도이다.23 is an exemplary diagram for explaining a negative / decoding direction of a perspective.

도 23을 참조하면, 정육면체 전방향 영상에서 퍼스펙티브 P2와 P4를 WPP 기반 기술을 이용하여 병렬적으로 부/복호화를 진행해도 퍼스펙티브 P6의 WPP 기반 부/복호화를 시작하려면 퍼스펙티브 P4의 부/복호화가 거의 완료되야 한다. 즉, 퍼스펙티브 P4의 마지막 행의 CTU 2개가 부/복호화되어야 퍼스펙티브 P6의 부/복호화를 시작할 수 있다. Referring to FIG. 23, even when the perspective P2 and P4 are parallelized / decoded in parallel in the cube omnidirectional image using the WPP-based technique, in order to start the WPP-based encoding / decoding of the perspective P6, the encoding / decoding of the perspective P4 is almost impossible. Should be completed. In other words, two CTUs of the last row of the perspective P4 must be negative / decoded before starting / decoding of the perspective P6.

그러나, 전방향 영상에서는 각 퍼스펙티브의 모든 변이 다른 퍼스펙티브와 연결되어 있다. 따라서, 퍼스펙티브 P6의 부/복호화 순서를 조정하면, 보다 빨리 퍼스펙티브 P6의 부/복호화를 시작할 수 있다. 예컨대, 도 23에 도시된 예에서와 같이 퍼스펙티브 P2의 부/복호화를 우하단 블록에서 좌상단 블록으로 진행할 경우 퍼스펙티브 P6의 왼쪽 하단 CTU의 의존성은 퍼스펙티브 P2의 2개의 CTU 만 부/복호화되면 해결될 수 있다. 퍼스펙티브 P6의 좌하단 CTU의 의존성이 해결되면, 퍼스펙티브 P6에 대한 WPP는 좌하단 블록에서 우상단 블록으로 진행될 수 있다. However, in the omnidirectional image, all sides of each perspective are connected to other perspectives. Therefore, by adjusting the negative / decoding sequence of the perspective P6, the negative / decoding of the perspective P6 can be started more quickly. For example, as in the example shown in FIG. 23, when the encoding / decoding of the perspective P2 is performed from the lower right block to the upper left block, the dependency of the lower left CTU of the perspective P6 may be solved when only two CTUs of the perspective P2 are encoded / decoded. have. When the dependency of the lower left CTU of the perspective P6 is resolved, the WPP for the perspective P6 may be progressed from the lower left block to the upper right block.

WPP 기반 부/복호화를 진행할 때, 이웃 퍼스펙티브의 픽셀 정보를 활용할 수 있고, 또한, 이웃 퍼스펙티브에서 업데이트된 엔트로피 문맥을 가져와서 엔트로피 문맥 모델을 초기화할 수도 있다.도 23에 도시된 예에서 실선 화살표는 엔트로피 문맥을 가져와 초기화하는 방향을 나타낸다. 도 23에 도시된 바와 같이, 이웃한 퍼스펙시브 간에 정보의 참조가 가능하다.When proceeding with WPP-based encoding / decoding, it is possible to utilize pixel information of neighboring perspectives, and also to initialize the entropy context model by importing updated entropy contexts in neighboring perspectives. Indicates the direction to get and initialize the entropy context. As shown in FIG. 23, reference of information between neighboring perspectives is possible.

이하에서, 도 23을 참조하여, 본 개시에 따른 부/복호화 방법을 보다 구체적으로 설명한다.Hereinafter, the encoding / decoding method according to the present disclosure will be described in more detail with reference to FIG. 23.

먼저, 하나의 퍼스펙티브 또는 이웃하지 않는 둘 이상의 퍼스펙티브에 대한 부/복호화를 시작할 수 있다. 각 퍼스펙티브 내에서는 도 7을 참조하여 설명한 순서로 부/복호화가 수행될 수 있다. 예컨대, 퍼스펙티브 P2 및 P4는 서로 이웃하지 않으므로, 병렬적으로 부/복호화가 시작될 수 있다. 이 때, 보다 효율적인 부/복호화를 위해, 퍼스펙티브 P2와 P4는 각각 다른 순서로 부/복호화될 수 있다.First, one may begin to decode / decode a perspective or two or more perspectives that are not neighboring. Within each perspective, encoding / decoding may be performed in the order described with reference to FIG. 7. For example, perspectives P2 and P4 are not adjacent to each other, so that the encoding / decoding can be started in parallel. At this time, in order to more efficiently encode / decode, the perspectives P2 and P4 may be encoded / decoded in different orders.

도 24는 정육면체 전방향 영상에 있어서, 이웃하지 않는 두 개의 퍼스펙티브에 대한 부/복호화 순서를 설명하기 위한 도면이다. 도 24의 (b) 및 (c)에서 작은 블록들은 퍼스펙티브 P4와 P2를 구성하는 영상 블록(예컨대, CTU)들을 의미하며 블록안의 숫자는 해당 블록의 처리 순서를 나타낸다. 또한, 점선 화살표는 각 퍼스펙티브에서 한 행의 처리 방향을 보여주며 각 블록(CTU)은 동일 행의 이전 열의 엔트로피 컨텍스트를 업데이트하여 사용할 수 있다.FIG. 24 is a diagram for describing an encoding / decoding procedure for two non-neighboring perspectives in a cube omnidirectional image. Small blocks in FIGS. 24 (b) and 24 (c) refer to image blocks (eg, CTUs) constituting the perspectives P4 and P2, and the numbers in the blocks indicate the processing order of the blocks. In addition, the dotted arrow shows the processing direction of one row in each perspective, and each block (CTU) can update and use the entropy context of the previous column of the same row.

도 24의 (a)에 도시된 바와 같이, 퍼스펙티브 P2와 P4는 서로 이웃하지 않으므로, 서로 참조하지 않는다. 따라서, 퍼스펙티브 P2와 P4는 독립적으로 부/복호화될 수 있다.As shown in Fig. 24A, the perspectives P2 and P4 are not adjacent to each other and thus are not referenced to each other. Therefore, perspectives P2 and P4 can be independently encoded / decoded.

도 24의 (b)에 도시된 바와 같이, 예를 들어, 퍼스펙티브 P4에 대해서는 통상의 래스터 스캔 순서에 따라 좌상단에서 우하단의 순서로 부/복호화가 진행될 수 있다. 이 때, 퍼스펙티브 P2에 대해서도 통상의 래스터 스캔 순서가 적용될 수 있다. 또는 도 24의 (c)에 도시된 바와 같이, 퍼스펙티브 P2에 대해서는 우하단에서 좌상단의 순서로 부/복호화가 진행될 수 있다. As shown in (b) of FIG. 24, for example, the perspective P4 may be encoded / decoded in the order from the upper left to the lower right according to a normal raster scan order. At this time, the normal raster scan order can also be applied to the perspective P2. Alternatively, as illustrated in (c) of FIG. 24, the encoding / decoding may be performed in the order of the upper left to the upper left for the perspective P2.

이 후, 퍼스펙티브 P2 및/또는 P4의 부/복호화가 일부 또는 전부 수행되면, 의존성이 해결된 이웃 퍼스펙티브의 부/복호화를 시작할 수 있다. 이 때, 이웃 퍼스펙티브의 WPP 처리 방향은 참조 퍼스펙티브에 적용된 WPP 처리 방향에 기초하여 결정될 수 있다. 예컨대, 도 23에 있어서, 퍼스펙티브 P4의 첫번째 행, 두번째 열의 블록의 부/복호화가 완료되면, 퍼스펙티브 P1의 마지막 행, 첫번째 열의 블록의 부/복호화가 시작될 수 있다. 이 때, 퍼스펙티브 P1의 부/복호화는 좌하단에서 우상단의 순서로 진행될 수 있다. Subsequently, if part / decoding of the perspectives P2 and / or P4 is performed in part or in whole, the part / decoding of neighboring perspectives in which the dependency is resolved can be started. At this time, the WPP processing direction of the neighbor perspective may be determined based on the WPP processing direction applied to the reference perspective. For example, in FIG. 23, when the encoding / decoding of the blocks of the first row and the second column of the perspective P4 is completed, the encoding / decoding of the blocks of the first row and the first column of the perspective P1 may be started. At this time, the negative / decoding of the perspective P1 may be performed in the order of the lower left to the upper right.

또한, 퍼스펙티브 P2의 마지막 행, 마지막 두번째 열의 블록의 부/복호화가 완료되면, 퍼스펙티브 P6의 마지막 행, 첫번째 열의 블록의 부/복호화가 시작될 수 있다. 이 때, 퍼스펙티브 P6의 부/복호화는 좌하단에서 우상단의 순서로 진행될 수 있다.In addition, when the encoding / decoding of the blocks of the last row and the last second column of the perspective P2 is completed, the encoding / decoding of the blocks of the last row and the first column of the perspective P6 may be started. At this time, the negative / decoding of the perspective P6 may proceed in the order of the lower left to the upper right.

계속해서, 현재까지 부/복호화가 진행된 퍼스펙티브(들)와의 의존성이 해결된 이웃 퍼스펙티브에 대한 부/복호화가 시작될 수 있다. 이 때, WPP의 진행 방향은 하나 이상의 참조 퍼스펙티브들 중 의존성이 더 빠르게 해결되는 퍼스펙티브에 맞추어 결정될 수 있다. 두 개 이상의 참조 퍼스펙티브들의 의존성이 동시에 해결되면, 현재 퍼스펙티브의 부/복호화는 여러 변에서 동시에 진행될 수 있다. 이 경우, 현재 퍼스펙티브를 분할하여 처리할 수 있다.Subsequently, encoding / decoding may be started for neighboring perspectives in which the dependency on the perspective (s) in which encoding / decoding has been advanced so far has been resolved. At this time, the progress direction of the WPP may be determined according to a perspective in which dependency among the one or more reference perspectives is resolved more quickly. If the dependencies of two or more reference perspectives are resolved at the same time, the encoding / decoding of the current perspective can proceed simultaneously on several sides. In this case, the current perspective can be divided and processed.

도 23을 참조하면, 퍼스펙티브 P2의 마지막 두번째 열, 마지막 행의 블록의 부/복호화가 완료되면, 퍼스펙티브 P3의 마지막 행, 첫번째 열의 블록의 부/복호화가 시작될 수 있다. 또한, 퍼스펙티브 P4의 두번째 행, 첫번째 열의 블록의 부/복호화가 완료되면, 퍼스펙티브 P3의 첫번째 행, 마지막 열의 블록의 부/복호화가 시작될 수 있다. 즉, 퍼스펙티브 P3의 부/복호화는 복수의 퍼스펙티브를 참조하여 여러 변에서 동시에 진행될 수 있다. 이 때, 퍼스펙티브 P3의 부/복호화 순서는 이웃 퍼스펙티브들(P1, P2, P4, P6) 중 적어도 하나를 고려하여 결정될 수 있다. 이 때, 가장 빨리 부/복호화가 완료될 수 있는 방향으로 퍼스펙티브 P3의 부/복호화 순서가 결정될 수 있다. Referring to FIG. 23, when the encoding / decoding of the blocks of the last second column and the last row of the perspective P2 is completed, the encoding / decoding of the blocks of the last row and the first column of the perspective P3 may be started. In addition, when the encoding / decoding of the blocks of the first row and the first column of the perspective P4 is completed, the encoding / decoding of the blocks of the first row and the last column of the perspective P3 may be started. That is, the encoding / decoding of the perspective P3 may proceed simultaneously on several sides with reference to the plurality of perspectives. In this case, the encoding / decoding order of the perspective P3 may be determined in consideration of at least one of the neighboring perspectives P1, P2, P4, and P6. At this time, the order of decoding / decoding of the perspective P3 may be determined in the direction in which the decoding / decoding can be completed as soon as possible.

도 23 및 24를 참조하여 설명한 방법은 모든 시점들의 부/복호화가 완료될 때까지 반복될 수 있다. The method described with reference to FIGS. 23 and 24 may be repeated until the encoding / decoding of all time points is completed.

도 24에 도시된 예에서 퍼스펙티브 P4의 부/복호화는 전개도 상에서 좌상단에서 우하단으로 진행되고, 퍼스펙티브 P2의 부/복호화는 우하단에서 좌상단으로 진행된다. 이는 보다 효율적인 병렬리를 위해 병렬 처리되는 데이터의 양을 잘 분배하기 위함이다. In the example shown in FIG. 24, the negative / decoding of the perspective P4 proceeds from the upper left to the lower right on the developed view, and the negative / decoding of the perspective P2 proceeds from the lower right to the upper left. This is to better distribute the amount of data being processed in parallel for more efficient parallelism.

도 25는 정육면체 전방향 영상에 있어서, 마주보는 두 개의 퍼스펙티브의 부/복호화 순서를 설명하기 위한 도면이다.FIG. 25 is a diagram for describing a decoding / decoding procedure of two perspectives facing each other in a cube omnidirectional image. FIG.

3차원 공간에서 서로 마주보는 위치의 두 개의 퍼스펙티브의 부/복호화 순서는 도 25의 (a)에 도시된 바와 같이, 상하좌우 모두 서로 역방향으로 설정될 수 있다. 또는 도 25의 (b)에 도시된 바와 같이, 좌우로 동일한 방향으로 설정될 수도 있다. The order of encoding / decoding of two perspectives at positions facing each other in the three-dimensional space may be set upside down in the up, down, left, and right directions as shown in FIG. Alternatively, as shown in (b) of FIG. 25, they may be set in the same direction from side to side.

도 26은 도 25의 (a) 및 (b)에 따른 차이를 설명하기 위한 도면이다.FIG. 26 is a diagram for explaining a difference according to FIGS. 25A and 25B.

도 25의 (a)에 도시된 바와 같이 퍼스펙티브 P4와 P2의 부/복호화가 상하좌우 대칭의 위치에서 시작되면, 도 26의 (b)에 도시된 바와 같이, 퍼스펙티브 P2와 P1의 CTU 열 처리 순서는 퍼스펙티브 P2와 P1이 만나는 변에서 서로 반대 방향이 된다. 이는 퍼스펙티브 P6과 P4가 만나는 변에서도 마찬가지이다. 두 개의 퍼스펙티브가 인접하는 변에서 각 퍼스펙티브의 처리 방향이 반대가 되면, 이웃한 퍼스펙티브의 정보를 효율적으로 활용할 없다. 즉, 이웃 퍼스펙티브와의 처리 순서가 반대가 되므로, 이웃 퍼스펙티브의 참조 행에 대한 부/복호화가 완료될 때까지 지연이 발생하게 된다.As shown in (a) of FIG. 25, when the sub / decoding of the perspectives P4 and P2 starts at the positions of up, down, left, and right symmetry, the CTU heat treatment sequence of the perspectives P2 and P1 is shown in FIG. Are opposite directions on the side where the perspectives P2 and P1 meet. The same applies to the side where the perspectives P6 and P4 meet. If two perspectives are reversed in the processing direction of each perspective on an adjacent side, information of neighboring perspectives cannot be utilized efficiently. That is, since the processing order with the neighbor perspective is reversed, a delay occurs until the encoding / decoding of the reference row of the neighbor perspective is completed.

도 25의 (b)에 도시된 바와 같이 퍼스펙티브 P4와 P2의 부/복호화가 좌우로 동일한 방향으로 진행되면, 도 26의 (c)에 도시된 바와 같이, 퍼스펙티브 P2와 P1이 만나는 변에서 퍼스펙티브 P2와 P1의 CTU 열 처리 방향은 같아진다. 이는 퍼스펙티브 P6와 P4가 만나는 변에서도 마찬가지이다. 따라서, 퍼스펙티브 P1 및 P6의 마지막 행의 부/복호화가 시작되는 시점과 참조 영역으로 사용될 퍼스펙티브 P4 및 P2의 마지막 행 CTU 2개가 완료되는 시점이 서로 맞아 떨어지므로 지연이 발생하지 않게 된다. 도 27은 도 25의 (b)에 따른 부/복호화를 설명하기 위한 도면이다.As shown in (b) of FIG. 25, when negative / decoding of the perspectives P4 and P2 proceeds in the same direction from side to side, as shown in (c) of FIG. 26, the perspective P2 is formed at the side where the perspective P2 and P1 meet. The CTU heat treatment direction of and P1 becomes the same. The same applies to the side where the perspectives P6 and P4 meet. Therefore, there is no delay since the start of the encoding / decoding of the last row of the perspectives P1 and P6 coincides with the completion point of the two CTUs of the last row of the perspectives P4 and P2 to be used as reference regions. FIG. 27 is a diagram for describing encoding / decoding according to FIG. 25B.

전술한 바와 같이, 퍼스펙티브 P2와 P4의 각각에서 2개의 CTU가 처리되면 이웃 퍼스펙티브의 WPP를 통한 부/복호화가 가능하다. 퍼스펙티브 P1은 퍼스펙티브 P4와 연속성을 가지고 있으므로 도 27의 (b)에 도시된 바와 같이, 퍼스펙티브 P4의 첫 행 두번째 CTU의 부/복호화가 완료되면 퍼스펙티브 P1의 첫 CTU의 의존성이 해결된다. 따라서 퍼스펙티브 P4로부터 엔트로피 컨텍스트를 가져와 초기화하여 사용할 수 있다. As described above, if two CTUs are processed in each of the perspectives P2 and P4, encoding / decoding through neighboring perspectives through WPP is possible. Since the perspective P1 has continuity with the perspective P4, as shown in (b) of FIG. 27, when the sub- / decoding of the first CTU of the first row of the perspective P4 is completed, the dependency of the first CTU of the perspective P1 is resolved. Therefore, entropy context can be obtained from perspective P4 and used.

마찬가지로, 퍼스펙티브 P6도 퍼스펙티브 P2의 2번째 CTU가 부/복호화 완료된 시점에서 부/복호화가 시작될 수 있다. 도 27의 (c)에 도시된 바와 같이 퍼스펙티브 P2가 처리되는 방향에 맞추어서 퍼스펙티브 P6에 대해서도 WPP가 진행될 수 있다. 도 27의 (b) 및 (c)에 있어서, 실선 화살표는 엔트로피 문맥을 가져와 초기화하는 방향을 나타낸다. 점선 화살표는 각 행에서의 CTU의 처리 방향을 나타낸다. Similarly, in the perspective P6, the decoding / decoding may be started when the second CTU of the perspective P2 is completed / decoding. As shown in FIG. 27C, the WPP may proceed with respect to the perspective P6 in accordance with the direction in which the perspective P2 is processed. In FIGS. 27B and 27C, the solid arrows indicate the directions for taking and initializing the entropy context. The dashed arrows indicate the processing direction of the CTU in each row.

도 27의 (b) 및 (c)에 도시된 바와 같이, 다른 퍼스펙티브로부터 엔트로피 문맥을 가져올 수 있다. 엔트로피 문맥의 참조는 도 32 및 도 33을 참조하여 후술할 문맥추출기를 통해 수행될 수 있다.As shown in (b) and (c) of FIG. 27, entropy contexts can be derived from other perspectives. Reference of the entropy context may be performed via a context extractor, described below with reference to FIGS. 32 and 33.

도 28은 둘 이상의 퍼스펙티브를 참조할 수 있는 퍼스펙티브의 부/복호화를 설명하기 위한 도면이다.FIG. 28 is a diagram for describing encoding / decoding of perspectives that may refer to two or more perspectives.

도 27에 도시된 바와 같이, 퍼스펙티브 P3 및 P5의 경우 이웃하는 퍼스펙티브들이 모두 부/복호화되고 있다. 따라서 이웃 퍼스펙티브들을 모두 활용하여 병렬 처리를 수행함으로써 부/복호화 효율을 향상시킬 수 있다. As shown in FIG. 27, in the case of perspectives P3 and P5, neighboring perspectives are both encoded / decoded. Therefore, by performing parallel processing by utilizing all of the neighbor perspectives, the encoding / decoding efficiency can be improved.

도 28에 도시된 바와 같이, 퍼스펙티브 P3 및 P5는 이웃하는 퍼스펙티브 P1, P2, P4 및/또는 P6의 정보를 활용할 수 있다. 도 28에 사용된 실선 화살표 및 점선 화살표는 도 27에 사용된 실선 화살표 및 점선 화살표와 같은 의미로 사용된다. 즉, 실선 화살표는 엔트로피 정보(예컨대, 엔트로피 문맥, 엔트로피 컨텍스트 테이블 등)를 가져오는 방향을 의미한다. 또한, 점선 화살표는 각 퍼스펙티브에서의 WPP를 통한 행단위 처리 방향을 의미한다. 각 퍼스펙티브 안의 CTU 블록 내의 숫자는 부/복호화 처리 순서를 의미한다.As shown in FIG. 28, perspectives P3 and P5 may utilize information of neighboring perspectives P1, P2, P4 and / or P6. The solid and dashed arrows used in FIG. 28 are used in the same meaning as the solid and dashed arrows used in FIG. 27. That is, the solid arrow indicates the direction of bringing entropy information (eg, entropy context, entropy context table, etc.). In addition, the dotted line arrow indicates the direction of row processing through WPP in each perspective. The number in the CTU block in each perspective represents the encoding / decoding process order.

도 28에 도시된 바와 같이, 퍼스펙티브 P3 또는 퍼스펙티브 P5의 경우 이웃 퍼스펙티브의 부/복호화에 따라, 둘 이상의 방향으로 동시에 의존성이 해결될 수 있다. 부/복호화 순서에 따르면, 퍼스펙티브 P2 및 P4가 퍼스펙티브 P1 및 P6보다 부/복호화가 먼저 시작된다. 따라서, 퍼스펙티브 P3 및 P5의 부/복호화에 필요한 의존성이 퍼스펙티브 P2 및 P4에 의해 먼저 해결될 수 있다. 따라서 퍼스펙티브 P3 및/또는 P5는 퍼스펙티브 P2 및 P4 중 하나를 선택하여 WPP 처리 방향을 결정할 수 있다. 또는, 두 개의 퍼스펙티브를 모두 활용하기 위하여 퍼스펙티브 P3 및/또는 P5를 두 개의 영역으로 분할하고, 분할된 각각의 영역에 대해 퍼스펙티브 P2 및 P4에 따른 WPP 처리 방향을 결정할 수 있다. As shown in FIG. 28, in the case of the perspective P3 or the perspective P5, the dependency may be resolved simultaneously in two or more directions according to the negative / decoding of neighboring perspectives. According to the sub / decoding sequence, perspectives P2 and P4 begin to decode / decode before perspectives P1 and P6. Therefore, the dependencies necessary for the encoding / decoding of the perspectives P3 and P5 can first be solved by the perspectives P2 and P4. Thus, perspective P3 and / or P5 may select one of perspectives P2 and P4 to determine the WPP processing direction. Alternatively, in order to utilize both perspectives, perspectives P3 and / or P5 may be divided into two regions, and the WPP processing direction according to the perspectives P2 and P4 may be determined for each of the divided regions.

예컨대, 퍼스펙티브 P3의 부/복호화는 퍼스펙티브 P2와의 의존성이 해결된 후 수행될 수 있다. 이 경우, 퍼스펙티브 P2의 두 개의 CTU(1, 3)에 기초하여 퍼스펙티브 P3의 CTU(8)이 부/복호화될 수 있다. 또는 퍼스펙티브 P2 및 P4의 CTU가 각각 두 개씩 부/복호화된 시점에서, 퍼스펙티브 P3의 부/복호화가 양방향에서 시작될 있다. 이 경우, 퍼스펙티브 P2 및 P4의 부/복호화에 의해 의존성이 해결된 퍼스펙티브 P3의 두 개의 CTU의 부/복호화가 병렬적으로 시작될 수 있다. 병렬적으로 부/복호화한다는 의미는, 퍼스펙티브 P3가 양 방향에서 서로 독립적으로 부/복호화됨을 의미한다. 따라서, 병렬적인 부/복호화는 동시에 수행될 수도 있고 그렇지 않을 수도 있다.For example, the encoding / decoding of the perspective P3 may be performed after the dependency with the perspective P2 is resolved. In this case, the CTU 8 of the perspective P3 may be encoded / decoded based on the two CTUs 1 and 3 of the perspective P2. Alternatively, when two CTUs of the perspective P2 and P4 are respectively encoded / decoded, the encoding / decoding of the perspective P3 may be started in both directions. In this case, the encoding / decoding of two CTUs of the perspective P3 in which the dependency is resolved by the encoding / decoding of the perspectives P2 and P4 can be started in parallel. By parallel decoding / decoding means that the perspective P3 is encoded / decoded independently of each other in both directions. Thus, parallel encoding / decoding may or may not be performed simultaneously.

도 29는 하나의 퍼스펙티브를 두 개의 영역으로 분할하고, 각각의 영역을 부/복호화하는 방법을 설명하기 위한 도면이다.FIG. 29 is a diagram for describing a method of dividing one perspective into two regions and encoding / decoding each region. FIG.

도 29의 (a)는 하나의 퍼스펙티브를 A와 B의 영역으로 나눈 것을 나타내며, 도 29의 (b)는 퍼스펙티브를 동일한 크기의 영역으로 나눈 후 WPP 처리하는 것을 나타낸다. 도 29의 (c)는 퍼스펙티브를 각각 다른 크기의 영역으로 나눈 후 WPP 처리하는 것을 나타낸다. 도 29의 실선 화살표 및 점선 화살표의 의미는 도 27 및 도 28을 참조하여 설명한 바와 동일하다.FIG. 29A shows one perspective divided into areas A and B, and FIG. 29B shows WPP processing after dividing the perspective into areas of the same size. 29C shows that the WPP process is performed after dividing the perspective into regions having different sizes. The meanings of the solid and dashed arrows in FIG. 29 are the same as those described with reference to FIGS. 27 and 28.

상기 A 영역 및 B 영역은 제1 영역 및 제2 영역으로 나타낼 수 있다. 제1 영역 및 제2 영역은 각각 인접한 퍼스펙티브의 부/복호화 진행 정도에 기초하여 부/복호화될 수 있다. 예컨대, 제1 영역과 제1 퍼스펙티브가 인접한 경우, 제1 퍼스펙티브의 부/복호화에 의해 의존성이 해결된 제1 영역의 블록부터 부/복호화될 수 있다. 제1 영역에 포함된 블록들의 부/복호화 방향은 제1 퍼스펙티브에 대한 부/복호화 방향에 기초하여 결정될 수 있다. 예컨대, 제1 영역 및 제1 퍼스펙티브에 대한 부/복호화 방향은 서로 직교하는 방향일 수 있다.The region A and the region B may be represented by a first region and a second region. Each of the first region and the second region may be encoded / decoded based on the degree of progress of encoding / decoding of adjacent perspectives. For example, when the first region and the first perspective are adjacent to each other, the first region may be encoded / decoded from a block of the first region where the dependency is resolved by the encoding / decoding of the first perspective. The negative / decoding direction of the blocks included in the first region may be determined based on the negative / decoding direction with respect to the first perspective. For example, the negative / decoding directions for the first region and the first perspective may be directions perpendicular to each other.

하나의 퍼스펙티브를 두 개의 영역으로 분할하는 방법은 도 29를 참조하여 설명한 실시예로 한정되지 않는다. 예컨대, 도 29에 도시되지 않은 형태 또는 크기로 분할될 수도 있다. 하나의 퍼스펙티브를 두 개의 영역으로 분할하는 방법은 비트스트림을 통해 시그널링되거나 부호화기와 복호화기에서 미리 정의될 수 있다.The method of dividing one perspective into two regions is not limited to the embodiment described with reference to FIG. 29. For example, it may be divided into shapes or sizes not shown in FIG. 29. A method of dividing one perspective into two regions may be signaled through a bitstream or predefined in an encoder and a decoder.

퍼스펙티브 P3 및/또는 P5와 연속성을 가진 이웃 CTU들은 퍼스펙티브 P2 및/또는 P6에서 열이 아닌 하나의 행에 포함될 수 있다. 전술한 바와 같이, WPP 처리할 경우 하단 행의 부/복호화는 상단 행의 CTU 2열의 부/복호화가 완료되어야 시작될 수 있으므로, 2*t(CTU)씩 행당 지연이 발생한다. 참조 퍼스펙티브의 부/복호화 지연이 행당 2*t(CTU)씩 발생하므로, 도 28의 (a)에 도시된 바와 같이, 퍼스펙티브 P3에 대해서도, 각 열당 1*t(CTU)가 아닌 2*t(CTU)의 지연이 발생한다. Neighboring CTUs with continuity with perspectives P3 and / or P5 may be included in one row rather than columns in perspectives P2 and / or P6. As described above, in the case of WPP processing, since the decoding / decoding of the lower row can be started only after the encoding / decoding of the CTU 2 column of the upper row is completed, a delay per row occurs by 2 * t (CTU). Since the negative / decoding delay of the reference perspective occurs by 2 * t (CTU) per row, as shown in FIG. 28 (a), even for perspective P3, 2 * t (CTU) is not 1 * t (CTU) for each column. CTU) delay.

도 30은 둘 이상의 퍼스펙티브를 참조하는 경우의 부/복호화 처리 순서를 설명하기 위한 도면이다.30 is a diagram for explaining a coding / decoding process procedure when referring to two or more perspectives.

둘 이상의 퍼스펙티브를 참조할 수 있는 경우, 참조되는 둘 이상의 퍼스펙티브의 부/복호화 진행 정도에 기초하여 현재 퍼스펙티브에 대한 부/복호화를 수행할 수 있다. 예컨대, 제1 퍼스펙티브의 부/복호화에 의해 의존성이 해결되더라도, 제2 퍼스펙티브의 부/복호화에 의해 의존성이 해결될 때까지 기다린 후, 현재 퍼스펙티브의 부/복호화를 시작할 수 있다. 하나의 퍼스펙티브를 참조하는 경우와 비교하여, 둘 이상의 퍼스펙티브를 참조하면, 지연이 발생할 수 있다. 그러나, 둘 이상의 블록을 참조할 수 있으므로, 부호화 효율의 향상을 기대할 수 있다.If two or more perspectives can be referenced, encoding / decoding of the current perspective can be performed based on the degree of progression of the decoding / decoding of the two or more perspectives referenced. For example, even if the dependency is resolved by the encoding / decoding of the first perspective, after waiting until the dependency is resolved by the encoding / decoding of the second perspective, the encoding / decoding of the current perspective can be started. Compared to the case of referring to one perspective, referring to more than one perspective may cause a delay. However, since two or more blocks can be referenced, an improvement in coding efficiency can be expected.

전술한 바와 같이, 퍼스펙티브 P3의 첫 행의 부/복호화 처리에 열당 지연이 2*t(CTU)씩 발생한다. 따라서, 도 30의 (a)에 도시된 바와 같이, 퍼스펙티브 P3의 왼쪽 최하단 CTU(4)의 부/복호화가 완료된다 하더라도 그 다음 열의 CTU(6)를 바로 부/복호화할 수가 없다. 열당 2*t(CTU)의 지연이 발생하므로, 퍼스펙티브 P3의 각각의 CTU의 의존성이 해결될 때마다 부/복호화를 시작할 경우, 퍼스펙티브 P3의 처리 순서상 첫 행의 마지막 CTU는 11번째로 부/복호화될 수 있다. As described above, a delay per column occurs by 2 * t (CTU) in the encoding / decoding process of the first row of the perspective P3. Therefore, as shown in Fig. 30A, even if the decoding / decoding of the lower left CTU 4 of the perspective P3 is completed, the CTU 6 of the next row cannot be directly decoded / decoded. There is a delay of 2 * t (CTU) per column, so if you start encoding / decoding each time the dependence of each CTU in perspective P3 is resolved, the last CTU of the first row in the processing order of perspective P3 is the 11th Can be decrypted.

이 경우, 도 30의 (b)에 도시된 바와 같이, 퍼스펙티브 P3의 첫 행의 마지막 CTU가 11번째로 부/복호화되는 점을 고려하여, 퍼스펙티브 P3의 첫 행의 첫 번째 CTU의 부/복호화 시작 시점을 7번째로 결정할 수 있다. 도 30의 (b)와 같이, 퍼스펙티브 P3의 첫번째 CTU의 부/복호화 시작 시점을 늦추더라도, 첫 행의 마지막 CTU의 부/복호화 시작 시점은 변경되지 않으므로, 전체 영상의 병렬 처리 시간에는 영향을 주지 않을 수 있다.In this case, as shown in (b) of FIG. 30, in consideration of the fact that the last CTU of the first row of the perspective P3 is encoded / decoded to the 11th, the start / decoding of the first CTU of the first row of the perspective P3 is started. The seventh time can be determined. As shown in FIG. 30 (b), even when the start / decoding start time of the first CTU of the perspective P3 is delayed, the start / decoding start time of the last CTU of the first row is not changed, and thus the parallel processing time of the entire image is not affected. You may not.

또한, 도 30의 (b)에 도시된 순서에 따라 퍼스펙티브 P3를 처리할 경우, 참조할 수 있는 이웃 CTU가 많아진다는 장점이 있다. 즉, 퍼스펙티브 P3의 첫번째 CTU의 부/복호화에 있어서, 퍼스펙티브 P6의 두번째 행의 CTU(5, 빗금친 부분)의 픽셀 정보는 물론 엔트로피 컨텍스트도 이용할 수 있게 된다. In addition, when processing the perspective P3 in the order shown in (b) of FIG. 30, there is an advantage that the neighboring CTUs that can be referred to are increased. That is, in encoding / decoding of the first CTU of the perspective P3, not only the pixel information of the CTU (5, hatched portion) of the second row of the perspective P6, but also the entropy context can be used.

또한, 도 30의 (c)에 도시된 바와 같이, 퍼스펙티브 P3의 부/복호화를 1*t(CTU)만큼 더 지연시키면, 이웃 퍼스펙티브 P1의 CTU(11, 빗금친 영역)도 참조할 수 있다. 이는 퍼스펙티브 P1과 P2의 CTU처리 시간이 단지 2*t(CTU)만큼 차이나기 때문이다. 따라서, 퍼스펙티브 P3의 경우, 도 30의 (c)에 도시된 예에서와 같이 퍼스펙티브 P3의 부/복호화 시작 시점을 첫 행의 마지막 CTU의 오른쪽 CTU(이웃 퍼스펙티브에 속한)의 처리 시점을 기준으로 결정할 수 있다. In addition, as shown in FIG. 30 (c), if the encoding / decoding of the perspective P3 is further delayed by 1 * t (CTU), the CTU 11 (hatched area) of the neighbor perspective P1 can also be referred to. This is because the CTU processing times of the perspectives P1 and P2 differ only by 2 * t (CTU). Therefore, in the case of the perspective P3, as shown in the example shown in FIG. 30 (c), the start / decoding start time of the perspective P3 is determined based on the processing time of the right CTU (belonging to the neighbor perspective) of the last CTU of the first row. Can be.

도 30의 (c)는 도 30의 (b)의 경우보다 약간의 지연이 더 발생할 수 있다. 그러나, 보다 많은 영역을 참조할 수 있게 되므로, 부/복호화 효율이 향상될 수 있다. (C) of FIG. 30 may have a slight delay more than that of FIG. 30 (b). However, since more regions can be referred to, the encoding / decoding efficiency can be improved.

본 개시에 있어서, 인접한 블록, CTU 및/또는 퍼스펙티브로부터 참조할 수 있는 정보는 픽셀 정보, 엔트로피 문맥, 엔트로피 컨텍스트 테이블 등으로 기재하고 있다. 그러나, 이에 한정되지 않으며, 인접한 영역의 부/복호화 정보를 모두 참조할 수 있다. 예컨대, 참조할 수 있는 정보는 단순히 영상에 존재하는 픽셀 정보 외에도 공간적 예측에 활용한 예측 모드, 시간적 예측에 활용한 움직임 벡터, 머지 인덱스, 양자화 파라미터 정보, 인루프 필터 정보, 필터 계수 정보 등 부/복호화 과정에서 생성되거나 사용되는 모든 정보를 포함한다.In the present disclosure, information that can be referred to from adjacent blocks, CTUs, and / or perspectives is described as pixel information, entropy context, entropy context table, and the like. However, the present invention is not limited thereto, and reference may be made to all of the encoding / decoding information of the adjacent region. For example, the information that can be referred to is not only pixel information existing in an image, but also prediction modes used for spatial prediction, motion vectors used for temporal prediction, merge index, quantization parameter information, in-loop filter information, filter coefficient information, and the like. Contains all the information generated or used in the decoding process.

정육면체가 아닌, 정팔면체나 정이십면체 영상의 경우에 대해서, 정육면체를 고려하여 설명한 상기 단계들이 반복적으로 수행될 수 있음은 전술한 바와 같다.As described above, for the case of an octahedron or an icosahedron image other than a cube, the steps described in consideration of the cube may be repeatedly performed.

도 31은 정육면체 전방향 영상의 부/복호화 순서를 설명하기 위한 예시도이다.FIG. 31 is an exemplary diagram for describing an encoding / decoding procedure of a cube omnidirectional image. FIG.

도 23 내지 도 30을 참조하여 설명한 순서에 따라 정육면체 전방향 영상의 부/복호화를 수행하는 경우, 도 31에 도시된 순서에 따라 부/복호화가 진행될 수 있다.When performing the encoding / decoding of the cube omnidirectional image in the order described with reference to FIGS. 23 to 30, encoding / decoding may be performed in the order shown in FIG. 31.

도 31의 (a)는 전개도 상에서의 부/복호화 순서를 예시한 도면이다. 도 31의 (a)에 사용된 실선 및 점선 화살표는 도 27 등에 사용된 실선 및 점선 화살표와 동일한 의미를 가진다. FIG. 31A is a diagram illustrating an encoding / decoding sequence on a developed view. The solid and dashed arrows used in FIG. 31A have the same meaning as the solid and dashed arrows used in FIG. 27 and the like.

도 31의 (b) 및 (c)는 정육면체 상에서, 부/복호화가 진행되는 순서를 예시적으로 나타낸다. 도 31의 (b) 및 (c)의 작은 블록은 부호화 단위 블록(예컨대, CTU)을 의미하고, 숫자는 해당 블록이 처리되는 순서를 의미한다. 음영처리된 블록은 부/복호화가 완료된 블록을 의미하고, 음영처리되지 않은 블록은 아직 부/복호화가 시작되지 않은 블록을 의미한다. (B) and (c) of FIG. 31 exemplarily show a procedure of encoding / decoding on a cube. Small blocks in FIGS. 31B and 31C denote coding unit blocks (eg, CTUs), and numbers indicate an order in which the corresponding blocks are processed. The shaded block refers to a block in which encoding / decoding has been completed, and the block not shaded refers to a block in which encoding / decoding has not yet started.

전술한 바와 같이, 본 개시에 따라 전방향 영상의 부/복호화를 수행할 때, 퍼스펙티브마다 WPP 처리 순서가 달라질 수 있다. 또는 하나의 퍼스펙티브에 대해 동시에 여러 방향에서 부/복호화가 시작될 수도 있다. 하나의 전방향 영상에 포함된 복수의 퍼스펙티브의 각각의 처리 방향이 달라지면, 동일한 구성의 장치로 모든 퍼스펙티브를 부/복호화하지 못하고 각각의 퍼스펙티브의 부/복호화 방향을 고려하여, 별도의 부/복호화 장치를 따로 제공해 주어야 한다는 문제점이 발생할 수 있다.As described above, when performing encoding / decoding of the omnidirectional image according to the present disclosure, the WPP processing order may vary for each perspective. Alternatively, encoding / decoding may be started in several directions at the same time for one perspective. When the processing directions of the plurality of perspectives included in one omnidirectional image are different, separate encoding / decoding apparatuses are not considered to encode / decode all perspectives with the device of the same configuration, and to consider the direction of decoding / decoding of each perspective. There may be a problem that you must provide a separate.

도 32는 본 개시에 따른 부호화 장치의 구성을 예시한 도면이다.32 is a diagram illustrating a configuration of an encoding device according to the present disclosure.

도 33은 본 개시에 따른 복호화 장치의 구성을 예시한 도면이다. 33 is a diagram illustrating a configuration of a decoding apparatus according to the present disclosure.

도 32의 부호화 장치는 변환 및 분배기(3201), 영상 정보 변환기(3202), 문맥 정보 추출기(3203) 및 복수의 부호화기를 포함하여 구성될 수 있다. 도 32의 부호화 장치는 입력 영상을 부호화함으로써 비트스트림을 생성할 수 있다. 입력 영상은 전방향 영상일 수 있으며, 각각의 부호화기는 전방향 영상을 구성하는 복수의 퍼스펙티브 중 하나의 퍼스펙티브를 부호화할 수 있다. 부호화기의 각각은 부호화 처리기, 복원픽쳐 버퍼 및/또는 엔트로피 부호기를 포함하며, 도 3의 부호화 장치에 해당할 수 있다.The encoding apparatus of FIG. 32 may include a transform and divider 3201, an image information converter 3202, a context information extractor 3203, and a plurality of encoders. The encoding apparatus of FIG. 32 may generate a bitstream by encoding an input image. The input image may be an omnidirectional image, and each encoder may encode one perspective of a plurality of perspectives constituting the omnidirectional image. Each of the encoders may include an encoding processor, a reconstruction picture buffer, and / or an entropy encoder, and may correspond to the encoding apparatus of FIG. 3.

도 33의 복호화 장치는 영상 정보 변환기(3301), 문맥 정보 추출기(3302), 변환 및 통합기(3303) 및 복수의 복호화기를 포함하여 구성될 수 있다. 도 33의 복호화 장치는 비트스트림을 복호화함으로써 영상을 출력할 수 있다. 출력 영상은 전방향 영상일 수 있으며, 각각의 복호화기는 전방향 영상을 구성하는 복수의 퍼스펙티브 중 하나의 퍼스펙티브를 복호화할 수 있다. 복호화기의 각각은 복호화 처리기, 엔트로피 복호기 및/또는 복원픽쳐 버퍼를 포함하며, 도 4의 복호화 장치에 해당할 수 있다.The decoding apparatus of FIG. 33 may include a video information converter 3301, a context information extractor 3302, a transform and integrator 3303, and a plurality of decoders. The decoding apparatus of FIG. 33 may output an image by decoding the bitstream. The output image may be an omnidirectional image, and each decoder may decode one perspective of a plurality of perspectives constituting the omnidirectional image. Each of the decoders includes a decoding processor, an entropy decoder, and / or a reconstruction picture buffer, and may correspond to the decoding apparatus of FIG. 4.

만약, 각각의 퍼스펙티브의 부/복호화 방향에 따라, 별도의 부/복호화기가 필요하다면, 도 32 및 도 33의 복수의 부호화기 및 복수의 복호화기의 각각은 서로 다른 구성을 갖게 되므로, 장치 구성의 복잡도가 증가하게 된다. 따라서, 각각의 퍼스펙티브의 처리 방향이 다르더라도 동일한 구성의 부호화기 또는 복호화기에 의해 처리될 수 있도록 추가적인 구성이 필요하다. 이를 위해, 본 개시에 따른 부호화기는 변환 및 분배기(3201) 및/또는 영상 정보 변환기(3202)를 더 포함할 수 있다. 또한, 본 개시에 따른 복호화기는 영상 정보 변환기(3301) 및/또는 변환 및 통합기(3302)를 더 포함할 수 있다.If a separate sub / decoder is needed according to the sub / decoding direction of each perspective, each of the plurality of encoders and the plurality of decoders of FIGS. 32 and 33 has a different configuration, thus the complexity of the device configuration Will increase. Therefore, even if the processing direction of each perspective is different, an additional configuration is required to be processed by an encoder or decoder having the same configuration. To this end, the encoder according to the present disclosure may further include a transform and divider 3201 and / or an image information converter 3202. Also, the decoder according to the present disclosure may further include an image information converter 3301 and / or a transform and integrator 3302.

전방향 영상을 구성하는 각각의 퍼스펙티브를 병렬 처리하기 위해서, 도 32의 변환 및 분배기(3201)는 각 퍼스펙티브의 영상 정보를 하나 이상의 부호화 처리기로 전송할 수 있다. 영상 정보의 전송 전에 각 퍼스펙티브의 처리 방향이 소정의 처리 방향과 일치하도록 영상 정보를 수정할 수 있다. 소정의 처리 방향은 예컨대, 래스터 스캔 순서일 수 있으나, 이에 한정되지 않으며, 모든 퍼스펙티브에 공통으로 적용되는 처리 방향으로서 미리 결정된 것이거나 시그널링되는 것일 수 있다.In order to process each perspective constituting the omnidirectional image in parallel, the transform and splitter 3201 of FIG. 32 may transmit image information of each perspective to one or more encoding processors. Before the image information is transmitted, the image information may be modified such that the processing direction of each perspective coincides with the predetermined processing direction. The predetermined processing direction may be, for example, a raster scan order, but is not limited thereto and may be predetermined or signaled as a processing direction commonly applied to all perspectives.

변환 및 분배기(3201)는 아래와 같이 동작할 수 있다.The transform and divider 3201 can operate as follows.

먼저, 입력 영상이 복수의 퍼스펙티브를 통합된 형태로 포함하고 있으면, 입력 영상을 각 퍼스펙티브 별로 분할한다(스텝 1). 전방향 영상은 각각의 퍼스펙티브 별로 따로 저장되거나 하나의 전개도 형태로 통합되어 저장될 수 있다. 이때, 하나의 전개도 형태로 저장되어 있을 경우 병렬 처리를 위해 퍼스펙티브 별로 분할한다. 각각의 퍼스펙티브들은 각각의 부호화 처리기로 전송될 수 있다.First, if the input image includes a plurality of perspectives in an integrated form, the input image is divided for each perspective (step 1). The omnidirectional image may be stored separately for each perspective or integrated and stored in a single exploded form. At this time, when stored in the form of a single development view, it is divided by perspective for parallel processing. Each perspective may be sent to a respective encoding processor.

다음으로, 퍼스펙티브 내의 CTU 처리 순서가 반시계 방향일 경우 시계 방향이 되도록 대칭 영상을 생성한다(스텝 2). 도 34는 퍼스펙티브의 처리 순서를 변환하는 방법을 설명하기 위한 예시도이다. 도 34의 (a), (b) 및 (c)의 각각은 CTU의 처리 순서가 반시계 방향인 퍼스펙티브 P6의 처리 순서를 시계 방향이 되도록 변환하는 실시예를 도시한다. Next, when the CTU processing order in the perspective is counterclockwise, a symmetric image is generated to be clockwise (step 2). 34 is an exemplary diagram for explaining a method of converting a processing order of a perspective. Each of (a), (b) and (c) of FIG. 34 shows an embodiment in which the processing order of the perspective P6 in which the CTU processing order is counterclockwise is converted to the clockwise direction.

도 34의 (a)에서는 스테이지(stage) 1의 퍼스펙티브 P6을 좌우로 대칭하여, 스테이지 2의 대칭 퍼스펙티브를 생성할 수 있다. 도 34의 (b)에서는 스테이지 1의 퍼스펙티브 P6을 상하로 대칭시킴으로써, 스테이지 2의 대칭 퍼스펙티브를 생성할 수 있다. 또한, 도 34의 (c)에서는 스테이지 1의 퍼스펙티브 P6을 대각으로 대칭시킴으로써, 스테이지 2의 대칭 퍼스펙티브를 생성할 수 있다. 도 34의 (a), (b) 및 (c)의 각각에 있어서, 스테이지 2의 대칭 퍼스펙티브의 CTU의 처리 순서는 시계 방향으로 변환됨을 알 수 있다. In FIG. 34A, the symmetric perspective of stage 2 can be generated by symmetrically the perspective P6 of stage 1 from side to side. In (b) of FIG. 34, the symmetric perspective of stage 2 can be created by symmetry up and down perspective P6 of stage 1. FIG. In addition, in FIG. 34C, the symmetric perspective of stage 2 can be generated by diagonally symmetrical perspective P6 of stage 1. FIG. In each of (a), (b) and (c) of FIG. 34, it can be seen that the processing order of the CTU of the symmetric perspective of stage 2 is converted to the clockwise direction.

마지막으로, 스테이지 2의 대칭 퍼스펙티브의 부/복호화 시작 위치가 좌측 상단에 오도록 퍼스펙티브의 중앙을 기준으로 영상을 회전시킨다(스텝 3). 도 34의 (a)의 경우, 부/복호화 시작 위치가 우하단에 위치하므로, 스테이지 2의 대칭 퍼스펙티브를 180도 회전시킬 수 있다. 도 34의 (b)의 경우, 부/복호화 시작 위치가 좌상단에 위치하므로 스테이지 2의 대칭 퍼스펙티브를 회전시킬 필요가 없다. 도 34의 (c)의 경우, 부/복화화 시작 위치가 좌하단에 위치하므로, 스테이지 2의 대칭 퍼스펙티브를 시계방향으로 90도 회전시킬 수 있다. 스테이지 2의 대칭 퍼스펙티브의 회전에 의해 스테이지 3의 퍼스펙티브가 생성될 수 있다.Finally, the image is rotated with respect to the center of the perspective so that the negative / decoding start position of the symmetric perspective of stage 2 is at the upper left (step 3). In the case of FIG. 34A, since the negative / decoding start position is located at the lower right end, the symmetric perspective of stage 2 can be rotated 180 degrees. In the case of Fig. 34B, since the negative / decoding start position is located at the upper left, there is no need to rotate the symmetric perspective of stage 2. In the case of (c) of FIG. 34, since the sub / decoding start position is located at the lower left end, the symmetric perspective of stage 2 can be rotated 90 degrees clockwise. The perspective of stage 3 can be generated by the rotation of the symmetric perspective of stage 2.

만약 스테이지 1의 퍼스펙티브 내의 CTU의 처리 순서가 시계 방향일 경우, 상기 대칭은 수행되지 않을 수 있으며, 예컨대, 회전만이 수행될 수 있다. 전술한 바와 같이, 퍼스펙티브를 대칭 및/또는 회전시킴으로써, 퍼스펙티브의 부/복호화 처리 순서를 소정의 순서로 일치시킬 수 있다. 도 34를 참조하여 설명한 위의 예시는 각 퍼스펙티브의 부/복호화가 왼쪽 상단에서 시작할 수 있도록 만든 방법의 예이다. 또한, 상기 대칭 및/또는 회전은 매트릭스로 표현될 수 있다. 또한, 상기 대칭 및 회전은 매트릭스 곱의 형태로 표현되어 한번의 연산으로 수행될 수도 있다.If the processing order of CTUs in the perspective of stage 1 is clockwise, the symmetry may not be performed, for example, only rotation may be performed. As described above, by symmetrical and / or rotating the perspective, the order of negative / decoding processing of the perspective can be matched in a predetermined order. The above example described with reference to FIG. 34 is an example of a method in which the encoding / decoding of each perspective can be started at the upper left. In addition, the symmetry and / or rotation can be expressed in a matrix. In addition, the symmetry and rotation may be expressed in the form of a matrix product may be performed in one operation.

도 34를 참조하여 설명한 각각의 실시예는 퍼스펙티브 내의 CTU 처리 순서를 소정의 순서에 일치시키기 위한 실시예의 일부이다. 즉, 도 34를 참조하여 설명한 실시예들 이외의 방법을 적용하여, CTU 처리 순서를 일치시킬 수 있다. 예컨대, 도 34를 참조하여 설명한 실시예와는 달리, 먼저 퍼스펙티브를 회전시킨 후 대칭시킴으로써 CTU 처리 순서를 일치시킬 수도 있다. 즉, 도 34의 (a)의 경우, 스테이지 1의 퍼스펙티브를 180도 회전시킨 후, 회전된 퍼스펙티브를 좌우로 대칭시킴으로써, 스테이지 3의 퍼스펙티브를 획득할 수 있다.Each embodiment described with reference to FIG. 34 is part of an embodiment for matching the CTU processing order in the perspective to a predetermined order. That is, the CTU processing order may be matched by applying a method other than the embodiments described with reference to FIG. 34. For example, unlike the embodiment described with reference to FIG. 34, the CTU processing order may be matched by first rotating the perspective and then symmetrically. That is, in FIG. 34A, the perspective of Stage 3 may be obtained by rotating the perspective of Stage 1 180 degrees and then symmetrically rotating the perspective from side to side.

그 외에도, 회전과 대칭을 동시에 적용하는 방법도 고려될 수 있다. 또한, 회전과 대칭 이외에, 스테이지 1의 퍼스펙티브의 처리 순서와 스테이지 3의 퍼스펙티브의 처리 순서 사이에 매핑 정보를 이용하여 퍼스펙티브를 변환할 수도 있다. 예컨대, 상기 매핑 정보는 스테이지 1의 퍼스펙티브의 처리 순서를 식별하기 위한 정보와 상기 스테이지 1의 퍼스펙티브에 대한 변환 정보를 포함할 수 있다. 예컨대, 상기 변환 정보는 상기 스테이지 1의 퍼스펙티브를 스테이지 3의 퍼스펙티브로 변환하기 위한 정보일 수 있다. 예컨대, 상기 변환 정보는 스테이지 1의 CTU와 스테이지 3의 CTU 사이의 대응 관계에 관한 정보일 수 있다. 상기 대응 관계는 스테이지 1의 CTU의 위치와 이에 대응하는 스테이지 3의 CTU의 위치일 수 있다. 상기 CTU의 위치는 소정의 스캔 순서에 따른 순서로 나타낼 수 있다. 상기 소정의 스캔 순서는 예컨대, 래스터 스캔 순서일 수 있다. 또는 상기 CTU의 위치는 퍼스펙티브의 소정의 코너를 기준으로 한 2차원 좌표일 수 있다. 상기 소정의 코너는 예컨대 퍼스펙티브의 좌상단 코너일 수 있다.In addition, a method of simultaneously applying rotation and symmetry may be considered. In addition to rotation and symmetry, the perspective may be converted using mapping information between the processing order of the perspective of the stage 1 and the processing order of the perspective of the stage 3. For example, the mapping information may include information for identifying a processing order of the perspective of stage 1 and transformation information about the perspective of stage 1. For example, the conversion information may be information for converting the perspective of the stage 1 into the perspective of the stage 3. For example, the transformation information may be information about a correspondence relationship between the CTU of stage 1 and the CTU of stage 3. The correspondence may be a position of the CTU of stage 1 and a position of the CTU of stage 3 corresponding thereto. The position of the CTU may be represented in an order according to a predetermined scan order. The predetermined scan order may be, for example, a raster scan order. Alternatively, the position of the CTU may be two-dimensional coordinates based on a predetermined corner of the perspective. The predetermined corner may be, for example, the upper left corner of the perspective.

도 34를 참조하여 설명한 예에서, 입력 퍼스펙티브의 CTU 처리 순서가 소정의 처리 순서와 다를 때, 대칭 및/또는 회전을 수행하여 퍼스펙티브를 변환한다. 그러나, 입력 퍼스펙티브를 변환하지 않고, 부/복호화기의 처리 순서를 변형할 수도 있다. 예컨대, 입력 퍼스펙티브가 도 34의 (a)의 퍼스펙티브와 같고, 소정의 처리 순서가 래스터 스캔 순서라고 할 때, 부/복호화기는 입력 퍼스펙티브의 좌하단 CTU부터 시작하여 반시계 방향으로 부/복호화를 수행하도록 구성할 수도 있다. 이 때, 스테이지 1의 퍼스펙티브의 처리 순서와 스테이지 3의 퍼스펙티브의 처리 순서 사이의 전술한 매핑 정보가 이용될 수 있다.In the example described with reference to FIG. 34, when the CTU processing order of the input perspective is different from the predetermined processing order, symmetry and / or rotation are performed to transform the perspective. However, it is also possible to modify the processing order of the sub / decoder without converting the input perspective. For example, when the input perspective is the same as the perspective of Fig. 34A, and the predetermined processing sequence is the raster scanning sequence, the sub / decoder performs the encoding / decoding in the counterclockwise direction starting from the lower left CTU of the input perspective. It can also be configured to. At this time, the above-described mapping information between the processing order of the perspective of the stage 1 and the processing order of the perspective of the stage 3 may be used.

전술한 바와 같이, 퍼스펙티브에 포함된 블록을 처리할 때, 이웃 퍼스펙티브에 포함된 블록의 영상 정보를 참조할 수 있다. 여기서 영상 정보란, 전술한 바와 같이, 단순히 영상에 존재하는 픽셀 정보 외에도 공간적 예측에 활용한 예측 모드, 시간적 예측에 활용한 움직임 벡터, 머지 인덱스, 양자화 파라미터 정보, 인루프 필터 정보, 필터 계수 정보 등 부/복호화 과정에서 생성되거나 사용되는 모든 정보를 포함할 수 있다. As described above, when processing a block included in the perspective, it is possible to refer to the image information of the block included in the neighbor perspective. As described above, the image information may be a prediction mode used for spatial prediction, a motion vector used for temporal prediction, a merge index, quantization parameter information, in-loop filter information, filter coefficient information, etc., in addition to simply pixel information existing in the image. It can contain any information generated or used during the encoding / decoding process.

그러나, 3차원 공간상의 영상을 전개도상에 표현하는 과정에서 퍼스펙티브 간의 위치 및 방향에 차이가 발생한다. 따라서, 서로 다른 퍼스펙티브간 예측에 활용할 수 있는 영상 정보를 공유하기 위해서는 각 퍼스펙티브의 전개도상의 방향에 맞게 영상 정보를 변환하는 과정이 필요하다. 또한, 도 34를 참조하여 설명한 바와 같이, 퍼스펙티브의 부/복호화 처리 순서를 좌상단에서 우하단으로 일치시키기 위한 대칭 및/또는 회전 변환을 수행함에 따라 영상 정보를 변환할 필요가 있다. However, in the process of expressing an image on a three-dimensional space on a developed view, a difference occurs in the position and direction between perspectives. Therefore, in order to share image information that can be used for prediction between different perspectives, a process of converting image information according to the direction of development of each perspective is required. In addition, as described with reference to FIG. 34, it is necessary to convert image information by performing symmetrical and / or rotational transformation for matching the negative / decoding process order of the perspective from the upper left to the lower right.

복호화기는 부호화기가 사용한 전개도에 관한 정보 및/또는 각각의 퍼스펙티브에 적용된 변환에 관한 정보 등에 기초하여 참조하게 될 영상 정보의 변환 방법을 결정할 수 있다. 부/복호화기는 전개도에 관한 정보, 각 퍼스펙티브의 전개도 상에서의 위치에 관한 정보 및/또는 각 퍼스펙티브에 적용된 변환에 관한 정보를 사전에 약속할 수 있다. 또는 상기 정보의 전부 또는 일부는 비트스트림을 통해 명시적으로 또는 암묵적으로 시그널링될 수 있다. 또는 복호화기는 부/복호화에 관한 다른 신택스 또는 변수에 기초하여 상기 정보의 일부 또는 전부를 유도할 수도 있다. The decoder may determine a method of converting image information to be referred to based on information about the developed view used by the encoder and / or information about the transformation applied to each perspective. The sub / decoder may promise information in advance about the exploded view, information about the location of the perspective on the exploded view, and / or information about the transformation applied to each perspective. Alternatively, all or part of the information may be signaled explicitly or implicitly through the bitstream. Alternatively, the decoder may derive some or all of the information based on other syntax or variables regarding encoding / decoding.

전술한 영상 정보의 변환은 도 32의 영상 정보 변환기(3202) 및 도 33의 영상 정보 변환기(3301)에 의해 수행될 수 있다. The above-described conversion of the image information may be performed by the image information converter 3202 of FIG. 32 and the image information converter 3301 of FIG. 33.

부/복호화기가 서로 약속한 한가지 방식을 사용할 수 있는 경우, 비디오 파라미터 셋(Video Parameter Set, VPS) 또는 시퀀스 파라미터 셋(Sequence Parameter Set, SPS)과 같은 영상 헤더에 플래그 정보를 포함시켜 약속한 방식의 사용 여부를 시그널링할 수 있다. If the encoder / decoder can use one method promised to each other, the flag information is included in a video header such as a video parameter set (VPS) or a sequence parameter set (SPS). Signal whether or not to use.

부호화기가 복수의 전개도 중 어떤 전개도를 이용할지 또는 변환 및 분배기(3201)에서 처리되는 퍼스펙티브의 처리 순서가 가변적인 경우, 부호화시 사용된 전개도의 종류 또는 퍼스펙티브의 처리 순서에 관한 정보는 복호기로 명시적으로 시그널링될 수 있다. 또는 부/복호화기가 상기 정보 등에 대한 룩업 테이블을 공유하는 경우, 룩업 테이블의 인덱스를 시그널링할 수도 있다. If the encoder uses one of a plurality of development diagrams or if the processing order of the perspectives processed by the transform and distribution unit 3201 is variable, the information about the type of development scheme or the processing order of the perspectives used in encoding is explicitly expressed by the decoder. May be signaled. Alternatively, when the encoder / decoder shares a lookup table for the information, the index of the lookup table may be signaled.

도 33의 변환 및 통합기(3303)는 도 32의 변환 및 분배기(3201)의 과정을 반대로 수행할 수 있다. 보다 구체적으로 아래의 과정을 수행할 수 있다.The transform and integrator 3303 of FIG. 33 may reverse the process of the transform and divider 3201 of FIG. 32. More specifically, the following process can be performed.

먼저, 부호화 장치에서 해당 퍼스펙티브 영상에 대해 회전을 적용했을 경우, 부호화 장치에서 회전된 각도만큼 영상을 반대 방향으로 회전시킬 수 있다(스텝 1).First, when rotation is applied to the perspective image in the encoding apparatus, the image may be rotated in the opposite direction by the angle rotated in the encoding apparatus (step 1).

해당 퍼스펙티브 영상에 대해 회전이 적용되었는지의 여부 및/또는 회전 각도는 비트스트림을 통해 시그널링될 수 있다. 상기 회전 적용 여부 및/또는 회전 각도는 직접적으로 부/복호화될 수 있다. 예컨대, 회전 적용 여부를 나타내는 플래그 및 회전 각도에 관한 구문 요소가 부/복호화될 수 있다. Whether rotation is applied and / or the rotation angle for the corresponding perspective image may be signaled through the bitstream. Whether the rotation is applied and / or the rotation angle can be directly negative / decoded. For example, a flag indicating whether rotation is applied and a syntax element regarding rotation angle may be encoded / decoded.

회전 각도는 퍼스펙티브 영상의 형태에 따라 제한된 개수가 존재할 수 있다. 예컨대, 퍼스펙티브 영상이 사각형일 경우 회전 각도는 90도, 180도 및 270도 중 하나일 수 있다. 따라서, 회전 각도에 관한 구문 요소는 3가지 경우 중 한가지를 지시하는 정보일 수 있다. There may be a limited number of rotation angles depending on the shape of the perspective image. For example, when the perspective image is a quadrangle, the rotation angle may be one of 90 degrees, 180 degrees, and 270 degrees. Therefore, the syntax element regarding the rotation angle may be information indicating one of three cases.

또는 2 비트의 구문 요소를 이용할 경우, 예컨대, 비트열 “00”은 “회전되지 않음”, 비트열 “01”은 “90도 회전됨”, 비트열 “10”은 “180도 회전됨”, 비트열 “11”은 “270도 회전됨”을 나타낼 수도 있다. 상기 비트열과 그에 대응하는 의미는 부/복호화기에서 기설정되어, 예컨대, 테이블의 형태로 저장될 수 있다.Or using a 2-bit syntax element, for example, bit string “00” is “not rotated”, bit string “01” is rotated 90 degrees, bit string “10” is rotated 180 degrees, The bit string “11” may indicate “rotated 270 degrees”. The bit string and its corresponding meaning may be preset in the encoder / decoder and stored, for example, in the form of a table.

퍼스펙티브 영상이 n 각형일 경우, 회전이 적용되지 않는 1가지 경우와 회전이 적용되는 n-1가지의 경우가 존재할 수 있다. 상기 n-1가지의 경우는 각각 회전 각도가 상이한 경우를 의미할 수 있다. 즉, 퍼스펙티브 영상이 n 각형일 경우, 회전 변환에 관한 정보는 n가지 경우 중 한가지를 지시하는 정보일 수 있다. 따라서, log2n 비트의 구문 요소를 이용하여, 회전 적용 여부 및 회전 각도에 관한 정보가 부/복호화될 수 있다.When the perspective image is n-square, there may be one case where rotation is not applied and n-1 cases where rotation is applied. The n-1 cases may refer to cases in which rotation angles are different. That is, when the perspective image is n-square, the information about the rotation transformation may be information indicating one of n cases. Thus, using log 2 n bits of syntax elements, information about whether rotation is applied and the angle of rotation can be encoded / decoded.

다음으로, 부호화 장치에서 해당 퍼스펙티브 영상에 대해 대칭을 적용했을 경우 부호화 장치에서 사용했던 중앙선을 기준으로 대칭 영상을 생성할 수 있다(스텝 2).Next, when symmetry is applied to the perspective image in the encoding apparatus, the symmetry image may be generated based on the center line used in the encoding apparatus (step 2).

해당 퍼스펙티브 영상에 대해 대칭이 적용되었는지의 여부 및/또는 대칭에 사용된 중앙선에 관한 정보는 비트스트림을 통해 시그널링될 수 있다. 상기 대칭 적용 여부 및/또는 중앙선에 관한 정보는 직접적으로 부/복호화될 수 있다. 예컨대, 대칭 적용 여부를 나타내는 플래그 및 중앙선에 관한 구문 요소가 부/복호화될 수 있다.Information about whether symmetry has been applied to the corresponding perspective image and / or centerline used for symmetry may be signaled through the bitstream. Information about whether the symmetry is applied and / or the center line may be directly encoded / decoded. For example, syntax elements for flags and centerlines indicating whether symmetry is applied may be encoded / decoded.

이용 가능한 중앙선의 개수는 제한될 수 있다. 예컨대, 부/복호화기는 이용 가능한 중앙선의 개수를 미리 약속할 수 있다. 또는 이용 가능한 중앙선의 개수가 시그널링될 수도 있다.The number of centerlines available may be limited. For example, the decoder / decoder may promise in advance the number of available centerlines. Or the number of available centerlines may be signaled.

예컨대, 중앙선이 수직선, 수평선, 대각선의 3가지 중 하나일 경우, 중앙선에 관한 정보는 3가지 경우 중 한가지를 지시하는 정보일 수 있다.For example, when the center line is one of three types of vertical line, horizontal line, and diagonal line, the information about the center line may be information indicating one of three cases.

또는 2 비트의 구문 요소를 이용할 경우, 예컨대, 비트열 “00”은 “대칭되지 않음”, 비트열 “01”은 “수직선을 이용하여 대칭됨”, 비트열 “10”은 “수평선을 이용하여 대칭됨”, 비트열 “11”은 “대각선을 이용하여 대칭됨”을 나타낼 수도 있다. 상기 비트열과 그에 대응하는 의미는 부/복호화기에서 기설정되어, 예컨대, 테이블의 형태로 저장될 수 있다.Or using a 2-bit syntax element, for example, bit string “00” is “not symmetrical”, bit string “01” is “symmetrical using a vertical line”, and bit string “10” is using a horizontal line. Symmetrical ”, bit string“ 11 ”may indicate“ symmetrical using diagonal ”. The bit string and its corresponding meaning may be preset in the encoder / decoder and stored, for example, in the form of a table.

다음으로, 복수의 퍼스펙티브가 합쳐진 하나의 전개도를 생성할 경우 스텝 1 및/또는 스텝 2를 거친 퍼스펙티브 영상들을 전개도에 맞게 하나로 통합할 수 있다.Next, when generating one development view in which a plurality of perspectives are combined, perspective images that have passed through Step 1 and / or Step 2 may be integrated into one according to the development view.

스텝 1 및 스텝 2는 부호화 장치의 변환 및 분배기(3201)가 사용한 연산을 역으로 적용함으로서 수행될 수 있다. 복호화 장치의 사용자가 복수의 퍼스펙티브를 합친 하나의 전개도를 요구할 경우 스텝 3이 수행될 수 있다.Steps 1 and 2 may be performed by inversely applying an operation used by the transform and divider 3201 of the encoding apparatus. Step 3 may be performed when the user of the decoding apparatus requests one development view that combines a plurality of perspectives.

전술한 바와 같이, 퍼스펙티브 간 예측에 활용할 수 있는 픽셀 정보를 공유하기 위해서는 3차원 공간의 영상을 전개도상에 표현하면서 발생하는 퍼스펙티브 간의 위치 차이 및/또는 퍼스펙티브의 부/복호화 처리 순서를 소정의 순서로 일치시키기 위한 변환을 고려하여, 픽셀 정보를 보정할 수 있다.As described above, in order to share the pixel information that can be used for prediction between perspectives, the positional difference between the perspectives generated while expressing an image of a three-dimensional space on a development diagram and / or a process of encoding / decoding the perspectives in a predetermined order. In consideration of the transformation for matching, the pixel information can be corrected.

또한, 예측에 사용되는 인접 퍼스펙티브의 영상 정보를 원활히 참조하기 위해서는, 인접 퍼스펙티브의 영상 정보를 수정(modify)할 필요가 있다.In addition, in order to smoothly refer to video information of adjacent perspectives used for prediction, it is necessary to modify video information of adjacent perspectives.

예컨대, 시간적 예측에 사용하는 움직임 벡터의 경우, 전개도 상에서의 퍼스펙티브 간의 위치 차이 및/또는 부/복호화 처리 순서를 소정의 순서로 일치시키지 위한 변환을 고려한 보정과 마찬가지로, 대칭 및/또는 회전 변환을 수행하여 수정될 수 있다.For example, in the case of a motion vector used for temporal prediction, a symmetrical and / or rotational transformation is performed, similarly to a correction taking into account a transformation for matching the positional difference between the perspectives on a developed view and / or the order of sub / decoding processes in a predetermined order. Can be modified.

그러나, 공간적 예측 모드의 수정은 상기 방법으로는 해결되지 않을 수 있다. 그 이유에 대해서는 후술한다. 화면내 예측을 수행하기 위해, 예컨대, 현재 블록의 좌하단, 좌단, 상단, 우상단의 인접 픽셀 정보를 이용할 수 있다. 또한, 방향성 예측 모드로서, 도 35에 도시된 바와 같이, 33가지의 예측 모드가 이용될 수 있다. 또는, 보다 세밀한 방향성을 지원하기 위해, 더 많은 방향성 예측 모드가 이용될 수도 있다. However, modification of the spatial prediction mode may not be solved with this method. The reason for this is described later. In order to perform the intra prediction, for example, adjacent pixel information of the bottom left, left, top, and top right corners of the current block may be used. In addition, as the directional prediction mode, as shown in FIG. 35, 33 prediction modes may be used. Or, more directional prediction modes may be used to support finer directionality.

영상의 부/복호화를 좌상단에서 우하단으로 진행하면, 특정 방향에만 픽셀 정보가 존재한다. 따라서, 참조할 수 있는 방향성 예측 모드는 좌하단, 좌단, 상단 및/또는 우상단의 예측 모드일 수 있다. 또한, 움직임 벡터와 다르게 공간적 예측의 방향에 따른 모드 번호가 저장이 된다. 따라서, 모드 번호가 실제 공간적 예측의 방향과 매칭이 안될 수도 있다. 따라서 퍼스펙티브가 대칭이나 회전으로 변환될 경우 이웃 블록의 예측 정보를 그대로 활용할 수 없다. When the encoding / decoding of the image proceeds from the upper left to the lower right, pixel information exists only in a specific direction. Accordingly, the directional prediction mode that may be referred to may be a prediction mode of a lower left, a left end, an upper end, and / or an upper right end. In addition, unlike the motion vector, the mode number according to the direction of spatial prediction is stored. Thus, the mode number may not match the direction of the actual spatial prediction. Therefore, when the perspective is transformed into symmetry or rotation, the prediction information of the neighboring block cannot be used as it is.

도 36은 이웃 퍼스펙티브의 예측 모드를 참조한 현재 퍼스펙티브의 공간적 예측을 설명하기 위한 예시도이다.36 is an exemplary diagram for describing spatial prediction of a current perspective with reference to a prediction mode of a neighbor perspective.

도 36의 (a)는 정육면체 전방향 영상의 전개도 상에서, 퍼스펙티브 P2의 블록 A, 퍼스펙티브 P6의 블록 B의 위치를 나타낸다. 도 36의 (b)는 전개도 상에서의 위치 차이를 고려하여, 퍼스펙티브 P2 및 퍼스펙티브 P6의 위치를 보정한 후의 블록 A와 B의 위치를 나타낸다. 도 36의 (c)는 퍼스펙티브 P6의 의 부/복호화 처리 순서를 소정의 방향, 예컨대, 좌상단에서 우하단으로 일치시키는 보정 후의 블록 A와 B의 위치를 나타낸다. 36 (a) shows the positions of block A of perspective P2 and block B of perspective P6 on the developed view of the cube omnidirectional image. 36B shows the positions of blocks A and B after correcting the positions of the perspective P2 and the perspective P6 in consideration of the positional difference on the developed view. FIG. 36C shows the positions of blocks A and B after correction for matching the negative / decoding process order of the perspective P6 from a predetermined direction, for example, from the upper left to the lower right.

도 36의 (c)의 퍼스펙티브 P6은 도 32의 변환 및 분배기(3201)를 통해 좌상단에서 우하단의 순서로 부호화될 수 있다. 따라서, 블록 B는 도 35에 예시한 화면 내 예측 모드를 이용하여 예측될 수 있다. 하지만, 도 36의 (c)의 블록 A의 부호화 완료된 픽셀 정보는 블록 B가 참조할 수 있도록 변환된 것이다. 그러나, 픽셀 정보 외의 다른 영상 정보들은 변환 전의 것이므로, 블록 B가 그대로 이용할 수 없다. 따라서 다른 영상 정보들에 대해서도, 픽셀 정보를 변환한 것에 대응되는 변환 과정을 수행할 필요가 있다. 이때, 픽셀 정보의 변환은 예컨대, 도 34를 참조하여 설명한 바와 같다. The perspective P6 of FIG. 36C may be encoded in the order from the upper left to the lower right through the transform and divider 3201 of FIG. 32. Accordingly, block B may be predicted using the intra prediction mode illustrated in FIG. 35. However, the encoded pixel information of the block A of FIG. 36C is converted so that the block B can refer to it. However, since the image information other than the pixel information is before the conversion, the block B cannot use it as it is. Therefore, it is necessary to perform a conversion process corresponding to the conversion of the pixel information with respect to other image information. In this case, the conversion of the pixel information is as described with reference to FIG. 34, for example.

그러나, 화면 내 예측의 경우, 방향성에 관해 모드 번호가 사용되기 때문에 변환 과정을 거친 후에는, 방향성에 관한 모드 번호가 동일하지 않거나 존재하지 않는 경우가 발생할 수 있다. However, in the case of intra prediction, since the mode number is used for the directionality, after the conversion process, the mode number for the directionality may not be the same or may not exist.

현재 블록(예컨대, 도 36의 블록 B)과 참조 블록(예컨대, 도 36의 블록 A)에 가용한 공간적 예측의 방향성이 동일하면, 변환에 의해 변경된 모드 번호의 수정만 필요할 수 있다. 하지만, 현재 블록의 예측 모드에 대응되는 모드가 참조 블록에 대해서는 존재하지 않을 수도 있다. If the directionality of the spatial prediction available for the current block (eg, block B of FIG. 36) and the reference block (eg, block A of FIG. 36) is the same, only the modification of the mode number changed by the transformation may be necessary. However, a mode corresponding to the prediction mode of the current block may not exist for the reference block.

도 37은 현재 블록과 참조 블록의 예측 모드의 차이를 설명하기 위한 도면이다. 37 is a diagram for explaining a difference between prediction modes of a current block and a reference block.

도 37의 (a)는 도 36의 (c)에 도시된 블록 A 및 블록 B에 가용한 방향성 예측 모드를 예시적으로 나타낸다. 도 37의 (a)에 도시된 바와 같이, 블록 B의 변환에 따라 블록 A가 변환되면서, 모드 번호 26외에는 블록 B가 예측에 활용할 수 있는 모드가 블록 A에 대해 없음을 알 수 있다. 하지만, 블록 A의 예측 방향 자체는 블록 B의 예측 방향의 부/복호화에 유용할 수 있다. 따라서 블록 A의 모드 번호를 블록 B가 사용할 수 있도록 해석하면, Most Probable Mode(MPM)등의 예측 기술의 효율을 향상시킬 수 있다. FIG. 37A illustrates the directional prediction modes available for the blocks A and B shown in FIG. 36C. As shown in (a) of FIG. 37, as the block A is transformed according to the conversion of the block B, it can be seen that there is no mode other than the mode number 26 for the block A that the block B can utilize for prediction. However, the prediction direction itself of block A may be useful for encoding / decoding of the prediction direction of block B. Therefore, if the mode number of the block A is interpreted to be used by the block B, the efficiency of prediction techniques such as Most Probable Mode (MPM) can be improved.

방향성 예측 모드의 해석은 다음과 같이 수행될 있다. 참조 블록의 예측 방향이 소정의 처리 순서(예컨대, 순차 주사 순서)에 따른 방향성 모드(예컨대, 도 35를 참조하여 설명한 방향성 모드)중에 존재하는 경우, 참조 블록의 방향성 예측 모드는 참조 블록의 예측 방향에 할당된 모드 번호로 해석할 수 있다. 예컨대, 도 37의 (a)에서, 참조 블록 A의 예측 방향이 우상단 방향인 경우, 우상단 방향은 도 35에 도시된 방향성 모드 중에 포함된다. 따라서, 이 경우, 참조 블록 A의 방향성 예측 모드는 '34'로 해석될 수 있다. The interpretation of the directional prediction mode may be performed as follows. When the prediction direction of the reference block exists in the directional mode (eg, the directional mode described with reference to FIG. 35) according to a predetermined processing order (eg, sequential scanning order), the directional prediction mode of the reference block is the prediction direction of the reference block. Can be interpreted as a mode number assigned to. For example, in FIG. 37A, when the prediction direction of the reference block A is the upper right direction, the upper right direction is included in the directional mode shown in FIG. 35. Therefore, in this case, the directional prediction mode of the reference block A may be interpreted as '34'.

만약, 참조 블록의 예측 방향이 소정의 처리 순서(예컨대, 순차 주사 순서)에 따른 방향성 모드 중에 존재하지 않는 경우, 즉, 아래쪽 방향 또는 오른쪽 방향일 경우, 참조 블록의 예측 방향에 180도 대칭되는 예측 방향에 할당된 모드 번호로 해석할 수 있다. 예컨대, 도 37의 (a)에서, 참조 블록 A의 예측 방향이 오른쪽 방향인 경우, 오른쪽 방향은 도 35에 도시된 방향성 모드 중에 포함되지 않는다. 따라서, 이 경우, 참조 블록 A의 방향성 예측 모드는, 오른쪽 방향에 180도 대칭되는 왼쪽 방향에 할당된 모드 번호인 '10'으로 해석될 수 있다. If the prediction direction of the reference block does not exist in the directional mode according to a predetermined processing order (for example, sequential scanning order), that is, when the prediction direction of the reference block is 180 degrees symmetric to the prediction direction of the reference block Can be interpreted as the mode number assigned to the direction. For example, in FIG. 37A, when the prediction direction of the reference block A is the right direction, the right direction is not included during the directional mode shown in FIG. 35. Therefore, in this case, the directional prediction mode of the reference block A may be interpreted as '10', which is a mode number assigned to the left direction that is 180 degrees symmetric to the right direction.

도 37의 (b)는 도 37의 (a)의 하단 방향성(실선 화살표)을 상단 방향성(점선 화살표)으로 해석하는 예를 나타낸다. 도 37의 (b)의 방향성 모드 중 2번 모드는 기존 방향성 모드 중에 포함된다. 따라서, 180도 대칭해서 해석되지 않을 수 있다. FIG. 37B shows an example in which the lower directionality (solid arrow) in FIG. 37A is interpreted as the upper directionality (dashed arrow). Mode 2 of the directional mode of FIG. 37B is included in the existing directional mode. Therefore, it may not be interpreted symmetrically by 180 degrees.

도 37의 (c)는 도 37의 (a)의 오른쪽 방향성(실선 화살표)을 왼쪽 방향성(점선 화살표)으로 해석하는 예를 나타낸다. 도 37의 (c)의 방향성 모드 중 34번 모드는 기존 방향성 모드 중에 포함된다. 따라서, 180도 대칭해서 해석되지 않을 수 있다.FIG. 37C shows an example in which the right directionality (solid line arrow) in FIG. 37A is interpreted as the left directionality (dashed arrow). Mode 34 of the directional mode of FIG. 37C is included in the existing directional mode. Therefore, it may not be interpreted symmetrically by 180 degrees.

도 38은 참조 블록의 방향성 예측 모드의 해석 방법을 설명하기 위한 도면이다.38 is a diagram for explaining a method of analyzing a directional prediction mode of a reference block.

단계 S3810에서, 참조 블록의 영상 정보를 변환할 수 있다. 참조 블록의 영상 정보의 변환은 현재 블록에 맞추어 수행될 수 있다. 예컨대, 현재 블록의 변환을 고려하여, 또는 현재 블록과 참조 블록이 포함되는 퍼스펙티브의 차이를 고려하여 수행될 수 있다.In operation S3810, image information of a reference block may be converted. Conversion of the image information of the reference block may be performed according to the current block. For example, the operation may be performed in consideration of the transformation of the current block or in consideration of the difference between the perspectives of the current block and the reference block.

단계 S3820에서, 해석되지 않은 참조 블록의 방향성 예측 모드가 현재 블록에 대해 가용한지 판단할 수 있다. 예컨대, 현재 블록에 대해 가용한 방향성 예측 모드 중에 상기 해석되지 않은 참조 블록의 방향성 예측 모드가 포함되면, 참조 블록의 해당 방향성 예측 모드는 현재 블록에 대해 가용한 것으로 판단할 수 있다.In operation S3820, it may be determined whether the directional prediction mode of the uninterpreted reference block is available for the current block. For example, if the directional prediction mode of the uninterpreted reference block is included among the directional prediction modes available for the current block, it may be determined that the corresponding directional prediction mode of the reference block is available for the current block.

참조 블록의 방향성 예측 모드가 현재 블록에 대해 가용하지 않다면(단계 S3820에서 No), 단계 S3830에서, 참조 블록의 해당 방향성 예측 모드에 180도 대칭되는 모드를 생성할 수 있다. 이후, 단계 S3840에서, 참조 블록의 방향성 예측 모드를 해석할 수 있다. 예컨대, 참조 블록의 방향성 예측 모드는, 단계 S3830에서 생성된 참조 블록의 방향성 예측 모드와 같은 방향성을 갖는 현재 블록의 모드로 해석될 수 있다.If the directional prediction mode of the reference block is not available for the current block (No in step S3820), in step S3830, a mode that is 180 degrees symmetric to the corresponding directional prediction mode of the reference block may be generated. Thereafter, in step S3840, the directional prediction mode of the reference block may be analyzed. For example, the directional prediction mode of the reference block may be interpreted as a mode of the current block having the same directionality as the directional prediction mode of the reference block generated in step S3830.

참조 블록의 방향성 예측 모드가 현재 블록에 대해 가용하다면(단계 S3820에서 Yes), 단계 S3840에서, 참조 블록의 방향성 예측 모드는, 참조 블록의 방향성 예측 모드와 같은 방향성을 갖는 현재 블록의 모드로 해석될 수 있다.If the directional prediction mode of the reference block is available for the current block (Yes in step S3820), in step S3840, the directional prediction mode of the reference block is to be interpreted as the mode of the current block having the same directionality as that of the reference block. Can be.

단계 S3850에서, 참조 블록의 모든 방향성 예측 모드가 해석되었는지 판단할 수 있다. 참조 블록의 방향성 예측 모드 중 해석되지 않은 모드가 있으면, 단계 S3820으로 이동하여 상기 과정이 반복될 수 있다.In operation S3850, it may be determined whether all the directional prediction modes of the reference block have been interpreted. If there is an uninterpreted mode among the directional prediction modes of the reference block, the process moves to step S3820 and the process can be repeated.

도 35에 도시된 예측 모드를 가정하면, 정육면체 전방향 영상의 각 퍼스펙티브가 어떤 전개도를 이용하여 전개되느냐에 따라, 참조 블록의 방향성 예측 모드는 예컨대, 도 39에 도시된 8가지의 경우 중 하나일 수 있다. Assuming the prediction mode shown in FIG. 35, the directional prediction mode of the reference block may be, for example, one of eight cases shown in FIG. 39, depending on which development of each perspective of the cube omnidirectional image is developed. Can be.

도 39에 도시된 8가지 경우 중, 현재 블록과 같은 경우(예컨대, 도 39의 (a)의 경우)를 제외하고는, 참조 블록의 방향성 모드를 현재 블록에 맞춰 해석할 필요가 있다. 참조 블록의 방향성 모드의 해석은 도 37을 참조하여 설명한 바와 같이 수행될 수 있다. 또는 부/복호화 장치가 공유하는 룩업 테이블(해석 테이블)을 참조함으로써 참조 블록의 방향성 모드를 해석할 수 있다. 테이블을 참조하는 경우, 참조 블록이 도 39의 8가지 경우 중 어디에 해당하는지를 결정할 필요가 있다. 이는 비트스트림을 통해 시그널링될 수 있다. 또는 사용된 전개도에 관한 정보, 기타 부/복호화 정보에 기초하여 유도될 수도 있다. Of the eight cases shown in FIG. 39, except for the same case as the current block (eg, the case of FIG. 39A), it is necessary to interpret the directional mode of the reference block according to the current block. Analysis of the directional mode of the reference block may be performed as described with reference to FIG. 37. Alternatively, the directional mode of the reference block can be analyzed by referring to a lookup table (interpretation table) shared by the encoding / decoding device. When referring to the table, it is necessary to determine which of the eight cases of FIG. 39 corresponds to. This may be signaled via the bitstream. Or it may be derived based on the information on the developed view used, other encoding / decoding information.

아래의 표 1은 방향성 모드 해석 테이블의 일례이다. 표 1은 33개의 방향성에 대한 테이블이다. 그러나, 방향성의 개수는 이에 한정되지 않는다. Table 1 below is an example of the directional mode analysis table. Table 1 is a table of 33 orientations. However, the number of directionality is not limited to this.

해석 모드(a)Analysis mode (a) (b)(b) (c)(c) (d)(d) (e)(e) (f)(f) (g)(g) (h)(h) 22 1818 1818 3434 ** ** 3434 22 33 1919 1717 3333 1919 1717 33 3333 44 2020 1616 3232 2020 1616 44 3232 55 2121 1515 3131 2121 1515 55 3131 66 2222 1414 3030 2222 1414 66 3030 77 2323 1313 2929 2323 1313 77 2929 88 2424 1212 2828 2424 1212 88 2828 99 2525 1111 2727 2525 1111 99 2727 1010 2626 1010 2626 2626 1010 1010 2626 1111 2727 99 2525 2727 99 1111 2525 1212 2828 88 2424 2828 88 1212 2424 1313 2929 77 2323 2929 77 1313 2323 1414 3030 66 2222 3030 66 1414 2222 1515 3131 55 2121 3131 55 1515 2121 1616 3232 44 2020 3232 44 1616 2020 1717 3333 33 1919 3333 33 1717 1919 1818 2, 342, 34 2, 342, 34 1818 2, 342, 34 2, 342, 34 1818 1818 1919 33 3333 1717 33 3333 1919 1717 2020 44 3232 1616 44 3232 2020 1616 2121 55 3131 1515 55 3131 2121 1515 2222 66 3030 1414 66 3030 2222 1414 2323 77 2929 1313 77 2929 2323 1313 2424 88 2828 1212 88 2828 2424 1212 2525 99 2727 1111 99 2727 2525 1111 2626 1010 2626 1010 1010 2626 2626 1010 2727 1111 2525 99 1111 2525 2727 99 2828 1212 2424 88 1212 2424 2828 88 2929 1313 2323 77 1313 2323 2929 77 3030 1414 2222 66 1414 2222 3030 66 3131 1515 2121 55 1515 2121 3131 55 3232 1616 2020 44 1616 2020 3232 44 3333 1717 1919 33 1717 1919 3333 33 3434 ** ** 22 ** 1818 22 3434

또한, 공간적 예측시 퍼스펙티브의 차이를 고려하여, 영상 정보를 보정할 필요가 있다. 도 40은 정육면체 전방향 영상의 공간적 예측에 사용되는 참조 샘플의 위치를 설명하기 위한 도면이다. 도 40에서 점선 박스는 각 CTU(블록 A, B 및 C)의 공간적 예측에 사용되는 참조 샘플의 위치를 나타낸다. 도 40의 (a)에 도시된 바와 같이, 정육면체 전방향 영상의 공간적 예측을 수행할 때, 전개도 상에서 참조 샘플의 존재하지 않는 경우가 있다. 예컨대, 도 40의 (a)에 도시된 좌상단 CTU(블록 A)의 경우, 좌상단 참조 샘플(X)이 존재하지 않는다. 또한, 우단 CTU(블록 B)와 하단 CTU(블록 C)의 경우, 퍼스펙티브 간의 차이에 의해, 올바른 참조 샘플이 선택되지 않을 수 있다. 전술한 바와 같이, 참조 샘플이 존재하지 않는 경우 및/또는 퍼스펙티브 간의 차이로 인해 픽셀 정보의 보정이 필요한 경우, 공간적 예측을 수행할 때, 이웃 퍼스펙티브의 샘플 값을 이용하여, 존재하지 않는 샘플 값을 유도하거나, 또는 현재 퍼스펙티브에 맞게 이웃 퍼스펙티브를 변환해서 참조 샘플을 결정할 수 있다. In addition, it is necessary to correct the image information in consideration of the difference in perspective during spatial prediction. 40 is a diagram for explaining a position of a reference sample used for spatial prediction of a cube omnidirectional image. The dotted box in FIG. 40 indicates the position of the reference sample used for spatial prediction of each CTU (blocks A, B and C). As shown in (a) of FIG. 40, when spatial prediction of a cube omnidirectional image is performed, there may not be a reference sample on the developed view. For example, in the case of the upper left CTU (block A) shown in FIG. 40A, the upper left reference sample X does not exist. In addition, in the case of the right CTU (block B) and the bottom CTU (block C), due to the difference between the perspectives, the correct reference sample may not be selected. As described above, when there is no reference sample and / or correction of pixel information due to a difference between perspectives, when performing spatial prediction, the sample values of the neighboring perspectives are used to determine the sample values that do not exist. The reference sample can be determined by deriving or transforming the neighbor perspective to fit the current perspective.

예컨대, 도 40의 (a)의 블록 A의 참조 샘플(X)는 퍼스펙티브 P1과 P2의 영상 정보를 보간함으로써 생성할 수 있다. 또한, 퍼스펙티브 P3와 시점이 서로 다른 퍼스펙티브 P4 및/또는 P6의 경우, 시점 보정을 통하여 올바른 참조 샘플을 생성할 수 있다.For example, the reference sample X of the block A of FIG. 40A can be generated by interpolating the image information of the perspectives P1 and P2. In addition, in the case of perspective P4 and / or P6 having different viewpoints from perspective P3, correct reference samples may be generated through viewpoint correction.

도 41은 정육면체 전방향 영상을 전개도상에의 연속성을 활용하여 병렬 처리하는 방법을 설명하기 위한 도면이다. FIG. 41 is a view for explaining a method of parallel processing a cube omnidirectional image utilizing continuity on a developed view.

도 41에 사용된 두 개의 정육면체 전개도는 도 11의 (a) 및 (e)와 같다. 도 41에 도시된 예에서, 각 퍼스펙티브는 5x5 CTU를 포함하며, 각 CTU 내의 숫자는 WPP 처리 순서를 나타낸다. 부/복호화의 처리는 도 41의 (a)의 빗금친 블록 a1 및 a2로부터 시작될 수 있다. 3 차원이 아닌 단순 전개도상에서는 퍼스펙티브 A와 B는 서로 참조하지 않을 수 있다. 도 41의 (a)의 블록 a1 과 a2의 위치에서 동시에 부/복호화가 시작되어도, 블록 a2가 속한 행의 처리가 블록 a1이 속한 열에 다다랐을 때는 의존성이 해결된 상태이기 때문에 의존성에 의한 지연이 발생하지 않는다. Two cube developments used in FIG. 41 are the same as in FIGS. 11A and 11E. In the example shown in FIG. 41, each perspective includes 5x5 CTUs, and the number within each CTU represents the WPP processing order. The processing of the encoding / decoding can be started from the hatched blocks a1 and a2 in Fig. 41A. In simple developments other than three dimensions, perspectives A and B may not refer to each other. Even when encoding / decoding is started simultaneously at the positions of blocks a1 and a2 in Fig. 41 (a), when the processing of the row to which the block a2 belongs reaches the column to which the block a1 belongs, the delay is caused by the dependency because the dependency is resolved. I never do that.

마찬가지로, 도 41의 (b)의 경우에도, 블록 b1과 b2의 위치에서 동시에 부/복호화가 시작되어도, 블록 b2가 속한 행의 처리가 블록 b1이 속한 열에 다다랐을 때는 의존성이 해결된 상태이므로, 의존성에 의한 지연이 발생하지 않는다.Similarly, even in the case of FIG. 41 (b), even when encoding / decoding is started at the positions of blocks b1 and b2 at the same time, the dependency is resolved when the processing of the row to which the block b2 belongs reaches the column to which the block b1 belongs, No delay is caused.

도 41에 도시된 예에서는, 부호화기는 전개도상에서 둘 이상의 위치에서 부/복호화를 개시하게 된다. 따라서, 예컨대, 부호화기는 블록 a1 및 a2에 대한 두 개의 엔트로피 정보(예컨대, 엔트로피 문맥 테이블)를 사용할 수 있다. 복호화기는 부호화기에서 사용된 방식을 알아야 복호화를 수행할 수 있다. 따라서, 부호화기에서 사용한 엔트로피 정보, 부호화 개시 시점 및/또는 전개도에 관한 정보 등은 비트스트림을 통해 시그널링될 수 있다. 또는 룩업 테이블을 참조함으로써 수행될 수 있다. 또는 다른 부호화 파라미터 및/또는 내부 변수에 기초하여 유도할 수 있다.In the example shown in FIG. 41, the encoder will start encoding / decoding at two or more positions in the development view. Thus, for example, the encoder may use two entropy information (eg, an entropy context table) for blocks a1 and a2. The decoder needs to know the method used in the encoder to perform the decoding. Therefore, entropy information used in the encoder, information on an encoding start time point and / or an exploded view, and the like may be signaled through a bitstream. Or by referring to a lookup table. Or based on other coding parameters and / or internal variables.

본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.Exemplary methods of the present disclosure are represented as a series of operations for clarity of description, but are not intended to limit the order in which the steps are performed, and each step may be performed simultaneously or in a different order as necessary. In order to implement the method according to the present disclosure, the illustrated step may further include other steps, may include other steps except some, or may include additional other steps except some.

본 개시의 다양한 실시 예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시 예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.The various embodiments of the present disclosure are not an exhaustive list of all possible combinations and are intended to describe representative aspects of the present disclosure, and the matters described in the various embodiments may be applied independently or in combination of two or more.

또한, 본 개시의 다양한 실시 예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.In addition, various embodiments of the present disclosure may be implemented by hardware, firmware, software, or a combination thereof. For hardware implementations, one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), General Purpose It may be implemented by a general processor, a controller, a microcontroller, a microprocessor, and the like.

본 개시의 범위는 다양한 실시 예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.It is intended that the scope of the disclosure include software or machine-executable instructions (eg, an operating system, an application, firmware, a program, etc.) to cause an operation in accordance with various embodiments of the method to be executed on an apparatus or a computer, and such software or Instructions, and the like, including non-transitory computer-readable media that are stored and executable on a device or computer.

Claims (21)

복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 부호화 방법에 있어서,
상기 복수의 퍼스펙티브 영상 중 부호화 대상 퍼스펙티브 영상의 처리 순서를 식별하는 단계;
상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하는 단계; 및
상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우,
상기 부호화 대상 퍼스펙티브 영상을 변환하는 단계를 포함하되,
상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고,
상기 복수의 퍼스펙티브 영상은 360도 전방향 영상을 N면체에 투영시켜 획득한 N개의 영상인 부호화 방법.
In the encoding method of an image including a plurality of perspective images,
Identifying a processing order of an encoding target perspective image among the plurality of perspective images;
Determining whether the identified processing sequence is the same as a predetermined processing sequence; And
If the identified processing sequence is not the same as the predetermined processing sequence,
Converting the target image to be encoded,
The processing sequence is identified by the processing start position and the processing progress direction,
And said plurality of perspective images are N images obtained by projecting a 360 degree omnidirectional image onto an N-sided surface.
제1항에 있어서,
상기 소정의 처리 순서의 처리 시작 위치는 상기 퍼스펙티브 영상의 좌상단 위치이고, 상기 소정의 처리 순서의 처리 진행 방향은 시계 방향인 부호화 방법.
The method of claim 1,
A processing start position of the predetermined processing sequence is an upper left position of the perspective image, and a processing progress direction of the predetermined processing sequence is clockwise;
제2항에 있어서,
상기 변환은 상기 부호화 대상 퍼스펙티브 영상에 대한 대칭 변환 및 회전 변환 중 적어도 하나를 포함하는 부호화 방법.
The method of claim 2,
And the transformation comprises at least one of a symmetric transformation and a rotation transformation for the encoding target perspective image.
제3항에 있어서,
상기 대칭 변환은 상기 식별된 처리 순서의 처리 진행 방향이 상기 소정의 처리 순서의 처리 진행 방향과 상이할 때 수행되는 부호화 방법.
The method of claim 3,
And the symmetric transformation is performed when the processing progress direction of the identified processing sequence is different from the processing progress direction of the predetermined processing sequence.
제3항에 있어서,
상기 대칭 변환은 좌우 대칭 변환, 상하 대칭 변환 및 대각 대칭 변환 중 하나인 부호화 방법.
The method of claim 3,
And the symmetric transformation is one of symmetric transformation, vertical symmetry transformation, and diagonal symmetry transformation.
제3항에 있어서,
상기 회전 변환은 상기 식별된 처리 순서의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 상이할 때 수행되는 부호화 방법.
The method of claim 3,
And the rotation conversion is performed when the processing start position of the identified processing sequence is different from the processing start position of the predetermined processing sequence.
제6항에 있어서,
상기 회전 변환은 상기 부호화 대상 퍼스펙티브 영상의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 동일해지도록 상기 부호화 대상 퍼스펙티브 영상을 회전시키는 변환인 부호화 방법.
The method of claim 6,
And the rotation transformation is a transformation for rotating the encoding target perspective image such that the processing start position of the encoding target perspective image is the same as the processing start position of the predetermined processing sequence.
제1항에 있어서,
상기 부호화 대상 퍼스펙티브 영상을 변환하는 단계는.
상기 부호화 대상 퍼스펙티브 영상을 제1 변환하는 단계;
상기 제1 변환된 부호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일한지 여부를 판단하는 단계; 및
상기 제1 변환된 부호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우,
상기 제1 변환된 부호화 대상 퍼스펙티브 영상을 제2 변환하는 단계를 포함하는 부호화 방법.
The method of claim 1,
The converting of the target image to be encoded may include:
First converting the encoding target perspective image;
Determining whether a processing order of the first transformed encoding target perspective image is the same as the predetermined processing order; And
When the processing order of the first transformed encoding target perspective image is not the same as the predetermined processing order,
And a second transform of the first transformed encoded target perspective image.
제8항에 있어서,
상기 제1 변환은 대칭 변환 및 회전 변환 중 하나이고, 상기 제2 변환은 나머지 다른 하나인 부호화 방법.
The method of claim 8,
And wherein the first transform is one of a symmetric transform and a rotation transform, and the second transform is the other.
복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 부호화 장치에 있어서,
상기 부호화 장치는 변환기를 포함하고,
상기 변환기는,
상기 복수의 퍼스펙티브 영상 중 부호화 대상 퍼스펙티브 영상의 처리 순서를 식별하고, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하고, 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 부호화 대상 퍼스펙티브 영상을 변환하도록 구성되되,
상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고,
상기 복수의 퍼스펙티브 영상은 360도 전방향 영상을 N면체에 투영시켜 획득한 N개의 영상인 부호화 장치.
In the image encoding apparatus including a plurality of perspective images,
The encoding device includes a converter,
The converter,
Identifying a processing order of the encoding target perspective image among the plurality of perspective pictures, determining whether the identified processing order is the same as a predetermined processing order, and wherein the identified processing order is not the same as the predetermined processing order. In this case, the encoding target perspective image is configured to convert,
The processing sequence is identified by the processing start position and the processing progress direction,
And the plurality of perspective images are N images obtained by projecting a 360 degree omnidirectional image onto an N-sided surface.
복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 복호화 방법에 있어서,
상기 복수의 퍼스펙티브 영상 중 복호화 대상 퍼스펙티브 영상의 처리 순서를 식별하는 단계;
상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하는 단계; 및
상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우,
상기 복호화 대상 퍼스펙티브 영상을 변환하는 단계를 포함하되,
상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고,
상기 복수의 퍼스펙티브 영상은 360도 전방향 영상을 N면체에 투영시켜 획득한 N개의 영상인 복호화 방법.
In the decoding method of an image including a plurality of perspective images,
Identifying a processing order of a decoding target perspective image among the plurality of perspective images;
Determining whether the identified processing sequence is the same as a predetermined processing sequence; And
If the identified processing sequence is not the same as the predetermined processing sequence,
Converting the perspective image to be decoded,
The processing sequence is identified by the processing start position and the processing progress direction,
And the plurality of perspective images are N images obtained by projecting a 360 degree omnidirectional image onto an N-sided surface.
제11항에 있어서,
상기 소정의 처리 순서의 처리 시작 위치는 상기 퍼스펙티브 영상의 좌상단 위치이고, 상기 소정의 처리 순서의 처리 진행 방향은 시계 방향인 복호화 방법.
The method of claim 11,
And a processing start position of the predetermined processing sequence is an upper left position of the perspective image, and a processing progress direction of the predetermined processing sequence is clockwise.
제12항에 있어서,
상기 변환은 상기 복호화 대상 퍼스펙티브 영상에 대한 대칭 변환 및 회전 변환 중 적어도 하나를 포함하는 복호화 방법.
The method of claim 12,
The transformation method includes at least one of a symmetric transformation and a rotation transformation for the decoding target perspective image.
제13항에 있어서,
상기 대칭 변환은 상기 식별된 처리 순서의 처리 진행 방향이 상기 소정의 처리 순서의 처리 진행 방향과 상이할 때 수행되는 복호화 방법.
The method of claim 13,
And the symmetric transformation is performed when the processing progress direction of the identified processing order is different from the processing progress direction of the predetermined processing order.
제13항에 있어서,
상기 대칭 변환은 좌우 대칭 변환, 상하 대칭 변환 및 대각 대칭 변환 중 하나인 복호화 방법.
The method of claim 13,
And the symmetric transformation is one of symmetric transformation, vertical symmetry transformation, and diagonal symmetry transformation.
제13항에 있어서,
상기 회전 변환은 상기 식별된 처리 순서의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 상이할 때 수행되는 복호화 방법.
The method of claim 13,
And the rotation conversion is performed when the processing start position of the identified processing sequence is different from the processing start position of the predetermined processing sequence.
제16항에 있어서,
상기 회전 변환은 상기 복호화 대상 퍼스펙티브 영상의 처리 시작 위치가 상기 소정의 처리 순서의 처리 시작 위치가 동일해지도록 상기 복호화 대상 퍼스펙티브 영상을 회전시키는 변환인 복호화 방법.
The method of claim 16,
And the rotation transform is a transformation for rotating the decoding target perspective image so that the processing start position of the decoding target perspective image is the same as the processing start position of the predetermined processing sequence.
제11항에 있어서,
상기 복호화 대상 퍼스펙티브 영상을 변환하는 단계는.
상기 복호화 대상 퍼스펙티브 영상을 제1 변환하는 단계;
상기 제1 변환된 복호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일한지 여부를 판단하는 단계; 및
상기 제1 변환된 복호화 대상 퍼스펙티브 영상의 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우,
상기 제1 변환된 복호화 대상 퍼스펙티브 영상을 제2 변환하는 단계를 포함하는 복호화 방법.
The method of claim 11,
Converting the decoding target perspective image.
First converting the decoding target perspective image;
Determining whether a processing order of the first transformed decoding target perspective image is the same as the predetermined processing order; And
When the processing order of the first transformed decoding target perspective image is not the same as the predetermined processing order,
And secondly converting the first transformed decoding target perspective image.
제18항에 있어서,
상기 제1 변환은 대칭 변환 및 회전 변환 중 하나이고, 상기 제2 변환은 나머지 다른 하나인 복호화 방법.
The method of claim 18,
The first transform is one of a symmetric transform and a rotation transform, and the second transform is the other.
복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 복호화 장치에 있어서,
상기 복호화 장치는 변환기를 포함하고,
상기 변환기는,
상기 복수의 퍼스펙티브 영상 중 복호화 대상 퍼스펙티브 영상의 처리 순서를 식별하고, 상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하고, 상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우, 상기 복호화 대상 퍼스펙티브 영상을 변환하도록 구성되되,
상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고,
상기 복수의 퍼스펙티브 영상은 360도 전방향 영상을 N면체에 투영시켜 획득한 N개의 영상인 복호화 장치.
An apparatus for decoding an image including a plurality of perspective images,
The decoding device includes a converter,
The converter,
Identify a processing order of a decoding target perspective image among the plurality of perspective images, determine whether the identified processing sequence is the same as a predetermined processing sequence, and the identified processing sequence is not the same as the predetermined processing sequence In this case, the decoding target perspective image is configured to convert,
The processing sequence is identified by the processing start position and the processing progress direction,
And the plurality of perspective images are N images obtained by projecting a 360 degree omnidirectional image onto an N-sided surface.
복수의 퍼스펙티브(perspective) 영상을 포함하는 영상의 부호화 방법에 의해 생성된 비트스트림을 저장한 컴퓨터 판독 가능한 기록 매체로서,
상기 영상의 부호화 방법은,
상기 복수의 퍼스펙티브 영상 중 부호화 대상 퍼스펙티브 영상의 처리 순서를 식별하는 단계;
상기 식별된 처리 순서가 소정의 처리 순서와 동일한지 여부를 판단하는 단계; 및
상기 식별된 처리 순서가 상기 소정의 처리 순서와 동일하지 않은 경우,
상기 부호화 대상 퍼스펙티브 영상을 변환하는 단계를 포함하되,
상기 처리 순서는 처리 시작 위치와 처리 진행 방향으로 식별되고,
상기 복수의 퍼스펙티브 영상은 360도 전방향 영상을 N면체에 투영시켜 획득한 N개의 영상인,
비트스트림을 저장한 컴퓨터 판독 가능한 기록 매체.
A computer-readable recording medium storing a bitstream generated by an encoding method of an image including a plurality of perspective images,
The encoding method of the video,
Identifying a processing order of an encoding target perspective image among the plurality of perspective images;
Determining whether the identified processing sequence is the same as a predetermined processing sequence; And
If the identified processing sequence is not the same as the predetermined processing sequence,
Converting the target image to be encoded,
The processing sequence is identified by the processing start position and the processing progress direction,
The plurality of perspective images are N images obtained by projecting a 360-degree omnidirectional image onto an N-sided surface.
A computer readable recording medium storing bitstreams.
KR1020170143426A 2016-11-25 2017-10-31 Method and apparatus for parallel processing image KR102011430B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/013284 WO2018097577A1 (en) 2016-11-25 2017-11-21 Parallel image processing method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160158621 2016-11-25
KR20160158621 2016-11-25

Publications (2)

Publication Number Publication Date
KR20180059348A KR20180059348A (en) 2018-06-04
KR102011430B1 true KR102011430B1 (en) 2019-08-16

Family

ID=62628018

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020170083179A KR102004247B1 (en) 2016-11-25 2017-06-30 Method and apparatus for parallel processing image
KR1020170103895A KR102011428B1 (en) 2016-11-25 2017-08-17 Method and apparatus for parallel processing image
KR1020170139101A KR102011429B1 (en) 2016-11-25 2017-10-25 Method and apparatus for parallel processing image
KR1020170143426A KR102011430B1 (en) 2016-11-25 2017-10-31 Method and apparatus for parallel processing image
KR1020170147172A KR102011431B1 (en) 2016-11-25 2017-11-07 Method and apparatus for parallel processing image

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020170083179A KR102004247B1 (en) 2016-11-25 2017-06-30 Method and apparatus for parallel processing image
KR1020170103895A KR102011428B1 (en) 2016-11-25 2017-08-17 Method and apparatus for parallel processing image
KR1020170139101A KR102011429B1 (en) 2016-11-25 2017-10-25 Method and apparatus for parallel processing image

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020170147172A KR102011431B1 (en) 2016-11-25 2017-11-07 Method and apparatus for parallel processing image

Country Status (1)

Country Link
KR (5) KR102004247B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102130784B1 (en) * 2018-11-23 2020-07-06 (주)텔리언 Transmitting System for multi-directional View Video Data

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015146620A (en) * 2006-07-06 2015-08-13 トムソン ライセンシングThomson Licensing Method and apparatus for decoupling frame number and/or picture order count (poc) for multi-view video encoding and decoding

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ZA200805337B (en) * 2006-01-09 2009-11-25 Thomson Licensing Method and apparatus for providing reduced resolution update mode for multiview video coding
WO2010037512A1 (en) * 2008-10-02 2010-04-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Intermediate view synthesis and multi-view data signal extraction
IN2014KN00990A (en) * 2011-11-11 2015-10-09 Fraunhofer Ges Forschung
KR101349347B1 (en) * 2012-05-22 2014-01-20 에이알비전 (주) System for generating a frontal-view image for augmented reality based on the gyroscope of smart phone and Method therefor
KR102327617B1 (en) * 2013-04-08 2021-11-17 지이 비디오 컴프레션, 엘엘씨 Coding concept allowing efficient multi-view/layer coding
US9936207B2 (en) * 2013-10-14 2018-04-03 Qualcomm Incorporated Indication of parallel processing in video coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015146620A (en) * 2006-07-06 2015-08-13 トムソン ライセンシングThomson Licensing Method and apparatus for decoupling frame number and/or picture order count (poc) for multi-view video encoding and decoding

Also Published As

Publication number Publication date
KR102004247B1 (en) 2019-07-29
KR20180059350A (en) 2018-06-04
KR102011429B1 (en) 2019-08-16
KR102011428B1 (en) 2019-08-16
KR20180059339A (en) 2018-06-04
KR20180059345A (en) 2018-06-04
KR20180059348A (en) 2018-06-04
KR20180059336A (en) 2018-06-04
KR102011431B1 (en) 2019-08-16

Similar Documents

Publication Publication Date Title
US10701396B2 (en) Multi-viewpoint video encoding/decoding method
US20240073535A1 (en) Image data encoding/decoding method and apparatus
US11470251B2 (en) Method and apparatus for reconstructing 360-degree image according to projection format
TWI656785B (en) Video encoding method and apparatus and associated video decoding method and apparatus
US11553168B2 (en) Image data encoding/decoding method and apparatus
US10528004B2 (en) Methods and apparatus for full parallax light field display systems
TW201911863A (en) Reference map derivation and motion compensation for 360-degree video writing code
US11831916B1 (en) Method and apparatus of encoding/decoding image data based on tree structure-based block division
US10863198B2 (en) Intra-prediction method and device in image coding system for 360-degree video
US10764605B2 (en) Intra prediction for 360-degree video
TWI688256B (en) Method and apparatus for video coding of vr images with inactive areas
KR102342874B1 (en) Video decoding method and apparatus using projection type-based quantization parameters in video coding system for 360 degree video
KR102011430B1 (en) Method and apparatus for parallel processing image
KR20200062258A (en) Video decoding method and apparatus using rotation parameters in video coding system for 360-degree video
KR20180107007A (en) Method and apparatus for processing a video signal
KR20190113655A (en) Method and apparatus for processing video signal
KR20190113651A (en) Method and apparatus for processing video signal
KR20190110042A (en) Method and apparatus for processing video signal
KR20190110043A (en) Method and apparatus for processing video signal

Legal Events

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