2013-03-23 71 views
1

3元素矢量构造器如何与OpenCV中的Mat相乘? 我尝试以下,但它抛出一个错误:矢量构造器和垫子

cv::multiply(src, cv::Vec<_Tp, 3>(2.0, 1.0, 1.0), src); 

它提供了以下错误:

OpenCV Error: Assertion failed (src2.type() == CV_64F && (src2.rows == 4 || src2.rows == 1)) in arithm_op, file /Users/abhishek/Documents/OpenCV-2.4.3/modules/core/src/arithm.cpp, line 1275 
libc++abi.dylib: terminate called throwing an exception 
+0

什么'src'的定义是什么? – 2013-03-23 13:36:17

+0

cv :: Mat_ >&src – 2013-03-23 14:24:11

+0

你想要逐个通道的乘法?只用B * 2,G * 1,R * 1来缩放BGR? – 2013-03-23 15:15:45

回答

1

您是否尝试过:

cv::multiply(src, cv::Scalar(2.0, 1.0, 1.0), src); 
+0

谢谢。这有帮助 – 2013-03-24 14:04:15