自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(421)
  • 资源 (3)
  • 问答 (5)
  • 收藏
  • 关注

原创 算法分析与设计之常见刷题算法

leetcode刷题中常用的方法!

2025-02-11 18:50:23 597

原创 算法分析与设计之近似算法

近似算法(Approximation Algorithm)是一类用于求解优化问题的算法,特别是对于那些难以精确求解的大规模问题。对于许多复杂的 NP-hard 问题,寻找精确解可能是不可行的,因为计算复杂度可能过高,甚至是不可计算的。在这种情况下,近似算法提供了一种有效的替代方案,能够在合理的时间内找到一个“足够好的”解,虽然这个解可能不是最优解。

2025-02-11 18:45:27 869

原创 算法分析与设计之NP问题

NP问题(Nondeterministic Polynomial-time problem) 是计算复杂性理论中的一个重要概念,属于计算复杂度类的核心内容。简单来说,NP问题是指那些能够在多项式时间内由非确定性图灵机解决的问题,或者可以在多项式时间内验证其解是否正确的问题。

2025-01-16 20:31:56 989

原创 算法分析与设计之网络流

网络流(Network Flow) 是图论中的一个经典问题,广泛应用于计算机网络、运输、资源调度等领域。它主要研究如何在网络中传递流量,使得资源得到有效分配,并且满足特定的约束条件。网络流问题通常涉及到一个带有容量约束的有向图,其中每条边都有一个容量限制,表示在某一单位时间内可以通过的流量。网络流的目标是找到最大可能流量的分配方案,或者在某些特定条件下找到一个最优的流量分配。

2025-01-16 20:22:57 699

原创 算法分析与设计之动态规划算法

动态规划(Dynamic Programming,DP)是一种用于解决优化问题的算法技术。它通过将问题分解成更小的子问题,解决这些子问题并将其结果存储起来,避免重复计算,从而提高计算效率。动态规划的核心思想是将原问题分解为子问题,先解决子问题,再用它们的结果来构建原问题的解。

2025-01-15 22:17:15 1005

原创 算法分析与设计之贪心算法

贪心算法是一种基于贪心策略的优化算法,通过一系列的选择得到问题的解,,这种启发式的策略并不能总能获得最优解,通常这种算法对于解决一些最优化问题非常有效,尤其是那些可以通过局部最优解来达到全局最优解的问题。对于一个具体的问题,怎么知道是否可用贪心算法解决此问题,以及能否得到问题的最优解呢?这类问题一般具有两个重要的性质:和。是指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。

2025-01-15 21:58:06 1503

原创 算法分析与设计之分治算法

分治算法(divide and conquer)的核心思想:分而治之 ,即将原问题划分成 个规模较小,并且结构与原问题相似的独立子问题,递归地解决这些子问题,然后再合并其结果,就得到原问题的解。

2024-12-13 21:13:18 807

原创 算法设计之时间复杂度与渐进分析

算法分析与设计期末复习!

2024-11-27 10:21:43 970

原创 ncnn之resnet图像分类网络模型部署

以R通道为例,原始图片的像素值是从0到255,所以像素值归一化即像x/255,减去均值再除以标准差就是==(x/255-0.485)/0.299==,把255乘下去也就是==(x-0.485×255)/255×0.299==。打开resnet18.param可以看到resnet18的结构,如上图所示,其中像Convolution,ReLU,Pooling,Split,BinaryOp都是一个算子也就是layer。可以看出输出了三个类别263,264,151,可以对imageneg类别中查找分别对应的标签。

2024-09-01 09:51:41 1380

原创 ncnn之yolov5(7.0版本)目标检测pnnx部署

支持python的首选pip,否则就源码编译。ncnn导出路线有以下选择,一般常选用从pt文件或者torchscrip文件导出通过pnnx导出。

2024-08-31 21:25:50 2540

原创 NCNN入门之编译与安装

ncnn 是一个为手机端极致优化的高性能神经网络前向计算框架。ncnn 从设计之初深刻考虑手机端的部署和使用。无第三方依赖,跨平台,手机端 cpu 的速度快于目前所有已知的开源框架。基于 ncnn,开发者能够将深度学习算法轻松移植到手机端高效执行, 开发出人工智能 APP,将 AI 带到你的指尖。ncnn 目前已在腾讯多款应用中使用,如:QQ,Qzone,微信,天天 P 图等。功能概述支持卷积神经网络,支持多输入和多分支结构,可计算部分分支无任何第三方库依赖,不依赖 BLAS/NNPACK 等计算框架。

2024-08-31 09:10:15 1825

原创 自制深度学习推理框架之表达式层的设计与实现

在 PNNX 中,Expression 类**用于表示和处理计算图中的算子或节点的表达式**。这些表达式通常涉及张量之间的运算、函数调用、以及其他数学或逻辑操作。

2024-08-30 19:50:25 1420 1

原创 自制深度学习推理框架之卷积和池化算子的设计与实现

池化算子和卷积算子是神经网络中的常见操作,本文将介绍其具体的计算,并了解卷积的加速计算Im2col算法。

2024-08-30 18:18:29 1741

原创 自制深度学习推理框架之计算图设计

计算图(Computational Graph)是一种用于表示数学运算和数据流的图结构,在深度学习中,它用于描述神经网络中的操作及其依赖关系。节点:表示操作(如加法、乘法、激活函数等)或变量(如输入、权重、偏置等)。边:表示数据的流动,通常是张量(Tensor)在节点间传递。

2024-08-16 17:33:04 1497

原创 自制深度学习推理框架之Tensor模板类的设计与实现

张量(Tensor)是一个多维数组的通用化概念,在数学和计算科学中被广泛使用,特别是在机器学习、物理学和工程学等领域。它是标量(0维张量)、向量(1维张量)和矩阵(2维张量)的一般化,可以扩展到更高的维度。Tensor可以看作是一个具有任意维数的多维数组。张量的维数,即张量的轴的数量。0维张量是标量,1维张量是向量,2维张量是矩阵,依此类推。每个维度的长度。形状决定了张量在每个维度上包含的元素数量。张量中的元素类型,如整型、浮点型等。

2024-08-16 16:52:10 1045

原创 自制深度学习推理框架之入门基础

从零自制深度学习推理框架,主要介绍了环境配置和基础库的使用。

2024-08-11 16:46:35 1276

原创 Modern Effective C++前期知识(一)

Modern Effective C++带你体验前所未有的C++学习之旅!

2024-08-11 16:07:15 1045

原创 常用 C++ STL 用法

C++ STL常用容器、迭代器和算法。

2024-07-28 15:49:16 812

原创 图论之常用算法

介绍图论中常用的相关算法

2024-07-28 11:38:06 1911

原创 C++多线程

在 C++11 之前,多线程编程主要依赖于操作系统提供的 API,如 POSIX 线程(pthread)库。而从 C++11 开始,标准库引入了一组新的线程库,提供了更简洁和跨平台的多线程支持。C++11 标准引入了 头文件,使得多线程编程更加简洁和跨平台。新标准库提供了创建和管理线程、同步数据的工具。

2024-07-24 22:24:22 927

原创 Linux多线程C/C++

在 Linux 中,多线程编程可以显著提高应用程序的性能和响应能力。多线程允许程序在多个线程中并行执行,从而更好地利用多核处理器。Linux 中的多线程编程主要依赖于 POSIX 线程(pthread)库。这个库提供了创建、同步和管理线程的各种函数。使用 头文件可以实现多线程应用。

2024-07-24 21:39:25 1661 2

原创 深度学习语义分割算法之基础知识

一般在计算机视觉领域分割任务主要分为语义分割(Semantic Segmentation)实例分割(Instance Segmentation)全景分割(Panoramic Segmentation)这三大类。

2024-06-25 19:42:12 1400 5

原创 深度学习目标检测算法之RetinaNet算法

目标检测算法RetinaNet网络原理同时介绍了FPN特征金字塔和Focal Loss损失函数!

2024-03-27 21:31:01 10478 2

原创 深度学习目标检测算法之SSD算法

SSD目标检测算法原理!!!

2024-03-27 16:21:32 2022

原创 深度学习目标检测算法之Faster R-CNN算法

目标检测是当前计算机视觉领域内研究的一个热点,与图像分类不一样的是,目标检测不仅要准确地识别出图像中目标的类别,还要准确的定位该目标的位置,并用边界框把目标框起来。基于深度学习的目标检测算法可以分为两类:二阶算法(Two Stage)和一阶算法(One Stage)二阶算法:先生成区域候选框,再通过卷积神经网络进行分类和回归修正。常见算法有 RCNN、SPPNet、Fast RCNN,Faster RCNN 和 RFCN 等。

2024-03-25 16:57:18 7690

原创 CMake之构建跨平台项目的强大工具

本来在学习TensorRT的时候就想记录一下CMake的知识点的,但是当时由于临近期末各科作业有多一直拖动了现在哈哈哈,最近ROS中也用到了CMake决定整理一下常用的指令。CMake 是一个项目构建工具,并且是跨平台的。

2024-02-06 21:05:12 1768 11

原创 ROS入门之通信机制及常用API

ROS的通信架构是ROS的灵魂,也是整个ROS正常运行的关键所在。ROS通信架构包括各种数据的处理,进程的运行,消息的传递等等。基于发布/订阅的话题通信基于客户端/服务器的服务通信基于RPC的参数服务器,每个通信方式都有自己的特点。这里主要记录了通信架构的基础通信方式和相关概念、各种通信常用API以及其他常用API。在ROS通信协议中,数据载体是通信中的核心组成部分。ROS通过std_msgs库封装了一些原生的数据类型,如等。然而,这些数据类型一般只包含一个data字段,结构相对简单。

2024-02-04 19:57:03 1484

原创 基于深度学习的多功能人脸识别系统

这个工程是机器视觉的课程设计作业涉及OpenCV图像处理、DNN网络模型部署、Mqtt阿里云连接以及SMTP邮件发送等几个知识点,以上基于Qt(C++)和OpenCV实现的,趁着寒假简单记录一下开发过程哈哈哈!

2024-02-03 10:44:40 1768 5

原创 ROS1入门之节点与指令

ROS1学习记录!!

2024-02-02 17:03:27 2992

原创 ROS2入门之节点与指令

ROS(Robot Operating System)是一个开源的机器人操作系统框架,最初由Willow Garage公司于2007年发起。ROS提供了一套工具和库,用于构建和开发机器人应用程序。其特点包括基于消息传递的中间件、通信模型、工具集以及开源的性质。ROS的通信机制采用发布-订阅模型和服务调用,使得不同组件(节点)能够实现信息交流。ROS在学术界和工业界都得到广泛应用,但在大规模系统中可能存在通信效率和实时性方面的挑战。ROS 2是ROS的下一代版本,旨在解决ROS的一些限制和缺点。

2024-01-11 20:50:38 3637

原创 TensorRT之LeNet5部署(onnx方式)

本文记录一下TensorRT部署流程,上一篇使用wts文件构造网络结构,这篇会使用ONNX构造网络。

2023-12-03 13:50:46 470 2

原创 TensorRT之LeNet5部署(wts方式)

零基础入门学习TensorRT部署深度学习网络,本文记录一下TensorRT部署流程,参考了网上很多例程,可能有的代码是旧版本的,但是这并不影响的,这里主要是使用API的方式构建网络。

2023-11-28 14:41:29 662

原创 Python进阶之闭包和装饰器

一般来说闭包这个概念在很多语言中都有涉及,本文主要谈谈python中的闭包定义和相关用法以及装饰器。Python中使用闭包主要是在进行函数式开发时使用,而装饰器(语法糖)在闭包的基础上为函数添加额外的功能,并且在不改变原函数代码的情况下。

2023-11-05 23:20:07 250 2

原创 Python进阶之推导式与生成器

风间琉璃帮助欢迎关注订阅专栏。

2023-11-04 10:36:56 853

原创 Python进阶之迭代器

迭代器生成器装饰器。这里给大家先介绍迭代器相关的知识。迭代:通常从一个对象中依次取出数据,这个过程叫做遍历,也称为**迭代(**重复执行某一段代码块,并将每一次迭代得到的结果作为下一次迭代的初始值)。可迭代对象是指该对象可以被用于for循环,例如:集合,列表,元组,字典,字符串,迭代器等。直接作用于for循环的对象统称为可迭代对象(Iterable)那么在代码层面如何定义一个可迭代对象呢?在python中如果一个对象实现了__iter__方法,则该对象可以称之为可迭代对象。

2023-10-15 22:29:55 622 3

原创 Pytorch之MobileViT图像分类

MobileViT是一种基于架构的轻量级视觉模型,旨在适用于移动设备和嵌入式系统。ViT是一种非常成功的深度学习模型,用于图像分类和其他计算机视觉任务,但通常需要大量的计算资源和参数。MobileViT的目标是在保持高性能的同时,减少模型的大小和计算需求,以便在移动设备上运行,据作者介绍,这是第一次基于轻量级CNN网络性能的轻量级ViT工作,性能SOTA。性能优于MobileNetV3、CrossviT等网络。

2023-10-13 13:42:06 5833 12

原创 Pytorch之RepVGG图像分类

RepVGG是一个简单的网络结构,它通过堆叠来构建整个网络,在2021 年发布在CVPR的一篇论文Making VGG-style ConvNets Great Again提出来的,使用structural re-parameterization(结构重参数化)的方式让类VGG的架构重新获得了更好的性能和更快的速度。RepVGG核心思想是:通过结构重参数化思想,让训练网络的多路结构(多分支模型训练时——性能高)转换为推理网络的单路结构(模型推理时——速度快、省内存)),

2023-10-13 13:40:20 868

原创 Pytorch之ConvNeXt图像分类

CNN自1989年以来一直存在,当时第一个多层CNN,称为ConvNet,由Yann LeCun开发。该模型可以执行视觉认知任务,例如识别手写数字。1998年,LeCun开发了一种改进的ConvNet模型,称为LeNet。由于其在光学识别任务中的高精度,LeNet在发明后不久就被工业使用。从那时起,CNN一直是工业界和学术界最成功的机器学习模型之一。下图显示了 CNN 生命周期中架构发展的简要时间表,从 1989 年一直到 2020 年,

2023-10-12 17:29:53 3382 2

原创 Pytorch之SwinTransformer图像分类

`Swin Transformer`(Liu et al., 2021) 是一种基于视觉Transformer的层次化模型。与之前的Vision Transformer相比,Swin Transformer采用了层次化构建方法,使用`不同倍数的下采样`来构建特征图,并在每个窗口内使用`Windows Multi-Head Self-Attention(W-MSA)`进行注意力计算。这种方法既减少了计算量,尤其是在浅层特征图较大时,又能在相邻窗口之间`传递信息`。

2023-10-11 17:58:22 5492 3

原创 Pytorvh之Vision Transformer图像分类

Vision Transformer(ViT)是将Transformer模型应用于计算机视觉领域的方法,用于图像分类任务。与传统的卷积神经网络(CNN)不同,ViT通过将图像分成==固定大小的图块==(Image Patches)并展平成序列,然后将==序列输入Transformer模型进行处理==。在Transformer中,`Self-Attention结构被用来捕捉序列中不同位置的关联信息`。通过多层的Transformer编码器,ViT能够从输入图像中学习到更高级的特征表示,最终输出图像的类别。

2023-10-11 17:56:59 5643 6

DNN_Face_Recognizer.zip

opencv dnn 人脸识别

2024-04-03

YOLOv5:高效实时目标检测的新巅峰

YOLOv5(You Only Look Once version 5)代表了目标检测领域的最新突破,将高效实时目标检测推向了新的高度。这一算法结合了轻量级网络架构和卓越的性能,为各种应用场景提供了无限可能。我们将深入研究YOLOv5的工作原理、设计创新以及如何在不同场景中应用它。无论您是计算机视觉研究者、工程师,还是对目标检测技术感兴趣的任何人,YOLOv5都将为您的项目带来强大的性能和实时性。不容错过这个有关高效目标检测的精彩探讨!让我们一起来探索这个领域的新巅峰吧。通过OpenCV DNN C++部署yolov5的onnx模型。

2023-09-20

OpenCV YOLOv4:下一代目标检测算法的革命性突破

YOLOv4(You Only Look Once version 4)是目标检测领域的一项革命性突破,将计算机视觉推向了新的高度。它结合了高精度的物体检测和出色的实时性能,为各种应用场景带来了巨大的潜力。这里我们将深入探讨YOLOv4的原理、性能以及如何在自己的项目中应用这一强大的算法。无论您是计算机视觉研究者、工程师,还是对物体检测技术感兴趣的任何人,都不容错过这个关于YOLOv4的精彩介绍!让我们一起来探索这一引领未来的目标检测算法吧。使用OpneCV dnn模块部署的(C++)。

2023-09-19

OpenCV yolov2-tiny 目标检测

使用OpenCV的DNN模块部署YOLOv2-tiny网络模型,实现图像的目标检测。资源包含了YOLOv2-tiny网络的模型文件yolov2-tiny-voc.weights、配置文件yolov2-tiny-voc.cfg以及标签文件voc.names,下载之后可以直接运行哦!

2023-09-18

OpenCV C++ YOLOv3目标检测

使用OpenCV的DNN模块部署YOLOv3网络模型,实现图像的目标检测。资源包含了YOLOv3网络的模型文件yolov3.weights、配置文件yolov3.cfg以及标签文件coco.names,下载之后可以直接运行哦!

2023-09-17

OpenCV Goturn目标追踪

OpenCV DNN部署 Goturn网络模型实现追踪目标 。资源包含了该网络的模型文件goturn.caffemodel、配置文件goturn.prototxt,下载之后可以直接运行哦!

2023-09-14

OpenCV 年龄和性别预测

OpenCV DNN部署 CNN预测年龄和性别 。资源包含了年龄和性别网络的模型文件age_net.caffemodel和gender_net.caffemodel、配置文件deploy_age.prototxt和deploy_gender.prototxt以及包含人脸检测haarcascade_frontalface_alt_tree.xml文件,下载之后可以直接运行哦!

2023-09-14

OpenCV FCN图像分割

OpenCV DNN部署 FCN图像分割 。资源包含了FCN网络的模型文件fcn8s-heavy-pascal.caffemodel、配置文件fcn8s-heavy-pascal.prototxt,下载之后可以直接运行哦!

2023-09-12

OpenCV MobileNet-SSD目标检测

OpenCV DNN部署 MobileNet-SSD CUDA加速,最高帧率可以达到300帧,不使用CUDA加速最高帧率可以到达60帧左右。。资源包含了SSD网络的模型文件MobileNetSSD_deploy.caffemodel、配置文件MobileNetSSD_deploy.prototxt,下载之后可以直接运行哦! ​​

2023-09-12

OpenCV4-CUDA

硬件:Win11 + OpenCV4.7.0 + CUDA ToolKit 12.0.0 + cuDNN8.8.0 使用VS2022版本进行的编译安装,有相同配置的uu可以下载使用。

2023-09-12

OpenCV SSD目标检测(C++)

使用OpenCV的DNN模块部署SSD网络模型,实现图像的目标检测。资源包含了SSD网络的模型文件VGG_ILSVRC2016_SSD_300x300_iter_440000.caffemodel、配置文件deploy.prototxt以及标签文件labelmap_det.txt,下载之后可以直接运行哦! ​​

2023-09-12

GoogLeNet图像分类

使用OpenCV DNN模块部署GoogLeNet网络并完成图像分类任务。包含其网络的所有资源如:bvlc_googlenet.caffemodel、bvlc_googlenet.prototxt、synset_words.txt。下载之后打开VS或者其他编译器直接可以运行。

2023-09-11

OpenCV4.5.3编译后的文件包含扩展库文件,可以直接食用

OpenCV4.5.3编译后的文件包含扩展库文件,可以直接食用。

2023-09-11

Opencv DNN各种网络模型

包含各种网络模型以及使用dnn模块部署(C++/Python)

2023-09-07

赛灵思2020.2安装套件

赛灵思2020.2安装套件

2022-12-19

DOS tool.rar

DOS坏境搭建资源包

2022-01-18

linux 0.01内核源代码.zip

linux 0.01内核源代码.zip

2021-09-15

linux-0.11.zip

linux-0.11.zip

2021-09-15

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除