KR19980084209A - Binary Outline Coding Method Considering Direction Direction - Google Patents

Binary Outline Coding Method Considering Direction Direction Download PDF

Info

Publication number
KR19980084209A
KR19980084209A KR1019970019920A KR19970019920A KR19980084209A KR 19980084209 A KR19980084209 A KR 19980084209A KR 1019970019920 A KR1019970019920 A KR 1019970019920A KR 19970019920 A KR19970019920 A KR 19970019920A KR 19980084209 A KR19980084209 A KR 19980084209A
Authority
KR
South Korea
Prior art keywords
block
error
outline
alpha
macro block
Prior art date
Application number
KR1019970019920A
Other languages
Korean (ko)
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 KR1019970019920A priority Critical patent/KR19980084209A/en
Publication of KR19980084209A publication Critical patent/KR19980084209A/en

Links

Abstract

본 발명은 영상에서 개체 정보를 압축하므로써 저장 및 전송의 비용을 줄이는 이진 외곽선 부호화 방법에 관한 것으로, 특히 블럭 기반 부호화 방법에 외곽선의 방향을 고려하는 방법을 적용함으로써, 비슷한 비트 생성량으로 블럭 기반 부호화기 방법에서 나타나는 블럭킹 효과를 줄일 수 있도록, 마크로 블럭(B) 내에서 외곽선의 방향성을 고려하는 가감치(W)를 산출하는 제 1 단계(210)와 ; 주어진 변환률(CR)에 대하여 마크로 블럭(B)을 샘플링함으로써 샘플링된 블럭(S)을 생성시키는 제 2 단계(220) ; 상기와 같이 생성시킨 샘플링된 블럭(S)을, 변환률(CR)만큼 인터폴레이션을 통하여 원래의 크기로 복원시킴으로써, 복원된 마크로 블럭(R)을 생성시키는 제 3 단계(230) ; 상기 마크로 블럭을 다시 작은 픽셀 블럭으로 구분하여, 픽셀 블록 단위로 재생된 마크로 블럭(R)과 원 마크로 블럭(B)과의 차의 합(E)을 계산하는 제 4 단계(240) ; 산출된 가감치(W)를 알파 임계치(alpha-th)에 더한 후, 계산된 에러의 합(E)과 비교하는 제 5 단계(250) ; 계산된 에러의 합(E)이 가감치(W)를 더한 알파 임계치(alpha-th)보다 작은 경우, 즉 현재까지 에러 픽셀 블럭이 발견되지 않았을 경우, 모든 픽셀 블럭을 테스트하였는가를 판단하는 제 6 단계(260) ; 테스트하지 못한 다른 픽셀 블럭이 없을 경우에는 에러 픽셀 블럭이 없다는 것을 리턴시키는 제 7 단계(270) 및 ; 반면에 계산된 에러의 합(E)이 가감치를 더한 알파 임계치(alpha-th)보다 크면, 이 픽셀 블럭은 에러 픽셀 블럭으로 분류됨으로써, 전체적으로 이 마크로 블럭에는 에러 픽셀 블럭이 있다는 것을 리턴시키는 제 8 단계(280)를 포함하여 이루어지는, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법에 관한 것이다.The present invention relates to a binary outline encoding method that reduces the cost of storage and transmission by compressing object information in an image. In particular, the block-based encoder method has a similar bit generation amount by applying a method that considers the direction of the outline to the block-based encoding method. A first step (210) of calculating an added / decreased value (W) in consideration of the directionality of the outline in the macro block (B) to reduce the blocking effect appearing in the macroblock (B); A second step 220 of generating a sampled block S by sampling the macro block B for a given conversion rate CR; A third step 230 of generating the reconstructed macro block R by restoring the sampled block S generated as described above to the original size through interpolation by the conversion rate CR; A fourth step (240) of dividing the macro block into smaller pixel blocks and calculating a sum (E) of the difference between the macro block (R) and the original macro block (B) reproduced in pixel block units; A fifth step 250 of adding the calculated added value W to an alpha threshold alpha-th, and then comparing the calculated error with the sum E; Sixth to determine whether all pixel blocks have been tested if the sum of the calculated errors E is less than the alpha threshold (alpha-th) plus the added value W, i.e., no error pixel blocks have been found so far. Step 260; A seventh step 270 of returning that there is no error pixel block if there are no other pixel blocks that have not been tested; On the other hand, if the sum of the calculated errors E is greater than the alpha-th plus the added value, this pixel block is classified as an error pixel block, thereby returning that there is an error pixel block in the macro block as a whole. It relates to a binary outline encoding method including the step 280, taking into account the direction of the outline.

Description

외곽선의 방향성을 고려한 이진 외곽선 부호화 방법Binary Outline Coding Method Considering Direction Direction

본 발명은 영상에서 개체 정보를 압축하므로써 저장 및 전송의 비용을 줄이는 이진 외곽선 부호화 방법에 관한 것으로, 특히 블럭 기반 부호화 방법에 외곽선의 방향을 고려하는 방법을 적용함으로써, 비슷한 비트 생성량으로 블럭 기반 부호화기 방법에서 나타나는 블럭킹 효과를 줄일 수 있도록 한, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법에 관한 것이다.The present invention relates to a binary outline encoding method that reduces the cost of storage and transmission by compressing object information in an image. In particular, the block-based encoder method has a similar bit generation amount by applying a method that considers the direction of the outline to the block-based encoding method. The present invention relates to a binary outline encoding method in consideration of the directionality of an outline so as to reduce the blocking effect shown in FIG.

이진 외곽선 부호화는 영상에서 객체(object) 정보를 압축하므로써, 저장 및 전송의 비용을 줄이는 것이다.Binary outline coding reduces the cost of storage and transmission by compressing object information in an image.

이러한 객체 정보의 압축은, 컴퓨터 인식에서 뿐만아니라 객체 지향의 영상 부호화 분야에서도 필수적이다.Such compression of object information is essential not only in computer recognition but also in the field of object-oriented video encoding.

특히, 영상 내에서 각 객체들에 대한 독립적인 부호화 및 조작이 가능하도록 하기 위해서는 각 객체들의 경계를 나타낼 수 있는 정보가 필요하다.In particular, in order to enable independent encoding and manipulation of each object in the image, information that can represent the boundary of each object is needed.

이러한 외곽선 정보의 표현을 위해서는 많은 량의 비트량을 필요로 한다.In order to express such outline information, a large amount of bits is required.

따라서, 영상의 전체적인 정보량을 줄이기 위해서는 밝기와 색상에 대한 압축 외에도, 외곽선에 대한 정보 압축은 매우 필요하다.Therefore, in order to reduce the overall amount of information of the image, in addition to compression of brightness and color, information compression on an outline is very necessary.

여러 가지 외곽선 정보의 부호화를 위한 방법들 중에서 엠엠알(Modified Modified Read 이하 MMR 이라 칭함)과 컨텍스 기반 외곽선 부호화기(Context based Arithmetic Encoder 이하 CAE 라 칭함)등이 개발되었다.Among the methods for encoding various outline information, MMR (Modified Modified Read, hereinafter referred to as MMR) and Context based Arithmetic Encoder (hereinafter referred to as CAE) have been developed.

이 방법들은, 객체를 나타내는 이진 영상을 일정한 블럭(이하 마크로 블럭 이라 칭함)으로 나누고, 각 마크로 블럭들을 동일한 방법에 의하여 처리하는 블럭 기반 부호화기이다.These methods are block-based encoders that divide a binary image representing an object into fixed blocks (hereinafter referred to as macro blocks) and process each macro block by the same method.

상기 블럭 기반 부호화기는, 처리 방법이 단순하고 부호화 효율도 비교적 높아, 엠펙-4(MPEG-4)의 검증 모델(Verification Model 이하 VM 이라 칭함)로 제안 되었으며, 컨텍스 기반 외곽선 부호화기(CAE)가 채택되었다.The block-based encoder has a simple processing method and a relatively high coding efficiency, and has been proposed as a verification model of MPEG-4 (hereinafter referred to as a VM). The context-based outline encoder (CAE) is adopted. It became.

상기 엠엠알(MMR)이나 컨텍스 기반 외곽선 부호화기(CAE)는 모두 마크로 블럭에 대한 샘플링(Sampling)과 인터폴레이션(Interpolation)을 통하여 정보량을 조절한다.The MMR and the context-based outline encoder CAE both control the amount of information through sampling and interpolation of the macro block.

즉, 보다 많은 정보 압축을 위해서는 많은 횟수의 샘플링(Sampling)을 하여 그 샘플의 수를 줄이고, 이 샘플들에 대하여 각각의 방법을 사용하여 부호화 한다.That is, in order to compress more information, a large number of samplings are performed to reduce the number of samples, and the samples are encoded using respective methods.

여기서, 이진 외곽선 정보인 알파 평면(alpha planes)을 16 * 16 샘플 블록으로 확장시킨 블록을 알파 블록(alpha blocks)이라 정의하고, 상기 이진 알파 블록(binary alpha block)을 세분화한 기본 블록(elementary block)을 서로 비교할 때 사용되는 한계값(threshold)을 알파 임계치(alpha-th)라 한다.Herein, a block in which alpha planes, which are binary outline information, is extended to 16 * 16 sample blocks is defined as an alpha block, and an elementary block obtained by subdividing the binary alpha block. ), The threshold used when comparing each other is called alpha-th.

주어진 알파 임계치(alpha-th)에 대하여, 각 블럭의 샘플링(Sampling)의 정도를 결정하는 방법은, 도 1 및 도 2 에 도시된 바와 같이, 블럭 기반 부호화기에서 사용되고 있다.For a given alpha threshold, a method of determining the degree of sampling of each block is used in a block-based encoder, as shown in FIGS. 1 and 2.

상기 알파 임계치(alpha-th) 값이 영(zero)일 경우 각 블럭에서 샘플링(Sampling)으로 인한 정보 손실은 영(zero)이 되어야 하며, 알파 임계치(alpha-th) 값이 클수록 샘플링(Sampling)으로 인한 정보 손실의 허용값이 커진다.If the alpha-th value is zero, information loss due to sampling in each block should be zero, and the larger the alpha-th value, the more sampling. The allowable value of information loss due to this becomes large.

따라서, 알파 임계치(alpha-th) 값이 작을 수록 원 영상과 비슷한 화질의 외곽선을 복원할 수 있으나 많은 비트 생성량이 발생되고, 반대로 알파 임계치(alpha-th) 값이 클 수록 나쁜 화질의 외곽선이 복원되나 보다 적은 비트 생성량이 발생된다.Therefore, the smaller the alpha-th value, the better the image quality outline can be restored than the original image. However, the higher the alpha-th value, the higher the alpha-th value. However, less bit generation occurs.

상기와 같이 주어진 알파 임계치(alpha-th) 값에 대하여, 각 블럭의 샘플링(Sampling) 정도를 결정하는 종래 기술을 설명하면 다음과 같다.A conventional technique for determining the sampling degree of each block with respect to the alpha-th value given as described above is as follows.

먼저, 마크로 블럭에 대하여 변환률(Conversion Ratio 이하 CR 이라 칭함)을 1/4로 세팅시킨다.First, the conversion ratio (hereinafter referred to as CR) of the macro block is set to 1/4.

상기와 같이 1/4로 세팅시킨 변환률(CR)로, 마크로 블럭을 샘플링(Sampling)하고 인터폴레이션(Interpolation)한 후, 발생된 정보 손실에 대하여 에러 픽셀 블럭(ERROR Pixel-Block 이하 ERROR-PB 라 칭함)이 있는지를 조사시킨다.After sampling and interpolating the macroblock at the conversion rate (CR) set to 1/4 as described above, an error pixel block (ERROR-PB or below ERROR Pixel-Block) Check whether there is any).

여기서, 에러 픽셀 블럭(ERROR-PB)은 마크로 블럭을 일정한 크기로 다시 세분화하고, 그 세분화된 일정 크기의 블럭을 픽셀 블럭이라고 하고, 상기 픽셀 블럭에서 발생한 에러가 주어진 한계 이상을 가지고 있는 픽셀 블럭을 에러 픽셀 블럭(ERROR-PB)이라고 한다.Here, the error pixel block ERROR-PB subdivides the macro block into a predetermined size, and the subdivided block having a predetermined size is called a pixel block, and the pixel block in which an error occurring in the pixel block has a given limit or more is used. This is called an error pixel block (ERROR-PB).

한편, 상기와 같이 변환률(CR)을 1/4로 세팅시킨 마크로 블럭은, 에러 픽셀 블럭(ERROR-PB)이 없으면 종료되고, 이때 변환률(CR)은 1/4로 결정됨으로써, 1/4로 샘플링된 블럭상에서 부호화가 수행된다.On the other hand, the macro block in which the conversion rate CR is set to 1/4 as described above is terminated when there is no error pixel block ERROR-PB, and at this time, the conversion rate CR is determined to be 1/4 so that 1 / The encoding is performed on blocks sampled at four.

반면에, 상기와 같이 변환률(CR)을 1/4로 세팅시킨 마크로 블럭안에 에러 픽셀 블럭(ERROR-PB)이 하나라도 있으면, 변환률(CR)을 1/2로 조정하여 세팅시킨 후, 다시 상기와 같이 1/2로 세팅시킨 변환률(CR)에 대한 샘플링(Sampling)과 인터폴레이션(Interpolation)을 수행하고, 발생된 정보 손실에 대하여 에러 픽셀 블럭(ERROR-PB)이 있는지를 조사시킨다.On the other hand, if there is any error pixel block (ERROR-PB) in the macro block in which the conversion rate CR is set to 1/4 as described above, the conversion rate CR is set to 1/2 and then set. Sampling and interpolation are performed on the conversion rate CR set to 1/2 as described above, and an error pixel block (ERROR-PB) is checked for the information loss.

상기와 같이 변환률(CR)을 1/2로 세팅시킨 마크로 블럭은, 에러 픽셀 블럭(ERROR-PB)이 없으면 종료되고, 이때 변환률(CR)은 1/2로 결정됨으로써, 1/2로 샘플링(Sampling)된 블럭상에서 부호화가 수행된다.As described above, the macro block in which the conversion rate CR is set to 1/2 is terminated when there is no error pixel block ERROR-PB, and at this time, the conversion rate CR is determined to be 1/2, so that it is 1/2. Encoding is performed on the sampled block.

반면에, 상기와 같이 변환률(CR)을 1/2로 세팅시킨 마크로 블럭안에 에러 픽셀 블럭(ERROR-PB)이 하나라도 있으면, 변환률(CR)을 1로 결정하고, 샘플링(Sampling)과 인터폴레이션(Interpolation)을 수행하지 않으며, 원래의 마크로 블럭상에서 부호화를 수행하게 된다.On the other hand, if there is any error pixel block (ERROR-PB) in the macro block in which the conversion rate CR is set to 1/2 as described above, the conversion rate CR is set to 1, and the sampling and Interpolation is not performed, and encoding is performed on the original macro block.

한편, 상기와 같이 주어진 변환률(CR)에 대하여 샘플링(Sampling)과 인터폴레이션(Interpolation)을 수행하고, 에러 픽셀 블럭(ERROR-PB)이 있는가를 조사하는 방법은 다음과 같다.On the other hand, the sampling and interpolation for the given conversion rate CR as described above, and whether there is an error pixel block (ERROR-PB) is as follows.

먼저, 주어진 변환률(CR)에 대하여 마크로 블럭(B)을 샘플링(Sampling)함으로써, 샘플링(Sampling)된 블럭(S)을 생성시킨다.First, a sampled block S is generated by sampling the macro block B for a given conversion rate CR.

상기와 같이 생성시킨 샘플링(Sampling)된 블럭(S)은, 변환률(CR)만큼 인터폴레이션(Interpolation)을 통하여 원래의 크기로 복원시킴으로써, 복원된 마크로 블럭(R)을 생성시킨다.The sampled block S generated as described above is restored to its original size through interpolation by the conversion rate CR, thereby generating the restored macro block R. FIG.

상기 마크로 블럭을 다시 작은 픽셀 블럭으로 구분하여, 픽셀 단위로 재생된 마크로 블럭(R)과 원 마크로 블럭(B)과의 차의 합(E)을 계산한다.The macro block is further divided into small pixel blocks, and the sum E of the difference between the macro block R reproduced in units of pixels and the original macro block B is calculated.

상기와 같이 계산된 에러의 합(E)이 알파 임계치(alpha-th)보다 크면, 이 픽셀 블럭은 에러 픽셀 블럭(ERROR-PB)으로 분류됨으로써, 전체적으로 이 마크로 블럭에는 에러 픽셀 블럭(ERROR-PB)이 있다는 것을 리턴시킨다.If the sum E of the errors calculated as described above is greater than the alpha threshold, this pixel block is classified as an error pixel block (ERROR-PB), so that the entire macroblock contains an error pixel block (ERROR-PB). ) Is present.

반면에, 현재까지 에러 픽셀 블럭(ERROR-PB)이 발견되지 않았을 경우, 테스트하지 않은 다른 픽셀 블럭이 있는가를 판단한다.On the other hand, if no error pixel block (ERROR-PB) is found so far, it is determined whether there are other pixel blocks that have not been tested.

테스트하지 않은 다른 픽셀 블럭이 없을 경우에는 에러 픽셀 블럭(ERROR-PB)이 없다는 것을 리턴하며, 반면에 테스트하지 못한 다른 픽셀 블럭이 있는 경우 다시 테스트를 계속한다.If there are no other untested pixel blocks, it returns no error pixel block (ERROR-PB), whereas if there are other untested pixel blocks, the test continues.

여기서, 변환률(CR)은 1/4, 1/2, 1의 세가지를 가지고 있으나, 영상의 크기나 마크로 블럭의 크기에 따라서 1/8, 1/16 등과 같은 변환률(CR)도 함께 적용시킬 수 있다.Here, the conversion rate (CR) has three types of 1/4, 1/2, and 1, but the conversion rate (CR) such as 1/8, 1/16, etc. is also applied depending on the size of the image or the size of the macro block. You can.

상기한 종래 기술을 동작 순서에 따른 흐름도로 도시하면 도 1 에 도시된 바와 같이, 마크로 블럭에 대하여 변환률(CR)을 1/4로 세팅시키는 제 1 과정(100)과 ; 변환률(CR)을 1/4로 세팅시킨 마크로 블럭을 샘플링(Sampling)하고 인터폴레이션(Interpolation)한 후, 발생된 정보 손실에 대하여 에러 픽셀 블럭(ERROR-PB)이 있는지를 조사시키는 제 2 과정(200) ; 변환률(CR)을 1/4로 세팅시킨 마크로 블럭안에 에러 픽셀 블럭(ERROR-PB)이 있는 경우 변환률(CR)을 1/2로 세팅시키는 제 3 과정(300) ; 변환률(CR)을 1/2로 세팅시킨 마크로 블럭을 샘플링(Sampling)하고 인터폴레이션(Interpolation)한 후, 발생된 정보 손실에 대하여 에러 픽셀 블럭(ERROR-PB)이 있는지를 조사시키는 제 4 과정(400) 및 ; 변환률(CR)을 1/2로 세팅시킨 마크로 블럭안에 에러 픽셀 블럭(ERROR-PB)이 있는 경우 변환률(CR)을 1로 세팅시키는 제 5 과정(500)을 포함하여 이루어진다.1, a first process 100 of setting a conversion rate CR to 1/4 for a macro block as shown in FIG. A second process of sampling and interpolating the macro block having the conversion rate CR set to 1/4, and then examining whether there is an error pixel block (ERROR-PB) in relation to the generated information loss ( 200); A third step 300 of setting the conversion rate CR to 1/2 when the error pixel block ERROR-PB is present in the macro block in which the conversion rate CR is set to 1/4; A fourth step of sampling and interpolating the macroblock having the conversion rate CR set to 1/2, and then examining whether there is an error pixel block (ERROR-PB) in relation to the generated information loss ( 400) and; If the error pixel block ERROR-PB is present in the macro block in which the conversion rate CR is set to 1/2, a fifth process 500 of setting the conversion rate CR to 1 is included.

상기 제 2 과정(200)은 도 2 에 도시된 바와 같이, 주어진 변환률(CR)에 대하여 마크로 블럭(B)을 샘플링(Sampling)함으로써, 샘플링(Sampling)된 블럭(S)을 생성시키는 제 1 단계(201)와 ;상기와 같이 생성시킨 샘플링(Sampling)된 블럭(S)을, 변환률(CR)만큼 인터폴레이션(Interpolation)을 통하여 원래의 크기로 복원시킴으로써, 복원된 마크로 블럭(R)을 생성시키는 제 2 단계(202) ; 상기 마크로 블럭을 다시 작은 픽셀 블럭으로 구분하여, 픽셀 단위로 재생된 마크로 블럭(R)과 원 마크로 블럭(B)과의 차의 합(E)을 계산하는 제 3 단계(203) ; 계산된 에러의 합(E)을 알파 임계치(alpha-th)와 비교하는 제 4 단계(204) ; 계산된 에러의 합(E)이 알파 임계치(alpha-th)보다 작은 경우, 즉 현재까지 에러 픽셀 블럭(ERROR-PB)이 발견되지 않았을 경우, 모든 픽셀 블럭을 테스트하였는가를 판단하는 제 5 단계(205) ; 테스트하지 못한 다른 픽셀 블럭이 없을 경우에는 에러 픽셀 블럭(ERROR-PB)이 없다는 것을 리턴시키는 제 6 단계(206) 및 ; 반면에 계산된 에러의 합(E)이 알파 임계치(alpha-th)보다 크면, 이 픽셀 블럭은 에러 픽셀 블럭(ERROR-PB)으로 분류됨으로써, 전체적으로 이 마크로 블럭에는 에러 픽셀 블럭(ERROR-PB)이 있다는 것을 리턴시키는 제 7 단계(207)를 포함하여 이루어진다.As shown in FIG. 2, the second process 200 includes a first process of generating a sampled block S by sampling a macroblock B with respect to a given conversion rate CR. Step 201 and; The sampled block S generated as described above is restored to its original size through interpolation by the conversion rate CR, thereby generating a restored macro block R. A second step 202; A third step (203) of dividing the macro block into smaller pixel blocks and calculating a sum (E) of the difference between the macro block (R) reproduced in units of pixels and the original macro block (B); A fourth step 204 of comparing the calculated sum of errors E with an alpha threshold; A fifth step of determining whether all pixel blocks have been tested if the sum E of the calculated errors E is smaller than the alpha threshold, that is, if no error pixel blocks ERROR-PB have been found so far ( 205); A sixth step 206 of returning that there is no error pixel block (ERROR-PB) if there are no other unblocked pixel blocks; On the other hand, if the sum of the calculated errors (E) is greater than the alpha threshold (alpha-th), this pixel block is classified as an error pixel block (ERROR-PB), so that the entire macroblock contains an error pixel block (ERROR-PB). And a seventh step 207 of returning that there is.

한편, 상기와 같이 동작하는 블럭 기반 부호화기의 구조는, 블럭내의 데이터 형태에 따라 샘플링(Sampling)으로 인한 에러의 양이 매우 다르다.On the other hand, the structure of the block-based encoder operating as described above, the amount of error due to sampling (Sampling) is very different depending on the type of data in the block.

즉, 대각선 형태의 외곽선을 갖는 경우에는 많은 에러를 발생하게 되며, 반면에 수평 혹은 수직선 형태의 외곽선에서는 작은 에러만이 발생하게 된다.That is, when a diagonal outline has a lot of errors, only a small error occurs on the horizontal or vertical outline.

대각선 형태의 외곽선을 갖는 경우에 샘플링(Sampling)으로 인하여 발생된 에러는 도 3 의 (a)에 도시된 바와 같이, 많은 에러가 발생된 것을 볼 수 있으며, 수평인 형태의 외곽선을 갖는 경우의 에러는 도 3 의 (b)에 도시한 바와 같이, 샘플링(Sampling)으로 인한 에러가 하나도 없는 것을 알 수 있다.In case of having a diagonal outline, as shown in (a) of FIG. 3, an error generated due to sampling can be seen that many errors have occurred, and an error having a horizontal outline As shown in (b) of FIG. 3, it can be seen that there is no error due to sampling.

따라서, 압축률을 높히기 위하여 알파 임계치(alpha-th)값을 크게 하면, 큰 변환률(CR)을 갖는 마크로 블럭들이 많아진다.Therefore, when the alpha-th value is increased in order to increase the compression rate, macro blocks having a large conversion rate CR are increased.

이러한 마크로 블럭에 대각선 형태의 외곽선 성분이 많은 경우에는 도 3 의 (a)에 도시한 바와 같이, 블럭킹 효과가 나타나게 된다.When there are many diagonal outline components in the macro block, as shown in FIG. 3 (a), a blocking effect appears.

여기서, 상기와 같이 동작하는 블럭 기반 부호화기를 이용하여 재생한 영상은 도 4 의 (a)에 도시한 바와 같이, 재생된 영상에서 많은 블럭킹 에러를 볼 수 있게 된다.Here, as shown in (a) of FIG. 4, an image reproduced using the block-based encoder operating as described above may see many blocking errors in the reproduced image.

이에 본 발명은 상기한 바와 같은 종래의 제 문제점들을 해소시키기 위하여 창안된 것으로, 블럭 기반 부호화 방법에 외곽선의 방향을 고려하는 방법을 적용함으로써, 비슷한 비트 생성량으로 블럭 기반 부호화기 방법에서 나타나는 블럭킹 효과를 줄일 수 있도록 한, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법을 제공하는데 그 목적이 있다.Accordingly, the present invention was devised to solve the above-mentioned problems, and by applying a method that considers the direction of the outline to the block-based encoding method, the blocking effect of the block-based encoder method with similar bit generation amount is reduced. It is an object of the present invention to provide a binary outline coding method considering the directionality of the outline.

도 1 은 일반적인 블럭 기반 외곽선 부호화기에서 변환률을 결정하는 방법의 동작 흐름도,1 is a flowchart illustrating a method of determining a conversion rate in a general block-based outline encoder;

도 2 는 종래의 블럭 기반 외곽선 부호화기에서 에러 픽셀 블럭 여부를 조사하는 방법의 동작 흐름도,2 is an operation flowchart of a method for checking an error pixel block in a conventional block-based outline encoder;

도 3 은 샘플링과 인터폴레이션을 통해 발생한 에러의 예시도,3 is an exemplary diagram of an error generated through sampling and interpolation;

도 4 는 재생된 이진 외곽선 영상의 예시도,4 is an exemplary diagram of a reproduced binary outline image.

도 5 는 본 발명에 따른 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법의 동작 흐름도이다.5 is a flowchart illustrating a binary outline encoding method in consideration of the directionality of the outline according to the present invention.

상기한 바와 같은 목적을 달성하기 위한 본 발명은, 외곽선의 방향성을 고려하여 에러 픽셀 블럭의 유무를 결정함에 있어서, 마크로 블럭(B) 내에서 외곽선의 방향성을 고려하는 가감치(W)를 산출하는 제 1 단계(210)와 ; 주어진 변환률(CR)에 대하여 마크로 블럭(B)을 샘플링(Sampling)함으로써, 샘플링(Sampling)된 블럭(S)을 생성시키는 제 2 단계(220) ; 상기와 같이 생성시킨 샘플링(Sampling)된 블럭(S)을, 변환률(CR)만큼 인터폴레이션(Interpolation)을 통하여 원래의 크기로 복원시킴으로써, 복원된 마크로 블럭(R)을 생성시키는 제 3 단계(230) ; 상기 마크로 블럭을 다시 작은 픽셀 블럭으로 구분하여, 픽셀 블럭 단위로 재생된 마크로 블럭(R)과 원 마크로 블럭(B)과의 차의 합(E)을 계산하는 제 4 단계(240) ; 산출된 가감치(W)를 알파 임계치(alpha-th)에 더한 후, 계산된 에러의 합(E)과 비교하는 제 5 단계(250) ; 계산된 에러의 합(E)이 가감치(W)를 더한 알파 임계치(alpha-th)보다 작은 경우, 즉 현재까지 에러 픽셀 블럭(ERROR-PB)이 발견되지 않았을 경우, 모든 픽셀 블럭을 테스트하였는가를 판단하는 제 6 단계(260) ; 테스트하지 않은 다른 픽셀 블럭이 없을 경우에는 에러 픽셀 블럭(ERROR-PB)이 없다는 것을 리턴시키는 제 7 단계(270) 및 ; 반면에 계산된 에러의 합(E)이 가감치를 더한 알파 임계치(alpha-th)보다 크면, 이 픽셀 블럭은 에러 픽셀 블럭(ERROR-PB)으로 분류됨으로써, 전체적으로 이 마크로 블럭에는 에러 픽셀 블럭(ERROR-PB)이 있다는 것을 리턴시키는 제 8 단계(280)를 포함하여 이루어짐을 특징으로 한다.According to the present invention for achieving the above object, in determining the presence or absence of an error pixel block in consideration of the directionality of the outline, calculating an added value (W) considering the directionality of the outline in the macro block (B). A first step 210; A second step 220 of generating a sampled block S by sampling the macro block B for a given conversion rate CR; A third step 230 of generating the restored macroblock R by restoring the sampled block S generated as described above to the original size through interpolation by the conversion rate CR. ); A fourth step (240) of dividing the macro block into smaller pixel blocks and calculating a sum (E) of the difference between the macro block (R) reproduced in pixel block units and the original macro block (B); A fifth step 250 of adding the calculated added value W to an alpha threshold alpha-th, and then comparing the calculated error with the sum E; Have all pixel blocks been tested if the sum of the calculated errors (E) is less than the alpha threshold (alpha-th) plus the plus / minus (W), i.e. no error pixel blocks (ERROR-PBs) have been found so far? Determining a sixth step 260; A seventh step 270 of returning that there is no error pixel block (ERROR-PB) if there are no other untested pixel blocks; On the other hand, if the sum of the calculated errors E is greater than the alpha-th plus the added value, this pixel block is classified as an error pixel block (ERROR-PB), so that an error pixel block (ERROR) is included in this macro block as a whole. An eighth step 280 to return that PB) is present.

본 발명의 목적에 따른 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법의 동작 원리를 상세히 설명하면 다음과 같다.The operation principle of the binary outline coding method considering the directionality of the outline according to the object of the present invention will be described in detail as follows.

본 발명의 기본적인 구조는 도 1 에 도시된 바와 같이, 큰 변환률에서부터 점차 작은 변환률로 변환하면서, 각 변환률에 대한 에러 픽셀 블럭의 유무를 조사하고, 에러 픽셀 블럭(ERROR-PB)이 없을 때의 변환률을 그 마크로 블럭의 변환률로 결정한다.As shown in FIG. 1, the basic structure of the present invention is to check the presence or absence of an error pixel block for each conversion rate while converting from a large conversion rate to a smaller conversion rate, and there is no error pixel block (ERROR-PB). The conversion rate at that time is determined by the conversion rate of the macro block.

여기서, 에러 픽셀 블럭(ERROR-PB)을 결정하는 방법을 도 5 를 참조하여 설명한다.Here, a method of determining the error pixel block ERROR-PB will be described with reference to FIG. 5.

먼저, 대각선 성분을 갖는 부분에 많이 발생되어 블럭킹 효과의 형태로 보여지는 에러를 감소시키기 위하여, 마크로 블럭 내에서 외곽선의 방향성을 고려하는 가감치(W)를 산출한다.First, in order to reduce an error that is frequently generated in a portion having a diagonal component and is seen in the form of a blocking effect, an added value W that considers the direction of the outline in the macro block is calculated.

여기서, 외곽선의 방향성을 고려하는 가감치(W)를 산출하기 위하여 식 1 과 같은 방법을 사용하였다.Here, the same method as in Equation 1 was used to calculate the added value W considering the directionality of the outline.

[ 식 1 ]Equation 1

Act = abs(h-v),Act = abs (h-v),

W = 16 (Act -Act ),W = 16 (Act -Act),

if(W Alpha_th/2) W = Alpha_th/2,if (W Alpha_th / 2) W = Alpha_th / 2,

Alpha_th = Alpha_th + W, --- ( 식 1 )Alpha_th = Alpha_th + W, --- (Equation 1)

상기 식 1 에서 h 와 v 는 각각 수평 방향과 수직 방향으로 변화가 발생한 빈도수를 나타내고, Actaverage는 동영상의 경우에는 이전 영상의 Act의 평균값을, 정지영상의 경우에는 8을 나타낸다.In Equation 1, h and v represent the frequency of change in the horizontal direction and the vertical direction, respectively, Act average represents the average value of Act of the previous image in the case of a moving image, and 8 in the case of a still image.

상기 식 1 과 같이 산출된 가감치(W)를 알파 임계치(alpha-th)에 더하므로써, 대각선 성분이 많은 경우에는 상기 알파 임계치(alpha-th)를 낮추고, 그렇지 않은 경우에는 상기 알파 임계치(alpha-th)를 높혀 줌으로써, 에러 픽셀 블럭을 정의한다.By adding the added and subtracted value W calculated as in Equation 1 to the alpha threshold, the alpha threshold is reduced when there are many diagonal components, otherwise the alpha threshold is alpha. -th) to increase the error pixel block.

한편, 주어진 변환률(CR)에 대하여 마크로 블럭(B)을 샘플링(Sampling)함으로써, 샘플링(Sampling)된 블럭(S)을 생성시킨다.Meanwhile, the sampled block S is generated by sampling the macro block B for the given conversion rate CR.

상기와 같이 생성시킨 샘플링(Sampling)된 블럭(S)은, 변환률(CR)만큼 인터폴레이션(Interpolation)을 통하여 원래의 크기로 복원시킴으로써, 복원된 마크로 블럭(R)을 생성시킨다.The sampled block S generated as described above is restored to its original size through interpolation by the conversion rate CR, thereby generating the restored macro block R. FIG.

상기 마크로 블럭을 다시 작은 픽셀 블럭으로 구분하여, 픽셀 블럭 단위로 재생된 마크로 블럭(R)과 원 마크로 블럭(B)과의 차의 합(E)을 계산한다.The macro block is further divided into small pixel blocks, and the sum E of the difference between the macro block R reproduced in pixel block units and the original macro block B is calculated.

상기와 같이 계산된 에러의 합(E)이 가감치(W)를 더한 알파 임계치(alpha-th)보다 크면, 이 픽셀 블럭은 에러 픽셀 블럭(ERROR-PB)으로 분류됨으로써, 전체적으로 이 마크로 블럭에는 에러 픽셀 블럭(ERROR-PB)이 있다는 것을 리턴시킨다.If the sum E of the errors calculated as described above is greater than the alpha threshold (alpha-th) plus the added value W, this pixel block is classified as an error pixel block (ERROR-PB), so Returns that there is an error pixel block (ERROR-PB).

반면에, 상기와 같이 계산된 에러의 합(E)이 가감치(W)를 더한 알파 임계치(alpha-th)보다 작으면, 현재까지 에러 픽셀 블럭(ERROR-PB)이 발견되지 않았을 경우이므로, 테스트하지 않은 다른 픽셀 블럭이 있는가를 판단한다.On the other hand, if the sum E of the errors calculated as described above is smaller than the alpha threshold th-added the subtraction value W, since the error pixel block ERROR-PB has not been found so far, Determine if there are other blocks of pixels that have not been tested.

테스트하지 않은 다른 픽셀 블럭이 없을 경우에는 에러 픽셀 블럭(ERROR-PB)이 없다는 것을 리턴하며, 반면에 테스트하지 않은 다른 픽셀 블럭이 있는 경우 다시 테스트를 계속한다.If there are no other untested pixel blocks, it returns no error pixel block (ERROR-PB), whereas if there are other untested pixel blocks, the test continues.

일반적으로, 대각선 성분이 많은 마크로 블럭의 경우, 샘플링(Sampling)이 계속될수록 계속해서 에러가 발생한다.In general, for macroblocks with many diagonal components, errors continue to occur as sampling continues.

반면에, 수평 또는 수직 성분이 많은 경우에는 대각선 성분이 많은 경우에 비하여 에러의 발생률이 감소한다.On the other hand, when there are many horizontal or vertical components, the incidence of errors decreases compared to when there are many diagonal components.

따라서, 수평 또는 수직 성분이 많은 마크로 블럭의 경우 보다 많은 샘플링(Sampling)을 허용하고, 대각선 성분이 많은 마크로 블럭의 경우에는 적은 샘플링(Sampling)을 허용함으로써, 비슷한 비트 발생하에서도 도 4 의 (b)에 도시한 바와 같이, 블럭킹이 적은 우수한 화질의 복원 영상을 얻을 수 있다.Therefore, by allowing more sampling in the case of macroblocks having a large number of horizontal or vertical components, and in the case of macroblocks having a large number of diagonal components, allowing a small sampling (b) in FIG. As shown in Fig. 2, a reconstructed image of excellent image quality with less blocking can be obtained.

이상에서 상세히 설명한 바와 같이 본 발명은, 큰 변환률에서부터 점차 작은 변환률로 변환하면서, 각 변환률에 대한 에러 픽셀 블럭의 유무를 조사하고, 에러 픽셀 블럭이 없을 때의 변환률을 그 마크로 블럭의 변환률로 결정함에 있어서, 외곽선의 방향성을 고려하여 에러 픽셀 블럭의 유무를 결정함으로써, 비슷한 비트 발생량에서 우수한 화질의 복원 영상을 얻을 수 있으며, 처리 구조가 단순하여 기존의 방법에 쉽게 적용할 수 있다.As described in detail above, the present invention examines the presence or absence of an error pixel block for each conversion rate while converting from a large conversion rate to a smaller conversion rate, and converts the conversion rate when there is no error pixel block. In determining the conversion rate, by determining the presence or absence of an error pixel block in consideration of the directionality of the outline, a reconstructed image of excellent image quality can be obtained at a similar bit generation amount, and the processing structure is simple and can be easily applied to an existing method. .

Claims (4)

이진 외곽선 부호화 과정에서 이진 영상을 일정한 블럭으로 구분하고, 이 블럭에 대하여 샘플링과 인터폴레이션을 통하여 큰 변환률에서부터 점차 작은 변환률로 변환하면서, 각 변환률에 대한 에러 픽셀 블럭의 유무를 조사하고, 에러 픽셀 블럭이 없을 때의 변환률을 그 마크로 블럭의 변환률로 결정함으로써 화질과 비트량을 조절하여 부호화함에 있어서,In the binary outline coding process, the binary image is divided into fixed blocks, and sampling and interpolation are performed on the blocks to investigate whether there is an error pixel block for each conversion rate, while converting from a large conversion rate to a smaller conversion rate. In encoding by adjusting the image quality and the bit amount by determining the conversion rate when there is no pixel block as the conversion rate of the macro block, 상기 마크로 블록 내에서 외곽선의 방향성에 따라 샘플링되는 정도를 조절함으로써, 복원 영상을 얻을 수 있도록 함을 특징으로 하는, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법.And a reconstructed image can be obtained by adjusting a sampling rate according to the direction of the outline in the macro block. 1 항에 있어서,According to claim 1, 외곽선의 방향성을 고려하여 에러 픽셀 블럭의 유무를 결정하는 방법은,The method of determining the presence or absence of an error pixel block in consideration of the directionality of the outline is 마크로 블럭(B) 내에서 외곽선의 방향성을 고려하는 가감치(W)를 산출하는 제 1 단계(210)와 ;A first step (210) of calculating an added / decreased value (W) considering the direction of the outline in the macro block (B); 주어진 변환률(CR)에 대하여 마크로 블럭(B)을 샘플링함으로써 샘플링된 블럭(S)을 생성시키는 제 2 단계(220) ;A second step 220 of generating a sampled block S by sampling the macro block B for a given conversion rate CR; 상기와 같이 생성시킨 샘플링된 블럭(S)을, 변환률(CR)만큼 인터폴레이션(Interpolation)을 통하여 원래의 크기로 복원시킴으로써, 복원된 마크로 블럭(R)을 생성시키는 제 3 단계(230) ;A third step 230 of generating the reconstructed macro block R by restoring the sampled block S generated as described above to the original size through interpolation by the conversion rate CR; 상기 마크로 블럭을 다시 작은 픽셀 블럭으로 구분하여, 픽셀 블럭 단위로 재생된 마크로 블럭(R)과 원 마크로 블럭(B)과의 차의 합(E)을 계산하는 제 4 단계(240) ;A fourth step (240) of dividing the macro block into smaller pixel blocks and calculating a sum (E) of the difference between the macro block (R) reproduced in pixel block units and the original macro block (B); 산출된 가감치(W)를 알파 임계치(alpha-th)에 더한 후, 계산된 에러의 합(E)과 비교하는 제 5 단계(250) ;A fifth step 250 of adding the calculated added value W to an alpha threshold alpha-th, and then comparing the calculated error with the sum E; 계산된 에러의 합(E)이 가감치(W)를 더한 알파 임계치(alpha-th)보다 작은 경우, 모든 픽셀 블럭을 테스트하였는가를 판단하는 제 6 단계(260) ;A sixth step 260 of judging whether all pixel blocks have been tested if the sum E of the calculated errors E is smaller than the alpha threshold alpha-th plus the plus / minus value W; 테스트하지 않은 다른 픽셀 블럭이 없을 경우에는 에러 픽셀 블럭(ERROR-PB)이 없다는 것을 리턴시키는 제 7 단계(270) 및 ;A seventh step 270 of returning that there is no error pixel block (ERROR-PB) if there are no other untested pixel blocks; 반면에 계산된 에러의 합(E)이 가감치를 더한 알파 임계치(alpha-th)보다 크면, 이 픽셀 블럭은 에러 픽셀 블럭(ERROR-PB)으로 분류됨으로써, 전체적으로 이 마크로 블럭에는 에러 픽셀 블럭(ERROR-PB)이 있다는 것을 리턴시키는 제 8 단계(280)를 포함하여 이루어짐을 특징으로 하는, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법.On the other hand, if the sum of the calculated errors E is greater than the alpha-th plus the added value, this pixel block is classified as an error pixel block (ERROR-PB), so that an error pixel block (ERROR) is included in this macro block as a whole. And an eighth step (280) of returning that there is PB). 2 항에 있어서,The method of claim 2, 수평 방향과 수직 방향으로 변화가 발생한 빈도수를 각각 h 와 v 라 하고, 이전 영상의 Act의 평균값을 Actaverage라고 할때,When the frequency of change in the horizontal and vertical directions is h and v, respectively, and the average value of Act of the previous image is called Act average , 마크로 블럭(B) 내에서 외곽선의 방향성을 고려하는 가감치(W)를 산출하는 제 1 단계(210)는,The first step 210 of calculating the accelerometer value W that takes into account the directionality of the outline in the macroblock B, Act = abs(h-v),Act = abs (h-v), W = 16 (Act -Act ),W = 16 (Act -Act), if(WAlpha_th/2) W = Alpha_th/2,if (WAlpha_th / 2) W = Alpha_th / 2, Alpha_th = Alpha_th +W,Alpha_th = Alpha_th + W, 와 같은 방법을 사용하여 이루어짐을 특징으로 하는, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법.Binary outline encoding method considering the direction of the outline, characterized in that made using the same method. 2 항에 있어서,The method of claim 2, 마크로 블럭(B) 내에서 외곽선의 방향성을 고려하는 가감치(W)를 산출하는 제 1 단계(210)는,The first step 210 of calculating the accelerometer value W that takes into account the directionality of the outline in the macroblock B, 외곽선을 대각선 성분과 수직 및 수평 성분으로 구분하여, 수평 또는 수직 성분이 많은 마크로 블럭의 경우 보다 많은 샘플링(Sampling)을 허용하고, 대각선 성분이 많은 마크로 블럭의 경우에는 적은 샘플링(Sampling)을 허용함으로써, 비슷한 비트 발생하에서도 블럭킹이 적은 우수한 화질의 복원 영상을 얻을 수 있도록 함을 특징으로 하는, 외곽선의 방향성을 고려한 이진 외곽선 부호화 방법.By dividing the outline into diagonal and vertical and horizontal components, it allows more sampling for macroblocks with many horizontal or vertical components, and less sampling for macroblocks with many diagonal components. The binary outline encoding method in consideration of the directionality of the outline, characterized in that to obtain a reconstructed image of excellent image quality with low blocking even under similar bit generation.
KR1019970019920A 1997-05-22 1997-05-22 Binary Outline Coding Method Considering Direction Direction KR19980084209A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970019920A KR19980084209A (en) 1997-05-22 1997-05-22 Binary Outline Coding Method Considering Direction Direction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970019920A KR19980084209A (en) 1997-05-22 1997-05-22 Binary Outline Coding Method Considering Direction Direction

Publications (1)

Publication Number Publication Date
KR19980084209A true KR19980084209A (en) 1998-12-05

Family

ID=65991244

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970019920A KR19980084209A (en) 1997-05-22 1997-05-22 Binary Outline Coding Method Considering Direction Direction

Country Status (1)

Country Link
KR (1) KR19980084209A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100809678B1 (en) * 2006-05-09 2008-03-05 두비시스주식회사 A method and apparatus for restoring a bi-level waveform by estimating edge locations

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100809678B1 (en) * 2006-05-09 2008-03-05 두비시스주식회사 A method and apparatus for restoring a bi-level waveform by estimating edge locations

Similar Documents

Publication Publication Date Title
JP3743961B2 (en) Image decoding method
KR960012931B1 (en) Channel error concealing method for classified vector quantized video
JP4249790B2 (en) Computer-implemented method and recording medium for processing video images
US6771826B2 (en) Digital image encoding and decoding method and digital image encoding and decoding device using the same
US6430317B1 (en) Method and apparatus for estimating motion using block features obtained from an M-ary pyramid
KR980013430A (en) METHOD FOR CODING CONTOUR IN BLOCK BASED OBJECT CODING SYSTEM
JP3466140B2 (en) Variable length coding method and apparatus
JPWO2009050766A1 (en) Video compression encoding / restoration device, video compression encoding / restoration program, and video generation / output device
KR19980085643A (en) Binary Image Interpolation Method Using Adaptive Threshold of Ambient Pixels
KR0181075B1 (en) Adapted borderline coding method
US5881183A (en) Method and device for encoding object contour by using centroid
KR100431013B1 (en) Image encoding system
CN1225915C (en) Method for detecting noise in coded video data stream
KR19980084209A (en) Binary Outline Coding Method Considering Direction Direction
CN1126376C (en) Method for eliminating error in bit data flow and apparatus thereof
KR100607390B1 (en) Method and array for coding a digitized image using an image overall motion vector
KR100466591B1 (en) A method of encoding pixel values in a merged block after object boundary block merge
KR100209411B1 (en) Method for processing image signals using contour information
JPS61140291A (en) Dynamic/static separator of animation picture signal
KR100207392B1 (en) System for testing picture quality of reconstructed image and texture domain determinator therein
EP4087254A1 (en) Inter-frame prediction method, encoder, decoder and storage medium
KR100488421B1 (en) Lossy coding method of binary image
KR0134489B1 (en) Adaptive motion compensation apparatus and method therefor
JPH07298271A (en) Method and device for detecting motion vector in motion image coding
KR100333193B1 (en) Predictive coding method in mpeg-4

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid