How to install
Main application window
Creating new project
Selecting somatoscopic features
Feature points extraction
1 Getting started
FIDENTIS is a software tool for forensic 3D facial identification. The project is based on multidisciplinary cooperation. Development is provided by two departments of Masaryk University:
FIDENTIS is an open source project released under GNU General Public License, of which a copy can be found at http://www.gnu.org/licenses/gpl.html.
1.3.1 System requirements
Nieco o poziadavkach
1.3.2 How to install
To install FIDENTIS, visit fidentis.cz and download binary files from Download section. Choose either fidentis-1.0-x86.zip if you have 32bit OS system installed, or fidentis-1.0-x64.zip if you have 64bit OS system installed.
Extract downloaded archive to your hard drive. You can then run FIDENTIS by opening fidentis.exe (or fidentis64.exe if you have 64bit version) found in /fidentis/bin.
2 User interface
2.1 Main application window
After executing the application the main window is opened. The window is divided into five parts – application menu, main toolbar, status bar, Projects dialogue, Configuration dialogue and Editor.
Application menu includes the functions and tools concerning whole application. File menu includes functions for creating, opening and saving projects, as well as exporting some of the project data (e.g. created composite model).
Opens a dialog for creating new project.
Switches the textures on the models on/off.
Editor takes up most of the main window. Upon start of the application it is filled with one tab containing so called ‘start panel’ labeled New Project. This panel is split into 4 parts, each representing one mode of the application. Users can select the mode by clicking on the corresponding part of the start panel. By doing so new project is automatically created. Each opened project is then displayed in one tab of editor. There is also always one tab containing start panel for quick creation of new projects.
Status bar is located at the bottom of the main window and serves for showing information about running processes and their progress.
Shows the tree structure of opened projects that also serves for quick navigation.
Content of this dialogue changes depending on opened mode. It includes configuration tools for given modes.
2.2 Creating new project
To work with application it is necessary to create a project. There are several ways that allow creating new projects. As described in previous part, it is possible to create new project by selecting a mode start panel in New project tab in editor. Project created this way will be labeled by current date. It is also possible to create project by clicking on icon in toolbar or by selecting New project in File menu. These actions will open the dialogue window, which requires filling out name of of the project.
After this a new tab for the project is opened in editor, again containing start panel to allow user to choose the desired mode.
2.3 Viewing models
When viewing a models in editor it is possible to rotate, zoom in and zoom out a camera. This is done by icon located in upper left corner of viewing window in editor.
It is possible to rotate camera up ▲ and down ▼ and left ◄ and right ► around the center, where a model is located. By pressing Home symbol the camera is returned to it’s original position. + and ‒ serve for zooming in and out.
3D model of human face is a basic research subject of this application. There are two ways of establishing the main facial model for each project – creating it in application or loading it from file (e.g. 3D scan of face or previously created and exported facial composite).
If the mode for the creation of the composite is chosen, the application switches to Composite mode. In this mode it is possible to create a 3D model of face by selecting characteristic somatoscopic features (facial parts such as eyes, nose, ...) and adjusting them by moving, rotating and scaling.
3.1 Selecting somatoscopic features
The lists of models of somatoscopic features is located in the right part of editor. By clicking on the icons representing facial parts you can select which the of feature you want to add, and then select the model. Models are automatically placed at the corresponding spot at model of head (if one is selected). Removing somatoscopic feature is done by selecting icon. It is also possible to filter the models by choosing the desired category from drop-down lists Age and Sex.
3.2 Adjusting models
To enable more variability it is possible to adjust the models of somatoscopic features with exception of head model, which always placed at the center and it is not possible to transform it in any way.
There are two ways of editing models ‒ by setting parameters in Configuration dialogue or interactively by mouse in editor window.
In this dialogue you can either directly enter values for size, rotation and position of the model, or edit them by spinning the values in a given fields (by clicking on ▲and ▼).
If the keep proportions is checked, the model will be resized proportionally in all directions when editing size.
If eyes, eyebrows or ears (pair models) are selected, there will also appear edit drop-down list, where it is possible to choose whether you want to edit both models or just left or right.
There are four modes for interactive editing:
View, Move, Rotate and Scale.
Switching between these modes is done by clicking on icons above the viewing window.
View ‒ in this mode it is only possible to select a model by clicking on it in viewing window. The selected model will be highlighted by white cage and the list of models on the right side of editor will automatically switch to the selected feature. You can deselect the model by clicking in the empty space around the composite in the viewing window. Same functionality is also provided in other modes.
Move ‒ When working in the Move mode, an arrow shaped gizmo will appear at the center of selected model. By clicking on the arrow and dragging it, you can move the model in the direction of selected arrow. The arrows are parallel to the global axis.
Scale ‒ This mode works similarly to Move mode. Furthermore, if the field keep proportions in Configuration dialogue is checked the model is resized proportionally in all directions.
Rotate ‒ In this mode there is a sphere shaped gizmo with three circles. Each circle serves for rotating a model around one axis - red around x axis, green around y axis and blue around z axis.
3.3 Exporting composite
When working in Composite mode it is possible to export the current model of composite to file. Currently, there are three 3D file formats supported: OBJ, STL and PLY. To export model select Export in File menu. In the dialogue window that opens fill out name and choose location where the file should be saved. You can also choose if you want to export the textures (in case of OBJ).
Fidentis software allows for several ways to perform comparison, varying from classic pair-wise comparison, through Comparison with database to Batch Comparison.
4.1 Pair-Wise Comparison
Denoted Comparison of 2 Faces, this tab allows you to perform pair-wise alignment and comparison of your faces.
4.1.1 Comparison Tab
Comparison allows user to compare main face, which can be either loaded from .stl, .ply, or .obj file, or created using composite tab, with another face, or number of faces, which are loaded from the disc. It computes the difference between two faces and returns numerical and visual representation of the result.
Current version allows to determine the difference using Hausdorff Distance algorithm, which computes the most mismatched point of main face in regards of compared face. If this distance is small enough, two faces are considered similar. It also allows user to compare faces based on Feature Points and Procrustes Analysis.
Comparison tab contains four windows. Left window contains main face, right window contains compared face. Two tabs on right allow user to customize options for comparison and see the hierarchy of his project.
4.1.2 Main Face Window
Main face window can contain either face created in composite tab, or model loaded from the disc. User can rotate the face using direction arrows in top left corner of the window and zoom in and out, using plus and minus sign in top left corner.
4.1.3 Compare Face Window and Tab
22.214.171.124 Surface - Based Comparison
Surface-Based Comparison uses whole surface of loaded meshes to determine similarity of two given faces. In this process ICP method is used for alignment and Hausdorff Distance for comparison.
Compare face window shows the result of the comparison based on parameters set in Configuration window. After processing comparison, both visual and numerical results are shown in the comparison window.
Software assigns color to each point of the mesh based on the computed Hausdorff Distance and render the face into the comparison window, thus creating visual result of comparison. Compared face is computed from colors in range from minimal color to maximum color, set in configuration tab.
126.96.36.199.1 Configuration Tab
Configuration window allows user to set parameters for comparison. Length of the computation depends on the choice of parameters. Alignment is required due to used comparison technique, in order to get the most accurate result. In order to perform Surface-Based Comparison ICP method of registration should be chosen:
Use scale, if check, allows you to scale compared to face to main one, so that their size is similar as well. Classic translation and rotation of ICP is performed as well.
Error rate serves as one of parameters to stop computation of the comparison. It allows user to set decimal value of distance between two meshes. If distance between two meshes drops below this value the computation is stopped and result is shown in comparison window.
Similarly Max iteration field allows user to set maximum number of iterations the algorithms will perform.
Once secondary face is aligned to the main one, new configuration tab appears, allowing you to pick a different method of Comparison, or return back to alignment, if you are not satisfied with the result. At this stage, you can also see main face rendered over secondary one, to give you a better sense of how well the alignment performed. You can disable this by clicking on the secondary face icon in top right corner of the Compare Face Window.
Once the comparison is performed, it is visualized in Compare Face Window and new options in Configuration Tab appear.
Options for visualisation can now be picked from the Configuration tab.
Relative/Absolute Values - determine whether computed values should have sign (Relative) or not (Absolute). If Relative values are picked, then parts of secondary face that were occluded behind main face have minus (-) sign. If Absolute values are picked, then results visualised on compare face are Hausdorff Distance values.
Since color interval from min to max is mapped on the interval of computed distances, visual representation of the result might not always be adequate. To get more apparent results, you can use Threshold slider.
(Left without threshold, right with threshold, values larger than Threshold are represented in grey)
Recompute Comparison button lets you easily recompute computed values from Absolute to Relative.
Show Numerical Results button opens a new window with computed numerical results. It shows Minimal value (Min), Maximal value (Max), Root Square Mean value (RSM), Arithmetic Mean, Geometric Mean and 75 Percentile computed from Hausdorff Distances for given pair of faces.
These results can be exported in CSV format after clicking on Export Numerical Results.
Export Visual Results allows user to export snapshot of the comparison.
Export Registered Faces allows user to export aligned secondary face and use it later on.
188.8.131.52 Feature Points-based Comparison
4.2 Compare with Database
Similarly to pair-wise comparison, Compare with Database method allows you to load main face, but instead of single secondary face, user can load several meshes they want to compare to the main face. List of loaded faces can then be seen in lower right corner, in Project tab.
4.2.1. Surface-based Comparison
Options for registration and comparison for Compare with Database method are very similar to those of pair-wise computation.
Before computing pair-wise comparison, however, software computes average face out of all the loaded secondary faces, which is then compared to main face. Final visualisation is then performed on this average face.
4.2.2 Feature points-based Comparison
4.3 Batch Comparison
Batch Comparison method allows you to load several faces and determine how much they differ one from another, but also from the average of the set.
Unlike in previous two methods, used does not pick main and secondary face in this method. Instead only one set of faces is loaded and computation is performed on it.
4.3.1 Surface-based Comparison
In alignment phase we introduce a new parameter, Average meshes, where user determines how many average faces should be computed during alignment. Once Registration starts a face is picked from loaded set to serve as initial template, and all faces in the set are aligned to it, using ICP and, if it was checked, scale. Once this is finished, a new average face is computed from aligned faces and this then serves as template in next iteration.
Average face is always rendered in main tab of the application. Once the alignment is finished, user can export mesh by clicking on Export Average Face button. If the results of alignment is satisfactory, Process Comparison will start performing comparison of faces based on Hausdorff Distance method, otherwise, user is free to get back and recompute alignment until such time they are satisfied with the result.
Final visualisation of the set is shown on the average face. It determines which parts of the faces in loaded set were the most varied (red color) and which were the most similar (fully saturated blue color).
By default Root Mean Square is picked as method of visualisation of the result, but this can be changed by picking different Method in Configuration tab and pressing Recompute Comparison button.
Similarly to pair-wise comparison, it is possible to use either Relative or Absolute values for computed distances.
As colors are interpolated between minimal and maximal computed values, it might sometimes occur that computed visualisation is not adequate. To increase the visual differences between values visualised on the average face, user can filter values that are too high by moving threshold slider, or typing in the desired value of threshold.
(Left no thresholding, Right 95% of computed values used, values that are higher than threshold are shown in grey)
Show Numerical Results allows user to see exact results of the comparison and unlike visualisation method, it determines how much each face in the set differs to all of the other faces. These values are also dependant on method chosen in Configuration tab.
Export Numerical Results button allows user to export results in CSV file.
Export Auxiliary Results button allows user to export auxiliary results, where Hausdorff Distances without applying any of methods, such as Root Mean Square, 75 Percentil etc. In this case, each face in set will have a separate CSV file exported, creating a table of size (Number of Faces) x (Number of Vertices).
Export Visual Results will allow user to export the snapshot of visualisation.
Export Registered Faces button allows user to export all the aligned faces, so that they can be used further.
Export Average Face button allows user to export average face which was used for visualisation.
4.3.2 Feature Point-based Comparison
5 Feature Points Extraction
5.1 Feature Points Extraction Tab
This module can automatically extracts facial points, which describe main features of face (eyes, nose, mouth). Computation includes registration of face, therefore does not matter on face position. In current version it is possible to extract 16 feature points.
Table of supported feature points:
Ektokantion (R, L)
bilateral point located at the lateral corner of the eye where the upper and lower eyelids meet.
Entokantion (R, L)
bilateral point, located at the medial corner of the eye where the upper and lower eyelids meet.
the most forward point, located between eyebrows in the midline.
the most deepest point on the nasal bridge in the midline.
the most protrusive point on the nasal tip in the midline.
is located in the midline - between the philtral ridges - along the vermillion border of the upper lip.
point, located along the labial fissure in the midline. When the lips are closed, locating stomion is relatively straightforward.
point in the midline along the inferior vermillion border of the lower lip.
Cheilion (R, L)
billateral point located in the corners of lips, where meets upper and lower lip.
is located at the midpoint of the labiomental groove or sulcus. Sublabiale demarcates the inferior extent of the cutaneous lower lip.
the most forward point on the chin.
Centers of eyes
billateral point on center of eyeball.
Computed points are visualized on model, represented by small colour spheres. Spheres size and colour can be changed in menu. User can show points info by clicking on the point.
Because of possible artifacts of model, not all points can be computed correctly. Therefore user can change position of computed points. It can be done simply by click on “editable” checkbox in menu, and then drag and drop point on desired position.
Point recalculation process starts with computation of extraction points. Time of computation depends on number of vertices in loaded mesh.