Myro and OpenCV
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Myro and OpenCV



In this presentation, I detail my experience getting Myro to work with OpenCV

In this presentation, I detail my experience getting Myro to work with OpenCV



Total Views
Views on SlideShare
Embed Views



1 Embed 18 18



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Myro and OpenCV Presentation Transcript

  • 1. OpenCV for Image Processing with Myro Bob Roberts Kutztown University [email_address]
  • 2. What is Myro?
    • Work of Georgia Tech and Bryn Mawr College with assistance and a grant from Microsoft
    • Collection of Python libraries for easy robotics programming
    • Used in conjunction with Scribbler and Fluke
  • 3. What is the Scribbler...
    • A small robot made by Paralax
    • Built in BASIC stamp
    • Two motors and a number of input sensors
    • Serial port on top for programming
  • 4. ...and the Fluke
    • Expansion board made by Georgia Tech
    • Adds Bluetooth, a camera and a few more sensors
    • Plugs into the Scribbler's serial port
  • 5. The Scribbler and the Fluke
  • 6. The problem
    • Initial test to seek out a ball
    • The robot succeeded but gave no information about the shape
    • The function simply determined the number of pixels in the “blob”
  • 7. Goals
    • Provide advanced image processing
    • Discover working calibration
    • Abstract into easy to use functions
  • 8. Proposed solution
    • OpenCV, a powerful image processing tool
    • Native to C but has Python bindings
    • Can provide edge, circle and corner detection among other things
  • 9. Setup
    • A netbook running Windows XP
    • Myro uses Python 2.4, OpenCV uses 2.6
      • OpenCV and Pyhton 2.4 didn't work together
      • Myro and Python 2.6 worked well enough
  • 10. From Myro to OpenCV
    • Convert from Myro's image format to OpenCV's image format
    • Information got scrambled in conversion
    • Work around was to convert to gray scale
  • 11. Bad result
  • 12. Detecting circles
    • Initial attempt produced unexpected results
    • Prompted a controlled test that would vary the detection variables
    • Attempt to find the common values that work for circle detection
  • 13. Pseudo code
    • Increment X from 0 to 500
      • Increment Y from 0 to 500
        • HoughCircle with X & Y
  • 14. Detecting circles (result)
  • 15. An accidental discovery
    • Previous test was run once more
    • Caused the script (and Python) to fail
    • Only notable difference between working and non working was the dimensions
    • Resizing worked
  • 16. Wrap up for circle detection
    • Modified the Original ball detecting code to use the OpenCV
    • Variables from test did not carry into real world
    • Resulted in the scribbler missing the real ball and chasing ghosts
  • 17. Corner detection
    • Initial run (with default values) went rather smoothly
    • Algorithm was a bit overzealous
  • 18. Refinement
    • If the horizon could be found, superfluous results could be removed
    • Found the lowest, center bisecting horizontal line
  • 19. Process
  • 20. Looking ahead
    • Revisit color
    • Implement and calibrate for the real world
    • Create alternative to finding the horizon
    • Add shape detection
    • Devise a visual mapping
  • 21. Thank you! For a copy of these slides go to