C/C++笔记:函数参数 1. 函数的语法返回类型 函数名称(参数,参数,...){ 函数的功能区 return 返回值;}int Add (int a, int b){ char c = a + b; return c;}2. 函数参数2.1. 指针参数指针参考:C++笔记:指针(1)int add(int* a, int* b) { (*a) += 100; (*b) += 10; return (*a) + (*b);}i
C/C++笔记:std::string(二)指针数组字符串 在内存里的布局,与C字符串(char*)不同的是,C字符串以0结尾,而string字符串由于有专门记录其长度的属性,在实现的时候,并没有严格要求是否以0结尾!但是在C++11标准推出后,要求string字符串也以0结尾;通过.c_str()方法可以得到一个const char*的指针,指向str存储字符数据的内存空间;通过.data()方法可以得到一个const char*的指针,指向str存储字符数据的内存空间;在C++17标准下.data()方法得到的是一个char*的指针。...
C/C++笔记:std::string(一) 1.需求:把两个字符串拼接一下.memcpy参考【C/C++笔记:动态内存分配】 char strA[0x10] = "123"; char strB[0x10] = "456"; char strC[0x20]; memcpy(strC, strA, strlen(strA)); memcpy(strC + strlen(strA), strB, strlen(strB) + 1); std::cout << strC << std::endl;..
[深度学习] OpenVINO开发:C++ API推理步骤实现 使用C++ API实现推理步骤:创建Core对象,加载推理引擎Core,该引擎需要从当前路径加载plugins.xml文件;Core ie;读取IR文件 (.xml and .bin files),也可直接加载.onnx文件;CNNNetwork network = ie.ReadNetwork(input_model);配置 input & output;输入格式设置:InputInfo::Ptr input_info = network.getInputsInfo
[深度学习] OpenVINO开发:Win 10 安装及卸载 OpenVINO是英特尔推出的一款全面的工具套件,用于快速部署应用和解决方案,支持计算机视觉的CNN网络结构超过200余种。1. 安装OpenVINO官方文档:Install and Configure Intel® Distribution of OpenVINO™ toolkit for Windows* 101.1. 环境准备Microsoft Windows* 10, 64-bitMicrosoft Visual Studio with C++2019 or 2017 with MSBu
[深度学习 - 目标检测] YOLO系列(六):YOLO-V3源码解析:基于配置文件构造网络模型 1. 读取配置文件PyTorch-YOLOv3\config\yolov3.cfg def __init__(self, config_path, img_size=416): super(Darknet, self).__init__() self.module_defs = parse_model_config(config_path)2. 创建模型self.hyperparams, self.module_list = create_modules(sel
[深度学习 - 目标检测] YOLO系列(五):YOLO-V3源码解析:标签文件读取与处理 源码:datasets.py获取图片路径;def __getitem__(self, index): img_path = self.img_files[index % len(self.img_files)].rstrip()读取图片,转为RGB格式,并且数据格式转为tensor;img = transforms.ToTensor()(Image.open(img_path).convert('RGB'))数据预处理,如果数据不是三个channels,转换成三个;if
C/C++笔记:联合体 union 1. union通过union可以创建一个联合体,union中的成员变量共享内存,因此union的数据类型大小由其最大的成员变量决定;1.1. 语法union 联合体名称{ 变量类型 变量名称; 变量类型 变量名称; ...}1.2. 用法示例union USER { short sHP; int nHP;}2. union 的特点union中的成员变量共享内存,因此union的数据类型大小由其最大的成员变量决定;union USER
[深度学习 - 目标检测] YOLO系列(三):YOLO-V2 实际输入416 * 416:32的倍数,且除以32商为奇数:希望得到的结果有一个实际的中心点.降采样:Maxpoolyolo-v1:两种先验框, B =2;yolo-v2: 聚类提取先验框, B = 5;先把coco数据集中真实的标注框,使用k-means做一个聚类,yolo-v2中k = 5,根据上左图坐标关系查看,当k = 5时,数据比较合适。...
C/C++笔记:指针和结构体 1. 通过指针访问自定义数据类型typedef struct Role { int HP; int MP;}*PRole;int main(){ Role user; PRole puser = &user; puser->HP = 50; puser->MP = 50; user.HP = 50; user.MP = 50;}*PRole 定义为结构体Role的指针,使其可通过指针访问结构体。指针用->访问;.对应的是实体;反汇编:
C++笔记:C语言 字符串 1. 声明样式 char str[0xFF]{ "Hello" }; const char* strA = "Hello"; char* strB = new char[0xFF]{ "Hello" }2. 字符串处理2.1. C语言2.1.1. 输入、输出char 单字节字符; char str[0x5]; //申请5个字节空间 printf("请输入您的名字:"); scanf("%s", str); // 注意:如果输入超过5个字节,程序就会崩溃
[深度学习 - 目标检测] YOLO系列(二):YOLO-V1 YOLO-V1核心思想: 总结:输入流S*S的格子,格子里每个中心点产生两种候选框。设定一个阈值,超过阈值,置信度比较高,判定格子是有物体的。格子有物体,通过计算两个候选框的IoU,取数值比较大的那个框当作结果。网络结构 损失函数概念解释:NMS:非极大值抑制;总结:优点: 快速,简单;问题1: 每个Cell只预测一个类别,如果重叠无法解决;问题2:小物体检测效果一般,长宽比可选,但单一,只有两个B1,B2....
[深度学习 - 目标检测] YOLO系列(一) 1. one-stage衡量算法的两个指标: mAP和FPS:mAP越大,代表检测效果越好;FPS越大,代表速度越快.2. two-stage3. 指标分析精度和召回率;
C++笔记:智能指针 std::shared_ptr 1. 语法std::shared_ptr<类型> 变量名称{};std::shared_ptr<int> ptrA{};std::shared_ptr<int> ptrB{std::make_shared<int>(5)};注意:std::make_shared不支持数组。std::shared_ptr<int[]> ptrC{ new int[5]{1, 2, 3, 4, 5} };2. 特性可以有多个std::shar
C++笔记:智能指针 std::unique_ptr 1. 概念std::unique_ptr是所谓的智能指针的一种,主要目的是为了解决原生指针安全性不足的弊端。声明语法:std::unique_ptr<类型> 变量名称{}; int* a{}; //旧 std::unique_ptr<int> intPtr{}; //新初始化 int* b = new int[ 5 ]; std::unique_ptr<int> intPtrB{ new int{ 15 } };C++ 14 及