【发布时间】:2015-01-28 12:01:00
【问题描述】:
我是 Java 中的 Opencv 新手。问题是每当我尝试将两个尺寸为 (m x n) 和 (n x l) 的 Mat 类型对象相乘时,它都会产生错误。
OpenCV 错误:输入参数的大小不匹配(该操作既不是“数组运算数组”(其中数组具有相同的大小和相同的通道数),也不是“数组运算标量”,也不是“标量运算数组” ') 在 cv::arithm_op,文件 ........\opencv\modules\core\src\arithm.cpp,第 1287 行 线程“main”中的异常 CvException [org.opencv.core.CvException: cv::Exception: ........\opencv\modules\core\src\arithm.cpp:1287: 错误:(-209)该操作既不是“array op array”(其中数组具有相同的大小和相同的通道数),也不是“array op scalar”,也不是函数 cv::arithm_op 中的“scalar op array” ]
这是我的两个矩阵。
Mat r = new Mat(2, 2, CvType.CV_32F);
r.put(0, 0, 0.707);
r.put(0, 1, -0.707);
r.put(1, 0, 0.707);
r.put(1, 1, 0.707);
Mat mult = new Mat(1, 2, CvType.CV_32F);
double d1 = 1.00;
double d2 = 2.00;
mult.put(0, 0, d1);
mult.put(0, 1, d2);
Mat final_mat = mult.mul(r);
【问题讨论】: