POV-Ray : Newsgroups : povray.newusers : Render segmented image - how? Server Time
31 Oct 2024 14:11:17 EDT (-0400)
  Render segmented image - how? (Message 1 to 8 of 8)  
From: Frank
Subject: Render segmented image - how?
Date: 22 Feb 2008 09:30:00
Message: <web.47bedb24e47a3773d2e4c6e60@news.povray.org>
I have a 3D voxel image of 256 by 256 by 256 voxels of a heart, which is already
segmented. Let's assume that the left ventricle is marked by a 1 in the image,
the right ventricle by a 2, the outside by a 0. I would like to render the
geometry in povray, with the surface of the segments smoothed out, left
ventricle in blue, right in red. I need reflection on the surface, meaning I
want to define a solid object.

I could produce a geometry file that contains lots of small boxes given with
their full dimensions, and unite them for the respective objects, or a massive
number of blobs - but that seems uneffective, and I failed to create a smooth
(!) volume from these blocks anyway.

Any suggestions? I couldn't find a simple object that does what I need. Maybe it
can be done with a density file? I tried to, but couldn't get reflections on the
surface to work.

Frank


Post a reply to this message

From: Kyle
Subject: Re: Render segmented image - how?
Date: 22 Feb 2008 11:02:22
Message: <8fstr31i1ja3f2q5ca9fnkpl5ivlk2kiho@4ax.com>
On Fri, 22 Feb 2008 09:25:20 EST, "Frank" <wue### [at] uni-muensterde> wrote:

>Any suggestions? 

How about a blob?


Post a reply to this message

From: Alain
Subject: Re: Render segmented image - how?
Date: 22 Feb 2008 12:14:47
Message: <47bf0307$1@news.povray.org>
Frank nous apporta ses lumieres en ce 2008/02/22 09:25:
> I have a 3D voxel image of 256 by 256 by 256 voxels of a heart, which is already
> segmented. Let's assume that the left ventricle is marked by a 1 in the image,
> the right ventricle by a 2, the outside by a 0. I would like to render the
> geometry in povray, with the surface of the segments smoothed out, left
> ventricle in blue, right in red. I need reflection on the surface, meaning I
> want to define a solid object.
> 
> I could produce a geometry file that contains lots of small boxes given with
> their full dimensions, and unite them for the respective objects, or a massive
> number of blobs - but that seems uneffective, and I failed to create a smooth
> (!) volume from these blocks anyway.
> 
> Any suggestions? I couldn't find a simple object that does what I need. Maybe it
> can be done with a density file? I tried to, but couldn't get reflections on the
> surface to work.
> 
> Frank
> 
> 
> 
You can use that as a density pattern usine a color_map set with the correct 
values. Apply that pattern to an emissive media.
This method will give you a transparent volumetric rendering: you will see the 
interior. As there is no real surface, you won't reflect anything. It's like 
trying to get a reflection on some gaz.

You can scan the data and create a blob. Place a small sphere component for all 
non-zero voxels. Each blob components will receive a pigment depending on the 
value of the voxel they represent. If the inside of the cavities are zero as the 
exterior, they will be open. Experiment with the threshold value, and the 
components radius and strength until you get an acceptable result.
The resulting object can be made reflective. You won't see the internal parts.

You can combine both: Make the blob, make it transparent with some reflection in 
the finish, add "hollow" and fill it with some media modulated with the density 
file.

-- 
Alain
-------------------------------------------------
Presbyterian: This shit was bound to happen.


Post a reply to this message

From: Frank
Subject: Re: Render segmented image - how?
Date: 22 Feb 2008 13:10:00
Message: <web.47bf0fa85defef6f402ca5f10@news.povray.org>
Thank you! That's exactly what I needed. I hadn't understood the concept of
Blobs.

Frank


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Render segmented image - how?
Date: 22 Feb 2008 14:51:39
Message: <47bf27cb$2@news.povray.org>
Frank wrote:
> I hadn't understood the concept of Blobs.

Don't worry about it, the suggestion was completely wrong for your problem.

	Thorsten, POV-Team


Post a reply to this message

From: Frank
Subject: Re: Render segmented image - how?
Date: 22 Feb 2008 17:15:01
Message: <web.47bf487b5defef6fd2e4c6e60@news.povray.org>
Thorsten Froehlich <tho### [at] trfde> wrote:
> Don't worry about it, the suggestion was completely wrong for your problem.
Interesting. Is there anything you'd suggest, then?

Thank you, Frank


Post a reply to this message

From: Mike Williams
Subject: Re: Render segmented image - how?
Date: 22 Feb 2008 23:06:29
Message: <w79ncjHNr5vHFwqh@econym.demon.co.uk>
Wasn't it Frank who wrote:
>I have a 3D voxel image of 256 by 256 by 256 voxels of a heart, which 
>is already
>segmented. Let's assume that the left ventricle is marked by a 1 in the image,
>the right ventricle by a 2, the outside by a 0. I would like to render the
>geometry in povray, with the surface of the segments smoothed out, left
>ventricle in blue, right in red. I need reflection on the surface, meaning I
>want to define a solid object.
>
>I could produce a geometry file that contains lots of small boxes given with
>their full dimensions, and unite them for the respective objects, or a massive
>number of blobs - but that seems uneffective, and I failed to create a smooth
>(!) volume from these blocks anyway.
>
>Any suggestions? I couldn't find a simple object that does what I need. 
>Maybe it
>can be done with a density file? I tried to, but couldn't get 
>reflections on the
>surface to work.

Have you tried using your density file to drive an isosurface? That will 
produce an actual surface that can have a reflective finish. I don't 
know if it will do smoothness.

See: http://www.econym.demon.co.uk/isotut/patterns.htm#density

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Frank
Subject: Re: Render segmented image - how?
Date: 23 Feb 2008 02:15:01
Message: <web.47bfc7765defef6f26eb43d10@news.povray.org>
Mike Williams <nos### [at] econymdemoncouk> wrote:
> Have you tried using your density file to drive an isosurface? That will
> produce an actual surface that can have a reflective finish. I don't
> know if it will do smoothness.
Yes! That's the easiest way without having to create the external blobs. I
overlaid the segmented image over the original CT - looks great.

Thanks to all for the quick help.

Frank


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.