Rosanswers logo

Hello everyone ! I wanted to calibrate my camera ( Bus 001 Device 002: ID 058f:3881 Alcor Micro Corp.) screen I did everything that was written in this article

and tried with this video

But nothing happened

My algorithm of actions

  1. git clone image_pipeline in folder src in catkin_ws
  2. entered the folder catkin_ws then catkin_make
  3. roscore in another terminal
  4. source .devel/setup.bash
  5. rosdep install camera_calibration

until this step everything is fine

  1. then i checked what topics are running rostopic list (and now i have first trouble) i saw only
    /rosout /rosout_agg (screen) although must see /camera/camera_info /camera/image_raw

then I leave it without attention and went to the next step. In a little window picture freezes and I saw in terminal bunch of errors with title: error data jpeg or something like that Camera calibration window doesn't see images from camera

screen 1 screen 2

Edit1 ___________________________________________________________________________________

New algorithm:



alishka@alishka-HP:~$ roslaunch image_proc image_proc.launch
 ... logging to /home/alishka/.ros/log/fa2ad5b8-1f2e-11e9-8599-74e54303b47d/roslaunch-alishka-HP-6132.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

[/opt/ros/kinetic/share/image_proc/launch/image_proc.launch] requires the 'manager' arg to be set
The traceback for the exception was written to the log file

On this step I've already have a problem

  1. rosrun nodes ( Hope I done it right)

    alishka@alishka-HP:~$ rosrun image_view image_view image:="camera/camera_raw [ INFO] [1548265051.286360438]: Using transport "raw"

    alishka@alishka-HP:~$ rosrun image_view image_view image:="camera/camera_info" `[ INFO] [1548265273.871833006]: Using transport "raw"

Window freezes screen

    alishka@alishka-HP:~$ rostopic list

Edit 2

I've done camera calibration. I used a usb_cam package The whole problem was in terrible usb camera. I bought a new camera Logitech c615 and it worked perfectly

I edited cpp file where for source node was chosen video0 instead of video 1 in .launch file I did the same

Algorithm (If needed):

  1. catkin_make and catkin_make install in a catkin_ws folder 2)roscore 3)source setup.bash in catkin_ws/devel in a folder
  2. rosrun usb_cam usb_cam_node 5)rosrun camera_calibration cameracalibrator.py –size 8×6 –square 0.028 image:=/usb_cam/image_raw camera:=/usb_cam that's it Thanks to peteblackerthe3rd for help.

Originally posted by Alishka2k15 on ROS Answers with karma: 13 on 2019-01-20

Post score: 1

Original comments

Comment by NAGALLA DEEPAK on 2021-04-05:
Hi @alishka2k15, I have similar camera module as you. I am just very curious if the calibration matrix you have works for me too. Can you share the intrinsic calibration matrix that you have.



1 Answer 1


Rosanswers logo

Why are you building camera_calibration from source? It's part of the standard full installation of ROS, or you could install it using apt-get.

You describe the step

  1. rosdep install camera calibration

Then your next step is so check the topics, but you haven't actually launched any nodes yet so we wouldn't expect any topics apart from the standard roscore ones.

To use the camera calibration package you'll first need to start a node to connect to your camera and publish its images on a topic, you have to get this working before even looking at camera calibration. Then you can start on section 3.1 of the tutorial to calibrate your camera.

One last hint, saying things like

bunch of errors with title: error data jpeg or something like that

is not very helpful. Please provide a full copy any paste of any error messages in future.


Just to be clear, you're trying to determine the calibration parameters of your camera? The commands in your update are trying to run the image_proc pipeline, this is used to undistort images when you already know the camera calibration, but will not help you find that calibration in the first place.

The page you originally linked to describes the correct process for camera calibration. As stated in section 3.1 you have you start your camera driver node which you already have working then run the command:

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 image:=/my_camera/image camera:=/my_camera

To start the calibrator, updating the command so that the calibration size and shape matches the one you're using. Follow the on screen instructions and after collecting enough images you should be able to calculate and save the calibration parameters for your camera. When this process is completed then you can setup your camera node again so it is using the new calibration data then test it using the image_proc pipeline.

Hope this makes sense.

Originally posted by PeteBlackerThe3rd with karma: 9529 on 2019-01-20

This answer was ACCEPTED on the original site

Post score: 4

Original comments

Comment by Alishka2k15 on 2019-01-22:
Thank you for your helping. Your answer is very helpful ! About errors , I'll add exact errors soon. I realized my mistakes. I want to try again, can I ask you for help if something goes wrong?

Comment by PeteBlackerThe3rd on 2019-01-22:
No problem, as away that why we're here.

Comment by Alishka2k15 on 2019-01-23:
I did it again with publishing the nodes (I think) , but i can't launch image_proc. Added new edits above. What I'm supposed to do?

Comment by Alishka2k15 on 2019-01-23:
Sorry, It’s my first practice with ROS, so I can be very slow in some situations. I launched usb_cam_test and it was fine , in window I could see images from camera in real-time, so i thought that I just need to launch image_proc and some nodes , and it will be enough, but no

Comment by Alishka2k15 on 2019-02-03:
Thanks for help. Now i know more and can move on. Спасибо большое ( on Russian language) Added new edits above


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.