PeTrack merge requestshttps://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests2023-11-08T09:39:48+01:00https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/308Enable loading in videos from Hermes-Experiments2023-11-08T09:39:48+01:00d.kilicEnable loading in videos from Hermes-ExperimentsThis MR enables PeTrack to again load in videos from Hermes, that is Stereo-Videos from Point Grey's Bumblebee camera.
This MR does **not enable full stereo functionality** (e.g. the background subtraction does not work again). Most ste...This MR enables PeTrack to again load in videos from Hermes, that is Stereo-Videos from Point Grey's Bumblebee camera.
This MR does **not enable full stereo functionality** (e.g. the background subtraction does not work again). Most stereo functionality was not tested at all.
This MR does reintroduce:
- Reading PtGrey avi files
- calculating disparities (only tested with OpenCV SGBM; best method according to Maik's thesis, p. 147)
- drawing disparities
@a.kandler would this be enough for the documentation of the experiments?
**NOTE**: Changing anything about the edge mask (size or enabled/disabled) leads to a crash; leave it as is (out of scope for this MR)
Notes to the reviewer:
- This MR also changes files in the 3rd-party repo, remember to run `git submodule update`, if your IDE does not do that automatically
- The functionality is important in this MR; code quality should be improved in another MR (else this MR is going to be really large, because of the volume of the code)
- STEREO is Windows only (we use the windows-header to read in AVI-files)
- [x] Merge 3rd-party repo branch into its master and update reference here
Related #37
# Reviewer Checklist
## Formatting
- [ ] the pre-build checks succeed
## General code quality
- [ ] naming conventions are met (see .clang-tidy for detailed information)
- [ ] no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
## General usability
- [ ] old versions of pet-files are still loadable
## Only if changes in UI
- [ ] new elements are also saved and loaded from pet-file
- [ ] check if tab order is still correct
- [ ] all new SpinBoxes are promoted
- [ ] new keybindings added to `Petrack::keyBindings()`https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/282Deleted unused class-member: camValues, distValues, isExtCalib2023-06-16T13:35:33+02:00ar.grafDeleted unused class-member: camValues, distValues, isExtCalibremoved unused and moved one member to be local to a function, readability slightly decreased
# Reviewer Checklist
## Formatting
- [x] the pre-build checks succeed
## General code quality
- [ ] naming conventions are met (see .clang-...removed unused and moved one member to be local to a function, readability slightly decreased
# Reviewer Checklist
## Formatting
- [x] the pre-build checks succeed
## General code quality
- [ ] naming conventions are met (see .clang-tidy for detailed information)
- [x] no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
## General usability
- [x] old versions of pet-files are still loadable
## Only if changes in UI
- [x] new elements are also saved and loaded from pet-file
- [x] check if tab order is still correct
- [x] all new SpinBoxes are promoted
- [x] new keybindings added to `Petrack::keyBindings()`https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/281Replace TrackPerson inheritance with composition2023-05-31T09:27:48+02:00Schrödter, TobiasReplace TrackPerson inheritance with compositionRemove the inheritance from `TrackPerson` in favor of composition, this allows a better handling of interactions with the `TrackPerson` as changes now go through defined interfaces.
Main changes:
- `TrackPerson` no longer **is** a `QLis...Remove the inheritance from `TrackPerson` in favor of composition, this allows a better handling of interactions with the `TrackPerson` as changes now go through defined interfaces.
Main changes:
- `TrackPerson` no longer **is** a `QList<TrackPoints>`
- `TrackPerson` now **has** a `QList<TrackPoints`
- new function `deleteFrameRange` which will delete a range of frames, but leaving no gaps in the middle
- `lastFrame` is now compute and not stored, hence no need to update it
- `firstFrame` is set when creating a `TrackPerson` and will be updated when needed automatically
# Reviewer Checklist
## Formatting
- [ ] the pre-build checks succeed
## General code quality
- [ ] naming conventions are met (see .clang-tidy for detailed information)
- [ ] no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
## General usability
- [ ] old versions of pet-files are still loadable
## Only if changes in UI
- [ ] new elements are also saved and loaded from pet-file
- [ ] check if tab order is still correct
- [ ] all new SpinBoxes are promoted
- [ ] new keybindings added to `Petrack::keyBindings()`1.0.0https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/277changed File-Extension Check to be Qt::CaseInsensitive2023-05-02T10:33:57+02:00ar.grafchanged File-Extension Check to be Qt::CaseInsensitiveChanged Fileextension Checks to be Qt::CaseInsensitive.
Closes #317
# Reviewer Checklist
## Formatting
- [x] the pre-build checks succeed
## General code quality
- [x] naming conventions are met (see .clang-tidy for detailed informa...Changed Fileextension Checks to be Qt::CaseInsensitive.
Closes #317
# Reviewer Checklist
## Formatting
- [x] the pre-build checks succeed
## General code quality
- [x] naming conventions are met (see .clang-tidy for detailed information)
- [x] no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
## General usability
- [x] old versions of pet-files are still loadable
## Only if changes in UI
- [x] new elements are also saved and loaded from pet-file
- [x] check if tab order is still correct
- [x] all new SpinBoxes are promoted
- [x] new keybindings added to `Petrack::keyBindings()`1.0.0https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/271Resolve "Make autosave parameters accessible via GUI"2023-04-19T09:22:05+02:00Schrödter, TobiasResolve "Make autosave parameters accessible via GUI"Closes #336
# Reviewer Checklist
## Formatting
- [x] the pre-build checks succeed
## General code quality
- [x] naming conventions are met (see .clang-tidy for detailed information)
- [x] no static analyzer warnings in new code part...Closes #336
# Reviewer Checklist
## Formatting
- [x] the pre-build checks succeed
## General code quality
- [x] naming conventions are met (see .clang-tidy for detailed information)
- [x] no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
## General usability
- [x] old versions of pet-files are still loadable
## Only if changes in UI
- [x] new elements are also saved and loaded from pet-file
- [x] check if tab order is still correct
- [x] all new SpinBoxes are promoted
- [x] new keybindings added to `Petrack::keyBindings()`1.0.0https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/264Remove TIME_MEASUREMENT macro2023-03-01T09:33:15+01:00Schrödter, TobiasRemove TIME_MEASUREMENT macroCloses #120
# Reviewer Checklist
## Formatting
- [ ] the pre-build checks succeed
## General code quality
- [ ] naming conventions are met (see .clang-tidy for detailed information)
- [ ] no static analyzer warnings in new code part...Closes #120
# Reviewer Checklist
## Formatting
- [ ] the pre-build checks succeed
## General code quality
- [ ] naming conventions are met (see .clang-tidy for detailed information)
- [ ] no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
## General usability
- [ ] old versions of pet-files are still loadable
## Only if changes in UI
- [ ] new elements are also saved and loaded from pet-file
- [ ] check if tab order is still correct
- [ ] all new SpinBoxes are promoted
- [ ] new keybindings added to `Petrack::keyBindings()`1.0.0https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/199Resolve "GridItem can be moved without being shown"2022-05-30T13:23:35+02:00l.dressenResolve "GridItem can be moved without being shown"Closes #297Closes #297l.dressenl.dressenhttps://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/183ROI to full image and adjust to other ROI2022-03-30T16:27:35+02:00Schrödter, TobiasROI to full image and adjust to other ROIAdded new buttons to set the ROI size to full image and adjust it according to other ROI size and positions. When adjusting automatically our best practice hold: tracking ROI > recognition ROI
The new interface looks like:
![image](/u...Added new buttons to set the ROI size to full image and adjust it according to other ROI size and positions. When adjusting automatically our best practice hold: tracking ROI > recognition ROI
The new interface looks like:
![image](/uploads/06ee896704be0cac79fa0d0f413e1fad/image.png)
The automatically determined ROI looks like (tracking was source):
![image](/uploads/3688b40ffc003de4a18e624f2a1972c2/image.png)
Closes #271https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/166Apply rule of five to fix deprecation warning2022-01-31T16:24:29+01:00Schrödter, TobiasApply rule of five to fix deprecation warningCloses #258Closes #258https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/162Open MoCap file selection dialog in last used dir2022-01-31T16:24:27+01:00d.kilicOpen MoCap file selection dialog in last used dir`when a new MoCap object is created (+) directly open a file browser` was already implemented, so this MR implements the remaining point.
> remember the last folder name when adding an object, so that there is often no need of navigatio...`when a new MoCap object is created (+) directly open a file browser` was already implemented, so this MR implements the remaining point.
> remember the last folder name when adding an object, so that there is often no need of navigation
Closes #243https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/107Reformat project with clang-format2022-01-31T16:24:24+01:00Schrödter, TobiasReformat project with clang-format- adds clang-format file to project (can be discussed here)
- add helper scripts for checking the format and applying the format
- reformat the whole repo (cpp source files)
Note: Add note in final commit message, that this is the wrong...- adds clang-format file to project (can be discussed here)
- add helper scripts for checking the format and applying the format
- reformat the whole repo (cpp source files)
Note: Add note in final commit message, that this is the wrong commit when checking git blame.
Closes #13CroMa LargeScale Experimentshttps://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/38Resolve "Remove commented code"2022-01-21T11:05:35+01:00d.kilicResolve "Remove commented code"Removed commented code, at some points TODO were added to mark parts which may need further discussions.
Closes #20Removed commented code, at some points TODO were added to mark parts which may need further discussions.
Closes #20https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/106Replace constants with constexpr2021-05-11T16:25:46+02:00Schrödter, TobiasReplace constants with constexprCloses #159Closes #159https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/103Set marker color according to color used in threshold i.e. selected color whe...2021-05-11T15:43:22+02:00d.kilicSet marker color according to color used in threshold i.e. selected color when using MulticolorMarkerInstead of calculating the color of the marker, as is neccessary for the casern marker, we now choose the middle color of the subspace we search in. E.g. when we search for orange beanies, we just say that every found beanie is orange, w...Instead of calculating the color of the marker, as is neccessary for the casern marker, we now choose the middle color of the subspace we search in. E.g. when we search for orange beanies, we just say that every found beanie is orange, without actually querying pixel values. This still works, since the detection itself is already color based.
This mitigates issues with e.g. the combined aruco- and multicolor-marker.
Closes #89https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/98Add missing const qualifier with clang-tidy2021-03-23T16:45:16+01:00Schrödter, TobiasAdd missing const qualifier with clang-tidyUsed the automatic fixes from clang-tidy.
One of the clang-tidy warnings from #157Used the automatic fixes from clang-tidy.
One of the clang-tidy warnings from #157https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/92Clean up includes2021-03-10T16:37:30+01:00Schrödter, TobiasClean up includes- remove unused includes
- change deprecated includes
- change to system include when needed
Not sorted the includes right now, this should be done when formatting the project with clang-format (or similar).
Closes #34- remove unused includes
- change deprecated includes
- change to system include when needed
Not sorted the includes right now, this should be done when formatting the project with clang-format (or similar).
Closes #34https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/77Resolve "Delete obsolete markerColor.cpp/.h"2021-01-29T12:38:52+01:00d.kilicResolve "Delete obsolete markerColor.cpp/.h"Closes #125Closes #125https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/81Fix deletion of RegisteredApplication RegValues2021-01-29T10:43:04+01:00d.kilicFix deletion of RegisteredApplication RegValuesThe Registry Values in all RegisteredApplication Keys get properly deleted now.
Also `HKCU\Software\Forschungszentrum Juelich GmbH` is deleted if it only has one entry (which then is `PeTrack`). If it has multiple entries, i.e. some oth...The Registry Values in all RegisteredApplication Keys get properly deleted now.
Also `HKCU\Software\Forschungszentrum Juelich GmbH` is deleted if it only has one entry (which then is `PeTrack`). If it has multiple entries, i.e. some other software was installed under the same registry key, only `HKCU\Software\Forschungszentrum Juelich GmbH\PeTrack` gets deleted.
Closes #131https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/73Implemented aruco marker visualization with offset2021-01-26T15:35:03+01:00d.kilicImplemented aruco marker visualization with offsetImplementing visualiation of aruco markers with (and without) offset.
Little note: CodeMarker and Multicolor with code detect different markers in TdN-dataset. Maybe we should look into that...
Closes #71Implementing visualiation of aruco markers with (and without) offset.
Little note: CodeMarker and Multicolor with code detect different markers in TdN-dataset. Maybe we should look into that...
Closes #71https://jugit.fz-juelich.de/ped-dyn-emp/petrack/-/merge_requests/71Delete obsolete brightFilter and contrastFilter2021-01-06T08:35:57+01:00d.kilicDelete obsolete brightFilter and contrastFilterDeletes BrightFilter and ContrastFilter, which were replaced by the BrightContrastFilter
Closes #84Deletes BrightFilter and ContrastFilter, which were replaced by the BrightContrastFilter
Closes #84