我有一个包含 tiff 文件的 tarball。我试图在不提取和保存它们的情况下阅读它们。这是我所拥有的:
tar = tarfile.open("filename.tar", 'r|')
for tiff in tar:
if tiff.isfile():
c = tar.extractfile(tiff)
typ(c) = tarfile.ExFileObject
我想直接用 OpenCV 读取它以获得Mat格式。我可以用 PIL 或 matplotlib 读取它以获得一个 numpy 数组,它们都像魅力一样工作,但我没有找到任何最近或方便的方法将 numpy 数组转换为 Mat 格式。再次,我想知道是否有一种方法可以直接阅读它而无需保存和阅读它。
如果无法直接读取它并且我必须将 numpy 数组转换为 Mat,我已经尝试了我能找到的所有解决方案,所有解决方案都适用于以前的版本,但没有一个对我有用。我发现了这些:
pyopencv:有这个:pyopencv.Mat.from_pil_image(image)
或ctypes-opencv
适用于 python 2 和旧版本的 opencv
我还发现:
pyboostcv转换器
NUMPY <=> OpenCV 的 cv::Mat 转换器
但他们都老了,没有一个为我工作。
如果有人可以提供帮助,我将不胜感激。
我正在使用 python 3.6 opencv 3.2.0
相关分类