plot 2d image into cylindrical 3d image

I have multiple 2d images . I want to plot them into cylindrical coordinate such as each image is plot with a degree increment in circular form to make a 3d circle .
can anyone help me

댓글 수: 1

Ignacio Alcala
Ignacio Alcala 2023년 6월 5일
Hello Alina, Did you solve your problem ? I would be really interested if you could share the solution please.
Cordially, Ignacio Alcala

댓글을 달려면 로그인하십시오.

답변 (2개)

Akira Agata
Akira Agata 2023년 6월 5일

2 개 추천

How about the following?
% Image data
I = imread("sherlock.jpg");
% Create cylinder
[X, Y, Z] = cylinder;
% Mapping the image on the cylinder
figure
h = surface(X, Y, Z);
h.FaceColor = 'texturemap';
h.EdgeColor = 'none';
h.CData = flipud(I);
view(3)
box on

댓글 수: 5

Ignacio Alcala
Ignacio Alcala 2023년 6월 5일
Hello Akira,
Thank you for your response. In my case I would just like to know how to place 2D imaged in a 3D space with a certain degree spacement between them. This because the images that I have have the same center so at the end they would make sort of a discontinued 3D cylinder.
The images dimensions are 102x128.
Any ideas ?
Thank you for the clarification.
If my understanding is correct, how about the following?
% Create 102x128 image
I = imread("sherlock.jpg");
I = imresize(I, [102, 128]);
% Create rectangle verticles
[xGrid, zGrid] = meshgrid([0 127], [0, 101]);
% 2D images in 3D space
figure
for kk = 1:12
h = surface(xGrid, zeros(2), zGrid);
h.FaceColor = 'texturemap';
h.EdgeColor = 'none';
h.CData = flipud(I);
rotate(h, [0 0 1], 30*(kk-1), [0 0 0]);
end
view(3)
box on
Ignacio Alcala
Ignacio Alcala 2023년 6월 7일
Good Afternoon Mr.Akira,
I thank you for your response it helped me a lot.
Could it be possible to take the middle point of all the images as the rotation axis? In fact all the images that I have to rotate share the same middle point, this means that the middle of all my images are the same, what changes is the peripherical region of the images(that is why I want to use this method to make sort of a 3D cylindrical volume). This means that all the images intersect with the middle point of all the other images.
I would really appreciate if you could please help me with this one.
Akira Agata
Akira Agata 2023년 6월 16일
편집: Akira Agata 2023년 6월 16일
Good afternoon @Ignacio Alcala,
Sorry for my late response.
Based on the first half of your message, I assumed the expected image looks like the following image.
But the second half of your message might tell a different story.
Could you tell us how the expected output looks like?
Ignacio Alcala
Ignacio Alcala 2023년 6월 16일
Good Morning @Akira Agata,
I thank you for your response. Here a schema of what I ideally want to achieve.
One extra information, every image represents a thickness of 400 µm, is there a way that every image represents this thickness in the 3D rotation plan ?
Please let me know if you have further questions.
I thank you again for all your help and time.
Cordially,
Ignacio Alcala

댓글을 달려면 로그인하십시오.

Caleb
Caleb 2023년 7월 7일

0 개 추천

Hey Ignacio,
Did you ever find a solution on how every image could represent the defined thickness in the 3D rotation plan of two images?

카테고리

도움말 센터File Exchange에서 Convert Image Type에 대해 자세히 알아보기

질문:

2018년 5월 25일

답변:

2023년 7월 7일

Community Treasure Hunt

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

Start Hunting!

Translated by