a five-camera vision system for uav visual attitude

33
A five-camera vision system for UAV visual attitude calculation and collision warning Akos Zarandy *† , Zoltan Nagy *† , Balint Vanek * , Tamas Zsedrovits * , Andras Kiss †* , Mate Nemeth * email: [email protected] * Institute for Computer Science and Control, 13-17 Kende Street, Budapest, H-1111, Hungary Pazmany Peter Catholic University, 50 Prater Street, ICVS 2013, St. Petersburg, Russia on July 16-18, 2013

Upload: others

Post on 14-May-2022

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A five-camera vision system for UAV visual attitude

A five-camera vision system for UAV

visual attitude calculation and collision

warning

Akos Zarandy*†, Zoltan Nagy*†,

Balint Vanek*, Tamas Zsedrovits*,

Andras Kiss†*, Mate Nemeth*

email: [email protected]

*Institute for Computer Science and Control, 13-17 Kende

Street, Budapest, H-1111, Hungary

†Pazmany Peter Catholic University, 50 Prater Street,

ICVS 2013, St. Petersburg, Russia on July 16-18, 2013

Page 2: A five-camera vision system for UAV visual attitude

Outline

• Goals

• System requirements

• Vision system architecture

• Many core processor array implementation

• Algorithms

Page 3: A five-camera vision system for UAV visual attitude

Goals

• Unmanned Aerial Vehicle (UAV) technology is maturing

– UAVs are ready for autonomous missions technically

– Autonomous missions are not authorized

• Missing redundancy

• Missing collision avoidance device

– Automatic collision avoidance device is needed even for

remotely piloted UAVs

• Remote aircraft detector and ego-motion calculator

sensor development is introduced in this presentation

Page 4: A five-camera vision system for UAV visual attitude

Collision avoidance devices

• Radar based

– Applied on large airliners (Airbus)

• Radar and vision

– Applied on large remotely piloted UAVs (predator)

• Transponder based

– TCAS, ADS-B (all manned aircrafts and larger UAVs)

• Vision only

– Currently developed (small UAVs)

• Basic requirements

– Equivalent safety

– Probabilities of collision < 10-11 per flight hour

– Layered approach

Page 5: A five-camera vision system for UAV visual attitude

Requirements

• Detect a 10m aircraft from 2km

• 0.1 degree/pixel resolution

• min. 220x60⁰ view angle

• Flyable size/weight/power figures

• On-board data storage

intruder

collision

volume separation

minima

collision

avoidance

threshold

traffic avoidance

threshold

our

track

Page 6: A five-camera vision system for UAV visual attitude

Architecture

• High resolution camera

system in the visual range

– Elongated, (220x60⁰)

– Large view angle

– min 2Mpixel

• FPGA processing system

– High computational power

– Low power consumption

• Solid state disk

– Bandwidth

– Capacity

– Vibration

Solid State Drive

FPGA board

Camera system

to/from on-board control

220⁰

Page 7: A five-camera vision system for UAV visual attitude

Camera selection • Single camera with wide angle optics

– Easy from architectural, algorithmic, and processing side

– Low distortion, ultra wide view angle optics are bulky

• 3 pieces of C-mount cameras

– Good image quality

– Relatively large size, volume, and power (1kg, 10W)

– High speed serial I/O (USB, Gige, fire-wire) difficult to connect to

embedded systems

• 5 pieces of miniature cameras (M12 lens)

– Max 1.2 megapixel with global shutter

– 50g, 200mW

– Poorer image quality

• Micro cameras

– Very advantages size/weight/power figures

– Rolling shutter only

Page 8: A five-camera vision system for UAV visual attitude

5 camera vision system

• 5 pieces of wVGA micro cameras – Aptina MBSV034 sensor

– 5g

– <150mW

– 3.8mm megapixel objectives (M-12)

– 70 degrees between two cameras

– Total view angle: 220˚x78˚

• FPGA board with Spartan 6 FPGA

• Solid State Drive (128Gbyte)

8

Solid State Drive

FPGA board

Interface card

to/from on-board control

WVGA panel cameras

Page 9: A five-camera vision system for UAV visual attitude

Mechanics

• Stable camera holder

– Alignment

– Avoids cross vibration

of the cameras

– 100g

– Aluminum alloy

– Electronics in the

middle

– Covered with

aluminum plates

9

Page 10: A five-camera vision system for UAV visual attitude

Hardware system

• Sensing and processing system

– Field of view: 220˚x78˚

– Resolution: ~2250x752

– Frame-rate: 56 FPS

– Processor: Spartan6 L45 FPGA

– Storage: 128Gbyte (23 min)

– Size: 125x145x45mm (5”x6”x1,8”)

– Weight: ~450g (1lb)

– Power consumption: <8W

Page 11: A five-camera vision system for UAV visual attitude

Vision system mounted to the airplane

Page 12: A five-camera vision system for UAV visual attitude

View angle

Panoramic view (stitched images)

Perspective view

Page 13: A five-camera vision system for UAV visual attitude

Many-core processor arrays implemented in

FPGA

• FPGA chips have the largest computational capability

nowadays

• In affordable medium sized FPGAs:

– Over 200 DSP cores

– 200 memory blocks

– 500 IO pins

– Low power consumption

– Special purpose processor arrays

• How to utilize this performance?

– Many-core architectures

– Specially optimized data and control paths

– Distributed control units

Page 14: A five-camera vision system for UAV visual attitude

Image processing system • Input:

– DVI/HDMI

• 1920x1080@50Hz

– Native camera interface

• Three image processing

accelerators

• Parallel operation

• Optimized for the image

processing algorithm

Memory

controllerDRAM

Microblaze

processor

Image capture

Full frame

preprocessing

Gray scale

processor

Binary

processor

Page 15: A five-camera vision system for UAV visual attitude

Full frame image preprocessor

• Adaptive threshold

– 3x3, 5x5, 7x7

neighborhood

– Programmable

threshold level

• Centroid computation

– 32x32 centroid

– Final 128x128 centroid

computed by

Microblaze

DVI Interface

Adaptive

threshold

Centroid

computation

Input Video

1920x1080@50Hz

FIFO

Microblaze FSL

R

FIFOG

FIFOB

FIFOBW

CE

CE

Memory

Interface

Memory

clock domainDVI clock

domain

Page 16: A five-camera vision system for UAV visual attitude

Gray scale processor

• On-chip memories – 128x128 pixel images

– 8 RAMB18

– Separate port for fast Microblaze access

• Separate clock domain

• Specialized Processing Elements (PE)

• Supported operations: – Edge Average, Diffusion,

Threshold, Pixel wise arithmetic operations

– Global white, black, change

• Expected performance: – 150MHz, 27.3us/op,

1460op/frame

Mem_0

128x128

8bit

Mem_1

128x128

8bit

Mem_N

128x128

8bit

PE_0 PE_1 PE_M

Input_1 Buffer Input_2 Buffer

Port A Port A Port A

Port B Port B Port B

A DI DO A DI DO A DI DO

I1_sel I2_sel

O_sel

Microblaze

clock

domain

Image proc.

clock

domain

Page 17: A five-camera vision system for UAV visual attitude

Binary processor

• On-chip memories – 128x128 pixel images

– 1 RAMB18

– Separate port for fast Microblaze access

• Separate clock domain

• One line of Specialized Processing Elements (PE)

• Supported operations: – Erosion, Dilation, Recall,

Pixel wise logic operations

– Global white, black, change

• Expected performance: – 150MHz, 0.85us/op,

46,800op/frame

Mem_0

128x128

1bit

Mem_1

128x128

1bit

Mem_N

128x128

1bit

Input_1 Buffer Input_2 Buffer

Port A Port A Port A

Port B Port B Port B

A DI DO A DI DO A DI DO

I1_sel I2_sel

Microblaze

clock

domain

Image proc.

clock

domain

128bit data

path

PE_0 PE_1 PE_M

O_sel

128x1 processor array

Page 18: A five-camera vision system for UAV visual attitude

Vector processing unit for Kalman filter

• On-chip memories – Scratchpad memory

– Separate port for fast Microblaze access

– 64bit wide 64 element vector registers

• Configurable vector length

• Separate clock domain

• 64bit double precision floating point units

• Supported operations: – Independent multiplication

and addition

– Multiply and add (MADD)

64x64bit

Vect_0

*

+

D

A DI

DO

ReadAddrWriteAddr

64x64bit

Vect_1

A DI

DO

64x64bit

Vect_n

A DI

DO

Scratchpad

memory

DI DO

A DI DO

Microblaze clock

domain

Page 19: A five-camera vision system for UAV visual attitude

Algorithmic components • Aircraft detection against sky background

– Preprocessing on the full frame

• Identifying candidate points

– Post processing

• Discarding non-relevant candidate points

– Tracking

– Multi-level global and local adaptivity

• Aircraft detection against terrain background

– Visual-inertial data fusion

– Motion based moving object detection

Page 20: A five-camera vision system for UAV visual attitude

Preprocessing (full frame)

• Identifies the

candidate aerial

objects

• Finds numerous

false targets also

• Local adaptation

based on edge

density

• Global

adaptation

based on

number of

candidate points

contrast

calculation

locally adaptive

contrast

thresholding

candidate

points

regions of

interest

(ROIs)

threshold

adjustment

Too

many or

too few

points? y

n

Page 21: A five-camera vision system for UAV visual attitude

Preprocessing (full frame)

• Identifies the

candidate aerial

objects

• Finds numerous

false targets also

• Local adaptation

based on edge

density

• Global

adaptation

based on

number of

candidate points

contrast

calculation

locally adaptive

contrast

thresholding

candidate

points

regions of

interest

(ROIs)

threshold

adjustment

Too

many or

too few

points? y

n

Page 22: A five-camera vision system for UAV visual attitude

Preprocessing (full frame)

• Identifies the

candidate aerial

objects

• Finds numerous

false targets also

• Local adaptation

based on edge

density

• Global

adaptation

based on

number of

candidate points

contrast

calculation

locally adaptive

contrast

thresholding

candidate

points

regions of

interest

(ROIs)

threshold

adjustment

Too

many or

too few

points? y

n

Page 23: A five-camera vision system for UAV visual attitude

Post processing (ROIs)

• Discard edges

of clouds

• Significantly

reduces the

number of

candidate

points

• Resulting few

targets can be

tracked

cutting the

perimeter of

each object

histogram

calculation

accept

candidate

point

Variance

high?

reject

candidate

point

y

n

Page 24: A five-camera vision system for UAV visual attitude

Post processing (ROIs)

• Discard edges

of clouds

• Significantly

reduces the

number of

candidate

points

• Resulting few

targets can be

tracked

cutting the

perimeter of

each object

histogram

calculation

accept

candidate

point

Variance

high?

reject

candidate

point

y

n

Page 25: A five-camera vision system for UAV visual attitude

Post processing (ROIs)

• Discard edges

of clouds

• Significantly

reduces the

number of

candidate

points

• Resulting few

targets can be

tracked

cutting the

perimeter of

each object

histogram

calculation

accept

candidate

point

Variance

high?

reject

candidate

point

y

n

Page 26: A five-camera vision system for UAV visual attitude

Post processing (ROIs)

• Discard edges

of clouds

• Significantly

reduces the

number of

candidate

points

• Resulting few

targets can be

tracked

cutting the

perimeter of

each object

histogram

calculation

accept

candidate

point

Variance

high?

reject

candidate

point

y

n

Page 27: A five-camera vision system for UAV visual attitude

Results: distant airplane

Page 28: A five-camera vision system for UAV visual attitude

Results: distant airplane

Page 29: A five-camera vision system for UAV visual attitude

Results: large aircraft

Page 30: A five-camera vision system for UAV visual attitude

Results: large aircraft

Page 31: A five-camera vision system for UAV visual attitude

Navigation aid • UAV was equipped with

INS and cameras

• Attitude was calculated

from the INS data (blue)

• Attitude was calculated

from 5 point (red) and 8

point (magenta) algorithms

• Visual-navigation data

fusion development is

going on

615 620 625 630 635-200

-150

-100

-50

0

50

100

150

200Absolute yaw angles

Time [s]

[

deg]

615 620 625 630 635-100

-80

-60

-40

-20

0

20

40

60

80Absolute roll angles

Time [s]

[

deg]

615 620 625 630 635-30

-20

-10

0

10

20

30

40

50

60Absolute pitch angles

Time [s]

[

deg]

Page 32: A five-camera vision system for UAV visual attitude

Conclusion

• Vision system is under development

• Currently,

– We are replacing the FPGA board

– Finalizing the implementation of the image processing

subsystem

– Fusion of visual and navigation algorithms

– Replacing the wVGA cameras with 1.2 megapixel ones

• Expecting the system completion by the end of the year

Page 33: A five-camera vision system for UAV visual attitude

Thank you for your attention!

FPGA, many-core processing

and UAV group

Ákos Zarándy:

Péter Szolgay

András Radványi

Zoltán Nagy

András Kiss

Pencz Borbála

Németh Máté