int main(){
cv::Mat src1=(cv::Mat_<float>(2,3)<<1,2,3,4,5,6);
cv::Mat src2=(cv::Mat_<float>(2,3)<<11,12,13,14,15,16);
cv::Mat src3=(cv::Mat_<float>(3,2)<<11,12,13,14,15,16);
cv::Mat res=src1+src2;
std::cout<<"加法:"<<res<<std::endl;
std::cout<<std::endl;
res=src1-src2;
std::cout<<"减法:"<<res<<std::endl;
std::cout<<std::endl;
cv::multiply(src1,src2,res); // void multiply(InputArray src1, InputArray src2,OutputArray dst, double scale = 1, int dtype = -1);
std::cout<<"点乘:"<<res<<std::endl;
std::cout<<std::endl;
res=src1/src2;
std::cout<<"点除:"<<res<<std::endl;
std::cout<<std::endl;
res=src1*src3; // 乘法(矩阵相乘)必须是float类型否则会报错。
std::cout<<"乘法(矩阵相乘):"<<res<<std::endl;
std::cout<<std::endl; cv::Mat res1;
cv::add(src1,src2,res1); // add(InputArray src1, InputArray src2, OutputArray dst,InputArray mask = noArray(), int dtype = -1);
std::cout<<"加法:"<<res1<<std::endl;
std::cout<<std::endl;
cv::subtract(src1,src2,res1); // subtract(InputArray src1, InputArray src2, OutputArray dst,InputArray mask = noArray(), int dtype = -1);
std::cout<<"减法:"<<res1<<std::endl;
std::cout<<std::endl;
res1=src1.mul(src2); // 数据类型必须相同
std::cout<<"点乘:"<<res1<<std::endl;
std::cout<<std::endl;
gemm(src1,src3,1,NULL,0,res1); // 乘法(矩阵相乘)必须是float类型否则会报错。
// gemm(InputArray src1, InputArray src2, double alpha,InputArray src3, double beta, OutputArray dst, int flags = 0);
// gemm也只能接受CV_32FC1、CV_64FC1、CV_32FC2、CV_64FC2数据类型的Mat.
std::cout<<"乘法(矩阵相乘):"<<res<<std::endl;
std::cout<<std::endl; cv::Mat mat1=(cv::Mat_<int>(2,3)<<1,4,9,16,25,36); // 注意:cv::Mat_不能写为cv::Mat
cv::Mat dest;
// 幂函数,其幂指数确定不变,而幂底数为自变量;
// 指数函数却是底数确定不变,而指数为自变量。
// 幂指函数就是幂底数和幂指数同时都为自变量的函数。
pow(mat1,2,dest); // 幂函数
std::cout<<"幂函数:"<<dest<<std::endl;
std::cout<<std::endl; cv::Vec3b src4(1,2,3);
cv::Vec3b src5(1,2,3);
cv::Vec3b dst=src4+src5;
std::cout<<dst<<std::endl;
return 0;
}

注意:矩阵乘法只能接受CV_32FC1、CV_64FC1、CV_32FC2、CV_64FC2数据类型的Mat.剩下的会报错。

最新文章

  1. [原]Paste.deploy 与 WSGI, keystone 小记
  2. 源码编译安装mysql
  3. Android学习六:Socket 使用
  4. jQuery Easing 动画效果扩展 ,全屏滚动案例
  5. Codeforces 374B - Inna and Nine
  6. eclipse安装插件的方法,以python为例子
  7. HTML5实现在线抓拍
  8. ChesFrame框架介绍
  9. js精度丢失解决办法
  10. Reshaper 快捷键
  11. LightOJ 1058 平行四边形的判断定理
  12. DOM节点的创建
  13. [USACO 04OPEN]MooFest
  14. Maven常识
  15. 纯JS实现加载更多(VUE框架)
  16. spring boot报Unsupported Media Type Content type &#39;*/*;charset=UTF-8&#39; not supported
  17. Python3 tkinter基础 Frame bind 鼠标移动事件 实时显示鼠标的位置
  18. 【Android开发】Api_Android_Distribute
  19. hdu 4535 错排
  20. 说说 PADS Layout 中的第 20 层和 第 25层

热门文章

  1. [Objective-C] 016_UI篇_UIView(上)
  2. Python基础知识思维导图
  3. 小谢第6问:js中,filter函数是怎么使用的
  4. ES6-json与字符串的转换
  5. A barrier for Mobile Forensics - Samsung Secure Folder
  6. ASP.NET给图片自动添加水印
  7. Java实现字母去重
  8. Java实现埃拉托色尼筛选法
  9. svg 贝塞尔曲线图解(记录)
  10. Hadoop之hadoop fs和hdfs dfs、hdfs fs三者区别