SlideShare a Scribd company logo
1 of 17
Download to read offline
gobject-detector
       Robert Carr
    racarr@gnome.org



Ā         Ā 
Sorry...




Actually has nothing to do with GObject




 Ā            Ā 
Go!




Ā    Ā 
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.
  Ā        Ā 
A Problem...
ī€Š
    Common and important to review finished games.
ī€Š
    Manual recording is tedious.
ī€Š
    Human Memory is limited..




        Ā             Ā 
Enter gobject-detector
ī€Š
    Scans an image, to transcribe a photo of a Go
      Board to SGF (Smart Game Format)




        Ā             Ā 
How does it work?
             ī€Š
                 Well.... first you start
                  from an image.




Ā         Ā 
Edge Detection
            ī€Š
                The first step is a
                 Canny Edge
                 detector, to identify
                 areas of maximum
                 gradient in the
                 image.




Ā       Ā 
Hough Transform
            ī€Š
                A computer vision
                 method for
                 obtaining
                 parameterizations of
                 lines in images.




Ā        Ā 
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.



Ā        Ā 
Perspective transformation
              ī€Š
                  Now that we have our
                   4 corners we can
                   order them and then
                   compute a
                   perspective
                   mapping.




Ā         Ā 
Now for the grid....
               ī€Š
                   Requires the board to
                    be oriented
                    correctly...




Ā          Ā 
Image Filtering
            ī€Š   Ā Grain!Ā SomeĀ imagesĀ 
                  haveĀ glareĀ andĀ 
                  shadows,Ā difficultĀ toĀ 
                  distinguishĀ fromĀ 
                  whiteĀ andĀ blackĀ 
                  stones.
            ī€Š   FixĀ theĀ colorsĀ 
                  some...equalizeĀ theĀ 
                  lighting


Ā       Ā 
Stone detection
ī€Š
    Easy at this point. Just sample in a circle around
     each grid point!




        Ā              Ā 
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.




        Ā             Ā 
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.

        Ā              Ā 
Questions?




Ā     Ā 

More Related Content

More from mskmoorthy

Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11mskmoorthy
Ā 
Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011mskmoorthy
Ā 
Rcos intro-2
Rcos intro-2Rcos intro-2
Rcos intro-2mskmoorthy
Ā 
Rcos presentation 9-23-2011
Rcos presentation 9-23-2011Rcos presentation 9-23-2011
Rcos presentation 9-23-2011mskmoorthy
Ā 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentationmskmoorthy
Ā 
Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011mskmoorthy
Ā 
Auto scheduler presentation_2
Auto scheduler presentation_2Auto scheduler presentation_2
Auto scheduler presentation_2mskmoorthy
Ā 
Second presentation idea_bank
Second presentation idea_bankSecond presentation idea_bank
Second presentation idea_bankmskmoorthy
Ā 
Scrutiny 2
Scrutiny 2Scrutiny 2
Scrutiny 2mskmoorthy
Ā 
Sean austin uir-2
Sean austin uir-2Sean austin uir-2
Sean austin uir-2mskmoorthy
Ā 
Nexus2 7-22-1011
Nexus2 7-22-1011Nexus2 7-22-1011
Nexus2 7-22-1011mskmoorthy
Ā 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011mskmoorthy
Ā 
Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011mskmoorthy
Ā 
Olympus pesentation2
Olympus pesentation2Olympus pesentation2
Olympus pesentation2mskmoorthy
Ā 
Observatory 7 15-11
Observatory 7 15-11Observatory 7 15-11
Observatory 7 15-11mskmoorthy
Ā 
8.7.2011 agml
8.7.2011 agml8.7.2011 agml
8.7.2011 agmlmskmoorthy
Ā 
Concerto conmoto
Concerto conmotoConcerto conmoto
Concerto conmotomskmoorthy
Ā 
Koala pres1
Koala pres1Koala pres1
Koala pres1mskmoorthy
Ā 
Scrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfScrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfmskmoorthy
Ā 
1 presentation idea_bank
1 presentation idea_bank1 presentation idea_bank
1 presentation idea_bankmskmoorthy
Ā 

More from mskmoorthy (20)

Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11
Ā 
Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011
Ā 
Rcos intro-2
Rcos intro-2Rcos intro-2
Rcos intro-2
Ā 
Rcos presentation 9-23-2011
Rcos presentation 9-23-2011Rcos presentation 9-23-2011
Rcos presentation 9-23-2011
Ā 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentation
Ā 
Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011
Ā 
Auto scheduler presentation_2
Auto scheduler presentation_2Auto scheduler presentation_2
Auto scheduler presentation_2
Ā 
Second presentation idea_bank
Second presentation idea_bankSecond presentation idea_bank
Second presentation idea_bank
Ā 
Scrutiny 2
Scrutiny 2Scrutiny 2
Scrutiny 2
Ā 
Sean austin uir-2
Sean austin uir-2Sean austin uir-2
Sean austin uir-2
Ā 
Nexus2 7-22-1011
Nexus2 7-22-1011Nexus2 7-22-1011
Nexus2 7-22-1011
Ā 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011
Ā 
Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011
Ā 
Olympus pesentation2
Olympus pesentation2Olympus pesentation2
Olympus pesentation2
Ā 
Observatory 7 15-11
Observatory 7 15-11Observatory 7 15-11
Observatory 7 15-11
Ā 
8.7.2011 agml
8.7.2011 agml8.7.2011 agml
8.7.2011 agml
Ā 
Concerto conmoto
Concerto conmotoConcerto conmoto
Concerto conmoto
Ā 
Koala pres1
Koala pres1Koala pres1
Koala pres1
Ā 
Scrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfScrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdf
Ā 
1 presentation idea_bank
1 presentation idea_bank1 presentation idea_bank
1 presentation idea_bank
Ā 

Recently uploaded

Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
Ā 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
Ā 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
Ā 
Science lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonScience lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonJericReyAuditor
Ā 
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxAnaBeatriceAblay2
Ā 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
Ā 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
Ā 
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxHistory Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxsocialsciencegdgrohi
Ā 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
Ā 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
Ā 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
Ā 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
Ā 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
Ā 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
Ā 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
Ā 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
Ā 
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
Ā 

Recently uploaded (20)

Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
Ā 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Ā 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Ā 
Science lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonScience lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lesson
Ā 
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
Ā 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
Ā 
Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Tilak Nagar Delhi reach out to us at šŸ”9953056974šŸ”
Ā 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
Ā 
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxHistory Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
Ā 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
Ā 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
Ā 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
Ā 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
Ā 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Ā 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
Ā 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
Ā 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
Ā 
Model Call Girl in Bikash Puri Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Bikash Puri  Delhi reach out to us at šŸ”9953056974šŸ”Model Call Girl in Bikash Puri  Delhi reach out to us at šŸ”9953056974šŸ”
Model Call Girl in Bikash Puri Delhi reach out to us at šŸ”9953056974šŸ”
Ā 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
Ā 
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
ā€œOh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
Ā 

Detect Go Board Positions Using Computer Vision

  • 1. gobject-detector Robert Carr racarr@gnome.org Ā  Ā 
  • 2. Sorry... Actually has nothing to do with GObject Ā  Ā 
  • 3. Go! Ā  Ā 
  • 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... Ā  Ā 
  • 13. Image Filtering ī€Š Ā Grain!Ā SomeĀ imagesĀ  haveĀ glareĀ andĀ  shadows,Ā difficultĀ toĀ  distinguishĀ fromĀ  whiteĀ andĀ blackĀ  stones. ī€Š FixĀ theĀ colorsĀ  some...equalizeĀ theĀ  lighting Ā  Ā 
  • 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. Ā  Ā