KR101681199B1 - 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치 - Google Patents

다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치 Download PDF

Info

Publication number
KR101681199B1
KR101681199B1 KR1020150078661A KR20150078661A KR101681199B1 KR 101681199 B1 KR101681199 B1 KR 101681199B1 KR 1020150078661 A KR1020150078661 A KR 1020150078661A KR 20150078661 A KR20150078661 A KR 20150078661A KR 101681199 B1 KR101681199 B1 KR 101681199B1
Authority
KR
South Korea
Prior art keywords
image
buffer
integral
infrared
color
Prior art date
Application number
KR1020150078661A
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 (주)이더블유비엠
Priority to KR1020150078661A priority Critical patent/KR101681199B1/ko
Application granted granted Critical
Publication of KR101681199B1 publication Critical patent/KR101681199B1/ko

Links

Images

Classifications

    • G06T7/0069
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B7/00Mountings, adjusting means, or light-tight connections, for optical elements
    • G02B7/28Systems for automatic generation of focusing signals
    • G02B7/36Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals
    • G02B7/365Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals by analysis of the spatial frequency components of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/30Transforming light or analogous information into electric information
    • H04N5/33Transforming infrared radiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10056Microscopic image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)

Abstract

다중컬러 센서로부터 컬러(RGB)영상과 적외선(IR)영상을 입력받는 영상 입력 , 컬러영상 내 잡음제거와 경계선 강조를 위한 미디언 필터( Median filter ) 처리부, 필터링된 영상 내 윤곽선을 검출하기 위한 윤곽선 검출부, 상기 적외선영상에 대한 4 포인트 접근방식으로 산출된 누적값을 이용하여 적분영상을 생성하는 적분영상 생성부, 적분된 영상 내 최소 4 + α(α는 0부터 가능) 포인트의 접근방식을 기반하여 복수의 스무딩(Smoothing)된 영상들을 생성하는 고속의 컨벌루션 처리부, 및 하나의 컬러영상과 복수의 스무딩된 적외선영상 간의 최대 유사도를 측정하여 깊이맵(Depth-map)을 생성하는 깊이 영상 생성부를 포함하고, 상기 적분영상의 생성과 저장과정에서의 메모리 사용량을 줄이기 위하여, 적외선영상의 너비와 높이 및 최대 마스크크기의 컬럼과 로우를 고려하여 크기와 수가 정해지고 배정되는 복수의 분할 라인버퍼와, 상기 분할 라인버퍼의 값을 이용하여 적분값을 도출하기 위하여, 컬럼의 합을 위한 컬럼 합계 버퍼(너비는 적외선영상의 너비, 높이는 1)와 로우의 합을 위한 로우 합계 버퍼(너비는 총 분할 라인버퍼의 수, 높이는 1)를 포함함을 특징으로 한다.

Description

다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치 {Multi-color sensor based, method and apparatus for extraction of depth information from image using high-speed convolution}
본 발명은 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보(Depth)를 추출하는 방법 및 장치에 관한 것으로, 보다 상세하게는, 입력받은 적외선(IR) 영상을 기반하여, 적분영상을 생성하는 과정에서 적분영상이 저장될 메모리를 분할된 라인버퍼(Line buffer) 구조로 설계하여, 메모리 사용량을 줄이고, PSF 마스크(Mask) 내 X자 형태의 병렬처리(Parallel processing) 접근방식을 이용하여 연산량과 소요시간을 대폭 단축시키고, 이를 이용하여 컬러(Color) 영상과 고속의 컨벌루션을 거쳐 생성한 다수의 적외선영상들 간의 최대 유사도를 측정하여 영상의 깊이정보 추출방법 및 장치에 관한 것이다.
영상처리기술의 급격한 발전으로, 컬러영상과 깊이영상을 포함하는 3차원 카메라 기술이 이슈화되고 있다.
3차원 카메라 기술로는,
(1) 스테레오 카메라(Bumblebee2)
(2) IR Pattern(Randomized dots) 기반 카메라(Kinect, Xtion)
(3) Time of Flight(TOF) 카메라 (Kinect2)
등이 있다.
이는, 깊이영상을 이용한 3D 재구조화(Reconstruction), XYZ 3차원 공간상의 표현(Description) 확대 등을 통한 다양한 응용분야에 적용 가능하다.
예컨대 다음의 응용분야를 들 수 있다.
(1) 스테레오 3D 영상 생성 - 3D 디스플레이
(2) 디지털 카메라의 De-Focusing or Auto-Focusing
(3) 3D Printing의 3D Reconstruction
(4) 3D 동작인식(Gesture Recognition)
그리고 이 분야의 종래기술로는
(1) 이중 조리개(Duar Aperture) 기반한 다중컬러 센서를 이용한 컬러영상 및 깊이정보 추출 기술
(2) 커널(Kernel) 기반 영상 회선(Convolution) 기술
등을 들 수 있다.
미국 특허공개 US2013/0033579 A1 공보
종래에는 깊이정보를 추출하는 과정 내에 다수의 PSF(Point Spread Function) 모델을 이용하여 스무딩(Smoothing)된 다수의 적외선영상을 생성하는 과정을 수행하였다. 여기서 영상의 컨벌루션을 위하여 다수의 PSF 모델에 대한 메모리를 이용하고, 커널(Kernel) 기반의 마스크(Mask) 내 모든 픽셀의 접근방식을 수행하였다.
그런데, 종래기술에 의하면, (1) 연산량이 많아서 처리속도가 느리고, (2) 메모리 사용량이 광대하다는 문제점이 있었다.
종래의 이중 조리개(Dual-Aperture)를 기반한 단일의 다중컬러 센서를 이용하여 컬러영상과 깊이정보를 추출할 수 있지만, 깊이정보를 추출하는 연산량이 매우 많고, 메모리 사용량이 광대하여, 영상을 처리하는 데 어려움이 따른다. 따라서 연산량 및 메모리 사용량을 줄일 필요가 있다.
본 발명은, 연산량 및 메모리 사용량을 줄이고, 연산 과정의 소요시간을 단축시키는 영상처리 기술을 제공하고자 하는 것이다.
상기 과제를 달성하기 위한 본 발명의 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법은, 다중컬러 센서로부터 컬러(RGB)영상과 적외선(IR)영상을 입력받는 영상 입력단계, 컬러영상 내 잡음제거와 경계선 강조를 위한 미디언 필터( Median filter ) 처리단계, 필터링된 영상 내 윤곽선을 검출하기 위한 윤곽선 검출단계, 상기 적외선영상에 대한 4 포인트 접근방식으로 산출된 누적값을 이용하여 적분영상을 생성하는 적분영상 생성단계, 적분된 영상 내 최소 4 + α(α는 0부터 가능) 포인트의 접근방식을 기반하여 복수의 스무딩(Smoothing)된 영상들을 생성하는 고속의 컨벌루션 처리단계, 및 하나의 컬러영상과 복수의 스무딩된 적외선영상 간의 최대 유사도를 측정하여 깊이맵(Depth-map)을 생성하는 깊이 영상 생성단계를 포함하고, 상기 적분영상의 생성과 저장과정에서의 메모리 사용량을 줄이기 위하여, 적외선영상의 너비와 높이 및 최대 마스크크기의 컬럼과 로우를 고려하여 크기와 수가 정해지는 다수의 분할 라인버퍼가 배정되는 분할 라인버퍼 배정단계와, 상기 분할 라인버퍼의 값을 이용하여 적분값을 도출하기 위하여, 컬럼의 합을 위한 컬럼 합계 버퍼(너비는 적외선영상의 너비, 높이는 1)와 로우의 합을 위한 로우 합계 버퍼(너비는 총 분할 라인버퍼의 수, 높이는 1)가 배정되는 합계 버퍼 배정단계를 포함함을 특징으로 한다.
여기서, PSF의 최대크기의 마스크 내 처리 소요시간을 줄이기 위하여, 라인버퍼의 각 라인별로 입력되는 값을 PSF 마스크의 너비만큼 매 클럭마다 딜레이시키는 딜레이단계와, 마스크 내 셀에 X자 형태로 접근하여, 마스크크기 1인 라인을 제외한 모든 라인에 대하여 한 라인당 2개의 적분을 수행하는 X자 형태 접근단계를 포함함이 바람직하다.
그리고, 본 발명의 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출장치는, 다중컬러 센서로부터 컬러(RGB)영상과 적외선(IR)영상을 입력받는 영상 입력부, 컬러영상 내 잡음제거와 경계선 강조를 위한 미디언 필터( Median filter ) 처리부, 필터링된 영상 내 윤곽선을 검출하기 위한 윤곽선 검출부, 상기 적외선영상에 대한 4 포인트 접근방식으로 산출된 누적값을 이용하여 적분영상을 생성하는 적분영상 생성부, 적분된 영상 내 최소 4 + α(α는 0부터 가능) 포인트의 접근방식을 기반하여 복수의 스무딩(Smoothing)된 영상들을 생성하는 고속의 컨벌루션 처리부, 및 하나의 컬러영상과 복수의 스무딩된 적외선영상 간의 최대 유사도를 측정하여 깊이맵(Depth-map)을 생성하는 깊이 영상 생성부를 포함하고, 상기 적분영상의 생성과 저장과정에서의 메모리 사용량을 줄이기 위하여, 적외선영상의 너비와 높이 및 최대 마스크크기의 컬럼과 로우를 고려하여 크기와 수가 정해지고 배정되는 복수의 분할 라인버퍼와, 상기 분할 라인버퍼의 값을 이용하여 적분값을 도출하기 위하여, 컬럼의 합을 위한 컬럼 합계 버퍼(너비는 적외선영상의 너비, 높이는 1)와 로우의 합을 위한 로우 합계 버퍼(너비는 총 분할 라인버퍼의 수, 높이는 1)를 포함함을 특징으로 한다.
여기서, PSF의 최대크기의 마스크 내 처리 소요시간을 줄이기 위하여, 라인버퍼의 각 라인별로 입력되는 값을 PSF 마스크의 너비만큼 매 클럭마다 딜레이시키는 딜레이부와, 마스크 내 셀에 X자 형태로 접근하여, 마스크크기 1인 라인을 제외한 모든 라인에 대하여 한 라인당 2개의 적분을 수행하는 X자 형태 접근처리부를 포함함이 바람직하다.
본 발명에 의하면, 다중컬러 센서를 기반하여, 입력받은 적외선(IR) 영상을 기반하여 적분영상을 생성하는 과정에서, PSF 모델 없이 적분영상 내에 최소 4 + α(α은 0부터 가능) 포인트의 적분값만을 이용하여 스무딩(Smoothing)된 다수의 적외선영상을 생성하여, 연산량을 대폭 줄이고, 적분영상을 생성하는 과정에서 분할된 라인버퍼(Line buffer) 구조로 설계하여, 메모리 사용량을 줄이고, 고속의 컨벌루션 과정에서, 커널(Kernel) 기반의 PSF 마스크(Mask) 내 X자 형태의 병렬처리(Parallel processing) 접근방식을 이용하여, 연산량과 소요시간을 대폭 단축시킬 수 있다.
효과의 확인을 위하여, 본 발명의 PSF 모델(Model)을 이용한 컨벌루션 방식과 종래기술의 방식에 대해, 연산량 및 메모리 사용량을 상대적으로 비교하고 분석한다.
[도 1]은 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출하는 장치의 개념도를 나타낸다.
[도 2]는 다중컬러 센서로부터 입력받은 RGB(컬러)영상과 IR(적외선)영상을 보여준다.
[도 3]은 적분영상 생성 과정과 4-Point 접근법을 이용한 해당 면적 계산 과정을 나타낸다.
[도 4]는 상이한 환경(밝은 곳, 어두운 곳)의 적외선영상과 그에 해당한 적분영상을 보여준다.
[도 5]는 기존의 면적 계산법과 4-Point 접근법을 이용한 면적 계산법에 대한 예를 나타낸다.
[도 6]은 고속의 컨벌루션의 처리과정과 보간(Interpolation)을 위한 요소를 정의한다.
[도 7]은 고속의 컨벌루션의 결과로, 10단계 간격으로 80단계까지를 보여준다.
[도 8]은 분할 라인버퍼의 크기 기준표를 예시한다.
[도 9]는 PSF 모델을 기반한 컨벌루션(Convolution)의 종래방식의 처리과정을 나타낸다.
[도 10]은 본 발명에 따른 적분값을 이용한 고속 컨벌루션(High-speed convolution) 방식의 처리과정을 나타낸다.
[도 11]은 최대 마스크(Mask)크기를 33x33으로 가정한 분할된 라인버퍼의 구조를 예시한다.
[도 12]는 최대 마스크(Mask)크기를 33x33으로 가정한 라인버퍼의 입출력 설계 구조를 나타낸다.
[도 13]은 최대 마스크(Mask)크기를 33x33으로 가정한 마스크 내 X자 형태의 구조를 나타낸다.
[도 14]는 라인버퍼의 사용량을 기준으로, 종래의 컨벌루션과 본 발명의 고속의 컨벌루션의 비교에 대한 결과와 고속의 컨벌루션 내 Row_sum_buffer와 Cols_sum_buffer에 대한 계산 과정을 나타낸다.
[도 15]는 메모리 사용량과 연산량을 기준으로, 종래의 PSF 기반의 기존 컨벌루션과 본 발명의 고속의 컨벌루션의 비교에 대한 결과를 나타낸다.
[도 16]은 종래의 PSF 기반의 기존 컨벌루션을 이용한 Depthmap의 결과와 본 발명의 고속의 컨벌루션을 이용한 Depthmap의 결과를 보여준다.
이하, 첨부도면을 참조하면서 본 발명에 대해 보다 상세히 설명한다. 다만, 동일구조에 의하여 동일기능을 가지는 부분에 대해서는, 도면이 달라지더라도 동일부호를 유지함으로써, 그 상세한 설명을 생략하는 경우가 있다.
다중컬러 센서를 기반하여 고속의 컨벌루션을 이용한 영상의 깊이정보를 추출하는 장치의 개념도를 도 1에 나타낸다. 다만, 장치를 구성하는 각 블럭의 구성요소는, 대응되는 처리방법의 순차 단계로서 이해될 수 있고, 이러한 장치나 방법의 일부 또는 전부는, 하드웨어에 롬이나 램 등의 반도체 소자 내부에 고정적으로 구현되거나, 컴퓨터로 읽을 수 있는 저장매체에 저장되어 구현될 수 있고, 이들은 램 등의 기억장치에 로딩되어 CPU 등의 연산처리장치에 의하여 실행될 수 있다.
본 발명은 고속의 컨벌루션을 이용한 영상의 깊이정보에 대한 추출장치에 있어서는, 다중컬러 센서로부터 컬러(RGB)영상과 적외선(IR)영상을 입력받는 영상 입력부(1), 컬러영상 내 잡음제거(Noise reduction)와 경계선 강조(Boundary enhancement)을 위한 미디언 필터( Median filter ) 처리부(2), 필터링(Filtering)된 영상 내 윤곽선을 검출하기 위한 윤곽선 검출부 (3), 적외선영상의 누적값(Cumulative value)을 이용한 적분영상 ( Integral image ) 생성부 (4), 적분된 영상 내 최소 4 + α(α는 0부터 가능) 포인트의 접근방식을 기반하여 다수의 스무딩(Smoothing)된 영상들을 생성하는 고속의 컨벌루션 처리부(5), 그리고 싱글의 컬러영상과 다수의 스무딩된 영상 간의 최대 유사도를 측정하여 깊이맵(Depth-map)을 생성하는 깊이 영상 생성부(6)를 포함함을 특징으로 한다.
상기 영상 입력부(1)는, 이중 조리개(Dual Aperture)를 이용하여 컬러영상과 적외선영상을 분류하고, 입력 형태는 베이어 패턴(Bayer Pattern)인 [R-G-IR-B]형태로 정의한다. 도 2는 다중컬러 센서로부터 입력받은 컬러(RGB)영상과 적외선(IR)영상을 예시로 보여준다.
상기 미디언 필터 처리부(2)는, 한 픽셀을 기준으로 이웃하는 픽셀을 수집하여 오름차순 정렬을 수행하고, 정렬된 값 중에서 중간값을 기준이 되는 한 픽셀 값에 맵핑한다. 여기서, 잡음을 제거하고 경계선을 강조하여 신뢰도가 높은 윤곽선이 검출되도록 필터링이 이루어짐이 바람직하다.
상기 윤곽선 검출부(3)는, 한 픽셀을 기준으로 이웃하는 픽셀 간의 관계를 상관관계 또는 연관성(Correlation)으로 추출한 후, 이에 대한 차이 값을 추출한다. 추출된 값은 해당 임계치보다 클 경우에만 윤곽선으로 판단하여 흰색으로 표시하고, 나머지는 배경으로 판단하여 검은색으로 표시한다.
상기 적분영상 생성부(4)는, 입력받은 적외선영상을 기준으로, 매 픽셀 간격으로 픽셀값을 누적하여 적분영상으로 생성한다. 도 3은 적분영상의 생성 과정과 4-포인트 접근으로, 면적을 계산하는 과정을 나타낸다. 적분영상을 생성하는 과정은 수식 (1)과 같이 순차적으로, 픽셀값을 누적하여 적분값을 생성하고, 이를 수식 (2)와 같이 4-포인트 접근방식으로 연산 가능하다. 처리과정을 살펴보면, di,j는 좌표 (i,j)의 적분영상의 적분값이고, ay,x는 입력 영상의 y,x번째 픽셀을 의미한다. i,j번째의 적분영상의 적분값은 3 포인트의 누적된 적분값과 1 포인트의 입력 영상의 픽셀이 필요하며, 4포인트의 접근으로 연산이 가능하다. 자세하게는 (i-1,j)의 적분값과 (i,j-1)의 적분값을 합하고, 중복되는 (i-1,j-1)의 적분값을 빼준 후, (i,j)의 입력 영상의 픽셀 ai,j를 합하면, di,j의 적분값이 생성된다.
수식 (3)과 같이 4-포인트 접근으로, 해당 영역에 대한 면적을 계산하고, 이를 면적의 크기로 나누어 평균화 처리한다. 처리과정을 살펴보면, bi ,j의 컨벌루션된 값은 i,j 주소를 기준으로, (w,h)의 크기에 해당 영역에 대한 컨벌루션된 값을 나타낸다. bi ,j의 컨벌루션된 값은 적분영상 내 최소 4 포인트+α의 적분값이 필요하며, di ,j의 적분값에서 di ,j-w의 적분값과 di -h,j의 적분값을 빼주고, 중복된 영역인 di-h,j-w의 적분값을 더해준 후, 컨벌루션 영역의 크기로 평균화 처리하여, 컨벌루션 영역을 도출한다. 간략히 설명하면, D 영역을 구하는 과정은, D의 적분값에 B와 C의 적분값을 빼주고, 중복적으로 빠지는 A 적분값을 한 번 더 해주는 것이다.
도 4는, 서로 다른 환경(밝은 곳, 어두운 곳)의 두 적외선영상에 대한 생성된 적분영상을 보여준다. 도 5는, 종래기술에 의한 기존의 면적 계산법과 본 발명에 의한 4-포인트 접근법을 이용한 면적 계산법에 대한 비교예를 나타낸다. 3X3 크기의 빨간색 영역을 기준으로, 두 가지의 방법을 비교한다. (1) 종래기술의 기존의 면적 계산법은 입력영상 내 4+1+5+3+3+2+1+5+4 = 28 이고, (2) 본 발명에 의한 4-포인트 접근법을 이용한 면적 계산법은 적분영상 내 A4(46) - A2(9) - A3(10) + A1(1) = 28이다. 즉, 두 가지 방법에 대한 결과는 동일하며, 다만, (1) 종래기술의 기존의 면적 계산법은 입력 영상 내 마스크의 모든 픽셀을 접근이 필요하고, (2) 본 발명의 4-포인트 접근법을 이용한 면적 계산법은 적분영상 내 4-포인트 접근만으로 연산이 가능하다.
여기서, 적분영상을 생성하고 저장하는 과정에서 메모리 사용량을 줄이기 위하여 분할 라인버퍼를 사용하는 것이 바람직하다. 영상 내 픽셀 값의 범위는 0 ~ 255으로 8비트이고, 적분영상 내 적분값의 범위는 0 ~ (255 * 영상의 너비 * 영상의 높이)로, 영상의 너비와 높이를 1024 x 768로 가정하여 200,540,160 = 약 28비트이다. 적분영상을 그대로 사용할 경우에, 기존(8비트)보다 3.5 배 증가한다. 메모리 사용량을 줄이기 위하여 본 발명에서는 분할 라인버퍼를 사용한다. 도 8은, 분할 라인버퍼의 크기 기준표를 예시한다. 먼저 1번 과정으로, 라인버퍼 내 수용할 최대값에 해당하는 비트 수(예컨대 12)를 선정하고, 2번 과정으로, 영상의 너비(예컨대 1024)에 선정한 비트의 수(한 개의 버퍼에 담을 수 있는 최대개수 = 256/12 = 16)로 나누어, 한 라인을 위한 라인버퍼의 분할 개수(64)를 선정한다. 영상의 너비를 1024로 가정하고, 선정할 비트의 수를 12로 선택하면, 한 라인을 위한 라인버퍼의 분할 개수는 64가 되고, 16개의 데이터를 포함한다. 3번 과정은, 종래기술에 의한 기존 메모리 사용량과 대비하여, 본 발명에 의한 분할된 버퍼의 개수에 따른 메모리 증가율을 나타낸다. 분할 개수가 커질수록 메모리 증가율이 감소한다. 16 x64 = 1024, 4등분하면 2배, 1024등분하면 1배, 그 중간인 64등분하면 약 1.5배가 된다.
도 11은, 최대 마스크(Mask)크기를 33x33으로 가정한 분할된 라인버퍼의 구조를 예시한다. 영상의 크기는 영상의 너비(1024) * 영상의 높이(768)로, 한 라인을 위한 라인버퍼의 분할 개수를 64개로 가정한다. 한 라인버퍼 내 버퍼 너비(Buffer width)는 16이고, 버퍼 높이(Buffer height)가 1인 라인버퍼가 한 라인에 64개가 존재한다. 여기에, 사용할 최대 마스크 크기를 33x33으로 가정하면, 32라인이 필요하고, 총 라인버퍼 수는 64*32 = 2,048개로 결정된다. 분할된 라인버퍼의 값을 이용하여 적분값을 도출하기 위하여, 컬럼(Column)을 위한 컬럼 합계 버퍼(Buffer for cols_sum)(너비: 1024, 높이: 1)와 로우(Row)를 위한 로우 합계 버퍼(Buffer for row_sum)(너비: 2048, 높이 : 1)가 필요하다. 각각의 라인버퍼 내 갈색 박스는 버퍼 내 최대값 자리를 나타낸다. 도 14는 라인버퍼의 사용량을 기준으로, (1) 종래기술의 기존 컨벌루션과 (2) 본 발명의 고속의 컨벌루션의 비교에 대한 결과와, 고속의 컨벌루션 내 로우 합계 버퍼(Row_sum_buffer)와 컬럼 합계 버퍼(Cols_sum_buffer)에 대한 계산 과정을 나타내며, 라인버퍼만 고려한 메모리 사용량, 샘플 입력 영상, 적분영상 1(integral 1)의 프레임(Frame) 형태, 적분영상 2(integral 2)의 각각의 한 라인만 고려한 적분값을 보여준다. 여기서, 2 번째의 라인부터 적분값을 구하기 위해서는 한 라인의 컬럼 합계 버퍼(Cols_sum_buffer)(살색)가 필요하며, Integral(A) = Cols_sum_buffer와 Integral(B)가 더하면 적분영상인 적분영상 1의 프레임 형태 내 2 번째 라인의 값을 생성한다. 결과적으로 영상 라인버퍼는 393,216, 로우 합계 버퍼(Row_sum_buffer)는 영상의 너비(1024) * 한 라인(1) * 28bit = 28,672, 그리고 컬럼 합계 버퍼(Cols_sum_buffer)는 한 라인 기준, 분할 개수(64) * 라인 수(32) * 28bit = 57,344이다. PSF 모델을 제외하고 영상의 라인버퍼만 고려하여 기존 방식과 비교하면 1.82813배 증가한다.
상기 고속의 컨벌루션 처리부(5)는, 적분영상 내에 최소 4 + α(α은 0부터 가능)의 포인트를 기준으로 추출된 값과 크기를 적용하여, 평균화 처리하여, 컨벌루션을 수행한다. 마스크의 크기에 따른 보간법과 가중치 값이 적용됨이 바람직하다. 도 6은, 고속의 컨벌루션의 처리과정과 보간(Interpolation)을 위한 요소를 정의한다. 본 발명의 4-포인트 접근법을 이용한 면적 계산법은, 홀수 기반(1, 3, 5, 7, 9, 11, 13, …) 으로 증가한다. 크기가 다른 두 마스크 사이의 면적 값을 추출하기 위하여, 두 마스크 내 4-포인트의 각각에 선형 보간법(Bilinear interpolation)을 이용하고, 또한 마스크 크기에 대한 가중치(예컨대 0.865316)를 적용한다. 빨강 파선 내의 C2와 D2를 예로 들면, 3x3 크기의 마스크 내 D2는 22, 5x5 크기의 마스크 내 C2는 10이다. 이들 사이에 중간값을 구해보면 D2(22) * 0.5 * 마스크 크기(3x3 : 0.865316)의 가중치 + C2(10) * 0.5 * 마스크 크기(5x5 : 0.861476)의 가중치 = 9.518476 + 4.30738 = 13.825856 값이 도출된다. 여기서 마스크 크기에 대한 가중치는 DISK 기반의 PSF(Point spread function)을 고려한 값이며, 사전에 모델링하는 것이 바람직하다. 도 7은, 고속의 컨벌루션의 결과로, 10단계 간격으로 80단계까지를 보여준다. 0 단계는 선명하고 80단계로 갈수록, 단계적인 스무딩(Smoothing) 처리가 수행된다.
도 9는 종래의 PSF 모델을 기반한 컨벌루션의 기존 방식의 처리과정을 나타낸다. 영상의 크기는 (너비: 1024 x 높이: 768)와 PSF의 크기는 (33x33)으로 가정한다. 빨간 박스 영역에 대한 단일 컨벌루션의 연산 과정을 살펴보면, 적외선영상[0 ~ 1088]와 PSF 모델[0 ~ 1088] 값을 각각 곱하고, 곱해진 값을 다 더하며, 한 픽셀에 대한 컨벌루션 값을 추출하기 위하여 연산자의 사용횟수가 (곱하기 연산자(X): 1089번, 더하기 연산자(+): 1088번)로 카운팅된다. 도 10은, 본 발명의 적분값을 이용한 고속 컨벌루션(High-speed convolution) 방식의 처리과정을 나타낸다. 동일하게 영상의 크기는 (너비: 1024 x 높이: 768)와 PSF의 크기는 (33x33)으로 가정한다. 빨간 박스 영역에 대한 단일 컨벌루션의 연산 과정을 살펴보면, 적분영상 내 마스크에 해당하는 [0, 32, 1056, 1088]의 적분값, 보간법을 위한 Weight for point by point 값, 그리고 마스크 크기에 따른 가중치 값인 Weight for mask base 값만으로 연산이 가능하며, 한 픽셀에 대한 컨벌루션 값을 추출하기 위하여 연산자의 사용횟수가 (곱하기 연산자(X): 2번, 더하기빼기 연산자(+,-): 3번)로 카운팅된다. 즉, 종래의 기존 방식에 비하여 본 발명은 연산량이 대폭 감소된다. 여기서, 커널 기반의 마스크(Mask)는 영상 내 슬라이딩 윈도우(Sliding window)의 처리 방식을 사용하는 것을 원칙으로 한다.
여기서, PSF의 최대 크기의 마스크 내 처리 소요시간을 줄이기 위하여, 병렬처리(Parallel processing) 설계 구조(하드웨어)와 마스크 내 셀(cell)의 X자 형태(Pattern)로만 접근하는 것이 바람직하다. PSF의 크기를 33x33으로 가정한다. 병렬처리를 하기 위해서는 1 Clock 기준으로, 동시적으로 33x33의 데이터가 모두 필요하다. 도 12는 최대 마스크(Mask)크기를 33x33으로 가정한 라인버퍼의 입출력 설계 구조를 나타낸다. F/F는, 데이터 지연을 위한 플립플롭(Flip-flop)(딜레이부)을 의미하며, 실시간(Real-time)으로 입력받거나 라인버퍼에서 출력된 값은 PSF 마스크(Mask)의 너비만큼씩 횟수 딜레이(Delay)를 수행한다. 32번씩의 지연을 통해 33번째의 Clock을 기준으로, 33x33 마스크 내 동시적으로 접근(X자 형태 접근처리부)이 가능하다. 도 13은, 최대 마스크(Mask)크기를 33x33으로 가정한 마스크 내 X자 형태의 구조를 나타낸다. 33x33 크기의 마스크 내 X자 형태는, 동일한 마스크 크기를 기준으로, 한 라인에 두 개의 적분 만이 필요하며(마스크 크기 1은 제외), 서로 대칭적인 구조가 바람직하다.
도 15는, 메모리 사용량과 연산량을 기준으로, (1) 종래기술의 PSF 기반의 기존 컨벌루션과 (2) 본 발명의 고속의 컨벌루션의 비교에 대한 결과를 나타낸다. 다음과 같이 가정한 환경(Assumption)으로, 종래기술의 PSF 모델을 이용한 기존의 컨벌루션 방식과 본 발명의 적분값을 이용한 고속의 컨벌루션 방식을 비교한다. (1) PSF 크기(PS)는 PSF의 너비(33) * PSF의 높이(33) * 종류-Bank수(16) = 17,424, 영상 크기(IS)는 영상의 너비(1024) * 영상의 높이(768) = 786,432, 영상 내 픽셀의 최대 비트는 8, 적분영상 내 적분값의 최대 비트는 28비트, 분할된 라인버퍼 기반의 적분값의 최대 비트는 12비트로 가정한다. 기존 방식과의 비교는 메모리 사용량과 연산량의 횟수을 기준으로 비교한다.
(1) 종래기술의 기존 방식의 결과를 살펴보면, 메모리 사용량은 32bit의 DISK PSF를 사용할 경우, 33 * 33 * 16banks * 32bit = 557,568, 영상을 위한 라인버퍼는 1024 * 768 * 32lines * 8bit = 262,144, 총 메모리 사용량은 819,712 bit이고, 이 결과는 Result 2로 명시한다. (여기에, 1bit의 바이너리(Binary) DISK PSF는 정확도가 낮아지는 성능의 문제가 있으며, 비교 분석에서는 제외) 연산량을 보면, 더하기빼기(+,-)가 (33 * 33 - 1) * 16banks * IS(786,432) = 13,690,208,256번, 곱하기(x)가 (33 * 33) * 16banks * IS(786,432) = 13,702,791,168번이 사용되고, 이 결과는 각각 더하기빼기(Result 4), 곱하기(Result5)로 명시한다.
(2) 본 발명의 고속의 컨벌루션 방식의 결과를 살펴보면, 메모리 사용량은 PSF 메모리(0), 영상을 위한 라인버퍼가 (영상의 너비(1024) / 한 라인을 기준한 라인버퍼의 분할 개수(64)) * 한 라인버퍼의 너비(16) * 32lines * 12bit = 393,216, 로우 합계 라인버퍼(Line buffer for row_sum)이 라인버퍼의 너비(16) * 32line * 28bit = 57,344, 그리고 컬럼 합계 라인버퍼(Line buffer for cols_sum)이 영상의 너비(1024) * 1line * 28bit = 28,672, 총 메모리 사용량은 479,232이다. 이 결과를 종래기술의 기존 방식인 Result 2와 비교하면, 0.584634603배만큼 감소하였다. 연산량을 보면, 적분영상 생성단계, 적분영상 내 4-포인트를 접근하여 면적을 구하는 단계, 보간법(Interpolation)을 포함하여 컨벌루션을 수행하는 단계, 이렇게 3단계가 존재한다. 적분영상 생성 단계는 더하기빼기가 (2+1) * IS(1024 * 768) = (1,572,864 + 786,432)번, 적분영상 내 4-포인트를 접근하여 면적을 구하는 단계는 더하기빼기가 (2+1) * 16banks * IS(1024 * 768) = (12,582,912 + 25,165,824)번, 그리고 보간법을 포함하여 컨벌루션을 수행하는 단계는 더하기빼기가 (1+1) * 16banks * IS(1024 * 768) = (12,582,912 + 12,582,912)번, 곱하기가 6 * 16banks * IS(1024 * 768) = 75,497,472번이며, 총 더하기빼기의 연산량은 65,273,856번, 곱하기의 연산량은 75,497,472번 사용된다. 이 결과는 각각 더하기빼기(Result6), 곱하기(Result7)으로 명시한다. 기존 방식과 비교하면 더하기빼기는 Result 6 / Result 4 = 0.004767923 배만큼 감소하였고, 곱하기는 Result 7 / Result 5 = 0.005509642 배만큼 감소하였다. 결과적으로, 메모리 사용량은 줄이고, 연산량을 대폭 감소하였으며, 소요시간이 단축되었다.
상기 깊이 영상 생성부(6)는, 다중컬러 센서로부터 입력받은 RGB 영상과 고속의 컨벌루션을 거쳐 블러링(Blurring)된 다수의 변환 영상들을 이용하여 최대 유사도를 측정하여, 깊이맵(Depth-Map)을 생성한다. 도 16은, 종래의 PSF 기반의 기존 컨벌루션을 이용한 깊이 영상의 결과와 본 발명의 적분값 기반의 고속의 컨벌루션을 이용한 깊이 영상의 결과를 나타내며, 이 결과는 유사함을 보여준다. 따라서, 적은 메모리 사용량과 적은 연산량, 그리고 적은 소요시간에도 불구하고, 본 발명의 방식은 종래기술과 대등한 결과를 나타낸다.
이상, 본 발명에 대해 구체적 실시예를 들어서 설명하였으나, 본 발명은 이에 한하는 것이 아니고, 이하의 청구범위에 기재된 범위 내에서 당업자에 의해 이루어진 다양한 변형, 개량, 변경은 모두 본 발명의 범위에 속하는 것으로 해석되어야 한다.
본 발명은 다중컬러 센서 산업분야, 특히 고속의 컨벌루션을 이용한 영상의 깊이정보(Depth)를 추출하는 분야에 이용될 수 있다.
1 영상 입력부
2 미디언 필터 처리부
3 윤곽선 검출부
4 적분영상 생성부
5 고속의 컨벌루션 처리부
6 깊이 영상 생성부

Claims (4)

  1. 다중컬러 센서로부터 컬러(RGB)영상과 적외선(IR)영상을 입력받는 영상 입력단계,
    컬러영상 내 잡음제거와 경계선 강조를 위한 미디언 필터(Median filter) 처리단계,
    필터링된 영상 내 윤곽선을 검출하기 위한 윤곽선 검출단계,
    상기 적외선영상에 대해 매 픽셀 간격으로 산출된 픽셀 누적값을 이용하여 적분영상을 생성하는 적분영상 생성단계,
    상기 적분영상 내 사각형을 이루는 네 모서리에 해당되는 4개의 픽셀의 접근방식을 기반하여 복수의 스무딩(Smoothing)된 적외선영상들을 생성하는 고속의 컨벌루션 처리단계, 및
    하나의 컬러영상과 복수의 스무딩된 적외선영상 간의 최대 유사도를 측정하여 깊이맵(Depth-map)을 생성하는 깊이 영상 생성단계
    를 포함하고,
    상기 적분영상의 생성과 저장과정에서의 메모리 사용량을 줄이기 위하여, 적외선영상의 너비와 높이 및 최대 마스크크기의 컬럼과 로우를 고려하여 크기와 수가 정해지는 다수의 분할 라인버퍼가 배정되는 분할 라인버퍼 배정단계와,
    상기 분할 라인버퍼의 값을 이용하여 적분값을 도출하기 위하여, 컬럼의 합을 위한 컬럼 합계 버퍼(너비는 적외선영상의 너비, 높이는 1)와 로우의 합을 위한 로우 합계 버퍼(너비는 총 분할 라인버퍼의 수, 높이는 1)가 배정되는 합계 버퍼 배정단계
    를 포함함을 특징으로 하는 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법.
  2. 청구항 1에 있어서,
    상기 적분영상 생성단계는,
    PSF의 최대크기의 마스크 내 처리 소요시간을 줄이기 위하여, 라인버퍼의 각 라인별로 입력되는 값을 PSF 마스크의 너비만큼 매 클럭마다 딜레이시키는 딜레이단계와,
    마스크 내 셀에 X자 형태로 접근하여, 마스크크기 1인 라인을 제외한 모든 라인에 대하여 한 라인당 2개의 적분을 수행하는 X자 형태 접근단계
    를 더 포함함을 특징으로 하는 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법.
  3. 다중컬러 센서로부터 컬러(RGB)영상과 적외선(IR)영상을 입력받는 영상 입력부,
    컬러영상 내 잡음제거와 경계선 강조를 위한 미디언 필터(Median filter) 처리부,
    필터링된 영상 내 윤곽선을 검출하기 위한 윤곽선 검출부,
    상기 적외선영상에 대해 매 픽셀 간격으로 산출된 픽셀 누적값을 이용하여 적분영상을 생성하는 적분영상 생성부,
    상기 적분영상 내 사각형을 이루는 네 모서리에 해당되는 4개의 픽셀의 접근방식을 기반하여 복수의 스무딩(Smoothing)된 적외선영상들을 생성하는 고속의 컨벌루션 처리부, 및
    하나의 컬러영상과 복수의 스무딩된 적외선영상 간의 최대 유사도를 측정하여 깊이맵(Depth-map)을 생성하는 깊이 영상 생성부
    를 포함하고,
    상기 적분영상의 생성과 저장과정에서의 메모리 사용량을 줄이기 위하여, 적외선영상의 너비와 높이 및 최대 마스크크기의 컬럼과 로우를 고려하여 크기와 수가 정해지고 배정되는 복수의 분할 라인버퍼와,
    상기 분할 라인버퍼의 값을 이용하여 적분값을 도출하기 위하여, 컬럼의 합을 위한 컬럼 합계 버퍼(너비는 적외선영상의 너비, 높이는 1)와 로우의 합을 위한 로우 합계 버퍼(너비는 총 분할 라인버퍼의 수, 높이는 1)
    를 포함함을 특징으로 하는 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출장치.
  4. 청구항 3에 있어서,
    상기 적분영상 생성부는,
    PSF의 최대크기의 마스크 내 처리 소요시간을 줄이기 위하여, 라인버퍼의 각 라인별로 입력되는 값을 PSF 마스크의 너비만큼 매 클럭마다 딜레이시키는 딜레이부와,
    마스크 내 셀에 X자 형태로 접근하여, 마스크크기 1인 라인을 제외한 모든 라인에 대하여 한 라인당 2개의 적분을 수행하는 X자 형태 접근처리부
    를 더 포함함을 특징으로 하는 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출장치.
KR1020150078661A 2015-06-03 2015-06-03 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치 KR101681199B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150078661A KR101681199B1 (ko) 2015-06-03 2015-06-03 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150078661A KR101681199B1 (ko) 2015-06-03 2015-06-03 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치

Publications (1)

Publication Number Publication Date
KR101681199B1 true KR101681199B1 (ko) 2016-12-01

Family

ID=57577266

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150078661A KR101681199B1 (ko) 2015-06-03 2015-06-03 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치

Country Status (1)

Country Link
KR (1) KR101681199B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190074455A (ko) * 2017-12-20 2019-06-28 (주)이더블유비엠 평면이미지의 리포커싱 방법, 장치 및 기록매체에 저장된 프로그램
KR20190074454A (ko) * 2017-12-20 2019-06-28 (주)이더블유비엠 입체이미지용 마스크 및 양안이미지의 생성방법, 장치 및 기록매체
KR102061087B1 (ko) * 2017-12-20 2019-12-30 (주)이더블유비엠 비디오 프로젝터용 포커싱방법, 장치 및 저장매체에 저장된 프로그램
CN111862321A (zh) * 2019-04-30 2020-10-30 北京四维图新科技股份有限公司 视差图的获取方法、装置、系统及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130033579A1 (en) 2010-02-19 2013-02-07 Dual Aperture Inc. Processing multi-aperture image data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130033579A1 (en) 2010-02-19 2013-02-07 Dual Aperture Inc. Processing multi-aperture image data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
적외선 TOF Depth 카메라 기반 공간 제스처 인식 시스템 구현 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190074455A (ko) * 2017-12-20 2019-06-28 (주)이더블유비엠 평면이미지의 리포커싱 방법, 장치 및 기록매체에 저장된 프로그램
KR20190074454A (ko) * 2017-12-20 2019-06-28 (주)이더블유비엠 입체이미지용 마스크 및 양안이미지의 생성방법, 장치 및 기록매체
KR101994472B1 (ko) * 2017-12-20 2019-07-31 (주)이더블유비엠 입체이미지용 마스크 및 양안이미지의 생성방법, 장치 및 기록매체
KR101994473B1 (ko) * 2017-12-20 2019-07-31 (주)이더블유비엠 평면이미지의 리포커싱 방법, 장치 및 기록매체에 저장된 프로그램
KR102061087B1 (ko) * 2017-12-20 2019-12-30 (주)이더블유비엠 비디오 프로젝터용 포커싱방법, 장치 및 저장매체에 저장된 프로그램
CN111862321A (zh) * 2019-04-30 2020-10-30 北京四维图新科技股份有限公司 视差图的获取方法、装置、系统及存储介质
CN111862321B (zh) * 2019-04-30 2024-05-03 北京四维图新科技股份有限公司 视差图的获取方法、装置、系统及存储介质

Similar Documents

Publication Publication Date Title
Chaple et al. Comparisions of Robert, Prewitt, Sobel operator based edge detection methods for real time uses on FPGA
JP7004314B2 (ja) 準パラメトリックオプティカルフロー推定
KR101681199B1 (ko) 다중컬러 센서를 기반하여, 고속의 컨벌루션을 이용한 영상의 깊이정보 추출방법 및 장치
US20160292837A1 (en) Image filtering based on image gradients
Sharma et al. Edge detection using Moore neighborhood
CN104931044A (zh) 一种星敏感器图像处理方法及系统
US8194743B2 (en) Displacement estimation device and method for the same
KR20180020724A (ko) 나선형 신경망 네트워크 기반의 딥러닝에서 특징맵의 계산을 위한 피라미드 히스토리 맵 생성 방법 및 특징맵 생성 방법
Kryjak et al. Real-time implementation of the ViBe foreground object segmentation algorithm
CN112633470B (zh) 优化神经网络卷积残差结构的方法、系统、设备及介质
CN105590307A (zh) 基于透明度的抠图方法和装置
KR20160044979A (ko) 영상 처리 방법 및 장치
RU2013104895A (ru) Процессор изображений с функциональностью выбора контуров
US20100061650A1 (en) Method And Apparatus For Providing A Variable Filter Size For Providing Image Effects
KR101681197B1 (ko) 다중 컬러 센서를 기반하여, 고속 컨벌루션을 이용한 영상의 깊이 정보 추출 방법 및 장치
WO2017128646A1 (zh) 一种图像处理的方法及装置
CN106663317B (zh) 数字图像的形态学处理方法和数字图像处理装置
KR20120042323A (ko) 텍스처 및 움직임 감지를 사용한 시간적으로-일관된 변이 추정을 위한 방법 및 장치
Lim et al. Edge detection control of color images using FPGA
Philip Background subtraction algorithm for moving object detection using denoising architecture in FPGA
EP3547251B1 (en) Dynamic range extension of partially clipped pixels in captured images
KR102581393B1 (ko) Qis 센서를 위한 고 대비 구조화된 광 패턴들
WO2019000300A1 (zh) 二维数据匹配方法、装置和逻辑电路
CN110264417B (zh) 基于分层模型的局部运动模糊区域自动检测提取方法
Dinh et al. High throughput fpga architecture for corner detection in traffic images

Legal Events

Date Code Title Description
GRNT Written decision to grant