参考

  • opencv 类参考 比官方要全,比如cvBlob官网查不到
  • opencv 官方参考 含入门教学
  • 自己动手制作文档 使用Doxygen自动生成文档
  • opencv 一览图 opencv 快速上手参考
  • opencv + visual studio opencv 在windows + visual studio 下的配置
  • opencv + Qt opencv 在windows + Qt + mingw 下的配置
  • opencv + Qt opencv 在ubuntu 下的配置
  • opencv + Qt + codeblocks opencv 在 windows + Qt + mingw + codeblocks 下的配置
  • opencv + python 在 python 中使用opencv

矩阵数据类型转换

  • 数据类型: CV_8U,CV_16S,CV_32FC1…
  • 函数: convertTo

基本矩阵运算

  • opencv doc: matrix expression
  • csdn: opencv operation on arrays

基本图像处理

  • opencv doc: imgproc. Image Processing
  • csdn: 基本图像处理
  • opencv doc: 中文图像操作翻译

记时

  • getTickCount, getTickFrequency

随机数

  • RNG, randu, randn

求梯度

  • sobel,scharr,filter2d

求边缘

  • findContour,drawContour,ContourArea

Matlab –> OpenCV

//Mat& Mat::setTo(InputArray value, InputArray mask=noArray() )
//A(mask)=B(mask)-->A.setTo(B,mask) error,but I don't known why!!!
A(mask)=B(mask)-->add(B,0,A,mask)
gray=rgb2gray(rgb)-->cvtColor(rgb,gray,CV_BGR2GRAY)

一些错误

常见错误

//错误的初始化
color_R.create(input.size(),CV_64FC1);
color_R.ones(height,width,CV_64FC1);
color_R=color_R*20;
double a=color_R.at<double>(0,0);
cout<<a<<endl;  //a!=20, a=0 !!!//正确的初始化
color_R=Mat::ones(input.size(),CV_64FC1)*20;//vector<Mat> 的错误,当退出程序时,有时会出现segment fault, 可能由于vector改变大小时,重新复制出现了问题吧,不太清楚。
string s[]={"hello world","world good","no no no","kkk","fuck","good","hell","go","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};vector<Mat> mats;int frameNum=30;for(int i=0;i<frameNum;i++){Mat M;mats.push_back(M);}for(int i=0;i<frameNum;i++){cout<<"s[i]="<<s[i]<<endl;Mat a=mats[i];a.create(320,240,CV_8UC1);a=Scalar::all(0);a.at<uchar>(100,i)=100;imshow(s[i],a);waitKey(30);}

Mat <–> IplImage

  • Mat vs IplImage
//Mat a;
IplImage b=IplImage(a);
IplImage *c;
c=&b;//IplImage *x;
Mat y=cv::Mat(x);

split <–> merge

//BoxUp=input+15;
//BoxDown=input-15;
Mat img = imread("lena.jpg", CV_LOAD_IMAGE_COLOR);
Mat BoxUp=input.clone();
Mat BoxDown=input.clone();
vector<Mat> inputMats,BoxUpMats,BoxDownMats;
split(input,inputMats);
split(BoxUp,BoxUpMats);
split(BoxDown,BoxDownMats);for(int i=0;i<3;i++){add(inputMats[i],15,BoxUpMats[i]);subtract(inputMats[i],15,BoxDownMats[i]);
}
cv::merge(BoxUpMats,BoxUp);
cv::merge(BoxDownMats,BoxDown);

opencv 编程总结与备忘相关推荐

  1. 庞锋 OpenCV 视频 学习进度备忘

    书签:另外跳过的内容有待跟进 学习资源: opencv视频教程目录(初级)   主讲:庞锋,毕业于电子科技大学 知识基础支持: 线性代数 应用数学 跳过的内容: 1.第1~6集跳过,简单.(2014- ...

  2. fib函数用python编写_Python中利用函数装饰器实现备忘功能

    "备忘"的定义 "memoization"(备忘)这个词是由Donald Michie在1968年提出的,它基于拉丁语单词"memorandum&qu ...

  3. PowerBuilder/PB常用备忘

    目录 1. PB使用Microsoft.XMLHttp组件的属性与方法 1-1 使用步骤 1-2 XMLHTTP方法: 1-3 XMLHTTP属性: 1-4 示例: 2. Pb中Window添加鼠标滚 ...

  4. GPU架构杂乱备忘——IMR、TBR、TBDR

    原文:https://juejin.cn/post/6844904132864655367 GPU架构杂乱备忘--IMR.TBR.TBDR 之前觉得涉及到gpu架构相关的问题只需要知道个大概就好,毕竟 ...

  5. element-ui 网格_UI备忘单:列表与网格

    element-ui 网格 重点 (Top highlight) Grids or lists? That is the question we will look at in this cheat ...

  6. python 桌面备忘录_Python数据科学备忘单

    python 桌面备忘录 The printable version of this cheat sheet 该备忘单的可打印版本 It's common when first learning Py ...

  7. Android实验之实现一个生日备忘簿

    一.实验内容 实现一个生日备忘簿 二.实验目的 1. 学习 SQLite 数据库的使用; 2. 学习ContentProvider的使用; 3. 复习Android界面编程. 三.实验要求 1. 使用 ...

  8. OpenFace粗糙使用备忘

    写在前面:一个偶然的机会帮同学配置MIMAMO-Net添加链接描述的环境,接触到OpenFace添加链接描述这个工具包,里面的一些东西不太好找,于是把它记录到这里备忘. OpenFace初识与使用 M ...

  9. vim的一些快捷键,备忘

    vim的一些快捷键,备忘 快捷键                                            作用 ctrl+g                                ...

最新文章

  1. 双圆弧插值算法(三,代码实现)
  2. 【.Net MF网络开发板研究-01】IP地址设定及简单web演示
  3. python内建集合模块collections功能,计数,有序,双向队列
  4. Linux中Cache内存占用过高解决办法
  5. mysql 10个日期,MySQL自学篇(10)——日期函数
  6. java面试题44关于 Socket 通信编程,以下描述正确的是:( )
  7. 缺失值处理 - 获取一段时间内所有日期的列表 - (Python、MySQL)
  8. hbase scala 实例_scala操作HBase2.0
  9. 自检代码中trustmanager漏洞_Windows内核漏洞利用教程
  10. Linux grep命令的一些使用体会
  11. Android ActionBar示例教程
  12. MS-SQL数据类型详解
  13. 运行 DAEMON TOOL 时 提示 Virtual SCSI driver not detected
  14. 事实胜于雄辩,经典中的经典,经久…
  15. 简谈【自动化协议逆向工程技术的当前趋势】
  16. 在SCI-Hub上下载国外论文
  17. java杨戬的角色_非人哉:游戏角色反映了神仙们的爱好,杨戬太让人意外了
  18. 基于NABCD评论作品,及改进建议
  19. from用法 prepare_MySQL之prepare用法
  20. 汽车美容店管理系统如何管理店铺数据?

热门文章

  1. MySQL InnoDB聚簇索引和普通索引浅析
  2. 跟着iMeta学做图|NMDS分析展示群落beta多样性
  3. nvm use出现乱码
  4. 实验室信息化管理LIMS 系统常见功能
  5. c语言您的验证码代码,c国际短信接口_c国际验证码接口_c国际手机验证接口_国际短信代码示例_达信通...
  6. Spring @Resource详解
  7. 访问者模式 Visitor
  8. matlab中的向量除法
  9. 芯盾时代完成3亿元C轮融资,宽带资本领投
  10. 遗传算法解决TSP(34个省会城市)问题