4. Go! (Weiqi, Baduk, Awesome)
ī
~4000 year old board
game.
ī
Place black and white
stones on board
intersection.
ī
Probably don't ask me
for details or I will
never stop talking.
Ā Ā
5. A Problem...
ī
Common and important to review finished games.
ī
Manual recording is tedious.
ī
Human Memory is limited..
Ā Ā
6. Enter gobject-detector
ī
Scans an image, to transcribe a photo of a Go
Board to SGF (Smart Game Format)
Ā Ā
7. How does it work?
ī
Well.... first you start
from an image.
Ā Ā
8. Edge Detection
ī
The first step is a
Canny Edge
detector, to identify
areas of maximum
gradient in the
image.
Ā Ā
9. Hough Transform
ī
A computer vision
method for
obtaining
parameterizations of
lines in images.
Ā Ā
10. Board Detection
ī
Once we have a list of
candidate lines we
can find the four
largest, and use
them to compute
our corners and a
center.
Ā Ā
11. Perspective transformation
ī
Now that we have our
4 corners we can
order them and then
compute a
perspective
mapping.
Ā Ā
12. Now for the grid....
ī
Requires the board to
be oriented
correctly...
Ā Ā
14. Stone detection
ī
Easy at this point. Just sample in a circle around
each grid point!
Ā Ā
15. So wait how does this solve the
problem?
ī
Anrdroid app.
ī
Listens for sound of stone contacting wood and
takes that as a queue to take a new picture of
the board.
ī
iPeter might write me an iPhone app.
Ā Ā
16. What else?
ī
This library will not detect the usage of libgobject
in your code
ī
Play online using physical board, with webcam.
ī
Probably need a new name. Go Image
Manipuation Package (GIMP), or Go Toolkit
(GTK?)
ī
Integrated with SGF organizer app.
Ā Ā