def make_compare_images(image, reference_file, tolerance=0.1): reader = imagereader.vmtkImageReader() try: datadir = os.path.join( os.path.dirname( os.path.dirname( os.path.realpath(__file__))), 'vmtk-test-data', 'imagereference') if not os.path.isdir(datadir): raise ValueError() except ValueError: datadir = os.path.join( os.path.dirname( os.path.dirname( os.path.dirname( os.path.dirname( os.path.realpath(__file__))))), 'vmtk-test-data', 'imagereference') if not os.path.isdir(datadir): raise ValueError('the vmtk-test-data repository cannot be found at the same level as vmtk. expected it to be at', datadir) reader.InputFileName = os.path.join(datadir, reference_file) reader.Execute() comp = imagecompare.vmtkImageCompare() comp.Image = image comp.ReferenceImage = reader.Image comp.Method = 'subtraction' comp.Tolerance = tolerance comp.Execute() return comp.Result
def make_compare_images(image, reference_file, tolerance=0.1): reader = imagereader.vmtkImageReader() try: datadir = os.path.join( os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'vmtk-test-data', 'imagereference') if not os.path.isdir(datadir): raise ValueError() except ValueError: datadir = os.path.join( os.path.dirname( os.path.dirname( os.path.dirname( os.path.dirname(os.path.realpath(__file__))))), 'vmtk-test-data', 'imagereference') if not os.path.isdir(datadir): raise ValueError( 'the vmtk-test-data repository cannot be found at the same level as vmtk. expected it to be at', datadir) reader.InputFileName = os.path.join(datadir, reference_file) reader.Execute() comp = imagecompare.vmtkImageCompare() comp.Image = image comp.ReferenceImage = reader.Image comp.Method = 'subtraction' comp.Tolerance = tolerance comp.Execute() return comp.Result
def imageObjectEnhance(): input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/WU_Lung_Vessel_Ext/' reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() imageObjEn = imageEnhance.vmtkImageObjectEnhancement() imageObjEn.Image = reader.Image # default arguments imageObjEn.SigmaMin = 1.0 imageObjEn.SigmaMax = 1.0 imageObjEn.NumberOfSigmaSteps = 1 imageObjEn.ScaledObjectness = 0 imageObjEn.Alpha = 0.5 imageObjEn.Beta = 0.5 imageObjEn.Gamma = 5.0 imageObjEn.ObjectDimension = 2 imageObjEn.Execute() viewer = imageviewer.vmtkImageViewer() viewer.Image = imageObjEn.Image viewer.Execute()
def test_read_vti_image(input_datadir, compare_images): name = __name__ + '_test_read_vti_image.vti' reader = imagereader.vmtkImageReader() reader.InputFileName = os.path.join(input_datadir, 'vase.vti') reader.Execute() assert compare_images(reader.Image, name) == True
def levelset_seg(): ''' 图像的水平集分割,生成等值面 ''' input_file = "vesselVoi.vti" output_filename = 'vessellevelset.vtp' reader = imagereader.vmtkImageReader() # 图像序 reader.InputFileName = input_file reader.Format = "vtkxml" reader.UseITKIO = 0 reader.Execute() levelset = levelsetseg.vmtkLevelSetSegmentation() levelset.Image = reader.Image levelset.LevelSetsType = "geodesic" # '["geodesic","curves","threshold","laplacian"]' levelset.FeatureImageType = "gradient" # '["vtkgradient","gradient","upwind","fwhm"]' levelset.Execute() marchingcube = marchingcubes.vmtkMarchingCubes() marchingcube.Image = levelset.LevelSetsOutput marchingcube.Execute() writer = surfacewriter.vmtkSurfaceWriter() writer.Surface = marchingcube.Surface writer.Format = "vtkxml" writer.OutputFileName = output_filename writer.Execute()
def transform_image(input_datadir): import vmtk.vmtkimagereader as imagereader reader = imagereader.vmtkImageReader() reader.InputFileName = os.path.join(input_datadir, 'image-test-transform.nrrd') reader.Execute() return (reader.Image, reader.XyzToRasMatrixCoefficients)
def imagefeature(): ''' 图像的水平集分割,生成等值面 ''' input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/WU_Lung_Vessel_Ext/' reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() feature = imageFeatures.vmtkImageFeatures() feature.Image = reader.Image feature.FWHMRadius = [0.5, 0.5, 0.5] feature.FeatureImageType = "gradient" # '["vtkgradient","gradient","upwind","fwhm"]' feature.Execute() viewer = imageviewer.vmtkImageViewer() viewer.Image = reader.Image viewer.Execute()
def imagevoi(input_datadir, output_filename): ''' 提取图像感兴趣的区域 ''' print("Hello") reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) #print(len(filelist)) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() selector = imagevoiselector.vmtkImageVOISelector() selector.Image = reader.Image selector.Execute() writer = imagewriter.vmtkImageWriter() writer.Image = selector.Image writer.Format = "vtkxml" writer.OutputFileName = output_filename writer.WindowLevel = [150, 1200] #窗宽和窗位 writer.Execute()
def test_read_vti_image(input_datadir, compare_images): name = __name__ + '_test_read_vti_image.vti' reader = imagereader.vmtkImageReader() reader.InputFileName = os.path.join(input_datadir, 'vase.vti') reader.Execute() assert compare_images(reader.Image, name) == True
def level_set_image(input_datadir): import vmtk.vmtkimagereader as reader import os read = reader.vmtkImageReader() read.InputFileName = os.path.join(input_datadir, 'aorta-final-levelset.mha') read.Execute() return read.Image
def feature_image(input_datadir): import vmtk.vmtkimagereader as reader import os read = reader.vmtkImageReader() read.InputFileName = os.path.join(input_datadir, 'aorta-feature-image.mha') read.Execute() return read.Image
def initial_level_sets(input_datadir): import vmtk.vmtkimagereader as reader import os read = reader.vmtkImageReader() read.InputFileName = os.path.join(input_datadir, 'aorta-fastmarching-initial-levelset.mha') read.Execute() return read.Image
def feature_image(input_datadir): import vmtk.vmtkimagereader as reader import os read = reader.vmtkImageReader() read.InputFileName = os.path.join(input_datadir, 'aorta-feature-image.mha') read.Execute() return read.Image
def level_set_image(input_datadir): import vmtk.vmtkimagereader as reader import os read = reader.vmtkImageReader() read.InputFileName = os.path.join(input_datadir, 'aorta-final-levelset.mha') read.Execute() return read.Image
def initial_level_sets(input_datadir): import vmtk.vmtkimagereader as reader import os read = reader.vmtkImageReader() read.InputFileName = os.path.join( input_datadir, 'aorta-fastmarching-initial-levelset.mha') read.Execute() return read.Image
def imageFeature(): input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/WU_Lung_Vessel_Ext/' reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() normalize = imagenormalize.vmtkImageNormalize() normalize.Image = reader.Image normalize.Execute() viewer = imageviewer.vmtkImageViewer() viewer.Image = normalize.Image viewer.Execute()
def pngToVti(): input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/Spine_Bone_Ext/' outputFileName = 'vessel.vti' reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) #print(len(filelist)) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0 ,512 ,0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() writer = imagewriter.vmtkImageWriter() writer.Image = reader.Image writer.Format = "vtkxml" writer.OutputFileName = outputFileName writer.WindowLevel = [150, 1200] #窗宽和窗位 writer.Execute()
def imageFeature(): input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/WU_Lung_Vessel_Ext/' reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() morphology = imagemorphology.vmtkImageMorphology() morphology.Operation = "erode" # '["dilate","erode","open","close"]' morphology.BallRadius = [1, 1, 1] morphology.Image = reader.Image morphology.Execute() viewer = imageviewer.vmtkImageViewer() viewer.Image = morphology.Image viewer.Execute()
def imageFeature(): input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/WU_Lung_Vessel_Ext/' reader = imagereader.vmtkImageReader() # 图像序 filelist = os.listdir(input_datadir) reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, len(filelist)] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() imageVesselEnhance = imagevesseEnhance.vmtkImageVesselEnhancement() imageVesselEnhance.Image = reader.Image imageVesselEnhance.Method = "vedm" #["frangi","sato","ved","vedm"] imageVesselEnhance.SigmaStepMethod = "equispaced" #["equispaced","logarithmic"] imageVesselEnhance.Execute() viewer = imageviewer.vmtkImageViewer() viewer.Image = imageVesselEnhance.Image viewer.Execute()
def ostsuerThreshold(): input_datadir = 'C:/Users/chenjiaxing/Desktop/CT-Data/png/Spine_Bone_Ext/' reader = imagereader.vmtkImageReader() # 单幅图像 # reader.InputFileName = os.path.join(input_datadir, '170.png') # 图像序列 reader.InputFilePrefix = input_datadir reader.InputFilePattern = "%s%d.png" reader.DataExtent = [0, 512, 0, 512, 1, 188] reader.Format = "png" reader.UseITKIO = 0 reader.Execute() otsuer = otsu.vmtkImageOtsuThresholds() otsuer.Image = reader.Image otsuer.NumberOfThresholds = 2 otsuer.Execute() viewer = imageviewer.vmtkImageViewer() viewer.Image = otsuer.Image viewer.Execute()
def transform_image(input_datadir): import vmtk.vmtkimagereader as imagereader reader = imagereader.vmtkImageReader() reader.InputFileName = os.path.join(input_datadir, 'image-test-transform.nrrd') reader.Execute() return (reader.Image, reader.XyzToRasMatrixCoefficients)
def aorta_image(input_datadir): reader = imagereader.vmtkImageReader() reader.InputFileName = os.path.join(input_datadir, 'aorta.mha') reader.Execute() return reader.Image
def aorta_image(input_datadir): reader = imagereader.vmtkImageReader() reader.InputFileName = os.path.join(input_datadir, 'aorta.mha') reader.Execute() return reader.Image