
opencv实例源码演示
文章平均质量分 92
专注opencv最新动态,菜鸟教程
aworkholic
路漫漫其修远兮,吾将上下而求索
展开
-
使用腾讯ncnn加速推理yolo v9对比opencv dnn
前面博客绍了 yolov9 详细使用方式,重参数化、导出端到端模型,使用 torch、opencv、tensorrt 以及 paddle 的测试。由于存在移动端推理部署的需求,需要进行加速处理,本文在 yolov9 的基础上,使用腾讯的NCNN库进行推理测试。原创 2025-03-08 22:45:00 · 730 阅读 · 0 评论 -
opencv dnn模块 示例(27) 目标检测 object_detection 之 yolov11
YOLO11是Ultralytics实时目标探测器系列中最新的迭代版本,重新定义尖端的精度、速度和效率。在以往具有令人印象深刻进步的yolo版本基础上,YOLO11对架构和训练方法进行了重大改进,使其成为各种计算机视觉任务的多功能选择。原创 2024-10-17 21:45:00 · 2092 阅读 · 0 评论 -
opencv dnn模块 示例(26) 目标检测 object_detection 之 yolov10
从源码测试中,可以看出清华大学研究团队最新提出的 YOLOv10 是在yolov8 上发展来的。摘要如下:在过去的几年里,由于其在计算成本和检测性能之间的有效平衡,YOLOS已经成为实时目标检测领域的主导范例。研究人员已经探索了YOLOS的架构设计、优化目标、数据增强策略等,并取得了显著进展。然而,对用于后处理的非最大抑制(NMS)的依赖妨碍了YOLOS的端到端部署,并且影响了推理延迟。此外,YOLOS中各部件的设计缺乏全面和彻底的检查,导致明显的计算冗余,限制了模型的性能。原创 2024-06-03 11:02:27 · 1348 阅读 · 5 评论 -
opencv dnn模块 示例(25) 目标检测 object_detection 之 yolov9
YOLOv9 是 YOLOv7 研究团队推出的最新目标检测网络,它是 YOLO(You Only Look Once)系列的最新迭代。YOLOv9 在设计上旨在解决深度学习中信息瓶颈问题,并提高模型在不同任务上的准确性和参数效率。:YOLOv9 引入了可编程梯度信息(PGI)的概念,这是一种新的辅助监督框架,用于生成可靠的梯度信息,以便在训练过程中更新网络权重。PGI 通过辅助可逆分支来解决深度网络加深导致的问题,并提供完整的输入信息以计算目标函数。原创 2024-03-11 07:30:00 · 2698 阅读 · 0 评论 -
opencv dnn模块 示例(24) 目标检测 object_detection 之 yolov8-pose 和 yolov8-obb
前面博文已经已经详细介绍了yolov8网络和测试。本文继续说明使用yolov8 进行和。原创 2024-03-05 20:34:06 · 1861 阅读 · 0 评论 -
jetson AGX orin 配置pytorch和cuda使用、yolov8 TensorRt测试
安装 sudo apt-get install libjpeg-dev zlib1g-dev 之后,删除所有缓存和编译零时文件,再重新编译安装即可。由于gpu推理通常需要预热,拷贝图像(bus.jpg)到文件夹重复多张(以10张为例)即可,重新运行,基本推理耗时。默认安装在系统环境中,若在虚拟环境中,可以创建软连接到虚拟环境中。导出默认的fp32模型,耗时11分钟,40qps,加载测试如下。,执行耗时32分钟(模型文件大小缩小一半),95qps,,如下。若均不报错,且能正常输出说明安装成功,如下图。原创 2024-01-06 21:45:00 · 3409 阅读 · 1 评论 -
opencv dnn模块 示例(23) 目标检测 object_detection 之 yolov8
YOLOv3之前的所有YOLO对象检测模型都是用C语言编写的,并使用了Darknet框架,Ultralytics发布了第一个使用PyTorch框架实现的YOLO (YOLOv3);YOLOv3之后,Ultralytics发布了YOLOv5,在2023年1月,Ultralytics发布了YOLOv8,包含五个模型,用于检测、分割和分类。YOLOv8 Nano是其中最快和最小的,而YOLOv8 Extra Large (YOLOv8x)是其中最准确但最慢的,具体模型见后续的图。原创 2023-11-17 21:30:00 · 6079 阅读 · 1 评论 -
opencv dnn模块 示例(22) 目标检测 object_detection 之 yolov7
模型结构重参化和动态标签分配已经成为了目标检测领域中的主要优化方向。针对于结构重参化,作者通过分析梯度的传播路径来为网络中的不同层进行结构重参化优化,并且提出了不同规划的模型结构重参化。在动态标签分配上,因为模型有多个输出层,所以在训练时就难以为不同的分支分配更好地动态目标。所以作者提出了一个新的动态标签分配办法:coarse-to-fine,即由粗到细引导标签分配的策略。还提出了扩展和复合缩放的方式,通过这种方式可以更高效利用参数量和计算量。这样不仅可以减少大量参数,还可以提高推理速度以及检测精度。原创 2023-11-10 21:45:00 · 841 阅读 · 1 评论 -
opencv dnn模块 示例(21) 目标检测 object_detection 之 yolov6
2023年初,美团视觉智能部发布了 YOLOv6 3.0 版本,再一次将目标检测的综合性能推向新高。本次更新除了对 YOLOv6-N/S/M/L 模型进行全系列升级之外,还推出了大分辨率 P6 模型。其中,YOLOv6-L6 检测精度和速度超越 YOLOv7-E6E,取得当前实时目标检测榜单 SOTA。yolov6 第一版发布于 2022年6月,截止到目前已经更新到4.0版本。图1 YOLOv6 各尺寸模型与其他 YOLO 系列框架的性能对比图。原创 2023-11-03 20:45:00 · 558 阅读 · 0 评论 -
opencv dnn模块 示例(19) 目标检测 object_detection 之 yolox
YOLOX是旷视科技在2021年发表,对标YOLO v5。YOLOX中引入了当年的黑科技主要有三点,decoupled head、anchor-free以及advanced label assigning strategy(SimOTA)。YOLOX的性能如何呢,可以参考原论文图一如下图所示。YOLOX比当年的YOLO v5略好一点,并且利用YOLOX获得当年的Streaming Perception Challenge第一名。原创 2023-10-23 21:15:00 · 1347 阅读 · 0 评论 -
opencv dnn模块 示例(20) 目标检测 object_detection 之 yolor
paper:code:这里以 yolor-p6-640-640 进行测试。网络模型可以看到,输出一共有4个,实际是4个尺度上的结果,最终通过reshape和concat合并成一个输出(输出格式与yolov5一致)。原创 2023-10-29 21:30:00 · 365 阅读 · 0 评论 -
opencv dnn模块 示例(17) 目标检测 object_detection 之 yolo v5
在前文【opencv dnn模块 示例(16) 目标检测 object_detection 之 yolov4】介绍的yolo v4后的2个月,Ultralytics发布了YOLOV5 的第一个正式版本,其性能与YOLO V4不相伯仲。Yolo v5 实际和 Yolo v4 并无继承关系,都是基于yolo v3 改进而来,但因其未发表对应文章、开源协议等问题,被质疑不能算作新一代的YOLO。不过,对于我们学习和使用来说,只要能抓到老鼠,白猫或者黑猫都是好猫。从下面几个方面对比YOLO V5和V4,并简要阐述原创 2023-09-25 22:15:00 · 596 阅读 · 0 评论 -
opencv dnn模块 示例(16) 目标检测 object_detection 之 yolov4
yolo v1~v3 的作者Joseph Redmon于2020年初宣布停止一切CV研究,原因是自己的开源算法已经用在军事和隐私问题上,对他的道德造成了巨大的考验。他的退出是学术界对于AI道德问题一记警钟。salute…俄罗斯大神AlexAB作为YOLO系列的继任者,在Redmon宣发放弃更新Yolo后两个月,发布了YOLOv4。我们以前在windows上测试YOLO算法时,使用的就是AlexAB 的darknet开源项目版本。原创 2023-09-15 21:45:52 · 1222 阅读 · 0 评论 -
opencv dnn模块 示例(15) opencv4.2版本dnn支持cuda加速(vs2015异常解决)
opencv在4.2.0版本正式发布,DNN深度神经网络模块集成Google Summer of Code的项目CUDA后端支持。原创 2019-12-31 14:00:43 · 9092 阅读 · 14 评论 -
opencv objdetect模块 示例 人脸检测与识别 demo
opencv4.5.4在objdetect模块中添加了基于深度学习的人脸检测与识别功能,该项目由OpenCv China于仕琪团队、邓伟洪团队贡献。1、介绍基于深度学习的人脸识别基本上分为两步完成,脸检测与对齐:人脸检测与landmark检测,实现人脸对齐,分为2D/3D对齐人脸特征提取与识别;提取人脸特征数据从128维到2048维都有可能,获取特征之后识别识别按应用情形分2种:一种是1:1称为比对或验证,确定两张人脸是否为同一人;另外一种1:N称为鉴别或识别,从N个人脸中找出最相近的一个。原创 2022-01-13 22:11:44 · 3580 阅读 · 0 评论 -
opencv contrib模块 示例 WeChat qrcode微信二维码检测解码
在opencv 4.5.3 的 contrib中, 腾讯WeChatCV团队贡献了wechat_qrcode模块,3行代码即可在opencv中实现微信的扫码功能。Wechat QRCode 使用2个CNN模型,一个用于检测二维码的的包围框bounding box,另一个用于在二维码较小或有变形时的超分辨率重建。......原创 2022-01-09 15:17:03 · 13262 阅读 · 4 评论 -
opencv dnn模块 DNN中Layer的动态创建、Net自定义网络搭建示例
使用opencv的dnn功能,多数为直接加载第三方模型,同其他框架类似,opencv的dnn模块也是可以如同搭积木一样,拼装自己的网络结构(官方支持的层、自己注册的层).原创 2019-09-24 23:18:02 · 1565 阅读 · 0 评论 -
opencv dnn模块 示例(14) 添加自定义层、使用第三方模型
在opencv中dnn模块添加自定义层,先对caffe中AllPassLayer进行测试,不带训练学习参数,再添加自定义的卷积层,有训练学习参数。对opencv中添加自定义层的整个流程进行了简单介绍。原创 2019-05-08 14:20:21 · 5131 阅读 · 7 评论 -
opencv dnn模块 示例(13) 自然场景文本检测 Scene Text Detector-EAST
opencv的dnn模块,加载tf模型east进行自然场景文本检测。原创 2019-03-13 14:34:16 · 4947 阅读 · 21 评论 -
opencv dnn模块 示例(11) 灰度图彩色化 colorization
opencv dnn模块对灰度图(彩色图L通道)进行彩色化,推理出a,b通道, 合并L,a,b转换成彩色图。原创 2019-03-12 14:36:06 · 1789 阅读 · 1 评论 -
opencv dnn模块 示例(12) 图像风格化 style transfer
opencv dnn模块图像风格化转换,使用fast-neural-style.原创 2019-03-12 15:43:01 · 1659 阅读 · 6 评论 -
opencv dnn模块 示例(10) mask rcnn inception V2
opencv的dnn模块测试mask rcnn,使用inception v2结构,进行结果实例化结果输出原创 2019-03-04 13:24:51 · 3036 阅读 · 21 评论 -
opencv dnn模块 示例(9) 使用 Intel's Inference Engine
Deep Learning Deployment Toolkit from the OpenVINO™ toolkit R4opencv dnn模块使用Intel's Deep Learning Inference Engine backend进行inference.原创 2019-02-27 19:50:42 · 5194 阅读 · 6 评论 -
opencv dnn模块 示例(8) 语义分割 segmentation(ENet/fcn8s)
opencv的dnn模块进行semantiic segmentation语义分割:ENet道路场景分割,fcn8s的voc数据集分割原创 2019-02-27 19:44:12 · 7691 阅读 · 61 评论 -
opencv dnn模块 示例(7) openpose关键点
opencv dnn openpose关键点检测。三个模型测试 coco、mpi、hand。原创 2019-02-12 15:31:07 · 5951 阅读 · 11 评论 -
opencv dnn模块 示例(6) 目标检测 object_detection (5) TensorFlow Faster-RCNN
opencv dnn模块 目标检测 object_detection tensorflow faster-rcnn原创 2019-02-01 14:42:40 · 1473 阅读 · 0 评论 -
opencv dnn模块 示例(5) 目标检测 object_detection (4) TensorFlow SSD
opencv dnn模块 目标检测 object_detection tensorflow ssd原创 2019-02-01 14:02:50 · 1870 阅读 · 0 评论 -
opencv dnn模块 示例(4) 目标检测 object_detection (3) caffe SSD
opencv dnn模块 目标检测 object_detection caffe mobile ssd原创 2019-02-01 13:40:18 · 2353 阅读 · 0 评论 -
opencv dnn模块 示例(3) 目标检测 object_detection (2) YOLO object detection
opencv dnn模块 示例(2) 目标检测 object_detection (2) YOLO object detection原创 2019-02-01 13:24:38 · 3913 阅读 · 6 评论 -
opencv dnn模块 Net Layer
opencv dnn模块 Net Layer简单介绍原创 2019-01-31 17:08:19 · 4094 阅读 · 1 评论 -
opencv dnn模块 示例(2) 目标检测 object_detection (1) OpenCV's face detection network
opencv4的dnn模块读取深度学习模型进行目标检测原创 2019-01-31 13:22:38 · 1810 阅读 · 1 评论 -
opencv dnn模块 示例(1) 图像分类 classification
使用opencv的dnn模块读取caffe的模型squeezenet,对输入图像进行分类原创 2019-01-30 13:25:00 · 5298 阅读 · 10 评论 -
OpenCv2 学习笔记(6) Mat元素访问和效率比较
上一个学习笔记中对Mat进行了详细的介绍,并且简单介绍了Mat元素访问的3种基本方法,通过ptr行指针、data数据指针和at模板函数。本章以二维矩阵为例,对各种访问方式进行详细的介绍,并给出各种访问方式在debug模式下的效率对比结果。1、执行时间获取要比较执行效率,就要获取某一段程序执行的时间,可以利用opencv提供的c接口和c++接口两种方法,都是利用系统计数和单位时间计数频率计算...原创 2016-11-21 21:38:02 · 6165 阅读 · 1 评论 -
OpenCv2 学习笔记(5) Mat类详解
Mat的内容非常多,大致可以分类 构造函数、成员函数2个大板块。1、Mat构造函数Mat::MatC++: Mat::Mat()C++: Mat::Mat(int rows, int cols, int type)C++: Mat::Mat(Size size, int type)C++: Mat::Mat(int rows, int cols, int type, const ...原创 2016-11-21 21:37:47 · 11316 阅读 · 2 评论 -
OpenCv2 学习笔记(4) OpenCv基本的数据类型
Mat的详细讲述安排在下一节,本节将简要介绍其他最常用的几个数据类型,包括Point_、Point3_、Size_、Rect_、Matx、Vec、Scalar_等,分别为二维点、三维点、尺寸、矩形、小矩阵、小向量、标量等模板类。1、Point_可以理解为二维点,包括下面的int、float和double3三种类型的二维点。typedef Point_<int> Point...原创 2016-11-19 13:16:02 · 3020 阅读 · 2 评论 -
OpenCv2 学习笔记(3) Mat、CvMat和IplImage的相互转化
在opencv2.4.9有一些函数仍然是没有C++接口,因此在opencv2中有时需要用到CvMat或者IplImage,那么这些数据结构之间怎么彼此进行转换是需要考虑的一个问题。我们可以从需要的一种数据结构中读取并赋值到新的数据结构中去,这是一种深复制。通常我们需要的的是数据本身,而不是需要对数据进行更改,因此选择opencv自带的函数是比较合适的,因为大多数的函数都是浅复制。1、Mat –...原创 2016-11-13 19:46:07 · 963 阅读 · 0 评论 -
OpenCv2 学习笔记(2) Mat图像显示
在学习笔记(1)中已经提到opencv2.x及3.x中用Mat代替了CvMat和IplImage,也就是说Mat既可以代替CvMat类型矩阵数据,也可以代替IplImage类型的图像数据,也就是说Mat统一了前两中数据结构。因此在OpenCv2中对矩阵数据和图像数据都可以进行显示。主要的三个函数如下1、imread()原型为C++: Mat imread(const string&...原创 2016-11-13 19:45:54 · 8541 阅读 · 0 评论 -
OpenCv2 学习笔记(1) Mat创建、复制、释放
opencv和VS2013的安装图文教程网上有很多,建议安装好之后,用VS2013建立一个空工程,用属性管理器分别新建一个对应debug和release工程的props配置文件,以后直接根据工程需要添加对应配置文件,而不需要每次新建工程后填写引用目录、库目录、附加依赖项,减少重复工作。(用WLW编辑,段间距有点大!)需要说明的是,本学习笔记不会按照先讲数据结构,再讲如何使用。与OpenCv1....原创 2016-11-13 19:45:35 · 70687 阅读 · 0 评论