KR0181056B1 - Apparatus for encoding difference vectors generated by polygonal approximation of a contour image - Google Patents

Apparatus for encoding difference vectors generated by polygonal approximation of a contour image Download PDF

Info

Publication number
KR0181056B1
KR0181056B1 KR1019950008179A KR19950008179A KR0181056B1 KR 0181056 B1 KR0181056 B1 KR 0181056B1 KR 1019950008179 A KR1019950008179 A KR 1019950008179A KR 19950008179 A KR19950008179 A KR 19950008179A KR 0181056 B1 KR0181056 B1 KR 0181056B1
Authority
KR
South Korea
Prior art keywords
coordinates
polygon
error
contour
coordinate
Prior art date
Application number
KR1019950008179A
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 KR1019950008179A priority Critical patent/KR0181056B1/en
Application granted granted Critical
Publication of KR0181056B1 publication Critical patent/KR0181056B1/en

Links

Landscapes

  • Image Analysis (AREA)

Abstract

본 발명은 원 윤곽선과 근사화된 다각형간의 오차를 추출하여 그 오차를 벡터화하고 양자화함으로서 고압축률의 부호화를 실현할수 있는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치에 관한 것으로, 영상의 원 윤곽선을 다수개의 직선을 변으로한 다각형으로 근사화하되, 근사화된 다각형의 각 변에 수직인 직선과 원 윤곽선과 만나는 점까지의 거리가 기 설정치를 초과하지 않는 다각형으로 근사화하는 다각형 근사화 수단, 상기 근사화된 다각형의 각 변에 대응된 갯수로 구성되어 원 윤곽선이 근사화된 다각형의 각 변과 원 윤곽선과의 오차값을 각 변마다 기 설정된 갯수로 검출하여 오차값을 성분으로한 벡터를 검출하는 다수개의 샘플링 검출 수단, 상기 다수개의 샘플링 검출 수단에 일대일 대응되게 연결되어 기 설정된 코드북을 이용하여 각 변의 오차 벡터의 패턴에 최적인 패턴의 인덱스를 검출하는 다수개의 최적 패턴 선택 수단, 상기 다수개의 최적 패턴 선택 수단의 각 인덱스를 가변 길이 부호화하는 부호화 수단으로 구성함을 특징으로 한다.The present invention relates to an apparatus for encoding an error due to polygonal approximation of a contour image capable of realizing encoding of a high compression rate by extracting an error between a circle outline and an approximated polygon, and vectorizing and quantizing the error. Polygon approximation means for approximating two straight lines into a polygon with a side, wherein a distance between a straight line perpendicular to each side of the approximated polygon and a point meeting a circle outline does not exceed a preset value, and the polygon approximation means of the approximated polygon A plurality of sampling detection means for detecting a vector comprising the error value by detecting the error value between each side of the polygon whose circle outline is approximated and the circle outline with a preset number for each side. And a codebook connected to the plurality of sampling detection means in a one-to-one correspondence. And a plurality of optimal pattern selection means for detecting the index of the pattern that is optimal for the pattern of the error vector of each side, and encoding means for variable length encoding the indices of the plurality of optimal pattern selection means.

Description

윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치Error Coding Apparatus Due to Polygonal Approximation of Contour Image

제1도는 일반적인 다각형 근사화를 설명하기 위한 도면.1 is a diagram for explaining a general polygon approximation.

제2a도는 본 발명의 실시예를 나타내는 전체 구성도.Figure 2a is an overall configuration diagram showing an embodiment of the present invention.

제2b도는 제2a도의 다각형 근사화부를 보다 상세하게 도시한 상세구성도.FIG. 2B is a detailed configuration diagram illustrating the polygon approximation part of FIG. 2A in more detail. FIG.

제2c도는 제2a도의 샘플링 검출부를 보다 상세하게 도시한 상세구성도.FIG. 2C is a detailed configuration diagram showing the sampling detection unit of FIG. 2A in more detail. FIG.

제3a도는 상기 제2b도의 다각형 근사화부의 동작을 설명하기 위한 도면.3A is a diagram for explaining the operation of the polygon approximation unit in FIG. 2B.

제3b, c, d도는 윤곽선 영상의 다각형 근사화로 인한 오차를 벡터 양자화하는 과정을 설명하기 위한 도면.3b, c, and d are diagrams for explaining a process of vector quantizing an error due to polygonal approximation of a contour image.

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

21 : 윤곽선 정보 검출부 22 : 다각형 근사화부21: contour information detector 22: polygon approximation unit

23 내지 26 : 샘플링 검출부 27 내지 30 : 최적 패턴 선택부23 to 26: sampling detection unit 27 to 30: optimal pattern selection unit

31 : 부호화부31: encoder

본 발명은 동영상을 이동 물체별로 분할하고 각 이동 물체에 대해 움직임 표현 파라메타를 추정하는 방식으로 물체별로 움직임을 보상하는 물체별 부호화 장치에 있어서, 특히 윤곽선 영상의 다각형 근사화로 인한 오차를 벡터 양자화하여 부호화하는 부호화 장치에 관한 것이다.The present invention is an object-specific encoding apparatus for compensating motion for each object by dividing a video by moving object and estimating a motion expression parameter for each moving object, and in particular, encoding by vector quantizing an error due to polygonal approximation of an outline image. It relates to an encoding device.

최근 MPEG(Motion Picture Experts Group)4의 표준화를 앞두고 이에 수용할수 있는 저전송을 동영상 부호화기법에 대한 연구가 활발히 진행되고 있는데, 이동 물체를 포함한 연속 영상의 저전송을 부호화 하기 위해서는 이동 정보를 이용하는 데이타 감축 기법이 필수적이다.Recently, studies on video encoding techniques of low transmission that can be accommodated ahead of MPEG (Motion Picture Experts Group) 4 have been actively conducted.In order to encode low transmission of continuous images including moving objects, data using moving information is used. Reduction techniques are essential.

한편 종래의 동영상 부호화 기법들은 이동 물체의 모양 및 전역 움직임(global motion)과 무관하게 지역적인 블럭 움직임에 근거하고 있다.Meanwhile, conventional video encoding techniques are based on local block motion regardless of the shape and global motion of the moving object.

따라서 낮은 전송율에서, 블럭별 이동 보상 부호화를 적용함으로서 블럭화 현상, 모서리 떨림 현상, 반점 현상 등과 같은 화질 저하가 재생 영상에 나타나게 된다.Therefore, at low data rates, image quality degradation such as blocking, corner blur, and spots may appear in the playback image by applying block-based motion compensation coding.

따라서, MPEG4에서는 영상신호의 통계적 특성만을 주로 고려하는 종래의 방법과는 다르게, 인간의 시각 특성에 바탕을 두고 주관적 화질을 중시하며 아울러 전송 데이타량의 대폭적인 감축을 도모할수 있는 동영상 부호화 기법을 연구하고 있으며, 이러한 새로운 부호화 기법중에 하나로 제안된것이 동영상을 이동 물체별로 분할하고, 각 이동 물체에 대해 움직임 표현 파라메타를 추정하는 방식을 이용하여 물체별로 움직임을 보상하는 물체별 부호하 기법이라 할수 있다.Therefore, in MPEG4, unlike the conventional method which considers only the statistical characteristics of the video signal, the video encoding technique that focuses on the subjective image quality based on human visual characteristics and can significantly reduce the amount of transmission data is studied. One of the new coding schemes is proposed as an object-based coding scheme that compensates motion for each object by dividing a video into moving objects and estimating motion expression parameters for each moving object.

물체별 부호화 기법은 먼저, 입력 영상을 독립적인 움직임의 이동 물체별로 분할하고 분할된 물체의 움직임 정보를 추정하는 과정을 통하여 윤곽선 정보와, 움직임 정보, 및 색상 정보를 추출한 후, 추출된 윤곽선 정보와, 움직임 정보, 및 색상 정보를 이동 물체별로 선택적으로 부호화하여 전송하는 기법이다.In the object-specific encoding technique, first, contour information, motion information, and color information are extracted by dividing an input image into moving objects of independent motion and estimating the motion information of the divided object. , Motion information, and color information are selectively encoded and transmitted for each moving object.

이러한 물체별 부호화 방식에서 대부분의 영역은 움직임 계수에 의해 이동 보상되어 질수 있으므로 움직임 정보와 윤곽선 정보만 전송하면 되기 때문에 블록별 부호화 기법에 비해 많은 데이타 감축 효과를 얻을수 있는 것으로 알려져 있다.Since most regions can be motion compensated by motion coefficients, only the motion information and the contour information need to be transmitted. Accordingly, it is known that more data reduction effects can be obtained than the block coding method.

상기한 윤곽선 부호화 방법중 가장 널리 알려져 있는 것으로 체인 코딩(chain coding)이 있으나 무손실 부호화인 체인 코딩은 데이타량이 매우 많으므로 초저속 영상 부호화에는 적합하지 않다.The most widely known outline coding method is chain coding, but chain coding, which is lossless coding, has a large amount of data and is not suitable for ultra low speed video coding.

따라서 많은 데이타를 감축할수 있는 손실 부호화 기법으로서 일반적으로 원윤곽선을 직선이 연결된 다각형(polygon)으로 근사화하여 전송하는 방법이 알려져 있으며, M.Htter(Object Oriented Analysis Synthesis Coding based on Moving Two-Dimensional Objects, Signal Processing : Image Communication Vol.2, pp.409-428, 1990)가 제안한바에 따르면, 다각형 근사화는 연속된 윤곽선 영상을 다각형과 스프라인(spline)에 의해 근사적으로 표현하고 이때 나타나는 다각형과 스프라인의 정점을 이동 보상 예측하여 그 오차를 부호화하는 것이다.Therefore, as a lossy coding technique that can reduce a lot of data, a method of approximating a circular outline to a polygon connected with a straight line is generally known. As suggested by tter (Object Oriented Analysis Synthesis Coding based on Moving Two-Dimensional Objects, Signal Processing: Image Communication Vol. 2, pp.409-428, 1990), polygon approximation can be used to create a sequence of contour images. It is approximated by spline), and the error is encoded by the motion compensation prediction of the vertex of the polygon and spline appearing at this time.

제1도를 참조하면, 다각형 근사는 윤곽선 영상에 정점(a)을 기준으로 직선(b)을 형성하여 윤곽선을 여러 직선으로 표현하는 방법으로서, 이때 근사화 정도를 판단하는 기준으로 실제 윤곽선과 근사 다각형사이의 최대 거리(d<dmax)를 사용하며 최대 거리(dmax)에 의해 다각형 근사화의 성능이 좌우된다. 그러나 다각형 근사화를 행한 윤곽선 영상은 최대 거리(dmax)가 비교적 작은 경우에도 거친 복원 영상이 얻어진다.Referring to FIG. 1, polygonal approximation is a method of forming a straight line (b) based on a vertex (a) on a contour image to express the outline as a plurality of straight lines, wherein the actual contour and the approximate polygon are used as a criterion for determining the degree of approximation. The maximum distance d <d max is used and the maximum distance d max determines the performance of the polygon approximation. However, in the contour image obtained by polygon approximation, a rough reconstructed image is obtained even when the maximum distance d max is relatively small.

즉, 다각형 근사화는 비교적 적은 데이타량으로 윤곽선을 부호화할수 있는 반면 윤곽선이 거칠게 표현되어 사람의 시각에 매우 부자연스러울뿐만 아니라 원윤곽선이 많이 일그러지는 결과를 얻게되어 복원 영상의 주관적 화질이 크게 떨어지는 문제점이 있다.In other words, polygonal approximation can encode the contours with a relatively small amount of data, but the contours are roughly expressed, which is not only very unnatural to human vision, but also results in a lot of distorted circular contours. have.

본 발명은 상기 문제점을 해결하기 위하여 안출한 것으로, 원 윤곽선과 근사화된 다각형간의 오차를 추출하여 그 오차를 벡터 양자화함으로서 고압축률의 부호화를 실현할수 있는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치를 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems. An apparatus for encoding an error due to polygonal approximation of a contour image capable of realizing encoding of a high compression ratio by extracting an error between a circular outline and an approximated polygon and vectorizing the error is provided. The purpose is to provide.

본 발명은 상기 목적을 달성하기 위하여 영상의 원 윤곽선을 다수개의 직선을 변으로한 다각형으로 근사화하되, 근사화된 다각형의 각 변에 수직인 직선과 원 윤곽선과 만나는 점까지의 거리가 기 설정치를 초과하지 않는 다각형으로 근사화하는 다각형 근사화 수단, 상기 근사화된 다각형의 각 변에 대응된 갯수로 구성되어 원 윤곽선이 근사화된 다각형의 각 변과 원 윤곽선과의 오차값을 각 변마다 기 설정된 갯수로 검출하여 오차값을 성분으로한 벡터를 검출하는 다수개의 샘플링 검출 수단, 상기 다수개의 샘플링 검출 수단에 일대일 대응되게 연결되어 기 설정된 코드북을 이용하여 각 변의 오차 벡터의 패턴에 최적인 패턴의 인덱스를 검출하는 다수개의 최적 패턴 선택 수단, 상기 다수개의 최적 패턴 선택 수단의 각 인덱스를 가변 길이 부호화하는 부호화 수단으로 구성함을 특징으로 한다.In order to achieve the above object, the present invention approximates a circle outline of an image to a polygon with a plurality of straight lines, but the distance between a point perpendicular to a straight line and a circle outline perpendicular to each side of the approximated polygon exceeds a preset value. Polygon approximation means for approximating polygons that do not approximate polygons, and the number corresponding to each side of the approximated polygon, and detecting the error value between each side of the polygon to which the circle outline is approximated and the circle outline with a preset number for each side. A plurality of sampling detection means for detecting a vector having an error value as a component, and a plurality of sampling detection means connected to the plurality of sampling detection means in one-to-one correspondence and detecting an index of a pattern that is optimal for a pattern of an error vector of each side by using a preset codebook Variable pattern coding means for each of the plurality of optimal pattern selection means and the indexes of the plurality of optimal pattern selection means It is characterized in that it consists of encoding means.

이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.

제2a도는 본 발명을 실시하기 위한 상세 구성도로서, 입력 영상을 독립적인 움직임의 이동 물체별로 분할하고 분할된 물체의 움직임 정보를 추정하는 영상 해석 과정을 통해 윤곽선 정보를 검출하는 윤곽선 정보 검출부(21), 윤곽선 정보 검출부(21)에 의해 검출된 영상의 원 윤곽선의 정점을 기준으로 직선을 연결함으로서 윤곽선을 다수개의 직선으로 근사화하여 다수개의 직선을 변(side)으로한 다각형을 형성하되, 다각형의 각 변에 수직인 직선과 원 윤곽선과 만나는 점까지의 거리(d)가 기 설정치(dmax)를 초과하지 않는 다각형을 형성하는 다각형 근사화부(22), 다각형의 각 변에 대응된 갯수로 구성되어 원 윤곽선이 근사화된 다각형의 각 변과 원 윤곽선과의 오차값을 각 변마다 기 설정된 갯수로 검출하여 오차값을 성분으로 한 벡터를 검출하는 샘플링 검출부(23, 24, 25, 26), 샘플링 검출부(23, 24, 25, 26)에 일대일 대응되게 연결되어 기 설정된 코드북(code book)을 이용하여 각 변의 오차 벡터의 패턴에 최적인 패턴의 인덱스를 검출하는 최적 패턴 선택부(27, 28, 29, 30), 최적 패턴 선택부(27, 28, 29, 30)의 각 인덱스를 가변 길이 부호화하는 부호화부(31)로 구성한다.2A is a detailed configuration diagram for implementing the present invention. The contour information detection unit 21 divides an input image into moving objects of independent motion and detects contour information through an image analysis process of estimating motion information of the divided object. By connecting the straight lines based on the vertices of the circular contours of the image detected by the contour information detector 21, the contours are approximated to a plurality of straight lines to form a polygon with a plurality of straight lines on the sides. Polygon approximation section 22 that forms a polygon whose distance (d) between a straight line perpendicular to each side and a point that meets a circle contour does not exceed a preset value (d max ), and the number corresponding to each side of the polygon The sample which detects the error value between each side of the polygon whose circle outline is approximated and the circle outline by the preset number for each side and detects the vector whose error value is a component One-to-one correspondence to the detectors 23, 24, 25, and 26 and the sampling detectors 23, 24, 25, and 26. The index of the pattern that is optimal for the pattern of the error vector of each side using a preset code book. Is composed of an encoding pattern 31 for variable length encoding the respective indexes of the optimum pattern selection section 27, 28, 29, 30 for detecting the P-values, and the indexes of the optimum pattern selection section 27, 28, 29, 30.

이때, 다각형 근사화부(22)는 제2b도에 나타난 바와 같이 기 검출된 윤곽선 정보의 좌표와 새로 검출된 윤곽선 정보의 좌표를 선택하여 출력하는 N-1(N ; 기설정된 양의 정수값)개의 선택부(301, 302, 303, 304), 원 윤곽선 정보의 일측 끝점과 타측 끝점의 좌표를 각각 저장하는 두개의 노드 메모리(311, 312)를 포함한 N개의 노드 메모리(311, 312, 313, 314, 315)로 구성되고, 원 윤곽선 정보의 일측 끝점 좌표를 저장한 노드 메모리(311)를 제외한 나머지 노드 메모리(312, 313, 314, 315) 각각의 입력단에 N-1개의 선택부(301, 302, 303, 304) 각각의 출력단이 일대일 대응되게 연결되어 선택부(301, 302, 303, 304)에 의해 선택된 윤곽선 정보의 좌표값을 대응된 노드 메모리에 저장하는 노드 메모리군(311, 312, 313, 314, 315), 노드 메모리군(311, 312, 313, 314, 315)에 각각 저장된 기 선택된 윤곽선 정보의 좌표중 인접한 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리를 검출하는 N-1개의 오차 검출부(321, 322, 323, 324), N-1개의 오차 검출부(321, 322, 323, 324)에 일대일 대응되게 연결되고 기 선택된 윤곽선 정보의 좌표중 인접한 좌표값을 각각 수신하여 일대일 대응되게 연결된 오차 검출부에 의해 검출된 최대 거리의 윤곽선 좌표를 검출하는 N-1개의 좌표 검출부(331, 332, 333, 334), N-1개의 오차 검출부(321, 322, 323, 324)에 의해 각각으로 검출된 최대 거리를 서로 비교하여 가장 큰값(최대값)을 선택하는 최대값 선택부(341), 최대값 선택부(341)에 의해 선택된 최대값을 기 설정값(dmax)과 비교하여 기 설정값(dmax)보다 크면 최대값 선택부(341)에 의해 선택된 최대값이 윤곽선 정보와 만나는 점의 좌표를 선택할수 있도록 하는 선택 제어 신호를 생성하는 비교부(351), 비교부(351)의 선택 제어 신호에 의해 N-1개의 좌표 검출부(331, 332, 333, 334)에서 출력한 좌표중 최대값 선택부(341)에 의해 선택된 최대값이 윤곽선 정보와 만나는 점의 좌표를 검출하는 좌표 선택부(361), 좌표 선택부(361)에 의해 새로 검출된 좌표값에 인접한 두좌표값이 각각 저장된 i,i+1번째 (iN) 노드 메모리중 수평적으로 하위 좌표가 저장된 i+1번째(i+1≤N) 노드 메모리에 새로 검출된 좌표가 저장되도록 i+1번째 선택부를 제어하고, i+1번째 선택기를 제외한 나머지 선택부는 각각 전단의 노드 메모리에서 출력한 좌표값을 선택하여 다음단의 노드 메모리에 시프트될수 있도록 제어하는 선택 제어부(371), 좌표 선택부(361)에 의해 새로운 좌표가 선택되어 N-1개의 각 선택부(301, 302, 303, 304)에 입력되면 i+1번째 노드 메모리의 전단에 위치한 노드 메모리는 디제이블(disable)시키고 i+1번째 노드 메모리를 포함한 후단 노드 메모리를 인에이블(enable)시키는 메모리 제어부(381)로 구성된다.In this case, as shown in FIG. 2B, the polygon approximation unit 22 selects N-1 (N; preset positive integer values) that select and output the coordinates of the previously detected contour information and the coordinates of the newly detected contour information. N node memories 311, 312, 313, 314 including selectors 301, 302, 303, 304 and two node memories 311, 312 that store the coordinates of one end point and the other end point of the circular contour information, respectively. , 315, and N-1 selectors 301 and 302 at input terminals of the remaining node memories 312, 313, 314, and 315 except for the node memory 311 storing one end point coordinates of the circular contour information. Node memory groups 311, 312, and 313 connected to one-to-one correspondences of the output terminals and storing coordinate values of the contour information selected by the selection units 301, 302, 303, and 304 in the corresponding node memories. 314, 315, and preselected contours stored in the node memory groups 311, 312, 313, 314, and 315, respectively. N-1 error detectors 321, 322, 323, and 324 that detect the maximum distance between the line perpendicular to the straight line connecting the adjacent coordinates and the point where the contour meets, among the coordinates of N, N-1, which is connected in a one-to-one correspondence to 321, 322, 323, and 324 and receives adjacent coordinate values among the coordinates of the preselected contour information, respectively, and detects the contour coordinates of the maximum distance detected by the error detector connected in one-to-one correspondence. Comparing the maximum distances detected by the two coordinate detectors 331, 332, 333, 334 and the N-1 error detectors 321, 322, 323, and 324 with each other to select the largest value (maximum value). value selection unit 341, the maximum selected by the maximum value selection unit group the maximum value selected by the (341) set value (d max) and compared to a preset value (d max) selected is greater than the maximum value unit 341 Selection that allows you to select the coordinates of the point where the value meets the contour information. The maximum value selector 341 of the coordinates output from the N-1 coordinate detectors 331, 332, 333, and 334 by the selection control signal of the comparator 351 and the comparator 351 for generating the control signal. I, i + 1 th (where the two coordinate values adjacent to the coordinate value newly detected by the coordinate selecting unit 361 and the coordinate selecting unit 361 respectively detect the coordinates of the point where the maximum value selected by the contour information meets the contour information). iN) Controls the i + 1th selector so that newly detected coordinates are stored in the i + 1th (i + 1≤N) node memory in which the lower coordinates are horizontally stored in the node memory, except for the i + 1th selector. Each selector selects coordinate values outputted from the node memory of the previous stage, and the new coordinates are selected by the selection controller 371 and the coordinate selector 361 that control the shift to the next node memory. When inputted to the selector 301, 302, 303, 304, all of the i + 1th node memories Node memory in the block is composed of a DJ (disable) and the memory controller 381 to the enable (enable) to the rear end node memory including the node (i + 1) th memory.

또한 상기 샘플링 검출부(23, 24, 25, 26) 각각은 제2c도에 도시된 바와 같이, N개의 노드 메모리군(311, 312, 313, 314, 315)에 각각 저장된 기 선택된 윤곽선 정보의 좌표중 인접한 좌표값을 각각 수신하여 인접한 좌표간을 잇는 수직선의 길이, 즉 원 윤곽선이 근사화된 다각형의 각 변에 대한 길이(1)를 검출하는 길이 검출부(411), 다각형의 각 변을 기 설정 갯수(k+1)로 등분하는 분할부(412), 분할부(412)에 의해 등분된 각변의 등분점에서 각변에 수직인 직선과 원 윤곽선과의 만나는 점까지의 거리(원 윤곽선과 다각형의 각변과의 오차)를 기 설정 양자화 레벨로 양자화하여 오차 벡터를 검출하는 양자화부(413)로 구성된다.Each of the sampling detectors 23, 24, 25, and 26 is one of coordinates of pre-selected contour information stored in N node memory groups 311, 312, 313, 314, and 315, respectively, as shown in FIG. A length detector 411 which receives the adjacent coordinate values and detects the length of the vertical line connecting the adjacent coordinates, that is, the length 1 for each side of the polygon whose circle outline is approximated, and the preset number of each side of the polygon ( The distance from the equalization point of each side divided by the division part 412 and the division part 412 to the point which meets the straight line perpendicular | vertical to each side and a circle contour (divided by k + 1) A quantization unit 413 for quantizing the error of &lt; RTI ID = 0.0 &gt;

상기와 같이 구성된 본 발명의 실시예에 대한 동작 설명을 제3a, b, c, d도를 참조하여 설명하면 다음과 같다.An operation description of an embodiment of the present invention configured as described above will be described with reference to FIGS. 3a, b, c, and d.

먼저, 윤곽선 정보 검출부(21)는 입력 영상을 독립적인 움직임의 이동 물체별로 분할하고 분할된 물체의 움직임 정보를 추정하는 영상 해석 과정을 통해 검출되는 윤곽선 정보, 움직임 정보, 색상 정보중 윤곽선 정보와 윤곽선 정보의 일측 끝점과 타측 끝점의 좌표를 추출하여 다각형 근사화부(22)에 출력한다.First, the contour information detector 21 divides the input image into moving objects of independent motion and estimates the contour information, motion information, and color information among the contour information, motion information, and color information detected through an image analysis process. Coordinates of one end point and the other end point of the information are extracted and output to the polygon approximation unit 22.

윤곽선 정보 검출부(21)에서 추출된 윤곽선 정보의 일측 끝점(A)과 타측 끝점(B)의 좌표는 각각 노드 메모리(311)와 노드 메모리(312)에 저장된후 오차 검출부(321)에 입력되고, 오차 검출부(321)는 윤곽선 정보 검출부(21)의 윤곽선 정보와 윤곽선 정보의 일측 및 타측 끝점 좌표를 각각 수신하여 제3a도에 나타난 바와 같이 일측 및 타측 끝점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d)를 검출하고, 오차 검출부(321)에 대응되게 연결된 좌표 검출부(331)는 일측 및 타측 끝점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d1)의 윤곽선 좌표(C)를 검출하여 좌표 선택부(361)에 출력한다.Coordinates of one end point A and the other end point B of the contour information extracted by the contour information detector 21 are stored in the node memory 311 and the node memory 312, respectively, and then input to the error detector 321. The error detector 321 receives the contour information of the contour information detector 21 and the coordinates of one and the other end points of the contour information, respectively, and as shown in FIG. 3A, a straight line and a contour perpendicular to a straight line connecting one and the other endpoint coordinates. The distance (d) is the maximum distance to the point that meets the point and the coordinate detection unit 331 connected to correspond to the error detector 321 is a point that meets the straight line and the contour line perpendicular to the straight line between the one side and the other end point coordinates The outline coordinate C of the distance d1 having the maximum distance to is detected and output to the coordinate selecting unit 361.

최대값 선택부(341)는 N-1개의 오차 검출부(321, 322, 323, 324)에 의해 각각으로 검출된 최대 거리를 서로 비교하여 가장 큰값(최대값)을 선택하는데, 처음에는 단지 오차 검출부(321)에서만 출력되므로 오차 검출부(321)에서 출력한 최대 거리(d1)를 선택하여 비교부(351)에 출력하고 비교부(351)는 최대값 선택부(341)에 의해 선택된 최대값을 기 설정값(dmax)과 비교하여 기 설정값(dmax)보다 크면 최대값 선택부(341)에 의해 선택된 최대값이 윤곽선 정보와 만나는 점의 좌표를 선택할수 있도록 하는 선택 제어 신호를 생성한다.The maximum value selector 341 compares the maximum distances detected by the N-1 error detectors 321, 322, 323, and 324 with each other and selects the largest value (maximum value). Since it is output only at 321, the maximum distance d1 output from the error detector 321 is selected and output to the comparator 351, and the comparator 351 uses the maximum value selected by the maximum value selector 341. set value and generates a selection control signal to be selected coordinate of the point selected maximum value is met and the outline information by the (d max) and compared to a preset value (d max) selected is greater than the maximum value unit 341.

따라서 좌표 선택부(361)는 N-1개의 좌표 검출부(331, 332, 333, 334)에서 출력한 윤곽선 정보의 각 좌표를 수신하여 비교부(351)의 선택 제어 신호에 따라 하나의 좌표를 선택하여 N-1개의 선택부(301, 302, 303, 304) 각각의 입력단에 입력시키는데, 처음에는 단지 좌표 검출부(331)에서 검출한 C점 좌표값을 출력함으로, 좌표 선택부(361)는 좌표 검출부(331)에서 출력한 C점 좌표값을 선택하여 N-1개의 선택부(301, 302, 303, 304)에 각각 입력되도록 한다.Therefore, the coordinate selector 361 receives each coordinate of the contour information output from the N-1 coordinate detectors 331, 332, 333, and 334 and selects one coordinate according to the selection control signal of the comparator 351. The input unit is input to each of the N-1 selectors 301, 302, 303, and 304. Initially, only the C point coordinate values detected by the coordinate detector 331 are output, so that the coordinate selector 361 coordinates the coordinates. The C point coordinate values output from the detector 331 are selected to be input to the N-1 selectors 301, 302, 303, and 304, respectively.

이때 선택 제어부(371)는 새로 검출된 좌표값이 N-1개의 선택부(301, 302, 303, 304)에 각각 입력되면 새로 검출된 좌표값에 인접한 좌표값이 각각 저장된 노드 메모리(i 번째 노드 메모리와, i+1번째 노드 메모리)를 검출한후 인접한 좌표값이 저장된 노드 메모리중 수평적으로 하위 좌표가 저장된 i+1번째 노드 메모리에 대응되게 연결된 선택부를 제어하여 새로 검출된 좌표값이 i+1번째 노드 메모리에 저장되도록 하고, 나머지 선택부는 각각 전단의 노드 메모리에서 출력한 좌표값을 선택하여 다음단의 노드 메모리에 시프트시키도록 제어한다.In this case, when the newly detected coordinate values are input to the N-1 selectors 301, 302, 303, and 304, respectively, the selection controller 371 stores node coordinates (i-th node) that store the coordinate values adjacent to the newly detected coordinate values. Memory and the i + 1 th node memory) and then control a selector connected to correspond to the i + 1 th node memory in which the lower coordinates are horizontally stored among the node memories in which adjacent coordinate values are stored. The remaining selector controls to select the coordinate values output from the node memory of the previous stage and shift them to the node memory of the next stage.

따라서 C점 좌표값은 선택부(301)의 선택에 의해 노드 메모리(312)에 저장되고 원래 노드 메모리(312)에 저장된 B점 좌표값은 선택부(302)의 선택에 의해 다음단의 노드 메모리(313)에 저장된다.Accordingly, the C point coordinate value is stored in the node memory 312 by the selection of the selection unit 301 and the B point coordinate value stored in the original node memory 312 is the next node memory by the selection of the selection unit 302. 313 is stored.

상기와 같은 과정에 의해 각 노드 메모리(311, 312, 313)에 저장된 A점, C점, B점 좌표값중, 서로 인접한 A점과 C점 좌표값은 오차 검출부(321)에 입력되고, C점과 B점 좌표값은 오차 검출부(322)에 입력된다.By the above process, among A, C, and B point coordinate values stored in each node memory 311, 312, and 313, adjacent A and C point coordinate values are input to the error detector 321, and C The point and B point coordinate values are input to the error detector 322.

오차 검출부(321)는 A점 및 C점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d2)를 검출하고, 오차 검출부(321)에 대응되게 연결된 좌표 검출부(331)는 A점과 C점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d2)의 윤곽선 좌표(D)를 검출하여 좌표 선택부(361)에 출력한다.The error detector 321 detects a distance d2 having a maximum distance between a straight line perpendicular to a straight line connecting the point A and C coordinates and the point where the contour meets the outline, and is connected to the error detector 321. 331 detects contour coordinates D of a distance d2 having a maximum distance between a straight line perpendicular to a straight line connecting A and C coordinates and a point meeting an outline, and outputs it to the coordinate selecting unit 361. do.

또한 오차 검출부(322)는 C점 및 B점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d3)를 검출하고, 오차 검출부(321)에 대응되게 연결된 좌표 검출부(332)는 C점과 B점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d3)의 윤곽선 좌표(E)를 검출하여 좌표 선택부(361)에 출력한다.In addition, the error detector 322 detects a distance d3 having a maximum distance from a straight line perpendicular to a straight line connecting the C point and B point coordinates and the point meeting the contour line, and coordinates connected corresponding to the error detector 321. The detector 332 detects the contour coordinate E of the distance d3 having the maximum distance from the straight line perpendicular to the straight line connecting the C point and the B point coordinates and the point meeting the contour line, to the coordinate selector 361. Output

최대값 선택부(341)는 d2와 d3을 비교하여 더 큰값을 선택하는데, 예를 들어 d3이 더 크다면 이를 비교부(351)에 출력하고 비교부(351)는 d3와 기설정된값인 dmax을 비교하여 d3가 dmax보다 크면 선택 제어 신호를 좌표 선택부(361)에 출력한다.The maximum value selector 341 compares d2 and d3 and selects a larger value. For example, if d3 is larger, the maximum value selector 341 outputs it to the comparator 351, and the comparator 351 d is a preset value d. When max is compared and d3 is larger than d max , the selection control signal is output to the coordinate selection unit 361.

따라서 좌표 선택부(361)는 좌표 검출부(332)에서 검출된 E점의 좌표값을 선택하여 각 선택부(301, 302, 303, 304)에 각각 입력시킨다.Therefore, the coordinate selector 361 selects the coordinate values of the point E detected by the coordinate detector 332 and inputs the coordinate values to the selectors 301, 302, 303, and 304, respectively.

이때 선택 제어부(371)는 새로 검출된 E점 좌표값이 N-1개의 선택부(301, 302, 303, 304)에 각각 입력되면 새로 검출된 좌표값에 인접한 C점과 B점 좌표값이 각각 저장된 노드 메모리(312, 313)를 검출한후 인접한 좌표값이 저장된 노드 메모리중 수평적으로 하위 좌표가 저장된 노드 메모리(313)에 대응되게 연결된 선택부(302)를 제어하여 새로 검출된 E점 좌표값이 노드 메모리(313)에 저장되도록 하고, 나머지 선택부는 각각 전단의 노드 메모리에서 출력한 좌표값을 선택하여 다음단의 노드 메모리에 시프트시키도록 제어한다.In this case, when the newly detected E point coordinate values are input to the N-1 selectors 301, 302, 303, and 304, respectively, the selection controller 371 receives the C point and B point coordinate values adjacent to the newly detected coordinate values, respectively. After detecting the stored node memories 312 and 313, the newly detected E point coordinates are controlled by controlling the selector 302 connected to correspond to the node memory 313 in which the lower coordinates are horizontally stored among the node memories in which adjacent coordinate values are stored. The values are stored in the node memory 313, and the remaining selector controls to select the coordinate values output from the node memory of the previous stage and shift them to the next node memory.

한편, 메모리 제어부(381)는 E점 좌표값이 선택부(302)에 의해 선택되면 노드 메모리(313)의 전단에 위치한 노드 메모리(312)는 디제이블시키고 노드 메모리(313)를 포함한 후단의 노드 메모리(314, 315)를 인에이블시키므로, N-1개의 선택부(301, 302, 303, 304)가 동작시에 노드 메모리(312)에는 전 상태의 좌표값이 그대로 남게되고 노드 메모리(314, 315)는 전단의 노드 메모리에 저장되었던 전상태의 좌표값이 새로 저장된다.On the other hand, when the E point coordinate value is selected by the selection unit 302, the memory control unit 381 deactivates the node memory 312 located at the front of the node memory 313 and includes the node at the rear end including the node memory 313. Since the memories 314 and 315 are enabled, when the N-1 selectors 301, 302, 303 and 304 are operated, the coordinate values of all states remain in the node memory 312 and the node memories 314 and 315 are operated. 315 is newly stored the coordinate values of the previous state that was stored in the node memory of the front end.

상기와 같은 과정에 의해 각 노드 메모리(311, 312, 313, 314)에 저장된 A점, C점, E점, B점 좌표값중, 서로 인접한 A점과 C점 좌표값은 오차 검출부(321)에 입력되고, C점과 E점 좌표값은 오차 검출부(322)에 입력되며 E점과 B점은 오차 검출부(323)에 입력된다.By the above process, among the A, C, E, and B point coordinate values stored in each of the node memories 311, 312, 313, and 314, the A and C point coordinate values adjacent to each other are detected by the error detector 321. The C and E point coordinate values are input to the error detector 322 and the E and B points are input to the error detector 323.

오차 검출부(321)는 A점 및 C점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d2)를 검출하고, 오차 검출부(321)에 대응되게 연결된 좌표 검출부(331)는 A점과 C점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d2)의 윤곽선 좌표(D)를 검출하여 좌표 선택부(361)에 출력한다.The error detector 321 detects a distance d2 having a maximum distance between a straight line perpendicular to a straight line connecting the point A and C coordinates and the point where the contour meets the outline, and is connected to the error detector 321. 331 detects contour coordinates D of a distance d2 having a maximum distance between a straight line perpendicular to a straight line connecting A and C coordinates and a point meeting an outline, and outputs it to the coordinate selecting unit 361. do.

또한 오차 검출부(322)는 C점 및 E점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d4)를 검출하고, 오차 검출부(322)에 대응되게 연결된 좌표 검출부(332)는 C점과 E점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d4)의 윤곽선 좌표(F)를 검출하여 좌표 선택부(361)에 출력한다.In addition, the error detector 322 detects a distance d4 having a maximum distance between a straight line perpendicular to a straight line connecting the C point and the E point coordinates and a point meeting the outline, and coordinates connected corresponding to the error detector 322. The detection unit 332 detects the contour coordinate F of the distance d4 having the maximum distance from the straight line perpendicular to the straight line connecting the C point and the E point coordinates to the point where the contour meets the contour line. Output

마찬가지로 오차 검출부(323)는 E점과 B점의 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d5)를 검출하고, 오차 검출부(323)에 대응되게 연결된 좌표 검출부(333)는 E점과 B점 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리(d5)의 윤곽선 좌표(G)를 검출하여 좌표 선택부(361)에 출력한다.Similarly, the error detector 323 detects a distance d5 having a maximum distance between a straight line perpendicular to a straight line connecting the coordinates of the E point and the B point and the point meeting the contour line, and is connected to the error detector 323. The coordinate detector 333 detects the contour coordinate G of a distance d5 having a maximum distance between a straight line perpendicular to a straight line connecting the point E and B coordinates and a point meeting the outline, and then selects the coordinate selector 361. Output to

최대값 선택부(341)는 d2와 d4 및 d5를 비교하여 가장 큰값을 선택하는데, 예를 들어 d2이 가장 크다면 이를 비교부(351)에 출력하고 비교부(351)는 d2가 기설정된값인 dmax을 비교하여 d2과 dmax보다 크면 선택 제어 신호를 좌표 선택부(361)에 출력한다.The maximum value selector 341 compares d2 with d4 and d5 and selects the largest value. For example, if d2 is the largest, the maximum value selector 341 outputs it to the comparator 351, and the comparator 351 outputs a preset value of d2. a, and outputs a selection control signal d2 and d max is greater coordinates selection section 361 than compared to d max.

따라서 좌표 선택부(361)는 좌표 검출부(332)에서 검출된 D점의 좌표값을 선택하여 각 선택부(301, 302, 303, 304)에 각각 입력시킨다.Therefore, the coordinate selecting unit 361 selects the coordinate values of the point D detected by the coordinate detecting unit 332 and inputs them to the respective selecting units 301, 302, 303, and 304.

이때 선택 제어부(371)는 새로 검출된 D점 좌표값이 N-1개의 선택부(301, 302, 303, 304)에 각각 입력되면 새로 검출된 좌표값에 인접한 A점과 C점 좌표값이 각각 저장된 노드 메모리(312, 313)를 검출한후 인접한 좌표값이 저장된 노드 메모리중 수평적으로 하위 좌표가 저장된 노드 메모리(312)에 대응되게 연결된 선택부(301)를 제어하여 새로 검출된 D점 좌표값이 노드 메모리(312)에 저장되도록 하고, 나머지 선택부는 각각 전단의 노드 메모리에서 출력한 좌표값을 선택하여 다음단의 노드 메모리에 시프트시키도록 제어한다.In this case, when the newly detected D point coordinate values are input to the N-1 selection units 301, 302, 303, and 304, respectively, the selection controller 371 receives the A and C point coordinate values adjacent to the newly detected coordinate values. After detecting the stored node memories 312 and 313, the newly detected D point coordinates are controlled by controlling the selection unit 301 connected to correspond to the node memory 312 in which the lower coordinates are horizontally stored among the node memories in which adjacent coordinate values are stored. The values are stored in the node memory 312, and the remaining selector controls to select the coordinate values output from the node memory of the previous stage and shift them to the next node memory.

한편, 메모리 제어부(381)는 D점 좌표값이 선택부(301)에 의해 선택되면 노드 메모리(312)를 포함한 후단의 노드 메모리(313, 314, 315)를 인에이블시키므로, N-1개의 선택부(301, 302, 303, 304)에 의해 노드 메모리(312)에는 D점의 좌표값이 저장되고 노드 메모리(313, 314, 315)는 전단의 노드 메모리에 저장되었던 전상태의 좌표값이 새로 저장된다.On the other hand, when the D point coordinate value is selected by the selection unit 301, the memory control unit 381 enables the node memories 313, 314, and 315 including the node memory 312, so that N-1 selections are made. The coordinates of the D point are stored in the node memory 312 by the units 301, 302, 303, and 304, and the coordinate values of the previous state stored in the node memory of the front end are newly stored in the node memories 313, 314, and 315. Stored.

상기와 같은 과정을 반복 실행함으로서 N개의 노드 메모리군(311, 312, 313, 314, 315)에는 N개의 윤곽선 좌표가 저장되며 원 윤곽선은 노드 메모리군(311, 312, 313, 314, 315)에 저장된 각 윤곽선 좌표를 정점으로한 다각형으로 근사화된다.By repeating the above process, N contour coordinates are stored in the N node memory groups 311, 312, 313, 314, and 315, and the circle outline is stored in the node memory groups 311, 312, 313, 314, and 315. It is approximated by a polygon with the vertex of each stored contour coordinate.

이때 dmax는 다각형 근사화의 성능을 좌우하는 것으로, 실험 등을 통해 설정 가능하며, 설정된 dmax에 따라 검출할수 있는 윤곽선 좌표수를 고려하여 N을 결정한다는 것은 당업자라면 누구나 이해할수 있을 것이다.At this time, d max depends on the performance of polygon approximation, which can be set through experiments, and it will be understood by those skilled in the art that N is determined in consideration of the number of contour coordinates that can be detected according to the set d max .

N-1개의 샘플링 검출부(23, 24, 25, 26) 각각은 N개의 노드 메모리군(311, 312, 313, 314, 315)에 각각 저장된 기 선택된 윤곽선 정보의 좌표중 인접한 좌표값을 각각 수신한다.Each of the N-1 sampling detection units 23, 24, 25, and 26 respectively receives adjacent coordinate values among coordinates of preselected contour information stored in the N node memory groups 311, 312, 313, 314, and 315, respectively. .

예를 들어 노드 메모리(311)에 A점 좌표값이 저장되고, 노드 메모리(312)에 D점 좌표값이 저장되며 노드 메모리(313)에 C점 좌표값이 저장되고 노드 메모리(314)에 E점 좌표값이 저장되면 샘플링 검출부(23)에는 A점과 D점 좌표값이 임력되고, 샘플링 검출부(24)에는 D점과 C점 좌표값이 입력되며 샘플링 검출부(25)에는 C점과 E점 좌표값이 입력된다.For example, A point coordinate values are stored in the node memory 311, D point coordinate values are stored in the node memory 312, C point coordinate values are stored in the node memory 313, and E is stored in the node memory 314. When the point coordinate values are stored, the A and D point coordinate values are input to the sampling detector 23, the D and C point values are input to the sampling detector 24, and the C and E points are input to the sampling detector 25. The coordinate value is entered.

따라서 샘플링 검출부(23)의 길이 검출부(411)는 A점과 D점 좌표값을 수신하여 두 좌표간의 거리(1)를 검출하여 분할부(412)에 출력한다.Accordingly, the length detector 411 of the sampling detector 23 receives coordinates A and D, detects the distance 1 between the two coordinates, and outputs the coordinates 1 to the divider 412.

분할부(412)는 A점과 D점 좌표간의 거리(1)를 기 설정 갯수(k+1)로 등분하기 위하여 등분 거리(e)를 연산하는데, 이에 대한 연산식은 제1식과 같이 나타낼수 있다.The division unit 412 calculates an equal distance e to divide the distance 1 between the A-point and D-point coordinates by a predetermined number k + 1, and an expression for this may be expressed as in the first equation. .

예를 들어 제3b도에 도시된 바와 같이 등분하고자 하는 A점과 D점과의 거리가이고, A점과 D점과의 거리를 4개로 등분하고자 하면(k+1=4) (제1식)에 의해 등분 거리(e)는 (제2식)과 같다.For example, as shown in FIG. 3B, the distance between A and D points If the distance between the point A and the point D is to be divided into four (k + 1 = 4), the equal distance (e) is given by (Formula 2) by (Formula 1).

따라서 분할부(412)에 의해 A점과 D점과의 거리의 등분점 갯수(k)는 각각 3개가 되고 변의 등분점은가 된다(제3c도).Therefore, the number of equal points (k) of the distance between the point A and the point D is three by the dividing unit 412, and the equal points of the sides are (Figure 3c).

따라서 양자화부(413)는의 등분점에서 A점과 D점 좌표간의 원 윤곽선에 수직인 직선을 형성하여, 등분점에서 수직인 직선이 윤곽선과 만나는 지점과 등분점과의 거리, 즉 원 윤곽선과 다각형의 등분점과의 오차를 각각 검출한후 검출된 오차값을 기 설정 양자화 레벨로 양자화하여 오차 벡터를 검출한다(제3d도).Therefore, the quantization unit 413 A straight line perpendicular to the circle contour between A and D coordinates is formed at the equinox of, and the distance between the point where the vertical line meets the contour and the equidistant point, that is, the error between the circle contour and the polygonal equinox Are respectively detected, and the detected error value is quantized to a predetermined quantization level to detect an error vector (FIG. 3D).

마찬가지로 샘플링 검출부(24)는 D점과 C점 좌표값이 입력되며 D점과 C점 좌표간의 거리(1)를 검출하여 기 설정 갯수(k+1)로 등분한후 등분된 각변의 등분점에서 각변에 수직인 직선과 원 윤곽선과의 만나는 점까지의 거리를 기 설정 양자화 레벨로 양자화하여 오차 벡터를 검출한다.Similarly, the sampling detector 24 inputs the coordinates of the D and C points, detects the distance (1) between the D and C point coordinates, divides them by a preset number (k + 1), and then divides them at equal points of each side An error vector is detected by quantizing a distance between a straight line perpendicular to each side and a point where an outline of a circle meets at a predetermined quantization level.

상기와 같은 방식으로 샘플링 검출부(23, 24, 25, 26) 각각은 노드 메모리(311, 312, 313, 314, 315)에 저장된 윤곽선 정보의 각 좌표값중 인접한 좌표값을 수신하여 다각형 근사화된 각 변의 오차 벡터를 검출한다.In the same manner as described above, each of the sampling detectors 23, 24, 25, and 26 receives a polygonal approximation by receiving adjacent coordinate values among the coordinate values of the contour information stored in the node memories 311, 312, 313, 314, and 315. Detect the error vector of the sides.

샘플링 검출부(23, 24, 25, 26)에 일대일 대응되게 연결된 최적 패턴 선택부(27, 28, 29, 30)는 기 설정된 코드북(code book)을 이용하여 각 변의 오차 벡터의 패턴에 최적인 패턴의 인덱스를 검출하여 출력하고 부호화부(31)는 각 최적 패턴 선택부(27, 28, 29, 30)에서 출력하는 인덱스를 가변 길이 부호화한다.The optimal pattern selectors 27, 28, 29, and 30 that are connected in one-to-one correspondence with the sampling detectors 23, 24, 25, and 26 are optimal patterns for the pattern of the error vector of each side using a preset code book. The index is detected and output, and the encoder 31 variable-length encodes the index output from each optimum pattern selector 27, 28, 29, or 30.

이제까지 원 윤곽선을 다각형 근사화시킨후 다각형의 각변의 오차값을 성분으로한 벡터 양자화에 대해 설명하였는데, 이경우 두가지의 벡터 양자화가 제시될수 있다.So far, polygonal approximation of the circle contour has been described with respect to the vector quantization using the error value of each side of the polygon. In this case, two vector quantizations can be presented.

즉, 근사화된 다각형의 각 변을 k+1로 등분하여 각 변마다 원 윤곽선과의 오차값을 k개 검출할 경우 각 변마다 k차원의 벡터가 하나씩 얻어지며, 다각형 변의 갯수가 N개라면 k차의 벡터가 N개 검출되고, 이 경우 기 설정 코드북은 단지 원 윤곽선과 근사화된 다각형과의 오차값을 성분으로한 오차 벡터에 상응하는 코드북을 나타낸다.In other words, if each side of the approximated polygon is divided into k + 1 to detect k errors with the circle outline for each side, one k-dimensional vector is obtained for each side, and if the number of polygon sides is N, k N vectors of the difference are detected, and in this case, the preset codebook represents a codebook corresponding to an error vector having only an error value between a circle outline and an approximated polygon.

한편 직선의 길이가 길면 오차 벡터의 성분을 더욱 많이 구해야 하며 이것은 결국 오차 벡터의 차원이 증가함을 의미한다. 따라서 직선의 길이에 따라 다른 차원의 오차 벡터를 생성한 후 직선의 길이에 따른 가변 벡터 양자화를 수행하는 방법을 제시한다.On the other hand, the longer the length of the straight line, the more components of the error vector should be obtained, which means that the dimension of the error vector increases. Therefore, we propose a method of generating variable vectors of different dimensions according to the length of a straight line and then performing variable vector quantization according to the length of the straight line.

즉, 직선 길이의 분포에 따라 다른 차원의 코드북을 다수개 작성하여 벡터 양자화를 수행하고 양자화 레벨도 각기 다르게하여 가변 벡터 양자화를 수행하는 것이다.That is, vector quantization is performed by generating a plurality of codebooks of different dimensions according to the distribution of the linear length, and variable vector quantization is performed by different quantization levels.

상기한 바와 같이 본 발명은 원 윤곽선과 근사화된 다각형간의 오차를 추출하여 그 오차를 벡터화하고 양자화함으로서 고압축률의 부호화를 실현할수 있는 효과가 있다.As described above, the present invention has an effect of realizing a high compression ratio by extracting an error between a circular outline and an approximated polygon and vectorizing and quantizing the error.

Claims (6)

영상의 원 윤곽선을 다수개의 직선을 변으로한 다각형으로 근사화하되, 근사화된 다각형의 각 변에 수직인 직선과 원 윤곽선과 만나는 점까지의 거리(d)가 기설정치(dmax)를 초과하지 않는 다각형으로 근사화하는 다각형 근사화부(22) ; 상기 근사화된 다각형의 각 변에 대응된 갯수(N-1, N : 기 설정된 양의 정수값)로 구성된 것으로, 상기 원 윤곽선이 근사화된 다각형의 각 변과 상기 원 윤곽선과의 오차값을 각 변마다 기 설정된 갯수로 검출하여 오차값을 성분으로한 벡터를 검출하는 N-1개의 샘플링 검출부(23, 24, 25, 26) ; 상기 N-1개의 샘플링 검출부(23, 24, 25, 26)에 일대일 대응되게 연결되어 기 설정된 코드북을 이용하여 상기 각 변의 오차 벡터의 패턴에 최적인 패턴의 인덱스를 검출하는 N-1개의 최적 패턴 선택부(27, 28, 29, 30) ; 상기 N-1개의 최적 패턴 선택부(27, 28, 29, 30)의 각 인덱스를 가변 길이 부호화하는 부호화부(31)로 구성함을 특징으로 하는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치.The circle outline of the image is approximated by a polygon with a plurality of straight lines, but the distance (d) between the line perpendicular to each side of the approximated polygon and the point where the circle outline meets does not exceed the preset value (d max ). A polygon approximation unit 22 for approximating the polygon; Comprising a number corresponding to each side of the approximated polygon (N-1, N: a predetermined positive integer value), and the error value between each side of the polygon to which the circle outline is approximated and the circle outline N-1 sampling detectors 23, 24, 25, and 26 for detecting a predetermined number each time and detecting a vector having an error value as a component; N-1 optimal patterns connected to the N-1 sampling detectors 23, 24, 25, and 26 in a one-to-one correspondence to detect an index of a pattern that is optimal for the pattern of the error vector of each side by using a preset codebook Selector 27, 28, 29, 30; And an encoding unit (31) for variable length encoding the indices of the N-1 optimal pattern selection units (27, 28, 29, 30). 제1항에 있어서, 상기 다각형 근사화부(22)는 : 기 검출된 윤곽선 정보의 좌표와 새로 검출된 윤곽선 정보의 좌표를 선택하여 출력하는 N-1개의 선택부(301, 302, 303, 304) ; 상기 원 윤곽선 정보의 일측 끝점과 타측 끝점의 좌표를 각각 저장하는 두 개의 노드 메모리(311, 312)를 포함한 N개의 노드 메모리(311, 312, 313, 314, 315)로 구성되고, 상기 원 윤곽선 정보의 일측 끝점 좌표를 저장한 노드 메모리(311)를 제외한 나머지 노드 메모리(312, 313, 314, 315) 각각의 입력단에 상기 N-1개의 선택부(301, 302, 303, 304) 각각의 출력단이 일대일 대응되게 연결되어 N-1개의 선택부(301, 302, 303, 304)에 의해 선택된 윤곽선 정보의 각 좌표값을 대응된 노드 메모리에 저장하는 노드 메모리군(311, 312, 313, 314, 315) ; 상기 노드 메모리군(311, 312, 313, 314, 315)에 각각 저장된 기 선택된 윤곽선 정보의 좌표중 인접한 좌표간을 잇는 직선에 수직인 직선과 윤곽선과 만나는 점까지의 거리가 최대인 거리를 검출하는 N-1개의 오차 검출부(321, 322, 323, 324) ; 상기 N-1개의 오차 검출부(321, 322, 323, 324)에 일대일 대응되게 연결된 것으로, 상기 기 선택된 윤곽선 정보의 좌표중 인접한 좌표값을 각각 수신하여 일대일 대응되게 연결된 오차 검출부에 의해 검출된 최대 거리의 윤곽선 좌표를 검출하는 N-1개의 좌표 검출부(331, 332, 333, 334) ; 상기 N-1개의 오차 검출부(321, 322, 323, 324)에 의해 각각으로 검출된 최대 거리를 서로 비교하여 가장 큰값(최대값)을 선택하는 최대값 선택부(341) ; 상기 최대값 선택부(341)에 의해 선택된 최대값을 기 설정값(dmax)과 비교하여 상기 기 설정값(dmax)보다 크면 상기 최대값 선택부(341)에 의해 선택된 최대값이 윤곽선 정보와 만나는 점의 좌표를 선택할수 있도록 하는 선택 제어 신호를 생성하는 비교부(351) ; 상기 비교부(351)의 선택 제어 신호에 의해 상기 N-1개의 좌표 검출부(331, 332, 333, 334)에서 출력한 좌표중 상기 최대값 선택부(341)에 의해 선택된 최대값이 윤곽선 정보와 만나는 점의 좌표를 검출하는 좌표 선택부(361) ; 상기 좌표 선택부(361)에 의해 새로 검출된 좌표값에 인접한 두좌표값이 각각 저장된 i,i+1번째(i: 양의 정수)번째 (iN) 노드 메모리중 수평적으로 하위 좌표가 저장된 i+1번째(i+1≤N) 노드 메모리에 새로 검출된 좌표가 저장되도록 i+1번째 노드 메모리에 대응된 선택부를 제어하고, 상기 i+1번째 노드 메모리에 대응된 선택부를 제외한 나머지 선택부는 각각 전단의 노드 메모리에서 출력한 좌표값을 선택하여 다음단의 노드 메모리에 시프트될수 있도록 상기 N-1개의 선택부를 제어하는 선택 제어부(371) ; 상기 좌표 선택부(361)에 의해 새로운 좌표가 선택되어 상기 N-1개의 각 선택부(301, 302, 303, 304)에 입력되면 상기 i+1번째 노드 메모리의 전단에 위치한 노드 메모리는 디제이블시키고 i+1번째 노드 메모리를 포함한 후단 노드 메모리를 인에이블시키는 메모리 제어부(381)로 구성함을 특징으로 하는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치.2. The polygon approximation unit 22 according to claim 1, wherein: N-1 selectors 301, 302, 303 and 304 for selecting and outputting the coordinates of the previously detected contour information and the coordinates of the newly detected contour information. ; N node memories 311, 312, 313, 314, and 315 including two node memories 311 and 312 respectively storing coordinates of one end point and the other end point of the circle contour information, and the circle contour information. An output terminal of each of the N-1 selectors 301, 302, 303, and 304 is input to an input terminal of each of the remaining node memories 312, 313, 314, and 315 except for the node memory 311 storing the coordinates of one end of the node. Node memory groups 311, 312, 313, 314, 315 connected one-to-one correspondingly and storing respective coordinate values of the contour information selected by the N-1 selectors 301, 302, 303, and 304 in the corresponding node memories. ); Detecting a distance having a maximum distance between a straight line perpendicular to a straight line connecting adjacent coordinates and a point meeting the contour among coordinates of the previously selected contour information stored in the node memory groups 311, 312, 313, 314, and 315, respectively. N-1 error detection units 321, 322, 323, and 324; The maximum distance detected by the error detection unit connected in one-to-one correspondence to the N-1 error detection units 321, 322, 323, and 324, and receiving adjacent coordinate values among the coordinates of the previously selected contour information. N-1 coordinate detection units 331, 332, 333, and 334 for detecting the contour coordinates of the coordinates; A maximum value selector 341 which selects the largest value (maximum value) by comparing the maximum distances detected by the N-1 error detectors 321, 322, 323, and 324 with each other; The maximum value selected by the maximum value selection unit 341, a preset value (d max) and compared to the predetermined value (d max) is greater than the maximum value selection unit 341, a maximum value of the outline information selected by the A comparator 351 for generating a selection control signal for selecting a coordinate of a point meeting with; The maximum value selected by the maximum value selector 341 among the coordinates output from the N-1 coordinate detectors 331, 332, 333, and 334 by the selection control signal of the comparator 351 is determined by the contour information. A coordinate selecting unit 361 which detects coordinates of meeting points; I, i + 1 th (i: positive integer) th i (i: positive integer) node memory where the two coordinate values adjacent to the newly detected coordinate value by the coordinate selecting unit 361 are stored, i The selector corresponding to the i + 1 th node memory is stored so that newly detected coordinates are stored in the +1 th (i + 1≤N) node memory, and the remaining selector except for the selector corresponding to the i + 1 th node memory is selected. A selection control section 371 which controls the N-1 selection sections so as to select coordinate values output from the node memory of the previous stage and shift them to the node memory of the next stage; When a new coordinate is selected by the coordinate selector 361 and input to each of the N-1 selectors 301, 302, 303, and 304, the node memory located in front of the i + 1 th node memory is disabled. And a memory controller (381) for enabling a rear node memory including an i + 1 th node memory. 제2항에 있어서, 상기 N-1개의 샘플링 검출부(23, 24, 25, 26) 각각은 : 상기 노드 메모리군(311, 312, 313, 314, 315)에 각각 저장된 기 선택된 윤곽선 정보의 좌표중 인접한 좌표값을 각각 수신하여 인접한 좌표간을 잇는 수직선의 길이(1)를 검출하는 길이 검출부(411) ; 상기 길이 검출부(411)에 의해 검출된 수직선의 길이(1)를 기 설정 갯수(k+1)로 등분하는 분할부(412), 상기 분할부(412)에 의해 등분된 등분점에서 수직인 직선과 원 윤곽선과의 만나는 점까지의 거리를 기 설정 양자화 레벨로 양자화하여 오차 벡터를 검출하는 양자화부(413)로 구성함을 특징으로 하는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치.The N-1 sampling detectors 23, 24, 25, and 26 are each one of: coordinates of preselected contour information stored in the node memory group 311, 312, 313, 314, and 315, respectively. A length detector 411 which receives adjacent coordinate values, respectively, and detects a length 1 of vertical lines connecting adjacent coordinates; The division part 412 which equally divides the length 1 of the vertical line detected by the length detection part 411 by the predetermined number k + 1, and the straight line which is perpendicular | vertical at the equal part divided by the said division part 412 And a quantization unit (413) for detecting an error vector by quantizing a distance between the point and the point of contact with the circle contour at a predetermined quantization level, wherein the error is due to the polygon approximation of the contour image. 제3항에 있어서, 상기 기설정 코드북은 : 원 윤곽선과 근사화된 다각형과의 오차값을 성분으로한 오차 벡터에 상응하는 코드북으로 구성함을 특징으로 하는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치.4. The apparatus of claim 3, wherein the preset codebook comprises a codebook corresponding to an error vector having an error value between a circle outline and an approximated polygon. . 제3항에 있어서, 상기 기설정 코드북은 : 원 윤곽선과 근사화된 다각형과의 오차값을 성분으로한 오차 벡터에 상응하는 코드북으로 구성하되, 직선 길이의 분포에 따라 차원이 다른 다수개의 코드북으로 구성함을 특징으로 하는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치.The codebook of claim 3, wherein the preset codebook comprises: a codebook corresponding to an error vector having an error value between a circle outline and an approximated polygon, and having a plurality of codebooks having different dimensions according to a distribution of straight lines. An apparatus for encoding errors due to polygonal approximation of contour images. 제5항에 있어서, 상기 양자화부(413)는 : 상기 기 설정 코드북이 직선 길이의 분포에 따라 차원이 다른 다수개의 코드북으로 구성될 경우 직선 길이의 길이에 따라 각기 다른 양자화 레벨로 양자화하도록 구성함을 특징으로 하는 윤곽선 영상의 다각형 근사화로 인한 오차의 부호화 장치.The method according to claim 5, wherein the quantization unit 413 is configured to quantize different quantization levels according to lengths of linear lengths when the preset codebooks are composed of a plurality of codebooks having different dimensions according to the distribution of linear lengths. An apparatus for encoding errors due to polygonal approximation of contour images.
KR1019950008179A 1995-04-08 1995-04-08 Apparatus for encoding difference vectors generated by polygonal approximation of a contour image KR0181056B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950008179A KR0181056B1 (en) 1995-04-08 1995-04-08 Apparatus for encoding difference vectors generated by polygonal approximation of a contour image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950008179A KR0181056B1 (en) 1995-04-08 1995-04-08 Apparatus for encoding difference vectors generated by polygonal approximation of a contour image

Publications (1)

Publication Number Publication Date
KR0181056B1 true KR0181056B1 (en) 1999-05-01

Family

ID=19411782

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950008179A KR0181056B1 (en) 1995-04-08 1995-04-08 Apparatus for encoding difference vectors generated by polygonal approximation of a contour image

Country Status (1)

Country Link
KR (1) KR0181056B1 (en)

Similar Documents

Publication Publication Date Title
US11375208B2 (en) Trisoup node size per slice
US5025482A (en) Image transformation coding device with adaptive quantization characteristic selection
US5608458A (en) Method and apparatus for a region-based approach to coding a sequence of video images
US5778192A (en) Method and device for optimal bit allocation between different sources of information in digital video compression
JP3013698B2 (en) Vector quantization encoding device and decoding device
EP0450937B1 (en) Geometric vector quantization
KR970011859B1 (en) Encoding method and device for using fuzzy control
JP4573438B2 (en) Video coding
US5521643A (en) Adaptively coding method and apparatus utilizing variation in quantization step size
EP0527446B1 (en) Motion compensation using minimum bits per motion block as criterion for block matching
KR0181075B1 (en) Adapted borderline coding method
EP0734168A2 (en) Apparatus for encoding a moving image signal having a still object
CN114708343A (en) Three-dimensional point cloud coding and decoding method, compression method and device based on map dictionary learning
US5896467A (en) Method and apparatus for encoding a contour image of an object in a video signal
KR0181056B1 (en) Apparatus for encoding difference vectors generated by polygonal approximation of a contour image
Bage Interframe predictive coding of images using hybrid vector quantization
CN100429946C (en) Method and apparatus for processing digital motion picture
KR100439578B1 (en) 3 dimensional mesh sequence encoding apparatus based on vertex-wise motion vector prediction and method thereof
Rizvi et al. Finite-state residual vector quantization using a tree-structured competitive neural network
US5915045A (en) Method and apparatus for encoding a contour of an object by adapting a vertex coding technique
KR100195700B1 (en) Apparatus and method of detecting feature points in a contour encoder
KR100316411B1 (en) Apparatus for acquiring motion vectors of control points by classified vector quantization in control grid interpolation coder
Eryurtlu et al. Very low-bit-rate segmentation-based video coding using contour and texture prediction
KR100195699B1 (en) A contour encoder
Lai et al. Coding of image sequences using variable size block matching and vector quantization with gray-level segmentation and background memory

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20111201

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20121203

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee