将图像数组转换为原始SVS格式

时间:2018-11-10 19:23:09

标签: python opencv image-segmentation openslide

我正在尝试对使用OpenSlide库的SVS图像(整个幻灯片图像)应用前景提取。

首先,我将图像转换为数组以进行前景提取:

image = np.asarray(oslIm.read_region((0, 0), level, oslIm.level_dimensions[level]), dtype=np.uint8)[:, :, 0:3]

之后,我生成了蒙版,并将其应用于转换后的图像:

plt.imshow(image * final_mask[:, :, np.newaxis])
plt.xticks([])
plt.yticks([])
plt.savefig("./masks/ResultingImage.png", format='png', dpi=90, pad_inches=0.1, bbox_inches='tight');
plt.close()

我想要的是将图像再次转换为svs,这样我就可以在原始图像的前景上工作并应用我的补丁提取器(将图像平铺在补丁中以方便注释)

def sample_and_store_patches_by_row(
        file_name,
        pixel_overlap,
        patch_size=512,
        level=17,
):

我该怎么做?

致谢

1 个答案:

答案 0 :(得分:0)

不幸的是,openslide 不支持写入 WSI 文件。 我在编写大文件方面遇到的最好的事情是 pyvips

如果我错了,请纠正我,但我认为没有任何方法可以保存特定的 svs 文件,因为它是一种专有格式。

this answer 中有一个如何制作 WSI 类型文件的示例