KR100424683B1 - Encoding Method and Encoding Device of Object Image - Google Patents
Encoding Method and Encoding Device of Object Image Download PDFInfo
- Publication number
- KR100424683B1 KR100424683B1 KR1019960027493A KR19960027493A KR100424683B1 KR 100424683 B1 KR100424683 B1 KR 100424683B1 KR 1019960027493 A KR1019960027493 A KR 1019960027493A KR 19960027493 A KR19960027493 A KR 19960027493A KR 100424683 B1 KR100424683 B1 KR 100424683B1
- Authority
- KR
- South Korea
- Prior art keywords
- axis
- counting
- macroblocks
- moving
- setting
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/537—Motion estimation other than block-based
- H04N19/54—Motion estimation other than block-based using feature points or meshes
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 MPEG(Moving Picture Experts Group)-4에서 VOP(Video Object Plane)를 구획하는 매크로 블록을 정보량 감소 위치로 이동시켜 움직임 추정 및 부호화 효율을 향상시키는 대상물 영상의 부호화 방법 및 부호화 장치에 관한 것이다.The present invention relates to an encoding method and an encoding apparatus of an object image for improving motion estimation and encoding efficiency by moving a macroblock partitioning a video object plane (VOP) in a moving picture expert group (MPEG-4) to an information amount reduction position. .
현재 표준화가 진행되고 있는 MPEG-4는 VOP(Video Object Plane)의 개념을 기초로 하고 있다.MPEG-4, which is currently being standardized, is based on the concept of VOP (Video Object Plane).
여기서, VOP는 영상 화면에서 소정의 물체 및 영역 등의 대상물 영상이 존재할 경우에 그 대상물의 영상을 각기 분리하고, 분리한 상기 대상물의 영상을 각기 부호화하는 것을 기본 골격으로 하고 있다.In the VOP, when a target image such as a predetermined object and a region exists in a video screen, the image is divided separately, and the basic frame is used to separately encode the separated target image.
이러한 VOP는 자연 영상 및 인공 영상을 대상물 영상의 단위로 하여 자유자재로 합성 내지는 분해할 수 있는 장점을 가지는 것으로서 컴퓨터 그래픽스 및 멀티 미디어의 분야 등에서 대상물의 영상을 처리하는 데 기본이 되고 있다.The VOP has the advantage of freely synthesizing or decomposing a natural image and an artificial image as a unit of an object image, and is fundamental to processing an object image in the field of computer graphics and multimedia.
제1도는 국제표준 산하기구(ISO/IEC JTC1/SC29/WG11 MPEG96/N1172 January)에서 1차적으로 확정한 VM(Verification Model) 엔코더의 구성을 보인 블록도이다.FIG. 1 is a block diagram showing the configuration of a VM (Verification Model) encoder determined primarily by the International Standards Organization (ISO / IEC JTC1 / SC29 / WG11 MPEG96 / N1172 January).
여기서, VOP 형성부(VOP Formation)(11)는 전송 또는 저장할 영상 시퀀스가 입력될 경우에 이를 VOP로 형성한다.Here, the VOP Formation unit 11 forms a VOP when an image sequence to be transmitted or stored is input.
VOP의 형성은 하나의 화면에서 여러 개의 대상물 영상이 존재할 경우에 배경 화면과, 각각의 대상물 영상에 대하여 각기 다른 VOP로 형성하는 것으로서 배경 화면과 각각의 대상물 영상으로 분리하고, 상기 분리한 배경 화면과 대상물 영상을 포함하는 가장 작은 사각형을 VOP로 정의하고 있다.The VOP is formed of a background screen when there are several object images in one screen, and a different VOP for each object image. The VOP is divided into a background screen and each object image. The smallest rectangle that contains the object image is defined as VOP.
제2도는 대상물의 영상으로 '고양이'의 영상을 설정하여 하나의 VOP를 형성한 일 예를 보이고 있다.FIG. 2 shows an example in which one VOP is formed by setting an image of a 'cat' as an image of a target.
여기서, VOP의 가로 방향 크기는 VOP 폭으로 정의되고, 세로 방향의 크기는 VOP 높이로 정의된다.Here, the horizontal size of the VOP is defined as the VOP width, and the vertical size is defined as the VOP height.
형성된 VOP는 좌측 상단을 그리드 시작점으로 하고, X축 및 Y축으로 각기 M개 및 N개의 화소를 가지는 M×N 매크로 블록으로 구획된다. 예를 들면 X축 및 Y축으로 각기 16개의 화소를 가지는 16×16 매크로 블록으로 구획된다.The formed VOP is divided into M × N macroblocks having M and N pixels on the X-axis and the Y-axis, respectively, with the upper left as the grid starting point. For example, it is divided into 16x16 macroblocks each having 16 pixels on the X-axis and the Y-axis.
이 때, VOP의 우측과 하단에 형성되는.매크로 블록의 X축 및 Y축 화소가 각기 M개 및 N개가 아닐 경우에 VOP의 크기를 확장하여 각각의 매크로 블록의 X축 및 Y축 화소가 모두 M개 및 N개로 되게 한다.In this case, when there are not M and N pixels of the macro block formed on the right and the bottom of the VOP, the size of the VOP is expanded to expand both the X and Y axis pixels of each macro block. Let M and N pieces.
그리고 상기 M 및 N은 후술하는 대상물 내부 부호화부((Texture Coding)에서서브 블록의 단위로 부호화를 수행할 수 있도록 하기 위하여 각기 짝수로 설정된다.In addition, M and N are set to an even number in order to perform encoding in units of sub-blocks in an object encoding unit (Texture Coding) to be described later.
VOP 형성부(11)에서 형성된 각각의 VOP는 VOP 부호화부(12A, 12B, 12C, …)에 각기 입력되어 VOP 별로 부호화되고, 멀티플렉서(13)에서 다중화되어 비트 스트림으로 전송된다.Each VOP formed by the VOP forming unit 11 is input to the VOP encoders 12A, 12B, 12C, ..., respectively, encoded for each VOP, multiplexed by the multiplexer 13, and transmitted as a bit stream.
제3도는 국제표준 산하기구에서 1차적으로 확정한 VM 디코더의 구성을 보인 블록도이다.3 is a block diagram showing the configuration of a VM decoder primarily determined by an international standard subdivision.
상기 VM 엔코더를 통해 부호화되고, 비트 스트림으로 전송되는 정보인 VOP의 부호화 신호는 VM 디코더의 디멀티플렉서(21)에서 VOP 별로 각기 분리된다.The encoded signal of the VOP, which is encoded through the VM encoder and transmitted in the bit stream, is separated for each VOP in the demultiplexer 21 of the VM decoder.
분리된 각각의 VOP 부호화 신호는 VOP 디코더(22A, 22B, 22C, …)에서 각기 디코딩되고, 상기 VOP 디코더(22A, 22B, 22C, …)의 출력신호는 합성부(23)에서 합성되어 윈래의 화면의 영상으로 출력된다.Each of the separated VOP coded signals is decoded by the VOP decoders 22A, 22B, 22C, ..., respectively, and the output signals of the VOP decoders 22A, 22B, 22C, ... are synthesized by the combiner 23 to obtain It is output as an image on the screen.
제4도는 국제표준 산하기구에서 1차적으로 확정한 VM 엔코더의 VOP 부호화부(12A, 12B, 12C, …)의 구성을 보인 블록도이다.4 is a block diagram showing the configuration of the VOP encoders 12A, 12B, 12C, ... of the VM encoder determined primarily by the international standard subdivision.
VOP 형성부(11)에서 형성된 각각의 대상물 영상에 대한 VOP가 움직임 추정부(Motion Estimation)(31)에 입력되어 매크로 블록의 단위로 움직임이 추정된다.The VOP for each object image formed by the VOP forming unit 11 is input to a motion estimator 31 to estimate the motion in units of macro blocks.
상기 움직임 추정부(31)에서 추정된 움직임 정보는 움직임 보상부(Motion Compensation)(32)에 입력되어 움직임이 보상된다.The motion information estimated by the motion estimation unit 31 is input to a motion compensation unit 32 to compensate for the motion.
상기 움직임 보상부(32)에서 움직임이 보상된 상기 VOP는 VOP 형성부(11)에서 형성된 VOP와 함께 가산기(33)에 입력되어 차이 값이 검출되고, 상기 가산기(33)에서 검출된 차이 값은 대상물 내부 부호화부(34)에 입력되어 매크로 블록의 서브 블록 단위로 대상물의 내부정보가 부호화된다.The VOP whose motion is compensated by the motion compensator 32 is input to the adder 33 together with the VOP formed by the VOP forming unit 11 to detect a difference value, and the difference value detected by the adder 33 is The internal information of the target is encoded by the target internal encoder 34 to be encoded in sub-block units of the macroblock.
예를 들면, 대상물 내부 부호화부(34)는 매크로 블록의 X축 및 Y축을 M/2 x N/2으로 각기 8개의 화소를 가지는 8×8의 서브 블록으로 세분화한 후 대상물의 내부정보를 부호화한다.For example, the object internal encoding unit 34 subdivides the X and Y axes of the macroblock into 8 × 8 subblocks having 8 pixels, respectively, M / 2 × N / 2 and then encodes the internal information of the object. do.
상기 움직임 보상부(32)에서 움직임이 보상된 VOP와 대상물 내부 부호화부(34)에서 부호화된 대상물의 내부 정보가 가산기(35)에 입력되어 가산되고, 상기 가산기(35)의 출력신호는 이전 VOP 검출부(Previous Reconstructed VOP)(36)에 입력되어 이전 화면의 VOP가 검출된다. 이전 VOP 검출부(36)에서 검출된 상기 이전 화면의 VOP는 움직임 추정부(31) 및 움직임 보상부(32)에 입력되어 움직임 추정 및 움직임 보상에 사용하도록 하고 있다.The VOP whose motion is compensated by the motion compensator 32 and the internal information of the object encoded by the object internal encoder 34 are input to the adder 35, and the output signal of the adder 35 is added to the previous VOP. It is input to a detection unit (Previous Reconstructed VOP) 36 to detect the VOP of the previous screen. The VOP of the previous screen detected by the previous VOP detector 36 is input to the motion estimator 31 and the motion compensator 32 to be used for motion estimation and motion compensation.
그리고 상기 VOP 형성부(11)에서 형성된 VOP는 모양 부호화부(Shape Coding)(37)에 입력되어 모양 정보가 부호화된다.The VOP formed by the VOP forming unit 11 is input to a shape coding unit 37 to encode shape information.
여기서, 모양 부호화부(37)의 출력신호는 VOP부호화부(12, 12A, 12B, …)가 적응되는 분야에 따라 사용 여부가 결정되는 것으로 모양 부호화부(37)의 출력 신호를 점선으로 표시된 바와 같이 움직임 추정부(31), 움직임 보상부(32) 및 대상물 내부 부호화부(34)에 입력시켜 움직임 추정, 움직임 보상 및 대상물의 내부 정보를 부호화하는 데 사용할 수 있다.Here, the output signal of the shape encoder 37 is determined according to the field in which the VOP encoders 12, 12A, 12B, ... are adapted, and the output signal of the shape encoder 37 is indicated by a dotted line. The motion estimation unit 31, the motion compensator 32, and the object internal encoder 34 may be input to the motion estimation unit 31, the motion compensator 32, and the object internal encoder 34 to encode the motion information, the motion compensation, and the internal information of the object.
상기 움직임 추정부(31)에서 추정된 움직임 정보, 대상물 내부 부호화부(34)에서 부호화된 대상물의 내부 정보 및 모양 부호화부(37)에서 부호화된 모양 정보는 멀티플렉서(38)에서 다중화되고, 버퍼(39)를 통해 제2도의 멀티플렉서(13)로 출력되어 비트 스트림으로 전송된다.The motion information estimated by the motion estimation unit 31, the internal information of the object encoded by the object internal encoder 34, and the shape information encoded by the shape encoder 37 are multiplexed by the multiplexer 38, and a buffer ( 39 is output to the multiplexer 13 of FIG. 2 and transmitted as a bit stream.
이러한 MPEG-4에 있어서, VOP를 형성할 경우에 종래에는 좌측 상단의 VOP 그리드 시작점부터 X축 및 Y축으로 각기 M개 및 N개의 화소를 가지는 M×N의 매크로 블록으로 형성하였다.In the MPEG-4, when forming the VOP, conventionally, the VOP is formed of an M × N macroblock having M and N pixels in the X and Y axes from the VOP grid start point on the upper left.
이 때, 대상물의 영상 즉, 대상물의 모양 정보를 가지는 화소가 많은 수의 매크로 블록에 존재하게 되면, 모양 정보를 부호화할 매크로 블록의 수가 많아지는 것으로 부호화 효율이 낮게 된다.At this time, when an image of an object, that is, a pixel having shape information of the object exists in a large number of macroblocks, the number of macroblocks for encoding shape information increases, thereby lowering the coding efficiency.
그러므로 대상물의 영상을 좌측 상단을 그리드 시작점으로 설정하여 H×N의 매크로 블록 단위로 형성하는 종래의 기술에 의하면, 대상물의 모양 정보를 부호화 할 매크로 블록의 수가 많아 VOP의 부호화 효율을 향상시키는 데 한계가 있었다.Therefore, according to the conventional technology in which the image of the object is formed in macroblock units of H × N by setting the upper left corner as the grid starting point, the number of macroblocks to encode the shape information of the object is large, which limits the improvement of the coding efficiency of the VOP. There was.
예를 들면, 대상물로 "고양이"가 표시된 제2도의 도면에서 "고양이"의 화소가 위치하는 매크로 블록의 수는 20개이고, 7∼8개의 매크로 블록은 작은 크기의 화소만을 포함하고 있는 것으로서 종래의 기술은 "고양이"의 화소가 위치하는 20개의 매크로 블록을 모두 부호화해야 되어 부호화 효율이 낮았다.For example, in the drawing of FIG. 2 in which "cat" is displayed as an object, the number of macro blocks in which the pixels of "cat" are located is 20, and the 7 to 8 macro blocks include only pixels of small size. The technique had to encode all 20 macroblocks in which the "cat" pixels are located, resulting in low coding efficiency.
또한 모양 부호화부(37)에서 모양 정보가 부호화된 신호로 움직임 추정, 움직임 보상 및 대상물 내부 부호화할 경우에도 모양 부호화부(37)에서 출력되는 정보량이 많으므로 움직임 추정, 움직임 보상 및 대상물 내부 부호화한 정보량이 많은 문제점이 있었다.In addition, even when the shape encoder 37 performs motion estimation, motion compensation, and intra-object encoding on a signal in which shape information is encoded, since the amount of information output from the shape encoder 37 is large, motion estimation, motion compensation, and intra-object encoding are performed. There was a problem with a large amount of information.
따라서 본 발명의 목적은 VOP의 매크로 블록을 대상물 영상의 윤곽선에 따른 정보량 감소 위치로 이동시킨 후 모양 정보 부호화하여 모양 정보 부호화 효율을 향상시키는 대상물 영상의 부호화 방법 및 부호화 장치를 제공하는 데 있다.Accordingly, an object of the present invention is to provide an encoding method and an encoding apparatus of an object image which improves shape information encoding efficiency by moving shape macro coding of a VOP to a position of a reduced amount of information according to an outline of an object image.
본 발명의 다른 목적은 모양 부호화부에서 모양 정보가 부호화된 VOP부호화 신호의 매크로 블록을 대상물 영상의 윤곽선에 따른 움직임 정보량 감소위치 및 부호화 정보량 감소 위치로 이동시킨 후 움직임 추정 및 움직임 보상과 대상물 내부 정보의 부호화를 수행하여 부호화 효율을 향상시키고, 정보량을 줄일 수 있도록 하는 대상물 영상의 부호화 방법 및 부호화 장치를 제공하는 데 있다.Another object of the present invention is to move the macroblock of the VOP coded signal having the shape information coded by the shape encoder to the motion information decreasing position and the coding information amount decreasing position according to the contour of the object image, and then the motion estimation and motion compensation and the object internal information. The present invention provides a method and an encoding apparatus for encoding an object image to improve encoding efficiency and to reduce information amount by performing encoding.
제1도는 국제표준 산하기구에서 1차적으로 확정한 VM 엔코더의 구성을 보인 블록도.1 is a block diagram showing the configuration of a VM encoder primarily confirmed by the International Standards Organization.
제2도는 모양 정보를 가지는 VOP를 종래의 방법에 따라 매크로 블록으로 구획하여 보인 도면.2 is a diagram illustrating a VOP having shape information divided into macroblocks according to a conventional method.
제3도는 국제표준 산하기구에서 1차적으로 확정한 VM 디코더의 구성을 보인 블록도.3 is a block diagram showing the configuration of a VM decoder primarily determined by the International Standards Organization.
제4도는 국제표준 산하기구에서 1차적으로 확정한 VOP 부호화부의 구성을 보인 블록도.4 is a block diagram showing the configuration of a VOP encoder determined primarily by an international standard subdivision.
제5도는 국제표준 산하기구에서 1차적으로 확정한 VOP 부호화부에 본 발명의 부호화 장치에 의한 모양적응 블록 분할부를 구성한 실시예를 보인 블록도.FIG. 5 is a block diagram showing an embodiment in which a shape adaptation block partitioning unit by the encoding apparatus of the present invention is configured in a VOP encoding unit determined primarily by an international standard subdivision.
제6도는 제5도의 모양적응 블록 분할부의 실시예를 보인 회로도.6 is a circuit diagram showing an embodiment of the shape adaptation block division of FIG.
제7도는 제6도의 어드레스 발생기의 실시예를 보인 회로도.7 is a circuit diagram showing an embodiment of the address generator of FIG.
제8도는 제6도의 메모리에 저장된 영상의 매크로 블록을 어드레스 발생기가 출력하는 X축 및 Y축 어드레스에 따라서 구분하여 출력하는 순서를 예로 들어 보인 도면.8 is a diagram illustrating an example of dividing and outputting macroblocks of an image stored in a memory of FIG. 6 according to an X-axis and a Y-axis address output by an address generator.
제9도는 제6도의 블록 수 카운터의 구성을 보인 회로도.9 is a circuit diagram showing the configuration of the block number counter of FIG.
제10도는 본 발명의 부호화 방법을 보인 신호 흐름도.10 is a signal flowchart showing an encoding method of the present invention.
제11도는 본 발명의 부호화 방법에 따라 VOP의 매크로 블록을 정보량 감소 위치로 이동시킨 상태를 예로 들어 보인 도면.FIG. 11 illustrates a state in which a macroblock of a VOP is moved to an information amount reduction position according to the encoding method of the present invention as an example.
제12도는 본 발명의 부호화 방법에 따라 매크로 블록의 정보량 감소 위치를 찾는 일 실시예를 보인 신호 흐름도.12 is a signal flow diagram illustrating an embodiment of finding a location of reduced information amount of a macroblock according to an encoding method of the present invention.
제13도는 본 발명의 부호화 방법에 따라 매크로 블록의 정보량 감소 위치를 찾는 다른 실시예를 보인 신호 흐름도.FIG. 13 is a signal flow diagram showing another embodiment of finding the information amount reduction position of a macroblock according to the encoding method of the present invention. FIG.
제14도는 본 발명의 부호화 방법에 따라 매크로 블록의 정보량 감소 위치를 찾는 또 다른 실시예를 보인 신호 흐름도.14 is a signal flow diagram showing another embodiment of finding the information amount reduction position of a macroblock according to the encoding method of the present invention.
제15도의 (가)(나)는 제14도의 또 다른 실시예에 따라 매크로 블록의 그리드 시작점을 지그재그로 이동시키는 것을 보인 도면.(A) and (b) of FIG. 15 show zigzag movement of the grid starting point of the macro block according to another embodiment of FIG.
제16도는 본 발명의 부호화 방법에 따라 매크로 블록의 정보량 감소 위치를 찾는 또 다른 실시예를 보인 신호 흐름도.FIG. 16 is a signal flow diagram illustrating another embodiment of finding the information amount reduction position of a macroblock according to the encoding method of the present invention. FIG.
제17도는 본 발명의 부호화 방법에 따라 매크로 블록의 정보량 감소 위치를 찾는 또 다른 실시예를 보인 신호 흐름도.FIG. 17 is a signal flow diagram showing another embodiment of finding the information amount reduction position of a macroblock according to the encoding method of the present invention. FIG.
제18도의 (가)(나)는 제16도 및 제17도의 또 다른 실시예에 따라 매크로 블록을 정보량 감소 위치로 이동시킨 상태를 보인 도면.(A) and (b) of FIG. 18 show a state in which the macro block is moved to the information amount reduction position according to another embodiment of FIGS. 16 and 17. FIG.
* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings
11 : VOP 형성부, 12A, 12B, 12C,…: VOP 부호화부, 13, 38 : 멀티플렉서, 21, 38 : 디멀티플렉서, 22A, 22B, 22C,…: VOP디코더, 23 : 합성부, 31 : 움직임추정부, 32 : 움직임보상부, 33, 35 : 가산기, 34 : 대상물 내부 부호화부, 36 : 이전 VOP 검출부, 37 : 모양 부호화부, 39 : 버퍼, 40, 41 : 제1 및 제2 모양적응 블록 분할부, 51 : 어드레스 발생 제어기, 52 : 어드레스 발생기, 53 : 메모리, 54 : 블록수카운터, 55 : 최소 매크로 블록 그리드 선택기, 521 : X축 크기 결정부, 522 : Y축 크기 결정부, 523 : 블록 어드레스 발생기, 541 ; 매크로 블록 카운터, 542 : 판단부, 543 : 가산기11: VOP forming portion, 12A, 12B, 12C,... : VOP encoder 13, 38: multiplexer, 21, 38: demultiplexer, 22A, 22B, 22C,... : VOP decoder, 23: Synthesizer, 31: Motion Estimator, 32: Motion Compensator, 33, 35: Adder, 34: Object Encoder, 36: Previous VOP Detector, 37: Shape Encoder, 39: Buffer, 40, 41: first and second shape adaptation block divisions, 51: address generation controller, 52: address generator, 53: memory, 54: block count counter, 55: minimum macro block grid selector, 521: X-axis size determination Section 522: Y-axis size determining section 523 block address generator 541; Macroblock counter, 542: judgment unit, 543: adder
이러한 목적을 달성하기 위한 본 발명은 대상물의 영상에 따라 형성된 VOP를 정의하고, 상기 정의한 VOP의 매크로 블록의 X축 및 Y축 그리드 시작점을 이동시키면서 정보량 감소 위치를 찾는다.In order to achieve the above object, the present invention defines a VOP formed according to an image of an object, and finds an information amount reduction position while moving the X and Y axis grid start points of the macro block of the defined VOP.
정보량 감소 위치는 예를 들면, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 위치로서 매크로 블록의 수가 최소로 되는 X축 및 Y축 그리드 시작점을 정보량 감소 위치로 결정하고, 결정한 정보량 감소 위치에 따라 매크로 블록을 재형성한 두 모양 부호화부에서 모양 정보의 부호화를 수행한다.The information amount reduction position is, for example, a position where the number of macro blocks in which the contour of the object image exists is minimized, and the X and Y axis grid starting points at which the number of macro blocks is minimized are determined as information amount reduction positions, and the determined information amount reduction position The shape information is recoded by the two shape encoders which reconstruct the macroblock.
그리고 모양 부호화부에서 모양 부호화한 매크로 블록의 X축 및 Y축 그리드 시작점을 이동시키면서 다시 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 위치를 움직임 정보량 감소 위치 및 부호화 정보량 감소 위치로 결정하고, 결정한 움직임 정보량 감소 위치에 따라 매크로 블록을 재형성하여 움직임 추정 및 움직임 보상을 수행하며, 부호화 정보량 감소 위치에 따라 매크로 블록을 재형성하여 대상물 내부 부호화를 수행한다.The shape coding unit moves the X and Y axis grid starting points of the shape-coded macroblocks and again determines the position where the number of macroblocks having the outline of the object image is minimized as the motion information decrease position and the encoding information decrease position. Then, the macroblock is reconstructed according to the determined position of the reduced amount of motion information to perform motion estimation and motion compensation. The macroblock is reconstructed according to the reduced position of the encoded information amount to perform intra-object encoding.
이하, 첨부된 제5도 내지 제18도의 도면을 참조하여 본 발명의 대상물 영상의 부호화 방법 및 부호화 장치를 상세히 설명하겠으며, 여기서 종래와 동일한 부위에는 동일 부호를 부여하였다.Hereinafter, a method and an encoding apparatus for encoding an object image according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings of FIGS. 5 to 18, where the same reference numerals are assigned to the same parts as in the prior art.
제5도는 국제표준 산하기구에서 1차적으로 확정한 VM 엔코더의 VOP 부호화부(12A, 12B, 12C, …)에 본 발명의 부호화 장치에 의한 윤곽선 모양적응 블록 분할부를 구성한 실시예를 보인 블록도이다.5 is a block diagram showing an embodiment in which the VOP encoders 12A, 12B, 12C, ... of the VM encoder determined by the international standard subdivision structure are configured with the contour shape block division unit by the encoder of the present invention. to be.
이에 도시된 바와 같이 본 발명은 VOP 형성부(11)와 모양 부호화부(37)의 사이에 제1 윤곽선 모양적응 블록 분할부(40)를 구비하여, 매크로 블록의 X축 및 Y축 그리드 시작점을 이동시키면서 VOP의 대상물 영상의 위치에 따른 정보량 감소 위치를 결정한다.As shown in the drawing, the present invention includes a first contour shape adaptation block dividing unit 40 between the VOP forming unit 11 and the shape coding unit 37 to form the X and Y axis grid starting points of the macroblock. While moving, the position of decreasing information amount according to the position of the object image of the VOP is determined.
정보량 감소 위치로서는, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 위치를 최적의 X축 및 Y축 그리드 시작점으로 결정하고, 결정한 최적의 X축 및 Y축 그리드 시작점을 출력하여 모양 부호화부(37)에 입력시키게 하였다.As the information amount reduction position, the shape coding unit determines a position where the number of macro blocks in which the contour of the object image exists is minimized as an optimal X-axis and Y-axis grid start point, and outputs the determined optimal X-axis and Y-axis grid start point. (37) was entered.
모양 부호화부(37)에서는 상기 제1 윤곽선 모양적응 블록 분할부(47)에서 출력되는 최적의 X축 및 Y축 그리드 시작점에 따라 매크로 블록을 재형성하고, 대상물의 모양 정보를 부호화한다.The shape encoder 37 reconstructs the macro block according to the optimal X-axis and Y-axis grid start points output from the first contour shape adaptation block divider 47, and encodes shape information of the object.
그리고 모양 부호화부(37)와 움직임 추정부(31) 및 움직임 보상부(32)의 사이에 제2 윤곽선 모양적응 블록 분할부(41)를 구비하고, 모양 부호화부(37)와 대상물 내부 부호화부(34)의 사이에 제3윤곽선 모양적응 블록 분할부(42)를 구비한다.And a second contour shape adaptation block divider 41 between the shape encoder 37, the motion estimator 31, and the motion compensator 32, and the shape encoder 37 and the target internal encoder. A third outline shape adaptation block dividing section 42 is provided between 34.
제2 윤곽선 모양적응 블록 분할부(41)는 상기 모양 부호화부(37)에서 모양 정보를 부호화한 매크로 블록의 X축 및 Y축 그리드 시작점을 이동시키면서 움직임 정보량 감소 위치를 찾아 출력한다.The second contour shape adaptation block dividing unit 41 finds and outputs a motion information amount decreasing position while moving the X-axis and Y-axis grid starting points of the macro block in which the shape encoder 37 encodes the shape information.
제3 윤곽선 모양적응 블록 분할부(42)는 상기 모양 부호화부(37)에서 모양 정보를 부호화한 매크로 블록의 X축 및 Y축 그리드 시작점을 이동시키면서 부호화 정보량 감소 위치를 찾아 출력한다.The third contour shape adaptation block dividing unit 42 finds and outputs a reduced position of the encoded information amount while moving the X-axis and Y-axis grid starting points of the macroblock in which the shape encoder 37 encodes the shape information.
즉, 제2 및 제3 윤곽선 모양적응 블록 분할부(41)(42)는 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 최적의 X축 및 Y축 그리드 시작점을 움직임 정보량 감소 위치 및 부호화 정보량 감소 위치로 각기 결정하여 결정한다.That is, the second and third contour shape adaptation block dividing units 41 and 42 determine the optimal X-axis and Y-axis grid starting points at which the number of macro blocks in which the contour of the object image exists is minimized and the motion information amount decreasing position and encoding. Each of them is determined by the information reduction position.
상기 제2 윤곽선 모양적응 블록 분할부(41)가 결정한 움직임 정보량 감소 위치에 따라 움직임 추정부(31) 및 움직임 보상부(32)가 매크로 블록을 재형성하여 움직임 추정 및 움직임 보상을 수행하고, 제3 윤곽선 모양적응 블록 분할부(42)가 결정한 부호화 정보량 감소 위치에 따라 대상물 내부 부호화부(34)가 매크로 블록을 재형성하여 대상물 내부 정보를 부호화한다.The motion estimator 31 and the motion compensator 32 reconstruct the macro block to perform motion estimation and motion compensation according to the position of the reduced amount of motion information determined by the second contour shape adaptation block divider 41. 3 The internal object encoding unit 34 reconstructs the macro block according to the reduced position of the encoded information amount determined by the contour shape adaptation block dividing unit 42 to encode the internal object information.
제6도는 제5도의 제1~3 윤곽선 모양적응 블록 분할부(40~42)의 실시예를 보인 회로도이다. 부호 51은 어드레스를 발생할 어드레스 시작 위치를 하나의 매크로블록의 X축 및 Y축 크기 이내에서 일정 간격씩 이동시키는 어드레스 발생 제어기이다.FIG. 6 is a circuit diagram showing an embodiment of the first to third contour shape adaptation block division parts 40 to 42 of FIG. Reference numeral 51 is an address generation controller for moving the address start position at which the address is to be generated at regular intervals within the X and Y axes of one macroblock.
부호 52은 상기 어드레스 발생 제어기(51)가 출력하는 어드레스 시작 위치에 따라 대상물의 영상을 매크로 블록으로 구분하여 순차적으로 출력할 수 있도록 X축 및 Y축 어드레스를 발생하는 어드레스 발생기이다. 부호 53은 입력되는 모양 정보 및/또는 형상 정보를 가지는 대상물 영상을 순차적으로 저장하고 상기 어드레스 발생기(52)가 발생하는 어드레스에 따라 매크로 블록으로 구분하여 출력하는 메모리이다.Reference numeral 52 denotes an address generator that generates X-axis and Y-axis addresses so that images of the object are divided into macroblocks and sequentially output according to the address start position output by the address generation controller 51. Reference numeral 53 is a memory for sequentially storing an object image having shape information and / or shape information inputted therein, and dividing the object image into macroblocks according to an address generated by the address generator 52.
어드레스 발생기(52)는, 제17도에 도시된 바와 같이 입력되는 대상물 영상의 크기 정보에 따라 X축 크기 결정부(521)가 매크로 블록의 X축 크기를 결정하고, Y축 크기 결정부(522)가 매크로 블록의 Y축 크기를 결정한다.In the address generator 52, as shown in FIG. 17, the X-axis size determiner 521 determines the X-axis size of the macro block according to the size information of the input target image, and the Y-axis size determiner 522 ) Determines the Y-axis size of the macro block.
여기서, 매크로 블록의 X축 및 Y축 크기가 동일할 경우에는 하나의 크기 결정부만을 사용하여 매크로 블록의 크기를 결정할 수 있다.Here, when the size of the X and Y axes of the macro block is the same, the size of the macro block may be determined using only one size determining unit.
상기 어드레스 발생기(52)에서 매크로 블록 어드레스 발생기(527)는 상기 X축 크기 결정부(521) 및 Y축 크기 결정부(522)가 결정한 매크로 블록의 X축 크기 및 Y축 크기를 판단하고, 상기 어드레스 발생 제어기(51)에서 출력되는 어드레스 시작 위치를 기준으로 하여 상기 메모리(53)에 저장되어 있는 대상물 영상의 매크로 블록에 대한 X축 및 Y축 어드레스를 구분하며, 구분한 매크로 블록의 X축 및 Y축 어드레스를 순차적으로 발생한다.In the address generator 52, the macro block address generator 527 determines the X axis size and the Y axis size of the macro block determined by the X axis size determiner 521 and the Y axis size determiner 522. On the basis of the address start position output from the address generation controller 51, the X-axis and Y-axis addresses for the macroblock of the object image stored in the memory 53 are distinguished, and the X-axis and Y-axis addresses are generated sequentially.
상기 매크로 블록 어드레스 발생기(523)가 순차적으로 발생한 X축 및 Y축 어드레스에 따라 상기 메모리(53)는 저장되어 있는 대상물의 영상을 매크로 블록으로 구분하여 순차적으로 출력한다. 예를 들면, 제8도에 도시된 바와 같이 하나의 매크로 블록의 대상물 영상을 순차적으로 출력한 후 다음 매크로 블록의 대상물 영상을 순차적으로 출력한다.According to the X-axis and Y-axis addresses that the macro block address generator 523 sequentially generates, the memory 53 sequentially divides the image of the stored object into macro blocks and sequentially outputs the image. For example, as shown in FIG. 8, the object images of one macro block are sequentially output, and the object images of the next macro block are sequentially output.
부호 54은 메모리(53)의 출력신호 중에서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하는 블록 수 카운터이다.Reference numeral 54 is a block number counter for counting the number of macro blocks in which the contour of the object image exists among the output signals of the memory 53.
상기 블록 수 카운터(54)는 제9도에 도시된 바와 같이 클럭신호를 매크로 블록 카운터(541)가 카운트하여 매크로 블록을 구분한다. 블록 수 카운터(54)의 윤곽선 존재 판단부(542)는 상기 메모리(53)에서 출력되는 대상물 영상의 매크로 블록을 상기 매크로 블록 카운터(541)의 출력신호에 따라 구분하면서 대상물 영상의 윤곽선이 존재하는 지의 여부를 판단한다.As shown in FIG. 9, the block number counter 54 distinguishes macro blocks by counting clock signals by the macro block counter 541. FIG. The contour presence determination unit 542 of the block number counter 54 classifies the macroblock of the object image output from the memory 53 according to the output signal of the macroblock counter 541 and the contour of the object image exists. Judge whether
여기서, 대상물 영상의 윤곽선이 존재하는 매크로 블록은 하나 이상의 화소에 대상물의 영상이 존재하고, 또한 대상물의 모든 화소에 존재하지 않는 것으로서 윤곽선 존재 판단부(542)는 상기한 2가지 조건을 만족하는 매크로 블록을 대상물 영상의 윤곽선이 존재하는 매크로 블록으로 판단한다.Here, in the macro block in which the contour of the object image exists, the image of the object exists in one or more pixels, and not in all the pixels of the object, the contour existence determination unit 542 may satisfy the above two conditions. The block is determined as a macro block in which the contour of the object image exists.
상기 윤곽선 존재 판단부(542)의 판단신호를 가산기(543)가 가산하여 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 출력한다.The adder 543 adds the determination signal of the contour existence determination unit 542 to output the number of macro blocks in which the contour of the object image exists.
부호 55는 상기 블록 수 카운터(54)가 카운트한 매크로 블록의 수 중에서 가장 적은 수의 매크로 블록을 카운트한 X축 및 Y축 그리드 시작점을 정보량 감소 위치로 선택하는 최소 매크로 블록 그리드 선택기이다.Reference numeral 55 is a minimum macroblock grid selector for selecting the X-axis and Y-axis grid starting points of the smallest number of macroblocks among the number of macroblocks counted by the block number counter 54 as the information amount reduction position.
상기 최소 매크로 블록 그리드 선택기(55)는 상기 블록 수 카운터(54)의 카운트가 완료될 경우에 카운트 값을 저장하고, 상기 어드레스 발생 제어기(51)를 제어하여 X축 및 Y축 어드레스의 시작 위치를 매크로 블록의 X축 및 Y축 크기 이내에서 일정 간격으로 이동시켜 발생하게 제어한다.The minimum macroblock grid selector 55 stores the count value when the count of the block number counter 54 is completed, and controls the address generation controller 51 to determine the start positions of the X-axis and Y-axis addresses. It is controlled to occur by moving at regular intervals within the X and Y axis sizes of the macro block.
즉, 상기 최소 매크로 블록 그리드 선택기(55)는 X축 및 Y축 어드레스 시작 위치를 이동시킨 후 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하는 동작이 완료될 경우에 어드레스 발생 제어기(51)를 제어하여 X축 및 Y축 어드레스의 시작 위치를 이동시키게 하는 것을 반복한다.That is, the minimum macroblock grid selector 55 moves the X-axis and Y-axis address start positions, and then completes an operation of counting the number of macroblocks in which the contour of the object image exists. The control is repeated to move the start position of the X-axis and Y-axis addresses.
그리고 X축 및 Y축 어드레스의 시작 위치를 하나의 매크로 블록의 X축 및 Y축 크기 이내에서 이동시키면서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하는 동작이 완료되었을 경우에 상기 최소 매크로 블록 그리드 선택기(55)는 카운트한 매크로 블록의 수 중에서 가장 적은 수의 매크로 블록을 카운트한 X축 및 Y축 어드레스의 시작 위치를 판단하고, 판단한 X축 및 Y축 어드레스 시작 위치를 정보량 감소 위치인 최적의 X축 및 Y축 그리드 시작 위치로 결정하여 출력한다.The minimum macroblock is performed when the operation of counting the number of macroblocks in which the contour of the object image exists while moving the start positions of the X-axis and Y-axis addresses within the size of the X-axis and the Y-axis of one macroblock is completed. The grid selector 55 determines the start positions of the X-axis and Y-axis addresses in which the smallest number of macroblocks are counted among the counted macroblocks, and determines the start positions of the determined X-axis and Y-axis addresses as information reduction positions. Determine the X and Y axis grid start position and print it out.
제10도는 본 발명의 부호화 방법을 보인 신호 흐름도이다.10 is a signal flowchart showing an encoding method of the present invention.
먼저, 단계(S11)에서는 VOP 형성부(11)에서 형성된 VOP를 정의한다. 예를 들면, 제11도에 도시된 '고양이'의 영상에 대하여 VOP를 정의하고, VOP 폭 및 VOP높이를 결정한다.First, in step S11, the VOP formed in the VOP forming unit 11 is defined. For example, the VOP is defined for the image of the 'cat' shown in FIG. 11, and the VOP width and the VOP height are determined.
다음 단계(S12)에서는 상기 정의된 VOP의 좌측 상단인 그리드 시작점을 기준으로 하여 제11도에 점선으로 도시된 바와 같이 각기 M×N개의 화소를 가지는 매크로 블록으로 구획한다.In the next step S12, as shown by a dotted line in FIG. 11, based on the grid start point of the upper left of the defined VOP, each block is divided into macroblocks having M × N pixels.
매크로 블록이 구획되면, 단계(S13)에서 매크로 블록의 그리드 시작점을 이동시키면서 정보량 감소 위치를 결정한다. 예를 들면, 제11도에 실선으로 도시된 바와 같이 대상물 영상의 윤곽선이 가장 적은 수의 매크로 블록에 존재하는 최적의 그리드 시작점을 찾아 정보량 감소 위치로 결정한다.When the macro block is partitioned, the information amount reduction position is determined while moving the grid starting point of the macro block in step S13. For example, as shown by the solid line in FIG. 11, the optimal grid start point at which the contour of the object image exists in the smallest number of macroblocks is found to determine the information amount reduction position.
상기 단계(S13)에서 정보량 감소 위치가 결정되면, 다음 단계(S14)에서는 상기 정보량 감소 위치에 따라 모양 부호화부(37)에서 대상물의 모양 정보를 부호화 한다.When the information amount reduction position is determined in the step S13, in the next step S14, the shape encoder 37 encodes the shape information of the object according to the information amount reduction position.
다음 단계(S15)에서는 모양 부호화부(37)에서 모양 정보를 부호화한 매크로 블록의 그리드 시작점을 이동시키면서 대상물 영상의 윤곽선이 가장 적은 수의 매크로 블록에 존재하는 움직임 정보량 감소 위치 및 부호화 정보량 감소 위치를 찾아 출력한다.In the next step S15, the shape encoder 37 moves the grid start point of the macro block that has encoded the shape information, and determines the motion information amount decreasing position and the encoding information amount decreasing position in which the contour of the object image exists in the smallest number of macro blocks. Find and print
단계(S16)에서는 상기 단계(S15)에서 출력한 움직임 정보량 감소 위치를 기준으로 하여 매크로 블록 단위로 움직임 추정부(31)에서 움직임을 추정하고, 움직임 보상부(32)에서 움직임 보상을 수행한다.In step S16, the motion estimation unit 31 estimates the motion in macroblock units on the basis of the position of the reduced amount of motion information output in step S15, and the motion compensation unit 32 performs motion compensation.
단계(S17)에서 부호화 정보량 감소 위치를 기준으로 매크로 블록의 서브 블록 단위로 대상물 내부 정보를 부호화한다.In step S17, the object internal information is encoded in units of subblocks of the macroblock based on the reduced information amount.
다음 단계(S18)에서는 상기에서 부호화한 모양 정보와, 움직임 정보 및 대상물 내부 정보를 멀티플렉서(38) 및 버퍼(39)를 통해 출력한다.In the next step S18, the shape information, motion information, and object internal information encoded above are output through the multiplexer 38 and the buffer 39.
제12도는 본 발명의 부호화 방법에 따라 상기 단계(S14)에서 매크로 블록의 정보량 감소 위치를 찾는 일 실시예를 보인 신호 흐름도이다.FIG. 12 is a signal flowchart showing an embodiment of finding an information amount reduction position of a macro block in step S14 according to the encoding method of the present invention.
먼저 단계(S21)에서 모양 정보 및/또는 형상 정보를 가지는 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 정보량 감소 위치인 최적의 X축 및 Y축 그리드 시작점을 찾기 위하여 초기 X축 및 Y축 그리드 시작점(XM)(YN)을 초기화시킨다.First, in step S21, the initial X-axis and Y-axis are used to find the optimal X-axis and Y-axis grid starting points, which are information reduction positions where the number of macro blocks in which the contour of the object image having shape information and / or shape information exists is minimized. Initialize the axis grid starting point (XM) (YN).
X축 및 Y축 그리드 시작점(XM)(YN)의 초기값은 XM=0, YN=0으로 주어진다.The initial values of the X- and Y-axis grid starting points (XM) (YN) are given by XM = 0 and YN = 0.
다음 단계(S22)에서는 상기 단계(S21)에서 초기화한 X축 및 Y축 그리드 시작점을 기준으로 하여 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트한다.In the next step S22, the number of macro blocks in which the contour of the object image exists is counted based on the X-axis and Y-axis grid start points initialized in the step S21.
제11도의 도면에서 점선으로 도시된 VOP의 매크로 블록을 예로 들면, X축으로 첫 번째 행부터 '고양이'의 영상이 존재하는 매크로 블록의 수는 각기 3, 4, 4, 4 및 5개로서 "고양이"기 영상이 모두 20개의 매크로 블록에 존재한다.For example, the macroblocks of the VOP shown by the dotted lines in FIG. 11 are three, four, four, four, and five macroblocks each having an image of 'cat' from the first row on the X-axis. All of the "cat" images are present in 20 macro blocks.
상기 단계(S22)에서 매크로 블록의 수를 카운트하는 동작이 완료되면, 단계(S23)에서 상기 카운트한 매크로 블록의 수를 저장한다.When the operation of counting the number of macroblocks is completed in step S22, the counted number of macroblocks is stored in step S23.
다음 단계(S24)에서는 X축 그리드 시작점(XM)을 최초의 매크로 블록에서 X축으로 일정 간격(K)만큼 이동시켜 매크로 블록을 재구성하고, 단계(S25)에서 X축 그리드 시작점(XM)가 X축으로 M번 이상 이동되었는 지를 판단한다.In a next step S24, the X-axis grid starting point XM is moved from the first macro block to the X-axis by a predetermined distance K to reconstruct the macro block, and in step S25, the X-axis grid starting point XM is X Determine if the axis has been moved more than M times.
즉, X축 그리드 시작점(XM)가 하나의 매크로 블록의 X축 크기 이상으로 이동되었는지를 판단한다.That is, it is determined whether the X-axis grid starting point XM is moved beyond the X-axis size of one macro block.
상기 단계(S25)에서 X축 그리드 시작점(XM)이 X축으로 M번 이상 이동되지 않았을 경우에 상기의 단계(S22~S25)를 수행하여 X축 그리드 시작점(XM)을 X축으로 일정 간격(K)씩 이동하고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하여 저장하는 동작을 반복 수행한다.When the X-axis grid starting point XM has not moved more than M times in the step S25 in the step S25, the steps S22 to S25 may be performed to move the X-axis grid starting point XM to the X axis by a predetermined interval ( The method moves repeatedly by K) and counts and stores the number of macro blocks in which the contour of the object image exists.
상기 단계(S25)에서 X축 그리드 시작점(XM)이 X축으로 M번 이상 이동되었을 경우에는 단계(S26)에서 가장 적은 수의 매크로 블록을 카운트한 X축 그리드 시작점(XM)을 최적의 X축 그리드 시작점(XOM)으로 결정한다.When the X-axis grid start point XM is moved more than M times in the step S25 in the step S25, the X-axis grid start point XM in which the smallest number of macroblocks are counted in step S26 is optimized for the X-axis. Determined by the grid starting point (XOM).
단계(S27)에서는 결정한 상기 최적의 X축 그리드 시작점(XOM)과 Y축 그리드 시작점(XON)으로 매크로 블록을 재구성하고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트한다.In step S27, the macroblock is reconstructed with the determined optimal X-axis grid starting point XOM and Y-axis grid starting point XON, and the number of macro blocks in which the contour of the object image exists is counted.
상기 단계(S27)에서 매크로 블록의 수를 카운트하는 동작이 완료되면, 단계(S28)에서는 카운트한 매크로 블록의 수를 저장한다.When the operation of counting the number of macroblocks is completed in step S27, the counted number of macroblocks is stored in step S28.
다음 단계(S29)에서는 Y축 그리드 시작점(YN)을 Y축으로 일정 간격(L)만큼 이동시키고, 단계(S30)에서 Y축 그리드 시작점(YN)이 Y축으로 N번 이상 이동되었는지를 판단한다.In the next step S29, the Y-axis grid starting point YN is moved by the predetermined distance L on the Y-axis, and in step S30, it is determined whether the Y-axis grid starting point YN has been moved N times or more by the Y-axis. .
즉, Y축 그리드 시작점(YN)이 하나의 매크로 블록의 Y축 크기 이상으로 이동되었는지를 판단한다.That is, it is determined whether the Y-axis grid start point YN has moved beyond the Y-axis size of one macro block.
상기 단계(S30)에서 Y축 그리드 시작점(YN)이 Y축으로 일정 간격(L)씩 N번 이상 이동되지 않았을 경우에 상기 단계(S27∼S30)를 반복 수행하여, 최적의 X축 그리드 시작점(XOM)을 기준으로 Y축 그리드 시작점(YN)을 일정 간격(L)씩 이동시키고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하여 저장하는 것을 반복한다.When the Y axis grid start point YN is not moved more than N times by a predetermined distance L in the Y axis in step S30, the steps S27 to S30 are repeatedly performed to obtain an optimal X axis grid start point ( The X-axis grid starting point YN is moved by a predetermined interval L based on XOM), and the number of macroblocks in which the contour of the object image exists is counted and stored.
상기 단계(S30)에서 Y축 그리드 시작점(YN)이 일정 간격(L)씩 N번 이상 이동되면, 단계(S31)에서 가장 적은 수의 매크로 블록을 카운트한 Y축 그리드 시작점(XM)을 최적의 Y축 그리드 시작점(YON)으로 결정하고, 상기 단계(S26)(S31)에서 결정한 최적의 X축 그리드 시작점(XOM) 및 Y축 그리드 시작점(YON)을 정보량 감소 위치로 출력한다.If the Y-axis grid start point YN is moved N or more times by a predetermined interval L in step S30, the Y-axis grid start point XM that counted the smallest number of macroblocks in step S31 is optimal. The Y-axis grid start point YON is determined, and the optimal X-axis grid start point XOM and Y-axis grid start point YON determined in the step S26 and S31 are output to the information amount reduction position.
즉, 제12도에 도시된 본 발명의 일 실시예에서는 전체 그리드를 X축으로 일정 간격(K)씩 M번 이동시키면서 대상물 영상의 윤곽선이 존재하는 가장 적은 수의 매크로 블록을 카운트한 X축 그리드 시작점(XM)을 최적의 X축 그리드 시작점(XOM)으로 결정한다. 상기 결정한 최적의 X축 그리드 시작점(XOM)을 기준으로하여 전체 그리드를 Y축으로 일정 간격(L)씩 N번 이동시키면서 대상물 영상의 윤곽선이 존재하는 가장 적은 수의 매크로 블록을 카운트한 Y축 그리드 시작점(YN)을 최적의 Y축 그리드 시작점(YON)으로 결정하고, 결정한 상기 최적의 X축 그리드 시작점(XOM) 및 최적의 Y축 그리드 시작점(YON)을 정보량 감소 위치로 출력한다.That is, in the exemplary embodiment of the present invention shown in FIG. 12, the X-axis grid counting the smallest number of macro blocks in which the contour of the object image exists while moving the entire grid M times by a predetermined interval K on the X-axis. Determine the starting point (XM) as the optimal X-axis grid starting point (XOM). Y-axis grid counting the smallest number of macro blocks in which the contour of the object image exists while moving the entire grid N times by a predetermined distance (L) on the Y-axis based on the determined optimal X-axis grid start point (XOM). The starting point YN is determined as the optimal Y axis grid starting point YON, and the determined optimal X axis grid starting point XOM and the optimal Y axis grid starting point YON are output to the information amount reduction position.
그러므로 본 발명의 일 실시예는 그리드 시작점을 X축으로 M번 이동시키고, Y축으로 N번 이동시키는 것으로서 전체적으로 그리드 시작점(XM, YN)을 M + N번 이동시키면서 최적의 X축 및 Y축 그리드 시작점(XOM, YON)을 찾아 출력한다.Therefore, an embodiment of the present invention is to move the grid starting point M times on the X axis and N times on the Y axis, and the optimal X and Y axis grids are moved by moving the grid starting points (XM, YN) M + N times. Find the starting point (XOM, YON) and print it.
제13도는 본 발명의 부호화 방법에 따라 정보량 감소 위치를 찾는 다른 실시예를 보인 신호 흐름도이다.13 is a signal flowchart showing another embodiment of finding the information amount reduction position according to the encoding method of the present invention.
단계(S41)에서 VOP를 형성한 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 최적의 X축 및 Y축 그리드 시작점(XOM, YON)을 찾기 위하여 X축 및 Y축 그리드 시작점(XM)(YN)을 XM=0, YN=0으로 초기화한다.In order to find the optimal X-axis and Y-axis grid starting points (XOM, YON) in which the number of macro blocks in which the contour of the object image forming the VOP is present in step S41 is minimized, the X-axis and Y-axis grid starting points (XM) Initialize (YN) to XM = 0, YN = 0.
단계(S42)에서는 상기 단계(S41)에서 초기화한 X축 및 Y축 그리드 시작점(XM=0)(YN=0)을 기준으로 하여 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하고, 단계(S43)에서는 상기 카운트한 매크로 블록의 수를 저장한다.In step S42, the number of macroblocks in which the contour of the object image exists is counted based on the X-axis and Y-axis grid starting points XM = 0 (YN = 0) initialized in step S41, and In S43, the counted number of macroblocks is stored.
다음 단계(S44)에서는 X축 그리드 시작점(XM)을 X축으로 일정 간격(K)만큼 이동시키고, 단계(S45)에서 X축 그리드 시작점(XM)을 X축으로 M번 이상 이동하여 X축으로 하나의 매크로 블록의 크기 이상으로 이동되었는지를 판단한다.In the next step S44, the X-axis grid starting point XM is moved by the predetermined distance K on the X-axis, and in step S45, the X-axis grid starting point XM is moved by the X-axis more than M times to the X-axis. It is determined whether the macro block has moved beyond the size of one macro block.
상기 단계(S45)에서 X축 그리드 시작점(XM)이 X축으로 M번 이상 이동되지 않았을 경우에 상기 단계(S42~S45)를 수행하여 X축 그리드 시작점(XM)을 X축으로 일정 간격(K)씩 이동하고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하여 저장하는 것을 반복한다.When the X-axis grid starting point XM has not moved more than M times in the step S45 in the step S45, the steps S42 to S45 are performed to move the X-axis grid starting point XM to the X axis by a predetermined interval K. ) And then counting and storing the number of macro blocks in which the contour of the object image exists.
상기 단계(S45)에서 X축 그리드 시작점(XM)이 X축으로 M번 이상 이동되면, 단계(S46)에서 Y축 그리드 시작점(YN)를 Y축 방향으로 일정 간격(L)만큼 이동시킨다.When the X-axis grid start point XM is moved more than M times on the X-axis in step S45, the Y-axis grid start point YN is moved by a predetermined interval L in the Y-axis direction in step S46.
다음 단계(S47)에서는 Y축 그리드 시작점(YN)이 Y축으로 일정 간격(L)씩 N번 이상 이동되었는지를 판단한다.In the next step S47, it is determined whether the Y-axis grid start point YN has moved more than N times by a predetermined interval L on the Y-axis.
상기 단계(S47)에서 Y축 그리드 시작점(YN)이 Y축으로 N번 이상 이동되지 않았을 경우에 상기 단계(S42~S47)를 수행하여 Y축 그리드를 Y축으로 일정 간격(L)씩 이동시킨 후 X축 그리드를 X축으로 하나의 매크로 블록의 크기 이내에서 일정 간격(K)씩 이동시키고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하여 저장하는 것을 반복한다.When the Y-axis grid starting point YN has not moved more than N times on the Y-axis in step S47, the steps S42 to S47 are performed to move the Y-axis grid by a predetermined interval L on the Y-axis. After that, the X-axis grid is moved to the X-axis by a predetermined interval K within the size of one macro block, and the number of macro blocks in which the contour of the object image exists is counted and stored.
상기 단계(S47)에서 Y축 그리드 시작점(YN)이 Y축으로 N번 이상 이동되면, 단계(S47)에서 대상물 영상의 윤곽선이 존재하는 가장 적은 수의 매크로 블록을 카운트한 X축 그리드 시작점(XM) 및 Y축 그리드 시작점(YN)을 최적의 X축 그리드 시작점(XOM) 및 Y축 그리드 시작점(YON)으로 결정하고, 결정한 최적의 X축 및 Y축 그리드 시작점(XOM)(YON)을 정보량 감소 위치로 출력한다.If the Y-axis grid start point YN is moved N times or more in the step S47 in the step S47, the X-axis grid start point XM in which the smallest number of macro blocks in which the contour of the object image exists is counted in step S47. ) And the Y-axis grid start point (YN) as the optimal X-axis grid start point (XOM) and Y-axis grid start point (YON), and the determined optimal X-axis and Y-axis grid start point (XOM) (YON) is reduced. Output to position
즉, 제13도에 도시된 본 발명의 다른 실시예는 전체 그리드 시작점을 X축으로 일정 간격(K)씩 M번 이동시킨 후 Y축으로 일정 간격(L)만큼 이동시키고, 다시 전체 그리드 시작점을 X축으로 일정 간격(K)씩 M번 이동시킨 후 Y축으로 일정 간격(L)만큼 이동시키는 동작을 반복하면서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하고, 가장 적은 수의 매크로 블록을 카운트한 X축 및 Y축 그리드 시작점(XM)(YN)을 정보량 감소 위치로 출력한다.That is, in another embodiment of the present invention shown in FIG. 13, the entire grid starting point is moved M times by a predetermined interval K on the X axis, and then the entire grid starting point is moved by the Y axis. After repeating the movement of M intervals by the predetermined interval (K) on the X axis and the predetermined interval (L) on the Y axis, the number of macro blocks in which the contour of the object image exists is counted, and the smallest number of macro blocks The X-axis and Y-axis grid starting points (XM) YN, each of which is counted, are output to the information amount decreasing position.
그러므로 제13도에 도시된 본 발명의 다른 실시예는 X축 및 Y축 그리드 시작점(XM)(YN)을 일정 간격(K)(L)씩 M x N번 이동시키면서 가장 적은 수의 매크로 블록을 카운트한 X축 및 Y축 그리드 시작점(XM)(YN)을 출력한다.Therefore, another embodiment of the present invention shown in FIG. 13 moves the smallest number of macro blocks by moving the X- and Y-axis grid starting points (XM) (YN) by M × N times by a predetermined distance (K) (L). The counted X and Y axis grid start points (XM) (YN) are output.
그리고 상기한 제12도 및 제13도의 실시예에서는 그리드 시작점을 X축으로 일정 간격(K)씩 이동시킨 후 Y축으로 일정 간격(L)씩 이동시켜 최적의 X축 및 Y축그리드 시작점(XOM, YON)을 찾는 것을 예로 들어 설명하였다.In the embodiments of FIGS. 12 and 13, the grid starting point is moved by the predetermined interval K on the X axis and then the predetermined interval L is moved on the Y axis to provide the optimal X and Y axis grid starting points XOM. , YON).
그러나 본 발명을 실시함에 있어서는 제12도 및 제13도의 도면에서 괄호 안에 표시한 바와 같이 Y축으로 일정 간격(L)씩 이동시킨 후 X축으로 일정 간격(K)씩 이동시키면서 최적의 X축 및 Y축 그리드 시작점(XOM, YON)을 찾아 출력할 수도 있다.However, in the practice of the present invention, as shown in parentheses in the drawings of FIGS. 12 and 13, the optimum X-axis and the predetermined X-axis are moved along the X-axis by a certain distance (K). Y axis grid starting point (XOM, YON) can also be found and printed.
제14도는, 본 발명의 부호화 방법에 따라 정보량 감소 위치를 찾는 또 다른 실시예를 보인 신호 흐름도이다.14 is a signal flow diagram showing another embodiment of finding the information amount reduction position according to the encoding method of the present invention.
단계(S51)에서 대상물 영상의 윤곽선이 위치하는 매크로 블록의 수가 최소로 되는 최적의 X축 및 Y축 그리드 시작점(XOM, YON)을 찾기 위하여 X축 및 Y축 그리드 시작점(XM, YN)을 모두 '0'으로 초기화한다.In step S51, both the X-axis and Y-axis grid starting points (XM, YN) are found to find the optimal X-axis and Y-axis grid starting points (XOM, YON) in which the number of macro blocks in which the contour of the object image is located is minimized. Initialize to '0'.
다음 단계(S52)에서는 초기화한 상기 X축 및 Y축 그리드 시작점(XM, YN)에서 대상물 영상의 윤곽선이 존재되는 매크로 블록의 수를 카운트하고, 단계(S53)에서 상기 카운트한 매크로 블록의 수를 저장한다.In the next step S52, the number of macroblocks in which the contour of the object image is present is counted at the initializing X-axis and Y-axis grid starting points XM and YN, and the number of macroblocks counted in the step S53 is determined. Save it.
다음 단계(S54)에서는 X축 그리드 시작점(XM)이 X축으로 M번 이동되고, Y축 그리드 시작점(YN)이 Y축으로 N번 이동되었는지를 판단한다.In the next step S54, it is determined whether the X-axis grid start point XM has been moved M times in the X-axis, and the Y-axis grid start point YN has been moved N times in the Y-axis.
상기 단계(S54)에서 X축 그리드 시작점(XM)이 X축으로 M번 이상 이동되지 않았거나 또는 Y축 그리드 시작점(YN)이 Y축으로 N번 이상 이동되지 않았을 경우에 단계(S55)에서 X축 및 Y축 그리드 시작점(XM)(YN)을 하나의 매크로 블록의 크기 이내에서 지그재그 방향으로 일정 간격(K)(L)씩 이동하고, 단계(S52∼S55)를 수행하여 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하고, 저장하며, X축 및 Y축 그리드 시작점(XM)(YN)을 지그재그 방향으로 이동하는 것을 반복한다.In the step S54, when the X-axis grid start point XM is not moved more than M times in the X axis or the Y-axis grid start point YN is not moved more than N times in the Y axis, in step S55 The axis and Y-axis grid starting point (XM) (YN) is moved by a predetermined distance (K) (L) in the zigzag direction within the size of one macro block, and the steps S52 to S55 are performed so that the outline of the object image is The number of macro blocks present is counted and stored, and the X and Y axis grid starting points (XM) YN are repeated in the zigzag direction.
여기서, X축 및 Y축 그리드 시작점(XM)(YN)을 지그재그 방향으로 일정 간격(K)(L)씩 이동하는 방법은 2가지가 있다. 예를 들면, 제15도의 (가)에 도시된 화살표의 방향에 따라 이동하거나 또는 제15도의 (나)에 도시된 화살표의 방향에 따라 이동할 수 있다.Here, there are two methods for moving the X- and Y-axis grid starting points (XM) (YN) in the zigzag direction by a predetermined interval (K) (L). For example, it can move along the direction of the arrow shown to (a) of FIG. 15, or can move along the direction of the arrow shown to (b) of FIG.
상기 단계(S54)에서 X축 그리드 시작점(XM)이 X축으로 M번 이동되고, Y축 그리드 시작점(YN)이 Y축으로 N번 이동되면, 단계(S56)에서, 가장 적은 수의 매크로 블록을 카운트한 X축 그리드 시작점(XM) 및 Y축 그리드 시작점(YN)을 최적의 X축 그리드 시작점(XOM) 및 Y축 그리드 시작점(YON)으로 결정하고, 결정한 상기 최적의 X축 그리드 시작점(XOM) 및 Y축 그리드 시작점(YON)을 정보량 감소 위치로 출력한다.In step S54, if the X-axis grid start point XM is moved M times in the X axis and the Y-axis grid start point YN is moved N times in the Y axis, in step S56, the smallest number of macro blocks The X-axis grid starting point (XM) and the Y-axis grid starting point (YN) that counted are determined as the optimal X-axis grid starting point (XOM) and Y-axis grid starting point (YON), and the determined optimal X-axis grid starting point (XOM) is determined. ) And Y-axis grid start point (YON) are output to the information amount reduction position.
즉, 제14도에 도시된 본 발명의 또 다른 실시예는 그리드 시작점을 하나의 매크로 블록의 X축 및 Y축 크기 이내에서 지그재그로 이동시키면서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트한다.That is, another embodiment of the present invention shown in FIG. 14 counts the number of macro blocks in which the contour of the object image exists while moving the grid starting point in a zigzag within the X and Y axis sizes of one macro block. .
그러므로 제14도에 도시된 본 발명의 또 다른 실시예는 X축 및 Y축 그리드 시작점(XN)(YN)을 일정 간격(K)(L)씩 전체적으로 M × N번 이동시키면서 가장 적은 수의 매크로 블록을 카운트한 최적의 X축 및 Y축 그리드 시작점(XM)(YN)을 출력한다.Therefore, another embodiment of the present invention shown in FIG. 14 shows the smallest number of macros by moving the X- and Y-axis grid starting points (XN) (YN) by a predetermined distance (K) (L) as a whole. The optimal X-axis and Y-axis grid start points (XM) YN for which the blocks are counted are output.
상기한 제12도 내지 제14도의 실시예에 따라 결정된 최적의 그리드 시작점(XM)(YN)에 따라 매크로 블록을 재형성한 예가 제11도에 실선으로 도시되어있다.An example of reforming the macro block according to the optimal grid starting point XM (YN) determined according to the embodiments of FIGS. 12 to 14 described above is shown in solid line in FIG.
제16도는 본 발명의 부호화 방법에 따라서 매크로 블록의 정보량 감소 위치를 찾는 또 다른 실시예를 보인 신호 흐름도이다.FIG. 16 is a signal flow diagram illustrating another embodiment of finding the information amount reduction position of a macroblock according to the encoding method of the present invention.
단계(S61)에서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 정보량 감소 위치를 찾기 위하여 먼저 X축 및 Y축 그리드 시작점(XM, YN)을 '0'으로 초기화한다.In step S61, the X and Y axis grid starting points XM and YN are initially initialized to '0' in order to find the information amount decreasing position where the number of macro blocks in which the contour of the object image exists is minimized.
단계(S62)에서는, 상기 단계(S61)에서 초기화한 X축 및 Y축 그리드 시작점(XM=0, YN=0)에서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 모두 카운트하고, 다음 단계(S63)에서는 상기 단계(S62)에서 카운트한 매크로 블록의 수를 저장한다.In step S62, the number of macroblocks in which the contour of the object image exists at the X and Y-axis grid starting points XM = 0 and YN = 0 initialized in step S61 is counted, and the next step ( In step S63, the number of macroblocks counted in step S62 is stored.
다음 단계(S64)에서는, Y축 그리드 시작점(YN)을 Y축으로 일정 간격(L)만큼 이동시키고, 단계(S65)에서 Y축 그리드 시작점(YN)을 Y축으로 N번 이상 이동시켰는지를 판단한다.In the next step S64, the Y-axis grid starting point YN is moved by the predetermined distance L on the Y-axis, and in step S65, it is determined whether the Y-axis grid starting point YN is moved N times or more on the Y-axis. do.
Y축 그리드 시작점(YN)이 Y축으로 N번 이상 이동되지 앉았을 경우에 상기 단계(S62∼S65)를 수행하여 Y축 그리드 시작점(YN)을 Y축으로 일정 간격(L)씩 이동하고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하여 저장하는 것을 반복한다.When the Y-axis grid start point YN is not moved more than N times on the Y-axis, the steps S62 to S65 are performed to move the Y-axis grid start point YN to the Y-axis by a predetermined interval L. Counting and storing the number of macro blocks in which the contour of the image exists is repeated.
상기 단계(S65)에서 Y축 그리드 시작점(YN)이 Y측으로 일정 간격(L)씩 N번이상 이동되면, 다음 단계(S66)에서 가장 적은 수의 매크로 블록을 카운트한 Y축 그리드 시작점(YN)을 최적의 Y축 그리드 시작점(YON)으로 결정한다.If the Y-axis grid start point YN is moved to the Y-side by N or more times by a predetermined interval L in the step S65, the Y-axis grid start point YN in which the smallest number of macro blocks are counted in the next step S66. Determine the optimal Y-axis grid start point (YON).
상기 단계(S56)에서 가장 적은 수의 매크로 블록을 카운트한 최적의 Y축 그리드 시작점(YON)이 결정되면, 단계(S67)에서는 결정한 상기 최적의 Y축 그리드 시작점(YON)을 기준으로 하여 그리드를 재구성하고, 단계(S68)에서 대상물 영상의 윤곽선이 존재하는 현재 X축 행의 매크로 블록을 카운트한다.When the optimal Y-axis grid start point YON is determined in which the smallest number of macroblocks are counted in step S56, the grid is determined based on the determined optimal Y-axis grid start point YON in step S67. In step S68, the macroblock of the current X-axis row in which the contour of the object image exists is counted.
즉, 제18도의 (가)에 도시된 바와 같이 X축으로 첫 번째 행인 X(1)행의 매크로 블록중에서 대상물 영상의 윤곽선이 존재하는 매크로 블록을 카운트한다.That is, as shown in (a) of FIG. 18, the macroblock in which the contour of the object image exists is counted among the macroblocks in the X (1) row, which is the first row on the X axis.
다음 단계(S69)에서는 카운트한 매크로 블록의 수를 저장한다.In the next step S69, the counted number of macro blocks is stored.
다음 단계(S70)에서 X(1)행의 그리드 시작점(XM)을 X축으로 일정 간격(K)만큼 이동시키고, 단계(S71)에서 상기 X(1)행의 그리드 시작점(XM)을 X축으로 일정 간격(K)씩 M번 이상 이동하였는지를 판단한다.In the next step S70, the grid starting point XM of row X (1) is moved by a predetermined distance K on the X axis, and in step S71, the grid starting point XM of the row X (1) is X-axis. It is determined whether the M has moved more than M times by a predetermined interval (K).
상기 단계(S71)에서 X(1)행의 X축 그리드 시작점(XM)를 X축으로 M번 이상 이동하지 않았을 경우에 상기 단계(S68∼S71)를 수행하여 X(1)행의 X축 그리드 시작점(XM)을 X축으로 일정 간격(K)씩 이동하고, X(1)행의 매크로 블록 중에서 대상물 영상의 윤곽선이 존재하는 매크로 블록을 카운트하여 저장하는 것을 반복한다.When the X axis grid start point XM of row X (1) is not moved more than M times to the X axis in step S71, the steps S68 to S71 are performed to perform the X axis grid of row X (1). The starting point XM is moved by a predetermined interval K on the X-axis, and the macroblocks in which the contour of the object image is present are counted and stored among the macroblocks in the X (1) row.
상기 단계(S71)에서 X(1)행의 그리드 시작점(XM)이 일정 간격(K)씩 M번 이상이동되면, 단계(S72)에서 현재까지 카운트한 매크로 블록의 수 중에서 가장 적은 수의 매크로 블록을 카운트한 X(1)행의 그리드 시작점(XM)을 최적의 X(1)행 그리드 시작점(X1M)로 결정한다.If the grid starting point XM of the X (1) row is moved more than M times by a predetermined interval K in the step S71, the smallest number of macroblocks among the number of macroblocks counted so far in the step S72. The grid starting point XM of the X (1) row which counted is determined as the optimal grid starting point X1M of the X (1) row.
다음 단계(S73)에서는 X축으로 마지막 행인지를 판단하고, X축으로 마지막 행이 아닐 경우에 단계(S74)에서 X축의 다음 행으로 이동하고, 상기단계(S68∼S74)를 수행한다.In the next step S73, it is determined whether it is the last row on the X axis, and if it is not the last row on the X axis, the process moves to the next row on the X axis in step S74, and the steps S68 to S74 are performed.
이러한 동작을 반복 수행하여 X축의 행을 X(1), X(2), X(3), X(4) 및 X(5)행으로 순차적으로 이동하고, 대상물 영상의 윤곽선이 존재하는 가장 적은 수의 매크로 블록을 카운트한 X(1), X(2), X(3), X(4) 및 X(5)행의 그리드 시작점(XM)을 최적의 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)으로 결정한다.This operation is repeated to sequentially move the rows of the X axis to the rows X (1), X (2), X (3), X (4), and X (5), with the smallest contours of the object image. The grid starting point (XM) in rows X (1), X (2), X (3), X (4), and X (5), which counted the number of macroblocks, is the optimal X (1), X (2) , X (3), X (4) and X (5) row grid start points (X1M, X2M, ...).
상기 단계(S74)에서 X축으로 마지막 행일 경우에 다음 단계(S75)에서 상기 최적의 Y축 그리드 시작점(YON)과 X(1), X(2), X(3), X(4) 및 X(5)행의 최적의 그리드 시작점(X1M, X2M, …)을 정보량 감소 위치로 출력한다.In the case of the last row on the X-axis in step S74, the optimal Y-axis grid start point YON and X (1), X (2), X (3), X (4) and The optimal grid starting point (X1M, X2M, ...) in row X (5) is output to the information amount reduction position.
제17도는 본 발명의 부호화 방법에 따라서 매크로 블록의 정보량 감소 위치를 찾는 또다른 실시예를 보인 신호 흐름도이다.FIG. 17 is a signal flow diagram illustrating another embodiment of finding the information amount reduction position of a macroblock according to the encoding method of the present invention.
단계(S81)에서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 최소로 되는 정보량 감소 위치를 찾기 위하여 X축 및 Y축 그리드 시작점(XM, YN)을 '0'으로 초기화한다.In step S81, the X-axis and Y-axis grid start points XM and YN are initialized to '0' in order to find a position where the number of macro blocks in which the contour of the object image exists is reduced.
다음 단계(S82)에서는 현재 X축 행의 매크로 블록중에서 대상물 영상의 윤곽선이 존재하는 매크로 블록을 카운트한다. 즉, X(1)행의 매크로 블록중에서 대상물 영상의 윤곽선이 존재하는 매크로 블록을 검출하여 카운트한다.In a next step S82, the macroblock in which the contour of the object image exists in the macroblock of the current X-axis row is counted. That is, the macroblock in which the contour of the object image exists among the macroblocks in row X (1) is detected and counted.
상기 단계(S82)에서 매크로 블록의 카운트가 완료되면, 단계(S83)에서 카운트한 매크로 블록의 수를 저장한다.When the counting of the macroblocks is completed in step S82, the number of macroblocks counted in step S83 is stored.
다음 단계(S84)에서는 X(1)행의 그리드 시작점(XM)을 X축으로 일정 간격(K)만큼 이동시키고, 단계(S85)에서 X(1)행의 그리드 시작점(XM)을 일정 간격(K)씩 M번 이상 이동하였는지를 판단한다.In the next step S84, the grid starting point XM of row X (1) is moved by a predetermined interval K on the X axis, and in step S85, the grid starting point XM of the row X (1) is fixed by a certain interval ( It is determined whether K) has moved more than M times.
상기 단계(S85)에서 X(1)행의 그리드 시작점(XM)을 일정 간격(K)씩 M번 이상 이동하지 않았을 경우에 상기 단계(S82∼S85)를 수행하여 X(1)행의 X축 그리드 시작점(XM)을 일정 간격(K)씩 이동하고, 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하여 저장하는 것을 반복한다.When the grid starting point XM of row X (1) has not been moved more than M times by a predetermined distance K in step S85, the steps S82 to S85 are performed to perform the X-axis of row X (1). The grid start point XM is moved by a predetermined interval K, and the number of macroblocks in which the contour of the object image exists is counted and stored.
상기 단계(S85)에서 X(1)행의 X축 그리드 시작점(XM)이 X축으로 일정 간격(K)씩 M번 이상 이동되면, 단계(S86)에서 현재까지 카운트한 X(1)행의 매크로 블록 중에서 가장 적은 수의 매크로 블록을 카운트한 X(1)행의 그리드 시작점 (XM)을 최적의 X(1)행 그리드 시작점(X1M)으로 결정한다.When the X-axis grid start point XM of the X (1) row is moved more than M times by a predetermined distance K on the X axis in the step S85, the X (1) row counted to the present time in the step S86 The grid starting point XM of the X (1) row that counted the smallest number of macroblocks among the macroblocks is determined as the optimal grid starting point of the X (1) row.
다음 단계(S87)에서는 X축으로 마지막 행인지를 판단하고, X축으로 마지막 행이 아닐 경우에 단계(S88)에서 X축의 다음 행 즉, X(2), X(3), X(4) 및 X(5)행으로 순차적으로 이동한 후 상기 단계(S82∼S88)를 수행하여 대상물 영상의 윤곽선이 존재하는 가장 적은 수의 매크로 블록을 카운트한 X(2), S(3), X(4) 및 X(5)행의 그리드 시작점(XM)을 최적의 X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)으로 순차적으로 결정하는 것을 반복한다.In the next step S87, it is determined whether it is the last row on the X axis, and if it is not the last row on the X axis, the next row on the X axis, that is, X (2), X (3), X (4) and After sequentially moving to row X (5), the steps S82 to S88 are performed to count the smallest number of macro blocks in which the contour of the object image exists, and X (2), S (3), and X (4). ) And the grid starting point (XM) in rows X (5) are sequentially determined as the optimal grid starting points (X1M, X2M,…) in rows X (2), X (3), X (4) and X (5). Repeat that.
상기 단계(S87)에서 X축으로 마지막 행일 경우에는 단계(S89)에서 Y축 그리드 시작점(YN)을 Y축으로 일정 간격(L)씩 N번 이상 이동하였는지를 판단한다.In the case of the last row on the X-axis in step S87, it is determined in step S89 whether the Y-axis grid start point YN has moved N times or more by a predetermined interval L in the Y-axis.
상기 단계(S89)에서 Y축 그리드 시작점(YN)이 Y축으로 일정 간격(L)씩 N번이상 이동하지 않았을 경우에 단계(S90)에서 Y축 그리드 시작점(YN)을 Y축으로 일정간격(L)만큼 이동시키고, 단계(S82∼S90)를 반복 수행한다.When the Y-axis grid starting point YN has not moved more than N times by a predetermined interval L in the step S89 in step S89, the Y-axis grid starting point YN is fixed in Y-axis in step S90. Move by L) and repeat steps S82 to S90.
즉, Y축 그리드 시작점(YN)을 Y축으로 일정 간격(L)만큼 이동시키고, Y축 그리드 시작점(YN)이 이동된 위치에서 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(XM)을 순차적으로 일정 간격(K)씩 이동시키면서 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수를 카운트하며, 가장 적은 수의 매크로 블록을 카운트한 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(XM)을 최적의 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)으로 순차적으로 결정한다.That is, the Y-axis grid starting point YN is moved to the Y-axis by a predetermined distance L, and the X-axis grid starting point YN is moved to X (1), X (2), X (3), X The number of macro blocks in which the contour of the object image exists is counted while moving the starting point (X) of the row grid (4) and the X (5) row by a predetermined interval (K), and the smallest number of macro blocks is counted. (1), X (2), X (3), X (4), and X (5) row grid starting points (XM) with optimal X (1), X (2), X (3), X (4) ) And X (5) row grid start points (X1M, X2M, ...) in order.
상기 단계(S90)에서 Y축 그리드 시작점(YN)이 일정 간격(L)씩 N번 이상 이동되면, 다음 단계(S91)에서는 Y축 그리드 시작점(YN)을 이동시킨 위치에서 각기 결정된 최적의 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)에서 카운트한 매크로 블록의 수를 모두 합산한다.If the Y-axis grid start point YN is moved N or more times by a predetermined interval L in step S90, in the next step S91, the optimal X determined at the position where the Y-axis grid start point YN is moved, respectively ( 1), X (2), X (3), X (4), and X (5) all of the number of macroblocks counted at the grid start points X1M, X2M, ... are added together.
그리고 다음 단계(S92)에서는 합산 결과 가장 적은 수의 매크로 블록을 카운트한 Y축 그리드 시작점(YN)을 판단하고, 판단한 상기 Y축 그리드 시작점(YN)을 최적의 Y축 그리드 시작점(YON)으로 결정한다. 상기 최적의 Y축 그리드 시작점(YON)에서 가장 적은 수의 매크로 블록을 카운트한 상기 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)을 최적의 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)으로 결정하고, 결정한 상기 최적의 Y축 그리드 시작점(YON) 및 상기 X(1), X(2), X(3), X(4) 및 X(5)행 그리드 시작점(X1M, X2M, …)을 정보량 감소 위치로 출력한다.In the next step S92, the Y-axis grid start point YN in which the smallest number of macro blocks are counted is determined, and the determined Y-axis grid start point YN is determined as the optimal Y-axis grid start point YON. do. The X (1), X (2), X (3), X (4) and X (5) row grid starting points (X1M) counting the smallest number of macro blocks at the optimal Y-axis grid starting point (YON) , X2M,…) is determined as the optimal X (1), X (2), X (3), X (4) and X (5) row grid starting points (X1M, X2M,…), and the determined optimal A Y-axis grid start point YON and the X (1), X (2), X (3), X (4), and X (5) row grid start points (X1M, X2M, ...) are output as information reduction positions. .
상기 제16도 및 제17도의 실시예에서 찾은 최적의 그리드 시작점에 따라 매크로 블록을 재구성한 결과를 살펴보면, 제18도의 (가)에 도시된 바와 같다.Looking at the result of reconstructing the macro block according to the optimal grid starting point found in the embodiment of FIG. 16 and FIG. 17, it is as shown in (a) of FIG.
여기서, 제16도 및 제17도에 도시한 실시예에서는 Y축 그리드 시작점(YN)을 이동시킨 후 X축 그리드 시작점(XM)을 이동시켜 정보량 감소 위치를 찾는 것을 예로 들어 설명하였다.Here, in the embodiments shown in FIGS. 16 and 17, the Y-axis grid start point YN is moved and the X-axis grid start point XM is moved to find the information amount reduction position as an example.
본 발명을 실시함에 있어서는 상기 제16도 및 제17도에서 괄호 안에 기재된 바와 같이 X축 그리드 시작점(XM) 및 Y축 그리드 시작점(YN)을 서로 바꾸어 대상물 영상의 윤곽선이 최소의 매크로 블록에 존재하는 정보량 감소 위치를 찾을 수도 있다.In the embodiment of the present invention, as described in the parenthesis in FIGS. 16 and 17, the X-axis grid starting point XM and Y-axis grid starting point YN are interchanged so that the outline of the object image exists in the minimum macro block. You can also find the location of the information reduction.
상기 X축 그리드 시작점(XM) 및 Y축 그리드 시작점(YN)을 서로 바꾸어 찾은 최적의 그리드 시작점으로 매크로 블록을 재구성한 결과를 살펴보면, 제18도의 (나)에 도시된 바와 같다.Looking at the result of reconstructing the macro block to the optimal grid starting point found by swapping the X-axis grid starting point (XM) and the Y-axis grid starting point (YN), as shown in (b) of FIG.
한편, 움직임 정보량 감소 위치를 결정하는 상기 단계(S15) 및 부호화 정보량 감소 위치를 찾는 상기 단계(S17)는 대상물의 영상에 따라서 상기한 제12도 내지 제14도에 도시된 실시예와 같이 전체 매크로 블록을 이동시키면서 정보량 감소 위치를 찾는 것과, 제16도 및 제17도에 도시된 실시예와 같이 X축 각각의 행 또는 Y축 각각의 열을 각기 이동시키면서 정보량 감소 위치를 찾는 것을 선택적으로 사용하여 움직임 정보량 감소 위치 및 부호화 정보량 감소 위치를 찾는다.On the other hand, the step (S15) of determining the reduced position of the motion information amount and the step (S17) of finding the reduced position of the encoded information amount are the same as the embodiment shown in FIGS. 12 to 14 according to the image of the object. Selecting the information amount reduction position while moving the block, and finding the information amount reduction position by moving each row of each of the X axis or each column of the Y axis, respectively, as shown in the embodiments shown in FIGS. 16 and 17. Find the position where the motion information amount decreases and the position where the encoded information amount decreases.
예를 들면, 상기 단계(S15)에서는 상기한 제12도 내지 제14도에 도시된 실시에와 같이 전체 매크로 블록을 이동시키면서 움직임 정보량 감소위치를 찾고, 상기 단계(S17)에서는 제16도 및 제17도에 도시된 실시예와 같이 X축 각각의 행 또는 Y축 각각의 열을 각기 이동시키면서 부호화 정보량 감소 위치를 찾을 수 있다.For example, in the step S15, as shown in FIGS. 12 to 14, as shown in FIGS. 12 to 14, the motion information amount decreasing position is found while moving the entire macroblock. As shown in the embodiment shown in FIG. 17, the position where the amount of encoded information decreases can be found while moving each row of each X axis or each column of the Y axis.
그리고 상기와는 반대로 상기 단계(S15)에서는 제16도 및 제17도에 도시된 실시예와 같이 X축 자각의 행 또는 Y축 각각의 열을 각기 이동시키면서 움직임 정보량 감소 위치를 찾고, 상기 단계(S17)에서는 상기한 제12도 내지 제14도에 도시된 실시예와 같이 전체 매크로 블록을 이동시키면서 움직임 정보량 감소위치를 찾을 수 있다.Contrary to the above, in the step S15, as shown in FIGS. 16 and 17, as shown in FIG. In operation S17, as shown in the above-described embodiments of FIGS. 12 to 14, the position of reducing the amount of motion information can be found while moving the entire macro block.
상기한 본 발명의 실시예에서 X축 및 Y축 그리드 시작점(XM)(YN)을 이동시키는 일정 간격(K)(L)은 매크로 블록 내에 존재하는 화소의 수를 기준으로 한다.In the above-described embodiment of the present invention, the predetermined interval K (L) for moving the X-axis and Y-axis grid start points XM (YN) is based on the number of pixels existing in the macro block.
예를 들면, 하나의 매크로 블록의 X축 및 Y축 크기 이내에서 X축 및 Y축 그리드 시작점(XM)(YN)을 단위 화소의 간격으로 이동시킬 수 있다.For example, the X-axis and Y-axis grid starting points (XM) (YN) within the X-axis and Y-axis sizes of one macro block may be moved at intervals of a unit pixel.
그러나 영상신호에서 색신호에 대한 정보는 휘도 신호에 대한 정보의 1/2 이므로 색신호 및 휘도신호에 대한 정보를 그려할 경우에 X축 및 Y축 그리드 시작점(XM)(YN)의 이동 간격(K)(L)은 2개의 단위 화소 간격으로 하는 것이 바람직하다.However, since the information on the color signal in the video signal is 1/2 of the information on the luminance signal, when the information on the color signal and the luminance signal is drawn, the moving interval K between the X- and Y-axis grid start points (XM) (YN) (L) is preferably set to two unit pixel intervals.
또한 상기한 실시예에서는 VOP를 형성한 대상물 영상의 윤곽선이 가장 적은 수의 매크로 블록에 존재하는 최적의 그리드 시작점이 하나만 존재하는 것을 예로 들어 설명하였으나 최적의 그리드 시작점은 하나 이상 다수개 발생할 수 있다.In the above-described embodiment, only one optimal grid starting point exists in which the contour of the object image on which the VOP is formed is present in the smallest number of macro blocks. However, one or more optimal grid starting points may occur.
그러므로 본 발명에서는 최적의 그리드 시작점이 다수개 발생할 경우에 매크로 블록을 M/2 × N/2의 크기를 가지는 서브 블록으로 세분화하고, 세분화한 서브 블록의 X축 및 Y축 크기 이내에서 그리드 시작점(XM)(YN)을 일정 간격(K)(L)씩 이동시키며, 대상물 영상의 윤곽선이 가장 적은 수의 매크로 블록에 존재하는 정보량 감소 위치를 잦아 출력할 수 있다.Therefore, in the present invention, when multiple optimal grid starting points occur, the macro block is subdivided into sub-blocks having the size of M / 2 × N / 2, and the grid starting point ( XM) (YN) is shifted by a predetermined interval K (L), and the information amount reduction position at which the contour of the object image exists in the smallest number of macroblocks can be frequently output.
즉, 매크로 블록의 크기가 16×16 화소로 이루어진다고 가정할 경우에 8×8 화소를 가지는 서브 블록으로 세분화하고, 8×8 화소로 세분화한 서브 블록의 화소 수 이내에서 상기한 실시예와 같이 그리드 시작점(XM)(YN)을 일정 간격(K)(L)씩 이동시켜 대상물 영상의 윤곽선이 존재하는 매크로 블록의 수가 가장 적은 X축 및 Y축 그리드 시작점을 찾고, 이를 정보량 감소 위치로 출력한다.In other words, if it is assumed that the size of the macro block is 16 × 16 pixels, it is subdivided into subblocks having 8 × 8 pixels, and within the number of pixels of the subblock subdivided into 8 × 8 pixels as in the above-described embodiment. The grid starting point (XM) (YN) is moved by a predetermined interval (K) (L) to find the X and Y axis grid starting points with the smallest number of macro blocks in which the contour of the object image exists, and outputs them to the information reduction position. .
그리고 매크로 블록을 서브 블록으로 세분화하여도 가장 적은 수의 매크로 블록을 카운트하는 정보량 감소 위치는 다수개 발생할 수 있다.In addition, even when the macro block is subdivided into sub blocks, a plurality of information amount reduction positions that count the smallest number of macro blocks may occur.
그러므로 본 발명에서는 서브 블록으로 세분화하여도 최적의 X축 및 Y축 그리드 시작점(XOM, YON)이 다수 개 발생할 경우에 어느 하나를 선택해야 된다.Therefore, in the present invention, even when subdivided into sub-blocks, one should be selected when a plurality of optimal X- and Y-axis grid starting points (XOM, YON) occur.
이 때, 선택하는 하나의 정보량 감소 위치는, 초기 X축 및 Y축 그리드 시작점(XM=0, YN=0)에 근접될수록 움직임 벡터의 값이 적어 정보량이 줄어들고, 또한 움직임을 추정할 경우에 예측 에러의 발생률이 낮게 되므로 초기 그리드 시작점(XM=0, YN=0)을 기준으로 하여 직선 거리가 가장 가까운 하나의 X축 및 Y축 그리드 시작점을 결정한다.At this time, one information amount decrease position to be selected is smaller as the value of the motion vector decreases closer to the initial X-axis and Y-axis grid starting points (XM = 0, YN = 0), and is predicted when the motion is estimated. Since the incidence of errors is low, one X- and Y-axis grid starting point with the closest straight line distance is determined based on the initial grid starting point (XM = 0, YN = 0).
이상에서와 같이 본 발명은 대상물 영상의 윤곽선이 최소의 매크로 블록에 위치되게 그리드 시작점을 조절하여 모양 정보를 부호화하고, 또한 모양 정보 부호화 신호가 최소의 매크로 블록에 위치되게 그리드 시작점을 조절한 후 움직임 추정및 대상물 내부 정보의 부호화를 수행함으로써 부호화 효율이 향상되고, 전송 및 저장할 정보량이 감소된다.As described above, the present invention encodes the shape information by adjusting the grid starting point so that the contour of the object image is located in the minimum macro block, and also moves after adjusting the grid starting point so that the shape information encoding signal is located in the minimum macro block. By performing estimation and encoding of the object internal information, the encoding efficiency is improved, and the amount of information to be transmitted and stored is reduced.
Claims (48)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1019960027493A KR100424683B1 (en) | 1996-07-08 | 1996-07-08 | Encoding Method and Encoding Device of Object Image |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1019960027493A KR100424683B1 (en) | 1996-07-08 | 1996-07-08 | Encoding Method and Encoding Device of Object Image |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR980013409A KR980013409A (en) | 1998-04-30 |
| KR100424683B1 true KR100424683B1 (en) | 2004-06-30 |
Family
ID=37329213
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1019960027493A Expired - Fee Related KR100424683B1 (en) | 1996-07-08 | 1996-07-08 | Encoding Method and Encoding Device of Object Image |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR100424683B1 (en) |
-
1996
- 1996-07-08 KR KR1019960027493A patent/KR100424683B1/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| KR980013409A (en) | 1998-04-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6324215B1 (en) | Motion picture coding and decoding apparatus | |
| KR100488422B1 (en) | Grayscale-shaped information encoding / decoding device and method | |
| EP1022910B1 (en) | Method and apparatus for moving an object image grid | |
| US9503728B2 (en) | Image processing device, decoding method, intra-frame decoder, method of decoding intra-frame and intra-frame encoder | |
| JPH07193822A (en) | Motion prediction processor and device therefor | |
| JP3877892B2 (en) | Binary shape signal encoding device | |
| KR100424683B1 (en) | Encoding Method and Encoding Device of Object Image | |
| JP2000069469A (en) | Moving picture encoding method/system and moving picture decoding method/system | |
| KR100417132B1 (en) | Encoding Method and Encoding Device of Object Image | |
| KR100420471B1 (en) | Encoding Method and Encoding Device of Object Image | |
| KR100424685B1 (en) | Encoding Method and Encoding Device of Object Image | |
| KR100424686B1 (en) | Method and apparatus for encoding object image | |
| KR100417127B1 (en) | Encoding Method and Encoding Device of Object Image | |
| KR100424684B1 (en) | Method and apparatus for encoding object image | |
| KR100417130B1 (en) | Coding method of object image and coding device | |
| KR100417128B1 (en) | Encoding Method and Encoding Device of Object Image | |
| KR100417137B1 (en) | Encoding Method and Encoding Device of Object Image | |
| KR20070026360A (en) | Method for Compressing / Decompressing Video Information | |
| KR100205850B1 (en) | Shape of object adaptive dividing of region method | |
| KR20010102216A (en) | Estimation of movements in video images | |
| KR100239291B1 (en) | Grid moving method and apparatus using selective pixel investigation | |
| JP2003153279A (en) | MOTION SEARCH DEVICE, METHOD THEREOF, AND COMPUTER PROGRAM THEREOF | |
| JPH10327401A (en) | Motion vector detection method and image signal coding method and apparatus using the same | |
| KR100463003B1 (en) | Method for encoding contour of MPEG-4 VOP | |
| JPH11196415A (en) | Device and method for encoding/decoding shape information by adaptive bordering |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| N231 | Notification of change of applicant | ||
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| A201 | Request for examination | ||
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| L13-X000 | Limitation or reissue of ip right requested |
St.27 status event code: A-2-3-L10-L13-lim-X000 |
|
| U15-X000 | Partial renewal or maintenance fee paid modifying the ip right scope |
St.27 status event code: A-4-4-U10-U15-oth-X000 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 7 |
|
| FPAY | Annual fee payment |
Payment date: 20110302 Year of fee payment: 8 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 8 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20120316 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20120316 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |