自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 libtorch中tensor的data_ptr使用和巨坑

libtorch的tensor data_ptr使用和注意事项

2022-11-16 11:37:26 2615 4

原创 C#中导入C++ dll中的类并定义dll的回调函数实现dll中数据的实时获取

对于一些底层算法库,我们一般封装成c++ dll,如果需要在c#中实现调用,实际上很简单的导出c++ dll的函数即可。但如果c++ dll中有一些实时数据需要传递出来,那么一种常规做法就是在c++中设置回调函数,相当于提供一个接口,c#前端就可以利用这个接口来实时获取c++ dll中的数据如下是一个实例:首先定义c++ dll,用于模型训练,并回传训练过程中的字符串日志和结果数据。所以分别定义了一个传递日志的回调函数和一个传递数据的回调函数// -------------------c++ dl

2022-04-01 11:30:48 2219

原创 如何搭建和安装基于ubuntu的各种深度学习软件(python/anaconda/cuda/pytorch/opencv)

如何安装Ubuntu系统整个ubuntu安装非常简单,加上下载的时间也只需要10分钟以内就能装好。a.从aliyun下载ubuntu镜像是最快的,2G的东西3分钟下好b.准备一个U盘,下载ultroISO,用该软件打开ubuntu iso文件,并通过该软件的启动/写入硬盘映像,无需修改其他设置,硬盘驱动器选择U盘,写入方式为USB-HDD+,把iso文件直接写入U盘(需要4-5分钟),即可得到一个启动盘c.重启按F12进入BIOS,会先选择boot device,此时可选U盘启动(比如一个aigo

2021-02-01 17:44:56 317

原创 在Windows下用c语言printf函数实时输出调试信息以及宏指令的使用

1. 基础需求:我们在调试c语言时,通常用printf函数输出调试信息,而printf函数默认是输出到缓冲区,等到缓冲区满了以后才输出,或者等到输出换行符后才输出。特别是在qt里边,printf函数的输出即使包含换行也需要等到缓冲区满了以后才输出,此时如果需要实时得到调试信息的输出怎么办?可以采用fflush(stdout)即可。printf("Error happend!"); fflush(stdout); // 增加fflush(stdout)后就会立即输出到设备而为了简单起见,可..

2020-08-25 17:21:09 1060

原创 在visual studio中利用单个解决方案包含多个子项目的方式开发cuda dll库项目

本文基于在visual studio中利用单个解决方案,来开发一个可执行新项目,且同时包含一个新开发dll项目,这个可执行主项目能够同步调用dll子项目,相当于一个解决方案包含多个子项目的有依赖编译。这种项目组织方式的优点在于:常规dll开发需要有一个代码调试项目,调试好了再用一个dll生成项目,最后再用要给dll调用项目去验证,但使用这种单个解决方案包含2个子项目的方式,就可以代替上面的3个项目,而且最大的好处是同样可以调试dll内部的函数,包括cuda的核函数,也可以通过Nsight加断点进入调试。

2020-08-20 14:14:20 628

原创 YoloV4在windows下的安装使用以及生成dll库用于模型前向推理

主题1:YoloV4的安装1. 安装过程基于https://github.com/AlexeyAB/darknet所说的windows下编译的第一种方法,即运行.\build.ps1,其中build.ps1是windows下的power shell脚本文件,类似于linux下的makefile,里边build.ps1的内容就不细说主要包括:// 首先获得Program Files(x86)的文件夹路径function getProgramFiles32bit(){}// 然后从Program

2020-07-18 18:25:27 2010 1

原创 Windows下把CUDA程序生成dll库并在项目中调用dll中的函数

如何把自己写的cuda代码生成dll库,方便集成到其他主项目中去进行调用呢,这里总结了一个基本流程:操作环境:Windows10,visual studio2017,cuda10.2, opencv4.2都已经安装并配置好了。主题1:cuda代码生成dll库1. 创建项目:在vs里边创建常规dll项目(可选择选择”动态链接库”或者”具有导出项DLL的动态链接库”)均可,后者会自动生成一对h文件和cpp文件而无需自己创建。但由于是构建cuda的dll库,所以还是自建比较合适,因此建议直接选择”动态

2020-07-02 22:24:56 3775 2

原创 快速下载kaggle上的数据集-ubuntu系统

有个小项目正好要用到一个kaggle的数据集,上去注册下载发现巨慢无比,几k/s的水平。后来发现一个好方法:安装kaggle的api下载。系统:ubuntu 16.04安装kaggle的api: pip install kaggle在myAcount里找到create new API token,然后下载这个token,名字叫kaggle.json。把他放到/home/your acco...

2020-04-22 21:57:19 1136 2

原创 ubuntu系统瘦身-清理系统垃圾文件

这几天硬盘空间实在太小了,导致系统报警,找了些方法,居然随便清理出来30几G(1) 对anaconda瘦身:这两条命令是对conda的无硬依赖的库进行清理。我清理出10+G…conda clean -pconda clean -t(2) 使用系统自带的Disk Usage Analyzer分析大文件Disk Usage Analyzer是一个速度奇快,可视化效果极佳的硬盘容量分析软件...

2020-04-06 20:37:55 5053

原创 Linux下opencv4的c++接口版本的安装

系统是ubuntu16,安装方式网上资料一大把,这里把基本流程介绍下,然后介绍下自己解决的问题:先下载,然后安装各种依赖,然后:step1.生成makefile,如下是最基本的cmake选项,不用增加其他额外的就能安装成功。cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D CMAKE_BUILD_TYPE=Release …step2.编译,make ...

2020-02-23 15:26:55 1101

原创 makefile及基础语法

makefile命令和语法(1)定义变量:变量值的本质是一个字符串,可以是文件名列表,参数烈,目录列表等。通常对于参数列表变量,写成大写方式;对于内部一般变量写成小写形式。同时有两种定义变量方式,一种obj:=表示直接展开式变量,该变量是在变量定义时就求值,另一种obj=, obj+=, obj?=都表示递归展开式变量,这种变量是在变量被引用时才求值。obj=代表递归赋值,obj+=代表递归...

2019-12-25 18:28:19 620

原创 C++中神奇的数组名(指向元素的指针、指向数组的指针、指向指针的指针)

参考自:https://www.cnblogs.com/chenyangyao/p/5222696.html以前常对数组名的诸多表现有点困惑,看了这篇文章算是彻底清楚了。C++是一种对类型匹配非常严格的语言,而对于数组来说,指针类型分为两种,一种是元素类型指针(指向元素),另一种是数组类型的指针(指向数组),也就是指向指针的指针。数组名本身代表的是数组首元素的地址,所以数组名本身是一...

2019-11-23 21:55:09 275

原创 cmake核心知识点整理

cmakelists的功能,就是自动生成makefile,如果有cmakelists,则编译过程就是如下:mkdir buildcd buildcmake .. //或者cmake.这里两个点表示在上层文件夹下寻找cmakelists生成makefile和相关文件make //执行makefilemake install //(optional)安...

2019-11-14 22:55:00 975

原创 TensorRT的调试报错整理

TensorRT的调试报错整理报错:pycuda._driver.LogicError: explicit_context_dependent failed: invalid device context - no currently active context?原因:pycuda.driver没有初始化,导致无法得到context,需要在导入pycuda.driver后再导入pycuda....

2019-10-30 15:14:09 7247

原创 pytorch中训练深度神经网络模型的关键知识点

关于数据格式默认日常描述图片尺寸,采用[w,h]的形式,比如一张图片是1280*800就是指宽w=1280, 高h=800。因此在cfg中所指定img scale = [1333, 800]就是指w=1333, h=800从而转入计算机后,要从w,h变成h,w默认的大部分数据集,输出格式都是n,h,w,c和bgr格式,一方面是hwc更普遍,另一方面是opencv读取的就是bgr。pyt...

2019-09-20 11:00:04 1762

原创 ubuntu系统开机突然无法进入系统的原因之一以及解决方案

今天打开电脑,跟往常一样输入密码,但突然发现ubuntu系统一直停留在等待进入的界面,也就是显示一张默认的桌面背景,鼠标能正常工作,但无法真正进入系统。1. 尝试进入命令行:重启电脑,然后按住shift,然后从界面中选择ubuntu的recovery mode,按enter进入;然后选择resume normal boot选项进入命令行。在命令行中发现所有的文件都正常,只是所有软件都无法启动...

2019-07-18 17:41:36 20261 4

原创 python报错ValueError: The truth value of an array with more than one element is ambiguous. Use a.any()

python报了一个比较少见的错:ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()后来发现错误发生在如下语句:if tree.result != None: # 当到达叶子节点,则直接返回tree.result作为预测标签 r...

2019-07-07 16:53:43 10822

原创 机器学习模型吵架

Knn: 我分类原理简单Kdtree: 我也很简单,而且我比你计算量小Knn: …Kdtree: 我分类原理简单,而且计算量小Logistic reg: 我有参数你没有,我不用每次都计算Kdtree: …Logistic reg: 我有参数,原理简单Softmax: 我能多分类,你不能Logistic reg: …Softmax: 我能多分类,能保存模型不用每次计算Cart: ...

2019-07-04 11:09:22 119

原创 在Linux VSCode中编写调试C++解决ipch文件过大问题

最近在linux中用VSCode做IDE调试c++,发现vscode会自己在每个文件夹里创建.vscode文件夹,并生成.ipch文件,这个文件动不动就30-40M,即使你的cpp文件才几十k。网上搜了下,大家都是在谈vs里边通过设置如何避免ipch文件的产生,但在vscode里边我找了半天没找到对ing的设置,没办法只能考虑别的方式,所以打算写个简单的shell脚本来做这件事del_ipch(...

2019-04-23 11:46:19 1845 2

原创 多GPU运行保存加载恢复checkpoint的几个关键

第一部分:认识多GPU的DataParalle model在pytorch中如果使用单机器多块GPU时,会有一些小的注意事项,似乎大部分人都找不到合适的完整的介绍,这里把之前总结的做一个汇总,希望能帮更多人建立完整的知识框架。第1层:认识model本身类型1:如果是cpu model或单GPU model,2种形式(sequential model和sequential&Order...

2018-12-15 16:16:10 2265

原创 在python3.7下如何安装tensorflow

之前一直是用pytorch,因为其他原因也安装了python3.7,最近想要用一下tensorflow,结果发现python3.7下不能安装tensorflow,试过了网络上差不多所有能找到的方法都失败了。今天搜到一篇提到了一种新思路(吴子寒同学的简书)试了下,完美成功。(1) 下载tensorflow的whl包:由于tensorflow还没有官方支持python3.7,所以pip直接是搜索...

2018-12-13 23:11:42 40263 3

原创 CUDA配套cuDNN的安装

安装CUDA10配套cuDNN,给需要的人参考下。作者:Su Liang,2018-10-19cuDNN是nvidia开发的deep neural network library(dnn),即为深度神经网络GPU加速库。提供了前向/后向/卷积/池化/标准化/激活等层。(1)注册https://developer.nvidia.com/rdp/form/cudnn-download-sur...

2018-10-24 21:54:22 755

原创 Python的包(package)和模块(modul)以及相对导入和绝对导入的那些小tricks

代码增加到一定阶段,一定避不开包package和模块module,而这又往往是初学者困惑所在,这里整理下自己踩的坑和一些经验教训。作者:Su Liang,2018-10-24 (程序员节)参考《Python Cookbook》, David BeazleyQ: 如何设置文件的包(package)和模块(module),并进行模块导入?假定如下文件结构:mypackage/init...

2018-10-24 21:34:52 509

原创 Ubuntu 16.04.5 (x86_64)下安装CUDA10 for 深度学习

网上查了下,记录安装CUDA10的文章很少,这里记录下自己安装过程,给需要的人参考下。作者:Su Liang,2018-10-19我的系统:Ubuntu的版本:cat /etc/issue,Ubuntu 16.04.5Ubuntu的系统位数:sodu uname –m,X86_64GPU:GeForce GTX1080ti显卡驱动:预装,版本384.130CUDA的介绍:是并行计算平...

2018-10-19 14:10:54 24736 3

空空如也

空空如也

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

TA关注的人

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