Quote:
Originally Posted by Tom Bottiglieri
Yeah, and a Corvette goes faster than a go-kart. Doesn't help much for a go-karting competition though.
Personally, there's not really a huge difference in execution speed between these two languages that can't be made up for with architecture. Process your vision on the laptop, run your control loops in separate threads, and handle user interactions in an event oriented fashion. This will result in code that is easier to build, understand, maintain, read, re-use, etc.
|
It should be noted OpenCV was not a solution we used to acheive the motion tracking shown in that video as it falls short in performance and requirements of our needs. While many aspects of the FRC code are in a "go-karting" competition (i.e. where there is not a noticeable need for inner loops). I believe processing vision fits into a Corvette category. As Tim (NewTek owner) once said to me when I was attempting to code the processing vision for Rebound Rumble. "Real video is a "dirty" world"... there is so MUCH room for new innovation for processing video to interpret what you see. There is no limit on how advanced this code can be. Imagine if you will, to have code that is robust enough to identify targets (AI technology) as well as a human driver, but with lighting fast speed. OpenCV allows people to work with existing solutions, but if you want to make new innovative solutions... you really need the right tool for the right job.
Thanks for the Corvette to go-kart comparison... I hope others can appreciate the hard work that we do and see the real power and innovation behind c++ with intrinsics.