1, 因为我要使用一个dll,看C++的代码,是这样调用的
using namespace cv;
m_image_mat = imread ( full_file_name );
data = m_image_mat.data
这里有一个data属性
2,在python中,我刚开始用cv2包的imread加载图片,后来发现高版本的opencv3.2版本的导入图片是numpy array类型的数据,而不是mat类型的,网上查询的解决办法是使用cv包,转换array对象为cvmat对象
import cv2
import cv2.cv as cv
img = cv2.imread('1.jpg')
cvmat = cv.fromarray(img)
cvmat对象含有cvmat.width, cvmat.height, cvmat.step, 就是没有cvmat.data
AttributeError: 'cv2.cv.cvmat' object has no attribute 'data'
看起来C++ cv的Mat和python cvmat中定义的类还是有不同的
http://physics.nyu.edu/grierl...
我查看了uchar* cv::Mat::data的说明,“pointer to the data” 那么data的类型是什么样的呢
先谢谢了
我是使用
PIL
模块来将cv2.imread
获取到的数据转换为图片数据的。具体你说的
data
我不太清楚在Python里面怎么获取,应该就是指的图片数据了吧。代码如下: