Package Summary

Tags No category tags.
Version 0.0.5
License MIT
Build type CATKIN

Repository Summary

Checkout URI
VCS Type git
VCS Version master
Last Updated 2024-05-05
CI status No Continuous Integration
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The image_recognition_openface package

Additional Links

No additional links.


  • Rein Appeldoorn


No additional authors.


Face recognition with use of Openface (



Make sure that openface is correctly installed. Installation instructions can be found here: Make sure you have installed CUDA8. CUDA10 is not working:

export TORCH_INSTALL_PATH=~/torch
export OPENFACE_INSTALL_PATH=~/openface
git clone ~/torch --recursive && \
cd $TORCH_INSTALL_PATH && bash install-deps && ./ && \
for NAME in dpnn nn optim optnet csvigo cutorch cunn fblualib torchx tds; do $TORCH_INSTALL_PATH/install/bin/luarocks install $NAME; done && \
sudo -H pip install dlib && \
cd $OPENFACE_INSTALL_PATH && sudo -H python install && \


ROS Node

Run the image_recognition_openface node in one terminal (Specify the dlib and openface_net path as ROS parameter):

rosrun image_recognition_openface face_recognition_node

Run the rqt annotation client (

rosrun image_recognition_rqt annotation_gui

Setup the service by clicking the gear wheel in the top-right corner. Select the /annotate services exposed by the openface ros node. Also don't forget to set-up your labels.


Now draw a rectangle around the face you would like to learn. The face recognizer will find the biggest face in the image and store a representation for this face.


Now select the label and you will see that the openface ros node stores the face (console output node):

[INFO] [WallTime: 1478636380.407308] Succesfully learned face of 'rokus'

Learn as many faces as you want ..

Next step is starting the image_recognition_Rqt test gui (

rosrun image_recognition_rqt test_gui

Again configure the service you want to call with the gear-wheel in the top-right corner of the screen. If everything is set-up, draw a rectangle in the image and ask the service for detections:


You will see that the result of the detection will prompt in a dialog combo box. Also the detections will be drawn on the image.

Command line

Command line interface to test the detection / recognition based on an image:

usage: get_face_recognition IMAGE [-k ALIGN_PATH] [-s NET_PATH] [-v]

Run the command on an example image:

rosrun image_recognition_openface get_face_recognition `rospack find image_recognition_openface`/doc/example.png

This will lookup this image in the image_recognition_openface/doc folder and perform recognitions



[RecognizedFace(roi=(374, 188, 108, 123), l2_distances=[]), RecognizedFace(roi=(72, 147, 88, 105), l2_distances=[]), RecognizedFace(roi=(377, 95, 74, 86), l2_distances=[]), RecognizedFace(roi=(149, 26, 74, 86), l2_distances=[]), RecognizedFace(roi=(52, 47, 75, 86), l2_distances=[]), RecognizedFace(roi=(246, 115, 88, 102), l2_distances=[]), RecognizedFace(roi=(0, 0, 42, 60), l2_distances=[]), RecognizedFace(roi=(336, 33, 74, 86), l2_distances=[]), RecognizedFace(roi=(228, 0, 62, 60), l2_distances=[])]

Since no faces were trained, the l2_distances will not be calculated of-course.


^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package image_recognition_openface ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

0.0.5 (2019-06-08)

  • Installation instructions openpose / openface + model download
    • Added installation instructions openpose + model dowload
    • Added installation instructions openface + model download
    • Added download script for model
  • Added catkin lint to all packages
  • Correctly store and publish images on parameters
  • refactor package xml to 2.0
  • rename ROS pkgs with image_recognition_prefix
  • Contributors: Rein Appeldoorn

0.0.4 (2017-02-07)

0.0.3 (2017-02-07)

  • fix(): Add targets install for scripts
  • Add python-numpy run dependency
  • Contributors: Matthijs van der Burgh, Rein Appeldoorn

0.0.2 (2017-01-17)

0.0.1 (2017-01-17)

  • Added image recognition util to support labeled and raw writing of image in predefined folder structure
  • Update
  • added images
  • Update Added cli doc
  • added example image
  • Create
  • Documentation
  • Fixed ROI bounds
  • Moved funtionality to src and added cmd line tool
  • tmp folder defaults to /tmp/openface
  • Working annotation gui and test gui for both image_recognition_tensorflow object recognition and image_recognition_openface face recognition
  • Working of openface ros node with image_recognition api
  • added packages openface ros and skybiometry ros
  • Contributors: Rein Appeldoorn

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found


No message files found.


No service files found


No plugins found.

Recent questions tagged image_recognition_openface at Robotics Stack Exchange