SlideShare a Scribd company logo
1 of 28
1
TOPIC
Bruno Capuano
Innovation Lead @Avanade
@elbruno | http://elbruno.com
Let's hack a drone,
hack the
camera and use AI!
@elbruno
elbruno
Bruno Capuano
Bruno Capuano
3
Optional knowledge
Python understanding
Cognitive Services
Face Recognition concepts
Docker and Containers Concepts
No TCP / UDP
4
DJI Tello
https://www.amazon.com/Tello-CP-PT-00000252-01-Quadcopter-Drone/dp/B07BDHJJTH
Intel Processor,
Professional processing
yields high-quality
footage.
Flight Time: 13 minutes Image Transmission
Distance: 100 meters
HD Transmission: 720p
Smart Switching: 2
Antennas
Auto Takeoff/Landing
DJI Tello
Lift off or land with a
single tap.
Low Battery Protection Alerts go off when
your battery gets low.
Fail-safe Protection
Land safely, even if you
lose connection.
Vision Positioning
System
Smart technology that
facilitates precise
hovering.
DJI Tello - Drone Programming
Mobile Scratch Programming
Move-Based Control
Programming Simulator
SDK
DIY Accessories
https://www.ryzerobotics.com/tello
DJI Tello - Tello SDK 2.0 User Guide.pdf
https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf
DJI Tello - Tello SDK 2.0 User Guide.pdf
https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf
9
Connect to Drone and Share
Network
Cable
Wireless
Connection
Lynsys Velop Node Gaming / Work PC DJI Tello Drone
10
Let’s connect
MakeMagicHappen();
https://www.avanade.com/AI
DJI Tello - Tello SDK 2.0 User Guide.pdf
https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf
SDK Description
2 main actions
Send Commands
Read Commands
Flow
1st Command >> “command”
2nd Command >> “battery?”
13
Demo: Hello World !!!
or get the battery charge %
MakeMagicHappen();
https://www.avanade.com/AI
Drone Camera Feed
Stream available via UDP
udp://192.168.10.1:11111
Didn’t work with VLC 
Cool tool: FFmpeg
.ffplay.exe -i
udp://192.168.10.1:11111
https://elbruno.com/2020/02/17/coding4fun-how-to-control-your-drone-with-20-lines-of-code-7-n/
15
Demo: Camera OpenCV
MakeMagicHappen();
https://www.avanade.com/AI
State-of-the-art face detection demo
(Courtesy Boris Babenko)
17
Face Detection / Recognition
FACE
DETECTION
DETECT FACIAL
FEATURES
FACE
RECOGNITION
OBJECT
RECOGNITION
18
Face Detection / Recognition
FACE
DETECTION
DETECT FACIAL
FEATURES
FACE
RECOGNITION
OBJECT
RECOGNITION
19
Viola/Jones (2001) Object Detection Framework
The algorithm has four stages:
• Haar Feature Selection
• Creating an Integral Image
• Adaboost Training
• Cascading Classifiers
Haar Features
- The eye region is darker than the upper-
cheeks.
- The nose bridge region is brighter than the
eyes
Supported by OpenCV !
https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework
20
Viola/Jones (2001) Object Detection Framework
https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework
21
Demo: Face Detection using
HaarCascades and OpenCV
MakeMagicHappen();
https://www.avanade.com/AI
22
Prepare Your Data Build & Train Run
Build your own custom machine learning models
23
24
Demo: Object Recognition using
Custom Vision Models
MakeMagicHappen();
https://www.avanade.com/AI
25
Introduction to the
drone. Features and
how-to of the SDK
Drone SDK
Analyze the drone camera
feed using a custom object
recognition model created
with http://customvision.ai
CustomVision.AI
with Containers
How to use OpenCV
to access the Drone
Camera feed via UDP
feed.
Drone Camera
Use Haar Cascades
files to perform face
detection using
OpenCV from the
drone camera feed.
Face Detection
with OpenCV
Quick Recap
26
Resources
DJI Tello Drone,
https://www.amazon.com/Tello-CP-PT-00000252-01-Quadcopter-Drone/dp/B07BDHJJTH
Ryze Tello SDK, https://www.ryzerobotics.com/tello
My Blog – 20 lines to control your drone,
https://elbruno.com/2020/02/17/coding4fun-how-to-control-your-drone-with-20-lines-of-code-7-n/
Viola Jones, Object Detection Framework,
https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework
Cognitive Services Custom Vision, https://customvision.ai
Damian Tello, Python DJI SDK, https://github.com/damiafuentes/DJITelloPy
Resources
EASY WAY TO INSTALL OPENCV
AND TENSORFLOW WITH
ANACONDA
HTTPS://ELBRUNO.COM/2020/
05/12/PYTHON-EASY-WAY-TO-
INSTALL-OPENCV-AND-
TENSORFLOW-WITH-
ANACONDA/
PIXELLIB IS A LIBRARY FOR
PERFORMING SEGMENTATION
OF IMAGES
HTTPS://GITHUB.COM/AYOOLA
OLAFENWA/PIXELLIB
WINDOWS TERMINAL AND
ANACONDA. AND HOW TO
START AN ANACONDA VIRTUAL
ENVIRONMENT
HTTPS://ELBRUNO.COM/2020/
05/13/WINDOWS10-
WINDOWSTERMINAL-AND-
ANACONDA-BONUS-START-AN-
ANACONDA-VIRTUAL-
ENVIRONMENT/
FLIP WHEN A FACE IS
DETECTED
HTTPS://ELBRUNO.COM/2020/
03/18/CODING4FUN-HOW-TO-
CONTROL-YOUR-DRONE-WITH-
20-LINES-OF-CODE-12-N/
INSTANCE SEGMENTATION
HTTPS://ELBRUNO.COM/2020/
05/21/CODING4FUN-HOW-TO-
CONTROL-YOUR-DRONE-WITH-
20-LINES-OF-CODE-20-N/
@cloudgen_verona
#CodeGen2021

More Related Content

Similar to 2021 02 13 CodeGen Verona - Let’s code a drone to follow faces syncing everything with Azure IoT

Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudAlvaro Viebrantz
 
IoThings you don't even need to hack
IoThings you don't even need to hackIoThings you don't even need to hack
IoThings you don't even need to hackSlawomir Jasek
 
Presentation 400
Presentation 400Presentation 400
Presentation 400ASMArman1
 
পদার্থ বিজ্ঞান ২য় পত্র- ভৌতজগতের প্রকৃ্তি
পদার্থ বিজ্ঞান ২য় পত্র-  ভৌতজগতের প্রকৃ্তিপদার্থ বিজ্ঞান ২য় পত্র-  ভৌতজগতের প্রকৃ্তি
পদার্থ বিজ্ঞান ২য় পত্র- ভৌতজগতের প্রকৃ্তিASMArman1
 
AIDC Summit LA: LA Drones Solution Overview
AIDC Summit LA: LA Drones Solution OverviewAIDC Summit LA: LA Drones Solution Overview
AIDC Summit LA: LA Drones Solution OverviewIntel® Software
 
Flying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer VisionFlying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer VisionIvo Andreev
 
The (Io)Things you don't even need to hack. Should we worry?
The (Io)Things you don't even need to hack. Should we worry?The (Io)Things you don't even need to hack. Should we worry?
The (Io)Things you don't even need to hack. Should we worry?SecuRing
 
Better With Friends: Android+NFC+Arduino
Better With Friends: Android+NFC+ArduinoBetter With Friends: Android+NFC+Arduino
Better With Friends: Android+NFC+ArduinoPearl Chen
 
From printed circuit boards to exploits
From printed circuit boards to exploitsFrom printed circuit boards to exploits
From printed circuit boards to exploitsvirtualabs
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment pptsagaroceanic11
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment pptsagaroceanic11
 
Digital Fabrication Studio: 3D Scanning
Digital Fabrication Studio: 3D ScanningDigital Fabrication Studio: 3D Scanning
Digital Fabrication Studio: 3D ScanningMassimo Menichinelli
 
Philipp Nagele (Wikitude) Wikitude SDK Tutorial
Philipp Nagele (Wikitude) Wikitude SDK Tutorial Philipp Nagele (Wikitude) Wikitude SDK Tutorial
Philipp Nagele (Wikitude) Wikitude SDK Tutorial AugmentedWorldExpo
 
Visual Studio Tools for Apache Cordova (TACO) and Ionic
Visual Studio Tools for Apache Cordova (TACO) and IonicVisual Studio Tools for Apache Cordova (TACO) and Ionic
Visual Studio Tools for Apache Cordova (TACO) and IonicJustin James
 
MOBILE REMOTE SURVEILLANCE TOWER
MOBILE REMOTE SURVEILLANCE TOWERMOBILE REMOTE SURVEILLANCE TOWER
MOBILE REMOTE SURVEILLANCE TOWERIRJET Journal
 
Using Deep Learning for Computer Vision Applications
Using Deep Learning for Computer Vision ApplicationsUsing Deep Learning for Computer Vision Applications
Using Deep Learning for Computer Vision ApplicationsFarshid Pirahansiah
 

Similar to 2021 02 13 CodeGen Verona - Let’s code a drone to follow faces syncing everything with Azure IoT (20)

Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google Cloud
 
IoThings you don't even need to hack
IoThings you don't even need to hackIoThings you don't even need to hack
IoThings you don't even need to hack
 
Presentation 400
Presentation 400Presentation 400
Presentation 400
 
পদার্থ বিজ্ঞান ২য় পত্র- ভৌতজগতের প্রকৃ্তি
পদার্থ বিজ্ঞান ২য় পত্র-  ভৌতজগতের প্রকৃ্তিপদার্থ বিজ্ঞান ২য় পত্র-  ভৌতজগতের প্রকৃ্তি
পদার্থ বিজ্ঞান ২য় পত্র- ভৌতজগতের প্রকৃ্তি
 
rescue-eye.pptx
rescue-eye.pptxrescue-eye.pptx
rescue-eye.pptx
 
AIDC Summit LA: LA Drones Solution Overview
AIDC Summit LA: LA Drones Solution OverviewAIDC Summit LA: LA Drones Solution Overview
AIDC Summit LA: LA Drones Solution Overview
 
Flying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer VisionFlying a Drone with JavaScript and Computer Vision
Flying a Drone with JavaScript and Computer Vision
 
The (Io)Things you don't even need to hack. Should we worry?
The (Io)Things you don't even need to hack. Should we worry?The (Io)Things you don't even need to hack. Should we worry?
The (Io)Things you don't even need to hack. Should we worry?
 
Drone ppt
Drone pptDrone ppt
Drone ppt
 
Better With Friends: Android+NFC+Arduino
Better With Friends: Android+NFC+ArduinoBetter With Friends: Android+NFC+Arduino
Better With Friends: Android+NFC+Arduino
 
From printed circuit boards to exploits
From printed circuit boards to exploitsFrom printed circuit boards to exploits
From printed circuit boards to exploits
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment ppt
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment ppt
 
Digital Fabrication Studio: 3D Scanning
Digital Fabrication Studio: 3D ScanningDigital Fabrication Studio: 3D Scanning
Digital Fabrication Studio: 3D Scanning
 
Philipp Nagele (Wikitude) Wikitude SDK Tutorial
Philipp Nagele (Wikitude) Wikitude SDK Tutorial Philipp Nagele (Wikitude) Wikitude SDK Tutorial
Philipp Nagele (Wikitude) Wikitude SDK Tutorial
 
Visual Studio Tools for Apache Cordova (TACO) and Ionic
Visual Studio Tools for Apache Cordova (TACO) and IonicVisual Studio Tools for Apache Cordova (TACO) and Ionic
Visual Studio Tools for Apache Cordova (TACO) and Ionic
 
Kinect
KinectKinect
Kinect
 
Kinect
KinectKinect
Kinect
 
MOBILE REMOTE SURVEILLANCE TOWER
MOBILE REMOTE SURVEILLANCE TOWERMOBILE REMOTE SURVEILLANCE TOWER
MOBILE REMOTE SURVEILLANCE TOWER
 
Using Deep Learning for Computer Vision Applications
Using Deep Learning for Computer Vision ApplicationsUsing Deep Learning for Computer Vision Applications
Using Deep Learning for Computer Vision Applications
 

More from Bruno Capuano

Using Azure IoT to feed my squirrels ️
Using Azure IoT to feed my squirrels ️Using Azure IoT to feed my squirrels ️
Using Azure IoT to feed my squirrels ️Bruno Capuano
 
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...Bruno Capuano
 
2021 06 19 ms student ambassadors nigeria ml net 01 slide-share
2021 06 19 ms student ambassadors nigeria ml net 01   slide-share2021 06 19 ms student ambassadors nigeria ml net 01   slide-share
2021 06 19 ms student ambassadors nigeria ml net 01 slide-shareBruno Capuano
 
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...Bruno Capuano
 
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoMLBruno Capuano
 
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...Bruno Capuano
 
2020 10 22 AI Fundamentals - Azure Machine Learning
2020 10 22 AI Fundamentals - Azure Machine Learning2020 10 22 AI Fundamentals - Azure Machine Learning
2020 10 22 AI Fundamentals - Azure Machine LearningBruno Capuano
 
2020 09 24 - CONDG ML.Net
2020 09 24 - CONDG ML.Net2020 09 24 - CONDG ML.Net
2020 09 24 - CONDG ML.NetBruno Capuano
 
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...Bruno Capuano
 
2020 06 27 Global AI On Tour Virtual GTA
2020 06 27 Global AI On Tour Virtual GTA2020 06 27 Global AI On Tour Virtual GTA
2020 06 27 Global AI On Tour Virtual GTABruno Capuano
 
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...Bruno Capuano
 
2020 04 10 Catch IT - Getting started with ML.Net
2020 04 10 Catch IT - Getting started with ML.Net2020 04 10 Catch IT - Getting started with ML.Net
2020 04 10 Catch IT - Getting started with ML.NetBruno Capuano
 
2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.Net2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.NetBruno Capuano
 
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
2020 02 29 TechDay Conf - Getting started with Machine Learning.NetBruno Capuano
 
2020 01 21 Data Platform Geeks - Machine Learning.Net
2020 01 21 Data Platform Geeks - Machine Learning.Net2020 01 21 Data Platform Geeks - Machine Learning.Net
2020 01 21 Data Platform Geeks - Machine Learning.NetBruno Capuano
 
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto MLBruno Capuano
 
2019 12 14 Global AI Bootcamp - Auto ML with Machine Learning.Net
2019 12 14 Global AI Bootcamp   - Auto ML with Machine Learning.Net2019 12 14 Global AI Bootcamp   - Auto ML with Machine Learning.Net
2019 12 14 Global AI Bootcamp - Auto ML with Machine Learning.NetBruno Capuano
 
2019 11 26 BotTO November 2019 Meetup at TD
2019 11 26 BotTO November 2019 Meetup at TD2019 11 26 BotTO November 2019 Meetup at TD
2019 11 26 BotTO November 2019 Meetup at TDBruno Capuano
 
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
2019 10 27 Everyday Artificial Intelligence @ Hack4HeritageBruno Capuano
 
2019 09 05 Global AI Night Toronto - Machine Learning.Net
2019 09 05 Global AI Night Toronto - Machine Learning.Net2019 09 05 Global AI Night Toronto - Machine Learning.Net
2019 09 05 Global AI Night Toronto - Machine Learning.NetBruno Capuano
 

More from Bruno Capuano (20)

Using Azure IoT to feed my squirrels ️
Using Azure IoT to feed my squirrels ️Using Azure IoT to feed my squirrels ️
Using Azure IoT to feed my squirrels ️
 
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
 
2021 06 19 ms student ambassadors nigeria ml net 01 slide-share
2021 06 19 ms student ambassadors nigeria ml net 01   slide-share2021 06 19 ms student ambassadors nigeria ml net 01   slide-share
2021 06 19 ms student ambassadors nigeria ml net 01 slide-share
 
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
 
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
 
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
 
2020 10 22 AI Fundamentals - Azure Machine Learning
2020 10 22 AI Fundamentals - Azure Machine Learning2020 10 22 AI Fundamentals - Azure Machine Learning
2020 10 22 AI Fundamentals - Azure Machine Learning
 
2020 09 24 - CONDG ML.Net
2020 09 24 - CONDG ML.Net2020 09 24 - CONDG ML.Net
2020 09 24 - CONDG ML.Net
 
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
 
2020 06 27 Global AI On Tour Virtual GTA
2020 06 27 Global AI On Tour Virtual GTA2020 06 27 Global AI On Tour Virtual GTA
2020 06 27 Global AI On Tour Virtual GTA
 
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
 
2020 04 10 Catch IT - Getting started with ML.Net
2020 04 10 Catch IT - Getting started with ML.Net2020 04 10 Catch IT - Getting started with ML.Net
2020 04 10 Catch IT - Getting started with ML.Net
 
2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.Net2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.Net
 
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
 
2020 01 21 Data Platform Geeks - Machine Learning.Net
2020 01 21 Data Platform Geeks - Machine Learning.Net2020 01 21 Data Platform Geeks - Machine Learning.Net
2020 01 21 Data Platform Geeks - Machine Learning.Net
 
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
 
2019 12 14 Global AI Bootcamp - Auto ML with Machine Learning.Net
2019 12 14 Global AI Bootcamp   - Auto ML with Machine Learning.Net2019 12 14 Global AI Bootcamp   - Auto ML with Machine Learning.Net
2019 12 14 Global AI Bootcamp - Auto ML with Machine Learning.Net
 
2019 11 26 BotTO November 2019 Meetup at TD
2019 11 26 BotTO November 2019 Meetup at TD2019 11 26 BotTO November 2019 Meetup at TD
2019 11 26 BotTO November 2019 Meetup at TD
 
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
 
2019 09 05 Global AI Night Toronto - Machine Learning.Net
2019 09 05 Global AI Night Toronto - Machine Learning.Net2019 09 05 Global AI Night Toronto - Machine Learning.Net
2019 09 05 Global AI Night Toronto - Machine Learning.Net
 

Recently uploaded

AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingWSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuidePixlogix Infotech
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityVictorSzoltysek
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 

Recently uploaded (20)

AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

2021 02 13 CodeGen Verona - Let’s code a drone to follow faces syncing everything with Azure IoT

  • 1. 1 TOPIC Bruno Capuano Innovation Lead @Avanade @elbruno | http://elbruno.com Let's hack a drone, hack the camera and use AI!
  • 3. 3 Optional knowledge Python understanding Cognitive Services Face Recognition concepts Docker and Containers Concepts No TCP / UDP
  • 5. Intel Processor, Professional processing yields high-quality footage. Flight Time: 13 minutes Image Transmission Distance: 100 meters HD Transmission: 720p Smart Switching: 2 Antennas Auto Takeoff/Landing DJI Tello Lift off or land with a single tap. Low Battery Protection Alerts go off when your battery gets low. Fail-safe Protection Land safely, even if you lose connection. Vision Positioning System Smart technology that facilitates precise hovering.
  • 6. DJI Tello - Drone Programming Mobile Scratch Programming Move-Based Control Programming Simulator SDK DIY Accessories https://www.ryzerobotics.com/tello
  • 7. DJI Tello - Tello SDK 2.0 User Guide.pdf https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf
  • 8. DJI Tello - Tello SDK 2.0 User Guide.pdf https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf
  • 9. 9 Connect to Drone and Share Network Cable Wireless Connection Lynsys Velop Node Gaming / Work PC DJI Tello Drone
  • 11. DJI Tello - Tello SDK 2.0 User Guide.pdf https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf
  • 12. SDK Description 2 main actions Send Commands Read Commands Flow 1st Command >> “command” 2nd Command >> “battery?”
  • 13. 13 Demo: Hello World !!! or get the battery charge % MakeMagicHappen(); https://www.avanade.com/AI
  • 14. Drone Camera Feed Stream available via UDP udp://192.168.10.1:11111 Didn’t work with VLC  Cool tool: FFmpeg .ffplay.exe -i udp://192.168.10.1:11111 https://elbruno.com/2020/02/17/coding4fun-how-to-control-your-drone-with-20-lines-of-code-7-n/
  • 16. State-of-the-art face detection demo (Courtesy Boris Babenko)
  • 17. 17 Face Detection / Recognition FACE DETECTION DETECT FACIAL FEATURES FACE RECOGNITION OBJECT RECOGNITION
  • 18. 18 Face Detection / Recognition FACE DETECTION DETECT FACIAL FEATURES FACE RECOGNITION OBJECT RECOGNITION
  • 19. 19 Viola/Jones (2001) Object Detection Framework The algorithm has four stages: • Haar Feature Selection • Creating an Integral Image • Adaboost Training • Cascading Classifiers Haar Features - The eye region is darker than the upper- cheeks. - The nose bridge region is brighter than the eyes Supported by OpenCV ! https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework
  • 20. 20 Viola/Jones (2001) Object Detection Framework https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework
  • 21. 21 Demo: Face Detection using HaarCascades and OpenCV MakeMagicHappen(); https://www.avanade.com/AI
  • 22. 22 Prepare Your Data Build & Train Run Build your own custom machine learning models
  • 23. 23
  • 24. 24 Demo: Object Recognition using Custom Vision Models MakeMagicHappen(); https://www.avanade.com/AI
  • 25. 25 Introduction to the drone. Features and how-to of the SDK Drone SDK Analyze the drone camera feed using a custom object recognition model created with http://customvision.ai CustomVision.AI with Containers How to use OpenCV to access the Drone Camera feed via UDP feed. Drone Camera Use Haar Cascades files to perform face detection using OpenCV from the drone camera feed. Face Detection with OpenCV Quick Recap
  • 26. 26 Resources DJI Tello Drone, https://www.amazon.com/Tello-CP-PT-00000252-01-Quadcopter-Drone/dp/B07BDHJJTH Ryze Tello SDK, https://www.ryzerobotics.com/tello My Blog – 20 lines to control your drone, https://elbruno.com/2020/02/17/coding4fun-how-to-control-your-drone-with-20-lines-of-code-7-n/ Viola Jones, Object Detection Framework, https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework Cognitive Services Custom Vision, https://customvision.ai Damian Tello, Python DJI SDK, https://github.com/damiafuentes/DJITelloPy
  • 27. Resources EASY WAY TO INSTALL OPENCV AND TENSORFLOW WITH ANACONDA HTTPS://ELBRUNO.COM/2020/ 05/12/PYTHON-EASY-WAY-TO- INSTALL-OPENCV-AND- TENSORFLOW-WITH- ANACONDA/ PIXELLIB IS A LIBRARY FOR PERFORMING SEGMENTATION OF IMAGES HTTPS://GITHUB.COM/AYOOLA OLAFENWA/PIXELLIB WINDOWS TERMINAL AND ANACONDA. AND HOW TO START AN ANACONDA VIRTUAL ENVIRONMENT HTTPS://ELBRUNO.COM/2020/ 05/13/WINDOWS10- WINDOWSTERMINAL-AND- ANACONDA-BONUS-START-AN- ANACONDA-VIRTUAL- ENVIRONMENT/ FLIP WHEN A FACE IS DETECTED HTTPS://ELBRUNO.COM/2020/ 03/18/CODING4FUN-HOW-TO- CONTROL-YOUR-DRONE-WITH- 20-LINES-OF-CODE-12-N/ INSTANCE SEGMENTATION HTTPS://ELBRUNO.COM/2020/ 05/21/CODING4FUN-HOW-TO- CONTROL-YOUR-DRONE-WITH- 20-LINES-OF-CODE-20-N/