OpenSlide.read_region函数有什么问题吗?

时间:2019-06-27 06:55:31

标签: python openslide

我正在使用openslide软件包的python API读取一些ndpi文件。当我使用read_region函数时,有时会返回奇数图像。可能会发生什么问题?

我试图阅读完整的图像,它将很好地工作。因此,我认为原始文件没有问题。

from openslide import OpenSlide
import cv2
import numpy as np

slide = OpenSlide('/Users/xiaoying/django/ndpi-rest-api/slide/read/21814102D-PAS - 2018-05-28 17.18.24.ndpi')
image = slide.read_region((1, 0),6, (780, 960))
image.save('image1.png')

输出是奇怪的output

2 个答案:

答案 0 :(得分:0)

正如read_region文档所说,x和y参数始终位于级别0的坐标空间中。对于所需的行为,您需要将这些参数乘以所读取级别的下采样。 / p>

答案 1 :(得分:0)

这似乎是一个基于版本的错误,另请参见

https://github.com/openslide/openslide/issues/291#issuecomment-722935212

问题似乎与libpixman版本0.38.x有关。 GunnarFarneback撰写了一个“变通方法”部分,建议您首先加载其他版本,例如。

export LD_PRELOAD = / usr / lib / x86_64-linux-gnu / libpixman-1.so.0.34.0

upadte更简单的解决方案是:

我们正在使用Python 3.6.8+,这为我们解决了问题:conda install pixman = 0.36.0