自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (14)
  • 收藏
  • 关注

原创 linux/docker/git命令合集

1、查看进程多少2、zip 压缩3、查看当前文件夹占用内存大小du -sh4、wget下载多个文件。

2023-03-20 14:28:29 33 1

原创 【深度学习实践】文本图片去水印

本文不会介绍具体的去水印算法实现流程,仅介绍大体的思路,供学习之用。去水印是为了得到不带水印的图片,图片的大小并不会改变,也就是说需要一个算法,输入是带水印的图片,输出是不带水印的图片,输入和输出的图片分辨率相同。很容易想到计算机视觉的一个类似的任务-语义分割。语义分割算法可以端到端的对图片每个像素点进行分类,它的输出是各个类别的概率图,但是去水印要求输出的是图片,所以我们可以采用语义分割模型,并对其进行修改,使其适用于水印去除的任务。

2022-11-07 11:05:44 1291

原创 【深度学习实践】基于深度学习的车牌识别(python,车牌检测+车牌识别)

基于深度学习的车牌识别任务可以拆解为2个步骤:车牌检测-车牌识别。其中车牌检测的目的是确认图片中车牌的位置,根据检测到的车牌位置把图片中的ROI裁剪出来,车牌识别算法用于识别裁剪出的车牌图像中的具体内容。本文使用PaddleOCR工具实现了车牌识别任务,首先使用PaddleOCR的检测算法DBNet检测出车牌位置,再将车牌位置裁剪送入文本识别算法CRNN来识别车牌的具体内容。本文总结了PaddleOCR提供的车牌识别方案,并进行了简化,根据识别的结果来看可以很好地检测车牌图像。

2022-11-05 21:53:10 8469 5

原创 【论文笔记】3D点云分割-PointNet

3D点云分割开山之作PointSeg论文笔记及运行示例,快来看看吧。

2022-07-18 22:17:26 1634 2

原创 github常用命令及问题解决方法

github常用命令及问题解决方法

2022-07-16 09:08:08 270

原创 【显存优化】深度学习显存优化方法

深度学习gpu的显存至关重要,显存过小的话,模型根本无法跑起来,本文介绍几种显存不足时的优化方法,能够降低深度学习模型的显存要求。

2022-06-27 09:02:03 4225

原创 【模型部署】PaddleOCR模型openvino部署(二)

​上一篇博客【模型部署】PaddleOCR模型openvino部署(一)介绍了PaddleOCR检测模型DBNet的部署方法,本篇将介绍文本方向分类、文本识别的 部署方法,同时将检测、方向分类、文本识别模型串联起来,给出完整的部署流程。​

2022-04-26 20:59:11 2545 3

原创 【论文笔记】Shunted Self-Attention via Multi-Scale Token Aggregation 论文笔记及实验

Shunted Self-Attention via Multi-Scale Token Aggregation论文笔记。ViT模型在设计时有个特点:在相同的层中每个token的感受野相同。这限制了self-attention层捕获多尺度特征的能力,从而导致处理多尺度目标的图片时性能下降。针对这个问题,作者提出了shunted self-attention,使得每个attention层可以获取多尺度信息。

2022-04-17 16:15:51 5122

原创 【论文笔记】CCNet阅读笔记

上下文信息在语义分割任务中非常重要,CCNet提出了criss-cross attention模块,同时引入循环操作,使得图片中每个像素都可以和其他像素建立联系,从而使得每个像素都可以获得丰富的语义信息

2022-04-14 19:54:36 671

原创 【模型部署】PaddleOCR模型openvino部署(一)

本文将使用openvino部署PaddleOCR官方提供的检测模型,实现文本检测功能。

2022-04-09 12:24:25 4237 7

原创 【论文笔记】DDRNet论文阅读笔记及复现

轻量级语义分割模型大致分为2类:Encoder-Decoder结构(如ESPNet)和two-pathway(如BiSeNet)。类似two-pathway结构,DDRNet使用Dual-resolution,并引入DAPPM(Deep Aggregation Pyramid Pooling Module)模块。在Cityscapes测试集、GPU 2080Ti,DDRNet-23-slim达到102FPS,miou77.4%。

2022-04-08 20:19:55 1256 2

原创 【论文笔记】DeiT论文阅读笔记

针对ViT难训练的问题,DeiT提出参数设置、数据增强、知识蒸馏来更有效地训练ViT。DeiT提出的训练方法成为后续ViT模型的训练标注。

2022-04-05 20:59:42 3754

原创 【论文笔记】Swin-Transformer系列阅读笔记

本文提出了一个计算机视觉任务中的通用backbone模型:Swin Transformer。Swin将self-attention限制在局部窗口内进行,降低了Attention的计算量,同时利用滑动窗口机制使得不同窗口间建立联系,Swin在各个视觉任务屠榜(一个字:强)。...

2022-04-03 19:40:48 2791

原创 【论文笔记】MetaFormer/PoolFormer 论文笔记及体验

Transformer已经证明在计算机视觉任务中有非常大的潜力,一种普遍的看法是基于attention的token mixer模块使transformer具有竞争力。但是将attention用spatial MLP替代后,模型仍然具有非常好的效果。那么是不是transformer的结构而不是attention使其有效呢?作者使用池化层代替transformer中的attention,构建了PoolFormer模型,取得了非常好的效果,ImageNet-1k准确率达到82.1%。证明了Transformer结

2022-04-03 11:38:05 3185

原创 【论文笔记】STDC Net 论文阅读笔记

BiSeNetV1和BiSeNetV2都采用双分支结构(spatial path 和 context path),分别用来提取空间信息和上下文信息,多分支结构计算耗时较多,且使用图像分类任务的预训练模型并不一定适合语义分割任务。STDC对BiSeNet结构做出了改变,移除了spatial分支,同时采用Short-Term Dense Concate network(STDC network)结构并引入辅助头detail head来提取低级细节信息。STDC在citiscapes测试集上mIoU为71.9%,

2022-04-02 18:45:04 1806

原创 【Matting】MODNet:实时人像抠图模型-NCNN C++量化部署

MODNet是一个轻量级Matting模型,之前已经使用python部署MODNet的onnx模型,本章节将使用NCNN部署MODNet,除此之外,对模型进行静态量化,使其存储空间降低为1/4。Matting效果如下:

2022-04-01 17:51:40 4466 17

原创 【深度学习】模型量化-笔记/实验

深度学习的模型参数类型为FP32,每个数值在存储时需要32bit存储空间,若是将其转换为int8或者uint8来保存,那么模型的大小将会降低为1/4。下表为不同精度的数值计算成本,可以看出8bit数值的计算成本远低于32bit计算成本。

2022-03-31 11:35:06 2994 3

原创 【Matting】MODNet:实时人像抠图模型-onnx C++部署

本文将使用C++部署MODNet模型,实现图片Matting和摄像头Matting功能。

2022-03-28 10:40:04 5768 7

原创 【Matting】MODNet:实时人像抠图模型-onnx python部署

MODNet是一个实时Matting的深度学习模型,本文是MODNet的模型部署教程,将MODNet的onnx模型使用python部署,实现了图片Matting,视频Matting等功能。

2022-03-28 09:32:25 5157 5

原创 【Matting】MODNet:实时人像抠图模型-笔记

现有的Matting方法常常需要辅助的输入如tripmap才能获得好的效果,但是tripmap获取成本较高。MODNet是一个不需要Trimap的实时抠图算法,在1080Ti FPS可达到67。

2022-03-27 18:21:53 8618 4

原创 【论文笔记】OCRNet论文阅读笔记

语义分割任务中,像素所属的类别就是像素所在的对象的类别,能不能利用像素和其所属目标的关系呢?OCRNet提出了一个有效方法,利用像素所属的目标的上下文信息来提升像素的表征能力(representation)。

2022-03-25 10:34:44 1675

原创 【论文笔记】ConvNeXt论文阅读笔记

自从ViT出现,在分类任务中很快取代各种CNN网络拿下SOTA。ViT的模型设计结构和传统的CNN结构差异很大,会不会是CNN的设计结构限制了CNN的能力呢?如果把CNN的结构设计成和ViT类似,CNN又会有什么样的表现呢?Transformer的设计结构会影响CNN的性能吗?实验证明,CNN依然有效!仿照Transformer结构,作者对ResNet结构进行修改,实验证明修改后ResNet50的性能超过了Swin-T。

2022-03-23 11:51:03 2804

原创 【语义分割】语义分割上采样方法汇总

在语义分割模型中,一般通过Backbone获得不同分辨率的特征图,然后将特征图融合生成预测结果,在此过程中,不可避免地需要将低分辨率特征图进行上采样提高其分辨率,本文统计了常用的上采样方法,并给出部分上采样算法的numpy实现代码,与opencv进行对比检验代码的正确性。一、插值插值利用像素间的相互关系计算出1、最近邻插值最近邻插值是最简单的插值方法,选取离目标点最近的点作为新的插入点,如下图示例:numpy实现及opencv对比:import cv2from math i.

2022-03-22 18:09:19 2877

原创 【论文笔记】RepLKNet论文阅读笔记

自从VGG提出以后,各种CNN网络层出不穷,但是他们都遵循了VGG的设计思想,通过多个小卷积核叠加来得到大的感受野同时保证较少的参数量(2各3x3的卷积核感受野和5x5的卷积核感受野相同,但是参数18<25)。随着ViT逐渐在各类视觉任务种拿到SOTA的表现,CNN似乎有点后继无力。RepLKNet打破了这种现象,提出使用在CNN网络中使用大的卷积核,RepLKNet在各类视觉任务中获得了SOTA表现。

2022-03-21 20:31:04 2121

原创 【论文笔记】PVT系列论文阅读笔记

ViT适用于处理图像分类任务,但是不适合直接应用到密集预测任务,因为ViT的输出分辨率较低(number of patches)。PVT(Pyramid Vision Transformer)通过巧妙地设计,可以输出高分辨率的特征图,同时引入了SRA(spatial reduction attention)来减少计算量。类似CNN,PVT输出多分辨率特征图,可应用于各类下游任务(语义分割、目标检测等)。

2022-03-19 15:10:00 3459 7

原创 【论文笔记】MPViT论文阅读笔记

传统的ViT模型使用单尺度的PatchEmbedding,MPViT提出使用多尺度PatchEmbedding和多路并行的网络结构,同时移除了cls token。

2022-03-18 21:52:00 730

原创 【深度学习】激活函数合集

神经网络中激活函数的主要作用是提供网络的非线性建模能力,本文包含23种激活函数及其对应的函数图像,也给出pytorch对应的示例可视化代码。

2022-03-18 16:09:43 1375

原创 【语义分割】轻量级人像分割PP-HumanSeg NCNN C++ windows部署

ncnn 是一个为手机端极致优化的高性能神经网络前向计算框架。ncnn 从设计之初深刻考虑手机端的部署和使用。无第三方依赖,跨平台,手机端 cpu 的速度快于目前所有已知的开源框架。基于 ncnn,开发者能够将深度学习算法轻松移植到手机端高效执行。本文将使用NCNN将PP-HumanSeg lite在windows cpu上部署,FPS为18左右。

2022-03-17 22:40:26 2136 9

原创 【论文笔记】MobileNet系列论文阅读笔记

本文为MobileNet系列论文阅读笔记。MobileNet是一个轻量级模型,参数少、推理快,在学术界和工业界都很受欢迎。

2022-03-16 21:24:20 1225

原创 【深度学习】学习率策略合集

深度学习中有各种学习率策略,本文统计了pytorch和paddlepaddle共16种学习率策略,给出示例代码及对应的学习率变化图,相信一定对你有所帮助。

2022-03-16 17:06:08 2972

原创 【论文笔记】Segformer论文阅读笔记

SegFormer是一个简单、高效但功能强大的语义分割模型,它结合了Transformer 与轻量级多层感知 (MLP) 解码器。

2022-03-15 19:22:54 2633

原创 【语义分割】语义分割经典模块

本文将介绍深度学习语义分割任务中常用的几个模块,主要包括:ASPP、PP、Encoding、JPU、DCM几个模块,分析其原理并给出对应的代码实现,相信一定对你有所帮助。

2022-03-15 15:42:00 4439

原创 【论文笔记】ESPNet系列论文笔记

ESPNet是轻量级的网络,目前有ESPNetV1和ESPNetV2共2个版本,本文为论文阅读笔记,包含复现的代码。

2022-03-14 19:32:48 2288

原创 【语义分割】类别不平衡损失函数合集

在语义分割领域,我们会常常遇到类别不平衡的问题。比如要分割的目标(前景)可能只占图像的一小部分,因此负样本的比重很大,导致网络倾向于将所有样本判断为负样本。本文介绍了在数据不平衡时常用的一些损失函数。类别不平衡会出现什么问题呢?假设我们需要训练一个分类器来对黄豆和绿豆分类,用100颗豆子训练分类器,其中99颗黄豆、1颗绿豆,那么分类器会倾向于把所有豆子都分类为黄豆,因为这么做就可以达到99%的准确率。但是我们不希望分类器这么做,所以需要一些方法来提升分类器的性能。一、Weighted Cross E

2022-03-14 17:26:56 7729 2

原创 【论文笔记】DeepLab系列论文阅读笔记

本文为DeepLab系列论文阅读笔记,包括DeepLabV1、DeepLabV2、DeepLabV3、DeepLabV3+。

2022-03-12 18:43:23 3656

原创 【论文笔记】BiSeNetV2论文阅读笔记

论文:BiSeNet V2: Bilateral Network with Guided Aggregation for Real-time Semantic Segmentation论文repo:https://github.com/CoinCheung/BiSeNet一、摘要类似BiSeNetV1的结构,BiSeNetV2有2个分支,分别为Detail Branch 和 Semantic Branch,Detail分支层数少但是通道数多,生成高分辨率的带有细节的特征图;Semantic 分支

2022-03-11 21:46:02 2421

原创 【论文笔记】BiSeNet论文阅读笔记

BiSeNet论文阅读笔记

2022-03-11 16:15:38 1367

原创 深度学习归一化方法

神经网络学习的本质就是学习数据的分布。如果没有对数据进行归一化处理,那么每一批次训练的数据的分布就有可能不一样。本文介绍了深度学习中常用的几种归一化方法,并且使用numpy实现了几种方法,相信一定能让你有所收获。

2022-03-09 20:59:56 5234

原创 深度学习模型压缩-卷积裁剪

深度学习模型压缩,卷积裁剪原理及实现方法,包括L1Norm裁剪,L2Norm裁剪,FPGM裁剪。

2022-03-08 21:31:48 1343

原创 深度学习梯度裁剪策略及numpy实现

神经网络是通过梯度下降来进行网络学习,随着网络层数的增加,"梯度爆炸"的问题可能会越来越明显。例如:在梯度反向传播中,如果每一层的输出相对输入的偏导 > 1,随着网络层数的增加,梯度会越来越大,则有可能发生 "梯度爆炸"。如果发生了 "梯度爆炸",在网络学习过程中会直接跳过最优解,所以有必要进行梯度裁剪,防止网络在学习过程中越过最优解。本文实现了3中梯度裁剪策略,并与pytorch/paddle实现的方法进行对比。一、clip by value设置梯度范围为[-value, value

2022-03-06 20:38:55 701

pp-ocrv2 python openvino部署代码

1、pp-ocrv2 openvino部署代码 2、包含检测、方向分类、文本识别代码 3、包含示例图片 4、检测模型为DBNet,文本识别模型为CRNN+CTC 5、包含PaddleOCR官方提供的导出后静态图模型 6、不需要额外安装包,直接使用即可运行

2022-04-26

MODNet NCNN C++部署代码,及其模型

1、MODNet NCNN C++部署代码 2、MODNet NCNN量化后模型 3、MODNet NCNN未量化模型 4、MODNet onnx模型

2022-04-01

MODNet官方onnx及其转换的ncnn模型、NCNN量化后模型

1、MODNet官方提供的onnx模型; 2、MODNet官方onnx模型转ncnn; 3、ncnn int8量化后的模型。

2022-04-01

pytorch量化测试代码,mobilenetv2在cifar10速度测试

1、pytorch动态量化、静态量化、感知训练测试代码;

2022-03-31

modnet onnx C++部署,实现了图像matting,摄像头matting功能

1、MODNet官方提供的onnx模型,不需要trimap即可实现发丝级抠图; 2、实现了图片抠图、摄像头在线抠图功能; 3、cpu上运行速度较慢,无法达到实时Matting;

2022-03-28

modnet onnx python部署,实现了图像matting,视频matting,摄像头matting功能

1、MODNet官方提供的onnx模型,不需要trimap即可实现发丝级抠图; 2、实现了图片抠图、视频抠图、摄像头在线抠图功能; 3、cpu上运行速度较慢,推荐使用gpu;

2022-03-28

paddleseg人像分割轻量级onnx模型

PaddleSeg官方提供的轻量级PP-HumanSeg模型转换为onnx,输出为argmax的索引值。

2022-03-25

深度学习几种上采样方法代码,最近邻插值,双线性插值,pixelshuffle,unpool,逆卷积等示例代码

深度学习几种上采样方法代码,最近邻插值,双线性插值,pixelshuffle,unpool,逆卷积等示例代码

2022-03-22

23种激活函数示例及可视化代码

1、pytorch激活函数示例及其可视化代码;

2022-03-18

轻量级PP-HumanSeg lite人像分割模型NCNN C++部署代码和模型

1、轻量级人像分割模型PP-HumanSeg NCNN C++部署代码; 2、包含onnx模型和ncnn模型。

2022-03-17

深度学习各类学习率调整策略示例代码

1、深度学习各类学习率调整策略示例代码; 2、包含pytorch所有学习率示例; 3、包含部分paddlepaddle学习率策略示例; 4、给出学习率调整过程绘图;

2022-03-16

yolov3实现跌倒检测,仅包含预测代码

1、检测图片中是否有任务跌倒; 2、https://blog.csdn.net/qq_40035462/article/details/123136775

2022-02-25

yolov3水果检测代码,仅包含预测部分代码,能检测苹果香蕉橘子3种水果

1、yolov3算法,采用mobilenetv3的轻量级水果检测算法; 2、仅包含预测部分代码,内含训练好的权重; 3、使用方法见readme; 4、内容可参考:https://blog.csdn.net/qq_40035462/article/details/116172637。

2022-02-25

遗传算法求解8皇后问题的python实现

使用python实现遗传算法,求解8皇后问题,流程如下 1、随机初始化100个个体 2、随机选择5个个体,挑选2个作为parents 3、parents结合生成children 4、children以0.8的概率变异,变异方法是随机交换2个染色体位置 5、children取代族群中最差的2个个体 6、判断迭代次数是否达到阈值,如果达到阈值,程序输出结果,否则返回步骤2

2021-05-23

空空如也

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

TA关注的人

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