自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 xml与python文件常用转换,读取图像

# coding:utf-8from PIL import Imageimport os.pathimport globimport xml.etree.ElementTree as ETimport xml.dom.minidomi = 0xmldir = r"D:\YOLOV5\数据集\outputs"imgsdir = r"D:\YOLOV5\数据集\danger2"for xmlfile in os.listdir(xmldir): xmlname = os.path.

2020-07-27 09:26:04 3073 3

原创 Pytorch实现姿态识别(三)——训练与推理

train.py#dataset:https://www.crcv.ucf.edu/data/UCF101.phpimport timeitfrom datetime import datetimeimport socketimport osimport globfrom tqdm import tqdmimport torchfrom tensorboardX import SummaryWriterfrom torch import nn, optimfrom torch.ut

2020-07-21 16:53:54 2557 2

原创 Pytorch实现姿态识别(二)——视频分析C3D的网络架构

C3D网络架构与结构图:3D卷积与2D卷积的区别:其中多了一个时间维度三维卷积与三维池化的理解:① nn.Conv3d(3, 64, kernel_size=(3, 3, 3), padding=(1, 1, 1))kernel_size=(3, 3, 3):第一个3:一共16帧,当前处理3帧;第二、三个3:H,W的大小;padding=(1, 1, 1):三维、高、宽都填充1② nn.MaxPool3d(kernel_size=(1, 2, 2), stride=(1, 2, 2))

2020-07-21 16:45:57 2335

原创 Pytorch实现姿态识别(一)——将视频数据处理为图像

文章目录一、mypath.py二、datasets.py一、mypath.pyclass Path(object): @staticmethod def db_dir(database): if database == 'ucf101': # folder that contains class labels root_dir = r'F:\DATASET\UCF-101\UCF-101' # Sa

2020-07-21 16:44:54 2688 20

原创 DeepLearing—CV系列(二十四)——Pytorch实现OCR识别图片转文字(2)——CRNN+CTC_Loss理论

文章目录一、CRNN(卷积递归神经网络)1.1 CRNN介绍与网络结构1.1.1 网络结构二、网络结构详解2.1 CNN2.2 Map-to-Sequence2.3 RNN2.3 CTC Loss2.3.1 序列合并机制2.3.2 训练阶段2.3.3 划分标准2.3.4 CRNN总结结一、CRNN(卷积递归神经网络)1.1 CRNN介绍与网络结构CRNN模型,即将CNN与RNN网络结合,共同训练。主要用于在一定程度上实现端到端(end-to-end)地对不定长的文本序列进行识别,不用先对单个文字进行切

2020-07-15 12:35:51 2823 2

原创 DeepLearing—CV系列(二十四)——Pytorch实现OCR识别图片转文字(1)——CTPN理论

文章目录一、OCR简介二、一、OCR简介文字识别也是图像领域一个常见问题。然而,对于自然场景图像,首先要定位图像中的文字位置,然后才能进行文字的识别。所以一般来说,从自然场景图片中进行文字识别,需要包括2个步骤:文字检测:解决的问题是哪里有文字,文字的范围有多少文字识别:对定位好的文字区域进行识别,主要解决的问题是每个文字是什么,将图像中的文字区域进转化为字符信息。OCR的作用:提取图像中的文字,并转换成文本形式,供后续NLP任务使用。二、...

2020-07-15 12:03:40 2814

原创 Pytorch项目打包和部署(4)——代码——TensorRT+Android

文章目录前言一、TensorRT二、Android前言首先下载TensorRT,进入官网NVIDIA TensorRT | NVIDIA Developer,点击download now,选择对应的TensorRT版本,windows下建议下 TensorRT7,点击同意,选择TensorRT 7.0(7.1是预览版本,不建议下载),选择对应的系统,此处windows下载要对应CUDA版本,一定要更新到对应的版本上去,否则运行会报错。对于Tensor RT的使用,可以参考TensorRT的开发向导(第

2020-07-14 17:35:16 1617

原创 Pytorch项目打包和部署(3)——代码——flask+onnx

文章目录一、Flask部署1.1 httpserver.py1.2 clinet.html二、传图片2.1 clinet.html2.2 httpserver.py三、返回json格式3.1 clinet.html3.2 httpserver.py四、官网实例转JSON4.1 httpserver2.py4.2 clinet2.html五、导出与调用onnx(跨平台使用)5.1 导出onnx5.2 检查onnx5.2.1 onnxruntime评测模型精度不一致问题排查5.3 调用onnx一、Flask部

2020-07-13 20:16:17 2017

原创 Pytorch项目打包和部署(2)——代码——flask+socket+pt2pt

文章目录一、flask1.1 module.py1.2 flash_test.py1.3 MTCNN侦测网络的flask通信流程二、Socket2.1 server_demo.py2.2 client_demo.py2.3 socket实现的对话2.3.1 server.py2.3.2 client.py三、MNIST打包3.1 模型打包的时候注意的问题一、flask1.1 module.pyimport torchfrom torch import nnclass TestModel(nn.M

2020-07-13 17:05:11 966

原创 Pytorch项目打包和部署(1)——理论

文章目录一、什么是模型打包部署二、模型打包部署的作用三、学习模型打包部署的目的四、模型部署语言五、模型部署平台六、模型部署设备七、模型部署方式八、模型部署接口九、模型部署相关工具十、模型可视化先上Pytorch官网:Pytorch一、什么是模型打包部署模型打包就是把程序化的模块打包成一个能在指定平台上可执行文件。Pytorch中的打包和调用方法:torch.save()torch.load()模型部署就是将打包好的文件在指定的平台上进行部署实施,使其能够正常使用。二、模型打包部署的作用模型

2020-07-13 14:09:26 5032 1

原创 Machine Learning——sklearn系列(八)——鸢尾花分类的逻辑回归实现

文章目录前言一、详解Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等)二、Python字符串格式化三、代码前言项目描述:根据鸢尾花的花萼长度与宽度的特征数据统计,对其进行逻辑回归分类。特征:花萼长度、花萼宽度类别标签:0 - 山鸢尾(setosa)1 - 杂色鸢尾(versicolor)2 - 维吉尼亚鸢尾(virginica)一、详解Numpy中的数组拼接、合并操作(concatenate, appen

2020-07-13 10:58:11 1564

原创 Machine Learning——sklearn系列(七)——降维

文章目录一、PCA(主成分分析)1.1 PCA主成分分析的矩阵原理-特征值与奇异值1.1.1 特征值1.1.2 奇异值1.1.31.2 PCA代码二、LDA2.1 代码一、PCA(主成分分析)主成分分析(PCA)实现一般有两种,一种是对于方阵用特征值分解去实现的,一种是对于不是方阵的用奇异值(SVD)分解去实现的。1.1 PCA主成分分析的矩阵原理-特征值与奇异值1.1.1 特征值特征值很好理解,特征值和特征向量代表了一个矩阵最鲜明的特征方向。多个特征值和特征向量的线性组合可以表示此矩阵。选取特征

2020-07-13 09:43:00 552

原创 Machine Learning——sklearn系列(六)——聚类算法(2)

文章目录五、DBSCAN(密度聚类)5.1 基础概念5.2 DBSCAN算法优缺点六、Affinity Propagation(AP聚类)6.1 算法描述6.2 AP算法选举例子理解:七、Gaussian Mixture model(高斯混合模型GMM)7.0 协方差与相关性7.1 高斯模型7.2 高斯混合模型7.2.1 EM算法八、谱聚类九、聚类衡量指标(无标签)9.1 轮廓系数9.2 CH分数9.3 戴维森堡丁指数(DBI)十、代码五、DBSCAN(密度聚类)5.1 基础概念作为最经典的密度聚类算

2020-07-10 17:18:15 714

原创 Machine Learning——sklearn系列(六)——聚类算法(1)

文章目录前言一、K-Means二、K-means++2.1 算法步骤2.2 K-means++例子2.3 效率三、MeanShift(均值迁移)3.1 概述3.2 图解过程3.3 算法函数四、层次聚类前言每种聚类方法在不同数据状况下表现的优劣图:代码实现import timeimport warningsimport numpy as npimport matplotlib as mplimport matplotlib.pyplot as pltfrom sklearn impor

2020-07-10 11:50:01 1065

原创 Machine Learning——sklearn系列(五)——集成学习

文章目录一、集成学习二、bagging2.1 基本描述一、集成学习多个小模型,通过最后的决策算法来决定最后的结果。集成方法常分为两类:(1)averging methods:平均法的原则是: 独立的构建几个学习器,然后平均他们的预测。通常,组合的学习器要比任何一个单个的学习器要好,因为它降低了方差。其中的代表:bagging 方法,随即森林(2)boosting methods:学习器依次构建(递进方法),试图降低组合的学习器的偏差。

2020-07-09 14:11:54 480

原创 Machine Learning——sklearn系列(四)——决策树与回归树

文章目录一、决策树二、决策树学习算法2.1 特征选择一、决策树决策树模型是运用于分类以及回归的一种树结构。决策树由节点和有向边组成,一般一棵决策树包含一个根节点、若干内部节点和若干叶节点。决策树的决策过程需要从决策树的根节点开始,待测数据与决策树中的特征节点进行比较,并按照比较结果选择选择下一比较分支,直到叶子节点作为最终的决策结果。内部节点:对应于一个属性测试叶节点:对应于决策结果根节点包含样本全集;每个节点包括的样本集合根据属性测试的结果被划分到子节点中;根节点到每个叶节点的路径对应对应

2020-07-08 13:33:29 1145

原创 Machine Learning——sklearn系列(三)——数据预处理

文章目录一、数据预处理二、标准化:去均值,方差规模化一、数据预处理1.首先要明确有多少特征,哪些是连续的,哪些是类别的。2.检查有没有缺失值,对确实的特征选择恰当方式进行弥补,使数据完整。3.对连续的数值型特征进行标准化,使得均值为0,方差为1。4.对类别型的特征进行one-hot编码。5.将需要转换成类别型数据的连续型数据进行二值化。6.为防止过拟合或者其他原因,选择是否要将数据进行正则化。7.在对数据进行初探之后发现效果不佳,可以尝试使用多项式方法,寻找非线性的关系。8.根据实际问题分

2020-07-07 23:46:31 390

原创 Machine Learning——sklearn系列(二)——分类

文章目录一、K近邻1.1 KD-TREE1.2 随机梯度下降法1.3 SVM二一、K近邻1.1 KD-TREEkd树(k-dimensional树的简称),是一种分割k维数据空间的数据结构,主要应用于多维空间关键数据的近邻查找(Nearest Neighbor)和近似最近邻查找(Approximate Nearest Neighbor)。其实KDTree就是二叉查找树(Binary Search Tree,BST)的变种。二叉查找树的性质如下:1)若它的左子树不为空,则左子树上所有结点的值均小

2020-07-07 23:34:27 337

原创 Machine Learning——sklearn系列(一)——回归

文章目录前言一、基础结构1.1 简单调参1.2 调参利器二、回归(可以理解为拟合)2.1 普通线性回归2.2 回归评估指标2.3 过拟合的问题2.4 岭回归2.4.1 岭系数对回归系数的影响2.5 LASSO回归2.6 弹性网络2.7 逻辑斯蒂回归(原始感知机)2.8 贝叶斯岭回归2.8.1 L1、L2正则化的由来与结论2.8.2 代码2.9 核岭回归2.10 SVR(支持向量回归)前言sciket-learn官网链接:https://scikit-learn.org/stable/sciket-le

2020-07-07 15:40:49 1080

原创 Machine Learning——CV系列(一)——Python+OpenCV应用实战——提取车牌号码

文章目录基于OpenCV的车牌提取项目基于OpenCV的车牌提取项目import cv2# 读取图片rawImage = cv2.imread("23.jpg")# 高斯模糊,将图片平滑化,去掉干扰的噪声image = cv2.GaussianBlur(rawImage, (3, 3), 1)# 图片灰度化image = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)# Sobel算子(X方向)Sobel_x = cv2.Sobel(image,

2020-07-06 14:32:19 442 1

原创 Machine Learning——CV系列(一)——Python+OpenCV核心操作(5)——特征提取与特征匹配

文章目录十、特征提取和特征匹配10.1 特征提取10.1.1 Harris角点检测10.1.2 Shi-Tomasi角点检测10.1.3 SIFT算法和SURF算法10.1.4 角点检测的FAST算法10.1.5 BRIEF算法10.1.6 ORB算法10.2 特征匹配10.2.1 BF算法10.2.2 FLANN匹配算法10.3 特征匹配和单应性查找对象十、特征提取和特征匹配10.1 特征提取特征提取指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为

2020-07-06 00:00:46 760

原创 Machine Learning——CV系列(一)——Python+OpenCV核心操作(4)

文章目录五、图像金字塔5.1 高斯金字塔(低通)5.2 拉普拉斯金字塔5.3 图像金字塔用途六、模板匹配6.1 无缝融合(苹果与橘子融合的项目)七、图像直方图7.1 直方图均衡化7.2 自适应均衡化7.3 2D直方图7.4 直方图反向投影7.4.1 反向投影能做什么八、霍夫变换8.1 直线检测8.2 圆检测五、图像金字塔5.1 高斯金字塔(低通)高斯金字塔有两种形式:上采样和下采样。上采样是图片逐渐变大的过程;下采样是图片逐渐变小的过程。两种方式都会使图片越来越模糊。import cv2img

2020-07-05 23:27:18 317

原创 Machine Learning——CV系列(一)——Python+OpenCV核心操作(3)——边缘与轮廓

文章目录四、边缘与轮廓4.1 图像梯度(见梯度算子)4.2 Canny边缘提取算法4.2.1 原理与流程4.2.2 非极大值抑制4.2.3 双阈值边缘连接处理4.2.4 代码4.3 轮廓4.3.0 轮廓与边缘区别4.3.1 轮廓查找与绘制4.3.2 面积、周长和重心4.3.3 轮廓近似4.3.4 凸包和凸性检测4.3.5 边界检测4.3.5.1 方向性判断4.3.6 轮廓性质4.3.6.1 边界矩形的宽高比4.3.6.2 轮廓面积与边界矩形面积的比4.3.6.3 轮廓面积与凸包面积的比4.3.6.4 与轮廓

2020-07-05 22:35:17 1400

原创 Machine Learning——CV系列(一)——Python+OpenCV核心操作(2)——图像滤波

文章目录三、图像滤波3.1 滤波的概念3.2 卷积操作3.3 时域滤波3.3.0 时域滤波总结3.3.1 平滑算子(低通)3.3.1.1 均值滤波3.3.1.2 高斯滤波3.3.1.3 中值滤波3.3.1.4 双边滤波3.3.2 锐化算子(高通)3.3.2.1 Laplacian滤波3.3.2.2 USM锐化3.4 频域滤波3.4.1 傅里叶变换3.5 梯度算子(高通)3.5.1 Sobel 算子3.5.2 Scharr 滤波器3.5.3 Laplacian算子(拉普拉斯算子)三、图像滤波3.1 滤波的

2020-07-05 20:47:56 240

原创 Machine Learning——CV系列(一)——Python+OpenCV核心操作(1)

文章目录一、基本操作1.1 OpenCV读取、写入和保存图像1.2 色彩空间的转换1.3 基本图形绘制1.4 阈值操作1.4.1 OTSU二值化1.4.2 自适应阈值二值化1.5 图像上的运算1.5.1 图像混合1.5.2 按位运算1.6 图像的几何变换1.6.1 仿射变换(理解为图像里的线性操作)1.6.2 透视变换二、图像形态学操作2.1 膨胀和腐蚀2.2 五个基本算法一、基本操作1.1 OpenCV读取、写入和保存图像读取/保存存储空间:w*h*c*p(p是位宽)位宽:一个数据在内存占多少

2020-07-05 17:59:29 486 3

原创 Pytorch模型中的GPU运算详解与实践

文章目录前言一、关于CUDA的函数接口1.1 torch.cuda1.2 torch.device1.3 .to()1.4 使用指定的GPU1.5 多GPU训练二、训练实例代码展示2.1 数据并行处理2.2 模型并行处理2.2.1 通过流水线输入(Pipelining Inputs)加速三、使用GPU注意事项前言什么是GPU?GPU(Graphic Process Units,图形处理器)。是一种单芯片处理器,主要用于管理和提高视频和图形的性能。GPU 加速计算是指同时利用图形处理器 (GPU) 和

2020-07-05 13:34:36 1848 2

原创 深度学习中的数学(四)——信息论

文章目录前言一、信息论二、信息三、熵四、条件熵前言先放祖师爷——克劳德·香农。1948年,美国数学家克劳德·香农发表论文《通信的数学理论》(A Mathematical Theory of Communication),奠定了信息论的基础。一、信息论狭义信息论是在信息可以度量的基础上有效地和可靠地传递信息的科学,它涉及信息的度量、信息的特性、信息传输速率、信道容量、干扰对信息传输的影响等方面的知识。广义信息论包括通信的全部统计问题的研究、香农信息论、信号设计、噪声理论、信号检测与估值等,还包括

2020-07-05 13:31:13 865

原创 深度学习中的数学(三)——概率统计

文章目录一、事件1.1 随机事件1.2 事件的运算二、排列与组合2.1 排列(有序)2.2 组合(无序)三、概率3.1 古典概率3.2 抽样3.3 条件概率、联合概率、边缘概率3.4 概率运算3.5 事件独立性3.6 事件互斥性3.7 全概率3.8 贝叶斯定理3.9 朴素贝叶斯四、概率分布4.1 概率分布4.2 离散分布4.2.1 伯努利分布(0-1分布/两点分布)4.2.2 二项分布4.2.3 泊松分布(poisson distribution)4.3 期望与方差4.3.1 期望与方差4.3.2 常见分布

2020-07-03 18:46:32 1044

原创 深度学习中的数学(二)——线性代数

文章目录一、理解线性1.1 线性方程组1.2线性代数的角度理解过拟合1.3 线性可分与线性不可分1.3.1 与(&)、或(|)、抑或(^)1.4 张量1.5 范数一、理解线性1.1 线性方程组AX=B1.2线性代数的角度理解过拟合过拟合:参数量过多,数据过少(这里数据等价了)解决:减伤参数量,增加数据量正常情况:欠拟合:参数量过少,数据过多(这里不等价)解决:增加参数量1.3 线性可分与线性不可分线性可分的定义:线性可分就是说可以用一个线性函数把两类样本分开,比如二

2020-07-02 17:00:49 532

原创 深度学习中的数学(一)——高等数学

文章目录一、初等函数与基本初等函数1.1 基本初等函数1.1.1 常函数1.1.2 幂函数1.1.3 指数函数1.1.4 对数函数1.1.5 三角函数与反三角函数2.由基本初等函数构成的复合函数被称为初等函数2.1 Sigmoid与tanh2.2 重要的特殊的函数三、反函数四、凸函数与凸集(凸优化问题)五、对偶函数六、优化问题七、极限7.1 极限定义7.2 重要极限(金融的复利问题)八、导数与梯度8.1 导数8.1 定义8.2 导数的几何意义8.3 基本导数公式8.4 偏导与全导8.5 二阶导数8.6 复合

2020-07-01 17:16:38 1043

空空如也

空空如也

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

TA关注的人

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