1 / 38

Grouping Using Factor Graph: An Approach for finding Text with a Camera Phone

This paper discusses an algorithm that utilizes a factor graph model to efficiently detect and group text in images captured with a camera phone. The algorithm employs feature selection techniques and simplifications to solve the problem non-iteratively, making it suitable for resource-constrained mobile devices.

inezjackson
Télécharger la présentation

Grouping Using Factor Graph: An Approach for finding Text with a Camera Phone

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Grouping Using Factor Graph: An Approach for finding Text with a Camera Phone Huiying Shen and James Coughlan Smith-Kettlewell Eye Research Institute San Francisco, USA

  2. Motivation

  3. Motivation “Webster”

  4. More Examples Find street signs, restaurants, addresses Find indoor signs as landmarks and info tags

  5. Why a Cell Phone • Everyone has one • A Smart phone is a capable computer • But, it has limited resources, compared to a desktop, • And, has NO float point processor • A simple and efficient algorithm is needed,……

  6. Why a Cell Phone • Everyone has one • A Smart phone is a capable computer • But, it has limited resources, compared to a desktop, • And, has NO float point processor • A simple and efficient algorithm is needed,……

  7. Why a Cell Phone • Everyone has one • A Smart phone is a capable computer • But, it has limited resources, compared to a desktop, • And, has NO float point processor • A simple and efficient algorithm is needed,……

  8. Why a Cell Phone • Everyone has one • A Smart phone is a capable computer • But, it has limited resources, compared to a desktop, • And, has NO float point processor • A simple and efficient algorithm is needed,……

  9. Why a Cell Phone • Everyone has one • A Smart phone is a capable computer • But, it has limited resources, compared to a desktop, • And, has NO float point processor • A simple and efficient algorithm is needed,……

  10. Our Algorithm: Feature Selection and Factor Graph • Feature Selection • Finding simple edges of four orientation • Build up the more complex features • Graph Model • Group the features into factors • Build the data driven graph model • Using a simplified version of graph model to solve it non-iteratively

  11. Our Algorithm: Feature Selection and Factor Graph • Feature Selection • Finding simple edges of four orientations • Build up the more complex features • Graph Model • Group the features into factors • Build the data driven graph model • Using a simplified version of graph model to solve it non-iteratively

  12. Our Algorithm: Feature Selection and Factor Graph • Feature Selection • Finding simple edges of four orientations • Build up the more complex features • Graph Model • Group the features into factors • Build the data driven graph model • Using a simplified version of graph model to solve it non-iteratively

  13. Feature Selection • Machine learning approaches • Filter banks • Sliding windows • Learn the filters statistically • Problems • Lots of filters, difficult to understand and improve • Require huge training data set • Possible over-learning • Possibly learning wrong things

  14. Feature Selection • Machine learning approaches • Filter banks • Sliding windows • Learn the filters statistically • Problems • Lots of filters, difficult to understand and improve • Require huge training data set • Possible over-learning • Possibly learning wrong things

  15. Feature Selection: bottom up

  16. Matched Vertical/Horizontal Edgelets

  17. Anchored Vertical Edgelets --- Many factors are found according to the tops and the bottoms of the edgelets

  18. A factor graph model --- Variables --- Factors

  19. The Equations

  20. Our Simplifications • The variables have only two states: x=0 for ground, and x=1 for figure • A factor potential function g(x) has only two values: g(x) = g1 x=1 for all x’s = g0, otherwise • g1 >= g0, i.e., “if you don’t have nice things to say, say something neutral”

  21. Our Simplifications • The variables have only two states: x=0 for ground, and x=1 for figure • A factor potential function g(x) has only two values: g(x) = g1 x=1 for all x’s = g0, otherwise • g1 >= g0, i.e., “if you don’t have nice things to say, say something neutral”

  22. Our Simplifications • The variables have only two states: x=0 for ground, and x=1 for figure • A factor potential function g(x) has only two values: g(x) = g1 x=1 for all x’s = g0, otherwise • g1 >= g0, i.e., “If you don’t have anything nice to say, don’t say anything”

  23. An Example Factor Graph fA(x1,x2,x5) – top of chars w/ ascender fB(x3,x4,x6,x7,x8) – top of w/o ascender fC(x3,x4,x5,x6,x7,x8) – bottoms of 1st 6 sticks fD(x4,x5,x6,x7,x8,x9) – bottoms of next 6 sticks

  24. An Example Factor Graph fA(x1,x2,x5) – top of chars w/ ascender fB(x3,x4,x6,x7,x8) – top of w/o ascender fC(x3,x4,x5,x6,x7,x8) – bottoms of 1st 6 sticks fD(x4,x5,x6,x7,x8,x9) – bottoms of next 6 sticks

  25. Our Non-Iterative Algorithm • Set mx->f(x=0) = 0 initially • Shift mf->x(x) after each iteration such that mf->x(x=0) = 0 • The Algorithm converges after first iteration • It can be implemented using fixed point operation only

  26. Our Non-Iterative Algorithm • Set mx->f(x=0) = 0 initially • Shift mf->x(x) after each iteration such that mf->x(x=0) = 0 • The Algorithm converges after first iteration • It can be implemented using fixed point operation only

  27. An example

  28. More examples

  29. Summary / Discussion • A simplified factor graph algorithm is developed for camera cell phones • Variables take only two states • Factor functions g(x) take only two values • “No bad mouth”: g1 >= g0 • Non-iterative • No floating point computation

  30. Summary / Discussion • A simplified factor graph algorithm is developed for camera cell phones • Variables take only two states • Factor functions g(x) take only two values • “No bad mouth”: g1 >= g0 • Non-iterative • No floating point computation

  31. Summary / Discussion • A simplified factor graph algorithm is developed for camera cell phones • Variables take only two states • Factor functions g(x) take only two values • “No bad mouth”: g1 >= g0 • Non-iterative • No floating point computation

  32. Summary / Discussion • A simplified factor graph algorithm is developed for camera cell phones • Variables take only two states • Factor functions g(x) take only two values • “No bad mouth”: g1 >= g0 • Non-iterative • No floating point computation

  33. Summary / Discussion • A simplified factor graph algorithm is developed for camera cell phones • Variables take only two states • Factor functions g(x) take only two values • “No bad mouth”: g1 >= g0 • Non-iterative • No floating point computation

  34. Summary / Discussion • A simplified factor graph algorithm is developed for camera cell phones • Variables take only two states • Factor functions g(x) take only two values • “No bad mouth”: g1 >= g0 • Non-iterative • No floating point computation

More Related