FishEye Params Camera Corrector
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi, I'm using Camera Calibration, specifically the fisheye option. Intrinsic and extrinsic parameters are generated. Which of them should I use to perform the correction of an image? In addition, within these, different ones are generated, which ones in particular should I use to create a script to apply it to other images?
2 commentaires
Isaac Rose
le 9 Nov 2022
The intrinsic parameters should be used for undistorting images, as shown in the example here:
As for your second question, can you please clarify what you mean by “different ones are generated”? Are you referring to different intrinsic and extrinsic parameter matrices that are given by separate calibrations, or the different parameters held within the matrix?
It would also be helpful if you can describe what you are trying to achieve overall – are you simply trying to undistort a set of images? Are you using a checkerboard of known dimensions for calibrating a single camera?
Réponses (1)
Isaac Rose
le 10 Nov 2022
All of the parameters within the intrinsic parameter matrix are used for undistorting any image. This matrix is used to apply a coordinate transformation on the pixels in the distorted images, thereby undistorting them. Once you estimate the intrsinics from a reliable calibration, you can use this estimate to undistort other images.
Are you using the “undistortFisheyeImage” function to undistort your images? If so, you shouldn’t need to specify which elements within the intrinsic matrix to use: you can simply pass the “Intrinsics” property of the estimated fisheye parameters as an argument to this function. This assumes that you are specifying your camera model as “Fisheye” in the Camera Calibrator App. This documentation helps explain what is contained in a “fisheyeIntrinsics” object:
3 commentaires
Isaac Rose
le 14 Nov 2022
After exporting the camera parameters variable to the workspace, I would recommend saving this to a '.mat' file by executing the following command:
>> save camcalib.mat cameraParams
You can then copy the generated .mat file to the same folder as your undistortion script using your file explorer and load the variable each time you run your script with the following line of code:
load('camcalib.mat')
You can then retrieve the camera instrinsics from the loaded variable in your script, i.e.:
cameraIntrinsics = cameraParams.Intrinsics;
Voir également
Catégories
En savoir plus sur Camera Calibration dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!