배너
닫기

테크노트

배너

reVISION : 센서 융합 임베디드 비전 애플리케이션 개발 촉진

  • 등록 2017.09.11 15:55:14
URL복사

우리는 급속하게 센서가 확장되고 있는 세상을 경험하고 있다. 실제로 센서는 우리 모두가 매일 가지고 다니는 휴대전화를 비롯해 여러 다양한 유형들이 이미 널리 보편화됐다. 압력, 온도, 가속도, 중력과 같은 단순한 변화를 감지할 수 있는 센서뿐만 아니라 GPS, RADAR, LIDAR, 이미지 센서와 같은 최첨단 센서들도 제공되고 있다.


센서 융합은 하나의 센서 만으로는 제공할 수 없는 정보를 생성하기 위해 여러 다른 센서로부터 데이터를 추출한다. 그런 다음 이 정보는 최종 애플리케이션에 따라 추가 프로세싱과 분석을 거쳐 필요한 결정을 내리는데 사용할 수 있다. 센서 융합은 다음과 같이 두 가지로 분류할 수 있다.



임베디드 비전 시스템 및 센서 융합 애플리케이션의 경우에는 대부분 실시간 센서 융합 분류에 해당한다.


임베디드 비전 애플리케이션


임베디드 비전 애플리케이션은 로보틱스 및 ADAS(Advanced Driver Assistance Systems)를 비롯해 증강현실(Augmented Reality)에 이르기까지 다양한 애플리케이션 분야에서 빠르게 성장하고 있다. 이러한 임베디드 비전 애플리케이션은 최종 애플리케이션의 성공적인 운영을 좌우하는 중요한 역할을 하고 있다. 임베디드 비전 시스템이 제공하는 정보와 여러 센서 또는 다중 센서의 정보를 융합하면, 환경에 대한 판단능력을 향상시키고, 선택한 애플리케이션의 성능을 증가시킬 수 있다.


▲ 그림 1. ADAS 이종 센서 융합 사례


많은 임베디드 비전 애플리케이션은 단일 방향의 모니터링(예를 들어, 자동차 정면에서 앞쪽 시야만 관찰)을 위해 하나의 이미지 센서만을 사용한다. 이처럼 이미지 센서를 사용하게 되면, 객체를 감지하고, 분류, 추적할 수 있다. 하지만 단일 센서를 사용하게 되면, 이미지 내에 있는 객체와의 거리를 측정할 수 없다. 즉, 다른 차량이나 보행자를 시각적으로 감지하고 추적할 수는 있지만, 다른 센서가 없으면 충돌 위험 여부를 판단할 수 없게 된다. 이 사례에서는 탐지된 객체까지의 거리를 판단할 수 있는 RADAR나 LIDAR와 같은 다른 센서가 필요하다. 이러한 접근방식은 여러 다른 유형의 센서의 정보를 융합하는 것이기 때문에 이종 센서 융합이라고 한다.


다른 접근방식은 입체적인 시각정보를 확보할 수 있도록 제 2의 이미지 센서를 제공하는 것이다. 이 방식은 별도의 두 개의 이미지 센서를 좁은 간격(사람의 눈과 유사하게)으로 배치하여 동일한 방향을 향하도록 함으로써 시차를 이용하여 객체의 심도를 현장에서 결정할 수 있도록 하는 것이다. 동일한 유형의 다중 이미지 센서를 사용하는 경우를 동종 센서 융합이라고 한다.


물론 해당 애플리케이션에 따라 아키텍처의 구동 요구사항과 센서 유형이 결정될 것이다. 또한 여기에는 거리감각이 필요한 범위와 측정 정확도, 주변 조명, 날씨에 따른 동작 조건 및 구현 비용, 구현 복잡성 등도 고려되어야 한다.


그러나 임베디드 비전 애플리케이션이 사용되는 분야는 객체 감지나 방지 분야만이 아니다. 교통신호 정보를 위해 임베디드 비전 시스템을 사용하는 내비게이션 시스템을 구현할 수도 있다. 또한 X-레이나 MRI, CT와 같은 의료기기 애플리케이션을 위해 여러 다른 이미지들을 융합하거나 보안 및 감시 애플리케이션을 위해 가시광 및 IR(Infra-Red) 이미지를 사용하는 다른 애플리케이션들도 있다.


우리는 종종 가시적인 전자기 스펙트럼을 이용하는 애플리케이션에서 임베디드 비전을 고려하고 있지만, 가시적인 전자기 스펙트럼 이외의 데이터를 융합하는 많은 임베디드 비전 애플리케이션이 있다는 것도 상기해야 한다.


디바이스 선택


임베디드 비전 시스템은 일반적으로 올 프로그래머블(All Programmable) 징크-7000(Zynq®-7000)이나 징크 울트라스케일+(UltraScale+™) MPSoC 디바이스를 이용해 이미지 프로세싱 파이프라인을 구현한다. 이러한 제품들이 기존 임베디드 비전 애플리케이션에서 유의미했었다면, 임베디드 비전 융합 애플리케이션에서도 우수성을 확인할 수 있다. 프로세스 시스템과 프로그래머블 로직을 긴밀하게 결합함으로써 병목현상을 제거하고, 기존 CPU/GPU 기반 구현방식에서 발생하는 지연시간을 줄이고, 결정론을 간소화할 수 있다. 또한 프로그래머블 로직 IO 구조의 유연한 특성은 이미지 센서 및 RADAR, LIDAR 등과 같은 고대역폭 인터페이스와의 모든 연결을 가능하게 해준다.


임베디드 비전 센서 융합 애플리케이션을 검토하면서, 우리는 프로세서 시스템을 활용하여 더 낮은 대역폭의 여러 센서들에 대한 인터페이스를 제공할 수 있었다. 예를 들어, 가속도계, 자력계, 자이로스코프는 물론, GPS센서까지도 올 프로그래머블 징크 SoC 및 징크 울트라스케일+ MPSoC 디바이스에서 모두 지원되는 SPI(Serial Peripheral Interface) 및 I2C(Inter Integrated Circuit) 인터페이스를 이용할 수 있었다. 이를 통해 소프트웨어는 다양한 센서 유형의 호스트에서 필요한 정보를 쉽고 빠르게 얻을 수 있었으며, 확장 가능한 아키텍처를 제공할 수 있었다. 한편 OpenXV, OpenCV, Caffe와 같은 산업 표준 프레임워크를 이용한 센서 융합 애플리케이션을 개발하는 방법도 필요한데, 이를 위한 솔루션이 바로 reVISION™ 스택이다.


▲ 그림 2. 전통적인 CPU/GPU 접근방식과 올 프로그래머블 징크-7000/징크 울트라스케일+ MPSoC와의 비교


reVISION 스택


reVISION 스택을 통해 개발자는 컴퓨터 비전 및 머신 러닝 기법을 구현할 수 있다. 이는 징크-7000 및 징크 울트라스케일+ MPSoC를 기반으로 하는 경우, 동일한 하이-레벨 프레임워크 및 라이브러리를 이용할 수 있다. 이를 지원하기 위해 reVISION은 플랫폼, 애플리케이션, 알고리즘 개발을 가능하게 하는 다양한 리소스를 통합하고 있다. 이 스택은 다음과 같은 3가지 레벨로 조정되어 있다.


① 플랫폼 개발 – 이는 스택의 최하위 레벨로, 스택의 나머지 모든 레이어들을 구현한다. 이 레이어는 SDSoC™ 툴을 위한 플랫폼을 정의한다. 


② 알고리즘 개발 – 이 스택의 미들 레이어로, 필요한 알고리즘 구현을 지원한다. 또한 이 레이어는 이미지 프로세싱 및 머신 러닝 추론 엔진을 프로그래머블 로직을 통해 가속화할 수 있도록 지원한다.


③ 애플리케이션 개발 – 이 스택의 최상위 레벨로, 산업 표준 프레임워크를 지원한다. 이를 통해 플랫폼 및 알고리즘 개발 레이어를 활용하는 애플리케이션을 개발할 수 있다.


이 스택의 알고리즘 및 애플리케이션 레벨은 전통적인 이미지 프로세싱 플로우와 머신 러닝 플로우를 모두 지원할 수 있도록 설계되었다. 알고리즘 레이어에서는 OpenCV 라이브러리를 사용하여 이미지 프로세싱 알고리즘 개발할 수 있는 기능이 지원된다. 또한 상당 수의 OpenCV 기능(OpenCV 코어 서브셋 포함)을 프로그래머블 로직을 통해 가속화할 수 있는 기능이 포함되어 있다. 머신 러닝을 지원하는 알고리즘 개발 레이어는 머신 러닝 추론 엔진을 구현하기 위해 프로그래머블 로직 내에 배치할 수 있는 사전 정의된 여러 하드웨어 기능을 제공한다. 이러한 이미지 프로세싱 알고리즘 및 머신 러닝 추론 엔진은 최종 애플리케이션을 구현하기 위해 애플리케이션 레이어에서 액세스 및 사용이 가능하며, OpenVX 및 Caffe와 같은 하이-레벨 프레임워크를 지원한다.


reVISION 스택이 제공하는 기능에는 센서 융합 애플리케이션에서 요구되는 알고리즘을 구현하는데 필요한 모든 요소들이 포함되어 있다.


▲ 그림 3. reVISION 스택


아키텍처 예제


앞에서 설명한 객체 감지 및 거리측정 알고리즘을 개발하기 위해 reVISION 스택을 이용해 동종 및 이종 접근방식을 시연해 볼 수 있다. 이는 센서 융합 알고리즘을 하이-레벨에서 구현할 수 있도록 해준다. 그런 다음 알고리즘 성능 병목현상을 식별하여 프로그래머블 로직을 통해 가속화할 수 있다.


reVISION 스택을 활용하려면, 먼저 이미지 및 기타 센서 데이터를 프로세서 시스템의 메모리 공간에 전송할 수 있는 인터페이스 및 기본 프로그래머블 로직 디자인을 제공하는 플랫폼을 정의해야 한다.


동종 객체 감지 시스템을 구현하기 위해서는 동일한 센서 유형을 사용해야 한다.(이 경우 CMOS 이미지 센서) 이는 하나의 이미지 프로세싱 체인만 개발할 수 있는 장점이 있다. 또한 두 이미지 센서를 모두 프로그래머블 로직 패브릭 내에서 두 번 인스턴스화할 수 있다.


입체적 시각 시스템의 구동 기준 중 하나인 동종 아키텍처는 두 이미지 센서를 모두 동기화해야 한다. 두 개의 이미지 프로세싱 체인을 프로그래머블 로직 패브릭에 병렬로 구현하고, 적절한 제약조건의 동일한 클럭을 사용하면, 이러한 까다로운 요건을 달성하는데 도움이 된다.


시차 계산을 위해서는 집약적인 프로세싱이 필요하지만, 동일한 이미지 프로세싱 체인을 두 번 구현할 수 있기 때문에 개발 비용을 크게 절감할 수 있다.


위에서 제시한 동종 접근방식의 아키텍처는 주로 이용 가능한 IP 블록을 기반으로 한 두 개의 이미지 프로세싱 체인을 보여준다. 이미지 데이터는 맞춤형 센서 인터페이스 IP 모듈을 이용해 캡처되며, 병렬 포맷에서 스트리밍 AXI로 변환된다. 이를 통해 쉽게 확장 가능한 이미지 프로세싱 체인을 구현할 수 있으며, 비디오 DMA와 결합된 고성능 AXI 인터커넥트를 이용해 이미지 프로세싱 체인에서 프로세서 시스템 DDR로 결과를 전송할 수 있다.


서로 다른 유형의 센서를 사용하는 이종 시스템의 사례를 고려하는 경우, 위에서 설명한 이미지 센서 객체 감지 아키텍처를 RADAR 거리 감지 아키텍처와 결합할 수 있다. RADAR 구현의 경우, 펄스 방식(도플러) 또는 연속파형의 두 가지 옵션이 있다. 이는 최종 애플리케이션의 요구사항에 따라 결정되겠지만, 모두 유사한 접근방식을 구현할 수 있다.


RADAR 접근방식의 아키텍처는 신호 생성 및 신호 수신, 두 가지로 나눌 수 있다. 신호 생성은 연속파 신호 또는 전송할 펄스를 생성한다. 두 가지 방법 모두 고속 DAC(Digital to Analog Converter)와 인터페이스할 수 있는 신호 생성 IP 모듈이 필요하다.


신호 수신 또한 수신되는 연속파나 펄스 신호를 캡처하기 위해 고속 ADC를 사용해야 한다. 신호 처리에 있어서는 두 접근방식 모두 프로그래머블 로직 패브릭으로 구현된 FFT 기반 분석 방식을 이용하며, DMA를 이용하여 결과 데이터 세트를 PS DDR로 전송할 수 있다. 


어떠한 구현 아키텍처를 선택하든, 프로세서 시스템과 reVISION 플랫폼에서 센서 데이터에 액세스할 수 있게 되면, 알고리즘과 애플리케이션 레벨에서 보다 상위 레벨의 reVISION 스택을 사용하여 센서 융합 시스템을 개발할 수 있다.


이러한 상위 레벨에서는 하이-레벨 언어와 산업 표준 프레임워크를 이용해 애플리케이션을 개발할 수 있다. reVISION은 임베디드 비전 및 머신 러닝 애플리케이션을 위한 가속화 라이브러리 및 사전 정의된 매크로를 제공하기 때문에 애플리케이션을 가속화할 수 있다. 이는 HLS(High Level Synthesis)와 커넥티비티 프레임워크를 결합한 시스템 최적화 컴파일러 덕분에 플랫폼 디자인 내에서 사용하지 않은 리소스를 활용할 수 있다.


2개의 이미지 센서를 사용하는 이종 사례의 경우, 표준 개발 접근방법은 심도 정보를 결정하기 위해 스테레오 불일치(Stereo Disparity) 맵을 만들어야 한다. 일반적으로 이는 OpenCV 기능 스테레오 블록 매칭(Stereo Block Matching)을 이용해 구현된다. reVISION은 프로그래머블 로직으로 가속할 수 있는 가속 가능한 스테레오 블록 매칭 기능을 제공한다. 이 기능은 두 이미지를 결합하여 이종 사례에서 핵심적인 불일치 및 심도 정보를 생성할 수 있다.


센서 융합은 이미 실현되고 있으며, 임베디드 비전 시스템의 급속한 성장과 센서의 빠른 확산을 촉진시키고 있다. reVISION은 업계 표준 프레임워크를 사용하여 하이-레벨에서 애플리케이션을 개발할 수 있는 기능들을 제공하며, 기본 플랫폼을 개발하고 나면 센서 융합 시스템을 보다 신속하게 개발할 수 있도록 해준다. 


▲ 그림 4. 올 프로그래머블 FPGA 기반의 동종 센서 융합


▲ 그림 5. 이종 센서 융합


▲ 그림 6. reVISION의 가속 StereoLBM 기능


닉 니(Nick Ni)·아담 테일러(Adam Taylor)

자일링스(XILINX)



















주요파트너/추천기업