KR100208389B1 - Method and apparatus for uniformly scaling adigital image - Google Patents

Method and apparatus for uniformly scaling adigital image Download PDF

Info

Publication number
KR100208389B1
KR100208389B1 KR1019960030433A KR19960030433A KR100208389B1 KR 100208389 B1 KR100208389 B1 KR 100208389B1 KR 1019960030433 A KR1019960030433 A KR 1019960030433A KR 19960030433 A KR19960030433 A KR 19960030433A KR 100208389 B1 KR100208389 B1 KR 100208389B1
Authority
KR
South Korea
Prior art keywords
original
line
sum
memory
data
Prior art date
Application number
KR1019960030433A
Other languages
Korean (ko)
Other versions
KR970009341A (en
Inventor
슈유 롱-퓨
챵 펭-링
Original Assignee
딩 얀 양
윈본드 일렉트로닉스 코오포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 딩 얀 양, 윈본드 일렉트로닉스 코오포레이션 filed Critical 딩 얀 양
Priority to KR1019960030433A priority Critical patent/KR100208389B1/en
Publication of KR970009341A publication Critical patent/KR970009341A/en
Application granted granted Critical
Publication of KR100208389B1 publication Critical patent/KR100208389B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation

Abstract

본 발명은 (M)개의 연속하는 원하는 영상 데이터를 가지고 균일하게 스케일된 원하는 디지탈 영상을 얻기 위하여, (N)개의 연속하는 원 영상 데이터를 가진 원 디지탈 영상을 처리하는 데 사용되는 장치이다.The present invention is an apparatus used to process a raw digital image with (N) consecutive original image data in order to obtain a uniformly scaled desired digital image with (M) consecutive desired image data.

(M)이 (N)보다 클 경우, (M-N)을 (N-1)로 나누어 나머지(S)를 발생하고 (s)가 1 에서 (S) 사이의 범위에서 변할 때 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소 수라 하면, (n)번째와 (n+1)번째의 원 영상 데이터 사이에 삽입된 나머지 보간 영상 데이터를 생성하기 위해 (n)번째와 (n+1)번째의 원 영상 데이터의 선형 보간이 수행된다. 그리고 (M)이 (N)보다 작을 경우, 어드레스 생성기(37)는 메모리(2)를 제어하여 선택된 원 영상 데이터를 출력한다. (N)을 (M)으로 나누어 발생하는 몫을 (V)라 할 때, 메모리(2)에 의해 출력된 이어지는 원 영상 데이터는 바로 직전에 출력된 원 영상 데이터로 부터 (V) 또는 (V+1) 만큼 오프셋된다.If (M) is greater than (N), divide (MN) by (N-1) to produce the remainder (S), and (n) becomes (n) when (s) varies from 1 to (S) A minimum number that satisfies +1) * (S) 1 (s) * (N) is used to generate the remaining interpolation image data inserted between the (n) th and (n + 1) th original image data. Linear interpolation of the n) th and (n + 1) th original image data is performed. When (M) is smaller than (N), the address generator 37 controls the memory 2 to output the selected original image data. When the quotient generated by dividing (N) by (M) is (V), the subsequent original image data output by the memory 2 is (V) or (V +) from the immediately preceding original image data output. Offset by 1).

Description

디지탈 영상을 균일하게 스케일링하는 장치 및 방법Apparatus and method for uniformly scaling digital images

본 발명은 영상 처리 장치 및 방법에 관한 것으로서, 특히 디지탈 영상을 실시간으로 2차원 균일 스케일링(scaling)할 수 있는 장치 및 방법에 관한 것이다.The present invention relates to an image processing apparatus and method, and more particularly, to an apparatus and method capable of two-dimensional uniform scaling of a digital image in real time.

디지탈 영상을 결합하는 능력은 컴퓨터의 멀티미디어 응용에 있어서 매우 중요하다. 일반적으로 디지탈 영상은 다른 디지탈 영상과 결합되기 전에 전처리 과정을 거친다. 전처리 과정은 보통 디지탈 영상의 크기를 증가시키거나(이하 스케일링 업이라 함), 감소시키거나(이하 스케일링 다운이라 함), 디지탈 영상의 선택된 부분만 잘라내거나, 디지탈 영상의 선택된 부분을 다른 위치로 이동시키는 등의 방법에 의해 수행된다.The ability to combine digital images is very important for multimedia applications in computers. In general, digital images are preprocessed before being combined with other digital images. The preprocessing process usually increases the size of the digital image (hereinafter referred to as scaling up), reduces it (hereinafter referred to as scaling down), crops only selected portions of the digital image, or moves the selected portion of the digital image to another location. It is carried out by a method such as.

디지탈 영상의 스케일링 업(Scaling Up)과 스케일링 다운(Scaling Down)은 보통 특수하게 프로그램된 컴퓨터에 의해 수행된다. 스케일링 업은 디지탈 영상의 매 두 개의 주사선 마다 선형 보간을 수행하여 두 개의 주사선 사이에 삽입되는 적어도 한 개의 보간된 주사선을 얻고, 또한 각 주사선의 매 두개의 픽셀 데이터 마다 선형 보간을 수행하여 두 개의 픽셀 데이터 사이에 삽입되는 적어도 한 개의 보간된 픽셀 데이터를 얻음으로써 이루어진다.Scaling up and scaling down of digital images are usually performed by specially programmed computers. Scaling-up performs linear interpolation every two scan lines of the digital image to obtain at least one interpolated scan line inserted between the two scan lines, and also performs linear interpolation for every two pixel data of each scan line to give two pixel data. By obtaining at least one interpolated pixel data inserted in between.

그리고 스케일링 다운은 디지탈 영상의 주사선의 일부를 삭제하고, 또한 삭제되지 않고 남아있는 각 주사선의 픽셀 데이터의 일부를 삭제함으로써 이루어진다.Scaling down is performed by deleting part of the scan lines of the digital image, and also deleting part of the pixel data of each scan line which remains undeleted.

디지탈 영상의 스케일링 업에 있어서, 컴퓨터에 의해 원 영상 데이터의 선형 보간은 상대적으로 처리속도가 느리다. 따라서 이를 해결하기 위해 여러가지의 전용 하드웨어 장치가 개발되어, 디지탈 영상의 실시간 스케일링 업을 가능하게 하고 있다.In scaling up digital images, linear interpolation of original image data by a computer is relatively slow. Therefore, in order to solve this problem, various dedicated hardware devices have been developed to enable real-time scaling up of digital images.

그러나 대부분의 전용 하드웨어 장치들은 제한된 범위에서 디지탈 영상을 스케일링 업만 할 수 있다. (N) 개의 주사선을 가진 디지탈 영상을 스케일링 업 할 때, 균일성을 유지하기 위해 원 디지탈 영상의 매 두 개의 원 주사선 사이 마다 서로 같은 수의 보간된 주사선을 삽입하기 위해서는, 보간되는 총 주사선 수는 (N-1)개의 배수가 되어야 한다. 그리고 (N')개의 픽셀 데이터를 가진 주사선을 스케일링 업 할 때도 위와 마찬가지이다.However, most dedicated hardware devices can only scale up digital images in a limited range. When scaling up a digital image with (N) scan lines, in order to insert the same number of interpolated scan lines between every two original scan lines of the original digital image to maintain uniformity, the total number of interpolated scan lines is It should be a multiple of (N-1) pieces. The same applies to scaling up a scan line having (N ') pixel data.

현재, 영상을 가변적으로 확대하고 축소하는 디지털 영상의 2차원 스케일링은 특수한 그래픽 프로세서를 사용하거나 전용 하드웨어 장치를 사용함으로써 가능하다. 처음에, 원래의 영상은 프레임 메모리에 저장된다. 이 때 상기 원 영상은 첫 번째 차원에서 스케일링되고, 그 결과로 스케일링된 일차원 영상은 프레임 메모리에 저장된다. 그리고 나서 상기 스케일링된 영상은 두 번째 차원에서 스케일링되고, 그 결과로 스케일링된 이차원 영상은 컴퓨터 디스플레이 장치 또는 프린터와 같은 출력장치로 전달되기 전에 프레임 메모리에 저장된다. 종래의 스케일링 방법들은 상대적으로 큰 메모리를 요구하므로 비용면에서 효율적이지 못하다. 특히 큰 비율로 확대를 할 경우 더욱 그러하다. 게다가, 종래의 스케일링 방법은 많은 처리 단계를 거쳐야 하고, 따라서 영상을 두 번째 차원에서 스케일링하기 전에 일차원으로 스케일링된 영상을 프레임 메모리에 저장해야 하며, 이차원으로 스케일링된 영상을 출력장치로 제공하기 전에 먼저 프레임 메모리에 상기 이차원으로 스케일링된 영상을 저장해야 하기 때문에 상대적으로 효율성이 떨어진다. 따라서, 종래의 스케일링 방법은 생(live) 비디오 응용분야에서 사용하기에는 적당하지 않다.Currently, two-dimensional scaling of digital images to variably enlarge and reduce the image is possible by using a special graphics processor or by using a dedicated hardware device. Initially, the original image is stored in the frame memory. At this time, the original image is scaled in the first dimension, and the scaled one-dimensional image is stored in the frame memory. The scaled image is then scaled in a second dimension, and as a result the scaled two-dimensional image is stored in frame memory before being transferred to an output device such as a computer display device or a printer. Conventional scaling methods require relatively large memory and are therefore not cost effective. This is especially true if you zoom in at a large rate. In addition, conventional scaling methods require a number of processing steps, and therefore, before scaling an image in a second dimension, the scaled image in one dimension must be stored in the frame memory, and before a two-dimensional scaled image is provided to the output device. Since the two-dimensional scaled image must be stored in a frame memory, the efficiency is relatively low. Thus, conventional scaling methods are not suitable for use in live video applications.

본 발명의 목적은 디지털 영상을 실시간으로 이차원 균일 스케일링 가능하게 하는 장치 및 방법을 제공함에 있다.An object of the present invention is to provide an apparatus and method for enabling two-dimensional uniform scaling of a digital image in real time.

좀 더 자세하게 말하면, 본 발명의 목적은 특히 생(live) 비디오 응용분야에서 사용하기에 적합한 저렴하고 매우 효율적인 스케일링 장치 및 방법을 제공한다.More specifically, it is an object of the present invention to provide an inexpensive and highly efficient scaling apparatus and method that is particularly suitable for use in live video applications.

도 1은 본 발명에 따른 스케일링 장치의 바람직한 실시예의 개략적인 회로 블럭도이다.1 is a schematic circuit block diagram of a preferred embodiment of a scaling apparatus according to the present invention.

도 2는 바람직한 실시예의 이원선형 가산기의 개략적인 회로 블럭도이다.2 is a schematic circuit block diagram of a binary linear adder of a preferred embodiment.

도 3은 바람직한 실시예의 수직 스케일링 제어기의 개략적인 회로 블럭도이다.3 is a schematic circuit block diagram of a vertical scaling controller of the preferred embodiment.

도 4는 수직 스케일링 제어기의 나머지 분산기의 개략적인 회로 블럭도이다.4 is a schematic circuit block diagram of the remaining disperser of the vertical scaling controller.

도 5는 수직 스케일링 제어기의 직렬 알파 생성기의 개략적인 회로 블럭도이다.5 is a schematic circuit block diagram of a serial alpha generator of a vertical scaling controller.

도 6은 수직 스케일링 제어기의 어드레스 생성기의 개략적인 회로 블럭도이다.6 is a schematic circuit block diagram of an address generator of a vertical scaling controller.

도 7은 N=5 이고 |$N=2 일 때 수직 스케일링부의 수직 스케일링 업 동작을 설명하는 타이밍도이다.7 is a timing diagram illustrating the vertical scaling up operation of the vertical scaling unit when N = 5 and | $ N = 2.

도 8은 N=5 이고 |$N=6 일 때 수직 스케일링부의 수직 스케일링 업 동작을 설명하는 타이밍도이다.8 is a timing diagram illustrating the vertical scaling up operation of the vertical scaling unit when N = 5 and | $ N = 6.

도 9는 N=5 이고 |$N=2 일 때 수직 스케일링부의 수직 스케일링 다운 동작을 설명하는 타이밍도이다.9 is a timing diagram illustrating a vertical scaling down operation of the vertical scaling unit when N = 5 and | $ N = 2.

도 10은 N'=5 이고 |$N'=2 일 때 바람직한 실시예의 수평 스케일링부의 수평 스케일링 업 동작을 설명하는 타이밍도이다.Fig. 10 is a timing diagram illustrating the horizontal scaling up operation of the horizontal scaling unit in the preferred embodiment when N '= 5 and | N' = 2.

도 11은 N'=5 이고 |$N'=2 일 때 수평 스케일링부의 수평 스케일링 다운 동작을 설명하는 타이밍도이다.11 is a timing diagram illustrating a horizontal scaling down operation of the horizontal scaling unit when N '= 5 and | $ N' = 2.

본 발명에 따른, 장치는 원(原) 디지털 영상을 처리하여 균일하게 스케일링된 원하는 디지털 영상을 획득할 수 있게 한다. 상기 장치는 원래의 디지털 영상을 저장하는 프레임 메모리를 포함한다. 원(original) 디지털 영상은 (N)개의 연속되는 원(original) 주사선 및 원 주사선 당 (N')개의 연속하는 원 픽셀 데이터를 가진다. 상기 장치는 원 디지털 영상을 수직방향으로 스케일링하여 (M)개의 연속하는 원하는 주사선을 얻기위한 수직 스케일링부 및 상기 수직 스케일링부로부터 원하는 주사선을 수평방향으로 스케일링하여 주사선당 (M')개의 연속하는 원하는 픽셀 데이터를 얻기위한 수평 스케일링부를 더 포함한다.In accordance with the present invention, an apparatus may process a raw digital image to obtain a uniformly scaled desired digital image. The device includes a frame memory for storing the original digital image. The original digital image has (N) consecutive original scan lines and (N ') continuous original pixel data per original scan line. The apparatus comprises a vertical scaling unit for scaling the original digital image in the vertical direction to obtain (M) continuous desired scan lines and (M ′) continuous desired per scan line by horizontally scaling the desired scanning line from the vertical scaling unit. The apparatus further includes a horizontal scaling unit for obtaining pixel data.

(M)이 (N)보다 클 때 수직스케일링부가 원 디지털 영상을 스케일링하기 위해, 상기 수직 스케일링부는In order for the vertical scaling unit to scale the original digital image when (M) is greater than (N), the vertical scaling unit

프레임 메모리로부터 (n+1)번째 원 주사선을 저장하기 위한, 상기 프레임 메모리에 연결된 라인 메모리;A line memory coupled to the frame memory for storing an (n + 1) th original scan line from a frame memory;

(n)번째 원 주사선을 저장하기 위한, 상기 라인 메모리에 연결된 라인 버퍼;a line buffer coupled to said line memory for storing an (n) th original scan line;

상기 라인 메모리와 라인버퍼에 연결된 제1선형 보간기; 및A first linear interpolator connected to the line memory and a line buffer; And

상기 프레임 메모리, 라인 버퍼 및 제1선형 보간기에 연결된 수직 스케일링 제어기를 포함한다.And a vertical scaling controller coupled to the frame memory, line buffer, and first linear interpolator.

상기 수직 스케일링 제어기는 원 주사선의 라인 메모리 및 라인 버퍼로의 저장을 제어하고, 더구나 (M-N)을 (N-1)로 나눈 나머지가 (S) 이고, 1 부터 (S) 까지의 범위에 속하는 (s)에 대해 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소수일 때, 상기 라인메모리와 라인버퍼로부터 (n)번째와 (n+1)번째의 원 주사선을 선형보간하여 그 사이에 삽입된 잉여 보간된 주사선을 생성하도록 상기 제1선형보간기를 제어한다.The vertical scaling controller controls the storage of the original scan line into the line memory and the line buffer, and furthermore, the remainder of dividing (MN) by (N-1) is (S), which is in the range from 1 to (S) ( (n) and (n + 1) th from the line memory and linebuffer when (n) is the minimum number satisfying (n + 1) * (S) 1 (s) * (N) for s) The first linear interpolator is controlled to linearly interpolate the original scan line of to generate an excess interpolated scan line inserted therebetween.

(M)이 (N)보다 작을 때 수직스케일링부가 원 디지털 영상을 스케일링하기 위해, 수직 스케일링 제어기는In order for the vertical scaling unit to scale the original digital image when (M) is less than (N), the vertical scaling controller

상기 프레임 메모리를 제어하여 상기 라인메모리에 저장하기 위해 첫번째 원 주사선을 출력하는, 상기 프레임 메모리에 연결된 제1어드레스 생성기;A first address generator coupled to said frame memory for controlling said frame memory and outputting a first original scan line for storage in said line memory;

(N)을 (M)으로 나누어 발생하는 나머지 (U)를 생성하기 위한 제1생성수단;First generating means for generating a remainder (U) generated by dividing (N) by (M);

제1데이터 레지스터;A first data register;

상기 제1생성수단과 상기 제1데이터 레지스터에 연결되어, 상기 (U)와 상기 제1데이터 레지스터에 저장된 숫자를 더하여 합을 구하는 제1가산기 수단; 및First adder means connected to said first generating means and said first data register to obtain a sum by adding the numbers stored in said (U) and said first data register; And

상기 제1가산기수단, 상기 제1어드레스생성기 및 상기 데이터 레지스터에 연결되어, 상기 합을 (M)과 비교하고, 상기 제1어드레스 생성기를 활성화시켜, 상기 프레임메모리를 제어하여 상기 라인메모리에 저장하기 위한, (N)을 (M)으로 나누어 몫을 (V)라 할 때 상기 프레임 메모리에 의해 출력된 직전의 원 주사선으로 부터 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 오프셋(offset)된 또 다른 원 주사선을 출력하는 제1계산수단을 포함한다.Connected to the first adder means, the first address generator and the data register, comparing the sum with (M), activating the first address generator, controlling the frame memory to store in the line memory (N) is divided by (M) and the quotient is (V), the sum is (M) by (V) when the sum is less than (M) from the previous original scanning line output by the frame memory. And first calculating means for outputting another original scanning line offset by (V + 1) when at least equal to (V + 1).

상기 제1계산수단은 합이 적어도 (M)과 같을 때는 상기 (M)과 합의 차를 제1데이터 레지스터에 저장하고, 합이 (M)보다 작을 때는 상기 합을 제1데이터 레지스터에 저장한다.The first calculating means stores a difference in agreement with (M) in the first data register when the sum is at least equal to (M), and stores the sum in the first data register when the sum is less than (M).

상기 수평 스케일링부가 (M')이 (N')보다 클 때 상기 수직 스케일링부로부터 원하는 주사선들을 스케일링하기 위해, 상기 수평 스케일링부는In order to scale desired scan lines from the vertical scaling portion when the horizontal scaling portion M 'is greater than (N'), the horizontal scaling portion

상기 제1선형보간기에 연결되어, 상기 제1선형보간기로부터 한 주사선의 (n'+1)번째 픽셀 데이터를 저장하는 도트 레지스터;A dot register coupled to the first linear interpolator to store (n '+ 1) th pixel data of one scan line from the first linear interpolator;

상기 도트 레지스터에 연결되어, 상기 주사선의 (n')번째 픽셀 데이터를 저장하는 도트 버퍼;A dot buffer connected to the dot register to store (n ') th pixel data of the scan line;

상기 도트 레지스터와 상기 도트버퍼에 연결되어 있는 제2선형 보간기; 및A second linear interpolator connected to the dot register and the dot buffer; And

상기 라인 메모리, 라인버퍼, 도트버퍼 및 상기 제2선형 보간기에 연결되어 있는 수평 스케일링 제어기를 포함한다. 상기 수평 스케일링 제어기는 픽셀데이터의 도트 레지스터, 도트버퍼로의 저장을 제어하고, 더구나 (M'-N')을 (N'-1)로 나눈 나머지가 (S') 이고, 1 부터 (S') 까지의 범위에 속하는 (s')에 대해 (n')이 (n'+1)*(S') 1 (s')*(N')을 만족하는 최소수일 때, 상기 도트레지스터와 도트버퍼로부터 (n')번째와 (n'+1)번째의 픽셀 데이터의 선형보간을 수행하여 상기 (n')번째와 (n'+1)번째의 픽셀 데이터 사이에 삽입된 잉여 보간된 픽셀데이터를 생성하도록 상기 제2선형보간기를 제어한다.And a horizontal scaling controller coupled to the line memory, line buffer, dot buffer, and the second linear interpolator. The horizontal scaling controller controls the storage of the pixel data in the dot register and the dot buffer, and furthermore, the remainder obtained by dividing (M'-N ') by (N'-1) is (S'), from 1 to (S '). The dot register and dot when (n ') is the minimum number satisfying (n' + 1) * (S ') 1 (s') * (N ') for (s') in the range up to Redundant interpolated pixel data inserted between the (n ') and (n' + 1) th pixel data by performing linear interpolation of the (n ') th and (n' + 1) th pixel data from the buffer The second linear interpolator is controlled to generate a.

(M')이 (N')보다 작을 때 수평스케일링부가 상기 수직스케일링부로부터 원하는 주사선을 스케일링하기 위해, 상기 수평 스케일링 제어기는In order for the horizontal scaling portion to scale the desired scan line from the vertical scaling portion when (M ') is smaller than (N'), the horizontal scaling controller

상기 라인 메모리에 연결되어, 상기 라인 메모리를 제어하여 하나의 원 주사선의 첫 번째 원 픽셀데이터를 출력하는 제2어드레스 생성기;A second address generator connected to the line memory and configured to control the line memory to output first original pixel data of one original scan line;

(N')을 (M')으로 나누어 발생하는 나머지 (U')를 생성하기 위한 제2생성수단;Second generating means for generating a remainder (U ') generated by dividing (N') by (M ');

제2데이터 레지스터;A second data register;

상기 제2생성수단과 상기 제2데이터 레지스터에 연결되어, 상기 (U')와 상기 제2데이터 레지스터에 저장된 숫자를 더하여 합을 구하는 제2가산기 수단; 및Second adder means connected to said second generating means and said second data register to obtain a sum by adding the number stored in said U 'and said second data register; And

상기 제2가산기수단, 상기 제2어드레스생성기 및 상기 제2데이터 레지스터에 연결되어, 상기 합을 (M')과 비교하고, 상기 제2어드레스 생성기를 활성화시켜, 상기 라인메모리를 제어하여, (N')을 (M')으로 나누어 몫을 (V')라 할 때 상기 라인 메모리에 의해 출력된 직전의 원 픽셀 데이터로부터 합이 (M')보다 작을 때는 (V')만큼, 합이 (M')과 적어도 같을 때는 (V'+1)만큼 오프셋(offset)된, 상기 하나의 원 주사선의 또 다른 원 픽셀 데이터를 출력하는 제2계산수단을 포함한다. 상기 제2계산수단은 합이 적어도 (M')과 같을 때는 상기 (M')과 합의 차를 제2데이터 레지스터에 저장하고, 합이 (M')보다 작을 때는 상기 합을 제2데이터 레지스터에 저장한다.Connected to the second adder means, the second address generator and the second data register, compare the sum with M ', activate the second address generator to control the line memory, and (N When ') is divided by (M') and the quotient is (V '), when the sum is less than (M') from the previous original pixel data output by the line memory, the sum is (M '). And second calculating means for outputting another original pixel data of the one original scanning line, offset by (V '+ 1) when at least equal to'). The second calculating means stores a difference in agreement with (M ') in a second data register when the sum is at least equal to (M'), and stores the sum in the second data register when the sum is less than (M '). Save it.

수평 스케일링부의 상기 제2선형보간기의 출력은 출력장치로 직접 제공될 수 있다.The output of the second linear interpolator of the horizontal scaling unit may be directly provided to the output device.

본 발명의 한 측면에 따르면, 원 디지탈 영상이 (N)개의 연속하는 원 영상 데이타를 가지고 있고, 원하는 디지탈 영상은 (M)개의 연속하는 원하는 영상 데이타를 가지고 있으며, (M)이 (N)보다 클 때, 균일하게 스케일된 원하는 디지탈 영상을 얻기 위한 원 디지탈 영상을 처리하는 방법은According to one aspect of the invention, the original digital image has (N) consecutive original image data, the desired digital image has (M) consecutive desired image data, and (M) is greater than (N) When large, the method of processing the original digital image to obtain a uniformly scaled desired digital image is

선형 보간기를 제공하는 단계; 및Providing a linear interpolator; And

(M-N)을 (N-1)로 나누어 나머지를 (S)라 하고, (s)가 1 부터 (S) 까지의 범위에서 변할 때 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소 수라 하면, 원 영상 데이타의 (n)번째와 (n+1)번째 영상 데이타의 선형 보간을 수행하여, (n)번째와 (n+1)번째 원 영상 데이타 사이에 삽입된 잉여 보간 영상 데이타를 생성하기 위해 선형 보간기를 제어하는 단계로 이루어 진다.Dividing (MN) by (N-1), the remainder is called (S), and when (s) varies from 1 to (S), (n) is (n + 1) * (S) 1 (s If the minimum number satisfies) * (N), linear interpolation of the (n) th and (n + 1) th image data of the original image data is performed, and the (n) th and (n + 1) th original image data is performed. Controlling a linear interpolator to generate redundant interpolation image data interposed therebetween.

본 발명의 다른 측면에 따르면, 원 디지탈 영상이 (N)개의 연속하는 원 영상 데이타를 가지고 있고, 원하는 디지탈 영상은 (M)개의 연속하는 원하는 영상 데이타를 가지고 있으며, (M)이 (N)보다 작을 때, 균일하게 스케일된 원하는 디지탈 영상을 얻기 위한 원 디지탈 영상을 처리하는 방법은According to another aspect of the invention, the original digital image has (N) consecutive original image data, the desired digital image has (M) consecutive desired image data, and (M) is greater than (N) When small, the method of processing the original digital image to obtain a uniformly scaled desired digital image

(I-1) 원 영상 데이타를 메모리부에 저장하는 단계;(I-1) storing original image data in a memory unit;

(I-2) 메모리부를 제어하여 원 영상 데이타 중 첫번째 데이타를 출력시키는 어드레스 생성기를 제공하는 단계;(I-2) providing an address generator for controlling the memory unit to output the first data of the original image data;

(I-3) (N)을 (M)으로 나눈 나머지 (U)를 데이타 레지스터에 저장하는 단계;(I-3) storing the remainder (U) by dividing (N) by (M) in a data register;

(I-4) (U)와 데이타 레지스터에 저장되어 있는 수를 더하여 합을 구하는 단계;(I-4) adding up (U) and the number stored in the data register to obtain a sum;

(I-5) 합과 (M)을 비교하는 단계;(I-5) comparing the sum with (M);

(I-6) (N)을 (M)으로 나누어 몫을 (V)라 할 때, 메모리부를 제어하여 바로 전에 메모리 부에 의해 출력된 원 영상 데이타로 부터 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 차감된 또 다른 영상 데이타를 출력하기 위해 어드레스 생성기를 활성화시키는 단계;(I-6) When (N) is divided by (M) and the quotient is (V), when the sum is less than (M) from the original image data output by the memory section immediately before controlling the memory section, Activating the address generator to output another image data subtracted by (V + 1) when the sum is at least equal to (M);

(I-7) 합이 (M)과 적어도 같을 때는 합에서 (M)을 빼서 데이타 레지스터에 생성된 차를 저장하고, 합이 (M) 보다 작을 때는 합을 데이타 레지스터에 저장하는 단계; 및(I-7) storing the difference generated in the data register by subtracting (M) from the sum when the sum is at least equal to (M), and storing the sum in the data register when the sum is less than (M); And

(I-8) (M)개의 원 영상 데이타가 메모리부에 의해 출력될 때 까지 상기 (I-4)단계에서 (I-7)단계를 반복하는 단계로 이루어진다.(I-8) Steps (I-4) to (I-7) are repeated until (M) original image data is outputted by the memory unit.

본 발명의 또 다른 측면에 따르면, 원 디지탈 영상이 (N)개의 연속하는 원 영상 데이타를 가지고 있고, 원하는 디지탈 영상은 (M)개의 연속하는 원하는 영상 데이타를 가지고 있으며, (M)이 (N)보다 클 때, 균일하게 스케일된 원하는 디지탈 영상을 얻기 위한 원 디지탈 영상을 처리하는 장치는According to another aspect of the invention, the original digital image has (N) consecutive original image data, the desired digital image has (M) consecutive desired image data, and (M) (N) When larger, the apparatus for processing the original digital image to obtain a uniformly scaled desired digital image

선형 보간기; 및Linear interpolator; And

(M-N)을 (N-1)로 나누어 나머지를 (S)라 하고, (s)가 1 부터 (S) 까지의 범위에서 변할 때 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소 수라 하면, 선형 보간기를 제어하여 원 영상 데이타의 (n)번째와 (n+1)번째 영상 데이타의 선형 보간을 수행하여, (n)번째와 (n+1)번째 원 영상 데이타 사이에 삽입된 잉여 보간 영상 데이타를 생성하기 위한, 선형 보간기에 연결된 제어기 수단으로 이루어진다.Dividing (MN) by (N-1), the remainder is called (S), and when (s) varies from 1 to (S), (n) is (n + 1) * (S) 1 (s If the minimum number satisfies) * (N), the linear interpolator is controlled to perform linear interpolation of the (n) th and (n + 1) th image data of the original image data, and the (n) th and (n + 1) Control means connected to a linear interpolator for generating redundant interpolation image data inserted between the < RTI ID = 0.0 > th < / RTI > original image data.

본 발명의 또 다른 측면에 의하면, 원 디지탈 영상이 (N)개의 연속하는 원 영상 데이타를 가지고 있고, 원하는 디지탈 영상은 (M)개의 연속하는 원하는 영상 데이타를 가지고 있으며, (M)이 (N)보다 작을 때, 균일하게 스케일된 원하는 디지탈 영상을 얻기 위한 원 디지탈 영상을 처리하는 장치는According to another aspect of the invention, the original digital image has (N) consecutive original image data, the desired digital image has (M) consecutive desired image data, and (M) (N) When smaller, the apparatus for processing the original digital image to obtain a uniformly scaled desired digital image

원 영상데이타를 저장하는 메모리부;A memory unit for storing original image data;

상기 메모리부에 연결되어, 메모리 유니트를 제어하여 원 영상 데이타의 첫번째 데이타를 출력하는 어드레스 생성기;An address generator connected to the memory unit for controlling a memory unit to output first data of original image data;

(N)에 (M)을 나누어 발생하는 나머지 (U)를 생성하기 위한 생성수단;Generating means for generating a remainder (U) generated by dividing (M) by (N);

데이타 레지스터;Data registers;

상기 생성수단과 상기 데이타 레지스터에 연결되어, (U)와 데이타 레지스터에 저장된 숫자를 더하여 합을 구하는 가산기 수단; 및An adder means connected to the generating means and the data register to add a sum of the numbers stored in the data register and (U); And

상기 가산기 수단과 상기 어드레스 생성기와 상기 데이타 레지스터에 연결되어, 합과 (M)과 비교하고, (N)을 (M)으로 나누어 몫을 (V)라 할 때 메모리부를 제어하여 바로 전에 메모리 부에 의해 출력된 원 영상 데이타로 부터 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 차감된 또 다른 영상 데이타를 출력하기 위해 어드레스 생성기를 활성화시키는 계산 수단; 합이 적어도 (M)과 같을 때는 (M) 값과 데이타 레지스터의 합에 대한 차를 저장하고, 합이 (M)보다 작을 때는 데이타 레지스터에 합을 저장하는 계산수단으로 이루어진다.Connected to the adder means and the address generator and the data register, comparing the sum with (M), dividing (N) by (M), and controlling the memory portion when the quotient is (V). Activate the address generator to output another image data subtracted by (V) when the sum is less than (M) and (V + 1) when the sum is at least equal to (M) from the original image data output by the Calculation means for causing; When the sum is at least equal to (M), the difference between the value of (M) and the sum of the data register is stored, and when the sum is less than (M), the calculation means stores the sum in the data register.

이하에서 첨부한 도면을 참조하여 바람직한 실시예를 들어 본 발명을 상세히 설명하고 본 발명의 특징과 잇점을 나타내고자 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and features and advantages of the present invention will be described.

도 1에 도시된 바와 같이, 본 발명에 따른 디지탈 영상을 균일하게 스케일링하는 장치의 바람직한 실시예는 수직 스케일링부와 수평 스케일링부로 구성되어 있다. 수직 스케일링부는 수직 방향으로 디지탈 영상을 스케일링 업하거나 스케일링 다운할 수 있으며, 라인 메모리(3), 라인 버퍼(4), 이원선형 가산기(5), 수직 스케일링 제어기(6)를 포함하고 있다. 수평 스케일링부는 수평 방향으로 디지탈 영상을 스케일링 업하거나 스케일링 다운 할 수 있으며, 도트 레지스트(7), 도트 버퍼(8), 이원선형 가산기(9), 수평 스케일링 제어기(10)를 포함하고 있다.As shown in FIG. 1, a preferred embodiment of the apparatus for uniformly scaling a digital image according to the present invention includes a vertical scaling unit and a horizontal scaling unit. The vertical scaling unit may scale up or scale down the digital image in the vertical direction and includes a line memory 3, a line buffer 4, a binary linear adder 5, and a vertical scaling controller 6. The horizontal scaling unit may scale up or scale down the digital image in the horizontal direction, and includes a dot resist 7, a dot buffer 8, a binary linear adder 9, and a horizontal scaling controller 10.

실제 사용에 있어서, 장치의 바람직한 실시예를 통해 처리되는 디지탈 영상은 먼저 프레임 메모리(2)에 저장된다. 디지탈 영상은 영상 디코더 또는 영상 포착 시스템으로 부터 나온다. 수직 스케일링 제어기(6)는 프레임 메모리(2)를 제어하여 디지탈 영상의 선택된 주사선을 라인 메모리(3)에 공급한다. 또한 수직 스케일링 제어기(6)는 라인 버퍼(4)를 제어하여 라인 메모리(3)에서 출력되는 이전의 주사선을 라인 버퍼(4)에 저장한다. 이원선형 가산기(5)는 라인 메모리(3)와 라인버퍼(4)로 부터 주사선 데이터를 받아 수직 스케일링 제어기(6)로 부터 한쌍의 가중계수 |A, 1-|A 에 따라 이원 보간을 행한다.In actual use, the digital image processed through the preferred embodiment of the apparatus is first stored in the frame memory 2. Digital video comes from a video decoder or video capture system. The vertical scaling controller 6 controls the frame memory 2 to supply the selected scan lines of the digital image to the line memory 3. The vertical scaling controller 6 also controls the line buffer 4 to store the previous scan line output from the line memory 3 in the line buffer 4. The binary linear adder 5 receives the scan line data from the line memory 3 and the line buffer 4 and performs binary interpolation from the vertical scaling controller 6 according to a pair of weighting factors | A and 1- | A.

이원선형 가산기(5)의 출력은 도트레지스터(7)에 입력된다. 수평 스케일링 제어기(10)는 도프버퍼(8)을 제어하여 도트레지스터(7)로부터 이전 픽셀 데이터를 상기 도트버퍼(8)에 저장한다. 이원선형 가산기(9)는 도트레지스터(7) 및 도트버퍼(8)로부터 픽셀데이터를 받고, 수평 스케일링 제어기(10)로 부터 한쌍의 가중계수 |A, 1-|A 에 따라 이원선형 보간을 수행한다.The output of the binary linear adder 5 is input to the do register 7. The horizontal scaling controller 10 controls the dope buffer 8 to store previous pixel data from the do register 7 into the dot buffer 8. The binary linear adder 9 receives pixel data from the dosistor 7 and the dot buffer 8, and performs binary linear interpolation from the horizontal scaling controller 10 according to a pair of weighting factors | A and 1- | A. do.

도 2는 이원선형 가산기(5)의 회로에 대한 개략적인 블럭도이다. 도 2에 도시된 바와 같이 프레임 메모리(2)에 있는 디지탈 영상의 (n)번째 주사선에 해당하는 라인 버퍼(4)에서 출력되는 주사선 데이터는 계수 1-|A로 곱해진다. 반면에 프레임 메모리(2)에 있는 디지탈 영상의 (n+1)번째 주사선에 해당하는 라인 메모리(3)로 부터 출력되는 주사선 데이터는 계수 |A로 곱해진다. 따라서 계수 |A가 0 또는 1의 정수가 아닌 분수일 때 보간된 주사선을 얻기 위해 결과치가 더해진다. 이원선형 가산기(5)의 동작은 이하에서 보다 더 상세히 기술한다.2 is a schematic block diagram of the circuit of the binary linear adder 5. As shown in Fig. 2, the scan line data output from the line buffer 4 corresponding to the (n) th scan line of the digital image in the frame memory 2 is multiplied by the coefficient 1- | A. On the other hand, the scan line data output from the line memory 3 corresponding to the (n + 1) th scan line of the digital image in the frame memory 2 is multiplied by the coefficient | A. Therefore, the result is added to obtain the interpolated scan line when the coefficient | A is a non-integer fraction of 0 or 1. The operation of the binary linear adder 5 is described in more detail below.

이원선형가산기(9)의 구조는 도 2에 도시된 상기 이원선형 가산기(5)의 구조와 유사하다. 그러나, 상기 이원선형가산기(9)에서는 이원선형 가산기(5)로 부터 주사선 데이터의 (n')번째 픽셀 데이터에 해당하는 도트버퍼(8))에서 출력되는 픽셀 데이터는 계수 1-|A로 곱해지고, 반면에 이원선형 가산기(5)로부터의 주사선 데이터의 (n'+1)번째 픽셀 데이터에 해당하는, 도프레지스터(7)로부터 출력되는 픽셀데이터는 계수 |A로 곱해진다. 따라서 도트레지스터(7)는 수직 스케일링부의 라인메모리(3)와 같은 역할을 하고, 반면에 도트버퍼(8)는 수직 스케일링부의 라인버퍼(4)와 같은 역할을 한다.The structure of the binary linear adder 9 is similar to that of the binary linear adder 5 shown in FIG. However, in the binary linear adder 9, the pixel data output from the binary linear adder 5 from the dot buffer 8 corresponding to the (n ') th pixel data of the scan line data) is multiplied by a coefficient 1- | A. On the other hand, the pixel data output from the dopistor 7, which corresponds to the (n '+ 1) th pixel data of the scan line data from the binary linear adder 5, is multiplied by the coefficient | A. Thus, the dosistor 7 serves as the line memory 3 of the vertical scaling unit, while the dot buffer 8 serves as the line buffer 4 of the vertical scaling unit.

도 3에 도시된 바와 같이, 수직 스케일링 제어기(6)는 제1레지스터(30a), 제2레지스터(30b), 제3레지스터(30c)로 이루어진 프로그램 가능한 레지스터 세트(30)를 포함하고 있는데, 상기 제1레지스터(30a)는 프레임 메모리(2)의 디지탈 영상의 (N)개의 원 주사선을 저장하기 위한 것이고, 상기 제2레지스터(30b)는 보간되거나 삭제되는 (|$N)개의 주사선을 저장하기 위한 것이고, 제3레지스터(30c)는 수직 방향으로 디지탈 영상이 스케일링 업으로 수행되는지 또는 스케일링 다운으로 수행되는지를 표시하는 INC/DEC 플래그(38)를 저장하는 레지스터이다. 또한 수직스케일링제어기(6)는 상기 제1,제2,제3 레지스터(30a,30b, 30c)의 내용을 읽는 제1,제2,제3계산회로(31,32,33)를 포함하고 있다. 제1계산 회로(31)는 (|$N)을 (N-1)으로 나누어 발생하는 몫 T를 출력한다. 반면에 제2계산 회로(32)는 (|$N)을 (N-1)으로 나누어 발생하는 나머지 S를 출력한다. 상기 몫 T는 프레임 메모리(2)에 저장된 디지탈 영상의 매 두개의 원 주사선 사이에 삽입되는 보간된 주사선의 최소값에 해당하며, 반면에 나머지 S는 디지탈 영상이 스케일링 업 될 때 프레임 메모리(2)에 저장되어 있는 디지탈 영상의 원 주사선 사이에 균일하게 분포되어 있는 잉여 보간 주사선의 총수에 해당한다. 제3계산 회로(33)는 (N)을 (N-|$N)으로 나눌 때 발생하는 나머지 U를 출력한다. 나머지 U는 디지탈 영상을 스케일링 다운 할 때 프레임 메모리(2)에 저장된 디지탈 영상으로부터 삭제되는 잔존 주사선의 총수에 해당한다.As shown in FIG. 3, the vertical scaling controller 6 includes a programmable register set 30 consisting of a first register 30a, a second register 30b, and a third register 30c. The first register 30a is for storing (N) original scan lines of the digital image of the frame memory 2, and the second register 30b is for storing (| $ N) scan lines that are interpolated or deleted. The third register 30c is a register for storing an INC / DEC flag 38 indicating whether the digital image is performed with scaling up or scaling down in the vertical direction. In addition, the vertical scaling controller 6 includes first, second and third calculation circuits 31, 32 and 33 for reading the contents of the first, second and third registers 30a, 30b and 30c. . The first calculation circuit 31 outputs the quotient T generated by dividing (| $ N) by (N-1). On the other hand, the second calculation circuit 32 outputs the remaining S generated by dividing (| $ N) by (N-1). The quotient T corresponds to the minimum value of the interpolated scan line inserted between every two original scan lines of the digital image stored in the frame memory 2, while the remaining S is stored in the frame memory 2 when the digital image is scaled up. It corresponds to the total number of redundant interpolation scan lines uniformly distributed among the original scan lines of the stored digital image. The third calculating circuit 33 outputs the remaining U generated when dividing (N) by (N- | $ N). The remaining U corresponds to the total number of remaining scan lines that are deleted from the digital image stored in the frame memory 2 when scaling down the digital image.

두개의 입력신호 선택기(34)는 제3계산회로(33)으로 부터 출력되는 나머지 U를 제1입력신호로 받고, 제2계산 회로로 부터 출력되는 나머지 S를 제2입력신호로 받는다. 또한 상기 선택기(34)는 제3레지스터(30c)로 부터 INC/DEC 플래그(38)를 제어입력신호로 받아 들이며, 선택기(34)의 출력신호(42)는 나머지 분산기(35)로 입력된다. 나머지 분산기(35)는 제1계산회로(31)로부터 출력되는 몫 T를 입력으로 받아 들이고 제3레지스터(30c)로부터 출력되는 INC/DEC 플래그(38)를 입력제어 신호로 받아 들여 직렬알파 생성기(36)와 어드레스 생성기(37)로 출력제어 신호(39)를 보낸다. 또한 나머지 분산기(35)는 디지탈 영상의 스케일링 업 동안에 잉여 보간 단계가 수행되는 싯점과 스케일링 다운 동안에 잔존 주사선이 삭제되는 싯점을 결정한다. 직렬알파생성기(36)는 제1계산수단(31)으로부터 몫 T와 제3레지스터(30c)로부터 INC/DEC 플래그(38)를 입력으로 받아 이원선형 가산기(5)를 위해 계수 |A와 1-|A를 생성하고 라인버퍼(4)를 위해 저장 명령 신호를 출력한다.(도 1 참조) 또한 어드레스 생성기(37)는 제1계산수단(31)으로 부터 몫 T와 제3레지스터(30c)로 부터 INC/DEC 플래그(38)을 입력신호로 받아 프레임 메모리(2)로 라인 어드레스 데이터를 공급한다.The two input signal selectors 34 receive the remaining U output from the third calculating circuit 33 as the first input signal, and receive the remaining S output from the second calculating circuit as the second input signal. In addition, the selector 34 receives the INC / DEC flag 38 from the third register 30c as a control input signal, and the output signal 42 of the selector 34 is input to the remaining spreaders 35. The remaining disperser 35 receives the quotient T output from the first calculation circuit 31 as an input and receives the INC / DEC flag 38 output from the third register 30c as an input control signal and receives a serial alpha generator ( 36 and an output control signal 39 to the address generator 37. The remaining disperser 35 also determines the point at which the redundant interpolation step is performed during scaling up of the digital image and the point at which the residual scan line is deleted during scaling down. The serial alpha generator 36 receives the quotient T from the first calculating means 31 and the INC / DEC flag 38 from the third register 30c as inputs for the coefficient | A and 1- for the binary linear adder 5. Generates A and outputs a store command signal for the line buffer 4 (see FIG. 1). The address generator 37 also passes from the first calculation means 31 to the quotient T and the third register 30c. The line address data is supplied to the frame memory 2 from the INC / DEC flag 38 as an input signal.

도 4에 도시된 바와 같이, 나머지 분산기(35)는 (N)과 (|$N)의 차를 출력하는 계산회로(40)와 상기 계산회로(40)의 출력신호를 제1입력신호로 하고 제1레지스터(30a)의 숫자 (N)을 제2입력신호로 하며 제3레지스터(30c)의 INC/DEC 플래그(38)를 제어 입력신호로 하는 두입력신호 선택기(41)를 포함하고 있다. 중간 데이터 레지스터(56)는 선택기(34)의 출력(42)을 받아(도 3 참조), 2입력 가산기(43)의 두개의 입력중 하나의 입력과 연결된 출력을 가지고 있다. 가산기(43)의 다른 하나의 입력은 선택기(34)의 출력(42)을 받는다. 가산기(43)의 출력과 선택기(41)의 출력은 계산회로(44)의 입력으로 사용되며, 상기 계산회로(44)는 전자에서 후자를 빼고 가산기의 출력(43)이 선택기의 출력(41) 보다 크거나 같을 때의 제어 출력에서 인에이블 신호를 생성한다. 두 입력 선택기(45)는 가산기(43)의 출력을 받는 제1입력, 계산회로(44)로 부터 가산기(43)의 출력과 선택기(41)의 출력의 차를 받는 제2입력, 계산회로(44)의 제어출력(39)과 연결된 제어입력, 중간 데이터 레지스터(56)에 연결된 출력을 가지고 있다.As shown in FIG. 4, the remaining disperser 35 uses the calculation circuit 40 for outputting the difference between (N) and (| $ N) and the output signal of the calculation circuit 40 as the first input signal. It includes two input signal selectors 41 using the number N of the first register 30a as a second input signal and the INC / DEC flag 38 of the third register 30c as a control input signal. The intermediate data register 56 receives the output 42 of the selector 34 (see FIG. 3) and has an output connected to one of the two inputs of the two-input adder 43. The other input of the adder 43 receives the output 42 of the selector 34. The output of the adder 43 and the output of the selector 41 are used as inputs to the calculation circuit 44, which calculates the latter from the former and the output 43 of the adder is the output 41 of the selector. Generate an enable signal at the control output when greater than or equal to. The two input selectors 45 have a first input receiving the output of the adder 43, a second input receiving the difference between the output of the adder 43 and the output of the selector 41 from the calculating circuit 44, It has a control input connected to the control output 39 of 44 and an output connected to the intermediate data register 56.

클럭 수정 회로(46)는 원 입력 라인 클럭을 받아, 제어출력(39)에서 의 신호와 제1계산회로(31)에서 출력되는 몫 T 에 따라 원입력라인 클럭을 수정한다. 원입력라인 클럭은 원 영상 데이터가 프린터나 컴퓨터 디스플레이와 같은 출력장치상에 디스플레이를 위해 출력되는 도중에 수직 스케일링 동작이 일어나도록 하기 위해 디스플레이 주사선 클럭이 되기도 한다. 제어출력(39)이 논리상으로 하이(high) 상태에 있을 때 클럭수정회로(46)은 원 입력라인 클럭의 (T+2)배의 길이를 갖는 (T+2)분주 클럭을 출력한다. 제어출력(39)이 논리상으로 로(low) 상태에 있을 때 클럭수정회로(46)은 원 입력라인 클럭의 (T+1)배의 길이를 갖는 (T+1)분주 클럭을 출력한다. 클럭수정회로(46)의 출력과 원 입력라인 클럭은 선택기(47)의 제어입력으로 사용된다. 제3레지스터(30c)로 부터 출력된 INC/DEC 플래그(38)는 선택기(47)의 제어입력으로 제공된다. 중간 데이터 레지스터(56)은 선택기(47)로 부터 클럭 신호 mClock1를 받는 로드(load)단자 LD를 가지고 있다.The clock correction circuit 46 receives the original input line clock, and corrects the original input line clock according to the signal from the control output 39 and the quotient T output from the first calculation circuit 31. The raw input line clock may also be a display scan line clock so that vertical scaling operations occur while the raw image data is output for display on an output device such as a printer or computer display. When the control output 39 is logically in a high state, the clock correction circuit 46 outputs a (T + 2) divided clock having a length (T + 2) times the original input line clock. When the control output 39 is logically in a low state, the clock correction circuit 46 outputs a (T + 1) divided clock having a length (T + 1) times the original input line clock. The output of the clock correction circuit 46 and the original input line clock are used as control inputs of the selector 47. The INC / DEC flag 38 output from the third register 30c is provided to the control input of the selector 47. The intermediate data register 56 has a load terminal LD that receives the clock signal mClock1 from the selector 47.

도 5에 도시된 바와 같이, 알파급수 생성기(36)은 계산회로(44)의 제어출력(39)과 연결되고 원 입력라인 클럭과 제1계산 회로(31)로 부터 몫 T를 받는 계수 생성기(363)를 포함한다. 제어출력(39)가 논리상 하이 상태에 있을 때 계수 생성기(363)는 연속하는 (T+2) 라인 클럭 주기로 각각 연속적인 1, 1/(T+2), 2/(T+2), ... (T+1)/(T+2) 알파 계수를 생성하고, 제어출력(39)이 논리상 로 상태에 있을 때 계수 생성기(363)는 연속하는 (T+1) 라인 클럭 주기로 각각 연속적인 1, 1/(T+1), 2/(T+1), ... (T)/(T+1) 알파 계수를 생성한다. 선택기(364)는 1로 고정된 제1입력, 계수 생성기의 출력을 받는 제2입력, INC/DEC 플래그(38)를 받는 제어 입력을 가진다. 선택기(364)의 출력은 계수 |A 이며, 이는 감산회로(365)의 입력 중 하나로 사용된다. 감산회로(365)의 다른 입력은 1 로 고정되어 있다. 감산회로(365)의 출력중 하나는 계수 1-|A 이며, 다른 출력은 도 1에 도시된 바와 같이 라인 버퍼(4)의 입력으로 사용되는 저장 명령 신호이다. 감산회로(365)는 계수 1-|A 가 영 즉 |A = 1 일 때 저장명령 신호를 생성한다.As shown in FIG. 5, the alpha series generator 36 is connected to the control output 39 of the calculation circuit 44 and receives a quotient T from the original input line clock and the first calculation circuit 31. 363). When control output 39 is logically in a high state, coefficient generator 363 is delimited by 1, 1 / (T + 2), 2 / (T + 2), ... generate the (T + 1) / (T + 2) alpha coefficients, and when the control output 39 is in the logical state, the coefficient generator 363 is each in successive (T + 1) line clock periods. Generate successive 1, 1 / (T + 1), 2 / (T + 1), ... (T) / (T + 1) alpha coefficients. The selector 364 has a first input fixed at 1, a second input receiving the output of the coefficient generator, and a control input receiving the INC / DEC flag 38. The output of the selector 364 is the coefficient | A, which is used as one of the inputs of the subtraction circuit 365. The other input of the subtraction circuit 365 is fixed at one. One of the outputs of the subtraction circuit 365 is coefficient 1- | A, and the other output is a store command signal used as an input of the line buffer 4 as shown in FIG. The subtraction circuit 365 generates a storage command signal when the coefficient 1- | A is zero, that is, | A = 1.

도 6에 도시된 바와 같이, 어드레스 생성기(37)는 (N)을 (N-|$N)으로 나누었을 때 생기는 몫 V를 출력하는 계산회로(371)를 포함하고 있다. 몫 V는 디지탈 영상이 스케일링 다운 될 때 프레임 메모리(2)에 있는 디지탈 영상의 두 선택된 주사선 사이의 오프셋 숫자에 해당한다. 몫 V 와 제어 출력(39)는 가산기(372)의 입력으로 사용된다. 가산기(372)의 출력은 선택기(373)의 입력중 하나로 사용된다. 선택기(373)의 다른 입력은 1 로 고정된다. INC/DEC 플래그(38)은 선택기(373)의 제어 입력으로 사용된다. 선택기(373)는 가산기(374)에 제공되는 오프셋 숫자를 생성한다. 가산기(374)의 출력은 어드레스 레지스터(375)에 연결되어 있다. 어드레스 레지스터(375)의 출력은 라인 어드레스 데이터이며, 아울러 가산기(374)에 입력으로 들어간다. 어드레스 레지스터(375)는 입력신호 시작(start)를 가지고 있으며, 이는 프레임 메모리(2)에 있는 원 주사선 중 첫번째 라인 어드레스를 프리셋reset)시킨다. 어드레스 레지스터 (375)는 또한 그 안에 있는 다음 어드레스를 제어하는 로드단자 LD를 가지고 있다.As shown in Fig. 6, the address generator 37 includes a calculation circuit 371 that outputs a quotient V generated when (N) is divided by (N- | $ N). The quotient V corresponds to the offset number between two selected scan lines of the digital image in the frame memory 2 when the digital image is scaled down. The quotient V and control output 39 are used as inputs to the adder 372. The output of adder 372 is used as one of the inputs of selector 373. The other input of the selector 373 is fixed at one. The INC / DEC flag 38 is used as a control input of the selector 373. The selector 373 generates an offset number provided to the adder 374. The output of adder 374 is coupled to address register 375. The output of the address register 375 is line address data and enters an input to the adder 374. The address register 375 has an input signal start, which presets the first line address of the original scan lines in the frame memory 2. The address register 375 also has a load terminal LD that controls the next address therein.

래치회로(376)은 원입력라인 클럭에 따라 제어출력(39)에서 샘플(sample)하고 유지(hold)한다. 클럭수정회로(377)는 원입력라인 클럭을 수신하여 래치회로(376)의 출력과 제1계산회로(31)의 몫 T에 따라서 원입력라인 클럭을 수정한다. 래치회로(376)의 출력이 논리상 하이 상태에 있을 때, 클럭수정회로(377)는 원입력라인 클럭의 (T+2)배 길이를 갖는 (T+2)분주 클럭을 출력한다. 그리고 래치회로(376)의 출력이 논리상 로 상태에 있을 때, 클럭수정회로(377)는 원입력라인 클럭의 (T+1)배 길이를 갖는 (T+1)분주 클럭을 출력한다. 선택기(378)는 원입력라인 클럭과 클럭수정회로(377)의 출력을 입력으로 받고, INC/DEC 플래그에 의해 제어되어, 어드레스 레지스터(375)의 입력단자 LD 로 사용되는 클럭입력 mClock2 를 출력한다.The latch circuit 376 samples and holds at the control output 39 in accordance with the original input line clock. The clock correction circuit 377 receives the original input line clock and modifies the original input line clock according to the output of the latch circuit 376 and the quotient T of the first calculation circuit 31. When the output of the latch circuit 376 is in a logic high state, the clock correction circuit 377 outputs a (T + 2) division clock having a length (T + 2) times the original input line clock. When the output of the latch circuit 376 is in the logical state, the clock correction circuit 377 outputs a (T + 1) divided clock having a length (T + 1) times the original input line clock. The selector 378 receives the input of the original input line clock and the output of the clock correction circuit 377 as inputs, and is controlled by the INC / DEC flag to output the clock input mClock2 used as the input terminal LD of the address register 375. .

수평 스케일링 제어기(10)의 구조는 도 3 내지 도 6에 도시된 수평 스케일링 제어기(6)의 구조와 실질적으로 유사하다. 상기 두 제어기(6,10) 간에는 작은 차이만이 있다. 예를 들어, 수평 스케일링 제어기(10)에서, 프로그램 가능한 레지스터 세트의 제1레지스터는 프레임 메모리(2)에 있는 디지털 영상의 원 주사선당 픽셀 데이터의 숫자 (N')을 저장하기 위해 사용되고, 제2레지스터는 주사선당 보간되거나 삭제되는 픽셀 데이터의 숫자 (|$N')을 저장하기 위해 사용된다. 제3레지스터는 수평 방향으로 디지털 영상의 스케일링 업이 수행될지 스케일링 다운이 수행될지를 가리키는 INC/DEC 플래그를 저장한다. 제1계산회로는 이원선형가산기(5)에서 나오는 주사선 데이터의 매 픽셀 데이터 사이에 삽입될, 보간된 픽셀 데이터의 최소수에 해당하는 몫 T'를 생성한다. 제2계산회로는 디지털 영상이 스케일 업될 때 이원선형가산기(5)로부터 주사선 데이터의 픽셀 데이터간에 균일하게 분포되는 잉여 보간된 픽셀 데이터의 총수에 해당하는 나머지 S'을 생성한다. 제3계산회로는 디지털영상이 스케일다운될 때 이원선형 가산기(5)에서 나오는 주사선 데이터로부터 삭제되는 잉여 픽셀 데이터의 총수에 해당하는 나머지 U'을 생성한다. 저장명령 신호 대신에, 수평 스케일링 제어기(10)의 알파 급수(series) 생성기는 도트버퍼(8)를 위한 래치명령신호를 생성한다. 상기 어드레스 생성기, 알파 급수 생성기 및 나머지 분산기에 대한 클럭 입력은 원 픽셀 클럭이다. 원 픽셀 클럭은 원 영상 데이터가 프린터나 컴퓨터 디스플레이와 같은 출력장치상에 디스플레이를 위해 출력되는 도중에 수평 스케일링 동작이 일어나도록 하기 위해 디스플레이 도트 클럭이 되기도 한다. 수평 스케일링 제어기(10)의 어드레스 레지스터의 어드레스 출력은 라인메모리(3) 및 라인버퍼(4)를 제어하는데 사용되는 도트 어드레스이다. 따라서, 수평 방향으로 스케일링 업되는 동안, (n)번째와 (n+1)번째 주사선의 모든 픽셀 데이터와, 만일 상기 (n)번째와 (n+1)번째 주사선 사이에 보간된 주사선이 있다면 상기 보간된 주사선의 모든 픽셀 데이터는 이원선형 가산기(5)를 통과한다. 수직 및 수평 양방향으로 스케일링 다운이 이루어질때, 원주사선 중 선택된 주사선의 선택된 픽셀 데이터만이 이원선형 가산기(5)를 통과한다.The structure of the horizontal scaling controller 10 is substantially similar to that of the horizontal scaling controller 6 shown in FIGS. 3 to 6. There is only a small difference between the two controllers 6, 10. For example, in the horizontal scaling controller 10, the first register of the programmable register set is used to store the number N 'of pixel data per original scan line of the digital image in the frame memory 2, and the second register. The register is used to store the number of pixel data (| $ N ') that is interpolated or deleted per scan line. The third register stores an INC / DEC flag indicating whether scaling up or scaling down of the digital image is performed in the horizontal direction. The first calculation circuit generates a quotient T 'corresponding to the minimum number of interpolated pixel data to be inserted between every pixel data of scan line data coming out of the binary linear adder 5. The second calculation circuit generates the remaining S 'corresponding to the total number of redundant interpolated pixel data uniformly distributed among the pixel data of the scan line data from the binary linear adder 5 when the digital image is scaled up. The third calculation circuit generates the remaining U 'corresponding to the total number of redundant pixel data deleted from the scan line data from the binary linear adder 5 when the digital image is scaled down. Instead of the store command signal, the alpha series generator of the horizontal scaling controller 10 generates a latch command signal for the dot buffer 8. The clock inputs for the address generator, alpha series generator, and the remainder spreader are the one pixel clock. The one pixel clock may also be a display dot clock so that horizontal scaling operations occur while the raw image data is output for display on an output device such as a printer or computer display. The address output of the address register of the horizontal scaling controller 10 is a dot address used to control the line memory 3 and the line buffer 4. Thus, while scaling up in the horizontal direction, if there is any pixel data of the (n) th and (n + 1) th scan lines, and if there are interpolated scanlines between the (n) th and (n + 1) th scan lines, All pixel data of the interpolated scan lines pass through the binary linear adder 5. When scaling down in both the vertical and horizontal directions, only the selected pixel data of the selected scanning line of the circumferential line passes through the binary linear adder 5.

따라서, 바람직한 실시예는 수직방향으로 스케일링 업 또는 스케일링 다운, 수평방향으로 스케일링 업 또는 스케일링 다운을 동시에 수행 가능하게 동작한다. 이하에서 상기 바람직한 실시예의 동작을 설명한다.Therefore, the preferred embodiment operates to simultaneously perform scaling up or scaling down in the vertical direction, scaling up or scaling down in the horizontal direction. The operation of the preferred embodiment will be described below.

A. 바람직한 실시예의 수직 스케일링 업 동작을 용이하게 설명하기 위해, 5개의 원 주사선 및 주사선당 5개의 픽셀 데이터를 갖는 원 디지탈 영상이 7개의 원하는 주사선과 주사선당 5개의 픽셀 데이터를 갖는 원하는 디지탈 영상을 얻기 위해 스케일 업되는 하나의 예를 들기로 한다.A. To facilitate the description of the vertical scaling up operation of the preferred embodiment, a raw digital image with five original scan lines and five pixel data per scan line may produce a desired digital image with seven desired scan lines and five pixel data per scan line. Let's take an example of scaling up to get.

도 3에 도시된 바와 같이, 수직 스케일링 제어기(6)의 프로그램 가능한 레지스터 세트(30)는 제1레지스터(30a)에 숫자 '5', 제2레지스터(30b)에 숫자 '2', 제3레지스터(30c)에 논리 '1' 을 저장함으로써 초기에 프로그램된다. 숫자 '5' 는 프레임 메모리(2)에 있는 원디지탈 영상의 원주사선의 숫자 (N)에 해당한다. 숫자 '2'는 보간되는 주사선의 총수 (|$N)에 해당한다. 제3레지스터(30c)의 논리 '1' 은 수직 방향으로 원디지탈 영상의 스케일링 업이 수행됨을 표시한다. 이 때 수평 스케일링 제어기(10)의 프로그램 가능한 레지스터 세트는 원 주사선 각각에 5개의 픽셀 데이터가 있고, 원주사선에 대해서는 보간된 픽셀 데이터는 없으며, 수평 방향으로 원 디지털 영상의 스케일링 업이 수행될 것임을 카리키도록 프로그램된다.As shown in FIG. 3, the programmable register set 30 of the vertical scaling controller 6 has a number '5' for the first register 30a, a number '2' for the second register 30b, and a third register. It is initially programmed by storing logic '1' in 30c. The number '5' corresponds to the number N of the circumferential lines of the one digital image in the frame memory 2. The number '2' corresponds to the total number of interpolated scan lines (| $ N). A logic '1' of the third register 30c indicates that scaling up of the original digital image is performed in the vertical direction. At this time, the programmable register set of the horizontal scaling controller 10 has five pixel data on each original scan line, no interpolated pixel data on the original scan line, and scaling up of the original digital image in the horizontal direction will be carried out. It is programmed to turn on.

제1계산회로(31)는 (|$N)을 (N-1)로 나누어 발생하는 몫 T를 출력한다. (|$N)이 (N-1)보다 작기 때문에 몫 T는 0 이다. 제2계산회로(32)는 (|$N)을 (N-1)로 나누어 발생하는 나머지 S를 출력한다. 상기 예의 경우에 나머지 S는 2 이다. 선택기(34)가 스케일 업 동작 동안에 제2계산회로(32)의 출력을 나머지 분산기(35)에 제공하기 때문에 제3계산회로(33)의 출력은 부적절하다. 수평 스케일링 업 또는 스케일링 다운 동작이 수행되지 않았기 때문에 수평 스케일링 제어기(10)의 제1, 제2 및 제3 계산회로는 0 이다.The first calculation circuit 31 outputs a quotient T generated by dividing (| $ N) by (N-1). The quotient T is zero because (| $ N) is less than (N-1). The second calculation circuit 32 outputs the remaining S generated by dividing (| $ N) by (N-1). In the case of the above example, the remaining S is two. The output of the third calculation circuit 33 is inappropriate because the selector 34 provides the output of the second calculation circuit 32 to the remaining disperser 35 during the scale up operation. The first, second and third calculation circuits of the horizontal scaling controller 10 are zero because no horizontal scaling up or scaling down operation is performed.

도 1 및 도 3 내지 도 7에 도시된 바와 같이, 어드레스 생성기(37)의 어드레스 레지스터(375)는 초기에 프레임 메모리(2)에 저장된 원주사선 중 첫번째 주사선의 라인 어드레스를 세팅하고, 프레임 메모리(2)를 제어하여 시작 라인 클럭동안에 라인메모리(3)에 원 주사선 중 첫번째 주사선을 공급한다. 동시에 나머지 S는 중간데이터 레지스터(56)에 저장되고, 그 때 가산기(43)는 나머지 S와 중간 데이터 레지스터(56)의 내용을 더한다. 이 때 '4'의 값을 갖는 가산기(43)의 출력이 '5'의 값을 갖는 (N)보다 작기 때문에 계산회로(44)의 제어출력(39)은 논리상의 로(low)상태에 있게 된다. 선택기(45)는 가산기(43)의 출력을 중간데이터 레지스터(56)에 공급하고, 중간데이터 레지스터(56)에 공급된 클럭입력 mClock1 은 (T+1)분주 클럭이며 이는 몫 T가 0 이기 때문에 원입력라인 클럭과 같다.As shown in Figs. 1 and 3 to 7, the address register 375 of the address generator 37 sets the line address of the first scan line among the circumferential scan lines initially stored in the frame memory 2, and the frame memory ( 2), the first scan line of the original scan lines is supplied to the line memory 3 during the start line clock. At the same time, the remaining S is stored in the intermediate data register 56, at which time the adder 43 adds the contents of the remaining S and the intermediate data register 56. At this time, since the output of the adder 43 having a value of '4' is smaller than (N) having a value of '5', the control output 39 of the calculation circuit 44 is in a logic low state. do. The selector 45 supplies the output of the adder 43 to the intermediate data register 56, and the clock input mClock1 supplied to the intermediate data register 56 is a (T + 1) division clock because the quotient T is zero. Same as the original input line clock.

제어출력(39)은 논리상으로 로(low)상태에 있기 때문에, 그리고 몫 T가 영이기 때문에, 계수 생성기(363)은 선택기(364)에 숫자 '1'을 공급한다. INC/DEC 플레그(38)은 논리상으로 '1'이기 때문에 선택기(364)는 계수생성기(363)의 출력을 가중계수 |A 로 선택한다. 계수 |A는 1 이기 때문에 계수 1-|A는 0 이고, 라인버퍼(4)를 제어하여 라인 메모리(3)으로 부터 원주사선중 첫번째 주사선을 라인버퍼(4)에 저장하기 위해 저장명령 신호가 발생된다. 상기 단계에서 2원선형 가산기(5)의 출력은 원주사선 중 첫번째 주사선이다.Since the control output 39 is logically in the low state, and the quotient T is zero, the coefficient generator 363 supplies the selector 364 with the number '1'. Since the INC / DEC flag 38 is logically '1', the selector 364 selects the output of the coefficient generator 363 as the weighting factor | A. Since the coefficient | A is 1, the coefficient 1- | A is 0, and the storage command signal is used to control the line buffer 4 to store the first scan line of the circular scan line from the line memory 3 to the line buffer 4 Is generated. In this step, the output of the binary linear adder 5 is the first scan line of the circular scan line.

선택기(373)는 가산기(374)에 오프셋 숫자를 공급하며 상기 옵셋 숫자는 1 이다. 따라서 가산기(374)는 다음 클럭 펄스 mClock2가 도착할 때 어드레스 레지스터(375)의 출력을 한 단위 증가시키고 나서, 프레임 메모리(2)를 제어하여 라인 메모리(3)에 원주사선 중 두번째 주사선을 공급한다.The selector 373 supplies an offset number to the adder 374 and the offset number is one. Therefore, the adder 374 increases the output of the address register 375 by one unit when the next clock pulse mClock2 arrives, and then controls the frame memory 2 to supply the second scan line of the circular scan line to the line memory 3.

다음 클럭 펄스 mClock1 이 도착하면, 중간데이터 레지스터(56)은 숫자 '4' 인 가산기(43)의 이전 출력을 저장한다. 이 때 현재 '6'의 값을 갖는 가산기(43)의 출력은 '5'의 값을 갖는 숫자 (N)보다 크기 때문에 계산회로(44)의 제어출력(39)이 논리상의 하이 상태로 있게된다.When the next clock pulse mClock1 arrives, the intermediate data register 56 stores the previous output of the adder 43 of the number '4'. At this time, since the output of the adder 43 having a value of '6' is larger than the number N having a value of '5', the control output 39 of the calculation circuit 44 is in a logic high state. .

선택기(45)는 가산기(43)와 선택기(41)의 출력의 차를 중간데이터 레지스터(56)에 공급하고, 중간데이터 레지스터(56)에 대한 클럭입력 mClock1은 이제 원입력라인 클럭의 2배의 길이를 갖는 (T+2)분주 클럭이 된다.The selector 45 supplies the difference between the output of the adder 43 and the selector 41 to the intermediate data register 56, and the clock input mClock1 to the intermediate data register 56 is now twice the original input line clock. It becomes a (T + 2) division clock having a length.

제어출력(39)이 논리상 하이(high) 상태에 있으므로, 계수생성기(363)는 하나의 mClock1 펄스 내에서 연속적으로 두개의 출력 1과 1/2, 즉 두개의 연속적인 원 입력라인 클럭을 생성한다. 첫번째 원 입력라인 클럭 내에서, 이원선형 가산기(5)는 원주사선 중 두번째 주사선을 출력하고, 동시에 계수 |A가 1 이기 때문에 후자는 라인버퍼(4)에 저장된다. 두번째 원 입력라인 클럭 내에서, 어드레스 레지스터(375)의 내용은 다음 mClock2 펄스를 받아 한 단위 증가되어, 프레임 메모리(2)를 제어하여 라인메모리(3)에 원주사선 중 세번째 것을 공급한다. 이 때 계수 생성기(363)의 출력은 1/2이며, 계수 |A가 1/2 이므로 계수 1-|A는 1/2로 된다. 그리고 아무런 저장명령 신호도 발생되지 않는다. 따라서 원주사선 중 두번째 것은 라인버퍼(4)에 그대로 남아있게 된다. 이 단계에서 이원가산기(5)의 출력은 원주사선의 두번째와 세번째 것의 이원 보간이 된다.Since control output 39 is logically high, coefficient generator 363 generates two outputs 1 and 1/2 in succession within one mClock1 pulse, i.e., two consecutive original input line clocks. do. Within the first circle input line clock, the binary linear adder 5 outputs the second scan line of the circular scan lines, and at the same time the latter is stored in the line buffer 4 because the coefficient | A is one. Within the second one input line clock, the contents of the address register 375 are incremented by one by receiving the next mClock2 pulse, controlling the frame memory 2 to supply the third of the circle scan lines to the line memory 3. At this time, the output of the coefficient generator 363 is 1/2, and since the coefficient | A is 1/2, the coefficient 1- | A is 1/2. And no save command signal is generated. Thus, the second of the circumferential lines remains in the line buffer 4. At this stage, the output of the binary adder 5 is the binary interpolation of the second and third ones of the circular scan line.

중간데이터 레지스터(56)의 내용은 다음 mClock1 펄스가 도달할 때 가산기(43)의 출력과 숫자 (N)의 차인 '1'로 갱신된다. 가산기(43)의 출력은 숫자 (N)보다 작은 3 이기 때문에, 제어출력(39)는 논리상의 로 상태에 있게 된다. 선택기(45)는 가산기(43)의 출력을 중간 데이터 레지스터(56)에 공급하고, 중간 데이터 레제스터(56)에 공급된 클럭입력 mClock1은 (T+1)분주 클럭이며, 직렬 알파 생성기(36)로 부터 출력되는 계수 |A 는 1 이다. 이원가산기(5)의 출력은 원주사선의 세번째 것이다. 그리고 계수 |A 는 1 이기 때문에 원주사선의 세번째 것이 라인버퍼(4)에 저장된다.The contents of the intermediate data register 56 are updated to '1' which is the difference between the output of the adder 43 and the number N when the next mClock1 pulse arrives. Since the output of the adder 43 is 3 smaller than the number N, the control output 39 is in a logical low state. The selector 45 supplies the output of the adder 43 to the intermediate data register 56, the clock input mClock1 supplied to the intermediate data register 56 is a (T + 1) division clock, and the serial alpha generator 36 The coefficient | A outputted from) is 1. The output of the binary adder 5 is the third of the circular scan line. And since the coefficient | A is 1, the third one of the circular scanning lines is stored in the line buffer 4.

수직 스케일링부의 이어지는 동작은 원주사선의 다섯번째 것이 이원선형 가산기(5)에서 출력될 때 까지는 이전 것과 유사하다.The subsequent operation of the vertical scaling portion is similar to the previous one until the fifth of the circumferential line is output from the binary linear adder 5.

도 7은 예를 들어 N=5, |$N=2 일 때 바람직한 실시예의 스케일링 업 동작을 설명하는 타이밍도이다.Fig. 7 is a timing diagram illustrating the scaling up operation of the preferred embodiment when, for example, N = 5 and | $ N = 2.

(|$N)을 (N-1)로 나누어 나머지를 (S)라 하고, (s)가 1 부터 (S) 까지의 범위에서 변할 때 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소 수라 하면, 수직 스케일링 제어기(6)는 이원선형 가산기(5)를 제어하여, 라인버퍼(4)에 저장되어 있는 원 주사선의 (n)번째 것과 라인 메모리(3)에 저장되어 있는 원 주사선의 (n+1)번째 것의 이원선형 보간을 수행하여, (n)번째와 (n+1)번째 원 영상 데이터 사이에 삽입된 잉여 보간 주사선을 생성한다.Dividing (| $ N) by (N-1), the remainder is called (S), and (n) is (n + 1) * (S) 1 when (s) varies from 1 to (S) If the minimum number satisfies (s) * (N), the vertical scaling controller 6 controls the binary linear adder 5, which is the (n) th and the line memory of the original scanning line stored in the line buffer 4; The binary interpolation of the (n + 1) th of the original scan lines stored in (3) is performed to generate a redundant interpolation scan line inserted between the (n) th and (n + 1) th original image data.

도 1을 다시 참조하면, 수평 스케일링 동작이 수행되지 않았으므로, 수평 스케일링 제어기(10)는 라인메모리(3) 및 라인버퍼(4)를 제어하여 픽셀버퍼(4)에 저장된 픽셀 데이터를 순차적으로 이원선형가산기(5)에 제공한다. 이원 선형 가산기(5)로부터의 원 픽셀 데이터 및 보간된 픽셀 데이터는 이원 선형 가산기(9)로 도트레지스터(7)로 전달되고, 이는 다시 차례로 이원선형 가산기(9)로 전달된다. 동시에, 계수 |A는 항상 1과 같고, 도트버퍼(8)의 출력은 이원선형 가산기(9)에 의해 무시된다. 이원선형가산기(9)의 출력은 이원선형가산기(5)의 출력과 같으며, 출력장치(미도시)에 직접 제공될 수도 있다.Referring back to FIG. 1, since the horizontal scaling operation is not performed, the horizontal scaling controller 10 controls the line memory 3 and the line buffer 4 to sequentially process the pixel data stored in the pixel buffer 4 in the binary line. It is provided to the mold adder 5. The original pixel data and the interpolated pixel data from the binary linear adder 5 are passed to the doresistor 7 to the binary linear adder 9, which in turn is passed to the binary linear adder 9. At the same time, the coefficient | A is always equal to 1, and the output of the dot buffer 8 is ignored by the binary linear adder 9. The output of the binary linear adder 9 is the same as the output of the binary linear adder 5, and may be provided directly to an output device (not shown).

상기 예에서, (|$N)을 (N-1)로 나눌 때 발생하는 몫 (T) 는 0 이다. 만일 몫 T 가 0 이 아니면 즉 (|$N) 이 (N-1)보다 크거나 같을 때, 수직 스케일링 제어기(6)는 이원선형 가산기(5)를 제어하여, 원주사선 중 (n)번째와 (n+1)번째 주사선 사이에 삽입된 부가적인 T 개의 연속적인 보간된 주사선을 생성하기 위해 원주사선의 (n)번째와 (n+1)번째의 것을 이원보간을 수행한다. 도 8은 N=5 이고 |$N=6 일 때 바람직한 실시예에 의해 수행된 샘플 스케일링 업 동작의 타이밍도를 나타내고 있다. 상기 예에서, 몫 T는 1 이고, 나머지 S는 2 이다. 분명히, 원주사선중 (n) 번째와 (n+1)번째 것의 매 간격 사이에 삽입된 부가적인 보간된 주사선이 있다.In the above example, the quotient (T) that occurs when dividing (| $ N) by (N-1) is zero. If the quotient T is not zero, i.e. (| $ N) is greater than or equal to (N-1), the vertical scaling controller 6 controls the binary linear adder 5 to Binary interpolation is performed on the (n) th and (n + 1) th of the circumferential line to generate additional T consecutive interpolated scanlines inserted between the (n + 1) th scan lines. 8 shows a timing diagram of a sample scaling up operation performed by the preferred embodiment when N = 5 and | $ N = 6. In this example, the quotient T is 1 and the remainder S is 2. Clearly, there is an additional interpolated scanline inserted between every interval of the (n) th and (n + 1) th of the circumferential line.

B. 다음의 예에서, 5개의 원 주사선과 상기 주사선당 5개의 픽셀 데이터를 갖는 원 디지털 영상은 3개의 원하는 주사선과 상기 주사선당 5개의 픽셀 데이터를 갖는 원하는 디지털 영상을 얻기위해 스케일 다운된다.B. In the following example, a raw digital image with five original scan lines and five pixel data per scan line is scaled down to obtain a desired digital image with three desired scan lines and five pixel data per scan line.

다시 도 3를 참조하면, 프로그램 가능한 레시스터 세트(30)는 제1레지스터(30a)에 숫자 '5', 제2레지스터(30b)에 숫자 '2', 제3레지스터(30c)에 논리 '0' 을 저장함으로써 초기에 프로그램된다. 숫자 '5' 는 프레임 메모리(2)에 있는 원디지탈 영상의 원주사선의 숫자 (N)에 해당한다. 숫자 '2'는 삭제될 주사선의 총수 (|$N)에 해당한다. 제3레지스터(30c)의 논리 '0' 은 원디지탈 영상의 스케일링 다운이 수행됨을 표시한다. 이 때 수평 스케일링 제어기(10)의 프로그램 가능한 레지스터 세트는 원 주사선 각각에는 5개의 픽셀 데이터가 있고, 원 주사선 각각에 대해을 위한 보간된 픽셀 데이터는 없어야 하며, 수평방향으로 원디지털 영상의 스케일링 업이 수행어야 함을 가리키도록 프로그램된다.Referring again to FIG. 3, the programmable register set 30 has a number '5' for the first register 30a, a number '2' for the second register 30b, and a logic '0' for the third register 30c. It is programmed initially by storing '. The number '5' corresponds to the number N of the circumferential lines of the one digital image in the frame memory 2. The number '2' corresponds to the total number of scan lines (| $ N) to be deleted. Logic '0' of the third register 30c indicates that scaling down of the original digital image is performed. At this time, the programmable register set of the horizontal scaling controller 10 has five pixel data in each of the original scan lines, no interpolated pixel data for each of the original scan lines, and scaling up of the original digital image in the horizontal direction is performed. It is programmed to indicate that it should.

제1,제2계산회로(31,32)의 출력은 스케일 다운 동작일 동안에는 부적절하다. 제3계산회로(33)는 (N)을 (N-|$N)으로 나눌 때 발생하는 나머지 U를 출력하고, 여기서 (N-|$N)은 보유되어 있는 원주사선의 수이다. 상기 예에서, 나머지 U는 2 이다. 선택기(34)는 제3계산회로(33)의 출력을 나머지 분산기(35)에 공급한다.The outputs of the first and second calculation circuits 31 and 32 are inappropriate during the scale down operation. The third calculation circuit 33 outputs the remaining U generated when dividing (N) by (N- | $ N), where (N- | $ N) is the number of retained circular lines. In the above example, the remaining U is two. The selector 34 supplies the output of the third calculating circuit 33 to the remaining dispersers 35.

도 1 및 도 3 내지 도 6, 그리고 도 9를 참고로 하면, 어드레스 생성기(37)의 어드레스 레지스터(375)는 초기에 프레임 메모리(2)에 저장되어 있는 원주사선의 첫번째 것의 라인 어드레스를 세팅하고, 프레임 메모리(2)를 제어하여 시작 라인 클럭 동안에 원주사선 중 첫번째 것을 라인 메모리(3)에 공급한다. 동시에 나머지 U는 중간데이터 레지스터(56)에 저장되어 있고, 그 때 가산기(43)는 나머지 U와 중간 데이터 레지스터(56)의 내용을 더한다. 계산회로(44)는 가산기(43)의 출력에서 선택기의 (N-|$N)을 뺀다. 이 때 4의 값을 가지고 있는 가산기(43)의 출력은 3의 값을 가지고 있는 (N-|$N) 보다 크고, 계산회로(44)의 제어출력(39)은 논리상의 하이 상태에 있다. 선택기(45)은 중간 데이터 레지스터(56)에 가산기(43)의 출력과 선택기(41)의 출력의 차를 공급한다. 원라인 클럭은 선택기(47)을 거쳐 중간 데이터 레지스터(56)에 공급된다.1, 3-6, and 9, the address register 375 of the address generator 37 sets the line address of the first one of the circumferential lines stored in the frame memory 2 initially. The frame memory 2 is controlled to supply the first of the circumferential lines to the line memory 3 during the start line clock. At the same time, the remaining U is stored in the intermediate data register 56, at which time the adder 43 adds the contents of the remaining U and the intermediate data register 56. The calculation circuit 44 subtracts (N- | $ N) of the selector from the output of the adder 43. At this time, the output of the adder 43 having a value of 4 is larger than (N- | $ N) having a value of 3, and the control output 39 of the calculation circuit 44 is in a logic high state. The selector 45 supplies the intermediate data register 56 with the difference between the output of the adder 43 and the output of the selector 41. The one-line clock is supplied to the intermediate data register 56 via the selector 47.

도 3과 도 5를 참조하면, 논리 '0' 은 제3레지스터(30c)에 저장되어 있기 때문에 선택기(364)는 1 에서 계수 |A를 유지하고 있다. 따라서 계수 1-|A는 0 가 되고, 저장명령 신호는 라인버퍼(4)를 활성화하여 계속적으로 라인 메모리(3)의 원주사선을 라인버퍼(4)에 저장하기 위해 항상 발생된다. 게다가 이원가산기(5)의 출력은 항상 라인메모리(3)의 출력이 된다.3 and 5, the selector 364 maintains the coefficient | A at 1 since the logic '0' is stored in the third register 30c. Therefore, the coefficient 1- | A becomes 0, and a storage command signal is always generated to activate the line buffer 4 and continuously store the circumferential lines of the line memory 3 in the line buffer 4. In addition, the output of the binary adder 5 always becomes the output of the line memory 3.

도 6을 참조하면, 계산회로(371)은 (N)을 (N-|$N)으로 나누어 발생하는 몫 V 를 출력한다. 상기 예에서, 몫 V는 1 이다. 가산기(372)는 몫 V 와 현재는 하이 상태인 제어출력(39)의 논리 상태의 합을 발생한다. 선택기(373)는 2 의 값을 가진 가산기(372)의 출력을 선택하여 가산기(374)에 같은 값을 공급한다. 따라서 다음 mClock2 펄스가 도달될 때, 어드레스 레지스터(375)의 출력은 두 단위 증가되고, 그것에 의해 프레임 메모리(2)를 제어하여 원주사선 중 세번째 것을 라인 메모리(3)에 공급한다.Referring to Fig. 6, the calculation circuit 371 outputs the quotient V generated by dividing (N) by (N- | $ N). In this example, the quotient V is one. The adder 372 generates the sum of the quotient V and the logic state of the control output 39 which is currently high. The selector 373 selects the output of the adder 372 having a value of 2 to supply the same value to the adder 374. Therefore, when the next mClock2 pulse is reached, the output of the address register 375 is increased by two units, thereby controlling the frame memory 2 to supply the third of the circumferential lines to the line memory 3.

다시 도 4를 참조하면, 다음 라인 클럭펄스가 도달할 때, 중간데이터 레지스터(56)는 계산회로(44)에 의해 계산된 이전의 차(difference)인 숫자 '1'을 저장한다. 이 때 값이 3인 가산기(43)의 출력은 선택기(41)의 출력과 같다. 계산회로(44)의 제어출력(39)은 논리상의 하이 상태에 있고, 선택기(45)는 가산기(43)의 출력과 선택기(41)의 출력의 차를 중간데이터 레지스터(56)에 공급한다.Referring again to FIG. 4, when the next line clock pulse arrives, the intermediate data register 56 stores the number '1', which is the previous difference calculated by the computation circuit 44. At this time, the output of the adder 43 having the value 3 is the same as the output of the selector 41. The control output 39 of the calculation circuit 44 is in a logical high state, and the selector 45 supplies the intermediate data register 56 with the difference between the output of the adder 43 and the output of the selector 41.

다시 도6을 참조하면, 가산기(372)는 몫 V 와 제어출력(39)의 현재 논리상태의 합을 한번 더 생성한다. 값이 2인 가산기(372)의 출력은 선택기(373)을 거쳐 가산기(374)에 공급된다. 따라서 다음 mClock2 펄스가 도달할 때 어드레스 레지스터(375)의 출력은 다시 두 단위 증가되고, 그것에 의해 프레임 메모리(2)를 제어하여 원주사선 중 다섯번째 것을 라인 메모리(3)에 공급한다. 도 9는 상기 예에서 N=5이고 |$N=2 일 때 바람직한 실시예의 수직 스케일링 다운 동작을 설명하는 타이밍도이다. 상기 예에 대한 수평 스케일링부는 전술한 바와 유사하며, 여기서는 설명을 반복하지 않기로 한다.Referring back to FIG. 6, the adder 372 generates the sum of the quotient V and the current logical state of the control output 39 once more. The output of adder 372 having a value of 2 is supplied to adder 374 via selector 373. Therefore, when the next mClock2 pulse arrives, the output of the address register 375 is again increased by two units, thereby controlling the frame memory 2 to supply the fifth of the circumferential lines to the line memory 3. Fig. 9 is a timing diagram illustrating the vertical scaling down operation of the preferred embodiment when N = 5 and | $ N = 2 in the above example. The horizontal scaling unit for this example is similar to that described above, and the description thereof will not be repeated herein.

전술한 것으로 부터, 수직 스케일링 제어기(6)의 어드레스 생성기(37)는 프레임 메모리(2)를 제어하여 원주사선중 선택된 것만 출력한다는 것을 보여준다. 프레임 메모리(2)에 의해 출력되지 않은 원주사선은 사실상 무시된다. 그리고 프레임 메모리(2)에 의해 출력되는 원주사선은 나머지 분산기(35)의 가산기(43)의 출력이 차 (N-|$N) 보다 작을 때는 숫자 V 만큼, 가산기(43)의 출력이 차 (N-|$N)와 적어도 같을 때는 숫자 (V+1) 만큼 프레임 메모리(2)에 의해 출력된 바로 직전의 원주사선으로 부터 오프셋됨을 유의해야 한다.From the foregoing, it is shown that the address generator 37 of the vertical scaling controller 6 controls the frame memory 2 to output only selected ones of the circumferential lines. Circular scanning lines not output by the frame memory 2 are virtually ignored. The circumferential line output by the frame memory 2 is equal to the number V when the output of the adder 43 of the remaining disperser 35 is smaller than the difference N- | $ N, and the output of the adder 43 is different ( It should be noted that when at least equal to N- | $ N), the number (V + 1) is offset from the immediately preceding circumferential line output by the frame memory 2.

5개의 원 주사선과 주사선당 5개의 픽셀 데이터를 갖는 원 디지털 영상은 5개의 원하는 주사선과 주사선당 7개의 픽셀 데이터를 갖는 원하는 디지털 영상을 제공하도록 스케일 업되는 바람직한 실시예를 들어, 상기 실시예의 수평 스케일링 업 동작을 설명하기로 한다.A raw digital image having five original scan lines and five pixel data per scan line is scaled up to provide a desired digital image with five desired scan lines and seven pixel data per scan line, for example, the horizontal scaling of the above embodiment. The up operation will be described.

수직 스케일링 제어기(6)의 프로그램 가능한 레지스터 세트(30)는 초기에 프레임 메모리(2)에 5개의 원 주사선이 있고, 어떤 주사선도 보간되지 않아야 하며, 수직 방향으로 원 디지털 영상의 스케일링 업이 수행되지 않아야 함을 가리키도록 프로그램된다. 이 때 수평 스케일링 제어기(10)의 상기 프로그램 가능한 레지스터 세트는 제1레지스터에 숫자 5를, 제2레지스터에 숫자 2를, 그리고 제3레지스터에 로직 1 을 저장함으로써 프로그램된다. 상기 숫자 5는 프레임 메모리(2)에 있는 원 주사선 각각의 픽셀 데이터 개수 (N')에 해당한다. 상기 숫자 2는 주사선당 보간되어야 할 픽셀 데이터의 총수 (|$N')에 해당한다. 상기 제3레지스터에 저장된 로직 1은 수평방향으로 원디지털 영상의 스케일링 업이 수행되어야 함을 가리킨다.The programmable register set 30 of the vertical scaling controller 6 initially has five circular scan lines in the frame memory 2, no scan lines should be interpolated, and scaling up of the original digital image in the vertical direction is not performed. It is programmed to indicate that it should not be. The programmable register set of horizontal scaling controller 10 is then programmed by storing the number 5 in the first register, the number 2 in the second register, and the logic 1 in the third register. The number 5 corresponds to the number N 'of pixel data of each of the original scan lines in the frame memory 2. The number 2 corresponds to the total number (| $ N ') of pixel data to be interpolated per scan line. Logic 1 stored in the third register indicates that scaling up of the original digital image should be performed in the horizontal direction.

수직 스케일링 제어기(6)의 제1,제2 및 제3계산수단(31,32,33)의 출력은 어떠한 수직 스케일링 업 이나 스케일링 다운 동작이 수행되지 않기 때문에 0 이다. 수평 스케일링 제어기(10)의 제1계산회로는 (|$N')을 (N'-1)으로 나누어 발생하는 몫 T'을 출력한다. (|$N')는 (N'-1)보다 작으므로, 몫 T'은 0 이다. 수평 스케일링 제어기(10)의 제2계산회로는 (|$N')을 (N'-1)으로 나누어 발생하는 나머지 S'을 출력한다. 이 예에서, 나머지 S'은 2와 같다. 수평 스케일링 제어기(10)의 제3계산회로의 출력은 제2계산회로의 출력이 수평 스케일 업 동작동안에 나머지 분산기에 제공되기 때문에 부적절하다.The outputs of the first, second and third calculating means 31, 32, 33 of the vertical scaling controller 6 are zero since no vertical scaling up or scaling down operation is performed. The first calculation circuit of the horizontal scaling controller 10 outputs the quotient T 'generated by dividing (| $ N') by (N'-1). Since (| $ N ') is less than (N'-1), the quotient T' is zero. The second calculation circuit of the horizontal scaling controller 10 outputs the remaining S 'generated by dividing (| $ N') by (N'-1). In this example, the remaining S 'is equal to two. The output of the third calculating circuit of the horizontal scaling controller 10 is inappropriate because the output of the second calculating circuit is provided to the remaining disperser during the horizontal scale up operation.

수직 스케일링 동작이 수행되어야 하므로, 수직 스케일링 제어기(6)는 프레임 메모리(2)를 제어하여 라인메모리(3)에 순차적으로 원 주사선을 제공한다. 수평 스케일링 제어기(10)는 라인메모리(3) 및 라인버퍼(4)를 제어하여 상기 라인메모리(3) 및 라인버퍼(4)에 저장된 픽셀데이터를 순차적으로 이원선형 가산기(5)에 제공한다. 이 때, 수직 스케일링 제어기(6)로부터의 계수 |A는 항상 1과 같으며, 라인버퍼(4)의 출력은 이원선형 가산기(5)에 의해 무시된다. 이원선형 가산기(5)의 출력은 라인메모리(3)의 출력과 같다.Since the vertical scaling operation should be performed, the vertical scaling controller 6 controls the frame memory 2 to sequentially provide the original scan line to the line memory 3. The horizontal scaling controller 10 controls the line memory 3 and the line buffer 4 to sequentially provide the pixel data stored in the line memory 3 and the line buffer 4 to the binary linear adder 5. At this time, the coefficient | A from the vertical scaling controller 6 is always equal to 1, and the output of the line buffer 4 is ignored by the binary linear adder 5. The output of the binary linear adder 5 is the same as the output of the line memory 3.

상술한 바와 같이, 수평 스케일링부의 스케일링 업 동작은 실질적으로 수직스케일링부의 동작과 유사하다. 그러나, 수직스케일링 제어기(6)와는 달리, 수평 스케일링 제어기(10)는 이원선형 가산기(9)를 제어하여 도트버퍼(8)에 저장되어 있는 (n')번째 원픽셀데이터와 도트레지스터(7)에 저장되어 있는 (n'+1)번째 원픽셀 데이터의 이원선형 보간을 수행하므로써, (|$N')을 (N'-1)로 나누어 나머지를 (S')라 하고 (s')가 1 부터 (S') 까지의 범위에서 변할 때 (n')이 (n'+1)*(S') 1 (s')*(N')을 만족하는 최소수라 할 때, (n')번째와 (n'+1)번째 원 픽셀 데이터 사이에 삽입된 잉여 보간 픽셀 데이터를 생성한다. 따라서, (N'), (|$N') 및 (S')이 각각 5, 2 및 2일 때, 잉여 보간된 픽셀 데이터는 주사선의 제2원픽셀 데이터와 제3원픽셀 데이터 사이 및 제4원픽셀데이터와 제5원픽셀데이터 사이에 삽입된다.As described above, the scaling up operation of the horizontal scaling unit is substantially similar to that of the vertical scaling unit. However, unlike the vertical scaling controller 6, the horizontal scaling controller 10 controls the binary linear adder 9 to store the (n ′) th pixel data and the dosistor 7 stored in the dot buffer 8. By performing binary linear interpolation of the (n '+ 1) th pixel data stored in, divide (| $ N') by (N'-1) and call the rest (S ') (N ') is the smallest number that satisfies (n' + 1) * (S ') 1 (s') * (N ') when varying from 1 to (S'). Generates redundant interpolation pixel data inserted between the nth and (n '+ 1) th original pixel data. Therefore, when (N '), (| $ N'), and (S ') are 5, 2, and 2, respectively, the interpolated pixel data is divided between the second one-pixel data and the third one-pixel data of the scan line. It is inserted between the four-one pixel data and the fifth one-pixel data.

수평 스케일링 제어기(10)는 초기에 라인메모리(3)에 저장되어 있는 주사선 데이터의 제1픽셀데이터의 도트 어드레스를 세트하고, 시작 픽셀 클럭(starting pixel clock) 동안에 도트 레지스터(7)에 의해 수신되도록 라인메모리(3)를 제어하여 제1픽셀 데이터를 이원선형 가산기(5)에 제공한다. 수평 스케일링 제어기(10)로부터의 계수 |A는 1과 같으며, 도트버퍼(8)를 제어하여, 도트레지스터(7)로부터 제1원픽셀 데이터를 도트버퍼(8)에 저장하기 위하여, 래치명령 신호가 생성된다. 이 단계(stage)에서 이원선형 가산기(9)의 출력은 제1원픽셀 데이터이며, 출력장치(미도시)에 직접 제공되기도 한다.이 때, 수평 스케일링 제어기(10)는 라인메모리(3)를 제어하여 도트 레지스터(7)로의 수신을 위해 제2원픽셀데이터를 이원선형 가산기(5)에 제공한다. 수평스케일링 제어기(10)는 두 개의 연속적인 원 픽세 클럭내에서 연속적으로 두 개의 |A 계수, 1과 1/2을 생성한다. 제1원픽셀 클럭내에서, 이원선형 가산기(9)는 두 번째 원픽셀 데이터를 출력하고, 동시에 후자는 계수 |A가 1이므로 도트 버퍼(8)에 저장된다. 제2픽셀 원픽셀 클럭 내에서, 라인메모리(3)는 세 번째 원픽셀 데이터를 도트레지스터(7)로의 수신을 위해 이원선형 가산기(5)에 제공한다. 계수 |A는 이제 1/2이 되며, 두 번째 원픽셀 데이터는 도트버퍼(8)에 남아있다. 이 단계(stage)에서 이원선형 가산기(9)의 출력은 두 번째와 세 번째 원 픽셀 데이터의 이원선형보간이다.The horizontal scaling controller 10 initially sets the dot address of the first pixel data of the scan line data stored in the line memory 3 and is received by the dot register 7 during the starting pixel clock. The line memory 3 is controlled to provide the first pixel data to the binary linear adder 5. The coefficient | A from the horizontal scaling controller 10 is equal to 1, and the latch command is used to control the dot buffer 8 to store the first one-pixel data from the dot register 7 in the dot buffer 8. The signal is generated. In this stage, the output of the binary linear adder 9 is the first one pixel data, which may be directly provided to an output device (not shown). At this time, the horizontal scaling controller 10 Control is provided to the binary linear adder 5 for the second one pixel data for reception into the dot register 7. Horizontal scaling controller 10 generates two | A coefficients, 1 and 1/2, in succession within two consecutive one-pixel clocks. Within the first one pixel clock, the binary linear adder 9 outputs the second one pixel data, and at the same time the latter is stored in the dot buffer 8 since the coefficient | A is one. Within the second pixel one pixel clock, the line memory 3 provides the third one pixel data to the binary linear adder 5 for reception into the do register 7. The coefficient | A is now 1/2, and the second one pixel data remains in the dot buffer 8. In this stage, the output of the binary linear adder 9 is binary linear interpolation of the second and third one pixel data.

다음 원픽셀 클럭 동안에는, 수평 스케일링 제어기(10)로부터의 계수 |A는 다시 1로 되고, 이원선형 가산기(9)의 출력은 도트버퍼(8)에 동시에 저장되는 세 번째 원픽셀 데이터이다.During the next one pixel clock, the coefficient | A from the horizontal scaling controller 10 again becomes 1, and the output of the binary linear adder 9 is the third one pixel data stored simultaneously in the dot buffer 8.

수평스케일링부의 이어지는 동작은 한 주사선의 다섯 번째 원픽셀 데이터가 이원선형 가산기(9)에 의해 출력되어질 때 까지 전술한 바와 유사하다.The subsequent operation of the horizontal scaling portion is similar to that described above until the fifth one-pixel data of one scan line is output by the binary linear adder 9.

도 10은 상기 바람직한 실시예, 즉 N'=5이고 |$N'=2일 때의 수평 스케일링 업 동작을 설명하는 타이밍도이다.Fig. 10 is a timing diagram illustrating the horizontal scaling up operation when the above preferred embodiment, i.e., N '= 5 and | $ N' = 2.

이 예에서, (|$N)을 (N'-1)으로 나누어서 발생하는 몫 (T')은 0이다. 만일 몫 T'이 0이 아니라면, 즉 (|$N')이 (N'-1)보다 같거나 크면, 수평 스케일링 제어기(10)는 (n')번째와 (n'+1)번째 원픽셀데이터 사이에 삽입되는 연속하는 보간된 픽셀 데이터의 부가적인 수 T'를 생성하기 위해 이원선형 가산기(9)를 제어하여 한 주사선의 (n')번째와 (n'+1)번째 원픽셀 데이터의 이원선형 보간을 수행한다.In this example, the quotient (T ') resulting from dividing (| $ N) by (N'-1) is zero. If the quotient T 'is not zero, i.e. (| $ N') is greater than or equal to (N'-1), then the horizontal scaling controller 10 has the (n ') th and (n' + 1) th one pixels. The binary linear adder 9 is controlled to generate an additional number T 'of consecutive interpolated pixel data interleaved between the data, so that the (n') and (n '+ 1) Perform binary linear interpolation.

D. 다음의 예에서, 5개의 원주사선과 주사선당 5개의 픽셀 데이터를 갖는 원디지털 영상은 5개의 원하는 주사선과 주사선당 3개의 픽셀 데이터를 갖는 원하는 디지털 영상을 얻기 위하여 스케일 다운된다.D. In the following example, the original digital image with five circular scan lines and five pixel data per scan line is scaled down to obtain a desired digital image with five desired scan lines and three pixel data per scan line.

수직 스케일링 제어기(6)의 프로그램 가능한 레지스터 세트(30)는 초기에 프레임 메모리(2)에 5개의 원 주사선이 있고, 어떤 주사선도 보간되지 않아야 하며, 수직 방향으로 원 디지털 영상의 스케일링 업이 수행되지 않아야 함을 가리키도록 프로그램된다. 이 때 수평 스케일링 제어기(10)의 상기 프로그램 가능한 레지스터 세트는 제1레지스터에 숫자 5를, 제2레지스터에 숫자 2를, 그리고 제3레지스터에 로직 0 을 저장함으로써 프로그램된다. 상기 숫자 5는 프레임 메모리(2)에 있는 디지털 영상의 원 주사선 당 픽셀 데이터 개수 (N')에 해당한다. 상기 숫자 2는 주사선당 삭제되어야 할 픽셀 데이터의 총수 (|$N')에 해당한다. 상기 제3레지스터에 저장된 로직 0은 수평방향으로 원디지털 영상의 스케일링 다운이 수행되어야 함을 가리킨다.The programmable register set 30 of the vertical scaling controller 6 initially has five circular scan lines in the frame memory 2, no scan lines should be interpolated, and scaling up of the original digital image in the vertical direction is not performed. It is programmed to indicate that it should not be. The programmable register set of horizontal scaling controller 10 is then programmed by storing the number 5 in the first register, the number 2 in the second register, and the logic 0 in the third register. The number 5 corresponds to the number N 'of pixel data per original scan line of the digital image in the frame memory 2. The number 2 corresponds to the total number (| $ N ') of pixel data to be deleted per scan line. Logic 0 stored in the third register indicates that scaling down of the original digital image should be performed in the horizontal direction.

수직 스케일링 제어기(6)의 제1,제2 및 제3계산수단(31,32,33)의 출력은 어떠한 수직 스케일링 업 이나 스케일링 다운 동작이 수행되지 않기 때문에 0 이다. 따라서 수직 스케일링 제어기(6)는 프레임 메모리(2)를 제어하여 원주사선을 라인메모리(3)에 차례로 제공한다. 수평 스케일링 제어기(10)는 라인메모리(3)와 라인버퍼(5)를 제어하여 상기 라인메모리(5)와 라인버퍼(5)에 저장되어 있는 선택된 픽셀 데이터를 이원선형 가산기(5)에 제공한다. 이 예를 위해, 수직 스케일링제어기(6)로부터의 계수 |A는 항상 1과 같으며, 라인버퍼(4)의 출력은 이원선형 가산기(5)에 의해 무시된다. 이원선형 가산기(5)의 출력은 라인메모리(3)의 출력과 같다.The outputs of the first, second and third calculating means 31, 32, 33 of the vertical scaling controller 6 are zero since no vertical scaling up or scaling down operation is performed. Accordingly, the vertical scaling controller 6 controls the frame memory 2 to sequentially provide the circumferential line to the line memory 3. The horizontal scaling controller 10 controls the line memory 3 and the line buffer 5 to provide the binary linear adder 5 with the selected pixel data stored in the line memory 5 and the line buffer 5. . For this example, the coefficient | A from the vertical scaling controller 6 is always equal to one, and the output of the line buffer 4 is ignored by the binary linear adder 5. The output of the binary linear adder 5 is the same as the output of the line memory 3.

수평 스케일링부의 스케일링 다운 동작은 실질적으로 수직 스케일링부의 동작과 유사하다. 그러나, 수평 스케일링부에서, 수평 스케일링 제어기(10)는 라인메모리(3)와 라인버퍼(4)를 제어하여 선택된 원픽셀데이터만을 출력한다. 라인메모리(3)와 라인버퍼(4)에 의해 출력되는 원픽셀 데이터는 수평 스케일링 제어기(10)의 나머지 분산기의 가산기 출력이 (N'-|$N')보다 작을 때는, 후자에 의해 출력된 바로 전의 원픽셀데이터로부터 (N')을 (N'-|$N')으로 나누었을 때의 몫인 V'만큼 오프셋되고, 그렇지 않을 때는 (V'+1)만큼 오프셋된다.The scaling down operation of the horizontal scaling portion is substantially similar to that of the vertical scaling portion. However, in the horizontal scaling unit, the horizontal scaling controller 10 controls the line memory 3 and the line buffer 4 to output only the selected one pixel data. The one pixel data output by the line memory 3 and the line buffer 4 is output by the latter when the adder output of the remaining disperser of the horizontal scaling controller 10 is smaller than (N'- | $ N '). It is offset by V 'which is the quotient of dividing (N') by (N'- | $ N ') from the previous one-pixel data, otherwise it is offset by (V' + 1).

수평 스케일링 제어기(10)의 제1,제2 계산회로의 출력은 수평 스케일 다운 동작 동안에는 부적절하다. 제3게산회로는 (N')을 주사선당 보유하고 있는 원픽셀 데이터 갯수 (N'-|$N')으로 나누었을 때 발생하는 나머지 U'을 출력한다. 이 예에서, 나머지 U'은 2와 같으며 수평 스케일링 제어기(10)의 나머지 분산기에 제공된다.The output of the first and second calculation circuits of the horizontal scaling controller 10 is inappropriate during the horizontal scale down operation. The third summation circuit outputs the remaining U 'that occurs when (N') is divided by the number of one-pixel data (N'- | $ N ') held per scan line. In this example, the remaining U 'is equal to two and provided to the remaining disperser of the horizontal scaling controller 10.

수평 스케일링 제어기(10)은 초기에 라인메모리(3)에 저장되어 있는 주사선 데이터의 첫 번째 픽셀데이터의 도트어드레스를 세트하고, 라인메모리(3)를 제어하여 시작 픽셀 클럭(starting pixel clock) 동안에 첫 번째 픽셀 데이터를 이원선형 가산기(5)에 공급한다. 로직 0가 수평 스케일링 제어기(10)의 제3레지스터에 저장되어 있기 때문에, 수평 스케일링 제어기(10)의 계수 |A는 1로 유지된다. 따라서, 도트버퍼(8)은 도트레지스터(7)로부터의 픽셀데이터를 저장하기 위해 계속 활성화되고, 이원선형 가산기(9)의 출력은 항상 도트레지스터(7)의 출력이다.The horizontal scaling controller 10 sets the dot address of the first pixel data of the scan line data stored in the line memory 3 initially, and controls the line memory 3 to control the first during the starting pixel clock. The second pixel data is supplied to the binary linear adder 5. Since logic 0 is stored in the third register of the horizontal scaling controller 10, the coefficient | A of the horizontal scaling controller 10 is maintained at one. Thus, the dot buffer 8 continues to be activated for storing pixel data from the dosistor 7, and the output of the binary linear adder 9 is always the output of the dosistor 7. As shown in FIG.

다음 픽셀 클럭 펄스가 도착하면, 수평 스케일링 제어기(10)의 나머지 분산기의 가산기 출력은 차 (N'-|$N') 이고, 거기에 의해 오프셋 (V'-2) 또는 2를 발생한다. 수평 스케일링 제어기(10)는 라인메모리(3)와 라인버퍼(4)를 제어하여 상기 라인메모리(3)와 라인버퍼(4)에 저장되어 있는 주사선의 다섯 번째 픽셀데이터를 도트레지스터(7)로의 수신을 위해 이원선형 가산기(5)에 공급한다.When the next pixel clock pulse arrives, the adder output of the remaining disperser of horizontal scaling controller 10 is the difference (N'- | $ N '), thereby generating an offset (V'-2) or two. The horizontal scaling controller 10 controls the line memory 3 and the line buffer 4 to transfer the fifth pixel data of the scanning lines stored in the line memory 3 and the line buffer 4 to the do register 7. It is supplied to the binary linear adder 5 for reception.

도 11은 이 예 즉 N'=5이고 |$N'=2에 대한 바람직한 실시예의 수평 스케일링 다운 동작을 설명하는 타이밍도이다.FIG. 11 is a timing diagram illustrating the horizontal scaling down operation of the preferred embodiment for this example, N '= 5 and | $ N' = 2.

본 발명의 장치는 디지털 영상의 실시간 2차원 스케일링을 허용하는 전용 하드웨어 장치이다. 게다가, 본 발명의 장치는 스케일링 율에 상관없이 상대적으로 작은 메모리를 요구한다는 관점에서 볼 때 상대적으로 값이 싸고, 처리단계가 적으며, 이로인해 보다 높은 효율성을 얻을 수 있다. 이는 수직 스케일링부의 출력은 중간 프레임버퍼에 같은 데이터를 저장할 필요가 없이 직접 수평 스케일링부에 공급되고, 수평 스케일링부의 출력은 출력 프레임 버퍼에 상기 출력을 저장할 필요없이 직접 출력장치에 공급될 수 있기 때문이다. 따라서 본 발명은 생(live) 비디오 응용에 사용하면 이상적이다.The device of the present invention is a dedicated hardware device that allows real-time two-dimensional scaling of digital images. In addition, the device of the present invention is relatively inexpensive, has fewer processing steps, and can achieve higher efficiency from the viewpoint of requiring a relatively small memory regardless of the scaling ratio. This is because the output of the vertical scaling unit is directly supplied to the horizontal scaling unit without having to store the same data in the intermediate frame buffer, and the output of the horizontal scaling unit can be directly supplied to the output device without the need to store the output in the output frame buffer. . Thus, the present invention is ideal for use in live video applications.

Claims (16)

(N)개의 연속하는 원 주사선과 상기 원 주사선 당 (N')개의 연속하는 원 픽셀 데이터를 갖는 원 디지털 영상을 저장하는 프레임메모리(2)를 포함하고, (M)이 (N)보다 크고 (M')이 (N')보다 클 때, (M)개의 연속하는 원하는 주사선을 얻기 위해 원 디지털 영상을 수직방향으로 스케일링하는 수직 스케일링부 및 주사선당 (M')개의 연속하는 원하는 픽셀 데이터를 얻기 위해 수직 스케일링부로부터 원하는 주사선을 수평방향으로 스케일링하는 수평 스케일링부를 더 포함하는, 균일하게 스케일된 원하는 디지털 영상을 얻기 위한 원 디지털 영상을 처리하는 장치에 있어서,A frame memory 2 for storing original digital images having (N) consecutive original scanning lines and (N ') continuous original pixel data per said original scanning line, wherein (M) is larger than (N) ( When M ') is larger than (N'), the vertical scaling unit for vertically scaling the original digital image to obtain (M) consecutive desired scan lines and (M ') continuous desired pixel data per scan line are obtained. An apparatus for processing an original digital image for obtaining a uniformly scaled desired digital image, further comprising a horizontal scaling unit for horizontally scaling a desired scanning line from the vertical scaling unit. 수직스케일링부; 및Vertical scaling unit; And 수평스케일링부를 포함함을 특징으로 하고,It characterized in that it comprises a horizontal scaling, 상기 수직스케일링부는The vertical scaling part 프레임메모리(2)로부터 (n+1)번째 원주사선을 저장하는 상기 프레임 메모리(2)와 연결된 라인메모리(3);A line memory (3) connected to said frame memory (2) for storing an (n + 1) th circular scan line from a frame memory (2); (n)번째 원주사선을 저장하는 라인메모리(3)와 연결된 라인버퍼(4);a line buffer 4 connected to the line memory 3 storing the (n) th circular scan line; 상기 라인메모리(3)와 라인버퍼(4)에 연결된 제1선형보간기(5); 및A first linear interpolator 5 connected to the line memory 3 and the line buffer 4; And 상기 프레임메모리(2), 상기 라인버퍼(4) 및 상기 제1선형보간기(5)에 연결되고, 상기 라인메모리(3)와 라인버퍼(4)에 원 주사선의 저장을 제어하며, 더구나 (M-N)을 (N-1)로 나눈 나머지가 (S) 이고, 1 부터 (S) 까지의 범위에 속하는 (s)에 대해 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소수일 때, 상기 라인메모리(3)와 라인버퍼(4)로부터 (n)번째와 (n+1)번째의 원 주사선을 선형보간하여 그 사이에 삽입된 잉여 보간된 주사선을 생성하도록 상기 제1선형보간기(5)를 제어하는 수직 스케일링 제어기(6)를 포함하고,It is connected to the frame memory 2, the line buffer 4 and the first linear interpolator 5, and controls the storage of the original scan line in the line memory 3 and the line buffer 4, furthermore ( The remainder of MN) divided by (N-1) is (S), and for (s) in the range from 1 to (S), (n) is (n + 1) * (S) 1 (s) * When the minimum number satisfies (N), the linear interpolation of the (n) th and (n + 1) th original scan lines from the line memory 3 and the line buffer 4 is performed, and the interpolated scan lines inserted therebetween are inserted. A vertical scaling controller 6 for controlling the first linear interpolator 5 to produce 상기 수평 스케일링부는The horizontal scaling unit 상기 제1선형보간기(5)에 연결되어, 상기 제1선형보간기(5)로부터 한 주사선의 (n'+1)번째 픽셀 데이터를 저장하는 도트레지스터(7);A do register (7) connected to said first linear interpolator (5) for storing (n '+ 1) th pixel data of one scan line from said first linear interpolator (5); 상기 도트 레지스터(7)에 연결되어, 상기 주사선의 (n')번째 픽셀 데이터를 저장하는 도트버퍼(8);A dot buffer 8 connected to the dot register 7 to store (n ') th pixel data of the scan line; 상기 도트레지스터(7)와 상기 도트버퍼(8)에 연결되어 있는 제2선형 보간기(9); 및A second linear interpolator (9) connected to the dosistor (7) and the dot buffer (8); And 상기 라인메모리(3), 라인버퍼(4), 도트버퍼(8) 및 상기 제2선형 보간기(9)에 연결되어 있으며, 픽셀데이터의 도트레지스터(7), 도트버퍼(8)로의 저장을 제어하고, 더구나 (M'-N')을 (N'-1)로 나눈 나머지가 (S') 이고, 1 부터 (S') 까지의 범위에 속하는 (s')에 대해 (n')이 (n'+1)*(S') 1 (s')*(N')을 만족하는 최소수일 때, 상기 도트레지스터(7)와 도트버퍼(8)로부터 (n')번째와 (n'+1)번째의 픽셀 데이터의 선형보간을 수행하여 상기 (n')번째와 (n'+1)번째의 픽셀 데이터 사이에 삽입된 잉여 보간된 픽셀데이터를 생성하도록 상기 제2선형보간기(9)를 제어하는 수평스케일링제어기(10)를 포함하고,Connected to the line memory 3, the line buffer 4, the dot buffer 8, and the second linear interpolator 9, and the pixel data is stored in the do register 7 and the dot buffer 8. In addition, the remainder of (M'-N ') divided by (N'-1) is (S') and (n ') for (s') in the range from 1 to (S'). When (n '+ 1) * (S') 1 is the minimum number satisfying (s ') * (N'), the (n ') th and (n') from the dosistor 7 and the dot buffer 8 The second linear interpolator 9 generates linearly interpolated pixel data inserted between the (n ') th and (n' + 1) th pixel data by performing linear interpolation of the +1) th pixel data. Horizontal scaling controller 10 for controlling the), 상기 수직스케일링부와 상기 수평스케일링부를 구비함으로써 상기 제2선형보간기의 출력이 출력장치로 직접 공급될 수 있는 원 디지털영상 처리장치.And the output of the second linear interpolator can be directly supplied to an output device by including the vertical scaling unit and the horizontal scaling unit. 제1항에 있어서, 상기 수직스케일링 제어기(6)는The method of claim 1, wherein the vertical scaling controller (6) (n)번째와 (n+1)번째 원 주사선의 선형 보간을 수행하여, (M-N)이 (N-1)보다 클 때 상기 (n)번째와 (n+1)번째의 원 주사선 사이에 삽입된 연속하는 보간된 주사선의 부가적인 수 (T), 즉 (M-N)을 (N-1)으로 나누어 발생하는 몫 (T)를 생성하기 위해 상기 제1선형보간기(5)를 더 제어함을 특징으로 하는 원 디지털 영상처리장치.Perform linear interpolation of the (n) th and (n + 1) th original scan lines, and insert between the (n) th and (n + 1) th original scan lines when (MN) is greater than (N-1) Further control of the first linear interpolator 5 to generate an additional number T of the successive interpolated scan lines, i.e., MN divided by (N-1). Original digital image processing device characterized in that. 제2항에 있어서, 상기 제1선형보간기(5)는The method of claim 2, wherein the first linear interpolator (5) 이원선형 가산기임을 부가적인 특징으로 하는 원 디지털 영상처리장치.An original digital image processing device, which is an additional feature of being a binary linear adder. 제1항에 있어서, 상기 수평스케일링 제어기(10)는The method of claim 1, wherein the horizontal scaling controller 10 (n')번째와 (n'+1)번째 원 픽셀 데이터의 선형 보간을 수행하여, (M'-N')이 (N'-1)보다 클 때 상기 (n')번째와 (n'+1)번째의 원 픽셀 데이터 사이에 삽입된 연속하는 보간된 픽셀 데이터의 부가적인 수 (T'), 즉 (M'-N')을 (N'-1)으로 나누어 발생하는 몫 (T')를 생성하기 위해 상기 제2선형보간기(9)를 더 제어함을 특징으로 하는 원 디지털 영상처리장치.Performs linear interpolation of the (n ') th and (n' + 1) th pixel data, so that when the (M'-N ') is greater than (N'-1), the (n') th and (n ') A quotient (T ') generated by dividing the additional number (T'), i.e., M'-N ', by (N'-1) of consecutive interpolated pixel data inserted between the +1) th original pixel data. And further controlling the second linear interpolator (9) in order to generate a). 제4항에 있어서, 상기 제2선형 보간기(9)는The method of claim 4, wherein the second linear interpolator (9) 이원선형 가산기임을 부가적인 특징으로 하는 원 디지털영상 처리장치.An original digital image processing device, which is an additional feature of being a binary linear adder. (N)개의 연속하는 원 주사선과 상기 원 주사선 당 (N')개의 연속하는 원 픽셀 데이터를 갖는 원 디지털 영상을 저장하는 프레임메모리(2)를 포함하고, (M)이 (N)보다 크고 (M')이 (N')보다 작을 때, (M)개의 연속하는 원하는 주사선을 얻기 위해 원 디지털 영상을 수직방향으로 스케일링하는 수직 스케일링부 및 주사선당 (M')개의 연속하는 원하는 픽셀 데이터를 얻기 위해 수직 스케일링부로부터 원하는 주사선을 수평방향으로 스케일링하는 수평 스케일링부를 더 포함하는, 균일하게 스케일된 원하는 디지털 영상을 얻기 위한 원 디지털 영상을 처리하는 장치에 있어서,A frame memory 2 for storing original digital images having (N) consecutive original scanning lines and (N ') continuous original pixel data per said original scanning line, wherein (M) is larger than (N) ( When M ') is smaller than (N'), the vertical scaling unit for vertically scaling the original digital image to obtain (M) consecutive desired scan lines and (M ') continuous desired pixel data per scan line are obtained. An apparatus for processing an original digital image for obtaining a uniformly scaled desired digital image, further comprising a horizontal scaling unit for horizontally scaling a desired scanning line from the vertical scaling unit. 수직스케일링부; 및Vertical scaling unit; And 수평스케일링부를 포함함을 특징으로 하고,It characterized in that it comprises a horizontal scaling, 상기 수직스케일링부는The vertical scaling part 프레임메모리(2)로부터 (n+1)번째 원주사선을 저장하는 상기 프레임 메모리(2)와 연결된 라인메모리(3);A line memory (3) connected to said frame memory (2) for storing an (n + 1) th circular scan line from a frame memory (2); (n)번째 원주사선을 저장하는 라인메모리(3)와 연결된 라인버퍼(4);a line buffer 4 connected to the line memory 3 storing the (n) th circular scan line; 상기 라인메모리(3)와 라인버퍼(4)에 연결된 선형보간기(5); 및A linear interpolator 5 connected to the line memory 3 and the line buffer 4; And 상기 프레임메모리(2), 상기 라인버퍼(4) 및 상기 선형보간기(5)에 연결되고, 상기 라인메모리(3)와 라인버퍼(4)에 원 주사선의 저장을 제어하며, 더구나 (M-N)을 (N-1)로 나눈 나머지가 (S) 이고, 1 부터 (S) 까지의 범위에 속하는 (s)에 대해 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소수일 때, 상기 라인메모리(3)와 라인버퍼(4)로부터 (n)번째와 (n+1)번째의 원 주사선을 선형보간하여 그 사이에 삽입된 잉여 보간된 주사선을 생성하도록 상기 선형보간기(5)를 제어하는 수직 스케일링 제어기(6)를 포함하고,It is connected to the frame memory 2, the line buffer 4 and the linear interpolator 5, and controls the storage of the original scan line in the line memory 3 and the line buffer 4, furthermore (MN) Divided by (N-1) is (S) and (n) is (n + 1) * (S) 1 (s) * (N for (s) in the range of 1 to (S) When the minimum number is satisfied, linear interpolation is performed between the (n) th and (n + 1) th original scan lines from the line memory 3 and the line buffer 4 to generate a redundant interpolated scan line inserted therebetween. A vertical scaling controller 6 for controlling the linear interpolator 5 to 상기 수평스케일링부는 수평스케일링 제어기(10)를 포함하고, 상기 수평스케일링 제어기(10)는The horizontal scaling unit includes a horizontal scaling controller 10, the horizontal scaling controller 10 상기 라인메모리(3)와 상기 라인버퍼(4)에 연결되어, 상기 라인 메모리(3)와 상기 라인버퍼(4)를 제어하여 하나의 원 주사선의 첫 번째 원 픽셀데이터를 출력하는 어드레스 생성기(37);An address generator 37 connected to the line memory 3 and the line buffer 4 to control the line memory 3 and the line buffer 4 to output the first original pixel data of one original scan line. ); (N')을 (M')으로 나누어 발생하는 나머지 (U')를 생성하기 위한 생성수단(33);Generating means 33 for generating the remainder U 'generated by dividing (N') by (M '); 데이터 레지스터(56);Data register 56; 상기 생성수단(33)과 상기 데이터 레지스터(56)에 연결되어, 상기 (U')와 상기 데이터 레지스터에 저장된 숫자를 더하여 합을 구하는 가산기 수단(43); 및An adder means (43), connected to said generating means (33) and said data register (56), for adding a number stored in said U 'and said data register to obtain a sum; And 상기 가산기수단(43), 상기 어드레스생성기(37) 및 상기 데이터 레지스터(56)에 연결되어, 상기 합을 (M')과 비교하고, 상기 어드레스 생성기(37)를 활성화시켜, 상기 라인메모리(3)와 라인버퍼(4)를 제어하여, (N')을 (M')으로 나누어 몫을 (V')라 할 때 상기 라인메모리(3)와 라인버퍼(4)에 의해 출력된 직전의 원 픽셀데이터로 부터 합이 (M')보다 작을 때는 (V')만큼, 합이 (M')과 적어도 같을 때는 (V'+1)만큼 오프셋(offset)된, 상기 한 주사선의 또 다른 원 픽셀 데이터를 출력하고, 합이 적어도 (M')과 같을 때는 상기 (M')과 합의 차를 데이터 레지스터(56)에 저장하고 합이 (M')보다 작을 때는 상기 합을 데이터 레지스터(56)에 저장하는 계산수단(44)을 포함하고,Connected to the adder means 43, the address generator 37 and the data register 56 to compare the sum with M ', activate the address generator 37, and activate the line memory 3; ) And the line buffer 4, where (N ') is divided by (M') and the quotient is (V '), the circle immediately before the output by the line memory 3 and the line buffer 4 is output. Another original pixel of the one scan line, offset from the pixel data by (V ') when the sum is less than (M') and by (V '+ 1) when the sum is at least equal to (M'). Outputs the data, and if the sum is at least equal to (M '), the difference between (M') and sum is stored in the data register 56; A calculation means 44 for storing, 상기 수직스케일링부와 상기 수평스케일링부를 구비함으로써 상기 수평 스케일링부의 출력이 출력장치로 직접 공급될 수 있는 원 디지털영상 처리장치.And an output of the horizontal scaling unit directly to an output device by including the vertical scaling unit and the horizontal scaling unit. 제6항에 있어서, 상기 수직스케일링 제어기(6)는7. The vertical scaling controller (6) of claim 6, wherein (n)번째와 (n+1)번째 원 주사선의 선형 보간을 수행하여, (M-N)이 (N-1)보다 클 때 상기 (n)번째와 (n+1)번째의 원 주사선 사이에 삽입된 연속하는 보간된 주사선의 부가적인 수 (T), 즉 (M-N)을 (N-1)으로 나누어 발생하는 몫 (T)를 생성하기 위해 상기 선형보간기(5)를 더 제어함을 특징으로 하는 원 디지털 영상처리장치.Perform linear interpolation of the (n) th and (n + 1) th original scan lines, and insert between the (n) th and (n + 1) th original scan lines when (MN) is greater than (N-1) Further controlling the linear interpolator 5 to generate an quotient T generated by dividing the additional number T, i.e., MN, by (N-1) of successive interpolated scan lines. One digital image processing device. 제7항에 있어서, 상기 선형 보간기(5)는8. The linear interpolator (5) according to claim 7, 이원선형 가산기임을 부가적인 특징으로 하는 원 디지털영상 처리장치.An original digital image processing device, which is an additional feature of being a binary linear adder. (N)개의 연속하는 원 주사선과 상기 원 주사선 당 (N')개의 연속하는 원 픽셀 데이터를 갖는 원 디지털 영상을 저장하는 프레임메모리(2)를 포함하고, (M)이 (N)보다 작고 (M')이 (N')보다 클 때, (M)개의 연속하는 원하는 주사선을 얻기 위해 원 디지털 영상을 수직방향으로 스케일링하는 수직 스케일링부 및 주사선당 (M')개의 연속하는 원하는 픽셀 데이터를 얻기 위해 수직 스케일링부로부터 원하는 주사선을 수평방향으로 스케일링하는 수평 스케일링부를 더 포함하는, 균일하게 스케일된 원하는 디지털 영상을 얻기 위한 원 디지털 영상을 처리하는 장치에 있어서,A frame memory 2 for storing original digital images having (N) consecutive original scanning lines and (N ') continuous original pixel data per said original scanning line, wherein (M) is smaller than (N) ( When M ') is larger than (N'), the vertical scaling unit for vertically scaling the original digital image to obtain (M) consecutive desired scan lines and (M ') continuous desired pixel data per scan line are obtained. An apparatus for processing an original digital image for obtaining a uniformly scaled desired digital image, further comprising a horizontal scaling unit for horizontally scaling a desired scanning line from the vertical scaling unit. 수직스케일링부; 및Vertical scaling unit; And 수평스케일링부를 포함함을 특징으로 하고,It characterized in that it comprises a horizontal scaling, 상기 수직스케일링부는 프레임메모리(2)에 연결된 수직스케일링 제어기(6) 및 라인메모리(3)를 포함하고, 상기 수직스케일링제어기(6)는The vertical scaling unit includes a vertical scaling controller 6 and a line memory 3 connected to the frame memory 2, and the vertical scaling controller 6 상기 프레임메모리(2)에 연결되고, 상기 프레임메모리(2)를 제어하여 상기 라인메모리(3)로의 저장을 위해 첫번째 원 주사선을 출력하는 어드레스 생성기(37);An address generator (37) connected to the frame memory (2) for controlling the frame memory (2) to output a first original scan line for storage in the line memory (3); (N)을 (M)으로 나누어 발생하는 나머지 (U)를 생성하기 위한 생성수단(33);Generating means (33) for generating the remainder (U) generated by dividing (N) by (M); 데이터 레지스터(56);Data register 56; 상기 생성수단(33)과 상기 데이터레지스터(56)에 연결되어, 상기 (U)와 상기 데이터레지스터(56)에 저장된 숫자를 더하여 합을 구하는 가산기 수단(43); 및An adder means (43) connected to the generating means (33) and the data register (56) to obtain a sum by adding the numbers stored in the (U) and the data register (56); And 상기 가산기수단(43), 상기 어드레스생성기(37) 및 상기 데이터 레지스터(56)에 연결되어, 상기 합을 (M)과 비교하고 상기 어드레스생성기(37)를 활성화시켜, 상기 프레임메모리(2)를 제어하여 상기 라인메모리(3)에 저장하기 위한, (N)을 (M)으로 나누어 몫을 (V)라 할 때 상기 프레임메모리(2)에 의해 출력된 직전의 원 주사선으로 부터 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 오프셋(offset)된 또 다른 원 주사선을 출력하고, 합이 적어도 (M)과 같을 때는 상기 데이터레지스터(56)에 상기 (M)과 합의 차를 저장하고 합이 (M)보다 작을 때는 상기 데이터레지스터(56)에 상기 합을 저장하는 계산수단(44)을 포함하고,Connected to the adder means 43, the address generator 37 and the data register 56, comparing the sum to M and activating the address generator 37 to enable the frame memory 2; When (N) is divided by (M) and the quotient is (V) for controlling and storing in the line memory 3, the sum is equal to (M) from the original scanning line immediately outputted by the frame memory 2 (M). Outputs another original scan line offset by (V) when less than) and by (V + 1) when the sum is at least equal to (M); and when the sum is at least equal to (M), the data register ( Calculating means (44) for storing the difference between the sum in (M) and the sum in the data register (56) when the sum is less than (M), 상기 수평스케일링부는The horizontal scaling unit 상기 라인메모리(3)에 연결되어, 상기 라인메모리(3)로부터 한 주사선의 (n'+1)번째 픽셀 데이터를 저장하는 도트레지스터(7);A do register (7) connected to said line memory (3) for storing (n '+ 1) th pixel data of one scanning line from said line memory (3); 상기 도트레지스터(7)에 연결되어, 상기 라인메모리(3)로부터 상기 한 주사선의 (n')번째 픽셀 데이터를 저장하는 도트버퍼(8);A dot buffer (8) connected to said do register (7) for storing (n ') th pixel data of said one scanning line from said line memory (3); 상기 도트레지스터(7)와 상기 도트버퍼(8)에 연결되어 있는 선형보간기(9); 및A linear interpolator (9) connected to the dosistor (7) and the dot buffer (8); And 상기 라인메모리(3), 도트버퍼(8) 및 선형 보간기(9)에 연결되어 있으며, 픽셀데이터의 도트레지스터(7) 및 도트버퍼(8)로의 저장을 제어하고, (M'-N')을 (N'-1)로 나눈 나머지가 (S') 이고, 1 부터 (S') 까지의 범위에 속하는 (s')에 대해 (n')이 (n'+1)*(S') 1 (s')*(N')을 만족하는 최소수일 때, 상기 도트레지스터(7)와 도트버퍼(8)로부터 (n')번째와 (n'+1)번째의 픽셀 데이터의 선형보간을 수행하여 상기 (n')번째와 (n'+1)번째의 픽셀 데이터 사이에 삽입된 잉여 보간된 픽셀데이터를 생성하도록 상기 선형보간기(9)를 더 제어하는 수평스케일링제어기(10)를 포함하고,It is connected to the line memory 3, the dot buffer 8 and the linear interpolator 9, and controls the storage of the pixel data into the do register 7 and the dot buffer 8, (M'-N ' ) Divided by (N'-1) is (S '), and (n') is (n '+ 1) * (S') for (s ') in the range from 1 to (S'). ) Linear interpolation of the (n ') th and (n' + 1) th pixel data from the do register 7 and the dot buffer 8 when the minimum number satisfies 1 (s ') * (N'). A horizontal scaling controller 10 which further controls the linear interpolator 9 to generate redundant interpolated pixel data inserted between the (n ') th and (n' + 1) th pixel data. Including, 상기 수직스케일링부와 상기 수평스케일링부를 구비함으로써 상기 선형보간기(9)의 출력이 출력장치로 직접 공급될 수 있는 원 디지털영상 처리장치.And the output of the linear interpolator (9) can be supplied directly to an output device by including the vertical scaling unit and the horizontal scaling unit. 제9항에 있어서, 상기 수평 스케일링 제어기(10)는10. The system of claim 9 wherein the horizontal scaling controller 10 라인메모리(30로부터 상기 한 주사선의 (n')번째와 (n'+1)번째 원 픽셀 데이터의 선형 보간을 수행하여, (M'-N')이 (N'-1)보다 클 때 상기 (n')번째와 (n'+1)번째의 원 픽셀 데이터 사이에 삽입된 연속하는 보간된 픽셀 데이터의 부가적인 수 (T'), 즉 (M'-N')을 (N'-1)으로 나누어 발생하는 몫 (T')를 생성하기 위해 상기 선형보간기(9)를 더 제어함을 특징으로 하는 원 디지털영상 처리장치.Linear interpolation of the (n ') th and (n' + 1) th pixel data of the one scanning line from the line memory 30 is performed when (M'-N ') is larger than (N'-1). An additional number T 'of consecutive interpolated pixel data inserted between the (n') th and (n '+ 1) th original pixel data, T', that is, (M'-N ') is represented by (N'-1 And further controlling the linear interpolator (9) to generate a quotient (T ') generated by dividing by. 제10항에 있어서, 상기 선형보간기(9)는11. The linear interpolator (9) according to claim 10, wherein 이원선형 가산기임을 부가적인 특징으로 하는 원 디지털영상 처리장치.An original digital image processing device, which is an additional feature of being a binary linear adder. (N)개의 연속하는 원 주사선과 상기 원 주사선 당 (N')개의 연속하는 원 픽셀 데이터를 갖는 원 디지털 영상을 저장하는 프레임메모리(2)를 포함하고, (M)이 (N)보다 작고 (M')이 (N')보다 작을 때, (M)개의 연속하는 원하는 주사선을 얻기 위해 원 디지털 영상을 수직방향으로 스케일링하는 수직 스케일링부 및 주사선당 (M')개의 연속하는 원하는 픽셀 데이터를 얻기 위해 수직 스케일링부로부터 원하는 주사선을 수평방향으로 스케일링하는 수평 스케일링부를 더 포함하는, 균일하게 스케일된 원하는 디지털 영상을 얻기 위한 원 디지털 영상을 처리하는 장치에 있어서,A frame memory 2 for storing original digital images having (N) consecutive original scanning lines and (N ') continuous original pixel data per said original scanning line, wherein (M) is smaller than (N) ( When M ') is smaller than (N'), the vertical scaling unit for vertically scaling the original digital image to obtain (M) consecutive desired scan lines and (M ') continuous desired pixel data per scan line are obtained. An apparatus for processing an original digital image for obtaining a uniformly scaled desired digital image, further comprising a horizontal scaling unit for horizontally scaling a desired scanning line from the vertical scaling unit. 수직스케일링부; 및Vertical scaling unit; And 수평스케일링부를 포함함을 특징으로 하고,It characterized in that it comprises a horizontal scaling, 상기 수직스케일링부는 프레임메모리(2)에 연결된 수직스케일링 제어기(6) 및 라인메모리(3)를 포함하고, 상기 수직스케일링제어기(6)는The vertical scaling unit includes a vertical scaling controller 6 and a line memory 3 connected to the frame memory 2, and the vertical scaling controller 6 상기 프레임메모리(2)에 연결되고, 상기 프레임메모리(2)를 제어하여 상기 라인메모리(3)로의 저장을 위해 첫번째 원 주사선을 출력하는 제1어드레스 생성기(37);A first address generator (37) connected to the frame memory (2) for controlling the frame memory (2) to output a first original scan line for storage in the line memory (3); (N)을 (M)으로 나누어 발생하는 나머지 (U)를 생성하기 위한 제1생성수단(33);First generating means (33) for generating the remainder (U) generated by dividing (N) by (M); 제1데이터 레지스터(56);First data register 56; 상기 제1생성수단(33)과 상기 제1데이터레지스터(56)에 연결되어, 상기 (U)와 상기 데이터레지스터(56)에 저장된 숫자를 더하여 합을 구하는 제1가산기 수단(43); 및First adder means (43) connected to said first generating means (33) and said first data register (56) to add a number stored in said (U) and said data register (56) to obtain a sum; And 상기 제1가산기수단(43), 상기 제1어드레스생성기(37) 및 상기 제1데이터레지스터(56)에 연결되어, 상기 합을 (M)과 비교하고 상기 제1어드레스생성기(37)를 활성화시켜, 상기 프레임메모리(2)를 제어하여 상기 라인메모리(3)로의 저장을 위해 (N)을 (M)으로 나누어 몫을 (V)라 할 때 상기 프레임메모리(2)에 의해 출력된 직전의 원 주사선으로 부터 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 오프셋(offset)된 또 다른 원 주사선을 출력하고, 합이 적어도 (M)과 같을 때는 상기 제1데이터레지스터(56)에 상기 (M)과 합의 차를 저장하고 합이 (M)보다 작을 때는 상기 제1데이터레지스터(56)에 상기 합을 저장하는 제1계산수단(44)을 포함하고,Connected to the first adder means 43, the first address generator 37 and the first data register 56 to compare the sum with M and activate the first address generator 37 The original circle outputted by the frame memory 2 when the share is (V) by dividing (N) by (M) for controlling the frame memory 2 and storing it in the line memory 3. Output another original scan line offset from the scan line by (V) when the sum is less than (M) and by (V + 1) when the sum is at least equal to (M), and the sum is at least (M) The first calculation means 44 for storing the difference between the (M) and the sum in the first data register 56 when the sum is less than (M) in the first data register 56 when ), 상기 수평스케일링부는 수평스케일링제어기(10)를 포함하고, 상기 수평스케일링제어기(10)는The horizontal scaling unit includes a horizontal scaling controller 10, the horizontal scaling controller 10 상기 라인메모리(3)에 연결되어, 하나의 원 주사선의 첫 번째 원 픽셀데이터를 출력하기 위해 상기 라인 메모리(3)를 제어하는 제2어드레스 생성기(37);A second address generator (37) connected to said line memory (3) for controlling said line memory (3) for outputting first original pixel data of one original scanning line; (N')을 (M')으로 나누어 발생하는 나머지 (U')를 생성하기 위한 제2생성수단(33);Second generating means (33) for generating the remainder (U ') generated by dividing (N') by (M '); 제2데이터 레지스터(56);Second data register 56; 상기 제2생성수단(33)과 상기 제2데이터레지스터(56)에 연결되어, 상기 (U')와 상기 데이터 레지스터에 저장된 숫자를 더하여 합을 구하는 제2가산기 수단(43); 및Second adder means (43) connected to said second generating means (33) and said second data register (56) to obtain a sum by adding the number stored in said U 'and said data register; And 상기 제2가산기수단(43), 상기 제2어드레스생성기(37) 및 상기 제2데이터 레지스터(56)에 연결되어, 상기 합을 (M')과 비교하고, 상기 제2어드레스생성기(37)를 활성화시켜, 상기 라인메모리(3)를 제어하여, (N')을 (M')으로 나누어 몫을 (V')라 할 때 상기 라인메모리(3)와 라인버퍼(4)에 의해 출력된 직전의 원 픽셀데이터로 부터 합이 (M')보다 작을 때는 (V')만큼, 합이 (M')과 적어도 같을 때는 (V'+1)만큼 오프셋(offset)된, 상기 하나의 원 주사선의 또 다른 원 픽셀 데이터를 출력하고, 합이 적어도 (M')과 같을 때는 상기 (M')과 합의 차를 제2데이터 레지스터(56)에 저장하고 합이 (M')보다 작을 때는 상기 합을 제2데이터 레지스터(56)에 저장하는 계산수단(44)을 포함하고,Connected to the second adder means 43, the second address generator 37 and the second data register 56, comparing the sum with M ', and comparing the second address generator 37 with And the line memory 3 is controlled, and immediately before the line memory 3 and the line buffer 4 are output when (N ') is divided by (M') and the quotient is (V '). The original pixel data of is offset by (V ') when the sum is less than (M') and (V '+ 1) when the sum is at least equal to (M'). Output another one-pixel data, and store the difference of sum with (M ') in the second data register 56 when the sum is at least equal to (M') and add the sum when the sum is less than (M '). Calculating means (44) for storing in the second data register (56), 상기 수직스케일링부와 상기 수평스케일링부를 구비함으로써 상기 수평 스케일링부의 출력이 출력장치로 직접 공급될 수 있는 원 디지털영상 처리장치.And an output of the horizontal scaling unit directly to an output device by including the vertical scaling unit and the horizontal scaling unit. (M)이 (N) 보다 클 때 (N)개의 연속하는 원 영상 데이터를 가지는 원 디지탈 영상을 처리하여, (M)개의 연속하는 원하는 영상 데이터를 가지는 균일하게 스케일된 원하는 디지탈 영상을 얻기 위한 방법에 있어서,A method for processing a raw digital image having (N) consecutive original image data when (M) is larger than (N) to obtain a uniformly scaled desired digital image having (M) continuous desired image data To 제1선형보간기(5)를 제공하는 단계; 및Providing a first linear interpolator (5); And (M-N)을 (N-1)로 나누어 나머지를 (S)라 하고, (s)가 1 부터 (S) 까지의 범위에서 변할 때 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소 수라 하면, 원 영상 데이터의 (n)번째와 (n+1)번째 영상 데이터의 선형 보간을 수행하여, (n)번째와 (n+1)번째 원 영상 데이터 사이에 삽입된 잉여 보간 영상 데이터를 생성하기 위해 상기 제1선형보간기(5)를 제어하는 단계를 포함함을 특징으로 하는 원 디지탈 영상을 균일하게 스케일링하는 방법.Dividing (MN) by (N-1), the remainder is called (S), and when (s) varies from 1 to (S), (n) is (n + 1) * (S) 1 (s If the minimum number satisfies) * (N), linear interpolation of the (n) th and (n + 1) th image data of the original image data is performed to perform the (n) th and (n + 1) th original image data. And controlling said first linear interpolator (5) to generate redundant interpolation image data interposed therebetween. (M)이 (N)보다 작을 때 (N)개의 연속하는 원 영상 데이터를 가지는 원 디지탈 영상을 처리하여 (M)개의 연속하는 원하는 영상 데이터를 가지는 균일하게 스케일링된 원하는 디지탈 영상을 얻기 위한 방법에 있어서,A method for processing a uniform digital image having (N) consecutive original image data when (M) is smaller than (N) to obtain a uniformly scaled desired digital image having (M) continuous desired image data. In 메모리부(3)에 원영상 데이터를 저장하는 제(I-1)단계;(I-1) step of storing the original image data in the memory unit 3; 상기 메모리부(3)를 제어하여 원영상 데이터 중 첫번째 픽셀 데이터를 출력하는 어드레스 생성기(37)를 제공하는 제(I-2)단계;(I-2) controlling the memory unit 3 to provide an address generator 37 for outputting the first pixel data of the original image data; 숫자(N)을 숫자(M)으로 나눌 때 발생하는 나머지인 숫자(U)를 데이터 레지스터(56)에 저장하는 제(I-3)단계;A step (I-3) of storing the number U, the remainder generated when the number N is divided by the number M, in the data register 56; 숫자(U)와 상기 데이터 레지스터(56)에 저장되어 있는 숫자를 더하여 합을 구하는 제(I-4)단계;A step (I-4) of adding a number U and a number stored in the data register 56 to obtain a sum; 상기 합과 숫자(M)을 비교하는 제(I-5)단계;(I-5) comparing the sum with the number M; (N)을 (M)으로 나누어 몫을 (V)라 할 때, 상기 메모리부(2)를 제어하여 상기 메모리부(2)에 의해 출력된 바로 전의 원 영상 데이터로 부터, 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 오프셋된 또 다른 영상 데이터를 출력하기 위해 상기 어드레스 생성기(37)를 활성화시키는 제(I-6)단계;When (N) is divided by (M) and the quotient is (V), the sum is (M) from the original image data immediately outputted by the memory unit 2 by controlling the memory unit 2. (I-6) activating the address generator 37 to output another image data offset by (V) when smaller and (V + 1) when the sum is at least equal to (M); 합이 숫자(M)과 적어도 같을 때는 숫자(M)를 그 합으로부터 빼서 발생하는 차를 상기 데이터 레지스터(56)에 저장하고, 합이 숫자(M)보다 작을 때는 상기 합을 상기 데이터 레지스터(56)에 저장하는 제(I-7)단계; 및When the sum is at least equal to the number M, the difference generated by subtracting the number M from the sum is stored in the data register 56. When the sum is less than the number M, the sum is stored in the data register 56. (I-7) storing in); And (M)개의 원 영상 데이터가 상기 메모리부(2)에 의해 출력될 때 까지 상기 제(I-4)단계에서 상기 제(I-7)단계를 반복하는 제(I-8)단계를 포함함을 특징으로 하는 원 디지탈 영상을 균일하게 스케일링하는 방법.And a step (I-8) of repeating step (I-7) to step (I-4) from step (I-4) until (M) original image data is output by the memory unit (2). And uniformly scaling the original digital image. (M)이 (M)보다 클 때 (N)개의 연속하는 원 영상 데이터를 가진 원 디지탈 영상을 처리하여 (M)개의 연속하는 원하는 영상 데이터를 갖는 균일하게 스케일된 원하는 디지탈 영상을 얻는 장치에 있어서,An apparatus for processing a raw digital image having (N) consecutive original image data when (M) is larger than (M) to obtain a uniformly scaled desired digital image having (M) continuous desired image data. , 제1선형 보간기(5); 및A first linear interpolator 5; And (M-N)을 (N-1)로 나누어 나머지를 (S)라 하고, (s)가 1 부터 (S) 까지의 범위에서 변할 때 (n)이 (n+1)*(S) 1 (s)*(N)을 만족하는 최소 수라 하면, 상기 제1선형 보간기(5)를 제어하여 원 영상 데이터의 (n)번째와 (n+1)번째 영상 데이터의 선형 보간을 수행하여, (n)번째와 (n+1)번째 원 영상 데이터 사이에 삽입된 잉여 보간 영상 데이터를 생성하기 위한, 상기 제1선형 보간기(5)에 연결된 제1제어기 수단(6)을 포함함을 특징으로 하여 이루어지는 디지탈 영상을 균일하게 스케일링하는 장치.Dividing (MN) by (N-1), the remainder is called (S), and when (s) varies from 1 to (S), (n) is (n + 1) * (S) 1 (s If the minimum number satisfies ** (N), the first linear interpolator 5 is controlled to perform linear interpolation of the (n) th and (n + 1) th image data of the original image data, and (n A first controller means (6) connected to said first linear interpolator (5) for generating redundant interpolation image data inserted between the < RTI ID = 0.0 > th < / RTI > A device for uniformly scaling a digital image made. 숫자(M)이 숫자(M)보다 작을때 (N)개의 연속하는 원 영상 데이터를 가진 원 디지탈 영상을 처리하여 (M)개의 연속하는 원하는 영상 데이터를 가진 균일하게 스케일된 원하는 디지탈 영상을 얻는 장치에 있어서,A device for processing a uniform digital image with (N) consecutive original image data when the number (M) is smaller than the number (M) to obtain a uniformly scaled desired digital image with (M) continuous desired image data. To 원 영상 데이터를 저장하는 제1메모리부(2);A first memory unit 2 for storing original image data; 상기 제1메모리부(2)에 연결되어 상기 제1메모리부(2)를 제어하여 영상 데이터의 첫번째 데이터를 출력하는 제1어드레스 생성기(37);A first address generator (37) connected to the first memory unit (2) for controlling the first memory unit (2) to output first data of image data; 숫자(N)을 숫자(M)으로 나누어 발생하는 몫인 숫자(U)를 생성하는 제1생성수단(33);First generating means 33 for generating a number U which is a quotient generated by dividing the number N by the number M; 제1데이터 레지스터(56);First data register 56; 상기 제1생성수단(33)과 상기 제1데이터 레지스터(56)에 연결되어, 숫자(U)와 상기 제1데이터 레지스터(56)에 저장된 숫자를 더하여 합을 얻는 제1가산기 수단(43); 및First adder means (43) connected to said first generating means (33) and said first data register (56) to obtain a sum by adding a number (U) and a number stored in said first data register (56); And 상기 제1가산기 수단(43), 상기 제1어드레스 생성기(37), 상기 제1데이터 레지스터(56)에 연결되어, 합과 숫자(M)을 비교하고, (N)을 (M)으로 나누어 몫을 (V)라 할 때 상기 제1메모리부(2)를 제어하여 상기 제1메모리부(2)에 의해 출력된 바로 전의 원 영상 데이터로 부터, 합이 (M)보다 작을 때는 (V)만큼, 합이 (M)과 적어도 같을 때는 (V+1)만큼 오프셋된 또 다른 영상 데이터를 출력하고, 합이 숫자(M)과 적어도 같을 때는 숫자(M)과 상기 데이터 레지스터(56)에 있는 합과의 차를 저장하고, 그리고 합이 숫자(M)보다 작을 때는 상기 데이터 레지스터(56)에 있는 합을 저장하기 위해 상기 제1어드레스 생성기(37)를 활성화시키는 제1계산수단(44) 포함함을 특징으로 하는 디지탈 영상을 균일하게 스케일링 하는 장치.It is connected to the first adder means 43, the first address generator 37, and the first data register 56 to compare the sum and the number M, divide (N) by (M), and share. When (V) is controlled from the original image data output by the first memory unit 2 by controlling the first memory unit 2, the sum is less than (M) by (V). Output another image data offset by (V + 1) when the sum is at least equal to (M), and sum in the number (M) and the data register 56 when the sum is at least equal to the number (M) And first calculating means 44 for activating the first address generator 37 to store the difference in the and the sum in the data register 56 when the sum is less than the number M. An apparatus for uniformly scaling a digital image, characterized in that.
KR1019960030433A 1995-07-26 1996-07-25 Method and apparatus for uniformly scaling adigital image KR100208389B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960030433A KR100208389B1 (en) 1995-07-26 1996-07-25 Method and apparatus for uniformly scaling adigital image

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR95-22308 1995-07-26
KR101995022308 1995-07-26
KR1019950022308A KR970009342A (en) 1995-07-26 1995-07-26 Method and apparatus for uniformly scaling digital images
KR1019960030433A KR100208389B1 (en) 1995-07-26 1996-07-25 Method and apparatus for uniformly scaling adigital image

Publications (2)

Publication Number Publication Date
KR970009341A KR970009341A (en) 1997-02-24
KR100208389B1 true KR100208389B1 (en) 1999-07-15

Family

ID=66250472

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1019950022308A KR970009342A (en) 1995-07-07 1995-07-26 Method and apparatus for uniformly scaling digital images
KR1019960030433A KR100208389B1 (en) 1995-07-26 1996-07-25 Method and apparatus for uniformly scaling adigital image

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1019950022308A KR970009342A (en) 1995-07-07 1995-07-26 Method and apparatus for uniformly scaling digital images

Country Status (1)

Country Link
KR (2) KR970009342A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100865310B1 (en) * 2002-08-20 2008-10-27 주식회사 포스코 Automatic cleaning device of hot coil segment

Also Published As

Publication number Publication date
KR970009341A (en) 1997-02-24
KR970009342A (en) 1997-02-24

Similar Documents

Publication Publication Date Title
JP2612939B2 (en) Interpolator for image display system and image display system
US5329614A (en) Method and apparatus for enlarging gray scale images
US5335295A (en) System and method for scaling a digital image
US4979136A (en) Processing system and method for enhancing image data
US5068905A (en) Scaler gate array for scaling image data
US5825367A (en) Apparatus for real time two-dimensional scaling of a digital image
US5801678A (en) Fast bi-linear interpolation pipeline
US4858018A (en) Image processing apparatus
EP0723688B1 (en) Digital image resizing apparatus and method of using the same
US5621870A (en) Method and apparatus for uniformly scaling a digital image
KR100208389B1 (en) Method and apparatus for uniformly scaling adigital image
US6304679B1 (en) Method and apparatus for implementing two-dimensional digital filters
GB2303758A (en) Apparatus for uniformly scaling a digital image
JP3025437B2 (en) Method and apparatus for processing original digital images
US20070002381A1 (en) Error diffusion method and hardware architecture
CN114387162A (en) Image scaling apparatus and method, and computer-readable storage medium
US7151861B2 (en) Raster image transformation circuit using micro-code and method
KR100269140B1 (en) Context generating circuit for small picture and method the refor
WO2003036942A1 (en) Motion compensation with subblock scanning
JP2004522356A (en) Conversion unit and device, and image processing device
EP0903692A2 (en) System and method for two-dimensional interpolation
JPH02135880A (en) Image pickup device
US20030174250A1 (en) Digital signal processor and digital signal processing method
CN1202496C (en) Homogeneous digital image size extending and reducing method and device
JP4277764B2 (en) Image processing device

Legal Events

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

Payment date: 20130226

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20140325

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20160406

Year of fee payment: 18

EXPY Expiration of term