在 Python 中存储使用 OpenCV 加载的多个图像的好方法是什么?在 C++ 中,它可以简单地使用 Mat 的向量来完成。
如何在 Python 中做到这一点?内置数组 AFAIK 仅适用于简单数据。我应该使用一些向量或类似的库吗?
在 Python 中存储使用 OpenCV 加载的多个图像的好方法是什么?在 C++ 中,它可以简单地使用 Mat 的向量来完成。
如何在 Python 中做到这一点?内置数组 AFAIK 仅适用于简单数据。我应该使用一些向量或类似的库吗?
我不确定你在问什么。像这样制作用户指定的对象图像会有什么问题:
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
是一个很好的选择,因为您似乎指的是使用矩阵(此处为 numpy.ndarrays)的向量(此处为 python 列表),您可能会更舒服。
当我使用 OpenCV 时,我的选择是使用numpy ndarrays。它可以在 numpy 数组和 OpenCV Image/Matrix 类之间快速轻松地来回转换,只需要一个薄包装器,并且 numpy 为您提供了大量的数值技巧和库供您使用。
话虽如此,简单地使用 cv 的本机 iplimage 类(从 intel 图像处理库继承的结构)列表不会有任何问题。