学习Opencv
文章平均质量分 96
吨吨不打野
不要慌,不要慌,太阳落下有月光
展开
-
学习Opencv(蝴蝶书/C++)——5.矩阵的其他算子(友元函数)
这一章如果干学的话会很枯燥,看后面的具体算法,用到了再来看会比较好,🤪🤪🤪。原创 2024-02-25 22:23:50 · 1206 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——4.图形和大型数组类型(下)
如果要表示的数据中,含有大量的0元素(非0元素很少),则可以用系数矩阵来表示。比如:直方图或者高维数组中,经常会出现大量的0元素稀疏表示只存储有数据的部分,可以节约大量的内存,在实际应用中,很多稀疏矩阵如果用稠密的方式去表示,则占据的内存会特别巨大。稀疏表示的缺点是:计算会更慢(以每个元素的计算为基准来比较的话)。但是并不是绝对意义上的慢,因为稀疏表示提前避免了很多不需要的操作。稀疏表示和稠密表示cv::Mat支持的函数基本一致但是二者的数据存储/数据组织方式非常不同,cv::Mat。原创 2024-01-23 22:24:08 · 1190 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关1——4.图形和大型数组类型
之前在学习Opencv(蝴蝶书/C++)——4.图形和大型数组类型的4.2.3 NAryMatIterator迭代器构造函数中详细说过了。普通的迭代器,比如:MatIterator_,是迭代Mat中元素的迭代器(返回Mat中的单个元素),迭代的对象是矩阵里的元素而NAryMatIterator是不同的Mat矩阵的迭代器(返回这些数组的块/plane进行迭代),迭代的对象是矩阵虽然网上搜到的相关内容很少,但是在OpenCV的源码中,其实大量用到了这种迭代器。例如,直接搜索可得OpenCV中,和。原创 2023-12-07 21:58:40 · 176 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——4.图形和大型数组类型(上)
其实按照条例梳理一下,看起来有构造函数一共29个,实际上分类是很清晰的。除和,剩下27个的分类如下之所以会有这么多类型的构造函数,是因为其是C++和C数据类型混用的表达式,即便当前有的数据是一个指向C结构的指针,只要与C++定义的结构一致,那么函数也可以正确处理这个C结构的变量。原创 2023-12-01 13:19:56 · 379 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关——3. OpenCV的数据类型
根据Eigen也是一个跨平台,API接口优雅,文档完整,根据不同平台的指令系统进行了优化,比OpenCV的Mat类更加灵活,且可以和OpenCV的Mat类兼容的库。原创 2023-11-27 17:37:11 · 126 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——3. OpenCV的数据类型
看起来OpenCV的数据类型很多,其实主要的就是那几个,剩下的都是从那几个演化的。按功能和用途去区分归类,看起来就很清晰了。主要文档主要涉及到的代码文件。原创 2023-11-22 21:38:33 · 1681 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)代码——2.OpenCV初探
另外,很奇怪的一个现象,使用VideoWriter写入的视频,直接用系统自带的视频播放器可以打开,但是用VideoCapture打开后,该视频从8.8MB变成48字节。表明生成的视频文件不完整,建议在使用视频之前,先对VideoWriter类的对象进行释放。确保焦点在显示的窗口上,然后按下想知道键值的键,回到命令行查看输出的键值即可。如果不记得了,需要查看自己当前用的编译的OpenCV是否支持QT(默认。可以看到,GUI部分的信息只有Cocoa(MacOS系统支持的窗口),会保留高字节的值。原创 2023-11-20 18:29:34 · 365 阅读 · 0 评论 -
C++——linux下使用gcc或者cmake进行c++程序开发
GDB是一个用来调试C/C++程序的功能强大的调试器,是Linux系统开发 C/C++最常用的调试器程序员可以使用GDB来跟踪程序中的错误,从而减少程序员的工作量。Linux 开发C/C++ 一定要熟悉 GDB,VSCode是通过调用GDB调试器来实现C/C++的调试工作的;Windows 系统中,常见的集成开发环境(IDE),如 VS、VC等,它们内部已经嵌套了相应的调试器。设置断点(断点可以是条件表达式)使程序在指定的代码行上暂停执行,便于观察单步执行程序,便于调试。转载 2023-11-10 13:31:07 · 187 阅读 · 0 评论 -
C++——gcc、clang和cmake以及make
CMakeLists.txt在linux环境下,就是指导如何去生成makefile的,所以会有很多值是类似的,比如:CMakeLists.txt中指定的project名字,执行时使用的cpp文件等,都会体现在生成的makefile文件中。make仅限于linux或者macOS这类型的平台,不过Windows上也有类似于make的工具,叫nmake。Cmake和make就是linux或者macOS下构建过程中所使用的两个阶段的不同工具。),这里的makefile脚本所使用的指令(规则)有所不同。原创 2023-11-13 22:56:55 · 567 阅读 · 0 评论 -
学习OpenCV(蝴蝶书/C++)相关——2.MacOS下使用VSCode调试cpp程序
之前在用过简单的的配置。但是不足以支撑我这里调用OpenCV这些第三方库的调试,因此认真看了一下。原创 2023-11-09 11:44:11 · 736 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关——2.用clang++或g++命令行编译程序
就是讲在不使用Visual Studio这种IDE的情况下,纯靠g++/gcc这样的命令行去逐步执行cpp程序的编译,链接,执行等操作。原创 2023-11-06 23:30:44 · 1179 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关——1. 前言 和 第1章.概述
不过现在都是4.x了,因此重新整理了一下,整体上差不多,重要的还是那几个。完整的Modules其实还有很多,但是很多不常用,因此并不做更多的说明。对于Opencv3.x版本,网上最常见的图,图自。以及python的,来自。原创 2023-11-04 17:36:23 · 704 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)代码——1.macOS下安装OpenCV4.8.0和QT5.15(C++)
cmake过程中会出现很多提示信息,比如关于库和安装的信息,也许以后会用得到,这里记录一下:(类似的日志可以在build_opecv/version_string.tmp 、build_opecv/CMakeVars.txt 中看到)macOS是苹果对Mac系列的电脑的操作系统,是基于Darwin内核的UNIX平台,类似于其他的类UNIX系统。本机之前安装了OPENEXR这个库,导致opencv直接用了这个brew安装的openexr,但是这个openexr并不包括zlib的依赖,因此显示。原创 2023-11-03 19:18:02 · 1618 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——1. 前言 和 第1章.概述
opencv的全名:Open Source Computer Vision Library (OpenCV)是Intel公司的,主要是Intel公司里的一个俄罗斯软件团队开发的,项目的主要负责人:2001年之后开始为人熟知和使用,1999年1月发布alpha版本Opencv库有500多个函数,涵盖工业检测,医学成像,摄像机标定,立体视觉和机器人等。卫星地图和电子地图的拼接;医学图像去噪;物体分析,安全和入侵检测,自动监视和安全系统(现在都用深度学习了)摄像机标定等。原创 2023-11-02 10:44:33 · 2087 阅读 · 3 评论