Known strengths and limitationsLink
The way we designed the Plant Imager and the software has strengths but also some limitations. We try to cover those we are aware of in the following section.
Open loop designLink
The problemLink
The motors we use function in an open loop manner, that is: we send and series of instructions to the motors, telling them how many steps we want and in which direction to performs them... and we hope for the best.
Indeed, contrary to a feedback loop design, there is no way of knowing if those instruction were followed accurately. This open loop design might seem unfortunate or inadequate but this is actually a lot cheaper and widely used in robotics.
As there is a user standing next to the Plant Imager you might expect her/him to notice any mistake made by the robot. This is simply not true and not a good approach to tackling the problem.
The visual proofLink
I have performed a series of 5 repetitions of the very same acquisitions, without changing a thing between each of them. To my knowledge, everything went fine, but this is what I got when I cycled through the pictures taken at the same position (the first one):
As you can see, most of the images looks exactly the same, and if it was not for the frame indicator on the top right we would not notice the change.
However, we can clearly see that one frame, Sangoku_40_1
, has a small offset compared to the others.
The solutionLink
As the accuracy of the camera positions is not perfect, we have to resort to Structure from Motion algorithm to compensate for those imperfections.
Intrinsic calibration procedureLink
The problemLink
Every camera need a lens to capture the luminous signals. However, the cheaper the camera, the cheaper the lens and the more likely it will induce deformations to the image due to imperfections.
The solutionLink
We developed an intrinsic calibration procedure to compensate for lens aberrations. We use OpenCV and a ChArUco board to accurately estimate and correct them.