Changes from version 2.4:
- New check for consistency with resolution between videos and calibration data when adding a video file
- Added an option of removing calibration image sequences
- Changed calibration visualization line width
- New check for writting permission in the project folder, when pressing the track button
- Default folder locations removed from the parameter files
- Project location and calibration default folder locations are now the "Documents" folder of the user
- Calibration image location moved from the configuration structure to the calibration structure
- Calibration data files are checked for inconsistencies when imported
- Calibration window now saves the previous entered folder
- Minor corrections and improvements
Notes:
- Previous project files will not be compatible with this version.
Bug Corrections:
- The total distance in the stats is now correctly calculated
- The arena is displayed now with a not white color in the detection screen
- Fixed the problem not allowing to stop the ID algorithm in the short Fragment Step
- The video lenght updates correctly the "Finish at" Button
- Minor corrections
Improvements:
- More efficient detection algorithm, if custom filters are not applied, related parameters are not calculated, (This may correct a problem with the opencv function of fitting)
- New collision detection algorithm, based on the change of size of the detected objects, easier to configure.
- Several changes in Identity Preservation algorithm
Notes:
- Previous project files will not be compatible with this version.
Improvements:
- Updated Identity Preservation Algorithm (Current version will be submited to peer-review)
- Interface updated to match the main relevant parameters of Identity Preservation algorithm
- The user can select now different metrics for the Identity Preservation algorithm (Expert only):
--- Hist. (Histogramm correlation based, fastest algorithm)
--- 2CTM. (2 Central Texture Maps, slower, high memory use, takes in account spatial information of texture)
--- CTM. (1 Central Texture Map, similar to 2CTM with a faster performance and lower memory requirements)
--- ICM. (Intensity Contrast Map, slowest version, high memory use, not recomended for big objects) this metric has been propossed in Pérez-Escudero, A., Vicente-Page, J., Hinz, R. C., Arganda, S., & De Polavieja, G. G. (2014). idTracker: tracking individuals in a group by automatic identification of unmarked animals. Nature methods, 11(7), 743-748.)
- The user can select now different selection modes for the simmilarity metrics (Expert only):
--- Sel by Hist. (Selects the samples with a best Histogramm correlation to estimate the metric) (Uses a minimun correlation value which may affect the results)
--- Sel by Shape. (Selects the samples with a simmilar shape to estimate the metric) (Slightly slower, robust to low histogram correlations)
- The user can select now different parameters to modify the Identity Preservation Algorithm (Expert only):
--- Use Avg. Use a mean metric instead of a max simmilarity value (Recommended)
--- Use Histogramm Correlation Distributions. Uses a probablity distribution of simmilarity to normalize the metric, taking all samples into account, without reducing the speed. (Strongly Recommended)
--- Use High order Correlation. Takes in account the simmilarity with all fragments, without reducing the speed. (Recommended)
--- Allow all groups to be matched. Increases accuracy, but may lead to have a final number of tracks different to the number of individuals.
- Parallel optimization introduced in several stages of the Identity Preservation Algorithm
--- Parallelization does only affect some tasks and deppends on the configuration
--- Up to 40% of increase in speed has been obtained in the Identity Preservation Algorithm, with respect to the non-parallel version.
- Maximun number of parallel threads can be now modified on the configuration file (Limited to 100)
- If the number of threads is set to one, or if is smaller than the number of arenas, now the programm will still run using a non-Parallel implementation
- If the number of threads is set to one, the Identity Preservation Algorithm will run with a non-Parallel implementation.
- Execution time written in the Time.txt file in the project folder.
- The visualization option now rescales the output image to the clossest resolution to the origin, being a multiple of 8 (codec friendly resolution)
Notes:
- The interface will still run in a separated thread and and extra thread will still be used for reading the next frame of the video even if the number of threads is set to one
- Previous project files will not be compatible with this version.
- This is intended to be a mostly final algorithm version and configuration file format.
Improvements:
- The delete conditions of the tracking algorithm have been reduced to 2.
- The selection of the limit size for long tracks and short tracks is controlled now in the interface to avoid inconsistent parameter values.
Notes:
- This version is compatible with v2.60.
- The options avaliable in the interface had been simplified in order to disable some experimental options in the id. Algorithm
- This version has been subbmited to Methods in Ecology and Evolution
Improvements:
- The Interface has been redesigned to be compatible with a minimum resolution of 1280x800 pixels.
- The flexibility parameter has been removed from the interface in the Arena Selection.
- The Arena Selection interface windows include now a parameter to show/hide the arena borders
- The Tracking Areas of manual circular arenas are not displayed anymore outside the arena borders.
- One bug preventing some tracks to be properly deleted has been corrected.
- One bug in the automatic estimation of the suitable distance to fusion fragments has been corrected.
- One bug preventing to check some calibration files properly has been corrected.
- The default parameters have been updated.
- Updated status info to not show Fps info, when not processing frames.
- Improved Id. algorithm:
--- Similarity value updated to 1 or 0 after decision (Trying to reduce error propagation)
--- Implemented Freedman–Diaconis rule to estimate automatically the size of the Histogram.
(Activated when Histogram size set to 0)
(Uses 100 frames of video to estimate the value, simulates "before execution" estimation in real-time perspective)
(Uses the maximum found value for all the arenas and objects for every sequence)
(Displays the current histogram value)
(Includes new progress color code)
--- Implemented new Stage of the algorithm
(Tries different group configurations with the same initial data and choses the one with less unassigned frames)
(Breaks when cero error reached, displays the current number of tracks unassigned)
(Includes new progress color code)
(Costly execution time but can be deactivated)
Notes:
- This version is compatible with v2.60 and later.
Improvements:
- Corrected an error when converting images to grayscale which are already in that format
- GUI detection: A cache memory for the current frame has been implemented, so the decoding video frame is skipped when changing detection parameters
- GUI detection: Several performance improvements due to the use of the cache to skip costly checking operations
- GUI detection: Performance improvements for the change arena operation (skipping decoding video frame) and for viewing the next frame (skipping key-frame reconstruction)
- GUI detection: Now it is possible to navigate through the frames of different video files
- Minor GUI improvements in the manual calibration options
--- Shows warning when modifying automatic values for the first time.
--- Allows modifying automatic distortion values even if they do not correspond to the distortion mode selected.
- Minor fix, to avoid Histogram size estimation when it is not required.
- Minor fix, to avoid tracks smaller than the minimum specified by the user being stored in memory.
- Other minor improvements.
Notes:
- This version of the software is aimed to a future submission of the id. algorithm to a peer review journal
Some options such as the TEST algorithms are focused in allowing the reproduction of comparative results and will disappear in future releases
- Id tracking algorithms have been reordered and labels expanded, to reduce confusion from different versions. Current options are:
--- 0-No Id (Id algorithm deactivated)
--- 1-Hist. sel. by Shape (Beta) (New algorithm under development. Submission to peer review pending)
--- 2-2TCM sel. by Hist. (MEE) (Updated version of the algorithm submitted to Methods in Ecology and Evolution)
--- The options 3-8 are labeled as TEST, and consist mainly in variants of the previous ones they are used for comparative and testing reasons.
(When loading a project from an earlier version of the software this may cause a selection of a different algorithm)
- This version is compatible with v2.60 and later.
Improvements:
- Improved Id. Algorithm.
- New option to use recomended parameters for the current situation
- Time statistics are shown in (hh:mm:ss) format
- Minor corrections
Notes:
- This version is compatible with v2.60 and later.
Improvements:
- Corrected a bug, causing a crash when changing the size of the arena various times, due to not checking the size of the imageBuffer
- Corrected a bug, causing an update error when changing the arena in the detection screen
- Corrected a bug, causing the pose number not shown correctly in the interface for the calibration screen
- Corrected a bug, causing to remove last detection when interpolation was selected
- Corrected a bug, causing the aplication to crash when the number of arenas changed and the project contained previous results
- Corrected a bug, causing the change of frame of refference not to be shown in the detection preview
- Corrected a bug, causing the fussion of some short fragments at the end of their corresponding track
- Added new interpolation option, to remove gaps of a small size
- Added new interpolation option, no remove initial and final gaps
Notes:
- This version is compatible with v2.60 and later (But previous versions will not be compatible with this one).
Improvements:
- Corrected a bug, causing the fussion of some short fragments to be out of its ordered position
- Includded suport in the arena selection to disable morphological operations (Set values to 0)
- Added flexibility step, in the manual arenas.
- Added back a way to change the flexibility in the arena selection
- Updated default parameters for arena selection
Notes:
- This version is compatible with v2.60 and later
Improvements:
- Added 'Supported by Kempestiftelserna' text in the starting screen
- Corrected a bug in manual modification of distortion values
- Corrected a bug, causing the app to crash when merging more than two projects
- Corrected a bug, causing the app to crash when merging a project with manual calibration, due to not initialization of calibratorTMP unidstortMaps
- Corrected a bug in the graphical outputs, causing the visualization of individuals to not be centered in the vertical axis
- Corrected a bug causing the program to crash, when writing the excel file of a project with empty results (No detections)
- The Load video panel, shows now the previous valid location if the video is not effectively loaded
- Installation now associates project files (.tox) with ToxTrac
- Project files can now be opened with from the windows explorer
- Now ToxTrac will correctly find project, video and calibration files, if the drive name is changed
--- All files are required to be in the same drive
--- ToxTrac will not be able to find changes in intermediate folders or filenames
- If ToxTrac does not find the video or calibration files, it will try to locate them in the special folders "_Videos" and "_Calibration" in the same PATH as the .tox project file
--- ToxTrac will not be able to find changes in filenames
- The assignment algorithm will now skip some steps if the group assignments in the first step are higher than 100 in order to reduce processing time (specially avoiding the generation of new groups)
- Added stat 'Mob. Avg. Speed' (The average speed when the animal is moving, speed under the mobility limit is not counted)
- Added Population stats for zone use in the Excel File
- Added Speed Distribution and Acceleration Distribution analysis for stats of individuals and population
Notes:
- This version is compatible with v2.60 and later
Improvements:
- Corrected a bug causing the program to crash sometimes when analyzing a project after changing the start and end minutes of a sequence
- Corrected a bug causing the results to update incorrectly after changing the start and end minutes of a sequence
--- Now changing the start and end minutes of a sequence when there are already analyzed results will ask the user to proceed erasing the old results
- Corrected a bug causing a malfunction in the checkbox to enable the advanced options
- Corrected a bug when merging a project due to using the wrong videoManager in the merged results
- Corrected a bug from previous version, causing the program to crash sometimes when the number of arenas was changed
New Features:
(1) Added a new function for enable/disable the different arenas
--- (1.1) Enabled disabled arenas are saved/load from the file 'Pname_ArenaActive.txt', if the file is not found all arenas are enabled (compatible with previous versions)
--- (1.2) Automatic/Manual defined arenas can be enabled and disabled in the Arena Definition menu
--- (1.3) Disabled arenas will not show up in the excel results
--- (1.4) Enabled arenas will show in excel results with proper values if no animals are detected
--- (1.5) Population Stats uses now selected arenas with no detections to estimate:
------ (1.5.a) visible frames, invisible frames, visible time, invisible time, visible rate, invisible rate
------ (1.5.b) total distance, number of transitions
------ (1.5.c) number areas, explored areas, exploration rate
(2) Added a function to use the command line to launch the program with multiple projects
--- (1.1) Syntax: 'Toxtrac PATH1 PATH2 ... PATHN'
--- (1.2) PATH = drive:\path\Pname.tox Example: 'ToxTrac I:\Experiment\1.tox I:\Experiment\2.tox I:\Experiment\3.tox'
--- (1.3) Toxtrac will launch, open the project specified in PATH1 and merge the projects in PATH2 ... PATHN
--- (1.4) If some information is not compatible in any of the projects ToxTrac will discard results and use the configuration of PATH1
--- (1.5) If a project is fully incompatible it will automatically be skipped, no warning shown (Using the merge operation of the interface on the skipped project will display additional information)
Notes:
- This version is compatible with v2.60 and later
Improvements:
- Corrected a bug causing the application to crash when combining two projects with a different number of arenas
- Corrected a bug causing some values in the excel having a wrong format.
New Features:
(1) Added a new function to define zones of interest in the arenas with different roles
--- (1.1) A new interface allows to draw polygons and circles in arenas
--- (1.2) Available roles are:
------ (1.3.1) Add to tracking area: The selection is added to the tracking area of the arena
------ (1.3.2) Subtract to tracking area: The selection is removed from the tracking area of the arena
------ (1.3.3) Zone of interest: The program will estimate the spatial statistics of the detected animals regarding this zone, including time inside / outside the zone, or the spatial distribution according to the distance to the zone
------ (1.3.4) Starting zone: Tracking will not start till a detection in this zone occurs
------ (1.3.5) Ending zone : Tracking will end when a detection in this zone occurs (In this version the entire video will still be streamed)
--- (1.3) The arena definition and detection previews have been updated to show the tracking areas taking into account the defined zones.
--- (1.4) The configuration file Pname_Zones.txt allows to save and load the Zone data
Notes:
- This version is compatible with v2.60 and later
Improvements:
- Updated reference in the installation screen
- Added a ReadMe.txt file to the distribution with the reference to cite properly the software
Notes:
- This version is compatible with v2.60 and later
Improvements:
- "New Project" button, initializes the output folder to the local Documents folder (Overwrites .txt Configuration) and works the same as initializing the application
- Corrected bug causing a write permission error in some file systems
- Most non-standard characters in PATHs are now correctly displayed on the interface
- Improved compatibility with non-standard characters in filenames and paths
Notes:
- This version is compatible with v2.60 and later
Improvements:
- Corrected aditional typos
- Corrected a bug when calculating the virtual arena for the population.
- Added Check for vide files when Loading/Opening or Projects
Notes:
- This version is compatible with v2.60 and later
Libraries:
- LibXL 3.7.0.1 updated to LibXL 3.8.2.0
- Qt 5.6.0.0 updated to Qt 5.10.1.0
- OpenCv 3.0.0 updated to OpenCv 3.4.1
-- Changed to use only one .dll library "opencv_world341.dll"
-- Added Qt, CUDA, TBB and MKL support
-- Note: This Changes Result in a significant larger OpenCv file library
Improvements:
- Initial rework of OpenCv Windows to use Qt extended gui
-- Added support to Zoom, Save Image and Move Buttons
-- Supported Qt Close button and ENTER key Events to add new arenas or zones
- New Smoothing algorithm (Trajectory Postprocessing) Implemented
-- 3-Samples Moving Average replaced by 3-Samples Gaussian Smoothing Filter
-- A harder smoothing can be used by changing the "ana.smoo" parameter in the Configuration.txt file to 5 (5-Samples Gaussian Smoothing Filter)
Bugs:
- Attempted Fix of a Critical Bug when creating Zones in postprocessing for estimating stats of multiple videos causing a crash
- Fix for bug in drawing functions of Zones
- Corrected the Scale of some UI Elements
Notes:
- This version is compatible with v2.60 and later
Libraries:
For compatibility reasons, the main version of ToxTrac will not use CUDA, TBB and MKL support
Eventually, alternative versions of ToxTrac may be released with extended library functions
We will maintain the version that does not require CUDA, TBB and MKL as long as possible.
Improvements:
- Added Support for .mp4 video files
- Added Support to configure the analysis times from and to a particular second
Notes:
- This version is compatible with v2.60 and later
- Backwards compatibility not maintained with previous versions (due to second configuration parameters)
Improvements:
- Animal detection and arena selection allow now to select a range of color instead of using a threshold.
This allows to track animals of any color in any background with contrast, includding:
-- Track white animals in dark backgrounds
-- Track animals in IR videos
-- Track gray animals in white or black backgrounds
- Added new Zone type, "AND arena mask" that allows to easily define user shaped tracking areas
- Added Qt control panel function in zone and arena selection windows
- Added Interface function for edit anchor points in Zone Management
- Improved drawing visualization in Zone Management
- Now excel stats show the average times and frames when tracking multiple individuals
- Corrected some excel format data
- Increased max grid size to 500 (from 200)
- Corrected a bug on the stats, so the interpolated data is taken into account into the count of all stats
- Added new color and visualization parameters to file 'ColorIni.txt'
Notes:
- This version is compatible with v2.60 and later, change old zone types may be required
Bugs:
- Corrected a bug causing the statistics for the used defined zones to be estimated incorrectly in some cases.
Improvements:
- More complex polynomial geometries can be used to define zones
- Improved interface to draw zones.
Notes:
- This version is compatible with v2.60 and later, change old zone types may be required
Thank you very much for your support
Contact: o_siyeza@hotmail.com
ToxTrac website: https://toxtrac.sourceforge.io
Instruction video: https://youtu.be/RaVTsQ1JwfM
ToxTrac Guestbook: http://pub47.bravenet.com/guestbook/3993433667
Citations:
• Rodriguez, A., Zhang, H., Klaminder, J., Brodin, T., Andersson, P. L. and Andersson, M. (2018). ToxTrac: a fast and robust software for tracking organisms. Methods in Ecology and Evolution. 9(3):460–464.
• Rodriguez, A., Zhang, H., Klaminder, J., Brodin, T., and Andersson, M. (2017). ToxId: an algorithm to track the identity of multiple animals. Scientific Reports. 7(1):14774.
Bugs:
- Corrected a bug causing the visualization of the arenas not being updated sometimes.
- Corrected a bug causing the modification of the arenas not being detected sometimes.
Notes:
- This version is compatible with v2.60 and later, change old zone types may be required
Thank you very much for your support
Contact: o_siyeza@hotmail.com
ToxTrac website: https://toxtrac.sourceforge.io
Instruction video: https://youtu.be/RaVTsQ1JwfM
ToxTrac Guestbook: http://pub47.bravenet.com/guestbook/3993433667
Citations:
• Rodriguez, A., Zhang, H., Klaminder, J., Brodin, T., Andersson, P. L. and Andersson, M. (2018). ToxTrac: a fast and robust software for tracking organisms. Methods in Ecology and Evolution. 9(3):460–464.
• Rodriguez, A., Zhang, H., Klaminder, J., Brodin, T., and Andersson, M. (2017). ToxId: an algorithm to track the identity of multiple animals. Scientific Reports. 7(1):14774.
Build:
- Visual Studio 2015 C++ compiler Updated to Visual Studio 2019 C++ Compiler
- OpenCv 3.4.1 updated to OpenCv 4.2.0 (compiled from source with cmake-3.17.0)
- Qt 5.10.1.0 updated to Qt 5.14.1
- LibXL 3.8.2.0 updated to LibXL 3.8.8.2
- Installshield Limited Edition 2015 Updated to Installshield Lite 2019
- Qt VS Tools 2.0.0 updated to Qt VS Tools 2.4.3
Notes:
- This version is compatible with v2.60 and later, change old zone types may be required
Thank you very much for your support
Contact: o_siyeza@hotmail.com
ToxTrac website: https://toxtrac.sourceforge.io
Instruction video: https://youtu.be/RaVTsQ1JwfM
ToxTrac Guestbook: http://pub47.bravenet.com/guestbook/3993433667
Citations:
• Rodriguez, A., Zhang, H., Klaminder, J., Brodin, T., Andersson, P. L. and Andersson, M. (2018). ToxTrac: a fast and robust software for tracking organisms. Methods in Ecology and Evolution. 9(3):460–464.
• Rodriguez, A., Zhang, H., Klaminder, J., Brodin, T., and Andersson, M. (2017). ToxId: an algorithm to track the identity of multiple animals. Scientific Reports. 7(1):14774.
Behavioural analysis based on video recording is becoming increasingly popular within research fields such as; ecology, medicine, ecotoxicology and toxicology. However, the programs available to analyse the data, which are free of cost, user-friendly, versatile, robust, fast and provide reliable statistics for different organisms (invertebrates, vertebrates and mammals) are significantly limited check at company website
We present an automated open-source executable software (ToxTrac) for image-based tracking that can simultaneously handle several organisms monitored in a laboratory environment. We compare the performance of ToxTrac with current accessible programs on the web.
The main advantages of ToxTrac are as follows: (i) no specific knowledge of the geometry of the tracked bodies is needed; (ii) processing speed, ToxTrac can operate at a rate >25 frames per second in HD videos using modern computers; (iii) simultaneous tracking of multiple organisms in multiple arenas; (iv) integrated distortion correction and camera calibration; (v) robust against false positives; (vi) preservation of individual identification; (vii) useful statistics and heat maps in real scale are exported in image, text and excel formats.
ToxTrac can be used for high speed tracking of insects, fish, rodents or other species, and provides useful locomotor information in animal behavior experiments. Download ToxTrac here: https://toxtrac.sourceforge.io (Current version v2.61).