KR101712435B1 - 윤곽선 깊이정보 확장장치 - Google Patents

윤곽선 깊이정보 확장장치 Download PDF

Info

Publication number
KR101712435B1
KR101712435B1 KR1020150128153A KR20150128153A KR101712435B1 KR 101712435 B1 KR101712435 B1 KR 101712435B1 KR 1020150128153 A KR1020150128153 A KR 1020150128153A KR 20150128153 A KR20150128153 A KR 20150128153A KR 101712435 B1 KR101712435 B1 KR 101712435B1
Authority
KR
South Korea
Prior art keywords
value
depth
pixel
sram cell
depth information
Prior art date
Application number
KR1020150128153A
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 KR1020150128153A priority Critical patent/KR101712435B1/ko
Application granted granted Critical
Publication of KR101712435B1 publication Critical patent/KR101712435B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/564Depth or shape recovery from multiple images from contours
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

본 발명의 윤곽선 깊이정보 확장장치는, 배경이 제거되고 깊이정보가 윤곽선에만 존재하는 이미지를 입력받아, 상기 깊이정보를 윤곽선 이외의 영역으로 실시간 확장하는 장치에 있어서, 4방향에서 들어오는 신호의 동시처리를 가능하게 하는 싱글단(single-ended) SRAM 셀(20)을 포함하는 단위 SRAM 장치를 복수개 구비하고, 상기 이미지를 이루는 픽셀의 깊이 값을 저장하고 읽고 쓰기 위한 SRAM 셀 그룹(50)과, 상기 SRAM 셀(20)의 출력라인에 대한 리프레쉬(refresh) 기능을 수행하는 프리챠지 장치(40)와, 현재 처리의 대상이 되는 현재픽셀의 깊이 값이 아직 초기값으로 남아 있는 경우에만, 작동클럭(gclk)신호를 발생시키는 클럭 프로바이더(70)와, 상기 작동클럭신호를 받으면, 현재픽셀에 대한 4방향 주변픽셀의 깊이 값을 미리 정해진 순서대로 읽어서, 읽혀진 깊이 값이 초기값이 아니면, 깊이 값을 현재픽셀의 깊이 값으로 설정하는 깊이 값 복제수단과, (1) 배경이 제거된 상기 이미지에서 상기 윤곽선 이외의 영역을 작업영역으로 설정하고, (2) 상기 작업영역의 모든 픽셀에 대해 초기값을 설정하도록 상기 SRAM 셀(20)의 초기화 장치를 작동시키고, (3) 상기 작업영역의 모든 픽셀에 대해 상기 클럭 프로바이더와 깊이 값 복제수단을 작동시키는 과정을, 작업영역의 모든 픽셀의 깊이 값이 초기값 이외의 값이 될 때까지 반복시키는 컨트롤러를 포함함을 특징으로 한다.

Description

윤곽선 깊이정보 확장장치 {Regularization apparatus for depth information on edge}
본 발명은, 윤곽선 깊이정보 확장장치에 관한 것으로서, 보다 상세히는, 배경이 제거된 영상의 윤곽선에만 존재하는 깊이정보를 윤곽선 이외의 부분으로 실시간 확장(regularization)시키는 회로장치에 관한 것이다.
일반적으로 듀얼 어퍼쳐(Dual Aperture)의 다중컬러(4-color) 단일센서와 하나의 카메라 렌즈를 이용하여 3차원 깊이정보를 추출할 수 있는 기술이 이미 알려져 있다. 영상의 초점(focus)이 맞지 않으면 선의 윤곽이 흐려진다. 그 흐려짐의 정도가 센서와의 거리에 비례하므로, 이를 이용하여 영상이미지의 깊이정보를 추출할 수 있는 것이다.
하지만, 흐려지는 정도는 이미지의 윤곽선에서만 감지가 되므로, 윤곽선 이외의 이미지 부분에는 깊이정보가 존재하지 않게 된다. 즉, 이 기술에 의하면, 그 깊이정보가 결국 영상이미지의 윤곽선(edge)에만 존재하게 된다는 단점이 있다.
그래서, 이를 해결하기 위해, 영상이미지의 윤곽선에만 존재하는 깊이정보를 윤곽선 이외의 부분으로 확장 적용(깊이정보 보정: regularization)하는 과정을 거칠 필요가 있다.
종래에는, 소프트웨어를 이용하여 깊이정보를 확장하고 있었다. 그러나 기본적으로 그 처리속도가 느려서, 예컨대 HD급의 동영상이라면, 실시간 확장을 통한 어플리케이션 적용이 불가능할 정도였다.
선행기술문헌의 논문 초록에 의하면, 'Conventional cameras capture images with limited depth of field and no depth information. Camera systems have been proposed that enable additional depth information to be captured with the image. These systems reduce the resolution of the captured image or result in reduced sensitivity of the lens. We demonstrate a camera that is able to capture extended depth of field images together with depth information at each single frame while requiring minimal impact on the physical design of the camera or its performance. In this paper we show results with a camera for mobile devices, but this technology (named dual aperture to recall the major change in the camera model) can be applied with even greater effect in larger form factor cameras.'라고 되어 있고, 이 논문의 도 8과 관련된 설명에서 Regularized depth map이 제시되어 있지만, 이와 관련된 설명에서 수식 (13)에 의한 원리와 개념만 설명하고 있을 뿐, 속도향상을 위한 구체적인 방안의 제시는 되어 있지 않다.
물론, 이러한 소프트웨어를 빠른 범용 하드웨어, 예컨대 고가의 멀티코어 범용 하드웨어 상에서 실행시킨다면, 처리속도의 문제를 해결할 수도 있을 것이다. 그러나 휴대용 모바일기기에서의 활용이 증대되는 현실을 반영하면, 저전력, 경량이면서, 잔고장의 우려가 적은 심플 구조의 하드웨어가 요구되고 있다. 그런 의미에서, 종래에는 본 발명과 같은 개념의 전용 하드웨어 구조를 가지는 선행특허는 존재하지 않았다.
본 발명과 같이, 배경이 제거된 영상의 윤곽선에만 존재하는 깊이정보를 윤곽선 이외의 부분으로 실시간 확장시키는 장치가 응용될 수 있는 응용분야로서는, 다음과 같은 분야를 들 수 있다.
(1) 거리감응 기능을 가진 CC-TV: 원거리 물체의 이동은 무시하고 관심 있는 근거리 물체만을 분리(즉, 배경제거)시킨 후, 본 기술을 사용하여 관심물체의 내부까지 깊이정보를 구한다. 물체인식, 동작인식 등에 사용 가능하다.
(2) 3D 스캐너: 예컨대 한 인물의 얼굴을 3D 스캔하여 모델링하는데 사용 가능하다. 먼저 윤곽선에서 깊이정보를 추출한 후, 본 기술을 응용하여 내부까지 채운다면, 마지막으로 3D모델을 완성할 수 있다.
(3) 동작인식 (Push & Pull 인식): 손동작인식과 같은 동작인식을 하는데 응용 가능하다. 배경을 제거한 후, 손가락의 윤곽선에서 깊이정보를 구한다. 그 후, 본 기술을 이용하여 손가락 내부에서의 깊이정보를 구한다. 이를 인식기에 입력하여 손가락동작을 인식하는데 응용한다.
(4) 기타 의료기기 등에 응용 가능: 녹내장 진단 시스템 등.
Dual Aperture Photography: Image and Depth from a Mobile Camera, M. Martinello, et al. Mar 24, 2015
상기와 같이, 윤곽선 상의 깊이정보를 소프트웨어에 의해 내측 영역으로 확장하는 것은, 지나치게 느린 속도로 인하여 실시간 적용이 불가능하고, 소프트웨어가 실행될 범용 하드웨어의 성능을 높이는 방식은, 비용문제 뿐 아니라, 소형화, 저전력화, 단순구조화에 역행하므로 채택할 수 없다.
따라서, 윤곽선 상의 깊이정보를 소프트웨어에 의해 내측 영역으로 실시간 확장하는 기능만을 수행하는, 전용 하드웨어가 요망된다. 이 전용 하드웨어는, 모바일기기에서 실시간으로 처리하기 위하여, 소형, 저전력, 저비용이고, 간단한 구조를 가져야 한다.
본 발명은, 간단한 하드웨어로 구성되어, 주변픽셀이 윤곽선 상의 픽셀인 경우에, 그 주변픽셀 값에 의해 자신의 픽셀 값을 오버라이트하도록 함으로써, 윤곽선 내부영역을 채워나가도록 하는, 윤곽선 깊이정보 확장장치를 제공하고자 하는 것이다.
상기 과제를 달성하기 위한 본 발명의 윤곽선 깊이정보 확장장치는, 배경이 제거되고 깊이정보가 윤곽선에만 존재하는 이미지를 입력받아, 상기 깊이정보를 윤곽선 이외의 영역으로 실시간 확장하는 장치에 있어서, 4방향에서 들어오는 신호의 동시처리를 가능하게 하는 싱글단(single-ended) SRAM 셀(20)을 포함하는 단위 SRAM 장치를 복수개 구비하고, 상기 이미지를 이루는 픽셀의 깊이 값을 저장하고 읽고 쓰기 위한 SRAM 셀 그룹(50)과, 상기 SRAM 셀(20)의 출력라인에 대한 리프레쉬(refresh) 기능을 수행하는 프리챠지 장치(40)와, 현재 처리의 대상이 되는 현재픽셀의 깊이 값이 아직 초기값으로 남아 있는 경우에만, 작동클럭(gclk)신호를 발생시키는 클럭 프로바이더(70)와, 상기 작동클럭신호를 받으면, 현재픽셀에 대한 4방향 주변픽셀의 깊이 값을 미리 정해진 순서대로 읽어서, 읽혀진 깊이 값이 초기값이 아니면, 깊이 값을 현재픽셀의 깊이 값으로 설정하는 깊이 값 복제수단과, (1) 배경이 제거된 상기 이미지에서 상기 윤곽선 이외의 영역을 작업영역으로 설정하고, (2) 상기 작업영역의 모든 픽셀에 대해 초기값을 설정하도록 상기 SRAM 셀(20)의 초기화 장치를 작동시키고, (3) 상기 작업영역의 모든 픽셀에 대해 상기 클럭 프로바이더와 깊이 값 복제수단을 작동시키는 과정을, 작업영역의 모든 픽셀의 깊이 값이 초기값 이외의 값이 될 때까지 반복시키는 컨트롤러를 포함함을 특징으로 한다.
여기서, 상기 단위 SRAM 장치는, 깊이 값을 저장하는 싱글단 (single-ended) SRAM 셀(20)과, 상기 싱글단 SRAM 셀(20)에 대한 4방향의 픽셀의 라이트 이네이블(we) 신호를 발생시키는 라이트 이네이블 제너레이터(10)와, 상기 싱글단 SRAM 셀(20)로부터 4방향의 픽셀의 데이터를 읽어내기 위한 리드아웃 포트(30)를 포함함을 특징으로 한다.
여기서, 상기 단위 SRAM 장치의 상기 싱글단 SRAM 셀, 상기 라이트 이네이블 제너레이터 및 상기 리드아웃 포트는, 픽셀의 깊이 값이 초기값 이외의 값으로 업데이트되었음을 나타내는 업비트(up bit)를 포함하고, 상기 SRAM 셀 그룹(50)의 출력단으로부터 데이터의 업데이트 상태에 따라, 상기 업비트의 로직 값을 발생시키는 기능을 하는 업비트 제너레이터(60)를 포함함을 특징으로 한다.
그리고, 상기 클럭 프로바이더는, 현재픽셀의 업비트(utib0)와 시스템 클럭(clk)의 입력을 받아 작동클럭(gclk)신호를 발생시켜 제공하는 업비트 게이티드 (gated) 클럭 프로바이더(70)임을 특징으로 한다.
본 발명에 의하면, 간단한 하드웨어로 구성되어, 주변픽셀이 윤곽선 상의 픽셀인 경우에, 그 주변픽셀 값에 의해 자신의 픽셀 값을 오버라이트하도록 함으로써, 윤곽선 내부영역을 채워나가도록 하는, 윤곽선 깊이정보 확장장치가 제공된다.
도 1은, 본 발명의 윤곽선 깊이정보 확장장치가 적용될 영상의 임의의 픽셀의 위치좌표 정의를 나타낸 모식도이다.
도 2는, 셀의 초기화와 4 방향의 읽기와 쓰기를 지원하는 SRAM 셀(cell) 구조를 나타내는 회로도이다.
도 3은, 깊이 값의 전파 상태를 알려주는 업비트(up-bit) 로직을 나타내는 회로도이다.
도 4는, 라이트 이네이블(write enable)신호를 생성하는 회로도이다.
도 5는, 트랜스퍼 이네이블(transfer enable)신호를 생성하는 회로도이다.
도 6은, 본 발명의 핵심이 되는 각 신호들의 상호 시간관계를 나타내 주는 타이밍 다이어그램이다.
도 7 내지 도 11은, 하나의 예시로서, 본 발명의 알고리즘을 적용하여 12x9 픽셀어레이(array)에 대해서 확장(regularization)을 실행한 예제를 나타내는 픽셀 예시도이다.
이하, 본 발명의 윤곽선 깊이정보 확장장치에 대해 첨부도면을 참조하면서 상세히 설명한다. 다만, 동일구조를 가지고 동일기능을 수행하는 부재에 대해서는, 도면이 달라지더라도 동일부호를 유지함으로써, 그 상세한 설명을 생략하는 경우가 있다.
1. 알고리즘의 구성
알고리즘의 목표는, 깊이정보가 존재하는 이미지 윤곽선(edge)의 픽셀로부터 이웃한 픽셀로 깊이정보를 전달하고자 하는 것이다. 현재픽셀을 중심으로 하는 이웃 픽셀의 위치좌표는 도 1과 같다. 즉, 우측으로 갈수록, 위로 갈수록 번호가 커지는 xy 좌표계를 취한다.
알고리즘은 다음의 순서로 수행된다.
(1) 배경제거: 입력된 영상의 배경을 제거한다. 또는 배경이 제거된 영상을 입력받는다. 즉, 이 기술은, 배경 이미지가 제거된 영상에 적용하는 것이 원칙이고, 경우에 따라서는 정적인 배경에 움직이는 물체의 이미지가 있을때, 움직이는 물체의 이미지만을 분리한 후에 적용할 수도 있다.
(2) 초기화: 배경과 윤곽선을 제외한 모든 픽셀의 깊이 값을 '0'으로 초기화한다. 깊이 값이 '0'이라 함은, 깊이 값이 아직 정해지지 않았음을 의미한다.
(3) 만약 위치좌표 (i, j)에 있는 픽셀의 깊이정보 D(i, j) 값이 0이 아니라면, 다음 픽셀로 이동한다. 즉, 이미 깊이정보 값이 존재하므로 계산할 필요가 없다.
(4) 위치좌표 (i, j)에 있는 픽셀의 깊이정보 D(i, j) 값이 0이라면, 그 값을 결정해야 하는데, 다음과 같은 순서로 결정한다.
(5) 만약 D(i, j+1) 값이 0이 아니면, D(i, j) <= D(i, j+1)
(6) 만약 D(i, j+1) 값이 0이고, D(i-1, j) 값이 0이 아니라면, D(i, j) <= D(i-1, j)
(7) 만약 D(i, j+1) 와 D(i-1, j) 값이 모두 0이고, D(i, j-1) 값이 0이 아니라면, D(i, j) <= D(i, j-1)
(8) 만약 D(i, j+1), D(i-1, j), D(i, j-1) 값이 모두 0이고, D(i+1, j) 값이 0이 아니라면, D(i, j) <= D(i+1, j)
(9) 만약 D(i, j+1), D(i-1, j), D(i, j-1), D(i+1, j) 값이 모두 0이라면, 계산을 하지 않고 다음 픽셀로 이동
(10) 주어진 영상의 프레임 안에 존재하는 모든 픽셀을 한 번씩 지나갈 때까지 위의 (2)~(9)의 과정을 반복한다
(11) 주어진 프레임 안에 있는 모든 픽셀의 깊이정보 값이 초기값 0과 달라질 때까지 위의 (2)~(10)의 과정을 반복한다.
(12) 스무딩(smoothing)과정을 진행: 연결된 깊이 값이 순간적인 점프가 일어나지 않도록 완화시키는 과정을 진행하여 최종 깊이 이미지를 얻는다.
2. 하드웨어의 구성
제한된 환경에서 실시간의 빠른 처리를 요구하므로, SRAM 어레이(array)의 하드웨어 구조를 적용하였다. 즉, 본 발명은 SRAM 어레이 구조를 이용하여 실시간 보정을 가능케 하는 기술이다.
본 발명은, 배경이 제거되고 깊이정보가 윤곽선에만 존재하는 이미지를 입력받아, 상기 깊이정보를 윤곽선 이외의 영역으로 실시간 확장하는 장치에 관한 것이다.
본 발명은, SRAM 셀 그룹(50)과, 프리챠지 장치(40)와, 클럭 프로바이더(70)와, 깊이 값 복제수단과, 컨트롤러를 포함함을 특징으로 한다.
상기 SRAM 셀 그룹(50)은, 상기 이미지를 이루는 한 픽셀의 깊이 값을 저장하고 읽고 쓰기 위한 수단으로서, 단위 SRAM 장치를 복수개 구비하여 이루어진다. 상기 단위 SRAM 장치는, 초기화 가능하고, 4방향에서 들어오는 신호의 동시처리를 가능하게 하는 멀티포트(multi-port) 싱글단(single-ended) SRAM 셀(20)을 포함하여 구성된다.
상기 프리챠지 장치(40)는, 상기 SRAM 셀(20)의 출력라인에 대한 리프레쉬(refresh) 기능을 수행하는 수단이다.
상기 클럭 프로바이더(70)는, 현재 처리의 대상이 되는 현재픽셀의 깊이 값이 아직 초기값으로 남아 있는 경우에만, 작동클럭(gclk)신호를 발생시키는 장치이다.
상기 깊이 값 복제수단은, 상기 작동클럭신호를 받으면, 현재픽셀에 대한 4방향 주변픽셀의 깊이 값을 미리 정해진 순서대로 읽어서, 읽혀진 깊이 값이 초기값이 아니면, 깊이 값을 현재픽셀의 깊이 값으로 설정하는 수단이다.
상기 컨트롤러는, (1) 배경이 제거된 상기 이미지에서 상기 윤곽선 이외의 영역을 작업영역으로 설정하고, (2) 상기 작업영역의 모든 픽셀에 대해 초기값을 설정하도록 상기 SRAM 셀(20)의 초기화 장치를 작동시키고, (3) 상기 작업영역의 모든 픽셀에 대해 상기 클럭 프로바이더와 깊이 값 복제수단을 작동시키는 과정을, 작업영역의 모든 픽셀의 깊이 값이 초기값 이외의 값이 될 때까지 반복시키는 수단이다.
(1) 깊이 값의 표현
최대 32가지의 깊이 값을 하드웨어로 구현하기 위해서, 각 픽셀마다 5비트(bit)를 적용한다. 32가지 이상의 깊이 값의 레벨(level)을 위해서는 더 많은 비트 수를 사용할 수 있다.
위의 알고리즘을 구현하기 위해서 싱글단 SRAM 셀(cell)을 채택하여 실리콘에서 차지하는 면적을 최소화한다. 여기에서 사용되는 SRAM은 널리 알려져 있는 단순 메모리 기능만을 하는 것이 아니고, 추가적으로 주위 픽셀의 깊이 값을 상기 일정한 알고리즘에 의하여 전파시키는 기능을 가진다.
(2) SRAM 셀 구조
모두 4방향 (top, bottom, left, right)의 픽셀 값을 볼 수 있는 구조로서, 4 방향의 SRAM과 읽기와 쓰기의 기능을 지원하며, 초기값을 기록하기 위하여 추가로 한개씩의 읽기포트와 쓰기포트가 할당되어 있는 구조(도 2 참조)이다.
이를 위하여, 도 2의 상기 단위 SRAM 장치는, 싱글단 (single-ended) SRAM 셀(20)과, 라이트 이네이블 제너레이터(10)와, 리드아웃 포트(30)를 포함하도록 구성되어도 좋다.
상기 싱글단 (single-ended) SRAM 셀(20)은, 깊이 값을 저장하는 수단이다.
상기 라이트 이네이블 제너레이터(10)는, 상기 싱글단 SRAM 셀(20)에 대한 4방향의 픽셀의 라이트 이네이블(we) 신호를 발생시키는 수단이다.
상기 리드아웃 포트(30)는, 상기 싱글단 SRAM 셀(20)로부터 4방향의 픽셀의 데이터를 읽어내기 위한 수단이다.
(3) SRAM 업데이트의 모니터링을 위한 업비트 (up bit) 구조
깊이 값의 전파가 이루어지려면 위의 알고리즘 스텝 (2)에서 명시하였듯이, 목표로 하는 SRAM 셀(cell)의 깊이 값이 '0'인지 여부를 먼저 판단해야 한다. 이는 도 3과 같이 업비트(up bit, 업데이트 비트, ubit)을 계산하는 로직 게이트를 이용하여 구현 가능하다. 이를 이용하면, 일단 SRAM 셀(cell)의 깊이 값이 초기값을 벗어나서 실제 의미있는 값이 씌여졌는지를 판단할 수 있다. 즉, ubit = 1이면 이미 업데이트된 것이고, ubit = 0이면, 아직 초기값 '0'이기 때문에 깊이 값이 전파되어 씌여지기를 기다리는 상태이다.
실제 하드웨어의 구성은 도 3에 나와 있듯이, SRAM 5개의 셀로 이루어져 있고, 씌여진 셀(cell) 값이 '0'이 아니면, ubit값이 '1'을 가지게 된다.
이를 위하여, 상기 단위 SRAM 장치의 상기 싱글단 SRAM 셀, 상기 라이트 이네이블 제너레이터 및 상기 리드아웃 포트는, 픽셀의 깊이 값이 초기값 이외의 값으로 업데이트되었음을 나타내는 업비트(up bit)를 만들어 내도록 구성되어도 좋다. 이때, 상기 SRAM 셀 그룹(50)에 저장된 데이터로부터 데이터의 업데이트 상태에 따라, 상기 업비트의 로직 값을 발생시키는 기능을 하는 업비트 제너레이터 (60)를 포함하도록 구성되어도 좋다.
그리고, 상기 클럭 프로바이더는, 현재픽셀의 업비트(utib0)와 시스템 클럭(clk)의 입력을 받아 작동클럭(gclk)신호를 발생시켜 제공하는 업비트 게이티 드(gated) 클럭 프로바이더(70)로 구성되어도 좋다. 이로써, 업비트가 0일 때만 그 픽셀의 값을 보정하는 동작을 수행 가능하게 통제할 수 있다.
(4) 트랜스퍼 이네이블 라인 생성(Transfer Enable Line Generation)
깊이 값을 전파시키기 위해서 도 2에 보이는 셀 구조를 이용하는데, 각 4 방향에서 들어오는 값을 선택적으로 이용해야 한다. 이 컨트롤을 구현하는 생성로직(Generation Logic)은 도 4, 도 5와 같다. 각각의 트랜스퍼 라인(transfer line)의 리퀘스트(request)가 올 때마다, 타깃 셀의 라이트 워드 라인(write word line)이 이네이블(enable)된다.
도 2에 나타낸 라이트 이네이블 제너레이터(10)는, 도 4와 같이, 클럭신호를 받아서 상기 싱글단 SRAM 셀(20)에 대한 4방향의 픽셀 및 업비트의 라이트 이네이블(we) 신호를 발생시키도록, 상기 클럭신호를 기준으로 4방향에서 오는 트랜스퍼 라인(tr_t/tr_b/tr_l/tr_r)의 신호들이 병렬로 연결되어 있는 다이나믹 회로(dynamic circuit)로 이루어지고, 이러한 라이트 이네이블 제너레이터(10)는, 라이트 이네이블 드라이버(11)를 거쳐서 출력되도록 구성되어도 좋다.
다음으로, 도 3에서 만들어진 업비트(up-bit) 신호를 받은 후, 위의 알고리즘의 스텝에 따라, 순서대로 각 셀에 있는 깊이 값의 존재를 확인(Look up)한다. 예컨대, 상(Top) -> 우(Right) -> 하(Bottom) -> 좌(Left)의 순서이다. 물론 위의 순서는 알고리즘의 편의에 따라서 바꿀 수 있다.
순서대로 진행하면서 초기값과 다른 깊이 값이 발견되는 첫 번째 셀의 값을 가져온다. 이를 가능케 하는 로직은 "Priority encoder"로 알려져 있고, 이는 다수의 바이너리 입력을 정해진 우선순위에 따라 인코딩하여 소수의 비트수로 압축하여 출력하는 것이다. 이로써 업비트 게이티드 클럭 프로바이더(up-bit gated clock provider)와 연결하여 원하는 트랜스퍼(transfer) 신호를 얻을 수 있다. 이를 구성하는 회로는 도 5와 같다.
본 발명의 장치는, 영상을 이루는 모든 픽셀에 대해 처리를 행하는 것이고, 그 중 현재 처리되고 있는 하나의 픽셀인 현재픽셀(current pixel)에 대해서는, 그 현재픽셀의 업비트가 1이 아닌 경우에, 위에서 정한 순서로 주변 픽셀(상, 우, 하, 좌)의 깊이 값을 순차 체크하고, 그 깊이 값이 0이 아니면 그 깊이 값에 의해 현재픽셀의 깊이 값을 대체하는 것이다. 그래서, 이 주변 픽셀의 깊이 값의 체크 및 현재픽셀의 깊이 값의 대체를 위한 하드웨어로서, 도 5와 같이, 현재픽셀의 초기값이 '0'일 때만 작동되도록 하기 위해서, 현재픽셀의 업비트(ubit0)와 시스템 클럭의 입력을 받아 작동클럭(gclk) 신호를 발생시켜 제공하는 업비트 게이티드 클럭 프로 바이더(70)와, 각 SRAM 셀 그룹(50)에서 발생된 업비트(ubit_t/ubit_b/ubit_l/ubit_r) 신호와 상기 작동클럭(gclk)을 입력으로 하여 트랜스퍼 이네이블(Transfer Enabel) 신호를 만들어내는 트랜스퍼 이네이블 제너레이터(80)로 이루어지고, 상기 트랜스퍼 이네이블 제너레이터(80)는 트랜스퍼 드라이버(90)를 거쳐서 출력되도록 구성되어도 좋다.
다음으로, 도 6은, 본 발명의 핵심이 되는 각 신호들의 상호 시간관계를 나타내 주는 타이밍 다이어그램(timing diagram)이다.
(1) 시스템 클럭(clk)의 라이징 에지(rising edge)를 기준으로 프리챠지 신호(pr)의 폴링에지(falling edge)(1)가 만들어진다.
(2) 상기 프리챠지의 폴링에지가 나타나면 트랜스퍼 데이터라인(tdata)의 라이징 에지(2)가 만들어진다. 트랜스퍼 데이터라인(tdata)은, 도 2의 리드아웃 포트(30)를 말하고, 각 4방향에 있는 상기 싱글단 SRAM 셀의 리드아웃 포트(30)에서 드라이브(drive)된다.
(3) 도 3의 업비트(ubit)에서 나온 신호를 받아, 도 5의 트랜스퍼 신호들(tr_t/tr_b/tr_l/tr_r)의 라이징 에지(3)가 상기 트랜스퍼 드라이버(tr driver; 90)에서 만들어진다.
(4) 상기 트랜스퍼 신호들(tr_t/tr_b/tr_l/tr_r)이 생성되면, 도 2의 리드아웃 포트(30)에 연결된 상기 트랜스퍼 데이터라인(tdata)의 폴링에지(4)가 만들어 진다.
(5) 시스템 클럭(clk)의 폴링에지(5)가 발생된다.
(6) 이에 따라 도 4의 라이트 이네이블(we) 신호의 라이징 에지(6)가 만들어진다.
(7) 라이트 이네이블(we) 신호가 나오면, 도 2의 싱글단 SRAM 셀(20)에 트랜스퍼 데이터라인(tdata)의 데이터 값이 씌여진다(7).
(8) 시스템 클럭(clk)의 다음 사이클의 라이징 에지(8)가 나온다.
(9) 상기 라이트 이네이블(we)의 폴링에지(9)가 만들어진다.
3. 알고리즘을 적용한 예제
다음 도 7~ 도 11은, 위의 알고리즘을 적용하여 12x9 픽셀어레이(array)에 대해서 확장(regularization)을 실행한 예제이다. 초기값(도 7, 빈 칸은 0을 의미)을 로딩한 후에, 모두 N = 4번의 스텝을 거치게 되면, 모든 픽셀에 깊이 값이 정해지는 것을 알 수 있다. 즉, 자신의 값이 초기값(0)인 각 픽셀에 대해 정해진 순서(본 예에서는 상우하좌)로 주변 픽셀의 값을 가져오는 알고리즘이므로, 상단으로부터 시계방향으로 진행한다고 할 때, N = 1(도 8), N = 2(도 9), N = 3(도 10), N = 4(도 11)에 있어서 화살표로 나타낸 바와 같이 새로운 깊이 값이 채워지게 되고, 더 이상 채워질 빈 픽셀이 존재하지 않으므로, 처리를 종료하게 된다.
이상, 특정 구체적 실시예를 따라서 본 발명을 상세히 설명하였으나, 예제를 보여주기 위해 사용된 한정된 어레이 사이즈(12X9)를 포함해서, 본 발명은 이 구체적 실시예에 한정되는 것이 아니고, 특허청구범위에 기재된 범위 내에서 이루어진 개량, 변경, 변형은 모두, 본 발명의 범위에 속하는 것으로 해석되어야 한다.
본 발명은, 배경이 제거된 영상의 윤곽선에만 존재하는 깊이정보를 윤곽선 이외의 부분으로 실시간 확장(regularization)시키는 회로장치에 이용될 수 있다.
10 라이트 이네이블(write enable) 제너레이터
11 라이트 이네이블 드라이버
20 싱글단(single-ended) SRAM 셀
30 리드아웃(readout) 포트
40 프리챠지(precharge) 장치
50 SRAM 셀 그룹
60 업비트(up-bit) 제너레이터
70 업비트 게이티드(gated) 클럭 프로바이더
80 트랜스퍼 이네이블 제너레이터
90 트랜스퍼 드라이버

Claims (4)

  1. 배경이 제거되고 깊이정보가 윤곽선에만 존재하는 이미지를 입력받아, 상기 깊이정보를 윤곽선 이외의 영역으로 실시간 확장하는 장치에 있어서,
    4방향에서 들어오는 신호의 동시처리를 가능하게 하는 싱글단(single-ended) SRAM 셀(20)을 포함하는 단위 SRAM 장치를 복수개 구비하고, 상기 이미지를 이루는 픽셀의 깊이 값을 저장하고 읽고 쓰기 위한 SRAM 셀 그룹(50)과,
    상기 SRAM 셀(20)의 출력라인에 대한 리프레쉬(refresh) 기능을 수행하는 프리챠지 장치(40)와,
    현재 처리의 대상이 되는 현재픽셀의 깊이 값이 아직 초기값으로 남아 있는 경우에만, 작동클럭(gclk)신호를 발생시키는 클럭 프로바이더(70)와,
    상기 작동클럭신호를 받으면, 현재픽셀에 대한 4방향 주변픽셀의 깊이 값을 미리 정해진 순서대로 읽어서, 읽혀진 깊이 값이 초기값이 아니면, 깊이 값을 현재픽셀의 깊이 값으로 설정하는 깊이 값 복제수단과,
    (1) 배경이 제거된 상기 이미지에서 상기 윤곽선 이외의 영역을 작업영역으로 설정하고, (2) 상기 작업영역의 모든 픽셀에 대해 초기값을 설정하도록 상기 SRAM 셀(20)의 초기화 장치를 작동시키고, (3) 상기 작업영역의 모든 픽셀에 대해 상기 클럭 프로바이더와 깊이 값 복제수단을 작동시키는 과정을, 작업영역의 모든 픽셀의 깊이 값이 초기값 이외의 값이 될 때까지 반복시키는 컨트롤러
    를 포함함을 특징으로 하는 윤곽선 깊이정보 확장장치.
  2. 청구항 1에 있어서,
    상기 단위 SRAM 장치는,
    깊이 값을 저장하는 싱글단 (single-ended) SRAM 셀(20)과,
    상기 싱글단 SRAM 셀(20)에 대한 4방향의 픽셀의 라이트 이네이블(we) 신호를 발생시키는 라이트 이네이블 제너레이터(10)와,
    상기 싱글단 SRAM 셀(20)로부터 4방향의 픽셀의 데이터를 읽어내기 위한 드아웃 포트(30)
    를 포함함을 특징으로 하는 윤곽선 깊이정보 확장장치.
  3. 청구항 2에 있어서,
    상기 단위 SRAM 장치의 상기 싱글단 SRAM 셀, 상기 라이트 이네이블 제너레이터 및 상기 리드아웃 포트는, 픽셀의 깊이 값이 초기값 이외의 값으로 업데이트되었음을 나타내는 업비트(up bit)를 포함하고,
    상기 업비트의 로직 값을 발생시키는 기능을 하는 업비트 제너레이터(60)를 포함함
    을 특징으로 하는 윤곽선 깊이정보 확장장치.
  4. 청구항 3에 있어서,
    상기 클럭 프로바이더는, 현재픽셀의 업비트(utib0)와 시스템 클럭(clk)의 입력을 받아 작동클럭(gclk) 신호를 발생시켜 제공하는 업비트 게이티드 (gated) 클럭 프로바이더(70)
    을 특징으로 하는 윤곽선 깊이정보 확장장치.
KR1020150128153A 2015-09-10 2015-09-10 윤곽선 깊이정보 확장장치 KR101712435B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150128153A KR101712435B1 (ko) 2015-09-10 2015-09-10 윤곽선 깊이정보 확장장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150128153A KR101712435B1 (ko) 2015-09-10 2015-09-10 윤곽선 깊이정보 확장장치

Publications (1)

Publication Number Publication Date
KR101712435B1 true KR101712435B1 (ko) 2017-03-07

Family

ID=58411318

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150128153A KR101712435B1 (ko) 2015-09-10 2015-09-10 윤곽선 깊이정보 확장장치

Country Status (1)

Country Link
KR (1) KR101712435B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013201697A (ja) * 2012-03-26 2013-10-03 Dainippon Printing Co Ltd 奥行き制作支援装置、奥行き制作支援方法、及びプログラム
JP2014215840A (ja) * 2013-04-25 2014-11-17 富士通株式会社 画像処理回路、画像処理装置及び画像処理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013201697A (ja) * 2012-03-26 2013-10-03 Dainippon Printing Co Ltd 奥行き制作支援装置、奥行き制作支援方法、及びプログラム
JP2014215840A (ja) * 2013-04-25 2014-11-17 富士通株式会社 画像処理回路、画像処理装置及び画像処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Dual Aperture Photography: Image and Depth from a Mobile Camera, M. Martinello, et al. Mar 24, 2015

Similar Documents

Publication Publication Date Title
US11455709B2 (en) Methods and systems for image processing
US11157764B2 (en) Semantic image segmentation using gated dense pyramid blocks
US11663691B2 (en) Method and apparatus for restoring image
US10621446B2 (en) Handling perspective magnification in optical flow processing
CN103973999A (zh) 摄像装置及其控制方法
CN110637461A (zh) 计算机视觉系统中的致密光学流处理
US10356343B2 (en) Methods and system for geometric distortion correction for space-based rolling-shutter framing sensors
CN104506775A (zh) 基于立体视觉匹配的图像采集抖动消除方法及装置
US20200137287A1 (en) Method and apparatus for dynamic image capturing based on motion information in image
CN104981838A (zh) 优化图像存储器访问
CN111340835A (zh) 基于fpga的视频图像边缘检测系统
US11132586B2 (en) Rolling shutter rectification in images/videos using convolutional neural networks with applications to SFM/SLAM with rolling shutter images/videos
US11704894B2 (en) Semantic image segmentation using gated dense pyramid blocks
US11734877B2 (en) Method and device for restoring image obtained from array camera
US11347430B2 (en) Operation processing apparatus that executes hierarchical calculation, operation processing method, and non-transitory computer-readable storage medium
CN110651475A (zh) 用于致密光学流的阶层式数据组织
KR101712435B1 (ko) 윤곽선 깊이정보 확장장치
Seo et al. A new parallel hardware architecture for high-performance stereo matching calculation
JP2008206143A (ja) 画像処理機能を備える撮像装置
US11943557B2 (en) Image sensor module, image processing system, and operating method of image sensor module
US20130321690A1 (en) Methods and Apparatus for Refocusing via Video Capture
CN101832755A (zh) 一种检测微悬臂梁焦平面阵列的微梁偏转量的数字处理方法
KR101620928B1 (ko) 우선순위 주소 배분과 이동창 기법을 이용한 얼굴검출 시스템
US20240147065A1 (en) Method and apparatus with autofocus
CN109194870B (zh) 一种导航应用的成像方法及成像系统

Legal Events

Date Code Title Description
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200225

Year of fee payment: 4