相比其他只是复制粘贴的,我只想说,为什么没有人说这可以直接比较图片而是都去比较array。
其实是可以直接比较两张图片直接的dice,distance的,只要能被sitk.ReadImage读取进来。不需要sitk.GetImageFromArray或者hausdorffcomputer.Execute(labelTrue>0.5,labelPred>0.5)的额外处理。这两个步骤只是用来把array回复成image,并做灰度处理得到两分图片。如果你的原始输入数据就是二分图片,就不需要,只要读取进来即可。
# -*- coding: utf-8 -*-
"""
Created on Mon Feb 17 09:50:56 2020
@author: bpk1036
"""
import numpy as np
import os
import SimpleITK as sitk
def file_name(file_dir):
L=[]
path_list = os.listdir(file_dir)
path_list.sort() # sort the read path
for filename in path_list:
if 'nii' in filename:
L.append(os.path.join(filename))
return L
def computeQualityMeasures(lP,lT):
quality=dict()
# labelPred=sitk.GetImageFromArray(lP,isVector=False)<