Objects of irregular shape (close to an ellipsoid) rotate in front of the camera for a limited time, and at different speeds (indirect dependence on size - the more, the slower it turns, but also depends on the shape, adhesion of the surface with a twisting mechanism, deformation ability). We assume that once exactly scroll. And here is the task of finding out what percentage of the object's surface is filled with the specified color (using openCV). Suppose the object scrolled in front of the camera one and a half times, and some area was photographed twice, and just there was a color spot, which will be calculated twice. This is the problem - how to get photos of the entire surface without repetitions (then it will be possible to estimate the amount of color in each photo)?
- @asianirish: I think this is a question for mathematicians. - VladD
- Give mathematicians spherical objects in a vacuum, and here is a purely practical task that needs to be solved though, without a strict theory, if only it works - asianirish
- 2@asianirish, you have not met good mathematicians :) Sugobo practical approach: learn to recognize the repetition of the picture - when the second turn took place. Calculate how much the object rotates in one frame, what the maximum error can be - and that's it, compare pixel-by-pixel :) - Michael M
- I think the approach is something like this: first you need a motion search algorithm, for example: habrahabr.ru/post/201406 (I hope if you correctly tune it, you will be able to reliably recognize rotation), at this stage you can evaluate where the background is and where the object is. Further, if you have an object close to an ellipsoid, then it can be assumed that it is always an ellipsoid. Further, for each frame, see how much the original area has shifted (if half of the area is new pixels means rotation by 90 degrees). If you have few frames, consider 1 pixel at the edge of the elepsoid - this is a larger area than in the center - Alexandr
|