草庐IT

CV-Pytorch

全部标签

python pytorch模型转onnx模型(多输入+动态维度)

(多输入+动态维度)整理的自定义神经网络pt转onnx过程的python代码,记录了pt文件转onnx全过程,简单的修改即可应用。pt文件转onnx步骤1、编写预处理代码2、用onnxruntime导出onnx3、对导出的模型进行检查4、推理onnx模型,查看输出是否一致5、对onnx模型的输出进行处理,显示cv图像6、编辑主函数进行测试1、编写预处理代码预处理代码与torch模型的预处理代码一样defpreprocess(img): img=(cv2.cvtColor(img,cv2.COLOR_BGR2RGB)).transpose(2,0,1) img=np.expand_dims(im

Anaconda + Pycharm,利用Anaconda安装python并配置虚拟环境,包括sklearn、pytorch的安装

前言:在安装前,如果自己的电脑名称里带中文,请先把自己的电脑重命名,切记不要带中文,否则可能会出错。说明:本人用这套是为了做深度学习,如果我们一样,可以看下去,不一样也有参考价值。本文不包括pycharm的安装教程!Anaconda主要是方便后续导包,装完Anaconda你可以拥有python、JupyterNotebook,不需要额外下载,且很多深度学习的教学都是用JupyterNotebook展示的。Pycharm也是非常流行的python编译器,我习惯用这个。正文:本文分为三部分:Anaconda下载、配置虚拟环境变量和pycharm新建项目。一、Anaconda下载1.首先到Anaco

Pytorch:自适应激活函数(Adaptive activation functions),让网络更容易收敛

最近看了一篇文章,里面介绍了自适应的激活函数,它可以使得网路收敛速度更快。文章:《Adaptiveactivationfunctionsaccelerateconvergenceindeep andphysics-informedneuralnetworks》激活函数是深度学习中至关重要的部分,我们在做深度学习的时候通常会利用激活函数增加网络的非线性能力,使其能够拟合更复杂的情况,比较熟悉的有ReLU,Tanh,Sigmoid等等,但是这些激活函数在某些情况下并不是最合适的,甚至会出现梯度消失或者梯度爆炸的情况,于是作者提出了自适应的激活函数,来加速网路收敛并且提高稳定性。简而言之,就是在激活

深度学习图像分类实战——pytorch搭建卷积神经网络(AlexNet, LeNet, ResNet50)进行场景图像分类(详细)

目录1  一、实验过程1.1  实验目的1.2  实验简介1.3  数据集的介绍1.4  一、LeNet5网络模型1.5  二、AlexNet网络模型1.6  三、ResNet50(残差网络)网络模型 二、实验代码导入实验所需要的库 参数配置数据预处理重新DataSet加载数据转为DataLoader函数可视化一批训练数据 构建模型搭建训练函数搭建测试函数实例化模型开始训练 开始测试参考文献 1  一、实验过程1.1  实验目的通过这个课程项目大,期望达到以下目的:1.了解如何对深度学习的图像数据集进行预处理操作。2.熟络深度学习训练模型的步骤流程、pytorch的使用。3.学习ResNet-

c++ - 将 3x1 或 1x3 cv::Mat 转换为 cv::Point3d?

我正在处理一些代码,其中执行大量3x3矩阵乘法以及使用旋转矩阵等对3d点进行一些转换。我决定使用OpenCV核心功能进行数学运算。可以使用最近添加到cv::Mat类的构造函数将cv::Point3d直接转换为3x1cv::Mat大大减少和简化了代码。我现在想知道是否有一种简单的方法可以将3x1或1x3cv::Mat转换为cv::Point3d?我总是可以做类似的事情:cv::Matmat(3,1,CV_64FC1);cv::Point3dp(mat.at(0,0),mat.at(1,0),mat.at(2,0));或cv::Matmat(3,1,CV_64FC1);constdoubl

ubuntu18.04复现yolo v8环境配置之CUDA与pytorch版本问题以及多CUDA版本安装及切换

最近在复现yolov8的程序,特记录一下过程环境:ubuntu18.04+rosmelodic小知识:GPU并行计算能力高于CPU—B站UP主说的Ubuntu可以安装多个版本的CUDA。如果某个程序的Pyorch需要不同版本的CUDA,不必删除之前的CUDA,可以实现多版本的CUDA切换一、查看当前PyTorch使用的CUDA版本:python-c"importtorch;print(torch.version.cuda)"注意:sudoln-sflibcudnn.so.8.0.5libcudnn.so.81.需要进入conda环境2.进入conda环境命令:condaactivate****

c++ - 将 cv::Mat 转换为 const CvMat* 或 CvMat*

我只知道C语言,所以我很困惑/不理解openCV数据类型的语法,尤其是cv::Mat,CvMat*,垫子。我的问题是如何将cv::Mat转换为constCvMat*或CvMat*,谁能提供文档链接CvMat*mat与cv::Mat和opencv2.4中的Mat的区别。以及如何将我的int数据转换为CvMat中的float数据?谢谢 最佳答案 cv::Mat有一个operatorCvMat()如此简单的作业:cv::Matmat=....;CvMatcvMat=mat;这使用相同的基础数据,因此您必须注意cv::Mat不会在CvMat

Linux和Windows系统下:安装Anaconda、Paddle、tensorflow、pytorch,GPU[cuda、cudnn]、CPU安装教学,以及查看CPU、GPU内存使用情况

Linux和Windows系统下安装深度学习框架所需支持:Anaconda、Paddlepaddle、Paddlenlp、pytorch,含GPU、CPU版本详细安装过程1.下载Anaconda的安装包Anaconda安装:Anaconda是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。使用Anaconda可以通过创建多个独立的Python环境,避免用户的Python环境安装太多不同版本依赖导致冲突。Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学,Anaconda致力于简化包管理和部署。Anaconda的包使用软件包

ERROR: Could not find a version that satisfies the requirement cv2 (from versions: none)

安装cv2时遇到错误去命令行安装,输入如下命令:pipinstallcv2遇到错误:错误的第一行意思是:错误:找不到满足要求cv2的版本(来自版本:无)错误第二行意思是:错误:未找到cv2的匹配分布解决方法换种命令即可:打开cmd(windows键+r输入cmd回车)输入以下命令:pipinstallopencv-python没有使用镜像的方式,会慢一些,但好在安装包不大。等待几分钟即可:安装成功由报错变为正常

pytorch中常用的损失函数

1损失函数的作用损失函数是模型训练的基础,并且在大多数机器学习项目中,如果没有损失函数,就无法驱动模型做出正确的预测。通俗地说,损失函数是一种数学函数或表达式,用于衡量模型在某些数据集上的表现。损失函数在深度学习主要作用如下:衡量模型性能:损失函数用于评估模型的预测结果与真实结果之间的误差程度。较小的损失值表示模型的预测结果与真实结果更接近,反之则表示误差较大。因此,损失函数提供了一种度量模型性能的方式。参数优化:在训练机器学习和深度学习模型时,损失函数被用作优化算法的目标函数。通过最小化损失函数,可以调整模型的参数,使模型能够更好地逼近真实结果。反向传播:在深度学习中,通过反向传播算法计算损