opencv
文章平均质量分 87
cv 我来了
吨吨不打野
不要慌,不要慌,太阳落下有月光
展开
-
学习Opencv(蝴蝶书/C++)——5.矩阵的其他算子(友元函数)
这一章如果干学的话会很枯燥,看后面的具体算法,用到了再来看会比较好,🤪🤪🤪。原创 2024-02-25 22:23:50 · 1046 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——4.图形和大型数组类型(下)
如果要表示的数据中,含有大量的0元素(非0元素很少),则可以用系数矩阵来表示。比如:直方图或者高维数组中,经常会出现大量的0元素稀疏表示只存储有数据的部分,可以节约大量的内存,在实际应用中,很多稀疏矩阵如果用稠密的方式去表示,则占据的内存会特别巨大。稀疏表示的缺点是:计算会更慢(以每个元素的计算为基准来比较的话)。但是并不是绝对意义上的慢,因为稀疏表示提前避免了很多不需要的操作。稀疏表示和稠密表示cv::Mat支持的函数基本一致但是二者的数据存储/数据组织方式非常不同,cv::Mat。原创 2024-01-23 22:24:08 · 1157 阅读 · 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 · 147 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——4.图形和大型数组类型(上)
其实按照条例梳理一下,看起来有构造函数一共29个,实际上分类是很清晰的。除和,剩下27个的分类如下之所以会有这么多类型的构造函数,是因为其是C++和C数据类型混用的表达式,即便当前有的数据是一个指向C结构的指针,只要与C++定义的结构一致,那么函数也可以正确处理这个C结构的变量。原创 2023-12-01 13:19:56 · 343 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关——3. OpenCV的数据类型
根据Eigen也是一个跨平台,API接口优雅,文档完整,根据不同平台的指令系统进行了优化,比OpenCV的Mat类更加灵活,且可以和OpenCV的Mat类兼容的库。原创 2023-11-27 17:37:11 · 98 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)——3. OpenCV的数据类型
看起来OpenCV的数据类型很多,其实主要的就是那几个,剩下的都是从那几个演化的。按功能和用途去区分归类,看起来就很清晰了。主要文档主要涉及到的代码文件。原创 2023-11-22 21:38:33 · 1496 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)代码——2.OpenCV初探
另外,很奇怪的一个现象,使用VideoWriter写入的视频,直接用系统自带的视频播放器可以打开,但是用VideoCapture打开后,该视频从8.8MB变成48字节。表明生成的视频文件不完整,建议在使用视频之前,先对VideoWriter类的对象进行释放。确保焦点在显示的窗口上,然后按下想知道键值的键,回到命令行查看输出的键值即可。如果不记得了,需要查看自己当前用的编译的OpenCV是否支持QT(默认。可以看到,GUI部分的信息只有Cocoa(MacOS系统支持的窗口),会保留高字节的值。原创 2023-11-20 18:29:34 · 288 阅读 · 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 · 134 阅读 · 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 · 422 阅读 · 0 评论 -
学习OpenCV(蝴蝶书/C++)相关——2.MacOS下使用VSCode调试cpp程序
之前在用过简单的的配置。但是不足以支撑我这里调用OpenCV这些第三方库的调试,因此认真看了一下。原创 2023-11-09 11:44:11 · 600 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关——2.用clang++或g++命令行编译程序
就是讲在不使用Visual Studio这种IDE的情况下,纯靠g++/gcc这样的命令行去逐步执行cpp程序的编译,链接,执行等操作。原创 2023-11-06 23:30:44 · 1020 阅读 · 0 评论 -
学习Opencv(蝴蝶书/C++)相关——1. 前言 和 第1章.概述
不过现在都是4.x了,因此重新整理了一下,整体上差不多,重要的还是那几个。完整的Modules其实还有很多,但是很多不常用,因此并不做更多的说明。对于Opencv3.x版本,网上最常见的图,图自。以及python的,来自。原创 2023-11-04 17:36:23 · 667 阅读 · 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 · 1216 阅读 · 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 · 1973 阅读 · 3 评论 -
相关-22. Opencv-Python图像的几何变换(包括缩放/平移/旋转/仿射变换/透视变化)
参考:opencv python 图像缩放/图像平移/图像旋转/仿射变换/透视变换Python实现图像平移、旋转、水平镜像等小强学Python+OpenCV之-1.4.1平移、旋转、缩放、翻转-之实践OpenCV Image Translationmatplotlib文档:Affine transform of an image(图像仿射变换)matplotlib文档:matplotlib.transformsImage Translation using OpenCV | Pythono原创 2022-01-11 21:42:27 · 1962 阅读 · 0 评论 -
OpenCV识别圆(复杂背景下的圆)
参考:opencv 识别图片上带颜色的圆 带完整代码如何检测一个圆在多个圆内?Circle Detection using OpenCV | PythonOpenCV #010 Circle Detection Using Hough TransformDetecting overlapping circlesOpenCV Coin Detection ProjectCounting blue and white bacteria colonies with Python and OpenC原创 2020-11-10 11:20:30 · 13516 阅读 · 5 评论 -
Ubuntu在import cv2报错libGL.so.1: cannot open
报错内容from .cv2 import *ImportError: libGL.so.1: cannot open shared object file: No such file or directory1.X解决1参考服务器libGL.so.1: cannot open shared object file: No such file or directory问题解决 人家的服务器是fedora 镜像。。。我是Ubuntu,sudo dnf update"报错 sudo: dnf: .原创 2020-11-13 11:08:17 · 1769 阅读 · 3 评论 -
python opencv调用摄像头识别并绘制结果
???? 1. 调用摄像头import cv2# from ZNKJdigit import DigitalRecognizer,RecogniztionResultcap=cv2.VideoCapture(2)# 如果笔记本有前置和后置两个摄像头,一般0是后置,1是前置# 每额外插一个usb摄像头,序号就会加1,多试试,就知道是几了。cap.set(3,900)cap.set(4,900)# cap.set()设置摄像头参数:3:宽 4:高# cap.isOpened()返回布尔值,原创 2021-06-02 14:00:49 · 6296 阅读 · 1 评论 -
matplotlib显示opencv图像
由于通过jupyter调用cv2.imshow()会出现一些奇怪的错误,所以在jupyter中,需要使用matplotlib来进行showimport cv2img = cv2.imread(r".s/test/2.png")import matplotlib.pyplot as pltplt.imshow(cv2.cvtColor(recImg, cv2.COLOR_BGR2RGB))然后输出:就OK了...原创 2021-06-03 10:24:39 · 332 阅读 · 1 评论 -
Opencv inRang() 和HSV色彩空间表
参考Opencv文档,点击这里1. 常规使用想通过cv2.inRange()筛选颜色区域,一般会使用以下方式来使用import cv2 as cvimport numpy as npcap = cv.VideoCapture(0)while(1): # Take each frame _, frame = cap.read() # Convert BGR to HSV hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV) #原创 2021-06-23 15:29:42 · 1761 阅读 · 0 评论 -
Opencv-python读取网络摄像头的rtsp流
参考:用OpenCV调用IP摄像头(python版)这位老哥写的很详细,我就补充一些内容。import cv2import cv2url = "rtsp://admin:[email protected]:554/11"cap = cv2.VideoCapture(url)while(cap.isOpened()): ret, frame = cap.read() cv2.imshow('frame',frame) if cv2.waitKey(1) & 0x原创 2021-06-24 11:25:17 · 9182 阅读 · 5 评论 -
Opencv摄像头相关参数
1 查看支持的参数这里记录一下关于cv2配置摄像头曝光等参数的问题,可以参考文章:Python 下opencv 应用: 摄像头参数设置关于参数的含义,可以参考:OpenCV VideoCapture.get()参数详解如果不能确定上面(包括本文博客的时效性),可以自己去opencv官方文档,找最新的文档,例如:https://docs.opencv.org/4.5.2/,然后从中搜索videoio,类似但是我在4.5.2的文档里打开videoio.hpp的时候网页打开错误了,所以去github上看原创 2021-06-24 11:28:32 · 2052 阅读 · 4 评论 -
python保存图片时和原图大小一致
之前遇到过一次这个问题,当时解决了但是忘了记录,这里再记录一次好了。matplotlib系列的整体代码如下:import cv2import matplotlib.pyplot as plt name="1-1.png"path="crop/"+namesrc = cv2.imread(path)img = cv2.cvtColor(src, cv2.COLOR_BGR2RGB) # Opencv和matplotlib读取图片的渠道不同,需要转换# cv2.imshow("orig原创 2021-07-06 16:24:42 · 9237 阅读 · 4 评论 -
python opencv读取mp4文件错误(已解决)
https://stackoverflow.com/questions/31040746/cant-open-video-using-opencvhttps://docs.opencv.org/4.5.2/dd/d43/tutorial_py_video_display.htmlhttps://www.codenong.com/49299328/原创 2021-07-21 10:13:30 · 3616 阅读 · 3 评论