def get_raw_liver_image(raw: sitk.Image, liver: sitk.Image) -> sitk.Image: size = raw.GetSize() output = sitk.Image(size, sitk.sitkUInt8) output.CopyInformation(raw) for i in range(0, size[0]): for j in range(0, size[1]): if liver.GetPixel(i, j) == 1: output.SetPixel(i, j, raw.GetPixel(i, j)) return output
def padding(label: sitk.Image, pred_image_name: str) -> sitk.Image: size = label.GetSize() img = sitk.ReadImage(pred_image_name, sitk.sitkUInt8) assert isinstance(img, sitk.Image) assert size == img.GetSize() ret = sitk.Image(size, sitk.sitkUInt8) ret.CopyInformation(img) minn = 100.0 for i in range(0, size[0]): for j in range(0, size[1]): minn = min(minn, label.GetPixel(i, j)) for i in range(0, size[0]): for j in range(0, size[1]): if label.GetPixel(i, j) != minn \ or img.GetPixel(i, j) == 255: # lesion ret.SetPixel(i, j, 255) elif img.GetPixel(i, j) == 128: ret.SetPixel(i, j, 128) return ret