magazino / pylon_camera

ROS-Driver for Basler Cameras
BSD 3-Clause "New" or "Revised" License
78 stars 108 forks source link

Very low frame rate in ROS #67

Open RGring opened 2 years ago

RGring commented 2 years ago

Hi, I have the a2A 1920-160ucBAS. I made all my settings in the pylon viewer and loaded the custom user set. In the pylon viewer, I get a FPS of around 150.

When I run the camera with the default settings, I get a super low framerate of only ~3.3. I would like to get a FPS of 30.

Here the logging when the camera starts.

SUMMARY
========

PARAMETERS
 * /pylon/camera_frame: camera_link
 * /pylon/camera_info_url: 
 * /pylon/device_user_id: 
 * /pylon/enable_current_params_publisher: True
 * /pylon/enable_status_publisher: True
 * /pylon/frame_rate: 30.0
 * /pylon/gige/mtu_size: 1500
 * /pylon/image_encoding: rgb8
 * /pylon/shutter_mode: global
 * /pylon/startup_user_set: CurrentSetting
 * /rosdistro: melodic
 * /rosversion: 1.14.10

NODES
  /
    pylon (pylon_camera/pylon_camera_node)

auto-starting new master
process[master]: started with pid [8049]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 5f87ba20-f43e-11eb-a05f-803253f0b437
process[rosout-1]: started with pid [8061]
started core service [/rosout]
process[pylon-2]: started with pid [8064]
[ WARN] [1627983430.598945296]: Autoflash: 0, line2: 1 , line3: 1 
[ INFO] [1627983430.599907126]: No Device User ID set -> Will open the camera device found first
[ INFO] [1627983430.912784193]: Found camera with DeviceUserID : a2A1920-160ucBAS
[ WARN] [1627983431.243624701]: No User Set Is selected, Camera current setting will be used
[ INFO] [1627983431.249538957]: Cam supports the following [GenAPI|ROS] image encodings: ['Mono8'|'mono8'] ['Mono12'|'mono16'] ['Mono12p'|'NO_ROS_EQUIVALENT'] ['RGB8'|'rgb8'] ['BGR8'|'bgr8'] ['YCbCr422_8'|'NO_ROS_EQUIVALENT'] ['BayerRG8'|'bayer_rggb8'] ['BayerRG12'|'bayer_rggb16'] ['BayerRG12p'|'NO_ROS_EQUIVALENT'] 
[ WARN] [1627983431.338918721]: [] name not valid for camera_info_manager
[ INFO] [1627983431.367113432]: CameraInfoURL needed for rectification! ROS-Param: '/pylon/camera_info_url' = '' is invalid!
[ WARN] [1627983431.367213801]: Will only provide distorted /image_raw images!
[ INFO] [1627983431.370467192]: Startup settings: encoding = 'rgb8', binning = [1, 1], exposure = 5000, gain = 0.0208343, gamma = 1, shutter mode = global
[ INFO] [1627983431.370934833]: Start image grabbing if node connects to topic with a frame_rate of: 30 Hz
[ INFO] [1627983431.371208085]: Camera not calibrated

When I subscribe to the image topic via "rostopic hz /pylong/image_raw", I get only these values.

subscribed to [/pylon/image_raw]
average rate: 3.565
    min: 0.270s max: 0.286s std dev: 0.00715s window: 4
average rate: 3.326
    min: 0.270s max: 0.323s std dev: 0.02079s window: 7
average rate: 3.300
    min: 0.270s max: 0.337s std dev: 0.02161s window: 10
average rate: 3.280
    min: 0.270s max: 0.337s std dev: 0.01954s window: 13
average rate: 3.301
    min: 0.270s max: 0.337s std dev: 0.01963s window: 16
average rate: 3.304
    min: 0.251s max: 0.337s std dev: 0.02285s window: 20

Any ideas how to solve the problem?