[Documentation] [TitleIndex] [WordIndex

Package Summary

Point Grey (FLIR) Spinnaker based camera driver (Blackfly S etc.)

Getting Started

These are the ros drivers for running the Pt Grey (FLIR) cameras that use the Spinnaker SDK. This code has been tested with various Point Grey Blackfly S (BFS) cameras.

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.


The pre-requisites for this repo include:

# after installing spinnaker verify that you can run your cameras with SpinView
# after installing ros, install other pre-requisites with:
sudo apt install libunwind-dev ros-kinetic-cv-bridge ros-kinetic-image-transport


To install the spinnaker drivers:

bash mkdir -p ~/spinnaker_ws/src cd spinnaker_ws/src
git clone https://github.com/neufieldrobotics/spinnaker_sdk_camera_driver.git
cd ~/spinnaker_ws/
source ~/spinnaker_ws/devel/setup.bash
# add this to ~/.bashrc to make this permanent

Running the drivers

Modify the params/test_params.yaml file replacing the cam-ids and master cam serial number to match your camera's serial number. Then run the code as:

roslaunch spinnaker_camera_driver acquisition.launch

# Test that the images are being published by running rqt_image_view


The node that runs the spinakker sdk and exports to ROS. All the parameters can be set via the launch file or via the yaml config_file. It is good practice to specify all the 'task' specific parameters via launch file and all the 'system configuration' specific parameters via a config_file.

Published Topics

camera_array/cam0/image_raw (sensor_msgs/Image) camera_array/cam0/camera_info (sensor_msgs/CameraInfo)


~binning (int, default: 1) ~color (bool, default: false) ~exp (int, default: 0) ~frames (int, default: 50) ~live (bool, default: false) ~live_grid (bool, default: false) ~save (bool, default: false) ~save_path (string, default: "~") ~save_type (string, default: bmp) ~soft_framerate (int, default: 20) ~time (bool, default: false) ~to_ros (bool, default: true) ~utstamps (bool, default: false) ~max_rate_save (bool, default: false) ~cam_ids (array, default: []) ~cam_aliases (array, default: []) ~master_cam (int, default: )
  • This is the serial number of the camera to be used as master for triggering the other cameras
~skip (int, default: 20)
  • Number of frames to be skipped initially to flush the buffer
~delay (float, default: 2.0)
  • Seconds to wait in the deinit/init sequence
~distortion_model (string, default: plumb_bob)
  • Distortion model for the camera calibration.
~distortion_coeffs (array of arrays, default:
) ~intrinsic_coeffs (array of arrays, default: )
  • Intrinsic coefficients of all the cameras in the array. Must match the number of cam_ids provided. Specified as [fx 0 cx 0 fy cy 0 0 1]

2019-08-17 13:17