So I spent the first half of the week writing up my proposal to present a poster at Grace Hopper this year. Phew, that's done! On to more fun things...
I am working on trying to find the right pipeline to automatically detect markers on four corners of our glitter sheet in an effort to reduce the error in our homography pipeline. The most success I have had so far is with using CALTag markers.
This is an example of a tag - I can specify the size of the tag. In this case, this is a 4x4 marker, and each of the 16 unique QR code in this tag is an 8x8 bit code. I can generate 4 different such tags to be used as our markers, and place them in each of the four corners of our glitter sheet. The rest of this post will focus on some of my tests using these codes and some of the issues I have had with them.
Find each tag individually
If I look at an image of just the 1st tag, and try to find the tag in the image, you can see that all 25 points were found. Similarly, if I look at an image of just the 3rd tag, all 25 points on the tag were found.
However, when I did this test on code 2 and code 4, it did not find any of the points in the marker.
Many iterations and failures later...
After many failed attempts with these markers, I finally succeeded (mostly). I changed the markers from 4x4 to 3x3 markers so that the individual quads would be larger. I then tried to take a picture with one marker alone in the middle of the glitter,and it failed. At this point I realized that the noise from the glitter was causing problems. So, I tried putting the markers on a piece of paper, more or less creating some sort of boundary, and it found the whole marker.
Finally, I arrived at this: I used a piece of cardboard that is exactly the same size as the glitter, and cut it down to look like a border.
(Sorry for the poor picture quality)
It is having a hard time finding marker 2 (the lower right one) no matter where I place it on the border, so I think there is something wrong with that particular marker - I can just print a new random one and try that. But, all of the other 3 markers were found correctly.
Next, I need to try this out in our actual real-world setup and see how it does with a little bit less light.
Question: Will a border like this remove too many pieces of glitter from our system, or will that be okay? This seems to be the only effective way that I can remove noise from the image.
Things to try:
- I will also try reducing the size of the individual markers and then can also make the border a little smaller, and see if the CALTag code can find smaller sized markers.
- I can also generate 2x2 codes, so those may actually be better and easier to see for us, so I will try those as well.