项目作者: robotical

项目描述 :
Face, eye and smile tracking over ROS
高级语言: C++
项目地址: git://github.com/robotical/marty_face_tracker.git
创建时间: 2017-06-23T17:18:12Z
项目社区:https://github.com/robotical/marty_face_tracker

开源协议:

下载


marty_face_tracker

Face, eye and smile tracking over ROS using OpenCV.

Note: a camera is required.

Installation

To install, simply clone this repo into your workspace’s .../src folder and compile using catkin_make.

Once done, run the launch file: roslaunch marty_face_tracker face_tracking.launch.

Configuration

The file face_tracking.launch contains several parameters which can be modified:

  1. video_output
  2. face_classifier
  3. eye_classifier
  4. smile_classifier

The first, video_output, is a boolean value defining whether Marty publishes visualisation of the tracking being performed, such as a rectangle being drawn on a detected face. Setting this to true will tell Marty to advertise these topics and vice-versa.

The next three define the classifier to use when attempting to detect a certain feature. Bundled in the package within .../classifiers are a selection of some pre-made open source classifiers. Creating your own is possible, though outwith the scope of this package. To change the classifier, simply change the filename defined within these parameters.

This launch file also loads a separate parameter file, detection_params.yaml, which defines the parameters used within the package’s feature detection methods. Take a look at the comments within this file for further clarification.

Topics

Publishers:

  1. Video:
  2. /marty/face_tracking/faces
  3. /marty/face_tracking/smiles
  4. /marty/face_tracking/eyes
  5. Co-ordinates:
  6. /marty/face_tracking/faces_centroid
  7. /marty/face_tracking/smiles_centroid
  8. /marty/face_tracking/eyes_centroid

The format of the co-ordinate message are three x-y-z arrays of floats, defining the centroid co-ordinate of detected features.

  1. float32[] x
  2. float32[] y
  3. float32[] z

For example, the co-ordinates of the first face would be at x[0], y[0], z[0] and so on.

This is defined within CentroidMsg.msg, within the marty_msgs package.

Subscribers:

  1. /marty/camera/image