Converting 2D Image coordinate to 3D World coordinate

31 vues (au cours des 30 derniers jours)
Abhishek Tiwari
Abhishek Tiwari le 5 Avr 2023
I have an image in PNG format with dimensions (N x M) and a specific point (x, y) within the image, I need determine the corresponding 3D world coordinate of this point using MATLAB.

Réponse acceptée

Amit Dhakite
Amit Dhakite le 10 Avr 2023
Hi Abhishek,
As per my understanding, you have a specific point in a PNG format image and you want to convert it into 3D world coordinate system.
In order to get the required coordinates, you need to estimate the intrinsic and extrinsic parameters of the camera used to capture the image.
To calculate intrinsic parameters, cameraIntrinsics() can be used. You can calculate extrinsic parameters using rotationMatrix and translationVector. Once, you have all the necessary data, you can use triangulate() to construct world coordinates.
worldPoints = triangulate(imagePoints, extrinsics, intrinsics);
To know more about the functions used above, kindly refer to the following links:
  1. cameraIntrinsics(): https://www.mathworks.com/help/vision/ref/cameraintrinsics.html
  2. triangulate(): https://www.mathworks.com/help/vision/ref/triangulate.html

Plus de réponses (0)

Produits


Version

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by