OpenCV实战
文章平均质量分 62
实战是最好的学习方法
爱钓鱼的歪猴
今天不学习,明天变垃圾
展开
-
Linux交叉编译opencv并移植ARM端
opencv的交叉编译工具链在../opencv3.2.0/platforms/linux 路径下,linux文件夹下是一些.cmake文件,对应不同的移植对象,我需要在rv1126上部署模型,所以选择platform/linux/将 build文件夹里面的include和lib里的文件分别拷贝到ARM板的/usr/include 和/usr/lib下 然后打开终端执行可执行文件即可。build文件里include也许是空的,你可以在安装目录/include/找到opencv的头文件。原创 2023-08-15 22:32:32 · 3575 阅读 · 0 评论 -
opencv 处理的视频 保存为新视频 ,新视频 无法读取
其实就是保存的帧如果处理成灰度图(单通道)的话,保存为新视频,则新视频读取不了。处理成三通道,保存的新视频即可被读取。原创 2023-07-21 21:49:49 · 691 阅读 · 0 评论 -
『红外图像 数据增强』DDE(Digital Detail Enhancement)算法
我是为了做红外目标检测才做的DDE数据增强个人感觉DDE算法将背景和前景区分度加大,同时边缘特征、性状特征很清楚而直方图均衡化有点曝光太强的感觉,边缘特征、性状特征不太清楚自适应直方图均衡化后,边缘特征、性状特征也比较清楚DDE算法处理后的比自适应直方图肉眼上看上去更舒服,但是还是需要结合模型训练才能看出DDE算法是否比自适应直方图要好!原创 2023-07-18 19:03:59 · 5845 阅读 · 5 评论 -
『数据增强』yolov5 数据增强 与 红外数据增强
从不同的途径获取的图像,通过进行适当的增强处理,可以将原本模糊不清甚至根本无法分辨的原始图像处理成清晰的富含大量有用信息的可使用图像,有效地去除图像中的噪声、增强图像中的边缘或其他感兴趣的区域,从而更加容易对图像中感兴趣的目标进行检测和测量。图(a)中人的面部(位置1),电路板(位置3)这些高温物体的局部温差不仅都得到了体现,而且可在位置2上发现热像自身辐射在玻璃上反射所成的镜像,图(c)中高炉的炉壁以及中间的燃料通过DDE增强后也清晰可见。高频信息在图像中的变化较为剧烈,有许多细微的变化。原创 2023-07-16 17:38:47 · 1774 阅读 · 0 评论 -
Ubuntu 安装 opencv ,cmake 因网络问题不能下载文件的问题(附已编译opencv网盘资源)
把这些文件手动下载下来,j记得修改文件名字,然后放到 .cache。原创 2023-06-17 16:14:15 · 639 阅读 · 0 评论 -
求两直线(线段)的交点 点斜式 解方程
【代码】求两直线(线段)的交点 点斜式 解方程。转载 2023-06-07 15:07:20 · 182 阅读 · 0 评论 -
OpenCV C++ 视差图后处理 wls滤波
OpenCV: Disparity map post-filtering原创 2023-05-28 17:42:41 · 1365 阅读 · 0 评论 -
OpenCV 实战七 setMouseCallback 鼠标交互画框
参数说明winname 窗口名称onMouse 鼠标相应函数,回调函数userdata 用户自定义的参数函数说明函数一经调用会不断查询鼠标信息直到窗口销毁鼠标事件的类型原创 2023-05-18 15:49:07 · 556 阅读 · 0 评论 -
双目测距--5 双目相机 联合 YOLOv8
基于以上两个结果,可以用立体矫正后的图像,作为YOLOv8的输入图像。YOLOv8 ONNX RUNTIME 部署代码中的utils.cpp中有一个函数需要作修改。运用SGBM算法得到的视差图,其尺寸与立体矫正后的图像尺寸不一致,如获取深度图代码信息输出图。视差图由SGBM算法获得,深度信息图由reproJectImageTo3D()函数获得。参数6:默认值为0,用户传给回调函数的数据值。参数4:表示滑块达到最大位置的值。参数5:默认值为0,指向回调函数。参数3:滑块初始位置。原创 2023-05-07 21:59:58 · 3527 阅读 · 28 评论 -
双目测距--4 双目立体匹配 获取深度图
在这之前需要已经完成双目标定,这里是利用双目标定结果利用SGBM算法获取深度图,以及转伪彩图。OpenCV有三种立体匹配算法:BM算法、SGBM算法、GC算法,这里 我选择了SGBM算法,其速度精度都还不错。原创 2023-05-07 00:10:35 · 3278 阅读 · 2 评论 -
双目测距--3 双目标定
flags-可选的标志有两种零或者 CV_CALIB_ZERO_DISPARITY ,如果设置 CV_CALIB_ZERO_DISPARITY 的话,该函数会让两幅校正后的图像的主点有相同的像素坐标。如果设置为0,那么校正后图像只有有效的部分会被显示(没有黑色的部分),如果设置为1,那么就会显示整个图像。第二个参数是棋盘格内部的角点的行列数(注意:不是棋盘格的行列数,如棋盘格的行列数分别为4、8,而内部角点的行列数分别是3、7,因此这里应该指定为cv::Size(3, 7));其内部的所有像素都有效。原创 2023-05-07 00:08:57 · 1476 阅读 · 0 评论 -
双目测距--2 准备双目图像 (用于标定)
下面是该设备的读取图像代码,可以用这份代码用来拍摄用于标定的棋盘图像。说明:按下s键会保存当前图像,按q键盘会推出。单USB双目摄像头,还是大哥借给我用的。原创 2023-05-07 00:05:28 · 446 阅读 · 0 评论 -
双目测距--1 准备棋盘图像打印
说明:这是在博客上面找的一份代码,忘记出自那里了。仅作笔记,如有冒犯立删。原创 2023-05-07 00:04:57 · 103 阅读 · 0 评论 -
OpenCV实战5 车牌号识别
本项目仅仅对车牌字符为白色的车牌有用未对车牌作旋转矫正【p1p2】,透视矫正,这两个因素影响很大,后面有空再补上ps: 这个项目做了好几天,cpp文件干到了500行,原文才300行,增加近一半代码,短时间不想改了。原创 2023-04-27 22:26:45 · 5361 阅读 · 8 评论 -
OpenCV实战4 玉米粒计数
还是用联通区域数量(轮廓数量)来实现玉米粒计数,但是这里很值得学习的是怎么把存在重叠区域的玉米粒分离开。查找出亮包,找出物体的中心;使用自适应阈值操作得到完全分开的玉米粒。,这里是自己的笔记。原创 2023-04-25 17:58:06 · 536 阅读 · 0 评论 -
OpenCV 实战3 对图像画框、获取图像像素位置
opencv中进行鼠标操作主要用到这个函数,如下:winname:窗口名称onMouse:鼠标响应函数,回调函数userdata:用户自定义的参数此函数会在调用之后不断查询鼠标信息直到窗口销毁event:表示鼠标事件类型的常量x和y:鼠标指针在图像坐标系的坐标flags:鼠标事件标志的常量param:用户可自定义的参数Event:#define CV_EVENT_MOUSEMOVE 0 //滑动。原创 2023-04-25 16:32:47 · 1386 阅读 · 0 评论 -
OpenCV实战2 透射矫正
【代码】OpenCV实战2 透射矫正。原创 2023-04-25 16:24:49 · 210 阅读 · 0 评论 -
opencv实战1 车道线检测
这里的代码思路:获取ROI区域 ---> 二值化 --> 获取端点位置--> 画出来。没有用霍夫直线检测,个人感觉霍夫直线检测很不好用。转载 2023-04-25 16:17:50 · 149 阅读 · 0 评论