KR20180028300A - A method for providing media bitstream of a syncronized multi view video by using spatial layout information - Google Patents
A method for providing media bitstream of a syncronized multi view video by using spatial layout information Download PDFInfo
- Publication number
- KR20180028300A KR20180028300A KR1020160115815A KR20160115815A KR20180028300A KR 20180028300 A KR20180028300 A KR 20180028300A KR 1020160115815 A KR1020160115815 A KR 1020160115815A KR 20160115815 A KR20160115815 A KR 20160115815A KR 20180028300 A KR20180028300 A KR 20180028300A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- information
- unit
- index
- bitstream
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 120
- 230000001360 synchronised effect Effects 0.000 claims abstract description 81
- 230000033001 locomotion Effects 0.000 claims description 62
- 238000012545 processing Methods 0.000 claims description 34
- 238000009877 rendering Methods 0.000 claims description 20
- 230000008859 change Effects 0.000 claims description 16
- 238000007726 management method Methods 0.000 claims description 7
- 238000013139 quantization Methods 0.000 description 82
- 230000008569 process Effects 0.000 description 40
- 239000010410 layer Substances 0.000 description 38
- 230000011664 signaling Effects 0.000 description 29
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 25
- 230000001419 dependent effect Effects 0.000 description 25
- 238000012805 post-processing Methods 0.000 description 24
- 239000011159 matrix material Substances 0.000 description 20
- 238000006243 chemical reaction Methods 0.000 description 16
- 238000001914 filtration Methods 0.000 description 16
- 230000003044 adaptive effect Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000007781 pre-processing Methods 0.000 description 13
- 238000003860 storage Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 208000031509 superficial epidermolytic ichthyosis Diseases 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 238000013507 mapping Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000033458 reproduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 208000021070 secondary pulmonary alveolar proteinosis Diseases 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H04N13/0493—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/388—Volumetric displays, i.e. systems where the image is built up from picture elements distributed through a volume
- H04N13/393—Volumetric displays, i.e. systems where the image is built up from picture elements distributed through a volume the volume being generated by a moving, e.g. vibrating or rotating, surface
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/65—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
- H04N19/68—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving the insertion of resynchronisation markers into the bitstream
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 영상의 부호화/복호화 방법 및 장치에 관한것이다. 보다 구체적으로, 본 발명은 공간적 구조 정보를 이용한 동기화된 다시점 미디어 스트림의 제공과, 시각적 복호화 방법, 부호화 방법 및 그 장치에 관한 것이다.The present invention relates to a method and apparatus for encoding / decoding an image. More particularly, the present invention relates to providing a synchronized multi-view media stream using spatial structure information, a visual decoding method, a coding method, and an apparatus therefor.
최근 디지털 영상 처리와 컴퓨터 그래픽 기술이 발전함에 따라, 현실 세계를 재현하고 이를 실감나게 경험하도록 하는 가상현실(VIRTUAL REALITY, VR) 기술에 관한 연구가 활발히 진행되고 있다.Recently, as digital image processing and computer graphics technology are developed, researches on virtual reality (VR) technology, which reproduces the real world and realizes it, is being actively studied.
특히, HMD(Head Mounted Display)와 같은 최근의 VR 시스템은, 사용자의 양안에 3차원 입체 영상을 제공할 수 있을 뿐만 아니라, 그 시점을 전방위로 트래킹할 수 있기에, 360도 회전 시청 가능한 실감나는 가상현실(VR) 영상 컨텐츠를 제공할 수 있다는 점에서 많은 관심을 받고 있다.In particular, a recent VR system such as an HMD (Head Mounted Display) not only can provide a three-dimensional stereoscopic image in both sides of a user, but also can track the viewpoint in all directions. Therefore, (VR) image contents.
그러나, 360 VR 컨텐츠는 시간 및 양안 영상이 공간적으로 복합 동기화된 동시 전방위의 다시점 영상 정보로 구성되기 때문에, 영상의 제작 및 전송에 있어서, 모든 시점의 양안 공간에 대해 동기화된 2개의 대형 영상을 부호화하여 압축 및 전달하게 된다. 이는 복잡도 및 대역폭 부담을 가중시키며, 특히 복호화 장치에서는 사용자 시점을 벗어나 실제로 시청되지 않는 영역에 대하여도 복호화가 이루어짐으로써 불필요한 프로세스가 낭비되는 문제점이 있다.However, since the 360 VR contents are composed of the multi-view image information of the simultaneous omnidirectionally synchronized spatio-temporal and binocular images, two large images synchronized with respect to the binocular space at all viewpoints in the production and transmission of the image And compresses and transmits them. This increases the complexity and the bandwidth burden. In particular, in a decoding apparatus, an area that is not actually viewed beyond a user's point of view is decoded, thus wasting an unnecessary process.
이에 따라, 영상의 전송 데이터량과 복잡도를 감소시키고, 대역폭 및 복호화 장치의 배터리 소모 측면에서도 효율적인 부호화 방법이 요구된다.Accordingly, there is a need for an efficient encoding method in terms of reducing the amount of data to be transferred and the complexity of the video and also in terms of battery consumption of the bandwidth and decoding apparatus.
본 발명은 상기와 같은 과제를 해결하기 위한 것으로, 동기화된 다시점 영상의 공간적 구조 정보를 이용하여, 360도 카메라나 VR용 영상과 같은 동기화된 다시점 영상을 효율적으로 부호화/복호화하는 방법 및 장치를 제공하는 데 그 목적이 있다.The present invention has been made to solve the above problems and it is an object of the present invention to provide a method and apparatus for efficiently encoding / decoding a synchronized multi-view image such as a 360-degree camera or a VR image using spatial structure information of synchronized multi- And the like.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 실시예에 따른 미디어 스트림 제공 장치의 동작 방법은, 동기화된 다시점 영상 비트스트림의 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 획득하는 단계; 클라이언트 시스템으로부터 시점(PERSPECTIVE) 인덱스를 포함하는 비트스트림 요청을 수신하는 단계; 및 상기 공간적 구조 정보에 기초하여, 상기 시점 인덱스에 대응되는 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 상기 클라이언트 시스템으로 전송하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of operating a media stream providing apparatus, the method comprising: acquiring SPATIAL LAYOUT INFORMATION of a synchronized multi-view video bitstream; Receiving a bitstream request including a PERSPECTIVE index from a client system; And transmitting to the client system a point-to-point media bit stream corresponding to the point-in-time index based on the spatial structure information.
또한, 상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 실시예에 따른 미디어 스트림 제공 장치는, 동기화된 다시점 영상 비트스트림의 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 획득하는 공간적 구조 정보 관리부; 및 클라이언트 시스템으로부터 시점(PERSPECTIVE) 인덱스를 포함하는 비트스트림 요청을 수신하면, 상기 공간적 구조 정보에 기초하여, 상기 시점 인덱스에 대응되는 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 상기 클라이언트 시스템으로 전송하는 비트스트림 제공부를 포함한다.In addition, as a technical means for accomplishing the above technical object, a media stream providing apparatus according to an embodiment of the present invention includes a spatial structure information managing unit for obtaining SPATAL LAYOUT INFORMATION of a synchronized multi- ; And transmitting, to the client system, a point-in-time media bit stream (PERSPECTIVE MEDIA BITSTREAM) corresponding to the point-in-time index, based on the spatial structure information, when receiving a bit stream request including a PERSPECTIVE index from the client system And a stream providing section.
그리고, 상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 실시예에 따른 미디어 스트림의 복호화 방법은, 서버로부터 동기화된 다시점 영상 비트스트림의 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 수신하는 단계; 사용자의 시점(PERSPECTIVE)에 대응되는 시점 인덱스를 획득하여 상기 서버로 전송하는 단계; 상기 서버로부터 상기 시점 인덱스에 대응되는 제1 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 수신하는 단계; 및 상기 수신된 제1 시점 미디어 비트스트림을 복호화하는 단계를 포함한다.As a technical means for accomplishing the above technical object, a method of decoding a media stream according to an embodiment of the present invention includes receiving SPATAL LAYOUT INFORMATION of a synchronized multi-view video bit stream from a server ; Acquiring a viewpoint index corresponding to a user's viewpoint (PERSPECTIVE) and transmitting the acquired viewpoint index to the server; Receiving a first point-of-view media bit stream (PERSPECTIVE MEDIA BITSTREAM) corresponding to the viewpoint index from the server; And decoding the received first view media bit stream.
한편, 상기 방법은 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.The method may be implemented by a computer-readable recording medium storing a program for execution on a computer.
본 발명의 실시 예에 따르면, 동기화된 다시점 영상으로부터 부호화 및 전송에 최적화된 공간적 구조 정보를 추출 및 시그널링하여, 영상의 전송 데이터량과 대역폭 및 복잡도를 효율적으로 감소시킬 수 있다.According to the embodiment of the present invention, the spatial data structure optimized for coding and transmission can be extracted and signaled from the synchronized multi-view image, thereby effectively reducing the transmission data amount, bandwidth, and complexity of the image.
또한, 복호화단에서는 동기화된 다시점 영상을 시점별로 수신할 수 있으며, 동기화된 다시점 영상이 수신된 경우 상기 시그널링 정보에 따라 각 시점에 대한 최적화된 복호화를 수행할 수 있게 됨으로써 시스템 낭비를 저감시킬 수 있어 복잡도 및 배터리 소모 측면에서도 효율적인 부호화/복호화 방법 및 장치를 제공할 수 있다.In addition, the decoding unit can receive the synchronized multi-view image at each viewpoint, and when the synchronized multi-view image is received, it is possible to perform optimized decoding for each view according to the signaling information, thereby reducing system waste It is possible to provide an efficient encoding / decoding method and apparatus in terms of complexity and battery consumption.
그리고, 본 발명의 실시 예에 따르면 다양한 방식의 동기화된 영상에 대한 공간적 구조 정보를 지원할 수 있도록 하여 복호화 장치 스펙에 따라 적절한 영상 재생을 가능하게 하여, 장치 호환성을 향상시킬 수 있게 된다.In addition, according to the embodiment of the present invention, it is possible to support spatial structure information on various types of synchronized images, thereby enabling proper image reproduction according to the specifications of a decoding apparatus, thereby improving device compatibility.
도 1은 본 발명의 일실시예에 따른 전체 시스템 구조를 도시한다.
도 2는 본 발명의 일 실시 예에 따른 시간 동기화된 다시점 영상 부호화 장치의 구성을 나타내는 블록도이다.
도 3 내지 도 6은 본 발명의 실시 예에 따른 동기화된 다시점 영상의 공간적 구조의 일 예를 나타내는 도면이다.
도 7 내지 도 9는 본 발명의 다양한 실시 예에 따른 공간적 구조 정보의 시그널링 방법을 설명하기 위한 도면들이다.
도 10은 본 발명의 실시 예에 따른 공간적 구조 정보의 구성을 설명하기 위한 도면이다.
도 11 내지 도 12는 본 발명의 실시 예에 따른 공간적 구조 정보의 타입 인덱스 테이블을 설명하기 위한 도면들이다.
도 13은 본 발명의 실시 예에 따른 공간적 구조 정보의 시점 정보 테이블을 설명하기 위한 도면이다.
도 14는 본 발명의 실시 예에 따른 복호화 방법을 설명하기 위한 흐름도이다.
도 15 및 도 16은 본 발명의 실시 예에 따른 공간적 구조 정보의 시그널링에 따라 복호화단에서의 스캐닝 순서가 결정되는 것을 예시한 도면들이다.
도 17은 공간적 구조 정보의 시그널링에 따라 구분되는 독립적 서브 이지와 의존적 서브 이미지를 설명하기 위한 도면이다.
도 18 내지 도 19는 공간적 구조 정보에 따라, 서브 이미지간 바운더리 영역이 독립적 서브 이미지를 참조하여 복호화되는 것을 도시한다.
도 20 내지 도 24는 본 발명의 일 실시 예에 따른 복호화 시스템 및 그 동작을 도시한 도면들이다.
도 25 내지 도 30은 본 발명의 일 실시 예에 따른 서버 시스템 및 그 동작을 도시한 도면들이다.
도 31 내지 도 32는 본 발명의 실시 예에 따른 부호화 및 복호화 처리를 설명하기 위한 도면들이다.1 shows an overall system architecture according to an embodiment of the present invention.
FIG. 2 is a block diagram of a time-synchronized multi-view image encoding apparatus according to an embodiment of the present invention. Referring to FIG.
3 to 6 are views showing an example of a spatial structure of a synchronized multi-view image according to an embodiment of the present invention.
7 to 9 are diagrams for explaining a signaling method of spatial structure information according to various embodiments of the present invention.
10 is a diagram for explaining a configuration of spatial structure information according to an embodiment of the present invention.
11 to 12 are views for explaining a type index table of spatial structure information according to an embodiment of the present invention.
13 is a view for explaining a view information table of spatial structure information according to an embodiment of the present invention.
14 is a flowchart illustrating a decoding method according to an embodiment of the present invention.
FIGS. 15 and 16 are diagrams illustrating the determination of the scanning order at the decoding end according to the signaling of the spatial structure information according to the embodiment of the present invention.
17 is a diagram for explaining independent sub-images and dependent sub-images that are classified according to signaling of spatial structure information.
FIGS. 18 to 19 show that boundary regions between sub-images are decoded by referring to independent sub-images according to spatial structure information.
20 to 24 illustrate a decoding system and its operation according to an embodiment of the present invention.
25 to 30 are views showing a server system and its operation according to an embodiment of the present invention.
31 to 32 are diagrams for explaining encoding and decoding processing according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시 예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. It should be understood, however, that the present invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In the drawings, the same reference numbers are used throughout the specification to refer to the same or like parts.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.Throughout this specification, when a part is referred to as being "connected" to another part, it is not limited to a case where it is "directly connected" but also includes the case where it is "electrically connected" do.
본원 명세서 전체에서, 어떤 부재가 다른 부재 상에 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.Throughout this specification, when a member is located on another member, this includes not only when a member is in contact with another member but also when another member is present between the two members.
본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 본원 명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본원의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본원 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.Throughout this specification, when an element is referred to as "including " an element, it is understood that the element may include other elements as well, without departing from the other elements unless specifically stated otherwise. The terms "about "," substantially ", etc. used to the extent that they are used throughout the specification are intended to be taken to mean the approximation of the manufacturing and material tolerances inherent in the stated sense, Accurate or absolute numbers are used to help prevent unauthorized exploitation by unauthorized intruders of the referenced disclosure. The word " step (or step) "or" step "used to the extent that it is used throughout the specification does not mean" step for.
본원 명세서 전체에서, 마쿠시 형식의 표현에 포함된 이들의 조합의 용어는 마쿠시 형식의 표현에 기재된 구성 요소들로 이루어진 군에서 선택되는 하나 이상의 혼합 또는 조합을 의미하는 것으로서, 상기 구성 요소들로 이루어진 군에서 선택되는 하나 이상을 포함하는 것을 의미한다.Throughout the present specification, the term of a combination of these in the expression of a mark-up form means a combination or combination of at least one selected from the group consisting of the constituents described in the expression of the mark-up form, Quot; is meant to include one or more selected from the group consisting of
본 발명의 실시 예에서, 동기화된 영상을 부호화하는 방법의 일예로, 현재까지 개발된 비디오 부호화 표준 중에서 최고의 부호화 효율을 가지는 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)에서 공동으로 표준화한 HEVC(High Efficiency Video Coding)를 이용하여 부호화를 수행할 수 있으나, 이에 한정되지는 아니한다.In an embodiment of the present invention, as an example of a method of encoding a synchronized image, standardized jointly by Moving Picture Experts Group (MPEG) and Video Coding Experts Group (VCEG) having the highest coding efficiency among the video coding standards developed so far Coding may be performed using one High Efficiency Video Coding (HEVC), but the present invention is not limited thereto.
통상, 부호화 장치는 인코딩 과정과 디코딩 과정을 포함하고, 복호화 장치는 디코딩 과정을 구비한다. 복호화 장치의 디코딩 과정은 부호화 장치의 디코딩 과정과 동일하다. 따라서, 이하에서는 부호화 장치를 위주로 설명하기로 한다.Generally, the encoding apparatus includes an encoding process and a decoding process, and the decoding apparatus has a decoding process. The decoding process of the decoding apparatus is the same as the decoding process of the encoding apparatus. Therefore, the encoding apparatus will be mainly described below.
도 1은 본 발명의 일실시예에 따른 전체 시스템 구조를 도시한다.1 shows an overall system architecture according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 전체 시스템은, 전처리 장치(10), 부호화 장치(100), 복호화 장치(200), 후처리 장치(20)를 포함한다.Referring to FIG. 1, an overall system according to an embodiment of the present invention includes a preprocessing
본 발명의 실시 예에 따른 시스템은, 복수의 시점별 영상들을 병합 또는 스티치(stitch)등의 작업을 통해 전처리하여, 동기화된 비디오 프레임을 획득하는 전처리 장치(10)와, 상기 동기화된 비디오 프레임을 부호화하여 비트스트림을 출력하는 부호화 장치(100)와, 상기 비트스트림을 전송받아 상기 동기화된 비디오 프레임을 복호화하는 복호화 장치(200) 및 상기 비디오 프레임의 후처리를 통해 각 시점별 동기화된 영상이 각각의 디스플레이로 출력되도록 하는 후처리 장치(20)를 포함하여 구성될 수 있다.The system according to an embodiment of the present invention includes a
여기서, 입력 영상은 다시점별 개별 영상을 포함할 수 있으며, 예를 들어 하나 이상의 카메라가 시간 및 공간 동기화된 상태에서 촬영되는 다양한 시점의 서브 이미지 정보를 포함할 수 있다. 이에 따라 전처리 장치(10)는 취득된 다시점 서브 이미지 정보를 시간에 따라 공간적 병합 또는 스티치 처리함으로써 동기화된 영상 정보를 획득할 수 있다.Here, the input image may include a separate individual image, for example, sub-image information at various time points, in which one or more cameras are photographed in time and space synchronized state. Accordingly, the preprocessing
그리고, 부호화 장치(100)는 상기 동기화된 영상 정보를 스캐닝 및 예측 부호화하여 비트스트림을 생성하며, 생성된 비트스트림은 복호화 장치(200)로 전송될 수 있다. 특히, 본 발명의 실시 예에 따른 부호화 장치(100)는 상기 동기화된 영상 정보로부터 공간적 구조 정보를 추출할 수 있으며, 복호화 장치(200)로 시그널링할 수 있다.The
여기서 공간적 구조 정보(spatial layout information)는 상기 전처리 장치(10)로부터 하나 이상의 서브 이미지들이 병합되어 하나의 비디오 프레임으로 구성됨에 따라, 각각의 서브 이미지들의 속성 및 배치에 대한 기본 정보를 포함할 수 있다. 또한, 각 서브 이미지들 및 서브 이미지들간 관계에 대한 부가 정보를 더 포함할 수 있으며, 이에 대하여는 후술하도록 한다.Here, the spatial layout information may include basic information about the attributes and the layout of each sub-image, as one or more sub-images are merged into one video frame from the
이에 따라, 본 발명의 실시 예에 따른 공간적 구조 정보가 복호화 장치(200)로 전달될 수 있다. 그리고, 복호화 장치(200)는 공간적 구조 정보와, 사용자 시점 정보를 참조하여 비트스트림의 복호화 대상 및 복호화 순서를 결정할 수 있으며, 이는 효율적인 복호화를 유도할 수 있다.Accordingly, the spatial structure information according to the embodiment of the present invention can be transmitted to the
그리고, 복호화된 비디오 프레임은 다시 후처리 장치(20)를 통해 각각의 디스플레이별 서브 이미지로 분리되어 HMD 와 같은 복수의 동기화된 디스플레이 시스템으로 제공되며, 이에 따라 사용자는 가상 현실과 같이 현실감있는 동기화된 다시점 영상을 제공받을 수 있게 된다.Then, the decoded video frame is divided into sub-images for each display through the
도 2는 본 발명의 일 실시 예에 따른 시간 동기화된 다시점 영상 부호화 장치의 구성을 나타내는 블록도이다.FIG. 2 is a block diagram of a time-synchronized multi-view image encoding apparatus according to an embodiment of the present invention. Referring to FIG.
도 2를 참조하면, 본 발명의 실시 예에 따른 부호화 장치(100)는 동기화된 다시점 영상 획득부(110), 공간적 구조 정보 생성부(120), 공간적 구조 정보 시그널링부(130), 영상 부호화부 및 전송 처리부(150)를 포함한다.2, an
동기화된 다시점 영상 획득부(110)는 360도 카메라와 같은 동기화된 다시점 영상 획득 수단을 이용하여 동기화된 다시점 영상을 획득한다. 동기화된 다시점 영상은 시간 및 공간 동기화된 복수의 서브 이미지를 포함할 수 있으며, 전처리 장치(10)로부터 수신되거나 별도의 외부 입력 장치로부터 수신될 수도 있다.The synchronized multi-view
그리고, 공간적 구조 정보 생성부(120)는 상기 동기화된 다시점 영상을 시간 단위의 비디오 프레임으로 분할하고, 상기 비디오 프레임에 대한 공간적 구조 정보를 추출한다. 공간적 구조 정보는 각각의 서브 이미지들의 속성 및 배치 상태에 따라 결정될 수 있으며, 전처리 장치(10)로부터 획득되는 정보에 따라 결정될 수도 있다.The spatial structure
그리고, 공간적 구조 정보 시그널링부(130)는 상기 공간적 구조 정보를 복호화 장치(200)로 시그널링하기 위한 정보 처리를 수행한다. 예를 들어, 공간적 구조 정보 시그널링부(130)는 영상 부호화부에서 부호화된 영상 데이터에 포함시키거나, 별도의 데이터 포맷을 구성하거나, 부호화된 영상의 메타데이터에 포함시키기 위한 하나 이상의 프로세스를 수행할 수 있다.The spatial structure
그리고, 영상 부호화부는 동기화된 다시점 영상을 시간 흐름에 따라 부호화한다. 또한, 영상 부호화부는 공간적 구조 정보 생성부(120)에서 생성되는 공간적 구조 정보를 참조 정보로 이용하여, 영상 스캐닝 순서 및 참조 이미지 등을 결정할 수 있다.Then, the image encoding unit encodes the synchronized multi-view image according to the time flow. In addition, the image encoding unit can use the spatial structure information generated by the spatial structure
따라서, 영상 부호화부는 전술한 바와 같이 HEVC(High Efficiency Video Coding)를 이용하여 부호화를 수행할 수 있으나, 공간적 구조 정보에 따라, 동기화된 다시점 영상에 대해 보다 효율적인 방식으로 개선될 수 있다.Accordingly, the image encoding unit can perform encoding using HEVC (High Efficiency Video Coding) as described above, but it can be improved in a more efficient manner for the synchronized multi-view image according to the spatial structure information.
그리고, 전송 처리부(150)는 부호화된 영상 데이터와, 상기 공간적 구조 정보 시그널링부(130)로부터 삽입된 공간적 구조 정보를 결합하여 복호화 장치(200)로 전송하기 위한 하나 이상의 변환 및 송신 처리를 수행할 수 있다.The
도 3 내지 도 6은 본 발명의 실시 예에 따른 동기화된 다시점 영상의 공간적 구조 및 영상 구성의 일 예를 나타내는 도면이다.3 to 6 are views showing an example of a spatial structure and an image configuration of a synchronized multi-view image according to an embodiment of the present invention.
도 3을 참조하면, 본 발명의 실시 예에 따른 다시점 영상은 시간적 동기화 및 공간적 동기화된 복수의 영상 프레임을 포함할 수 있다.Referring to FIG. 3, a multi-view image according to an exemplary embodiment of the present invention may include a plurality of temporally synchronized and spatially synchronized image frames.
각각의 프레임은 고유의 공간적 구조(Spatial layout)에 따라 동기화될 수 있으며, 동일한 시간에 표시될 하나 이상의 Scene, Perspective 또는 View 에 대응되는 서브 이미지의 레이아웃을 구성할 수 있다.Each frame can be synchronized according to its own spatial layout and can form a layout of sub-images corresponding to one or more scenes, perspectives or views to be displayed at the same time.
이에 따라, 공간적 구조 정보(Spatial layout information)는 동기화된 다시점 영상을 구성하는 각각의 서브 이미지들이 병합, 스티치(Stitch) 등을 통해 하나의 입력 영상으로 구성되거나 동시간 다시점 영상(예를 들어, 동일한 시간으로 동기화된 복수의 영상으로서, 동일한 POC 내에 대응되는 다양한 View에 대응)이 입력 영상으로 구성되는 경우에, 상기 다시점 영상 또는 서브 이미지들의 배치 정보, 캡쳐 카메라의 위치 정보 및 각도 정보, 병합 정보, 서브 이미지의 개수 정보, 스캐닝 순서 정보, 취득 시간 정보, 카메라 파라미터 정보, 서브 이미지들 간의 참조 의존성 정보 등 서브 이미지와 그 관계 정보를 포함할 수 있다.Accordingly, the spatial layout information may be configured such that each sub-image constituting the synchronized multi-view image is composed of one input image through merging, stitching or the like, Point images or sub-images, positional information and angle information of the captured camera, and position information of the captured camera when the input image is composed of a plurality of images synchronized at the same time and corresponding to various views corresponding to the same POC) Image information, merging information, number of sub images, scanning order information, acquisition time information, camera parameter information, reference dependency information between sub images, and the like.
예를 들어, 도 4에 도시된 바와 같이 다이버전트(divergent) 형태의 카메라 배열을 통해 영상 정보가 촬영될 수 있으며, 배열 영상에 대한 스티치처리(stiching)를 통해, 360도 관찰 가능한 공간영상을 구성할 수 있다.For example, as shown in FIG. 4, image information can be photographed through a divergent camera array, and a 360-degree viewable spatial image can be formed through stiching of an array image can do.
도 4에 도시된 바와 같이, 각 카메라 배열 A, B, C ... 에 대응하여 촬영된 영상 A', B', C', ...들이 1차원 또는 2차원 공간적 구조에 따라 배치될 수 있으며, 배열된 영상들간의 스티치 처리를 위한 좌우, 상하 영역 관계 정보가 공간적 구조 정보로서 예시될 수 있다.As shown in FIG. 4, the images A ', B', C ', ... photographed corresponding to the respective camera arrays A, B, C ... can be arranged in a one- And left and right and top and bottom area relationship information for stitch processing between arranged images can be exemplified as spatial structure information.
이에 따라, 공간적 구조 정보 생성부(120)는 상기와 같은 다양한 속성을 포함하는 공간적 구조 정보를 입력 영상으로부터 추출할 수 있으며, 공간적 구조 정보 시그널링부(130)는 상기 공간적 구조 정보를 후술할 최적화된 방법으로 시그널링할 수 있다.Accordingly, the spatial structure
이와 같이 생성 및 시그널링되는 공간적 구조 정보는 전술한 바와 같이 유용한 참조 정보로 활용 될 수 있다.The spatial structure information generated and signaled as described above can be utilized as useful reference information as described above.
예를 들어, 각 카메라를 통해 촬영된 컨텐트가 pre-stitched된 이미지라 하면, 인코딩 이전에 상기 각 pre-stiched 이미지들이 오버랩되어 하나의 scene을 구성하게 된다. 반면, 상기 scene은 각 view에 따라 분리될 수 있으며, 타입에 따라 각 분리되는 이미지간 상호 보상이 이루어질 수 있다.For example, if the content photographed through each camera is a pre-stitched image, each of the pre-stitched images is overlapped before encoding to form one scene. On the other hand, the scene can be divided according to each view, and mutual compensation can be performed between the separated images according to the type.
이에 따라, 다시점에서 촬영한 하나 이상의 영상을 전처리 과정에서 하나의 이미지로 병합 및 Stitching 하여 인코더의 입력으로 전달하는 Pre-stitched image의 경우, 병합 및 Stitching된 입력 영상의 장면 정보, 공간적 레이아웃 구성 정보 등은 별도의 공간적 구조 정보 시그널링을 통해 인코딩 단계 및 디코딩 단계에 전달될 수 있다.Accordingly, in the case of a pre-stitched image in which one or more images photographed at a plurality of points are merged and stitched into one image in the preprocessing process and transmitted to the input of the encoder, the scene information of the merged and stitched input image, Etc. may be transferred to the encoding step and the decoding step through separate spatial structure information signaling.
또한, 다시점에서 취득된 영상들이 시간적으로 동기화된 시점의 하나 이상의 입력 영상으로 전달되어 부호화 및 복호화 되는 Non-stitched image 영상 타입의 경우에도, 부호화 및 복호화 단계에서 상기 공간적 구조 정보에 따라 참조 및 보상될 수 있다.이를 위해, 다양한 공간적 레이아웃 정보 및 이에 대응하는 데이터 필드가 필요할 수 있다. 그리고, 데이터 필드는 입력 영상의 압축정보와 함께 부호화되거나, 별도의 메타데이터에 포함되어 전송될 수 있다.Also, even in the case of a non-stitched image image type in which the images obtained from the multi-viewpoints are transmitted to one or more input images at a time synchronized with time and are encoded and decoded, reference and compensation are performed according to the spatial structure information in the encoding and decoding step To this end, various spatial layout information and corresponding data fields may be needed. The data field may be encoded together with the compression information of the input image, or may be included in separate metadata and transmitted.
또한, 공간적 레이아웃 정보를 포함하는 데이터 필드는 영상의 후처리 장치(20) 및 디스플레이의 렌더링 프로세스에서도 활용될 수 있다.Further, the data field including the spatial layout information can be utilized in the rendering process of the image
이를 위해, 공간적 레이아웃 정보를 포함하는 데이터 필드는 각 카메라로부터의 영상 취득 당시 획득된 위치 좌표 정보 및 색차 정보를 포함할 수 있다.To this end, the data field including the spatial layout information may include position coordinate information and chrominance information obtained at the time of capturing an image from each camera.
예를 들어, 각 카메라로부터 영상 정보의 취득 당시 획득한 영상의 3차원 좌표 정보 및 색차 정보 (X, Y, Z), (R, G, B)등의 정보가 각각의 서브 이미지들에 대한 부가 정보로 획득 및 전달 될 수 있으며, 이러한 정보는 복호화를 수행한 이후, 영상의 후처리 및 렌더링 과정에서 활용될 수 있다.For example, when three-dimensional coordinate information and chrominance information (X, Y, Z), (R, G, B) of an image acquired at the time of acquiring image information from each camera are added to each sub- Information, and this information can be utilized in the post-processing and rendering process of the image after performing decoding.
또한, 공간적 레이아웃 정보를 포함하는 데이터 필드는 각 카메라의 카메라 정보를 포함할 수 있다.Further, the data field including the spatial layout information may include camera information of each camera.
도 5 내지 도 6에 도시된 바와 같이, 3차원 공간을 촬영하여 공간 영상을 제공하는 하나 이상의 카메라가 배치될 수 있다.As shown in FIGS. 5 to 6, one or more cameras for photographing a three-dimensional space and providing a spatial image may be disposed.
예를 들어, 도 5에 도시된 바와 같이, 영상 획득시 3차원 공간 안에서의 한 지점에서 주변의 사물들을 취득하는 형태로 하나 이상의 카메라의 위치가 중앙 위치에 고정되고 각각의 방향이 설정될 수 있다.For example, as shown in Fig. 5, the position of one or more cameras may be fixed at a central position and each direction may be set in such a manner as to acquire surrounding objects at one point in a three-dimensional space at the time of image acquisition .
또한, 도 6에 도시된 바와 같이, 하나 이상의 카메라는 하나의 오브젝트를 다양한 각도에서 촬영하는 형태로 배치될 수 있다. 이 때, 영상 획득 당시의 좌표 정보(X, Y, Z)와 거리 정보 등을 기반으로 3차원 영상을 재생할 VR 디스플레이 디바이스에서는 사용자의 움직임 정보(Up/Down, Left/Right, Zoom in/Zoom Out) 등을 분석하고, 이에 대응되는 영상의 일부분을 복호화 하거나 후처리하여 사용자가 원하는 시점 또는 부분 영상을 복원할 수 있게 된다.한편, 전술한 바와 같이, VR 영상으로 예시되는 동기화된 다시점 영상의 압축, 전송, 재생 등의 시스템에 있어서, 영상의 타입이나 특성, 복호화 장치의 특성 등에 따라 별도의 영상 변환 툴 모듈 등이 필요한 부분에 추가될 수 있다.Further, as shown in FIG. 6, one or more cameras may be arranged in such a manner as to photograph one object at various angles. At this time, in the VR display device that reproduces the 3D image based on the coordinate information (X, Y, Z) and the distance information at the time of image acquisition, the user's motion information (Up / Down, Left / Right, Zoom in / Zoom Out ), And the like, and decodes or post-processes a part of the corresponding image, thereby enabling a user to restore a desired point-in-time or partial image. As described above, the synchronized multi- In a system such as compression, transmission, reproduction, etc., a separate image conversion tool module or the like may be added to a portion required depending on the type and characteristics of an image, characteristics of a decoding apparatus, and the like.
예를 들어, 영상 부호화부(140)는 카메라로부터 취득된 영상이 Equirectangular 타입일 때, 영상의 압축 성능 및 부호화 효율 등에 따라 변환 툴 모듈을 통해 Icosahedron/Cube Map 등과 같은 방식의 영상 타입으로 변환하고, 이를 통한 부호화를 수행할 수 있다. 이때의 변환 툴 모듈은 전처리 장치(10) 및 후처리 장치(20)에서도 활용될 수 있으며, 변환에 따른 변환 정보가 상기 공간적 구조 정보등에 포함되어 메타데이터 형식으로 복호화 장치(200) 또는 후처리 장치(20)나 VR 디스플레이 장치로 전달될 수 있다.For example, when the image obtained from the camera is Equirectangular type, the
한편, 본 발명의 실시 예에 따른 동기화된 다시점 영상을 전달하기 위해, 부호화 장치(100) 및 복호화 장치(200)간 스케일가능성(Scalability)을 지원하기 위한 별도 VR 영상 압축방식이 필요할 수 있다.Meanwhile, in order to transfer the synchronized multi-view image according to the embodiment of the present invention, a separate VR image compression scheme for supporting the scalability between the
이에 따라, 부호화 장치(100)는 VR 영상을 스케일 가능하게 압축하기 위해, 기본 계층과 향상 계층을 구분하는 방식으로 영상을 압축 부호화 할 수 있다.Accordingly, in order to compress the VR image in a scalable manner, the
이러한 방법으로는 한 장의 입력 영상이 다양한 카메라를 통해 취득된 고해상도 VR 영상을 압축 함에 있어, 기본 계층에서는 원본 영상에 대한 압축을 수행하고, 향상 계층에서는 한 장의 픽쳐를 Slice / Tile 등과 같이 영역을 분할하여 각 서브 이미지별로 부호화를 수행할 수 있다.In this method, in compressing a high-resolution VR image obtained by a single input image from various cameras, the base layer compresses the original image, and in the enhancement layer, a single picture is divided into regions such as Slice / Tile Thereby performing encoding for each sub-image.
이 때, 부호화 장치(100)는 기본 계층의 복원 영상을 참조 영상으로 활용하여 부호화 효율을 높이는 계층간 예측 기법 (Inter layer prediction)을 통해 압축 부호화를 처리할 수 있다.At this time, the
한편, 복호화 장치(200)에서는 기본 계층을 복호화 하면서, 사용자의 움직임 등에 따라 특정 영상을 빠르게 복호화해야 할 때, 향상 계층의 일부 영역을 복호화 하여, 사용자 움직임에 따른 일부 영상 복호화를 빠르게 수행할 수 있다.On the other hand, when the base layer is decoded and the specific image is to be decoded rapidly according to the motion of the user, the
이와 같이 스케일 가능한(Scalability) 압축 방식에 있어, 부호화 장치(100)는 기본 계층을 부호화하되, 기본 계층에서는 원본 영상을 임의의 비율로 스케일 다운(Scale down) 또는 다운 샘플링(Down sampling)등을 수행하여 압축할 수 있다. 이때 향상 계층에서는 기본 계층의 복원 영상에 대한 스케일 업(Scale Up) 또는 업 샘플링(Up sampling) 등을 통해 동일한 해상도로 영상의 사이즈를 조절하고, 이에 대응되는 기본 계층의 복원 영상을 참조 픽쳐로 활용함으로써 부/복호화를 수행할 수 있다.In the scalable compression method, the
이러한 스케일가능성(Scalability)을 지원하는 처리 구조에 따라, 복호화 장치(200)는 낮은 비트 또는 저해상도로 압축된 기본 계층의 전체 비트스트림을 복호화 하고, 사용자의 움직임에 따라 전체 비트스트림 중 일부 영상만을 향상 계층으로 복호화 할 수 있다. 또한, 전체 영상에 대한 복호화를 전부 수행하지는 않기 때문에 낮은 복잡도만으로도 VR 영상을 복원할 수 있게 된다.According to the processing structure supporting such scalability, the
또한, 해상도가 다른 별도의 스케일가능성(Scalability)을 지원하는 영상 압축 방식에 따라, 부호화 장치(100)는 기본 계층에서 원본 영상 또는 영상 제작자의 의도에 따른 영상에 대한 압축을 수행할 수 있으며, 향상 계층에서 기본 계층의 복원 영상을 참조하여 부호화를 수행하는 계층간 예측 방식을 기반으로 부호화를 수행할 수 있다.In addition, according to an image compression method that supports a separate scalability with different resolutions, the
이 때, 향상 계층의 입력 영상은 한 장의 입력 영상을 영상 분할 방법을 통해 분할하여 복수 개의 영역으로 부호화한 영상일 수 있다. 하나의 분할된 영역은 최대 하나의 서브 이미지를 포함할 수 있으며, 복수개의 분할 영역이 하나의 서브 이미지로 구성될 수 있다. 이러한 분할 방법을 통해 부호화 된 압축 비트스트림은 서비스 및 어플리케이션 단계에서 2개 이상의 출력을 처리할 수 있게 된다. 예를 들어, 서비스에서는 기본 계층에 대한 복호화를 통해 전체 영상을 복원 및 출력을 수행하고, 향상 계층에서는 서비스 또는 어플리케이션을 통한 사용자의 움직임, 시점 변화 및 조작 등을 반영하여 일부 영역 및 일부 서브 이미지만을 복호화 할 수 있다.In this case, the input image of the enhancement layer may be an image obtained by dividing a single input image by an image segmentation method and encoding the input image into a plurality of regions. One divided area may include at most one subimage, and a plurality of divided areas may be composed of one subimage. The compressed bitstream encoded through this division method can process two or more outputs in the service and application stages. For example, in the service, the entire image is restored and output through decryption of the base layer. In the enhancement layer, only a part of the sub-image and a sub-image It can be decoded.
도 7 내지 도 9는 본 발명의 다양한 실시 예에 따른 공간적 구조 정보의 시그널링 방법을 설명하기 위한 도면들이다.7 to 9 are diagrams for explaining a signaling method of spatial structure information according to various embodiments of the present invention.
도 7 내지 도 9에 도시된 바와 같이, 공간적 구조 정보는 일반적 영상 부호화에 있어서, 부호화 파라미터로 정의되는 SPS(SEQUENCE PARAMETER SET) 또는 VPS(VIDEO PARAMETER SET)과 같은 HLS상에 NAL(NETWORK ABSTRACTION LAYER) UNIT 형식의 하나의 클래스 타입으로 시그널링 될 수 있다.As shown in FIGS. 7 to 9, the spatial structure information includes a NAL (NETWORK ABSTRACTION LAYER) on HLS such as a SPS (Sequence Parameter Set) or VPS (VIDEO PARAMETER SET) It can be signaled as one class type of UNIT type.
먼저, 도 7은 본 발명의 실시 예에 따른 동기화된 영상 부호화 플래그가 삽입되는 NAL UNIT 타입을 도시한 것으로, 예를 들어, VPS(VIDEO PARAMETER SET) 등에 본 발명의 실시 예에 따른 동기화된 영상 부호화 플래그가 삽입될 수 있다.FIG. 7 illustrates a NAL UNIT type in which a synchronized image encoding flag is inserted according to an embodiment of the present invention. For example, in FIG. 7, a synchronized image encoding method according to an embodiment of the present invention, such as a VIDEO PARAMETER SET A flag can be inserted.
이에 따라, 도 8은 본 발명의 실시 예에 따른 공간적 구조 정보 플래그를 VPS(VIDEO PARAMETER SET)에 삽입하는 실시 예를 도시한 것이다.Accordingly, FIG. 8 illustrates an embodiment of inserting a spatial structure information flag into a VPS (VIDEO PARAMETER SET) according to an embodiment of the present invention.
도 8에 도시된 바와 같이, 본 발명의 실시 예에 따른 공간적 구조 정보 시그널링부(130)는, VPS 상에 별도의 입력 영상의 종류 확인을 위한 플래그를 삽입할 수 있다. 부호화 장치(100)는 공간적 구조 정보 시그널링부(130)를 통해, vps_other_type_coding_flag를 이용하여 VR 콘텐츠와 같은 동기화된 다시점 영상 부호화가 수행되고, 공간적 구조 정보가 시그널링됨을 나타내는 플래그를 삽입할 수 있다.As shown in FIG. 8, the spatial structure
또한, 도 9에 도시된 바와 같이 본 발명의 실시 예에 따른 공간적 구조 정보 시그널링부(130)는 SPS(SEQUENCE PARAMETER SET) 상에 다시점 동기화된 영상 부호화된 영상임을 시그널링할 수 있다.In addition, as shown in FIG. 9, the spatial structure
예를 들어, 도 9에 도시된 바와 같이 공간적 구조 정보 시그널링부(130)는 입력 영상의 타입(INPUT_IMAGE_TYPE)을 삽입함으로써, 동기화된 다시점 영상의 인덱스 정보가 SPS에 포함되어 전송될 수 있다.For example, as shown in FIG. 9, the spatial structure
여기서, SPS상 INPUT_IMAGE_TYPE_INDEX가 -1이 아닌 경우, 또는 INDEX 값이 -1인 경우, 또는 그 값이 0으로 지정되어 의미적으로 -1에 대응될 경우 INPUT_IMAGE_TYPE이 본 발명의 실시 예에 따른 동기화된 다시점 영상임을 나타낼 수 있다.Here, if the INPUT_IMAGE_TYPE_INDEX on the SPS is not -1, or the INDEX value is -1, or if its value is designated as 0 and corresponds semantically to -1, then INPUT_IMAGE_TYPE is set to be synchronized again according to the embodiment of the present invention Point image.
또한, 공간적 구조 정보 시그널링부(130)는 입력 영상의 타입이 동기화된 다시점 영상인 경우, 그 시점 정보(PERSPECTIVE INFORMATION)을 SPS에 포함시켜 시그널링함으로써, 동기화된 다시점 영상의 공간적 구조 정보의 일부를 SPS에 삽입하여 전송할 수도 있다. 시점 정보는 2D 영상의 3D 렌더링 프로세싱 과정에 따라 각 시간대별 이미지 레이아웃이 시그널링되는 정보로서, 상단, 하단, 측면 등의 순서 정보가 포함 될 수 있다.In addition, when the type of the input image is a synchronized multi-view image, the spatial structure
이에 따라, 복호화 장치(200)는 VPS 또는 SPS의 상기 플래그를 복호화 하여 해당 영상이 본 발명의 실시 예에 따른 공간적 구조 정보를 이용한 부호화를 수행했는지를 식별할 수 있다. 예를 들어, 도 5의 VPS의 경우에는 VPS_OTHER_TYPE_CODING_FLAG를 추출하여 해당 영상이 공간적 구조 정보를 이용하여 부호화된 동기화 다시점 영상인지 여부를 확인할 수 있다.Accordingly, the
또한 도 9의 SPS의 경우에는 PERSPECTIVE_INFORMATION_INDEX 정보를 복호화함으로써, 레이아웃과 같은 실제적인 공간적 구조정보를 식별할 수 있다.In the SPS of FIG. 9, the PERSPECTIVE_INFORMATION_INDEX information is decoded to identify actual spatial structure information such as layout.
이 때, 공간적 구조 정보는 파라미터의 형식으로 구성될 수 있으며, 예를 들어, 공간적 구조 파라미터 정보는 SPS, VPS 등의 HLS 상에 서로 다르게 포함되거나, 별도의 함수와 같은 형태로 Syntax가 구성되거나, SEI 메시지로 정의될 수 있다.In this case, the spatial structure information may be configured in the form of a parameter. For example, the spatial structure parameter information may be differently included in the HLS such as SPS, VPS, or the syntax may be configured as a separate function, SEI message.
또한, 일 실시 예에 따르면, 공간적 구조 정보는 PPS(PICTURE PARAMETER SET)에 포함되어 전송될 수 있다. 이 경우, 각 서브 이미지별 속성 정보가 포함될 수 있다. 예를 들어, 서브 이미지의 독립성이 시그널링될 수 있다. 독립성은 해당 영상이 다른 영상을 참조하지 않고 부호화 및 복호화될 수 있음을 나타낼 수 있으며, 동기화된 다시점 영상의 서브 이미지들은 독립적(INDEPENDENT) 서브 이미지와 의존적(DEPENDENT) 서브 이미지를 포함할 수 있다. 의존적 서브 이미지는 독립적 서브 이미지를 참조하여 복호화될 수 있다. 공간적 구조 정보 시그널링부(130)는 PPS 상에 독립적 서브 이미지를 리스트(Independent sub image list) 형태로 시그널링할 수 있다.Also, according to one embodiment, spatial structure information may be included in a PICTURE PARAMETER SET (PPS) and transmitted. In this case, attribute information for each sub-image may be included. For example, the independence of sub-images can be signaled. Independence may indicate that the image can be encoded and decoded without reference to another image, and the sub-images of the synchronized multi-view image may include an INDEPENDENT sub-image and a DEPENDENT sub-image. The dependent sub-images can be decoded with reference to the independent sub-images. The spatial structure
또한, 상기한 공간적 구조 정보는 SEI 메시지로 정의되어 시그널링될 수 있다. 도 10은 공간적 구조 정보로서 SEI 메시지를 예시한 것으로, Spatial layout information 디스크립터를 이용하여 파라미터화된 공간적 구조 정보가 삽입될 수 있다.In addition, the spatial structure information may be defined and signaled as an SEI message. FIG. 10 illustrates an SEI message as spatial structure information, and parameterized spatial structure information can be inserted using a spatial layout information descriptor.
도 10에 도시된 바와 같이, 공간적 구조 정보는 입력 영상의 공간적 레이아웃(Spatial layout)을 나타낼 수 있는 타입 인덱스 정보(INPUT IMAGE TYPE INDEX), 시점 정보(PERSPECTIVE INFORMATION), 카메라 파라미터 정보(CAMERA PARAMETER), 장면 앵글 정보(SCEN ANGLE), 장면 다이나믹 레인지 정보(SCENE DYNAMIC RANGE), 독립적 서브 이미지 정보(INDEPENDENT SUB IMAGE), 장면 시간 정보(SCENE TIME INFORMATION)중 적어도 하나를 포함할 수 있으며, 이 외의 다시점 동기화된 영상을 효율적으로 부호화하는데 필요한 다양한 정보가 더 추가될 수 있다. 이와 같은 파라미터들은 하나의 디스크립터 형태의 SEI 메시지 형식으로 정의될 수 있으며, 복호화 장치(200)는 이를 파싱하여 복호화, 후처리 및 렌더링 단계에서 상기 공간적 구조 정보를 효율적으로 활용할 수 있다.As shown in FIG. 10, the spatial structure information includes type index information (INPUT IMAGE TYPE INDEX), PERSPECTIVE INFORMATION, camera parameter information (CAMERA PARAMETER), and the like which can represent a spatial layout of an input image. May include at least one of scene angle information (SCEN ANGLE), scene dynamic range information (SCENE DYNAMIC RANGE), independent sub image information (INDEPENDENT SUB IMAGE), and scene time information (SCENE TIME INFORMATION) A variety of information necessary for efficient coding of an image can be further added. Such parameters may be defined as one descriptor type SEI message format, and the
그리고, 상기한 바와 같이 공간적 구조 정보는 SEI 또는 메타데이터의 형식으로 복호화 장치(200)로 전달될수 있다.As described above, the spatial structure information may be transmitted to the
또한, 예를 들어, 공간적 구조 정보는 부호화 단계에서 configuration 과 같은 선택 옵션에 의해 시그널링될 수 있다.Also, for example, the spatial structure information may be signaled by a selection option such as configuration in the encoding step.
제1 옵션으로서, 공간적 구조 정보는 신택스상의 부호화 효율에 따라 HLS 상의 VPS / SPS / PPS 또는 Coding unit 신택스에 포함될 수 있다.As a first option, the spatial structure information may be included in the VPS / SPS / PPS or Coding unit syntax on the HLS according to the coding efficiency on the syntax.
제2 옵션으로서, 공간적 구조 정보는 신택스상 SEI 형태의 메타 데이터로 한번에 시그널링될 수 있다.As a second option, the spatial structure information can be signaled at once into metadata in the form of SEIs in syntax.
이하에서는 도 11 내지 도 19를 참조하여, 본 발명의 일 실시 예에 따른 동기화된 다시점 영상 포맷에 따른 효율적인 비디오 부호화 및 복호화 방법에 대하여 보다 구체적으로 설명하도록 한다.Hereinafter, with reference to FIG. 11 to FIG. 19, an efficient video encoding and decoding method according to the synchronized multi-view image format according to an embodiment of the present invention will be described in more detail.
전술한 바와 같이 전처리 단계에서 생성되는 복수의 시점별 영상이 하나의 입력 영상으로 합성되어 부호화될 수 있다. 이 경우, 하나의 입력 영상은 복수의 서브 이미지를 포함할 수 있다. 각각의 서브 이미지들은 동일한 시간시점에 동기화될 수 있으며, 각각 서로 다른 뷰, 시각적 시점(PERSPECTIVE) 또는 장면에 대응될 수 있다. 이는 기존과 같은 별도의 깊이 정보를 이용하지 않고도 동일한 POC(PICTURE ORDER COUNT)에 다양한 VIEW를 지원하게 되는 효과를 가지며, 각 서브 이미지간 중복되는 영역은 바운더리(BOUNDARY) 영역으로 제한되게 된다.As described above, a plurality of view-by-view images generated in the preprocessing step may be synthesized into one input image and then encoded. In this case, one input image may include a plurality of sub images. Each subimage may be synchronized at the same time instant and may correspond to a different view, a visual point of view (PERSPECTIVE), or a scene, respectively. This has the effect of supporting various views in the same POC (PICTURE ORDER COUNT) without using the existing depth information, and the overlapping area between each sub-image is limited to the boundary area.
특히, 입력 영상의 공간적 구조 정보는 전술한 바와 같은 형태로 시그널링될 수 있으며, 부호화 장치(100) 및 복호화 장치(200)는 공간적 구조 정보를 파싱하여 효율적인 부호화 및 복호화를 수행하는데 이용할 수 있다. 즉, 부호화 장치(100)는 인코딩 단계에서 상기 공간적 구조 정보를 이용한 다시점 영상 부호화를 처리할 수 있으며, 복호화 장치(200)는 복호화, 전처리 및 렌더링 단계에서 상기 공간적 구조 정보를 이용한 복호화를 처리할 수 있다.In particular, the spatial structure information of the input image may be signaled as described above, and the
도 11 내지 도 12는 본 발명의 실시 예에 따른 공간적 구조 정보의 타입 인덱스 테이블을 설명하기 위한 도면들이다.11 to 12 are views for explaining a type index table of spatial structure information according to an embodiment of the present invention.
전술한 바와 같이 입력 영상의 서브 이미지들은 다양한 방식으로 배치될 수 있다. 이에 따라, 공간적 구조 정보는 배치 정보를 시그널링하기 위한 테이블 인덱스를 별도 포함할 수 있다. 예를 들어, 도 8에 도시된 바와 같이 동기화된 다시점 영상은 CUBIC LAYOUT 4 X 3, CUBIC LAYOUT 3 X 2, ICOSAHEDRON, EQUIRECTANGULAR 등의 레이아웃이 예시될 수 있으며, 공간적 구조 정보에는 각각의 레이아웃에 대응되는 도 9에 도시된 테이블 인덱스가 삽입될 수 있다.As described above, the sub images of the input image can be arranged in various ways. Accordingly, the spatial structure information may separately include a table index for signaling the placement information. For example, as shown in FIG. 8, the synchronized multi-view image may include layouts such as CUBIC LAYOUT 4
다만, 도 12에 도시된 테이블은 입력 영상에 따라 임의적으로 배치된 것으로, 부호화 효율 및 시장의 컨텐츠 분포 등에 따라 변경될 수 있다.However, the table shown in FIG. 12 is arbitrarily arranged according to the input image, and can be changed according to the coding efficiency, the content distribution of the market, and the like.
이에 따라, 복호화 장치(200)는 별도 시그널링되는 테이블 인덱스를 파싱하여, 복호화 처리에 이용할 수 있다.Accordingly, the
특히, 본 발명의 실시 예에서 상기 각 레이아웃 정보는 영상의 일부 복호화에 유용하게 이용될 수 있다. 즉 CUBIC LAYOUT과 같은 서브 이미지 배치 정보는 독립적 서브 이미지와 의존적 서브 이미지를 구분하는데 이용 수 있으며 이에 따라 효율적인 부호화 및 복호화 스캐닝 순서를 결정하거나, 특정 시점에 대한 일부 복호화를 수행하는데 이용될 수도 있다.Particularly, in the embodiment of the present invention, each of the layout information can be usefully used for partial decoding of an image. That is, sub-image layout information such as CUBIC LAYOUT can be used to distinguish between independent sub-images and dependent sub-images, thereby determining an efficient encoding and decoding scanning sequence or performing partial decoding for a specific time.
도 13은 본 발명의 실시 예에 따른 복호화 방법을 설명하기 위한 흐름도이다.13 is a flowchart illustrating a decoding method according to an embodiment of the present invention.
도 13을 참조하면, 먼저 복호화 장치(200)는 영상 비트스트림을 수신한다(S101).Referring to FIG. 13, the
그리고, 복호화 장치(200)는 영상이 동기화된 다시점 영상인지를 확인한다(S103).Then, the
여기서, 복호화 장치(200)는 영상 비트스트림으로부터 공간적 구조 정보 시그널링부(130)로부터 시그널링되는 플래그로부터 동기화된 다시점 영상인지를 식별할 수 있다. 예를 들어, 복호화 장치(200)는 전술한 바와 같은 VPS, SPS 등으로부터 영상이 동기화된 다시점 영상인지를 미리 식별할 수 있다.Here, the
만약 동기화된 다시점 영상이 아닌 경우에는 일반적인 전체 영상 복호화를 수행한다(S113).If it is not a synchronized multi-view image, general full image decoding is performed (S113).
그리고, 복호화 장치(200)는 동기화된 다시점 영상인 경우, 공간적 구조 정보로부터 테이블 인덱스를 복호화한다(S105).If the decoded image is a synchronized multi-view image, the
여기서, 복호화 장치(200)는 테이블 인덱스로부터 EQUIRECTANGULAR 영상인지 여부를 식별할 수 있다(S107).Here, the
이는 동기화된 다시점 영상 중 EQUIRECTANGULAR 영상의 경우에는 별도의 서브 이미지로 구분되지 않을 수 있기 때문이며, 복호화 장치(200)는 EQUIRECTANGULAR 영상에 대하여는 전체 영상의 복호화를 수행하게 된다(S113).This is because, among the synchronized multi-view images, the EQUIRECTANGULAR image may not be classified as a separate sub-image, and the
EQUIRECTANGULAR 영상이 아닌 경우, 복호화 장치(200)는 나머지 전체 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 복호화하며(S109), 상기 공간적 구조정보에 기초한 영상 복호화 처리를 수행한다(S111).If the image is not an EQUIRECTANGULAR image, the
도 14는 본 발명의 실시 예에 따른 공간적 구조 정보의 시점 정보 테이블을 설명하기 위한 도면이다.14 is a view for explaining a view information table of spatial structure information according to an embodiment of the present invention.
본 발명의 실시 예에 따른 공간적 구조 정보는 시점 정보(PERSPECTIVE INFORMATION)을 위한 테이블을 포함할 수 있다.The spatial structure information according to an embodiment of the present invention may include a table for PERSPECTIVE INFORMATION.
부호화 장치(100) 및 복호화 장치(200)는 영상 간 참조, 부호화, 복호화 순서 및 독립적 서브 이미지를 구분하기 위한 정보로서, 상기 시점 정보 테이블을 이용할 수 있다.The
또한, 다시점 디스플레이 장치에서의 렌더링시, 시점 정보 테이블은 복호화된 영상과 함께 장치의 시스템 레이어로 전달될 수 있으며, 해당 정보를 이용하여 사용자는 컨텐츠 제공자(contents provider)의 의도에 따른 위상에 맞추어 영상을 시청할 수 있게 된다.Also, at the time of rendering in the multi-view display device, the view information table may be transmitted to the system layer of the device together with the decoded image, and the user may use the information to adjust the phase according to the intention of the contents provider So that the user can view the image.
보다 구체적으로, 공간적 구조 정보 시그널링부(130)는 각 서브 이미지의 시점(PERSPECTIVE)을 시그널링할 수 있다. 특히, 공간적 구조 정보 시그널링부(130)는 영상의 타입에 따라 Top, Bottom 및 전방 영상에 대한 정보만을 Signaling 하고, 나머지 측면들에 대한 영상의 정보는 복호화 장치(200)에서 Top Scene, 전방 Perspective Scene, Bottom Scene 정보를 이용하여 유도하게 할 수 있다. 따라서, 최소한의 정보만이 시그널링될 수 있게 된다.More specifically, the spatial structure
도 15 및 도 16은 본 발명의 실시 예에 따른 공간적 구조 정보의 시그널링에 따라 복호화단에서의 스캐닝 순서가 결정되는 것을 예시한 도면들이다.FIGS. 15 and 16 are diagrams illustrating the determination of the scanning order at the decoding end according to the signaling of the spatial structure information according to the embodiment of the present invention.
도 15 및 도 16에 도시된 바와 같이, 공간적 구조 정보의 타입 인덱스에 따라, 서브 이미지들의 Scanning 순서가 함께 전송될 수 있으며, 전송되는 스캐닝 순서 정보를 통해 효과적인 복호화 및 렌더링이 수행될 수 있다.As shown in FIGS. 15 and 16, according to the type index of the spatial structure information, the scanning order of sub images can be transmitted together, and efficient decoding and rendering can be performed through the transmitted scanning order information.
도 15 및 도 16에서는 원본 영상이 A->B->C->D->E->F 순서로 스캐닝이 수행되는 것을 도시하고 있다.15 and 16 show that the original image is scanned in the order of A-> B-> C-> D-> E-> F.
이에 대한 시그널링를 위해, 공간적 구조 정보 시그널링부(130)는 Scanning 순서 중 Top view, Bottom view, 전방 View와 같은 일부 서브 이미지에 대한 순서 정보만을 시그널링할 수 있다. 복호화 장치(200)는 상기 일부 서브 이미지의 순서 정보를 이용하여 전체 순서를 유도할 수 있다.For signaling, the spatial structure
또한, 전송되는 영상의 종류 및 병렬성 및 참조 구조에 따라 도 15 또는 도 16과 같이 Scanning 순서가 변할 수 있다. In addition, the scanning order may be changed as shown in FIG. 15 or FIG. 16 according to the type, parallelism, and reference structure of the transmitted image.
Top을 A, Bottom을 F, Front을 B라고 하면, 도 15의 스캐닝 순서는 A -> F -> B -> C -> D -> E 일 수 있으며, 도 16의 스캐닝 순서는 A->B->C->D->E->F일 수 있다. 이는 부호화 효율을 고려하여 스캐닝 순서를 상이하게 결정하는 경우에 유용하게 이용될 수 있다.The scanning order of FIG. 15 may be A-> F-> B-> C-> D-> E, and the scanning order of FIG. 16 is A-> B -> C-> D-> E-> F. This can be useful when determining the scanning order differently considering the coding efficiency.
도 17은 공간적 구조 정보의 시그널링에 따라 구분되는 독립적 서브 이미지와 의존적 서브 이미지를 설명하기 위한 도면이다.17 is a diagram for explaining independent sub images and dependent sub images that are classified according to signaling of spatial structure information.
도 17에 도시된 바와 같이, 공간적 구조에 배치되는 각 서브 이미지들은 참조성 및 병렬성을 고려하여, 의존적 서브 이미지(Dependent sub image)와 독립적 서브 이미지(Independent sub image)로 구분될 수 있다. 독립적 서브 이미지는 다른 서브 이미지를 참조하지 않고 복호화 되는 특성을 가지며, 의존적 서브 이미지는 인접한 독립적 서브 이미지 또는 인접한 의존적 서브 이미지를 참조하여 복원할 수 있다.As shown in FIG. 17, each sub-image arranged in the spatial structure can be divided into a dependent sub-image and an independent sub-image in consideration of referenceability and parallelism. Independent sub-images have the property of being decoded without referring to other sub-images, and dependent sub-images can be restored by referring to adjacent independent sub-images or adjacent dependent sub-images.
따라서, 독립적 서브 이미지는 의존적 서브 이미지보다 먼저 부호화 또는 복호화 되어야 하는 특성을 가질 수 있다.Thus, independent sub-images may have characteristics that must be encoded or decoded prior to the dependent sub-images.
일 실시 예에서, 독립적 서브 이미지는 시간축에서 동일하지 않은 기 부호화 또는 복호화된 독립적 서브 이미지를 참조하여 부호화 또는 복호화될 수 있으며, 의존적 서브 이미지는 시간축에서 동일하거나 동일하지 않은 독립적 서브 이미지를 참조하여 부호화 또는 복호화될 수 있다. 또한, 독립적인지 여부는 공간적 구조 정보에 따라 별도 인덱스로 시그널링될 수 있다. In one embodiment, the independent sub-images can be encoded or decoded with reference to the same encoded or decoded independent sub-images on the time axis, and the dependent sub-images can be encoded or decoded with reference to independent sub- Or decoded. Also, whether or not it is independent can be signaled as a separate index according to the spatial structure information.
도 18 내지 도 19는 공간적 구조 정보에 따라, 서브 이미지간 바운더리 영역이 독립적 서브 이미지를 참조하여 복호화되는 것을 도시한다.FIGS. 18 to 19 show that boundary regions between sub-images are decoded by referring to independent sub-images according to spatial structure information.
전술한 바와 같이, 부호화 장치(100) 또는 복호화 장치(200)는 스캐닝 순서와, 서브 이미지의 의존성(Dependency) 정보를 동시에 고려하여 부호화 및 복호화를 처리할 수 있다.As described above, the
만약 도 18에 도시된 바와 같이, A와 F가 독립적 서브 이미지일 경우, 스캐닝 순서는 A -> F -> B -> C -> D -> E 와 같이 전송 또는 유도 될 수 있으며, 이러한 경우에 A, F는 다른 의존적 서브 이미지 대비 우선 복호화가 수행되어야 한다. 그리고 나머지 B, C, D, E 가 복호화 될 때 각 서브 이미지의 인접한 바운더리 영역은 독립적 서브 이미지를 참조하여 복호화 할 수 있다. 이에 따라, 기 복호화된 독립적 서브 이미지 또는 기 복호화된 의존적 서브 이미지의 바운더리 영역이 나머지 서브 이미지의 복호화에 참조될 수 있다.If A and F are independent sub-images as shown in FIG. 18, the scanning order can be transmitted or derived as A -> F -> B -> C -> D -> E, A and F should be preferentially decoded relative to other dependent subimages. When the remaining B, C, D, and E are decoded, neighboring boundary regions of each sub-image can be decoded by referring to independent sub-images. Thus, the boundary region of the previously decoded independent sub-image or the previously decoded dependent sub-image may be referred to in decoding the remaining sub-images.
또한, 전술한 독립적 서브 이미지는 하나의 영상 프레임뿐만 아니라, 인접한 Picture의 Boundary 영역에서의 인트라/인터 부호화 및 복호화 수행에도 이용될 수 있다.In addition, the above-described independent sub-images can be used not only for one image frame but also for performing intra / inter coding and decoding in a boundary region of an adjacent picture.
다만, 도 19에 도시된 바와 같이, 서로 다른 해상도로 인해 1:1 매핑이 되지 않을 경우가 있을 수 있다.(일반적인 영상의 경우, Width 의 비율이 Height보다 더 넓다)However, as shown in FIG. 19, 1: 1 mapping may not be performed due to different resolutions (in the case of general image, the ratio of the width is wider than the height).
이 경우, 해당 인접 면을 참조하기 위하여, 대상 서브 이미지에 대해 로테이션 및 업 샘플링(Up sampling) 과 같은 영상 처리 기법을 통하여 해상도에 따른 스케일(Scale)을 조절하여 바운더리 영역의 부호화 또는 복호화에 참조할 수 있다.In this case, in order to refer to the adjacent surface, a scale corresponding to the resolution is adjusted through the image processing technique such as rotation and up sampling for the target subimage to refer to coding or decoding of the boundary region .
예를 들어, 도 19에서의 C의 상단 영역 바운더리의 부호화/복호화에 있어서, A의 측면 값을 참조할 수 있다. 이를 위해, 부호화 장치(100) 또는 복호화 장치(200)는 A의 측면 값(Height)를 C의 Width에 해당 하는 비율로 업샘플링하여 해당 위치에 따른 참조 블록 값을 생성하고, 이를 통한 부호화 및 복호화를 수행할 수 있다.For example, in the coding / decoding of the upper boundary boundary of C in Fig. 19, the side value of A can be referred to. To this end, the
도 20 내지 도 24는 본 발명의 일 실시 예에 따른 복호화 시스템 및 그 동작을 도시한 도면들이다.20 to 24 illustrate a decoding system and its operation according to an embodiment of the present invention.
도 20을 참조하면, 본 발명의 실시 예에 따른 복호화 시스템(300)은 전술한 바와 같은 부호화 장치(100) 또는 외부 서버 등으로부터 수신되는 전체 동기화된 다시점 영상 비트스트림 및 공간적 구조 정보를 수신하여, 사용자의 가상현실 디스플레이 장치(400)로 하나 이상의 복호화된 픽쳐를 제공하는 클라이언트 시스템을 구성할 수 있다.Referring to FIG. 20, the
이를 위해, 복호화 시스템(300)은 복호화 처리부(310), 사용자 동작 분석부(320) 및 인터페이스부(330)를 포함한다. 다만, 복호화 시스템(300)은 본 명세서에서 별도의 시스템으로 설명되고는 있으나, 이는 필요한 복호화 처리 및 후처리를 수행하기 위한 전술한 복호화 장치(200) 및 후처리 장치(20)를 구성하는 전부 또는 일부 모듈의 조합으로 구성될 수 있으며, 복호화 장치(200)를 확장하여 구성할 수도 있다. 따라서, 그 명칭에 한정되는 것은 아니다.For this, the
이에 따라, 본 발명의 실시 예에 따른 복호화 시스템(300)은 부호화 장치(100)로부터 수신되는 공간적 구조 정보와, 사용자 동작 분석에 따른 사용자 시점 정보에 기초하여 전체 비트스트림 중 일부에 대한 선택적 복호화를 수행할 수 있다. 특히, 도 20에서 설명되는 선택적 복호화에 따라, 복호화 시스템(300)은 공간적 구조 정보를 이용하여, 동일한 시간(POC, Picture of Count)의 복수의 시점을 갖는 입력 영상들을 일정 방향을 기준으로 사용자의 시점(PERSPECTIVE)과 대응시킬 수 있다. 또한, 이를 기준으로 사용자 시점에 의해 결정되는 관심 영역(ROI, Region Of Interest) 픽쳐들에 대한 일부 복호화를 수행할 수 있다.Accordingly, the
이를 위해, 복호화 시스템(300)에는 사용자 정보 수신 및 분석을 위한 인터페이스 레이어가 포함될 수 있으며, 현재 복호화 하는 영상이 지원하는 시점과 VR 디스플레이 장치(400)의 시점 매핑 및 후처리, 렌더링 등을 선택적으로 수행할 수 있다. 보다 구체적으로 인터페이스 레이어는 상기 후처리와 렌더링을 위한 하나 이상의 프로세싱 모듈과, 인터페이스부(330) 및 사용자 동작 분석부(320)를 포함할 수 있다.For this purpose, the
인터페이스부(330)는 사용자가 착용한 VR 디스플레이 장치(400)로부터 움직임 정보를 수신할 수 있다.The
인터페이스부(330)는 예를 들어, 사용자의 VR 디스플레이 장치(400)의 환경 센서, 근접 센서, 동작 감지 센서, 위치 센서, 자이로스코프 센서, 가속도 센서, 및 지자기 센서 중 적어도 하나를 유선 또는 무선으로 수신하기 위한 하나 이상의 데이터 통신 모듈을 포함할 수 있다.The
그리고, 사용자 동작 분석부(320)는 상기 인터페이스부(330)로부터 수신되는 사용자 동작 정보를 분석하여 사용자의 시점(PERSPECTIVE)을 결정하며, 이에 대응되는 복호화 픽쳐 그룹을 적응적으로 선택하기 위한 선택 정보를 복호화 처리부(310)로 전달할 수 있다.The
이에 따라, 복호화 처리부(310)는 사용자 동작 분석부(320)로부터 전달된 선택 정보에 기초하여, ROI(Region Of Intrest) 픽쳐를 선택하기 위한 ROI 마스크를 설정할 수 있으며, 상기 설정된 ROI 마스크에 대응되는 픽쳐 영역만을 복호화할 수 있다. 예를 들어, 픽쳐 그룹은 전술한 영상 프레임 내 복수의 서브 이미지, 또는 참조 이미지들 중 적어도 하나에 대응될 수 있다.Accordingly, the
예를 들어, 도 20에 도시된 바와 같이, 복호화 처리부(310)에서 복호화된 특정 POC의 서브 이미지가 1 내지 8까지 존재하는 경우, 복호화 처리부(310)는 사용자의 시각 시점(PERSPECTIVE)에 대응되는 서브 이미지 영역 6, 7만을 복호화 처리함으로써, 처리 속도 및 효율을 실시간으로 향상시킬 수 있다.For example, as shown in FIG. 20, when there are 1 to 8 sub-images of a specific POC decoded by the
도 21은 본 발명의 실시 예에 따른 전체 부호화된 비트스트림과 GOP(GROUP OF PICTURES)를 예시한 것이며, 도 22는 전체 비트스트림 중 복호화되는 픽쳐 그룹이 사용자 시점에 따라 선택적으로 변화되는 것을 나타내고 있다.FIG. 21 illustrates the entire encoded bitstream and the GOP (GROUP OF PICTURES) according to the embodiment of the present invention, and FIG. 22 shows that the picture group to be decoded among the entire bitstream is selectively changed according to the user's viewpoint .
전술한 바와 같이, 본 발명의 실시 예에 따른 복호화 시스템(300)은 수신된 동기화된 다시점 영상의 전체 부호화된 비트스트림을 수신하여, 사용자의 시각적 뷰(perspective view)에 대응되는 서브 비트스트림에 대한 복호화를 수행할 수 있다.As described above, the
이때, 동기화된 다시점 영상의 공간적 구조 정보는 전술한 바와 같은 SEI 또는 HLS 등의 형태로 시그널링될 수 있다. 특히, 일 실시 예에 따르면, 복호화 시스템(300)은 상기 시그널링 정보로부터 식별되는 독립적 서브 이미지(Independent sub image), 의존적 서브 이미지(dependent sub image) 및 SRAP(Spatial random access picture)를 이용한 참조 구조를 생성 및 구축할 수 있다. 그리고, 상기 참조 구조를 이용하여 시각적 시점(PERSPECTIVE) 변화에 따라 일부 비트스트림을 선택하여 복호화할 수 있다.At this time, the spatial structure information of the synchronized multi-view image can be signaled in the form of SEI or HLS as described above. In particular, according to one embodiment, the
이를 위해, 부호화 장치(100)는 NAL 타입 또는 PPS에 의해 공간적 랜덤 액세스 픽쳐(SRAP, SPATIAL RANDAOM ACCESS PICTURE)로 픽쳐를 선택할 수 있으며, SRAP 픽쳐는 선택되지 않은 다른 픽쳐의 서브 이미지들의 인트라 예측 부호화에 있어서 참조 픽쳐로 이용될 수 있다.For this purpose, the
따라서, 부호화 장치(100) 및 복호화 장치(200)는 특정 GOP(Group Of Picture) 또는 NAL 타입 또는 PPS에 의해 SPAP로 선택되지 않은 픽쳐에 대하여는 상기 SRAP 픽쳐 중 하나 이상을 선택하여 부호화 및 복호화 처리할 수 있다.Therefore, the
보다 구체적으로 SRAP 픽쳐는, 전체 비트스트림 중 일부 비트스트림에 대한 복호화를 위해, 동시간에 대해 다시점으로 구성된 한 장의 입력 영상이, 서로 다른 시간에 대한 영상들의 복호화와 상관 없이, SRAP 픽쳐 내 서브 이미지들간의 Data redundancy 등을 이용하여, 독립적으로 복호화 할 수 있는 픽쳐를 의미할 수 있다.More specifically, for decoding of some bitstream among the entire bitstream, a single input image composed of multi-points for the same time is divided into sub-frames in the SRAP picture, irrespective of decoding of images for different time periods. A picture that can be independently decoded using data redundancy between images, or the like.
또한, SRAP로 선택된 픽쳐는 각 서브 이미지들이 화면 내 예측 (Intra coding)등을 통해 부호화/복호화 될 수 있으며, 일정 GOP 내 최소 한 장 이상의 SRAP 픽쳐가 전체 비트스트림 중 일부 비트스트림을 복호화 하기 위하여 포함될 수 있다.In addition, each of the sub-images selected by the SRAP can be encoded / decoded through Intra coding or the like, and at least one SRAP picture in a certain GOP is included for decoding some bitstreams of the entire bitstream .
또한, SRAP 픽쳐로 선택되지 않은 픽쳐들은 SRAP 픽쳐로 선택된 픽쳐들을 참조 픽쳐로 활용하여 화면 간 예측 방법 등을 통해, 사용자 시점에 따른 복호화를 수행하는데 이용될 수 있다.In addition, the pictures not selected as SRAP pictures can be used for decoding according to the user's point of view through the inter-picture prediction method using the pictures selected by the SRAP picture as reference pictures.
이에 따라, 복호화 시스템(300)은 복호화 처리부(310)를 통해 사용자의 시각적 시점(PERSPECTIVE)에 대응하여 선택되는 하나 이상의 서브 이미지를 상기 참조 픽쳐를 이용하여 복호화할 수 있게 된다.Accordingly, the
한편, 상기 SRAP로 선택된 픽쳐는 참조 없이, 일반적 부호화 및 복호화 방법에 따라 단일 영상의 전체 인트라 예측 부호화될 수 있다.On the other hand, the picture selected by the SRAP can be entirely intra-predictively encoded in a single image according to a general encoding and decoding method without reference.
따라서, 복호화 시스템(300) 또는 복호화 장치(200)는 DPB(DECODED PICTURE BUFFER)에 적어도 하나 이상의 SRAP 픽쳐를 저장할 필요성이 있다. 그리고, 하나의 GOP에서 기 복호화된 픽쳐 또는 SRAP 픽쳐 사이의 서브 이미지는 상기 SRAP로 저장된 픽쳐를 참조 픽쳐로 이용하여 복호화될 수 있다.Accordingly, the
이에 따라, 도 22에서는 SRAP로 지정된 픽쳐와 사용자 시점 변화에 따른 선택적 복호화 영역의 변화를 도시하고 있다. 도 22에 도시된 바와 같이, SRAP 픽쳐가 복호화되는 주기는 미리 결정된 일정 시간 주기일 수 있다.Accordingly, FIG. 22 shows the change of the picture specified by the SRAP and the selective decoding area according to the change of the user view point. As shown in FIG. 22, the period in which the SRAP picture is decoded may be a predetermined constant time period.
그리고, 주기적으로 복호화되는 SRAP 픽쳐를 참조하여, 사용자 시점 변화(USER PERSPECTIVE OF CHANGE) 발생 시간에 따라 복호화되는 서브 이미지 그룹이 변경될 수 있다. 예를 들어, 도 22와 같이, 사용자 시점 변화 발생 시점에 복호화 ROI 영역은 제1 서브 이미지 그룹에서 제2 이미지 서브 이미지 그룹으로 변화될 수 있다.Then, referring to the SRAP picture that is periodically decoded, the sub-image group decoded according to the occurrence time of the USER PERSPECTIVE OF CHANGE may be changed. For example, as shown in FIG. 22, the decoded ROI region may be changed from the first subimage group to the second image subimage group at the time of occurrence of the user viewpoint change.
한편 도 23은 본 발명의 일 실시 예에 따른 서브 이미지 복호화 방법을 설명하기 위한 도면이다.23 is a diagram for explaining a sub-image decoding method according to an embodiment of the present invention.
전술한 바와 같이 사용자 시점(Perspective)에 따라 일부 픽쳐를 복호화 하는 방법에 있어, 도 23에 도시된 바와 같이 각 서브 이미지들의 의존성(DEPENDENCY)이 고려될 수 있다.As described above, in the method of decoding some pictures according to the user perspective, the dependency of each sub-images can be considered as shown in FIG.
전술한 바와 같이, 부호화 장치(100) 및 복호화 장치(200)는 부호화 효율 또는 서브 이미지들의 스캔 순서에 따라, 일부 픽쳐(서브 이미지)들에 대해 독립성을 부여할 수 있다. 그리고, 독립성이 부여된 독립적 서브 이미지는 화면 내 픽쳐로 부호화 및 복호화 처리함으로써, 다른 서브 이미지들과의 의존성을 제거할 수 있다.As described above, the
한편, 부호화 장치(100) 및 복호화 장치(200)는 나머지 서브 이미지를 의존적 서브 이미지(Dependent sub image)로 지정할 수 있다. 의존적 서브 이미지와 동일한 POC를 가진 독립적 서브 이미지(Independent sub image)들은 의존적 서브 이미지의 레퍼런스 픽쳐 리스트(reference picture list)에 추가될 수 있으며, 상기 의존적 서브 이미지들은 인접한 독립적 서브 이미지들에 대해 화면 내 예측 (Intra coding)을 통한 부호화 또는 복호화되거나, 동일한 POC를 가진 독립적 서브 이미지를 참조 픽쳐로 이용하여 화면 간 예측(inter coding)되거나, 또는 서로 다른 POC를 가진 독립적 서브 이미지들에 대해 화면 간 예측 방법을 통해 부호화 또는 복호화 처리될 수 있다.Meanwhile, the
보다 구체적으로, 의존적 서브 이미지들에 대응하여, 서로 다른 POC를 가진 독립적 서브 이미지들도 참조 픽쳐 리스트에 추가될 수 있다. 상기 의존적 서브 이미지는 화면 내 예측 부호화 또는 리스트에 추가된 독립적 서브 이미지들을 참조한 화면 간 예측 부호화에 있어서 참조 픽쳐로 활용될 수 있다.More specifically, corresponding to the dependent sub-images, independent sub-images having different POCs may be added to the reference picture list. The dependent sub-image may be used as a reference picture in inter-picture predictive coding or inter-picture predictive coding referring to independent sub-images added to the list.
이에 따라, 의존적 서브 이미지들에 대해 독립적 서브 이미지를 참조 픽쳐로 이용하여 화면 내 예측 방법을 통한 복호화가 수행될 수 있다. 또한, 현재 복호화를 수행하는 서브 이미지와 동일한 POC를 참조 픽쳐로 지정하여, 화면 간 예측 방법을 통한 복호화가 수행될 수 있다.Accordingly, decoding using the intra-picture prediction method can be performed using independent sub-images as reference pictures for the dependent sub-images. In addition, the same POC as the current sub-image to be decoded can be designated as a reference picture, and decoding through the inter-picture prediction method can be performed.
예를 들어, 의존적 서브 이미지는 동일한 POC를 가진 독립적 서브 이미지들과, 바운더리 영역에서의 유사성이 높으므로, 부호화 장치(100)는 의존적 서브 이미지의 상기 바운더리 영역에 대하여 상기 독립적 서브 이미지와의 화면 내 예측 방법을 이용한 부호화를 수행할 수 있다.For example, since the dependent sub-image has a high similarity in the boundary region with the independent sub-images having the same POC, the
이 때, 참조될 독립적 서브 이미지들은 HLS 상의 PPS 또는 SPS 등의 단위에 따라 변화될 수 있으며, 이에 대한 정보는 별도로 시그널링될 수 있다. 그리고, 복호화 장치(200)는 독립적 서브 이미지들에 기초하여 의존적 서브 이미지들을 유도 (derivation)할 수 있다 또한, 복호화 장치(200)는 전체 서브 이미지의 독립성 여부를 별도의 리스트 형태로 수신할 수도 있다.At this time, independent sub-images to be referred to may be changed according to a unit such as PPS or SPS on the HLS, and the information about them may be separately signaled. The
또한, 상기와 같은 SRAP 및 독립성 기반의 부호화 및 복호화 처리에 따라, 복호화 시스템(300)에서는 전체 비트스트림 중 사용자의 시점(perspective)에 따른 일부 비트스트림을 용이하게 선택하고, 적응적 및 선택적 복호화를 효율적으로 수행할 수 있게 된다.In addition, according to the SRAP and independence-based encoding and decoding processes as described above, the
또한, 독립적 서브 이미지 또는 의존적 서브 이미지들은 별도로 시그널링 또는 인덱싱 되어 이들을 식별할 수 있는 신호가 복호화 장치(200)로 전달될 수도 있다. 이 때, 복호화 장치(200)는 사용자의 시점에 따라 복호화 대상이 되는 서브 이미지들의 일부 또는 전체의 영역을 인접한 독립적 서브 이미지 또는 기 복호화된 서브 이미지들을 참조하여 서브 이미지들간 인접한 영역에 대하여, 직접 부호화 모드를 추측하고, 해당 영역에 대한 복원을 수행할 수 있다. In addition, the independent sub-images or dependent sub-images may be signaled or indexed separately and a signal capable of identifying them may be delivered to the
한편, 도 24에 도시된 바와 같이 이와 같은 화면 내 예측 및 화면 간 예측 부호화에 있어서, 부호화 효율을 고려한 코딩 방법이 예시될 수 있다.On the other hand, as shown in FIG. 24, in the intra-picture prediction and the inter picture prediction coding as described above, a coding method considering the coding efficiency can be exemplified.
도 24를 참조하면, 본 발명의 실시 예에 따른 부호화 장치(100)는 영상의 PSNR 등의 Distortion 을 측정하거나, RDO 과정(부호화 과정)의 Error 값 등을 측정하기 위해, 영상의 특징에 따른 영역별 가중치(Weighting factor)를 상이하게 적용하는 연산(Metric)을 수행할 수 있다.Referring to FIG. 24, in order to measure a distortion such as a PSNR of an image or to measure an error value or the like of an RDO process (encoding process), an
도 24에 도시된 바와 같이, VR 디스플레이를 이용하여, 동기화된 다시점 영상을 시청하는 사용자는 일반적으로 정면 시점을 기준으로 좌우 시야범위는 넓을 수 있으나, 상하 시야범위가 좁을 수 있다. 따라서, 부호화 장치(100)는 다시점 영상을 2차원 영상으로 변환하고, 시야 상단 및 하단 영역에 대하여는 낮은 가중치 영역(LOW WEIGHT FACTOR REGION)으로 설정함으로써, 부호화 효을을 높일 수 있다.As shown in FIG. 24, a user viewing a synchronized multi-view image using the VR display can generally have a wide viewing range, but a narrow viewing range. Therefore, the
도 24는 다양한 동기화된 다시점 영상의 사용자 시점 영역을 나타내며, 이중 다시점 영상이 Equirectangular type인 경우에서의 낮은 가중치 영역(LOW weighting factor) 적용 지역을 나타내고 있다.FIG. 24 shows a user viewpoint region of various synchronized multi-view images, and a low weighting factor application region in the case of a double-viewpoint image of Equirectangular type.
특히, 가중치 적용을 위해, 먼저 부호화 장치(100)는 동기화된 다시점 영상을 2차원 영상으로 변환 부호화를 수행할 수 있으며, 다시점 영상의 타입에 따라, 가중치 영역(Weighting region)이 상이하게 결정될 수 있다. 또한, 가중치 영역 정보는 전술한 공간적 구조 정보에 포함되거나, HLS를 통해 별도 시그널링 될 수 있다. 가중치 요소(Weighting factor) 또한 별도의 HLS 상에 시그널링되거나 리스트 형태로 전송될 수 있다.In particular, in order to apply a weight, the
이와 같은 본 발명의 실시 예에 따른 가중치 영역은 자연 영상의 특징 및 굴절된 3D 영상 등의 특성 상, 인간이 집중할 수 있는 영역이 제한된다는 점을 가정하여 설정될 수 있다.The weight area according to the embodiment of the present invention can be set on the assumption that the area where the human can concentrate is limited on the characteristics of the natural image and the refracted 3D image.
이에 따라, 부호화 장치(100)는 상대적으로 낮은 가중치 영역에 대하여, 상대적으로 낮은 QP를 Base QP로 적용 하여 부호화를 수행할 수 있다. 또한, 부호화 장치(100)는 PSNR을 측정시, 상대적으로 낮은 가중치 영역에 대한 PSNR을 낮게 측정할 수 있다. 반대로 부호화 장치(100)는 가중치가 상대적으로 높은 영역에 대해서는 상대적으로 높은 QP를 Base QP로 적용하거나, PSNR을 상대적으로 높게 측정하는 동작을 수행할 수 있다.Accordingly, the
또한, 본 발명의 실시 예에 따르면, 전술한 바와 같이 인트라 블록 복사 예측을 위해, 동일한 POC 내에서도 서로 다른 시점을 갖는 영상을 참조한 복호화가 수행될 수 있으며, 이 때 참조되는 영상은 독립적 복호화가 가능한 독립적 서브 이미지가 예시될 수 있다.In addition, according to the embodiment of the present invention, for intra-block copy prediction as described above, decoding can be performed with reference to an image having a different viewpoint even in the same POC, and the referenced image can be independently decoded Sub-images can be illustrated.
특히, 바운더리 영역에 대한 인트라 예측이 효율적으로 적용될 수 있으며, 바운더리 영역에 대한 부호화 효율을 최대화하기 위해 상기 가중치 요소가 이용될 수 있다. 예를 들어, 부호화 장치(100)는 독립적 서브 이미지 영역으로부터 참조되는 영역을 패치(PATCH)할 수 있도록 하는 상기 가중치 요소를 거리에 따라 지정하고, 이에 대한 스케일링 값을 적용함으로써 주변 블록의 예측 값을 효율적으로 결정할 수 있다.In particular, the intra prediction for the boundary region can be efficiently applied, and the weighting factor can be used to maximize the coding efficiency for the boundary region. For example, the
또한, 부호화 장치(100)는 화면 내 부호화에 대한 MPM(MOST PROBABLE MODE)를 구성함에 있어서, 바운더리 영역에 대한 가중치를 적용할 수 있다. 따라서, 부호화 장치(100)는 구조적으로는 이웃하지 않더라도, 영상내 서브 이미지간 경계면을 중심으로 MPM의 예측 방향을 유도할 수 있다.In constructing the MPM (MOST PROBABLE MODE) for intra-picture coding, the
한편, 부호화 장치(100)는 화면 간 부호화(INTER CODING)에 있어서도 독립적 서브 이미지를 고려할 수 있다. 예를 들어, 부호화 장치(100)는 독립적 서브 이미지에 대응하여, 연관 지역에 위치한(co-lacated) 서브 이미지를 참조할 수 있다. 이에 따라, 화면 간 부호화를 위한 참조 픽쳐 구성시, 영상 중 일부 서브 이미지에 대해서만 참조 픽쳐 리스트에 추가할 수 있게 된다.Meanwhile, the
도 25 내지 도 30은 본 발명의 다른 일 실시 예에 따른 다시점 영상 처리를 위한 서버 시스템을 도시한 것이다.25 to 30 illustrate a server system for multi-view image processing according to another embodiment of the present invention.
먼저, 도 25를 참조하면, 본 발명의 실시 예에 따른 서버 시스템은 서버(500) 및 클라이언트 시스템을 포함하여 구성될 수 있으며, 클라이언트 시스템은 본 발명의 실시 예에 따른 클라이언트 복호화 시스템(600)이 예시될 수 있다.25, a server system according to an embodiment of the present invention may include a
전술한 바와 같이, 동기화된 다시점 영상은 복수의 서브 이미지간의 병합, 합성 또는 스티칭(stiching)과 같은 처리를 통해 각 시점별 영상으로 구성될 수 있으며, 부호화 장치(100)에서의 부호화 처리 및 시그널링에 따라, 공간적 구조 정보가 생성 및 시그널링될 수 있다.As described above, the synchronized multi-view image may be composed of images at each view point through processes such as merging, compositing, or stiching among a plurality of sub images, and the encoding process and the signaling process in the
이에 따라, 본 발명의 실시 예에 따른 서버(500)는 동기화된 다시점 영상을 저장 및 관리하고, 클라이언트 복호화 시스템(600)의 요청에 따라 선택적으로 전송하는 컨텐츠 서버일 수 있다.Accordingly, the
이에 따라, 서버(500)는 동기화된 다시점 영상의 미디어 비트스트림을 저장 및 관리할 수 있으며, 클라이언트 복호화 시스템(600)의 요청에 따라 비트스트림의 선택적 일부를 제공할 수 있다.Accordingly, the
이를 위해, 서버(500)는 상기 동기화된 다시점 영상을 공간적 구조 정보에 따라 각 시점별로 관리할 수 있으며, 클라이언트 복호화 시스템(300)으로부터의 요청에 따른 각각의 시점에 대한 부호화된 비트스트림을 추출하여 복호화 시스템(300)으로 전송할 수 있다.For this purpose, the
보다 구체적으로, 서버(500)는 비트스트림 제공부(510) 및 공간적 구조 정보 관리부(520)를 포함할 수 있다.More specifically, the
공간적 구조 정보 관리부(520)는 서버(500)에 저장 및 관리되는 미디어 비트스트림을 미리 추출된 공간적 구조 정보 데이터(spatial layout information data)에 따라 각각의 시점별 미디어 비트스트림(perspective N media bitstream)으로 분류할 수 있다.The spatial structure
또한, 공간적 구조 정보 관리부(520)는 비트스트림 제공부(510)를 통해 클라이언트 복호화 시스템(600)으로 상기 공간적 구조 정보를 전달할 수 있다.In addition, the spatial structure
여기서, 클라이언트 복호화 시스템(600)은 전술한 복호화 시스템(300)과 유사하며, 사용자 동작 분석부(630) 및 복호화 처리부(610)와 함께, 상기 공간적 구조 정보 및 비트스트림을 수신하기 위한 통신부(640)를 더 구비할 수 있다.The
통신부(640)는 상기 선택적 비트스트림을 유선 또는 무선으로 수신하기 위한 하나 이상의 네트워크 모듈을 포함할 수 있다.The communication unit 640 may include one or more network modules for receiving the selective bit stream by wire or wirelessly.
그리고, 클라이언트 복호화 시스템(600)은 상기 공간적 구조 정보가 수신되면, 사용자 동작 분석부(630)를 통해 다시점 영상의 전체 시점(perspective)와 디스플레이 장치간 호환성 매핑을 처리할 수 있다.When the spatial structure information is received, the
이후, 다시점 영상의 재상을 위해, 클라이언트 복호화 시스템(600)은 통신부(640)를 통해 임의의 시각적 시점(perspective)에 대한 비트스트림을 요청할 수 있으며, 서버(500)는 비트스트림 제공부(510)를 통해 상기 요청된 임의 시점의 부호화된 비트스트림을 제공할 수 있다. 특히, 상기 시점은 사용자 동작 분석부(630)로부터 분석되는 사용자의 시점(perspective)변화에 따라 가변될 수 있으며, 이에 따라, 서버(500)는 사용자 시점(perspective)에 대응되는 비트스트림을 전송할 수 있게 된다.The
또한, 복호화 처리부(610)에서는 상기 비트스트림의 복호화를 처리하여 렌더링 시스템 또는 다시점 디스플레이 장치로 전달할 수 있다. 도 22와 같은 서버 시스템 실시 예에서는 상기 복호화 처리부(610)에서는 비트스트림을 선택적으로 복호화할 필요는 없으며, 서버(500)로부터 선택적으로 전송된 비트스트림을 전체 복호한다.In addition, the
그리고, 서버(500)는 시점 변경(perspective change)이 발생하는 경우 다시 클라이언트 복호화 시스템(600) 요청에 따라 공간적 구조 정보에 포함된 시점 테이블(perspective table)을 참조하여, 이에 대응되는 시점(perspective)의 비트스트림을 비트스트림 제공부(510)를 통해 클라이언트 복호화 시스템(600)으로 제공할 수 있다. When a perspective change occurs, the
또한, 도 26에 도시된 바와 같이, 사용자 시점에 따라 일부 영상을 복호화 함에 있어, 전송되는 데이터 패킷에는 사용자의 움직임에 따른 서로 다른 음향 정보가 복호화될 수 있다.In addition, as shown in FIG. 26, in decrypting a part of an image according to a user's viewpoint, different pieces of sound information according to the movement of the user may be decoded in the transmitted data packet.
이 때, 영상(Video) 압축 정보에 대응되는 오디오(Audio) 신호가 각 장면에 따라 1:1로 매핑되어, 패킷타이징되거나, 별도의 지정(Indication)되는 정보에 따라 Video 와 Audio 신호가 매핑될 수 있다.At this time, an audio signal corresponding to video compression information is mapped to 1: 1 according to each scene, and is packetized or mapped to a video and audio signal according to separately designated information .
도 26에 도시된 바와 같이, 가상현실 공간 영상(VR Media)의 Data를 패킷타이징 함에 있어, 패킷화된 데이터는 Video와 Audio 및 부가 정보를 포함할 수 있는데, 이때 동일한 시간의 Video 압축 데이터는 다양한 위치 및 장면을 나타내는 영상일 수 있으며, 이에 대응하는 Audio 신호는 해당 위치 및 장면에서 취득한 음성 신호를 포함할 수 있다. 이를 위하여 VR 미디어 데이터에는 Video와 Audio 신호간의 매핑 테이블이 포함될 수 있으며, 이를 통해 사용자의 움직임에 따른 미디어를 복원할 수 있다. ■As shown in FIG. 26, when packetizing the data of the virtual reality space image (VR Media), the packetized data may include video, audio, and additional information. At this time, The audio signal corresponding to the position and the scene may include the audio signal acquired at the corresponding position and scene. To this end, the VR media data may include a mapping table between video and audio signals, and the media corresponding to the user's motion can be restored through the mapping table. ■
이때, 복호화 시스템(600)으로 전달되는 부가 정보 메타데이터는 Video와 Audio의 압축 데이터 간 Mapping table정보를 기초로 생성될 수 있으며, 메타데이터는 영상의 압축 비트스트림 내, 또는 공간적 구조 정보에 포함된 각 영상의 장면 또는 카메라의 위치 정보를 포함하여 최종 영상 복원에 이용될 수 있다.At this time, the additional information metadata transmitted to the
도 27 내지 도 28은는 본 발명의 실시 예에 따른 서버 동작을 설명하기 위한 흐름도이다.27 to 28 are flowcharts for explaining a server operation according to an embodiment of the present invention.
먼저, 도 27을 참조하면, 서버(500)는 공간적 구조 정보 관리부(520)를 통해 시점 정보 테이블(PERSPECTIVE TABLE)을 참조하여 각 시점(PERSPECTIVE)별 영상 스트림을 식별 및 관리할 수 있다.Referring to FIG. 27, the
그리고, 서버(500)는 클라이언트 시스템으로부터 시점(PERSPECTIVE) 인덱스 정보를 포함하는 비트스트림 요청을 수신하며(S201), 수신된 인덱스 정보에 따라, 이에 대응되는 하나 이상의 시점(PERSPECTIVE)의 비트스트림을 탐색한다(S203). 그리고, 탐색된 비트스트림을 선택하여 클라이언트 시스템으로 전송할 수 있다.The
본 발명의 실시 예에 따른 각 시점에 대한 공간적 구조 정보는, 도 11에서 전술한 바와 같이, 각 장면(Scene)과 이에 대응되는 시점(Perspective) 정보를 포함하는 테이블의 형태로 구성될 수 있다.As described above with reference to FIG. 11, the spatial structure information for each viewpoint according to the embodiment of the present invention may be configured in the form of a table including scenes and corresponding perspective information.
전술된 도 14에 도시된 바와 같이, Scene A부터 Scene F까지의 각 시간 동기화된 다시점 영상에 대해 부호화를 수행하여 총 N개의 부호화 영상 스트림이 구성될 수 있으며, 서버(500)에서는 공간적 구조 정보 관리부(520)를 이용하여, 이와 같은 N개의 부호화 영상 스트림을 각각의 별도 비트스트림으로 구분할 수 있다. 도 14의 테이블은 Scene을 총 6개로 분류하여, N을 6개로 구성하였을 경우를 예시하고 있다.As shown in FIG. 14, a total of N encoded video streams can be constructed by performing encoding on each time-synchronized multi-view image from Scene A to Scene F, and the
그리고, 도 27에 도시된 바와 같은 본 발명의 실시 예에 따르면, 본 발명의 실시 예에 따른 서버(500)는 하나 이상의 카메라 등에 의해 다양한 각도에서 바라본 다시점 영상들(N개 시점)에 대해 공간적 구조 정보(Spatial layout information)에 기초한 N개의 시점별 영상을 부호화 하여 압축된 bitstream을 각각 저장할 수 있으며, 이에 따라 선택적 전송을 수행할 수 있다.According to the embodiment of the present invention as shown in FIG. 27, a
여기서, N개의 시점의 범위는 가변될 수 있으며, 예를 들어 최대 수평 360도 수직 180도 이상의 범위 내에서 다양한 시야각에 따른 시점이 결정될 수 있다.Here, the range of the N viewpoints can be varied, for example, a viewpoint according to various viewing angles can be determined within a range of a maximum horizontal 360 degrees vertical 180 degrees.
이는 부호화 장치(100)에서 수행될 수 있으나, 본 발명의 실시 예에 따른 전처리 장치(10)에서도 부호화 장치(100) 기능의 전부 또는 일부를 수행할 수 있다.The
따라서, 부호화 장치(100) 또는 전처리 장치(10)는 입력 다시점 영상에 대한 시점 결정 및 공간적 구조 정보 생성을 수행하며(S301), 이에 기초한 시점 테이블(PERSPECTIVE TABLE)을 구성한다(S303).Accordingly, the
그리고, 부호화 장치(100)는 상기 공간적 구조 정보에 기초하여, N 개 영상에 대응되는 부호화를 수행하고, 각 N개의 시점에 대응되는 비트스트림을 생성한다(S305).Then, the
이후, 서버(500)에서는 공간적 구조 정보 관리부(520)를 통해 상기 공간적 구조 정보를 이용한 영상 비트스트림의 분류 및 관리를 수행하며, 비트스트림 제공부(510)를 통해, 클라이언트 시스템인 복호화 시스템(600)으로 상기 공간적 구조 정보 및 상기 비트스트림의 메타데이터를 송신한다(S307).Thereafter, the
이후, 서버(500)는 비트스트림 제공부(510)를 통해, 복호화 시스템(300)으로부터 시점 테이블 인덱스(PERSPECTIVE TABLE INDEX)를 수신하며(S309), 시점 테이블 인덱스에 대응되는 시점의 비트스트림을 탐색한다(S311). 탐색된 비트스트림은 클라이언트 복호화 시스템(600)으로 전달될 수 있다.Thereafter, the
그리고, 서버(500)는 공간적 구조 정보 관리부(520)를 통해 새로운 시점 테이블 인덱스가 수신되는지 판단한다(S313).Then, the
새로운 인덱스가 수신된 경우, 서버(500)는 비트스트림 제공부(510)를 통해다시 새로운 시점 인덱스에 대응되는 비트스트림을 제공할 수 있다(S315).When a new index is received, the
이와 같이, 부호화 장치(100) 또는 전처리 장치(10)는 부호화 하기 이전 단계에서, 입력 영상에 대응되는 공간적 구조 정보를 구성할 수 있으며, 이에 따라, 부호화 단계에서는 부호화 옵션으로서, N개의 시점과 공간적 구조 정보를 이용하여, N개의 시점에 대응되는 영상 부호화를 처리할 수 있다.As described above, the
또한, 부호화 장치(100)는 N개의 시점에 따른 부호화 시, N개의 인코더를 이용한 병렬 부호화 또는 N번의 반복적인 부호화를 통해 0, 1, 2, … N까지의 시점별 비트스트림(perspective bitstream)을 생성할 수 있게 된다. 이에 따라, 서버(500)는 비트스트림 제공부(510)를 통해, 클라이언트로부터 수신되는 제1, 제2,... N 시점 요청 메시지(Perspective msg)를 수신하여, 이에 대응하는 제1, 제2, ... N 시점 비트스트림을 전송할 수 있다.When encoding according to the N viewpoints, the
도 29는 본 발명의 실시 예에 따른 클라이언트 시스템을 도시한 것으로, 본 발명의 실시 예에 따른 클라이언트 복호화 시스템(600)은, 인터페이스 레이어(680), 렌더링 및 후처리 레이어(670), 비디오 디코더(610) 및 메타데이터 처리부(650)를 포함할 수 있으며, 각 처리부는 복호화 장치(200) 및 후처리 장치(20)의 전부 또는 일부 기능의 조합으로 구현될 수도 있다.FIG. 29 illustrates a client system according to an embodiment of the present invention. The
메타데이터 처리부(650)는 비트스트림을 수신하며, 비트스트림의 하이레벨 신택스(HLS), 공간적 구조 정보 및 기타 영상의 미디어 메타데이터를 파싱하여 관리할 수 있다.The
또한, 비디오 디코더(610)는 수신된 비트스트림이 하나 이상의 시점(PERSPECTIVE)에 대응되는 영상 정보를 포함하는 경우, 렌더링 및 후처리 레이어(670)로부터 수신되는 시점 영상 복호화(PERSPECTIVE VIDEO DECODING) 요청에 따라 비트스트림의 영상 복호화를 수행한다. 이에 따라 복호화된 픽쳐 또는 픽쳐 그룹(세트)가 렌더링 및 후처리 레이어(670)로 전달될 수 있다.In addition, when the received bitstream includes image information corresponding to one or more viewpoints (PERSPECTIVE), the
여기서, 비디오 디코더(610)는 서버(500)로 전송된 시점 인덱스에 따라 선택적으로 전송되는 비트스트림을 복호화할 수 있다. 다만, 시점 인덱스가 특정되지 않은 전체 비트스트림의 경우에는 전술한 복호화 시스템(300)의 복호화 처리부(310)와 동일한 선택적 복호화 동작을 수행할 수도 있다. 이는 시스템 관리자 설정에 따라 결정될 수 있다.Here, the
그리고, 렌더링 및 후처리 레이어(670)는 인터페이스 레이어(680)로부터 시점 인덱스를 전달받아 이에 기초한 시점 영상 복호화(PERSPECTIVE VIDEO DECODING) 요청을 비디오 디코더(610)로 전달하며, 이에 따라 수신되는 복호화된 픽쳐 또는 픽쳐 그룹(세트)에 기초한 시점별 복원 영상을 생성하여 인터페이스 레이어(680)로 전달한다.The rendering and
한편, 인터페이스 레이어(680)는 VR 디스플레이 장치(400)로부터 사용자 움직임 정보를 수신하여, 시점 변화를 분석하고, 시점 변화에 따라 시점 인덱스를 결정하여 렌더링 및 후처리 레이어(670)로 전달한다. 그리고, 인터페이스 레이어(680)는 렌더링 및 후처리 레이어(670)로부터 수신되는 복원 영상을 사용자의 VR 디스플레이 장치(400)로 제공할 수 있다.Meanwhile, the
도 30은 본 발명의 실시 예에 따른 클라이언트 복호화 시스템(600)의 동작을 설명하기 위한 흐름도이다.30 is a flowchart illustrating an operation of the
도 30을 참조하면, 본 발명의 실시 예에 따른 클라이언트 복호화 시스템(600)은 먼저 서버(500)로부터 메타데이터 처리부(650)를 통해 공간적 구조 정보 및 미디어 데이터(예를 들어, 메타데이터 등 기본 정보)를 수신한다(S401).Referring to FIG. 30, a
그리고, 클라이언트 복호화 시스템(600)은 메타데이터 처리부(650)를 통해, 공간적 구조 정보에 기초하여 시점 정보 테이블(PERSPECTIVE TABLE)을 구성한다(S403).Then, the
이후, 클라이언트 복호화 시스템(600)은 인테퍼에스 레이어(680)를 통해 사용자의 시점 변화를 감지한다(S405).Thereafter, the
그리고, 클라이언트 복호화 시스템(600)은 통신부(640)를 통해 감지된 테이블 인덱스를 서버로 전송한다(S407).Then, the
테이블 인덱스에 대한 응답으로, 클라이언트 복호화 시스템(600)은 서버(500)로부터 인덱스에 대응되는 시점의 비트스트림을 통신부(640)를 통해 수신하며, 비디오 디코더(610)를 통해 복호화한다(S409).In response to the table index, the
그리고, 클라이언트 복호화 시스템(600)은 후처리 및 렌더링 레이어(670)를 통해 복호화된 영상에 대한 시점별 분리와 같은 후처리 및 렌더링 프로세스를 수행한다(S411).Then, the
이와 같은 클라이언트 복호화 시스템(600)은 하나 또는 그 이상의 Index를 서버로 전송 가능할 수 있으며, 이에 따라 하나 또는 그 이상의 시점별 비트스트림(perspective bitstream) 을 수신하여 복호화 및 렌더링할 수 있게 된다.The
이에 따라, 상기 시점 인덱스는 사용자 시점에 대응되는 복수의 인덱스를 포함할 수 있으며, 클라이언트 복호화 시스템(600)은 상기 복수의 시점 인덱스에 대응되는 복수의 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 병렬적으로 수신할 수 있다.Accordingly, the viewpoint index may include a plurality of indexes corresponding to the user viewpoint, and the
도 31 내지 도 32는 본 발명의 실시 예에 따른 부호화 및 복호화 처리를 설명하기 위한 도면들이다.31 to 32 are diagrams for explaining encoding and decoding processing according to an embodiment of the present invention.
도 31은 본 발명의 일실시예에 따른 동영상 부호화 장치의 구성을 블록도로 도시한 것으로, 본 발명의 실시 예에 따른 동기화된 다시점 영상의 각각의 서브 이미지 또는 전체 프레임을 입력 비디오 신호로서 입력받아 처리할 수 있다.31 is a block diagram illustrating a configuration of a moving image encoding apparatus according to an embodiment of the present invention. The sub-image or the entire frame of the synchronized multi-view image according to the embodiment of the present invention is input as an input video signal Can be processed.
도 31을 참조하면, 참조하면, 본 발명에 따른 동영상 부호화 장치(100)는 픽쳐 분할부(160), 변환부, 양자화부, 스캐닝부, 엔트로피 부호화부, 인트라 예측부(169), 인터 예측부(170), 역양자화부, 역변환부, 후처리부(171), 픽쳐 저장부(172), 감산부 및 가산부(168)를 포함한다.31, a moving
픽쳐 분할부(160)는 입력되는 비디오 신호를 분석하여 픽쳐를 가장 큰 코딩 유닛(LCU:Largest Coding Unit)마다 소정 크기의 코딩 유닛으로 분할하여 예측 모드를 결정하고, 상기 코딩 유닛별로 예측 유닛의 크기를 결정한다.The
그리고, 픽쳐 분할부(160)는 부호화할 예측 유닛을 예측 모드(또는 예측 방법)에 따라 인트라 예측부(169) 또는 인터 예측부(170)로 보낸다. 또한, 픽쳐 분할부(160)는 부호화할 예측 유닛을 감산부로 보낸다.The
픽쳐는 복수의 슬라이스로 구성되고, 슬라이스는 복수개의 최대 부호화 단위(Largest coding unit: LCU)로 구성될 수 있다.The picture may be composed of a plurality of slices, and the slice may be composed of a plurality of maximum coding units (LCU).
상기 LCU는 복수개의 부호화 단위(CU)로 분할될 수 있고, 부호기는 분할여부를 나타내는 정보(flag)를 비트스트림에 추가할 수 있다. 복호기는 LCU의 위치를 어드레스(LcuAddr)를 이용하여 인식할 수 있다.The LCU can be divided into a plurality of coding units (CUs), and the encoder can add information indicating whether or not to be divided to a bit stream. The decoder can recognize the position of the LCU by using the address (LcuAddr).
분할이 허용되지 않는 경우의 부호화 단위(CU)는 예측 단위(Prediction unit: PU)로 간주되고, 복호기는 PU의 위치를 PU인덱스를 이용하여 인식할 수 있다.The coding unit CU in the case where division is not allowed is regarded as a prediction unit (PU), and the decoder can recognize the position of the PU using the PU index.
예측 단위(PU)는 복수개의 파티션으로 나뉠 수 있다. 또한 예측 단위(PU)는 복수개의 변환 단위(Transform unit: TU)로 구성될 수 있다.The prediction unit PU may be divided into a plurality of partitions. Also, the prediction unit PU may be composed of a plurality of conversion units (TUs).
이 경우, 픽쳐 분할부(160)는 결정된 부호화 모드에 따른 소정 크기의 블록 단위(예를 들면, PU 단위 또는 TU 단위)로 영상 데이터를 감산부로 보낼 수 있다.In this case, the
동영상 부호화 단위로 CTB (Coding Tree Block)을 사용하며, 이 때 CTB는 다양한 정사각형 모양으로 정의된다. CTB는 코딩단위 CU(Coding Unit)라고 부른다. CTB (Coding Tree Block) is used as a unit of video encoding, and the CTB is defined as various square shapes. The CTB is called the coding unit CU (coding unit).
코딩단위(CU)는 분할에 따른 쿼드트리(Quad Tree)의 형태를 가질 수 있다. 또한, QTBT(Quadtree plus binary tree) 분할의 경우 코딩단위는 상기 쿼드트리 또는 단말 노드에서 이진 분할된 바이너리 트리(Binary Tree)의 형태를 가질 수 있으며, 부호화기의 표준의 따라 최대 크기가 256X256에서 64ㅧ64로 구성될 수 있다.The coding unit (CU) may have a form of a quad tree according to the division. In the case of quadtree plus binary tree (QTBT) partitioning, the coding unit may have a form of a binary tree divided by the quad tree or the terminal node, and the maximum size according to the standard of the encoder is 64 x 256 64 < / RTI >
예를 들어 픽쳐 분할부(160)는 최대 크기가 64X64인 경우, 최대 코딩단위 LCU(Largest Coding Unit)일 때 깊이(Depth)를 0으로 하여 깊이가 3이 될 때까지, 즉 8ㅧ8크기의 코딩단위(CU)까지 재귀적(Recursive)으로 최적의 예측단위를 찾아 부호화를 수행한다. 또한, 예를 들어 QTBT로 분할된 단말 노드의 코딩 유닛에 대해, PU(Prediction Unit) 및 TU(Transform Unit)는 상기 분할된 코딩 유닛과 동일한 형태를 갖거나 더 분할된 형태를 가질 수 있다.For example, when the maximum size is 64 × 64, the
예측을 수행하는 예측단위는 PU(Prediction Unit)로 정의되며, 각 코딩단위(CU)는 다수개의 블록으로 분할된 단위의 예측이 수행되며, 정사각형과 직사각형의 형태로 나뉘어 예측을 수행한다. A prediction unit for performing prediction is defined as a PU (Prediction Unit). Each coding unit (CU) is predicted by a unit divided into a plurality of blocks, and is divided into a square and a rectangle to perform prediction.
변환부는 입력된 예측 유닛의 원본 블록과 인트라 예측부(169) 또는 인터 예측부(170)에서 생성된 예측 블록의 잔차신호인 잔차 블록을 변환한다. 상기 잔차 블록은 코딩 유닛 또는 예측 유닛으로 구성된다. 코딩 유닛 또는 예측 유닛으로 구성된 잔차 블록은 최적의 변환 단위(Transform Unit)로 분할되어 변환된다. 예측 모드(intra or inter)에 따라 서로 다른 변환 매트릭스가 결정될 수 있다. 또한, 인트라 예측의 잔차 신호는 인트라 예측 모드에 따라 방향성을 가지므로 인트라 예측 모드에 따라 적응적으로 변환 매트릭스가 결정될 수 있다.The transform unit transforms the original block of the input prediction unit and the residual block, which is the residual signal of the
변환 단위는 2개(수평, 수직)의 1차원 변환 매트릭스에 의해 변환될 수 있다. 예를 들어, 인터 예측의 경우에는 미리 결정된 1개의 변환 매트릭스가 결정된다.The transformation unit can be transformed by two (horizontal, vertical) one-dimensional transformation matrices. For example, in the case of inter prediction, a predetermined conversion matrix is determined.
반면에, 인트라 예측의 경우, 인트라 예측 모드가 수평인 경우에는 잔차 블록이 수직방향으로의 방향성을 가질 확률이 높아지므로, 수직방향으로는 DCT 기반의 정수 매트릭스를 적용하고, 수평방향으로는 DST 기반 또는 KLT 기반의 정수 매트릭스를 적용한다. 인트라 예측 모드가 수직인 경우에는 수직방향으로는 DST 기반 또는 KLT 기반의 정수 매트릭스를, 수평 방향으로는 DCT 기반의 정수 매트릭스를 적용한다.On the other hand, in case of the intra prediction, when the intra prediction mode is horizontal, the probability that the residual block has the direction in the vertical direction becomes high. Therefore, the DCT-based integer matrix is applied in the vertical direction, Or a KLT-based integer matrix. When the intra prediction mode is vertical, a DST-based or KLT-based integer matrix is applied in the vertical direction and a DCT-based integer matrix is applied in the horizontal direction.
DC 모드의 경우에는 양방향 모두 DCT 기반 정수 매트릭스를 적용한다. 또한, 인트라 예측의 경우, 변환 단위의 크기에 의존하여 변환 매트릭스가 적응적으로 결정될 수도 있다.In case of DC mode, DCT-based integer matrix is applied in both directions. Further, in the case of intra prediction, the transformation matrix may be adaptively determined depending on the size of the conversion unit.
양자화부는 상기 변환 매트릭스에 의해 변환된 잔차 블록의 계수들을 양자화하기 위한 양자화 스텝 사이즈를 결정한다. 양자화 스텝 사이즈는 미리 정해진 크기 이상의 부호화 단위(이하, 양자화 유닛이라 함)별로 결정된다.The quantization unit determines a quantization step size for quantizing the coefficients of the residual block transformed by the transform matrix. The quantization step size is determined for each coding unit of a predetermined size or larger (hereinafter referred to as a quantization unit).
상기 미리 정해진 크기는 8x8 또는 16x16일 수 있다. 그리고, 결정된 양자화 스텝 사이즈 및 예측 모드에 따라 결정되는 양자화 매트릭스를 이용하여 상기 변환 블록의 계수들을 양자화한다.The predetermined size may be 8x8 or 16x16. And quantizes the coefficients of the transform block using a quantization matrix determined according to the determined quantization step size and the prediction mode.
양자화부는 현재 양자화 유닛의 양자화 스텝 사이즈 예측자로서 현재 양자화 유닛에 인접한 양자화 유닛의 양자화 스텝 사이즈를 이용한다.The quantization unit uses the quantization step size of the quantization unit adjacent to the current quantization unit as a quantization step size predictor of the current quantization unit.
양자화부는 현재 양자화 유닛의 좌측 양자화 유닛, 상측 양자화 유닛, 좌상측 양자화 유닛 순서로 검색하여 1개 또는 2개의 유효한 양자화 스텝 사이즈를 이용하여 현재 양자화 유닛의 양자화 스텝 사이즈 예측자를 생성할 수 있다.The quantization unit may search the left quantization unit, the upper quantization unit, and the upper left quantization unit of the quantization unit in order, and generate a quantization step size predictor of the current quantization unit using one or two effective quantization step sizes.
예를 들어, 상기 순서로 검색된 유효한 첫번째 양자화 스텝 사이즈를 양자화 스텝 사이즈 예측자로 결정할 수 있다. 또한, 상기 순서로 검색된 유효한 2개의 양자화 스텝 사이즈의 평균값을 양자화 스텝 사이즈 예측자로 결정할 수도 있고, 1개만이 유효한 경우에는 이를 양자화 스텝 사이즈 예측자로 결정할 수 있다.For example, the effective first quantization step size searched in the above order can be determined as a quantization step size predictor. In addition, the average value of the two effective quantization step sizes searched in the above order may be determined as a quantization step size predictor, or when only one is effective, it may be determined as a quantization step size predictor.
상기 양자화 스텝 사이즈 예측자가 결정되면, 현재 부호화 단위의 양자화 스텝 사이즈와 상기 양자화 스텝 사이즈 예측자 사이의 차분값을 엔트로피 부호화부로 전송한다.When the quantization step size predictor is determined, a difference value between the quantization step size of the current encoding unit and the quantization step size predictor is transmitted to the entropy encoding unit.
한편, 현재 코딩 유닛의 좌측 코딩 유닛, 상측 코딩 유닛, 좌상측 코딩 유닛 모두가 존재하지 않을 가능성이 있다. 반면에 최대 코딩 유닛 내의 부호화 순서 상으로 이전에 존재하는 코딩 유닛이 존재할 수 있다.On the other hand, there is a possibility that the left coding unit, the upper coding unit, and the upper left coding unit of the current coding unit do not exist. On the other hand, there may be coding units that were previously present on the coding order in the maximum coding unit.
따라서, 현재 코딩 유닛에 인접한 양자화 유닛들과 상기 최대 코딩 유닛 내에서는 부호화 순서상 바로 이전의 양자화 유닛의 양자화 스텝 사이즈가 후보자가 될 수 있다.Therefore, the quantization step sizes of the quantization units adjacent to the current coding unit and the quantization unit immediately before the coding order in the maximum coding unit can be candidates.
이 경우, 1) 현재 코딩 유닛의 좌측 양자화 유닛, 2) 현재 코딩 유닛의 상측 양자화 유닛, 3) 현재 코딩 유닛의 좌상측 양자화 유닛, 4) 부호화 순서상 바로 이전의 양자화 유닛 순서로 우선순위를 둘 수 있다. 상기 순서는 바뀔 수 있고, 상기 좌상측 양자화 유닛은 생략될 수도 있다.In this case, 1) the left quantization unit of the current coding unit, 2) the upper quantization unit of the current coding unit, 3) the upper left side quantization unit of the current coding unit, 4) . The order may be changed, and the upper left side quantization unit may be omitted.
상기 양자화된 변환 블록은 역양자화부와 스캐닝부로 제공된다.The quantized transform block is provided as an inverse quantization unit and a scanning unit.
스캐닝부는 양자화된 변환 블록의 계수들을 스캐닝하여 1차원의 양자화 계수들로 변환한다. 양자화 후의 변환 블록의 계수 분포가 인트라 예측 모드에 의존적일 수 있으므로, 스캐닝 방식은 인트라 예측 모드에 따라 결정된다.The scanning unit scans the coefficients of the quantized transform block and converts them into one-dimensional quantization coefficients. Since the coefficient distribution of the transform block after quantization may be dependent on the intra prediction mode, the scanning scheme is determined according to the intra prediction mode.
또한, 계수 스캐닝 방식은 변환 단위의 크기에 따라 달리 결정될 수도 있다. 상기 스캔 패턴은 방향성 인트라 예측 모드에 따라 달라질 수 있다. 양자화 계수들의 스캔순서는 역방향으로 스캔한다.The coefficient scanning method may be determined depending on the size of the conversion unit. The scan pattern may vary according to the directional intra prediction mode. The scan order of the quantization coefficients is scanned in the reverse direction.
상기 양자화된 계수들이 복수개의 서브셋으로 분할된 경우에는 각각의 서브셋 내의 양자화 계수들에 동일한 스캔패턴을 적용한다. 서브셋 간의 스캔패턴은 지그재그 스캔 또는 대각선 스캔을 적용한다. 스캔 패턴은 DC를 포함하는 메인 서브셋으로부터 순방향으로 잔여 서브셋들로 스캔하는 것이 바람직하나, 그 역방향도 가능하다.When the quantized coefficients are divided into a plurality of subsets, the same scan pattern is applied to the quantization coefficients in each subset. The scan pattern between subset applies zigzag scan or diagonal scan. The scan pattern is preferably scanned to the remaining subsets in the forward direction from the main subset containing the DC, but vice versa.
또한, 서브셋 내의 양자화된 계수들의 스캔패턴과 동일하게 서브셋 간의 스캔패턴을 설정할 수도 있다. 이 경우, 서브셋 간의 스캔패턴이 인트라 예측 모드에 따라 결정된다. 한편, 부호기는 상기 변환 유닛내의 0이 아닌 마지막 양자화 계수의 위치를 나타낼 수 있는 정보를 복호기로 전송한다.In addition, a scan pattern between subsets can be set in the same manner as a scan pattern of quantized coefficients in a subset. In this case, the scan pattern between the sub-sets is determined according to the intra-prediction mode. On the other hand, the encoder transmits to the decoder information indicating the position of the last non-zero quantization coefficient in the transform unit.
각 서브셋 내의 0이 아닌 마지막 양자화 계수의 위치를 나타낼 수 있는 정보도 복호기로 전송할 수 있다.Information that can indicate the position of the last non-zero quantization coefficient in each subset can also be transmitted to the decoder.
역양자화(135)는 상기 양자화된 양자화 계수를 역양자화한다. 역변환부는 역양자화된 변환 계수를 공간 영역의 잔차 블록으로 복원한다. 가산기는 상기 역변환부에 의해 복원된 잔차블록과 인트라 예측부(169) 또는 인터 예측부(170)로부터의 수신된 예측 블록을 합쳐서 복원 블록을 생성한다.The inverse quantization unit 135 dequantizes the quantized quantized coefficients. The inverse transform unit restores the inversely quantized transform coefficients into residual blocks in the spatial domain. The adder combines the residual block reconstructed by the inverse transform unit with the
후처리부(171)는 복원된 픽쳐에 발생하는 블록킹 효과의 제거하기 위한 디블록킹 필터링 과정, 화소 단위로 원본 영상과의 차이값을 보완하기 위한 적응적 오프셋 적용 과정 및 코딩 유닛으로 원본 영상과의 차이값을 보완하기 위한 적응적 루프 필터링 과정을 수행한다.The
디블록킹 필터링 과정은 미리 정해진 크기 이상의 크기를 갖는 예측 유닛 및 변환 단위의 경계에 적용하는 것이 바람직하다. 상기 크기는 8x8일 수 있다. 상기 디블록킹 필터링 과정은 필터링할 경계(boundary)를 결정하는 단계, 상기 경계에 적용할 경계 필터링 강도(bounary filtering strength)를 결정하는 단계, 디블록킹 필터의 적용 여부를 결정하는 단계, 상기 디블록킹 필터를 적용할 것으로 결정된 경우, 상기 경계에 적용할 필터를 선택하는 단계를 포함한다.The deblocking filtering process is preferably applied to the boundary of a prediction unit and a conversion unit having a size larger than a predetermined size. The size may be 8x8. The deblocking filtering process may include determining a boundary to be filtered, determining a bounary filtering strength to be applied to the boundary, determining whether to apply a deblocking filter, And selecting a filter to be applied to the boundary if it is determined to apply the boundary.
상기 디블록킹 필터의 적용 여부는 i) 상기 경계 필터링 강도가 0보다 큰지 여부 및 ii) 상기 필터링할 경계에 인접한 2개의 블록(P 블록, Q블록) 경계 부분에서의 화소값들이 변화 정도를 나타내는 값이 양자화 파라미터에 의해 결정되는 제1 기준값보다 작은지 여부에 의해 결정된다.Whether or not the deblocking filter is applied is determined based on i) whether the boundary filtering strength is greater than 0 and ii) whether a pixel value at a boundary between two blocks adjacent to the boundary to be filtered (P block, Q block) Is smaller than a first reference value determined by the quantization parameter.
상기 필터는 적어도 2개 이상인 것이 바람직하다. 블록 경계에 위치한 2개의 화소들간의 차이값의 절대값이 제2 기준값보다 크거나 같은 경우에는 상대적으로 약한 필터링을 수행하는 필터를 선택한다.The filter is preferably at least two or more. If the absolute value of the difference between two pixels located at the block boundary is greater than or equal to the second reference value, a filter that performs relatively weak filtering is selected.
상기 제2 기준값은 상기 양자화 파라미터 및 상기 경계 필터링 강도에 의해 결정된다.And the second reference value is determined by the quantization parameter and the boundary filtering strength.
적응적 오프셋 적용 과정은 디블록킹 필터가 적용된 영상내의 화소와 원본 화소간의 차이값(distortion)을 감소시키기 위한 것이다. 픽쳐 또는 슬라이스 단위로 상기 적응적 오프셋 적용 과정을 수행할지 여부를 결정할 수 있다.The adaptive offset application process is to reduce a distortion between a pixel in the image to which the deblocking filter is applied and the original pixel. It may be determined whether to perform the adaptive offset applying process in units of pictures or slices.
픽쳐 또는 슬라이스는 복수개의 오프셋 영역들로 분할될 수 있고, 각 오프셋 영역별로 오프셋 타입이 결정될 수 있다. 오프셋 타입은 미리 정해진 개수(예를 들어, 4개)의 에지 오프셋 타입과 2개의 밴드 오프셋 타입을 포함할 수 있다.The picture or slice may be divided into a plurality of offset regions, and an offset type may be determined for each offset region. The offset type may include a predetermined number (e.g., four) of edge offset types and two band offset types.
오프셋 타입이 에지 오프셋 타입일 경우에는 각 화소가 속하는 에지 타입을 결정하여, 이에 대응하는 오프셋을 적용한다. 상기 에지 타입은 현재 화소와 인접하는 2개의 화소값의 분포를 기준으로 결정한다.If the offset type is an edge offset type, the edge type to which each pixel belongs is determined and the corresponding offset is applied. The edge type is determined based on the distribution of two pixel values adjacent to the current pixel.
적응적 루프 필터링 과정은 디블록킹 필터링 과정 또는 적응적 오프셋 적용 과정을 거친 복원된 영상과 원본 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 적응적 루프 필터링은 상기 결정된 ALF는 4x4 크기 또는 8x8 크기의 블록에 포함된 화소 전체에 적용될 수 있다.The adaptive loop filtering process can perform filtering based on a value obtained by comparing a reconstructed image and an original image through a deblocking filtering process or an adaptive offset applying process. The adaptive loop filtering can be applied to the entire pixels included in the 4x4 block or the 8x8 block.
적응적 루프 필터의 적용 여부는 코딩 유닛별로 결정될 수 있다. 각 코딩 유닛에 따라 적용될 루프 필터의 크기 및 계수는 달라질 수 있다. 코딩 유닛별 상기 적응적 루프 필터의 적용 여부를 나타내는 정보는 각 슬라이스 헤더에 포함될 수 있다.Whether or not the adaptive loop filter is applied can be determined for each coding unit. The size and the coefficient of the loop filter to be applied may vary depending on each coding unit. Information indicating whether or not the adaptive loop filter is applied to each coding unit may be included in each slice header.
색차 신호의 경우에는, 픽쳐 단위로 적응적 루프 필터의 적용 여부를 결정할 수 있다. 루프 필터의 형태도 휘도와 달리 직사각형 형태를 가질 수 있다.In the case of the color difference signal, it is possible to determine whether or not the adaptive loop filter is applied in units of pictures. The shape of the loop filter may have a rectangular shape unlike the luminance.
적응적 루프 필터링은 슬라이스별로 적용 여부를 결정할 수 있다. 따라서, 현재 슬라이스에 적응적 루프 필터링이 적용되는지 여부를 나타내는 정보는 슬라이스 헤더 또는 픽쳐 헤더에 포함된다.Adaptive loop filtering can be applied on a slice-by-slice basis. Therefore, information indicating whether or not adaptive loop filtering is applied to the current slice is included in the slice header or the picture header.
현재 슬라이스에 적응적 루프 필터링이 적용됨을 나타내면, 슬라이스 헤더 또는 픽쳐 헤더는 추가적으로 적응적 루프 필터링 과정에 사용되는 휘도 성분의 수평 및/또는 수직 방향의 필터 길이를 나타내는 정보를 포함한다.If the current slice indicates that adaptive loop filtering is applied, the slice header or picture header additionally includes information indicating the horizontal and / or vertical direction filter length of the luminance component used in the adaptive loop filtering process.
슬라이스 헤더 또는 픽쳐 헤더는 필터 세트의 수를 나타내는 정보를 포함할 수 있다. 이때 필터 세트의 수가 2 이상이면, 필터 계수들이 예측 방법을 사용하여 부호화될 수 있다. 따라서, 슬라이스 헤더 또는 픽쳐 헤더는 필터 계수들이 예측 방법으로 부호화되는지 여부를 나타내는 정보를 포함할 수 있으며, 예측 방법이 사용되는 경우에는 예측된 필터 계수를 포함한다.The slice header or picture header may include information indicating the number of filter sets. At this time, if the number of filter sets is two or more, the filter coefficients can be encoded using the prediction method. Accordingly, the slice header or the picture header may include information indicating whether or not the filter coefficients are encoded in the prediction method, and may include predicted filter coefficients when the prediction method is used.
한편, 휘도 뿐만 아니라, 색차 성분들도 적응적으로 필터링될 수 있다. 따라서, 색차 성분 각각이 필터링되는지 여부를 나타내는 정보를 슬라이스 헤더 또는 픽쳐 헤더가 포함할 수 있다. 이 경우, 비트수를 줄이기 위해 Cr과 Cb에 대한 필터링 여부를 나타내는 정보를 조인트 코딩(즉, 다중화 코딩)할 수 있다.On the other hand, not only luminance but also chrominance components can be adaptively filtered. Accordingly, the slice header or the picture header may include information indicating whether or not each of the color difference components is filtered. In this case, in order to reduce the number of bits, information indicating whether or not to filter Cr and Cb can be joint-coded (i.e., multiplexed coding).
이때, 색차 성분들의 경우에는 복잡도 감소를 위해 Cr과 Cb를 모두 필터링하지 않는 경우가 가장 빈번할 가능성이 높으므로, Cr과 Cb를 모두 필터링하지 않는 경우에 가장 작은 인덱스를 할당하여 엔트로피 부호화를 수행한다.At this time, in the case of chrominance components, since Cr and Cb are not all filtered in order to reduce the complexity, it is most likely to be the most frequent. Therefore, if Cr and Cb are not all filtered, the smallest index is allocated and entropy encoding is performed .
그리고, Cr 및 Cb를 모두 필터링하는 경우에 가장 큰 인덱스를 할당하여 엔트로피 부호화를 수행한다.When both Cr and Cb are filtered, the largest index is allocated and entropy encoding is performed.
픽쳐 저장부(172)는 후처리된 영상 데이터를 후처리부(171)로부터 입력받아 픽쳐(picture) 단위로 영상을 복원하여 저장한다. 픽쳐는 프레임 단위의 영상이거나 필드 단위의 영상일 수 있다. 픽쳐 저장부(172)는 다수의 픽쳐를 저장할 수 있는 버퍼(도시되지 않음)를 구비한다.The
인터 예측부(170)는 상기 픽쳐 저장부(172)에 저장된 적어도 하나 이상의 참조 픽쳐를 이용하여 움직임 추정을 수행하고, 참조 픽쳐를 나타내는 참조 픽쳐 인덱스 및 움직임 벡터를 결정한다.The
그리고, 결정된 참조 픽쳐 인덱스 및 움직임 벡터에 따라, 픽쳐 저장부(172)에 저장된 다수의 참조 픽쳐들 중 움직임 추정에 이용된 참조 픽쳐로부터, 부호화하고자 하는 예측 유닛에 대응하는 예측 블록을 추출하여 출력한다.Then, based on the determined reference picture index and motion vector, a prediction block corresponding to the prediction unit to be coded is extracted from the reference pictures used for motion estimation among a plurality of reference pictures stored in the
인트라 예측부(169)는 현재 예측 유닛이 포함되는 픽처 내부의 재구성된 화소값을 이용하여 인트라 예측 부호화를 수행한다.The
인트라 예측부(169)는 예측 부호화할 현재 예측 유닛을 입력받아 현재 블록의 크기에 따라 미리 설정된 개수의 인트라 예측 모드 중에 하나를 선택하여 인트라 예측을 수행한다.The
인트라 예측부(169)는 인트라 예측 블록을 생성하기 위해 참조 화소를 적응적으로 필터링한다. 참조 화소가 이용 가능하지 않은 경우에는 이용 가능한 참조 화소들을 이용하여 참조 화소들을 생성할 수 있다.The
엔트로피 부호화부는 양자화부에 의해 양자화된 양자화 계수, 인트라 예측부(169)로부터 수신된 인트라 예측 정보, 인터 예측부(170)로부터 수신된 움직임 정보 등을 엔트로피 부호화한다.The entropy encoding unit entropy-codes quantization coefficients quantized by the quantization unit, intra prediction information received from the
도시되지는 않았으나, 인터 예측 부호화 장치는 움직임 정보 결정부, 움직임 정보 부호화 모드 결정부, 움직임 정보 부호화부, 예측 블록 생성부, 잔차 블록 생성부, 잔차 블록 부호화부 및 멀티플렉서를 포함하여 구성될 수 있다.Although not shown, the inter prediction coding apparatus may include a motion information determination unit, a motion information coding mode determination unit, a motion information coding unit, a prediction block generation unit, a residual block generation unit, a residual block coding unit, and a multiplexer .
움직임 정보 결정부는 현재 블록의 움직임 정보를 결정한다. 움직임 정보는 참조 픽쳐 인덱스와 움직임 벡터를 포함한다. 참조 픽쳐 인덱스는 이전에 부호화되어 복원된 픽쳐 중 어느 하나를 나타낸다.The motion information determination unit determines the motion information of the current block. The motion information includes a reference picture index and a motion vector. The reference picture index indicates any one of the previously coded and reconstructed pictures.
현재 블록이 단방향 인터 예측 부호화되는 경우에는 리스트 0(L0)에 속하는 참조 픽쳐들 중의 어느 하나를 나타낸다. 반면에, 현재 블록이 양방향 예측 부호화되는 경우에는 리스트 0(L0)의 참조 픽쳐들 중 하나를 나타내는 참조픽쳐 인덱스와 리스트 1(L1)의 참조 픽쳐들 중의 하나를 나타내는 참조픽쳐 인덱스를 포함할 수 있다.And indicates one of the reference pictures belonging to the list 0 (L0) when the current block is unidirectionally inter-predictive-coded. On the other hand, when the current block is bi-directionally predictive-coded, a reference picture index indicating one of the reference pictures of the list 0 (L0) and a reference picture index indicating one of the reference pictures of the list 1 (L1) .
또한, 현재 블록이 양방향 예측 부호화되는 경우에는 리스트 0과 리스트 1을 결합하여 생성된 복합 리스트(LC)의 참조 픽쳐들 중의 1개 또는 2개의 픽쳐를 나타내는 인덱스를 포함할 수 있다.In addition, when the current block is bi-directionally predictive-coded, it may include an index indicating one or two pictures among the reference pictures of the composite list LC generated by combining the
움직임 벡터는 각각의 참조픽쳐 인덱스가 나타내는 픽쳐 내의 예측 블록의 위치를 나타낸다. 움직임 벡터는 화소단위(정수단위)일수도 있으나, 서브화소단위일 수도 있다.The motion vector indicates the position of the prediction block in the picture indicated by each reference picture index. The motion vector may be a pixel unit (integer unit) or a sub-pixel unit.
예를 들어, 1/2, 1/4, 1/8 또는 1/16 화소의 해상도를 가질 수 있다. 움직임 벡터가 정수단위가 아닐 경우에는 예측 블록은 정수 단위의 화소들로부터 생성된다.For example, it may have a resolution of 1/2, 1/4, 1/8 or 1/16 pixels. When the motion vector is not an integer unit, the prediction block is generated from the pixels of the integer unit.
움직임 정보 부호화 모드 결정부는 현재 블록의 움직임 정보를 스킵 모드로 부호화할지, 머지 모드로 부호화할지, AMVP 모드로 부호화할지를 결정한다.The motion information encoding mode determination unit determines whether motion information of the current block is coded in a skip mode, a merge mode, or an AMVP mode.
스킵 모드는 현재 블록의 움직임 정보와 동일한 움직임 정보를 갖는 스킵 후보자가 존재하고, 잔차신호가 0인 경우에 적용된다. 또한, 스킵 모드는 현재 블록이 코딩 유닛과 사이즈가 같을 때 적용된다. 현재 블록은 예측 유닛으로 볼 수 있다.The skip mode is applied when there is a skip candidate having the same motion information as the current block motion information, and the residual signal is zero. The skip mode is also applied when the current block is the same size as the coding unit. The current block can be viewed as a prediction unit.
머지 모드는 현재 블록의 움직임 정보와 동일한 움직임 정보를 갖는 머지 후보자가 존재할 때 적용된다. 머지 모드는 현재 블록이 코딩 유닛과 사이즈가 다르거나, 사이즈가 같을 경우에는 잔차 신호가 존재하는 경우에 적용된다. 머지 후보자와 스킵 후보자는 동일할 수 있다.The merge mode is applied when there is a merge candidate having the same motion information as the current block motion information. The merge mode is applied when there is a residual signal when the current block is different in size from the coding unit or the size is the same. The merge candidate and the skip candidate can be the same.
AMVP 모드는 스킵 모드 및 머지 모드가 적용되지 않을 때 적용된다. 현재 블록의 움직임 벡터와 가장 유사한 움직임 벡터를 갖는 AMVP 후보자를 AMVP 예측자로 선택한다.AMVP mode is applied when skip mode and merge mode are not applied. The AMVP candidate having the motion vector most similar to the motion vector of the current block is selected as the AMVP predictor.
움직임 정보 부호화부는 움직임 정보 부호화 모드 결정부에 의해 결정된 방식에 따라 움직임 정보를 부호화한다. 움직임 정보 부호화 모드가 스킵 모드 또는 머지 모드일 경우에는 머지 움직임 벡터 부호화 과정을 수행한다. 움직임 정보 부호화 모드가 AMVP일 경우에는 AMVP 부호화 과정을 수행한다.The motion information encoding unit encodes motion information according to a method determined by the motion information encoding mode determining unit. When the motion information encoding mode is a skip mode or a merge mode, a merge motion vector encoding process is performed. When the motion information encoding mode is AMVP, the AMVP encoding process is performed.
예측 블록 생성부는 현재 블록의 움직임 정보를 이용하여 예측 블록을 생성한다. 움직임 벡터가 정수 단위일 경우에는, 참조픽쳐 인덱스가 나타내는 픽쳐 내의 움직임 벡터가 나타내는 위치에 대응하는 블록을 복사하여 현재 블록의 예측 블록을 생성한다.The prediction block generation unit generates a prediction block using the motion information of the current block. If the motion vector is an integer unit, the block corresponding to the position indicated by the motion vector in the picture indicated by the reference picture index is copied to generate a prediction block of the current block.
그러나, 움직임 벡터가 정수 단위가 아닐 경우에는, 참조픽쳐 인덱스가 나타내는 픽쳐내의 정수 단위 화소들로 부터 예측 블록의 화소들을 생성한다.However, when the motion vector is not an integer unit, the pixels of the prediction block are generated from the pixels in the integer unit in the picture indicated by the reference picture index.
이 경우, 휘도 화소의 경우에는 8탭의 보간 필터를 사용하여 예측 화소를 생성할 수 있다. 색차 화소의 경우에는 4탭 보간 필터를 사용하여 예측 화소를 생성할 수 있다.In this case, in the case of a luminance pixel, a prediction pixel can be generated using an 8-tap interpolation filter. In the case of a chrominance pixel, a 4-tap interpolation filter can be used to generate a predictive pixel.
잔차 블록 생성부는 현재 블록과 현재 블록의 예측 블록을 이용하여 잔차 블록을 생성한다. 현재 블록의 크기가 2Nx2N인 경우에는 현재 블록과 현재 블록에 대응하는 2Nx2N 크기의 예측 블록을 이용하여 잔차 블록을 생성한다.The residual block generator uses residual blocks of the current block and the current block to generate residual blocks. If the current block size is 2Nx2N, a residual block is generated using a 2Nx2N prediction block corresponding to the current block and the current block.
그러나, 예측에 이용되는 현재 블록의 크기가 2NxN 또는 Nx2N인 경우에는 2Nx2N을 구성하는 2개의 2NxN 블록 각각에 대한 예측 블록을 구한 후, 상기 2개의 2NxN 예측 블록을 이용하여 2Nx2N 크기의 최종 예측 블록을 생성할 수 있다.However, if the current block size used for prediction is 2NxN or Nx2N, a prediction block for each of the 2NxN blocks constituting 2Nx2N is obtained, and the 2Nx2N final prediction block using the 2NxN prediction blocks is calculated Can be generated.
그리고, 상기 2Nx2N 크기의 예측 블록을 이용하여 2Nx2N 의 잔차 블록을 생성할 수도 있다. 2NxN 크기의 2개의 예측블록들의 경계부분의 불연속성을 해소하기 위해 경계 부분의 픽셀들을 오버랩 스무딩할 수 있다.The 2Nx2N residual block may be generated using the 2Nx2N prediction block. It is possible to overlap-smoothing the pixels of the boundary portion to solve the discontinuity of the boundary portion of 2NxN-sized two prediction blocks.
잔차 블록 부호화부는 생성된 잔차 블록을 하나 이상의 변환 유닛으로 나눈다. 그리고, 각 변환 유닛을 변환 부호화, 양자화 및 엔트로피 부호화된다. 이때, 변환 유닛의 크기는 잔차 블록의 크기에 따라 쿼드트리 방식으로 결정될 수 있다.The residual block coding unit divides the generated residual block into one or more conversion units. Then, each conversion unit is transcoded, quantized, and entropy encoded. At this time, the size of the conversion unit may be determined according to the size of the residual block in a quadtree manner.
잔차 블록 부호화부는 인터 예측 방법에 의해 생성된 잔차 블록을 정수기반 변환 매트릭스를 이용하여 변환한다. 상기 변환 매트릭스는 정수기반 DCT 매트릭스이다.The residual block coding unit transforms the residual block generated by the inter prediction method using an integer-based transform matrix. The transform matrix is an integer-based DCT matrix.
잔차 블록 부호화부는 상기 변환 매트릭스에 의해 변환된 잔차 블록의 계수들을 양자화하기 위해 양자화 매트릭스를 이용한다. 상기 양자화 매트릭스는 양자화 파라미터에 의해 결정된다.The residual block coding unit uses a quantization matrix to quantize the coefficients of the residual block transformed by the transform matrix. The quantization matrix is determined by a quantization parameter.
상기 양자화 파라미터는 미리 정해진 크기 이상의 코딩 유닛별로 결정된다. 상기 미리 정해진 크기는 8x8 또는 16x16일 수 있다. 따라서, 현재 코딩 유닛이 상기 미리 정해진 크기보다 작은 경우에는 상기 미리 정해진 크기 내의 복수개의 코딩 유닛 중 부호화 순서상 첫번째 코딩 유닛의 양자화 파라미터만을 부호화하고, 나머지 코딩 유닛의 양자화 파라미터는 상기 파라미터와 동일하므로 부호화할 필요가 없다.The quantization parameter is determined for each coding unit equal to or larger than a predetermined size. The predetermined size may be 8x8 or 16x16. Therefore, when the current coding unit is smaller than the predetermined size, only the quantization parameters of the first coding unit are encoded in the coding order among the plurality of coding units within the predetermined size, and the quantization parameters of the remaining coding units are the same as the parameters. You do not have to.
그리고, 결정된 양자화 파라미터 및 예측 모드에 따라 결정되는 양자화 매트릭스를 이용하여 상기 변환 블록의 계수들을 양자화한다.The coefficients of the transform block are quantized using a quantization matrix determined according to the determined quantization parameter and the prediction mode.
상기 미리 정해진 크기 이상의 코딩 유닛별로 결정되는 양자화 파라미터는 현재 코딩 유닛에 인접한 코딩 유닛의 양자화 파라미터를 이용하여 예측 부호화된다. 현재 코딩 유닛의 좌측 코딩 유닛, 상측 코딩 유닛 순서로 검색하여 유효한 1개 또는 2개의 유효한 양자화 파라미터를 이용하여 현재 코딩 유닛의 양자화 파라미터 예측자를 생성할 수 있다.The quantization parameter determined for each coding unit equal to or larger than the predetermined size is predictively encoded using a quantization parameter of a coding unit adjacent to the current coding unit. A quantization parameter predictor of the current coding unit can be generated by searching the left coding unit of the current coding unit, the upper coding unit order, and using one or two valid quantization parameters available.
예를 들어, 상기 순서로 검색된 유효한 첫번째 양자화 파라미터를 양자화 파라미터 예측자로 결정할 수 있다. 또한, 좌측 코딩 유닛, 부호화 순서상 바로 이전의 코딩 유닛 순으로 검색하여 유효한 첫번째 양자화 파라미터를 양자화 파라미터 예측자로 결정할 수 있다.For example, a valid first quantization parameter retrieved in the above order may be determined as a quantization parameter predictor. In addition, the first coding unit may be searched in order of the coding unit immediately before in the coding order, and the first validation parameter may be determined as a quantization parameter predictor.
양자화된 변환 블록의 계수들은 스캐닝되어 1차원의 양자화 계수들로 변환한다. 스캐닝 방식은 엔트로피 부호화 모드에 따라 달리 설정될 수 있다. 예를 들어, CABAC으로 부호화될 경우에는 인터 예측 부호화된 양자화 계수들은 미리 정해진 하나의 방식(지그재그, 또는 대각선 방향으로의 래스터 스캔)으로 스캐닝될 수 있다. 반면에 CAVLC으로 부호화될 경우에는 상기 방식과 다른 방식으로 스캐닝될 수 있다.The coefficients of the quantized transform block are scanned and converted into one-dimensional quantization coefficients. The scanning scheme can be set differently according to the entropy encoding mode. For example, in the case of CABAC encoding, the inter prediction encoded quantized coefficients can be scanned in a predetermined manner (zigzag or raster scan in the diagonal direction). On the other hand, when encoded by CAVLC, it can be scanned in a different manner from the above method.
예를 들어, 스캐닝 방식이 인터의 경우에는 지그재그, 인트라의 경우에는 인트라 예측 모드에 따라 결정될 수 있다. 또한, 계수 스캐닝 방식은 변환 단위의 크기에 따라 달리 결정될 수도 있다.For example, the scanning method may be determined according to the intra-prediction mode in the case of interlacing, or the intra-prediction mode in the case of intra. The coefficient scanning method may be determined depending on the size of the conversion unit.
상기 스캔 패턴은 방향성 인트라 예측 모드에 따라 달라질 수 있다. 양자화 계수들의 스캔순서는 역방향으로 스캔한다.The scan pattern may vary according to the directional intra prediction mode. The scan order of the quantization coefficients is scanned in the reverse direction.
멀티플렉서는 상기 움직임 정보 부호화부에 의해 부호화된 움직임 정보들과 상기 잔차 블록 부호화부에 의해 부호화된 잔차 신호들을 다중화한다. 상기 움직임 정보는 부호화 모드에 따라 달라질 수 있다.The multiplexer multiplexes the motion information encoded by the motion information encoding unit and the residual signals encoded by the residual block encoding unit. The motion information may vary depending on the encoding mode.
즉, 스킵 또는 머지일 경우에는 예측자를 나타내는 인덱스만을 포함한다. 그러나, AMVP일 경우에는 현재 블록의 참조 픽쳐 인덱스, 차분 움직임 벡터 및 AMVP 인덱스를 포함한다.That is, in the case of skipping or merge, only the index indicating the predictor is included. However, in the case of AMVP, the reference picture index, the difference motion vector, and the AMVP index of the current block are included.
이하, 인트라 예측부(169)의 동작에 대한 일실시예를 상세히 설명하기로 한다.Hereinafter, one embodiment of the operation of the
먼저, 픽쳐 분할부(160)에 의해 예측 모드 정보 및 예측 블록의 크기를 수신하며, 예측 모드 정보는 인트라 모드를 나타낸다. 예측 블록의 크기는 64x64, 32x32, 16x16, 8x8, 4x4등의 정방형일 수 있으나, 이에 한정하지 않는다. 즉, 상기 예측 블록의 크기가 정방형이 아닌 비정방형일 수도 있다. First, the
다음으로, 예측 블록의 인트라 예측 모드를 결정하기 위해 참조 화소를 픽쳐 저장부(172)로부터 읽어 들인다.Next, the reference pixels are read from the
상기 이용 가능하지 않은 참조화소가 존재하는지 여부를 검토하여 참조 화소 생성 여부를 판단한다. 상기 참조 화소들은 현재 블록의 인트라 예측 모드를 결정하는데 사용된다.It is determined whether or not the reference pixel is generated by examining whether or not the unavailable reference pixel exists. The reference pixels are used to determine the intra prediction mode of the current block.
현재 블록이 현재 픽쳐의 상측 경계에 위치하는 경우에는 현재 블록의 상측에 인접한 화소들이 정의되지 않는다. 또한, 현재 블록이 현재 픽쳐의 좌측 경계에 위치하는 경우에는 현재 블록의 좌측에 인접한 화소들이 정의되지 않는다.If the current block is located at the upper boundary of the current picture, pixels adjacent to the upper side of the current block are not defined. In addition, when the current block is located at the left boundary of the current picture, pixels adjacent to the left side of the current block are not defined.
이러한 화소들은 이용 가능한 화소들이 아닌 것으로 판단한다. 또한, 현재 블록이 슬라이스 경계에 위치하여 슬라이스의 상측 또는 좌측에 인접하는 화소들이 먼저 부호화되어 복원되는 화소들이 아닌 경우에도 이용 가능한 화소들이 아닌 것으로 판단한다.It is determined that these pixels are not usable pixels. In addition, it is determined that the pixels are not usable even if the current block is located at the slice boundary and pixels adjacent to the upper or left side of the slice are not encoded and reconstructed.
상기와 같이 현재 블록의 좌측 또는 상측에 인접한 화소들이 존재하지 않거나, 미리 부호화되어 복원된 화소들이 존재하지 않는 경우에는 이용 가능한 화소들만을 이용하여 현재 블록의 인트라 예측 모드를 결정할 수도 있다.As described above, if there are no pixels adjacent to the left or upper side of the current block, or if there are no pixels that have been previously coded and reconstructed, the intra prediction mode of the current block may be determined using only available pixels.
그러나, 현재 블록의 이용 가능한 참조화소들을 이용하여 이용 가능하지 않은 위치의 참조화소들을 생성할 수도 있다. 예를 들어, 상측 블록의 화소들이 이용 가능하지 않은 경우에는 좌측 화소들의 일부 또는 전부를 이용하여 상측 화소들을 생성할 수 있고, 그 역으로도 가능하다.However, it is also possible to use the available reference pixels of the current block to generate reference pixels of unusable positions. For example, if the pixels of the upper block are not available, the upper pixels may be created using some or all of the left pixels, or vice versa.
즉, 이용 가능하지 않은 위치의 참조화소로부터 미리 정해진 방향으로 가장 가까운 위치의 이용 가능한 참조화소를 복사하여 참조화소로 생성할 수 있다. 미리 정해진 방향에 이용 가능한 참조화소가 존재하지 않는 경우에는 반대 방향의 가장 가까운 위치의 이용 가능한 참조화소를 복사하여 참조화소로 생성할 수 있다.That is, available reference pixels at positions closest to the predetermined direction from the reference pixels at unavailable positions can be copied and generated as reference pixels. When there is no usable reference pixel in a predetermined direction, the usable reference pixel at the closest position in the opposite direction can be copied and generated as a reference pixel.
한편, 현재 블록의 상측 또는 좌측 화소들이 존재하는 경우에도 상기 화소들이 속하는 블록의 부호화 모드에 따라 이용 가능하지 않은 참조 화소로 결정될 수 있다.On the other hand, even if the upper or left pixels of the current block exist, the reference pixel may be determined as an unavailable reference pixel according to the encoding mode of the block to which the pixels belong.
예를 들어, 현재 블록의 상측에 인접한 참조 화소가 속하는 블록이 인터 부호화되어 복원된 블록일 경우에는 상기 화소들을 이용 가능하지 않은 화소들로 판단할 수 있다.For example, if the block to which the reference pixel adjacent to the upper side of the current block belongs is inter-coded and the reconstructed block, the pixels can be determined as unavailable pixels.
이 경우에는 현재 블록에 인접한 블록이 인트라 부호화되어 복원된 블록에 속하는 화소들을 이용하여 이용 가능한 참조 화소들을 생성할 수 있다. 이 경우에는 부호기에서 부호화 모드에 따라 이용 가능한 참조 화소를 판단한다는 정보를 복호기로 전송해야 한다.In this case, it is possible to generate usable reference pixels by using pixels belonging to the restored block by intra-coded blocks adjacent to the current block. In this case, information indicating that the encoder determines available reference pixels according to the encoding mode must be transmitted to the decoder.
다음으로, 상기 참조 화소들을 이용하여 현재 블록의 인트라 예측 모드를 결정한다. 현재 블록에 허용 가능한 인트라 예측 모드의 수는 블록의 크기에 따라 달라질 수 있다. 예를 들어, 현재 블록의 크기가 8x8, 16x16, 32x32인 경우에는 34개의 인트라 예측 모드가 존재할 수 있고, 현재 블록의 크기가 4x4인 경우에는 17개의 인트라 예측 모드가 존재할 수 있다.Next, an intra prediction mode of the current block is determined using the reference pixels. The number of intra prediction modes that can be allowed in the current block may vary depending on the size of the block. For example, if the current block size is 8x8, 16x16, or 32x32, there may be 34 intra prediction modes. If the current block size is 4x4, 17 intra prediction modes may exist.
상기 34개 또는 17개의 인트라 예측 모드는 적어도 하나 이상의 비방향성 모드(non-directional mode)와 복수개의 방향성 모드들(directional modes)로 구성될 수 있다.The 34 or 17 intra prediction modes may include at least one non-directional mode and a plurality of directional modes.
하나 이상의 비방향성 모드는 DC 모드 및/또는 플래너(planar) 모드일수 있다. DC 모드 및 플래너모드가 비방향성 모드로 포함되는 경우에는, 현재 블록의 크기에 관계없이 35개의 인트라 예측 모드가 존재할 수도 있다.The one or more non-directional modes may be a DC mode and / or a planar mode. When the DC mode and the planar mode are included in the non-directional mode, there may be 35 intra-prediction modes regardless of the size of the current block.
이 때에는 2개의 비방향성 모드(DC 모드 및 플래너 모드)와 33개의 방향성 모드를 포함할 수 있다.At this time, it may include two non-directional modes (DC mode and planar mode) and 33 directional modes.
플래너 모드는 현재 블록의 우하측(bottom-right)에 위치하는 적어도 하나의 화소값(또는 상기 화소값의 예측값, 이하 제1 참조값이라 함)과 참조화소들을 이용하여 현재 블록의 예측 블록을 생성한다.The planner mode generates a prediction block of the current block using at least one pixel value (or a predicted value of the pixel value, hereinafter referred to as a first reference value) located at the bottom-right of the current block and the reference pixels .
상기한 바와 같이, 본 발명의 일실시예에 따른 동영상 복호화 장치의 구성은 도 1, 2 및 도 31을 참조하여 설명한 동영상 부호화 장치의 구성으로부터 도출될 수 있으며, 예를 들어 도 2 및 도 31을 참조하여 설명한 바와 같은 부호화 과정의 역과정을 수행함으로써 영상을 복호화할 수 있다.As described above, the configuration of the moving picture decoding apparatus according to an embodiment of the present invention can be derived from the configuration of the moving picture coding apparatus described with reference to FIGS. 1, 2, and 31. For example, The image can be decoded by performing an inverse process of the encoding process as described with reference to FIG.
도 32는 본 발명의 일실시예에 따른 동영상 복호화 장치의 구성을 블록도로 도시한 것이다.32 is a block diagram illustrating a configuration of a moving picture decoding apparatus according to an embodiment of the present invention.
도 32를 참조하면, 본 발명에 따른 동영상 복호화 장치는, 엔트로피 복호화부(210), 역양자화/역변환부(220), 가산기(270), 디블록킹 필터(250), 픽쳐 저장부(260), 인트라 예측부(230), 움직임 보상 예측부(240) 및 인트라/인터전환 스위치(280)를 구비한다.32, the moving picture decoding apparatus according to the present invention includes an
엔트로피 복호화부(210)는, 동영상 부호화 장치로부터 전송되는 부호화 비트 스트림을 복호하여, 인트라 예측 모드 인덱스, 움직임 정보, 양자화 계수 시퀀스 등으로 분리한다. 엔트로피 복호화부(210)는 복호된 움직임 정보를 움직임 보상 예측부(240)에 공급한다.The
엔트로피 복호화부(210)는 상기 인트라 예측 모드 인덱스를 상기 인트라 예측부(230), 역양자화/역변환부(220)로 공급한다. 또한, 상기 엔트로피 복호화부(210)는 상기 역양자화 계수 시퀀스를 역양자화/역변환부(220)로 공급한다.The
역양자화/역변환부(220)는 상기 양자화 계수 시퀀스를 2차원 배열의 역양자화 계수로 변환한다. 상기 변환을 위해 복수개의 스캐닝 패턴 중에 하나를 선택한다. 현재 블록의 예측모드(즉, 인트라 예측 및 인터 예측 중의 어느 하나)와 인트라 예측 모드 중 적어도 하나에 기초하여 복수개의 스캐닝 패턴 중 하나를 선택한다.The inverse quantization /
상기 인트라 예측 모드는 인트라 예측부 또는 엔트로피 복호화부로부터 수신한다.The intraprediction mode is received from an intraprediction unit or an entropy decoding unit.
역양자화/역변환부(220)는 상기 2차원 배열의 역양자화 계수에 복수개의 양자화 매트릭스 중 선택된 양자화 매트릭스를 이용하여 양자화 계수를 복원한다. 복원하고자 하는 현재 블록의 크기에 따라 서로 다른 양자화 매트릭스가 적용되며, 동일 크기의 블록에 대해서도 상기 현재 블록의 예측 모드 및 인트라 예측 모드 중 적어도 하나에 기초하여 양자화 매트릭스를 선택한다.The inverse quantization /
그리고, 상기 복원된 양자화 계수를 역변환하여 잔차 블록을 복원한다.Then, the reconstructed quantized coefficient is inversely transformed to reconstruct the residual block.
가산기(270)는 역양자화/역변환부(220)에 의해 복원된 잔차 블록과 인트라 예측부(230) 또는 움직임 보상 예측부(240)에 의해 생성되는 예측 블록을 가산함으로써, 영상 블록을 복원한다.The
디블록킹 필터(250)는 가산기(270)에 의해 생성된 복원 영상에 디블록킹 필터 처리를 실행한다. 이에 따라, 양자화 과정에 따른 영상 손실에 기인하는 디블록킹 아티펙트를 줄일 수 있다.The
픽쳐 저장부(260)는 디블록킹 필터(250)에 의해 디블록킹 필터 처리가 실행된 로컬 복호 영상을 유지하는 프레임 메모리이다.The
인트라 예측부(230)는 엔트로피 복호화부(210)로부터 수신된 인트라 예측 모드 인덱스에 기초하여 현재 블록의 인트라 예측 모드를 복원한다. 그리고, 복원된 인트라 예측 모드에 따라 예측 블록을 생성한다.The
움직임 보상 예측부(240)는 움직임 벡터 정보에 기초하여 픽쳐 저장부(260)에 저장된 픽쳐로부터 현재 블록에 대한 예측 블록을 생성한다. 소수 정밀도의 움직임 보상이 적용될 경우에는 선택된 보간 필터를 적용하여 예측 블록을 생성한다.The motion
인트라/인터 전환 스위치(280)는 부호화 모드에 기초하여 인트라 예측부(230)와 움직임 보상 예측부(240)의 어느 하나에서 생성된 예측 블록을 가산기(270)에 제공한다.The intra /
이와 같은 방식으로 복원된 현재 블록의 예측 블록과 복호화한 현재 블록의 잔차 블록을 이용하여 현재 블록이 복원된다.The current block is reconstructed using the predicted block of the current block restored in this manner and the residual block of the decoded current block.
본 발명의 일실시예에 따른 동영상 비트스트림은 하나의 픽처에서의 부호화된 데이터를 저장하는데 사용되는 단위로서, PS(parameter sets)와 슬라이스 데이터를 포함할 수 있다.The moving picture bitstream according to an embodiment of the present invention may include PS (parameter sets) and slice data as a unit used to store coded data in one picture.
PS(parameter sets)는, 각 픽처의 헤드에 상당하는 데이터인 픽처 파라미터 세트(이하 간단히 PPS라 한다)와 시퀀스 파라미터 세트(이하 간단히 SPS라 한다)로 분할된다. 상기 PPS와 SPS는 각 부호화를 초기화하는데 필요한 초기화 정보를 포함할 수 있으며, 본 발명의 실시 예에 따른 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)가 포함될 수 있다.A PS (parameter set) is divided into a picture parameter set (hereinafter, simply referred to as PPS) and a sequence parameter set (hereinafter simply referred to as SPS) which are data corresponding to the heads of each picture. The PPS and the SPS may include initialization information required to initialize each encoding, and may include SPATALAYOUT INFORMATION according to an embodiment of the present invention.
SPS는 램덤 액세스 유닛(RAU)으로 부호화된 모든 픽처를 복호화하기 위한 공통 참조 정보로서, 프로파일, 참조용으로 사용 가능한 픽처의 최대 수 및 픽처 크기 등을 포함할 수 있다.The SPS is common reference information for decoding all pictures coded in the random access unit (RAU), and may include a profile, a maximum number of pictures usable for reference, a picture size, and the like.
PPS는, 랜덤 액세스 유닛(RAU)으로 부호화된 각 픽처에 대해, 픽처를 복호화하기 위한 참조 정보로서 가변 길이 부호화 방법의 종류, 양자화 단계의 초기값 및 다수의 참조 픽처들을 포함할 수 있다.For each picture coded by the random access unit (RAU), the PPS may include a variable length coding method as reference information for decoding the picture, an initial value of the quantization step, and a plurality of reference pictures.
한편, 슬라이스 헤더(SH)는 슬라이스 단위의 코딩시 해당 슬라이스에 대한 정보를 포함한다.On the other hand, the slice header SH includes information on the corresponding slice when coding is performed on a slice basis.
상술한 본 발명에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다.The method according to the present invention may be implemented as a program for execution on a computer and stored in a computer-readable recording medium. Examples of the computer-readable recording medium include a ROM, a RAM, a CD- , A floppy disk, an optical data storage device, and the like.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer readable recording medium may be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And, functional programs, codes and code segments for implementing the above method can be easily inferred by programmers of the technical field to which the present invention belongs.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해 되어서는 안될 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It should be understood that various modifications may be made by those skilled in the art without departing from the spirit and scope of the present invention.
Claims (18)
동기화된 다시점 영상 비트스트림의 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 획득하는 단계;
클라이언트 시스템으로부터 시점(PERSPECTIVE) 인덱스를 포함하는 비트스트림 요청을 수신하는 단계; 및
상기 공간적 구조 정보에 기초하여, 상기 시점 인덱스에 대응되는 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 상기 클라이언트 시스템으로 전송하는 단계를 포함하는
미디어 스트림 제공 장치의 동작 방법.A method of operating a media stream providing apparatus,
Acquiring SPATALAYOUT INFORMATION of the synchronized multi-view image bitstream;
Receiving a bitstream request including a PERSPECTIVE index from a client system; And
And transmitting to the client system a PERSPECTIVE MEDIA BITSTREAM corresponding to the viewpoint index based on the spatial structure information
A method of operating a media stream providing apparatus.
상기 공간적 구조 정보에 기초하여, 동기화된 다시점 영상 비트스트림을 시점별로 분류하는 단계를 더 포함하는
미디어 스트림 제공 장치의 동작 방법.The method according to claim 1,
Further comprising the step of classifying the synchronized multi-view image bitstream by viewpoint based on the spatial structure information
A method of operating a media stream providing apparatus.
상기 공간적 구조 정보는 상기 시점 인덱스에 대응되는 장면 정보를 포함하는 시점 테이블(PERSPECTIVE TABLE)을 포함하며,
상기 분류하는 단계는,
상기 시점 테이블에 기초하여 상기 동기화된 다시점 영상 비트스트림을 각 시점별 영상 비트스트림으로 분류하는 단계를 포함하는
미디어 스트림 제공 장치의 동작 방법.3. The method of claim 2,
Wherein the spatial structure information includes a PERSPECTIVE TABLE including scene information corresponding to the viewpoint index,
Wherein said classifying comprises:
And classifying the synchronized multi-view image bitstream into image bitstreams for each viewpoint based on the viewpoint table
A method of operating a media stream providing apparatus.
상기 시점(PERSPECTIVE) 인덱스는
상기 클라이언트 시스템에서 처리되는 사용자 시점(PERSPECTIVE) 변화에 따라 결정되는 것을 특징으로 하는
미디어 스트림 제공 장치의 동작 방법.The method according to claim 1,
The PERSPECTIVE index
(PERSPECTIVE) change processed in the client system
A method of operating a media stream providing apparatus.
상기 클라이언트 시스템은 상기 시점(PERSPECTIVE) 인덱스를 결정하기 위한 사용자 장치의 움직임 정보를 분석하는
미디어 스트림 제공 장치의 동작 방법.5. The method of claim 4,
The client system analyzes the motion information of the user device to determine the PERSPECTIVE index
A method of operating a media stream providing apparatus.
상기 클라이언트 시스템으로부터 수신되는 시점 인덱스가 상기 사용자 시점 변화에 따라 변경되는 경우, 변경된 인덱스에 대응되는 제2 시점의 미디어 비트스트림을 상기 클라이언트 시스템으로 제공하는 단계를 더 포함하는
미디어 스트림 제공 장치의 동작 방법.5. The method of claim 4,
When the time index received from the client system is changed according to the change of the user view, providing the media bit stream of the second time point corresponding to the changed index to the client system
A method of operating a media stream providing apparatus.
상기 동기화된 다시점 영상은,
시간적으로 동기화된 비디오 프레임에 복수의 다시점 서브 이미지가 공간적 레이아웃에 따라 배치되는 영상인 것을 특징으로 하는
미디어 스트림 제공 장치의 동작 방법.The method according to claim 1,
The synchronized multi-
And a plurality of multi-view sub-images in a temporally synchronized video frame are arranged in accordance with a spatial layout.
A method of operating a media stream providing apparatus.
동기화된 다시점 영상 비트스트림의 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 획득하는 공간적 구조 정보 관리부; 및
클라이언트 시스템으로부터 시점(PERSPECTIVE) 인덱스를 포함하는 비트스트림 요청을 수신하면, 상기 공간적 구조 정보에 기초하여, 상기 시점 인덱스에 대응되는 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 상기 클라이언트 시스템으로 전송하는 비트스트림 제공부를 포함하는
미디어 스트림 제공 장치.1. A media stream providing apparatus,
A spatial structure information management unit for obtaining SPATIAL LAYOUT INFORMATION of the synchronized multi-view image bit stream; And
The method of claim 1, further comprising: receiving a bitstream request including a PERSPECTIVE index from a client system, the method comprising: generating a bitstream for transmitting a point-in-time media bitstream (PERSPECTIVE MEDIA BITSTREAM) Comprising
A media stream delivery device.
상기 비트스트림 제공부는,
상기 공간적 구조 정보에 기초하여, 동기화된 다시점 영상 비트스트림을 시점별로 분류하는
미디어 스트림 제공 장치.9. The method of claim 8,
Wherein the bitstream-
Based on the spatial structure information, the synchronized multi-view image bitstream is classified into viewpoints
A media stream delivery device.
상기 공간적 구조 정보는 상기 시점 인덱스에 대응되는 장면 정보를 포함하는 시점 테이블(PERSPECTIVE TABLE)을 포함하며,
상기 비트스트림 제공부는
상기 시점 테이블에 기초하여 상기 동기화된 다시점 영상 비트스트림을 각 시점별 영상 비트스트림으로 분류하는
미디어 스트림 제공 장치.10. The method of claim 9,
Wherein the spatial structure information includes a PERSPECTIVE TABLE including scene information corresponding to the viewpoint index,
The bitstream provider
The synchronized multi-view image bitstream is classified into image bitstreams at each viewpoint based on the viewpoint table
A media stream delivery device.
상기 시점(PERSPECTIVE) 인덱스는
상기 클라이언트 시스템에서 처리되는 사용자 시점(PERSPECTIVE) 변화에 따라 결정되는 것을 특징으로 하는
미디어 스트림 제공 장치.9. The method of claim 8,
The PERSPECTIVE index
(PERSPECTIVE) change processed in the client system
A media stream delivery device.
상기 클라이언트 시스템은 상기 시점(PERSPECTIVE) 인덱스를 결정하기 위한 사용자 장치의 움직임 정보를 분석하는
미디어 스트림 제공 장치.12. The method of claim 11,
The client system analyzes the motion information of the user device to determine the PERSPECTIVE index
A media stream delivery device.
상기 비트스트림 제공부는
상기 클라이언트 시스템으로부터 수신되는 시점 인덱스가 상기 사용자 시점 변화에 따라 변경되는 경우, 변경된 인덱스에 대응되는 제2 시점의 미디어 비트스트림을 상기 클라이언트 시스템으로 제공하는
미디어 스트림 제공 장치.12. The method of claim 11,
The bitstream provider
When the time index received from the client system is changed according to the change of the user view, a media bit stream of the second time point corresponding to the changed index is provided to the client system
A media stream delivery device.
상기 동기화된 다시점 영상은,
시간적으로 동기화된 비디오 프레임에 복수의 다시점 서브 이미지가 공간적 레이아웃에 따라 배치되는 영상인 것을 특징으로 하는
미디어 스트림 제공 장치.9. The method of claim 8,
The synchronized multi-
And a plurality of multi-view sub-images in a temporally synchronized video frame are arranged in accordance with a spatial layout.
A media stream delivery device.
서버로부터 동기화된 다시점 영상 비트스트림의 공간적 구조 정보(SPATIAL LAYOUT INFORMATION)를 수신하는 단계;
사용자의 시점(PERSPECTIVE)에 대응되는 시점 인덱스를 획득하여 상기 서버로 전송하는 단계;
상기 서버로부터 상기 시점 인덱스에 대응되는 제1 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 수신하는 단계; 및
상기 수신된 제1 시점 미디어 비트스트림을 복호화하는 단계를 포함하는
미디어 스트림의 복호화 방법.A method of decoding a media stream,
Receiving spatial structure information (SPATIAL LAYOUT INFORMATION) of a synchronized multi-view image bit stream from a server;
Acquiring a viewpoint index corresponding to a user's viewpoint (PERSPECTIVE) and transmitting the acquired viewpoint index to the server;
Receiving a first point-of-view media bit stream (PERSPECTIVE MEDIA BITSTREAM) corresponding to the viewpoint index from the server; And
And decoding the received first view media bit stream
A method of decoding a media stream.
상기 시점 인덱스는 사용자 시점에 대응되는 복수의 인덱스를 포함하고,
상기 수신하는 단계는 상기 복수의 시점 인덱스에 대응되는 복수의 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 병렬적으로 수신하는 단계를 포함하는
미디어 스트림의 복호화 방법.16. The method of claim 15,
Wherein the viewpoint index includes a plurality of indexes corresponding to a user viewpoint,
Wherein the receiving comprises receiving a plurality of point-of-view media bit streams (PERSPECTIVE MEDIA BITSTREAM) corresponding in parallel to the plurality of viewpoint indices
A method of decoding a media stream.
상기 사용자 시점 변화를 감지하는 단계;
상기 사용자 시점 변화에 따라 결정되는 제2 시점 인덱스를 상기 서버로 전송하는 단계; 및
상기 서버로부터 상기 제2 시점 인덱스에 대응되는 제2 시점 미디어 비트스트림(PERSPECTIVE MEDIA BITSTREAM)을 수신하는 단계; 및
상기 수신된 제2 시점 미디어 비트스트림을 복호화하는 단계를 더 포함하는
미디어 스트림의 복호화 방법.16. The method of claim 15,
Detecting a change in the user viewpoint;
Transmitting a second viewpoint index to the server, the second viewpoint index being determined according to the change of the user viewpoint; And
Receiving a second point-of-view media bit stream (PERSPECTIVE MEDIA BITSTREAM) corresponding to the second point-in-time index from the server; And
And decrypting the received second view media bit stream
A method of decoding a media stream.
상기 복호화된 제1 시점 미디어 비트스트림에 대한 후처리를 수행하고, 상기 후처리된 영상을 상기 사용자의 VR 디스플레이 장치로 렌더링하는 단계를 더 포함하는
미디어 스트림의 복호화 방법.16. The method of claim 15,
Processing the decoded first-view media bitstream, and rendering the post-processed video to the user's VR display device
A method of decoding a media stream.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160115815A KR20180028300A (en) | 2016-09-08 | 2016-09-08 | A method for providing media bitstream of a syncronized multi view video by using spatial layout information |
CN201780055513.4A CN109691110B (en) | 2016-09-08 | 2017-07-04 | Method and apparatus for encoding/decoding synchronous multi-view video using spatial layout information |
US16/331,819 US10904570B2 (en) | 2016-09-08 | 2017-07-04 | Method for encoding/decoding synchronized multi-view video by using spatial layout information and apparatus of the same |
PCT/KR2017/007064 WO2018048078A1 (en) | 2016-09-08 | 2017-07-04 | Method for encoding/decoding synchronized multi-view image using spatial structure information, and apparatus therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160115815A KR20180028300A (en) | 2016-09-08 | 2016-09-08 | A method for providing media bitstream of a syncronized multi view video by using spatial layout information |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180028300A true KR20180028300A (en) | 2018-03-16 |
Family
ID=61910434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160115815A KR20180028300A (en) | 2016-09-08 | 2016-09-08 | A method for providing media bitstream of a syncronized multi view video by using spatial layout information |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20180028300A (en) |
-
2016
- 2016-09-08 KR KR1020160115815A patent/KR20180028300A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109691110B (en) | Method and apparatus for encoding/decoding synchronous multi-view video using spatial layout information | |
KR102014240B1 (en) | A method for seletively decoding a syncronized multi view video by using spatial layout information | |
US11528414B2 (en) | Method and apparatus for reconstructing 360-degree image according to projection format | |
CN111527752B (en) | Method and apparatus for encoding and decoding image and recording medium storing bit stream | |
KR102135997B1 (en) | Residual coding for depth intra prediction modes | |
US10863198B2 (en) | Intra-prediction method and device in image coding system for 360-degree video | |
US11778331B2 (en) | Image data encoding/decoding method and apparatus | |
KR20160102073A (en) | Simplification of segment-wise dc coding of large prediction blocks in 3d video coding | |
CN110870307A (en) | Method and device for processing synchronous image | |
EP3059969A1 (en) | Method and apparatus for coding/decoding video comprising multi-view | |
KR102648652B1 (en) | A method and an apparatus for processing high resolution videos | |
KR102312285B1 (en) | A method for seletively decoding a syncronized multi view video by using spatial layout information | |
KR20180028298A (en) | A method for encoding/decoding a syncronized multi view video by using spatial layout information | |
KR102537024B1 (en) | A method for encoding/decoding a virtual reality video | |
KR20190022300A (en) | A method for encoding/decoding a virtual reality video | |
KR20200052763A (en) | A method for encoding/decoding a video based on moving information of 3-dimensional sphere | |
KR20180028300A (en) | A method for providing media bitstream of a syncronized multi view video by using spatial layout information | |
KR20190007254A (en) | A method and an appratus for processing videos based on syncronized region | |
KR20190005452A (en) | A method and an appratus for processing videos based on syncronized regions | |
KR20200052762A (en) | A method for encoding/decoding a video based on moving information of 3-dimensional sphere | |
CN118511511A (en) | Intra-frame prediction method and device based on DIMD modes | |
Lucas et al. | E cient Predictive Algorithms for Image Compression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal |