|
@@ -50,6 +50,7 @@ def getSuffix(tempFile):
|
|
return ''.join(p.suffixes)
|
|
return ''.join(p.suffixes)
|
|
|
|
|
|
def getSegmImagePath(tempFile):
|
|
def getSegmImagePath(tempFile):
|
|
|
|
+ #return tempFile
|
|
sfx=getSuffix(tempFile)
|
|
sfx=getSuffix(tempFile)
|
|
return re.sub(sfx,'_Segm'+sfx,tempFile)
|
|
return re.sub(sfx,'_Segm'+sfx,tempFile)
|
|
|
|
|
|
@@ -75,7 +76,7 @@ def normalizeCT(ctFile,maskFile):
|
|
|
|
|
|
def runDeepMedic(setup,pars):
|
|
def runDeepMedic(setup,pars):
|
|
args=[]
|
|
args=[]
|
|
- args.append(os.path.join(setup['paths']['deepMedicVE'],'bin','python'))
|
|
|
|
|
|
+ #args.append(os.path.join(setup['paths']['deepMedicVE'],'bin','python'))
|
|
args.append(setup['paths']['deepMedicRun'])
|
|
args.append(setup['paths']['deepMedicRun'])
|
|
args.append('-model')
|
|
args.append('-model')
|
|
args.append(pars['deepmedic']['config']['model']['out'])
|
|
args.append(pars['deepmedic']['config']['model']['out'])
|
|
@@ -97,7 +98,7 @@ def getSegmentationFile(pars):
|
|
#this is how deep medic stores files
|
|
#this is how deep medic stores files
|
|
return getSegmImagePath(\
|
|
return getSegmImagePath(\
|
|
os.path.join(pars['tempBase'],'output','predictions','currentSession','predictions',\
|
|
os.path.join(pars['tempBase'],'output','predictions','currentSession','predictions',\
|
|
- pars['images']['segmentations']['tempFile'])
|
|
|
|
|
|
+ pars['images']['segmentation']['tempFile'])
|
|
)
|
|
)
|
|
|
|
|
|
def runSegmentation(fb,row,pars,setup):
|
|
def runSegmentation(fb,row,pars,setup):
|
|
@@ -116,6 +117,7 @@ def runSegmentation(fb,row,pars,setup):
|
|
for im in images:
|
|
for im in images:
|
|
if 'queryField' in images[im]:
|
|
if 'queryField' in images[im]:
|
|
fb.readFileToFile(baseDir+'/'+row[images[im]['queryField']],fullFile[im])
|
|
fb.readFileToFile(baseDir+'/'+row[images[im]['queryField']],fullFile[im])
|
|
|
|
+ print('Loaded {}'.format(fullFile[im]))
|
|
|
|
|
|
#normalize
|
|
#normalize
|
|
|
|
|
|
@@ -125,7 +127,8 @@ def runSegmentation(fb,row,pars,setup):
|
|
|
|
|
|
|
|
|
|
#run deep medic
|
|
#run deep medic
|
|
- runDeepMedicDocker(setup,pars)
|
|
|
|
|
|
+ #runDeepMedicDocker(setup,pars)
|
|
|
|
+ runDeepMedic(setup,pars)
|
|
|
|
|
|
#processed file is
|
|
#processed file is
|
|
segFile=getSegmentationFile(pars)
|
|
segFile=getSegmentationFile(pars)
|
|
@@ -231,10 +234,9 @@ def doSegmentation(parameterFile):
|
|
i=0
|
|
i=0
|
|
for row in ds["rows"]:
|
|
for row in ds["rows"]:
|
|
|
|
|
|
-
|
|
|
|
#check if file is already there
|
|
#check if file is already there
|
|
#dummy tf to get the suffix
|
|
#dummy tf to get the suffix
|
|
- tf=getSegmentationFile(pars,'XX')
|
|
|
|
|
|
+ tf=getSegmentationFile(pars)
|
|
outpath=fb.buildPathURL(pars['project'],[pars['imageDir'],row['patientCode'],row['visitCode']])
|
|
outpath=fb.buildPathURL(pars['project'],[pars['imageDir'],row['patientCode'],row['visitCode']])
|
|
outName=addVersion(\
|
|
outName=addVersion(\
|
|
getSegmImagePath(\
|
|
getSegmImagePath(\
|
|
@@ -252,6 +254,8 @@ def doSegmentation(parameterFile):
|
|
fb.writeFileToFile(segFile,outFile)
|
|
fb.writeFileToFile(segFile,outFile)
|
|
|
|
|
|
|
|
|
|
|
|
+ else:
|
|
|
|
+ print('File {} available'.format(outFile))
|
|
|
|
|
|
#separate script (set version!)
|
|
#separate script (set version!)
|
|
|
|
|
|
@@ -280,6 +284,7 @@ def doSegmentation(parameterFile):
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
if __name__ == '__main__':
|
|
- main(sys.argv[1])
|
|
|
|
|
|
+ #main(sys.argv[1])
|
|
|
|
+ doSegmentation(sys.argv[1])
|
|
#sys.exit()
|
|
#sys.exit()
|
|
|
|
|