summaryrefslogtreecommitdiffhomepage
path: root/tracker-neuralnet
AgeCommit message (Collapse)Author
2022-11-01tracker/nn: Tweaks, refactoring, a deadzone filtering and support for ↵Michael Welter
uncertainty estimation * Add rudimentary test for two functions .. maybe more in future * Fix the rotation correction from vertical translation * Move preview class to new files * Move neural network model adapters to new files * Add utility functions for opencv * Query the model inputs/outputs by name to see what is available * Supports outputs for standard deviation of the data distribution - What you get if you let your model output the full parameters of a gaussian distribution (depending on the inputs) and fit it with negative log likelihood loss. * Disabled support for sequence models * Add support for detection of eye open/close classification. Scale uncertainty estimate up if eyes closed * Add a deadzone filter which activates if the model supports uncertainty quantification. The deadzone scales becomes larger the more uncertain the model/data are. This is mostly supposed to be useful to suppress large estimate errors when the user blinks with the eyes * Fix distance being twice of what it should have been
2022-11-01now remove cmake workarounds for onnxruntimeStanislaw Halik
Followup from #1562.
2022-10-26tracker/nn: fix buildStanislaw Halik
Issue: #1559
2022-10-10Revert "options/value: add `QObject::connect` wrapper"Stanislaw Halik
This reverts commit a67e8630caf20e7f48151024e9e68dd9271d75c7.
2022-10-10tracker/neuralnet: fix buildStanislaw Halik
2022-07-01options/value: add `QObject::connect` wrapperStanislaw Halik
This is useful not just to save on complexity in call sites, but also because I plan on using the Verdigris library to remove needless `valueChanged()` and `setValue()` overloads from each `value<t>` instance. Also fix a bug in `options/tie.hpp` where `QComboBox::setCurrentIndex` was erroneously called as `Qt::DirectConnection`.
2022-05-21tracker/nn: Fix localizer interfering with tracking when tracking is still goodMichael Welter
2022-05-21tracker/nn: Fix drawing of uninitialized face ROI bufferMichael Welter
2022-05-19tracker/nn: Use postfix underscore to indicate class member variablesMichael Welter
2022-05-19tracker/nn: Improve previewMichael Welter
* The preview image is now generated with the dimensions of the widget * The pose visualization is added afterwards adjusted to the preview size * The fps / inference time readout is moved to the settings dialog * The actual obtained resolution from the camera is also shown * Dialog layout is changed Note: Switching to using underscore to mark class member vars. It's not consistently applied yet.
2022-05-19tracker/nn: Add resolution setting and tooltipsMichael Welter
Tooltips only for half of the settings or so. When hovering over the actual input boxes.
2022-05-19tracker/nn: Add support for recurrent model and further tweaksMichael Welter
Regarding tweaks: * EWA smoothing of head ROI. Smoothing strength is a UI setting. * Adjustible zoom into the detected face. The predicted ROI is scaled by a factor the user can set. There is a sweet spot somewhere near 1. * Adjustible number of threads * The ROI is no longer taken as model output directly. This was actually not needed. Perhaps as auxiliary training objective for the network. But the tracker implementation now just uses a square area around the head center according to the predicted head size. * Add comment and debug notification on face ROI model output
2022-05-15tracker/nn: Support new coordinate conventions for head rotationMichael Welter
2022-05-15tracker/nn: Don't hardcode the size of the input image for the pose estimatorMichael Welter
2022-05-12tracker/nn: catch exception in case the head pose model throws during inferenceMichael Welter
2022-05-11Added support for MJPEG compression for neuralnetPedro Silva
- Added support for MJPEG compression for neuralnet tracker
2022-04-23tracker/nn: only install shared library on win32Stanislaw Halik
2022-04-23tracker/neuralnet: add libomp redistributable for msvcStanislaw Halik
Issue: #1394
2022-04-19fix i18n generationStanislaw Halik
2022-02-03tracker/neuralnet: specify only required opencv modulesStanislaw Halik
2022-02-03tracker/nn: don't specify opencv module listStanislaw Halik
This is because multiple opentrack modules depend on different opencv modules and whichever FIND_PACKAGE(OpenCV COMPONENTS ...) gets executed first, wins. Following FIND_PACKAGE calls will exit and not populate the component list any further. This didn't break the build as the build code for tracker/nn wasn't the one being executed first.
2021-12-16many: switch from using std::unique_ptr<t>::get() to &*ptrStanislaw Halik
2021-10-23tracker/nn: Remove onnx session options which hurt performance on LinuxMichael Welter
2021-10-20tracker/nn: Remove unused functionMichael Welter
2021-09-26compat: use std::clamp, remove own versionStanislaw Halik
2021-09-26opentrack, tracker/nn: enable exceptionsStanislaw Halik
2021-09-03tracker/neuralnet: fix copying grayscale frameopentrack-2021.1.1Stanislaw Halik
It crashes later though.
2021-08-29tracker/neuralnet: fix compile-time warningopentrack-2021.1.0Stanislaw Halik
2021-08-05cmake: improve the FindONNXRuntime script and install the ONNX dllMichael Welter
* Add ONNXRuntime_DIR variable * Change target name to onnxruntime::onnxruntime following naming conventions for imported libs * Look for the DLL on windows and store it in a variable for later * Correctly define the properties of the import library * Change names and logic for global variables to follow standard conventions * Change import library type from UNKNOWN to SHARED in order to make msvc link against the .lib file, not the dll.
2021-08-02Fix include path for release packageGuillaume Dollé
* Revert include header changes * Address the following review remarks for include path https://github.com/opentrack/opentrack/pull/1306#discussion_r680548570 https://github.com/opentrack/opentrack/pull/1306#discussion_r680548755 https://github.com/opentrack/opentrack/pull/1306#discussion_r680548800 https://github.com/opentrack/opentrack/pull/1306#discussion_r680549144
2021-08-01Fix link libraryGuillaume Dollé
- Address review comment https://github.com/opentrack/opentrack/pull/1306#discussion_r680484878 - Update ONNXRuntime module to use a specific `onnxruntime` target. - Use OpenCV components instead. NOTE: ONNXRuntinme may provide their own ONNXRuntimeConfig.cmake and ONNXRuntimeVersion.cmake in the future. See https://github.com/microsoft/onnxruntime/issues/3124 for reference
2021-08-01Fix silent moduleGuillaume Dollé
2021-08-01Find ONNXRuntime using cmake modulesGuillaume Dollé
2021-05-29TrackerNeuralnet: Display inference time and all available elementsMichael Welter
Meaning informative elements like the pose gizmo and bounding boxes
2021-05-29NeuralnetTracker: Fix crash due to prediction of tiny bounding boxMichael Welter
2021-05-29Saner instructions for building ONNX Runtime for neuralnet trackerMichael Welter
2021-05-02Add a face alignment based trackerMichael Welter
Powered by AI! Models were generated with code from https://github.com/DaWelter/neuralnet-tracker-traincode/releases/tag/v0.1