![Page 1: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/1.jpg)
Real-time video computing with a FPGA
Rémy Blanchard – Rob'Otter Association
![Page 2: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/2.jpg)
IntroductionRob'Otter is an association which participates
in the French and European robotics cup.
This project, named "Cameramea", is part of Rob'Otter's current robot.
This project was aimed at a general purpose use.
Find the code on Google Code:
http://code.google.com/p/cameramea/
![Page 3: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/3.jpg)
Summary
1. Project Overview
2. FPGA?
3. Image processing basics
4. Design sample
5. Applications
6. Perspectives
![Page 4: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/4.jpg)
Project OverviewAim:
Creating a modular video system matching customer's needs
Hardware
IP on a FPGA
Codesigned with an embedded Linux platform
Uses a generic interface: Wishbone
Using an ARMadeus APF
![Page 5: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/5.jpg)
FPGA?A FPGA is a chip with unconnected logic
elements.
VHDL aims at describing the connection between logic elements.
FPGAs allow parallel computing of information.
![Page 6: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/6.jpg)
Image processing basicsColor spaces
There are many others color spaces but the one to use depends on the targeted application field.
RGB:Correspond to the 3 color components.It's the reference color space.
HSL:Allows extraction of color & light extractionComplex conversion function from RGB
![Page 7: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/7.jpg)
Image processing basicsThreshold
Light image
Y > 170
Extracted areas
![Page 8: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/8.jpg)
Image processing basicsErosion - Dilation
Original
Dilation
Erosion
![Page 9: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/9.jpg)
Design sample
Cam
era
inte
rfac
e
E[.]
E[.]
E[.]
R
G
B
Y
G
B Col
or s
pace
sw
itch
Camera control signals
H Thre
shol
d
Ero
sion
Wishbone interface
i.MX interface (ARMadeus APF9328 specific)FPGA
Oth
ers
trea
tmen
ts
i.MX
![Page 10: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/10.jpg)
Design sample
Original picture After 3px*3px averaging
![Page 11: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/11.jpg)
Design sample
Hue Light
![Page 12: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/12.jpg)
Design sample
Green threshold Red threshold
![Page 13: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/13.jpg)
Design sample
Posterosion Green Posterosion Red
![Page 14: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/14.jpg)
Applications
Computer interactions
Process control
Robotics
![Page 15: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/15.jpg)
PerspectivesDevelopment of new blocks
dilation, opening, pixel difference, ...
Testing the blocks via VHDL testbench and physical implantation
Documentinghow to use, performance, device
...
![Page 16: Real-time video computing with a FPGA - 2009.rmll.info2009.rmll.info/IMG/pdf/RMLL09_cam_FPGA.pdf · Real-time video computing with a FPGA Rémy Blanchard – Rob'Otter Association](https://reader033.vdocument.in/reader033/viewer/2022042215/5ebca8a1adc8bf11a53de93b/html5/thumbnails/16.jpg)
Any questions ??
http://code.google.com/p/cameramea/
Rémy Blanchard – Rob'Otter Association