Skip to content

Instantly share code, notes, and snippets.

@arasharchor
Forked from xamox/balltrack.py
Created August 22, 2016 02:20
Show Gist options
  • Save arasharchor/2a5992e8ce053b1185734878c6d5d8cc to your computer and use it in GitHub Desktop.
Save arasharchor/2a5992e8ce053b1185734878c6d5d8cc to your computer and use it in GitHub Desktop.
Object Tracking with SimpleCV (White Ball)
'''
This is how to track a white ball example using SimpleCV
The parameters may need to be adjusted to match the RGB color
of your object.
The demo video can be found at:
http://www.youtube.com/watch?v=jihxqg3kr-g
'''
print __doc__
import SimpleCV
display = SimpleCV.Display()
cam = SimpleCV.Camera()
normaldisplay = True
while display.isNotDone():
if display.mouseRight:
normaldisplay = not(normaldisplay)
print "Display Mode:", "Normal" if normaldisplay else "Segmented"
img = cam.getImage().flipHorizontal()
dist = img.colorDistance(SimpleCV.Color.BLACK).dilate(2)
segmented = dist.stretch(200,255)
blobs = segmented.findBlobs()
if blobs:
circles = blobs.filter([b.isCircle(0.2) for b in blobs])
if circles:
img.drawCircle((circles[-1].x, circles[-1].y), circles[-1].radius(),SimpleCV.Color.BLUE,3)
if normaldisplay:
img.show()
else:
segmented.show()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment