eidelen / DicomToMesh

A command line tool to transform a DICOM volume into a 3d surface mesh (obj, stl or ply). Several mesh processing routines can be enabled, such as mesh reduction, smoothing or cleaning. Works on Linux, OSX and Windows.
MIT License
451 stars 93 forks source link

Could not find package configuration of "Dicom" #24

Closed bharath-sub closed 1 year ago

bharath-sub commented 4 years ago

hello, I have built vtk-dicom by dgobbi successfully and after that when i am trying to build dicomtomesh, am getting an error of not able to find DICOMconfig.cmake file. The thing is, after i built vtk-dicom, the file DICOMconfig.cmake should have been made but its not, so I am not able to understand how do i get that file?

I have built vtk-dicom exactly the way it was mentioned by dgobbi and also as mentioned in the dicomtomesh.

plss help!

eidelen commented 4 years ago

Hi, Another user, Moritz Moeller, wrote a small summary about vtk-dicom and dicom2mesh: https://github.com/AOT-AG/DicomToMesh/issues/14#issuecomment-443224034 Just for your information: DicomToMesh works also without vtk-dicom. However, there will be fewer support for Dicom formats.

bharath-sub commented 4 years ago

hello, thank u for your reply, I have built vtk-dicom exactly according to the solution mentioned by Moritz Moeller also which u have put up a link in the readme file and the build of vtk-dicom is successful. After that when I build dicomtomesh using vtk-dicom, it shows me a error of not able to find the configuration file of dicom that is DICOMconfig.cmake, that is its not able to find the DICOM_DIR. So i searched for that config file in vtk-dicom to mention its directory in DICOM_DIR and its not there so thats y i dont know where the mistake is or y that file its not being made through cmake?

thanks for that info that dicomtomesh can also work without vtk-dicom, i will make it work like that but i am just trying to build dicomtomesh to be compatible to all formats of dicom(compressed files too) so thats y trying to understand where its going wrong.

Anyways if this doesnt work, i will build dicomtomesh without vtk-dicom as u mentioned.

eidelen commented 4 years ago

Hi again :)

With the command ccmake you can read and edit your projects' cmake parameters. Likely, your DICOM_DIR does not point to the build directory of vtk-dicom. Could you please check that?

 ...
 DICOM_DIR                        /Users/eidelen/dev/libs/vtk-dicom/build                                                                                                                                           
 USE_VTK_DICOM              ON         
 ...
bharath-sub commented 4 years ago

hello, thank u again for the reply, I just tried the way u said and its still giving me the same error.

""""" Could not find a package configuration file provided by "DICOM" with any of the following names:

DICOMConfig.cmake
dicom-config.cmake """"""

The thing is, the build directory of vtk-dicom needs to contain the file DICOMconfig.cmake and then if i mention this path in DICOM_DIR it will work but here the case is that there is no file such as DICOMconfig.cmake in the build directory of vtk-dicom thats y even if i mention the path of the build directory of vtk-dicom, it gives me the error of not able to find the dicomconfig file.

eidelen commented 4 years ago

Then its seems to be an issue of vtk-dicom. Even though I am not involved in this project, maybe I can help you by showing a subset of my vtk-dicom cmake configuration.

 BUILD_SHARED_LIBS                ON                                                                                                                                                                             
 CMAKE_BUILD_TYPE                 RELEASE                                                                                        
 USE_DCMTK                        OFF                                                                                            
 USE_GDCM                         OFF                                                                                            
 USE_ITK_GDCM                     OFF                                                                                            
 USE_SQLITE                       ON                                                                                             
 VTK_DIR                          /Users/eidelen/dev/libs/VTK/build                                                              

Is the BUILD_SHARED_LIBS on? My vtk-dicom build directory looks like the following

CMakeCache.txt
CMakeFiles
DICOMConfig.cmake
DICOMConfigVersion.cmake
DICOMTargets.cmake
DartConfiguration.tcl
Makefile
Source
Testing
UseDICOM.cmake
cmake_install.cmake
lib

I am using the vtk-dicom version v0.8.7

bharath-sub commented 4 years ago

Hello, Thank u so much for ur reply,

Now i am getting the file DICOMconfig.cmake when i downloaded ur version of vtk-dicom that is v0.8.7 and dicomtomesh is also built successfully. I think there is a problem with the current version of vtk-dicom which is v0.8.12, where the config files of dicom are not being made in build directory after build.

eidelen commented 4 years ago

I will have a look at the new version of vtk-dicom.

eidelen commented 4 years ago

Hi again, I checked with the newest version of vtk-dicom (master, commit 3ac3bb23f11a4feb659a8804f41697066c83d837, May this year) and it worked. Maybe there was some other issue before.

bharath-sub commented 4 years ago

Hello,

Just one thing, can u tell me after building the latest version of vtk-dicom, was the DICOMconfig.cmake file in the build directory of vtk-dicom?

if u dont mind, can u show me ur build directory of vtk-dicom?

eidelen commented 4 years ago

Hi, I just ran into the same problem when using the newest VTK, v. 9.0.0, together with the newest vtk-dicom version. No DICOMconfig.cmake file. I have to do some further investigations.

issacclee commented 3 years ago

Hi, I just ran into the same problem when using the newest VTK, v. 9.0.0, together with the newest vtk-dicom version. No DICOMconfig.cmake file. I have to do some further investigations.

Hi Eidelen, I ran into the same problem, did u manage to solve it?

eidelen commented 3 years ago

Unfortunately not. My assumption is that it is a vtk-dicom issue. Here is a temporary solution mentioned - I didn't try it myself. https://github.com/microsoft/vcpkg/pull/12839

BTAROCKET commented 3 years ago

Hi,I used the xx.dcm format as input, but still got the same problem. I want to konw what is the input format. Could you help me ? Thanks a lot.

Input directory: /root/wrp/CT Output file path: mesh.stl Surface segmentation: 557 Mesh reduction: disabled Mesh polygon limitation: disabled Mesh smoothing: disabled Mesh centering: disabled Mesh filtering: disabled Volume cropping: disabled

Using standard DICOM loader Read DICOM images located under /root/wrp/CT Progress: done

Create surface mesh with iso value = 557 Progress: 0.0%ERROR: In /build/vtk6-VHOYAG/vtk6-6.3.0+dfsg1/Filters/Core/vtkMarchingCubes.cxx, line 417 vtkMarchingCubes (0x55a866404970): Cannot contour data of dimension != 3

Progress: done

No mesh could be created. Wrong DICOM or wrong iso value

eidelen commented 3 years ago

Hi, Sorry for my late answer. It seems that your DICOM is not a volume. Also, often there are several image data sets in one DICOM. Would it be possible to send me a sample? Thx, Adrian

eidelen commented 1 year ago

@bharath-sub I am closing this issue. Feel free to reopen it. Thx, Adrian