KR100856064B1 - Method and Apparatus for preferential encoding/decoding in Fine Granular Scalability - Google Patents

Method and Apparatus for preferential encoding/decoding in Fine Granular Scalability Download PDF

Info

Publication number
KR100856064B1
KR100856064B1 KR1020070057491A KR20070057491A KR100856064B1 KR 100856064 B1 KR100856064 B1 KR 100856064B1 KR 1020070057491 A KR1020070057491 A KR 1020070057491A KR 20070057491 A KR20070057491 A KR 20070057491A KR 100856064 B1 KR100856064 B1 KR 100856064B1
Authority
KR
South Korea
Prior art keywords
macroblocks
macroblock
encoding
prediction error
decoding
Prior art date
Application number
KR1020070057491A
Other languages
Korean (ko)
Other versions
KR20070118560A (en
Inventor
박광훈
박민우
서덕영
Original Assignee
경희대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 경희대학교 산학협력단 filed Critical 경희대학교 산학협력단
Publication of KR20070118560A publication Critical patent/KR20070118560A/en
Application granted granted Critical
Publication of KR100856064B1 publication Critical patent/KR100856064B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/34Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

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

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은 FGS에서 인코딩/디코딩 방법 및 장치에 관한 것임.The present invention relates to a method and apparatus for encoding / decoding in FGS.

2. 발명이 해결하고자 하는 기술적 과제2. Technical problem to be solved by the invention

FGS코딩에서 중요영역을 우선적으로 인코딩 및 디코딩하여 화질을 향상시킴. Improved image quality by encoding and decoding priority areas in FGS coding.

3. 발명의 해결방법의 요지3. Summary of Solution to Invention

매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택단계; 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 인코딩하는 부분 인코딩 단계; 및 전체 매크로블록을 인코딩하는 전체 인코딩 단계를 포함함.A macroblock calculation step of calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; A macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of a large prediction error; A partial encoding step of encoding non-zero quantization coefficients of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection step; And an entire encoding step of encoding the entire macroblock.

4. 발명의 중요한 용도4. Important uses of the invention

FGS 코딩에서 이용됨.Used in FGS coding.

FGS, 코딩, 우선순위, 매크로블록 FGS, Coding, Priority, Macroblock

Description

FGS코딩에서 우선적인 인코딩/디코딩 방법 및 장치{Method and Apparatus for preferential encoding/decoding in Fine Granular Scalability} Method and Apparatus for Preferred Encoding / Decoding in FPS Coding {Method and Apparatus for preferential encoding / decoding in Fine Granular Scalability}

도 1은 종래 사이클릭 FGS 방법에 따른 코딩을 나타내는 예시도.1 is an exemplary diagram showing coding according to a conventional cyclic FGS method.

도 2는 H.264의 FMO에서 박스 아웃 스캔 오더에 관한 예시도.2 is an exemplary diagram of a box out scan order in an FMO of H.264.

도 3은 Football QCIF 영상을 코딩한 영상과 코딩될 데이터의 위치를 포함하는 영상.FIG. 3 is an image including a video encoded with a Football QCIF video and a location of data to be coded. FIG.

도 4는 본 발명에 따른 FGS 인코딩 방법의 일실시예 흐름도.4 is a flowchart of one embodiment of an FGS encoding method according to the present invention;

도 5는 본 발명에 따른 FGS 디코딩 방법의 일실시예 흐름도.5 is a flowchart of one embodiment of a method for decoding an FGS according to the present invention;

도 6은 본 발명에 따른 FGS 인코딩 방법의 다른 일실시예 흐름도.6 is a flowchart of another embodiment of an FGS encoding method according to the present invention;

도 7은 본 발명에 따른 FGS 디코딩 방법의 다른 일실시예 흐름도.7 is a flowchart of another embodiment of an FGS decoding method according to the present invention;

도 8은 본 발명에 따른 FGS 인코딩 방법의 또 다른 일실시예 흐름도.8 is a flowchart of another embodiment of an FGS encoding method according to the present invention;

도 9는 본 발명에 따른 FGS 디코딩 방법의 또 다른 일실시예 흐름도.9 is a flowchart of another embodiment of an FGS decoding method according to the present invention;

도 10은 본 발명에 따른 우선순위를 갖는 인코딩 방법의 흐름도.10 is a flowchart of an encoding method having priority according to the present invention.

도 11은 본 발명에 따른 우선순위를 갖는 디코딩 방법의 흐름도.11 is a flowchart of a decoding method having priority according to the present invention.

도 12는 본 발명의 효과를 나타내는 비교 그래프.12 is a comparative graph showing the effect of the present invention.

도 13은 본 발명의 효과를 나타내는 비교 그래프.13 is a comparative graph showing the effect of the present invention.

도 14는 Crew 영상 시퀀스에서 매크로블록의 위치를 나타내는 영상.14 is an image showing the position of a macroblock in a Crew image sequence.

도 15는 도 14의 선택된 매크로블록의 위치에 따라 코딩된 영상.FIG. 15 is an image coded according to the position of the selected macroblock of FIG. 14; FIG.

본 발명은 FGS(Fined Grainular Scalability)에서 인코딩/디코딩 방법 및 장치에 관한 것으로, 보다 상세하게는 FGS코딩에서 중요영역을 우선적으로 인코딩/디코딩하는 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for encoding / decoding in Fixed Grainular Scalability (FGS), and more particularly, to a method and apparatus for preferentially encoding / decoding a critical region in FGS coding.

영상을 코딩하여 전송하는데 있어서 MPEG-4 기술은, 수신자 단말기의 상황이나 성능에 따라 다양한 화질을 제공할 수 있다. 수신자 단말기의 성능이 우수하고 전송 선로의 상태가 좋은 경우에는 수신자 단말기가 고화질의 동영상을 수신하여 디스플레이할 수 있다. 하지만, 수신기의 성능이 우수하지 않거나 전송 선로의 상태가 좋지 않은 경우에는 수신자 단말기가 고화질을 수신할 수 없다. 이러한 문제를 해결하기 위해 MPEG-4 기술은 스케일러블 코딩(Scalable Coding) 방법을 권고하고 있다.In coding and transmitting an image, MPEG-4 technology may provide various image quality according to the situation and performance of the receiver terminal. When the performance of the receiver terminal is excellent and the state of the transmission line is good, the receiver terminal may receive and display a high quality video. However, if the performance of the receiver is not good or the condition of the transmission line is not good, the receiver terminal cannot receive high quality pictures. To solve this problem, MPEG-4 technology recommends a scalable coding method.

스케일러블 코딩은 수신단에서 다양한 화질의 영상을 수신할 수 있도록 인코더에서 스케일러블한 비트 스트림을 만들어서 전송하는 것이다. 즉, 전송 비트스트 림이 스케일러블하다면 다양한 종류의 수신기가 존재할 수 있게 되어, 저성능 수신기는 기본 계층에서 인코딩된 기본 화질의 영상 비트스트림을 전송받아 디스플레이 하고, 고성능 수신기는 강화계층(Enhancement Layer)에서 인코딩된 높은 화질의 영상 비트스트림을 전송받아 디스플레이할 수 있다.In scalable coding, an encoder generates and transmits a scalable bit stream so that a receiver can receive various quality images. In other words, if the transmission bitstream is scalable, various types of receivers may exist, and a low performance receiver receives and displays a video bitstream having a basic quality encoded in a base layer, and a high performance receiver includes an enhancement layer. It is possible to receive and display a video bitstream of high quality encoded by.

하지만, 종래의 스케일러블 코딩 방법은 전송선로의 상태가 급변하지 않고 상대적으로 안정된 경우에 적합하도록 설계되어 있다. 다시 말해, 수신단은 강화 계층에서 송신된 비트스트림을 모두 수신하여야만 해당 영상 프레임을 복원할 수 있다. 만약, 전송 선로의 상태가 급변하여, 강화 계층에 해당되는 비트스트림을 모두 전송받지 못하면, 수신단은 해당 영상을 제대로 복원할 수 없다. 따라서 수신단은 재전송을 송신단에 요구하거나, 모든 비트스트림을 수신할 때까지 영상 복원을 수행하지 못하거나, 그 이전 프레임의 영상을 이용하여 전송 에러 숨김을 수행하여야만 한다.However, the conventional scalable coding method is designed to be suitable when the state of the transmission line does not change rapidly and is relatively stable. In other words, the receiving end may restore the corresponding video frame only after receiving all the bitstreams transmitted by the enhancement layer. If the state of the transmission line changes abruptly, and thus all of the bitstreams corresponding to the enhancement layer are not received, the receiver cannot properly restore the corresponding video. Therefore, the receiving end should not perform reconstruction until requesting retransmission to the transmitting end, all bitstreams have been received, or must perform transmission error concealment using the image of the previous frame.

그런데, 유/무선 인터넷과 같이 전송 선로의 상태가 안정적이지 못하여 대역폭이 급변하는 경우에도 전송된 영상의 실시간 복원을 수행하기 위해서, 수신단은 송신단에서 전송된 모든 비트스트림을 수신받지 못하더라도 그때까지 수신된 부분적인 영상 비트스트림만을 이용하여 전송된 영상을 실시간으로 복원할 수 있어야 한다. 이를 위해, MPEG-4 미세입자 스케일러빌리티(FGS) 코딩 방법과 최근에 국제 표준화가 진행중인 MPEG-4 연합 스케일러블 비디오 코딩(JSVC: Joint Scalable Video Coding) 방법이 제안되었다.However, even if the bandwidth of the transmission line is not stable, such as the wired / wireless Internet, in order to perform real-time restoration of the transmitted image, the receiving end receives the received bit stream even if it does not receive all the bitstreams transmitted from the transmitting end. It should be possible to reconstruct the transmitted image in real time using only the partial image bitstream. For this purpose, MPEG-4 microparticle scalability (FGS) coding method and MPEG-4 Joint Scalable Video Coding (JSVC) method which have recently been internationally standardized have been proposed.

현재 국제 표준화가 진행중인 MPEG-4 연합 스케일러블 비디오 코딩(JSVC) 방법에서 지원하는 미세입자 스케일러빌리티(FGS) 방법은 원 영상 프레임(Original frame)과 재생 영상 프레임(Reconstructed Frame)간의 차분 영상(difference frame)의 정보에 대한 코딩을 수행한다.The microparticle scalability (FGS) method, which is supported by the MPEG-4 federated scalable video coding (JSVC) method, which is currently being internationally standardized, is a difference frame between an original frame and a reconstructed frame. Coding of information of) is performed.

현재 국제표준화가 진행중인 연합 스케일러블 비디오 코딩(JSVC)에서 지원하는 FGS 방법은 국제표준안이 확정된 MPEG-4 Part2 Visual에서의 FGS 프로파일(profile)과 대비하여 미세입자 스케일러빌리티를 부여하는 기능적인 측면에서는 동일하지만, 해당 요구 사항을 처리하는 방법론에서는 큰 차이가 있다. The FGS method, which is currently supported by the Union Scalable Video Coding (JSVC), which is under international standardization, provides a fine grain scalability in contrast to the FGS profile in MPEG-4 Part2 Visual. It's the same, but there's a big difference in the methodology that addresses that requirement.

국제표준안인 MPEG-4 Part 2 Visual의 FGS 방법은, 각각의 픽셀값을 비트 평면(Bit-plane) 단위로 나누어 최상위 비트인 MSB(Most significant bit)부터 최하위 비트인 LSB(Least significant bit) 순으로 전송한다.The FGS method of MPEG-4 Part 2 Visual, an international standard, divides each pixel value into bit-plane units, starting from the most significant bit (MSB) to the least significant bit (LSB). send.

하지만, 연합 스케일러블 비디오 코딩(JSVC)에서 지원하는 FGS 방법은 비트 평면(Bit-plane) 단위의 처리 개념이 없어지고, 사인 비트(Sign-bit), 주요 비트(Significant-bit), 그리고 미세 비트(Refinement-bit)로 나눠, 이 순서대로 처리해야 할 데이터의 값을 인코더단에서 전송하고, 디코더단에서 해당 비트를 수신하여 처리하게 된다. However, the FGS method that is supported by the joint scalable video coding (JSVC) eliminates the concept of bit-plane processing, sign-bit, significant-bit, and fine bit. By dividing by (Refinement-bit), the data of the data to be processed in this order is transmitted by the encoder, and the decoder receives and processes the corresponding bit.

블록단위로 모든 데이터를 처리한 후에 다음 블록의 데이터를 처리하는 종래의 FGS 방법은 디코더단에서 수신되어 처리된 블록의 화질과 처리되지 않는 블록의 화질이 현저하게 다르다는 단점이 있는데, 연합 스케일러블 비디오 코딩(JSVC)은 이와 같은 단점을 보완하기 위하여 사이클릭(Cyclic)-FGS 방법이 도입되었다.The conventional FGS method, which processes the data of the next block after processing all the data in block units, has a disadvantage in that the image quality of the block received and processed at the decoder stage is significantly different from that of the unprocessed block. Coding (JSVC) has introduced the Cyclic-FGS method to compensate for this drawback.

종래의 미세입자 스케일러빌리티(FGS) 방법은 각각의 블록 내에 존재하는 코딩해야 할 모든 계수 값을 전부 코딩한 후에 다음 블록에 존재하는 계수에 대한 코딩을 시작한다.Conventional microparticle scalability (FGS) methods begin coding all coefficient values present in each block after coding all coefficient values to be coded.

이에 반하여 사이클릭(Cyclic)-FGS 방법은, 각각의 블록내의 코딩 계수를 지그재그 스캔(zig-zag scan)을 하다가, 코딩해야 할 값을 만나면 1개의 계수값을 코딩한 후에 그 블록내의 다른 코딩 계수를 코딩하지 않고 다음 블록을 코딩한다. 즉 사이클릭(Cyclic)-FGS 방법은, 해당 블록내의 코딩하여야 하는 모든 계수 값을 코딩하지 않고 다음 블록의 코딩으로 넘어간다.In contrast, the Cyclic-FGS method performs a zig-zag scan on the coding coefficients in each block, and if one value is encountered after coding a value to be coded, the other coding coefficients in the block are coded. Code the next block without coding In other words, the Cyclic-FGS method proceeds to coding the next block without coding all coefficient values to be coded in the block.

도 1은 사이클릭(Cyclic)-FGS 방법에 따른 코딩을 나타내는 예시도이다.1 is an exemplary diagram showing coding according to a cyclic-FGS method.

도 1에 도시된 바와 같이, 4번의 cycle에서 4개의 4x4 블록의 모든 계수가 코딩된다.As shown in Fig. 1, all coefficients of four 4x4 blocks are coded in four cycles.

‘cycle 0’에서는 ‘block 0’에서 0, 0, 1을 코딩하고(‘0’이 아닌 계수 1을 코딩했으므로) ‘block 1’에서 1을 코딩하고(‘0’ 이 아닌 계수 ‘1’을 코 딩했으므로) ‘block 2’에서 0, 1을 코딩하고 ‘block 3’에서는 1을 코딩함으로써 ‘cycle 0’이 종료된다. ‘cycle 1’에서는 ‘block 0’에서 0, 0, _, 0, 0, 0, 0, 1을 코딩하고 ‘block 1’에서 0, 0, 0, 0, 0, _, 0, _, 0, 1을 코딩하고 ‘block 2’에서 0, 0, 3을 코딩하고 ‘block 3에서 0, 1을 코딩함으로써 ‘cycle 1’이 종료된다. ‘cycle 2’에서는 ‘block 0’에서 0, 1을 코딩하고 ‘block 1’에서는 이전 ‘cycle 1’에서 블록 내의 ‘0’이 아닌 계수를 마지막으로 코딩했기 때문에 ‘block 2’로 넘어간다. ‘block 2’도 ‘cycle 1’에서 블록 내의 ‘0’이 아닌 계수를 마지막으로 코딩했기 때문에 ‘block 3’으로 넘어간다. ‘block 3’에서 0, 0, -2를 코딩하면 ‘cycle 2’가 종료된다. ‘cycle 4’에서는 ‘block 0’, ‘block 1’ 및 ‘block 2’는 이전에 ‘0’이 아닌 계수를 모두 코딩했기 때문에 ‘block 3’으로 넘어간다. ‘block 3’에서 0, 1을 코딩하고 ‘cycle 3’ 이 종료된다.  In 'cycle 0', we coded 0, 0, 1 in 'block 0' (because we coded coefficient 1, not '0'), and we coded 1 in 'block 1' (that's not '0' Cycle 0 is terminated by coding 0, 1 in block 2 and by coding 1 in block 3. 'cycle 1' codes 0, 0, _, 0, 0, 0, 0, 1 in 'block 0' and 0, 0, 0, 0, 0, _, 0, _, 0 in 'block 1' Cycle 1 is terminated by coding, 1, coding 0, 0, 3 in block 2 and coding 0, 1 in block 3. In cycle 2, we code 0 and 1 in block 0, and in block 1 we go to block 2 because we last coded the non-zero coefficients in the block in cycle 1 before. Block 2 also goes to block 3 because cycle 1 last coded a nonzero coefficient within the block. If you code 0, 0, or -2 in block 3, cycle 2 ends. In 'cycle 4', 'block 0', 'block 1' and 'block 2' go to 'block 3' because they previously coded all non-zero coefficients. In block 3 we code 0, 1 and cycle 3 ends.

다시 말해, 일반적인 FGS 방법은 각각의 4X4 블록내의 모든 중요한 계수들을 모두 코딩한 후에 인접한 다른 블록의 중요한 계수들을 코딩한다. 하지만, 사이클릭(cyclic)-FGS 방법은 각각의 4X4 블록 내에서 지그재그 스캔 순서로 스캔하다가 제일 처음 만난 중요한 계수의 주요 비트(Significant bit)를 코딩한 후에, 해당 블록의 중요 계수를 모두 코딩하지 않고, 다음에 인접한 블록으로 넘어가서 다음의 블록에서 제일 처음 만나는 중요 계수의 주요 비트를 코딩한다. 그리고 사이클릭 FGS 방법은 각각의 블록내의 1개의 중요 계수의 주요 비트를 코딩하게 되면, 한 사 이클의 코딩이 완료되고, 다시 가장 왼쪽 블록으로 돌아와 두번째 중요 계수의 코딩을 수행하게 된다.In other words, the general FGS method codes all significant coefficients in each 4 × 4 block and then codes significant coefficients of another adjacent block. However, the cyclic-FGS method scans in a zigzag scan order within each 4 × 4 block and then codes the significant bits of the first significant coefficient that is encountered, and then does not code all the significant coefficients of the block. Next, we move to the next adjacent block and code the major bits of the first significant coefficient in the next block. When the cyclic FGS method codes major bits of one significant coefficient in each block, the coding of one cycle is completed, and the code returns to the leftmost block to perform coding of the second significant coefficient.

사이클릭(Cyclic)-FGS의 장점은 블록내의 모든 계수를 한꺼번에 처리하는 일반적인 FGS와 달리, 각각의 블록당 한 개의 주요 비트를 코딩한다. 이에 따라 사이클릭 FGS 방법은 일반적인 FGS 방법보다 모든 블록 내의 주요 비트를 골고루 처리하게 되어, 디코더단에서 디코딩이 완료된 블록과 전송 대역폭의 제한으로 인해 발생되는 디코딩이 완료될 수 없는 블록간의 화질 차이가 크지 않게 된다. 즉 사이클릭 FGS 방법은 영상 프레임내의 모든 블록에 대한 화질 향상을 가능한 골고루 수행할 수 있게 되어, 블록간의 화질 차를 최소화할 수 있으며, 동일한 비트율에서, 블록내의 데이터를 모두 처리한 후 다음 블록의 데이터를 처리하는 일반적인 FGS 방법에 비하여 보다 많은 영상 블록의 화질을 향상시킬 수 있다.The advantage of Cyclic-FGS is to code one major bit per block, unlike a typical FGS that processes all the coefficients in a block at once. Accordingly, the cyclic FGS method processes the main bits in all blocks more uniformly than the general FGS method, so that the quality difference between the decoded block and the block that cannot be decoded due to the limitation of the transmission bandwidth is not large. Will not. That is, the cyclic FGS method can perform the image quality improvement for all the blocks in the video frame as much as possible, thereby minimizing the quality difference between the blocks, and at the same bit rate, after processing all the data in the block, the data of the next block Compared to the general FGS method for processing the image quality of more image blocks can be improved.

물론 사이클릭(Cyclic)-FGS 방법에서 반복 사이클에 의해 코딩이 수행되는 블록의 수는 많지만, 코딩 및 디코딩 수행시 각각의 블록마다 코딩된 정보(DCT 변환계수 또는 픽셀 값)의 수는 1개씩이다. 다시 말해, 일반적인 FGS 방법과 사이클릭 (Cyclic)-FGS 방법의 큰 차이점은, 일반적인 FGS 방법이 코딩을 수행하여야만 하는 블록내의 모든 데이터를 한꺼번에 처리하지만, 사이클릭 FGS 방법은 디코딩시 복호가 완료된 블록간의 화질 차이를 줄이기 위하여 각각의 블록내의 정보를 코딩시 조금씩 나눠서 코딩한다.Of course, the number of blocks that are coded by an iterative cycle in the cyclic-FGS method is large, but the number of coded information (DCT transform coefficient or pixel value) is 1 for each block when performing coding and decoding. . In other words, the big difference between the general FGS method and the cyclic (Cyclic) -FGS method is that the general FGS method processes all the data in a block that must be coded at once, while the cyclic FGS method is used to decode the decoded blocks. In order to reduce the difference in image quality, the information in each block is coded in small portions during coding.

코딩을 수행하여야 하는 블록 내의 모든 주요 비트(Significant bit)를 한꺼번에 코딩하는 일반적인 FGS 방법은 동일한 비트율(Bit-rate)에서 강화되는 블록의 수가 사이클릭 FGS 방법에 비하여 많지 않다. 반면 사이클릭 FGS 방법은 동일한 비트율에서 강화되는 블록의 수는 많지만, 동일한 블록에 대하여 화질 향상이 되는 강도는 일반적인 FGS 방법에 비하여 상대적으로 약하다. 따라서, 연산 복잡도 면에서는 많은 수의 사이클을 돌면서 코딩하여야 하는 사이클릭 FGS 방법이 불리하지만, 동일한 비트율에서 불안정한 전송 환경에서 전체적으로 균등한 화질 향상을 위해서는 일반적인 FGS 방법에 비하여 사이클릭 FGS 방법이 유리하다.The general FGS method of coding all the significant bits in a block to be coded at once is not as large as the cyclic FGS method in the number of blocks enhanced at the same bit rate. On the other hand, the cyclic FGS method has a large number of blocks that are enhanced at the same bit rate, but the strength of improving image quality for the same block is relatively weak compared to the general FGS method. Therefore, in terms of computational complexity, the cyclic FGS method, which must be coded over a large number of cycles, is disadvantageous, but the cyclic FGS method is advantageous over the general FGS method in order to improve overall image quality in an unstable transmission environment at the same bit rate.

다음에는 플렉서블 매크로 블록 오더링(FMO: Flexible Macroblock Ordering)을 이용해 관심 영역(ROI: Region of Interest)을 비관심 영역보다 최우선적으로 인코딩 및 디코딩을 수행하는 기술에 대해 설명한다. 유/무선 인터넷을 통해 영상 비트 스트림을 전송하는 경우, 전송 선로의 상태가 불안하여 계획된 영상 비트 스트림을 실시간으로 전송하지 못하는 경우가 흔하게 발생된다. Next, a technique of encoding and decoding a region of interest (ROI) over a non-interested region by using flexible macroblock ordering (FMO) will be described. When video bit streams are transmitted through wired / wireless Internet, it is common to be unable to transmit a planned video bit stream in real time due to unstable transmission line conditions.

유/무선 인터넷과 같이 전송선로의 상태가 안정적이지 못하여 대역폭이 급변하는 경우에도 전송된 영상의 실시간 복원을 수행하기 위해서는, 송신단으로부터 전송된 비트 스트림을 수신단에서 모두 수신하지 못하더라도 수신단에서 지금까지 수신된 부분적인 영상 비트 스트림만을 이용해 전송 영상을 실시간으로 복원할 수 있는 기술이 필요하다.In order to perform real-time restoration of the transmitted image even when the bandwidth is suddenly changed due to unstable transmission line status such as wired / wireless internet, even if the receiving end does not receive all the bit streams transmitted from the receiving end, There is a need for a technique for recovering a transmission video in real time using only a partial video bit stream.

전술한 바와 같은 종래의 기술에서는, 모든 영상 프레임에 대한 인코딩과 디코딩이 최위쪽-왼쪽(Upper-Left)에 위치한 매크로블록(또는 블록)부터 시작하여 최아래쪽-오른쪽(bottom-left) 부분의 매크로 블록(또는 블록)까지의 영상 데이터를 순차적으로 처리하는 순차 스캔 오더(Raster Scan Order) 방법을 사용하고 있다.In the prior art as described above, the encoding and decoding for all picture frames starts with the macroblock (or block) located at the top-left, and the bottom-left macro. The raster scan order method of sequentially processing image data up to a block (or a block) is used.

만약, 부분적인 비트 스트림만을 수신하여도 영상 복원이 가능하도록 하는 스케일러블 코딩 방법에 순차 스캔 오더 방법을 적용하게 되면, 상위부분의 부분적인 매크로 블록이나 블록들만이 디코딩이 수행되어, 그 복원 영상이 수신장치의 화면에 표시되게 된다. 즉, 기본계층에서 전송된 비트 스트림과 강화계층에서 부분적으로 수신되어 디코딩된 비트 스트림이 합쳐져서 향상된 영상이 수신장치에서 재생된다. 그런데, 영상의 상위 부분의 데이터만 강화 계층에서 수신되어 디코딩이 완료되었다면, 재생 영상의 화질은 강화 계층에서 디코딩이 완료된 부분의 화질만이 향상되게 된다. 이때 향상된 부분의 영상이 시청자가 주목하지 않는 곳(예를 들어, 배경이나 주인공의 얼굴 등이 아닌 곳)이라면, 강화 계층용 비트 스트림을 수신하여 복원하는 과정이 사용자가 인지하지 못하는 부분을 처리하게 되어, 결국 쓸모없이 처리된 것과 같은 결과를 초래한다.If the sequential scan order method is applied to the scalable coding method that enables the image reconstruction even when only a partial bit stream is received, only the partial macroblock or blocks of the upper portion are decoded, so that the reconstructed image is It is displayed on the screen of the receiving device. That is, the bit stream transmitted from the base layer and the bit stream partially received and decoded from the enhancement layer are combined to reproduce the enhanced image at the receiving apparatus. However, if only data of the upper portion of the image is received at the enhancement layer and decoding is completed, the image quality of the reproduced image is improved only in the quality of the portion where decoding is completed in the enhancement layer. In this case, if the enhanced part of the video is not noticed by the viewer (for example, the background or the face of the main character), the process of receiving and restoring the bit stream for the enhancement layer may process the part that the user does not recognize. This results in the same result as wasted useless.

따라서 중요한 부분의 데이터, 즉 관심 영역(ROI)의 데이터를 먼저 전송하게 되면 수신단에서 비트스트림을 일부만 수신하였다 하더라도 관심을 갖는 부분의 데이터가 최우선적으로 전송되었기 때문에, 수신도 최우선적으로 수행되어, 결과적으로 주관적인 화질을 높일 수 있게 된다. 이에 필요한 스캔 오더는 국제 표준안인 H.264 (MPEG-4 AVC) 비디오 코딩 방법의 FMO(Flexible Macroblock Ordering)에서 박스 아웃(Box-out) 스캔 오더(Order)라고 명명하여 채택하고 있다.Therefore, if data of an important part, that is, data of the region of interest (ROI) is transmitted first, even if only a part of the bitstream is received at the receiving end, since the data of the part of interest is transmitted first, reception is also performed first. As a result, subjective picture quality can be increased. The scan order required for this is adopted in the international standard H.264 (MPEG-4 AVC) video coding method in the flexible macroblock ordering (FMO), named as a box-out scan order.

도 2는 H.264의 FMO에서 박스 아웃(Box-out) 스캔 오더(Order)에 관한 예시도이다.2 is an exemplary diagram of a box-out scan order in an FMO of H.264.

도 2에 도시된 바와 같이, 플렉서블 매크로 블록 오더링(FMO)의 박스 아웃 스캔을 수행하는 과정에서, 관심 영역의 중심에 제1 가상링이 있고, 중심으로부터 외곽 쪽으로 나가면서 제2 가상링, 제3 가상링, 제4 가상링 등의 가상링들이 존재한다. 이런 방법으로 영상 내에 강화하고자 하는 관심영역에 여러 개의 가상링을 생성하고, 각각의 가상링에 적용되는 영상 화질의 강화 정도에 맞추어 인코더단과 디코더단이 서로 약속하에 화질 강화(enhancement)를 수행한다.As shown in FIG. 2, in the process of performing a box-out scan of the flexible macro block ordering (FMO), the first virtual ring is located at the center of the ROI, and the second virtual ring and the third virtual ring are moved outward from the center. There are virtual rings such as a virtual ring and a fourth virtual ring. In this way, a plurality of virtual rings are generated in a region of interest to be enhanced in the image, and the encoder and the decoder perform enhancements with promises in accordance with the degree of enhancement of the image quality applied to each virtual ring.

각각의 가상링에 존재하는 블록들에 대한 강화되는 양은 후술되는 강화 모드 (Enhancement Mode)에 따라 달라지며, 전체적으로 영상의 화질을 강화시키는 형태는 각각의 가상링마다 설정된 화질 향상 강화 요소(Enhancement Factor)에 따라 달라진다. 화질 향상 강화 요소는 추후 설명하겠지만, 해당 가상링에 대한 코딩 수행 시 얼마나 많은 횟수의 스캔을 반복 수행하는가이다. 따라서 강화 요소는 본 발명에서는 종래 기술에서 사용하는 비트 이동 요소가 아니라 각각의 가상링에 다르게 적용되는 반복 스캔 횟수(RSF)이다.The amount of enhancement for the blocks present in each virtual ring depends on the enhancement mode (Enhancement Mode) to be described later, and the shape of enhancing the image quality as a whole is an enhancement factor set for each virtual ring. Depends on. As will be described later, the enhancement factor of image quality is how many scans are repeatedly performed when coding the virtual ring. Therefore, the reinforcement element is not the bit shifting element used in the prior art in the present invention but the number of repetitive scans (RSF) applied differently to each virtual ring.

각각의 가상링마다 다르게 적용되는 반복 스캔 횟수를 이용하게 되면, 종래 기술의 단점인 관심영역의 화질 향상을 위한 프로세스 수행에 의해 추가로 발생되는 연산 복잡도와 해당 프로세스에 요구되는 추가적인 메모리 대역폭, 그리고 비트 이동 프로세스에 의해서 발생되지만 실제로 사이클릭 FGS 기술에서 만족할만한 효과를 얻을 수 없는 각각의 블록 당 비트 이동 요소를 인코더단에서 디코더단으로 전송해야 하는 비트의 양을 상당량 줄이면서 관심영역의 화질을 향상시킬 수 있다.By using the number of repetitive scans applied differently to each virtual ring, the computational complexity that is additionally generated by performing a process for improving the quality of the region of interest, which is a disadvantage of the prior art, the additional memory bandwidth required for the process, and the bits It is possible to improve the quality of the region of interest while reducing the amount of bits that need to be transmitted from the encoder side to the decoder side per bit, caused by the shifting process but not actually satisfactory in the cyclic FGS technique. Can be.

사이클릭 FGS 방법은 하나의 블록을 모두 코딩하기 위해 해당 블록을 여러번 반복해 사이클 단위의 코딩을 수행한다. 즉, 사이클 반복을 수행할수록 각각의 블록당 1개씩의 비트가 코딩되기 때문에, 본 발명에서는 관심 영역내에 위치한 강화시킬 블록을 더 많이 코딩할 수 있도록 가상링 단위의 반복 스캔 횟수를 달리함으로써, 코딩 순서를 조정한다. 다시 말해, 본 발명은 강화 블록이 위치하는 가상링의 반복 스캔 횟수를 강화 블록이 위치하지 않은 가상링보다도 많은 수의 스캔이 발생되도록 한다. 이는 인코더와 디코더가 사전 약속을 통하여 아니면 인코더측에서 디코더 측에 스캔 횟수에 대한 정보를 전달하는 것에 의해 달성될 수 있다. 이렇게 반복 코딩을 하면 가상링의 강화 블록들 내에서 더 많은 영상 데이터를 코딩할 수 있기 때문에 화질 개선을 이룰 수 있다.The cyclic FGS method repeats the block several times in order to code all of the blocks and performs cycle-by-cycle coding. That is, since one bit is coded for each block as cycle repetition is performed, in the present invention, by varying the number of repetitive scans of a virtual ring unit to code more blocks to be strengthened located in a region of interest, the coding order Adjust it. In other words, the present invention allows a larger number of repetitive scans of the virtual ring in which the reinforcing block is located to generate a larger number of scans than the virtual ring in which the reinforcing block is not located. This can be accomplished by the encoder and the decoder either by way of an advance appointment or by communicating information about the number of scans from the encoder side to the decoder side. This iterative coding can improve image quality because more image data can be coded in the enhancement blocks of the virtual ring.

현재 국제표준안이 진행중인 MPEG-4 JSVM은 4x4 단위로 변환하여 사이클릭 FGS를 수행한다. 이하의 실시예에서도 사이클릭 FGS가 4x4 블록 단위에 적용되는 경우를 예로 들어 설명하기로 한다. 하지만, 본 발명은 이에 한정되지 않고 이외에 도 8x8, 16x16 등의 블록 단위에도 적용될 수 있음은 당연하다.MPEG-4 JSVM, currently under international standards, converts to 4x4 units and performs cyclic FGS. In the following embodiment, a case where cyclic FGS is applied to a 4x4 block unit will be described as an example. However, the present invention is not limited thereto and may be applied to block units such as 8x8 and 16x16.

4X4 단위의 블록은 그 크기가 상대적으로 작기 때문에, 2개의 블록 크기를 기준으로 하나의 가상링으로 구성한다. 단, 8x8 블록이나 16x16 매크로블록(MB: Macroblock) 단위의 경우에는 1개의 블록을 하나의 가상링으로 구성한다. 즉, 각각의 가상링은 X축 방향으로 강화링의 폭(width)이 8 픽셀 그리고 Y축 방향으로 강화링의 높이(height)가 8 픽셀 크기로 설계 가능하다.Since the block of 4 × 4 unit is relatively small, it is composed of one virtual ring based on two block sizes. However, in the case of an 8x8 block or 16x16 macroblock (MB) unit, one block is configured as one virtual ring. That is, each virtual ring can be designed to have a size of 8 pixels in the width of the reinforcement ring in the X-axis direction and a height of 8 pixels in the height of the reinforcement ring in the Y-axis direction.

이와 같이 관심 영역부터 전송하기 위한 방법으로는, 관심영역의 중심이 되는 중심좌표를 기준으로 좌표 주변을 돌면서 데이터를 전송하는 방법이 있다. 관심영역부터 코딩을 할 경우에 얻을 수 있는 이점은 동일한 비트율로 주관적인 화질을 높일 수 있다는 것이다. 같은 양의 추가 정보를 가지고 영상을 강화할 때에 사람의 시선이 집중되는 영상의 중심부, 즉 관심영역을 강화하는 것이 비관심영역 또는 나머지 영상 영역 (Left-over region)을 강화하는 것보다 화질이 더 좋게 느껴진다.As described above, a method for transmitting data from the ROI includes a method of transmitting data while rotating around the coordinates based on the center coordinate which is the center of the ROI. The advantage of coding from the region of interest is that the subjective picture quality can be increased at the same bit rate. When reinforcing an image with the same amount of additional information, reinforcing the center of the image, or the region of interest, to which the human eye is focused has better image quality than enhancing the uninterested or left-over region. I feel it.

MPEG-4 FGS 방법 등의 종래 기술에서는 관심영역의 화질을 향상시키기 위한 방법으로 비트 이동(Bit-shift) 프로세스를 도입하여 사용하고 있다. 이 방법은 강화하고자 하는 관심영역에 대한 영상 정보 비트를 인코더에서 왼쪽 방향(MSB 방향)으로 일정량의 비트를 이동(Shift)시킨다. 이에 따라, 해당 관심영역의 정보비트가 비관심영역의 영상정보 비트에 비해 최우선적으로 인코딩(부호화)되어 비트 스트림으로 전송되고, 디코더에서도 해당 관심영역의 비트 스트림에 대한 디코딩(복호화) 이 최우선적으로 수행된다. 이러한 결과로, 해당 관심영역에 대한 비트가 더 많이 복호되어, 실제로 디코딩되어 재생된 관심영역의 영상 화질이 향상된다.In the prior art, such as the MPEG-4 FGS method, a bit shift process is introduced and used as a method for improving the image quality of a region of interest. This method shifts a predetermined amount of bits from the encoder to the left (MSB direction) of the image information bits for the ROI to be enhanced. Accordingly, the information bits of the region of interest are encoded (encoded) with the highest priority compared to the image information bits of the region of uninterested region and transmitted as a bit stream, and the decoding (decoding) of the bit stream of the region of interest is the highest priority in the decoder. Is performed. As a result, more bits for the region of interest are decoded, thereby improving image quality of the region of interest actually decoded and reproduced.

하나의 영상에서도 영상의 복잡도가 달라 코딩 효율이 좋지 않은 부분이 존재하며, 또한 시간적인 변화가 심하거나 예측이 어려운 부분이 존재한다. 따라서, 동일한 비트율을 유지하면서 코딩 효율이 좋지 않은 부분, 시간적인 변화가 심하거나 예측이 어려운 부분, 사람의 시선이 집중되는 영상의 중심부분 등을 우선적으로 코딩함으로써 주관적인 화질을 높일 수 있는 코딩 방법이 요구된다.In one image, there is a part in which coding efficiency is poor due to the complexity of the image, and there is a part where the temporal change or the prediction is difficult. Therefore, a coding method capable of improving subjective image quality by first coding a portion having poor coding efficiency, a time variation or a difficult prediction, and a central portion of an image in which human attention is focused while maintaining the same bit rate Required.

본 발명은 상기 요구에 부응하기 위해 제안된 것으로, FGS(Fine Granular Scalability) 코딩에서 중요영역을 우선적으로 코딩하여 동일한 비트율로 주관적인 화질을 높일 수 있는 인코딩/디코딩 방법 및 장치를 제공하는데 그 목적이 있다.The present invention has been proposed to meet the above requirements, and an object thereof is to provide an encoding / decoding method and apparatus capable of increasing subjective picture quality at the same bit rate by preferentially coding an important region in FGS (Fine Granular Scalability) coding. .

상기 목적을 달성하기 위한 본 발명은, FGS코딩에서 인코딩 방법에 있어서, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택단계; 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0' 아닌 양자화 계수를 인코딩하는 부분 인코딩 단계; 및 전체 매크로블록을 인코딩하는 전체 인코딩 단계를 포함한다.In the present invention for achieving the above object, in the encoding method in the FGS coding, macroblock calculation step of calculating a macroblock having a prediction error in units of macroblocks, and calculating the number of macroblocks having the prediction error ; A macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of a large prediction error; A partial encoding step of encoding a non-zero quantization coefficient of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection step; And an entire encoding step of encoding the entire macroblock.

또한, 상기 목적을 달성하기 위한 본 발명은, FGS코딩에서 디코딩 방법에 있어서, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택단계; 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 디코딩하는 부분 디코딩 단계; 및 전체 매크로블록을 인코딩하는 전체 디코딩 단계를 포함한다.In addition, the present invention for achieving the above object, in the decoding method in the FGS coding, macroblocks for calculating a macroblock having a prediction error in units of macroblocks, and calculates the number of macroblocks having the prediction error Calculating step; A macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of a large prediction error; A partial decoding step of decoding a non-zero quantization coefficient of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection step; And an entire decoding step of encoding the entire macroblock.

상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 따른 우선순위를 갖는 인코딩 및 디코딩 방법으로서, ⅰ) 시그니피컨트(Significant)의 개수를 이용하는 일실시예, ⅱ) 부호화 블록 패턴(Coded Block Pattern, CBP)의 개수를 이용하는 일실시예 및 ⅲ) H.264의 FMO 툴의 Box- out 스캔 오더를 이용하는 일실시예가 있다. 이하 본 발명에 따른 우선순위를 갖는 인코딩 및 디코딩 방법에 대하여 구체적으로 설명한다. 이때, 시그니피컨트란 기본계층에서 코딩 후 양자화된 계수가 ‘0’이 아닌 픽셀을 의미한다.In the encoding and decoding method having priority according to the present invention, i) one embodiment using the number of Significant, ii) one embodiment using the number of Coded Block Pattern (CBP) and Iii) There is one embodiment that uses the Box-out scan order of the H.264 FMO tool. Hereinafter, a method of encoding and decoding having priority according to the present invention will be described in detail. In this case, the signature means a pixel whose quantized coefficient after coding in the base layer is not '0'.

도 3은 Football QCIF 영상을 JSVC로 코딩한 영상(좌)과 시그니피컨트 정보 및 FGS 계층에서 코딩될 데이터의 위치를 포함하는 영상(우)을 나타낸다. FIG. 3 shows an image (left) in which a Football QCIF image is coded in JSVC (left), a signature information, and a position of data to be coded in the FGS layer.

도 3에 도시된 바와 같이, 움직이는 사람의 부분에 시그니피컨트 대부분이 존재한다. 따라서 본 발명에서는 시그니피컨트의 개수가 영상에서 중요도를 결정할 수 있는 기준으로 이용된다.As shown in FIG. 3, most of the signatures are present in the portion of the moving person. Therefore, in the present invention, the number of signatures is used as a reference for determining the importance in the image.

시그니피컨트 개수가 많은 블록이 우선하여 코딩되면, 영상의 예측 오차가 큰 영역이 우선순위로 코딩된 것이므로, 예측 오차가 큰 곳의 주관적 화질이 향상된다.If a block having a large number of signatures is preferentially coded, an area having a large prediction error of the image is coded with priority, so that the subjective picture quality of a large prediction error is improved.

도 4는 본 발명에 따른 FGS 인코딩 방법의 일실시예 흐름도로서, 시그니피컨트의 개수를 이용하는 일실시예 흐름도이다.4 is a flowchart illustrating an embodiment of a method for encoding an FGS according to the present invention, in which the number of signatures is used.

도 4에 도시된 바와 같이, 먼저 각 매크로블록(Macroblock)에 포함된 시그니피컨트 개수가 계산되고, 시그니피컨트가 존재하는 매크로블록 개수가 계산된다(s401).As shown in FIG. 4, first, the number of signatures included in each macroblock is calculated, and the number of macroblocks in which the signature exists is calculated (S401).

다음, 시그니피컨트가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼의 매크로블록이 선택되되, 시그니피컨트의 개수가 많은 순서대로 선택된 다(s403). Next, as many macroblocks as the first reference value are selected among the macroblocks in which the signatures exist, and the number of the signatures is selected in ascending order (s403).

다음, 선택된 매크로블록 중에서 소정 개수(이하 N으로 표기함)의 매크로블록의 '0'이 아닌 양자화 계수가 인코딩된다(s405). 다음, 전체 매크로블록이 인코딩된다(s407).Next, quantization coefficients other than '0' of the predetermined number of macroblocks (hereinafter referred to as N) among the selected macroblocks are encoded (s405). Next, the entire macroblock is encoded (s407).

여기서 상기 제1기준값은 다양하게 결정될 수 있다. 예를 들어, 전체 매크로블록 개수의 일정 비율(a%)에 해당하는 값으로 결정될 수 있는데, 이러한 일정 비율은 FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다. Here, the first reference value may be determined in various ways. For example, it may be determined as a value corresponding to a certain percentage (a%) of the total number of macroblocks. The predetermined percentage may be determined for each FGS slice, or may be equally determined for the entire FGS slice, but the present invention is limited thereto. It doesn't work.

또한 상기 소정 개수(N)는 다양하게 결정될 수 있다. 예를 들어, FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으며, 매크로블록 단위별, 매크로블록 타입별, 선택된 방법별로 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다.In addition, the predetermined number N may be variously determined. For example, it may be determined for each FGS slice, may be determined for all FGS slices equally, or may be determined for each macroblock unit, macroblock type, or selected method, but the present invention is not limited thereto.

한편, 상기 선택된 매크로블록이 주변(8-neighber 방향)에 선택된 매크로블록이 하나도 없이 고립된 경우, 상기 주변에 선택된 매크로블록이 없는 고립된 매크로블록은 주관적 화질에 큰 영향을 미치지 않으므로, 상기 고립된 매크로블록의 선택을 해제하여 우선순위로 코딩하지 않을 수 있다. 이하, 고립된 매크로블록이란 선택된 매크로블록 중에서 주변(8-neighber 방향)에 선택된 매크로블록이 하나도 없이 고립된 매크로블록을 의미한다.On the other hand, if the selected macroblock is isolated without any selected macroblock in the surrounding (8-neighber direction), the isolated macroblock without the selected macroblock in the peripheral does not significantly affect the subjective image quality, and thus the isolated Deselect the macroblock to avoid coding in priority. Hereinafter, an isolated macroblock refers to an isolated macroblock without any macroblocks selected in the periphery (8-neighbor direction) among the selected macroblocks.

따라서, 도 4의 일실시예에 고립된 매크로블록이 존재하는 경우, 상기 s403단계에서 매크로블록이 선택된 후, 고립된 매크로블록은 선택해제된다. 상기 선택해제된 고립된 매크로블록을 제외한 상기 선택된 매크로블록이 먼저 인코딩(s405)되고, 전체 매크로블록이 인코딩(s407)될 수 있다..Therefore, if there is an isolated macroblock in the embodiment of Figure 4, after the macroblock is selected in step s403, the isolated macroblock is deselected. The selected macroblock except for the deselected isolated macroblock may be encoded first (s405), and the entire macroblock may be encoded (s407).

도 5는 본 발명에 따른 FGS 디코딩 방법의 일실시예 흐름도로서, 시그니피컨트의 개수를 이용하는 일실시예 흐름도이다.5 is a flowchart illustrating an embodiment of a method for decoding an FGS according to the present invention, in which the number of signatures is used.

도 5에 도시된 바와 같이, 먼저 각 매크로블록에 포함된 시그니피컨트 개수가 계산되고, 시그니피컨트가 존재하는 매크로블록 개수가 계산된다(s501).As shown in FIG. 5, first, the number of signatures included in each macroblock is calculated, and the number of macroblocks in which the signature exists is calculated (S501).

다음, 시그니피컨트가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼의 매크로블록이 선택되되, 시그니피컨트의 개수가 많은 순서대로 선택된다(s503). Next, as many macroblocks as the first reference value are selected among the macroblocks in which the signatures exist, and the number of the signatures is selected in ascending order (s503).

다음, 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 디코딩된다(s505). 다음, 전체 매크로블록이 디코딩된다(s507).Next, quantization coefficients other than '0' of the N macroblocks among the selected macroblocks are decoded (s505). Next, the entire macroblock is decoded (s507).

여기서 상기 제1기준값은 다양하게 결정될 수 있다. 예를 들어, 전체 매크로블록 개수의 일정 비율(a%)에 해당하는 값으로 결정될 수 있는데, 이러한 일정 비율은 FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다. Here, the first reference value may be determined in various ways. For example, it may be determined as a value corresponding to a certain percentage (a%) of the total number of macroblocks. The predetermined percentage may be determined for each FGS slice, or may be equally determined for the entire FGS slice, but the present invention is limited thereto. It doesn't work.

또한 상기 N은 다양하게 결정될 수 있다. 예를 들어, FGS 슬라이스별로 결정 될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으며, 매크로블록 단위별, 매크로블록 타입별, 선택된 방법별로 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다.In addition, the N may be variously determined. For example, it may be determined for each FGS slice, may be determined for the entire FGS slice, or may be determined for each macroblock unit, macroblock type, or selected method, but the present invention is not limited thereto.

또한, 도 5의 일실시예에 고립된 매크로블록이 존재하는 경우, 상기 s503단계에서 매크로블록이 선택된 후, 고립된 매크로블록은 선택해제된다. 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록이 먼저 디코딩(s505)되고, 전체 매크로블록이 디코딩(s507)될 수 있다.In addition, if there is an isolated macroblock in the embodiment of Figure 5, after the macroblock is selected in step s503, the isolated macroblock is deselected. The selected macroblock except for the deselected isolated macroblock may be decoded first (s505), and the entire macroblock may be decoded s507.

도 6은 본 발명에 따른 FGS 인코딩 방법의 다른 일실시예 흐름도로서, 부호화 블록 패턴의 개수를 이용하는 일실시예 흐름도이다.6 is a flowchart illustrating another embodiment of the FGS encoding method according to the present invention, using a number of coding block patterns.

부호화 블록 패턴(Coded Block Pattern, CBP)은 매크로블록에 포함된 4개의 8x8블록에 코딩될 데이터가 있는지 나타내는 정보이다. FGS 코딩시, 시그니피컨트 정보 대신 부호화 블록 패턴 정보가 이용될 수 있다. 따라서, 시그니피컨트의 개수 대신 코딩될 데이터가 포함된 블록의 개수를 이용하며, 코딩될 데이터가 포함된 블록의 개수가 많은 블록이 우선하여 코딩되면, 영상의 예측 오차가 큰 영역이 우선순위로 코딩된 것이므로, 예측 오차가 큰 곳의 주관적 화질이 향상된다.The coded block pattern (CBP) is information indicating whether there are data to be coded in four 8x8 blocks included in a macroblock. In FGS coding, coding block pattern information may be used instead of signature information. Therefore, if the number of blocks containing data to be coded is used instead of the number of signatures, and a block having a large number of blocks including data to be coded is preferentially coded, an area having a large prediction error of the image is given priority. Since it is coded, the subjective picture quality where the prediction error is large is improved.

도 6에 도시된 바와 같이, 먼저 각 매크로블록에 포함된 CBP의 개수가 계산되 고, CBP가 존재하는 매크로블록 개수가 계산된다(s601).As shown in FIG. 6, first, the number of CBPs included in each macroblock is calculated, and the number of macroblocks in which the CBP is present is calculated (S601).

다음, CBP가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼의 매크로블록이 선택되되, CBP의 개수가 많은 순서대로 선택된다(s603). Next, as many macroblocks as the first reference value are selected among the macroblocks in which the CBP is present, and the number of CBPs is selected in ascending order (s603).

다음, 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 인코딩된다(s605). 다음, 전체 매크로블록이 인코딩된다(s607).Next, quantization coefficients other than '0' of the N macroblocks among the selected macroblocks are encoded (s605). Next, the entire macroblock is encoded (s607).

여기서 상기 제1기준값은 다양하게 결정될 수 있다. 예를 들어, 전체 매크로블록 개수의 일정 비율(a%)에 해당하는 값으로 결정될 수 있는데, 이러한 일정 비율은 FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다. Here, the first reference value may be determined in various ways. For example, it may be determined as a value corresponding to a certain percentage (a%) of the total number of macroblocks. The predetermined percentage may be determined for each FGS slice, or may be equally determined for the entire FGS slice, but the present invention is limited thereto. It doesn't work.

또한 상기 N은 다양하게 결정될 수 있다. 예를 들어, FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으며, 매크로블록 단위별, 매크로블록 타입별, 선택된 방법별로 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다.In addition, the N may be variously determined. For example, it may be determined for each FGS slice, may be determined for all FGS slices equally, or may be determined for each macroblock unit, macroblock type, or selected method, but the present invention is not limited thereto.

또한, 도 6의 일실시예에 고립된 매크로블록이 존재하는 경우, 상기 s603단계에서 매크로블록이 선택된 후, 고립된 매크로블록은 선택해제된다. 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록이 먼저 인코딩(s605)되고, 전체 매크로블록이 인코딩(s607)될 수 있다.In addition, when there is an isolated macroblock in the embodiment of FIG. 6, after the macroblock is selected in step s603, the isolated macroblock is deselected. The selected macroblock except for the deselected isolated macroblock may be first encoded (s605), and the entire macroblock may be encoded (s607).

도 7은 본 발명에 따른 FGS 디코딩 방법의 다른 일실시예 흐름도로서, 부호화 블록 패턴의 개수를 이용하는 일실시예 흐름도이다.7 is a flowchart of another embodiment of an FGS decoding method according to the present invention, using an embodiment of the number of coding block patterns.

도 7에 도시된 바와 같이, 먼저 각 매크로블록에 포함된 CBP의 개수가 계산되고, CBP가 존재하는 매크로블록 개수가 계산된다(s701).As shown in FIG. 7, first, the number of CBPs included in each macroblock is calculated, and the number of macroblocks in which the CBP is present is calculated (S701).

다음, CBP가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼의 매크로블록이 선택되되, CBP의 개수가 많은 순서대로 선택된다(s703). Next, as many macroblocks as the first reference value are selected among the macroblocks in which the CBP is present, and the number of CBPs is selected in ascending order (s703).

다음, 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 디코딩된다(s605). 다음, 전체 매크로블록이 디코딩된다(s707).Next, quantization coefficients other than '0' of the N macroblocks among the selected macroblocks are decoded (s605). Next, the entire macroblock is decoded (s707).

여기서 상기 제1기준값은 다양하게 결정될 수 있다. 예를 들어, 전체 매크로블록 개수의 일정 비율(a%)에 해당하는 값으로 결정될 수 있는데, 이러한 일정 비율은 FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다. Here, the first reference value may be determined in various ways. For example, it may be determined as a value corresponding to a certain percentage (a%) of the total number of macroblocks. The predetermined percentage may be determined for each FGS slice, or may be equally determined for the entire FGS slice, but the present invention is limited thereto. It doesn't work.

또한 상기 N은 다양하게 결정될 수 있다. 예를 들어, FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으며, 매크로블록 단위별, 매크로블록 타입별, 선택된 방법별로 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다.In addition, the N may be variously determined. For example, it may be determined for each FGS slice, may be determined for all FGS slices equally, or may be determined for each macroblock unit, macroblock type, or selected method, but the present invention is not limited thereto.

또한, 도 7의 일실시예에 고립된 매크로블록이 존재하는 경우, 상기 s703단계에서 매크로블록이 선택된 후, 고립된 매크로블록은 선택해제된다. 상기 선택해제 된 고립된 매크로블록을 제외한 선택된 매크로블록이 먼저 디코딩(s705)되고, 전체 매크로블록이 디코딩(s707)될 수 있다.In addition, when there is an isolated macroblock in the embodiment of FIG. 7, after the macroblock is selected in step S703, the isolated macroblock is deselected. The selected macroblock except for the deselected isolated macroblock may be decoded first (s705), and the entire macroblock may be decoded (s707).

도 8은 본 발명에 따른 FGS 인코딩 방법의 또 다른 일실시예로서, 시그니피컨트 개수 및 박스 아웃(Box-out) 스캔 오더를 이용하는 일실시예 흐름도이다.8 is a flowchart illustrating an embodiment using a number of signatures and a box-out scan order as another embodiment of the FGS encoding method according to the present invention.

시그니피컨트 정보의 양이 적을 경우, 국제 동영상 표준인 H.264의 FMO(Flexible Macroblock Ordering)에서의 Box-out 스캔 오더를 이용하여 일정한 블록들이 우선순위로 코딩될 수 있다. 이와 같은 방법을 이용하면 영상에서 중요한 가운데 부분을 먼저 코딩함으로써 주관적 화질이 높아진다. 본 발명에 따르면, 매크로블록 안에서 시그니피컨트의 개수가 많은 곳을 우선순위로 코딩하는 방법 및 Box-out 스캔 오더를 이용하여 일정한 매크로블록이 우선순위로 코딩된다.When the amount of the signature information is small, certain blocks may be coded with priority using a box-out scan order in the flexible macroblock ordering (FMO) of the international video standard H.264. Using this method, subjective picture quality is increased by coding the middle part of the image first. According to the present invention, a predetermined macroblock is coded with priority using a method of coding a place where a large number of signatures in a macroblock has a large number and a box-out scan order.

도 8에 도시된 바와 같이, 먼저 각 매크로블록에 포함된 시그니피컨트 개수가 계산되고, 시그니피컨트가 존재하는 매크로블록 개수가 계산된다(s801).As shown in FIG. 8, first, the number of signatures included in each macroblock is calculated, and the number of macroblocks in which the signature exists is calculated (S801).

다음, 시그니피컨트가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼의 매크로블록이 선택되되, 시그니피컨트의 개수가 많은 순서대로 선택된다(s803).Next, as many macroblocks as the first reference value are selected among the macroblocks in which the signatures exist, and the number of the signatures is selected in ascending order (s803).

다음, 상기 단계 s803에서 선택된 매크로블록 개수와 제2기준값을 비교하여(s805), 상기 단계 s803에서 선택된 매크로블록의 개수가 제2기준값 이상인 경우 에는, 상기 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 인코딩된다(s807). 다음, 전체 매크로블록이 인코딩된다(s809).Next, the number of macroblocks selected in the step s803 is compared with the second reference value (s805), and when the number of the macroblocks selected in the step s803 is equal to or greater than a second reference value, '0 of N macroblocks among the selected macroblocks is determined. A quantization coefficient other than 'is encoded (s807). Next, the entire macroblock is encoded (s809).

한편, 상기 단계 s803에서 선택된 매크로블록 개수와 제2기준값을 비교하여(s805), 상기 단계 s803에서 선택된 매크로블록의 개수가 제2기준값 미만인 경우에는, 상기 단계 s801에서 계산된 시그니피컨트가 존재하는 모든 매크로블록의 개수와 상기 제2기준값을 비교하여(s811), 상기 시그니피컨트가 존재하는 모든 매크로블록의 개수가 상기 제2기준값 이상인 경우에는 상기 시그니피컨트가 존재하는 매크로블록 중 제2기준값에 해당하는 개수만큼의 매크로블록이 선택되되, 시그니피컨트의 개수가 많은 순서대로 선택된다(s813). 다음, 상기 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 인코딩되고(s807), 전체 매크로블록이 인코딩된다(s809).Meanwhile, when the number of macroblocks selected in step s803 and the second reference value are compared (s805), and the number of macroblocks selected in step s803 is less than the second reference value, the signature calculated in step s801 exists. When the number of all macroblocks is compared with the second reference value (s811) and the number of all macroblocks in which the signature is present is greater than or equal to the second reference value, a second reference value among the macroblocks in which the signature exists. As many macroblocks as corresponding to the number of macroblocks are selected, the number of signatures is selected in ascending order (s813). Next, among the selected macroblocks, quantization coefficients other than '0' of N macroblocks are encoded (s807), and all macroblocks are encoded (s809).

한편, 상기 단계 s803에서 선택된 매크로블록 개수와 제2기준값을 비교하여(s805), 상기 단계 s803에서 선택된 매크로블록의 개수가 제2기준값 미만인 경우에는, 상기 단계 s801에서 계산된 시그니피컨트가 존재하는 모든 매크로블록의 개수와 상기 제2기준값을 비교하여(s811), 상기 시그니피컨트가 존재하는 모든 매크로블록의 개수가 상기 제2기준값 미만인 경우에는 상기 시그니피컨트가 존재하는 매크로블록이 전부 선택된다(s815). 다음, {(전체 매크로블록 중 제2기준값에 해당하는 매크로블록의 수) - (시그니피컨트가 존재하는 매크로블록의 수)}만큼 개수의 매크로블록이 국제동영상 표준인 H.264의 Box-out 스캔 오더대로 선택되되, 이미 선택된 매크로블록은 제외된다(s817). 다음, 상기 선택된 매크로블록에 포함된 N개의 '0'이 아닌 계수가 먼저 인코딩되고(s807), 전체 매크로블록이 인코딩된다(s809).Meanwhile, when the number of macroblocks selected in step s803 and the second reference value are compared (s805), and the number of macroblocks selected in step s803 is less than the second reference value, the signature calculated in step s801 exists. When the number of all macroblocks is compared with the second reference value (s811), when the number of all macroblocks in which the signature is present is less than the second reference value, all macroblocks in which the signature is present are selected. (s815). Next, as many as {(the number of macroblocks corresponding to the second reference value of all macroblocks)-(the number of macroblocks in which a signature is present)}, the number of macroblocks is the box-out of H.264, the international video standard. The scan block is selected according to the scan order, but the macroblock already selected is excluded (s817). Next, N non-zero coefficients included in the selected macroblock are first encoded (s807), and the entire macroblock is encoded (s809).

여기서 상기 제1기준값 및 제2기준값은 다양하게 결정될 수 있다. 예를 들어, 전체 매크로블록 개수의 일정 비율(a%, b%)에 해당하는 값으로 결정될 수 있는데, 이러한 일정 비율은 FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다. Here, the first reference value and the second reference value may be determined in various ways. For example, it may be determined by a value corresponding to a certain ratio (a%, b%) of the total number of macroblocks. The predetermined ratio may be determined for each FGS slice, or may be determined equally for the entire FGS slice. Is not limited to this.

또한 상기 N은 다양하게 결정될 수 있다. 예를 들어, FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으며, 매크로블록 단위별, 매크로블록 타입별, 선택된 방법별로 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다.In addition, the N may be variously determined. For example, it may be determined for each FGS slice, may be determined for all FGS slices equally, or may be determined for each macroblock unit, macroblock type, or selected method, but the present invention is not limited thereto.

도 8의 일실시예가 국제동영상 표준화가 진행중인 JVT(Joint Video Team)의 JSVC(Joint Scalable Video Coding)의 Cyclic FGS 코딩 방법에 적용될 경우, 단계 s807에서 상기 선택된 매크로블록이 N 싸이클 먼저 인코딩되고, 단계 s809에서 전체 매크로블록이 Cyclic FGS 코딩 방법으로 인코딩된다.When the embodiment of FIG. 8 is applied to a Cyclic FGS coding method of Joint Scalable Video Coding (JSVC) of JVT (Joint Video Team) in which international video standardization is in progress, the selected macroblock is first encoded N cycles in step s807, and step s809 The entire macroblock in is encoded by the Cyclic FGS coding method.

또한, 도 8의 일실시예에 고립된 매크로블록이 존재하는 경우, 상기 단계 s803, s813 및 s817에서 매크로블록이 선택된 후, 고립된 매크로블록은 선택해제된다. 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록이 먼저 인코딩(s807)되고, 전체 매크로블록이 인코딩(s809)될 수 있다.In addition, when there is an isolated macroblock in the embodiment of FIG. 8, after the macroblock is selected in steps s803, s813, and s817, the isolated macroblock is deselected. The selected macroblock except the deselected isolated macroblock may be encoded first (s807), and the entire macroblock may be encoded (s809).

상기 도 8에 따른 FGS 인코딩 방법은 시그니피컨트 개수 대신 CBP 개수를 적용할 수 있다.The FGS encoding method according to FIG. 8 may apply the number of CBPs instead of the number of signatures.

도 9는 본 발명에 따른 FGS 디코딩 방법의 또 다른 일실시예로서, 시그니피컨트 개수 및 박스 아웃(Box-out) 스캔 오더를 이용하는 일실시예 흐름도이다.9 is a flowchart illustrating an embodiment of using an FGS decoding method according to the present invention using a number of signatures and a box-out scan order.

도 9에 도시된 바와 같이, 먼저 각 매크로블록에 포함된 시그니피컨트 개수가 계산되고, 시그니피컨트가 존재하는 매크로블록 개수가 계산된다(s901).As shown in FIG. 9, first, the number of signatures included in each macroblock is calculated, and the number of macroblocks in which the signature exists is calculated (S901).

다음, 시그니피컨트가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼의 매크로블록이 선택되되, 시그니피컨트의 개수가 많은 순서대로 선택된다(s903).Next, as many macroblocks as the first reference value are selected among the macroblocks in which the signatures exist, and the number of the signatures is selected in ascending order (s903).

다음, 상기 단계 s903에서 선택된 매크로블록 개수와 제2기준값을 비교하여(s905), 상기 단계 s903에서 선택된 매크로블록의 개수가 제2기준값 이상인 경우에는, 상기 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 디코딩된다(s907). 다음, 전체 매크로블록이 디코딩된다(s909).Next, when the number of macroblocks selected in the step s903 and the second reference value are compared (s905), when the number of the macroblocks selected in the step s903 is equal to or greater than a second reference value, '0 of N macroblocks among the selected macroblocks' is selected. A quantization coefficient other than 'is decoded (s907). Next, the entire macroblock is decoded (s909).

한편, 상기 단계 s903에서 선택된 매크로블록 개수와 제2기준값을 비교하여(s905), 상기 단계 s903에서 선택된 매크로블록의 개수가 제2기준값 미만인 경우 에는, 상기 단계 s901에서 계산된 시그니피컨트가 존재하는 모든 매크로블록의 개수와 상기 제2기준값을 비교하여(s911), 상기 시그니피컨트가 존재하는 모든 매크로블록의 개수가 상기 제2기준값 이상인 경우에는 상기 시그니피컨트가 존재하는 매크로블록 중 제2기준값에 해당하는 개수만큼의 매크로블록이 선택되되, 시그니피컨트의 개수가 많은 순서대로 선택된다(s913). 다음, 상기 선택된 매크로블록 중에서 N개의 매크로블록의 '0'이 아닌 양자화 계수가 디코딩되고(s907), 전체 매크로블록이 디코딩된다(s909).On the other hand, when the number of macroblocks selected in step s903 and the second reference value are compared (s905), and if the number of macroblocks selected in step s903 is less than the second reference value, the signature calculated in step s901 is present. When the number of all macroblocks is compared with the second reference value (s911), when the number of all macroblocks in which the signature is present is equal to or greater than the second reference value, a second reference value among the macroblocks in which the signature exists. As many macroblocks as corresponding to the number of macroblocks are selected, the number of signatures is selected in ascending order (s913). Next, quantization coefficients other than '0' of the N macroblocks among the selected macroblocks are decoded (s907), and the entire macroblock is decoded (s909).

한편, 상기 단계 s903에서 선택된 매크로블록 개수와 제2기준값을 비교하여(s905), 상기 단계 s903에서 선택된 매크로블록의 개수가 제2기준값 미만인 경우에는, 상기 단계 s901에서 계산된 시그니피컨트가 존재하는 모든 매크로블록의 개수와 상기 제2기준값을 비교하여(s911), 상기 시그니피컨트가 존재하는 모든 매크로블록의 개수가 상기 제2기준값 미만인 경우에는 상기 시그니피컨트가 존재하는 매크로블록이 전부 선택된다(s915). 다음, {(전체 매크로블록 중 제2기준값에 해당하는 매크로블록의 수) - (시그니피컨트가 존재하는 매크로블록의 수)}만큼 개수의 매크로블록이 국제동영상 표준인 H.264의 Box-out 스캔 오더대로 선택되되, 이미 선택된 매크로블록은 제외된다(s917). 다음, 상기 선택된 매크로블록에 포함된 N개의 '0'이 아닌 계수가 먼저 디코딩되고(s907), 전체 매크로블록이 디코딩된다(s909).On the other hand, when the number of macroblocks selected in the step s903 and the second reference value is compared (s905), if the number of macroblocks selected in the step s903 is less than the second reference value, the signature calculated in the step s901 is present When the number of all macroblocks is compared with the second reference value (s911), when the number of all macroblocks in which the signature is present is less than the second reference value, all macroblocks in which the signature is present are selected. (s915). Next, as many as {(the number of macroblocks corresponding to the second reference value of all macroblocks)-(the number of macroblocks in which a signature is present)}, the number of macroblocks is the box-out of H.264, the international video standard. The scan block is selected according to the scan order, but the macroblock already selected is excluded (s917). Next, N non-zero coefficients included in the selected macroblock are first decoded (s907), and the entire macroblock is decoded (s909).

여기서 상기 제1기준값 및 제2기준값은 다양하게 결정될 수 있다. 예를 들어, 전체 매크로블록 개수의 일정 비율(a%, b%)에 해당하는 값으로 결정될 수 있는데, 이러한 일정 비율은 FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다. Here, the first reference value and the second reference value may be determined in various ways. For example, it may be determined by a value corresponding to a certain ratio (a%, b%) of the total number of macroblocks. The predetermined ratio may be determined for each FGS slice, or may be determined equally for the entire FGS slice. Is not limited to this.

또한 상기 N은 다양하게 결정될 수 있다. 예를 들어, FGS 슬라이스별로 결정될 수도 있고, 전체 FGS 슬라이스에 동일하게 결정될 수도 있으며, 매크로블록 단위별, 매크로블록 타입별, 선택된 방법별로 결정될 수도 있으나, 본 발명은 이에 한정되지 않는다.In addition, the N may be variously determined. For example, it may be determined for each FGS slice, may be determined for all FGS slices equally, or may be determined for each macroblock unit, macroblock type, or selected method, but the present invention is not limited thereto.

도 9의 일실시예가 국제동영상 표준화가 진행중인 JVT(Joint Video Team)의 JSVC(Joint Scalable Video Coding)의 Cyclic FGS 코딩 방법에 적용될 경우, 단계 s907에서 상기 선택된 매크로블록이 N 싸이클 먼저 디코딩되고, 단계 s909에서 전체 매크로블록이 Cyclic FGS 코딩 방법으로 디코딩된다.When the embodiment of FIG. 9 is applied to a Cyclic FGS coding method of Joint Scalable Video Coding (JSVC) of JVT (Joint Video Team) in which international video standardization is in progress, the selected macroblock is first decoded N cycles in step s907, and step s909. The entire macroblock is decoded by the Cyclic FGS coding method.

또한, 도 9의 일실시예에 고립된 매크로블록이 존재하는 경우, 상기 단계 s903, s913 및 s917에서 매크로블록이 선택된 후, 고립된 매크로블록은 선택해제된다. 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록이 먼저 디코딩(s907)되고, 전체 매크로블록이 디코딩(s909)될 수 있다.In addition, when there is an isolated macroblock in the embodiment of FIG. 9, after the macroblocks are selected in steps s903, s913, and s917, the isolated macroblocks are deselected. The selected macroblock except for the deselected isolated macroblock may be first decoded (s907), and the entire macroblock may be decoded (s909).

상기 도 9에 따른 FGS 디코딩 방법은 시그니피컨트 개수 대신 CBP 개수를 적용할 수 있다.In the FGS decoding method according to FIG. 9, the number of CBPs may be applied instead of the number of signatures.

본 발명에 따른 우선순위 인코딩, 디코딩 과정은 영상의 각 슬라이스 또는 슬라이스 타입(I 슬라이스, P 슬라이스, B 슬라이스)별로 선택적으로 수행되도록 할 수 있다. Priority encoding and decoding processes according to the present invention may be selectively performed for each slice or slice type (I slice, P slice, B slice) of an image.

도 10은 본 발명에 따른 우선순위를 갖는 인코딩 방법의 흐름도이다.10 is a flowchart of an encoding method having priority according to the present invention.

도 10에 도시된 바와 같이, 먼저 우선순위를 갖는 인코딩이 필요한 경우(s1001), 우선순위를 갖는 인코딩이 먼저 수행되고(s1003), 그 후 전체 매크로블록이 인코딩된다(s1005). As shown in FIG. 10, when encoding with priority is needed (s1001), encoding with priority is first performed (s1003), and then the entire macroblock is encoded (s1005).

우선순위를 갖는 인코딩이 필요하지 않은 경우(s1001), 전체 매크로블록이 인코딩된다(s1005).If encoding with priority is not required (s1001), the entire macroblock is encoded (s1005).

상기 단계 s1003은 상기 도 4, 도 6 및 도 8에 따른 FGS 인코딩 방법이 이용될 수 있다.In step S1003, the FGS encoding method according to FIGS. 4, 6, and 8 may be used.

도 11은 본 발명에 따른 우선순위를 갖는 디코딩 방법의 흐름도이다.11 is a flowchart of a decoding method having priority according to the present invention.

도 11에 도시된 바와 같이, 먼저 우선순위를 갖는 디코딩이 필요한 경우(s1101), 우선순위를 갖는 디코딩이 먼저 수행되고(s1103), 그 후 전체 매크로블록이 디코딩된다(s1005). As shown in FIG. 11, when decoding with priority is needed first (s1101), decoding with priority is first performed (s1103), and then the entire macroblock is decoded (s1005).

우선순위를 갖는 디코딩이 필요하지 않은 경우(s1001), 전체 매크로블록이 디코딩된다(s1005).If decoding with priority is not necessary (s1001), the entire macroblock is decoded (s1005).

상기 단계 s1103은 상기 도 5, 도 7 및 도 9에 따른 FGS 디코딩 방법이 이용 될 수 있다.In step S1103, the FGS decoding method according to FIGS. 5, 7, and 9 may be used.

도 12는 본 발명의 효과를 나타내는 비교 그래프로서, JVT(Joint Video Team)에서 표준화 진행을 위해 개발한 JSVM(Joint Scalable Video Model) 버전 3.3에서 엔코딩 및 디코딩을 수행할 경우(GOP(Group Of Picture)크기는 4), 본 발명에 따른 인코딩, 디코딩 방법과 종래 Cycle 엔코딩, 디코딩 방법을 비교한 그래프이다. FIG. 12 is a comparison graph illustrating the effect of the present invention, when encoding and decoding is performed in Joint Scalable Video Model (JSVM) version 3.3 developed for joint progress by a joint video team (JVT) (Group Of Picture) 4) is a graph comparing the encoding and decoding method according to the present invention with the conventional cycle encoding and decoding method.

상기 도 12는 Crew 영상 시퀀스에서 비트율 대비 PSNR (Peak Signal to Noise Ratio)를 3개의 Quality Layer(QL)로 구분하여 나타낸다. FIG. 12 illustrates PSNR (Peak Signal to Noise Ratio) divided into three Quality Layers (QLs) in a Crew image sequence.

도 13은 본 발명의 효과를 나타내는 비교 그래프로서, JSVM 버전 3.3에서 엔코딩 및 디코딩을 수행할 경우(GOP크기는 4), 본 발명에 따른 인코딩, 디코딩 방법과 종래 Cycle 엔코딩, 디코딩 방법을 비교한 그래프이다. FIG. 13 is a comparison graph showing the effect of the present invention. When encoding and decoding is performed in JSVM version 3.3 (GOP size is 4), a graph comparing the encoding and decoding method according to the present invention and the conventional cycle encoding and decoding method is shown. to be.

상기 도 13은 Football 영상 시퀀스에서 비트율 대비 PSNR (Peak Signal to Noise Ratio)를 3개의 Quality Layer(QL)로 구분하여 나타낸다. FIG. 13 illustrates a peak signal-to-noise ratio (PSNR) in three football layers (QLs) in a football video sequence.

도 12 및 도 13에 도시된 바와 같이, 동그라미 모양의 그래프는 영상 전체에 대한 결과이고, 세모 모양의 그래프는 우선순위를 갖는 부분의 코딩 결과이고, 마름모 모양의 그래프는 우선순위를 갖지 않는 부분의 코딩 결과이다. 또한, 백색 동그라미, 세모 및 마름모는 종래 Cycle 코딩 결과이고, 흑색 동그라미, 세모 및 마름모는 본 발명에 따른 코딩 결과이다.As shown in Figs. 12 and 13, the circular graph is the result of the entire image, the triangular graph is the coding result of the priority part, and the rhombus graph is the part of the non-priority part. Coding result. In addition, white circles, triangles, and rhombus are conventional Cycle coding results, and black circles, triangles, and rhombus are coding results according to the present invention.

상기 영상 전체에 대한 결과를 비교해보면, 종래 코딩 방법과 본 발명에 따른 코딩 방법의 코딩 효율에는 큰 차이가 없다. 그러나 상기 우선순위를 갖는 부분의 코딩 결과를 보면 종래 코딩 방법에 비해 본 발명에 따른 코딩 방법의 효율이 더 높고, 상기 우선순위를 갖지 않는 부분의 코딩 결과를 보면 종래 코딩 방법에 비해 본 발명에 따른 코딩 방법의 효율이 더 낮다.When comparing the results of the entire image, there is no significant difference in coding efficiency between the conventional coding method and the coding method according to the present invention. However, when the coding result of the part having the priority is higher than the conventional coding method, the efficiency of the coding method according to the present invention is higher, and the coding result of the part not having the priority is compared to the conventional coding method according to the present invention. The efficiency of the coding method is lower.

따라서, 본 발명에 따른 코딩 방법은 전체적인 코딩 효율을 변화시키지 않으면서 선택된 매크로블록의 코딩 효율을 높여 주고, 상대적으로 선택되지 않은 매크로블록의 코딩 효율을 낮추어 전체적인 코딩 성능을 평균에 맞춰주는 효과가 있다.Accordingly, the coding method according to the present invention increases the coding efficiency of the selected macroblock without changing the overall coding efficiency, and lowers the coding efficiency of the relatively unselected macroblocks, thereby matching the overall coding performance to the average. .

도 14는 Crew 영상 시퀀스의 Quality Layer 1(QL 1) 128kbps에서 종래 기술에 따른 매크로블록 위치(좌) 및 우선 순위 코딩을 하기 위해 선택된 매크로블록의 위치(우)를 나타낸다.FIG. 14 shows the macroblock position (left) and the position (right) of the macroblock selected for priority coding according to the prior art at Quality Layer 1 (QL 1) 128 kbps of a Crew image sequence.

도 15는 도 14의 선택된 매크로블록의 위치에 따라 코딩된 영상을 나타낸다.FIG. 15 illustrates an image coded according to the position of the selected macroblock of FIG. 14.

도 15에 도시된 바와 같이, 종래의 JSVC FGS 코딩 방법에 따른 영상(좌)과 본 발명의 코딩 방법에 따른 영상(우)을 비교하면, 본 발명의 코딩 방법에 따른 영상(우)의 가운데 부분의 주관적 화질이 향상되었음을 확인할 수 있다.As shown in FIG. 15, when the image (left) according to the conventional JSVC FGS coding method is compared with the image (right) according to the coding method of the present invention, the center part of the image (right) according to the coding method of the present invention is shown. It can be seen that the subjective picture quality has improved.

표 1은 상기 제1기준값, 제2기준값(이하 각각 a, b) 및 소정 개수 N을 코딩하는 방법의 일실시예로서, 각각 a, b와 N정보를 K bits, L bits, M bits로 코딩하여 디코더로 전달한다. 각 FGS 슬라이스마다 제안하는 방법에 관한 플래그 정보 및 a, b와 N의 정보를 전달한다. a 및 b의 범위는 0%에서 100%이며, N은 0부터 100까지 이다. Table 1 is an embodiment of a method of coding the first reference value, the second reference value (hereinafter, a and b) and a predetermined number N, and coding a, b and N information into K bits, L bits, and M bits, respectively. To the decoder. For each FGS slice, information about the proposed method and information about a, b, and N are transmitted. a and b range from 0% to 100%, with N ranging from 0 to 100.

JSVC의 “Slice header in scalable extension”의 신택스 아래와 같이, a, b를 각각 “alpha”와 “beta” 4 bits로 나타내고,“num_of_cycle”을 2 bits로 나타낸다. “use_preferential_coding_flag”는 제안하는 방법에 관한 플래그 정보이며, “alpha”는 시그니피컨트가 존재하는 매크로블록 중 시그니피컨트가 많은 순서대로 우선 순위를 주어 코딩할 매크로블록의 개수를 나타내는 a이고, “beta”는 한 영상 전체 매크로블록에서 반드시 우선 순위를 주어 코딩할 매크로블록의 개수를 나타내는 b이고, “num_of_cycle”은 우선 순위를 주어 먼저 코딩할 소정 개수 N을 나타낸다.Syntax of “Slice header in scalable extension” of JSVC As shown below, a and b are represented by “alpha” and “beta” 4 bits, respectively, and “num_of_cycle” is represented by 2 bits. “Use_preferential_coding_flag” is flag information on the proposed method. “Alpha” is a indicating the number of macroblocks to be coded by giving priority to the signature in the order of the macroblocks in which the signature exists. ”Denotes the number of macroblocks to be coded by giving priority to all macroblocks in an image, and“ num_of_cycle ”denotes a predetermined number N to be coded first by giving priority.

Figure 112007042570324-pat00001
Figure 112007042570324-pat00001

Figure 112007042570324-pat00002
Figure 112007042570324-pat00002

Figure 112007042570324-pat00003
Figure 112007042570324-pat00003

표 2는 a, b의 범위를 나타낸다.Table 2 shows the range of a and b.

Figure 112007042570324-pat00004
Figure 112007042570324-pat00004

표 3은 N의 범위를 나타낸다.Table 3 shows the range of N.

Figure 112007042570324-pat00005
Figure 112007042570324-pat00005

본 발명에서 a, b와 N를 코딩 방법의 또 다른 일실시예로 인코더 및 디코더에서 특정값을 정하여 인코더에서 디코더로 어떠한 정보의 전달없이 같은 특정값을 이용하여 인코딩 및 디코딩을 수행할 수 있다.In another embodiment of the present invention, coding methods for a, b and N may be encoded and decoded using the same specific value without passing any information from the encoder to the decoder by specifying a specific value at the encoder and the decoder.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.As described above, the method of the present invention may be implemented as a program and stored in a recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.) in a computer-readable form. Since this process can be easily implemented by those skilled in the art will not be described in more detail.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes can be made in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

상기한 바와 같이 본 발명은, FGS 코딩에서 중요영역을 우선적으로 코딩함으로써 동일한 비트율로 주관적인 화질을 높일 수 있다.As described above, the present invention can improve subjective picture quality at the same bit rate by preferentially coding a critical region in FGS coding.

Claims (12)

FGS코딩에서 인코딩 방법에 있어서,In the encoding method in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계;A macroblock calculation step of calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택단계;A macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in the order of a large prediction error; 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0' 아닌 양자화 계수를 인코딩하는 부분 인코딩단계; 및A partial encoding step of encoding a non-zero quantization coefficient of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection step; And 전체 매크로블록을 인코딩하는 전체 인코딩단계Full encoding step to encode entire macroblocks 를 포함하는 인코딩 방법.Encoding method comprising a. 제1항에 있어서,The method of claim 1, 상기 부분 인코딩단계는The partial encoding step 상기 매크로블록 선택단계로부터 선택된 매크로블록 중에서 주변에 선택된 매크로블록이 없는 고립된 매크로블록이 존재하는 경우, 상기 고립된 매크로블록을 선택해제하고, 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록을 인코딩하는If there is an isolated macroblock without selected macroblocks among the macroblocks selected from the macroblock selection step, deselect the isolated macroblock and select the selected macroblock except for the deselected isolated macroblock. Encoding 인코딩 방법.Encoding Method. FGS코딩에서 디코딩 방법에 있어서,In the decoding method in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계;A macroblock calculation step of calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택단계;A macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in the order of a large prediction error; 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 디코딩하는 부분 디코딩단계; 및A partial decoding step of decoding a non-zero quantization coefficient of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection step; And 전체 매크로블록을 인코딩하는 전체 디코딩단계Full decoding step of encoding entire macroblocks 를 포함하는 디코딩 방법.Decoding method comprising a. 제3항에 있어서,The method of claim 3, 상기 부분 디코딩단계는The partial decoding step 상기 매크로블록 선택단계로부터 선택된 매크로블록 중에서 주변에 선택된 매크로블록이 없는 주변에 선택된 매크로블록이 없는 고립된 매크로블록이 존재하는 경우, 상기 고립된 매크로블록을 선택해제하고, 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록을 디코딩하는If there is an isolated macroblock with no selected macroblock around no macroblock selected from among the macroblocks selected from the macroblock selection step, deselect the isolated macroblock and deselect the isolated macroblock. To decode the selected macroblock 디코딩 방법.Decoding method. FGS코딩에서 인코딩 방법에 있어서,In the encoding method in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계;A macroblock calculation step of calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 제1매크로블록 선택단계;A first macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in the order of a large prediction error; 상기 매크로블록 선택단계로부터 선택된 매크로블록 개수와 제2기준값에 해당하는 매크로블록 개수을 비교하는 제1비교단계;A first comparing step of comparing the number of macroblocks selected from the macroblock selection step with the number of macroblocks corresponding to a second reference value; 상기 제1비교단계의 결과 상기 매크로블록 선택단계로부터 선택된 매크로블록 개수가 제2기준값에 해당하는 매크로블록 개수 이상인 경우, 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 인코딩하는 부분 인코딩단계; 및When the number of macroblocks selected from the macroblock selection step is greater than or equal to the number of macroblocks corresponding to a second reference value as a result of the first comparison step, '0' of a predetermined number of macroblocks from the macroblock selection step is selected. A partial encoding step of encoding non-quantization coefficients; And 전체 매크로블록을 인코딩하는 전체 인코딩단계Full encoding step to encode entire macroblocks 를 포함하는 인코딩 방법.Encoding method comprising a. 제5항에 있어서,The method of claim 5, 상기 부분 인코딩단계는The partial encoding step 상기 매크로블록 선택단계로부터 선택된 매크로블록 중에서 주변에 선택된 매크로블록이 없는 고립된 매크로블록이 존재하는 경우, 상기 고립된 매크로블록을 선택해제하고, 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록을 인코딩하는If there is an isolated macroblock without selected macroblocks among the macroblocks selected from the macroblock selection step, deselect the isolated macroblock and select the selected macroblock except for the deselected isolated macroblock. Encoding 인코딩 방법.Encoding Method. FGS코딩에서 디코딩 방법에 있어서,In the decoding method in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산단계;A macroblock calculation step of calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 제1매크로블록 선택단계;A first macroblock selection step of selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in the order of a large prediction error; 상기 매크로블록 선택단계로부터 선택된 매크로블록 개수와 제2기준값에 해당하는 매크로블록 개수을 비교하는 제1비교단계;A first comparing step of comparing the number of macroblocks selected from the macroblock selection step with the number of macroblocks corresponding to a second reference value; 상기 제1비교단계의 결과 상기 매크로블록 선택단계로부터 선택된 매크로블록 개수가 제2기준값에 해당하는 매크로블록 개수 이상인 경우, 상기 매크로블록 선택단계로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 디코딩하는 부분 디코딩단계; 및When the number of macroblocks selected from the macroblock selection step is greater than or equal to the number of macroblocks corresponding to a second reference value as a result of the first comparison step, '0' of a predetermined number of macroblocks from the macroblock selection step is selected. A partial decoding step of decoding the non-quantization coefficients; And 전체 매크로블록을 디코딩하는 전체 디코딩단계Full decoding step of decoding entire macroblock 를 포함하는 디코딩 방법.Decoding method comprising a. 제7항에 있어서,The method of claim 7, wherein 상기 부분 디코딩단계는The partial decoding step 상기 매크로블록 선택단계로부터 선택된 매크로블록 중에서 주변에 선택된 매크로블록이 없는 고립된 매크로블록이 존재하는 경우, 상기 고립된 매크로블록을 선택해제하고, 상기 선택해제된 고립된 매크로블록을 제외한 선택된 매크로블록을 디코딩하는If there is an isolated macroblock without selected macroblocks among the macroblocks selected from the macroblock selection step, deselect the isolated macroblock and select the selected macroblock except for the deselected isolated macroblock. Decoded 디코딩 방법.Decoding method. FGS코딩에서 인코딩 장치에 있어서,For the encoding device in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산수단;Macroblock calculation means for calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택수단;Macroblock selecting means for selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of increasing prediction error; 상기 매크로블록 선택수단로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0' 아닌 양자화 계수를 인코딩하는 부분 인코딩수단; 및Partial encoding means for encoding non-zero quantization coefficients of a predetermined number of macroblocks among the macroblocks selected from the macroblock selecting means; And 전체 매크로블록을 인코딩하는 전체 인코딩수단Full encoding means for encoding entire macroblocks 을 포함하는 인코딩 장치.Encoding device comprising a. FGS코딩에서 디코딩 장치에 있어서,A decoding apparatus in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산수단;Macroblock calculation means for calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 매크로블록 선택수단;Macroblock selecting means for selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of increasing prediction error; 상기 매크로블록 선택수단로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 디코딩하는 부분 디코딩수단; 및Partial decoding means for decoding non-zero quantization coefficients of a predetermined number of macroblocks among macroblocks selected from the macroblock selecting means; And 전체 매크로블록을 인코딩하는 전체 디코딩수단Full decoding means for encoding entire macroblocks 을 포함하는 디코딩 장치.Decoding apparatus comprising a. FGS코딩에서 인코딩 장치에 있어서,For the encoding device in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산수단;Macroblock calculation means for calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 제1매크로블록 선택수단;First macroblock selecting means for selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of increasing prediction error; 상기 매크로블록 선택수단로부터 선택된 매크로블록 개수와 제2기준값에 해당하는 매크로블록 개수을 비교하는 제1비교수단;First comparing means for comparing the number of macroblocks selected from the macroblock selecting means with the number of macroblocks corresponding to a second reference value; 상기 제1비교수단의 결과 상기 매크로블록 선택수단로부터 선택된 매크로블록 개수가 제2기준값에 해당하는 매크로블록 개수 이상인 경우, 상기 매크로블록 선택수단로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 인코딩하는 부분 인코딩수단; 및When the number of macroblocks selected from the macroblock selection means is equal to or greater than the number of macroblocks corresponding to a second reference value as a result of the first comparing means, '0' of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection means. Partial encoding means for encoding non-quantization coefficients; And 전체 매크로블록을 인코딩하는 전체 인코딩수단Full encoding means for encoding entire macroblocks 을 포함하는 인코딩 장치.Encoding device comprising a. FGS코딩에서 디코딩 장치에 있어서,A decoding apparatus in FGS coding, 매크로블록 단위로 예측 오차가 존재하는 매크로블록을 계산하고, 상기 예측 오차가 존재하는 매크로블록의 개수를 계산하는 매크로블록 계산수단;Macroblock calculation means for calculating a macroblock in which a prediction error exists in macroblock units and calculating the number of macroblocks in which the prediction error exists; 상기 예측 오차가 존재하는 매크로블록 중 제1기준값에 해당하는 개수만큼 매크로블록을 선택하되, 예측오차가 큰 순서대로 선택하는 제1매크로블록 선택수단;First macroblock selecting means for selecting macroblocks corresponding to a first reference value among macroblocks in which the prediction error exists, and selecting the macroblocks in order of increasing prediction error; 상기 매크로블록 선택수단로부터 선택된 매크로블록 개수와 제2기준값에 해당하는 매크로블록 개수을 비교하는 제1비교수단;First comparing means for comparing the number of macroblocks selected from the macroblock selecting means with the number of macroblocks corresponding to a second reference value; 상기 제1비교수단의 결과 상기 매크로블록 선택수단로부터 선택된 매크로블록 개수가 제2기준값에 해당하는 매크로블록 개수 이상인 경우, 상기 매크로블록 선택수단로부터 선택된 매크로블록들 중에서 소정 개수의 매크로블록의 '0'이 아닌 양자화 계수를 디코딩하는 부분 디코딩수단; 및When the number of macroblocks selected from the macroblock selection means is equal to or greater than the number of macroblocks corresponding to a second reference value as a result of the first comparing means, '0' of a predetermined number of macroblocks among the macroblocks selected from the macroblock selection means. Partial decoding means for decoding the non-quantized coefficients; And 전체 매크로블록을 디코딩하는 전체 디코딩수단Total decoding means for decoding entire macroblocks 를 포함하는 디코딩 장치.Decoding apparatus comprising a.
KR1020070057491A 2006-06-12 2007-06-12 Method and Apparatus for preferential encoding/decoding in Fine Granular Scalability KR100856064B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20060052754 2006-06-12
KR1020060052754 2006-06-12

Publications (2)

Publication Number Publication Date
KR20070118560A KR20070118560A (en) 2007-12-17
KR100856064B1 true KR100856064B1 (en) 2008-09-02

Family

ID=39137236

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070057491A KR100856064B1 (en) 2006-06-12 2007-06-12 Method and Apparatus for preferential encoding/decoding in Fine Granular Scalability

Country Status (1)

Country Link
KR (1) KR100856064B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100942700B1 (en) * 2007-12-17 2010-02-17 한국전자통신연구원 Fine-granular scalability coding/decoding method and apparatus
KR101479129B1 (en) 2009-10-01 2015-01-06 에스케이텔레콤 주식회사 Video Coding Method and Apparatus Using Variable size Macroblock
WO2011040796A2 (en) * 2009-10-01 2011-04-07 에스케이텔레콤 주식회사 Method and apparatus for encoding/decoding image using variable-size macroblocks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063536A (en) * 2002-01-22 2003-07-31 삼성전자주식회사 Region of interest (ROI) coding method and apparatus with slice structure
KR20030081772A (en) * 2002-04-12 2003-10-22 한국과학기술원 coding/decoding method and apparatus of rectangular region-based selective enhancement for MPEG-4 FGS video
KR20040091682A (en) * 2002-03-05 2004-10-28 코닌클리케 필립스 일렉트로닉스 엔.브이. Method and system for layered video encoding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063536A (en) * 2002-01-22 2003-07-31 삼성전자주식회사 Region of interest (ROI) coding method and apparatus with slice structure
KR20040091682A (en) * 2002-03-05 2004-10-28 코닌클리케 필립스 일렉트로닉스 엔.브이. Method and system for layered video encoding
KR20030081772A (en) * 2002-04-12 2003-10-22 한국과학기술원 coding/decoding method and apparatus of rectangular region-based selective enhancement for MPEG-4 FGS video

Also Published As

Publication number Publication date
KR20070118560A (en) 2007-12-17

Similar Documents

Publication Publication Date Title
JP6708716B2 (en) Method for decoding video, method for encoding video, decoder, encoder, computer-readable recording medium recording decoding program, and computer-readable recording medium recording encoding program
JP6823028B2 (en) Video decoding method and video decoding device
EP1878260B1 (en) Method for scalably encoding and decoding video signal
KR100667806B1 (en) Method and apparatus for video encoding and decoding
US7277484B2 (en) Image coding and decoding method and apparatus considering human visual characteristics
JP6588507B2 (en) Decoding method, decoding apparatus, encoding method, and encoding apparatus.
JP2008536438A (en) Method and apparatus for decoding video signal using reference picture
KR20060043115A (en) Method and apparatus for encoding/decoding video signal using base layer
TWI650992B (en) Video coding method
WO2008136607A1 (en) Method and apparatus for encoding and decoding multi-view video data
GB2509998A (en) Providing a prediction mode for image encoding based on a first set of most probable modes (MPMs) and a selected second, restricted number of prediction modes
KR100883603B1 (en) Method and apparatus for decoding video signal using reference pictures
CN102598673A (en) Dynamic reference frame reordering for frame sequential stereoscopic video encoding
KR100963424B1 (en) Scalable video decoder and controlling method for the same
JP5841944B2 (en) Scalable image encoding and decoding
KR20150033194A (en) Parallel Encoding/Decoding Method and Apparatus
JPH11122617A (en) Image compression
KR100856064B1 (en) Method and Apparatus for preferential encoding/decoding in Fine Granular Scalability
KR100603592B1 (en) Intelligent Water ring scan apparatus and method using Quality Factor, video coding/decoding apparatus and method using that
KR101529903B1 (en) Block-based depth map coding method and apparatus and 3D video coding method using the method
KR20060063619A (en) Method for encoding and decoding video signal
KR100775788B1 (en) Method of Coding for Improving Quality of Video by Flexible Macro Block Ordering based on Cyclic Fine Granularity Scalability
KR100880639B1 (en) Method and apparatus for encoding video signal, and transmitting and decoding the encoded data
KR100528324B1 (en) Apparatus and method for coding and decoding image using overlapped rectangular slices
KR20060045797A (en) Method and apparatus for adaptively dividing the size of gop in video coding based on hierarchical b-picture

Legal Events

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

Payment date: 20120816

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130719

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee