Your SlideShare is downloading. ×
Myro and OpenCV
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Myro and OpenCV

1,618
views

Published on

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

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,618
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

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 http://www.slideshare.net/2xrobert