在Python中存储使用OpenCV加载的多个图像的好方法是什么?在C ++中,可以使用Mat的矢量简单地完成。
如何在Python中执行此操作?数组中的构建AFAIK仅适用于简单数据。我应该使用一些矢量或类似的库吗?
答案 0 :(得分:1)
我不确定你在问什么。制作用户指定对象的图像如下:
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,所以我不确定导入和图像创建是如何工作的,但它似乎是这样的。参考:here或here
此外,numpy.ndarray
是一个很好的,因为你似乎指的是使用矩阵的向量(这里是python列表)(这里是numpy.ndarrays),你可能会更舒服。
答案 1 :(得分:1)
当我使用OpenCV时,我的选择是使用numpy ndarrays。它可以在numpy数组和OpenCV Image / Matrix类之间快速轻松地进行转换,只需要一个薄的包装器,numpy为您提供了大量的数字技巧和库。
话虽如此,简单地使用cv的本机iplimage类列表(从英特尔图像处理库继承的结构)也没有错。