Welcome!
Computer vision resources
for CS education
web site…
Welcome!
Perspectives on vision in the CS curriculum
7 - 8:30
Bruce Maxwell, Colby College
Lisa Meeden, Swarthmore College
David Touretzky, Carnegie Mellon University
Bob Avanzato, Penn State Abington
Doug Blank, Bryn Mawr College
Zach Dodds, Harvey Mudd College
Opportunities for hands-on interaction
IPRE's Scribbler and Myro and Fluke
The Tekkotsu vision and robotics framework
OpenCV and the iRobot Create
8:45 - 10
3d visual ambiguity
Many 3d worlds could give rise to a single 2d image.
Event-driven execution
• Events are things that happen to a graphical application
• Button Presses
• Text Entries
• Key Presses, Key Releases, Key Events
• Each object receiving an event notifies its “Listener”
• The Listener then handles the event appropriately
// Here's how keyboard events are handled...
public void keyPressed(KeyEvent evt)
{
switch(evt.getKeyChar())
{
case ' ':
message = "You pressed a space...";
currentColor = Color.white;
break;
context?
Event-driven execution
• Events are things that happen to a graphical application
• Button Presses
• Text Entries
• Key Presses, Key Releases, Key Events
• Each object receiving an event notifies its “Listener”
• The Listener then handles the event appropriately
// Here's how keyboard events are handled...
public void keyPressed(KeyEvent evt)
{
switch(evt.getKeyChar())
{
case STOP:
message = "You stopped!...";
currentColor = Color.white;
break;
context!
Getting Set with OpenCV
Vision as computation
Vision as resource: OpenCV
large user community
+
fast C++ library from Intel
open source
multiplatform
multiplatform?
-
daunting
C++ researchware
Vision as resource: OpenCV
large user community
+
fast C++ library from Intel
open source
multiplatform
multiplatform?
-
daunting
C++ researchware
Why?
vision ~ no ceiling
Why?
vision ~ ceiling
Why?
vision as accessible resource
How?
Getting set with OpenCV
How?
Getting Set with OpenCV
How?
Getting Set with OpenCV
Visualization bandwidth…
?!?
?!?
OpenCV via
Enabling students' visions
• "file sharing"
• a socket server
• language bindings
QuickTime™ and a
Cinepak decompressor
are needed to see this picture.
MGC work
OpenCV via
Enabling students' visions
• "file sharing"
• a socket server
• language bindings
QuickTime™ and a
decompressor
are needed to see this picture.
iRobot Create
Try it!
no pressure
Set
but results will come
back to CS 154…
Create control
Road segmentation
QuickTime™ and a
YUV420 codec decompressor
are needed to see this picture.
web site…
Feedback
http://www.cse.buffalo.edu/sigcse08/evaluations
Password: sigcse08
© Copyright 2026 Paperzz