Extract curve present in JPG image and bring it back to a 3D environment
3 views (last 30 days)
Show older comments
Hello! I have this JPG image.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1141220/image.jpeg)
I would like to extrapolate the curve present in the JPG image and bring it back to a 3D environment (plot3D). Can anyone tell me how to proceed?
1 Comment
Walter Roberson
on 30 Sep 2022
Is the assumption that this would be a circle if you were looking at it from the correct angle, and that the parts that suggest otherwise are due to it sitting on a curved surface?
Accepted Answer
Rijuta
on 23 Feb 2023
Hi Alberto,
I understand that you are trying to extract the curve from a 2D environment and plot it in 3D.
Here, the values of the third dimension(Z) are unknown. One way to solve this is by assuming a fixed value of Z co-ordinate.
To extrapolate a curve from a 2D image and plot it in 3D using MATLAB, we can follow these general steps:
- Load the image: Use the ‘imread’ function to load the JPG image into MATLAB.
- Extract the curve: Use image processing techniques to extract the curve from the image. Depending on the complexity of the curve and the image quality, we may need to use techniques such as edge detection, thresholding, morphological operations, or segmentation.
- Convert the curve to 3D: If the curve representsa 3D object, we need to convert the 2D coordinates to 3D coordinates. One way to do this is to assume a fixed z-coordinate for all points on the curve, so that weend up with a set of (x, y, z) coordinates that define the 3D curve.
- Plot the curve in 3D: Once wehave the (x, y, z) coordinates of the curve, wecan use the ‘plot3’ function to plot it in 3D.
I hope the above information has helped you answer your query.
0 Comments
More Answers (0)
See Also
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!