Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
AI meets the Real
World
Pet project
The problem
Building kit
Putting it all together
System check
Computer vision
Deep Learning vs
Traditional vision techniques
● Image processing
● Histograms
● Smoothing and blurring
● Thresholding
● Gradients and edge detection
● Contours
● Machin...
How to find an object?
Color based detection
● Define color boundaries (eg green)
greenLower = (20, 100, 100)
greenUpper = (40, 255, 255)
● Apply...
Image thresholding
● Apply filters
cv2.GaussianBlur
● Apply threshold
cv2.adaptiveThreshol
● Find contours
cv2.findContour...
Edge detection
● Apply filters
cv2.bilateralFilter
● Edge detection
cv2.Canny
● Find contours
cv2.findContours
● Easy to start
● Real time processing
● Sensitive to lighting
● Sensitive to noise
● Need to choose socks
properly
Can Machine Learning do better?
Preparing the data
● Color scheme
● Size of sample images
● Blurring / smoothing
● Number of positive / negative samples
Feature extraction
● Haar feature
● Histogram of oriented gradients
● Scale invariant feature transform
● Speeded up robus...
Learning algorithm
● Support Vector Machines
● Random forests
● Cascade classifier
● ANN
Training
Detecting
● Load cascade
cascade = cv2.CascadeClassifier('your_cascade.xml')
● Detect object
cascade.detectMultiScale(imag...
● Different shapes
● Lighting robustness
● Training is time
consuming
● Many false-positives
Showreel
What is not covered?
● Deep learning
● Object tracking
● Stereo image
● Optical flow
● ...
● iRobot
● First lunar rover
● Curiosity rover
● Tesla self-driving car
What is under the hood of ...
How to get started?
AI meets real world
AI meets real world
AI meets real world
Upcoming SlideShare
Loading in …5
×

AI meets real world

200 views

Published on

The presentation will cover two sides of robotics: engineering and computer vision. First part is dedicated to assemblying of robot's parts: actuators, sensors, motors and microcontroller all together. The second part will cover some computer vision topics, like object detection and object tracking, as well as applying machine learning to improve robot vision. And the robot showreel at the end of the presentation.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

AI meets real world

  1. 1. AI meets the Real World
  2. 2. Pet project
  3. 3. The problem
  4. 4. Building kit
  5. 5. Putting it all together
  6. 6. System check
  7. 7. Computer vision
  8. 8. Deep Learning vs Traditional vision techniques
  9. 9. ● Image processing ● Histograms ● Smoothing and blurring ● Thresholding ● Gradients and edge detection ● Contours ● Machine Learning
  10. 10. How to find an object?
  11. 11. Color based detection ● Define color boundaries (eg green) greenLower = (20, 100, 100) greenUpper = (40, 255, 255) ● Apply mask mask = cv2.inRange(image, greenLower, greenUpper) ● Blur & Smooth mask = cv2.erode(mask) mask = cv2.dilate(mask) ● Find contours cnts = cv2.findContours(mask)
  12. 12. Image thresholding ● Apply filters cv2.GaussianBlur ● Apply threshold cv2.adaptiveThreshol ● Find contours cv2.findContours ● Calculate shape edges = cv2.approxPolyDP area = cv2.contourArea If len(edges) == 4 and area > 100: print “square”
  13. 13. Edge detection ● Apply filters cv2.bilateralFilter ● Edge detection cv2.Canny ● Find contours cv2.findContours
  14. 14. ● Easy to start ● Real time processing ● Sensitive to lighting ● Sensitive to noise ● Need to choose socks properly
  15. 15. Can Machine Learning do better?
  16. 16. Preparing the data ● Color scheme ● Size of sample images ● Blurring / smoothing ● Number of positive / negative samples
  17. 17. Feature extraction ● Haar feature ● Histogram of oriented gradients ● Scale invariant feature transform ● Speeded up robust feature ● Local binary pattern
  18. 18. Learning algorithm ● Support Vector Machines ● Random forests ● Cascade classifier ● ANN
  19. 19. Training
  20. 20. Detecting ● Load cascade cascade = cv2.CascadeClassifier('your_cascade.xml') ● Detect object cascade.detectMultiScale(image)
  21. 21. ● Different shapes ● Lighting robustness ● Training is time consuming ● Many false-positives
  22. 22. Showreel
  23. 23. What is not covered? ● Deep learning ● Object tracking ● Stereo image ● Optical flow ● ...
  24. 24. ● iRobot ● First lunar rover ● Curiosity rover ● Tesla self-driving car What is under the hood of ...
  25. 25. How to get started?

×