-
Resolved conflicts: app/br/br.cpp openbr/core/bee.cpp openbr/plugins/output.cpp
-
resolved conflicts: app/br/br.cpp openbr/core/bee.cpp openbr/core/classify.cpp openbr/core/cluster.cpp openbr/core/eval.h openbr/openbr.cpp openbr/openbr.h openbr/plugins/algorithms.cpp openbr/plugins/independent.cpp openbr/plugins/output.cpp openbr/plugins/svm.cpp
-
If just the first property name argument is specified, use that for both the gt and predicted files. Use empty strings to indicate when the gt/predicted property names are not supplied to facilitate the above change. Fix argument count checks for eval regression/classification.
-
Change default label name from Subjet to Label (since label is a more general term). Use different default variable names for classification (label), regression (regressor/regressand), and clustering (ClusterID) Update some (far from all) transforms to accept arguments specifying their input/output variables. Update eval classification to optionally take target variable names as arguments
-
Release a thread from the global thread pool whenever we wait for a parallel job to finish. This means we don't waste one of the global thread pool's threads, and can maintain full CPU utilization.
-
Add Show2Transform (should replace ShowTransform eventually), which displays input images using QT, rather than going through openCV. Additional modifications to support doing this (since qt is quite particular about how GUI elements are created/modified). Create a QApplication instead of a QCoreApplication (if not building BR_EMBEDDED), restructure br.cpp's main to run its main work in a separate thread while the main thread sits in an event loop.