-
Basically, description() now relies on firstAvailablePropertyIndex being set correctly, and this is done in Object::init(file). If an object is not created via the plugin system, Object::init(file) is never called. Also, description is now called as part of smartCopy, which is of course called when project() const is called on a timeVarying transform.
-
Merged!
-
Update these algorithms to draw all detected faces on the same image, and only display that image once. Also, modify ShowFaceDetection to discard matrices that have already been displayed.
-
This is unsafe since in some scenarios, the window is already part of an event loop.
-
A stopwatch and profiler to get time data for specified openbr transforms
-
Better support for serializing algorithms in memory
-
Refactor handling of simplified pointer in AlgorithmCore Remove parameter from serialize, it's literally impossible for it to do anything useful Remove spaces after * and & (saving valuable bytes of source code).
-
Also, more careful memory management of the simplified transform in AlgorithmCore
-
Instead of having a parameter to force serialization of loadStores, introduce a recursive method for simplifiying transform trees. Transforms which are only useful during load/training can now remove themselves from the tree via Transform * simplify, returning e.g. their child transform instead of themselves when possible. This avoids the issue of LoadStore transforms refusing to serialize themselves onto an input stream during multi-process enrollment, since they are just removed from the tree.
-
For consistency with other supported compilers, enable a warning about unused parameters at warning level 3 in visual studio. By default this warning is at level 4, but using level 4 isn't really feasible since a ton of warnings are generated for Qt header files.