我有这样的代码:我应该初始化CV ::垫
mapx.create(image.size(), CV_32FC1);
mapy.create(image.size(), CV_32FC1);
什么是在这之后的MapX与mapy值是多少?所有的数据都是零吗?
你看这个类型的初始化:
cv::Mat mapx(image.size(), CV_32FC1);
我需要明确地设置每个元素的值为零?
如何设置每个元素的值来表示-1?
我有这样的代码:我应该初始化CV ::垫
mapx.create(image.size(), CV_32FC1);
mapy.create(image.size(), CV_32FC1);
什么是在这之后的MapX与mapy值是多少?所有的数据都是零吗?
你看这个类型的初始化:
cv::Mat mapx(image.size(), CV_32FC1);
我需要明确地设置每个元素的值为零?
如何设置每个元素的值来表示-1?
数据应该是不确定的。事实上,你只是分配内存。
cv::Mat mapx(image.size(), CV_32FC1);
是完全一样的
cv::Mat1f mapx(image.size());
和
cv::Mat mapy;
mapy.create(image.size(), CV_32FC1);
您可以指定一个初始值(例如-1)是这样的:
cv::Mat1f(images.size(), -1.f);
关于你的主要问题我应该初始化吗? ialize cv :: Mat,答案是一般你不需要。从OpenCV的DOC:
而是写的:
Mat color;
...
Mat gray(color.rows, color.cols, color.depth());
cvtColor(color, gray, CV_BGR2GRAY);
可以简单的写:
Mat color;
...
Mat gray;
cvtColor(color, gray, CV_BGR2GRAY);
你可以看到OpenCV的文档:
Mat::zeros
Mat::ones
Mat A = Mat::ones(100, 100, CV_8U)*3; // make 100x100 matrix filled with 3.
http://docs.opencv.org/modules/core/doc/basic_structures.html#mat-zeros
我怎么能每个元素的值设置为-1说?
我觉得这样的事情:
create
后
Mat A = Mat::ones(100, 100, CV_8U)*-1; // make 100x100 matrix filled with -1.
感谢。如果我不使用这种方法,map中每个元素的值是多少?它是未知的还是零或..? – mans