自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 window10+VS2017配置安装opencv_contrib4.2.0+cmake

参考文献1、Windows下编译OpenCV+opencv_contrib上面这篇博客挺全的,但是有一个需要注意的地方,就是不要在BUILD_opencv_world这里设置为勾选,因为我发现在编译代码时不通过。另外还需要参考这里的建议,因为下载的opencv_contrib包里缺少一点东西。2、编译OpenCV以及openc_contrib提示缺少boostdesc_bgm.i文件出错的解决另外在添加依赖项时,可以使用cmd先将目录切换到Lib目录下,然后使用tree/f就可以列出当前目录下的所

2021-12-15 18:41:40 3460

原创 Visual Studio如何完成多行注释

最近发现B站上有的Up主可以同时注释掉多行代码,这里也来介绍一下。首先按下Ctrl+K,接着按下Ctrl+C,即可完成多行注释;如果想取消多行注释,则按Ctrl+K,接着按下Ctrl+U即可。

2021-10-26 19:37:41 1725

原创 C++中STL用法超详细总结

C++中STL用法超详细总结

2020-10-14 15:06:03 205

原创 convertScaleAbs()使用详解

OpenCV中,convertScaleAbs()函数的用法

2020-10-10 17:08:23 2805

原创 C++中max()和min函数的用法

主要用于以下几种数据类型:1.数组2.数值3.字符串4.时间C++中min函数和max函数的用法

2020-10-10 09:55:31 15309

原创 copy函数的使用

函数原型:Unit Systemfunction Copy(S: string; Index, Count: Integer): string;说明:S : 字符串. Indexd : 从第几位开始拷贝,从1开始. Count : 总共要拷贝几位. 从母字符串拷贝至另一个字符串返回值:结果返回新字符串注:如果Count大于所给字符长度,那多拷贝Index位置以后所有字符头文件#include<algorithm>将a[0]–a[2]复制到b[5]~b[7] 并且覆盖掉原来的

2020-10-09 19:46:26 1657 1

原创 C++中形参和实参的区别

之前一直搞不清楚实参和形参的真正含义,总是搞混。现在,看了教材和一些优秀的博客,稍微明白了他们之间的区别。用于接收传递值的变量被称为形参。传递给函数的值被称为实参。C++标准使用参数(argument)来表示实参,使用参量(parameter)来表示形参,因此参数传递是将参数赋给参量。形参出现在函数定义的地方,多个形参之间以逗号分隔,形参规定了一个函数所接受数据的类型和数量。实参出现在函数调用的地方,实参的数量与类型与形参一样,实参用于初始化形参。形参出现在函数定义中,在整个函数体内都可以使用

2020-10-05 19:58:24 5940 2

原创 模板类array

与数组一样,array对象的长度也是固定的,也使用栈(静态内存分配),而不是自由存储区,因此其效率与数组相同,但更方便,更安全。要创建array对象,需要包含头文件array。array对象的创建语法与vector稍有不同:#include <array>using namespace std;array<int,5> ai;array <double,4> ad={1.2,31.4,1.4,1.5,1.6};参考:C++array模板类的使用...

2020-10-04 20:07:09 458

原创 vector的使用

模板类vector类似于string类,也是一种动态数组。您可以在运行阶段设置vector对象的长度,可以在末尾附加新数据,还可以在中间插入新数据等。基本上,它是使用new创建动态数组的替代品。实际上vector类确实是使用new和delete来管理内存,但这种工作时自动完成的。我在浏览CSDN博客时,也发现了一些比较好的文章:vector的详细用法...

2020-10-04 19:53:30 123

原创 内存泄漏

内存泄漏(Memory Leak)是指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。内存泄漏缺陷具有隐蔽性、积累性的特征,比其他内存非法访问错误更难检测。因为内存泄漏的产生原因是内存块未被释放,属于遗漏型缺陷而不是过错型缺陷。此外,内存泄漏通常不会直接产生可观察的错误症状,而是逐渐积累,降低系统整体性能,极端的情况下可能使系统崩溃。随着计算机应用需求的日益增加,应用程序的设计与开发也相应的日趋复杂,开发人员在程序实现的过程中处理

2020-10-03 21:02:03 117

转载 PyCharm常用快捷键及调试模式

PyCharm常用快捷键及调试模式

2020-09-28 11:09:20 81

转载 Python中的if __name__ == ‘__main__‘

如何简单地理解Python中的if name == ‘main’

2020-09-27 21:15:11 75

转载 Python:字典的用法

Python:字典的用法

2020-09-22 11:01:57 84

转载 python:元组的使用方法

Python:元组的使用方法

2020-09-22 10:58:50 65

转载 Python:列表 【全用法】

最近发现一篇非常好的介绍列表的博客:Python:列表[全用法]

2020-09-21 22:03:29 142

原创 TypeError: Caught TypeError in DataLoader worker process 0.错误

简单粗暴的将num_workers设置为0.

2020-09-19 16:31:46 2176

原创 CUDA out of memory.最简单粗暴的解决办法

最近在跑一个神经网络时,出现:CUDA out of memory.的错误,可能是因为GPU内存不足的原因,最简单粗暴的方法就是将batch_size减小,但是会变慢。

2020-09-19 09:23:34 2749 2

转载 ONNX简介

简介Open Neural Network Exchange(ONNX,开放神经网络交换)格式,是一个用于表示深度学习模型的标准,可使模型在不同框架之间进行转移。ONNX是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的人工智能框架(如Pytorch, MXNet)可以采用相同格式存储模型数据并交互。 ONNX的规范及代码主要由微软,亚马逊 ,Facebook 和 IBM 等公司共同开发,以开放源代码的方式托管在Github上。目前官方支持加载ONNX模型并进行推理的深度学习

2020-09-13 09:30:21 1152

原创 将verctor<string>转换为string

vertor<string> strings; //定义字符串容器...//向其中添加一些元素string strings2 = ""; for (vector<string>::iterator iter = strings.begin(); iter != strings.end(); ++iter){ strings2 += *iter;}//cout << strings2 << endl;...

2020-09-12 14:21:43 436

原创 Pycharm中对多行程序同时注释

最近在B站发现有的up主可以一下注释掉多行程序,感觉很实用,所以这里介绍一下:只需选中需要注释的行,并按“ctrl+/"键,即可对这些行进行注释,再次按"ctrl+/"即可取消注释。

2020-09-05 21:30:47 2723 3

原创 tf.keras.layers模块中的函数

from __future__ import print_function as _print_functionimport sys as _sysfrom . import experimentalfrom tensorflow.python.keras.engine.base_layer import Layerfrom tensorflow.python.keras.engine.input_layer import Inputfrom tensorflow.python.keras.e

2020-08-29 18:43:59 2896

原创 环境变量添加:此环境变量太大, 此对话框允许将值设置为最长2047个字符

最近在装一些包的时候,发现由于环境变量添加的太多了,导致无法再添加新的变量。还好在CSDN上找到一篇大佬的博客,完美的解决了我的问题:环境变量添加

2020-08-27 17:05:42 241

原创 英伟达GPU算力评估表格

最新英伟达GPU算力评估表格

2020-08-26 19:12:55 735

原创 Python学习:Class类

前言使用类几乎可以模拟任何东西。下面来编写一个表示小狗的简单类Dog ——它表示的不是特定的小狗,而是任何小狗。对于大多数宠物狗,我们都知道些什么呢?它们都有名字 和年龄;我们还知道,大多数小狗还会蹲下和打滚。由于大多数小狗都具备上述两项信息(名字和年龄)和两种行为(蹲下和打滚),我们的Dog 类将包含它们。这个类让 Python知道如何创建表示小狗的对象。编写这个类后,我们将使用它来创建表示特定小狗的实例。创建Dog类根据Dog 类创建的每个实例都将存储名字和年龄。我们赋予了每条小狗蹲下(sit()

2020-08-26 13:32:05 631

转载 argparse模块的介绍

最近在学习的时候遇见,argparse模块,不是特别明白其用法,后来看了这篇博客,感觉非常详细。argparse模块的介绍

2020-08-25 17:26:02 139

原创 模型训练时GPU利用率太低的原因

最近在训练SSD模型时发现GPU的利用率只有8%,而CPU的利用率却非常高。后来了解到,一般使用CPU进行数据的读取和预处理,而使用GPU进行模型的正向传播和反向传播。由于CPU数据读取跟不上(读到内存+多线程+二进制文件),而GPU的处理速度太快,导致GPU的利用率不高。问题的解决办法:1,关闭一些日志记录;2,NVIDA提供了DALI库,可以将数据处理转移到GPU上。...

2020-08-23 18:23:23 14746 2

原创 pycocotools 介绍以及在windows10下的安装

前言最近在学习SSD目标检测算法,需要用到pycocotools,所以这里就简单介绍一下pycocotools是什么以及安装教程。pycocotools库的介绍pycocotools是什么?即python api tools of COCO。COCO是一个大型的图像数据集,用于目标检测、分割、人的关键点检测、素材分割和标题生成。这个包提供了Matlab、Python和luaapi,这些api有助于在COCO中加载、解析和可视化注释。请访问http://cocodataset.org/,可以了解关于C

2020-08-22 10:53:44 4582 1

原创 VGG-16网络模型

前言最近在学习SSD,发现SSD采用VGG16作为基础模型,然后在VGG16的基础上新增了卷积层来获得更多的特征图用于检测。因此,这里简要介绍一下VGG16模型的结构。VGG16结构顾名思义,vgg16总共有16层,其中包括13个卷积层和3个全连接层。第一次经过64个卷积核的两次卷积后,采用一次pooling,第二次经过两次128个卷积核卷积后,再采用pooling,第三次经过两次256个卷积核卷积后,采用一次pooling,接着再重复两次三个512个卷积核卷积后,再pooling,最后经过三次全连接

2020-08-21 15:26:05 3192

原创 目标检测算法之SSD

目标检测算法值SSD

2020-08-21 11:06:00 181

原创 计算机视觉有关图像处理的四大基本任务

分类-Classification:解决“是什么?”的问题,即给定一张图片或一段视频判断里面包含什么类别的目标。定位-Location:解决“在哪里?”的问题,即定位出这个目标的的位置。检测-Detection:解决“是什么?在哪里?”的问题,即定位出这个目标的的位置并且知道目标物是什么。分割-Segmentation:分为实例的分割(Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的问题。...

2020-08-21 09:05:22 1165

原创 vizer的介绍和安装

前言在github上看到一个SSD开源项目,里面需要配置Vizer。Vizer的网址:https://github.com/lufficc/VizerVizerBoxes and masks visualization tools.Installpip install VizerUsageimg = Image.open(path)# draw masksimg = draw_masks(img, data['masks'], data['labels'])# draw boxesi

2020-08-20 18:02:33 2021 2

原创 yacs介绍、安装以及用法

介绍yacs的作者大名鼎鼎的Ross Girshick,faster-rcnn的作者。github地址:https://github.com/rbgirshick/yacsyacs是一个轻量级用于定义和管理系统配置的开源库,是科学实验软件中常用的参数配置。这些“配置”通常涵盖概念,例如用于训练机器学习模型的超参数或可配置的模型超参数(例如卷积神经网络的深度)。由于您从事科学工作,因此可重复性至关重要,因此您需要一种可靠的方法来序列化实验配置。YACS使用YAML作为一种简单的,人类可读的序列化格式。范例

2020-08-20 17:34:34 3619

原创 使用Pycharm导入Github上的项目

最近在了解github,这里先记录一下如何使用Pycharm导入Github上的开源项目。在进行导入项目之前,我们需要先下载Git,可以参考Git教程我已经事先安装好Git,并在Github注册了账号,这里就不介绍了。那么如何在Pycharm中导入Github开源项目呢?1.Git配置打开Pycharm,并按照下图进行操作:2.Github配置注意:前提是你已经在注册好了Github账号。如下图所示:依次填入账号、密码,点击确定后关闭文件夹,重启Pycharm。3.导入Github项目

2020-08-20 16:32:24 22777 5

原创 GitHub的基本概念

前言使用GitHub的目的是为了借助GitHub托管项目代码。下面是GitHub的一些基本概念。仓库(Repository)仓库的意思,即你的项目,你想在GitHub上开源一个项目,那就必须要新建一个Repository,如果你开元的多了,你就拥有多个Repository。仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库。收藏(Star)仓库主页star按钮,意思为收藏该项目的人数,在GitHub上如果你有一个项目获得100个star都算很不容易了。收藏项目,方便下次查看。

2020-08-19 17:27:27 445

原创 OpenCV中的resize函数与Pytorch中的transforms.Resize函数的区别

在OpenCV中,resize函数的语法格式为:resize(img1,img2,Size(width,height))注意:Size()里面是宽在前,而高在后!!!在PyTorch中,transforms.Resize()函数的语法格式为:transforms.Resize(height,width)注意Resize()里面是高在前,而宽在后!!!由于之前没有搞清楚这两个,导致在使用C++部署libtorch模型时,出现了预测严重失败的情况!...

2020-08-18 09:46:26 1870

空空如也

空空如也

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

TA关注的人

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