amr suleiman, zhengdong zhang, luca carlone, sertac...

1
Navion: A Fully Integrated Energy-Efficient Visual-Iner:al Odometry Accelerator for Autonomous Naviga:on of Nano Drones Amr Suleiman, Zhengdong Zhang, Luca Carlone, Sertac Karaman, and Vivienne Sze Demo: Trevor Henderson and Diana Wo@ Session/Paper No. : 13.1 Mo:va:on Virtual and augmented reality on energy-constrained devices Sponsors Want to know more? Visit navion.mit.edu Navion Results Key Challenges Large frame memories for feature tracking and stereo computaFon Large graph memory with irregular memory access Slow linear solver Our Approach Image compression 4.4x smaller frame memory 4.9x less power Sparse feature tracks data structure 5.4x smaller graph memory Sparse linear solver 5.2x smaller linear solver memory 7.2x speed up Technology 65nm CMOS Chip area 4.0 x 5.0 mm 2 Logic gates 2,043 kgates SRAM 854 KB Frame size 480x752 Camera 28 – 171 fps Keyframe 16 – 90 fps Power 27 43.2 mW PlaUorm Xeon [2] ARM [2] FPGA [2] ASIC (This work) Accuracy* 0.20% 0.20% 0.24% 0.28% Camera max fps 21 5 20 171 Keyframe max fps 13 3 5 90 Power (W) 26.10 2.33 1.46 0.024 No GPS Loca:on (Trajectory) 3D Map Use images and inerFal data for state es0ma0on 5.0 mm 4.0 mm Feature Tracking Feature Detection Undistort & Rectify Undistort & Rectify Sparse Stereo Linear Solver IFE Shared Memory Graph Horizon States VFE Control Marginal References [1] C. Forster, L. Carlone, F. Dellaert, D. Scaramuzza. “On-manifold preintegraFon theory for fast and accurate visual-inerFal navigaFon,” IEEE Trans. RoboFcs, 2016 [2] Z. Zhang, A. Suleiman, L. Carlone, V. Sze, S. Karaman, “Visual-InerFal Odometry on Chip: An Algorithm-and-Hardware Co-design Approach,” RSS 2017. Vision Frontend (VFE) Backend (BE) Feature Detec:on (Iden:fy features) Extract Harris corners (up to 200 per frame) Search and distribute across the whole frame Compute for every keyframe Feature Tracking (Es:mate movement of features) Lucas-Kanade pyramidal opFcal flow Supports up to 3 pyramid levels Compute for all frames (measure movement between keyframes) 3D Stereo (Es:mate depth of features – a.k.a. landmarks) Sparse block matching Compute for every keyframe Fuses vision and IMU esFmates to refine the final state esFmates (x’) Memory size 3.5 MB 2.4 MB 1.6 MB 854 kB 1.5x 2.6x 4.1x Image Compression Two-stage Storage Sparse LS Memory Baseline Frame Graph Linear Solver Misc. IMU Frontend (IFE) Autonomous navigaFon of nano drones x’ 1 x’ 2 x’ 3 L k Solve with state-of-the-art factor graph algorithm Minimize inconsistencies between measurements across Fme Update state es0mates (x’) Over 4000+ factors in op0miza0on IMU Factors Vision Factors t=1 t=2 t=3 *Measured on EuRoc MAV dataset VIO: Visual-Iner:al Odometry Gyroscope: EsFmate RotaFon Accelerometer: EsFmate TranslaFon Pre-integra:on: Integrate IMU measurements into one per keyframe [1] Navion Chip Architecture Backend Control Data & Control Bus Build Graph Linear Solver Linearize Marginal Retract Graph Linear Solver Horizon States Shared Memory Floating Point Arithmetic Matrix Operations Cholesky Back Substitute Rodrigues Operations Feature Tracking (FT) Previous Frame Line Buffers Feature Detection (FD) Undistort & Rectify (UR) Undistort & Rectify (UR) Data & Control Bus Sparse Stereo (SS) Vision Frontend Control RANSAC Fixed Point Arithmetic Point Cloud Pre-Integration Floating Point Arithmetic IMU memory Current Frame Left Frame Right Frame Vision Frontend (VFE) IMU Frontend (IFE) Backend (BE) Register File Fully Integrated System (no off-chip processing or storage) VIO is a special instance of Simultaneous Localiza6on and Mapping (SLAM)

Upload: others

Post on 25-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Amr Suleiman, Zhengdong Zhang, Luca Carlone, Sertac ...web.mit.edu/sze/www/navion/2018_vlsi_navion_poster.pdfAmr Suleiman, Zhengdong Zhang, Luca Carlone, Sertac Karaman, and Vivienne

Navion:AFullyIntegratedEnergy-EfficientVisual-Iner:alOdometryAcceleratorforAutonomousNaviga:onofNanoDronesAmrSuleiman,ZhengdongZhang,LucaCarlone,SertacKaraman,andVivienneSze

Demo:TrevorHendersonandDianaWo@

Session/Paper No. : 13.1

Mo:va:on

Virtualandaugmentedrealityonenergy-constraineddevices

SponsorsWanttoknowmore?Visitnavion.mit.edu

NavionResults

KeyChallenges•  Large frame memories for feature

trackingandstereocomputaFon•  Large graph memory with irregular

memoryaccess•  Slowlinearsolver

OurApproach•  Imagecompression

•  4.4xsmallerframememory•  4.9xlesspower

•  Sparsefeaturetracksdatastructure•  5.4xsmallergraphmemory

•  Sparselinearsolver•  5.2xsmallerlinearsolvermemory•  7.2xspeedup

Technology 65nmCMOSChiparea 4.0x5.0mm2

Logicgates 2,043kgatesSRAM 854KBFramesize 480x752Camera 28–171fpsKeyframe 16–90fpsPower 27– 43.2mW

PlaUorm Xeon[2]

ARM[2]

FPGA[2]

ASIC(Thiswork)

Accuracy* 0.20% 0.20% 0.24% 0.28%Cameramaxfps 21 5 20 171Keyframemaxfps 13 3 5 90Power(W) 26.10 2.33 1.46 0.024

NoGPS

Loca:on(Trajectory)

3DMap

UseimagesandinerFaldataforstatees0ma0on

5.0 mm

4.0

mm

Feature Tracking

Feature Detection

Undistort& Rectify

Undistort& Rectify

Sparse StereoLinear Solver

IFE

SharedMemory

Graph

Horizon States

VFE Control

Marginal

References[1]C.Forster,L.Carlone,F.Dellaert,D.Scaramuzza.“On-manifoldpreintegraFontheoryforfastandaccuratevisual-inerFalnavigaFon,”IEEETrans.RoboFcs,2016[2]Z.Zhang,A.Suleiman,L.Carlone,V.Sze,S.Karaman,“Visual-InerFalOdometryonChip:AnAlgorithm-and-HardwareCo-designApproach,”RSS2017.

VisionFrontend(VFE) Backend(BE)FeatureDetec:on(Iden:fyfeatures)•  ExtractHarriscorners(upto200perframe)•  Searchanddistributeacrossthewholeframe•  Computeforeverykeyframe

FeatureTracking(Es:matemovementoffeatures)•  Lucas-KanadepyramidalopFcalflow•  Supportsupto3pyramidlevels•  Computeforallframes(measuremovement

betweenkeyframes)

3DStereo(Es:matedepthoffeatures–a.k.a.landmarks)•  Sparseblockmatching•  Computeforeverykeyframe

FusesvisionandIMUesFmatestorefinethefinalstateesFmates(x’)

Mem

ory

size

3.5 MB 2.4 MB 1.6 MB 854 kB

1.5x 2.6x 4.1x

Image Compression

Two-stage Storage

Sparse LS Memory

Baseline

Frame Graph Linear Solver

Misc.

IMUFrontend(IFE)

AutonomousnavigaFonofnanodrones

x’1

x’2

x’3

Lk

Solvewithstate-of-the-artfactorgraphalgorithm

MinimizeinconsistenciesbetweenmeasurementsacrossFme

Updatestatees0mates(x’)

Over4000+factorsinop0miza0on

IMUFactors VisionFactorst=1

t=2 t=3

*MeasuredonEuRocMAVdataset

VIO:Visual-Iner:alOdometry

Gyroscope: EsFmateRotaFonAccelerometer: EsFmateTranslaFon

Pre-integra:on: IntegrateIMUmeasurementsintooneperkeyframe[1]

NavionChipArchitectureBackend Control

Data & Control BusBuild Graph

Linear Solver

Linearize

Marginal

Retract

GraphLinear Solver

Horizon StatesShared

Memory

Floating Point

Arithmetic

Matrix Operations

Cholesky

Back Substitute

Rodrigues Operations

Feature Tracking

(FT)

Previous FrameLine Buffers

Feature Detection

(FD)

Undistort & Rectify

(UR)

Undistort & Rectify

(UR)

Data & Control Bus

Sparse Stereo (SS)

Vision Frontend Control

RANSAC Fixed Point Arithmetic Point Cloud Pre-IntegrationFloating Point

ArithmeticIMU

memory

Current Frame

Left Frame

Right Frame

Vision Frontend (VFE)

IMU Frontend (IFE)

Backend (BE)

Register File

FullyIntegratedSystem

(nooff-chipprocessingorstorage)

VIOisaspecialinstanceofSimultaneousLocaliza6onandMapping(SLAM)