KR100892471B1 - Motion detection device - Google Patents

Motion detection device Download PDF

Info

Publication number
KR100892471B1
KR100892471B1 KR1020067022100A KR20067022100A KR100892471B1 KR 100892471 B1 KR100892471 B1 KR 100892471B1 KR 1020067022100 A KR1020067022100 A KR 1020067022100A KR 20067022100 A KR20067022100 A KR 20067022100A KR 100892471 B1 KR100892471 B1 KR 100892471B1
Authority
KR
South Korea
Prior art keywords
storage means
motion vector
motion
reference image
motion detection
Prior art date
Application number
KR1020067022100A
Other languages
Korean (ko)
Other versions
KR20070017160A (en
Inventor
아키히코 이노우에
Original Assignee
파나소닉 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파나소닉 주식회사 filed Critical 파나소닉 주식회사
Priority to KR1020067022100A priority Critical patent/KR100892471B1/en
Publication of KR20070017160A publication Critical patent/KR20070017160A/en
Application granted granted Critical
Publication of KR100892471B1 publication Critical patent/KR100892471B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation

Abstract

정수 화소 정밀도 움직임 검출용 참조 화상 데이터와 부호화 대상 매크로 블록 화상 데이터가 SDRAM(41)으로부터 로컬 메모리(31)로 전송된다. 정수 화소 정밀도 움직임 검출기(21)에 의해 정수 화소 정밀도 움직임 검출이 실시되고, 그 결과를 기초로, 1/4 화소 정밀도 움직임 검출용 참조 화상 데이터의 전송 영역이 결정된다. 1/2 화소 정밀도 움직임 검출용 참조 화상 데이터의 전송 후, 1/2 화소 정밀도 움직임 검출기(22)에 의한 1/2 화소 정밀도 움직임 검출과, 1/4 화소 정밀도 움직임 검출용 참조 화상 데이터의 전송이 동시에 실행된다. 1/4 화소 정밀도 움직임 검출기(23)에 의해 1/4 화소 정밀도 움직임 검출이 실행된다. 이 결과, 파이프라인 단수와 파이프라인 버퍼수가 감소될 수 있고, 파이프라인 처리를 고속화 할 수 있다.

Figure 112006076942233-pct00004

The integer pixel precision motion detection reference image data and the encoding target macroblock image data are transferred from the SDRAM 41 to the local memory 31. Integer pixel precision motion detection is performed by the integer pixel precision motion detector 21, and based on the result, the transfer area of the reference image data for 1/4 pixel precision motion detection is determined. After the transfer of the reference image data for 1/2 pixel precision motion detection, the 1/2 pixel precision motion detection by the 1/2 pixel precision motion detector 22 and the transfer of the reference image data for 1/4 pixel precision motion detection are performed. Run concurrently. The 1/4 pixel precision motion detector 23 carries out 1/4 pixel precision motion detection. As a result, the number of pipeline stages and the number of pipeline buffers can be reduced, and the pipeline processing can be speeded up.

Figure 112006076942233-pct00004

Description

움직임 검출 장치{MOTION DETECTION DEVICE}Motion Detection Device {MOTION DETECTION DEVICE}

본 발명은 동화상 부호화 기술에 관한 것으로, 특히, 피부호화 화상과 참조 화상으로부터 피부호화 화상의 움직임 벡터를 검출하는 움직임 검출 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to moving picture coding technology, and more particularly, to a motion detection device for detecting a motion vector of a skin coded picture from a skin coded picture and a reference picture.

오늘날, 동화상 전송 기술과 축적 기술은 우리들의 생활을 풍요롭게 하는데 있어서 매우 중요한 기술이 되어 있다.Today, moving picture transmission technology and accumulation technology are very important in enriching our lives.

예컨대, 휴대 정보 단말을 이용한 원격지에서의 화상 전화가 가능해지고 있다. 이 화상 전화에서는, 음성에 동기시켜서, 동화상을 서로 전송할 수 있기 때문에, 종래에 비해 더욱 풍부한 표현력을 갖는 커뮤니케이션을 실현할 수 있다. 화상 전화의 전송로는 무선이며, 현재의 전송 속도는 64kbps(bit per second)이다. 장래에는, 2Mbps 정도까지 고속화 될 가능성이 있다. 그러나, 비교적 낮은 전송 속도 하에서, 전송하는 화상의 화질을 향상시키기 위해서는, 동화상 전송 기술, 특히, 동화상 압축 부호화 기술이 중요하다.For example, video telephony in remote locations using portable information terminals has become possible. In this video telephone, moving pictures can be transmitted to each other in synchronization with voice, so that communication with more expressive power can be realized. The transmission path of the video telephone is wireless, and the current transmission speed is 64 kbps (bit per second). In the future, it may be speeded up to about 2Mbps. However, in order to improve the image quality of the image to be transmitted at a relatively low transmission rate, a moving picture transmission technique, particularly a moving picture compression coding technique, is important.

또 하나의 중요 기술인 동화상 축적 기술은 해마다 발전하고 있다. 최근에 는, DVD(Digital Versatile Disk) 레코더를 사용하여, 디지털 방식으로 텔레비전 프로그램을 녹화하는 것도 가능해지고 있다. DVD 레코더는 해마다 판매 대수가 늘어나, VHS 레코더가 모두 DVD 레코더로 교체되는 것도 시간 문제이다. VHS 레코더와 마찬가지로, DVD 레코더에 있어서도, 고화질로 장시간 녹화할 수 있는 것은 중요한 세일즈 포인트이다. DVD 레코더에 사용되는 기록 매체(DVD-RAM, DVD-RW, 블루레이 디스크 등)의 기록 밀도는 해마다 향상하고 있지만, 현 상태에서는, 하이비전 프로그램을 고화질로 장시간 녹화하는 것에는 이르지 못한다. 기록 매체의 한정된 영역에, 장시간의 영상을 화질을 유지하면서 녹화하기 위해서는, 화질을 저하시키지 않고 영상을 저 비트 레이트로 부호화하는 동화상 부호화 기술이 중요해진다.Another important technology, the moving picture storage technology is developing year by year. In recent years, it has become possible to record a television program digitally using a DVD (Digital Versatile Disk) recorder. The number of DVD recorders is increasing year by year, and it is also a matter of time before all VHS recorders are replaced with DVD recorders. Like VHS recorders, it is an important selling point for DVD recorders to be able to record in high quality for a long time. Although the recording density of recording media (DVD-RAM, DVD-RW, Blu-ray Disc, etc.) used in a DVD recorder is improving year by year, it is not possible to record a high-vision program for a long time in high quality in the present state. In order to record a long time video in a limited area of a recording medium while maintaining the picture quality, a moving picture coding technique of encoding a video at a low bit rate without degrading the picture quality becomes important.

동화상 부호화 기술로는, 여러 가지 방식이 제안되어 있다. 화상 압축 기술의 표준 규격으로서는, ITU-T(국제 전기 통신 연합 전기 통신 표준화 부문)의 H. 261, H. 263, ISO(국제 표준화 기구)의 MPEG-1, MPEG-2, MPEG-4 등이 있다. (MPEG는 Moving Picture Experts Group의 약어.)As a moving picture coding technique, various methods have been proposed. As standard standards of image compression technology, H. 261, H. 263 of ITU-T (International Telecommunication Union Telecommunication Standardization Division), MPEG-1, MPEG-2, MPEG-4 of ISO (International Organization for Standardization), etc. have. (MPEG stands for Moving Picture Experts Group.)

이들 동화상 부호화 처리에 있어서, 부호화의 대상이 되는 입력 화상은 세로 16화소×가로 16화소의 휘도 성분, 세로 8화소×가로 8화소의 색차 성분(Cb) 및 세로 8화소×가로 8화소의 색차 성분(Cr)으로 구성되는 매크로 블록으로 분할된다. 각 매크로 블록은 참조 화상으로부터 가장 유사한 블록이 탐색되고(이른바, 움직임 검출 처리가 행해지고), 탐색된 참조 화상의 블록과의 차분이 구해진다. 그리고, 그 차분은 주파수 영역으로 변환된 후, 가변 길이 부호화되어 비트 스트림으로 변 환된다.In these moving picture coding processes, the input image to be encoded includes a luminance component of 16 pixels long x 16 pixels wide, a color difference component Cb of 8 pixels wide x 8 pixels wide, and a color difference component of 8 pixels wide x 8 pixels. It is divided into macro blocks consisting of (Cr). For each macro block, the most similar block is searched from the reference picture (so-called motion detection processing is performed), and the difference with the block of the searched reference picture is obtained. Then, the difference is converted into a frequency domain and then variable length coded into a bit stream.

이들 부호화 처리 중에서, 화질을 크게 좌우하는 처리가 움직임 검출 처리이다. MPEG 부호화 처리 장치에 있어서, 중요한 구성 요소인 움직임 검출부에 대하여, 우선, 설명한다.Among these encoding processes, a process that greatly influences image quality is a motion detection process. In the MPEG encoding processing apparatus, a motion detection unit that is an important component will first be described.

움직임 검출에는, 여러 가지 수법이 존재하지만, 가장 대표적인 방법이 블록 매칭법이다. 블록 매칭법은 현 화상의 매크로 블록과, 참조 화상이 있는 특정한 범위(이후, 탐색 범위라 부름)로부터 생성되는, 매크로 블록과 같은 크기의 블록과의 사이에서, 화소 레벨의 연산을 행하여, 상관도를 나타내는 평가치를 구하고, 그 평가치가 가장 좋은 결과가 되는 참조 화상상의 위치를 움직임 벡터로서 검출하는 방법이다. 평가치로서, 일반적으로, 차분 절대값 합(SAD)이나 차분 자승 합(SSD)이 이용되고, 그 값이 작을수록 상관성이 높다고 간주된다.Various methods exist for motion detection, but the most typical method is block matching. The block matching method performs a pixel level operation between a macroblock of a current picture and a block of the same size as a macroblock, which is generated from a specific range in which a reference picture is located (hereinafter referred to as a search range). An evaluation value is obtained, and the position on the reference image for which the evaluation value is the best result is detected as a motion vector. As evaluation values, in general, the absolute difference value sum (SAD) or the differential square sum (SSD) is used, and the smaller the value, the higher the correlation is considered.

종래, 계층적으로 움직임 검출을 실시하는 예가 있다. 예컨대, 특허문헌 1(일본 공개 특허 공보 제 2002-218474호)은 움직임 벡터의 검출을 1/2 화소 정밀도로 실시하기 위해, 제 1 단계로서, 비교적 큰 탐색 범위에서 정수 화소 정밀도의 움직임 벡터 검출을 실시하고, 제 2 단계로서, 제 1 단계에서 검출한 움직임 벡터의 주위에서, 또한, 제 1 단계보다 작은 탐색 범위에서, 1/2 화소 정밀도의 움직임 벡터를 검출하는 기술을 개시하고 있다.Conventionally, there is an example of performing motion detection hierarchically. For example, Patent Document 1 (Japanese Laid-Open Patent Publication No. 2002-218474), as a first step, performs motion vector detection with integer pixel precision in a relatively large search range in order to perform motion vector detection with 1/2 pixel precision. As a second step, a technique for detecting a motion vector with 1/2 pixel precision is disclosed around the motion vector detected in the first step and in a search range smaller than the first step.

도 22와 도 23을 참조하여, 종래 기술에 의한 움직임 검출의 방법을 구체적으로 설명한다.With reference to Figs. 22 and 23, a method of motion detection according to the prior art will be described in detail.

도 22는 종래의 일반적인 움직임 검출부의 블록도이다. 도 22에 나타내는 종래의 일반적인 움직임 검출부는 정수 화소 정밀도 움직임 검출부(1), 1/2 화소 정밀도 움직임 검출부(2), 움직임 보상부(3), 제 1 로컬 메모리(4), 제 2 로컬 메모리(5), 제 3 로컬 메모리(6), DMA 컨트롤러(7) 및 SDRAM(8)을 구비한다.22 is a block diagram of a conventional general motion detector. The conventional general motion detector shown in Fig. 22 is an integer pixel precision motion detector 1, 1/2 pixel precision motion detector 2, a motion compensator 3, a first local memory 4, a second local memory ( 5), third local memory 6, DMA controller 7 and SDRAM 8;

도 23은 종래의 일반적인 움직임 검출부의 흐름도이다.23 is a flowchart illustrating a conventional general motion detector.

도 23의 단계 S1에 있어서, SDRAM(8)에 저장되어 있는 입력 화상으로부터, 부호화 대상의 매크로 블록(이하, 현 매크로 블록이라고 부른다)을 제 1 로컬 메모리(4)로 전송한다.In step S1 of FIG. 23, the macroblock (hereinafter referred to as the current macroblock) to be encoded is transferred from the input image stored in the SDRAM 8 to the first local memory 4.

단계 S2에 있어서, 현 매크로 블록으로부터 결정되는 움직임 검출 범위, 즉, 탐색 범위의 화상 데이터, 예컨대, -32≤X≤+32, -32≤Y≤+32의 탐색 범위의 화상 데이터가 참조 화상으로서, SDRAM(8)으로부터 제 1 로컬 메모리(4)로 전송된다.In step S2, the motion detection range determined from the current macroblock, that is, the image data of the search range, for example, the image data of the search range of -32≤X≤ + 32, -32≤Y≤ + 32, is referred to as the SDRAM. Is transferred from (8) to the first local memory (4).

단계 S3에 있어서, 정수 화소 정밀도 움직임 검출부(1)는 제 1 로컬 메모리(4)로 전송된 현 매크로 블록과 참조 화상의 탐색 범위에 대하여, 정수 화소 정밀도 움직임 검출을 행한다. 정수 화소 정밀도 움직임 검출에서는, 정수 화소 정밀도 움직임 검출부(1)는 정수 화소만을 이용하여, 현 매크로 블록과 가장 상관이 강한 같은 크기의 블록을 탐색 범위로부터 검출하고, 움직임 벡터를 구한다. 움직임 벡터는 현 매크로 블록의 좌단상의 좌표에 대한 것이고, 검출한 블록의 좌단상의 좌표의 상대 위치로 표현한다. 상관의 강도는, 예컨대, 2개의 블록 내의 대응하는 화소에 있어서의 휘도 성분의 차분 절대값 합(SAD)이나 차분 자승 합(SSD)으로서 평가된다.In step S3, the integer pixel precision motion detection unit 1 performs integer pixel precision motion detection for the current macroblock and the search range of the reference image transferred to the first local memory 4. In integer pixel precision motion detection, the integer pixel precision motion detection unit 1 detects a block of the same size that has the most correlation with the current macroblock from the search range by using only integer pixels, and obtains a motion vector. The motion vector is relative to the coordinates on the left end of the current macroblock and is expressed by the relative position of the coordinates on the left end of the detected block. The strength of the correlation is evaluated, for example, as the absolute difference value sum SAD or the differential square sum SSD of the luminance components in the corresponding pixels in the two blocks.

계층화하여 움직임 검출을 행하는 경우, 일반적으로 정수 화소 정밀도 움직임 검출은 그 이후의 계층의 움직임 검출보다 탐색 범위가 크다. 그 때문에, 필요로 하는 메모리 용량이 커진다.In case of performing motion detection by stratifying, in general, integer pixel precision motion detection has a larger search range than motion detection of subsequent layers. Therefore, the required memory capacity becomes large.

메모리 용량 증대를 방지하기 위해, 예컨대, 화소를 추출하여 메모리로 전송하고, 움직임 검출의 정밀도를 저하시키는 방법이 있다. 도 24는 1화소마다 추출된 정수 화소를 나타낸다. 즉, 도 24에 나타내는 예에서는, 가로 방향으로 1화소마다 화소 P2가 추출되어, 화소 P1만이 참조 화상으로서 이용된다. 이와 같이 추출하면, 추출하지 않는 경우와 비교하여 가로 방향의 검출 정밀도가 1/2로 저하된다. 그러나, 제 1 로컬 메모리(4)에 확보되어야 할 참조 화상용의 영역은 1/2로 감소시킬 수 있다. 이 방법에 의해, 같은 탐색 범위를 적은 메모리 용량으로 탐색할 수 있다. 또는, 같은 메모리 용량으로 광범위한 움직임 검출을 행할 수 있다. 어떠한 추출 방법을 채용할지는 검출 정밀도가 저하되는 것에 따른 화질 저하와, 탐색 범위가 넓어지는 것에 따른 화질 향상의 절충(trade-off) 관계에 의해 결정된다.In order to prevent an increase in memory capacity, for example, there is a method of extracting and transferring pixels to a memory and lowering the accuracy of motion detection. Fig. 24 shows integer pixels extracted for each pixel. That is, in the example shown in FIG. 24, the pixel P2 is extracted for every pixel in the horizontal direction, and only the pixel P1 is used as a reference image. When extracted in this manner, the detection accuracy in the horizontal direction is lowered to 1/2 compared with the case where it is not extracted. However, the area for the reference picture to be secured in the first local memory 4 can be reduced to 1/2. By this method, the same search range can be searched with a small memory capacity. Alternatively, a wide range of motion detection can be performed with the same memory capacity. Which extraction method is employed is determined by a trade-off relationship between image quality deterioration due to a decrease in detection accuracy and image quality improvement due to a wider search range.

도 23으로 되돌아가, 단계 S4에 있어서, 단계 S3의 정수 화소 정밀도 움직임 검출로 구한 움직임 벡터 MV-INT를 기초로, 1/2 화소 정밀도 움직임 검출에 필요한 참조 화상이 SDRAM(8)으로부터 제 2 로컬 메모리(5)로 전송된다.Returning to Fig. 23, in step S4, based on the motion vector MV-INT determined by the integer pixel precision motion detection in step S3, the reference image required for 1/2 pixel precision motion detection is moved from the SDRAM 8 to the second local area. Transferred to the memory 5.

상술한 바와 같이, 정수 화소 정밀도 움직임 검출의 참조 화상의 화소를 추출한 경우, 1/2 화소 정밀도 움직임 검출을 위한 참조 화상을 SDRAM(8)으로부터 다시 취득해야 한다. 왜냐하면, 후술하는 바와 같이, 규격상, 1/2 화소를 산출하 기 위해서는, 반드시 인접하는 정수 화소가 필요하기 때문이다. 정수 화소 정밀도 움직임 벡터 MV-INT의 주변 8점의 1/2 화소에 대하여, 1/2 화소 정밀도 움직임 검출을 행하는 경우, SDRAM(8)에 저장되어 있는 참조 화상으로부터, 움직임 벡터 MV-INT를 기준으로 해서, X방향으로 「-1」, Y방향으로 「-1」 이동한 좌표 위치로부터, 가로 방향으로 18화소, 세로 방향으로 18라인의 화상이 취득되어, 제 2 로컬 메모리(5)로 전송된다. SDRAM(8)에 대하여, 32비트 단위의 액세스 밖에 할 수 없는 경우는, 참조 화상으로서 필요가 없는 화소 데이터를 판독해 버리는 경우가 있고, 최대로 가로 24화소, 세로 18라인 분의 화상 데이터를 판독하는 경우도 있다.As described above, when pixels of the reference image for integer pixel precision motion detection are extracted, the reference image for 1/2 pixel precision motion detection must be acquired again from the SDRAM 8. This is because, as described later, in order to calculate 1/2 pixels, adjacent integer pixels are necessarily required. In the case of performing 1/2 pixel precision motion detection with respect to 1/2 pixel of 8 points of the constant pixel precision motion vector MV-INT, the motion vector MV-INT is referred to from the reference image stored in the SDRAM 8. 18 pixels in the horizontal direction and 18 lines in the vertical direction are acquired from the coordinate position shifted by "-1" in the X direction and "-1" in the Y direction, and are transferred to the second local memory 5. do. When access to the SDRAM 8 can only be performed in units of 32 bits, pixel data that is not necessary as a reference image may be read, and image data for 24 pixels in width and 18 lines in length is read at the maximum. In some cases.

단계 S5에 있어서, 1/2 화소 정밀도 움직임 검출부(2)는 1/2 화소 정밀도 움직임 검출을 실시한다. 예컨대, 움직임 벡터 MV-INT의 주변 8점에 있어서, 단계 S4에 있어서 제 2 로컬 메모리(5)로 전송된 참조 화상을 이용하여, 1/2 화소를 생성하고, 그 8개의 1/2 화소 및 탐색 중심 위치의 정수 화소와, 현 매크로 블록으로 차분 절대값 합 연산을 행한다.In step S5, the 1/2 pixel precision motion detection unit 2 performs 1/2 pixel precision motion detection. For example, at eight peripheral points of the motion vector MV-INT, 1/2 pixels are generated using the reference image transferred to the second local memory 5 in step S4, and the eight 1/2 pixels and The difference absolute value sum operation is performed on the integer pixel at the search center position and the current macroblock.

도 25는 정수 화소 B의 근방에 생성된 1/2 화소를 나타낸다. 즉, 탐색 중심 위치인 정수 화소 B의 주위에, 1/2 화소 a∼h가 생성되어 있다. 1/2 화소는, 예컨대, MPEG-4의 심플 프로파일의 경우, 정수 화소 A∼D를 이용하여 다음과 같이 산출된다.25 shows a 1/2 pixel generated in the vicinity of the integer pixel B. FIG. That is, 1/2 pixels a to h are generated around the integer pixel B which is the search center position. 1/2 pixel is computed as follows using integer pixels A-D, for example in the case of the simple profile of MPEG-4.

도 25의 1/2 화소 f와 1/2 화소 d는 각각 수학식 1 및 수학식 2로 산출된다.1/2 pixel f and 1/2 pixel d of FIG. 25 are computed by Formula (1) and Formula (2), respectively.

Figure 112006076942233-pct00001
Figure 112006076942233-pct00001

Figure 112006076942233-pct00002
Figure 112006076942233-pct00002

여기서, R은 라운딩 컨트롤(rounding control)이라 불리고, 「0」 또는「1」이 대입된다.Here, R is called a rounding control, and "0" or "1" is substituted.

1/2 화소 정밀도 움직임 검출부(2)는 탐색 중심 위치의 정수 화소 B와 그 주위의 8개의 1/2 화소 a∼h의 총 9점의 화소에 대하여, 차분 절대값 합의 값이 가장 작아지는 점을 구한다. 구한 차분 절대값 합의 값이 가장 작아지는 점에 대한 탐색 중심 위치로부터의 오프셋 좌표를 움직임 벡터 MV-INT에 가산함으로써, 1/2 화소 정밀도의 움직임 벡터 MV-HALF가 산출된다.The 1/2 pixel precision motion detector 2 has the smallest value of the sum of the difference absolute values for a total of 9 pixels of the integer pixel B at the search center position and the eight 1/2 pixels a to h around the center. Obtain The motion vector MV-HALF with 1/2 pixel precision is calculated by adding the offset coordinates from the search center position with respect to the point where the obtained difference absolute value sum becomes the smallest to the motion vector MV-INT.

또한 검출 정밀도를 향상시키기 위해, 1/2 화소 정밀도 움직임 검출로 구한 움직임 벡터 MV-HALF를 기초로, 1/4 화소 정밀도 움직임 검출을 실시하는 경우도 있다. 예컨대, 1/2 화소 정밀도 움직임 검출과 마찬가지로, 움직임 벡터 MV-HALF의 주변 8점에 있어서, 참조 화상을 이용하여 1/4 화소를 생성하고, 탐색 중심 위치의 1/2 화소와 그 주위에 생성한 8개의 1/4 화소의 총 9점의 화소에 대하여, 차분 절대값 합의 값이 가장 작아지는 점을 탐색한다. 탐색한 점에 대한 탐색 중심 위치로부터의 오프셋 좌표를 움직임 벡터 MV-HALF에 가산함으로써, 1/4 화소 정밀도의 움직임 벡터를 산출한다. 또, 도 22 및 도 23에 있어서는, 1/4 화소 정밀도 움직임 검출을 위한 구성 요소와 처리 단계를 생략하고 도시하지 않았다.In addition, in order to improve detection accuracy, 1 / 4-pixel precision motion detection may be performed based on the motion vectors MV-HALF determined by 1 / 2-pixel precision motion detection. For example, as in the case of 1/2 pixel precision motion detection, at the peripheral eight points of the motion vector MV-HALF, a 1/4 pixel is generated using a reference image, and is generated at 1/2 pixels of the search center position and the surroundings thereof. For a total of nine pixels of one eight 1/4 pixels, the point at which the value of the sum of difference absolute values is the smallest is searched for. By adding the offset coordinates from the search center position with respect to the searched point to the motion vector MV-HALF, a motion vector with 1/4 pixel precision is calculated. In addition, in FIG.22 and FIG.23, the component and the process step for 1/4 pixel precision motion detection are abbreviate | omitted and not shown.

단계 S6에 있어서, 움직임 검출에 계속되는 움직임 보상을 위해, 단계 S5의 1/2 화소 정밀도 움직임 검출에 있어서 최종적으로 결정한 움직임 벡터가 나타내는 위치의 참조 화상이 SDRAM(8)으로부터 제 3 로컬 메모리(6)로 전송된다.In step S6, for motion compensation following the motion detection, the reference image at the position indicated by the motion vector finally determined in the 1/2 pixel precision motion detection in step S5 is transferred from the SDRAM 8 to the third local memory 6. Is sent to.

일반적으로, 움직임 벡터 검출은 화소 데이터의 휘도 성분에 대하여 실시된다. 그 때문에, 휘도 성분에 관해서는, 많은 경우, 1/2 화소 정밀도 움직임 검출로 제 2 로컬 메모리(5)에 취득한 참조 영역은 움직임 보상에 필요한 영역을 포함하고 있다. 데이터 전송량을 감소시키기 위해, 제 2 로컬 메모리(5)의 데이터를 제 3 로컬 메모리(6)로 전송하는 경우와, 제 2 로컬 메모리(5)를 움직임 보상부(3)가 직접 액세스하는 경우가 있다. 단, 색차 성분에 관해서는, 제 2 로컬 메모리(5)로 전송되어 있지 않기 때문에, SDRAM(8)으로부터 제 3 로컬 메모리(6)로 전송해야 한다.In general, motion vector detection is performed on the luminance component of the pixel data. Therefore, as for the luminance component, in many cases, the reference area acquired in the second local memory 5 by 1/2 pixel precision motion detection includes an area necessary for motion compensation. In order to reduce the amount of data transmission, there is a case where the data of the second local memory 5 is transferred to the third local memory 6 and the case where the motion compensator 3 directly accesses the second local memory 5. have. However, since the color difference component is not transferred to the second local memory 5, it must be transferred from the SDRAM 8 to the third local memory 6.

단계 S7에 있어서, 움직임 보상부(3)는 움직임 보상을 실시한다. 움직임 보상으로 취득하는 색차 성분의 화상 데이터는 휘도 성분의 움직임 벡터에 근거하여 결정되는 색차 움직임 벡터에 의해서 결정된다. MPEG-4의 경우, 휘도 성분의 움직임 벡터의 1/2배한 것이 색차 성분의 움직임 벡터로서 정의된다. 예컨대, 휘도 성분의 움직임 벡터의 XY 좌표 (0.5, 1.5)는 1/2배 하면, (0.25, 0.75)가 되지만, 이것은 (0.5, 0.5)로 자리올림된다.In step S7, the motion compensator 3 performs motion compensation. The image data of the chrominance component obtained by the motion compensation is determined by the chrominance motion vector determined based on the motion vector of the luminance component. In the case of MPEG-4, one-half times the motion vector of the luminance component is defined as the motion vector of the color difference component. For example, the XY coordinates (0.5, 1.5) of the motion vector of the luminance component are (0.25, 0.75) when doubling, but this is rounded up to (0.5, 0.5).

상술한 대로, 동화상 부호화 처리는 움직임 검출, 움직임 보상, DCT, 가변 길이 부호화 등의 복수의 처리로 구성된다. 이들의 처리를 하나의 하드웨어 자원(예컨대, 프로세서)을 이용하여, 매크로 블록 단위로 실행하는 경우, 하나의 매크 로 블록의 처리가 종료하기까지, 다음 매크로 블록 처리가 개시될 수 없다. 이러한 순차 처리에서는 화면 크기나 입력의 프레임 레이트가 큰 경우, 매크로 블록 처리가 맞지 않아, 프레임 손실(dropping frames)이 발생해 버리는 경우가 있다.As described above, the moving picture coding process is composed of a plurality of processes such as motion detection, motion compensation, DCT, variable length coding, and the like. When these processes are executed in macroblock units using one hardware resource (for example, a processor), the next macroblock process cannot be started until the process of one macroblock is finished. In such a sequential process, when the screen size or input frame rate is large, macroblock processing may not match, resulting in dropping frames.

이를 해결하기 위해, 처리 단위마다 하드웨어 자원을 마련하고, 매크로 블록 처리를 파이프라인 방식으로 실행하는 방법이 있다.In order to solve this problem, there is a method of providing hardware resources for each processing unit and executing macroblock processing in a pipelined manner.

도 26은 동화상 부호화 처리의 흐름도이다. 도 26에 나타내는 바와 같이, 일반적인 동화상 부호화 처리는 단계 S11의 움직임 검출, 단계 S12의 움직임 보상, 단계 S13의 DCT/양자화 처리 및 단계 S14의 가변 길이 부호화 처리로 이루어진다. 이들 처리를, 4단의 파이프라인으로 분할하면, 도 27과 같은 처리가 된다.26 is a flowchart of a video encoding process. As shown in Fig. 26, the general moving picture coding process includes motion detection in step S11, motion compensation in step S12, DCT / quantization processing in step S13, and variable length encoding processing in step S14. When these processes are divided into four stage pipelines, the processes as shown in FIG. 27 are obtained.

도 27은 동화상 부호화의 파이프라인 처리를 나타낸다. 이 도면에 있어서, 가로축은 시간을 나타내고, 각 처리의 괄호 안의 숫자는 처리하고 있는 매크로 블록 번호를 나타낸다. 도 27에 나타내는 바와 같이, 파이프라인 처리에서는, 매크로 블록 번호 「O」의 움직임 검출 처리가 종료되면, 매크로 블록 번호 「O」의 움직임 보상 처리가 개시되고, 그와 동시에, 매크로 블록 번호 「1」의 움직임 검출의 처리가 개시된다.27 shows pipeline processing of video encoding. In this figure, the horizontal axis represents time, and the numerals in parentheses of the respective processes indicate macroblock numbers being processed. As shown in Fig. 27, in the pipeline processing, when the motion detection processing of the macroblock number "O" ends, the motion compensation process of the macroblock number "O" starts, and at the same time, the macroblock number "1" Processing of motion detection is started.

도 27에 나타내는 4개의 처리 중, 가장 처리 시간이 긴 처리의 처리 시간을 시간 T라고 하면, 파이프라인 처리에서는, 시간 T의 간격으로 스트림화된 매크로 블록이 출력되게 된다. 4개의 처리의 합계 시간을 시간 U라고 하면, 1매크로 블록당 처리 시간은, 순차 처리에서는 시간 U, 파이프라인 처리에서는 시간 T가 되고, U>T는 자명하기 때문에, 파이프라인 처리에 의해, 매크로 블록 처리의 생산 성(throughput)이 향상된다.When the processing time of the processing with the longest processing time among the four processes shown in FIG. 27 is time T, in a pipeline processing, the macroblock streamed by the time T interval will be output. If the total time of four processes is time U, the processing time per macro block becomes time U in sequential processing, time T in pipeline processing, and U> T is self-explanatory. The throughput of block processing is improved.

그러나, 이러한 파이프라인 처리를 실행하기 위해서는, 각 처리의 사이에 파이프라인 버퍼가 필요하게 된다. 파이프라인 버퍼란, 파이프라인의 사이에서 데이터를 유지해 놓기 위한 중간 버퍼이다. 따라서, 파이프라인화는 성능과 비용의 절충을 고려하여 실시해야 한다.However, in order to execute such pipeline processes, a pipeline buffer is required between each process. Pipeline buffers are intermediate buffers for holding data between pipelines. Therefore, pipelined work should be carried out with trade-offs in performance and cost.

도 28은 움직임 검출의 흐름도이다. 도 28은 복수로 계층화된 움직임 검출에 있어서의, 임의 계층의 움직임 검출의 처리 흐름을 나타내고 있다.28 is a flowchart of motion detection. Fig. 28 shows a process flow of motion detection of any layer in motion detection in a plurality of layers.

단계 S21에 있어서, 제 (m-1) 계층(m은 2 이상의 자연수)의 움직임 검출이 행해진다. 단계 S21에 있어서 행해지는 제 (m-1) 계층의 움직임 검출이 도 24에 나타낸 것 같은 추출된 참조 화상에 대하여 실시되는 경우, 단계 S22에 있어서, 제 (m―1) 계층에서 검출된 움직임 벡터를 기초로, 다음 제 (m) 계층의 움직임 검출을 위한 참조 화상 데이터를 전송해야 한다. 단계 S23에 있어서, 전송된 참조 화상 데이터를 이용하여, 제 (m) 계층의 움직임 검출이 행해진다.In step S21, motion detection of the (m-1) layer (m is a natural number of two or more) is performed. When motion detection of the (m-1) th layer performed in step S21 is performed on the extracted reference image as shown in FIG. 24, the motion vector detected in the (m-1) th layer in step S22. On the basis of this, reference picture data for motion detection of the next (m) layer should be transmitted. In step S23, motion detection of the (m) layer is performed using the transferred reference image data.

도 29는 움직임 검출의 파이프라인의 구성을 나타내며, 도 28의 움직임 검출에 대응하는 것이다. 움직임 검출에 있어서, 넓은 범위를 탐색하는 경우, 그 탐색 범위의 데이터를 취득하기 위한 데이터 전송에 시간이 필요하다. 그 때문에, 도 29에 나타내는 파이프라인의 구성예에서는, 스테이지(k+1)에, 데이터 전송을 위한 파이프라인 스테이지를 마련하여, 생산성을 향상시키고 있다.FIG. 29 shows the configuration of the pipeline for motion detection and corresponds to the motion detection in FIG. In motion detection, when searching a wide range, time is required for data transmission for acquiring data of the search range. Therefore, in the structural example of the pipeline shown in FIG. 29, the pipeline stage for data transmission is provided in stage k + 1, and productivity is improved.

이상 설명한 바와 같이, 종래 기술에 의한 수법은 파이프라인 처리에 의해 동화상 처리의 생산성이 향상하는 반면, 움직임 검출의 계층이 증가한 경우에는, 파이프라인 단수가 늘어나, 대기 시간이 증가함과 동시에, 필요한 파이프라인 버퍼의 수가 증가한다고 하는 결점이 있다.As described above, while the technique according to the prior art improves the productivity of moving image processing by pipeline processing, when the hierarchy of motion detection increases, the number of pipeline stages increases, the waiting time increases, and the required pipe The drawback is that the number of line buffers increases.

(특허문헌 1)(Patent Document 1)

일본 공개 특허 공보 제 2002-218474호(도 3)Japanese Laid-Open Patent Publication No. 2002-218474 (Fig. 3).

(특허문헌 2)(Patent Document 2)

일본 공개 특허 공보 제 2001-15872호Japanese Unexamined Patent Publication No. 2001-15872

(발명이 해결하고자 하는 과제)(Tasks to be solved by the invention)

그래서, 본 발명은 파이프라인 처리에 있어서의 시간 지연을 감소시켜 프레임 지연의 발생을 억제하고, 또한, 파이프라인 버퍼의 수를 감소시킬 수 있는, 동화상 부호화용 움직임 검출 장치를 제공하는 것을 목적으로 한다.Therefore, an object of the present invention is to provide a motion detection apparatus for moving picture encoding, which can reduce the time delay in pipeline processing, suppress the occurrence of frame delay, and reduce the number of pipeline buffers. .

(과제를 해결하기 위한 수단)(Means to solve the task)

제 1 발명에 따른 움직임 검출 장치는 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서, 프로세서와, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과, 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과, 제 1 움직임 검출 수단으로 검출한 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과, 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과, 제 2 움직임 검출 수단으로 검출한 제 2 단계의 움직임 벡터를 이용하여 실시하는 제 3 단계의 움직임 벡터 검출을 위한 제 3 참조 화상을 저장하는 제 3 기억 수단과, 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 제 3 단계의 움직임 벡터를 검출하는 제 3 움직임 검출 수단과, 참조 화상과 피부호화 화상을 저장하는 주 기억 수단과, 주 기억 수단과 제 1 기억 수단간의 데이터 전송, 주 기억 수단과 제 2 기억 수단간의 데이터 전송 및 주 기억 수단과 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고, 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 프로세서는 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 제 1 단계에서 검출한 움직임 벡터에 근거하여, 주 기억 수단으로부터 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고, 제 1 단계의 움직임 벡터의 참조가 불필요한 경우, 프로세서는 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 주 기억 수단으로부터 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송한다.The motion detection device according to the first invention is a motion detection device that detects a motion vector hierarchically by a correlation between a reference picture and a skin coded picture, and includes a processor and a first reference picture for motion vector detection in a first step. The first motion detection means for detecting the motion vector of the first step by using the first storage means for storing, the first reference image stored in the first storage means, and the first step of detection by the first motion detection means. By using the second storage means for storing the second reference image for detecting the motion vector of the second step performed by using the motion vector and the second reference image stored in the second storage means, the motion vector of the second step is obtained. A third step for detecting the motion vector of the third step which is performed by using the second motion detecting means for detecting and the motion vector of the second step detected by the second motion detecting means. A third storage means for storing a set of images, a third motion detection means for detecting a motion vector in a third step by using a third reference image stored in the third storage means, a reference image and a skin coded image for storing And main data transfer means for controlling data transfer between the main memory means and the first memory means, data transfer between the main memory means and the second memory means, and data transfer between the main memory means and the third memory means. If reference to the motion vector of the first stage is required, the processor is further configured to transfer the data from the main storage means to the third storage means based on the motion vector detected in the first stage before the detection of the motion vector of the second stage is completed. 3 When data of the reference picture is transmitted and reference of the motion vector of the first step is unnecessary, the processor is further configured to detect the motion vector of the first step. Before, the data of the third reference image is transferred from the main storage means to the third storage means.

이 구성에 의하면, 제 1 단계에서 검출한 움직임 벡터를 참조하는 경우, 제 3 단계의 움직임 벡터 검출용의 참조 화상의 전송과, 제 2 단계의 움직임 벡터 검출의 실행을 동시에 실시하기 때문에, 제 3 단계의 움직임 벡터 검출이 지연 없이 개시될 수 있다. 또한, 제 1 단계에서 검출한 움직임 벡터를 참조하지 않는 경우, 제 3 단계의 움직임 벡터의 검출을 지연 없이 개시할 수 있다.According to this configuration, when referring to the motion vector detected in the first step, the transmission of the reference image for motion vector detection in the third step and the execution of motion vector detection in the second step are performed simultaneously. Motion vector detection of steps can be initiated without delay. In addition, when the motion vector detected in the first step is not referenced, detection of the motion vector in the third step can be started without delay.

제 2 발명에 따른 움직임 검출 장치는 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서, 프로세서와, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과, 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과, 제 1 움직임 검출 수단으로 검출한 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과, 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과, 제 2 움직임 검출 수단으로 검출한 제 2 단계의 움직임 벡터를 이용하여 실시하는 움직임 보상을 위한 제 3 참조 화상을 저장하는 제 3 기억 수단과, 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 움직임 보상을 실시하는 움직임 보상 수단과, 참조 화상과 피부호화 화상을 저장하는 주 기억 수단과, 주 기억 수단과 제 1 기억 수단간의 데이터 전송, 주 기억 수단과 제 2 기억 수단간의 데이터 전송 및 주 기억 수단과 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고, 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 프로세서는 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 제 1 단계에서 검출한 움직임 벡터에 근거하여, 주 기억 수단으로부터 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고, 제 1 단계에서 검출한 움직임 벡터를 비참조하는 경우, 프로세서는 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 주 기억 수단으로부터 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송한다.The motion detection device according to the second invention is a motion detection device that detects a motion vector hierarchically by a correlation between a reference picture and a skin coded picture, and includes a processor and a first reference picture for motion vector detection in a first step. The first motion detection means for detecting the motion vector of the first step by using the first storage means for storing, the first reference image stored in the first storage means, and the first step of detection by the first motion detection means. By using the second storage means for storing the second reference image for detecting the motion vector of the second step performed by using the motion vector and the second reference image stored in the second storage means, the motion vector of the second step is obtained. A second reference image for motion compensation performed using the second motion detecting means for detecting and the motion vector of the second step detected by the second motion detecting means Is a third memory means, a motion compensation means for performing motion compensation using a third reference image stored in the third memory means, main memory means for storing the reference image and the skin coded image, A data transfer control means for controlling data transfer between the first storage means, data transfer between the main memory means and the second memory means, and data transfer between the main memory means and the third memory means, wherein a reference to the motion vector of the first stage is provided. If necessary, the processor transmits the data of the third reference picture from the main storage means to the third storage means based on the motion vector detected in the first step before the detection of the motion vector of the second step is completed. In the case of dereferencing the motion vector detected in the first step, the processor starts from the main storage means before the detection of the motion vector of the first step is completed. A third storage means see 3 transmits the data of the image.

이 구성에 의하면, 제 1 단계에서 검출한 움직임 벡터를 참조하는 경우, 움직임 보상용의 참조 화상의 전송과, 제 2 단계의 움직임 벡터 검출의 실행을 동시에 실시하기 때문에, 움직임 보상이 지연 없이 개시될 수 있다. 또한, 제 1 단계에서 검출한 움직임 벡터를 참조하지 않는 경우, 제 3 단계의 움직임 보상을 지연 없이 개시할 수 있다.According to this configuration, when referring to the motion vector detected in the first step, since the transmission of the reference image for motion compensation and the execution of the motion vector detection in the second step are performed simultaneously, the motion compensation can be started without delay. Can be. In addition, when the motion vector detected in the first step is not referenced, the motion compensation of the third step can be started without delay.

제 3 발명에 따른 움직임 검출 장치는 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서, 프로세서와, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과, 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과, 제 1 움직임 검출 수단으로 검출한 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과, 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과, 참조 화상과 피부호화 화상을 저장하는 주 기억 수단과, 주 기억 수단과 제 1 기억 수단간의 데이터 전송 및 주 기억 수단과 제 2 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고, 프로세서는, 제 1 단계의 움직임 벡터 검출이 완료되기 전에, 주 기억 수단으로부터 제 2 기억 수단으로 제 2 참조 화상의 데이터를 전송한다.A motion detection device according to a third aspect of the invention is a motion detection device that detects a motion vector hierarchically by a correlation between a reference picture and a skin coded picture, and includes a processor and a first reference picture for motion vector detection in a first step. The first motion detection means for detecting the motion vector of the first step by using the first storage means for storing, the first reference image stored in the first storage means, and the first step of detection by the first motion detection means. By using the second storage means for storing the second reference image for detecting the motion vector of the second step performed by using the motion vector and the second reference image stored in the second storage means, the motion vector of the second step is obtained. Second motion detecting means for detecting, main memory means for storing the reference image and skin coded image, data transfer and main memory means between the main memory means and the first memory means; And a data transfer control means for controlling data transfer between the two storage means, and the processor transfers data of the second reference image from the main storage means to the second storage means before the motion vector detection of the first step is completed. .

이 구성에 의하면, 제 2 단계의 움직임 벡터 검출용의 참조 화상의 전송과, 제 1 단계의 움직임 벡터 검출의 실행을 동시에 실시하기 때문에, 제 2 단계의 움직임 벡터 검출이 지연 없이 개시될 수 있다.According to this configuration, since the transmission of the reference image for motion vector detection in the second step and the execution of the motion vector detection in the first step are performed simultaneously, motion vector detection in the second step can be started without delay.

제 4 발명에 따른 움직임 검출 장치는 참조 화상과 피부호화 화상의 상관에 의해, 움직임 벡터를 검출하는 움직임 검출 장치로서, 프로세서와, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과, 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과, 제 1 움직임 검출 수단으로 검출한 제 1 단계의 움직임 벡터를 이용하여 실시하는 움직임 보상을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과, 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 움직임 보상을 실시하는 움직임 보상 수단과, 참조 화상과 피부호화 화상을 저장하는 주 기억 수단과, 주 기억 수단과 제 1 기억 수단간의 데이터 전송 및 주 기억 수단과 제 2 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고, 프로세서는 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 주 기억 수단으로부터 제 2 기억 수단으로 제 2 참조 화상의 데이터를 전송한다.A motion detection device according to a fourth invention is a motion detection device for detecting a motion vector by correlation between a reference picture and a skin coded picture, the motion detection device comprising: a processor and a first reference picture for storing a first step for motion vector detection in a first step; The first motion detecting means for detecting the motion vector of the first step using the first memory means, the first reference image stored in the first memory means, and the motion vector of the first step detected by the first motion detecting means. Second storage means for storing a second reference image for motion compensation to be carried out by using, motion compensation means for performing motion compensation using a second reference image stored in the second storage means, a reference image and skin encoding To control main memory means for storing an image, data transfer between the main memory means and the first memory means, and data transfer between the main memory means and the second memory means; Data transfer control means, the processor transfers data of the second reference image from the main storage means to the second storage means before the detection of the motion vector of the first step is completed.

이 구성에 의하면, 움직임 보상용의 참조 화상의 전송과, 제 1 단계의 움직임 벡터 검출의 실행을 동시에 실시하기 때문에, 움직임 보상용이 지연 없이 개시될 수 있다.According to this configuration, since the transmission of the reference image for motion compensation and the execution of the motion vector detection in the first stage are performed at the same time, motion compensation can be started without delay.

제 5 발명에 따른 움직임 검출 장치에서는, 제 1 움직임 검출 수단은 정수 화소 정밀도의 움직임 벡터를 검출한다.In the motion detection apparatus according to the fifth invention, the first motion detection means detects a motion vector of integer pixel precision.

제 6 발명에 따른 움직임 검출 장치에서는, 제 2 움직임 검출 수단은 1/2 화소 정밀도의 움직임 벡터를 검출한다.In the motion detection apparatus according to the sixth invention, the second motion detection means detects a motion vector with 1/2 pixel precision.

제 7 발명에 따른 움직임 검출 장치에서는, 제 3 움직임 검출 수단은 1/4 화소 정밀도의 움직임 벡터를 검출한다.In the motion detection apparatus according to the seventh invention, the third motion detection means detects a motion vector with 1/4 pixel precision.

이들 구성에 의하면, 정수 화소 정밀도의 움직임 벡터 검출로부터 1/4 화소 정밀도의 움직임 벡터 검출까지, 단계적으로 실행할 수 있다. 또한, 정수 화소 정밀도의 움직임 벡터 검출까지를 행하는 움직임 검출 장치, 1/2 화소 정밀도의 움직임 벡터 검출까지를 행하는 움직임 검출 장치, 또는, 1/4 화소 정밀도의 움직임 벡터 검출까지를 행하는 움직임 검출 장치를 응용 목적에 따라 임의로 구성할 수 있다.According to these structures, it is possible to carry out stepwise from motion vector detection with integer pixel precision to motion vector detection with 1/4 pixel precision. Further, a motion detection device for performing motion vector detection with integer pixel precision, a motion detection device for performing motion vector detection with 1/2 pixel precision, or a motion detection device for motion vector detection with 1/4 pixel precision up to It can be arbitrarily configured according to the application purpose.

제 8 발명에 따른 움직임 검출 장치에서는, 움직임 보상 수단은 휘도 화상의 움직임 보상을 실시한다.In the motion detection apparatus according to the eighth invention, the motion compensation means performs motion compensation of the luminance image.

이 구성에 의하면, 휘도 데이터에 대하여 움직임 보상을 행하는 움직임 검출 장치를 실현할 수 있다.According to this configuration, a motion detection device that performs motion compensation on luminance data can be realized.

제 9 발명에 따른 움직임 검출 장치에서는, 움직임 보상 수단은 색차 화상의 움직임 보상을 실시한다.In the motion detection apparatus according to the ninth invention, the motion compensation means performs motion compensation of the color difference image.

이 구성에 의하면, 색차 데이터에 대하여 움직임 보상을 행하는 움직임 검출 장치를 실현할 수 있다.According to this configuration, a motion detection device that performs motion compensation on color difference data can be realized.

제 10 발명에 따른 움직임 검출 장치에서는, 제 1 기억 수단과 제 2 기억 수단은 메모리에 실장되고, 제 1 기억 수단의 메모리 크기는 제 2 기억 수단의 메모리 크기보다 크다.In the motion detection apparatus according to the tenth invention, the first storage means and the second storage means are mounted in a memory, and the memory size of the first storage means is larger than the memory size of the second storage means.

이 구성에 의하면, 제 1 기억 수단을 이용하는 제 1 움직임 검출 수단은 제 2 기억 수단을 이용하는 제 2 움직임 검출 수단보다, 더 넓은 범위에 걸쳐 움직임 벡터를 탐색할 수 있다.According to this configuration, the first motion detecting means using the first memory means can search the motion vector over a wider range than the second motion detecting means using the second memory means.

제 11 발명에 따른 움직임 검출 장치에서는, 제 2 기억 수단과 제 3 기억 수단은 메모리에 실장되고, 제 2 기억 수단의 메모리 크기는 제 3 기억 수단의 메모리 크기보다 크다.In the motion detection apparatus according to the eleventh invention, the second storage means and the third storage means are mounted in a memory, and the memory size of the second storage means is larger than the memory size of the third storage means.

이 구성에 의하면, 제 2 기억 수단을 이용하는 제 2 움직임 검출 수단은 제 3 기억 수단을 이용하는 제 3 움직임 검출 수단보다, 더 넓은 범위에 걸쳐 움직임 벡터를 탐색할 수 있다.According to this configuration, the second motion detecting means using the second memory means can search the motion vector over a wider range than the third motion detecting means using the third memory means.

제 12 발명에 따른 움직임 검출 장치에서는, 제 2 기억 수단에는 데이터 전송 제어 수단과 제 2 움직임 검출 수단 중 어느 한쪽이 액세스한다.In the motion detection apparatus according to the twelfth invention, either the data transfer control means or the second motion detection means accesses the second storage means.

제 13 발명에 따른 움직임 검출 장치에서는, 제 3 기억 수단에는 데이터 전송 제어 수단과 제 3 움직임 검출 수단 중 어느 한쪽이 액세스한다.In the motion detection apparatus according to the thirteenth invention, either the data transfer control means or the third motion detection means accesses the third storage means.

제 14 발명에 따른 움직임 검출 장치에서는, 제 3 기억 수단에는 데이터 전송 제어 수단과 움직임 보상 수단 중 어느 한쪽이 액세스한다.In the motion detection apparatus according to the fourteenth aspect, either the data transmission control means or the motion compensation means accesses the third storage means.

이들 구성에 의하면, 파이프라인 버퍼를 마련하지 않더라도, 데이터 전송과 움직임 검출을 실행할 수 있다.According to these configurations, data transfer and motion detection can be performed without providing a pipeline buffer.

제 15 발명에 따른 움직임 검출 장치에서는, 제 1 움직임 검출 수단으로 검출한 움직임 벡터를 기준으로 하여, 필요한 범위의 참조 화상의 데이터가 제 2 기억 수단으로부터 제 3 기억 수단으로 전송된다.In the motion detection apparatus according to the fifteenth invention, the data of the reference image in the required range is transmitted from the second storage means to the third storage means on the basis of the motion vector detected by the first motion detection means.

이 구성에 의하면, 주 기억 수단으로부터 제 3 기억 수단으로의 데이터 전송을 생략할 수 있다.According to this configuration, data transfer from the main storage means to the third storage means can be omitted.

제 16 발명에 따른 움직임 검출 장치에서는, 제 1 움직임 검출 수단으로 검출한 움직임 벡터를 기준으로 하여, 필요한 범위의 참조 화상의 데이터가 제 1 기억 수단으로부터 상기 제 2 기억 수단으로 전송된다.In the motion detection apparatus according to the sixteenth aspect of the invention, data of a reference image in a necessary range is transmitted from the first storage means to the second storage means on the basis of the motion vector detected by the first motion detection means.

이 구성에 의하면, 주 기억 수단으로부터 제 2 기억 수단으로의 데이터 전송을 생략할 수 있다.According to this configuration, data transfer from the main storage means to the second storage means can be omitted.

(발명의 효과)(Effects of the Invention)

본 발명에 의하면, 파이프라인 처리에 있어서의 시간 지연을 감소시켜 프레임 지연의 발생을 억제하고, 또한, 파이프라인 버퍼의 수를 감소시킬 수 있는 동화상 부호화용의 움직임 검출 장치를 제공할 수 있다.According to the present invention, it is possible to provide a motion detection apparatus for moving picture coding that can reduce the time delay in pipeline processing to suppress the occurrence of frame delay and also reduce the number of pipeline buffers.

도 1은 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 블록도,1 is a block diagram of a motion detection apparatus according to the first embodiment of the present invention;

도 2는 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 흐름도,2 is a flowchart of a motion detection apparatus according to the first embodiment of the present invention;

도 3은 본 발명의 실시예 1에 있어서의 참조 화상의 1/4로 추출된 정수 화소 배치도,3 is an integer pixel arrangement diagram extracted in one quarter of a reference image in Embodiment 1 of the present invention;

도 4는 본 발명의 실시예 1에 있어서의 참조 화상의 1/4로 추출된 1/2 화소 배치도,4 is a 1/2 pixel arrangement diagram extracted in one-fourth of a reference image in Embodiment 1 of the present invention;

도 5는 본 발명의 실시예 1에 있어서의 참조 화상의 1/4 화소 배치도,5 is a 1/4 pixel layout view of a reference image in Embodiment 1 of the present invention;

도 6은 본 발명의 실시예 1에 있어서의 참조 화상의 전송 범위를 나타내는 설명도,6 is an explanatory diagram showing a transmission range of a reference image in Example 1 of the present invention;

도 7은 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 파이프라인의 구성도,7 is a configuration diagram of a pipeline of the motion detection apparatus according to the first embodiment of the present invention;

도 8은 본 발명의 실시예 2에 있어서의 움직임 검출 장치의 블록도,8 is a block diagram of a motion detection apparatus in accordance with a second embodiment of the present invention;

도 9는 본 발명의 실시예 2에 있어서의 움직임 검출 장치의 흐름도,Fig. 9 is a flowchart of a motion detection device in Embodiment 2 of the present invention;

도 10은 본 발명의 실시예 2에 있어서의 휘도 좌표와 색차 좌표의 대응표,10 is a correspondence table of luminance coordinates and color difference coordinates in Example 2 of the present invention;

도 11은 본 발명의 실시예 2에 있어서의 색차 데이터의 전송 범위의 설명도,11 is an explanatory diagram of a transmission range of color difference data according to a second embodiment of the present invention;

도 12는 종래 기술에 의한 움직임 검출 장치의 파이프라인 구성도,12 is a pipeline configuration diagram of a motion detection apparatus according to the prior art;

도 13은 본 발명의 실시예 2에 있어서의 움직임 검출 장치의 파이프라인의 구성도,13 is a configuration diagram of a pipeline of a motion detection apparatus according to a second embodiment of the present invention;

도 14는 본 발명의 실시예 3에 있어서의 움직임 검출 장치의 블록도,Fig. 14 is a block diagram of a motion detection device in accordance with the third embodiment of the present invention;

도 15는 본 발명의 실시예 3에 있어서의 움직임 검출 장치의 흐름도,15 is a flowchart of a motion detection apparatus in accordance with a third embodiment of the present invention;

도 16은 본 발명의 실시예 3에 있어서의 움직임 검출 장치의 파이프라인의 구성도,16 is a configuration diagram of a pipeline of the motion detection apparatus in the third embodiment of the present invention;

도 17은 본 발명의 실시예 4에 있어서의 움직임 검출 장치의 흐름도,Fig. 17 is a flowchart of the motion detection apparatus in the fourth embodiment of the present invention;

도 18은 본 발명의 실시예 4에 있어서의 움직임 검출 장치의 파이프라인의 구성도,18 is a configuration diagram of a pipeline of a motion detection apparatus in Embodiment 4 of the present invention;

도 19는 본 발명의 실시예 5에 있어서의 움직임 검출 장치의 블록도,19 is a block diagram of a motion detection device in Embodiment 5 of the present invention;

도 20은 본 발명의 실시예 5에 있어서의 움직임 검출 장치의 흐름도,20 is a flowchart of a motion detection device in Example 5 of the present invention;

도 21은 본 발명의 실시예 5에 있어서의 움직임 검출 장치의 파이프라인의 구성도,21 is a configuration diagram of a pipeline of a motion detection device in Embodiment 5 of the present invention;

도 22는 종래의 일반적인 움직임 검출부의 블록도,22 is a block diagram of a conventional general motion detector;

도 23은 종래의 일반적인 움직임 검출부의 흐름도,23 is a flowchart of a conventional general motion detector;

도 24는 1화소마다 추출된 정수 화소의 예시도,24 is an exemplary diagram of integer pixels extracted for each pixel;

도 25는 정수 화소 B의 근방에 생성된 1/2 화소의 예시도,25 is an exemplary diagram of 1/2 pixels generated in the vicinity of the integer pixel B;

도 26은 동화상 부호화 처리의 흐름도,26 is a flowchart of a video encoding process;

도 27은 동화상 부호화의 파이프라인 처리의 예시도,27 is an illustration of pipeline processing of video encoding;

도 28은 움직임 검출의 흐름도,28 is a flowchart of motion detection;

도 29는 움직임 검출의 파이프라인의 구성도이다.29 is a configuration diagram of a pipeline of motion detection.

도면의 주요 부분에 대한 부호의 설명Explanation of symbols for the main parts of the drawings

1 : 정수 화소 정밀도 움직임 검출부 1: integer pixel precision motion detector

2 : 1/2 화소 정밀도 움직임 검출부2: 1 / 2-pixel precision motion detector

3 : 움직임 보상부 4 : 제 1 로컬 메모리3: motion compensation unit 4: first local memory

5 : 제 2 로컬 메모리 6 : 제 3 로컬 메모리5: second local memory 6: third local memory

7 : DMA 컨트롤러 8 : SDRAM7: DMA controller 8: SDRAM

20 : 프로세서 21 : 정수 화소 정밀도 움직임 검출기20 processor 21 integer pixel precision motion detector

22 : 1/2 화소 정밀도 움직임 검출기 22: 1 pixel precision motion detector

23 : 1/4 화소 정밀도 움직임 검출기23: 1 / 4-pixel precision motion detector

24 : 움직임 보상기 31, 32, 33 : 로컬 메모리24: motion compensator 31, 32, 33: local memory

41 : SDRAM 42 : DMA 컨트롤러41: SDRAM 42: DMA Controller

다음에, 도면을 참조하면서 본 발명의 실시예를 설명한다.Next, an embodiment of the present invention will be described with reference to the drawings.

(실시예 1)(Example 1)

도 1은 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 블록도이다. 본 실시예의 움직임 검출 장치는 도 1에 나타내는 바와 같이, 정수 화소 정밀도 움직임 검출기(21), 1/2 화소 정밀도 움직임 검출기(22), 1/4 화소 정밀도 움직임 검출기(23), 로컬 메모리(31, 32, 33), SDRAM(41), DMA 컨트롤러(42) 및 프로세서(20)를 구비한다.1 is a block diagram of a motion detection apparatus according to the first embodiment of the present invention. As shown in FIG. 1, the motion detection apparatus of this embodiment includes an integer pixel precision motion detector 21, a 1/2 pixel precision motion detector 22, a 1/4 pixel precision motion detector 23, and a local memory 31. 32 and 33, SDRAM 41, DMA controller 42 and processor 20.

정수 화소 정밀도 움직임 검출기(21)는 제 1 움직임 검출 수단에 상당하고, 1/2 화소 정밀도 움직임 검출기(22)는 제 2 움직임 검출 수단에 상당하며, 1/4 화소 정밀도 움직임 검출기(23)는 제 3 움직임 검출 수단에 상당한다.The integer pixel precision motion detector 21 corresponds to the first motion detection means, the 1/2 pixel precision motion detector 22 corresponds to the second motion detection means, and the 1/4 pixel precision motion detector 23 is It corresponds to three motion detection means.

로컬 메모리(31)는 제 1 기억 수단에 상당하고, 정수 화소 정밀도 움직임 검출기(21)가 사용하는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터를 저장한다. 로컬 메모리(32)는 제 2 기억 수단에 상당하고, 1/2 화소 정밀도 움직임 검출기(22)가 사용하는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터를 저장한다. 로컬 메모리(33)는 제 3 기억 수단에 상당하고, 1/4 화소 정밀도 움직임 검출기(23)가 사용하는 참조 화상 데이터와 부호화 대상 매크로 블 록의 화상 데이터를 저장한다. SDRAM(41)은 주 기억 장치에 상당하고, 현 프레임과 참조 프레임의 화상 데이터를 저장한다.The local memory 31 corresponds to the first storage means, and stores the reference image data used by the integer pixel precision motion detector 21 and the image data of the encoding target macroblock. The local memory 32 corresponds to the second storage means, and stores the reference image data used by the 1/2 pixel precision motion detector 22 and the image data of the encoding target macroblock. The local memory 33 corresponds to the third storage means, and stores the reference image data used by the 1/4 pixel precision motion detector 23 and the image data of the encoding target macroblock. The SDRAM 41 corresponds to the main memory device and stores image data of the current frame and the reference frame.

DMA 컨트롤러(42)는 데이터 전송 제어 수단에 상당하고, SDRAM(41)과 로컬 메모리(31, 32, 33)간의 데이터 전송을 제어한다. 프로세서(20)는 움직임 검출 장치 전체의 처리를 제어한다. 또한, 도 1에 있어서, 실선은 데이터선을 나타내고, 점선은 제어선을 나타낸다.The DMA controller 42 corresponds to a data transfer control means and controls data transfer between the SDRAM 41 and the local memories 31, 32, 33. The processor 20 controls the processing of the entire motion detection apparatus. 1, the solid line represents a data line, and the dotted line represents a control line.

도 2는 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 흐름도이다. 도 1을 참조하면서, 도 2에 따라, 본 실시예의 움직임 검출 장치의 동작을 설명한다.2 is a flowchart of a motion detection apparatus according to the first embodiment of the present invention. With reference to FIG. 1, the operation | movement of the motion detection apparatus of this embodiment is demonstrated according to FIG.

단계 S31에 있어서, 정수 화소 정밀도 움직임 검출에 사용하는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터가 DMA 컨트롤러(42)의 제어 하에, SDRAM(41)으로부터 로컬 메모리(31)로 전송된다.In step S31, the reference image data used for integer pixel precision motion detection and the image data of the encoding target macroblock are transferred from the SDRAM 41 to the local memory 31 under the control of the DMA controller 42.

단계 S32에 있어서, 정수 화소 정밀도 움직임 검출기(21)는 로컬 메모리(31)로 전송된 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터를 사용하여, 정수 화소 정밀도 움직임 검출을 실시한다. 정수 화소 움직임 검출은 블록 매칭법에 따라서 실시된다.In step S32, the integer pixel precision motion detector 21 performs integer pixel precision motion detection using the reference image data transferred to the local memory 31 and the image data of the encoding target macroblock. Integer pixel motion detection is performed according to the block matching method.

이하의 설명에서는, 본 실시예의 정수 화소 정밀도 움직임 검출을 수평 방향으로 1/4로 추출된 참조 화상에 대하여 실시하는 예에 대하여 기술한다.In the following description, an example in which integer pixel precision motion detection of the present embodiment is performed on a reference image extracted in the horizontal direction in 1/4 is described.

도 3은 본 발명의 실시예 1에 있어서의 참조 화상의 1/4로 추출된 정수 화소 배치도이다. 이 도면에 있어서, 흰 원의 화소 Fp1은 추출되지 않은 정수 화소를 나타내고, 검은 원의 화소 Fp2는 추출된 정수 화소를 나타낸다. 이 예에서는, 참조 화상은 수평 방향으로 1/4로 추출되고 있다. 수평 방향으로 4 화소 단위로 유효 데이터가 존재하기 때문에, 수평 방향의 움직임 검출의 정밀도가 1/4이 된다.FIG. 3 is an integer pixel arrangement diagram extracted as one-fourth of the reference image in Embodiment 1 of the present invention. FIG. In this figure, the pixel Fp1 of a white circle represents the integer pixel which was not extracted, and the pixel Fp2 of the black circle represents the extracted integer pixel. In this example, the reference image is extracted in a quarter in the horizontal direction. Since valid data exists in units of 4 pixels in the horizontal direction, the accuracy of motion detection in the horizontal direction is 1/4.

정수 화소 정밀도 움직임 검출의 방법은 수없이 많이 제안되어 있고, 대표적인 것으로서, 전 탐색, 구배법, 다이아몬드 서치, One―at-a―Time 등이 있다. 본 발명에서는, 어떤 방법을 이용하여도 좋다. 또한, 정수 화소 정밀도 움직임 검출의 평가 함수로는, 종래 기술의 차분 절대값 합, 차분 자승 합 등이 이용될 수 있다.Numerous methods have been proposed for integer pixel precision motion detection, and typical examples thereof include full search, gradient method, diamond search, and One-at-a-Time. In the present invention, any method may be used. In addition, as the evaluation function of integer pixel precision motion detection, the sum of absolute difference values, the difference square sum, and the like of the prior art can be used.

도 2로 되돌아가, 단계 S33에 있어서, 1/2 화소 정밀도 움직임 검출에 사용되는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터가 프로세서(20)의 명령에 의해, SDRAM(41)으로부터 로컬 메모리(32)로 전송된다.Returning to Fig. 2, in step S33, the reference image data used for 1/2 pixel precision motion detection and the image data of the encoding target macroblock are sent from the SDRAM 41 to the local memory (by the instruction of the processor 20). 32).

단계 S34에 있어서, 1/2 화소 정밀도 움직임 검출기(22)는 정수 화소 정밀도 움직임 검출로 검출한 움직임 벡터의 주변에서, 1/2 화소 정밀도 움직임 검출을 실시한다. 본 실시예의 1/2 화소 정밀도 움직임 검출에서는, 정수 화소 정밀도 움직임 검출로 검출한 움직임 벡터의 주변 8개의 1/2 화소에 대하여, 1/2 화소 정밀도 움직임 검출이 실시된다.In step S34, the 1/2 pixel precision motion detector 22 performs 1/2 pixel precision motion detection in the vicinity of the motion vector detected by integer pixel precision motion detection. In the 1/2 pixel precision motion detection of this embodiment, 1/2 pixel precision motion detection is performed with respect to eight 1/2 pixels around the motion vector detected by integer pixel precision motion detection.

이하의 설명에서는, 본 실시예의 1/2 화소 정밀도 움직임 검출을 수평 방향으로 1/4로 추출된 참조 화상에 대하여 실시하는 예에 대하여 설명한다.In the following description, an example of performing the 1/2 pixel precision motion detection of the present embodiment with respect to the reference image extracted in the horizontal direction in 1/4 is described.

도 4는 본 발명의 실시예 1에 있어서의 참조 화상의 1/4로 추출된 1/2 화소 배치도이다. 도 4에 있어서, 흰 원의 화소 Fp1은 추출되지 않은 정수 화소를 나타내고, 검은 원의 화소 Fp2는 추출된 정수 화소를 나타낸다. 또한, 작은 흰 원의 화소 Hp1은 추출되지 않은 정수 화소 Fp1로부터 산출된 1/2 화소를 나타낸다.Fig. 4 is a 1/2 pixel arrangement diagram extracted as one-fourth of the reference image in the first embodiment of the present invention. In FIG. 4, the pixel Fp1 of a white circle represents the integer pixel which was not extracted, and the pixel Fp2 of the black circle represents the extracted integer pixel. In addition, the small white circle pixel Hp1 represents 1/2 pixel computed from the integer pixel Fp1 which was not extracted.

1/2 화소는 상술한 바와 같이, 정수 화소값의 평균으로 산출한다. 도 4에 나타내는 바와 같이, 임의의 탐색 위치에 주목하면, 1/2 화소는 가로 방향으로 4화소 단위에서 유효하다. 또한, 같은 1/4로 추출된 처리에서도, 1/2 화소 정밀도 움직임 검출에는, 정수 화소 정밀도 움직임 검출시와 비교하여, 보다 많은 참조 화상 데이터가 필요하게 되는 것을 알 수 있다.1/2 pixel is computed as an average of integer pixel values as mentioned above. As shown in FIG. 4, attention is paid to arbitrary search positions, and 1/2 pixels are effective in units of four pixels in the horizontal direction. In addition, even in the processing extracted in the same quarter, it can be seen that the 1/2 pixel precision motion detection requires more reference image data as compared with the integer pixel precision motion detection.

도 2로 되돌아가, 단계 S35에 있어서, 1/4 화소 정밀도 움직임 검출에 사용되는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터가 프로세서(20)로부터의 명령에 의해, SDRAM(41)으로부터 로컬 메모리(33)로 전송된다.Returning to Fig. 2, in step S35, the reference image data and the image data of the encoding target macroblock used for the 1 / 4-pixel precision motion detection are sent from the SDRAM 41 to the local memory by an instruction from the processor 20. Is sent to 33.

단계 S36에 있어서, 1/4 화소 정밀도 움직임 검출기(23)는 1/2 화소 정밀도 움직임 검출로 검출한 움직임 벡터의 주변에서, 1/4 화소 정밀도 움직임 검출을 실시한다.In step S36, the 1/4 pixel precision motion detector 23 performs 1/4 pixel precision motion detection around the motion vector detected by 1/2 pixel precision motion detection.

움직임 검출의 최후의 계층인 1/4 화소 정밀도 움직임 검출에서는, 움직임 검출의 정밀도를 향상시키기 위해서, 화소의 추출은 행해지지 않는다.1/4 pixel precision which is the last layer of motion detection In motion detection, in order to improve the precision of motion detection, pixel extraction is not performed.

도 5는 본 발명의 실시예 1에 있어서의 참조 화상의 1/4 화소 배치도이다. 도 5에 있어서, 흰 원의 화소 Fp1은 정수 화소를 나타내고, 작은 흰 원의 화소 Hp1은 1/2 화소를 나타내고, 작은 검은 원의 화소 Qp1은 1/4 화소를 나타낸다. 화소 Fp1, 화소 Hp1 및 화소 Qp1의 부호 부가는 대표적인 것으로서, 모든 화소에 부호를 부가하고 있는 것은 아니다.FIG. 5 is a 1/4 pixel layout view of the reference image in Embodiment 1 of the present invention. FIG. In FIG. 5, the pixel Fp1 of a white circle represents an integer pixel, the pixel Hp1 of a small white circle represents 1/2 pixel, and the pixel Qp1 of a small black circle represents 1/4 pixel. The code addition of the pixels Fp1, the pixel Hp1, and the pixel Qp1 is typical, and not all the pixels are coded.

1/4 화소의 산출은 1/2 화소가 정수 화소로부터 산출된 경우와 마찬가지로, 1/2 화소의 평균치로서 구해진다. 도 5에 나타낸 1/4 화소의 배치, 1/4 화소를 산출하기 위한 1/2 화소의 배치, 또, 1/2 화소를 산출하기 위한 정수 화소의 배치로부터 명백한 바와 같이, 1/4 화소 정밀도 움직임 검출에서는 정수 화소를 추출할 수 없다. 따라서, 추출이 있는 1/2 화소로부터의 1/2 화소 정밀도 움직임 검출이 종료되면, 1/4 화소 정밀도 움직임 검출용으로서, 추출이 없는 참조 화상 데이터를 전송해야 한다.Calculation of 1/4 pixels is calculated | required as an average value of 1/2 pixel similarly to the case where 1/2 pixel is computed from an integer pixel. As is apparent from the arrangement of the 1/4 pixels shown in Fig. 5, the arrangement of the 1/2 pixels for calculating the 1/4 pixels, and the arrangement of the integer pixels for calculating the 1/2 pixels, the 1/4 pixel precision In motion detection, integer pixels cannot be extracted. Therefore, when the detection of 1/2 pixel precision motion from the extracted 1/2 pixel is complete | finished, the reference image data without extraction must be transmitted for 1/4 pixel precision motion detection.

그런데, 전술한 바와 같이, 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송의 종료를 기다려, 1/4 화소 정밀도 움직임 검출을 실시하면, 1/4 화소 정밀도 움직임 검출의 개시가 지연되어, 대기 시간이 증가한다. 그래서, 도 2에 나타내는 단계 S35에서는, 정수 화소 정밀도 움직임 검출이 종료된 시점에서, 1/2 화소 정밀도 움직임 검출에 있어서의 탐색 범위를 포함하도록, 1/4 화소 정밀도 움직임 검출용의 데이터를 전송한다.By the way, as mentioned above, when waiting for the completion | finish of transfer of the reference image data for 1/4 pixel precision motion detection, and performing 1/4 pixel precision motion detection, the start of 1/4 pixel precision motion detection will be delayed, The waiting time is increased. Therefore, in step S35 shown in FIG. 2, when the integer pixel precision motion detection is completed, data for 1/4 pixel precision motion detection is transmitted so as to include a search range in 1/2 pixel precision motion detection. .

도 6은 본 발명의 실시예 1에 있어서의 참조 화상의 전송 범위를 나타내는 설명도이다. 도 6에 있어서, 각 화소의 부호는 도 5와 마찬가지이며, 설명을 생략한다.6 is an explanatory diagram showing a transmission range of a reference image in Embodiment 1 of the present invention. In FIG. 6, the code | symbol of each pixel is the same as that of FIG. 5, and abbreviate | omits description.

도 6에 나타내는 예에서는, 부호화하는 매크로 블록은 3화소×3화소로 구성된다고 가정하고 있다(실제로는, 부호화하는 매크로 블록은 16화소×16화소로 구성됨). 실선의 테두리(51)가 정수 화소 정밀도 움직임 검출로 매칭을 취한 매크로 블록이며, 그 정수 화소 정밀도 움직임 벡터 MV-INT의 위치는 테두리(51)의 좌측 상단의 화소 Fp3의 좌표로 주어진다. 점선으로 나타내는 테두리(52)는 1/4 화소 정밀도 움직임 검출용으로 전송해야 할 참조 화상의 범위를 나타낸다. 즉, 테두리(52)는 1/2 화소 정밀도 움직임 검출에 있어서, 화소 Fp3으로 표시되는 움직임 벡터 MV-INT의 위치로부터, 그 주변의 8개의 1/2 화소 중 어느 것으로 1/2 화소 정밀도 움직임 벡터 MV-HALF의 검출 결과가 귀착되더라도, 다음 1/4 화소 정밀도 움직임 검출을 위한 1/4 화소를 생성하기 위해 필요한 정수 화소가 반드시 포함되도록 하는 화소의 범위를 나타내고 있다.In the example shown in FIG. 6, it is assumed that the macroblock to be encoded is composed of 3 pixels x 3 pixels (actually, the macroblock to be encoded is composed of 16 pixels x 16 pixels). The solid edge 51 is a macroblock matched by integer pixel precision motion detection, and the position of the integer pixel precision motion vector MV-INT is given by the coordinates of the pixel Fp3 at the upper left of the edge 51. The border 52 indicated by the dotted line indicates the range of the reference image to be transmitted for 1/4 pixel precision motion detection. That is, the edge 52 is a 1/2 pixel precision motion vector from any position of the eight 1/2 pixels in the vicinity from the position of the motion vector MV-INT represented by the pixel Fp3 in the 1/2 pixel precision motion detection. Even if the detection result of MV-HALF results, the range of the pixel so that integral integer pixels necessary for generating 1/4 pixels for the next 1/4 pixel precision motion detection is necessarily included.

이와 같이, 1/4 화소 정밀도 움직임 검출을 위한 참조 화상 데이터의 전송 범위를 테두리(52)로 나타내는 범위로 설정하면, 1/4 화소 정밀도 움직임 검출을 위한 참조 화상 데이터를, 정수 화소 정밀도 움직임 검출에 있어서 움직임 벡터 MV-INT가 확정된 단계에서, 도 1의 SDRAM(41)으로부터 로컬 메모리(33)로 전송할 수 있다. 이 결과, 1/2 화소 정밀도 움직임 검출의 결과를 기다리지 않고서, 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터를 전송할 수 있기 때문에, 1/4 화소 정밀도 움직임 검출의 데이터 대기 시간이 감소되어, 매크로 블록 처리의 대기 시간이 개선된다.In this way, when the transmission range of the reference image data for 1/4 pixel precision motion detection is set to the range indicated by the edge 52, the reference image data for 1/4 pixel precision motion detection is determined for integer pixel precision motion detection. In the step where the motion vector MV-INT is determined, it can be transferred from the SDRAM 41 of FIG. 1 to the local memory 33. As a result, since the reference image data for 1/4 pixel precision motion detection can be transmitted without waiting for the result of 1/2 pixel precision motion detection, the data waiting time of 1/4 pixel precision motion detection is reduced, and the macro The latency of block processing is improved.

도 7은 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 파이프라인의 구성을 나타낸다. 도 7은 본 실시예의 움직임 검출 장치의 처리의 파이프라인이 움직임 검출 처리와 참조 화상 DMA 전송 처리로 나뉘어, 스테이지-0으로부터 스테이지-4에 걸쳐 구성되어 있는 것을 나타내고 있다. 상술한 바와 같이, 본 실시예의 움직임 검출 장치에서는, 스테이지-3에 있어서, 1/2 화소 정밀도 움직임 검출과 동시에, 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송이 실시될 수 있기 때문에, 파이프라인 단수를 한단 감소시킬 수 있다.7 shows the configuration of a pipeline of the motion detection apparatus according to the first embodiment of the present invention. Fig. 7 shows that the pipeline of the process of the motion detection apparatus of the present embodiment is divided into a motion detection process and a reference image DMA transfer process and is configured from stage-0 to stage-4. As described above, in the motion detection apparatus of the present embodiment, in the stage-3, the reference image data for 1/4 pixel precision motion detection can be transferred simultaneously with the detection of the 1/2 pixel precision motion, The number of pipeline stages can be reduced by one step.

이상 설명한 바와 같이, 본 실시예의 움직임 검출 장치에 의하면, 파이프라인 단수를 한단 감소시킬 수 있고, 그만큼 움직임 검출 처리를 고속으로 실시할 수 있기 때문에, 파이프라인 처리에 있어서의 시간 지연을 감소시켜 프레임 지연의 발생을 억제할 수 있다.As described above, according to the motion detection apparatus of the present embodiment, since the number of pipeline stages can be reduced by one step, and the motion detection processing can be performed at a high speed, the frame delay can be reduced by reducing the time delay in the pipeline processing. Can be suppressed.

(실시예 2)(Example 2)

도 8은 본 발명의 실시예 2에 있어서의 움직임 검출 장치의 블록도이다. 도 8에 있어서, 도 1과 마찬가지인 구성 요소에 대해서는, 동일한 부호를 부가하는 것에 의해, 설명을 생략한다.8 is a block diagram of a motion detection apparatus in accordance with the second embodiment of the present invention. In FIG. 8, description is abbreviate | omitted by adding the same code | symbol about the component similar to FIG.

본 실시예의 움직임 검출 장치는 도 8에 나타내는 바와 같이, 정수 화소 정밀도 움직임 검출기(21), 1/2 화소 정밀도 움직임 검출기(22), 움직임 보상기(24), 로컬 메모리(31, 32, 33), SDRAM(41), DMA 컨트롤러(42) 및 프로세서(20)를 구비한다.As shown in FIG. 8, the motion detection apparatus of this embodiment includes an integer pixel precision motion detector 21, a 1/2 pixel precision motion detector 22, a motion compensator 24, local memories 31, 32, 33, The SDRAM 41, the DMA controller 42 and the processor 20 are provided.

로컬 메모리(31)는 제 1 기억 수단에 상당하고, 정수 화소 정밀도 움직임 검출기(21)가 사용하는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터를 저장한다. 로컬 메모리(32)는 제 2 기억 수단에 상당하고, 1/2 화소 정밀도 움직임 검출기(22)가 사용하는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터를 저장한다. 로컬 메모리(33)는 제 3 기억 수단에 상당하고, 움직임 보 상기(24)가 사용하는 참조 화상 데이터와 부호화 대상 매크로 블록의 화상 데이터를 저장한다. SDRAM(41)은 주 기억 장치에 상당하고, 현 프레임과 참조 프레임의 화상 데이터를 저장한다.The local memory 31 corresponds to the first storage means, and stores the reference image data used by the integer pixel precision motion detector 21 and the image data of the encoding target macroblock. The local memory 32 corresponds to the second storage means, and stores the reference image data used by the 1/2 pixel precision motion detector 22 and the image data of the encoding target macroblock. The local memory 33 corresponds to the third storage means, and stores the reference image data used by the motion compensation unit 24 and the image data of the encoding target macroblock. The SDRAM 41 corresponds to the main memory device and stores image data of the current frame and the reference frame.

DMA 컨트롤러(42)는 데이터 전송 제어 수단에 상당하고, SDRAM(41)과 로컬 메모리(31, 32, 33)간의 데이터 전송을 제어한다. 프로세서(20)는 움직임 검출 장치 전체의 처리를 제어한다. 또한, 도 8에 있어서, 실선은 데이터선을 나타내고, 점선은 제어선을 나타낸다.The DMA controller 42 corresponds to a data transfer control means and controls data transfer between the SDRAM 41 and the local memories 31, 32, 33. The processor 20 controls the processing of the entire motion detection apparatus. 8, the solid line represents a data line, and the dotted line represents a control line.

본 실시예의 움직임 검출 장치에서는, 움직임 검출은 정수 화소 정밀도와 1/2 화소 정밀도의 2계층에서 실시되고, 1/4 화소 정밀도 움직임 검출은 실시되지 않는다. 또한, 1/2 화소 정밀도 움직임 검출에서는, 참조 화상의 화소를 추출하지 않는 것으로 한다. 1/2 화소 정밀도 움직임 검출 후, 움직임 보상이 실시된다.In the motion detection device of the present embodiment, motion detection is performed in two layers of integer pixel precision and 1/2 pixel precision, and motion detection of 1/4 pixel precision is not performed. In addition, the pixel of a reference image shall not be extracted by 1/2 pixel precision motion detection. After 1/2 pixel precision motion detection, motion compensation is performed.

도 9는 본 발명의 실시예 2에 있어서의 움직임 검출 장치의 흐름도이다.Fig. 9 is a flowchart of a motion detection device in Embodiment 2 of the present invention.

도 8을 참조하면서, 도 9에 따라서, 본 실시예의 움직임 검출 장치의 동작을 설명한다.Referring to FIG. 8, the operation of the motion detection apparatus of this embodiment will be described with reference to FIG. 9.

단계 S41에 있어서의 정수 화소 정밀도 움직임 검출용의 참조 화상 데이터와 부호화 대상 매크로 블록 화상 데이터의 전송, 단계 S42에 있어서의 정수 화소 정밀도 움직임 검출, 단계 S43에 있어서의 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터와 부호화 대상 매크로 블록 화상 데이터의 전송 및 단계 S44에 있어서의 1/2 화소 정밀도 움직임 검출은 도 2에 나타낸 본 발명의 실시예 1에 있어서의 움직임 검출 장치의 흐름도의 단계 S31, 단계 S32, 단계 S33 및 단계 S34와 마찬가지이고, 설명을 생략한다.Transfer of reference image data for integer pixel precision motion detection and encoding target macroblock image data in step S41, integer pixel precision motion detection in step S42, and 1/2 pixel precision motion detection in step S43 The transfer of the reference image data and the encoding target macroblock image data and the 1/2 pixel precision motion detection in step S44 are performed by the steps S31 and S32 of the flowchart of the motion detection device according to the first embodiment of the present invention shown in FIG. Are the same as in step S33 and step S34, and description is omitted.

단계 S44에 있어서, 1/2 화소 정밀도 움직임 검출이 종료되면, 다음으로 움직임 보상을 실시한다. 움직임 보상은 휘도 성분의 참조 화상과 색차 성분의 참조 화상에 대하여 실시된다. 그러나, 이 단계에서는, 색차 성분의 참조 화상 데이터는 로컬 메모리(33)로 아직 전송되어 있지 않다. 또한, 색차 성분의 참조 화상 데이터 영역은 휘도 성분의 움직임 벡터가 확정된 후가 아니면 특정할 수 없기 때문에, 종래 기술에서는, 1/2 화소 정밀도 움직임 검출의 확정 후에, 색차 성분의 참조 화상 데이터를 전송해야 했다.In step S44, when the 1/2 pixel precision motion detection ends, motion compensation is performed next. Motion compensation is performed on the reference picture of the luminance component and the reference picture of the chrominance component. However, in this step, reference image data of the color difference component has not yet been transferred to the local memory 33. In addition, since the reference image data area of the color difference component cannot be specified unless the motion vector of the luminance component is determined, in the prior art, the reference image data of the color difference component is transmitted after the determination of the 1/2 pixel precision motion detection. I had to.

그래서, 본 실시예의 움직임 검출 장치에서는, 단계 S45에 있어서, 정수 화소 움직임 벡터가 확정된 단계에서, 1/2 화소 정밀도 움직임 검출의 탐색 범위를 포함하도록, 색차 성분의 참조 화상 데이터의 전송을 개시한다. 즉, 실시예 1에 있어서의 도 2의 단계 S35의 1/4 화소 정밀도 움직임 검출용 참조 화상 전송과 마찬가지로, 1/2 화소 정밀도 움직임 검출의 어떠한 탐색 결과에도 대응할 수 있도록, 필요한 색차 성분의 참조 화상 데이터 영역을 정의하고, 그 영역의 색차 성분의 참조 화상 데이터를 정수 화소 정밀도 움직임 검출에 있어서의 움직임 벡터의 결정 직후에, 도 8에 나타내는 SDRAM(41)으로부터 로컬 메모리(33)로 전송한다.Thus, in the motion detection apparatus of the present embodiment, in step S45, at the step where the integer pixel motion vector is determined, the transmission of the reference image data of the color difference component is started so as to include the search range of 1/2 pixel precision motion detection. . That is, as in the reference image transmission for 1/4 pixel precision motion detection in step S35 of FIG. 2 in Example 1, the reference image of the required color difference component can cope with any search result of 1/2 pixel precision motion detection. The data area is defined, and the reference image data of the color difference component of the area is transferred from the SDRAM 41 shown in FIG. 8 to the local memory 33 immediately after the determination of the motion vector in integer pixel precision motion detection.

단계 S46에 있어서, 단계 S44에 있어서의 1/2 화소 정밀도 움직임 검출 결과에 따라, 로컬 메모리(33)에 저장되어 있는 휘도 성분의 참조 화상 데이터와 색차 성분의 참조 화상 데이터를 판독하고, 움직임 보상을 행한다.In step S46, in accordance with the 1/2 pixel precision motion detection result in step S44, the reference image data of the luminance component and the reference image data of the chrominance component stored in the local memory 33 are read out, and motion compensation is performed. Do it.

상술한 단계 S45에 있어서의 색차 성분의 참조 화상 데이터의 구체적인 전송 방법을 또한 설명한다.The specific transmission method of the reference image data of the color difference component in step S45 described above will also be described.

도 10은 본 발명의 실시예 2에 있어서의 휘도 좌표와 색차 좌표의 대응표이다. 이 대응표는 수평 방향과 수직 방향의 좌표에 동일하게 적용할 수 있다.10 is a correspondence table of luminance coordinates and color difference coordinates in Example 2 of the present invention. This correspondence table is equally applicable to the horizontal and vertical coordinates.

색차 성분의 참조 화상 데이터(이하, 색차 데이터라 부름)는 수평 방향과 수직 방향의 각각에 있어서, 휘도 성분의 참조 화상 데이터(이하, 휘도 데이터라 부름)의 절반의 양이기 때문에, 각각의 방향에서 휘도 데이터 2개에 대하여 색차 데이터 1개가 대응한다(화면 전체에서는, 휘도 데이터 4개에 대하여 색차 데이터 1개가 대응함). 즉, 도 10에 나타내는 바와 같이, 휘도의 좌표값 「O」은 색차의 좌표값 「O」에, 휘도의 좌표값 「0.5」, 「1」, 「1.5」는 색차의 좌표값 「0.5」에, 휘도의 좌표값 「2」는 색차의 좌표값 「1」에 각각 대응한다고 하는 상태이다. 이 좌표 변환 규칙에 의하면, 예컨대, 휘도 데이터의 XY 좌표 (1.5, 2.5)에 대응하는 색차 데이터의 XY 좌표는 (0.5, 1.5)이다.Since the reference image data of the chrominance component (hereinafter referred to as chrominance data) is the amount of half of the reference image data of the luminance component (hereinafter referred to as luminance data) in each of the horizontal direction and the vertical direction, One color difference data corresponds to two luminance data (one color difference data corresponds to four luminance data in the whole screen). That is, as shown in FIG. 10, the coordinate value "O" of the luminance corresponds to the coordinate value "O" of the color difference, and the coordinate values "0.5", "1", and "1.5" of the luminance correspond to the coordinate value "0.5" of the color difference. The coordinate value "2" of the luminance corresponds to the coordinate value "1" of the color difference, respectively. According to this coordinate conversion rule, for example, the XY coordinates of the color difference data corresponding to the XY coordinates (1.5, 2.5) of the luminance data are (0.5, 1.5).

움직임 보상에 있어서, 피부호화 매크로 블록의 16화소×16화소의 휘도 데이터에 대응하여 생성해야 하는 색차 데이터는 8화소×8화소이다. 도 11은 본 발명의 실시예 2에 있어서의 색차 데이터의 전송 범위의 설명도이다. 도 11은 설명을 간단히 하기 위해, 수평 방향에 있어서의 휘도 데이터의 좌표로부터 색차 데이터의 좌표로 좌표 변환하는 예를 나타내고 있다.In motion compensation, the color difference data to be generated corresponding to the luminance data of 16 pixels x 16 pixels of the skin-decoding macro block is 8 pixels x 8 pixels. 11 is an explanatory diagram of a transmission range of color difference data in Example 2 of the present invention. FIG. 11 shows an example of coordinate conversion from coordinates of luminance data in the horizontal direction to coordinates of color difference data for simplicity of explanation.

지금, 휘도 데이터에 있어서, 정수 화소 정밀도 움직임 검출의 결과, 정수 화소 정밀도 움직임 벡터 MV-INT의 위치는 검은 원의 정수 화소 Fp12로 구해졌다 고 가정한다. 다음의 계층의 1/2 화소 정밀도 움직임 검출에서는, 1/2 화소 정밀도 움직임 벡터가 검출될 가능성이 있는 좌표 위치는 정수 화소 Fp12의 좌우의 1/2 화소 Hp11과 1/2 화소 Hp12 및 정수 화소 Fp12 그 자신이다. 예컨대, 정수 화소 Fp12의 X 좌표가 「2」인 경우, 1/2 화소 정밀도 움직임 벡터가 검출될 가능성이 있는 화소 Hp11, Fp12, Hp12의 X 좌표는 각각, 「1.5」, 「2」, 「2.5」가 된다.Now, in the luminance data, it is assumed that as a result of integer pixel precision motion detection, the position of the integer pixel precision motion vector MV-INT is obtained by the integer pixel Fp12 of the black circle. In the 1 / 2-pixel precision motion detection of the next layer, the coordinate positions where the 1 / 2-pixel precision motion vector may be detected are 1/2 pixels Hp11 and 1/2 pixels Hp12 and integer pixels Fp12 to the left and right of the integer pixel Fp12. He is himself. For example, when the X coordinate of the integer pixel Fp12 is "2", the X coordinates of the pixels Hp11, Fp12, and Hp12 for which 1/2 pixel precision motion vector may be detected are "1.5", "2", and "2.5", respectively. It becomes.

이들 휘도 데이터의 좌표에 대응하는 색차 데이터의 좌표와 화소는 도 10의 좌표 변환 규칙으로부터, 좌표 「0.5」의 1/2 화소 Hp20, 좌표 「1」의 정수 화소 Fp21, 좌표 「1.5」의 1/2 화소 Hp21이 된다. 즉, 색차 데이터의 1라인-8화소분으로서 생성될 가능성이 있는 화소의 좌표는 다음 3개의 경우 중 하나이다.The coordinates and pixels of the color difference data corresponding to the coordinates of the luminance data are based on the coordinate conversion rule of FIG. 10, and the pixel 1/2 of the coordinate "0.5" Hp20, the integer pixel Fp21 of the coordinate "1", and the 1/2 of the coordinate "1.5". It becomes two pixel Hp21. That is, the coordinates of a pixel that may be generated as one line to eight pixels of color difference data are one of the following three cases.

Figure 112006076942233-pct00003
Figure 112006076942233-pct00003

좌표 「0.5」의 1/2 화소 Hp20으로부터 좌표 「7.5」의 1/2 화소 Hp27까지를 포함하는 경우, (1)의 색차 데이터를 생성하기 위해서는, 좌표 「0」의 정수 화소 Fp20으로부터 좌표 「8.0」의 정수 화소 Fp28까지를 SDRAM(41)으로부터 로컬 메모리(33)로 전송해야 한다.In the case of including from 1/2 pixel Hp20 of coordinate "0.5" to 1/2 pixel Hp27 of coordinate "7.5", in order to generate the color difference data of (1), coordinate "8.0" from integer pixel Fp20 of coordinate "0". Integer pixel Fp28 must be transferred from the SDRAM 41 to the local memory 33.

좌표 「1.5」의 정수 화소 Hp21로부터 좌표 「8.5」의 정수 화소 Hp28을 포함하는 경우, (3)의 색차 데이터를 생성하기 위해서는, 좌표 「1」의 정수 화소 Fp21로부터 좌표 「9.0」의 정수 화소 Fp29까지를 SDRAM(41)으로부터 로컬 메모 리(33)로 전송해야 한다.When the integer pixel Hp28 of the coordinate "8.5" is included from the integer pixel Hp21 of the coordinate "1.5", in order to generate the color difference data of (3), the integer pixel Fp29 of the coordinate "9.0" from the integer pixel Fp21 of the coordinate "1" Up to the local memory 33 from the SDRAM 41.

이상으로부터, 경우 (1), (2), (3)의 색차 데이터를 전부 생성할 수 있도록 하기 위해서는, 좌표 「0」의 정수 화소 Fp20으로부터 좌표 「9.0」의 정수 화소 Fp29까지를 SDRAM(41)으로부터 로컬 메모리(33)로 전송하면 된다. 이와 같이 계산하는 것으로, 1/2 화소 정밀도 움직임 검출이 종료되기 전에, 색차의 참조 화상 데이터를 전송하는 것이 가능하다.From the above, in order to be able to generate all the color difference data in the cases (1), (2), and (3), the SDRAM (41) is converted from the integer pixel Fp20 at the coordinate "0" to the integer pixel Fp29 at the coordinate "9.0". To the local memory 33. By calculating in this way, it is possible to transmit the reference image data of the color difference before the 1/2 pixel precision motion detection ends.

이와 같이, 본 실시예의 움직임 검출 장치에 의하면, 1/2 화소 정밀도 움직임 검출의 결과를 기다리지 않고, 움직임 보상용의 참조 화상 데이터를 전송할 수 있기 때문에, 움직임 보상에 필요한 참조 화상 데이터를 취득하기 위한 대기 시간이 감소되고, 매크로 블록 처리의 대기 시간이 개선된다.As described above, according to the motion detection apparatus of the present embodiment, the reference image data for motion compensation can be transmitted without waiting for the result of the 1/2 pixel precision motion detection, and thus the standby for acquiring the reference image data necessary for motion compensation. The time is reduced, and the waiting time of macro block processing is improved.

여기서, 본 실시예의 움직임 검출 장치에 있어서의 필요한 파이프라인 단수와 파이프라인 버퍼수의 감소 효과를 보다 명확히 하기 위해서, 종래 기술과 비교해보자.Here, in order to clarify the effect of reducing the required number of pipeline stages and the number of pipeline buffers in the motion detection apparatus of the present embodiment, it will be compared with the prior art.

도 12는 종래 기술에 의한 움직임 검출 장치의 파이프라인 구성을 나타낸다. 동시에, 도 12에는, 각 단에서 필요한 파이프라인 버퍼를 나타내고 있다.12 shows a pipeline configuration of a motion detection apparatus according to the prior art. At the same time, Fig. 12 shows the pipeline buffers required at each stage.

도 12에 나타내는 바와 같이, 스테이지-0에 있어서, 현재 전송되고 있는 참조 화상의 휘도 데이터를 유지하기 위한 참조 화상 버퍼(휘도)가 필요하게 된다. 이것은 다른 매크로 블록 세대에 있어서, 데이터 전송과 처리가 스테이지-O과 스테이지-1에서 동시에 실시되고 있기 때문이다. 예컨대, 스테이지-1에서 (n)번째의 매크로 블록의 정수 화소 정밀도 움직임 검출을 실행하고 있을 때에, 스테이지 -O에서 (n+1)번째의 매크로 블록의 정수 화소 정밀도 움직임 검출용의 참조 화상 데이터를 병행하여 전송하고 있다. 이 때, (n)번째의 매크로 블록의 정수 화소 정밀도 움직임 검출에서 참조하고 있는 메모리 영역을 파괴하지 않기 위해, 스테이지-O에 있어서의 데이터 전송을 위해 별도의 버퍼를 마련해야 한다. 또한, 스테이지-1의 정수 화소 정밀도 움직임 검출에 사용되는 현 화상의 매크로 블록 데이터(휘도 데이터와 색차 데이터)를 스테이지-O에 있어서 동시에 전송하기 위해, 현 매크로 블록 버퍼(휘도·색차)가 필요하다.As shown in FIG. 12, in stage-0, a reference picture buffer (luminance) for holding the luminance data of the reference picture currently being transmitted is required. This is because data transfer and processing are simultaneously performed in stage-0 and stage-1 in different macroblock generations. For example, when performing integer pixel precision motion detection of the (n) -th macroblock in stage-1, reference image data for integer pixel precision motion detection of the (n + 1) -th macroblock in stage-O is performed. It is transmitting in parallel. At this time, in order not to destroy the memory area referenced by the integer pixel precision motion detection of the (n) -th macroblock, a separate buffer must be provided for data transfer in the stage-O. In addition, in order to simultaneously transfer the macroblock data (luminance data and chrominance data) of the current image used for the integer pixel precision motion detection of stage-1 in stage-O, a current macroblock buffer (luminance and color difference) is required. .

종래 기술에 의한 움직임 검출 장치에서는, 움직임 보상용 데이터의 전송이 스테이지-2의 1/2 화소 정밀도 움직임 검출이 완료된 후에 실행되기 때문에, 움직임 보상을 스테이지-2와는 다른 스테이지-3에서 행할 필요가 있다. 이것은 1/2 화소 정밀도 움직임 검출과 움직임 보상의 처리를 같은 단에서 행하는 것이 기능상 어렵기 때문이다. 이 결과, 스테이지-2에, 휘도 데이터 전송용의 참조 화상 버퍼(휘도)와, 색차 데이터 전송용의 참조 화상 버퍼(색차), 스테이지-3에, 휘도 데이터 움직임 보상용의 참조 화상 버퍼(휘도)와, 색차 데이터 움직임 보상용의 참조 화상 버퍼(색차)가 필요하게 된다.In the motion detection apparatus according to the prior art, since the transmission of the motion compensation data is executed after the 1/2 pixel precision motion detection of the stage-2 is completed, it is necessary to perform the motion compensation in the stage-3 different from the stage-2. . This is because it is functionally difficult to perform 1/2 pixel precision motion detection and motion compensation in the same stage. As a result, in the stage-2, the reference image buffer (luminance) for the luminance data transfer, the reference image buffer for the chrominance data transfer (color difference), and the reference image buffer (luminance) for the luminance data motion compensation in the stage-3 Then, a reference picture buffer (color difference) for color difference data motion compensation is required.

이와 같이, 종래 기술에 의한 움직임 검출 장치에서는, 4단의 파이프라인이 필요하고, 파이프라인 버퍼는 총 10개가 필요하다.As described above, in the motion detection apparatus according to the prior art, four pipelines are required, and a total of 10 pipeline buffers are required.

도 13은 본 발명의 실시예 2에 있어서의 움직임 검출 장치의 파이프라인의 구성을 나타낸다. 본 실시예의 파이프라인 구성에 의하면, 스테이지-O에 있어서 정수 화소 정밀도 움직임 검출용 데이터 전송을 행하고, 스테이지-1에 있어서 정 수 화소 정밀도 움직임 검출을 행하여, 그 결과를 받아 1/2 화소 정밀도 움직임 검출용 데이터 전송을 행한다. 스테이지―2에 있어서 1/2 화소 정밀도 움직임 검출과 움직임 보상용 데이터(색차 데이터) 전송을 병행하여 행하고, 그 후 움직임 보상을 실시한다.Fig. 13 shows the configuration of a pipeline of the motion detection apparatus in the second embodiment of the present invention. According to the pipeline configuration of this embodiment, data for integer pixel precision motion detection is transmitted in stage-O, integer pixel precision motion detection is performed in stage-1, and the result is received to receive 1/2 pixel precision motion detection. Data transfer is performed. In stage-2, 1/2 pixel precision motion detection and motion compensation data (color difference data) transmission are performed in parallel, and then motion compensation is performed.

이와 같이, 본 실시예의 움직임 검출 장치에 의하면, 스테이지―1의 정수 화소 정밀도 움직임 검출의 결과에 의해, 움직임 보상용 데이터(색차 데이터)의 전송 범위를 특정하고, 움직임 보상용 데이터(휘도 데이터와 색차 데이터)의 전송을 스테이지―2에 있어서 1/2 화소 정밀도 움직임 검출과 병행하여 실시할 수 있기 때문에, 필요한 파이프라인 단수는 3단이다. 이것은 도 12에 나타낸 종래 기술에 의한 움직임 검출 장치보다 1단 적다.Thus, according to the motion detection apparatus of this embodiment, the transmission range of motion compensation data (color difference data) is specified by the result of integer pixel precision motion detection of stage-1, and the motion compensation data (luminance data and color difference) are specified. Since the data) can be transferred in parallel with the 1/2 pixel precision motion detection in the stage-2, the required number of pipeline stages is three stages. This is one stage less than the motion detection apparatus by the prior art shown in FIG.

도 13에는, 파이프라인의 각 단에서 필요하게 되는 파이프라인 버퍼도 동시에 나타내고 있다. 본 실시예의 움직임 검출 장치에서는, 필요한 파이프라인 버퍼는 각 단의 휘도 데이터용의 참조 화상 버퍼(휘도)와, 휘도 데이터와 색차 데이터용의 현 매크로 블록 버퍼(휘도·색차) 및 스테이지-2의 색차 데이터용의 참조 화상 버퍼(색차)의 총 7개이다. 즉, 본 실시예의 움직임 검출 장치에서는, 스테이지―3이 불필요하게 된 효과로서, 파이프라인 버퍼수를 도 12에 나타낸 종래 기술에 의한 움직임 검출 장치의 10개에서 7개로 감소시킬 수 있다.13 also shows the pipeline buffers required at each stage of the pipeline. In the motion detection device of the present embodiment, the required pipeline buffer includes a reference image buffer (luminance) for luminance data of each stage, a current macroblock buffer (luminance and color difference) for luminance data and color difference data, and a color difference between stage-2. A total of seven reference picture buffers (color differences) for data. That is, in the motion detection device of the present embodiment, the number of pipeline buffers can be reduced from ten to seven of the motion detection devices according to the prior art shown in FIG.

(실시예 3)(Example 3)

도 14는 본 발명의 실시예 3에 있어서의 움직임 검출 장치의 블록도이다. 도 14에 있어서, 도 1과 마찬가지인 구성 요소에 대해서는, 동일한 부호를 부가하고, 설명을 생략한다.Fig. 14 is a block diagram of a motion detection apparatus in accordance with the third embodiment of the present invention. In FIG. 14, the same code | symbol is attached | subjected about the component similar to FIG. 1, and description is abbreviate | omitted.

본 실시예의 움직임 검출 장치는 도 14에 나타내는 바와 같이, 정수 화소 정밀도 움직임 검출기(21), 1/2 화소 정밀도 움직임 검출기(22), 로컬 메모리(31, 32), SDRAM(41), DMA 컨트롤러(42) 및 프로세서(20)를 구비한다.As shown in Fig. 14, the motion detection device of this embodiment includes an integer pixel precision motion detector 21, a 1/2 pixel precision motion detector 22, local memories 31 and 32, an SDRAM 41, and a DMA controller ( 42 and a processor 20.

본 실시예의 움직임 검출 장치에서는, 정수 화소 정밀도 움직임 검출 후에, 1/2 화소 정밀도 움직임 검출을 실시하고, 1/4 화소 정밀도 움직임 검출은 실시하지 않는다. 또한, 1/2 화소 정밀도 움직임 검출에서는, 참조 화상의 화소를 추출하지 않는 것으로 한다.In the motion detection device of this embodiment, after integer pixel precision motion detection, 1/2 pixel precision motion detection is performed, and 1/4 pixel precision motion detection is not performed. In addition, the pixel of a reference image shall not be extracted by 1/2 pixel precision motion detection.

도 15는 본 발명의 실시예 3에 있어서의 움직임 검출 장치의 흐름도이다.Fig. 15 is a flowchart of the motion detection apparatus in the third embodiment of the present invention.

도 15에 나타내는 바와 같이, 본 실시예의 움직임 검출 장치는 단계 S51에 있어서, 정수 화소 정밀도 움직임 검출용의 참조 화상 데이터를 SDRAM(41)으로부터 로컬 메모리(31)로 전송한다.As shown in FIG. 15, the motion detection apparatus of this embodiment transfers reference image data for integer pixel precision motion detection from the SDRAM 41 to the local memory 31 in step S51.

단계 S52에 있어서, 정수 화소 정밀도 움직임 검출을 행한다.In step S52, integer pixel precision motion detection is performed.

단계 S53에 있어서, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터를 SDRAM(41)으로부터 로컬 메모리(32)로 전송한다. 이 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송은 단계 S51의 정수 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송과 병행하여 행해도 좋고, 단계 S52의 정수 화소 정밀도 움직임 검출과 병행하여 행해도 좋다.In step S53, reference image data for 1/2 pixel precision motion detection is transferred from the SDRAM 41 to the local memory 32. The transfer of reference image data for 1/2 pixel precision motion detection may be performed in parallel with the transfer of reference image data for integer pixel precision motion detection in step S51, or in parallel with integer pixel precision motion detection in step S52. Also good.

1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송할 영역은 정수 화소 정밀도 움직임 검출의 탐색 결과에 의존하지 않고 결정된다. 그 결정의 방법은 본 발명의 실시예 1에 있어서의 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송 영역의 결정의 방법과 마찬가지이다(도 6 참조). 즉, 현재 부호화중인 매크로 블록에 대하여, 정수 정밀도 움직임 벡터가 어떤 위치에 귀착되더라도, 1/2 화소 정밀도 움직임 검출에 필요한 참조 화상 데이터가 반드시 포함되도록, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송할 영역을 결정한다.The area to be transmitted of the reference image data for 1/2 pixel precision motion detection is determined without depending on the search result of integer pixel precision motion detection. The determination method is the same as the determination method of the transmission area of the reference image data for 1/4 pixel precision motion detection in Embodiment 1 of the present invention (see Fig. 6). That is, with respect to the macroblock currently being encoded, even if the integer precision motion vector comes to any position, the reference image data for 1/2 pixel precision motion detection is necessarily included so that the reference image data necessary for 1/2 pixel precision motion detection is included. Determine the area to be transferred.

단계 S54에 있어서, 단계 S52의 정수 화소 정밀도 움직임 검출의 탐색 결과를 기초로, 단계 S53에서 전송한 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터를 이용하여, 1/2 화소 정밀도 움직임 검출을 행한다.In step S54, based on the search result of the integer pixel precision motion detection in step S52, 1/2 pixel precision motion detection is performed using the reference image data for 1/2 pixel precision motion detection transferred in step S53. .

이와 같이, 본 실시예의 움직임 검출 장치에 의하면, 정수 화소 정밀도 움직임 검출의 결과를 기다리지 않고, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터를 전송할 수 있기 때문에, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 대기 시간이 감소되고, 매크로 블록 처리의 대기 시간이 개선된다.As described above, according to the motion detection device of the present embodiment, since reference image data for 1/2 pixel precision motion detection can be transmitted without waiting for the result of integer pixel precision motion detection, The waiting time of the reference picture data is reduced, and the waiting time of the macro block processing is improved.

도 16은 본 발명의 실시예 3에 있어서의 움직임 검출 장치의 파이프라인의 구성을 나타낸다. 본 실시예의 움직임 검출 장치에 의하면, 스테이지-1에 있어서, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터 전송이 실시될 수 있기 때문에, 파이프라인 단수가 1개 적은 것으로 족하다.Fig. 16 shows the configuration of a pipeline of the motion detection apparatus in the third embodiment of the present invention. According to the motion detection apparatus of the present embodiment, since the reference image data transfer for 1/2 pixel precision motion detection can be performed in the stage-1, the number of pipeline stages is sufficient.

(실시예 4)(Example 4)

본 발명의 실시예 4의 움직임 검출 장치는 도 1에 나타낸 본 발명의 실시예 1의 움직임 검출 장치와 같은 블록 구성이다. 따라서, 본 실시예의 움직임 검출 장치의 설명은 도 1을 참조하여 행한다.The motion detection apparatus of Embodiment 4 of the present invention has the same block configuration as the motion detection apparatus of Embodiment 1 of the present invention shown in FIG. Therefore, the motion detection apparatus of this embodiment will be described with reference to FIG.

본 실시예의 움직임 검출 장치는 본 발명의 실시예 1과 실시예 3을 조합시킨 것이며, 정수 화소 정밀도 움직임 검출, 1/2 화소 정밀도 움직임 검출 및 1/4 화소 정밀도 움직임 검출을 실시한다. 또한, 본 실시예의 움직임 검출 장치는 1/2 화소 정밀도 움직임 검출용의 참조 화상 전송을 정수 화소 정밀도 움직임 검출의 결과를 기다리는 일 없이 실시할 수 있고, 또한, 1/4 화소 정밀도 움직임 검출용의 참조 화상 전송을 정수 화소 정밀도 움직임 검출에 있어서 움직임 벡터가 확정된 직후에 개시할 수 있다.The motion detection device of this embodiment is a combination of Embodiment 1 and Embodiment 3 of the present invention, and performs integer pixel precision motion detection, 1/2 pixel precision motion detection, and 1/4 pixel precision motion detection. In addition, the motion detection apparatus of the present embodiment can perform the reference image transmission for 1/2 pixel precision motion detection without waiting for the result of integer pixel precision motion detection, and also the reference for 1/4 pixel precision motion detection. Image transmission can be started immediately after the motion vector is determined in integer pixel precision motion detection.

도 17은 본 발명의 실시예 4에 있어서의 움직임 검출 장치의 흐름도이다. 도 1을 참조하면서, 도 17에 따라, 본 실시예의 움직임 검출 장치의 동작을 설명한다.Fig. 17 is a flowchart of a motion detection device in Embodiment 4 of the present invention. Referring to FIG. 1, the operation of the motion detection apparatus of this embodiment will be described with reference to FIG. 17.

단계 S61에 있어서, 정수 화소 정밀도 움직임 검출용 참조 화상 데이터의 전송을 행한다.In step S61, the integer pixel precision motion detection reference image data is transferred.

단계 S62에 있어서, 정수 화소 정밀도 움직임 검출을 행한다.In step S62, integer pixel precision motion detection is performed.

단계 S62와 동시에, 단계 S63에 있어서, 1/2 화소 정밀도 움직임 검출용 참조 화상 데이터의 전송을 행한다.Simultaneously with step S62, in step S63, reference image data for 1/2 pixel precision motion detection is transferred.

단계 S64에 있어서, 단계 S62의 정수 화소 정밀도 움직임 검출의 탐색 결과 를 기초로, 단계 S63에서 전송한 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터를 이용하여, 1/2 화소 정밀도 움직임 검출을 행한다.In step S64, based on the search result of integer pixel precision motion detection in step S62, 1/2 pixel precision motion detection is performed using the reference image data for 1/2 pixel precision motion detection transferred in step S63. .

단계 S64와 동시에, 단계 S65에 있어서, 단계 S62의 정수 화소 정밀도 움직임 검출의 탐색 결과를 기초로 결정된 데이터 전송 영역에 대하여, 1/4 화소 정밀도 움직임 검출용 참조 화상 데이터의 전송을 행한다.Simultaneously with step S64, in step S65, reference image data for 1/4 pixel precision motion detection is transferred to the data transfer area determined on the basis of the search result of the integer pixel precision motion detection in step S62.

단계 S66에 있어서, 단계 S64의 1/2 화소 정밀도 움직임 검출의 탐색 결과를 기초로, 단계 S65에서 전송한 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터를 이용하여, 1/4 화소 정밀도 움직임 검출을 행한다.In step S66, based on the search result of 1/2 pixel precision motion detection in step S64, 1/4 pixel precision motion detection is performed using the reference image data for 1/4 pixel precision motion detection transferred in step S65. Is done.

이와 같이, 본 실시예의 움직임 검출 장치는 정수 화소 정밀도 움직임 검출의 결과를 기다리지 않고, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터를 전송할 수 있기 때문에, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 대기 시간이 감소된다. 또한, 1/2 화소 정밀도 움직임 검출의 결과를 기다리지 않고, 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터를 전송할 수 있기 때문에, 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터의 대기 시간이 감소된다. 이 결과, 본 실시예의 움직임 검출 장치에 의하면, 매크로 블록 처리의 대기 시간이 대폭 개선된다.As described above, since the motion detection device of the present embodiment can transmit reference image data for 1/2 pixel precision motion detection without waiting for the result of integer pixel precision motion detection, the reference image for 1/2 pixel precision motion detection The latency of data is reduced. In addition, since the reference image data for 1/4 pixel precision motion detection can be transmitted without waiting for the result of 1/2 pixel precision motion detection, the waiting time of the reference image data for 1/4 pixel precision motion detection is reduced. do. As a result, according to the motion detection apparatus of this embodiment, the waiting time for macroblock processing is greatly improved.

도 18은 본 발명의 실시예 4에 있어서의 움직임 검출 장치의 파이프라인의 구성을 나타낸다. 도 18에 나타내는 바와 같이, 본 실시예의 움직임 검출 장치는 스테이지-1에 있어서, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송이 실시될 수 있고, 또한, 스테이지―2에 있어서, 1/4 화소 정밀도 움직임 검출 용의 참조 화상 데이터의 전송이 실시될 수 있다. 그 결과, 본 실시예의 움직임 검출 장치에서는, 파이프라인 단수가 2단 감소된다. 또한, 본 실시예의 움직임 검출 장치는 매크로 블록 처리의 대기 시간이 움직임 벡터 검출의 실행 시간에 의해서만 결정되어, 데이터 전송에 의한 지연이 발생하지 않는다고 하는 특징을 갖는다.Fig. 18 shows a configuration of a pipeline of the motion detection apparatus in the fourth embodiment of the present invention. As shown in Fig. 18, in the motion detection device of the present embodiment, the reference image data for motion detection of 1/2 pixel precision can be transferred in stage-1, and in stage-2, 1/1 is performed. Transfer of reference image data for 4-pixel precision motion detection can be performed. As a result, in the motion detection apparatus of this embodiment, the number of pipeline stages is reduced by two stages. In addition, the motion detection apparatus of this embodiment is characterized in that the waiting time of macroblock processing is determined only by the execution time of motion vector detection, so that a delay due to data transmission does not occur.

(실시예 5)(Example 5)

도 19는 본 발명의 실시예 5에 있어서의 움직임 검출 장치의 블록도이다. 도 19에 있어서, 도 1과 마찬가지인 구성 요소에 대해서는, 동일한 부호를 부가하고, 설명을 생략한다.Fig. 19 is a block diagram of a motion detection device in Embodiment 5 of the present invention. In FIG. 19, the same code | symbol is attached | subjected about the component similar to FIG. 1, and description is abbreviate | omitted.

본 실시예의 움직임 검출 장치는 도 19에 나타내는 바와 같이, 정수 화소 정밀도 움직임 검출기(21), 움직임 보상기(24), 로컬 메모리(31, 32), SDRAM(41), DMA 컨트롤러(42) 및 프로세서(20)를 구비한다.As shown in FIG. 19, the motion detection device of this embodiment includes an integer pixel precision motion detector 21, a motion compensator 24, local memories 31 and 32, an SDRAM 41, a DMA controller 42 and a processor ( 20).

본 실시예의 움직임 검출 장치에서는, 정수 화소 정밀도 움직임 검출 후에, 움직임 보상을 행한다.In the motion detection device of this embodiment, motion compensation is performed after integer pixel precision motion detection.

도 20은 본 발명의 실시예 5에 있어서의 움직임 검출 장치의 흐름도이다.20 is a flowchart of a motion detection apparatus in Embodiment 5 of the present invention.

도 20에 나타내는 바와 같이, 본 실시예의 움직임 검출 장치는 단계 S71에 있어서, 정수 화소 정밀도 움직임 검출용의 참조 화상 데이터를 SDRAM(41)으로부터 로컬 메모리(31)로 전송한다.As shown in FIG. 20, the motion detection apparatus of this embodiment transfers reference image data for integer pixel precision motion detection from the SDRAM 41 to the local memory 31 in step S71.

단계 S72에 있어서, 단계 S71에 있어서 로컬 메모리(31)로 전송된 참조 화상 데이터를 이용하여, 정수 화소 정밀도 움직임 검출을 행한다.In step S72, integer pixel precision motion detection is performed using the reference image data transferred to the local memory 31 in step S71.

단계 S73에 있어서, 움직임 보상용의 참조 화상 데이터를 SDRAM(41)으로부터 로컬 메모리(32)로 전송한다. 이 참조 화상 데이터의 전송은 단계 S72의 정수 화소 정밀도 움직임 검출과 병행하여 실시한다.In step S73, the reference image data for motion compensation is transferred from the SDRAM 41 to the local memory 32. The transfer of the reference image data is performed in parallel with the integer pixel precision motion detection in step S72.

단계 S74에 있어서, 단계 S73에서 전송한 움직임 보상용의 참조 화상 데이터를 이용하여, 단계 S72의 정수 화소 정밀도 움직임 검출의 탐색 결과를 기초로, 움직임 보상을 행한다.In step S74, motion compensation is performed based on the search result of integer pixel precision motion detection in step S72, using the reference image data for motion compensation transmitted in step S73.

이와 같이, 본 실시예의 움직임 검출 장치에 의하면, 정수 화소 정밀도 움직임 검출의 결과를 기다리지 않고, 움직임 보상용의 참조 화상 데이터를 전송할 수 있기 때문에, 움직임 보상용의 참조 화상 데이터의 대기 시간이 감소되고, 매크로 블록 처리의 대기 시간이 개선된다.As described above, according to the motion detection device of the present embodiment, since the reference image data for motion compensation can be transmitted without waiting for the result of integer pixel precision motion detection, the waiting time of the reference image data for motion compensation is reduced, The latency of macro block processing is improved.

도 21은 본 발명의 실시예 5에 있어서의 움직임 검출 장치의 파이프라인의 구성을 나타낸다. 본 실시예의 움직임 검출 장치에 의하면, 스테이지-1에 있어서, 움직임 보상용의 참조 화상 데이터 전송이 실시될 수 있기 때문에, 파이프라인 단수가 1개 적은 것으로 족하다.Fig. 21 shows the configuration of a pipeline of the motion detection apparatus in the fifth embodiment of the present invention. According to the motion detection device of the present embodiment, since the reference image data for motion compensation can be transmitted in stage-1, it is sufficient that the number of pipeline stages is one.

이상 설명한 바와 같이, 본 발명의 움직임 검출 장치에 의하면, 1/2 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송과 1/4 화소 정밀도 움직임 검출용의 참조 화상 데이터의 전송을, 각각 상위 계층의 화소 정밀도 움직임 검출의 결과를 기다리지 않고, 실시할 수 있기 때문에, 참조 화상 데이터의 전송에 따른 지연이 발생하지 않고, 매크로 블록 처리의 대기 시간이 대폭 개선된다. 또한, 본 발명의 움직임 검출 장치에 의하면, 파이프라인 단수의 감소와, 파이프라인 버퍼수의 감소가 가능해진다. 이 결과, 고속 처리가 가능한 동화상의 움직임 검출 장치를 보다 소형으로 낮은 비용에 실현할 수 있다.As described above, according to the motion detection apparatus of the present invention, the transfer of the reference image data for 1/2 pixel precision motion detection and the transfer of reference image data for 1/4 pixel precision motion detection are performed by the pixels of the upper layer. Since it can be performed without waiting for the result of the precision motion detection, the delay according to the transmission of the reference image data does not occur, and the waiting time of the macroblock processing is greatly improved. In addition, according to the motion detection apparatus of the present invention, the number of pipeline stages and the number of pipeline buffers can be reduced. As a result, it is possible to realize a motion detection device of a moving picture that can be processed at high speed at a smaller size and at a lower cost.

본 발명의 취지는 참조 화상 데이터의 전송에 따르는 매크로 블록 처리의 대기 시간을 개선하고, 또한, 파이프라인 버퍼의 필요한 개수를 감소시킬 수 있는, 동화상 부호화용 움직임 검출 장치를 실현하는 것에 있고, 본 발명의 취지를 일탈하지 않는 한, 여러 가지의 적용이 가능하다.It is an object of the present invention to realize a motion detection apparatus for moving picture encoding, which can improve the waiting time of macroblock processing accompanying transmission of reference picture data and can also reduce the required number of pipeline buffers. Various applications are possible without departing from the spirit of the application.

본 발명에 따른 움직임 검출 장치는, 예컨대, 동화상의 부호화 장치와 그 응용 분야에서 이용할 수 있다.The motion detection apparatus according to the present invention can be used, for example, in a video encoding apparatus and its application field.

Claims (16)

삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 참조 화상과 피부호화 화상의 상관에 의해, 움직임 벡터를 검출하는 움직임 검출 장치로서,A motion detection device for detecting a motion vector by correlation between a reference picture and a skin coded picture, 프로세서와,Processor, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과,First storage means for storing a first reference image for motion vector detection in a first step, 상기 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과,First motion detection means for detecting a motion vector of the first step by using the first reference image stored in the first storage means; 상기 제 1 움직임 검출 수단으로 검출한 상기 제 1 단계의 움직임 벡터를 이용하여 실시하는 움직임 보상을 위한, 휘도 화상 및 색차 화상으로 구성되는 제 2 참조 화상을 저장하는 제 2 기억 수단과,Second storage means for storing a second reference image composed of a luminance image and a chrominance image for motion compensation performed by using the motion vector of the first step detected by the first motion detecting means; 상기 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 움직임 보상을 실시하는 움직임 보상 수단과,Motion compensation means for performing motion compensation using a second reference image stored in said second storage means; 상기 참조 화상과 상기 피부호화 화상을 저장하는 주 기억 수단과,Main storage means for storing the reference image and the skin encoded image; 상기 주 기억 수단과 상기 제 1 기억 수단간의 데이터 전송 및 상기 주 기억 수단과 상기 제 2 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단Data transfer control means for controlling data transfer between the main storage means and the first storage means and data transfer between the main storage means and the second storage means. 을 구비하고,And 상기 프로세서는 상기 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 주 기억 수단으로부터 상기 제 2 기억 수단으로 제 2 참조 화상의 데이터를 전송하며,The processor transfers data of the second reference picture from the main storage means to the second storage means before the detection of the motion vector of the first step is completed, 상기 제 1 기억 수단과 상기 제 2 기억 수단은 메모리에 실장되고, 상기 제 1 기억 수단의 메모리 크기는 상기 제 2 기억 수단의 메모리 크기보다 큰 The first storage means and the second storage means are mounted in a memory, and the memory size of the first storage means is larger than the memory size of the second storage means. 움직임 검출 장치.Motion detection device. 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서,A motion detection device for detecting a motion vector hierarchically by correlation of a reference picture and a skin coded picture, 프로세서와,Processor, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과,First storage means for storing a first reference image for motion vector detection in a first step, 상기 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과,First motion detection means for detecting a motion vector of the first step by using the first reference image stored in the first storage means; 상기 제 1 움직임 검출 수단으로 검출한 상기 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과,Second storage means for storing a second reference image for motion vector detection in a second step performed by using the motion vector in the first step detected by said first motion detecting means; 상기 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과,Second motion detection means for detecting a motion vector of the second step by using the second reference image stored in the second storage means; 상기 제 2 움직임 검출 수단으로 검출한 상기 제 2 단계의 움직임 벡터를 이용하여 실시하는 제 3 단계의 움직임 벡터 검출을 위한 제 3 참조 화상을 저장하는 제 3 기억 수단과,Third storage means for storing a third reference image for motion vector detection in a third step performed by using the motion vector of the second step detected by said second motion detection means; 상기 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 제 3 단계의 움직임 벡터를 검출하는 제 3 움직임 검출 수단과,Third motion detection means for detecting a motion vector of a third step by using a third reference image stored in the third storage means; 상기 참조 화상과 상기 피부호화 화상을 저장하는 주 기억 수단과,Main storage means for storing the reference image and the skin encoded image; 상기 주 기억 수단과 상기 제 1 기억 수단간의 데이터 전송, 상기 주 기억 수단과 상기 제 2 기억 수단간의 데이터 전송 및 상기 주 기억 수단과 상기 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고,Data transfer control means for controlling data transfer between the main storage means and the first storage means, data transfer between the main storage means and the second storage means, and data transfer between the main storage means and the third storage means. and, 상기 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 상기 프로세서는 상기 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 제 1 단계에서 검출한 움직임 벡터에 근거하여, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고,When the reference of the motion vector of the first step is required, the processor is further configured to execute the first information from the main memory means based on the motion vector detected in the first step before the detection of the motion vector of the second step is completed. Transfer the data of the third reference image to the third storage means, 상기 제 1 단계의 움직임 벡터의 참조가 불필요한 경우, 상기 프로세서는 상기 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하되,If the reference of the motion vector of the first step is unnecessary, the processor transmits data of the third reference picture from the main storage means to the third storage means before the detection of the motion vector of the first step is completed. , 상기 제 2 기억 수단과 상기 제 3 기억 수단은 메모리에 실장되고, 상기 제 2 기억 수단의 메모리 크기는 상기 제 3 기억 수단의 메모리 크기보다 큰 The second storage means and the third storage means are mounted in a memory, and the memory size of the second storage means is larger than the memory size of the third storage means. 움직임 검출 장치.Motion detection device. 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서,A motion detection device for detecting a motion vector hierarchically by correlation of a reference picture and a skin coded picture, 프로세서와,Processor, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과,First storage means for storing a first reference image for motion vector detection in a first step, 상기 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과,First motion detection means for detecting a motion vector of the first step by using the first reference image stored in the first storage means; 상기 제 1 움직임 검출 수단으로 검출한 상기 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과,Second storage means for storing a second reference image for motion vector detection in a second step performed by using the motion vector in the first step detected by said first motion detecting means; 상기 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과,Second motion detection means for detecting a motion vector of the second step by using the second reference image stored in the second storage means; 상기 제 2 움직임 검출 수단으로 검출한 상기 제 2 단계의 움직임 벡터를 이용하여 실시하는 제 3 단계의 움직임 벡터 검출을 위한 제 3 참조 화상을 저장하는 제 3 기억 수단과,Third storage means for storing a third reference image for motion vector detection in a third step performed by using the motion vector of the second step detected by said second motion detection means; 상기 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 제 3 단계의 움직임 벡터를 검출하는 제 3 움직임 검출 수단과,Third motion detection means for detecting a motion vector of a third step by using a third reference image stored in the third storage means; 상기 참조 화상과 상기 피부호화 화상을 저장하는 주 기억 수단과,Main storage means for storing the reference image and the skin encoded image; 상기 주 기억 수단과 상기 제 1 기억 수단간의 데이터 전송, 상기 주 기억 수단과 상기 제 2 기억 수단간의 데이터 전송 및 상기 주 기억 수단과 상기 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고,Data transfer control means for controlling data transfer between the main storage means and the first storage means, data transfer between the main storage means and the second storage means, and data transfer between the main storage means and the third storage means. and, 상기 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 상기 프로세서는 상기 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 제 1 단계에서 검출한 움직임 벡터에 근거하여, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고,When the reference of the motion vector of the first step is required, the processor is further configured to execute the first information from the main memory means based on the motion vector detected in the first step before the detection of the motion vector of the second step is completed. Transfer the data of the third reference image to the third storage means, 상기 제 1 단계의 움직임 벡터의 참조가 불필요한 경우, 상기 프로세서는 상기 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하되,If the reference of the motion vector of the first step is unnecessary, the processor transmits data of the third reference picture from the main storage means to the third storage means before the detection of the motion vector of the first step is completed. , 상기 제 2 기억 수단에는, 상기 데이터 전송 제어 수단과 상기 제 2 움직임 검출 수단 중 어느 한쪽이 액세스하는 One of the data transfer control means and the second motion detection means accesses the second storage means. 움직임 검출 장치.Motion detection device. 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서,A motion detection device for detecting a motion vector hierarchically by correlation of a reference picture and a skin coded picture, 프로세서와,Processor, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과,First storage means for storing a first reference image for motion vector detection in a first step, 상기 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과,First motion detection means for detecting a motion vector of the first step by using the first reference image stored in the first storage means; 상기 제 1 움직임 검출 수단으로 검출한 상기 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과,Second storage means for storing a second reference image for motion vector detection in a second step performed by using the motion vector in the first step detected by said first motion detecting means; 상기 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과,Second motion detection means for detecting a motion vector of the second step by using the second reference image stored in the second storage means; 상기 제 2 움직임 검출 수단으로 검출한 상기 제 2 단계의 움직임 벡터를 이용하여 실시하는 제 3 단계의 움직임 벡터 검출을 위한 제 3 참조 화상을 저장하는 제 3 기억 수단과,Third storage means for storing a third reference image for motion vector detection in a third step performed by using the motion vector of the second step detected by said second motion detection means; 상기 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 제 3 단계의 움직임 벡터를 검출하는 제 3 움직임 검출 수단과,Third motion detection means for detecting a motion vector of a third step by using a third reference image stored in the third storage means; 상기 참조 화상과 상기 피부호화 화상을 저장하는 주 기억 수단과,Main storage means for storing the reference image and the skin encoded image; 상기 주 기억 수단과 상기 제 1 기억 수단간의 데이터 전송, 상기 주 기억 수단과 상기 제 2 기억 수단간의 데이터 전송 및 상기 주 기억 수단과 상기 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고,Data transfer control means for controlling data transfer between the main storage means and the first storage means, data transfer between the main storage means and the second storage means, and data transfer between the main storage means and the third storage means. and, 상기 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 상기 프로세서는 상기 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 제 1 단계에서 검출한 움직임 벡터에 근거하여, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고,When the reference of the motion vector of the first step is required, the processor is further configured to execute the first information from the main memory means based on the motion vector detected in the first step before the detection of the motion vector of the second step is completed. Transfer the data of the third reference image to the third storage means, 상기 제 1 단계의 움직임 벡터의 참조가 불필요한 경우, 상기 프로세서는 상기 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하되,If the reference of the motion vector of the first step is unnecessary, the processor transmits data of the third reference picture from the main storage means to the third storage means before the detection of the motion vector of the first step is completed. , 상기 제 3 기억 수단에는, 상기 데이터 전송 제어 수단과 상기 제 3 움직임 검출 수단 중 어느 한쪽이 액세스하는 움직임 검출 장치.A motion detection device, to which the third storage means accesses either the data transfer control means or the third motion detection means. 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서,A motion detection device for detecting a motion vector hierarchically by correlation of a reference picture and a skin coded picture, 프로세서와,Processor, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과,First storage means for storing a first reference image for motion vector detection in a first step, 상기 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과,First motion detection means for detecting a motion vector of the first step by using the first reference image stored in the first storage means; 상기 제 1 움직임 검출 수단으로 검출한 상기 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과,Second storage means for storing a second reference image for motion vector detection in a second step performed by using the motion vector in the first step detected by said first motion detecting means; 상기 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과,Second motion detection means for detecting a motion vector of the second step by using the second reference image stored in the second storage means; 상기 제 2 움직임 검출 수단으로 검출한 상기 제 2 단계의 움직임 벡터를 이용하여 실시하는 움직임 보상을 위한, 휘도 화상 및 색차 화상으로 구성되는 제 3 참조 화상을 저장하는 제 3 기억 수단과,Third storage means for storing a third reference image composed of a luminance image and a chrominance image for motion compensation performed by using the motion vector of the second step detected by the second motion detection means; 상기 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 움직임 보상을 실시하는 움직임 보상 수단과,Motion compensation means for performing motion compensation using the third reference image stored in the third storage means; 상기 참조 화상과 상기 피부호화 화상을 저장하는 주 기억 수단과,Main storage means for storing the reference image and the skin encoded image; 상기 주 기억 수단과 상기 제 1 기억 수단간의 데이터 전송, 상기 주 기억 수단과 상기 제 2 기억 수단간의 데이터 전송 및 상기 주 기억 수단과 상기 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단Data transfer control means for controlling data transfer between said main memory means and said first memory means, data transfer between said main memory means and said second memory means, and data transfer between said main memory means and said third memory means; 을 구비하고,And 상기 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 상기 프로세서는 상기 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 제 1 단계에서 검출한 움직임 벡터에 근거하여, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고,When the reference of the motion vector of the first step is required, the processor is further configured to execute the first information from the main memory means based on the motion vector detected in the first step before the detection of the motion vector of the second step is completed. Transfer the data of the third reference image to the third storage means, 상기 제 1 단계의 움직임 벡터의 참조가 불필요한 경우, 상기 프로세서는 상기 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하되,If the reference of the motion vector of the first step is unnecessary, the processor transmits data of the third reference picture from the main storage means to the third storage means before the detection of the motion vector of the first step is completed. , 상기 제 3 기억 수단에는, 상기 데이터 전송 제어 수단과 상기 움직임 보상 수단 중 어느 한쪽이 액세스하는 움직임 검출 장치.A motion detection device, to which the third storage means accesses either the data transfer control means or the motion compensation means. 참조 화상과 피부호화 화상의 상관에 의해, 계층적으로 움직임 벡터를 검출하는 움직임 검출 장치로서,A motion detection device for detecting a motion vector hierarchically by correlation of a reference picture and a skin coded picture, 프로세서와,Processor, 제 1 단계의 움직임 벡터 검출용의 제 1 참조 화상을 저장하는 제 1 기억 수단과,First storage means for storing a first reference image for motion vector detection in a first step, 상기 제 1 기억 수단에 저장된 제 1 참조 화상을 이용하여, 제 1 단계의 움직임 벡터를 검출하는 제 1 움직임 검출 수단과,First motion detection means for detecting a motion vector of the first step by using the first reference image stored in the first storage means; 상기 제 1 움직임 검출 수단으로 검출한 상기 제 1 단계의 움직임 벡터를 이용하여 실시하는 제 2 단계의 움직임 벡터 검출을 위한 제 2 참조 화상을 저장하는 제 2 기억 수단과,Second storage means for storing a second reference image for motion vector detection in a second step performed by using the motion vector in the first step detected by said first motion detecting means; 상기 제 2 기억 수단에 저장된 제 2 참조 화상을 이용하여, 제 2 단계의 움직임 벡터를 검출하는 제 2 움직임 검출 수단과,Second motion detection means for detecting a motion vector of the second step by using the second reference image stored in the second storage means; 상기 제 2 움직임 검출 수단으로 검출한 상기 제 2 단계의 움직임 벡터를 이용하여 실시하는 제 3 단계의 움직임 벡터 검출을 위한 제 3 참조 화상을 저장하는 제 3 기억 수단과,Third storage means for storing a third reference image for motion vector detection in a third step performed by using the motion vector of the second step detected by said second motion detection means; 상기 제 3 기억 수단에 저장된 제 3 참조 화상을 이용하여, 제 3 단계의 움직임 벡터를 검출하는 제 3 움직임 검출 수단과,Third motion detection means for detecting a motion vector of a third step by using a third reference image stored in the third storage means; 상기 참조 화상과 상기 피부호화 화상을 저장하는 주 기억 수단과,Main storage means for storing the reference image and the skin encoded image; 상기 주 기억 수단과 상기 제 1 기억 수단간의 데이터 전송, 상기 주 기억 수단과 상기 제 2 기억 수단간의 데이터 전송 및 상기 주 기억 수단과 상기 제 3 기억 수단간의 데이터 전송을 제어하는 데이터 전송 제어 수단을 구비하고,Data transfer control means for controlling data transfer between the main storage means and the first storage means, data transfer between the main storage means and the second storage means, and data transfer between the main storage means and the third storage means. and, 상기 제 1 단계의 움직임 벡터의 참조가 필요한 경우, 상기 프로세서는 상기 제 2 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 제 1 단계에서 검출한 움직임 벡터에 근거하여, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하고,When the reference of the motion vector of the first step is required, the processor is further configured to execute the first information from the main memory means based on the motion vector detected in the first step before the detection of the motion vector of the second step is completed. Transfer the data of the third reference image to the third storage means, 상기 제 1 단계의 움직임 벡터의 참조가 불필요한 경우, 상기 프로세서는 상기 제 1 단계의 움직임 벡터의 검출이 완료되기 전에, 상기 주 기억 수단으로부터 상기 제 3 기억 수단으로 제 3 참조 화상의 데이터를 전송하되,If the reference of the motion vector of the first step is unnecessary, the processor transmits data of the third reference picture from the main storage means to the third storage means before the detection of the motion vector of the first step is completed. , 상기 제 1 움직임 검출 수단으로 검출한 움직임 벡터를 기준으로 하여, 필요한 범위의 참조 화상의 데이터가 상기 제 2 기억 수단으로부터 상기 제 3 기억 수단으로 전송되는 On the basis of the motion vector detected by the first motion detecting means, data of a reference image in a required range is transmitted from the second memory means to the third memory means. 움직임 검출 장치.Motion detection device. 삭제delete
KR1020067022100A 2004-07-13 2005-07-07 Motion detection device KR100892471B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020067022100A KR100892471B1 (en) 2004-07-13 2005-07-07 Motion detection device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2004-00205806 2004-07-13
KR1020067022100A KR100892471B1 (en) 2004-07-13 2005-07-07 Motion detection device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020087029764A Division KR20090014371A (en) 2004-07-13 2005-07-07 Motion detection device

Publications (2)

Publication Number Publication Date
KR20070017160A KR20070017160A (en) 2007-02-08
KR100892471B1 true KR100892471B1 (en) 2009-04-10

Family

ID=41347525

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067022100A KR100892471B1 (en) 2004-07-13 2005-07-07 Motion detection device

Country Status (1)

Country Link
KR (1) KR100892471B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05236466A (en) * 1992-02-25 1993-09-10 Nec Corp Device and method for inter-frame predictive image encoding for motion compensation
JPH06197322A (en) * 1992-12-24 1994-07-15 Matsushita Electric Ind Co Ltd Motion detection circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05236466A (en) * 1992-02-25 1993-09-10 Nec Corp Device and method for inter-frame predictive image encoding for motion compensation
JPH06197322A (en) * 1992-12-24 1994-07-15 Matsushita Electric Ind Co Ltd Motion detection circuit

Also Published As

Publication number Publication date
KR20070017160A (en) 2007-02-08

Similar Documents

Publication Publication Date Title
CN100553321C (en) The coding dynamic filter
US8964829B2 (en) Techniques to perform fast motion estimation
KR20090014371A (en) Motion detection device
JP2008523724A (en) Motion estimation technology for video coding
JP2006254349A (en) Motion vector detecting method and apparatus, and computer program for executing motion vector detection processing on computer
KR100843418B1 (en) Apparatus and method for image coding
JP2007142521A (en) Apparatus and method for calculating motion vector
JP2938412B2 (en) Method for compensating luminance change of moving image, moving image encoding device, moving image decoding device, recording medium recording moving image encoding or decoding program, and recording medium recording moving image encoded data
JPWO2010100672A1 (en) Compressed video encoding device, compressed video decoding device, compressed video encoding method, and compressed video decoding method
JPH11239354A (en) Motion vector detector
FI109634B (en) Method and apparatus for encoding a video image
CN112449182A (en) Video encoding method, device, equipment and storage medium
KR20170126934A (en) Content-Adaptive B-Picture Pattern Video Encoding
JP2005167976A (en) Motion vector detecting device and motion vector detecting program
KR100926752B1 (en) Fine Motion Estimation Method and Apparatus for Video Coding
KR100892471B1 (en) Motion detection device
US20060062305A1 (en) Method for block-matching motion estimation with effective computation while small motion movement
JP2004260251A (en) Apparatus and program of detecting motion vector
JP4590337B2 (en) Moving picture coding apparatus and moving picture coding method
JP2001145011A (en) Video signal encoder
JP2008072608A (en) Apparatus and method for encoding image
WO2020181507A1 (en) Image processing method and apparatus
JP2005354174A (en) Motion-searching apparatus
KR100290618B1 (en) Method for estimating motion of block unit in image compression coding
JP2007081548A (en) Motion vector searching device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application
A107 Divisional application of patent
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee