KR20050002296A - Apparatus and method of transcoding for down-scaling video transcoding by adaptive motion vector resampling algorithm - Google Patents
Apparatus and method of transcoding for down-scaling video transcoding by adaptive motion vector resampling algorithm Download PDFInfo
- Publication number
- KR20050002296A KR20050002296A KR1020030043667A KR20030043667A KR20050002296A KR 20050002296 A KR20050002296 A KR 20050002296A KR 1020030043667 A KR1020030043667 A KR 1020030043667A KR 20030043667 A KR20030043667 A KR 20030043667A KR 20050002296 A KR20050002296 A KR 20050002296A
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- video
- video signal
- reduced
- macroblock
- Prior art date
Links
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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/164—Feedback from the receiver or from the transmission channel
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- 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/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치 및 방법에 관한 것으로, VOD(Video on Demand; 주문형 동영상) 서버에 저장된 비트열의 전송률보다 낮은 전송률의 네트워크로 비트열을 전송하거나, 높은 레벨의 비디오 비트열을 낮은 레벨의 비디오 비트열로 효율적인 계산을 통해 변환을 시행한 후 전송하여 양질의 VOD 서비스를 제공할 수 있도록 하는 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for video screen reduction and conversion code using an adaptive motion vector selection algorithm. The present invention relates to transmitting a bit stream over a network having a lower bit rate than a bit rate stored in a video on demand (VOD) server, Video screen reduction and conversion encoder using an adaptive motion vector selection algorithm to convert high level video bit streams into low level video bit streams through efficient calculation and transmit them to provide high quality VOD services. It is about a method.
최근 인터넷, 케이블 또는 무선망을 통한 VOD 서비스의 수요가 증가하고 있다. 실시간으로 비디오 신호를 부호화하여 전송하는 쌍방향 비디오(Interactive Video)와는 달리, VOD 서비스에서는 비디오를 사전에 미리 부호화한 후 비트열을 서버에 저장하고, 소비자의 요청에 의해서 소비자에게 전송하게 된다.Recently, the demand for VOD service through the Internet, cable or wireless network is increasing. Unlike interactive video, which encodes and transmits a video signal in real time, a VOD service encodes a video in advance, stores a bit string in a server, and transmits the bit stream to a consumer at the request of the consumer.
비디오를 부호화할 당시의 전송률과 다른 전송률의 네트워크로 비트열을 전송하거나, 비디오 부호화 당시의 비디오 표준과 다른 표준의 복호기를 가지는 소비자에게 전송해야 하는 경우 이미 부호화된 비트열을 그대로 전송할 수 없다.If a bit string is transmitted to a network having a data rate different from that at the time of encoding a video, or transmitted to a consumer having a decoder of a standard different from the video standard at the time of video encoding, the bit string already encoded cannot be transmitted as it is.
따라서, 네트워크의 종류와 응용이 다양해짐으로써 서버에 저장했던 비트열을 네트워크의 특성이나 사용자의 복호기 특성에 맞도록 변환시킬 필요가 대두되었으며, 이를 위하여 이미 저장된 비트열의 전송률이나 형식을 바꾸어 다시 부호화하는 변환 부호 장치가 개발되었다.Therefore, as the network types and applications are diversified, it is necessary to convert the bit strings stored in the server to match the characteristics of the network or the decoder function of the user. A transcoding device has been developed.
이때, 비트열의 원래 전송률보다 현저히 낮은 전송률로 변환 부호화해야 하는 경우 보다 큰 양자기값을 사용하여 더 많은 압축을 해야 하므로 화질이 많이 저하하게 된다. 이 경우 비디오 화면의 크기를 2:1로 표본추출(sub-sampling)하여 줄여서 부호화하면 화질의 열화를 크게 줄일 수 있다.In this case, when the encoding is required to be performed at a significantly lower bit rate than the original bit rate of the bit string, since more compression is required using a larger quantum value, the image quality deteriorates much. In this case, if the size of the video screen is sub-sampled and encoded by 2: 1, the deterioration of image quality can be greatly reduced.
복호기에서는 작아진 화면 크기로 볼 수도 있고 이를 다시 필터를 사용하여 2:1 로 보간 확대(interpolation)하면 원래 크기로도 볼 수 있다. 또한 DVD(Digital Versatile Disk)나 케이블 티비에도 많이 사용되는 MPEG(Moving Picture Experts Group)-2 비디오는 TV 급 크기인 CCIR(Committee Consultative International des Radio Communications)-601 포맷(720×480 화소) 영상을 부호화하지만 MPEG-1 비디오는 이의 4분의 1 크기인 CIF(Common Intermediate Format) 포맷(360×240화소)영상을 부호화한다.In the decoder, you can see a smaller screen size, or you can use a filter to interpolate 2: 1 to see the original size. Moving Picture Experts Group (MPEG) -2 video, also commonly used for DVD (Digital Versatile Disk) and cable TV, encodes TV-committed Committee Consultative International des Radio Communications (CCIR) -601 format (720 × 480 pixels). However, MPEG-1 video encodes a CIF (Common Intermediate Format) format (360 x 240 pixels) image, which is one quarter of its size.
따라서, 전송률이 비트열의 전송률보다 현저히 낮은 네트워크로 서비스해야 하거나, MPEG-2 비디오 비트열을 MPEG-1 단말기를 가진 소비자에게 서비스하려면 비트열을 변환해야 한다. 화면 크기를 축소하여 비트열을 변환할 때 움직임 벡터를 새로이 계산하여야 하는데, 일반적인 움직임 벡터 추정 계산은 상당히 많은 계산량과 복잡도를 필요로 하며 전체 부호기 계산량의 60% 이상에 해당한다.Thus, the bitrate must be serviced over a network where the bitrate is significantly lower than the bitrate, or the bitstream must be converted to serve the MPEG-2 video bitstream to consumers with MPEG-1 terminals. When transforming the bit stream by reducing the screen size, a new motion vector must be calculated. The general motion vector estimation calculation requires a great deal of computation and complexity, and corresponds to more than 60% of the total encoder computation.
상기와 같은 문제를 해결하기 위하여, 본 발명은 VOD 시스템의 변환 부호 장치에서 계산량을 줄이기 위해 움직임 벡터를 추정하지 않고, 원래 비트열로부터 복호한 움직임 벡터 정보를 사용하여 화면을 축소함으로써 움직임 벡터 추정을 위한 과도한 계산량없이 소비자에게 VOD 서비스를 제공할 수 있는 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치 및 방법을 제공함에 그 목적이 있다.In order to solve the above problem, the present invention does not estimate the motion vector in order to reduce the amount of computation in the transform coded apparatus of the VOD system, and reduces the screen by using the motion vector information decoded from the original bit stream. It is an object of the present invention to provide a video screen reduction conversion encoding apparatus and method using an adaptive motion vector selection algorithm that can provide a VOD service to a consumer without excessive calculation amount.
도 1은 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치의 구조를 나타낸 블록도이다.1 is a block diagram illustrating a structure of a video screen reduction and conversion code apparatus using an adaptive motion vector selection algorithm according to an embodiment of the present invention.
도 2는 본 발명의 실시 예에 따른 움직임 벡터 추정과 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소의 계산량 비교를 나타낸다.2 illustrates a comparison of a computation amount of video screen reduction using motion vector estimation and an adaptive motion vector selection algorithm according to an embodiment of the present invention.
도 3은 본 발명의 실시 예에 따른 4개의 원래 움직임 벡터와 1개의 움직임 벡터의 예를 나타낸다.3 shows an example of four original motion vectors and one motion vector according to an embodiment of the present invention.
도 4는 본 발명의 실시 예에 따른 4가지 종류의 움직임 벡터 집단을 나타낸다.4 illustrates four types of motion vector groups according to an embodiment of the present invention.
도 5는 본 발명의 실시 예에 따른 3가지 비디오로 실험한 움직임 벡터 집단의 백분율의 예를 나타낸다.Figure 5 shows an example of the percentage of the motion vector group experimented with three videos according to an embodiment of the present invention.
도 6은 본 발명의 실시 예에 따른 전역 추정 방법, 적응적 움직임 벡터 선택 알고리즘, 가중평균 방법의 PSNR 비교를 나타낸다.6 illustrates a PSNR comparison between a global estimation method, an adaptive motion vector selection algorithm, and a weighted average method according to an embodiment of the present invention.
도 7은 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호방법에 의해 변환된 화면 모습을 나타낸다.7 is a view of a screen converted by a video screen reduction conversion code method using an adaptive motion vector selection algorithm according to an embodiment of the present invention.
본 발명의 하나의 특징에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치는,According to one aspect of the present invention, a video screen reduction conversion encoding apparatus using an adaptive motion vector selection algorithm is provided.
서버로부터 직접 비트열을 수신하거나 무선 채널 또는 네트워크로부터 전송되는 비디오 비트열을 수신하여 복호화하고, 다시 특정 채널 또는 네트워크로 전송하기 위하여 해당 채널 및 네트워크의 환경에 맞도록 화면을 축소하여 부호화하는 변환 부호장치에 있어서, 상기 비트열을 수신하여 비디오 신호를 복호화하는 복호부; 와 상기 복호부가 복호화한 비디오 신호를 수신하여 전송하고자 하는 특정 채널 또는 네트워크의 환경에 맞도록 다수의 매크로 블록의 움직임 벡터로부터 가능성 점수를 구하고, 상기 구해진 가능성 점수를 이용하여 축소된 매크로 블록의 움직임 벡터를 선택하여 축소된 비디오 신호를 부호화하는 부호부를 포함한다.Conversion code for reducing and encoding the screen to fit the environment of the channel and network in order to receive and decode the bit stream directly from the server or to receive and decode the video bit string transmitted from the wireless channel or network. An apparatus, comprising: a decoder configured to receive the bit string and decode a video signal; And obtain a likelihood score from the motion vectors of the plurality of macroblocks to fit the environment of a specific channel or network to receive and transmit the video signal decoded by the decoder, and use the obtained likelihood score to reduce the reduced motion vector of the macroblock. And a coder for encoding the reduced video signal.
특히, 상기 부호부는, 상기 복호부가 복호화한 비디오 신호를 입력받아 비디오 화면을 축호하는 축소 셈플링부; 이산여현 신호로 변환하는 이산여현변환부; 전송률 제어에 의해 양자기화하는 양자기화부; 상기 양자기화부가 양자기화한 비디오 신호를 가변길이 부호화하여 비트열로 출력하는 가변길이 부호화부; 상기 양자기화부가 양자기화한 비디오신호를 역양자기화 하는 역양자기화부; 상기 역양자기화부가 영 양자기화한 비디오신호를 역 이산여현변환 시키는 역이산여현 변환부; 상기 역이산여현 변환부가 역이산여현 변환한 복수개의 매크로블록의 움직임 벡터로부터 가능성 점수를 계산하고, 상기 축소 샘플링부가 축소한 비디오 화면을 저장하는 메모리부; 및 상기 메모리부에 저장된 축소 비디오 화면을 상기 가능성 점수에 따라 축소 매크로 블록의 움직임 벡터를 선택하여 움직임 보상을 수행하는 움직임 보상부를 포함한다.In particular, the coder may include a reduced sampling unit configured to receive a video signal decoded by the decoder and to decode a video screen; A discrete cosine converting unit converting the discrete cosine signal; A quantization vaporizer for quantizing by rate control; A variable length encoder for variable length encoding the video signal quantized by the quantizer and outputting it as a bit string; An inverse quantizer for inversely quantizing the video signal quantized by the quantizer; An inverse discrete cosine transforming unit for inverse discrete cosine transforming the video signal zero-quantized by the inverse quantization unit; A memory unit for calculating a likelihood score from the motion vectors of the plurality of macroblocks inversely discrete cosine transformed by the inverse discrete cosine transform and storing the reduced video screen of the reduced sampling unit; And a motion compensation unit configured to perform motion compensation by selecting a motion vector of the reduced macro block based on the likelihood score on the reduced video screen stored in the memory unit.
그리고, 상기 이산여현 변환부가 이산여현 변환한 축소 비디오 화면의 신호를 상기 양자기화부 및 가변길이 부호부를 통해 비트열로 변환되어 특정 채널 또는 네트워크로 하는 것을 특징으로 한다.The discrete cosine transformed signal of the reduced video screen, which is discrete cosine transformed, is converted into a bit string through the quantizer and the variable length coder to be a specific channel or a network.
본 발명의 하나의 특징에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호 방법은,The video screen reduction conversion code method using the adaptive motion vector selection algorithm according to an aspect of the present invention,
서버로부터 직접 비트열을 수신하거나 무선 채널 또는 네트워크로부터 전송되는 비디오 비트열을 수신하여 복호화하고, 다시 특정 채널 또는 네트워크로 전송하기 위하여 해당 채널 및 네트워크의 환경에 맞도록 화면을 축소하여 부호화하는 변환 부호장치가 비디오 화면을 축소하여 변환 부호화하는 방법에, (a) 상기 변환 부호 장치가 상기 비디오 비트열을 복호화하여 비디오 신호로 생성하는 단계; (b) 상기 복호된 비디오 신호를 축소 샘플링 하는 단계; (c) 상기 비디오 신호를 이산여현 변환한 후 전송률 제어에 의해 양자기화하고, 상기 전송률 제어에 의해 양자기화된 비디오 신호를 역양자기화 및 역이산여현 변환을 거쳐 원래 매크로블록으로 복호화하고, 복수개의 원래 매크로 블록의 움직임 벡터로부터 가능성 점수를 계산하는 단계; 및 (d) 상기 다수의 매크로 블록 중에서 계산된 가능성 점수가 가장 큰 원래 매크로 블록의 움직임 벡터를 선택하여 비디오 화면 축소된 비트열로 변환하여 전송하는 단계를 포함한다.Conversion code for reducing and encoding the screen to fit the environment of the channel and network in order to receive and decode the bit stream directly from the server or to receive and decode the video bit string transmitted from the wireless channel or network. A method of transcoding and encoding a video screen by an apparatus, the method comprising: (a) generating a video signal by decoding the video bit stream by the transcoding apparatus; (b) downsampling the decoded video signal; (c) after the discrete cosine transforming of the video signal, quantization is performed by the rate control, the quantized video signal by the rate control is decoded into the original macroblock through inverse quantization and inverse discrete cosine transform, and a plurality of Calculating a likelihood score from the motion vector of the original macroblock; And (d) selecting a motion vector of the original macroblock having the largest probability score calculated from among the plurality of macroblocks, converting the transform vector into a reduced bit string of a video screen, and transmitting the same.
특히, 상기 가능성 점수는 원래 매크로 블록의 활동도, 양자기 스텝크기와 원래 매크로 블록의 움직임 벡터간의 거리가 1 보다 작은 집단의 개수, 원래 매크로 블록의 움직임 벡터의 크기를 이용하여 계산하는 것을 특징으로 한다.In particular, the likelihood score is calculated using the activity of the original macroblock, the number of groups in which the distance between the quantizer step size and the motion vector of the original macroblock is less than 1, and the size of the motion vector of the original macroblock. do.
또한, 상기 (d) 단계에서 선택된 원래 매크로 블록의 움직임 벡터를 이용하여 축소된 매크로 블록의 움직임 벡터는 다음 식에 의해 결정되는 것을 특징으로 한다.In addition, the motion vector of the macroblock reduced by using the motion vector of the original macroblock selected in the step (d) is characterized by the following equation.
여기서, m 은 m:1 축소 비율이며, i 는 가능성 점수가 가장 높은 매크로블록의 번호이다. Where m is the m: 1 reduction ratio and i is the number of the macroblock with the highest likelihood score.
그리고, 상기 (b) 단계에서 상기 다수의 매크로 블록의 가능성 점수가 모두 같은 경우, 다음 식에 따른 가중평균값을 이용하여 비디오 화면을 축소하는 단계를 더 포함한다.If the likelihood scores of the plurality of macroblocks are the same in step (b), the method further includes reducing the video screen by using a weighted average value according to the following equation.
여기서, m 은 m:1 축소비율이며, i 는 가능성 점수가 가장 큰 매크로 블록의 번호, Q는 원래 매크로 블록의 양자기 스텝 크기이며, A는원래 매크로 블록의 활동도로서 0이 아닌 DCT 계수의 개수이다. Where m is the m: 1 reduction ratio, i is the number of the macroblock with the highest likelihood score, Q is the quantum step size of the original macroblock, and A is the activity of the original macroblock, Count
본 발명의 하나의 특징에 따른 기록매체에 있어서,In a recording medium according to one aspect of the present invention,
서버로부터 직접 비트열을 수신하거나 무선 채널 또는 네트워크로부터 전송되는 비디오 비트열을 수신하여 복호화하고, 다시 특정 채널 또는 네트워크로 전송하기 위하여 해당 채널 및 네트워크의 환경에 맞도록 화면을 축소하여 부호화하는 변환 부호장치가 비디오 화면을 축소하여 변환 부호화하는 기능을 포함한 프로그램이 저장된 기록매체에 있어서, (a) 상기 변환 부호 장치가 상기 비디오 비트열을 복호화하여 비디오 신호로 생성하는 기능; (b) 상기 복호된 비디오 신호를 축소 샘플링하는 기능; (c) 상기 비디오 신호를 이산여현 변환한 후 전송률 제어에 의해 양자기화하고, 상기 전송률 제어에 의해 양자기화된 비디오 신호를 역양자기화 및 역이산여현 변환을 거쳐 원래 매크로블록으로 복호화하고, 복수개의 원래 매크로 블록의 움직임 벡터로부터 가능성 점수를 계산하는 기능; 및 (d) 상기 다수의 매크로 블록 중에서 계산된 가능성 점수가 가장 큰 원래 매크로 블록의 움직임 벡터를 선택하여 비디오 화면 축소된 비트열로 변환하여 전송하는 기능을 포함한다.Conversion code for reducing and encoding the screen to fit the environment of the channel and network in order to receive and decode the bit stream directly from the server or to receive and decode the video bit string transmitted from the wireless channel or network. A recording medium storing a program including a function of converting and encoding a video screen by a device, comprising: (a) a function of the transcoding device to decode the video bit stream to generate a video signal; (b) downsampling the decoded video signal; (c) after the discrete cosine transforming of the video signal, quantization is performed by the rate control, the quantized video signal by the rate control is decoded into the original macroblock through inverse quantization and inverse discrete cosine transform, and a plurality of Calculating a likelihood score from the motion vector of the original macroblock; And (d) selecting a motion vector of the original macroblock having the largest probability score calculated from among the plurality of macroblocks, converting the bitmap into a reduced bitstream of the video screen, and transmitting the same.
그리고, 상기 다수의 매크로 블록의 가능성 점수가 모두 같은 경우 가중 평균값을 이용하여 축소된 매크로 블록의 움직임 벡터를 구하는 기능을 더 포함한다.If the likelihood scores of the plurality of macroblocks are all the same, the method further includes a function of obtaining a motion vector of the reduced macroblock using a weighted average value.
아래에서는 첨부한 도면을 참고로 하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시 예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 첨부된 도면은 본 발명을 명확하게 설명하기위해 본 발명의 설명과 관계없는 부분은 생략하였으며, 동일 또는 유사한 부분에 대해서는 동일한 도면 부호를 붙였다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the accompanying drawings, parts irrelevant to the description of the present invention have been omitted for clarity, and like reference numerals designate like parts.
도 1은 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치의 구조를 나타낸 블록도이다.1 is a block diagram illustrating a structure of a video screen reduction and conversion code apparatus using an adaptive motion vector selection algorithm according to an embodiment of the present invention.
도 1을 참조하면, 복호부(110)와 부호부(120)를 포함한다.Referring to FIG. 1, a decoder 110 and a encoder 120 are included.
그리고, 복호부(110)는 가변길이 복호부(111), 제 1 역양자기부(112), 제 1 역이산여현 변환부(113), 제 1 움직임 보상부(114) 및 제 1 메모리(115)를 포함하며, 부호부(120)는 축소 샘플링부(121), 이산여현 변환부(122), 양자기화부(123), 가변길이 부호부(124), 제 2 역양자기부(125), 제 2 역이산여현 변환부(126), 제 2 메모리부(127) 및 제 2 움직임 보상부(128)를 포함한다.The decoder 110 may include a variable length decoder 111, a first inverse quantum generator 112, a first inverse discrete cosine transform unit 113, a first motion compensator 114, and a first memory 115. The coder 120 includes a reduced sampling unit 121, a discrete cosine transform unit 122, a quantization unit 123, a variable length code unit 124, a second inverse quantum unit 125, A second inverse discrete cosine transforming unit 126, a second memory unit 127, and a second motion compensating unit 128 are included.
복호부(110)의 가변길이 복호부(111)는 서버에 저장된 비디오 비트열을 가변길이 복호화하고, 제 1 역양자기부(112)가 복호화된 비트열을 역 양자기화하고, 해당 비트열을 제 1 역이산여현 변환부(113)에서 역이산여현 변환하여 비디오 신호로 만든다.The variable length decoder 111 of the decoder 110 variable length decodes the video bit stream stored in the server, dequantizes the decoded bit string by the first inverse quantizer 112, and decodes the corresponding bit string. The inverse discrete cosine transforming unit 113 converts the inverse discrete cosine into a video signal.
상기 역이산여현 변환을 거친 비트열은 인트라 모드에서 픽셀값을 출력하고, 비디오 신호로 출력됨과 동시에 제 1 메모리(115)에 저장된다.The bit stream subjected to the inverse discrete cosine transform outputs a pixel value in an intra mode, is output as a video signal, and is stored in the first memory 115 at the same time.
인트라모드가 아닌 단방향 예측(P; Predictive mode)이나 양방향 예측 모드인(B; Bidirectional predictive mode) 경우, 제 1 메모리(115)에 저장된 프레임으로부터 제 1 움직임 보상부(114)가 움직임 보상을 하여 원래 영상과의 차이값이 움직임 벡터와 함께 전송되어 진다.In the non-intra mode unidirectional prediction (P) or bidirectional predictive mode (B; bidirectional predictive mode), the first motion compensator 114 compensates for motion from a frame stored in the first memory 115. The difference with the image is transmitted along with the motion vector.
그리고, 부호부(120)의 축소 샘플링부(121)는 비디오 신호를 축소하고, 축소된 비디오 신호는 이산여현 변환부(122)에서 이산여현 변환하여, 양자기화부(123)가 전송하기 위한 채널 또는 네트워크 상태에 따라 전송률 제어하여 양자기화하고, 가변길이 부호부(124)가 가변길이 부호 코드로 부호화하여 비트열로 만든다.In addition, the reduced sampling unit 121 of the encoder 120 reduces the video signal, and the reduced video signal is discrete cosine transformed by the discrete cosine transforming unit 122 to transmit the channel for the quantization unit 123 to transmit. Alternatively, the bit rate control unit 124 performs quantization by controlling the data rate according to the network condition. The variable length coder 124 encodes the variable length code code into a bit string.
이때, 양자기화부(123)가 양자기화한 비디오 신호는 제 2 양자기화부(123)에서 다시 역양자기화 시켜, 제 2 역이산여현 변환부(126)를 거쳐 축소 샘플링에 의해 축소된 픽셀 정보가 제 2 메모리부(127)에 저장되고 복호부(110)의 가변길이 복호부(111)가 비트열 복호과정에 얻은 움직임 벡터정보 또는 부호화 모드에 정보를 재활용하여 제 2 움직임 보상부(128)가 매크로 블록에 대한 움직임 보상을 실행한다.In this case, the video signal quantized by the quantizer 123 is inversely quantized by the second quantizer 123, and the pixel information reduced by reduction sampling through the second inverse discrete cosine transforming unit 126. Is stored in the second memory unit 127 and the variable length decoding unit 111 of the decoding unit 110 recycles the information to the motion vector information or the encoding mode obtained in the bit string decoding process so that the second motion compensation unit 128 Executes motion compensation for the macro block.
상기한 구조를 가지는 본 발명의 특징에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호장치가 비디오 화면을 축소하기 위한 움직임 벡터를 상기 축소 샘플링부(121)가 원래 비트열에서 복호된 4개의 움직임 벡터로부터 계산하고, 계산된 움직임 벡터에 의해 제 2 움직임 보상부(128)가 움직임 보상을 하여 화면 축소를 하게 된다.The reduced sampling unit 121 originally decoded the motion vector for reducing the video screen by the video screen reduction and conversion encoding apparatus using the adaptive motion vector selection algorithm according to the feature of the present invention having the above structure. Two motion vectors are calculated from the two motion vectors, and the second motion compensator 128 compensates for the motion by reducing the screen.
도 2는 본 발명의 실시 예에 따른 움직임 벡터 추정과 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소의 계산량 비교를 나타낸다.2 illustrates a comparison of a computation amount of video screen reduction using motion vector estimation and an adaptive motion vector selection algorithm according to an embodiment of the present invention.
도 2를 참조하면 움직임 벡터를 추정하는 방식의 경우는 블록당 76500의 계산량을 가지고 있으나, 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘을 이용하는 경우 계산량이 현저히 줄어드는 것을 볼 수 있다.Referring to FIG. 2, the motion vector estimation method has a calculation amount of 76500 blocks per block. However, when the adaptive motion vector selection algorithm according to an embodiment of the present invention is used, the calculation amount is significantly reduced.
도 3은 본 발명의 실시 예에 따른 4개의 원래 움직임 벡터와 1개의 움직임 벡터의 예를 나타낸다.3 shows an example of four original motion vectors and one motion vector according to an embodiment of the present invention.
도 3을 참조하면, 4개의 움직임 벡터에서 재샘플링을 하는데 있어서, 적응적으로 평균을 내거나, 선택을 하게 된다. 이때, 본 발명의 실시 예는 원래의 비디오 화면을 2:1로 축소하는 과정에 대한 것이다.Referring to FIG. 3, in resampling in four motion vectors, an average or a selection is adaptively performed. In this case, an embodiment of the present invention relates to a process of reducing an original video screen to 2: 1.
이를 위해서는 4개의 파라미터 값을 이용하는데, 첫 번째 파라미터 A는 원래 매크로블록의 활동도로서 0이 아닌 DCT 계수의 개수가 되고, 두 번째 파라미터 Q는 원래 매크로 블록에서 사용되었던 양자기 스텝의 크기를 이용한다.To do this, four parameter values are used, the first parameter A being the activity of the original macroblock, which is the number of non-zero DCT coefficients, and the second parameter Q, which uses the size of the quantizer step originally used in the macroblock. .
또한 세 번째 파라미터 C는 원래 매크로블록에서 움직임 벡터 집단의 개수이고, 네 번째 파라미터 M 은 원래 매크로 블록에 사용되었던 움직임 벡터의 크기를 이용한다. 이때 네 번째 파라미터 M은 다음과 같이 계산한다.Also, the third parameter C is the number of motion vector groups in the original macroblock, and the fourth parameter M uses the size of the motion vector originally used in the macroblock. At this time, the fourth parameter M is calculated as follows.
도 4는 본 발명의 실시 예에 따른 4가지 종류의 움직임 벡터 집단을 나타낸다.4 illustrates four types of motion vector groups according to an embodiment of the present invention.
도 4를 참조하면, 4가지 종류의 매크로 움직임 벡터 집단을 볼 수 있는데, 각각의 움직임 벡터가 집단이 되는지 여부는 두 벡터간의 거리 d에 의해서 결정할 수 있으며, d 는 수학식 2에 의하여 구해진다.Referring to FIG. 4, four types of macro motion vector groups can be seen. Whether each motion vector becomes a group can be determined by the distance d between the two vectors, and d is obtained by Equation 2 below.
이때, d 값이 1 보다 작으면 두 움직임 벡터를 집단(cluster)으로 간주하게 된다.At this time, if the value of d is less than 1, two motion vectors are considered as a cluster.
다음 표 1은 비디오로 실험한 움직임 벡터 집단의 백분율의 예를 나타낸 것이다.Table 1 below shows an example of the percentage of the motion vector group experimented with video.
상기한 비디오 실험에 따르면 첫 번째부터 세 번째 파라미터(A, Q, C)까지는 값이 증가할수록, 네 번째 파라미터 M은 값이 감소할수록 4개의 매크로블록의 움직임 벡터 가운데 해당 매크로블록의 움직임 벡터가 축소된 매크로 블록의 움직임 벡터와 일치하는 경향을 보인다.According to the above video experiment, as the value increases from the first to the third parameters (A, Q, C), and the fourth parameter M decreases as the value decreases, the motion vector of the corresponding macroblock is reduced among the motion vectors of the four macroblocks. Tends to match the motion vector of the macroblock.
따라서, 본 발명의 실시 예에 따라 가능성 점수(Likelihood Score)를 정의하고 4개의 매크로블록마다 최대의 A, Q, C 값이 있거나, 최소의 M 값이 있을 때마다에 점수를 1점씩 추가한다.Therefore, likelihood score according to an embodiment of the present invention Every 4 macroblocks, the maximum A, Q, C, or the minimum M Add 1 point to your score.
축소된 매크로블록의 움직임 벡터는 최대의값을 갖는 원 매크로블록의 움직임 벡터를 선택하여 다음과 같이 그 x, y 성분의 절반값을 사용하도록 한다.The motion vector of the reduced macroblock is The motion vector of the original macroblock having the value is selected and half of the x and y components are used as follows.
또한, 상기가 모두 동점인 경우는 다음과 같이 가중 평균값을 사용한다.Also, the If are all tied, the weighted average is used as follows.
이때, 수학식 4와 같은 가중 평균값을 이용하는 것은 매크로 블록의 활동도가 DCT 계수뿐만 아니라, 양자기 스텝 크기와도 관련이 있기 때문이다.In this case, the use of a weighted average value such as Equation 4 is because the activity of the macroblock is related not only to the DCT coefficient but also to the quantum step size.
상기한 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘(AMVR; Adaptive Motion Vector Resampling)과, 종래의 전역 추정방법, 가중평균방법의 PSNR(Peak Signal to Noise Ratio)를 비교한 것이 다음과 같다.The following is a comparison of the Adaptive Motion Vector Resampling (AMVR) algorithm according to the embodiment of the present invention and the PSNR (Peak Signal to Noise Ratio) of the conventional global estimation method and the weighted average method as follows. .
도 5는 본 발명의 실시 예에 따른 전역 추정 방법, 적응적 움직임 벡터 선택 알고리즘, 가중평균 방법의 PSNR 비교를 나타낸다.5 illustrates a PSNR comparison between a global estimation method, an adaptive motion vector selection algorithm, and a weighted average method according to an embodiment of the present invention.
도 5를 참조하면, 가장 PSNR이 높은 방법은 축소된 매크로 블록의 움직임 벡터를 새로 전역 찾기로 추정하는 방법이지만, 이 계산은 너무 많은 계산량을 요구하기 때문에 실시간 구현이 불가능하다.Referring to FIG. 5, the method having the highest PSNR is a method of estimating the motion vector of the reduced macroblock to a new global search, but this calculation requires too much computation and thus cannot be implemented in real time.
따라서, 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘이 일반적인 가중 평균 방법에 비하여 PSNR이 개선된 것을 알 수 있고, 이때의 계산량은 상기 도 2에서 설명한 바와 같이 현저히 낮아짐을 알 수 있다.Accordingly, it can be seen that the adaptive motion vector selection algorithm according to the embodiment of the present invention has an improved PSNR compared to the general weighted average method, and the calculation amount at this time is significantly lowered as described with reference to FIG. 2.
본 발명의 실시 예에 따른 적응적 움직임 벡터 알고리즘을 이용한 변환 부호 장치로 축소한 비디오 화면을 비교한 예는 다음과 같다.An example of comparing a video screen reduced by a transform coder using an adaptive motion vector algorithm according to an embodiment of the present invention is as follows.
도 6은 본 발명의 실시 예에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호방법에 의해 변환된 화면 모습을 나타낸다.6 is a view of a screen converted by a video screen reduction conversion code method using an adaptive motion vector selection algorithm according to an embodiment of the present invention.
이상에서 본 발명의 바람직한 실시 예에 대하여 상세하게 설명하였지만, 본 발명은 이에 한정되는 것은 아니며, 그 외에 다양한 변경이나 변형이 가능하다.Although a preferred embodiment of the present invention has been described in detail above, the present invention is not limited thereto, and various other changes and modifications are possible.
이상에서 설명한 바와 같이, 본 발명에 따른 적응적 움직임 벡터 선택 알고리즘을 이용한 비디오 화면 축소 변환 부호 장치 및 방법은 VOD 서버에 저장된 비트열의 전송률보다 현저히 낮은 전송률의 네트워크로 비트열을 보내거나, 낮은 레벨의 표준 비디오 기술을 가지는 단말로 비트열을 전송하는 경우, 움직임 벡터 추정을 위한 과도한 계산량 없이 화면 축소 변환을 수행하여 환경에 구애받지 않고 다양한 사용자에게 VOD 서비스를 제공할 수 있는 효과가 있다.As described above, the apparatus and method for video screen reduction and conversion code using the adaptive motion vector selection algorithm according to the present invention transmit a bit stream to a network having a significantly lower rate than a bit rate stored in a VOD server, or at a low level. When a bit string is transmitted to a terminal having a standard video technology, it is possible to provide a VOD service to various users regardless of the environment by performing screen reduction transformation without excessive calculation amount for motion vector estimation.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030043667A KR100950764B1 (en) | 2003-06-30 | 2003-06-30 | Apparatus and method of transcoding for down-scaling video transcoding by adaptive motion vector resampling algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030043667A KR100950764B1 (en) | 2003-06-30 | 2003-06-30 | Apparatus and method of transcoding for down-scaling video transcoding by adaptive motion vector resampling algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050002296A true KR20050002296A (en) | 2005-01-07 |
KR100950764B1 KR100950764B1 (en) | 2010-04-05 |
Family
ID=37217833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030043667A KR100950764B1 (en) | 2003-06-30 | 2003-06-30 | Apparatus and method of transcoding for down-scaling video transcoding by adaptive motion vector resampling algorithm |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100950764B1 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100386583B1 (en) * | 2000-11-30 | 2003-06-02 | 엘지전자 주식회사 | Apparatus and method for transcoding video |
KR100460950B1 (en) * | 2001-12-18 | 2004-12-09 | 삼성전자주식회사 | Transcoder and transcoding method |
-
2003
- 2003-06-30 KR KR1020030043667A patent/KR100950764B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100950764B1 (en) | 2010-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5128865B2 (en) | Switching between bitstreams in video transmission | |
US7620107B2 (en) | Video transcoding method and apparatus and motion vector interpolation method | |
JP4234607B2 (en) | Coding transform coefficient in image / video encoder and / or decoder | |
US8385415B2 (en) | System and method for intracoding and decoding video data | |
US7379496B2 (en) | Multi-resolution video coding and decoding | |
US7848426B2 (en) | Motion vector estimation method and encoding mode determining method | |
US6130911A (en) | Method and apparatus for compressing reference frames in an interframe video codec | |
JP2016026426A (en) | Adaptive variable length coding | |
JP2005524304A (en) | Method and apparatus for displaying quantizer parameters in a video coding system | |
JP2008523687A (en) | System and method for real-time digital video transcoding for fine granular scalability | |
JP2003511919A (en) | System and method for encoding and decoding enhancement layer data using base layer quantization data | |
KR100843080B1 (en) | Video transcoding method and apparatus thereof | |
JP2007507927A (en) | System and method combining advanced data partitioning and efficient space-time-SNR scalability video coding and streaming fine granularity scalability | |
Shu et al. | The realization of arbitrary downsizing video transcoding | |
WO2011148887A1 (en) | Video image delivery system, video image transmission device, video image delivery method, and video image delivery program | |
KR20110024574A (en) | Integrated video encoding method and apparatus | |
JP4762486B2 (en) | Multi-resolution video encoding and decoding | |
KR100950764B1 (en) | Apparatus and method of transcoding for down-scaling video transcoding by adaptive motion vector resampling algorithm | |
KR100832872B1 (en) | Method and apparatus for image coding efficiency improvement using geometric transformation | |
JP2004056616A (en) | Device, method and program for decoding encoded signal | |
US8817890B2 (en) | System and method for controlling the long term generation rate of compressed data | |
KR100932727B1 (en) | Video stream switching device and method | |
KR100926826B1 (en) | Apparatus and method of transcoding for error resilience for beforehand of video bit-stream | |
KR20090016970A (en) | Method for encoding and decoding video and apparatus thereof | |
Kong et al. | Coding mode optimization for MPEG-2 transcoding with spatial resolution reduction |
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: 20130305 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140304 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150304 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160304 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |