[ITK-users] SimpleITK JAVA ImageSeriesReader and PatchBasedDenoisingImageFilter and 4d images
ivan
ivan.granata.na at gmail.com
Thu Oct 6 08:32:21 EDT 2016
hi
can anyone help me how to write ImageSeriesReader in Java with simple itk
i wolud read a dicom series in a path and after apply a
PatchBasedDenoisingImageFilter
if possible i would work also with 4d image (multicomponent filter)
thx
this is my code
import org.itk.simple.*;
import java.util.Vector;
class PatchBasedDenoisingImageFilter {
public static void main(String argv[]) {
if ( argv.length < 5 ) {
System.out.println("Immetti prima: <input_img> <patch_radius> <smoothness>
<patch_number> <noise_sigma> <output_img>");
return;
}
org.itk.simple.ImageSeriesReader reader = new
org.itk.simple.ImageSeriesReader();
VectorString inputdicom = new VectorString();
inputdicom.toString(argv[0]);
reader.setFileNames(inputdicom);
//reader.setVectorString (argv[0]);
//reader.setFileNames(inputdicom);
Image img = reader.execute();
System.out.println(img.getDimension());
org.itk.simple.PatchBasedDenoisingImageFilter filter = new
org.itk.simple.PatchBasedDenoisingImageFilter();
filter.getAlwaysTreatComponentsAsEuclidean ();
boolean setKBE = false;
filter.setKernelBandwidthEstimation ( setKBE );
//filter.getKernelBandwidthUpdateFrequency ();
//filter.getKernelBandwidthFractionPixelsForEstimation ();
//filter.getKernelBandwidthMultiplicationFactor ();
//filter.getKernelBandwidthSigma ();
filter.setNoiseModel(org.itk.simple.PatchBasedDenoisingImageFilter.NoiseModelType.GAUSSIAN);
filter.getNumberOfIterations (); //cablato
filter.getSampleVariance ();
filter.setPatchRadius ( Long.valueOf ( argv[1] ).longValue() );
filter.setNoiseModelFidelityWeight ( Double.valueOf ( argv[2]
).doubleValue() );
if ( argv.length < 5 ) filter.getNumberOfSamplePatches ();
else filter.setNumberOfSamplePatches ( Long.valueOf ( argv[3] ).longValue()
);
if ( argv.length < 6 )
filter.getNoiseSigma ();
else filter.setNoiseSigma (Double.valueOf ( argv[4] ).doubleValue() );
Image blurredImg = filter.execute(img);
CastImageFilter caster = new CastImageFilter();
caster.setOutputPixelType( img.getPixelIDValue() );
Image castImg = caster.execute( blurredImg );
ImageFileWriter writer = new ImageFileWriter();
writer.setFileName(argv[5]);
writer.execute( castImg );
}
}
}
--
View this message in context: http://itk-users.7.n7.nabble.com/ITK-users-SimpleITK-JAVA-ImageSeriesReader-and-PatchBasedDenoisingImageFilter-and-4d-images-tp37645.html
Sent from the ITK - Users mailing list archive at Nabble.com.
More information about the Insight-users
mailing list