Many users never have the need to change the board's built-in vision algorithms. But some of you may want to add to or modify the vision algorithms. And perhaps more will wish to add code to directly drive robots or other equipment through the extra digital I/O.
The vision software is set up to allow easy access to the various levels of processing; if you simply want access to the results of the current algorithms to control your robot base, you don't need to understand the internals of the algorithms. If you want to delve deeper and compute a new metric for a tracked object, you can easily get the list of "segments" from an individual object. Or if you want to go deeper still, you can process segments as they come in from the timer processor, before they have been sorted into various tracked objects.