Skip to content

Feature Release 2019

Compare
Choose a tag to compare
@Tobias-Fischer Tobias-Fischer released this 30 Dec 12:46
· 165 commits to master since this release

We are very happy to announce version 3.0 of RT-GENE!

This release contains some major improvements over the previous version:

  1. New head pose estimator
    1.1. RT-GENE now uses the 3DDFA landmark extractor as opposed to the face-alignment package because of the increased speed (note that we change the code so that Python 2 is still supported for use in ROS) - credits to @ngageorange
    1.2. There was a bug in the head pose estimation which is now fixed as well (see 9cde812 and 9fbbd39).
    1.3. Unstable head poses over time are fixed, too (see #30)
  2. We refactored the code to disentangle ROS-independent code from ROS-specific code (#37)
    2.1. This allows us to provide an easy-to-use standalone (non-ROS) version of the code
    2.2. To facilitate this, we provide a helper script to download all required model files (this was done using ROS catkin scripts before)
    2.3. The ROS-specific code now makes use of tf2 rather than tf.
    2.4. The ROS version now properly installs the Python scripts (#45)
  3. Inference speed improvements - massive thanks to @ngageorange (see #34)
    3.1. Inference in batches rather than per subject for landmark extraction as well as gaze estimation.
    3.2. Run ensembles in parallel, so that running the 4-model ensemble is now very fast, too.
  4. Tensorflow 2.0 compatibility - we now use the tf.keras API instead of using keras directly and make sure that the code is compatible with both Tensorflow 1.14 as well as 2.0 (see #40).
  5. We provide helper scripts to run RT-GENE from video files or ROS-bag files (9b9678d).
  6. We prettified the README files and fixed the list of dependencies
  7. The script's output is now in colour.

Breaking changes compared to RT-GENE v2.1:

These changes are all in the estimate_gaze.launch file; if you do not modify this, the new version should run straightaway. Please make sure to catkin build again if you use ROS after updating to v3.0.

  1. rename rgb_frame_id to ros_tf_frame in estimate_gaze.launch file, the transform publisher is now in start_webcam.launch. The frame itself is now called kinect2_ros_frame rather than kinect2_nonrotated_link.
  2. interpupillary_distance is now set via dynamic_reconfigure rather than in the estimate_gaze.launch file
  3. SequentialTracker is deprecated; to achieve a similar behavior use FaceEncodingTracker with a large face_encoding_threshold (see estimate_gaze.launch file)