OpenCV学习笔记(三十九)——再谈OpenCV的数据结构,Mat是如此强大
来源:互联网 发布:sql注入实例 编辑:程序博客网 时间:2024/03/29 18:06
还是一个实时性要求的程序最近把我弄得有些上火。为了提高代码运行的速度,我也是又新啃东西学了。由于我代码里使用了vector,网上搜来搜去有人说vector慢,又有人说STL里的sort排序速度是我等常人不能企及的,有人说要少resize,这个重新分配内存非常耗时,又有人说要用swap来彻底删除不要的内存空间。带着这么多疑问,我实在不知道我程序慢的原因。于是乎阅读了《Effective STL》,这书挺深的,粗浅读读,先把自己急着弄清楚的以上各问题弄懂。再看程序,做了些优化,速度还是提高不多,头开始大了
我的解决办法是用我上一讲提到的getTickCount、getTickFrequency函数分析我代码的运行时间,遇到的问题是下面这句非常耗时
vector<vector<int>>test = vector<vector<int>>(10000, vector<int>(10, 0));
10000*10只是我要开辟的空间,不知道怎么用reserve函数开辟,这句运行了大概100ms。今天再看这段代码,发现我太傻了,何必要用vector<vector<int>>呢,完全可以用OpenCV自带的Mat来解决啊,于是把上面这句改写如下
Mat test1 = Mat_<int>::zeros(10000, 10);
结果只需要0.2ms!!!同志们,STL在Mat面前都显得如此无力啊,有木有啊!我决定花费几天的时间再好好读读reference的core的部分,来吃透OpenCV的数据结构。而且感觉Mat跟STL的兼容性很好,也有push_back,pop_back这样的操作,所以啊,同志们,千万别把Mat只当做是显示图片用的,它是很强大的数据结构,用了它,可以事半功倍,谁用谁知道!~~
- OpenCV学习笔记(三十九)——再谈OpenCV的数据结构,Mat是如此强大
- OpenCV学习笔记(三十九)——再谈OpenCV的数据结构,Mat是如此强大
- 谈OpenCV的数据结构Mat,是如此强大
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- OpenCV学习笔记(一)——OpenCV数据结构Mat详解
- OpenCV学习笔记----------OpenCV数据结构Mat详解
- OpenCV学习笔记——数据结构Mat详解
- openCv学习笔记—cv::Mat学习
- Opencv Mat数据结构学习
- [openCV] opencv学习笔记-入门(25)Mat 的学习
- OpenCV——数据结构Mat
- openCV学习笔记(6):Mat类/数据结构详解(1)
- 黑马程序员——Java动态代理
- 1031. Campus
- xcode生成文件
- Android媒体的一些使用总结
- 人工智能的一点摘抄 《视读 人工智能》
- OpenCV学习笔记(三十九)——再谈OpenCV的数据结构,Mat是如此强大
- 在Rprofile.site文件中设置R的镜像站点
- 最大子序列和的线性时间算法
- 先做个码农
- 超巧妙的设置密码的方法
- Linux的一些小事儿
- 汇编——冒泡排序
- Android培训班(85)升级到4.0版本
- 关于C/C++运行库编译出来的程序的运行过程~