1

Let me describe the problem as follows. I have a robot which moves across a known 2D board. The board is painted with several colors. The paintings are larger squares, circles and lines. The robot has a camera mounted so that it looks down towards the floor. As we can calibrate the camera we can reverse the perspective transformation and by doing so, we are observing a subimage of the whole board image. Given the subimage (and the board image), what would be the best strategy towards localization? I am asking only about the image processing/computer vision part, so no need to talk about Kalman filter etc. The trivial approach would be two use the subimage as a template, but as we also need rotation invariance we would need to search a 3D space (tx, ty, theta). Scale invariance is not needed as the camera will be on a constant and known height. Some subimages will have it's duplicates, but we still need to known where those duplicates are so the output should either be some probability function ( p(tx,ty,theta) ) or a set of candidates.

The algorithm should be fast, doesn't have to be realtime but should run over 5-10fps on a standard PC.

The board image is abound 6000x6000. The subimage is around 500x500. The colors are solid and known so we can easily threshold/classify them into several (4-5) classes.

Damjan Dakic
  • 265
  • 1
  • 19
  • do you really need rotation invariance? don't you want to get the orientation as well? – Rosa Gronchi Apr 06 '15 at 14:29
  • I meant it in the context of identifying the part of the image in the sense that a rotated input image can be recognized on the main image. But yeah, I'd want orientation as well. – Damjan Dakic Apr 06 '15 at 21:40
  • Did you ever find an easy solution to this? I have the same problem, except simpler. I have a fixed angle and I'm only looking for a 1D position readout. I am still using a camera that can see 2D but, again, I'm only ever moving in 1D and that's what I'd like to localize with. – Cameron Tacklind Aug 11 '20 at 19:11

0 Answers0