How to fill the holes in 3D image reconstructed from binary images of CT slides
    3 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Ringo Cheung
 am 22 Jan. 2018
  
    
    
    
    
    Bearbeitet: Ringo Cheung
 am 26 Apr. 2018
            I have around 200 CT slides from patients and need to reconstruct them and segment out the eye orbit. I read the original DICOM image, use imbinarize(I,T) to change them to binary image, and then stack them up to form the 3D orbital image (see attached images below).



However, as you can see, there are many holes inside the orbit. To cope with this, I use bwmorph() with 'thicken' and 'bridge', then use imclose() with the 'disk' parameter:
for i = 30 : 160  
    info = dicominfo(dirOutput(i).name,'UseDictionaryVR',true);
    imgTemp = dicomread(info);
    imgCropped = imcrop(imgTemp,bboxCrop);
    imgCroppedBin = imbinarize(imgCropped,0.51728);
    img_thick = bwmorph(imgCroppedBin,'thicken');
    img_bridge = bwmorph(img_thick,'bridge',Inf);
    se = strel('disk',1);
    I(:,:,i) = imclose(img_bridge,se);
end;
I(:,:,i) is the resulting 3D array. Then I use fv = isosurface(I,ISOVALUE) and patch() to reconstruct the 3D array to a 3D image (as attached above).
The resulting 3D image still has many holes unfilled. Increasing the STREL element size or decreasing the ISOVALUE will make the final model thick and coarse (e.g. with stair case inside).
May I ask how can I fill the resulting holes in the 3D model and still preserve the original smoothness of the image? Should I do this in the 3D image or do this in 2D binary image before the reconstruction?
Thanks!
0 Kommentare
Akzeptierte Antwort
  Matt J
      
      
 am 22 Jan. 2018
        It might help to look at some of these Examples with alphaShape. Basically, if you tune the alpha radius right, I think you might be able to plug the holes.
16 Kommentare
  Sean de Wolski
      
      
 am 25 Jan. 2018
				You can use the alphaSpectrum to identify the largest radius below what you'd expect that to be.
Weitere Antworten (0)
Siehe auch
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





