用于在python中存储多个图像的高效数据结构



在Python中存储使用OpenCV加载的多个图像的好方法是什么?在C++中,它可以简单地使用Mat的向量来完成。

如何在Python中做到这一点?Buil in阵列AFAIK仅适用于简单的数据。我应该使用一些向量或类似的库吗?

当我使用OpenCV时,我的选择是使用numpy ndarrays。它可以在numpy数组和OpenCV Image/Matrix类之间快速轻松地来回转换,只需要一个薄包装器,numpy为您提供了大量的数字技巧和库。

话虽如此,简单地使用cv的原生iplimage类(继承自intel图像处理库的结构)的列表并没有错。

我不确定你在问什么。让用户指定的对象像这样成像会有什么问题:

from opencv.cv import *
class Image:
    def __init__(self, file):
        image = cvLoadImage (file)
        # whatever else you may need to store or do

list = []
someImg = Image("C:/somefile.png")
list.append(someImg)

然后将它们存储在列表中?在你的情况下,我会这么做,但我可能误解了你问题的细节。

编辑:我也没有在python中真正使用过OpenCV,所以我不确定导入和图像创建是如何工作的,但看起来是这样的。参考:此处或此处

此外,numpy.ndarray是一个很好的方法,因为您似乎指的是使用矩阵的向量(这里是python列表)(这里是numpy.ndarrays),您可能会更熟悉它。

相关内容

  • 没有找到相关文章

最新更新