KR101045191B1 - Improved image transcoder and transcoding method - Google Patents

Improved image transcoder and transcoding method Download PDF

Info

Publication number
KR101045191B1
KR101045191B1 KR1020090050991A KR20090050991A KR101045191B1 KR 101045191 B1 KR101045191 B1 KR 101045191B1 KR 1020090050991 A KR1020090050991 A KR 1020090050991A KR 20090050991 A KR20090050991 A KR 20090050991A KR 101045191 B1 KR101045191 B1 KR 101045191B1
Authority
KR
South Korea
Prior art keywords
image
motion vector
screen
quantization level
image information
Prior art date
Application number
KR1020090050991A
Other languages
Korean (ko)
Other versions
KR20100132262A (en
Inventor
윤청하
조인원
이희찬
Original Assignee
(주)제너시스템즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)제너시스템즈 filed Critical (주)제너시스템즈
Priority to KR1020090050991A priority Critical patent/KR101045191B1/en
Publication of KR20100132262A publication Critical patent/KR20100132262A/en
Application granted granted Critical
Publication of KR101045191B1 publication Critical patent/KR101045191B1/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/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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/102Methods 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/117Filters, e.g. for pre-processing or post-processing
    • 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/102Methods 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors

Abstract

개선된 영상 트랜스코더 및 영상 트랜스코딩 방법을 개시한다. 개선된 영상 트랜스코더는 영상을 디코딩하여 영상 정보 큐에 전송하는 전처리 트랜스코더; 상기 영상의 영상 정보를 저장하는 영상 정보 큐; 및 상기 영상 정보에 포함된 코딩 타입을 확인하고, 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보에 대응하는 양자화 수준과 움직임 벡터를 선택하며, 선택한 양자화 수준과 움직임 벡터를 기초로 상기 영상 정보를 인코딩하는 후처리 트랜스코더를 포함한다.

Figure R1020090050991

트랜스코딩, 양자화 수준, 움직임 벡터, 영상 정보, 호처리 장치.

An improved image transcoder and image transcoding method are disclosed. An improved image transcoder includes a preprocessing transcoder that decodes an image and transmits it to an image information queue; A video information queue for storing video information of the video; Identify a coding type included in the image information, and if the coding type is not intra, select a quantization level and a motion vector corresponding to the image information, and based on the selected quantization level and the motion vector, And a post-processing transcoder that encodes.

Figure R1020090050991

Transcoding, quantization level, motion vector, image information, call processing device.

Description

개선된 영상 트랜스코더 및 트랜스코딩 방법{IMPROVED IMAGE TRANSCODER AND TRANSCODING METHOD}Improved image transcoder and transcoding method {IMPROVED IMAGE TRANSCODER AND TRANSCODING METHOD}

본 발명은 개선된 영상 트랜스코더 및 영상 트랜스코딩 방법에 관한 것으로, 더욱 상세하게는 영상 정보에 대응하는 움직임 벡터를 개선하고, 영상 트랜스코더에 맞는 양자화 수준을 선택함으로써 화질을 개선하고 계산량을 감소할 수 있는 영상 트랜스코더 및 방법에 관한 것이다.The present invention relates to an improved image transcoder and an image transcoding method, and more particularly, to improve a motion vector corresponding to image information and to select a quantization level suitable for the image transcoder, thereby improving image quality and reducing computation amount. An image transcoder and method are disclosed.

영상 트랜스코딩 방법은 입력된 영상 스트림(video stream)을 디코딩하여 다른 크기, 다른 화면 재생율(frame rate), 다른 비트율(bit rate), 다른 표준문법(standard syntax)을 갖는 스트림으로 재인코딩 하는 방법이다.The video transcoding method is a method of decoding an input video stream and re-encoding it into a stream having a different size, different frame rate, different bit rate, and different standard syntax. .

그러나 종래의 닫힌 영상 트랜스코더(close-loop video transcoder)들은 트랜스코더의 인코더에서 입력된 영상 스트림의 움직임 벡터(motion vector)를 재 사용할 때 표준 문법(standard syntax)를 고려하지 않고, 비트율을 제어할 경우에 입력된 영상 스트림의 양자화 수준(quantization level)을 적절히 이용하지 못하여 화질 저하를 초래할 수 있는 문제가 있었다.However, the conventional close-loop video transcoders do not consider the standard syntax when reusing the motion vector of the video stream input from the encoder of the transcoder and control the bit rate. In this case, there is a problem that the image quality may be degraded because the quantization level of the input video stream may not be properly used.

따라서 움직임 벡터를 재사용하고, 영상 트랜스코더에 맞는 양자화 수준 선 택하여 화질을 개선하고 계산량을 감소하는 장치 및 방법이 필요한 실정이다. Therefore, there is a need for an apparatus and method for reusing a motion vector and selecting a quantization level suitable for an image transcoder to improve image quality and reduce computation.

본 발명은 영상 정보에 대응하는 움직임 벡터를 개선하고, 영상 트랜스코더에 맞는 양자화 수준을 선택함으로써 화질을 개선하고 계산량을 감소할 수 있는 영상 트랜스코더를 제공한다. The present invention provides an image transcoder that can improve image quality and reduce computation by improving a motion vector corresponding to image information and selecting a quantization level suitable for the image transcoder.

본 발명의 일실시예에 따른 영상 트랜스코더는 영상을 디코딩하여 영상 정보 큐에 전송하는 전처리 트랜스코더; 상기 영상의 영상 정보를 저장하는 영상 정보 큐; 및 상기 영상 정보에 포함된 코딩 타입을 확인하고, 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보에 대응하는 양자화 수준과 움직임 벡터를 선택하며, 선택한 양자화 수준과 움직임 벡터를 기초로 상기 영상 정보를 인코딩하는 후처리 트랜스코더를 포함한다.An image transcoder according to an embodiment of the present invention includes a preprocessing transcoder for decoding an image and transmitting the image to a video information queue; A video information queue for storing video information of the video; Identify a coding type included in the image information, and if the coding type is not intra, select a quantization level and a motion vector corresponding to the image information, and based on the selected quantization level and the motion vector, And a post-processing transcoder that encodes.

본 발명의 일실시예에 따른 영상 트랜스코딩 방법은 입력되는 영상을 디코딩하여 영상 정보 큐에 전송하는 단계; 상기 영상 정보 큐에 상기 영상의 영상 정보를 저장하는 단계; 상기 영상 정보의 코딩 타입을 확인하는 단계; 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보에 대응하는 양자화 수준과 움직임 벡터를 선택하는 단계; 및 선택된 양자화 수준과 움직임 벡터를 기초로 상기 영상 정보를 인코딩하는 단계를 포함한다.An image transcoding method according to an embodiment of the present invention comprises the steps of: decoding an input image and transmitting the received image to a video information queue; Storing image information of the image in the image information queue; Checking a coding type of the image information; Selecting a quantization level and a motion vector corresponding to the image information if the coding type is not intra; And encoding the image information based on the selected quantization level and the motion vector.

본 발명에 따르면 영상 정보에 대응하는 움직임 벡터를 개선하고, 영상 트랜 스코더에 맞는 양자화 수준을 선택함으로써 화질을 개선하고 계산량을 감소할 수 있다. According to the present invention, the image quality can be improved and the amount of calculation can be reduced by improving the motion vector corresponding to the image information and selecting a quantization level suitable for the image transcoder.

이하 첨부된 도면을 참조하여 본 발명에 따른 다양한 실시예를 상세히 설명하기로 한다.Hereinafter, various embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 영상 트랜스코더의 개괄적인 모습을 도시한 일례다. 1 is an example showing an overview of an image transcoder according to an embodiment of the present invention.

본 발명의 일실시예에 따른 영상 트랜스코더는 도 1에 도시된 바와 같이 전처리 트랜스코더(110), 영상 처리 큐(120), 및 후처리 트랜스코더(130)로 구성될 수 있다. As illustrated in FIG. 1, an image transcoder according to an exemplary embodiment of the present invention may include a preprocessing transcoder 110, an image processing queue 120, and a postprocessing transcoder 130.

전처리 트랜스코더(110)는 사용자로부터 입력되는 영상을 디코딩하여 영상 정보 큐(120)에 전송할 수 있다. 이때, 전처리 트랜스코더(110)는 화면 재생율이 변경되는 경우에 드랍되지 않는 영상에 한하여 후처리 필터(Post-Filter)를 적용할 수 있다.The preprocessing transcoder 110 may decode an image input from the user and transmit the decoded image to the image information queue 120. In this case, the preprocessing transcoder 110 may apply a post-processing filter only to an image that is not dropped when the screen refresh rate is changed.

전처리 트랜스코더(110)의 구성은 이하 도 2를 사용하여 상세히 후술한다.The configuration of the preprocessing transcoder 110 will be described later in detail using FIG. 2.

영상 처리 큐(120)는 전처리 트랜스코더(110)로부터 전송된 상기 영상의 영상 정보를 저장할 수 있다. 이때, 영상 처리 큐(120)에 저장되는 영상 정보는 상기 영상의 움직임 벡터, 양자화 수준, 영상 및 화면 재생율이 변경되는 경우에 드랍된 화면의 식별 정보를 포함할 수 있다. 이때, 상기 영상은 화면 재생율이 변경되는 경우에도 드랍되지 않은 화면들의 영상일 수 있다.The image processing queue 120 may store image information of the image transmitted from the preprocessing transcoder 110. In this case, the image information stored in the image processing queue 120 may include identification information of the dropped screen when the motion vector, the quantization level, the image, and the screen refresh rate of the image are changed. In this case, the image may be images of screens not dropped even when the screen refresh rate is changed.

또한, 영상 처리 큐(120)는 상기 화면 재생율이 변경되는 경우에만 저장되는 정보가 누적될 수 있다.In addition, the image processing queue 120 may accumulate information stored only when the screen refresh rate is changed.

후처리 트랜스코더(130)는 상기 영상 정보에 포함된 코딩 타입을 확인하고, 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보에 대응하는 양자화 수준과 움직임 벡터를 선택하며, 선택한 양자화 수준과 움직임 벡터를 기초로 상기 영상 정보를 인코딩할 수 있다.The post-processing transcoder 130 checks the coding type included in the image information, and if the coding type is not intra, selects a quantization level and a motion vector corresponding to the image information, and selects the selected quantization level and motion. The image information may be encoded based on a vector.

이때, 후처리 트랜스코더(130)는 상기 영상 정보의 화면 재생율에 대응하는 타이머 이벤트 기반으로 동작할 수 있다. 또한, 후처리 트랜스코더(130)는 상기 코딩 타입이 인트라(intra)면 양자화 수준과 움직임 벡터를 선택하지 않고 바로 인코딩을 할 수도 있다.In this case, the post-processing transcoder 130 may operate based on a timer event corresponding to the screen refresh rate of the image information. In addition, the post-processing transcoder 130 may directly encode the coding type without selecting an intra quantization level and a motion vector.

후처리 트랜스코더(130)의 구성은 이하 도 3을 사용하여 상세히 후술한다.The configuration of the post-processing transcoder 130 will be described later in detail with reference to FIG. 3.

도 2는 본 발명의 일실시예에 따른 전처리 트랜스코더(110)의 개괄적인 모습을 도시한 일례다. 2 is an example showing an overview of the preprocessing transcoder 110 according to an embodiment of the present invention.

전처리 트랜스코더(110)는 도 2에 도시된 바와 같이 영상 디코더(210), 드랍 화면 선택부(220) 및 영상 후처리 필터(230)로 구성될 수 있다.As illustrated in FIG. 2, the preprocessing transcoder 110 may include an image decoder 210, a drop screen selector 220, and an image postprocessing filter 230.

영상 디코더(DEC: video DECoder)(210)는 사용자로부터 입력되는 영상을 디코딩할 수 있다. 이때, 영상 디코더(210)는 상기 영상을 디코딩하면서 움직임 벡터와 코딩 타입 및 양자화 수준에 대한 정보를 추출하여 부가 정보로 저장할 수 있다. The video decoder (DEC: video DECoder) 210 may decode an image input from a user. In this case, the image decoder 210 may extract information about a motion vector, a coding type, and a quantization level while decoding the image, and store the information as additional information.

일례로 영상 디코더(210)는 H 263, MPEG4 Visual과 같은 표준 영상 디코더로 구성될 수 있다.For example, the image decoder 210 may be configured as a standard image decoder such as H 263 and MPEG4 Visual.

드랍 화면 선택부(FDD: Frame Dropping Decision)(220)는 화면 재생율이 변경되는지를 확인하고, 화면 재생율이 변경되는 경우에는 변경되는 화면 재생율에 기초하여 상기 영상 중에서 드랍할 화면을 선택할 수 있다.The drop screen selection unit (FDD) 220 may determine whether the screen refresh rate is changed, and select a screen to be dropped from the image based on the changed screen refresh rate when the screen refresh rate is changed.

이때, 드랍 화면 선택부(220)는 드랍하는 것으로 선택한 화면의 영상을 삭제하고, 상기 드랍하는 것으로 선택한 화면의 부가 정보 및 상기 드랍하는 것으로 선택한 화면이 드랍할 화면이라는 식별 정보를 영상 정보 큐(120)로 전송할 수 있다.In this case, the drop screen selection unit 220 deletes the image of the screen selected as the drop, and adds the additional information of the screen selected as the drop and identification information that the screen selected as the drop is the screen to be dropped. ) Can be sent.

또한, 드랍 화면 선택부(220)는 드랍하지 않는 것으로 선택한 화면의 영상을 영상 후처리 필터(230)로 전송할 수 있다.Also, the drop screen selection unit 220 may transmit an image of the screen selected as not dropped to the image post-processing filter 230.

영상 후처리 필터(Image post-processing FILTER)(230)는 드랍 화면 선택부(220)에서 전송된 화면의 영상의 화질을 개선하거나, 부가 기능을 추가하여 영상 정보 큐(120)로 전송할 수 있다.The image post-processing filter 230 may improve the image quality of the image of the screen transmitted from the drop screen selection unit 220 or add an additional function to the image information queue 120.

일례로 영상 후처리 필터(230)는 디블록킹 필터(Deblocking filter)를 사용하여 영상의 화질을 개선할 수도 있고, 텍스트 오버레이 필터(Text-overlay filter)를 사용하여 상기 영상에 텍스트를 삽입할 수도 있으며, 디블록킹 필터와 텍스트 오버레이 필터를 동시에 사용하여 화질을 개선하면서 텍스트를 삽입할 수도 있다.For example, the image post-processing filter 230 may improve image quality by using a deblocking filter, or insert text into the image by using a text-overlay filter. In addition, text can be inserted while improving image quality by simultaneously using a deblocking filter and a text overlay filter.

도 3은 본 발명의 일실시예에 따른 후처리 트랜스코더(130)의 개괄적인 모습을 도시한 일례다. Figure 3 is an example showing an overview of the post-process transcoder 130 according to an embodiment of the present invention.

후처리 트랜스코더(130)는 도 3에 도시된 바와 같이 화면 코딩 타입 결정 부(310), 제1 트렌스코딩 요소 선택부(320), 화면 크기 변경부(330), 제2 트렌스코딩 요소 선택부(340), 움직임 벡터 개선부(350), 및 영상 인코더(360)로 구성될 수 있다.The post-processing transcoder 130 may include a screen coding type determiner 310, a first transcoding element selector 320, a screen size changer 330, and a second transcoding element selector as illustrated in FIG. 3. 340, the motion vector improving unit 350, and the image encoder 360.

화면 코딩 타입 결정부(PTD: Picture coding Type Decision)(310)는 영상 정보 큐(120)로부터 전송된 상기 영상 정보에 포함된 코딩 타입에 따라 상기 영상 정보를 표시할 화면의 코딩 타입을 결정할 수 있다.The picture coding type decision unit (PTD) 310 may determine a coding type of a screen on which the image information is to be displayed according to a coding type included in the image information transmitted from the image information queue 120. .

이때, 화면 코딩 타입 결정부(310)는 상기 코딩 타입이 인트라(intra)이면 상기 영상 정보를 화면 크기 변경부(330)를 통하여 영상 인코더(360)로 전송하여 바로 인코딩을 할 수 있다. 이때, 화면 크기 변경부(330)에서 화면 크기가 변경되지 않으면, 영상 인코더(360)는 영상 정보 큐(120)로부터 전송된 상기 영상 정보를 그대로 인코딩할 수 있다.In this case, if the coding type is intra, the screen coding type determiner 310 may directly encode the image information by transmitting the image information to the image encoder 360 through the screen size changing unit 330. In this case, if the screen size is not changed by the screen size changing unit 330, the image encoder 360 may encode the image information transmitted from the image information queue 120 as it is.

또한, 화면 코딩 타입 결정부(310)는 상기 코딩 타입이 인터(inter)이면, 상기 영상 정보를 제1 트랜스코딩 요소 선택부(320)로 전송할 수 있다.In addition, when the coding type is inter, the screen coding type determiner 310 may transmit the image information to the first transcoding element selector 320.

이때, 영상 정보 큐(120)로부터 전송된 상기 영상 정보는 가장 최근에 영상 인코더(360)에서 인코딩된 화면의 다음 화면인 P1부터 현재 인코딩될 화면 Pn을 포함할 수 있다. 이때, k가 1 내지 n이라 하면 상기 영상 정보는 Pk로 표시될 수 있다.In this case, the image information transmitted from the image information queue 120 may include a screen P n to be currently encoded from P 1 , which is the next screen of the screen most recently encoded by the image encoder 360. In this case, when k is 1 to n, the image information may be displayed as P k .

이때, 각각의 화면은 영상과 각 매크로 블록 mbij의 움직임 벡터 mvij를 포함할 수 있다. 이때, i와 j는 상기 매크로 블록의 좌표 값일 수 있다.In this case, each screen may include an image and a motion vector mv ij of each macro block mb ij . In this case, i and j may be coordinate values of the macro block.

제1 트랜스코딩 요소 선택부(TTES: Temporal Transcoding Elements Selection)(320)는 상기 영상 정보의 시간적 변화에 대응하여 영상 인코더(360)에서 사용될 기본 움직임 벡터(base motion vector)와 기본 양자화 수준(base quantization level)을 선택할 수 있다.A first transcoding element selection unit (TTES) 320 is a base motion vector and a base quantization level to be used in the image encoder 360 in response to a temporal change of the image information. level) can be selected.

이때, 제1 트랜스코딩 요소 선택부(320)는 드랍된 화면의 움직임 벡터를 사용하여 실제로 참조하게 되는 화면의 상기 기본 움직임 벡터를 선택하고, 드랍되지 않아 실제로 참조하게 되는 화면의 양자화 수준을 상기 기본 양자화 수준으로 선택할 수 있다.In this case, the first transcoding element selector 320 selects the basic motion vector of the screen that is actually referred to by using the dropped motion vector of the screen, and sets the basic quantization level of the screen that is not dropped and is actually referred to. You can choose the level of quantization.

제1 트랜스코딩 요소 선택부(320)는 움직임 벡터 mvij를 사용하여 Pm의 mbxy에 mv를 적용하여 Pn을 참조할 때의 절대값의 합이 최소가 되는 mv를 상기 기본 움직임 벡터로 선택할 수 있다.The first transcoding element selector 320 applies mv to mb xy of P m using the motion vector mv ij to set mv, which is the minimum of the absolute values when referring to P n , as the basic motion vector. You can choose.

먼저, 트랜스코딩 요소 선택부(320)는 mvn 을 mv(Pn, i, j) 로 설정할 수 있다.First, the transcoding element selector 320 may set mv n to mv (P n , i, j).

이때, mv(Pk, x, y)는 Pn의 (x, y)에 위치한 매크로블록의 움직임 벡터일 수 있다.In this case, mv (P k , x, y) may be a motion vector of a macroblock located at (x, y) of P n .

다음으로 트랜스코딩 요소 선택부(320)는 mvn로 참조한 Pn -1의 영역에 겹쳐지는 매크로블록(1 내지 m)들의 mv(Pn -1, x, y)를 후보 움직임 벡터 cmvk 라 설정할 수 있다.Next, the transcoding element selector 320 selects mv (P n −1 , x, y) of the macroblocks 1 to m overlapping with the region of P n −1 referred to as mv n as candidate motion vectors cmv k . Can be set.

이때, k는1 내지 m이고, 겹쳐지는 영역의 넓이를 wk 라 설정할 수 있다.In this case, k is 1 to m, and the width of the overlapping region may be set as w k .

그 다음에 트랜스코딩 요소 선택부(320)는 상기 후보 움직임 벡터 cmvk 겹쳐지는 영역의 넓이 wk을 하기된 수학식 1에 적용하여 가중 평균 움직임 벡터를 계산할 수 있다.Transcoding element selector 320 then selects the candidate motion vector cmv k and The weighted average motion vector may be calculated by applying the width w k of the overlapping area to Equation 1 described below.

mvn -1 = sum(cmvk * wk) / sum(wk)mv n -1 = sum (cmv k * w k ) / sum (w k )

그리고, 트랜스코딩 요소 선택부(320)는 n의 값을 1 감소시킨다. 이때, 감소된 n의 값이 1보다 크면 후보 움직임 벡터를 설정하는 단계를 반복할 수 있다.The transcoding element selector 320 decreases the value of n by one. At this time, if the reduced value of n is greater than 1, the step of setting the candidate motion vector may be repeated.

마지막으로 트랜스코딩 요소 선택부(320)는 mv1 를 상기 기본 움직임 벡터로 선택할 수 있다.Finally, the transcoding element selector 320 may select mv1 as the basic motion vector.

화면 크기 변경부(picture size SCALE)(330)는 상기 영상 정보의 공간적 크기를 변경할 수 있다.The picture size changing unit 330 may change the spatial size of the image information.

제2 트랜스코딩 요소 선택부(STES: Spatial Transcoding Elements Selection)(340)는 상기 영상 정보의 공간적 변화에 대응하여 영상 인코더(360)에서 사용될 기본 움직임 벡터와 기본 양자화 수준을 선택할 수 있다.The second transcoding element selection unit (STES) 340 may select a basic motion vector and a basic quantization level to be used in the image encoder 360 in response to the spatial change of the image information.

이때, 제2 트렌스코딩 요소 선택부(340)는 공간적 크기가 변경되기 전의 움직임 벡터를 사용하여 화면 크기 변경부(330)에서 크기가 변경된 영상 정보의 상기 기본 움직임 벡터를 선택하고, 상기 기본 양자화 수준을 초기화할 수 있다.In this case, the second transcoding element selector 340 selects the basic motion vector of the image information whose size is changed by the screen size changing unit 330 using the motion vector before the spatial size is changed, and the basic quantization level. Can be initialized.

또한, 제2 트렌스코딩 요소 선택부(340)는 표준 문법에 따른 표현 방법을 다 르게 할 수 있다.In addition, the second transcoding element selector 340 may make the expression method according to the standard grammar different.

일례로 영상 디코더(210)에 입력되는 영상의 코덱에서 하나의 매크로블록에 4개의 움직임 벡터를 가질 수 있는 V4 모드를 지원하는 경우에 제2 트렌스코딩 요소 선택부(340)는 모든 V4모드 매크로블록의 벡터를 1개로 병합할 수 있다. For example, when the codec of the image input to the image decoder 210 supports the V4 mode which may have four motion vectors in one macroblock, the second transcoding element selector 340 may select all V4 mode macroblocks. You can merge the vectors of into one.

이때, 영상 인코더(360)에서 인코딩되는 영상의 코덱에서 V4모드를 지원하면, 제2 트렌스코딩 요소 선택부(340)는 4개의 V모드 매크로블록은 1개의 4V모드 매크로블록으로 표현할 수 있다.In this case, if the video codec of the video encoded by the encoder 360 supports the V4 mode, the second transcoding element selector 340 may express four V-mode macroblocks as one 4V-mode macroblock.

반면에 영상 인코더(360)에서 인코딩되는 영상의 코덱에서 V4모드를 지원하지 않으면, 제2 트렌스코딩 요소 선택부(340)는 4개의 V모드 매크로블록의 벡터를 1개로 병합하여 표현할 수 있다.On the other hand, if the codec of the image encoded by the image encoder 360 does not support V4 mode, the second transcoding element selector 340 may merge and express four vectors of four V-mode macroblocks into one.

또한, 영상 디코더(210)에 입력되는 영상의 코덱에서 V4 모드를 지원하지 않고, 영상 인코더(360)에서 인코딩되는 영상의 코덱에서 V4모드를 지원하면 제2 트렌스코딩 요소 선택부(340)는 4개의 매크로블록을 1개의 4V모드 매크로블록으로 표현할 수 있다.In addition, if the codec of the image input to the image decoder 210 does not support the V4 mode, and if the codec of the image encoded by the image encoder 360 supports the V4 mode, the second transcoding element selector 340 is set to 4. One macroblock can be represented by one 4V mode macroblock.

그리고, 영상 디코더(210)에 입력되는 영상의 코덱과 영상 인코더(360)에서 인코딩되는 영상의 코덱에서 모두 V4모드를 지원하지 않으면, 제2 트렌스코딩 요소 선택부(340)는 4개의 매크로블록의 벡터를 1개로 병합하여 표현할 수 있다.In addition, if the codec of the image input to the image decoder 210 and the codec of the image encoded by the image encoder 360 do not support the V4 mode, the second transcoding element selector 340 may determine the four macroblocks. The vectors can be merged into one.

움직임 벡터 개선부(BMVR, Basic Motion vector Refinement)(350)는 움직임 벡터를 추정하고, 추정된 움직임 벡터를 기초로 상기 기본 움직임 벡터를 개선할 수 있다. 구체적으로 움직임 벡터 개선부(350)는 제1 트랜스코딩 요소 선택 부(320)이나 제2 트랜스코딩 요소 선택부(340)에서 최종 결정된 기본 움직임 벡터의 정확성을 높이기 위해 아주 작은 탐색영역을 가지는 움직임 벡터 추정(motion vector estimation)을 수행할 수 있다. 이때, 움직임 벡터 개선부(350)는 제1 트랜스코딩 요소 선택부(320)이나 제2 트랜스코딩 요소 선택부(340)에서 선택된 기본 움직임 벡터와 양자화 수준의 변화에 따라 상기 기본 움직임 벡터를 개선할 수 있다.A motion vector refinement unit (BMVR) 350 may estimate a motion vector and improve the basic motion vector based on the estimated motion vector. In detail, the motion vector improving unit 350 includes a motion vector having a very small search area in order to increase the accuracy of the basic motion vector finally determined by the first transcoding element selector 320 or the second transcoding element selector 340. Motion vector estimation can be performed. In this case, the motion vector improving unit 350 may improve the basic motion vector according to the change of the basic motion vector and the quantization level selected by the first transcoding element selector 320 or the second transcoding element selector 340. Can be.

영상 인코더(360)는 움직임 벡터 개선부(350)에서 개선된 기본 움직임 벡터와 상기 기본 양자화 수준을 기초로 상기 영상 정보를 인코딩할 수 있다.The image encoder 360 may encode the image information based on the basic motion vector and the basic quantization level improved by the motion vector improving unit 350.

이때, 영상 인코더(360)는 후보 양자화 수준을 선택하는 비트율 제어 장치를 포함하고, 상기 후보 양자화 수준과 상기 기본 양자화 수준의 최소 공배수를 양자화 수준으로 선택하여 상기 영상 정보를 인코딩할 수 있다. 이때, 상기 최소 공배수는 작을수록 화질 저하를 감소시킬 수 있다.In this case, the image encoder 360 may include a bit rate control device for selecting a candidate quantization level, and may encode the image information by selecting a minimum common multiple of the candidate quantization level and the basic quantization level as a quantization level. In this case, the smaller the least common multiple, the less image quality can be reduced.

후처리 트랜스코더(130)에서 제1 트렌스코딩 요소 선택부(320), 화면 크기 변경부(330), 제2 트렌스코딩 요소 선택부(340), 및 움직임 벡터 개선부(350)는 영상 정보 큐(120)에서 전공되는 영상 정보에 따라 모두 동작할 수도 있고, 모두 동작하지 않고, 화면 코딩 타입 결정부(310)에서 바로 영상 인코더부(360)가 동작할 수도 있으며 일부만 동작할 수도 있다.In the post-processing transcoder 130, the first transcoding element selector 320, the screen size changer 330, the second transcoding element selector 340, and the motion vector enhancer 350 may be a video information queue. According to the video information majored in the 120 may all operate, all do not operate, the image encoder 360 may operate directly or only part of the screen coding type determiner 310.

도 4는 본 발명의 일실시예에 따른 제1 트랜스코딩 요소 선택부(320)의 움직임 벡터를 선택하는 과정의 일례를 도시한 도면이다.4 is a diagram illustrating an example of a process of selecting a motion vector of the first transcoding element selector 320 according to an embodiment of the present invention.

제1 트랜스코딩 요소 선택부(320)는 가장 최근에 영상 인코더(360)에서 인코 딩된 화면(410)과 드랍될 화면(420)을 참고하여 현재 인코딩될 화면(430)의 움직임 벡터를 추출할 수 있다.The first transcoding element selector 320 may extract the motion vector of the screen 430 to be currently encoded by referring to the screen 410 most recently encoded by the image encoder 360 and the screen 420 to be dropped. have.

도 4에 도시된 바와 같이 현재 인코딩될 화면(430)의 매크로 블록(431)이 있을 경우에 제1 트랜스코딩 요소 선택부(320)는 드랍될 화면(420)에서 매크로 블록(431)에 대응하는 영역(440)를 확인하고, 영역(440)이 겹쳐진 드랍될 화면(420)의 매크로 블록(421, 423, 425, 427)을 확인할 수 있다.As shown in FIG. 4, when there is a macro block 431 of the screen 430 to be currently encoded, the first transcoding element selector 320 corresponds to the macro block 431 in the screen 420 to be dropped. The region 440 may be checked, and macro blocks 421, 423, 425, and 427 of the screen 420 to be overlapped with the region 440 may be checked.

다음으로, 제1 트랜스코딩 요소 선택부(320)는 매크로 블록(421, 423, 425, 427)들의 움직임 벡터(422, 424, 426, 428)를 통합하여 매크로 블록(431)의 움직임 벡터(432)를 선택할 수 있다.Next, the first transcoding element selector 320 integrates the motion vectors 422, 424, 426, and 428 of the macro blocks 421, 423, 425, and 427, and then moves the motion vector 432 of the macro block 431. ) Can be selected.

이때, 움직임 벡터(422, 424, 426, 428)는 인코딩된 화면(410)의 매크로 블록(411, 413, 415, 417)을 가리키는 움직임 벡터일 수 있다.In this case, the motion vectors 422, 424, 426, and 428 may be motion vectors indicating macro blocks 411, 413, 415, and 417 of the encoded screen 410.

또한, 제1 트랜스코딩 요소 선택부(320)는 영역(440)과 매크로 블록(421, 423, 425, 427)와 겹쳐지는 구역의 크기에 따라 해당하는 매크로 블록의 움직임 벡터에 가중치를 부여하여 통합할 수 있다.In addition, the first transcoding element selector 320 weights and integrates the motion vector of the corresponding macroblock according to the size of the region overlapping the region 440 and the macroblocks 421, 423, 425, and 427. can do.

도 4를 참고하면 제1 트랜스코딩 요소 선택부(320)는 영역(440)이 매크로 블록(423)과 겹쳐진 구간(443)이 가장 넓은 매크로 블록(423)의 움직임 벡터(424)에 가장 큰 가중치를 부여할 수 있다. 반면에 영역(440)이 매크로 블록(423)과 겹쳐진 구간(443)이 가장 좁은 매크로 블록(425)의 움직임 벡터(426)에 가장 적은 가중치를 부여할 수도 있다.Referring to FIG. 4, the first transcoding element selector 320 has the largest weight to the motion vector 424 of the macroblock 423 having the largest region 443 where the region 440 overlaps the macroblock 423. Can be given. In contrast, the section 443 in which the region 440 overlaps the macro block 423 may give the least weight to the motion vector 426 of the narrowest macro block 425.

도 5는 본 발명의 일실시예에 따른 제2 트랜스코딩 요소 선택부(340)의 움직 임 벡터를 선택하는 과정의 일례를 도시한 도면이다.5 is a diagram illustrating an example of a process of selecting a motion vector of the second transcoding element selector 340 according to an embodiment of the present invention.

먼저, 제2 트랜스코딩 요소 선택부(340)는 도 5에 도시된 바와 같이 각각의 매크로 블록(511, 513, 515, 517)에 대응하는 움직임 벡터(512, 514, 516, 518)를 사분면별로 구분할 수 있다(510).First, as illustrated in FIG. 5, the second transcoding element selector 340 divides the motion vectors 512, 514, 516, and 518 corresponding to the respective macro blocks 511, 513, 515, and 517 into quadrants. Can be distinguished (510).

다음으로, 제2 트랜스코딩 요소 선택부(340)는 사분면별로 구분된 움직임 벡터끼리 평균 벡터를 구한다(520). 구체적으로 같은 사분면에 위치한 움직임 벡터(512)와 움직임 벡터(516)의 평균 벡터(521)를 구하고, 움직임 벡터(514)와 움직임 벡터(518)의 평균 벡터(522)를 구할 수 있다.Next, the second transcoding element selector 340 obtains an average vector of motion vectors divided by quadrants (520). In detail, the average vector 521 of the motion vector 512 and the motion vector 516 located in the same quadrant may be obtained, and the average vector 522 of the motion vector 514 and the motion vector 518 may be obtained.

이때, 제2 트랜스코딩 요소 선택부(340)는 움직임 벡터(521, 522)들 중에 움직임 벡터(512, 514, 516, 518)와 오차가 가장 작은 움직임 벡터를 선택할 수 있다.In this case, the second transcoding element selector 340 may select the motion vector 512, 514, 516, 518 having the smallest error among the motion vectors 521, 522.

도 6은 본 발명의 일실시예에 따른 영상 트랜스코딩 방법을 나타낸 동작 흐름도이다. 6 is a flowchart illustrating an image transcoding method according to an embodiment of the present invention.

단계(S610)에서 전처리 트랜스코더(110)는 영상을 디코딩하여 영상 정보 큐(120)에 전송할 수 있다.In operation S610, the preprocessing transcoder 110 may decode the image and transmit the image to the image information queue 120.

이때, 전처리 트랜스코더(110)는 화면 재생율이 변경되는지를 확인하고, 화면 재생율이 변경되는 경우에는 변경되는 화면 재생율에 기초하여 상기 영상 중에서 드랍할 화면을 선택하며, 드랍되지 않은 화면을 후처리 필터에 통과시켜 영상 정보 큐(120)로 전송할 수 있다.At this time, the preprocessing transcoder 110 checks whether the screen refresh rate is changed, and if the screen refresh rate is changed, selects a screen to drop from the image based on the changed screen refresh rate, and filters the non-dropped screen into a post-processing filter. By passing through the image information queue 120 may be transmitted.

단계(S620)에서 화면 코딩 타입 결정부(310)는 상기 영상 정보에 포함된 코 딩 타입에 따라 상기 영상 정보를 표시할 화면의 코딩 타입을 결정할 수 있다.In operation S620, the screen coding type determiner 310 may determine the coding type of the screen on which the image information is to be displayed according to the coding type included in the image information.

단계(S630)에서 화면 코딩 타입 결정부(310)는 단계(S620)에서 결정된 코딩 타입이 인트라(intra)인지를 확인할 수 있다. 이때, 단계(S620)에서 결정된 코딩 타입이 인트라(intra)이면, 화면의 크기를 변경하는 단계(S655)로 진행할 수 있다.In operation S630, the screen coding type determiner 310 may determine whether the coding type determined in operation S620 is intra. In this case, if the coding type determined in operation S620 is intra, the process may change to the operation S655 in which the size of the screen is changed.

단계(S640)에서 제1 트랜스코딩 요소 선택부(320)는 상기 영상 정보의 시간적 변화에 대응하여 기본 움직임 벡터와 기본 양자화 수준을 선택할 수 있다.In operation S640, the first transcoding element selector 320 may select a basic motion vector and a basic quantization level in response to the temporal change of the image information.

구체적으로, 제1 트랜스코딩 요소 선택부(320)는 단계(S610)에서 드랍된 화면의 움직임 벡터를 사용하여 실제로 참조하게 되는 화면의 상기 기본 움직임 벡터를 선택하고, 드랍되지 않아 실제로 참조하게 되는 화면의 양자화 수준을 상기 기본 양자화 수준으로 선택할 수 있다.In detail, the first transcoding element selector 320 selects the basic motion vector of the screen that is actually referred to using the motion vector of the screen dropped in step S610, and does not drop the screen. The quantization level of may be selected as the default quantization level.

단계(S650)에서 화면 크기 변경부(330)는 단계(S640)에서 기본 움직임 벡터와 기본 양자화 수준을 선택한 화면의 크기를 변화할 수 있다.In operation S650, the screen size changing unit 330 may change the size of the screen in which the basic motion vector and the basic quantization level are selected in operation S640.

단계(S655)에서 화면 크기 변경부(330)는 상기 영상 정보에 포함된 화면의 크기를 변화할 수 있다.In operation S655, the screen size changing unit 330 may change the size of the screen included in the image information.

단계(S660)에서 제2 트랜스코딩 요소 선택부(340)는 상기 영상 정보의 공간적 변화에 대응하여 기본 움직임 벡터와 기본 양자화 수준을 선택할 수 있다.In operation S660, the second transcoding element selector 340 may select a basic motion vector and a basic quantization level in response to the spatial change of the image information.

구체적으로, 제2 트랜스코딩 요소 선택부(340)는 단계(S650)에서 공간적 크기가 변경되기 전의 움직임 벡터를 사용하여 단계(S650)에서 크기가 변경된 영상 정보의 상기 기본 움직임 벡터를 선택하고, 상기 기본 양자화 수준을 초기화할 수 있다.In detail, the second transcoding element selector 340 selects the basic motion vector of the image information whose size is changed in step S650 by using the motion vector before the spatial size is changed in step S650. You can initialize the default quantization level.

단계(S670)에서 움직임 벡터 개선부(350)는 움직임 벡터를 추정하고, 추정된 움직임 벡터를 기초로 상기 기본 움직임 벡터를 개선할 수 있다.In operation S670, the motion vector improving unit 350 estimates a motion vector and may improve the basic motion vector based on the estimated motion vector.

단계(S680)에서 영상 인코더(360)는 영상을 인코딩 할 수 있다. 이때, 영상 인코더(360)은 단계(S670)을 실행한 영상의 경우에 움직임 벡터 개선부(350)에서 개선된 기본 움직임 벡터와 상기 기본 양자화 수준을 기초로 상기 영상 정보를 인코딩할 수 있다.In operation S680, the image encoder 360 may encode an image. In this case, the image encoder 360 may encode the image information based on the basic motion vector and the basic quantization level improved by the motion vector improving unit 350 in the case of the image in which the operation S670 is performed.

또한, 영상 인코더(360)는 비트율 제어 장치로 후보 양자화 수준을 선택하고, 상기 후보 양자화 수준과 상기 기본 양자화 수준의 최소 공배수를 양자화 수준으로 선택하여 상기 영상 정보를 인코딩할 수 있다.In addition, the image encoder 360 may select a candidate quantization level with a bit rate control device, and encode the image information by selecting the candidate quantization level and the least common multiple of the basic quantization level as the quantization level.

그리고, 본 발명에 따른 영상 트랜스코더는 하기된 표 1에 도시된 바와 같이 트랜스 코딩 형태 별로 제안되는 알고리즘 적용을 달리 할 수 있다.And, the image transcoder according to the present invention can vary the application of the proposed algorithm for each transcoding type, as shown in Table 1 below.

Figure 112009034822923-pat00001
Figure 112009034822923-pat00001

또한, 본 발명에 따른 영상 트랜스코더는 다수의 트랜스코더 형태가 조합될 경우 움직임 벡터의 우선 순위를 기본 움직임 벡터 개선이 입력 스트림의 움직임 벡터 그대로 사용하는 것보다 높도록 설정하고, 양자화 수준의 우선 순위를 사용 않함이 1순위, 입력스트림의 양자화 수준을 고려한 선택이 2순위 입력스트림의 양자화 수준 그대로 이용하는 것이 3순위가 되도록 설정할 수도 있다.In addition, the video transcoder according to the present invention sets the priority of the motion vector when the multiple transcoder types are combined so that the basic motion vector improvement is higher than using the motion vector of the input stream as it is, and the priority of the quantization level. It is also possible to set not to use the first order, and the selection considering the quantization level of the input stream is to use the quantization level of the second order input stream as it is.

이상에서 설명한 바와 같이, 본 발명에 따른 영상 트랜스코더는 영상 정보에 대응하는 움직임 벡터를 개선하고, 영상 트랜스코더에 맞는 양자화 수준을 선택함으로써 화질을 개선하고 계산량을 감소할 수 있는 영상 트랜스코더를 제공한다. As described above, the image transcoder according to the present invention improves the motion vector corresponding to the image information, and provides an image transcoder capable of improving the image quality and reducing the calculation amount by selecting a quantization level suitable for the image transcoder. do.

또한, 본 발명에 따른 영상 트랜스코더는 독립적인 기능들로 구성되어, 구현 복잡도를 최소화할 수 있다.In addition, the image transcoder according to the present invention may be configured with independent functions, thereby minimizing implementation complexity.

본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 파일 데이터, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments according to the present invention can be implemented in the form of program instructions that can be executed by various computer means can be recorded on a computer readable medium. The computer readable medium may include program instructions, file data, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by specific embodiments such as specific components and the like. For those skilled in the art to which the present invention pertains, various modifications and variations are possible.

따라서 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be construed as being limited to the described embodiments, and all of the equivalents or equivalents of the claims, as well as the following claims, are included in the scope of the present invention.

도 1은 본 발명의 일실시예에 따른 영상 트랜스코더의 개괄적인 모습을 도시한 일례다. 1 is an example showing an overview of an image transcoder according to an embodiment of the present invention.

도 2는 본 발명의 일실시예에 따른 전처리 트랜스코더(110)의 개괄적인 모습을 도시한 일례다.2 is an example showing an overview of the preprocessing transcoder 110 according to an embodiment of the present invention.

도 3은 본 발명의 일실시예에 따른 후처리 트랜스코더(130)의 개괄적인 모습을 도시한 일례다. Figure 3 is an example showing an overview of the post-process transcoder 130 according to an embodiment of the present invention.

도 4는 본 발명의 일실시예에 따른 제1 트랜스코딩 요소 선택부(320)의 움직임 벡터를 선택하는 과정의 일례를 도시한 도면이다.4 is a diagram illustrating an example of a process of selecting a motion vector of the first transcoding element selector 320 according to an embodiment of the present invention.

도 5는 본 발명의 일실시예에 따른 제2 트랜스코딩 요소 선택부(340)의 움직임 벡터를 선택하는 과정의 일례를 도시한 도면이다.5 is a diagram illustrating an example of a process of selecting a motion vector of the second transcoding element selector 340 according to an embodiment of the present invention.

도 6은 본 발명의 일실시예에 따른 영상 트랜스코딩 방법을 나타낸 동작 흐름도이다. 6 is a flowchart illustrating an image transcoding method according to an embodiment of the present invention.

Claims (24)

영상을 디코딩하여 영상 정보 큐에 전송하는 전처리 트랜스코더;A preprocessing transcoder for decoding the image and transmitting the image to a video information queue; 상기 영상의 영상 정보를 저장하는 영상 정보 큐; 및A video information queue for storing video information of the video; And 상기 영상 정보에 포함된 코딩 타입을 확인하고, 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보에 대응하는 양자화 수준과 움직임 벡터를 선택하며, 선택한 양자화 수준과 움직임 벡터를 기초로 상기 영상 정보를 인코딩하는 후처리 트랜스코더Identify a coding type included in the image information, and if the coding type is not intra, select a quantization level and a motion vector corresponding to the image information, and determine the image information based on the selected quantization level and the motion vector. Postprocessing transcoder to encode 를 포함하고,Including, 상기 전처리 트랜스코더는,The pretreatment transcoder, 상기 영상을 디코딩하는 영상 디코더;An image decoder for decoding the image; 화면 재생율이 변경되는지를 확인하고, 화면 재생율이 변경되는 경우에는 변경되는 화면 재생율에 기초하여 상기 영상 중에서 드랍할 화면을 선택하는 드랍 화면 선택부; 및A drop screen selection unit for checking whether a screen refresh rate is changed and selecting a screen to be dropped from the image based on the changed screen refresh rate when the screen refresh rate is changed; And 상기 드랍 화면 선택부에서 드랍하지 않은 화면의 화질을 개선하거나, 부가 기능을 추가하여 상기 영상 정보 큐로 전송하는 후처리 필터Post-processing filter for improving the image quality of the non-drop screen by the drop screen selection unit or by adding an additional function to the image information queue 를 포함하는 것을 특징으로 하는 영상 트랜스코더.Image transcoder comprising a. 삭제delete 제1항에 있어서,The method of claim 1, 상기 영상 디코더는 상기 영상을 디코딩하면서 움직임 벡터와 코딩 타입 및 양자화 수준에 대한 정보를 추출하여 저장하는 것을 특징으로 하는 영상 트랜스코더.The image decoder extracts and stores information on a motion vector, a coding type, and a quantization level while decoding the image. 제1항에 있어서,The method of claim 1, 상기 드랍 화면 선택부는 드랍하는 것으로 선택한 화면의 영상을 삭제하고, 상기 드랍하는 것으로 선택한 화면의 부가 정보 및 상기 드랍하는 것으로 선택한 화면이 드랍할 화면이라는 식별 정보를 상기 영상 정보 큐로 전송하는 것을 특징으로 하는 영상 트랜스코더.The drop screen selecting unit deletes an image of a screen selected as dropping, and transmits additional information of the screen selected as dropping and identification information indicating that the screen selected as dropping is a screen to be dropped to the image information queue. Video transcoder. 제4항에 있어서,5. The method of claim 4, 상기 부가 정보는 상기 드랍하는 것으로 선택한 화면의 움직임 벡터와 양자화 수준을 포함하는 것을 특징으로 하는 영상 트랜스코더.And the additional information includes a motion vector and a quantization level of a screen selected as the drop. 제4항에 있어서,5. The method of claim 4, 상기 영상 정보는 상기 영상의 움직임 벡터, 양자화 수준, 영상 및 상기 식별 정보를 포함하는 것을 특징으로 하는 영상 트랜스코더.And the image information includes a motion vector, a quantization level, an image, and the identification information of the image. 제6항에 있어서,The method of claim 6, 상기 영상은 상기 드랍 화면 선택부에서 드랍되지 않은 화면들의 영상인 것을 특징으로 하는 영상 트랜스코더.And the image is an image of screens not dropped by the drop screen selection unit. 제1항에 있어서,The method of claim 1, 상기 후처리 트랜스코더는 상기 영상 정보의 화면 재생율에 대응하는 타이머 이벤트 기반으로 동작하는 것을 특징으로 하는 영상 트랜스코더.And the post-processing transcoder is operated based on a timer event corresponding to the screen refresh rate of the image information. 제1항에 있어서,The method of claim 1, 상기 후처리 트랜스코더는,The post-process transcoder, 상기 영상 정보에 포함된 코딩 타입에 따라 상기 영상 정보를 표시할 화면의 코딩 타입을 결정하는 화면 코딩 타입 결정부;A screen coding type determiner configured to determine a coding type of a screen on which the image information is to be displayed according to a coding type included in the image information; 상기 코딩 타입이 인트라(intra)가 아니면, 상기 영상 정보의 시간적 변화에 대응하여 기본 움직임 벡터와 기본 양자화 수준을 선택하는 제1 트렌스코딩 요소 선택부;A first transcoding element selector configured to select a basic motion vector and a basic quantization level in response to a temporal change of the image information if the coding type is not intra; 상기 영상 정보의 공간적 크기를 변경하는 화면 크기 변경부;A screen size changing unit for changing a spatial size of the image information; 상기 영상 정보의 공간적 크기 변화에 대응하여 인코더에서 사용될 기본 움직임 벡터와 기본 양자화 수준을 선택하는 제2 트렌스코딩 요소 선택부A second transcoding element selector which selects a basic motion vector and a basic quantization level to be used in an encoder in response to a change in the spatial size of the image information 움직임 벡터를 추정하고, 추정된 움직임 벡터를 기초로 상기 기본 움직임 벡터를 개선하는 움직임 벡터 개선부; 및A motion vector improving unit for estimating a motion vector and improving the basic motion vector based on the estimated motion vector; And 상기 움직임 벡터 개선부에서 개선된 기본 움직임 벡터와 상기 기본 양자화 수준을 기초로 상기 영상 정보를 인코딩하는 영상 인코더An image encoder for encoding the image information based on the improved basic motion vector and the basic quantization level in the motion vector improving unit 를 포함하는 것을 특징으로 하는 영상 트랜스코더.Image transcoder comprising a. 제9항에 있어서,10. The method of claim 9, 상기 제1 트렌스코딩 요소 선택부는 드랍된 화면의 움직임 벡터를 사용하여 상기 기본 움직임 벡터를 선택하고, 드랍되지 않은 화면의 양자화 수준을 상기 기본 양자화 수준으로 선택하는 것을 특징으로 하는 영상 트랜스코더.The first transcoding element selector selects the basic motion vector using the dropped motion vector of the screen and selects the quantization level of the non-dropped screen as the basic quantization level. 제9항에 있어서,10. The method of claim 9, 상기 제2 트렌스코딩 요소 선택부는 공간적 크기가 변경되기 전의 움직임 벡터를 사용하여 크기가 변경된 영상 정보의 상기 기본 움직임 벡터를 선택하고, 상기 기본 양자화 수준을 초기화하는 것을 특징으로 하는 영상 트랜스코더.And the second transcoding element selector selects the basic motion vector of the changed image information using the motion vector before the spatial size is changed and initializes the basic quantization level. 제9항에 있어서,10. The method of claim 9, 상기 영상 인코더는 후보 양자화 수준을 선택하는 비트율 제어 장치를 포함하고, 상기 후보 양자화 수준과 상기 기본 양자화 수준의 최소 공배수를 양자화 수준으로 선택하여 상기 영상 정보를 인코딩하는 것을 특징으로 하는 영상 트랜스코더.And the image encoder comprises a bit rate control device for selecting a candidate quantization level, and encoding the image information by selecting a minimum common multiple of the candidate quantization level and the basic quantization level as a quantization level. 입력되는 영상을 디코딩하여 영상 정보 큐에 전송하는 단계Decoding the input video and transmitting the decoded video to a video information queue; 상기 영상 정보 큐에 상기 영상의 영상 정보를 저장하는 단계; Storing image information of the image in the image information queue; 상기 영상 정보의 코딩 타입을 확인하는 단계;Checking a coding type of the image information; 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보에 대응하는 양자화 수준과 움직임 벡터를 선택하는 단계; 및Selecting a quantization level and a motion vector corresponding to the image information if the coding type is not intra; And 선택된 양자화 수준과 움직임 벡터를 기초로 상기 영상 정보를 인코딩하는 단계Encoding the image information based on the selected quantization level and the motion vector. 를 포함하고,Including, 상기 전송하는 단계는,The transmitting step, 상기 영상을 디코딩하는 단계;Decoding the image; 화면 재생율이 변경되는가를 확인하는 단계;Checking whether the screen refresh rate is changed; 상기 화면 재생율이 변경될 경우에 변경되는 화면 재생율에 기초하여 상기 입력되는 영상의 현재 화면을 드랍할 것인지 선택하는 단계; Selecting whether to drop the current screen of the input image based on the screen refresh rate that is changed when the screen refresh rate is changed; 상기 드랍할 것인지 선택하는 단계에서 상기 드랍하지 않은 화면의 영상 정보를 영상 정보 큐로 전송하는 단계;Transmitting image information of the non-dropped screen to an image information queue in the step of selecting whether to drop the drop; 상기 드랍할 것인지 선택하는 단계에서 드랍하지 않은 화면을 후처리 필터에 통과시키는 단계; 및Passing a non-drop screen to a post-processing filter in the step of selecting whether to drop or not; And 상기 후처리 필터를 통과한 화면을 영상 정보 큐로 전송하는 단계Transmitting the screen passing through the post-processing filter to a video information queue. 를 포함하는 것을 특징으로 하는 영상 트랜스코딩 방법.Image transcoding method comprising a. 삭제delete 제13항에 있어서,The method of claim 13, 상기 디코딩하는 단계는 상기 영상을 디코딩하면서 움직임 벡터와 코딩 타입 및 양자화 수준에 대한 정보를 추출하여 저장하는 것을 특징으로 하는 영상 트랜스코딩 방법.The decoding may include extracting and storing information on a motion vector, a coding type, and a quantization level while decoding the image. 제13항에 있어서,The method of claim 13, 상기 드랍할 것인지 선택하는 단계는 드랍하는 것으로 선택한 화면의 영상을 삭제하고, 상기 드랍하는 것으로 선택한 화면의 부가 정보 및 상기 드랍하는 것으로 선택한 화면이 드랍할 화면이라는 식별 정보를 영상 정보 큐로 전송하는 것을 특징으로 하는 영상 트랜스코딩 방법.The step of selecting whether to drop is to delete the image of the screen selected as the drop, and to transmit the additional information of the screen selected as the drop and the identification information that the screen selected as the drop is the screen to drop to the image information queue. Video transcoding method. 제16항에 있어서,The method of claim 16, 상기 부가 정보는 상기 드랍하는 것으로 선택한 화면의 움직임 벡터와 양자화 수준을 포함하는 것을 특징으로 하는 영상 트랜스코딩 방법.The additional information includes a motion vector and a quantization level of a screen selected as the drop. 제16항에 있어서,The method of claim 16, 상기 영상 정보는 상기 영상의 움직임 벡터, 양자화 수준, 영상 및 상기 식별 정보를 포함하는 것을 특징으로 하는 영상 트랜스코딩 방법.The image information includes a motion vector, a quantization level, an image, and the identification information of the image. 제18항에 있어서,The method of claim 18, 상기 영상은 상기 드랍 화면 선택부에서 드랍되지 않은 화면들의 영상인 것을 특징으로 하는 영상 트랜스코딩 방법.And the image is an image of screens that are not dropped by the drop screen selection unit. 제13항에 있어서,The method of claim 13, 상기 양자화 수준과 움직임 벡터를 선택하는 단계는.The step of selecting the quantization level and the motion vector. 상기 코딩 타입이 인트라(intra)가 아니면 상기 영상 정보의 시간적 변화에 대응하여 기본 움직임 벡터와 기본 양자화 수준을 선택하는 단계;Selecting a basic motion vector and a basic quantization level in response to a temporal change of the image information if the coding type is not intra; 상기 영상 정보의 공간적 크기를 변경하는 단계;Changing a spatial size of the image information; 상기 영상 정보의 공간적 크기 변화에 대응하여 인코더에서 사용될 기본 움직임 벡터와 기본 양자화 수준을 선택하는 단계; 및Selecting a basic motion vector and a basic quantization level to be used in an encoder in response to the spatial size change of the image information; And 움직임 벡터를 추정하고, 추정된 움직임 벡터를 기초로 상기 기본 움직임 벡터를 개선하는 단계 Estimating a motion vector and improving the basic motion vector based on the estimated motion vector 를 포함하는 것을 특징으로 하는 영상 트랜스코딩 방법.Image transcoding method comprising a. 제20항에 있어서,21. The method of claim 20, 상기 시간적 변화에 대응하여 기본 움직임 벡터와 기본 양자화 수준을 선택하는 단계는 드랍된 화면의 움직임 벡터를 사용하여 상기 기본 움직임 벡터를 선택하고, 드랍되지 않은 화면의 양자화 수준을 상기 기본 양자화 수준으로 선택하는 것을 특징으로 하는 영상 트랜스코딩 방법.The step of selecting a basic motion vector and a basic quantization level in response to the temporal change includes selecting the basic motion vector using a motion vector of the dropped screen and selecting the quantization level of the undropped screen as the basic quantization level. Image transcoding method, characterized in that. 제20항에 있어서,21. The method of claim 20, 상기 공간적 변화에 대응하여 기본 움직임 벡터와 기본 양자화 수준을 선택하는 단계는 공간적 크기가 변경되기 전의 움직임 벡터를 사용하여 크기가 변경된 영상 정보의 상기 기본 움직임 벡터를 선택하고, 상기 기본 양자화 수준을 초기화하는 것을 특징으로 하는 영상 트랜스코딩 방법.The step of selecting a basic motion vector and a basic quantization level in response to the spatial change may include selecting the basic motion vector of the changed image information using the motion vector before the spatial size is changed and initializing the basic quantization level. Image transcoding method, characterized in that. 제20항에 있어서,21. The method of claim 20, 상기 인코딩하는 단계는 The encoding step 후보 양자화 수준을 선택하는 단계;Selecting a candidate quantization level; 상기 후보 양자화 수준과 상기 기본 양자화 수준의 최소 공배수를 양자화 수준으로 선택하는 단계; 및Selecting a least common multiple of the candidate quantization level and the basic quantization level as a quantization level; And 상기 양자화 수준을 사용하여 상기 영상 정보를 인코딩하는 단계Encoding the image information using the quantization level 를 포함하는 것을 특징으로 하는 영상 트랜스코딩 방법.Image transcoding method comprising a. 제13항, 제15항 내지 제23항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer-readable recording medium in which a program for executing the method of any one of claims 13 and 15 to 23 is recorded.
KR1020090050991A 2009-06-09 2009-06-09 Improved image transcoder and transcoding method KR101045191B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090050991A KR101045191B1 (en) 2009-06-09 2009-06-09 Improved image transcoder and transcoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090050991A KR101045191B1 (en) 2009-06-09 2009-06-09 Improved image transcoder and transcoding method

Publications (2)

Publication Number Publication Date
KR20100132262A KR20100132262A (en) 2010-12-17
KR101045191B1 true KR101045191B1 (en) 2011-06-30

Family

ID=43507972

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090050991A KR101045191B1 (en) 2009-06-09 2009-06-09 Improved image transcoder and transcoding method

Country Status (1)

Country Link
KR (1) KR101045191B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060045719A (en) * 2004-04-15 2006-05-17 마이크로소프트 코포레이션 High-fidelity transcoding
JP2007235989A (en) 2007-04-18 2007-09-13 Sony Corp Image processing apparatus and image processing method, program, and recording medium
KR100766740B1 (en) * 1998-03-10 2007-10-12 소니 가부시끼 가이샤 Apparatus and method for converting data using encoding history information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100766740B1 (en) * 1998-03-10 2007-10-12 소니 가부시끼 가이샤 Apparatus and method for converting data using encoding history information
KR20060045719A (en) * 2004-04-15 2006-05-17 마이크로소프트 코포레이션 High-fidelity transcoding
JP2007235989A (en) 2007-04-18 2007-09-13 Sony Corp Image processing apparatus and image processing method, program, and recording medium

Also Published As

Publication number Publication date
KR20100132262A (en) 2010-12-17

Similar Documents

Publication Publication Date Title
TWI719542B (en) Video encoding/decoding method and apparatus
US8208557B2 (en) Video encoding and decoding method and apparatus using weighted prediction
JP5580453B2 (en) Direct mode encoding and decoding apparatus
US9788019B2 (en) Method and apparatus of transform unit partition with reduced complexity
US9756336B2 (en) Method of background residual prediction for video coding
KR101715833B1 (en) Method and encoder for video encoding of a sequence of frames
US8630351B2 (en) Method and apparatus for encoding and decoding motion vector
RU2559737C2 (en) Method and device for coding/decoding of movement vector
US8718138B2 (en) Image encoding apparatus and image encoding method that determine an encoding method, to be used for a block to be encoded, on the basis of an intra-frame-prediction evaluation value calculated using prediction errors between selected reference pixels and an input image
JP2019041418A5 (en)
US9307241B2 (en) Video encoding method and a video encoding apparatus using the same
JP2009526436A (en) Method and apparatus for reusing motion information available as a predictor of motion prediction for video coding
US10715811B2 (en) Method and apparatus for determining merge mode
JP5216710B2 (en) Decryption processing method
JP2015515201A (en) Method and apparatus for encoding a selected spatial portion of a video stream
KR20150023323A (en) Systems and methods for the reuse of encoding information in encoding alternative streams of video data
JP2013502140A (en) Video encoding and decoding method and apparatus using adjustment of accuracy of motion vector
JP2016154395A (en) Method and apparatus for encoding/decoding video using motion vector of previous block as motion vector for current block
JP2007166521A (en) Moving image re-encoding method and apparatus
JP5748225B2 (en) Moving picture coding method, moving picture coding apparatus, and moving picture coding program
JP2009089267A (en) Method and device for intra predictive coding, and program
KR101045191B1 (en) Improved image transcoder and transcoding method
CN104717511B (en) Video coding or decoded method and device
US20100322316A1 (en) Moving-picture encoding apparatus and decoding apparatus
JP2012120108A (en) Interpolation image generating apparatus and program, and moving image decoding device and program

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: 20141201

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160603

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170619

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180419

Year of fee payment: 8