KR20190055693A - 영상의 해상도 변환을 위한 영상 처리 장치 - Google Patents

영상의 해상도 변환을 위한 영상 처리 장치 Download PDF

Info

Publication number
KR20190055693A
KR20190055693A KR1020180046345A KR20180046345A KR20190055693A KR 20190055693 A KR20190055693 A KR 20190055693A KR 1020180046345 A KR1020180046345 A KR 1020180046345A KR 20180046345 A KR20180046345 A KR 20180046345A KR 20190055693 A KR20190055693 A KR 20190055693A
Authority
KR
South Korea
Prior art keywords
pixel data
memory
line memory
pixel
image
Prior art date
Application number
KR1020180046345A
Other languages
English (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 한국전자통신연구원
Publication of KR20190055693A publication Critical patent/KR20190055693A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

개시된 일 실시 예에 따른 영상 처리 장치는, 입력 영상의 픽셀 데이터들을 저장하기 위한 메모리, 메모리로부터 읽어온 픽셀 데이터들을 분산하여 저장하기 위한 라인 메모리들, 및 라인 메모리들 각각으로부터 동시에 획득된 픽셀 데이터들에 보간을 수행하여 입력 영상의 타깃 픽셀의 픽셀 데이터를 결정하기 위한 보간기를 포함할 수 있다.

Description

영상의 해상도 변환을 위한 영상 처리 장치{IMAGE PROCESSING DEVICE FOR IMAGE RESOLUTION CONVERSION}
본 발명은 컴퓨팅 장치에 관한 것으로, 더 구체적으로는 영상의 해상도 변환을 위한 영상 처리 장치에 관한 것이다.
최근 자율 주행 자동차를 위한 하드웨어 플랫폼은 수 많은 카메라로부터 영상을 입력 받을 수 있는 형태로 개발되고 있다. 수 많은 카메라로부터 입력 받은 영상을 실시간으로 처리하기 위해서는 하드웨어에서 필요로 하는 해상도로의 변환이 빠른 속도로 처리되어야 한다.
입력 영상의 해상도를 원하는 해상도로 변환하여 출력하기 위해, 출력 영상의 (Tx, Ty) 위치의 픽셀 값은 입력 영상에서 해상도 차이의 비율에 따라 대응되는 (Sx, Sy) 위치의 픽셀 값을 획득함으로써 계산될 수 있다. 하지만, 입력 영상의 해상도가 출력 영상의 해상도의 정수배가 되지 않는 한, Sx 및 Sy 의 값은 정수가 아닐 수도 있으며, 이러한 경우 인접한 픽셀 값들을 사용한 보간 연산을 통하여 (Sx, Sy) 위치의 픽셀 값이 결정될 수 있다. 그러나, 이는 인접한 픽셀 값들을 읽어내는 동작을 수반하며, 이는 처리 속도를 저하시키는 문제가 있다.
보간 연산을 위해 필요한 픽셀 데이터들을 효율적으로 획득하기 위한 메모리 구성이 제공될 수 있다.
본 실시 예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 이하의 실시 예들로부터 또 다른 기술적 과제들이 유추될 수 있다.
영상 처리 장치는, 입력 영상의 픽셀 데이터들을 저장하기 위한 메모리, 상기 메모리로부터 읽어온 픽셀 데이터들을 분산하여 저장하기 위한 라인 메모리들, 및 상기 라인 메모리들 각각으로부터 동시에 획득된 픽셀 데이터들에 보간을 수행하여 상기 입력 영상의 타깃 픽셀의 픽셀 데이터를 결정하기 위한 보간기를 포함할 수 있다.
영상 처리 장치는 현재 위치의 픽셀 데이터를 결정하기 위해 필요한 주변 위치의 픽셀 데이터를 라인 메모리들로부터 동시에 읽음으로써 효율적인 보간 연산이 가능하다.
도1은 일 실시 예에 따른 영상 처리 장치의 블록도를 나타낸다.
도2는 일 실시 예에 따른 영상 처리 장치의 상세한 블록도를 나타낸다.
도3은 일 실시 예에 따른 영상의 보간의 개념을 설명하기 위한 도면이다.
아래에서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자들(이하, 통상의 기술자들)이 본 발명을 용이하게 실시할 수 있도록, 첨부되는 도면들을 참조하여 몇몇 실시 예가 명확하고 상세하게 설명될 것이다.
도 1은 일 실시 예에 따른 영상 처리 장치의 블록도를 나타낸다.
영상 처리 장치(1000)는 입력 영상의 해상도를 변환(예를 들어, 스케일-업(scale up) 또는 스케일-다운(scale down))하기 위해 보간 연산을 수행할 수 있는 장치이다. 일 실시 예에 따른 영상 처리 장치(1000)는, 모바일 폰, 데스크톱 PC, 랩탑 PC, 또는 태블릿 PC 과 같이 디스플레이를 포함하는 장치를 포함할 수 있다. 영상 처리 장치(1000)는 디지털 카메라, 디지털 캠코더, 스마트 폰 등과 같이 영상 데이터를 생성하는 카메라 모듈을 포함하는 장치일 수 있다. 또한, 영상 처리 장치(1000)는 상술된 장치 또는 자율 주행 자동차에 포함되는 부품으로서 하나 이상의 반도체 칩으로 구성될 수도 있고, 영상 처리를 수행하기 위하여 CPU나 GPU 등에 의해서 실행되는 명령어들로 구성된 소프트웨어가 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수도 있다.
도1을 참조하면, 영상 처리 장치(1000)는 메모리(1200), 라인 메모리들(1400), 및 보간기(1600)를 포함할 수 있다.
메모리(1200)는 입력 영상의 픽셀 데이터를 저장할 수 있다. 여기서 픽셀 데이터는 픽셀 값(pixel value)을 의미할 수 있다.
일 실시 예에 따라, 픽셀 값은 픽셀의 휘도 값(luminance value)을 의미할 수 있다. 예를 들어, 영상의 색 공간이 YCbCr(Y : 휘도 성분, Cb와 Cr : 색차 성분)인 경우, 픽셀 값은 Y성분의 값을 나타낼 수 있으며, 색 공간이 RGB(R : 적, G : 녹, B : 청)인 경우, 픽셀 값은 R성분과 G성분과 B성분의 값을 합하여 3으로 나눈 값을 의미할 수 있다. 일 실시 예에 따라 픽셀 값을 8비트로 표현하는 경우, 픽셀 값은 0부터 255까지의 값을 가지는 그레이 스케일(gray scale) 값으로 표현될 수 있다.
다른 실시 예에 따라, 픽셀 값은 칼라 성분의 픽셀 값을 의미할 수 있다. 예를 들어, 영상의 색 공간이 YCbCr 인 경우, 픽셀 값은 색차 성분의 픽셀 값을 의미할 수 있으며, 색 공간이 RGB인 경우, 픽셀 값은 R성분의 픽셀 값, G성분의 픽셀 값, 또는 B성분의 픽셀 값을 의미할 수 있으나 이에 제한되지 않는다.
예로서, 메모리(1200)는 플래시 메모리, PRAM(Phase-change Random Access Memory), MRAM(Magnetic Random Access Memory), ReRAM(Resistive Random Access Memory), 및 FRAM(Ferroelectrics Random Access Memory)과 같은 비휘발성 메모리를 포함할 수 있다. 예로서, 메모리(1200)는 SSD(Solid State Drive), 카드 스토리지, 또는 임베디드(Embedded) 스토리지 등과 같은 스토리지 매체를 포함할 수 있다.
라인 메모리들(1400)은 픽셀 데이터를 메모리(1200)로부터 읽어올 수 있다. 예를 들어, 라인 메모리들(1400)은 타깃 픽셀의 픽셀 데이터를 계산하는데 필요한 인접 픽셀들의 픽셀 데이터들을 저장하기 위한 버퍼 메모리로 구성될 수 있다. 일 실시 예에 따른 라인 메모리들(1400)은, DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), 또는 SDRAM(Synchronous DRAM) 을 포함할 수 있으나 이에 제한되지 않는다.
라인 메모리들(1400)은 보간 연산을 수행하기 위해 필요한 타깃 픽셀 주위의 인접 픽셀들의 픽셀 데이터들을 분산하여 저장하기 위해, 제1라인 메모리(1420), 제2라인 메모리(1440), 제3라인 메모리(1460), 및 제4라인 메모리(1480)를 포함할 수 있다. 일 실시 예에 따라, 제1라인 메모리(1420), 제2라인 메모리(1440), 제3라인 메모리(1460), 및 제4라인 메모리(1480) 각각은 입력 영상의 픽셀 데이터들 중 하나의 행에 포함된 픽셀 데이터들을 저장하기 위한 용량이 작은 메모리일 수 있다.
제1라인 메모리(1420), 제2라인 메모리(1440), 제3라인 메모리(1460), 및 제4라인 메모리(1480) 각각은 영상의 보간을 위해 필요한 픽셀 데이터를 저장하고, 보간기(1600)로 픽셀 데이터를 출력할 수 있다. 일 실시 예에 따라, 입력 영상의 타깃 픽셀의 픽셀 데이터를 계산하는데 필요한 인접 픽셀들의 픽셀 데이터들이 제1라인 메모리(1420), 제2라인 메모리(1440), 제3라인 메모리(1460), 및 제4라인 메모리(1480)로부터 각각 출력될 수 있다.
예를 들어, 타깃 픽셀의 좌측 상단에 위치한 제1인접 픽셀의 픽셀 데이터(A)는 제1라인 메모리(1420)에 저장될 수 있다. 타깃 픽셀의 우측 상단에 위치한 제2인접 픽셀의 픽셀 데이터(B)는 제2라인 메모리(1440)에 저장될 수 있다. 타깃 픽셀의 좌측 하단에 위치한 제3 인접픽셀의 픽셀데이터(C)는 제3라인 메모리(1460)에 저장될 수 있다. 타깃 픽셀의 우측 하단에 위치한 제4인접 픽셀의 픽셀 데이터(D)는 제4라인 메모리(1480)에 저장될 수 있다.
보간기(1600)는 타깃 픽셀의 보간에 필요한 픽셀 데이터들(A, B, C, D)을 제1라인 메모리(1420), 제2라인 메모리(1440), 제3라인 메모리(1460), 및 제4라인 메모리(1480) 로부터 동시에 또는 병렬적으로 획득하고 보간을 수행함으로써 현재 위치의 픽셀 데이터를 결정할 수 있다.
도 2는 일 실시 예에 따른 영상 처리 장치의 상세한 블록도를 나타낸다. 도3은 일 실시 예에 따른 영상의 보간의 개념을 설명하기 위한 도면이다. 도 3에서 (Sx, Sy)는 영상 프레임 상에서 타깃 픽셀의 좌표를 나타내며, (x, y), (x+1, y), (x, y+1), (x+1, y+1)는 영상 프레임 상에서 타깃 픽셀 주위의 제1 내지 제4인접 픽셀들의 좌표를 각각 나타낸다. 이하, 설명의 편의를 위해 도2 및 3이 같이 참조된다.
영상 처리 장치(2000)는 메모리(2200), DMA 컨트롤러(2400), 제어 신호 발생기(2500), 라인 메모리들(2600), 및 보간기(2800)를 포함할 수 있다. 메모리(2200), 라인 메모리들(2600), 및 보간기(2800)는 도1의 메모리(1200), 라인 메모리들(1400), 및 보간기(1600)의 구성 및/또는 동작과 대체로 유사할 수 있다.
메모리(2200)는 해상도 변환이 필요한 픽셀 데이터를 저장할 수 있다. 일 실시 예에 따라, 픽셀 데이터는 복수의 픽셀 데이터들로 구성된 2차원 배열의 픽셀 데이터를 포함할 수 있다.
DMA 컨트롤러(2400)는 직접 메모리 액세스(Direct Memory Access) 방식에 기초하여 메모리(2200)로부터 픽셀 데이터를 읽고, 읽은 픽셀 데이터를 라인 메모리들(2600)에 저장할 수 있다. DMA 컨트롤러(2400)는 제어 신호 발생기(2500)의 제어 하에, 메모리(2200)에 저장된 픽셀 데이터들을 읽어내거나(read) 페치(fetch)하고, 읽혀지거나 페치된 픽셀 데이터들을 라인 메모리들(2600)로 전송할 수 있다. 예를 들어, 도 3에서, 해상도가 변환된 출력 영상의 Ty 번째 행의 픽셀 데이터들을 결정하기 위해, DMA 컨트롤러(2400)는 메모리(2200)로부터 입력 영상의 y 번째 행의 픽셀 데이터들과 y+1 번째 행의 픽셀 데이터들을 읽고, 읽어온 픽셀 데이터들을 라인 메모리들(2600)에 저장할 수 있다.
제어 신호 발생기(2500)는 다양한 제어 신호를 발생시킴으로써, DMA 컨트롤러(2400), 라인 메모리들(2600), 및 보간기(2800) 중 적어도 하나를 제어할 수 있다. 예를 들어, 제어 신호 발생기(2500)는 DMA 컨트롤러(2400)의 동작을 위한 레지스터의 설정을 수행할 수 있다. 제어 신호 발생기(2500)는 DMA 컨트롤러(2400)의 레지스터를 설정을 통해, 픽셀 데이터를 읽어올 메모리(2200)의 영역과 읽어온 픽셀 데이터가 쓰여질 라인 메모리들(2600)의 영역을 설정할 수 있으나 이에 제한되지 않는다.
라인 메모리들(2600)은 제1라인 메모리(2620), 제2라인 메모리(2640), 제3라인 메모리(2660), 및 제4라인 메모리(2680)를 포함할 수 있다. 입력 영상의 보간을 위해 필요한 픽셀 데이터들이 제1라인 메모리(2620), 제2라인 메모리(2640), 제3라인 메모리(2660), 및 제4라인 메모리(2680) 각각에 분산되어 저장될 수 있다.
일 실시 예에 따라, 제1라인 메모리(2620) 및 제2라인 메모리(2640)는 메모리(2200)에 저장된 2차원의 픽셀 데이터 중 홀수 번째 행의 픽셀 데이터를 저장할 수 있다. 또한, 제3라인 메모리(2660) 및 제4라인 메모리(2680)는 메모리(2200)에 저장된 2차원의 픽셀 데이터 중 짝수 번째 행의 픽셀 데이터를 저장할 수 있다. 이러한 경우, 도3의 입력 영상의 y 번째 행의 픽셀 데이터들은 제1라인 메모리(2620) 및 제2라인 메모리(2640)(또는, 제3라인 메모리(2660) 및 제4라인 메모리(2680))에 저장되며, y+1 번째 행의 픽셀 데이터들은 제3라인 메모리(2660) 및 제4라인 메모리(2680)(또는, 제1라인 메모리(2620) 및 제2라인 메모리(2640))에 저장될 수 있다.
일 실시 예에 따라, 제1라인 메모리(2620)는 입력 영상의 홀수 번째 행의 홀수 번째 열에 위치한 픽셀 데이터를 저장할 수 있으며, 제2라인 메모리(2640)는 홀수 번째 행의 짝수 번째 열에 위치한 픽셀 데이터를 저장할 수 있다. 이러한 경우, 도3의 입력 영상의 y 번째 또는 y+1 번째 행의 픽셀 데이터들 중에서, 해당 행의 홀수 번째 열에 위치한 픽셀 데이터들은 도2의 제1라인 메모리(2620)에 저장될 수 있으며, 짝수 번째 열에 위치한 픽셀 데이터들은 도2의 제2라인 메모리(2640)에 저장될 수 있다.
제3라인 메모리(2660)는 입력 영상의 짝수 번째 행의 홀수 번째 열에 위치한 픽셀 데이터를 저장할 수 있으며, 제4라인 메모리(2680)는 짝수 번째 행의 짝수 번째 열에 위치한 픽셀 데이터를 저장할 수 있다. 이러한 경우, 도3의 입력 영상의 y 번째 또는 y+1 번째 행의 픽셀 데이터들 중에서, 해당 행의 홀수 번째 열에 위치한 픽셀 데이터들은 도2의 제3라인 메모리(2660)에 저장될 수 있으며 짝수 번째 열에 위치한 픽셀 데이터들은 도2의 제4라인 메모리(2680)에 저장될 수 있다.
따라서, 입력 영상의 임의의 지점에 위치한 픽셀 데이터를 계산하기 위해 필요한 네 개의 주변 픽셀 데이터들은 항상 서로 다른 라인 메모리에 분산되어 저장될 수 있으며, 제어 신호 발생기(2500)의 제어 하에, 제1라인 메모리(2620), 제2라인 메모리(2640), 제3라인 메모리(2660), 및 제4라인 메모리(2680)로부터 네 개의 픽셀 데이터들이 동시에 출력될 수 있다.
전술한 바와 같이, 입력 영상의 해상도가 출력 영상의 해상도의 정수배가 되지 않는 한, 입력 영상의 Sx 및 Sy 의 값은 정수가 아닐 수도 있다. 이러한 경우, 제1 내지 제4인접 픽셀들의 픽셀 데이터들을 사용한 보간 연산을 통하여 타깃 픽셀의 픽셀 데이터가 계산될 수 있다.
예를 들어, 보간기(2800)는 제1라인 메모리(2620), 제2라인 메모리(2640), 제3라인 메모리(2660), 및 제4라인 메모리(2680)로부터 아래의 [수학식 1]의 P(x, y), P(x+1, y), P(x, y+1), 및 P(x+1, y+1)를 각각 획득할 수 있다. 보간기(2800)는 네 개의 인접 픽셀들의 픽셀 데이터들(P(x, y), P(x+1, y), P(x, y+1), 및 P(x+1, y+1))에 대해 아래의 [수학식 1]을 사용하여 보간을 수행함으로써, 입력 영상의 (Sx, Sy)에 위치한 픽셀 데이터를 계산할 수 있다. 여기서, P(a, b)는 a열 b행에 위치하는 픽셀의 픽셀 데이터를 나타낼 수 있다. 일 실시 예에 따라, 제어 신호 발생기(2500)는 보간기(2800)에게 [수학식 1]의 Rx 와 Ry 값을 전달할 수 있다.
[수학식 1]
P(Sx, Sy) = P(x, y)*(1-Rx)*(1-Ry) + P(x+1, y)*Rx * (1-Ry) + P(x, y+1)*(1-Rx)* Ry + P(x+1, y+1)* Rx * Ry
(Rx : Sx - x, Ry : Sy - y)
일 실시 예에 따라, 입력 영상의 y 번째 행의 픽셀 데이터 또는 y+1 번째 행의 픽셀 데이터가 이미 라인 메모리들(2600)에 저장된 경우에는, 제어 신호 발생기(2500)는 해당 행의 픽셀 데이터를 읽어오지 않도록 DMA 컨트롤러(2400)를 제어할 수도 있다. 또한, 라인 메모리들(2600)로 다수의 픽셀 데이터들이 전달되는 경우에는, 픽셀 데이터 각각은 라인 메모리들(2600) 각각으로 동시에 저장될 수 있다.
위 설명들은 본 발명을 구현하기 위한 예시적인 구성들 및 동작들을 제공하도록 의도된다. 본 발명의 기술 사상은 위에서 설명된 실시 예들뿐만 아니라, 위 실시 예들을 단순하게 변경하거나 수정하여 얻어질 수 있는 구현들도 포함할 것이다. 또한, 본 발명의 기술 사상은 위에서 설명된 실시 예들을 앞으로 용이하게 변경하거나 수정하여 달성될 수 있는 구현들도 포함할 것이다.

Claims (1)

  1. 입력 영상의 픽셀 데이터들을 저장하기 위한 메모리;
    상기 메모리로부터 읽혀진 상기 픽셀 데이터들을 분산하여 저장하기 위한 라인 메모리들; 및
    상기 라인 메모리들 각각으로부터 동시에 획득된 픽셀 데이터들에 보간을 수행하여 상기 입력 영상의 타깃 픽셀의 픽셀 데이터를 결정하기 위한 보간기를 포함하는 영상 처리 장치.
KR1020180046345A 2017-11-15 2018-04-20 영상의 해상도 변환을 위한 영상 처리 장치 KR20190055693A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170152575 2017-11-15
KR1020170152575 2017-11-15

Publications (1)

Publication Number Publication Date
KR20190055693A true KR20190055693A (ko) 2019-05-23

Family

ID=66681318

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180046345A KR20190055693A (ko) 2017-11-15 2018-04-20 영상의 해상도 변환을 위한 영상 처리 장치

Country Status (1)

Country Link
KR (1) KR20190055693A (ko)

Similar Documents

Publication Publication Date Title
KR102078677B1 (ko) 디스플레이 장치의 영상 보정 데이터 생성 방법, 이를 이용하는 영상 보정 장치 및 디스플레이 장치의 구동 방법
KR20090065451A (ko) 영상 왜곡 보정
TWI686700B (zh) 應用程式處理器、單晶片系統以及操作影像處理系統的方法
CN112991142B (zh) 图像数据的矩阵运算方法、装置、设备及存储介质
WO2019041264A1 (zh) 图像处理装置、方法及相关电路
US11775809B2 (en) Image processing apparatus, imaging apparatus, image processing method, non-transitory computer-readable storage medium
US8938133B2 (en) Image resizing apparatus and method that interpolates image blocks with abuttal regions
KR20190055693A (ko) 영상의 해상도 변환을 위한 영상 처리 장치
JP2011259511A (ja) 画像処理装置及び画像処理方法
JP5865696B2 (ja) 画像処理装置
US20180095929A1 (en) Scratchpad memory with bank tiling for localized and random data access
JP2016134005A (ja) 画像処理装置
KR20150009369A (ko) 영상 처리 장치 및 영상 처리 방법
US20130322783A1 (en) Image composing apparatus of around view monitor system for changing view mode easily and method thereof
US9147237B2 (en) Image processing method and device for enhancing image quality using different coefficients according to regions
KR102247741B1 (ko) 이미지 프로세서, 상기 이미지 프로세서의 동작 방법, 및 상기 이미지 프로세서를 포함하는 애플리케이션 프로세서
CN110087088B (zh) 一种基于运动估计的数据存储方法、终端设备及存储介质
CN112119631A (zh) 监视图像生成方法、装置、设备和系统、图像处理设备
JP6467940B2 (ja) 画像処理装置、画像処理方法及びプログラム
US20130021371A1 (en) Image display apparatus and image display method
CN108696670A (zh) 在成像时进行瓦片重用
JP2012155604A (ja) データ転送制御装置
JP6048046B2 (ja) 画像合成装置及び画像合成方法
US10672100B2 (en) Image processing apparatus and image processing method
JP4835872B2 (ja) 画像処理装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application