13 votes
Accepted

Hand Eye Calibration

After solving the problem, I created a keynote presentation explaining many details about hand eye calibration for those that are interested. Practical code and instructions to calibrate your robot ...
user avatar
7 votes
Accepted

Why do 3-axis accelerometers seemingly have a left-handed coordinate system?

The answer is that 3-axis accelerometers don't have a left handed coordinate system just for the gravity. In static condition (i.e. if the accelerometer is not accelerating with respect to any ...
user avatar
7 votes
Accepted

Why do we generally prefer DH parameters over other kinematic representations of robot arms?

I have been doing a lot of reading up on kinematic calibration and here is what I found: From [1]: A kinematic model should meet three basic requirements for kinematic-parameter identification: ...
4 votes

Why do we generally prefer DH parameters over other kinematic representations of robot arms?

The link, What are the advantages of using the Denavit-Hartenberg representation?, in Paul's comment provides a correct synopsis. Additional, practical benefits are: DH provides a guaranteed minimal ...
user avatar
4 votes
Accepted

Inverse kinematics after calibration

The analytic inverse kinematics solutions you found do depend on those $0$ terms in your transformation matrices. Those values are, as you've implied, based on the $0$ and $90$ degree values for the ...
user avatar
  • 4,326
4 votes

Why are two cameras mounted in paralle in stereo application?

Each camera needs to be defined by 6 variables (3 position, 3 orientation). This would mean that during the calibration process, a solver needs to find 12 variables. As this is done usually with an ...
user avatar
4 votes
Accepted

Practicality of using magnetometer inside AUV

Mags are used in almost all UAVs. It will be useful and it will be a unique source of information. Adding a some shielding between the mag and your computers and power lines will greatly reduced the ...
user avatar
  • 1,825
3 votes

Accelerometer calibration - how to get cross-axis sensitivities

I realize this question is 2 years old, but I have direct recent experience with this. The way I did this is with 6 rotated cube positions with 1000 points at each position, so a total of 6000 ...
user avatar
3 votes

Are stereo camera calibration data standardized?

The short answer is no. You can use the XML output file within OpenCV's ecosystem (and ROS), but there are no standard formats for calibration. The issue is not coming up with a standard. Camera ...
user avatar
3 votes
Accepted

Question about Lens distortion

You can only say that the distorted image coordinates are in the range (0-240, 0-180), since that's the image you are starting with. Typically you assume the dimensions of the undistorted image as ...
user avatar
  • 1,522
2 votes

Stereo camera baseline not needed for calibration?

The baseline is an output parameter of the calibration. What the calibration needs to know is the size of your calibration object. How it works is to find the transformation between the two views, and ...
user avatar
  • 2,954
2 votes
Accepted

3D Magnetometer calibration algorithm

We always need a reference for calibration to which we calibrate our sensor. For example in case of 3D accelerometer we use gravity as a reference which is assumed vertically downwards at a place. ...
user avatar
  • 633
2 votes

Calculate object distance with camera

Think of it this way, cameras measure angles. Each pixel tells you the angle between the camera's central axis and the object/corner/etc shown at that pixel. So if you know real-world dimensions of ...
user avatar
  • 2,689
2 votes

FreeIMU External Magnetometer

OK so I managed to solve this by doing a couple of things. Connect external magnetometer to the same I2C bus as the FreeIMU. The FreeIMU is 5V and the external magnetometer is 3.3V so I had to use a ...
user avatar
2 votes

Gauss Newton Method for Accelerometer calibration

$J^T \times J$ is an approximation to the Hessian which comes from the Levenberg Marquardt Algorithm. It is a least-squares approach, and seems to be used frequently in a variety of optimization ...
user avatar
  • 4,326
2 votes

Wheel Odometry Covariance Matrix for Custom Robot

The covariance matrix of the control inputs is measured and known. That is, following the EKF equations on this page, the covariance of the control, $Q$ is (often) a diagonal matrix, where the ...
user avatar
2 votes
Accepted

OpenCV get topdown view of planar pattern by using intrinsic and extrinsic from cameraCalibrate

Added OK, guys, simple mistake. I previously used warpPerspective to warp images instead of restoring. Since it works that way, I didn't read the doc thoroughly. It turns out that if it is for ...
user avatar
2 votes

How is gyroscope bias exposed and tracked?

I think you're confused. The method you're talking about would only really work if you know the magnitude and orientation of the accelerations you're trying to measure. If that's the case, then why ...
user avatar
  • 14.7k
2 votes
Accepted

Calibrating Logitic C920 HD 1080p using ros kinetic

Based on rostopic list I realized the correct name of camera: /usb_cam instead of /camera so the command changed to ...
user avatar
1 vote

Why are two cameras mounted in paralle in stereo application?

Making them parallel is beneficial for reducing distortion after a rectification. We usually rectify two images for a fast matching. If speed is not your concern you can skip the rectification stage.
user avatar
  • 1,375
1 vote

normalized point coordinates in undistortPoints function

http://docs.opencv.org/2.4/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html, this link maybe helpful. Here is my answer based on that. 1.What does normalized point coordinates means? ...
user avatar
  • 111
1 vote

Calibrating a laser scanner to a line camera

I converted my comments to an actual answer: If I understand your setup correctly, you're saying you have a line scan camera mounted to the top of the rotating head of a laser scanner, and all you're ...
user avatar
  • 14.7k
1 vote

Correct Fish eye camera radial distortion and blurry stretch at the image edges

How I can I include more FOV in the corrected image at the edges, where the information is lost? -> Just try to modify fx and fy of your intrinsic matrix. Maybe, multiplying a scalar to K(0,0) and K(...
user avatar
  • 1,375
1 vote

Correct calibration parameters of stereo system due to vibrations

You could use g2o library for this. With it you can make a graph whose nodes are estimates of some states (point positions in 3d, point positions on images, extrinsic calibration parameters) and edges ...
user avatar
1 vote

setup requirement of stereo camera

If you glue two cameras to a wooden board, and then write your code with the assumption that your translation matrix is perfectly or really close to [1, 0, 0], once the cameras are slightly displaced, ...
user avatar
  • 1,091
1 vote

Effect of camera misalignment errors in dual cameras

Because each have diferent reasons (and so can be helped/worsened in different ways). And the calibration will help only in specific setup and needs be done differently for different setups. The ...
user avatar
  • 443
1 vote

Wheel Odometry Covariance Matrix for Custom Robot

Josh, thank you for your help! From my understanding it seems that a basic process for determining the velocity covariance matrices of a 3D (X,Y, Theta) robot with N wheels would then be (please ...
user avatar
1 vote
Accepted

Discontinuity in device orientation

Something's not right, either with your test, your conversion, or with the device itself. If you look at your graph of heading, pitch, and roll, you can see that heading rotates through 360 degrees, ...
user avatar
  • 14.7k
1 vote

Camera Calibration fails to run on ROS

Install OpenCV-Python, it will solve the import cv2 error. You can refer the following link for installation, Install OpenCV-Python in Windows.
user avatar
1 vote

PTAM CameraCalibrator error

Use the camera_calibration package. It's supported in all distributions. The package you're using looks pretty old.
user avatar
  • 1,825

Only top scored, non community-wiki answers of a minimum length are eligible