KR20120118463A - Image processing device, method, and program - Google Patents
Image processing device, method, and program Download PDFInfo
- Publication number
- KR20120118463A KR20120118463A KR20127017864A KR20127017864A KR20120118463A KR 20120118463 A KR20120118463 A KR 20120118463A KR 20127017864 A KR20127017864 A KR 20127017864A KR 20127017864 A KR20127017864 A KR 20127017864A KR 20120118463 A KR20120118463 A KR 20120118463A
- Authority
- KR
- South Korea
- Prior art keywords
- prediction
- image
- unit
- screen
- picture
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/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/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- 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/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
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
Abstract
본 발명은 B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있는 화상 처리 장치 및 방법, 및 프로그램에 관한 것이다.
움직임 보상부는, L0 참조 픽처의 참조 영역 중, 화면 내부 부분은, H.264/AVC 방식의 가중치 부여 예측에 의해 예측 화상을 생성하고, L0 참조 픽처의 참조 영역 중, 화면의 외부의 부분에 대해서는, 그것을 사용하지 않고, L1 참조 픽처의 참조 영역만을 사용해서 예측 화상을 생성한다. 즉, L0 참조 픽처에서는, L0 참조의 참조 영역에 도시된 바와 같이, 참조 영역은, 외측의 파선 사각인데, 실제로는, 내측의 파선 사각 내부의 영역 이외에는 예측에 사용되지 않는다. 본 발명은 예를 들어 H.264/AVC 방식을 기초로 부호화하는 화상 부호화 장치에 적용할 수 있다.The present invention relates to an image processing apparatus and method and a program capable of improving the prediction accuracy in the B picture, especially near the end of the screen.
The motion compensator generates a predictive image in the reference region of the L0 reference picture by weighted prediction of the H.264 / AVC method, and in the reference region of the L0 reference picture, The prediction picture is generated using only the reference region of the L1 reference picture without using it. That is, in the L0 reference picture, as shown in the reference region of the L0 reference, the reference region is an outer dashed line square, but is not actually used for prediction other than the region inside the inner dashed line square. The present invention can be applied to, for example, an image encoding apparatus that encodes based on an H.264 / AVC scheme.
Description
본 발명은 화상 처리 장치 및 방법, 및 프로그램에 관한 것으로, 특히, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있도록 한 화상 처리 장치 및 방법, 및 프로그램에 관한 것이다.TECHNICAL FIELD The present invention relates to an image processing apparatus, a method, and a program, and more particularly, to an image processing apparatus, a method, and a program, which make it possible to improve the prediction accuracy in the B picture, especially near the end of the screen.
화상 정보를 압축하는 표준 규격으로서, H.264 및 MPEG-4 Part10(Advanced Video Coding, 이하 H.264/AVC라고 기재함)이 있다.As standard standards for compressing image information, there are H.264 and MPEG-4 Part 10 (Advanced Video Coding, hereinafter referred to as H.264 / AVC).
H.264/AVC에서는, 프레임 또는 필드 간의 상관에 주목한 인터 예측이 행해진다. 그리고, 이 인터 예측에서 행해지는 움직임 보상 처리에서는, 이미 보존되어 있는 참조가능한 화상 내의 일부 영역을 사용하여, 인터 예측에 의한 예측 화상(이하, 인터 예측 화상이라고 함)이 생성된다.In H.264 / AVC, inter prediction that pays attention to correlation between frames or fields is performed. In the motion compensation process performed in this inter prediction, a predictive image (hereinafter referred to as an inter prediction image) by inter prediction is generated using a partial region in the referenceable image that is already stored.
예를 들어, 도 1에 도시한 바와 같이, 이미 보존되어 있는 참조가능한 화상의 5 프레임이 참조 프레임이 되었을 경우, 인터 예측하는 프레임(원 프레임)의 인터 예측 화상의 일부는, 5개 중 어느 하나의 참조 프레임 화상(이하, 참조 화상이라고 함)의 일부를 참조하여 구성된다. 또한, 인터 예측 화상의 일부가 되는 참조 화상의 일부의 위치는, 참조 프레임과 원 프레임의 화상에 기초하여 검출된 움직임 벡터에 의해 결정된다.For example, as shown in Fig. 1, when five frames of the already stored referenceable picture become a reference frame, a part of the inter prediction pictures of the frame to be inter predicted (the original frame) is any one of five. The reference frame pictures (hereinafter referred to as reference pictures) are configured with reference to. In addition, the position of a part of the reference picture which becomes a part of an inter prediction picture is determined by the motion vector detected based on the picture of a reference frame and an original frame.
보다 상세하게는, 도 2에 도시한 바와 같이, 참조 프레임 내의 얼굴(11)이 원 프레임에서 우측 하방으로 이동하여, 하부의 약 1/3이 가려졌을 경우, 우측 하방의 반대인 좌측 상방을 나타내는 움직임 벡터가 검출된다. 그리고, 원 프레임 내의 숨겨져 있지 않은 얼굴(11)의 일부(12)는, 그 일부(12)를 움직임 벡터가 나타내는 움직임만큼 이동시킨 위치의 참조 프레임 내의 얼굴(11)의 일부(13)를 참조하여 구성된다.More specifically, as shown in FIG. 2, when the
또한, H.264/AVC에서는, 도 3에 도시된 바와 같이, 16×16 화소 내지 4×4 화소의 블록 사이즈에서 움직임 보상을 행할 수 있다. 이에 의해, 움직임의 경계가 매크로 블록(예를 들어, 16×16 화소) 내부에 생길 때, 블록 사이즈를 경계에 따라 보다 작게 분할할 수 있으므로, 정확한 움직임 보상을 행할 수 있다.In addition, in H.264 / AVC, as shown in FIG. 3, motion compensation can be performed at a block size of 16x16 pixels to 4x4 pixels. As a result, when a motion boundary occurs inside a macro block (e.g., 16 x 16 pixels), the block size can be divided smaller according to the boundary, so that accurate motion compensation can be performed.
또한, H.264/AVC에서는, 움직임 보상 처리에서, 움직임 벡터의 분해능을 2분의 1 또는 4분의 1 등의 분수 정밀도로 향상시키는 것을 생각할 수 있다.In addition, in H.264 / AVC, it is conceivable to improve the resolution of the motion vector to a fractional precision such as 1/2 or quarter in the motion compensation process.
이러한 분수 정밀도의 움직임 보상 처리에서는, 인접하는 화소의 사이에, Sub pel이라고 불리는 가상적인 분수 위치의 화소를 설정하고, 그 Sub pel을 생성하는 처리(이하, 인터폴레이션이라고 함)가 추가되어 행해진다. 즉, 분수 정밀도의 움직임 보상 처리에서는, 움직임 벡터의 최소 분해능이 분수 위치의 화소가 되기 때문에, 분수 위치의 화소를 생성하기 위한 인터폴레이션이 행해진다.In such fractional precision motion compensation processing, a process of setting a pixel of a virtual fractional position called a sub pel and generating the sub pel (hereinafter referred to as interpolation) is performed between adjacent pixels. That is, in the fractional precision motion compensation process, since the minimum resolution of the motion vector becomes the pixel at the fractional position, interpolation for generating the pixel at the fractional position is performed.
도 4는, 인터폴레이션에 의해 세로 방향과 가로 방향의 화소수가 4배로 증가 된 화상의 각 화소를 도시하고 있다. 또한, 도 4에서, 백색의 정사각형은, 정수 위치의 화소(Integer pel(Int. pel))를 나타내고, 빗금이 그어진 정사각형은, 분수 위치의 화소(Sub pel)를 나타내고 있다. 또한, 정사각형 내의 알파벳은, 그 정사각형이 나타내는 화소의 화소값을 나타내고 있다.Fig. 4 shows each pixel of the image in which the number of pixels in the vertical direction and the horizontal direction is increased four times by interpolation. In FIG. 4, a white square represents an integer pixel (Integer pel (Int. Pel)), and a hatched square represents a fractional pixel (Sub pel). In addition, the alphabet in a square has shown the pixel value of the pixel which the square represents.
인터폴레이션에 의해 생성되는 분수 위치 화소의 화소값 b, h, j, a, d, f, r은, 이하에 나타내는 수학식 1로 나타내진다.The pixel values b, h, j, a, d, f and r of the fractional position pixel generated by interpolation are represented by the following equation (1).
[수학식 1][Equation 1]
b=(E-5F+20G+20H-5I+J)/32b = (E-5F + 20G + 20H-5I + J) / 32
h=(A-5C+20G+20M-5R+T)/32h = (A-5C + 20G + 20M-5R + T) / 32
j=(aa-5bb+20b+20s-5gg+hh)/32j = (aa-5bb + 20b + 20s-5gg + hh) / 32
a=(G+b)/2a = (G + b) / 2
d=(G+h)/2d = (G + h) / 2
f=(b+j)/2f = (b + j) / 2
r=(m+s)/2r = (m + s) / 2
또한, 화소값 aa, bb, s, gg, hh는 b와 마찬가지로, cc, dd, m, ee, ff는 h와 마찬가지로, c는 a와 마찬가지로, f, n, q는 d와 마찬가지로, e, p, g는 r과 마찬가지로, 각각 구할 수 있다.Also, pixel values aa, bb, s, gg and hh are the same as b, cc, dd, m, ee and ff are the same as h, c is the same as a, f, n, q are the same as d, e, p and g can be calculated | required similarly to r, respectively.
상술한 수학식 1은, H.264/AVC 등의 인터폴레이션에서 채용되는 식이며, 이 식은 규격의 차이에 따라 상이한데, 식의 목적은 동일하다. 이 식은, 짝수의 탭수를 갖는 유한 임펄스 응답(FIR(Finit-duration Impulse Response)) 필터로 실현할 수 있다. 예를 들어, H.264/AVC에서는, 6 탭의 보간 필터가 사용되고 있다.The above-described equation (1) is an equation employed in interpolation such as H.264 / AVC, and this equation is different depending on the difference in the standard, but the purpose of the equation is the same. This equation can be realized by a finite impulse response (FIR) filter having an even number of taps. For example, a 6-tap interpolation filter is used in H.264 / AVC.
또한, H.264/AVC에서는, 움직임 벡터의 참조 영역이 화면 단부(화면 프레임)의 외부가 되는 경우, 도 5에 도시되는 바와 같이, 화면 단부의 화소값이 카피된다.In addition, in H.264 / AVC, when the reference region of the motion vector is outside the screen end (screen frame), the pixel value at the screen end is copied as shown in FIG.
도 5의 예에 도시되는 참조 픽처에서는, 일점쇄선이 화면 단부(화면 프레임)를 도시하고 있고, 일점쇄선과 외측의 실선 사이의 영역이, 화면 단부의 카피에 의해 확장된 영역을 나타내고 있다. 즉, 참조 픽처는, 화면 단부의 카피에 의해 확장되어 있게 된다.In the reference picture shown in the example of FIG. 5, a dashed-dotted line shows a screen end (screen frame), and the area | region between a dashed-dotted line and the outer solid line shows the area extended by the copy of the screen end. That is, the reference picture is expanded by the copy of the screen end.
그런데, H.264/AVC에서는, 특히, B 픽처인 경우, 도 6에 도시된 바와 같이, 쌍방향 예측을 사용할 수 있다. 도 6에서는, 표시 순서로 픽처가 나타나 있고, 부호화 대상 픽처의 표시 순서 전후로 부호화 완료된 참조 픽처가 나열되어 있다. 부호화 대상 픽처가 B 픽처인 경우, 예를 들어 부호화 대상 픽처의 대상 예측 블록에 도시된 바와 같이, 전후(쌍방향)의 참조 픽처의 2개의 블록을 참조하여, 전방향의 L0 예측의 움직임 벡터와, 후방향의 L1 예측의 움직임 벡터를 가질 수 있다.However, in H.264 / AVC, in particular, in the case of a B picture, as shown in FIG. 6, bidirectional prediction may be used. In Fig. 6, pictures are shown in display order, and reference pictures that have been encoded before and after the display order of the pictures to be encoded are listed. When the picture to be encoded is a B picture, for example, as shown in a target prediction block of the picture to be encoded, the motion vector of the L0 prediction in the forward direction is referred to by referring to two blocks of the reference picture in front and rear (bidirectional), It may have a motion vector of backward L1 prediction.
즉, L0은, 주로 대상 예측 블록보다도 표시 시각이 빠른 것이고, L1은, 주로 대상 예측 블록보다도 표시 시각이 늦은 것이 된다. 그러한 구별된 참조 픽처를 부호화 모드별로 구분지어 사용할 수 있다. 부호화 모드에는, 도 7에 도시된 바와 같이, 화면 내 부호화(인트라 예측), L0 예측, L1 예측, 쌍 예측, 다이렉트 모드의 5종류가 있다.That is, L0 mainly has a display time earlier than a target prediction block, and L1 mainly has a display time later than a target prediction block. Such distinct reference pictures can be used separately for each encoding mode. As shown in Fig. 7, there are five types of coding modes: intra picture coding (intra prediction), L0 prediction, L1 prediction, pair prediction, and direct mode.
도 7은, 부호화 모드와 참조 픽처 및 움직임 벡터의 관계를 도시하는 도면이다. 또한, 도 7에서, 참조 픽처는, 그 부호화 모드에서 참조 픽처로서 사용할지 사용하지 않을지를 나타내고, 움직임 벡터는, 그 부호화 모드가 움직임 벡터 정보를 가지고 있을지 가지고 있지 않을지를 나타내고 있다.7 is a diagram illustrating a relationship between an encoding mode, a reference picture, and a motion vector. In FIG. 7, the reference picture indicates whether or not to use the reference picture as the reference picture in the encoding mode, and the motion vector indicates whether or not the encoding mode has motion vector information.
화면 내 부호화 모드는, 화면 내(즉, 인트라)에서 예측하는 모드이며, L0 참조 픽처도 L1 참조 픽처도 사용하지 않고, L0 예측의 움직임 벡터도 L1 예측의 움직임 벡터 정보도 갖지 않는 부호화 모드다. L0 예측 모드는, L0 참조 픽처만을 사용해서 예측을 행하고, L0 예측의 움직임 벡터 정보를 가지고 있는 부호화 모드다. L1 예측 모드에서는, L1 참조 픽처만을 사용해서 예측을 행하고, L1 예측의 움직임 벡터 정보를 가지고 있는 부호화 모드다.The intra picture encoding mode is a mode that predicts in the picture (that is, intra), and is an encoding mode in which neither the L0 reference picture nor the L1 reference picture is used, and neither the motion vector of the L0 prediction nor the motion vector information of the L1 prediction. The L0 prediction mode is a coding mode that performs prediction using only the L0 reference picture and has motion vector information of the L0 prediction. In the L1 prediction mode, the prediction is performed using only the L1 reference picture, and is an encoding mode that includes motion vector information of the L1 prediction.
쌍 예측 모드에서는, L0 및 L1 참조 픽처를 사용해서 예측을 행하고, L0 및 L1 예측의 움직임 벡터 정보를 가지고 있는 부호화 모드다. 다이렉트 모드에서는, L0 및 L1 참조 픽처를 사용해서 예측을 행하는데, 움직임 벡터 정보는 가지고 있지 않은 부호화 모드다. 즉, 다이렉트 모드는, 움직임 벡터 정보를 가지고 있지 않지만, 참조 픽처에서의 부호화가 완료된 블록의 움직임 벡터 정보로부터, 현 시점의 대상 예측 블록의 움직임 벡터 정보를 예측해서 사용하는 부호화 모드다. 또한, 다이렉트 모드에도, L0 또는 L1 참조 픽처 중 어느 한쪽밖에 갖지 않는 경우도 있을 수 있다.In the pair prediction mode, prediction is performed using the L0 and L1 reference pictures, and is an encoding mode in which the motion vector information of the L0 and L1 prediction is included. In the direct mode, the prediction is performed using the L0 and L1 reference pictures, but the encoding mode does not have motion vector information. In other words, the direct mode is an encoding mode which does not have motion vector information but predicts and uses motion vector information of the target prediction block at this point in time from motion vector information of a block in which a reference picture is completed. In the direct mode, only one of the L0 or L1 reference pictures may be provided.
이상과 같이, 쌍 예측 모드 및 다이렉트 모드에서는, L0 및 L1 참조 픽처 양쪽을 사용하는 경우가 있다. 참조 픽처가 2매인 경우, 다음 수학식 2에 나타나는 가중치 부여 예측에 의해, 쌍 예측 모드 또는 다이렉트 모드의 예측 신호를 얻을 수 있다.As described above, in the pair prediction mode and the direct mode, both L0 and L1 reference pictures may be used. When there are two reference pictures, the prediction signal of the pair prediction mode or the direct mode can be obtained by the weighted prediction shown in the following expression (2).
[수학식 2]&Quot; (2) "
YBi - Pred=W0Y0+W1Y1+DY Bi - Pred = W 0 Y 0 + W 1 Y 1 + D
여기서, YBi - Pred는, 쌍 예측 모드 혹은 다이렉트 모드의 오프셋 부여 가중치 보간 신호이며, W0, W1은, 각각 L0, L1에 대한 가중 계수이며, Y0, Y1은, L0, L1의 움직임 보상 예측 신호다. 이 W0, W1, D는, 명시적으로 비트 스트림 정보에 포함되거나, 복호측에서 암묵적으로 계산에 의해 얻어지는 것이 사용된다.Here, Y Bi - Pred is an offset-weighted interpolation signal in pair prediction mode or direct mode, W 0 and W 1 are weighting coefficients for L0 and L1, respectively, and Y 0 and Y 1 are L0 and L1. Motion compensation prediction signal. These W 0 , W 1 , and D are included in the bit stream information explicitly, or those obtained by calculation implicitly on the decoding side are used.
참조 픽처의 부호화 열화가 L0 및 L1의 2매의 참조 픽처에서 무 상관이면, 이 가중치 부여 예측에 의해 부호화 열화가 억제된다. 그 결과, 예측 신호와 입력 신호와의 차분인 잔차 신호가 줄어들고, 잔차 신호의 비트량이 삭감되어, 부호화 효율이 개선된다.If the coding deterioration of the reference picture is uncorrelated in two reference pictures of L0 and L1, the coding deterioration is suppressed by this weighted prediction. As a result, the residual signal, which is the difference between the prediction signal and the input signal, is reduced, and the bit amount of the residual signal is reduced, thereby improving the coding efficiency.
또한, 다이렉트 모드에 대해서는, 비특허문헌 1에서, 참조 영역이 화면의 밖을 포함하고 있는 경우에는, 그 참조 픽처는 사용하지 않고, 다른 한쪽만의 참조 픽처를 사용하는 제안이 이루어져 있다.Regarding the direct mode, in
그런데, H.264/AVC 방식에서, 매크로 블록 사이즈는 16×16 화소다. 그러나, 매크로 블록 사이즈를 16×16 화소로 하는 것은, 차세대 부호화 방식의 대상이 되는 것과 같은 UHD(Ultra High Definition; 4000×2000 화소) 등의 큰 화면 프레임에 대해서 최적은 아니다.By the way, in the H.264 / AVC system, the macro block size is 16x16 pixels. However, setting the macroblock size to 16x16 pixels is not optimal for large screen frames such as Ultra High Definition (4000x2000 pixels), such as those targeted for the next generation coding method.
따라서, 비특허문헌 2 등에서는, 매크로 블록 사이즈를, 예를 들어 32×32 화소 등의 크기로 확장하는 것도 제안되어 있다.Therefore, in Non-Patent Document 2 and the like, it is also proposed to expand the macroblock size to a size such as 32x32 pixels.
상술한 바와 같이, 다이렉트 모드 혹은 쌍 예측이 사용될 경우, L0 참조 픽처와 L1 참조 픽처의 참조 영역이 사용된다. 여기서, L0 참조의 참조 영역, 혹은, L1 참조의 참조 영역 중 어느 한쪽이 화면의 외부가 되는 경우가 발생할 수 있다.As described above, when direct mode or pair prediction is used, reference regions of the L0 reference picture and the L1 reference picture are used. Here, a case where either the reference area of the L0 reference or the reference area of the L1 reference may be outside of the screen may occur.
도 8의 예에서는, 좌측으로부터, L0 참조 픽처, 부호화 대상 픽처, L1 참조 픽처가 시간 경과의 순서대로 나타나고 있다. 각 픽처에서, 일점쇄선은 화면 단부를 나타내고 있고, 실선과 일점쇄선의 사이의 영역은, 도 5에서 상술한 화면 단부의 카피에 의해 확장된 영역을 나타내고 있다.In the example of FIG. 8, from the left side, the L0 reference picture, the encoding target picture, and the L1 reference picture are shown in the order of passage of time. In each picture, the dashed-dotted line represents the screen end, and the area | region between a solid line and the dashed-dotted line shows the area extended by the copy of the screen end mentioned above in FIG.
또한, 각 픽처에서 파선으로 둘러싸인 영역은, L0 참조 픽처에서는, L0 참조의 참조 영역을 나타내고, 부호화 대상 픽처에서는, 움직임 보상 영역을 나타내고, L1 참조 픽처에서는, L1 참조의 참조 영역을 나타내고 있다. 그 중에서, 특히, L0 참조의 참조 영역과 L1 참조의 참조 영역이, 도 8의 하부에 나타나고 있다.In addition, the region enclosed by the broken line in each picture represents the reference region of the L0 reference in the L0 reference picture, the motion compensation region in the encoding target picture, and the reference region of the L1 reference in the L1 reference picture. In particular, the reference region of the L0 reference and the reference region of the L1 reference are shown in the lower part of FIG. 8.
그리고, 도 8에서는, 부호화 대상 픽처에서 해칭된 마름모형의 물체(P)가 좌측 상단으로부터 우측 하단으로 움직이고 있는 상태에 있고, L0 참조 픽처에서는, 그 물체(P)의 일부가 화면의 단부를 초과해서 외부에 있는 예가 나타나고 있다.In Fig. 8, the rhombic object P hatched in the picture to be encoded is in a state of moving from the upper left to the lower right, and in the L0 reference picture, part of the object P exceeds the end of the screen. An external example is shown.
도 5를 참조하여 상술한 바와 같이, 참조 영역이 화면 외부에 있을 때는, H.264/AVC 방식에서는, 화면 단부의 화소값을 카피해서 사용하는 것이 정해져 있다. 그 결과, L0 참조 픽처의 참조 영역은, 화면 단부의 화소값이 카피되기 때문에, 형상이 마름모형이 아니게 되어있다.As described above with reference to Fig. 5, when the reference area is outside the screen, it is determined to copy and use the pixel value at the end of the screen in the H.264 / AVC system. As a result, in the reference region of the L0 reference picture, since the pixel value at the screen end is copied, the shape is not a rhombus.
L0 및 L1의 참조 영역을 가중치 부여 예측에 의해 예측 화상을 생성할 경우, 도 8의 L0 참조의 참조 영역과 같이, 화면의 외부의 화소값이 실제와 상이해져 버리면, 예측 화상과 원 신호의 차분이 커지는 것이 예측된다. 또한, 당연히 차분이 큰 것은, 잔차 신호의 비트량이 증대하기 때문에, 부호화 효율의 저하가 우려된다.When the predictive image is generated by the weighted prediction of the reference regions of L0 and L1, as in the reference region of the L0 reference in FIG. 8, if the pixel values outside the screen differ from the actual, the difference between the predicted image and the original signal This is expected to increase. Of course, a large difference means that the bit amount of the residual signal increases, which may cause a decrease in the coding efficiency.
이에 반해, 움직임 보상의 블록 사이즈를 작게 하는 방법을 생각할 수 있지만, 블록 사이즈가 작게 분할되는 것은, 그 매크로 블록의 헤더 정보의 증대를 초래하고, 오버헤드가 증가해버릴 우려가 있다. 양자화 파라미터 QP가 클 때(혹은 저 비트레이트 시)에는, 특히 매크로 블록의 헤더 정보가 오버헤드로서 비율적으로 커지는 점에서, 블록 사이즈를 작게 분할하는 방법도 부호화 효율의 저하가 우려된다.On the other hand, a method of reducing the block size of the motion compensation can be considered. However, dividing the block size into small blocks may increase the header information of the macro block and increase the overhead. When the quantization parameter QP is large (or at a low bit rate), in particular, since the header information of the macroblock is proportionally large as an overhead, a method of dividing the block size into a small size may also cause a decrease in coding efficiency.
또한, 다이렉트 모드는 움직임 벡터 정보가 불필요하기 때문에, 매크로 블록의 헤더 정보를 저감시키는 효과가 있고, 특히 저 비트레이트 시에서는, 부호화 효율의 개선에 기여하고 있다. 그러나, 상술한 바와 같이, L0 및 L1의 참조 영역을 가중치 부여 예측에 의해 예측 화상을 생성하는 경우, 화면 외부의 화소값이 실제와는 상이해져 버려서, 예측 화상과 원 신호와의 차가 커지기 때문에, 다이렉트 모드가 선택되기 어려워져, 부호화 효율의 저하가 우려된다.In addition, since the direct mode does not require motion vector information, there is an effect of reducing the header information of the macroblock, and contributes to the improvement of the coding efficiency, especially at a low bit rate. However, as described above, when a predictive image is generated by weighted prediction of the reference regions of L0 and L1, the pixel value outside the screen is different from the actual one, and the difference between the predicted image and the original signal becomes large. The direct mode is hard to be selected, and there is a fear of a decrease in coding efficiency.
이에 대해, 상술한 비특허문헌 1에서는, 다이렉트 모드에서, 참조 영역이 화면의 외부를 포함하고 있을 경우, 그 참조 픽처는 사용하지 않고 다른 한쪽만의 참조 픽처를 사용함으로써, 다이렉트 모드의 선택이 증가하도록 제안되어 있다.In contrast, in the above-described
그러나, 이 제안에서는, 한쪽의 참조 픽처가 완전히 사용되지 않게 되므로, 가중치 부여 예측이 행해지지 않게 되고, 가중치 부여 예측에서의 예측 성능의 개선은 그다지 기대할 수 없다. 즉, 비특허문헌 1의 제안에서는, 참조 영역의 대부분이 화면 내부이고, 일부만이 화면의 외부인 경우에도, 그 참조 영역은 모두 사용되지 않게 된다.However, in this proposal, since one reference picture is not used completely, weighted prediction is not performed, and improvement of prediction performance in weighted prediction cannot be expected very much. That is, in the proposal of
또한, 비특허문헌 1에서는, 다이렉트 모드의 개선만이 제안되고 있어, 쌍 예측에 대해서는 언급되지 않고 있다.In addition, in the
본 발명은 이러한 상황을 감안하여 이루어진 것이며, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있는 것이다.The present invention has been made in view of such a situation, and it is possible to improve the prediction accuracy in the B picture, especially near the end of the screen.
본 발명의 일 측면의 화상 처리 장치는, 처리 대상의 화상에 의해 참조되는 상이한 복수의 참조 화상을 사용하는 예측에서, 상기 화상의 블록 참조처의 화소가, 상기 복수의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하는 움직임 예측 보상 수단을 구비한다.In the image processing apparatus of one aspect of the present invention, in prediction using a plurality of different reference images referred to by an image to be processed, whether or not the pixel to which the block reference of the image is outside the screen is the plurality of reference images. Motion prediction compensation means for performing weighted prediction according to the present invention.
상기 움직임 예측 보상 수단은, 상기 화상의 블록 참조처가, 상기 복수의 참조 화상에서 화면 내부의 화소인 경우, 그들 화소를 사용하여, 규격으로 정해져 있는 가중치 부여 예측을 행하고, 상기 화상의 블록의 참조처가, 상기 복수의 참조 화상 중 어느 한쪽의 참조 화상에서 화면 외부의 화소이며, 다른 쪽의 참조 화상에서 화면 내부의 화소일 경우, 그들 화소를 사용하여, 상기 가중치 부여 예측을 행할 수 있다.When the block reference destination of the picture is a pixel in the screen in the plurality of reference pictures, the motion prediction compensation means performs weighted prediction determined by the standard using those pixels, and the reference point of the block of the picture is determined. In the case where the pixel outside the screen is the one of the plurality of reference images, and the pixel inside the screen is the other reference image, the weighting prediction can be performed using those pixels.
상기 가중치 부여 예측의 가중치는, 상기 화면 외부의 화소에 대한 가중치보다, 상기 화면 내부의 화소에 대한 가중치 쪽이 보다 크다.The weight of the weighted prediction is greater in weight than pixels in the screen than in weights in pixels outside the screen.
상기 가중치 부여 예측의 가중치는, 0 또는 1이다.The weight of the weighting prediction is 0 or 1.
상기 가중치 부여 예측의 가중치를, 상기 화상의 블록 근방의 화소간의 불연속성에 의해 산출하는 가중치 산출 수단을 더 구비할 수 있다.Weight calculation means for calculating the weight of the said weighting prediction by the discontinuity between the pixels of the block vicinity of the said image may further be provided.
상기 가중치 산출 수단에 의해 산출된 상기 가중치의 정보를 부호화하는 부호화 수단을 더 구비할 수 있다.It may further comprise encoding means for encoding the information of the weight calculated by the weight calculating means.
상기 화상의 블록 근방의 화소간의 불연속성에 의해 산출되어서, 부호화되어 있는 가중치의 정보를 복호하는 복호 수단을 더 구비하고, 상기 움직임 예측 보상 수단은, 상기 가중치 부여 예측을 행하는 경우, 상기 복호 수단에 의해 복호된 가중치의 정보를 사용할 수 있다.Decoding means calculated by the discontinuity between the pixels in the vicinity of the block of the image, and further comprising: decoding means for decoding the information of the encoded weight, the motion prediction compensation means, when performing the weighted prediction, by the decoding means Decoded weight information can be used.
상기 상이한 복수의 참조 화상을 사용하는 예측은, 쌍 예측 및 다이렉트 모드 예측 중 적어도 한쪽이다.The prediction using the different plurality of reference pictures is at least one of pair prediction and direct mode prediction.
본 발명의 일 측면의 화상 처리 방법은, 화상 처리 장치의 움직임 예측 보상 수단이, 처리 대상의 화상에 의해 참조되는 상이한 복수의 참조 화상을 사용하는 예측에서, 상기 화상의 블록의 참조처가, 상기 복수의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하는 스텝을 포함한다.In the image processing method of one aspect of the present invention, in the prediction in which the motion prediction compensating means of the image processing apparatus uses a plurality of different reference images referred to by the image of the processing target, the reference of the block of the image is the plurality of reference points. And performing weighted prediction according to whether or not it is outside the screen in the reference picture.
본 발명의 일측면의 프로그램은, 처리 대상의 화상에 의해 참조되는 상이한 복수의 참조 화상을 사용하는 예측에서, 상기 화상의 블록의 참조처가, 상기 복수의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하는 움직임 예측 보상 수단으로서, 컴퓨터를 기능시킨다.The program of one aspect of the present invention, in prediction using a plurality of different reference images referred to by an image to be processed, weights according to whether a reference of a block of the image is outside the screen in the plurality of reference images. A computer is functioned as a motion prediction compensation means for performing prediction.
본 발명의 일측면에서는, 처리 대상의 화상에 의해 참조되는 상이한 복수의 참조 화상을 사용하는 예측에서, 상기 화상의 블록의 참조처가, 상기 복수의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측이 행해진다.In one aspect of the present invention, in the prediction using a plurality of different reference pictures referred to by a picture to be processed, the weighted prediction according to whether the reference of the block of the picture is outside the screen in the plurality of reference pictures is Is done.
또한, 상술한 화상 처리 장치는, 독립된 장치이어도 좋고, 1개의 화상 부호화 장치 또는 화상 복호 장치를 구성하고 있는 내부 블록이어도 좋다.The above-described image processing apparatus may be an independent apparatus or may be an internal block constituting one image coding apparatus or image decoding apparatus.
본 발명에 따르면, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.According to the present invention, it is possible to improve the prediction accuracy in the B picture, especially near the end of the screen. As a result, the coding efficiency can be improved.
도 1은 종래의 인터 예측에 대해서 설명하는 도면이다.
도 2는 종래의 인터 예측에 대해서 상세하게 설명하는 도면이다.
도 3은 블록 사이즈에 대해서 설명하는 도면이다.
도 4는 인터폴레이션에 대해서 설명하는 도면이다.
도 5는 화면 단부의 처리를 설명하는 도면이다.
도 6은 쌍방향 예측을 설명하는 도면이다.
도 7은 부호화 모드와 참조 픽처 및 움직임 벡터의 관계를 도시하는 도면이다.
도 8은 종래의 가중치 부여 예측을 설명하는 도면이다.
도 9는 본 발명을 적용한 화상 부호화 장치의 일 실시 형태의 구성을 도시하는 블록도다.
도 10은 도 9의 화상 부호화 장치의 가중치 부여 예측을 설명하는 도면이다.
도 11은 움직임 보상부의 구성예를 도시하는 블록도다.
도 12는 도 9의 화상 부호화 장치의 부호화 처리를 설명하는 흐름도다.
도 13은 도 9의 화상 부호화 장치의 예측 모드 선택 처리를 설명하는 흐름도다.
도 14는 도 9의 화상 부호화 장치의 B 픽처의 보상 처리를 설명하는 흐름도다.
도 15는 예측 블록을 설명하는 도면이다.
도 16은 참조 픽셀 위치와 처리 방법의 대응 관계를 도시하는 도면이다.
도 17은 도 14의 예의 경우의 효과를 설명하는 도면이다.
도 18은 본 발명을 적용한 화상 복호 장치의 일 실시 형태의 구성을 도시하는 블록도다.
도 19는 도 18의 움직임 보상부의 구성예를 도시하는 블록도다.
도 20은 도 18의 화상 복호 장치의 복호 처리를 설명하는 흐름도다.
도 21은 확장된 블록 사이즈의 예를 도시하는 도면이다.
도 22는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도다.
도 23은 본 발명을 적용한 텔레비전 수상기의 주된 구성예를 도시하는 블록도다.
도 24는 본 발명을 적용한 휴대 전화기의 주된 구성예를 도시하는 블록도다.
도 25는 본 발명을 적용한 하드 디스크 레코더의 주된 구성예를 도시하는 블록도다.
도 26은 본 발명을 적용한 카메라의 주된 구성예를 도시하는 블록도다.1 is a diagram for explaining conventional inter prediction.
2 is a diagram illustrating in detail the conventional inter prediction.
It is a figure explaining a block size.
4 is a diagram illustrating interpolation.
5 is a diagram for describing processing at the screen end.
6 is a diagram for explaining bidirectional prediction.
7 is a diagram illustrating a relationship between an encoding mode, a reference picture, and a motion vector.
8 is a diagram illustrating a conventional weighting prediction.
9 is a block diagram showing the configuration of an embodiment of a picture coding apparatus according to the present invention.
FIG. 10 is a diagram illustrating weighted prediction of the picture coding apparatus of FIG. 9.
11 is a block diagram illustrating an exemplary configuration of a motion compensation unit.
FIG. 12 is a flowchart for describing an encoding process of the image encoding device of FIG. 9.
FIG. 13 is a flowchart for explaining a prediction mode selection process of the picture coding apparatus of FIG. 9.
FIG. 14 is a flowchart for describing a compensation process for a B picture in the picture encoding apparatus of FIG. 9.
15 is a diagram illustrating a prediction block.
16 is a diagram illustrating a correspondence relationship between reference pixel positions and processing methods.
17 is a diagram for explaining the effect of the example of FIG. 14.
18 is a block diagram showing the configuration of an embodiment of an image decoding device to which the present invention is applied.
19 is a block diagram illustrating a configuration example of a motion compensation unit of FIG. 18.
20 is a flowchart for describing a decoding process of the image decoding device of FIG. 18.
21 is a diagram illustrating an example of an extended block size.
Fig. 22 is a block diagram showing an example of the hardware configuration of a computer.
Fig. 23 is a block diagram showing a main configuration example of a television receiver to which the present invention is applied.
24 is a block diagram showing a main configuration example of a mobile telephone to which the present invention is applied.
Fig. 25 is a block diagram showing a main configuration example of a hard disk recorder to which the present invention is applied.
Fig. 26 is a block diagram showing a main configuration example of a camera to which the present invention is applied.
이하, 도면을 참조하여 본 발명의 실시 형태에 대해서 설명한다.Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[화상 부호화 장치의 구성예][Configuration Example of Image Coding Apparatus]
도 9는, 본 발명을 적용한 화상 처리 장치로서의 화상 부호화 장치의 일 실시 형태의 구성을 도시하고 있다.9 shows a configuration of an embodiment of an image coding apparatus as an image processing apparatus to which the present invention is applied.
이 화상 부호화 장치(51)는, 예를 들어 H.264 및 MPEG-4 Part10 (Advanced Video Coding)(이하 H.264/AVC라고 기재함) 방식을 기초로, 입력된 화상을 압축 부호화한다.The
도 9의 예에서, 화상 부호화 장치(51)는, A/D 변환부(61), 화면 재배열 버퍼(62), 연산부(63), 직교 변환부(64), 양자화부(65), 가역 부호화부(66), 축적 버퍼(67), 역양자화부(68), 역직교 변환부(69), 연산부(70), 디블록 필터(71), 프레임 메모리(72), 인트라 예측부(73), 움직임 예측부(74), 움직임 보상부(75), 예측 화상 선택부(76) 및 레이트 제어부(77)에 의해 구성되어 있다.In the example of FIG. 9, the
A/D 변환부(61)는, 입력된 화상을 A/D 변환하고, 화면 재배열 버퍼(62)에 출력하여, 기억시킨다. 화면 재배열 버퍼(62)는, 기억한 표시 순서의 프레임의 화상을, Gop(Group of Picture)에 따라, 부호화를 위한 프레임의 순서대로 재배열한다.The A /
연산부(63)는, 화면 재배열 버퍼(62)로부터 판독된 화상으로부터, 예측 화상 선택부(76)에 의해 선택된 인트라 예측부(73)로부터의 예측 화상 또는 움직임 보상부(75)로부터의 예측 화상을 감산하여, 그 차분 정보를 직교 변환부(64)에 출력한다. 직교 변환부(64)는, 연산부(63)로부터의 차분 정보에 대하여, 이산 코사인 변환, 카루넨 루베 변환 등의 직교 변환을 실시하고, 그 변환 계수를 출력한다. 양자화부(65)는 직교 변환부(64)가 출력하는 변환 계수를 양자화한다.The calculating
양자화부(65)의 출력이 되는, 양자화된 변환 계수는, 가역 부호화부(66)에 입력되고, 여기에서 가변장 부호화, 산술 부호화 등의 가역 부호화가 실시되어, 압축된다.The quantized transform coefficients that are output from the
가역 부호화부(66)는, 인트라 예측을 나타내는 정보를 인트라 예측부(73)로부터 취득하고, 인터 예측 모드를 나타내는 정보 등을 움직임 보상부(75)로부터 취득한다. 또한, 인트라 예측을 나타내는 정보 및 인터 예측을 나타내는 정보는, 이하, 각각, 인트라 예측 모드 정보 및 인터 예측 모드 정보라고도 부른다.The
가역 부호화부(66)는, 양자화된 변환 계수를 부호화함과 함께, 인트라 예측을 나타내는 정보, 인터 예측 모드를 나타내는 정보 등을 부호화하고, 압축 화상에서의 헤더 정보의 일부로 한다. 가역 부호화부(66)는, 부호화한 데이터를 축적 버퍼(67)에 공급해서 축적시킨다.The
예를 들어, 가역 부호화부(66)에서는, 가변장 부호화 또는 산술 부호화 등의 가역 부호화 처리가 행해진다. 가변장 부호화로서는, H.264/AVC 방식으로 정해져 있는 CAVLC(Context-Adaptive Variable Length Coding) 등을 들 수 있다. 산술 부호화로서는, CABAC(Context-Adaptive Binary Arithmetic Coding) 등을 들 수 있다.For example, the
축적 버퍼(67)는, 가역 부호화부(66)로부터 공급된 데이터를, 부호화된 압축 화상으로서, 예를 들어 후단의 도시하지 않은 기록 장치나 전송로 등에 출력한다.The
또한, 양자화부(65)로부터 출력된, 양자화된 변환 계수는, 역양자화부(68)에도 입력되어 역양자화된 후, 또한 역직교 변환부(69)에서 역직교 변환된다. 역직교 변환된 출력은 연산부(70)에 의해 예측 화상 선택부(76)로부터 공급되는 예측 화상과 가산되어서, 국부적으로 복호된 화상이 된다.The quantized transform coefficients output from the
연산부(70)로부터 복호된 화상은, 앞으로 부호화되는 화상의 참조 화상으로서, 인트라 예측부(73)와 디블록 필터(71)에 출력된다. 디블록 필터(71)는, 복호된 화상의 블록 왜곡을 제거한 후, 프레임 메모리(72)에 공급하여, 축적시킨다. 프레임 메모리(72)는, 축적된 참조 화상을 움직임 예측부(74) 및 움직임 보상부(75)에 출력한다.The decoded image from the calculating
이 화상 부호화 장치(51)에서는, 예를 들어 화면 재배열 버퍼(62)로부터의 I 픽처, B 픽처 및 P 픽처가, 인트라 예측(인트라 처리라고도 함)하는 화상으로서, 인트라 예측부(73)에 공급된다. 또한, 화면 재배열 버퍼(62)로부터 판독된 B 픽처 및 P 픽처가, 인터 예측(인터 처리라고도 함)하는 화상으로서, 움직임 예측부(74)에 공급된다.In the
인트라 예측부(73)는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과 연산부(70)로부터의 참조 화상에 기초하여, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행하여, 예측 화상을 생성한다.The
그 때, 인트라 예측부(73)는, 후보가 되는 모든 인트라 예측 모드에 대하여 비용 함수값을 산출하고, 산출한 비용 함수값이 최소값을 부여하는 인트라 예측 모드를, 최적 인트라 예측 모드로서 선택한다.At that time, the
인트라 예측부(73)는, 최적 인트라 예측 모드에서 생성된 예측 화상과 그 비용 함수값을, 예측 화상 선택부(76)에 공급한다. 인트라 예측부(73)는, 예측 화상 선택부(76)에 의해 최적 인트라 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 인트라 예측 모드를 나타내는 정보를, 가역 부호화부(66)에 공급한다. 가역 부호화부(66)는, 이 정보를 부호화하고, 압축 화상에서의 헤더 정보의 일부로 한다.The
움직임 예측부(74)는, 인터 처리하는 화상과 프레임 메모리(72)로부터의 참조 화상에 기초하여, 후보가 되는 모든 인터 예측 모드의 블록의 움직임 예측을 행하여, 각 블록의 움직임 벡터를 생성한다. 움직임 보상부(74)는, 생성한 움직임 벡터의 정보를, 움직임 보상부(75)에 출력한다.The
또한, 움직임 예측부(74)는, 예측 화상 선택부(76)에 의해 최적 인터 예측 모드의 대상 블록의 예측 화상이 선택된 경우, 최적 인터 예측 모드를 나타내는 정보(인터 예측 모드 정보), 움직임 벡터 정보, 참조 프레임 정보 등을 가역 부호화부(66)에 출력한다.In addition, when the predictive image of the target block of the optimal inter prediction mode is selected by the predictive
움직임 보상부(75)는, 프레임 메모리(72)로부터의 참조 화상에 보간 필터를 행한다. 움직임 보상부(75)는, 움직임 예측부(74)로부터의 움직임 벡터 또는 주위 블록의 움직임 벡터로부터 구해진 움직임 벡터를 사용하여, 후보가 되는 모든 인터 예측 모드의 블록에 대해서, 필터 후의 참조 화상에 보상 처리를 행하여, 예측 화상을 생성한다. 이때, 움직임 보상부(75)는, B 픽처에서, 다이렉트 모드 또는 쌍 예측 모드인 경우, 즉, 상이한 복수의 참조 화상을 사용하는 예측 모드인 경우, 대상이 되는 블록의 참조처의 화소가, 그들 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하여, 예측 화상을 생성한다.The
예를 들어, 움직임 보상부(75)에서는, 대상 블록의 참조처가, 한쪽의 참조 화상에서 화면 외부이며, 다른 쪽의 참조 화상에서 화면 내부일 경우, 한쪽의 참조 화상의 가중치를 작게 하고, 다른 쪽의 참조 화상의 가중치를 크게 한 가중치 부여 예측이 행해진다.For example, in the
이 가중치는 움직임 보상부(75)에서 산출되어도 좋고, 고정된 값이 사용되어도 좋다. 또한, 산출될 경우에는, 가역 부호화부(66)에 공급되어, 압축 화상의 헤더에 부가되어서 복호측에 송신된다.This weight may be calculated by the
또한, 움직임 보상부(75)는, 후보가 되는 모든 인터 예측 모드에 대하여, 처리 대상 블록의 비용 함수값을 구하고, 가장 비용 함수값이 작은 최적 인터 예측 모드를 결정한다. 움직임 보상부(75)는, 최적 인터 예측 모드에서 생성된 예측 화상과 그 비용 함수값을, 예측 화상 선택부(76)에 공급한다.In addition, the
예측 화상 선택부(76)는, 인트라 예측부(73) 또는 움직임 보상부(75)로부터 출력된 각 비용 함수값에 기초하여, 최적 인트라 예측 모드와 최적 인터 예측 모드로부터, 최적 예측 모드를 결정한다. 그리고, 예측 화상 선택부(76)는, 결정된 최적 예측 모드의 예측 화상을 선택하고, 연산부(63, 70)에 공급한다. 이때, 예측 화상 선택부(76)는 점선으로 나타내진 바와 같이, 예측 화상의 선택 정보를 인트라 예측부(73) 또는 움직임 예측부(74)에 공급한다.The predictive
레이트 제어부(77)는, 축적 버퍼(67)에 축적된 압축 화상에 기초하여, 오버플로우 혹은 언더플로우가 발생하지 않도록, 양자화부(65)의 양자화 동작의 레이트를 제어한다.The
[움직임 보상부의 특징][Features of the motion compensation unit]
이어서, 도 10을 참조하여, 움직임 보상부(75)의 특징에 대해서 설명한다.Next, with reference to FIG. 10, the characteristic of the
움직임 보상부(75)에서는, 참조 픽처(화상)를 2장 사용해서 가중치 부여 예측이 행해지는 쌍 예측 또는 다이렉트 모드에서, L0 및 L1의 양쪽 참조 픽셀(화소)이 화면 내부에 있으면, H.264/AVC 방식의 가중치 부여 예측이 행해진다. 이에 대해, L0 또는 L1 중 한쪽의 참조 픽셀(화소)이 화면의 외부이고, 다른 쪽의 참조 픽셀이 화면 내부이면, 화면 내부의 참조 픽셀만을 사용해서 예측이 행해진다.In the pair prediction or direct mode in which the weighted prediction is performed using two reference pictures (pictures) in the
도 10의 예에서는, 도 8의 예와 마찬가지로, 좌측으로부터, L0 참조 픽처, 부호화 대상 픽처, L1 참조 픽처가 시간 경과순으로 나타나고 있다. 각 픽처에서, 일점쇄선은 화면 단부를 나타내고 있고, 실선과 일점쇄선 사이의 영역은, 도 5에서 상술한 화면 단부의 카피에 의해 확장된 영역을 나타내고 있다.In the example of FIG. 10, as in the example of FIG. 8, the L0 reference picture, the encoding target picture, and the L1 reference picture are shown in chronological order from the left side. In each picture, the dashed-dotted line represents the screen end, and the area | region between a solid line and the dashed-dotted line shows the area extended by the copy of the screen end mentioned above in FIG.
또한, 각 픽처에서 파선으로 둘러싸인 영역은, L0 참조 픽처에서는, L0 참조의 참조 영역을 나타내며, 부호화 대상 픽처에서는, 움직임 보상 영역을 나타내고, L1 참조 픽처에서는, L1 참조의 참조 영역을 나타내고 있다. 그 중에서 특히, L0 참조의 참조 영역과 L1 참조의 참조 영역이, 도 10의 하부에 나타나고 있다.In addition, the region enclosed by the broken line in each picture represents the reference region of the L0 reference in the L0 reference picture, the motion compensation region in the encoding target picture, and the reference region of the L1 reference in the L1 reference picture. In particular, the reference region of the L0 reference and the reference region of the L1 reference are shown in the lower part of FIG. 10.
그리고, 도 10에서는, 부호화 대상 픽처에서 해칭된 마름모형의 물체(P)가 좌측 상단으로부터 우측 하단으로 움직이고 있는 상태에 있고, L0 참조 픽처에서는, 그 물체(P)의 일부가 화면의 단부를 초과해서 외부에 있는 예가 나타나고 있다. 즉, L0 참조 픽처의 참조 영역은, 그 일부가 화면의 외부에 있고, L1 참조 픽처의 참조 영역은, 모두 화면 내부에 있다.In FIG. 10, the rhombic object P hatched in the picture to be encoded is in a state of moving from the upper left to the lower right, and in the L0 reference picture, part of the object P exceeds the end of the screen. An external example is shown. That is, part of the reference area of the L0 reference picture is outside the screen, and all of the reference area of the L1 reference picture is inside the screen.
따라서, 움직임 보상부(75)는, L0 참조 픽처의 참조 영역 중, 화면 내부의 부분은, H.264/AVC 방식의 가중치 부여 예측에 의해 예측 화상을 생성하고, L0 참조 픽처의 참조 영역 중, 화면의 외부 부분에 대해서는, 그것을 사용하지 않고, L1 참조 픽처의 참조 영역만을 사용해서 예측 화상을 생성한다. 즉, L0 참조 픽처에서는, L0 참조의 참조 영역에 도시된 바와 같이, 참조 영역은, 외측의 파선 사각인데, 실제로는 내측의 파선 사각 내부의 영역 이외에는 예측에 사용되지 않는다.Therefore, the
예를 들어, L0 참조 픽처의 참조 영역 중, 화면의 외부의 부분에 대해서는, L0 참조 픽처의 참조 영역에 대한 가중치가 0이고, L1 참조 픽처의 참조 영역에 대한 가중치가 1인 가중치 부여 예측이 행해진다. 또한, 가중치는 0, 1이 아니어도 좋고, 한쪽의 참조 영역에서 화면의 외부 부분에 관한 가중치가, 다른 쪽의 참조 영역에서 화면의 내부 부분에 관한 가중치보다 작게 되도록 할 수도 있다. 이 경우의 가중치는, 고정이어도 좋고, 최적인 가중치가 산출되어도 좋다.For example, among the reference areas of the L0 reference picture, a weighted prediction in which the weight of the reference area of the L0 reference picture is 0 and the weight of the reference area of the L1 reference picture is 1 is performed for the portion outside the screen. All. The weight may not be 0 or 1, and the weight of the outer portion of the screen in one reference region may be smaller than the weight of the inner portion of the screen in the other reference region. In this case, the weight may be fixed or an optimal weight may be calculated.
이에 의해, 화면의 외부에서 화면 내부의 화소값의 카피였던 부정확한 정보가 사용되지 않거나, 혹은, 그 가중치가 작게 되므로, 화면 단부에서의 예측 성능을 개선할 수 있다.As a result, inaccurate information that was a copy of the pixel value inside the screen outside of the screen is not used, or the weight thereof is reduced, so that the prediction performance at the end of the screen can be improved.
[움직임 보상부의 구성예][Configuration example of the motion compensation unit]
도 11은, 움직임 보상부의 구성예를 도시하는 도면이다.11 is a diagram illustrating a configuration example of a motion compensation unit.
도 11의 움직임 보상부(75)는, 보간 필터(81), 보상 처리부(82), 선택부(83), 움직임 벡터 예측부(84) 및 예측 모드 결정부(85)에 의해 구성되어 있다.The
보간 필터(81)에는, 프레임 메모리(72)로부터의 참조 프레임(참조 화상) 정보가 입력된다. 보간 필터(81)는, 참조 프레임의 화소 사이를 보간하고, 종횡 4배로 확대하여, 보상 처리부(82)에 출력한다.Reference frame (reference picture) information from the
보상 처리부(82)는, L0 영역 선택부(91), L1 영역 선택부(92), 연산부(93), 화면 단부 판정부(94), 가중치 산출부(95)에 의해 구성되어 있다. 또한, 도 11의 예의 보상 처리부(82)에서는, B 픽처인 경우의 예가 나타나고 있다.The
보간 필터(81)로부터 확대된 참조 프레임 정보는, L0 영역 선택부(91), L1 영역 선택부(92) 및 화면 단부 판정부(94)에 입력된다.The reference frame information expanded from the
L0 영역 선택부(91)는, 선택부(83)로부터의 예측 모드 정보와 L0 움직임 벡터 정보에 따라, 확대된 L0 참조 프레임 정보로부터, 대응하는 L0 참조 영역을 선택하여, 연산부(93)에 출력한다. 이 출력된 참조 영역의 정보는, L0 예측 모드인 경우, L0 예측 정보로서, 예측 모드 결정부(85)에 출력된다.The L0
L1 영역 선택부(92)는, 선택부(83)로부터의 예측 모드 정보와 L1 움직임 벡터 정보에 따라, 확대된 L1 참조 프레임 정보로부터, 대응하는 L1 참조 영역을 선택하여, 연산부(93)에 출력한다. 이 출력된 참조 영역의 정보는, L1 예측 모드인 경우, L1 예측 정보로서, 예측 모드 결정부(85)에 출력된다.The L1
연산부(93)는, 승산기(93A), 승산기(93B) 및 가산기(93C)에 의해 구성된다. 승산기(93A)는, L0 영역 선택부(91)로부터의 L0 참조 영역 정보에, 화면 단부 판정부(94)로부터의 L0 가중치 정보를 승산하여, 그 결과를 가산기(93C)에 출력한다. 승산기(93B)는, L1 영역 선택부(92)로부터의 L1 참조 영역 정보에, 화면 단부 판정부(94)로부터의 L1 가중치 정보를 승산하여, 그 결과를 가산기(93C)에 출력한다. 가산기(93C)는, L0 및 L1 가중치 정보에서 가중치 배분된 L0 참조 영역 및 L1 참조 영역을 가산하고, 가중치 부여 예측 정보(Bi-pred 예측 정보)로서, 예측 모드 결정부(85)에 출력한다.The calculating part 93 is comprised by the
화면 단부 판정부(94)에는, 보간 필터(81)로부터의 확대된 참조 프레임 정보와 선택부(83)로부터의 움직임 벡터 정보가 공급된다. 화면 단부 판정부(94)는, 그들 정보에 기초하여, L0 참조 픽셀 또는 L1 참조 픽셀이 화면의 외부인지 여부를 판정하고, 그 판정 결과에 따라, 승산기(93A) 및 승산기(93B)에 공급하는 가중 계수를 출력한다. 예를 들어, 모두 화면 내부 또는 외부일 경우, 가중 계수 W=0.5가 출력된다. 어느 한쪽이 화면의 외부이고, 다른 한쪽이 화면 내부일 경우, 적어도 화면의 외부의 참조 픽셀에 대해서는, 화면 내부의 참조 픽셀보다도 작은 가중 계수가 부여된다.The enlarged reference frame information from the
가중치 산출부(95)는, 입력 화상의 특성에 따라, L0 참조 픽셀 및 L1 참조 픽셀 중 어느 한쪽만이 화면의 외부일 경우에 사용되는 가중 계수를 산출하고, 화면 단부 판정부(94)에 공급한다. 또한, 이 산출된 가중 계수는, 복호측에 보내기 위해서 가역 부호화부(66)에도 출력된다.The
선택부(83)는, 예측 모드에 따라, 움직임 예측부(74)에 의해 탐색된 움직임 벡터 정보 및 움직임 벡터 예측부(84)에 의해 구해진 움직임 벡터 정보 중 어느 한쪽을 선택하고, 선택한 움직임 벡터 정보를 화면 단부 판정부(94), L0 영역 선택부(91) 및 L1 영역 선택부(92)에 공급한다.The
움직임 벡터 예측부(84)는, 스킵·모드나 다이렉트 모드와 같이, 움직임 벡터를 복호측에 보내지 않는 모드에 따라서 움직임 벡터를 예측하고, 선택부(83)에 공급한다.The motion
이 움직임 벡터의 예측 방법은, H.264/AVC 방식과 마찬가지이며, 움직임 벡터 예측부(84)에서는, 주위의 블록의 움직임 벡터로부터 메디안 예측으로 예측하는 공간 예측이나, 코로케이티드 블록(co-located block)의 움직임 벡터로부터 예측하는 템포럴 예측 등이 모드에 따라서 행해진다. 코로케이티드 블록이란, 대상 블록의 픽처와 상이한 픽처(전 또는 후에 위치하는 픽처)의 블록이며, 대상 블록에 대응하는 위치의 블록이다.The motion vector prediction method is similar to the H.264 / AVC method, and the
또한, 도 11의 예에서, 그 도시는 생략하지만, 구할 때의 주위 블록의 움직임 벡터 정보 등은 선택부(83)로부터 얻어진다.In addition, in the example of FIG. 11, although the illustration is abbreviate | omitted, the motion vector information etc. of the surrounding block at the time of obtaining | requiring are acquired from the
[가중 계수의 설명][Explanation of Weighting Factor]
화면 단부 판정부(94)에 의한 판정 결과에 따라서 공급되어, 연산부(93)에서 승산되는 가중 계수 정보는, L0 및 L1 중 한쪽의 참조 픽셀이 화면의 외부에 있을 경우에, 다른 쪽의 참조 픽셀에 곱하는 가중치다. 그 값은, 0.5부터 1의 사이를 취하고, 화면의 외부에 있는 한쪽의 픽셀에 곱하는 가중치를 서로 더하면, 1이 된다.The weighting coefficient information supplied in accordance with the determination result by the screen
따라서, L0 가중 계수 정보가 WL0이면, L1가중 계수 정보는 WL1=1-WL0이 된다. 이들의 결과, 도 11의 연산부(93)에서의 연산은, 다음 수학식 3이 된다.Therefore, when the L0 weighting coefficient information is W L0 , the L1 weighting coefficient information is W L1 = 1-W L0 . As a result, the calculation in the calculating part 93 of FIG. 11 becomes following Formula (3).
[수학식 3]&Quot; (3) "
Y =WL0IL0+(1-WL0)IL1 Y = W L0 I L0 + (1-W L0 ) I L1
여기서, Y는 가중치 부여 예측 신호이며, IL0은 L0 참조 픽셀이며, IL1은 L1 참조 픽셀이다.Here, Y is a weighted prediction signal, I L0 is an L0 reference pixel, and I L1 is an L1 reference pixel.
또한, 이 가중 계수는, 가중치 산출부(95)에 의해 산출이 가능하다. 가중치 산출부(95)에서는, 예를 들어 화소간의 상관의 강약에 기초하여 가중치가 산출된다. 화면 내에서 인접하는 화소에 상관이 약할 때, 즉, 인접하는 화소값에 격차가 큰 경우가 많을 때는, 화면 단부의 픽셀을 카피한 픽셀값은 신뢰도가 낮기 때문에, 가중치 정보 W는 1에 가까워지고, 상관이 강할 때는, H.264/AVC 방식과 같이, 화면 단부의 픽셀을 카피한 픽셀값도 신뢰할 수 있기 때문에, 가중치 정보 W는 0.5에 가까워진다.In addition, this weighting coefficient can be calculated by the
이 화소간의 상관의 강약을 조사하는 방법은, 인접하는 화소의 차분의 절대값의 화면 내부의 평균을 계산하는 방법이나, 화소값의 분산의 크기를 산출하는 방법, 푸리에 변환 등을 사용해서 고주파 성분의 크기를 구해서 조사하는 방법 등이 있다.The method of investigating the strength and weakness of the correlation between pixels is a method of calculating the average inside the screen of the absolute value of the difference between adjacent pixels, a method of calculating the magnitude of the dispersion of pixel values, a Fourier transform, or the like. Finding the size of and investigating.
가장 간단한 예로서, 화면의 외부는 신뢰하지 않기로 하고, 가중치 W를 1로 고정하도록 해도 좋다. 이 경우, 가중치 정보를 복호측에 보낼 필요가 없어지므로, 스트림 정보에 포함하지 않아도 좋다.As the simplest example, the outside of the screen may not be trusted and the weight W may be fixed to one. In this case, since the weight information does not need to be sent to the decoding side, it is not necessary to include it in the stream information.
또한, 화면의 외부의 가중치가 0이 되므로, 연산부(93)의 승산기(93A), 승산기(93B), 가산기(93C)가 불필요해져, 보다 간단한 선택 회로로 치환할 수 있다.In addition, since the weight outside the screen becomes 0, the
[화상 부호화 장치의 부호화 처리의 설명][Description of Encoding Process of Image Coding Device]
이어서, 도 12의 흐름도를 참조하여, 도 9의 화상 부호화 장치(51)의 부호화 처리에 대해서 설명한다.Next, with reference to the flowchart of FIG. 12, the encoding process of the
스텝 S11에서, A/D 변환부(61)는 입력된 화상을 A/D 변환한다. 스텝 S12에서, 화면 재배열 버퍼(62)는, A/D 변환부(61)로부터 공급된 화상을 기억하여, 각 픽처의 표시하는 순서로부터 부호화하는 순서로의 재배열을 행한다.In step S11, the A /
스텝 S13에서, 연산부(63)는, 스텝 S12에서 재배열된 화상과 예측 화상과의 차분을 연산한다. 예측 화상은, 인터 예측하는 경우에는 움직임 보상부(75)로부터, 인트라 예측하는 경우에는 인트라 예측부(73)로부터, 각각 예측 화상 선택부(76)를 거쳐서 연산부(63)에 공급된다.In step S13, the calculating
차분 데이터는 원래의 화상 데이터에 비교해서 데이터량이 작아져 있다. 따라서, 화상을 그대로 부호화할 경우에 비하여 데이터량을 압축할 수 있다.The difference data has a smaller data amount compared to the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
스텝 S14에서, 직교 변환부(64)는 연산부(63)로부터 공급된 차분 정보를 직교 변환한다. 구체적으로는, 이산 코사인 변환, 카루넨 루베 변환 등의 직교 변환이 행해지고, 변환 계수가 출력된다. 스텝 S15에서, 양자화부(65)는 변환 계수를 양자화한다. 이 양자화 시에는, 후술하는 스텝 S26의 처리에서 설명되는 바와 같이 레이트가 제어된다.In step S14, the
이상과 같이 해서 양자화된 차분 정보는, 다음과 같이 해서 국부적으로 복호된다. 즉, 스텝 S16에서, 역양자화부(68)는 양자화부(65)에 의해 양자화된 변환 계수를 양자화부(65)의 특성에 대응하는 특성으로 역양자화한다. 스텝 S17에서, 역직교 변환부(69)는 역양자화부(68)에 의해 역양자화된 변환 계수를 직교 변환부(64)의 특성에 대응하는 특성으로 역직교 변환한다.The difference information quantized as described above is locally decoded as follows. That is, in step S16, the inverse quantization unit 68 dequantizes the transform coefficient quantized by the
스텝 S18에서, 연산부(70)는, 예측 화상 선택부(76)를 거쳐서 입력되는 예측 화상을 국부적으로 복호된 차분 정보에 가산하고, 국부적으로 복호된 화상(연산부(63)로의 입력에 대응하는 화상)을 생성한다. 스텝 S19에서 디블록 필터(71)는, 연산부(70)로부터 출력된 화상을 필터링한다. 이에 의해 블록 왜곡이 제거된다. 스텝 S20에서 프레임 메모리(72)는, 필터링된 화상을 기억한다.In step S18, the calculating
스텝 S21에서, 인트라 예측부(73)는 인트라 예측 처리를 행한다. 구체적으로는, 인트라 예측부(73)는 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 연산부(70)로부터 공급된 화상(필터링되지 않는 화상)에 기초하여, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행하여, 인트라 예측 화상을 생성한다.In step S21, the
인트라 예측부(73)는 후보가 되는 모든 인트라 예측 모드에 대하여 비용 함수값을 산출한다. 인트라 예측부(73)는 산출된 비용 함수값 중, 최소값을 부여하는 인트라 예측 모드를, 최적 인트라 예측 모드로서 결정한다. 그리고, 인트라 예측부(73)는, 최적 인트라 예측 모드에서 생성된 인트라 예측 화상과 그 비용 함수값을, 예측 화상 선택부(76)에 공급한다.The
화면 재배열 버퍼(62)로부터 공급되는 처리 대상의 화상이 인터 처리되는 화상일 경우, 참조되는 화상이 프레임 메모리(72)로부터 판독되어, 스위치(73)를 거쳐서 움직임 예측부(74) 및 움직임 보상부(75)에 공급된다.When the image of the processing target supplied from the
스텝 S22에서, 움직임 예측부(74)와 움직임 보상부(75)는, 움직임 예측·보상 처리를 행한다. 구체적으로는, 움직임 예측부(74)는, 인터 처리하는 화상과 프레임 메모리(72)로부터의 참조 화상에 기초하여, 후보가 되는 모든 인터 예측 모드의 블록의 움직임 예측을 행하고, 각 블록의 움직임 벡터를 생성한다. 움직임 보상부(74)는 생성한 움직임 벡터의 정보를, 움직임 보상부(75)에 출력한다.In step S22, the
움직임 보상부(75)는, 프레임 메모리(72)로부터의 참조 화상에 보간 필터를 행한다. 움직임 보상부(75)는 움직임 예측부(74)로부터의 움직임 벡터 또는 주위의 블록의 움직임 벡터로부터 구해진 움직임 벡터를 사용하여, 후보가 되는 모든 인터 예측 모드의 블록에 대해서 필터후의 참조 화상에 보상 처리를 행하고, 예측 화상을 생성한다.The
이때, 움직임 보상부(75)는, B 픽처에서, 다이렉트 모드 또는 쌍 예측 모드인 경우, 즉, 상이한 복수의 참조 화상을 사용하는 예측 모드인 경우, 대상이 되는 블록의 참조처의 화소가, 그것들의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하여, 예측 화상을 생성한다. 또한, 이 B 픽처인 경우의 보상 처리에 대해서는, 도 14를 참조하여 후술한다.In this case, the
또한, 움직임 보상부(75)는, 후보가 되는 모든 인터 예측 모드에 대하여, 처리 대상의 블록의 비용 함수값을 구하고, 가장 비용 함수값이 작은 최적 인터 예측 모드를 결정한다. 움직임 보상부(75)는, 최적 인터 예측 모드에서 생성된 예측 화상과 그 비용 함수값을, 예측 화상 선택부(76)에 공급한다.In addition, the
스텝 S23에서, 예측 화상 선택부(76)는, 인트라 예측부(73) 및 움직임 보상부(75)로부터 출력된 각 비용 함수값에 기초하여, 최적 인트라 예측 모드와 최적 인터 예측 모드 중 한쪽을, 최적 예측 모드로 결정한다. 그리고, 예측 화상 선택부(76)는 결정한 최적 예측 모드의 예측 화상을 선택하여, 연산부(63, 70)에 공급한다. 이 예측 화상이 상술한 바와 같이, 스텝 S13, S18의 연산에 이용된다.In step S23, the predictive
또한, 이 예측 화상의 선택 정보는, 도 9의 점선에 도시된 바와 같이, 인트라 예측부(73) 또는 움직임 예측부(74)에 공급된다. 최적 인트라 예측 모드의 예측 화상이 선택된 경우, 인트라 예측부(73)는, 최적 인트라 예측 모드를 나타내는 정보(즉, 인트라 예측 모드 정보)를 가역 부호화부(66)에 공급한다.In addition, the selection information of this predictive image is supplied to the
최적 인터 예측 모드의 예측 화상이 선택된 경우, 움직임 예측부(74)는 최적 인터 예측 모드를 나타내는 정보, 움직임 벡터 정보나 참조 프레임 정보를, 가역 부호화부(66)에 출력한다. 또한, 움직임 보상부(75)에서 가중치가 산출될 경우, 움직임 보상부(75)에도 인터 예측 화상이 선택된 정보가 공급되므로, 움직임 보상부(75)는 산출한 가중 계수 정보를 가역 부호화부(66)에 출력한다.When the predictive picture of the optimal inter prediction mode is selected, the
스텝 S24에서, 가역 부호화부(66)는 양자화부(65)로부터 출력된 양자화된 변환 계수를 부호화한다. 즉, 차분 화상이 가변장 부호화, 산술 부호화 등의 가역 부호화되어, 압축된다. 이때, 상술한 스텝 S23에서 가역 부호화부(66)에 입력된, 인트라 예측부(73)로부터의 인트라 예측 모드 정보 또는, 움직임 보상부(75)로부터의 최적 인터 예측 모드나, 상술한 각 정보 등도 부호화되어, 헤더 정보에 부가된다.In step S24, the
예를 들어, 인터 예측 모드를 나타내는 정보는, 매크로 블록마다 부호화된다. 움직임 벡터 정보나 참조 프레임 정보는, 대상이 되는 블록마다 부호화된다. 또한, 가중 계수의 정보는, 프레임마다이어도 좋고, 시퀀스(촬상 개시부터 종료까지의 신)마다이어도 좋다.For example, the information indicating the inter prediction mode is encoded for each macro block. Motion vector information and reference frame information are encoded for each target block. The information of the weighting coefficient may be for each frame or may be for each sequence (scene from start to end of imaging).
스텝 S25에서 축적 버퍼(67)는 차분 화상을 압축 화상으로서 축적한다. 축적 버퍼(67)에 축적된 압축 화상이 적절히 판독되어, 전송로를 거쳐서 복호측에 전송된다.In step S25, the
스텝 S26에서 레이트 제어부(77)는, 축적 버퍼(67)에 축적된 압축 화상에 기초하여, 오버플로우 혹은 언더플로우가 발생하지 않도록, 양자화부(65)의 양자화 동작의 레이트를 제어한다.In step S26, the
[예측 모드 선택 처리의 설명][Explanation of prediction mode selection processing]
도 9의 화상 부호화 장치(51)에서는, 당해 매크로 블록을 부호화할 때, 복수의 예측 모드 중에서 최적인 모드를 결정할 필요가 있다. 대표적인 결정 방법은, 멀티 패스·인코드 방식에 의한 것으로, 다음 수학식 4 또는 수학식 5를 사용해서 비용(즉, 비용 함수값)을 최소화하도록 움직임 벡터와 참조 픽처 및 예측 모드가 결정된다.In the
[수학식 4]&Quot; (4) "
Cost=SATD+λMotionGenBitCost = SATD + λ Motion GenBit
[수학식 5][Equation 5]
Cost=SSD+λModeGenBitCost = SSD + λ Mode GenBit
여기서, SATD(Sum of Absolute Transformed Difference)는, 예측 오차에 아다마르 변환을 실시하고, 그 절대값의 합이다. SSD (Sum of Square Difference)는 2승 오차합으로, 각 픽셀의 예측 오차의 2승의 총합이다. GenBit(Generated Bit)는, 당해 매크로 블록을 당해 후보 모드로 부호화했을 경우의 발생 비트량이다. λM oti on, λMode는 라그랑제 승수라고 불리는 변수로 양자화 파라미터 QP, I/P 픽처 및 B 픽처에 의해 결정된다.Here, SATD (Sum of Absolute Transformed Difference) is subjected to the Hadamard transform on the prediction error and is the sum of the absolute values. The sum of square difference (SSD) is a sum of squared errors, which is the sum of the squares of the prediction errors of each pixel. GenBit (Generated Bit) is the amount of bits generated when the macroblock is encoded in the candidate mode. λ M oti on and λ Mode are variables called Lagrange multipliers and are determined by the quantization parameters QP, I / P picture, and B picture.
상술한 수학식 4 또는 수학식 5를 사용한 화상 부호화 장치(51)의 예측 모드 선택 처리를, 도 13을 참조하여 설명한다. 또한, 이 예측 모드 선택 처리는, 도 12의 스텝 S21 내지 S23에서, 예측 모드 선택에 착안한 처리다.The prediction mode selection processing of the
스텝 S31에서, 인트라 예측부(73) 및 움직임 보상부(75)(예측 모드 결정부(85))는 각각, 양자화 파라미터 QP 및 픽처 타입으로부터 λ를 산출한다. 그 화살표는 도시하지 않지만, 양자화 파라미터 QP는, 양자화부(65)로부터 공급된다.In step S31, the
스텝 S32에서, 인트라 예측부(73)는 인트라 4×4 모드를, 비용 함수값이 작아지도록 결정한다. 인트라 4×4 모드에는 9종류의 예측 모드가 있고, 그 중에서, 비용 함수값이 가장 작은 것이 인트라 4×4 모드로서 결정된다.In step S32, the
스텝 S33에서, 인트라 예측부(73)는 인트라 16×16 모드를, 비용 함수값이 작아지도록 결정한다. 인트라 16×16 모드에는, 4종류의 예측 모드가 있고, 그 중에서, 비용 함수값이 가장 작은 것이 인트라 16×16 모드로서 결정된다.In step S33, the
그리고, 스텝 S34에서, 인트라 예측부(73)는, 인트라 4×4 모드 및 인트라 16×16 중, 비용 함수값이 작은 모드를 최적 인트라 모드로서 결정한다. 인트라 예측부(73)는, 결정한 최적 인트라 모드에서 구한 예측 화상과, 그 비용 함수값을 예측 화상 선택부(76)에 공급한다.In step S34, the
이상의 스텝 S32 내지 S34의 처리는, 도 12의 스텝 S21에 대응하는 처리다.The processes of the above steps S32 to S34 are the processes corresponding to the step S21 of FIG. 12.
스텝 S35에서, 움직임 예측부(74) 및 움직임 보상부(75)는, 도 3의 하부에 나타나는 8×8 매크로 블록 서브 파티션에서, 다음 각 모드에 대해서 움직임 벡터 및 참조 픽처를, 비용 함수값이 작아지도록 결정한다. 각 모드에는 8×8, 8×4, 4×8, 4×4 및 B 픽처인 경우 다이렉트 모드가 포함된다.In step S35, the
스텝 S36에서, 움직임 예측부(74) 및 움직임 보상부(75)는, 처리중인 화상이 B 픽처인지 여부를 판정하고, B 픽처라고 판정된 경우, 처리는 스텝 S37로 진행한다. 움직임 예측부(74) 및 움직임 보상부(75)는, 스텝 S37에서, 쌍 예측에 대해서도 움직임 벡터 및 참조 픽처를 비용 함수값이 작아지도록 결정한다.In step S36, the
스텝 S36에서, B 픽처가 아니라고 판정된 경우, 스텝 S37은 스킵되고, 처리는 스텝 S38로 진행한다.If it is determined in step S36 that it is not a B picture, step S37 is skipped and the process proceeds to step S38.
스텝 S38에서, 움직임 예측부(74) 및 움직임 보상부(75)는, 도 3의 상부에 나타나는 매크로 블록 파티션에서, 다음 각 모드에 대해서 움직임 벡터 및 참조 픽처를, 비용 함수값이 작아지도록 결정한다. 각 모드에는, 16×16, 16×8, 8×16, 다이렉트 모드 및 스킵·모드가 포함된다.In step S38, the
스텝 S39에서, 움직임 예측부(74) 및 움직임 보상부(75)는, 처리중인 화상이 B 픽처인지 여부를 판정하고, B 픽처라고 판정된 경우, 처리는 스텝 S40으로 진행한다. 움직임 예측부(74) 및 움직임 보상부(75)는, 스텝 S40에서, 쌍 예측에 대해서도 움직임 벡터 및 참조 픽처를 비용 함수값이 작아지도록 결정한다.In step S39, the
스텝 S39에서, B 픽처가 아니라고 판정된 경우, 스텝 S40은 스킵되고, 처리는 스텝 S41로 진행한다.If it is determined in step S39 that the picture is not a B picture, step S40 is skipped and the process proceeds to step S41.
스텝 S41에서, 움직임 보상부(75)(의 예측 모드 결정부(85))는, 상술한 매크로 블록 파티션 및 서브 매크로 블록 파티션 중에서 비용 함수값이 작은 모드를, 최적 인터 모드로서 결정한다. 예측 모드 결정부(85)는, 결정한 최적 인터 모드에서 구한 예측 화상과, 그 비용 함수값을 예측 화상 선택부(76)에 공급한다.In step S41, the motion compensation unit 75 (prediction mode determination unit 85) determines, among the above-described macro block partitions and sub macro block partitions, the mode having the smallest cost function value as the optimal inter mode. The prediction
이상의 스텝 S35 내지 S41의 처리는, 도 12의 스텝 S22에 대응하는 처리다.The processes of the above steps S35 to S41 are the processes corresponding to the step S22 of FIG. 12.
스텝 S42에서, 예측 화상 선택부(76)는, 최적 인트라 모드 및 최적 인터 모드 중에서 가장 비용 함수값이 작은 모드를 결정한다. 이 스텝 S42의 처리는, 도 12의 스텝 S23에 대응하는 처리다.In step S42, the predictive
이상과 같이 하여, 움직임 벡터 및 참조 픽처(인터의 경우) 및 예측 모드가 결정된다. 여기서, 예를 들어 도 13의 스텝 S37이나 스텝 S40의 B 픽처인 경우의 쌍 예측 및 다이렉트 모드에서, 움직임 벡터를 결정할 때, 다음에 설명하는 도 14의 처리에 의해 보상된 예측 화상이 사용된다.As described above, the motion vector and the reference picture (in the case of the inter) and the prediction mode are determined. Here, for example, in the pair prediction and direct mode in the case of the B picture of step S37 or step S40 in FIG. 13, when the motion vector is determined, the predicted image compensated by the process of FIG. 14 described below is used.
도 14는, B 픽처인 경우의 보상 처리를 설명하는 흐름도다. 즉, 도 14는 도 12의 스텝 S22에서의 움직임 예측·보상 처리의 B 픽처로 특화한 처리를 나타내고 있다. 또한, 도 14의 예에서는, 간단화를 위하여, 화면 외부의 참조 픽셀에 대한 가중 계수가 0이고, 화면 내의 참조 픽셀에 대한 가중 계수가 1인 경우를 설명한다.14 is a flowchart for describing compensation processing in the case of a B picture. That is, FIG. 14 shows the process specialized in the B picture of the motion prediction / compensation process in step S22 of FIG. In the example of FIG. 14, for the sake of simplicity, a case where the weighting coefficient for the reference pixel outside the screen is 0 and the weighting coefficient for the reference pixel in the screen is 1 will be described.
스텝 S51에서, 선택부(83)는, 처리 대상의 모드가 다이렉트 모드 혹은 쌍 예측인지 여부를 판정한다. 스텝 S51에서, 다이렉트 모드 및 쌍 예측이 아니라고 판정된 경우, 처리는 스텝 S52로 진행한다.In step S51, the
스텝 S52에서, 보상 처리부(82)는, 당해 블록에 대하여 모드(L0 예측 또는 L1 예측)에 따른 예측을 행한다.In step S52, the
즉, 선택부(83)는, L0 예측인 경우, L0 영역 선택부(91)에만 예측 모드 정보와 L0 움직임 벡터 정보를 보낸다. L0 영역 선택부(91)는, 선택부(83)로부터의 예측 모드(L0 예측을 나타냄) 정보와 L0 움직임 벡터 정보에 따라, 확대된 L0 참조 프레임 정보로부터, 대응하는 L0 참조 영역을 선택하고, 예측 모드 결정부(85)에 출력한다. L1인 경우도 마찬가지이다.That is, in the case of L0 prediction, the
스텝 S51에서, 다이렉트 모드 또는 쌍 예측이라고 판정된 경우, 처리는 스텝 S53로 진행한다. 이 경우, 선택부(83)로부터의 예측 모드 정보와 움직임 벡터 정보는, L0 영역 선택부(91), L1 영역 선택부(92) 및 화면 단부 판정부(94)에 공급된다.If it is determined in step S51 that it is a direct mode or pair prediction, the process proceeds to step S53. In this case, the prediction mode information and the motion vector information from the
이것에 대응하여, L0 영역 선택부(91)는, 선택부(83)로부터의 예측 모드(다이렉트 모드 또는 쌍 예측을 나타냄) 정보와 L0 움직임 벡터 정보에 따라, 확대된 L0 참조 프레임 정보로부터, 대응하는 L0 참조 영역을 선택하여, 연산부(93)에 출력한다. L1 영역 선택부(92)는, 선택부(83)로부터의 예측 모드 정보와 L1 움직임 벡터 정보에 따라, 확대된 L1 참조 프레임 정보로부터, 대응하는 L1 참조 영역을 선택하여, 연산부(93)에 출력한다.Correspondingly, the L0
그리고, 화면 단부 판정부(94)는, 이하의 스텝 S53 내지 S57 및 S60에서, 참조 픽셀이 화면의 외부인지 여부를 판정한다. 이하의 설명에서는, 도 15에 도시되는 당해 예측 블록에서의 당해 예측 픽셀의 좌표가 참조된다.The screen
도 15에서, block_size_x는 당해 예측 블록의 x 방향의 크기를 나타내고, block_size_y는 당해 예측 블록의 y 방향의 크기를 나타내고 있다. 또한, i는 당해 예측 블록에서의 당해 예측 픽셀의 x 좌표를 나타내고, j는 당해 예측 블록에서의 당해 예측 픽셀의 y 좌표를 나타내고 있다.In FIG. 15, block_size_x represents the size of the prediction block in the x direction, and block_size_y represents the size of the prediction block in the y direction. In addition, i represents the x coordinate of the prediction pixel in the prediction block, and j represents the y coordinate of the prediction pixel in the prediction block.
여기서, 도 15의 경우, 당해 예측 블록이 4×4 화소의 예가 나타나고 있으므로, (block_size_x, block_size_y)=(4, 4), 0≤i, j≤3이 된다. 따라서, 도 15에 도시되는 당해 예측 픽셀은, x=i=2, y=j=0인 좌표인 것을 알 수 있다.In the case of FIG. 15, since the example of the prediction block is 4x4 pixels, (block_size_x, block_size_y) = (4, 4), 0≤i, j≤3. Therefore, it can be seen that the prediction pixel shown in FIG. 15 has coordinates of x = i = 2 and y = j = 0.
스텝 S53에서, 화면 단부 판정부(94)는, 값이 0에서 시작되는 j가 block_size_y보다 작은지 여부를 판정하고, j가 block_size_y보다 크다고 판정했을 경우, 처리를 종료한다. 한편, 스텝 S53에서, j가 block_size_y보다 작다고 판정된 경우, 즉, j가 0 내지 3의 사이, 처리는 스텝 S54로 진행하고, 그 이후의 처리가 반복된다.In step S53, the screen
스텝 S54에서, 화면 단부 판정부(94)는, 값이 0에서 시작되는 i가block_size_x보다 작은지 여부를 판정하고, i가 block_size_x보다 크다고 판정했을 경우, 처리는 스텝 S53으로 복귀되고, 그 이후의 처리가 반복된다. 또한, 스텝 S54에서, i가 block_size_x보다 작다고 판정된 경우, 즉, i가 0 내지 3인 동안, 처리는 스텝 S55로 진행하고, 그 이후의 처리가 반복된다.In step S54, the screen
스텝 S55에서, 화면 단부 판정부(94)는, L0 움직임 벡터 정보 mvL0x, mvL0y와, L1 움직임 벡터 정보 mvL1x, mvL1y를 사용하여, 참조 픽셀을 구한다. 즉, L0의 참조처 픽셀의 y 좌표 yL0, x 좌표 xL0 및 L1의 참조처 픽셀의 y 좌표 yL1, x 좌표 xL1은, 다음 수학식 6으로 구해진다.In step S55, the screen
[수학식 6]&Quot; (6) "
yL0=mvL0y+jyL0 = mvL0y + j
xL0=mvL0x+ixL0 = mvL0x + i
yL1=mvL1y+jyL1 = mvL1y + j
xL1=mvL1x+ixL1 = mvL1x + i
스텝 S56에서, 화면 단부 판정부(94)는, L0의 참조처 픽셀의 y 좌표 yL0이 0보다 작거나, 혹은 화면 프레임의 높이(height: 화면의 y 방향의 크기) 이상인지 또는, L0의 참조처 픽셀의 x 좌표 xL0가 0보다 작거나, 혹은 화면 프레임의 폭(width: 화면의 x 방향의 크기) 이상인지를 판정한다.In step S56, the screen
즉, 스텝 S56에서, 다음 수학식 7이 만족되는지 여부가 판정된다.That is, in step S56, it is determined whether the following equation (7) is satisfied.
[수학식 7][Equation 7]
스텝 S56에서, 수학식 7이 만족된다고 판정된 경우, 처리는 스텝 S57로 진행한다. 스텝 S57에서, 화면 단부 판정부(94)는 L1의 참조처 픽셀의 y 좌표 yL1이 0보다 작거나, 혹은 화면 프레임의 높이(height: 화면의 y 방향의 크기) 이상인지 또는, L1의 참조처 픽셀의 x 좌표 xL1이 0보다 작거나, 혹은 화면 프레임의 폭(width: 화면의 x 방향의 크기) 이상인지를 판정한다.In step S56, when it is determined that equation (7) is satisfied, the process proceeds to step S57. In step S57, the screen
즉, 스텝 S57에서, 다음 수학식 8이 만족되는지 여부가 판정된다.That is, in step S57, it is determined whether the following expression (8) is satisfied.
[수학식 8][Equation 8]
스텝 S57에서, 수학식 8이 만족된다고 판정된 경우, 처리는 스텝 S58로 진행한다. 이 경우, L0 참조처 픽셀도, L1 참조처 픽셀도, 화면 외부의 픽셀이므로, 화면 단부 판정부(94)는, 당해 픽셀에 대하여, H.264/AVC 방식에 의한 가중치 부여 예측의 가중 계수 정보를, 연산부(93)에 공급한다. 이것에 대응하여, 스텝 S58에서, 연산부(93)는, 당해 픽셀에 대하여 H.264/AVC 방식에 의한 가중치 부여 예측을 행한다.In step S57, when it is determined that equation (8) is satisfied, the process proceeds to step S58. In this case, since neither the L0 reference pixel nor the L1 reference pixel is a pixel outside the screen, the screen
스텝 S57에서, 수학식 8이 만족되지 않는다고 판정된 경우, 처리는 스텝 S59로 진행한다. 이 경우, L0 참조처 픽셀이 화면 외부의 픽셀이며, L1 참조처 픽셀이 화면 내부의 픽셀이므로, 화면 단부 판정부(94)는, 당해 픽셀에 대하여, L0 가중 계수 정보(0), L1 가중 계수 정보(1)를 연산부(93)에 공급한다. 이것에 대응하여, 스텝 S59에서, 연산부(93)는 당해 픽셀에 대하여 L1 참조 픽셀만을 사용해서 예측을 행한다.In step S57, when it is determined that equation (8) is not satisfied, the process proceeds to step S59. In this case, since the L0 reference destination pixel is a pixel outside the screen, and the L1 reference destination pixel is a pixel inside the screen, the screen
스텝 S56에서, 수학식 7이 만족되지 않는다고 판정된 경우, 처리는 스텝 S60으로 진행한다. 스텝 S60에서, 화면 단부 판정부(94)는, L1의 참조처 픽셀의 y 좌표 yL1이 0보다 작거나, 혹은 화면 프레임의 높이(height: 화면의 y 방향의 크기) 이상인지 또는, L1의 참조처 픽셀의 x 좌표 xL1이 0보다 작거나, 혹은 화면 프레임의 폭(width: 화면의 x 방향의 크기) 이상인지를 판정한다.If it is determined in step S56 that equation (7) is not satisfied, the process proceeds to step S60. In step S60, the screen
즉, 스텝 S60에서도, 상술한 수학식 8이 만족되는지 여부가 판정된다. 스텝 S60에서, 수학식 8이 만족된다고 판정될 경우, 처리는 스텝 S61으로 진행한다.That is, in step S60, it is determined whether or not the above expression (8) is satisfied. In step S60, when it is determined that equation (8) is satisfied, the process proceeds to step S61.
이 경우, L1 참조처 픽셀이 화면 외부의 픽셀이며, L0 참조처 픽셀이 화면 내부의 픽셀이므로, 화면 단부 판정부(94)는, 당해 픽셀에 대하여, L0 가중 계수 정보 (1), L1가중 계수 정보 (0)을, 연산부(93)에 공급한다. 이것에 대응하여, 스텝 S61에서, 연산부(93)는, 당해 픽셀에 대하여, L0 참조 픽셀만을 사용해서 예측을 행한다.In this case, since the L1 reference pixel is a pixel outside the screen, and the L0 reference pixel is a pixel inside the screen, the screen
한편, 스텝 S60에서, 수학식 8이 만족되지 않는다고 판정된 경우, 어느쪽의 픽셀도 화면 내의 픽셀이므로, 처리는 스텝 S58로 진행하고, 당해 픽셀에 대하여, H.264/AVC 방식에 의한 가중치 부여 예측이 행해진다.On the other hand, when it is determined in step S60 that Equation 8 is not satisfied, since all of the pixels are pixels in the screen, the process proceeds to step S58, and the pixels are weighted by the H.264 / AVC method. Prediction is made.
스텝 S58, S59 또는 S61에서 연산부(93)에 의해 가중치 부여 예측이 행해진 결과의 가중치 부여(Bi-pred) 예측 정보는, 예측 모드 결정부(85)에 출력된다.The weighted (Bi-pred) prediction information of the result of which the weighting prediction is performed by the calculating part 93 in step S58, S59, or S61 is output to the prediction
이상의 처리를 통합하면, 도 16에 도시되는 바와 같게 된다. 도 16의 예에서는, 참조 픽셀 위치와 처리 방법의 대응 관계가 도시되고 있다.Incorporating the above processing, it is as shown in FIG. In the example of FIG. 16, the correspondence relationship between a reference pixel position and a processing method is shown.
즉, L0 참조 영역에서의 당해 참조 픽셀의 위치도, L1 참조 영역에서의 당해 참조 픽셀의 위치도, 화면 내부일 경우, 즉, 도 14의 스텝 S57의 "예"인 경우, 당해 픽셀에 대한 처리 방법으로서, H.264/AVC 방식의 가중치 부여 예측이 사용된다.In other words, when the position of the reference pixel in the L0 reference area and the position of the reference pixel in the L1 reference area are also inside the screen, that is, when " Yes " in step S57 of FIG. As a method, weighted prediction of the H.264 / AVC scheme is used.
L0 참조 영역에서의 당해 참조 픽셀의 위치가 화면의 외부이며, L1 참조 영역에서의 당해 참조 픽셀의 위치가 화면 내부일 경우, 즉, 도 14의 스텝 S57의 "아니오"인 경우, 당해 픽셀에 대한 처리 방법으로서, 화면 외부의 L0 참조 픽셀보다도 화면 내의 L1 참조 픽셀에 가중치를 두는 가중치 부여 예측이 사용된다. 또한, 도 14에 도시되는 예는, 가중치 부여 계수가 0과 1인 예이므로, L1 참조 픽셀만 사용하는 예측이 사용된다.If the position of the reference pixel in the L0 reference area is outside the screen and the position of the reference pixel in the L1 reference area is inside the screen, that is, "No" in step S57 of FIG. As the processing method, weighted prediction that weights the L1 reference pixel in the screen rather than the L0 reference pixel outside the screen is used. In addition, since the example shown in FIG. 14 is an example in which weighting coefficients are 0 and 1, the prediction using only L1 reference pixel is used.
L1 참조 영역에서의 당해 참조 픽셀의 위치가 화면의 외부이며, L0 참조 영역에서의 당해 참조 픽셀의 위치가 화면 내부일 경우, 즉, 도 14의 스텝 S60의 "예"인 경우, 당해 픽셀에 대한 처리 방법으로서, 화면 외부의 L1 참조 픽셀보다도 화면 내부의 L0 참조 픽셀에 가중치을 두는 가중치 부여 예측이 사용된다. 또한, 도 14에 도시되는 예는, 가중치 부여 계수가 0과 1인 예이므로, L0 참조 픽셀만 사용하는 예측이 사용된다.If the position of the reference pixel in the L1 reference area is outside of the screen and the position of the reference pixel in the L0 reference area is inside the screen, that is, "yes" in step S60 of FIG. As a processing method, weighted prediction that weights the L0 reference pixel inside the screen rather than the L1 reference pixel outside the screen is used. In addition, since the example shown in FIG. 14 is an example in which weighting coefficients are 0 and 1, the prediction using only L0 reference pixel is used.
L0 참조 영역에서의 당해 참조 픽셀의 위치도, L1 참조 영역에서의 당해 참조 픽셀의 위치도, 화면 외부일 경우, 즉, 도 14의 스텝 S60의 "아니오"인 경우, 당해 픽셀에 대한 처리 방법으로서, H.264/AVC 방식의 가중치 부여 예측이 사용된다.When the position of the reference pixel in the L0 reference area and the position of the reference pixel in the L1 reference area are also outside the screen, that is, when "No" in step S60 of FIG. 14, the processing method for the pixel is used. , Weighted prediction of H.264 / AVC method is used.
이어서, 도 17을 참조하여, 도 14의 예의 경우의 효과에 대해서 설명한다.Next, with reference to FIG. 17, the effect in the case of the example of FIG. 14 is demonstrated.
도 17의 예에서, 좌측부터 차례로, L0 참조 픽처, Current 픽처, L1 참조 픽처의 화면 내부가 도시되고 있다. 또한, L0 참조 픽처에서의 파선 부분은, 화면 외부를 도시하고 있다.In the example of FIG. 17, the inside of the screen of the L0 reference picture, the current picture, and the L1 reference picture is shown in order from the left. The broken line portion in the L0 reference picture shows the outside of the screen.
즉, Current 픽처의 당해 블록에서 탐색된 움직임 벡터 MV(L0)가 나타내는 L0 참조 픽처의 참조 블록은, 화면 외부 부분(파선 부분)과 화면 내부 부분(백선 부분)으로 구성되어 있고, Current 픽처의 당해 블록에서 탐색된 움직임 벡터 MV(L1)가 나타내는 L1 참조 픽처의 참조 블록은, 화면 내부 부분(백선 부분)으로 구성되어 있다.That is, the reference block of the L0 reference picture indicated by the motion vector MV (L0) found in the block of the current picture is composed of an outer portion (dashed line) and an inner portion (white line) of the current picture. The reference block of the L1 reference picture indicated by the motion vector MV (L1) found in the block is composed of a screen inner portion (white line portion).
종래, 즉 H.264/AVC 방식에서는, 화면 외부 부분이 있든지 없든지, 가중 계수 w(L0) 및 w(L1)를 사용하는 당해 블록의 가중치 부여 예측에, 양쪽의 참조 블록이 사용되고 있었다.Conventionally, in the H.264 / AVC system, both reference blocks have been used for weighted prediction of the block using the weighting coefficients w (L0) and w (L1), with or without an outside portion of the screen.
이에 반해, 본 발명에서(특히, 도 14의 예의 경우), 가중 계수 w(L0) 및 w(L1)를 사용하는 당해 블록의 가중치 부여 예측에, L0 참조 블록에서의 화면 외부 부분은 사용되지 않는다. L0 참조 블록에서의 화면 외부 부분만은, 당해 블록의 가중치 부여 예측에, L1 참조 블록의 픽셀밖에 사용되지 않는다.In contrast, in the present invention (particularly in the case of the example of FIG. 14), the out-of-screen portion in the L0 reference block is not used for weighted prediction of the block using the weighting coefficients w (L0) and w (L1). . Only the outer portion of the picture in the L0 reference block is used only for the pixels of the L1 reference block for weighted prediction of the block.
즉, 부정확한 정보일 가능성이 높은 화면 외부 부분의 픽셀은 예측에 사용되지 않으므로, H.264/AVC 방식의 가중치 예측보다도 예측 정밀도가 개선된다. 물론, 가중 계수를 0, 1로 한 도 14의 예에 한하지 않고, 화면 외부 부분의 가중 계수를 화면 내부 부분의 가중 계수보다도 낮게 한 경우에도, H.264/AVC 방식의 가중치 예측보다도, 예측 정밀도가 개선된다.That is, since the pixels of the outside portion of the screen which are likely to be incorrect information are not used for prediction, the prediction accuracy is improved than the weight prediction of the H.264 / AVC method. Of course, it is not limited to the example of FIG. 14 in which the weighting coefficients are 0 and 1, and even when the weighting coefficient of the screen external portion is lower than the weighting coefficient of the screen internal portion, the prediction is more accurate than the weight prediction of the H.264 / AVC method. Precision is improved.
부호화된 압축 화상은, 소정의 전송로를 거쳐서 전송되고, 화상 복호 장치에 의해 복호된다.The encoded compressed image is transmitted via a predetermined transmission path and decoded by an image decoding device.
[화상 복호 장치의 구성예][Configuration example of image decoding device]
도 18은, 본 발명을 적용한 화상 처리 장치로서의 화상 복호 장치의 일 실시 형태의 구성을 나타내고 있다.18 shows the configuration of an embodiment of an image decoding device as an image processing device to which the present invention is applied.
화상 복호 장치(101)는, 축적 버퍼(111), 가역 복호부(112), 역양자화부(113), 역직교 변환부(114), 연산부(115), 디블록 필터(116), 화면 재배열 버퍼(117), D/A 변환부(118), 프레임 메모리(119), 인트라 예측부(120), 움직임 보상부(121) 및 스위치(122)에 의해 구성되어 있다.The
축적 버퍼(111)는 전송되어 온 압축 화상을 축적한다. 가역 복호부(112)는, 축적 버퍼(111)로부터 공급된, 도 9의 가역 부호화부(66)에 의해 부호화된 정보를, 가역 부호화부(66)의 부호화 방식에 대응하는 방식으로 복호한다. 역양자화부(113)는 가역 복호부(112)에 의해 복호된 화상을, 도 9의 양자화부(65)의 양자화 방식에 대응하는 방식으로 역양자화한다. 역직교 변환부(114)는, 도 9의 직교 변환부(64)의 직교 변환 방식에 대응하는 방식으로 역양자화부(113)의 출력을 역직교 변환한다.The
역직교 변환된 출력은 연산부(115)에 의해 스위치(122)로부터 공급되는 예측 화상과 가산되어서 복호된다. 디블록 필터(116)는, 복호된 화상의 블록 왜곡을 제거한 후, 프레임 메모리(119)에 공급하고, 축적시킴과 함께, 화면 재배열 버퍼(117)에 출력한다.The inverse orthogonal transformed output is added to the predictive image supplied from the
화면 재배열 버퍼(117)는, 화상의 재배열을 행한다. 즉, 도 9의 화면 재배열 버퍼(62)에 의해 부호화의 순서를 위해서 재배열된 프레임의 순서가, 원래의 표시의 순서대로 재배열된다. D/A 변환부(118)는, 화면 재배열 버퍼(117)로부터 공급된 화상을 D/A 변환하고, 도시하지 않은 디스플레이에 출력하여, 표시시킨다.The
프레임 메모리(119)로부터의 참조되는 화상은, 움직임 보상부(121)에 공급된다. 연산부(115)로부터의 디블록 필터 전의 화상은, 인트라 예측에 사용되는 화상으로서, 인트라 예측부(120)에 공급된다.The referenced image from the
인트라 예측부(120)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보가 가역 복호부(112)로부터 공급된다. 인트라 예측부(120)는, 이 정보에 기초하여, 예측 화상을 생성하고, 생성한 예측 화상을 스위치(122)에 출력한다.The
움직임 보상부(121)에는, 헤더 정보를 복호해서 얻어진 정보 중, 인터 예측 모드 정보, 움직임 벡터 정보, 참조 프레임 정보 등이 가역 복호부(112)로부터 공급된다. 인터 예측 모드 정보는, 매크로 블록마다 송신되어 온다. 움직임 벡터 정보나 참조 프레임 정보는, 대상 블록마다 송신되어 온다. 또한, 화상 부호화 장치(51)에서 가중 계수가 산출되어 있는 경우에는, 그 가중 계수도, 프레임마다 또는 시퀀스마다 보내져 온다.The
움직임 보상부(121)는, 가역 복호부(112)로부터의 인터 예측 모드에 기초하여, 공급된 움직임 벡터 정보 또는 주위의 블록으로부터 구해지는 움직임 벡터 정보를 사용하여, 참조 화상에 보상을 행하고, 각 블록의 예측 화상을 생성한다. 이때, 움직임 보상부(121)는, 도 9의 움직임 예측 보상부(75)와 마찬가지로, B 픽처에서, 다이렉트 모드 또는 쌍 예측 모드의 경우, 즉, 상이한 복수의 참조 화상을 사용하는 예측 모드인 경우, 대상이 되는 블록의 참조처의 화소가, 그것들의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하여, 예측 화상을 생성한다. 생성된 예측 화상은, 스위치(122)를 거쳐서 연산부(115)에 출력된다.The
스위치(122)는, 움직임 보상부(121) 또는 인트라 예측부(120)에 의해 생성된 예측 화상을 선택하여, 연산부(115)에 공급한다.The
[움직임 보상부의 구성예][Configuration example of the motion compensation unit]
도 19는, 움직임 보상부(121)의 상세한 구성예를 도시하는 블록도다.19 is a block diagram illustrating a detailed configuration example of the
도 19의 예에서는, 움직임 보상부(121)는 보간 필터(131), 보상 처리부(132), 선택부(133) 및 움직임 벡터 예측부(134)에 의해 구성되어 있다.In the example of FIG. 19, the
보간 필터(131)에는, 프레임 메모리(119)로부터의 참조 프레임(참조 화상) 정보가 입력된다. 보간 필터(131)는, 도 11의 보간 필터(81)와 마찬가지로, 참조 프레임의 화소 사이를 보간하고, 종횡 4배로 확대하여, 보상 처리부(132)에 출력한다.Reference frame (reference picture) information from the
보상 처리부(132)는, L0 영역 선택부(141), L1 영역 선택부(142), 연산부(143) 및 화면 단부 판정부(144)에 의해 구성되어 있다. 또한, 도 19의 예의 보상 처리부(132)에서는, B 픽처인 경우의 예가 나타나고 있다.The
보간 필터(131)로부터의 확대된 참조 프레임 정보는, L0 영역 선택부(141), L1 영역 선택부(142) 및 화면 단부 판정부(144)에 입력된다.The enlarged reference frame information from the
L0 영역 선택부(141)는, 선택부(133)로부터의 예측 모드 정보와 L0 움직임 벡터 정보에 따라, 확대된 L0 참조 프레임 정보로부터, 대응하는 L0 참조 영역을 선택하여, 연산부(143)에 출력한다. 이 출력된 참조 영역의 정보는, L0 예측 모드인 경우, L0 예측 정보로서, 스위치(122)에 출력된다.The L0
L1 영역 선택부(142)는, 선택부(133)로부터의 예측 모드 정보와 L1 움직임 벡터 정보에 따라, 확대된 L1 참조 프레임 정보로부터, 대응하는 L1 참조 영역을 선택하여, 연산부(143)에 출력한다. 이 출력된 참조 영역의 정보는, L1 예측 모드인 경우, L1 예측 정보로서 스위치(122)에 출력된다.The L1
연산부(143)는, 도 11의 연산부(93)와 마찬가지로, 승산기(143A), 승산기(143B) 및 가산기(143C)에 의해 구성된다. 승산기(143A)는, L0 영역 선택부(141)로부터의 L0 참조 영역 정보에, 화면 단부 판정부(144)로부터의 L0 가중치 정보를 승산하여, 그 결과를 가산기(143C)에 출력한다. 승산기(143B)는, L1 영역 선택부(142)로부터의 L1 참조 영역 정보에, 화면 단부 판정부(144)로부터의 L1 가중치 정보를 승산하여, 그 결과를 가산기(143C)에 출력한다. 가산기(143C)는, L0 및 L1 가중치 정보에서 가중치 배분된 L0 참조 영역 및 L1 참조 영역을 가산하고, 가중치 부여 예측 정보(Bi-pred 예측 정보)로서, 스위치(122)에 출력한다.The calculating part 143 is comprised by the
화면 단부 판정부(144)에는, 가역 복호부(112)로부터의 인터 예측 모드 정보, 보간 필터(131)로부터의 확대된 참조 프레임 정보 및 선택부(133)로부터의 움직임 벡터 정보가 공급된다.The screen
화면 단부 판정부(144)는, 쌍 예측 또는 다이렉트 모드인 경우, 참조 프레임 정보와 움직임 벡터 정보에 기초하여, L0 참조 픽셀 또는 L1 참조 픽셀이 화면의 외부인지 여부를 판정하고, 그 판정 결과에 따라, 승산기(143A) 및 승산기(143B)에 공급하는 가중 계수를 출력한다. 예를 들어, 모두 화면 내부 또는 외부일 경우, 가중 계수 W=0.5가 출력된다. 적어도, 화면 외부의 참조 픽셀에 대해서는, 화면 내부의 참조 픽셀보다도 작은 가중 계수가 부여된다.In the pair prediction or direct mode, the screen
또한, 도 11의 가중치 산출부(95)에 의해 가중 계수가 산출되어 있는 경우에는, 그 가중 계수도, 가역 복호부(112)로부터 공급되므로, 화면 단부 판정부(144)는, 그 가중 계수를, 판정 결과에 따라, 승산기(143A) 및 승산기(143B)에 공급하는 가중 계수를 출력한다.In addition, when the weighting coefficient is calculated by the
선택부(133)에는, 가역 복호부(112)로부터의 인터 예측 정보와, 움직임 벡터 정보가 있는 경우에는, 그것도 공급된다. 선택부(133)는, 예측 모드에 따라, 가역 복호부(112)로부터의 움직임 벡터 정보 및 움직임 벡터 예측부(134)에 구하게 한 움직임 벡터 정보 중 어느 한쪽을 선택하고, 선택한 움직임 벡터 정보를, 화면 단부 판정부(144), L0 영역 선택부(141) 및 L1 영역 선택부(142)에 공급한다.The
움직임 벡터 예측부(134)는, 도 11의 움직임 벡터 예측부(84)와 마찬가지로, 스킵·모드나 다이렉트 모드와 같이, 움직임 벡터를 복호측에 보내지 않는 모드에 따라서 움직임 벡터를 예측하고, 선택부(133)에 공급한다. 또한, 도 19의 예에서, 그 도시는 생략하지만, 구할 때의 주위의 블록의 움직임 벡터 정보 등은 선택부(133)로부터 얻어진다.The
[화상 복호 장치의 복호 처리의 설명][Description of Decoding Process of Image Decoding Device]
이어서, 도 20의 흐름도를 참조하여, 화상 복호 장치(101)가 실행하는 복호 처리에 대해서 설명한다.Next, with reference to the flowchart of FIG. 20, the decoding process performed by the
스텝 S131에서, 축적 버퍼(111)는 전송되어 온 화상을 축적한다. 스텝 S132에서, 가역 복호부(112)는, 축적 버퍼(111)로부터 공급되는 압축 화상을 복호한다. 즉, 도 9의 가역 부호화부(66)에 의해 부호화된 I 픽처, P 픽처, 및 B 픽처가 복호된다.In step S131, the
이때, 블록마다, 움직임 벡터 정보, 참조 프레임 정보 등도 복호된다. 또한, 매크로 블록마다, 예측 모드 정보(인트라 예측 모드 또는 인터 예측 모드를 나타내는 정보) 등도 복호된다. 또한, 도 9의 부호화측에서 가중 계수가 산출되어 있는 경우에는, 그 정보도 복호된다.At this time, motion vector information, reference frame information, etc. are also decoded for each block. For each macro block, prediction mode information (information indicating an intra prediction mode or an inter prediction mode) is also decoded. In addition, when the weighting coefficient is calculated by the encoding side of Fig. 9, the information is also decoded.
스텝 S133에서, 역양자화부(113)는 가역 복호부(112)에 의해 복호된 변환 계수를, 도 9의 양자화부(65)의 특성에 대응하는 특성으로 역양자화한다. 스텝 S134에서 역직교 변환부(114)는 역양자화부(113)에 의해 역양자화된 변환 계수를, 도 9의 직교 변환부(64)의 특성에 대응하는 특성으로 역직교 변환한다. 이에 의해 도 9의 직교 변환부(64)의 입력(연산부(63)의 출력)에 대응하는 차분 정보가 복호되게 된다.In step S133, the
스텝 S135에서, 연산부(115)는, 후술하는 스텝 S141의 처리에서 선택되어, 스위치(122)를 거쳐서 입력되는 예측 화상을 차분 정보와 가산한다. 이에 의해 원래 화상이 복호된다. 스텝 S136에서 디블록 필터(116)는, 연산부(115)로부터 출력된 화상을 필터링한다. 이에 의해 블록 왜곡이 제거된다. 스텝 S137에서 프레임 메모리(119)는, 필터링된 화상을 기억한다.In step S135, the calculating
스텝 S138에서, 가역 복호부(112)는, 압축 화상의 헤더부의 가역 복호 결과에 기초하여, 압축 화상이 인터 예측된 화상인지 여부, 즉, 가역 복호 결과에 최적 인터 예측 모드를 나타내는 정보가 포함되어 있는지 여부를 판정한다.In step S138, the
스텝 S138에서 압축 화상이 인터 예측된 화상이라고 판정된 경우, 가역 복호부(112)는, 움직임 벡터 정보, 참조 프레임 정보, 최적 인터 예측 모드를 나타내는 정보 등을 움직임 보상부(121)에 공급한다. 가중 계수가 복호되었을 경우에는, 그것도 움직임 보상부(121)에 공급된다.When it is determined in step S138 that the compressed image is an inter predicted image, the
그리고, 스텝 S139에서, 움직임 보상부(121)는, 움직임 보상 처리를 행한다. 움직임 보상부(121)는, 가역 복호부(112)로부터의 인터 예측 모드에 기초하여, 공급된 움직임 벡터 정보 또는 주위의 블록으로부터 구해지는 움직임 벡터 정보를 사용하여, 참조 화상에 보상을 행하고, 각 블록의 예측 화상을 생성한다.In step S139, the
이때, 움직임 보상부(121)는, 도 9의 움직임 예측 보상부(75)와 마찬가지로, B 픽처에서, 다이렉트 모드 또는 쌍 예측 모드인 경우, 즉, 상이한 복수의 참조 화상을 사용하는 예측 모드인 경우, 대상이 되는 블록의 참조처의 화소가, 그것들의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하여, 예측 화상을 생성한다. 생성된 예측 화상은, 스위치(122)를 거쳐서 연산부(115)에 출력된다. 또한, 이 B 픽처의 경우의 보상 처리에 대해서는, 도 14를 참조한 보상 처리와 마찬가지이므로, 그 설명을 생략한다.In this case, similar to the
한편, 스텝 S138에서 압축 화상이 인터 예측된 화상이 아니라고 판정된 경우, 즉, 가역 복호 결과에 최적 인트라 예측 모드를 나타내는 정보가 포함되어 있는 경우, 가역 복호부(112)는, 최적 인트라 예측 모드를 나타내는 정보를 인트라 예측부(120)에 공급한다.On the other hand, when it is determined in step S138 that the compressed picture is not an inter predicted picture, that is, when the reversible decoding result includes information indicating the optimal intra prediction mode, the
그리고, 스텝 S140에서, 인트라 예측부(120)는, 가역 복호부(112)로부터의 정보가 나타내는 최적 인트라 예측 모드에서, 프레임 메모리(119)로부터의 화상에 대하여 인트라 예측 처리를 행하여, 인트라 예측 화상을 생성한다. 그리고, 인트라 예측부(120)는, 인트라 예측 화상을 스위치(122)에 출력한다.In step S140, the
스텝 S141에서, 스위치(122)는 예측 화상을 선택하고, 연산부(115)에 출력한다. 즉, 인트라 예측부(120)에 의해 생성된 예측 화상 또는 움직임 보상부(121)에 의해 생성된 예측 화상이 공급된다. 따라서, 공급된 예측 화상이 선택되어서 연산부(115)에 출력되고, 상술한 바와 같이, 스텝 S135에서 역직교 변환부(114)의 출력과 가산된다.In step S141, the
스텝 S142에서, 화면 재배열 버퍼(117)는 재배열을 행한다. 즉 화상 부호화 장치(51)의 화면 재배열 버퍼(62)에 의해 부호화를 위해서 재배열된 프레임의 순서가, 원래의 표시의 순서로 재배열된다.In step S142, the
스텝 S143에서, D/A 변환부(118)는, 화면 재배열 버퍼(117)로부터의 화상을 D/A 변환한다. 이 화상이 도시하지 않은 디스플레이에 출력되어, 화상이 표시된다.In step S143, the D /
이상과 같이, 화상 부호화 장치(51) 및 화상 복호 장치(101)에서는, 복수의 상이한 참조 픽처를 사용한 가중치 부여 예측을 행하는 쌍 예측 및 다이렉트 모드에서, L0 또는 L1 참조 픽셀 중 어느 한쪽이 화면의 외부를 참조하는 경우, 부정확한 정보일 가능성이 높은 외부의 픽셀보다도, 신뢰성이 높은 다른 쪽의 픽셀에 대한 가중치를 크게 한 가중치 예측이 행해진다.As described above, in the
즉, 본 발명의 경우, 특허문헌 1의 제안의 경우에는, 전혀 사용되지 않은 블록 중, 화면 내부에 존재하는 픽셀이 사용된다.That is, in the case of this invention, in the case of the proposal of
따라서, 본 발명에 따르면, B 픽처에서, 특히 화면의 단부 부근의 인터 부호화의 예측 정밀도가 개선된다. 이에 의해, 잔차 신호가 삭감되어, 잔차 신호의 비트량이 줄어듦으로써, 부호화 효율이 개선된다.Therefore, according to the present invention, the prediction accuracy of inter coding in the B picture, especially near the end of the screen, is improved. As a result, the residual signal is reduced and the bit amount of the residual signal is reduced, thereby improving the coding efficiency.
또한, 이 개선은, 화면이 큰 경우보다도 휴대 단말기 등의 작은 화면 쪽에 보다 효과가 있다. 또한, 비트레이트가 낮은 경우도 더욱 효과적이다.This improvement is more effective for smaller screens such as portable terminals than when the screen is large. It is also more effective when the bitrate is low.
잔차 신호가 삭감되면, 그 직교 변환 후의 계수도 작아지고, 양자화 후에는 많은 계수가 0이 되는 것이 기대된다. H.264/AVC 방식에서는, 연속된 0의 개수를 스트림 정보에 포함한다. 통상, 0 이외의 값을 결정된 부호로 치환하는 것보다도, 0의 개수로 표현하는 쪽이 훨씬 적은 부호량으로 가능하므로, 본 발명에 의해 많은 계수가 0이 되는 것은, 부호 비트량의 삭감으로 이어진다.When the residual signal is reduced, the coefficient after the orthogonal transformation also becomes small, and many coefficients are expected to be zero after quantization. In the H.264 / AVC system, the number of consecutive zeros is included in the stream information. In general, it is possible to express the number of zeros with a much smaller amount of code than to replace a value other than zero with the determined code, so that many coefficients become zero by the present invention leads to a reduction in the amount of code bits. .
또한, 본 발명에 따르면, 다이렉트 모드의 예측 정밀도가 개선되기 때문에, 다이렉트 모드가 선택되기 쉬워진다. 다이렉트 모드는, 움직임 벡터 정보를 갖지 않기 때문에, 특히 화면의 단부 부근에서 움직임 벡터 정보에 의한 헤더 정보가 삭감된다.Further, according to the present invention, since the prediction accuracy of the direct mode is improved, the direct mode can be easily selected. Since the direct mode does not have the motion vector information, the header information by the motion vector information is reduced particularly near the edge of the screen.
즉, 종래는 L0 또는 L1 참조 픽처의 참조 영역이 화면 외부로 되어 있을 경우에, 다이렉트 모드를 선택하려고 하더라도, 상술한 비용 함수값이 증대해버려, 다이렉트 모드가 선택되기 어렵기 때문이다.That is, conventionally, even when the direct mode is selected when the reference area of the L0 or L1 reference picture is outside the screen, the above-described cost function value increases, so that the direct mode is difficult to be selected.
또한, 이것을 피하기 위해서, 쌍 예측에서 작은 블록이 선택된 경우, 각 블록의 움직임 벡터 정보가 증가해버리지만, 본 발명에 의해 다이렉트 모드에서 큰 블록이 선택됨으로써, 움직임 벡터 정보가 삭감된다. 또한, 큰 블록에 대해서는 비트 길이가 적어지도록 비트 열이 정해져 있으므로, 본 발명에 의해 큰 블록이 선택되기 쉬워지면, 모드 정보의 비트량도 삭감된다.In order to avoid this, when small blocks are selected in pair prediction, the motion vector information of each block is increased, but the motion vector information is reduced by selecting a large block in the direct mode according to the present invention. In addition, since the bit string is determined so that the bit length is reduced for the large block, when the large block is easily selected by the present invention, the bit amount of the mode information is also reduced.
또한, 저비트레이트에서는, 큰 양자화 파라미터 QP를 사용해서 양자화되기 때문에, 예측 정밀도가 화질에 직접적으로 영향을 미치게 되어버리므로, 예측 정밀도가 개선되면, 화면의 단부 부근에서의 화질이 개선된다.In addition, at low bit rates, since the quantization is performed using a large quantization parameter QP, the prediction accuracy directly affects the image quality. Therefore, when the prediction precision is improved, the image quality near the edge of the screen is improved.
또한, 상기 설명에서는, 쌍 예측 및 다이렉트 모드인 경우의 움직임 보상에서, L0 또는 L1 참조 픽셀 중 어느 한쪽이 화면의 외부를 참조하는 경우, 부정확한 정보일 가능성이 높은 외부의 픽셀보다도, 신뢰성이 높은 다른 쪽의 픽셀에 대한 가중치를 크게 한 가중치 예측이 행해지도록 했지만, 쌍 예측에서는, 이 가중치 예측을, 움직임 탐색 시에 사용하도록 해도 좋다. 움직임 탐색 시에, 본 발명의 가중치 예측을 적용함으로써, 움직임 탐색의 정밀도가 높아지므로, 움직임 보상시보다도 더욱 예측 정밀도를 개선할 수 있다.In the above description, in the motion compensation in the pair prediction and direct mode, when either of the L0 or L1 reference pixels refers to the outside of the screen, the reliability is higher than that of the external pixels that are likely to be incorrect information. Although weight prediction with a larger weight for the other pixel is performed, in pair prediction, this weight prediction may be used during motion search. By applying the weighted prediction of the present invention at the time of motion search, the accuracy of the motion search is increased, so that the prediction accuracy can be further improved than at the time of motion compensation.
[확장 매크로 블록 사이즈에의 적용의 설명][Description of Application to Extended Macro Block Size]
도 21은, 비특허문헌 2에서 제안되어 있는 블록 사이즈의 예를 나타내는 도면이다. 비특허문헌 2에서는, 매크로 블록 사이즈가 32×32 화소로 확장되어 있다.It is a figure which shows the example of the block size proposed by the nonpatent literature 2. As shown in FIG. In Non-Patent Document 2, the macroblock size is extended to 32x32 pixels.
도 21의 상단에는, 좌측으로부터, 32×32 화소, 32×16 화소, 16×32 화소 및 16×16 화소의 블록(파티션)으로 분할된 32×32 화소로 구성되는 매크로 블록이 순서대로 나타나고 있다. 도 21의 중단에는, 좌측으로부터, 16×16 화소, 16×8 화소, 8×16 화소 및 8×8 화소의 블록으로 분할된 16×16 화소로 구성되는 블록이 순서대로 나타나고 있다. 또한, 도 21의 하단에는, 좌측으로부터, 8×8 화소, 8×4 화소, 4×8 화소 및 4×4 화소의 블록으로 분할된 8×8 화소의 블록이 순서대로 나타나고 있다.At the top of Fig. 21, macroblocks composed of 32x32 pixels divided into blocks (partitions) of 32x32 pixels, 32x16 pixels, 16x32 pixels, and 16x16 pixels are shown in order from the left. . In the middle of Fig. 21, blocks composed of 16x16 pixels divided into blocks of 16x16 pixels, 16x8 pixels, 8x16 pixels, and 8x8 pixels are shown in order from the left. In the lower part of FIG. 21, blocks of 8x8 pixels divided into blocks of 8x8 pixels, 8x4 pixels, 4x8 pixels, and 4x4 pixels are sequentially shown from the left side.
즉, 32×32 화소의 매크로 블록은, 도 21의 상단에 나타나는 32×32 화소, 32×16 화소, 16×32 화소 및 16×16 화소의 블록에서의 처리가 가능하다.In other words, the macroblock of 32x32 pixels can be processed in blocks of 32x32 pixels, 32x16 pixels, 16x32 pixels, and 16x16 pixels shown at the upper end of FIG.
상단의 우측에 나타나는 16×16 화소의 블록은, H.264/AVC 방식과 마찬가지로, 중단에 나타나는 16×16 화소, 16×8 화소, 8×16 화소 및 8×8 화소의 블록에서의 처리가 가능하다.The block of 16 × 16 pixels appearing on the right side of the top is processed in blocks of 16 × 16 pixels, 16 × 8 pixels, 8 × 16 pixels, and 8 × 8 pixels appearing in the middle, similar to the H.264 / AVC method. It is possible.
중단의 우측에 나타나는 8×8 화소의 블록은, H.264/AVC 방식과 마찬가지로, 하단에 나타나는 8×8 화소, 8×4 화소, 4×8 화소 및 4×4 화소의 블록에서의 처리가 가능하다.Blocks of 8x8 pixels appearing on the right side of the interruption are processed in blocks of 8x8 pixels, 8x4 pixels, 4x8 pixels, and 4x4 pixels appearing at the bottom, similar to the H.264 / AVC method. It is possible.
이러한 계층구조를 채용함으로써, 비특허문헌 2의 제안에서는, 16×16 화소의 블록 이하에 대해서는, H.264/AVC 방식과 호환성을 유지하면서, 그 확대 집합으로서 보다 큰 블록이 정의되어 있다.By adopting such a hierarchical structure, in the proposal of Non-Patent Document 2, a larger block is defined as the enlarged set while maintaining compatibility with the H.264 / AVC system for blocks of 16x16 pixels or less.
이상과 같이 제안되는 확장된 매크로 블록 사이즈에도 본 발명을 적용할 수 있다.The present invention can also be applied to the extended macroblock size proposed as described above.
또한, 이상에서는, 부호화 방식으로서 H.264/AVC 방식을 기초로 사용하도록 했지만, 본 발명은 이에 한정하지 않고, 그 밖의 움직임 예측·보상 처리를 행하는 부호화 방식/복호 방식을 사용하는 화상 부호화 장치/화상 복호 장치에 적용할 수도 있다.In addition, in the above, although the H.264 / AVC system was used as a coding system based on this, this invention is not limited to this, The image coding apparatus / which uses the coding system / decoding system which performs another motion prediction and compensation process / It can also be applied to an image decoding device.
또한, 본 발명은 예를 들어 MPEG, H.26x 등과 같이, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축된 화상 정보(비트 스트림)를, 위성 방송, 케이블 텔레비전, 인터넷 또는 휴대 전화기 등의 네트워크 미디어를 거쳐서 수신할 때 사용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 발명은 광, 자기 디스크 및 플래시 메모리와 같은 기억 미디어 상에서 처리할 때에 사용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 발명은 그들의 화상 부호화 장치 및 화상 복호 장치 등에 포함되는 움직임 예측 보상 장치에도 적용할 수 있다.In addition, the present invention provides image information (bit stream) compressed by orthogonal transform such as discrete cosine transform and motion compensation, such as MPEG, H.26x, and the like, for example, by satellite broadcasting, cable television, Internet or mobile telephone. The present invention can be applied to a picture coding device and a picture decoding device used when receiving via a network medium. The present invention can also be applied to an image encoding device and an image decoding device used when processing on storage media such as optical, magnetic disks and flash memories. The present invention can also be applied to a motion prediction compensation device included in their picture coding apparatus, picture decoding apparatus and the like.
상술한 일련의 처리는, 하드웨어에 의해 실행할 수도 있고, 소프트웨어에 의해 실행할 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 여기서, 컴퓨터에는, 전용의 하드웨어에 내장되고 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행할 수 있는 범용의 퍼스널 컴퓨터 등이 포함된다.The series of processes described above may be executed by hardware or may be executed by software. When a series of processes are executed by software, the programs constituting the software are installed in the computer. The computer includes a computer built in dedicated hardware, a general-purpose personal computer capable of executing various functions by installing various programs, and the like.
[퍼스널 컴퓨터의 구성예][Configuration example of personal computer]
도 22는, 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도다.Fig. 22 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processes by a program.
컴퓨터에서, CPU(Central Processing Unit)(251), ROM(Read Only Memory)(252), RAM(Random Access Memory)(253)은, 버스(254)에 의해 서로 접속되어 있다.In the computer, a CPU (Central Processing Unit) 251, a ROM (Read Only Memory) 252, and a RAM (Random Access Memory) 253 are connected to each other by a
버스(254)에는, 또한 입출력 인터페이스(255)가 접속되어 있다. 입출력 인터페이스(255)에는, 입력부(256), 출력부(257), 기억부(258), 통신부(259) 및 드라이브(260)가 접속되어 있다.An input /
입력부(256)는, 키보드, 마우스, 마이크로폰 등으로 이루어진다. 출력부(257)는, 디스플레이, 스피커 등으로 이루어진다. 기억부(258)는, 하드 디스크나 불휘발성 메모리 등으로 이루어진다. 통신부(259)는, 네트워크 인터페이스 등으로 이루어진다. 드라이브(260)는, 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등의 리무버블 미디어(261)를 구동한다.The
이상과 같이 구성되는 컴퓨터에서는, CPU(251)가 예를 들어 기억부(258)에 기억되어 있는 프로그램을 입출력 인터페이스(255) 및 버스(254)를 거쳐서 RAM(253)에 로드해서 실행함으로써, 상술한 일련의 처리가 행해진다.In the computer configured as described above, the
컴퓨터(CPU251)가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(261)에 기록해서 제공할 수 있다. 또한, 프로그램은, 근거리 네트워크, 인터넷, 디지털 방송 등의 유선 또는 무선 전송 매체를 거쳐서 제공할 수 있다.The program executed by the computer CPU251 can be recorded and provided to the removable media 261 as, for example, package media. In addition, the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital broadcasting.
컴퓨터에서는 프로그램은, 리무버블 미디어(261)를 드라이브(260)에 장착함으로써, 입출력 인터페이스(255)를 거쳐서, 기억부(258)에 인스톨할 수 있다. 또한, 프로그램은, 유선 또는 무선의 전송 매체를 거쳐서 통신부(259)에서 수신하고, 기억부(258)에 인스톨할 수 있다. 그 외, 프로그램은 ROM(252)이나 기억부(258)에 미리 인스톨해 둘 수 있다.In the computer, the program can be installed in the
또한, 컴퓨터가 실행하는 프로그램은, 본 명세서에서 설명하는 순서를 따라서 시계열로 처리가 행해지는 프로그램이어도 좋고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에 처리가 행해지는 프로그램이어도 좋다.The program executed by the computer may be a program in which the processing is performed in time series in the order described in this specification, or may be a program in which the processing is performed at a necessary timing such as when the call is made in parallel or when a call is made.
본 발명의 실시 형태는, 상술한 실시 형태에 한정되는 것이 아니라, 본 발명의 요지를 일탈하지 않는 범위에서 다양한 변경이 가능하다.Embodiment of this invention is not limited to embodiment mentioned above, A various change is possible in the range which does not deviate from the summary of this invention.
예를 들어, 상술한 화상 부호화 장치(51)나 화상 복호 장치(101)는, 임의의 전자 기기에 적용할 수 있다. 이하에 그 예에 대해서 설명한다.For example, the
[텔레비전 수상기의 구성예][Configuration example of television receiver]
도 23은, 본 발명을 적용한 화상 복호 장치를 사용하는 텔레비전 수상기의 주된 구성예를 도시하는 블록도다.Fig. 23 is a block diagram showing a main configuration example of a television receiver using an image decoding device to which the present invention is applied.
도 23에 도시되는 텔레비전 수상기(300)는, 지상파 튜너(313), 비디오 디코더(315), 영상 신호 처리 회로(318), 그래픽 생성 회로(319), 패널 구동 회로(320) 및 표시 패널(321)을 갖는다.The
지상파 튜너(313)는, 지상 아날로그 방송의 방송파 신호를, 안테나를 거쳐서 수신하고, 복조하여, 영상 신호를 취득하고, 그것을 비디오 디코더(315)에 공급한다. 비디오 디코더(315)는, 지상파 튜너(313)로부터 공급된 영상 신호에 대하여 디코드 처리를 실시하고, 얻어진 디지털의 컴포넌트 신호를 영상 신호 처리 회로(318)에 공급한다.The
영상 신호 처리 회로(318)는, 비디오 디코더(315)로부터 공급된 영상 데이터에 대하여 노이즈 제거 등의 소정의 처리를 실시하고, 얻어진 영상 데이터를 그래픽 생성 회로(319)에 공급한다.The video
그래픽 생성 회로(319)는, 표시 패널(321)에 표시시키는 프로그램의 영상 데이터나, 네트워크를 거쳐서 공급되는 어플리케이션에 기초하는 처리에 의한 화상 데이터 등을 생성하고, 생성한 영상 데이터나 화상 데이터를 패널 구동 회로(320)에 공급한다. 또한, 그래픽 생성 회로(319)는, 항목의 선택 등에 유저에 의해 이용되는 화면을 표시하기 위한 영상 데이터(그래픽)를 생성하고, 그것을 프로그램의 영상 데이터에 중첩하거나 함으로써 얻어진 영상 데이터를 패널 구동 회로(320)에 공급하는 등의 처리도 적절히 행한다.The
패널 구동 회로(320)는, 그래픽 생성 회로(319)로부터 공급된 데이터에 기초하여 표시 패널(321)을 구동하고, 프로그램의 영상이나 상술한 각종 화면을 표시 패널(321)에 표시시킨다.The
표시 패널(321)은 LCD(Liquid Crystal Display) 등으로 이루어지고, 패널 구동 회로(320)에 의한 제어에 따라서 프로그램의 영상 등을 표시시킨다.The
또한, 텔레비전 수상기(300)는, 음성 A/D(Analog/Digital) 변환 회로(314), 음성 신호 처리 회로(322), 에코 캔슬/음성 합성 회로(323), 음성 증폭 회로(324) 및 스피커(325)도 갖는다.In addition, the
지상파 튜너(313)는, 수신한 방송파 신호를 복조함으로써, 영상 신호뿐만 아니라 음성 신호도 취득한다. 지상파 튜너(313)는, 취득한 음성 신호를 음성 A/D 변환 회로(314)에 공급한다.The
음성 A/D 변환 회로(314)는, 지상파 튜너(313)로부터 공급된 음성 신호에 대하여 A/D 변환 처리를 실시하고, 얻어진 디지털의 음성 신호를 음성 신호 처리 회로(322)에 공급한다.The audio A /
음성 신호 처리 회로(322)는, 음성 A/D 변환 회로(314)로부터 공급된 음성 데이터에 대하여 노이즈 제거 등의 소정의 처리를 실시하고, 얻어진 음성 데이터를에코 캔슬/음성 합성 회로(323)에 공급한다.The speech
에코 캔슬/음성 합성 회로(323)는, 음성 신호 처리 회로(322)로부터 공급된 음성 데이터를 음성 증폭 회로(324)에 공급한다.The echo cancellation /
음성 증폭 회로(324)는, 에코 캔슬/음성 합성 회로(323)로부터 공급된 음성 데이터에 대하여 D/A 변환 처리, 증폭 처리를 실시하고, 소정의 음량으로 조정한 후, 음성을 스피커(325)로부터 출력시킨다.The
또한, 텔레비전 수상기(300)는, 디지털 튜너(316) 및 MPEG 디코더(317)도 갖는다.The
디지털 튜너(316)는, 디지털 방송(지상 디지털 방송, BS(Broadcasting Satellite)/CS(Communications Satellite) 디지털 방송)의 방송파 신호를, 안테나를 거쳐서 수신하고, 복조하여, MPEG-TS(Moving Picture Experts Group-Transport Stream)를 취득하여, 그것을 MPEG 디코더(317)에 공급한다.The
MPEG 디코더(317)는, 디지털 튜너(316)로부터 공급된 MPEG-TS에 실시되어 있는 스크램블을 해제하고, 재생 대상(시청 대상)이 되어 있는 프로그램의 데이터를 포함하는 스트림을 추출한다. MPEG 디코더(317)는, 추출한 스트림을 구성하는 음성 패킷을 디코드하여, 얻어진 음성 데이터를 음성 신호 처리 회로(322)에 공급함과 함께, 스트림을 구성하는 영상 패킷을 디코드하여, 얻어진 영상 데이터를 영상 신호 처리 회로(318)에 공급한다. 또한, MPEG 디코더(317)는, MPEG-TS로부터 추출한 EPG(Electronic Program Guide) 데이터를 도시하지 않은 경로를 거쳐서 CPU(332)에 공급한다.The
텔레비전 수상기(300)는, 이렇게 영상 패킷을 디코드하는 MPEG 디코더(317)로서, 상술한 화상 복호 장치(101)를 사용한다. 따라서, MPEG 디코더(317)는, 화상 복호 장치(101)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.The
MPEG 디코더(317)로부터 공급된 영상 데이터는, 비디오 디코더(315)로부터 공급된 영상 데이터의 경우와 마찬가지로, 영상 신호 처리 회로(318)에서 소정의 처리가 실시된다. 그리고, 소정의 처리가 실시된 영상 데이터는, 그래픽 생성 회로(319)에서, 생성된 영상 데이터 등이 적절히 중첩되어, 패널 구동 회로(320)를 거쳐서 표시 패널(321)에 공급되어, 그 화상이 표시된다.As for the video data supplied from the
MPEG 디코더(317)로부터 공급된 음성 데이터는, 음성 A/D 변환 회로(314)로부터 공급된 음성 데이터의 경우와 마찬가지로, 음성 신호 처리 회로(322)에서 소정의 처리가 실시된다. 그리고, 소정의 처리가 실시된 음성 데이터는, 에코 캔슬/음성 합성 회로(323)를 거쳐서 음성 증폭 회로(324)에 공급되어, D/A 변환 처리나 증폭 처리가 실시된다. 그 결과, 소정의 음량으로 조정된 음성이 스피커(325)로부터 출력된다.The audio signal supplied from the
또한, 텔레비전 수상기(300)는, 마이크로폰(326) 및 A/D 변환 회로(327)도 갖는다.The
A/D 변환 회로(327)는, 음성 회화용인 것으로서 텔레비전 수상기(300)에 설치되는 마이크로폰(326)에 의해 도입된 유저의 음성 신호를 수신한다. A/D 변환 회로(327)는 수신한 음성 신호에 대하여 A/D 변환 처리를 실시하여, 얻어진 디지털의 음성 데이터를 에코 캔슬/음성 합성 회로(323)에 공급한다.The A /
에코 캔슬/음성 합성 회로(323)는, 텔레비전 수상기(300)의 유저(유저 A)의 음성 데이터가 A/D 변환 회로(327)로부터 공급되고 있는 경우, 유저 A의 음성 데이터를 대상으로 해서 에코 캔슬을 행한다. 그리고, 에코 캔슬/음성 합성 회로(323)는, 에코 캔슬 후, 다른 음성 데이터와 합성하거나 하여 얻어진 음성 데이터를, 음성 증폭 회로(324)를 거쳐서 스피커(325)로부터 출력시킨다.The echo cancellation /
또한, 텔레비전 수상기(300)는, 음성 코덱(328), 내부 버스(329), SDRAM(Synchronous Dynamic Random Access Memory)(330), 플래시 메모리(331), CPU(332), USB(Universal Serial Bus) I/F(333) 및 네트워크 I/F(334)도 갖는다.In addition, the
A/D 변환 회로(327)는, 음성 회화용인 것으로서 텔레비전 수상기(300)에 설치되는 마이크로폰(326)에 의해 도입된 유저의 음성 신호를 수신한다. A/D 변환 회로(327)는, 수신한 음성 신호에 대하여 A/D 변환 처리를 실시하여, 얻어진 디지털 음성 데이터를 음성 코덱(328)에 공급한다.The A /
음성 코덱(328)은, A/D 변환 회로(327)로부터 공급된 음성 데이터를, 네트워크 경유로 송신하기 위한 소정의 포맷 데이터로 변환하고, 내부 버스(329)를 거쳐서 네트워크 I/F(334)에 공급한다.The
네트워크 I/F(334)는, 네트워크 단자(335)에 장착된 케이블을 거쳐서 네트워크에 접속된다. 네트워크 I/F(334)는, 예를 들어 그 네트워크에 접속되는 다른 장치에 대하여, 음성 코덱(328)으로부터 공급된 음성 데이터를 송신한다. 또한, 네트워크 I/F(334)는, 예를 들어 네트워크를 거쳐서 접속되는 다른 장치로부터 송신되는 음성 데이터를, 네트워크 단자(335)를 거쳐서 수신하고, 그것을, 내부 버스(329)를 거쳐서 음성 코덱(328)에 공급한다.The network I /
음성 코덱(328)은, 네트워크 I/F(334)로부터 공급된 음성 데이터를 소정의 포맷 데이터로 변환하고, 그것을 에코 캔슬/음성 합성 회로(323)에 공급한다.The
에코 캔슬/음성 합성 회로(323)는, 음성 코덱(328)으로부터 공급되는 음성 데이터를 대상으로 해서 에코 캔슬을 행하고, 다른 음성 데이터와 합성하거나 하여 얻어진 음성 데이터를, 음성 증폭 회로(324)를 거쳐서 스피커(325)로부터 출력시킨다.The echo cancellation /
SDRAM(330)은, CPU(332)가 처리를 행하는 데 있어서 필요한 각종 데이터를 기억한다.The
플래시 메모리(331)는, CPU(332)에 의해 실행되는 프로그램을 기억한다. 플래시 메모리(331)에 기억되어 있는 프로그램은, 텔레비전 수상기(300)의 기동시 등의 소정의 타이밍에 CPU(332)에 의해 판독된다. 플래시 메모리(331)에는, 디지털 방송을 거쳐서 취득된 EPG 데이터, 네트워크를 거쳐서 소정의 서버로부터 취득된 데이터 등도 기억된다.The
예를 들어, 플래시 메모리(331)에는, CPU(332)의 제어에 의해 네트워크를 거쳐서 소정의 서버로부터 취득된 콘텐츠 데이터를 포함하는 MPEG-TS가 기억된다. 플래시 메모리(331)는, 예를 들어 CPU(332)의 제어에 의해, 그 MPEG-TS를, 내부 버스(329)를 거쳐서 MPEG 디코더(317)에 공급한다.For example, in the
MPEG 디코더(317)는, 디지털 튜너(316)로부터 공급된 MPEG-TS의 경우와 마찬가지로, 그 MPEG-TS를 처리한다. 이렇게 텔레비전 수상기(300)는, 영상이나 음성 등으로 이루어지는 콘텐츠 데이터를, 네트워크를 거쳐서 수신하고, MPEG 디코더(317)를 사용해서 디코드하여, 그 영상을 표시시키거나, 음성을 출력시키거나 할 수 있다.The
또한, 텔레비전 수상기(300)는, 리모트 컨트롤러(351)로부터 송신되는 적외선 신호를 수광하는 수광부(337)도 갖는다.The
수광부(337)는, 리모트 컨트롤러(351)로부터의 적외선을 수광하고, 복조해서 얻어진 유저 조작의 내용을 나타내는 제어 코드를 CPU(332)에 출력한다.The
CPU(332)는, 플래시 메모리(331)에 기억되어 있는 프로그램을 실행하고, 수광부(337)로부터 공급되는 제어 코드 등에 따라 텔레비전 수상기(300) 전체의 동작을 제어한다. CPU(332)와 텔레비전 수상기(300)의 각 부는, 도시하지 않은 경로를 거쳐서 접속되어 있다.The
USB I/F(333)는, USB 단자(336)에 장착된 USB 케이블을 거쳐서 접속되는, 텔레비전 수상기(300)의 외부 기기 사이에서 데이터의 송수신을 행한다. 네트워크 I/F(334)는, 네트워크 단자(335)에 장착된 케이블을 거쳐서 네트워크에 접속하고, 네트워크에 접속되는 각종 장치와 음성 데이터 이외의 데이터의 송수신도 행한다.The USB I /
텔레비전 수상기(300)는, MPEG 디코더(317)로서 화상 복호 장치(101)를 사용함으로써, 부호화 효율을 향상할 수 있다. 그 결과로서, 텔레비전 수상기(300)는, 안테나를 거쳐서 수신한 방송파 신호나, 네트워크를 거쳐서 취득한 콘텐츠 데이터로부터, 보다 고정밀의 복호 화상을 얻어, 표시할 수 있다.The
[휴대 전화기의 구성예][Configuration example of cellular phone]
도 24는, 본 발명을 적용한 화상 부호화 장치 및 화상 복호 장치를 사용하는 휴대 전화기의 주된 구성예를 도시하는 블록도다.24 is a block diagram showing an example of a main configuration of a mobile telephone using the picture coding apparatus and the picture decoding apparatus to which the present invention is applied.
도 24에 도시된 휴대 전화기(400)는, 각 부를 통괄적으로 제어하도록 이루어진 주제어부(450), 전원 회로부(451), 조작 입력 제어부(452), 화상 인코더(453), 카메라 I/F부(454), LCD 제어부(455), 화상 디코더(456), 다중 분리부(457), 기록 재생부(462), 변복조 회로부(458) 및 음성 코덱(459)을 갖는다. 이들은, 버스(460)를 거쳐서 서로 접속되어 있다.The
또한, 휴대 전화기(400)는, 조작 키(419), CCD(Charge Coupled Devices) 카메라(416), 액정 디스플레이(418), 기억부(423), 송수신 회로부(463), 안테나(414), 마이크로폰(마이크)(421) 및 스피커(417)를 갖는다.The
전원 회로부(451)는, 유저의 조작에 의해 종화 및 전원 키가 온 상태가 되면, 배터리 팩으로부터 각 부에 대하여 전력을 공급함으로써 휴대 전화기(400)를 동작 가능한 상태로 기동한다.The power
휴대 전화기(400)는, CPU, ROM 및 RAM 등으로 이루어진 주제어부(450)의 제어에 기초하여, 음성 통화 모드나 데이터 통신 모드 등의 각종 모드에서, 음성 신호의 송수신, 전자 메일이나 화상 데이터의 송수신, 화상 촬영 또는 데이터 기록 등의 각종 동작을 행한다.The
예를 들어, 음성 통화 모드에서, 휴대 전화기(400)는, 마이크로폰(마이크)(421)으로 집음한 음성 신호를, 음성 코덱(459)에 의해 디지털 음성 데이터로 변환하여, 이것을 변복조 회로부(458)에서 스펙트럼 확산 처리하고, 송수신 회로부(463)에서 디지털/아날로그 변환 처리 및 주파수 변환 처리한다. 휴대 전화기(400)는, 그 변환 처리에 의해 얻어진 송신용 신호를, 안테나(414)를 거쳐서 도시하지 않은 기지국에 송신한다. 기지국에 전송된 송신용 신호(음성 신호)는, 공중 전화 회선망을 거쳐서 통화 상대의 휴대 전화기에 공급된다.For example, in the voice call mode, the
또한, 예를 들어 음성 통화 모드에서, 휴대 전화기(400)는, 안테나(414)에서 수신한 수신 신호를 송수신 회로부(463)에서 증폭하고, 또한 주파수 변환 처리 및 아날로그/디지털 변환 처리하여, 변복조 회로부(458)에서 스펙트럼 역확산 처리하고, 음성 코덱(459)에 의해 아날로그 음성 신호로 변환한다. 휴대 전화기(400)는 그 변환하여 얻어진 아날로그 음성 신호를 스피커(417)로부터 출력한다.For example, in the voice call mode, the
또한, 예를 들어 데이터 통신 모드에서 전자 메일을 송신하는 경우, 휴대 전화기(400)는, 조작 키(419)의 조작에 의해 입력된 전자 메일의 텍스트 데이터를, 조작 입력 제어부(452)에서 접수한다. 휴대 전화기(400)는, 그 텍스트 데이터를 주제어부(450)에서 처리하고, LCD 제어부(455)를 거쳐서, 화상으로서 액정 디스플레이(418)에 표시시킨다.For example, when sending an e-mail in the data communication mode, the
또한, 휴대 전화기(400)는, 주제어부(450)에서, 조작 입력 제어부(452)가 접수한 텍스트 데이터나 유저 지시 등에 기초하여 전자 메일 데이터를 생성한다. 휴대 전화기(400)는, 그 전자 메일 데이터를, 변복조 회로부(458)에서 스펙트럼 확산 처리하고, 송수신 회로부(463)에서 디지털/아날로그 변환 처리 및 주파수 변환 처리한다. 휴대 전화기(400)는, 그 변환 처리에 의해 얻어진 송신용 신호를, 안테나(414)를 거쳐서 도시하지 않은 기지국에 송신한다. 기지국에 전송된 송신용 신호(전자 메일)는, 네트워크 및 메일 서버 등을 거쳐서, 소정의 수신처에 공급된다.In addition, the
또한, 예를 들어 데이터 통신 모드에서 전자 메일을 수신할 경우, 휴대 전화기(400)는, 기지국으로부터 송신된 신호를 안테나(414)를 거쳐서 송수신 회로부(463)에서 수신하여, 증폭하고, 또한 주파수 변환 처리 및 아날로그/디지털 변환 처리한다. 휴대 전화기(400)는, 그 수신 신호를 변복조 회로부(458)에서 스펙트럼 역확산 처리해서 원래의 전자 메일 데이터를 복원한다. 휴대 전화기(400)는, 복원된 전자 메일 데이터를, LCD 제어부(455)을 거쳐서 액정 디스플레이(418)에 표시한다.For example, when receiving an e-mail in the data communication mode, the
또한, 휴대 전화기(400)는, 수신한 전자 메일 데이터를, 기록 재생부(462)를 거쳐서 기억부(423)에 기록하는(기억시키는) 것도 가능하다.The
이 기억부(423)는, 재기입 가능한 임의의 기억 매체다. 기억부(423)는, 예를 들어 RAM이나 내장형 플래시 메모리 등의 반도체 메모리이어도 좋고, 하드 디스크이어도 좋고, 자기 디스크, 광자기 디스크, 광 디스크, USB 메모리 또는 메모리 카드 등의 리무버블 미디어이어도 좋다. 물론, 이들 이외의 것이어도 좋다.This
또한, 예를 들어 데이터 통신 모드에서 화상 데이터를 송신하는 경우, 휴대 전화기(400)는, 촬상에 의해 CCD 카메라(416)에서 화상 데이터를 생성한다. CCD 카메라(416)는, 렌즈나 조리개(교축 밸브) 등의 광학 디바이스와 광전 변환 소자로서의 CCD를 갖고, 피사체를 촬상하고 수광한 광의 강도를 전기 신호로 변환하여, 피사체 화상의 화상 데이터를 생성한다. 그 화상 데이터를, 카메라 I/F부(454)를 거쳐서, 화상 인코더(453)에서, 예를 들어 MPEG2나 MPEG4 등의 소정의 부호화 방식에 의해 압축 부호화함으로써 부호화 화상 데이터로 변환한다.For example, when transmitting image data in a data communication mode, the
휴대 전화기(400)는, 이러한 처리를 행하는 화상 인코더(453)로서, 상술한 화상 부호화 장치(51)를 사용한다. 따라서, 화상 인코더(453)는, 화상 부호화 장치(51)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.The
또한, 휴대 전화기(400)는, 이때 동시에, CCD 카메라(416)로 촬상 중에 마이크로폰(마이크)(421)으로 집음한 음성을, 음성 코덱(459)에서 아날로그/디지털 변환하고, 또한 부호화한다.At this time, the
휴대 전화기(400)는, 다중 분리부(457)에서, 화상 인코더(453)로부터 공급된 부호화 화상 데이터와, 음성 코덱(459)으로부터 공급된 디지털 음성 데이터를, 소정의 방식으로 다중화한다. 휴대 전화기(400)는, 그 결과 얻어지는 다중화 데이터를, 변복조 회로부(458)에서 스펙트럼 확산 처리하고, 송수신 회로부(463)에서 디지털/아날로그 변환 처리 및 주파수 변환 처리한다. 휴대 전화기(400)는, 그 변환 처리에 의해 얻어진 송신용 신호를, 안테나(414)를 거쳐서 도시하지 않은 기지국에 송신한다. 기지국에 전송된 송신용 신호(화상 데이터)는, 네트워크 등을 거쳐서 통신 상대에게 공급된다.The
또한, 화상 데이터를 송신하지 않는 경우, 휴대 전화기(400)는, CCD 카메라(416)에서 생성한 화상 데이터를, 화상 인코더(453)를 거치지 않고, LCD 제어부(455)를 거쳐서 액정 디스플레이(418)에 표시시킬 수도 있다.When the image data is not transmitted, the
또한, 예를 들어 데이터 통신 모드에서, 간이 홈 페이지 등에 링크된 동화상 파일의 데이터를 수신할 경우, 휴대 전화기(400)는, 기지국으로부터 송신된 신호를, 안테나(414)를 거쳐서 송수신 회로부(463)에서 수신하여, 증폭하고, 또한 주파수 변환 처리 및 아날로그/디지털 변환 처리한다. 휴대 전화기(400)는, 그 수신 신호를 변복조 회로부(458)에서 스펙트럼 역확산 처리해서 원래의 다중화 데이터를 복원한다. 휴대 전화기(400)는, 다중 분리부(457)에서, 그 다중화 데이터를 분리하고, 부호화 화상 데이터와 음성 데이터로 나눈다.For example, in the data communication mode, when receiving data of a moving picture file linked to a simple home page or the like, the
휴대 전화기(400)는, 화상 디코더(456)에서, 부호화 화상 데이터를, MPEG2이나 MPEG4 등의 소정의 부호화 방식에 대응한 복호 방식으로 디코드함으로써, 재생 동화상 데이터를 생성하고, 이것을 LCD 제어부(455)를 거쳐서 액정 디스플레이(418)에 표시시킨다. 이에 의해, 예를 들어 간이 홈페이지에 링크된 동화상 파일에 포함되는 동화상 데이터가 액정 디스플레이(418)에 표시된다.The
휴대 전화기(400)는, 이러한 처리를 행하는 화상 디코더(456)로서, 상술한 화상 복호 장치(101)를 사용한다. 따라서, 화상 디코더(456)는, 화상 복호 장치(101)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.The
이때, 휴대 전화기(400)는, 동시에 음성 코덱(459)에서 디지털 음성 데이터를 아날로그 음성 신호로 변환하고, 이것을 스피커(417)로부터 출력시킨다. 이에 의해, 예를 들어 간이 홈페이지에 링크된 동화상 파일에 포함되는 음성 데이터가 재생된다.At this time, the
또한, 전자 메일의 경우와 마찬가지로, 휴대 전화기(400)는, 수신한 간이 홈페이지 등에 링크된 데이터를, 기록 재생부(462)를 거쳐서, 기억부(423)에 기록하는(기억시키는) 것도 가능하다.In addition, similarly to the case of the e-mail, the
또한, 휴대 전화기(400)는, 주제어부(450)에서, 촬상되어서 CCD 카메라(416)에서 얻어진 2차원 코드를 해석하여, 2차원 코드에 기록된 정보를 취득할 수 있다.In addition, the
또한, 휴대 전화기(400)는, 적외선 통신부(481)에서 적외선에 의해 외부 기기와 통신할 수 있다.In addition, the
휴대 전화기(400)는, 화상 인코더(453)로서 화상 부호화 장치(51)를 사용함으로써, 예측 정밀도가 개선된다. 결과적으로 휴대 전화기(400)는, 부호화 효율이 좋은 부호화 데이터(화상 데이터)를, 다른 장치에 제공할 수 있다.The
또한, 휴대 전화기(400)는, 화상 디코더(456)로서 화상 복호 장치(101)를 사용함으로써, 예측 정밀도가 개선된다. 그 결과로서, 휴대 전화기(400)는, 예를 들어 간이 홈페이지에 링크된 동화상 파일로부터, 보다 고정밀의 복호 화상을 얻어서, 표시할 수 있다.In addition, the
또한, 이상에서, 휴대 전화기(400)가 CCD 카메라(416)를 사용하도록 설명했지만, 이 CCD 카메라(416) 대신에 CMOS(Complementary Metal Oxide Semiconductor)를 사용한 이미지 센서(CMOS 이미지 센서)를 사용하도록 해도 좋다. 이 경우도, 휴대 전화기(400)는, CCD 카메라(416)를 사용하는 경우와 마찬가지로, 피사체를 촬상하여, 피사체 화상의 화상 데이터를 생성할 수 있다.In addition, in the above, although the
또한, 이상에서는 휴대 전화기(400)로서 설명했지만, 예를 들어PDA(Personal Digital Assistants), 스마트 폰, UMPC(Ultra Mobile Personal Computer), 넷북, 노트북형 퍼스널 컴퓨터 등, 이 휴대 전화기(400)와 마찬가지의 촬상 기능이나 통신 기능을 갖는 장치이면, 어떤 장치이어도 휴대 전화기(400)의 경우와 마찬가지로, 화상 부호화 장치(51) 및 화상 복호 장치(101)를 적용할 수 있다.In addition, although it demonstrated above as the
[하드 디스크 레코더의 구성예][Configuration example of the hard disk recorder]
도 25는, 본 발명을 적용한 화상 부호화 장치 및 화상 복호 장치를 사용하는 하드 디스크 레코더의 주된 구성예를 도시하는 블록도다.Fig. 25 is a block diagram showing a main configuration example of a hard disk recorder using the picture coding apparatus and the picture decoding apparatus to which the present invention is applied.
도 25에 도시하는 하드 디스크 레코더(HDD 레코더)(500)는, 튜너에 의해 수신된, 위성이나 지상의 안테나 등으로부터 송신되는 방송파 신호(텔레비전 신호)에 포함되는 방송 프로그램의 오디오 데이터와 비디오 데이터를, 내장하는 하드 디스크에 보존하고, 그 보존한 데이터를 유저의 지시에 따른 타이밍에 유저에게 제공하는 장치다.The hard disk recorder (HDD recorder) 500 shown in FIG. 25 includes audio data and video data of a broadcast program included in a broadcast wave signal (television signal) transmitted from a satellite, a terrestrial antenna, or the like received by a tuner. Is stored in a built-in hard disk, and the stored data is provided to the user at the timing according to the user's instruction.
하드 디스크 레코더(500)는, 예를 들어 방송파 신호로부터 오디오 데이터와 비디오 데이터를 추출하고, 그것들을 적절히 복호하여, 내장하는 하드 디스크에 기억시킬 수 있다. 또한, 하드 디스크 레코더(500)는, 예를 들어 네트워크를 거쳐서 다른 장치로부터 오디오 데이터나 비디오 데이터를 취득하고, 그것들을 적절히 복호하여, 내장하는 하드 디스크에 기억시킬 수도 있다.The
또한, 하드 디스크 레코더(500)는, 예를 들어 내장하는 하드 디스크에 기록되어 있는 오디오 데이터나 비디오 데이터를 복호해서 모니터(560)에 공급하고, 모니터(560)의 화면에 그 화상을 표시시킨다. 또한, 하드 디스크 레코더(500)는, 모니터(560)의 스피커로부터 그 음성을 출력시킬 수 있다.The
하드 디스크 레코더(500)는, 예를 들어 튜너를 거쳐서 취득된 방송파 신호로부터 추출된 오디오 데이터와 비디오 데이터 또는, 네트워크를 거쳐서 다른 장치로부터 취득한 오디오 데이터나 비디오 데이터를 복호해서 모니터(560)에 공급하고, 모니터(560)의 화면에 그 화상을 표시시킨다. 또한, 하드 디스크 레코더(500)는, 모니터(560)의 스피커로부터 그 음성을 출력시킬 수도 있다.The
물론, 그 밖의 동작도 가능하다.Of course, other operations are also possible.
도 25에 도시된 바와 같이, 하드 디스크 레코더(500)는, 수신부(521), 복조부(522), 디멀티플렉서(523), 오디오 디코더(524), 비디오 디코더(525) 및 레코더 제어부(526)를 갖는다. 하드 디스크 레코더(500)는, 또한 EPG 데이터 메모리(527), 프로그램 메모리(528), 워크 메모리(529), 디스플레이 컨버터(530), OSD(On Screen Display) 제어부(531), 디스플레이 제어부(532), 기록 재생부(533), D/A 컨버터(534) 및 통신부(535)를 갖는다.As shown in FIG. 25, the
또한, 디스플레이 컨버터(530)는, 비디오 인코더(541)를 갖는다. 기록 재생부(533)는, 인코더(551) 및 디코더(552)를 갖는다.The
수신부(521)는, 리모트 컨트롤러(도시하지 않음)로부터의 적외선 신호를 수신하고, 전기 신호로 변환하여 레코더 제어부(526)에 출력한다. 레코더 제어부(526)는, 예를 들어 마이크로프로세서 등에 의해 구성되어, 프로그램 메모리(528)에 기억되어 있는 프로그램에 따라, 각종 처리를 실행한다. 레코더 제어부(526)는, 이때, 워크 메모리(529)를 필요에 따라서 사용한다.The receiving
통신부(535)는, 네트워크에 접속되고, 네트워크를 거쳐서 다른 장치와의 통신 처리를 행한다. 예를 들어, 통신부(535)는, 레코더 제어부(526)에 의해 제어되고, 튜너(도시하지 않음)와 통신하며, 주로 튜너에 대하여 선국 제어 신호를 출력한다.The
복조부(522)는, 튜너로부터 공급된 신호를 복조하여 디멀티플렉서(523)에 출력한다. 디멀티플렉서(523)는, 복조부(522)로부터 공급된 데이터를, 오디오 데이터, 비디오 데이터 및 EPG 데이터로 분리하고, 각각, 오디오 디코더(524), 비디오 디코더(525) 또는 레코더 제어부(526)에 출력한다.The
오디오 디코더(524)는, 입력된 오디오 데이터를, 예를 들어 MPEG 방식으로 디코드하여, 기록 재생부(533)에 출력한다. 비디오 디코더(525)는, 입력된 비디오 데이터를, 예를 들어 MPEG 방식으로 디코드하여, 디스플레이 컨버터(530)에 출력한다. 레코더 제어부(526)는, 입력된 EPG 데이터를 EPG 데이터 메모리(527)에 공급하여, 기억시킨다.The
디스플레이 컨버터(530)는, 비디오 디코더(525) 또는 레코더 제어부(526)로부터 공급된 비디오 데이터를, 비디오 인코더(541)에 의해, 예를 들어 NTSC(National Television Standards Committee) 방식의 비디오 데이터로 인코드하여, 기록 재생부(533)에 출력한다. 또한, 디스플레이 컨버터(530)는, 비디오 디코더(525) 또는 레코더 제어부(526)로부터 공급되는 비디오 데이터의 화면 크기를, 모니터(560)의 크기에 대응하는 크기로 변환한다. 디스플레이 컨버터(530)는, 화면의 크기가 변환된 비디오 데이터를, 또한 비디오 인코더(541)에 의해 NTSC 방식의 비디오 데이터로 변환하고, 아날로그 신호로 변환하여, 디스플레이 제어부(532)에 출력한다.The
디스플레이 제어부(532)는, 레코더 제어부(526)의 제어 하, OSD(On Screen Display) 제어부(531)가 출력한 OSD 신호를, 디스플레이 컨버터(530)로부터 입력된 비디오 신호에 중첩하고, 모니터(560)의 디스플레이에 출력하여, 표시시킨다.The
모니터(560)에는 또한, 오디오 디코더(524)가 출력한 오디오 데이터가, D/A 컨버터(534)에 의해 아날로그 신호로 변환되어서 공급되어 있다. 모니터(560)는, 이 오디오 신호를 내장하는 스피커로부터 출력한다.The audio data output from the
기록 재생부(533)는, 비디오 데이터나 오디오 데이터 등을 기록하는 기억 매체로서 하드 디스크를 갖는다.The recording and
기록 재생부(533)는, 예를 들어 오디오 디코더(524)로부터 공급되는 오디오 데이터를, 인코더(551)에 의해 MPEG 방식으로 인코드한다. 또한, 기록 재생부(533)는, 디스플레이 컨버터(530)의 비디오 인코더(541)로부터 공급되는 비디오 데이터를, 인코더(551)에 의해 MPEG 방식으로 인코드한다. 기록 재생부(533)는, 그 오디오 데이터의 부호화 데이터와 비디오 데이터의 부호화 데이터를 멀티플렉서에 의해 합성한다. 기록 재생부(533)는, 그 합성 데이터를 채널 코딩해서 증폭하고, 그 데이터를, 기록 헤드를 거쳐서 하드 디스크에 기입한다.The recording / reproducing
기록 재생부(533)는, 재생 헤드를 거쳐서 하드 디스크에 기록되어 있는 데이터를 재생하고, 증폭하여, 디멀티플렉서에 의해 오디오 데이터와 비디오 데이터로 분리한다. 기록 재생부(533)는, 디코더(552)에 의해 오디오 데이터 및 비디오 데이터를 MPEG 방식으로 디코드한다. 기록 재생부(533)는, 복호한 오디오 데이터를 D/A 변환하고, 모니터(560)의 스피커에 출력한다. 또한, 기록 재생부(533)는, 복호한 비디오 데이터를 D/A 변환하고, 모니터(560)의 디스플레이에 출력한다.The recording / reproducing
레코더 제어부(526)는, 수신부(521)를 거쳐서 수신되는 리모트 컨트롤러로부터의 적외선 신호에 의해 나타나는 유저 지시에 기초하여, EPG 데이터 메모리(527)로부터 최신 EPG 데이터를 판독하고, 그것을 OSD 제어부(531)에 공급한다. OSD 제어부(531)는, 입력된 EPG 데이터에 대응하는 화상 데이터를 발생하고, 디스플레이 제어부(532)에 출력한다. 디스플레이 제어부(532)는, OSD 제어부(531)로부터 입력된 비디오 데이터를 모니터(560)의 디스플레이에 출력하고, 표시시킨다. 이에 의해, 모니터(560)의 디스플레이에는, EPG(전자 프로그램 가이드)가 표시된다.The
또한, 하드 디스크 레코더(500)는, 인터넷 등의 네트워크를 거쳐서 다른 장치로부터 공급되는 비디오 데이터, 오디오 데이터 또는 EPG 데이터 등의 각종 데이터를 취득할 수 있다.In addition, the
통신부(535)는, 레코더 제어부(526)에 제어되고, 네트워크를 거쳐서 다른 장치로부터 송신되는 비디오 데이터, 오디오 데이터 및 EPG 데이터 등의 부호화 데이터를 취득하여, 그것을 레코더 제어부(526)에 공급한다. 레코더 제어부(526)는, 예를 들어 취득한 비디오 데이터나 오디오 데이터의 부호화 데이터를 기록 재생부(533)에 공급하고, 하드 디스크에 기억시킨다. 이때, 레코더 제어부(526) 및 기록 재생부(533)가, 필요에 따라 재인코드 등의 처리를 행하도록 해도 좋다.The
또한, 레코더 제어부(526)는, 취득한 비디오 데이터나 오디오 데이터의 부호화 데이터를 복호하여, 얻어지는 비디오 데이터를 디스플레이 컨버터(530)에 공급한다. 디스플레이 컨버터(530)는, 비디오 디코더(525)로부터 공급되는 비디오 데이터와 마찬가지로, 레코더 제어부(526)로부터 공급되는 비디오 데이터를 처리하고, 디스플레이 제어부(532)를 거쳐서 모니터(560)에 공급하여, 그 화상을 표시시킨다.The
또한, 이 화상 표시에 맞추어, 레코더 제어부(526)가, 복호한 오디오 데이터를, D/A 컨버터(534)를 거쳐서 모니터(560)에 공급하고, 그 음성을 스피커로부터 출력시키도록 해도 좋다.In addition, in accordance with this image display, the
또한, 레코더 제어부(526)는, 취득한 EPG 데이터의 부호화 데이터를 복호하고, 복호한 EPG 데이터를 EPG 데이터 메모리(527)에 공급한다.The
이상과 같은 하드 디스크 레코더(500)는, 비디오 디코더(525), 디코더(552) 및 레코더 제어부(526)에 내장되는 디코더로서 화상 복호 장치(101)를 사용한다. 따라서, 비디오 디코더(525), 디코더(552) 및 레코더 제어부(526)에 내장되는 디코더는, 화상 복호 장치(101)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.The
따라서, 하드 디스크 레코더(500)는, 정밀도가 높은 예측 화상을 생성할 수 있다. 그 결과로서, 하드 디스크 레코더(500)는, 예를 들어 튜너를 거쳐서 수신된 비디오 데이터의 부호화 데이터나, 기록 재생부(533)의 하드 디스크로부터 판독된 비디오 데이터의 부호화 데이터나, 네트워크를 거쳐서 취득한 비디오 데이터의 부호화 데이터로부터, 보다 고정밀의 복호 화상을 얻어서, 모니터(560)에 표시시킬 수 있다.Therefore, the
또한, 하드 디스크 레코더(500)는, 인코더(551)로서 화상 부호화 장치(51)를 사용한다. 따라서, 인코더(551)는, 화상 부호화 장치(51)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.In addition, the
따라서, 하드 디스크 레코더(500)는, 예를 들어 하드 디스크에 기록하는 부호화 데이터의 부호화 효율을 향상시킬 수 있다. 그 결과로서, 하드 디스크 레코더(500)는, 보다 고속으로, 하드 디스크의 기억 영역을 보다 효율적으로 사용할 수 있다.Therefore, the
또한, 이상에서는, 비디오 데이터나 오디오 데이터를 하드 디스크에 기록하는 하드 디스크 레코더(500)에 대해서 설명했지만, 물론, 기록 매체는 어떤 것이어도 좋다. 예를 들어 플래시 메모리, 광 디스크 또는 비디오 테이프 등, 하드 디스크 이외의 기록 매체를 적용하는 레코더라도, 상술한 하드 디스크 레코더(500)의 경우와 마찬가지로, 화상 부호화 장치(51) 및 화상 복호 장치(101)를 적용할 수 있다.In addition, although the
[카메라의 구성예][Configuration example of the camera]
도 26은, 본 발명을 적용한 화상 복호 장치 및 화상 부호화 장치를 사용하는 카메라의 주된 구성예를 도시하는 블록도다.Fig. 26 is a block diagram showing a main configuration example of a camera using the image decoding device and image coding device to which the present invention is applied.
도 26에 도시되는 카메라(600)는, 피사체를 촬상하여, 피사체의 화상을 LCD(616)에 표시시키거나, 그것을 화상 데이터로써, 기록 미디어(633)에 기록하기도 한다.The
렌즈 블록(611)은, 광(즉, 피사체의 영상)을, CCD/CMOS(612)에 입사시킨다. CCD/CMOS(612)는, CCD 또는 CMOS를 사용한 이미지 센서이며, 수광한 광의 강도를 전기 신호로 변환하여, 카메라 신호 처리부(613)에 공급한다.The
카메라 신호 처리부(613)는, CCD/CMOS(612)로부터 공급된 전기 신호를, Y, Cr, Cb의 색차 신호로 변환하여, 화상 신호 처리부(614)에 공급한다. 화상 신호 처리부(614)는, 컨트롤러(621)의 제어 하, 카메라 신호 처리부(613)로부터 공급된 화상 신호에 대하여 소정의 화상 처리를 실시하거나, 그 화상 신호를 인코더(641)로, 예를 들어 MPEG 방식에 의해 부호화하거나 한다. 화상 신호 처리부(614)는, 화상 신호를 부호화해서 생성한 부호화 데이터를, 디코더(615)에 공급한다. 또한, 화상 신호 처리부(614)는, 온 스크린 디스플레이(OSD)(620)에서 생성된 표시용 데이터를 취득하고, 그것을 디코더(615)에 공급한다.The camera
이상의 처리에서, 카메라 신호 처리부(613)는, 버스(617)를 거쳐서 접속되는 DRAM(Dynamic Random Access Memory)(618)을 적절히 이용하고, 필요에 따라 화상 데이터나, 그 화상 데이터가 부호화된 부호화 데이터 등을 그 DRAM(618)에 유지시킨다.In the above process, the camera
디코더(615)는, 화상 신호 처리부(614)로부터 공급된 부호화 데이터를 복호하고, 얻어진 화상 데이터(복호 화상 데이터)를 LCD(616)에 공급한다. 또한, 디코더(615)는, 화상 신호 처리부(614)로부터 공급된 표시용 데이터를 LCD(616)에 공급한다. LCD(616)는, 디코더(615)로부터 공급된 복호 화상 데이터의 화상과 표시용 데이터의 화상을 적절히 합성하여, 그 합성 화상을 표시한다.The
온 스크린 디스플레이(620)는, 컨트롤러(621)의 제어 하, 기호, 문자 또는 도형으로 이루어지는 메뉴 화면이나 아이콘 등의 표시용 데이터를, 버스(617)를 거쳐서 화상 신호 처리부(614)에 출력한다.The on-
컨트롤러(621)는, 유저가 조작부(622)를 사용해서 명령한 내용을 나타내는 신호에 기초하여, 각종 처리를 실행함과 함께, 버스(617)를 거쳐서, 화상 신호 처리부(614), DRAM(618), 외부 인터페이스(619), 온 스크린 디스플레이(620) 및 미디어 드라이브(623) 등을 제어한다. FLASH ROM(624)에는, 컨트롤러(621)가 각종 처리를 실행하는 데 있어서 필요한 프로그램이나 데이터 등이 저장된다.The
예를 들어, 컨트롤러(621)는, 화상 신호 처리부(614)나 디코더(615)를 대신하여, DRAM(618)에 기억되어 있는 화상 데이터를 부호화하거나, DRAM(618)에 기억되어 있는 부호화 데이터를 복호할 수 있다. 이때, 컨트롤러(621)는, 화상 신호 처리부(614)나 디코더(615)의 부호화·복호 방식과 마찬가지 방식에 의해 부호화·복호 처리를 행하도록 해도 좋고, 화상 신호 처리부(614)나 디코더(615)가 대응하지 않는 방식에 의해 부호화·복호 처리를 행하도록 해도 좋다.For example, the
또한, 예를 들어 조작부(622)로부터 화상 인쇄의 개시가 지시된 경우, 컨트롤러(621)는, DRAM(618)으로부터 화상 데이터를 판독하고, 그것을, 버스(617)를 거쳐서 외부 인터페이스(619)에 접속되는 프린터(634)에 공급해서 인쇄시킨다.For example, when the start of image printing is instructed from the
또한, 예를 들어 조작부(622)로부터 화상 기록이 지시된 경우, 컨트롤러(621)는, DRAM(618)으로부터 부호화 데이터를 판독하고, 그것을, 버스(617)를 거쳐서 미디어 드라이브(623)에 장착되는 기록 미디어(633)에 공급해서 기억시킨다.For example, when image recording is instructed from the
기록 미디어(633)는, 예를 들어 자기 디스크, 광자기 디스크, 광 디스크 또는 반도체 메모리 등의, 판독 기입 가능한 임의의 리무버블 미디어다. 기록 미디어(633)는, 물론, 리무버블 미디어로서의 종류도 임의이며, 테이프 디바이스이어도 좋고, 디스크이어도 좋고, 메모리 카드이어도 좋다. 물론, 비접촉 IC 카드 등이어도 좋다.The
또한, 미디어 드라이브(623)와 기록 미디어(633)를 일체화하여, 예를 들어 내장형 하드디스크 드라이브나 SSD(Solid State Drive) 등과 같이, 비가반성의 기억 매체에 의해 구성되도록 해도 좋다.In addition, the media drive 623 and the
외부 인터페이스(619)는, 예를 들어 USB 입출력 단자 등으로 구성되어, 화상의 인쇄를 행하는 경우에, 프린터(634)와 접속된다. 또한, 외부 인터페이스(619)에는, 필요에 따라 드라이브(631)가 접속되고, 자기 디스크, 광 디스크, 혹은 광자기 디스크 등의 리무버블 미디어(632)가 적절히 장착되어, 그것들로부터 판독된 컴퓨터 프로그램이, 필요에 따라 FLASH ROM(624)에 인스톨된다.The external interface 619 is configured with, for example, a USB input / output terminal, and is connected to the
또한, 외부 인터페이스(619)는, LAN이나 인터넷 등의 소정의 네트워크에 접속되는 네트워크 인터페이스를 갖는다. 컨트롤러(621)는, 예를 들어 조작부(622)로부터의 지시에 따라 DRAM(618)으로부터 부호화 데이터를 판독하고, 그것을 외부 인터페이스(619)로부터, 네트워크를 거쳐서 접속되는 다른 장치에 공급시킬 수 있다. 또한, 컨트롤러(621)는, 네트워크를 거쳐서 다른 장치로부터 공급되는 부호화 데이터나 화상 데이터를, 외부 인터페이스(619)를 거쳐서 취득하고, 그것을 DRAM(618)에 유지시키거나, 화상 신호 처리부(614)에 공급할 수도 있다.In addition, the external interface 619 has a network interface connected to a predetermined network such as a LAN or the Internet. The
이상과 같은 카메라(600)는, 디코더(615)로서 화상 복호 장치(101)를 사용한다. 따라서, 디코더(615)는, 화상 복호 장치(101)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.The
따라서, 카메라(600)는, 정밀도가 높은 예측 화상을 생성할 수 있다. 그 결과로서, 카메라(600)는, 예를 들어 CCD/CMOS(612)에서 생성된 화상 데이터나, DRAM(618) 또는 기록 미디어(633)로부터 판독된 비디오 데이터의 부호화 데이터나, 네트워크를 거쳐서 취득한 비디오 데이터의 부호화 데이터로부터, 보다 고정밀의 복호 화상을 얻어, LCD(616)에 표시시킬 수 있다.Therefore, the
또한, 카메라(600)는, 인코더(641)로서 화상 부호화 장치(51)를 사용한다. 따라서, 인코더(641)는, 화상 부호화 장치(51)의 경우와 마찬가지로, B 픽처에서, 특히 화면의 단부 부근의 예측 정밀도를 개선할 수 있다. 이에 의해, 부호화 효율을 개선할 수 있다.In addition, the
따라서, 카메라(600)는, 예를 들어 하드 디스크에 기록하는 부호화 데이터의 부호화 효율을 향상시킬 수 있다. 그 결과로서, 카메라(600)는, 보다 고속으로, DRAM(618)이나 기록 미디어(633)의 기억 영역을 보다 효율적으로 사용할 수 있다.Therefore, the
또한, 컨트롤러(621)가 행하는 복호 처리에 화상 복호 장치(101)의 복호 방법을 적용하도록 해도 좋다. 마찬가지로, 컨트롤러(621)가 행하는 부호화 처리에 화상 부호화 장치(51)의 부호화 방법을 적용하도록 해도 좋다.In addition, the decoding method of the
또한, 카메라(600)가 촬상하는 화상 데이터는 동화상이어도 좋고, 정지 화상이어도 좋다.The image data picked up by the
물론, 화상 부호화 장치(51) 및 화상 복호 장치(101)는, 상술한 장치 이외의 장치나 시스템에도 적용 가능하다.Of course, the
51: 화상 부호화 장치
66: 가역 부호화부
75: 움직임 예측·보상부
81: 보간 필터
82: 보상 처리부
83: 선택부
84: 움직임 벡터 예측부
85: 예측 모드 결정부
91: L0 영역 선택부
92 L1 영역 선택부
93: 연산부
93A, 93B: 승산기
93C: 가산기
94: 화면 단부 판정부
95: 가중치 산출부
101: 화상 복호 장치
112: 가역 복호부
121: 움직임 보상부
131: 보간 필터
132: 보상 처리부
133: 선택부
134: 움직임 벡터 예측부
141: L0 영역 선택부
142: L1 영역 선택부
143: 연산부
143A, 143B: 승산기
143C: 가산기
144: 화면 단부 판정부51: picture coding apparatus
66: reversible encoder
75: motion prediction / compensation unit
81: interpolation filter
82: compensation processing unit
83: selection
84: motion vector predictor
85: prediction mode determiner
91: L0 area selection
92 L1 area selection
93: calculator
93A, 93B: Multipliers
93C: adder
94: screen end determination unit
95: weight calculation unit
101: image decoding device
112: reversible decoder
121: motion compensation unit
131: interpolation filter
132: compensation processing unit
133:
134: motion vector predictor
141: L0 area selection unit
142: L1 region selection section
143: calculator
143A, 143B: Multiplier
143C: adder
144: screen end determination unit
Claims (10)
상기 움직임 예측 보상 수단은, 상기 화상의 블록 참조처가, 상기 복수의 참조 화상에서 화면 내부의 화소인 경우, 그들 화소를 사용하여, 규격으로 정해져 있는 가중치 부여 예측을 행하고,
상기 화상의 블록의 참조처가, 상기 복수의 참조 화상 중 어느 한쪽의 참조 화상에서 화면 외부의 화소이며, 다른 쪽의 참조 화상에서 화면 내부의 화소일 경우, 그들 화소를 사용하여, 상기 가중치 부여 예측을 행하는, 화상 처리 장치.The method of claim 1,
The motion prediction compensation means performs weighted prediction determined by the standard using those pixels when the block reference destinations of the pictures are pixels within a screen in the plurality of reference pictures,
When the reference point of the block of the picture is a pixel outside the screen in one of the plurality of reference pictures, and the pixel inside the screen in the other reference picture, the weighting prediction is performed using those pixels. An image processing apparatus.
상기 화상의 블록 근방의 화소간의 불연속성에 의해 산출되어서, 부호화되어 있는 가중치의 정보를 복호하는 복호 수단을 더 구비하고,
상기 움직임 예측 보상 수단은, 상기 가중치 부여 예측을 행하는 경우, 상기 복호 수단에 의해 복호된 가중치의 정보를 사용하는, 화상 처리 장치.The method of claim 3,
Decoding means calculated by the discontinuity between the pixels in the vicinity of the block of the image, the decoding means for decoding the information of the encoded weight,
And the motion prediction compensation means uses the information of the weight decoded by the decoding means when performing the weighted prediction.
처리 대상의 화상에 의해 참조되는 상이한 복수의 참조 화상을 사용하는 예측에서, 상기 화상의 블록의 참조처가, 상기 복수의 참조 화상에서 화면 외부인지 여부에 따른 가중치 부여 예측을 행하는 스텝을 포함하는, 화상 처리 방법.The motion prediction compensation means of the image processing apparatus,
In the prediction using a plurality of different reference pictures referred to by the image to be processed, the image includes a step of performing weighted prediction according to whether the reference of the block of the picture is outside the screen in the plurality of reference pictures. Treatment method.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2010-007806 | 2010-01-18 | ||
JP2010007806A JP2011147049A (en) | 2010-01-18 | 2010-01-18 | Image processing apparatus and method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20120118463A true KR20120118463A (en) | 2012-10-26 |
Family
ID=44304237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20127017864A KR20120118463A (en) | 2010-01-18 | 2011-01-06 | Image processing device, method, and program |
Country Status (6)
Country | Link |
---|---|
US (1) | US20130003842A1 (en) |
JP (1) | JP2011147049A (en) |
KR (1) | KR20120118463A (en) |
CN (1) | CN102742272A (en) |
TW (1) | TW201143450A (en) |
WO (1) | WO2011086964A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019135447A1 (en) * | 2018-01-02 | 2019-07-11 | 삼성전자 주식회사 | Video encoding method and device and video decoding method and device, using padding technique based on motion prediction |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104869292B (en) * | 2015-05-21 | 2019-04-19 | 深圳市拓普视频科技发展有限公司 | It is superimposed the simulation monitoring image capture method and video camera of intelligent signal in video signals |
CN105681809B (en) * | 2016-02-18 | 2019-05-21 | 北京大学 | For the motion compensation process of double forward prediction units |
KR102465773B1 (en) | 2017-10-20 | 2022-11-10 | 후지쯔 가부시끼가이샤 | Moving image encoding device, moving image encoding method, and moving image encoding computer program |
KR102499187B1 (en) * | 2018-02-12 | 2023-02-13 | 삼성전자주식회사 | Electronic device for compression processing image acquired by using camera and method for operating thefeof |
EP3788787A1 (en) * | 2018-06-05 | 2021-03-10 | Beijing Bytedance Network Technology Co. Ltd. | Interaction between ibc and atmvp |
CN113115046A (en) | 2018-06-21 | 2021-07-13 | 北京字节跳动网络技术有限公司 | Component dependent sub-block partitioning |
TWI818086B (en) | 2018-09-24 | 2023-10-11 | 大陸商北京字節跳動網絡技術有限公司 | Extended merge prediction |
CN111028357B (en) * | 2018-10-09 | 2020-11-17 | 北京嘀嘀无限科技发展有限公司 | Soft shadow processing method and device of augmented reality equipment |
CN112997495B (en) | 2018-11-10 | 2024-02-20 | 北京字节跳动网络技术有限公司 | Rounding in current picture references |
EP4078970A1 (en) * | 2019-12-19 | 2022-10-26 | InterDigital VC Holdings, Inc. | Encoding and decoding methods and apparatus |
WO2023171484A1 (en) * | 2022-03-07 | 2023-09-14 | Sharp Kabushiki Kaisha | Systems and methods for handling out of boundary motion compensation predictors in video coding |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2725577B1 (en) * | 1994-10-10 | 1996-11-29 | Thomson Consumer Electronics | CODING OR DECODING METHOD OF MOTION VECTORS AND CODING OR DECODING DEVICE USING THE SAME |
US7903742B2 (en) * | 2002-07-15 | 2011-03-08 | Thomson Licensing | Adaptive weighting of reference pictures in video decoding |
US7376186B2 (en) * | 2002-07-15 | 2008-05-20 | Thomson Licensing | Motion estimation with weighting prediction |
US20060093038A1 (en) * | 2002-12-04 | 2006-05-04 | Boyce Jill M | Encoding of video cross-fades using weighted prediction |
US8731054B2 (en) * | 2004-05-04 | 2014-05-20 | Qualcomm Incorporated | Method and apparatus for weighted prediction in predictive frames |
US7515637B2 (en) * | 2004-05-21 | 2009-04-07 | Broadcom Advanced Compression Group, Llc | Video decoding for motion compensation with weighted prediction |
US7933335B2 (en) * | 2004-11-30 | 2011-04-26 | Panasonic Corporation | Moving picture conversion apparatus |
JP2007067731A (en) * | 2005-08-30 | 2007-03-15 | Sanyo Electric Co Ltd | Coding method |
WO2007119198A1 (en) * | 2006-04-14 | 2007-10-25 | Nxp B.V. | Motion estimation at image borders |
US8942505B2 (en) * | 2007-01-09 | 2015-01-27 | Telefonaktiebolaget L M Ericsson (Publ) | Adaptive filter representation |
CA2742240A1 (en) * | 2008-11-07 | 2010-05-14 | Mitsubishi Electric Corporation | Image encoding device and image decoding device |
US8995526B2 (en) * | 2009-07-09 | 2015-03-31 | Qualcomm Incorporated | Different weights for uni-directional prediction and bi-directional prediction in video coding |
-
2010
- 2010-01-18 JP JP2010007806A patent/JP2011147049A/en not_active Withdrawn
- 2010-11-25 TW TW99140854A patent/TW201143450A/en unknown
-
2011
- 2011-01-06 CN CN2011800058435A patent/CN102742272A/en active Pending
- 2011-01-06 WO PCT/JP2011/050101 patent/WO2011086964A1/en active Application Filing
- 2011-01-06 KR KR20127017864A patent/KR20120118463A/en not_active Application Discontinuation
- 2011-01-06 US US13/520,384 patent/US20130003842A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019135447A1 (en) * | 2018-01-02 | 2019-07-11 | 삼성전자 주식회사 | Video encoding method and device and video decoding method and device, using padding technique based on motion prediction |
Also Published As
Publication number | Publication date |
---|---|
TW201143450A (en) | 2011-12-01 |
WO2011086964A1 (en) | 2011-07-21 |
CN102742272A (en) | 2012-10-17 |
JP2011147049A (en) | 2011-07-28 |
US20130003842A1 (en) | 2013-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102051266B1 (en) | Image processing device and method, and learning device and method | |
KR20120118463A (en) | Image processing device, method, and program | |
WO2010101064A1 (en) | Image processing device and method | |
WO2010035733A1 (en) | Image processing device and method | |
WO2011024685A1 (en) | Image processing device and method | |
WO2010095559A1 (en) | Image processing device and method | |
WO2010035731A1 (en) | Image processing apparatus and image processing method | |
WO2010035734A1 (en) | Image processing device and method | |
KR20110126616A (en) | Image processing device and method | |
WO2010035730A1 (en) | Image processing device and method | |
KR20110129861A (en) | Image processing device and method | |
JPWO2010095560A1 (en) | Image processing apparatus and method | |
KR20120123326A (en) | Image processing device and method | |
KR20110046444A (en) | Image processing apparatus and method | |
KR101612977B1 (en) | Image processing device and method | |
WO2010035732A1 (en) | Image processing apparatus and image processing method | |
WO2010064674A1 (en) | Image processing apparatus, image processing method and program | |
WO2011078001A1 (en) | Image processing device, image processing method, and program | |
JP2011146980A (en) | Image processor and image processing method | |
JP2013098899A (en) | Encoder, encoding method, decoder and decoding method | |
WO2010035735A1 (en) | Image processing device and method | |
JP2012019447A (en) | Image processor and processing method | |
WO2011125625A1 (en) | Image processing device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |