We are a group of electrical engineering students from Argentina, currently doing our thesis. It’s about a line follower vehicle that follows lines with merges/forks and sees april tags, controlled by other microprocessor, but we use the OpenMV to do the image processing part. We have now a code that works fine at 10 FPS.
In our code we call a function every 0.1 secs that calculates the distance to the center of the line AND calls find_apriltags. For our project, high FPS for find_apriltags is not required, whereas the distance to the center of the line is desired to be sampled as fast as possible. Given the fact that we are working with a QQVGA resolution in grayscale, it’s possible to store a copy of an image. So our question is, is there any way that we can run both routines (calculating line error and finding april tags) so that we could increment our line following sampling rate? Is there any way of calling find_apriltags that is not blocking? Could it work with interruptions or multithreading?
Our code is basically just like this:
tag_found,tag_nmbr = find_tags(img)
Thanks for your time