Adjust Label after resampling medical volume

4 views (last 30 days)
I resampled a medical volume (nifti) following these instructions:
ctFile=medicalVolume('E:\git\maskRCNN\norm\LD\case_00167.nii.gz');
targetVoxelSize=[3.11 1.59 1.59];
ratios = targetVoxelSize ./ ctFile.VoxelSpacing;
origSize = size(ctFile.Voxels);
newSize = round(origSize ./ ratios);
origRef = ctFile.VolumeGeometry;
origMapping = intrinsicToWorldMapping(origRef);
tform = origMapping.A;
newMapping4by4 = tform.* [ratios([2 1 3]) 1];
newMapping = affinetform3d(newMapping4by4);
newRef = medicalref3d(newSize,newMapping);
newRef = orient(newRef,origRef.PatientCoordinateSystem);
newCTFile = resample(ctFile,newRef,Method='linear');
write(newCTFile,"E:\git\maskRCNN\norm\LD\case_00167");
ctFile is an image with Voxels 512x512,103 , taken from the kits19 challenge (https://github.com/neheller/kits19/tree/master/data)
However, the label (also a nifti file) that marked a organ on the original image (ctFile), does not mark the same area on the new, resampled image (newCTFile). I assume I need to tranform the label too. How do I do that?
  1 Comment
cr
cr on 14 Nov 2022
Please consider providing more information like data sizes, code etc for community to be able to understand and possibly answer.

Sign in to comment.

Accepted Answer

Harsha
Harsha on 18 Nov 2022
Hi Odo Luo
Consider the Labels Nifti files also as a medical volume and apply all the transformations(that are performed on the CT file) as given in the link mentioned by you.

More Answers (0)

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!