Hi Ron,
Sounds like a very interesting project. The short answer is "yes",
and "yes."
Caveat #1. In 3D Slicer, anatomic structures are described
using labelmaps. In a labelmap, an image voxel can only belong to one
structure. This is in conflict with DICOM RT, where a voxel could be
contained within many structures. You can workaround, such as
creating multiple 3D Slicer labelmaps, but I guess you should
consider this limitation before you proceed.
Caveat #2. When importing DICOM RT into 3D slicer, your
structure colors and names will be lost. If you need to
preserve these, for example re-typing them is infeasible, I can
help you work around this problem.
Greg
--
Greg Sharp, PhD
Department of Radiation Oncology
Massachusetts General Hospital
The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.
--
*******************************************************************************************
Marta Peroni
PhD Student - Bioengineering department - Politecnico di Milano (IT)
contacts:
mail: marta....@mail.polimi.it , mpe...@partners.org , mpe...@csail.mit.edu
mobile: +393488202136 (ITA) +16178186365 (USA)
office: +39 02 2399 9022 (ITA) +16177266329 (USA)
*******************************************************************************************
How comfortable are you in compiling the program and running the
command line?
I just added the capability to export to 3D slicer color table,
which will preserve the colors and structure names. You will
need to update to the latest source code from svn.
Assuming the rtss and ct volume are in the same directory,
you may try the following command:
plastimatch convert --input your_dicom_directory --output-labelmap
labelmap.nrrd --output-colormap colormap.ctbl
-Greg
--
You received this message because you are subscribed to the Google Groups "Plastimatch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to plastimatch...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hi Marta,
Good to hear from you. SlicerRT properly maintains the names and colors
of structures. You should upgrade your version. :)
Dear Ange,
What do you mean “not working”? You might look in the Error Log.
Also, please tell me which version of Slicer/SlicerRT.
Greg
The information in this e-mail is intended only for the person to whom it is
Hi Elizabeth,
It is my impression that the conversion from DICOM-RT to STL is a “lossy” operation.
Do you think this could be the cause? A screenshot or two would help.
I also cc to Slicer users email list who might know.
Greg
From: Elizabeth Watt [mailto:elizabet...@gmail.com]
Sent: Tuesday, September 02, 2014 5:04 PM
To: plast...@googlegroups.com
Cc: Sharp, Gregory C.
Subject: Re: [Plastimatch] Importing DICOM-RT from Eclipse to 3D Slicer
Hi everyone,
I also have a question along a similar thread to those previously posted. I am using 3D Slicer with the RT extension to import structure sets from Eclipse and generate STL files, such that these structures can be imported into SolidWorks and ultimately 3D printed/milled. I've been noticing, however, that the volumes of the structures changes when I import them from Eclipse, and the factor by which the values change is inconsistent between structures within the same patient and between patients. Any advice on how to combat this issue?
Thanks very much,
Elizabeth
Hi Elizabeth,
Indeed, this process is lossy, but even worse, it is different in every TPS and research tool. We are trying to address this issue, see [1] for further info and tracking its progress.
We are also improving the SlicerRT importer, to avoid as much data loss as possible, see [2].
In a nutshell, I think a few percent mismatch should be OK for most structures (you might get considerable differences in small ones such as optic organs), as TPSs have got FDA with significantly different importers and rasterizers, but also you should see a big improvement in the SlicerRT importer soon, hopefully decreasing the mismatch, and a full evaluation report in the medium term too (MSc project about it starts about now).
csaba
ERROR: In ..\..\..\VTKv6\Common\ExecutionModel\vtkDemandDrivenPipeline.cxx, line 710
vtkCompositeDataPipeline (0000000024487880): Input port 0 of algorithm vtkImageMapToColors(00000000117970F0) has 0 connections but is not optional.
Do you have any suggestion?
Thank you
Silvia
Hi Silvia
Welcome to medical physics. :)
This issue is better discussed on the slicer user list.
I have not seen this error, but maybe others have.
Meanwhile, I would ask you to try creating a simple test labelmap
using the editor, and then generating the STL from that.
Do you get an error in that case?
Also, I ask you to tell us which Slicer version you are using.
I recommend to use a recent nightly build.
Greg
--
You received this message because you are subscribed to the Google Groups "Plastimatch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
plastimatch...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
The information in this e-mail is intended only for the person to whom it is
Hi Csaba,
Just to be clear, one cannot do the following workflow
Contour -> Labelmap -> Model -> STL
?
Greg
From: Csaba Pinter [mailto:csaba....@queensu.ca]
Sent: Friday, January 30, 2015 9:56 AM
To: Sharp, Gregory C.; slicer...@bwh.harvard.edu
Cc: plast...@googlegroups.com
Subject: RE: [slicer-users] [Plastimatch] Re: Importing DICOM-RT from Eclipse to 3D Slicer
Hi Silvia,
Labelmaps cannot be saved to STL, models on the other hand can (STL is a vertex-based format, not voxel-based).
You'll need to convert your contours to contain closed surface representation, see
http://www.slicer.org/slicerWiki/index.php/Documentation/4.4/Modules/Contours
Then (this part is a bit sketchy, because we don't have GUI for this operation yet) you'll need to extract the models from the contours, using the python interactor, like this (please change the node names to match yours):
contour = getNode('Bladder_Contour')
surface = contour.GetClosedSurfacePolyData()
surfaceCopy = vtk.vtkPolyData()
surfaceCopy.DeepCopy(surface)
surfaceCopy.GetNumberOfPoints()
modelNode = slicer.vtkMRMLModelNode()
modelNode.SetName(contour.GetStructureName())
modelNode = slicer.mrmlScene.AddNode(modelNode)
polyDataProducer = vtk.vtkTrivialProducer()
polyDataProducer.SetOutput(surfaceCopy)
modelNode.SetPolyDataConnection(polyDataProducer.GetOutputPort())
displayNode = slicer.vtkMRMLModelDisplayNode()
slicer.mrmlScene.AddNode(displayNode)
displayNode.VisibilityOn()
modelNode.SetAndObserveDisplayNodeID(displayNode.GetID())
This script uses a contour node with a specific name. If you want to do this for all contours, then just iterate over the vtkMRMLContourNode nodes in the scene, like this:
allContours = slicer.util.getNodes('vtkMRMLContourNode*')
for contour in allContours.values():
surface = contour.GetClosedSurfacePolyData()
...
I wanted to defer implementing this feature until the new implementation is ready (we're working on a completely new version for contour handling), but this is requested so often nowadays that I should probably just do it.
Let me know how it goes!
csaba
It should be possible, yes, but then I am not the right person to help, as I'm not familiar with the labelmap->model converter internals, only the Contour internals.
csaba
_______________________________________________
slicer-users mailing list
slicer...@bwh.harvard.edu
http://massmail.spl.harvard.edu/mailman/listinfo/slicer-users
To unsubscribe: send email to slicer-use...@bwh.harvard.edu with unsubscribe as the subject
http://www.slicer.org/slicerWiki/index.php/Documentation/4.3/FAQ