- 博客(21)
- 资源 (22)
- 收藏
- 关注
原创 C#调用C++ dll函数传参及参数类型转换
一、简述在C#中调用C++版的dll函数时,因为是不同的语言,参数类型也不尽相同,需要做一些转换。因为在网上能找到的答案也是很杂乱,对此不懂的人会搞到发狂。最近碰到一些项目需要在C#中调用C++版dll,所以一通捣鼓,总结了部分经验。【提示:C#调用C++库,需要dll和lib就可以了,不需要头文件】二、亲测有效的一些参数类型转换1、基本类型int、float、bool,C++中与C#中是相同的;(1)C++ dll 函数void init(int a, float b, bool
2021-08-31 14:33:08 2573
原创 基于.NET Core框架的项目发布技巧
1、用.NET Core框架比用.NET Framework框架性能更好,且可跨平台;2、基于.NET Core框架的项目中是没有exe运行文件的;3、如果想在windows平台打包运行,要打包出来(1)右击项目,点击“发布”(2)默认的“目标运行时”是“可移植”,需要点击“配置”,进入配置也选择windows平台,如果用默认的“可移植”,发布出来的依然是不包含exe运行文件的;(3)点击“发布”按钮即可,产生publish和win-x64两个目录,打...
2021-08-31 14:13:09 853
原创 Anaconda+opencv-python安装教程
import cv2时报错“no module names cv2”,时因为没有安装opencv-python导致的问题。前提:已经安装了Anaconda环境Opencv-python下载地址根据自己的python版本下载相对于的opencv版本: 比如我的是python3.7,64位系统,就下载opencv_python-3.4.5.20-cp37-cp37m-win_amd64.whl打开Anaconda Prompt(Anaconda3),激活项目所关联的仓库环境,进...
2021-08-31 11:59:20 6505
原创 yolov5-libtorch使用总结
Yolov5 libtorch检测版本链接:https://github.com/yasenh/libtorch-yolov5一、环境原作者的运行环境是:而我用的环境:win10 + vs2017 + libTorch1.7.0 + cuda11.1 + opencv3.4.7正式使用之前,需要将vs2017、libTorch1.7.0、cuda11.1、opencv3.4.7全部安装配置好。二、配置1、将libtorch-yolov5-master.zip下载下来解压;
2021-08-31 11:51:14 7821 20
原创 libTorch环境配置及使用
一、下载并配置libTorch1、在pytorch官网下载libTorch;这里我选择的时最新版本的libTorch,如果想要旧版本,可以点击左下角的“Previous versions of PyTorch”下载想要的版本;2、因为我需要用到GPU,提前安装了cuda11.1.0 和 cudnn11.1.0 ,所以这里的CUDA选项选择了11.0 ;3、在红色矩形框处,点击链接下载Release版本或Debug版本的libTorch;4、我只用到了Release版本,解压.
2021-08-31 11:34:43 4948 1
转载 Matlab2017b 安装教程
默认已经下载了“R2017b_win64_dvd1.iso和R2017b_win64_dvd2.iso”;网络上可以找到很多。1、将R2017b_win64_dvd1.iso和R2017b_win64_dvd2.iso都解压在当前文件夹【注意,要把R2017b_win64_dvd2.iso解压在和R2017b_win64_dvd1.iso解压后的相同目录中,因为在安装过程中会自动寻找DVD2安装】;2、点击解压后目录中的setup.exe,运行安装;3、点击使用文件密匙安装;4、点击接.
2021-08-31 11:17:57 6153 3
原创 Anconda+pytorch使用攻略
一、指令攻略1、创建工作环境conda create -n pytorch1.7.0-py38python=3.8conda 是指调用 conda 包;create 是创建的意思;-n 是指后面的名字是屋子的名字;pytorch1.7.0-py38是屋子的名字(可以更改成自己喜欢的);python=3.8是指创建的屋子中python为python3.7版本(也可以指定其他版本的python,注意:这里的python版本和base环境下的不一样,他们是相互隔开的,不会相互调用和影响)。...
2021-08-31 11:06:41 1109 1
原创 Windows下把TensorRTx中yolov5剥离成单独项目
前言在windows下编译好 tensorRTx 的yolov5程序,其目录架构是这样的:进入yolov5目录后如下:进入build目录后如下:整个目录结构有些复杂,如果想让项目看着更加清爽一些,有如下两种方式:一、直接在tensorRTx项目中更改【未尝试过,理论上操作会更加简单些】1、在tensorrtx/yolov5/build目录中创建新目录 include,并把tensorrtx/yolov5目录中的代码拷贝到这个include目录中。2、将ten.
2021-08-30 21:07:31 623
原创 C++ Windows下Glog日志库安装使用教程
2018年是我写过一个关于Glog使用的教程(https://blog.csdn.net/qq_27278957/article/details/84648912),但是最近再使用时,发现和当时使用方法有所不同,所以再重新整理一份。一、简述Google Glog 是一个C++语言的应用级日志记录框架,提供了 C++ 风格的流操作和各种助手宏。二、环境windows 10 + vs2017 + Glog v0.5.0+ cmake三、安装Glog1、在Glog官方中下载Glog代码,.
2021-08-30 20:02:06 5212 4
原创 OpenCV 网络url图像路径转OpenCV Mat
一、简述OpenCV中imread() 读取图像函数是不可以载入图像的网络url路径的,如果想要将网络url图像加载并转成mat数据格式,那么还需要借助第三方网络库curl。二、环境windows 10 + vs2017 + opencv3.4.7 + curl-7.78.0 + cmake三、安装curl1、curl简介libcurl是免费的客户端URL传输库,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LD
2021-08-30 19:43:42 1182 1
转载 OpenCV Mat与Base64编码图像数据的相互转换(转)
这里我直接给出代码:static std::string base64Decode(const char* Data, int DataByte) { //解码表 const char DecodeTable[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62,
2021-08-28 18:07:33 2284
原创 C# 自定义控制台应用关闭函数处理
在 C# 中写一些服务应用,属于控制台。在使用时遇到一个问题:“我想要在应用关闭时运行一些自定义操作,但是试了很多方法也没有搞定”,最终只能对监听控制台关闭函数了。public partial class HttpTargetDetectionResults{ public delegate bool ControlCtrlDelegate(int CtrlType); [DllImport("kernel32.dll")] private stat
2021-08-28 18:03:47 818
转载 C/C++ 创建多级目录(转)
C运行时库提供的创建目录的函数_mkdir(),在上级目录不存在时会创建失败。所以自己实现了一下创建多级目录,无论上级目录是否存在。#include <iostream>#include <vector>#include <io.h>#include <list>#include <direct.h>using namespace std;//得到文件路径的目录string GetPathDir(string filePat
2021-08-28 17:51:08 1810
原创 C# 读取txt文本数据
文本数据格式如下(每行每个数据之间用 \t 隔开):123 456 7489542.2 653.5 8933.5125 45 2读取文本每行、每列数据:private void loadTXT(string filePath){ StreamReader sr = new StreamReader(File.Open(filePath, FileMode.Open), E...
2021-08-28 17:48:00 7398
原创 C++ const char* 转 char* 方法
直接使用C++标准转换运算符const_cast :const char* ch = "BDEF";char *sh = const_cast<char *>(ch);关于 Const_cast 的介绍,可以参考博文:https://www.cnblogs.com/ider/archive/2011/07/22/cpp_cast_operator_part2.html
2021-08-28 17:29:51 4488
原创 C++ char二维数组使用总结
图1第1步,创建char双指针变量bgFrames_path,并对他分配第一维内存;然后再对所有的第一维分配内存,创建二维指针数组; 第2步,创建临时的char一维数组fileName,用sprintf_s函数对fileName赋值; 第3步,用strcpy函数对bgFrames_path的第一维数组进行拷贝赋值; 第4步,传入参数使用。 最后记得释放内存;...
2021-08-28 17:26:21 3232
原创 C++ int一维指针数组和二维指针数组使用总结
图1说明:当我们需要二维数组作为引用参数时,这时就可以用到双指针;因为使用双指针容易出现问题,所以最好用指针数组来代替(单指针);如图1所示,双指针保存信息是“多个目标,且每个目标包含6个参数”;用指针数组地址传参。接下来进入 API_detect_Path() 函数,看下内部赋值操作,如图2:图2vecDstboxs是个vector双层矢量集合,临时保存需要导入dstBoxs中的信息。std::vector<std::vector<int> > ...
2021-08-28 17:22:45 518
原创 C++ 自我对指针使用中的一些理解总结
以下举例类型为整型int,对于其他基础变量类型也同样适用。C++ int* 传参数含义两种理解:1、传入一个int整型变量的地址,修改此变量的值,可传出修改后的值;2、传入一维数组;如果传入参数前对int*参数赋值为null,那么在函数内对此参数的任何修改都无法传出去。 如果传入参数前已经对int*参数进行初始化内存,比如:int* boxes = int[10]; 那么传入的就是一维数组的首地址;在函数内对一维数组内的值进行修改,就可以传出修改后的值。C++ int** 传参数含义
2021-08-28 17:13:41 81
转载 C++ 引用传递与指针传递区别(转)
从概念上讲。指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变。而引用是一个别名,它在逻辑上不是独立的,它的存在具有依附性,所以引用必须在一开始就被初始化,而且其引用的对象在其整个生命周期中是不能被改变的(自始至终只能依附于同一个变量)。在C++中,指针和引用经常用于函数的参数传递,然而,指针传递参数和引用传递参数是有本质上的不同的:指针传递参数本质上...
2021-08-28 16:19:59 647
转载 yolov5 训练结果解析
在每次训练之后,都会在runs-train文件夹下出现一下文件,如下图: 一:weights 包含best.pt(做detect时用这个)和last.pt(最后一次训练模型) 二:confusion 1:混淆矩阵: ①:混淆矩阵是对分类问题的预测结果的总结。使用计数值汇总正确和不正确预测的数量,并按每个类进行细分,这是混淆矩阵的关键所在。混淆矩阵显示了分类模型的在进行预测时会对哪一部分产生混淆...
2021-08-28 15:23:56 42768 47
原创 C# 测试某段代码耗时
直奔主题,附上测试耗时代码:System.Diagnostics.Stopwatch stopwatch = new Stopwatch();stopwatch.Start(); // 开始监视代码运行时间/*** 需要被测试耗时的代码*/stopwatch.Stop(); // 停止监视TimeSpan timespan = stopwatch.Elapsed; // 获取当前实例测量得出的总时间double milliseconds = timesp
2021-08-25 17:43:49 888
GNOME-MaxiusmThree扩展包.rar
2019-09-28
C#浅拷贝(MemberwiseClone等多种方法)与深拷贝(反射、多种反序列化)实例
2019-03-26
DevExpress15.2(含破解工具+汉化包)百度云下载--永久有效
2019-01-26
DevExpress16.2(含破解工具)百度云下载--永久有效
2019-01-26
C++ TCP-socket端口通讯server+client
2017-09-15
GrayOnlyC (纯C++,不依赖opencv manager)
2017-08-10
GrayOnlyC 不依赖opencv manager(里面不包含opencvSDK)
2017-08-09
opencv图片变灰(依赖Opencv Manager)
2017-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人