KR100343463B1 - 포맷 변환 장치 - Google Patents

포맷 변환 장치 Download PDF

Info

Publication number
KR100343463B1
KR100343463B1 KR1019990058545A KR19990058545A KR100343463B1 KR 100343463 B1 KR100343463 B1 KR 100343463B1 KR 1019990058545 A KR1019990058545 A KR 1019990058545A KR 19990058545 A KR19990058545 A KR 19990058545A KR 100343463 B1 KR100343463 B1 KR 100343463B1
Authority
KR
South Korea
Prior art keywords
size
coordinate
vertical
horizontal
pixel
Prior art date
Application number
KR1019990058545A
Other languages
English (en)
Other versions
KR20010056880A (ko
Inventor
나명수
Original Assignee
박종섭
주식회사 하이닉스반도체
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 박종섭, 주식회사 하이닉스반도체 filed Critical 박종섭
Priority to KR1019990058545A priority Critical patent/KR100343463B1/ko
Publication of KR20010056880A publication Critical patent/KR20010056880A/ko
Application granted granted Critical
Publication of KR100343463B1 publication Critical patent/KR100343463B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Systems (AREA)

Abstract

본 발명은 포맷 변환 장치에 관한 것으로, 종래의 기술에 있어서는 가로 변환과 세로 변환이 구분되어 있고, 픽셀을 계산할 때 마다 나눗셈이 필요하게 되어 회로 크기의 증가와 속도 저하를 가져오게 되며 또한, 수직 포맷 변환부와 수평 포맷 변환부를 분리, 설계하여 중간에 보간 데이터를 저장하기 위한 라인 버퍼를 필요로 하는 문제점이 있었다. 따라서, 본 발명은 입력 영상(화소)을 스캔 라인별로 저장하기 위한 라인 메모리부와; 상기 라인 메모리부에 저장된 스캔 라인에서 원하는 좌표(P')를 중심으로 한 네 방향의 좌표 화소값(a,b,c,d)을 읽어, 아래의 수학식에서 상기 좌표에 의한 연산(b-a, c-a, a-b+d-c)을 수행하는 덧셈기와; 입력영상의 수평(수직) 크기를 출력영상의 수평(수직) 크기로 나눈값을 이전 좌표에 누적하여, 원하는 좌표의 가중치(x,y)를 구하는 나눗셈기와; 상기 나눗셈기에서 출력된 가중치와 덧셈기에서 출력된 네 개의 좌표값을 아래 수학식에 의해 연산하여 새로운 사이즈의 픽셀값(

Description

포맷 변환 장치{FORMAT CONVERTING APPARATUS}
본 발명은 포맷 변환 장치에 관한 것으로, 특히 영상 디스플레이 크기를 변환하기 위한 포맷 변환 장치에 관한 것이다.
도1은 종래 포맷 변환 장치의 구성을 보인 회로도로서, 이에 도시된 바와 같이 입력 영상의 두 스캔 라인을 저장하는 라인 메모리부(1)와; 상기 라인 메모리부(1)에 저장되어 있는 영상을 수직 포맷 변환하는 수직 포맷 변환부(VFC : Vertical Format Converter, 2)와; 상기 수직 포맷 변환의 결과를 저장하기 위한 라인 버퍼부(3)와; 상기 라인 버퍼부(3)에 저장되어 있는 수직 포맷 변환된 영상을 수평 포맷 변환하는 수평 포맷 변환부(HFC : Horizontal Format Converter, 4)로 구성되어 있다.
이때 라인 버퍼부(3)의 크기는 라인 메모리의 한 스캔 라인 메모리 크기와 같다.
다음, 도2는 상기 포맷 변환부의 일반적인 구성을 보인 블록도로서, 두 개의 곱셈기(11,12)와 하나의 덧셈기(13) 및 나눗셈기(14)로 구성되어 있다.
이하, 상기와 같이 구성된 종래 장치의 동작 및 작용을 설명한다.
일단, 도1에서 라인 메모리부(1)에 들어있는 픽셀 데이터는 차례로 쌍을 이루어 수직 포맷 변환부(2)로 입력된다.
이 두 픽셀 데이터를 이용하여 수직 포맷 변환부(2)는 수직 보간을 수행하여 그 결과를 중간의 라인 버퍼부(3)에 저장한다.
상기 라인 버퍼부(3)에 저장된 보간 데이터는 다시 차례로 쌍으로 읽혀져 수평 포맷 변환부(4)에 입력된다.
수평 포맷 변환부(4)에서는 수직 포맷 변환부(2)와 마찬가지로 보간을 수행하여 최종 결과를 얻어내게 된다.
다음, 도2의 포맷 변환기는 다음 수학식 1을 회로로 구현한 것이다.
이는 픽셀 'a'와 'b'에,의 가중치(weight)를 곱하여 보간하는 선형 보간식이다.
결국 픽셀을 계산할 때 마다 두 번의 곱셈과 한번의 나눗셈을 하게 된다.도3의 기존의 방법에 의한 포맷 변환을 설명하기 위한 예시도로서, 원 영상을 수평/수직 2/3 포맷 변환하는 즉, 높은 해상도의 영상을 낮은 해상도의 영상으로 포맷(크기) 변환하는 것으로서, 원 영상의 화소들은 가는 선의 원, 출력 영상의 화소들은 굵은 선의 원으로 나타내었다.다시 말해, 상기 실시예는 원래의 6*6 영상을 4*4 영상으로 크기를 줄이는 포맷변환을 하는 것이다.각 좌표는 입력영상의 경우 작은 글씨로 출력영상의 경우 큰 글씨로 나타내었다.즉, 포맷 변환은 개념적으로 원 영상의 화소들로부터 정보가 없는 위치에 있는 화소의 값을 계산해 내는 과정으로, 예를 들어 출력 영상의 1번 행(두번째 스캔라인)을 구해보기로 한다.기존의 방법은 수직 변환을 먼저 수행한 후, 그 결과를 중간 버퍼에 저장하고 그 결과를 다시 수평 변환하는 방식을 따르고 있다.입력영상의 x열 y행에 있는 화소를 s(x,y), 출력 영상에 대해서는 같은 방식으로 d(x,y)라 할 때, 수직 변환에 의해 중간 버퍼에 저장되는 값은 차례로 다음과 같다.(s(0,10)+s(0,2))/2,(s(1,1)+s(1,2))/2,(s(2,1)+s(2,2))/2,(s(3,1)+s(3,2))/2,...)다음 수평 변환기는 중간 버퍼에서 위의 값을 차례로 읽어 최종적으로 다음과 같은 출력을 만들어 낸다. 이때 중간 버퍼에 n번째 저장된 값을 I(n)이라 하면,I(0)+0*I(1), 1/2*I(1)+1/2*I(2)), I(4)+0*I(5), 1/2*I(5)+1/2*I(6),...따라서, 이 경우에 필요한 회로는 0또는 1을 곱하는 곱셈기 두개, 2로 나누는 나눗셈기로 이루어진 기본 변환 회로가 수평, 수직을 위해 두 개 필요하다.이때 0, 또는 1을 곱할지 어떨지는 변환비로부터 추출되는 주기성을 바탕으로 알 수 있다.본 예에서는 곱해지는 값은 0, 1이 주기를 갖고 반복되는 형태이며 2로 나누는 경우이다. 임의의 변환비 s/d에 대해 나누는 값은 s로 고정되며, 곱해지는 값은 0, 1, ..., (s-1)이 반복되는 형태를 가진다.또한, 원하는 위치의 화소를 가져오기 위한 좌표 값으로는 d번의 클록 동안, s번의 연산을 수행하도록 하는 제어회로를 꾸며 이루어진다.따라서, 기존의 방법은 복잡한 제어회로를 가지게 되며 s로 나누는 회로가 동작 속도와 면적에 악영향을 미치게 된다.
이와 같이, 상기 종래의 기술에 있어서는 가로 변환과 세로 변환이 구분되어 있고, 픽셀을 계산할 때 마다 나눗셈이 필요하게 되어 회로 크기의 증가와 속도 저하를 가져오게 되며 또한, 수직 포맷 변환부와 수평 포맷 변환부를 분리, 설계하여 중간에 보간 데이터를 저장하기 위한 라인 버퍼를 필요로 하는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창출한 것으로, 이를 2-D 변환과 고정 포인트 연산을 사용하여 회로의 동작속도와 면적을 최적화 시키기 위한 포맷 변환 장치를 제공함에 그 목적이 있다.
도 1은 종래 포맷 변환 장치의 구성을 보인 회로도.
도 2는 상기 도1에서 포맷 변환부의 일반적인 구성을 보인 블록도.도 3은 종래의 방법에 의한 포맷 변환을 설명하기 위한 예시도.
도 4는 본 발명에 의한 포맷 변환 장치의 구성을 보인 블록도.
도 5는 본 발명에 따른 1차원 포맷 변환 알고리즘을 의사-C코드로 나타낸 예시도.
***도면의 주요 부분에 대한 부호의 설명***
31 : 라인 메모리부 32 : 나눗셈기
33 : 덧셈기 34 : 고정 포인트 로직부
이와 같은 목적을 달성하기 위한 본 발명은 입력 영상(화소)을 스캔 라인별로 저장하기 위한 라인 메모리부와; 상기 라인 메모리부에 저장된 스캔 라인에서 원하는 좌표(P')를 중심으로 한 네 방향의 좌표 화소값(a,b,c,d)을 읽어, 수학식2에서 상기 좌표에 의한 연산(b-a, c-a, a-b+d-c)을 수행하는 덧셈기와; 입력영상의 수평(수직) 크기를 출력영상의 수평(수직) 크기로 나눈값을 이전 좌표에 누적하여, 원하는 좌표의 가중치(x,y)를 구하는 나눗셈기와; 상기 나눗셈기에서 출력된 가중치와 덧셈기에서 출력된 네 개의 좌표값을 수학식2에 의해 연산하여 새로운 사이즈의 픽셀값()을 얻는 고정 포인트 로직부로 구성한 것을 특징으로 한다.
이하, 본 발명에 따른 일실시예를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
도4는 본 발명에 의한 포맷 변환장치의 구성을 보인 블록도로서, 이에 도시한 바와 같이 입력 영상(화소)을 스캔 라인별로 저장하기 위한 라인 메모리부(31)와; 상기 라인 메모리부(31)에 저장된 스캔 라인에서 원하는 좌표(P')를 중심으로 한 네 방향의 좌표 화소값(a,b,c,d)을 읽어, 수학식2에서 상기 좌표에 의한 연산(b-a, c-a, a-b+d-c)을 수행하는 덧셈기(33)와; 입력영상의 수평(수직) 크기를 출력영상의 수평(수직) 크기로 나눈값을 이전 좌표에 누적하여, 원하는 좌표의 가중치(x,y)를 구하는 나눗셈기(32)와; 상기 나눗셈기(32)에서 출력된 가중치와 덧셈기에서 출력된 네 개의 좌표값을 아래 수학식에 의해 연산하여 새로운 사이즈의 픽셀값()을 얻는 고정 포인트 로직부(34)로 구성되어 있다.
이하, 상기와 같이 구성된 본 발명의 동작을 도5를 참조하여 설명하면 다음과 같다.
먼저, 1차원(1-D) 보간의 경우는의 식으로 나타낼 수 있는데, 이를 사용하게 되면 종래의 기술과 같이 수직 포맷 변환기와 수평 포맷 변환기가 분리된 형태로 회로가 구성된다.포맷 변환의 과정을 일반화하면 임의의 위치에 있는 a, b, c, d 화소로부터 출력 P'를 구하는 것으로 생각할 수 있다.여기서, x, y는 입력 영상의 화소 사이 거리를 1이라 했을 때 각각 출력 P'까지의 거리이다. 기존의 방식을 일반화 된 식으로 표현해 보면, 수직 변환의 결과는 a*(1-y)+c*y, b*(1-y)+d*y 이며, 이를 수평 변환하면, [a*(1-y)+c*y]*(1-x)+[b*(1-y)+d*y]*x 인 출력 P'를 얻게 된다.이를 정리하고 곱셈의 단위로 구분하면 다음 수학식 2와 같이 된다.
결국, 종래의 기술에서 사용되던 나눗셈기가 본 발명에 x.y의 가중치를 고정 포인트 연산으로 대체하게 된 것이 된다.즉, x,y의 고정 포인트 값을 구하기 위해 나눗셈이 필요한데, 이 나눗셈은 종래의 기술과 달리 최초 한번씩의 나눗셈만이 필요하며 매 픽셀 연산시는 덧셈으로 대체된다.
결국, 종래의 기술과 달리 나눗셈기를 순서 알고리즘(sequential algorithm)을 사용하여 구현하게 돼 도4의 나눗셈기(32)는 덧셈기와 약간의 제어 로직만을 필요로 하는 간단한 형태가 된다.
상기 덧셈기(33)에서는 상기 수학식 2의 b-a, c-a, a-b+d-c의 값을 계산하게 되며 이를 고정 포인트 로직부(34)로 출력하게 된다.
고정 포인트 로직부(34)에서는 상기 수학식 2의값을 연산하기 위하여 네 개의 곱셈기를 사용하게 되나 이는 종래의 기술에서 쓰인 전체 곱셈기 개수와 같으므로 별 문제는 없다.여기서, P'를 구하기 위해서는 x,y의 값과 a, b, c, d를 메모리로부터 가져오기 위한 각각의 좌표를 계산해야 한다. 그런데, 만약 P'의 좌표를 소수점 이하까지 알고 있다면, x, y와 a, b, c, d의 좌표는 간단히 알아낼 수 있다.즉, P'의 좌표의 정수부분은 a의 좌표가 되며, b, c, d의 좌표는 a의 좌표에서 0또는 1을 더한 값들이다. 또한, P'의 좌표의 소수점 이하 부분은 각각 x, y의 값이 된다.결국 원하는 P'의 좌표만을 차례로 계산해 나가면 그 정보로부터 x, y와 a, b, c, d의 좌표를 차례로 알 수 있다.그러면, 영상으로부터 P'의 좌표를 구해나가는 방법을 살펴보기로 한다.P'의 x좌표에 대해서만 알아보면, 입력 영상의 수평 크기를 sh, 출력 영상의 수평 크기를 dh라고 했을 때, P'의 x좌표는 0부터 차례로 sh/dh를 이전 좌표에 누적하면 구해지며, y 좌표에 대해서도 마찬가지로 입력 영상의 수직 크기를 sv, 출력영상의 수직 크기를 dv라고 했을 때, 0부터 차례로 sv/dv를 이전 좌표에 누적하면 된다.이와 같은 원리를 전체 영상 영역에 적용하도록 도5를 참조하여 루프를 구현하면, 다음과 같은 의사 코드(pseudo-c code)를 얻을 수 있다.여기서, src_hsize, src_vsize는 각각 입력 영상의 수평, 수직 크기이며, dest_hsize, dest_vsize는 각각 출력 영상의 수평, 수직 크기, "int()" 함수는 소수의 정수부분을 구하는 함수, "frac()" 함수는 소수의 소수점 이하를 구하는 함수, Pi(l,m)은 입력 영상의 화소, Po(l,m)은 출력 영상의 화소이다.상기 도4에 도시된 바와 같은 알고리즘은 도3에 도시된 하드웨어 구성에 의해 구현 할 수 있다.도4에서 나눗셈기(32)는 도5의 (1),(2)를 연산하여 출력하는 회로로서, 입력 영상의 크기와 출력 영상의 크기가 변하지 않는다면, 전체 시간동안 단 한번만 계산하면 되며, 설사 영상의 크기가 수시로 바뀐다 하더라도, 영상 한 프레임을 처리하는 동안은 사용할 수 있는 값이므로, 두 나눗셈은 영상 한 프레임 동안에만 계산해 내면 된다.따라서, 이 나눗셈은 크리티컬(critical)하지 않으며, 매우 느린 나눗셈기를 사용해도 된다.그러한 나눗셈기로는 순서 알고리즘을 사용한 것이 있으며, 이는 단지 비교기, 덧셈기와 소정의 제어 회로로 이루어져 있다. 또한, 이 나눗셈기는 나눗셈의 결과인 hratio, vratio를 차례로 누적하여 l, m을 덧셈기(33)로, x, y를 고정 포인트 로직부(34)로 보낸다.다음으로, 도5에서 (3),(4),(5),(6) 라인의 알고리즘은 본 발명에서는 고정 포인트 넘버를 사용하기 때문에, 단지 레지스터로부터 원하는 부분의 비트 벡터를 추출해내는 것으로 족하다.또한, 도5에서 라인 (7),(8),(9),(10)은 도4의 라인 메모리(31)로부터 덧셈기(33)의 화소값을 읽어오는 과정이며, 덧셈기(33)는 화소값으로부터 라인(11)의 a, (b-a), (c-a), (a-b+d-c)를 계산해 고정 포인트 로직부(34)로 보낸다.그럼, 고정 포인트 로직부(34)는 나눗셈기(32)로부터 오는 x, y와 덧셈기(33)로부터 오는 a, (b-a), (c-a), (a-b+d-c)를 받아 네 개의 고정 포인트 곱셈기와 덧셈기를 거쳐, 도5의 라인 (11)을 연산하여 최종 결과 Po를 만들어내게 된다.
이상에서 설명한 바와 같이 본 발명 포맷 변환 장치는 나눗셈기의 필요성을 감소시켜 회로크기를 축소시키고, 속도를 증가시키며 1차원 알고리즘을 2차원 알고리즘으로 확장하여 중간 데이터 저장을 위한 버퍼의 사용을 제거하여 회로의 크기를 감소시키는 효과가 있다.

Claims (2)

  1. 입력 영상(화소)을 스캔 라인별로 저장하기 위한 라인 메모리부와; 상기 라인 메모리부에 저장된 스캔 라인에서 원하는 좌표(P')를 중심으로 한 네 방향의 좌표 화소값(a,b,c,d)을 읽어, 아래의 수학식에서 상기 좌표에 의한 연산(b-a, c-a, a-b+d-c)을 수행하는 덧셈기와; 입력영상의 수평(수직) 크기를 출력영상의 수평(수직) 크기로 나눈값을 이전 좌표에 누적하여, 원하는 좌표의 가중치(x,y)를 구하는 나눗셈기와; 상기 나눗셈기에서 출력된 가중치와 덧셈기에서 출력된 네 개의 좌표값을 아래 수학식에 의해 연산하여 새로운 사이즈의 픽셀값()을 얻는 고정 포인트 로직부를 포함하여 구성한 것을 특징으로 하는 포맷 변환 장치.
    (수학식)
    여기서, a,b,c,d는 소스의 화소이고,
    x,y는 가중치이다.
  2. 삭제
KR1019990058545A 1999-12-17 1999-12-17 포맷 변환 장치 KR100343463B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990058545A KR100343463B1 (ko) 1999-12-17 1999-12-17 포맷 변환 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990058545A KR100343463B1 (ko) 1999-12-17 1999-12-17 포맷 변환 장치

Publications (2)

Publication Number Publication Date
KR20010056880A KR20010056880A (ko) 2001-07-04
KR100343463B1 true KR100343463B1 (ko) 2002-07-11

Family

ID=19626559

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990058545A KR100343463B1 (ko) 1999-12-17 1999-12-17 포맷 변환 장치

Country Status (1)

Country Link
KR (1) KR100343463B1 (ko)

Also Published As

Publication number Publication date
KR20010056880A (ko) 2001-07-04

Similar Documents

Publication Publication Date Title
EP0497586A2 (en) Motion detection circuit
CN110519603B (zh) 一种实时视频缩放的硬件电路及其缩放方法
KR100416370B1 (ko) 비디오필드들을순차주사비디오프레임들로디인터레이싱하기위한방법및장치
CN111200716B (zh) 特征映射缩放的精度补偿方法、系统及存储介质
JPS63121364A (ja) テレビジヨン特殊効果装置の補間器
JPH01124077A (ja) 画素生成方法及びシステム
KR930001689A (ko) 이미지 버퍼를 이용한 전자 주밍 시스템
CN114463178A (zh) 一种图像处理芯片、方法及设备
KR100343463B1 (ko) 포맷 변환 장치
US8902474B2 (en) Image processing apparatus, control method of the same, and program
Gour et al. Hardware accelerator for real-time image resizing
US20180218477A1 (en) Data interpolation device, method therefor, and image processing apparatus
US6714210B1 (en) Continuous kernel image interpolation
JP4672499B2 (ja) 補間演算装置
JP3627872B2 (ja) 動きベクトル検出方法及び装置
US7107304B2 (en) Single-channel convolution in a vector processing computer system
US5745123A (en) Method for resizing an image by a factor of two
EP0511606A2 (en) Parallel interpolator for high speed digital image enlargement
JP2010033406A (ja) 画像処理装置、画像機器、画像処理方法
US5548665A (en) Vector correlation detecting circuit
JPS61140271A (ja) 画像拡大縮小回路
US6741294B2 (en) Digital signal processor and digital signal processing method
RU2024056C1 (ru) Устройство для сглаживания импульсной помехи
CN113763250A (zh) 一种自适应图像缩放处理方法及系统
JP3168661B2 (ja) 画素数増大方法およびその装置

Legal Events

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

Payment date: 20050524

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee