Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Visage Technologies strives to minimize changes in API and configuration files when releasing new versions of the SDK. The inevitable changes are listed here, together with specific instructions for developers who have the existing applications built with older versions.

For each visage|SDK release, the incremental changes in relation to the previous release are listed. To apply the changes correctly, apply them in order from the older version to the newer version without skipping intermediary versions.

Visage Technologies strives to minimize changes in API and configuration files when releasing new versions of the SDK. The inevitable changes are listed here, together with specific instructions for developers who have the existing applications built with older versions.

For each visage|SDK release, the incremental changes in relation to the previous release are listed. To apply the changes correctly, apply them in order from the older version to the newer version without skipping intermediary versions.

...

Expand
titleNew face recognition model

The old face recognition model is being replaced by a smaller, faster and more accurate face recognition model.

Expand
titleNew face detection model

Introducing a more accurate and robust face detection model. The new model is used in face tracking and face detection when use_vnn configuration parameter is set to 1. Otherwise, the previous face detection model will be used.

Info

For more information about using VNN detection algorithm, please consult VisageTracker Configuration Manual, paragraph 2.1.Configuration parameters and VisageFeaturesDetector documentation.

...

Expand
titleuse_vnn parameter change

use_vnn configuration parameter added to VisageFeaturesDetector configuration file FaceDetector.cfg(located in Samples/data/bdstdata) and set to value 1.

Info

By default VNN algorithm will be used in VisageFeaturesDetector API by default.

use_vnn configuration parameter values changed and additional value added:

Parameter value

Effect

0

VNN algorithm is disabled, default tracking algorithm and detection model are used

1

VNN algorithm enabled in fast mode, at the cost of feature points precision

2

VNN algorithm enabled, improved precision, accuracy and robustness

Info

For detailed description of these changes, consult consult VisageTracker Configuration Manual, paragraph 2.1.Configuration parameters.

VisageTracker Configuration Manual

If you want to update your existing configuration files, it is recommended to copy the parameters values from Facial Features Tracker - Ultra.cfg configuration file supplied in this package.

...

Expand
titleData files modification

As a consequence of improving algorithms, removing in-house developed runner, and improving VNN algorithm, there are certain changes in the data files.

API

Status

Location

Files/Folders

VisageFaceRecognition

Status
colourRed
titleremoved

bdtsdata/NN/

fr.bin

VisageFaceAnalyser

Status
colourRed
titleremoved

bdtsdata/LBF/vfadata/ad/

ae.bin

VisageTracker
VisageFeaturesDetector

Status
colourRed
titleremoved

bdtsdata/NN/

pr.bin, model.bin

VisageFaceRecognition

Status
colourPurple
titleADDED

bdtsdata/FF/vnn/

fr.vino.bin, fr.vino.xml

VisageTracker
VisageFeaturesDetector

Status
colourPurple
titleADDED

bdtsdata/FF/vnn/

ff.vino.bin, ff.vino.xml

VisageTracker
VisageFeaturesDetector

Status
colourYellow
titleMODIFIED

bdtsdata/NN/vnn

bdtsdata/NN/vnn

Info

Projects using older versions of these files should be updated to contain the newest data files from the bdtsdata folder.

...

Expand
titleVisageTrackerUnityDemo switching from BGR to RGB

VisageTrackerUnityPlugin

Function _grabFrame() captures RGB image, instead of BGR image.

VisageTrackerUnityDemo

The previously used BGRATex texture shader for applying captured frame image data , was replaced with RGBATex texture shader (Tracker.cs script).

...

Expand
titleConfigurable neural network runners

To improve the performance of our algorithms and to support a wider variety of neural network models, we are introducing a configurable framework for choosing between different neural network runners.

As a result, additional configuration file NeuralNet.cfg is now included in visage|SDK (located in Samples/data). This file allows the users to configure which runner will be used by visage|SDK. Users can choose between:

  • Visage Technologies' s runner developed in-house developed runner and

  • OpenVINO™ toolkit.

For more information on the parameters of NeuralNet.cfg file see the API page.

OpenVINO is a trademark of Intel Corporation or its subsidiaries.

Expand
titleConfigurable tracking algorithm

New experimental algorithm for face tracking and alignment introduced - VNN algorithm.

For the price of slightly reduced tracking speed/performance, it significantly improves tracking quality and robustness. VisageTracker and VisageFeaturesDetector can be configured to use VNN algorithm via configuration parameter - use_vnn.

Info

For more information on use_vnn parameter, please consult VisageTracker Configuration Manual, paragraph 2.1.Configuration parameters and VisageTracker class documentation.

Tip

It is recommended to use VNN algorithm with OpenVINO™ toolkit which significantly improves the speed of running neural networks, thus mitigating any performance reductions.

OpenVINO is a trademark of Intel Corporation or its subsidiaries.

...

Expand
titleVisageConfiguration API

Introducing new C++ and C# API for programmatically changing VisageTracker configuration parameters, including new additional classes and templates:

VisageConfiguration

Modify configuration parameters on the fly

VsCfgArr

Helper template structure for storing various VisageConfiguration array data types

The aforementioned classes are used in conjunction of with new VisageTracker methods:

C++

VisageConfiguration VisageTracker::getTrackerConfiguration()

void VisageTracker::setTrackerConfiguration(VisageConfiguration &configuration)

C#

VisageConfiguration VisageCSWrapper.VisageTracker.GetTrackerConfiguration()

void VisageCSWrapper.VisageTracker.SetTrackerConfiguration(VisageConfiguration configuration)

Note

There are slight differences in usage between C++ and C#. For example, C++ API uses helper structure VsCfgArr to return specific data types where C# uses native C# types.

Info

VisageConfiguration and VsCfgArr class documentation contains more details and examples of usage in code.

Expand
titleFDP class

FDP group 10 (ears) has been extended from 10 to 24 points (12 points per ear) as part of the ear tracking feature.

Info

FDP files saved with visage|SDK 8.6 will not be backwards compatible with the previous versions due to the addition of new FDP points.

Using FDP::readFromFile() to load an 8.6 FDP file in an earlier version of the visage|SDK will lead to undefined behavior.

...

Expand
titleC# API

FeaturePoint class and FDP class have additional property and functions, respectively to conform with the C++ API.

FeaturePoint

FeaturePoint.detected

FDP

bool FDP::FPIsDetected(int group, int n)
bool FDP::FPIsDetected(String name)

Info

If 1 , indicates that the feature point is obtained from a 2D image using the tracking algorithm. 0 indicates that the feature point is estimated from fitting a 3D model onto the detected feature points of the face.

...

Expand
titleNew configuration parameter - refine_ears and use_vnn
  • refine_ears parameter added, off (0) by default. Toggles the tracking and refinement of ear points (group 10) for VisageTracker and VisageFeaturesDetector.

Info

Used together with ears 3D model - jk_300_wEars.wfm

  • use_vnn parameter added, off (0) by default. Toggles usage of the new experimental algorithm for face tracking and alignment - VNN algorithm

Info

For detailed description of these changes, consult VisageTracker Configuration Manual, paragraph 2.1.Configuration parameters.

Tip

If you want to update your existing configuration files, it is recommended to copy the parameters values from Facial Features Tracker - High.cfg configuration file supplied in this package.

...

Expand
titleEar tracking 3D model

A new model file has been added for ear tracking functionality - jk_300_wEars.wfm. The model contains an additional 334 polygons and it’s its vertices are mapped to 14 new FDP points in group 10 (10.11 - 10.24).

Info

For detailed description of these changes, consult VisageTracker Configuration Manual, paragraph 2.3.The 3D models used in tracking

...

Expand
titleUnity projects distribution changes

VisageTrackerUnityDemo sample applicationisdistributed as a Unity projectsproject, not as a prebuilt application.

Build and run instruction instructions are provided in the VisageTrackerUnityDemo sample documentation.

  •  Add link
Info

Instructions on visage|SDK integration with Unity can be found here

  •  Add link

...

Expand
titleSmoothing factors values and range
  • smoothing_factors parameter
    Due to the re-implementation of the smoothing algorithm in VisageTracker, default values and optimal ranges for this parameter have been changed in all configurations.

Info

Please consult VisageTracker Configuration Manual, paragraph 2.1.Configuration parameters for additional information.

Tip

If you want to update your existing configuration files, it is recommended to copy the parameters values from Facial Features Tracker - High.cfg configuration file supplied in this package.

...