自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 安装ubuntu时报错ima: error communicating to tpm chip解决方法

https://blog.csdn.net/weixin_45736684/article/details/1162370091.进入安装时,光标移动到"install ubuntu"2.按"e"进入编辑模式,进入命令行模式3.找到’‘quite splash’'然后去掉"—"后,添加“nomodeset”(依照不同显卡进行不同显卡驱动选项的添加,如果使用的是Nvidia显卡,添加nomodeset)4.F10安装5.安装成功后重启,选择Ubuntu,同样按e,在quite splash 后加 n

2021-09-02 13:20:29 3153

转载 使用pip安装Opencv

使用pip安装Opencv应该是最快最简单的安装方式了pip install opencv-contrib-python如果pip原始源下载慢的话可以考虑使用国内源:pip3 install opencv-contrib-python -i https://pypi.tuna.tsinghua.edu.cn/simple首先需要说明的是通过pip安装的opencv包不是官方编译好的opencv包, 也就是说他们没有得到官方非认可, 但这并不影响你的正常使用.一般来说, pip提供的opencv的包

2021-08-08 16:23:04 16000

转载 自制COCO 实例分割dataset并测试效果(从采集到测试)

原文链接:自制COCO 实例分割dataset并测试效果(从采集到测试)自制COCO 实例分割dataset并测试效果自制实例分割数据集流程:采集->标注->测试1.1 前期准备自制采集工具:wxpython_camera,支持普通摄像头和zed mini,图片采集分辨率自己在代码里改标注工具:labelmelabelme标注效果:采集程序运行效果:1.2 采集->标注用labelme打开采集完成的文件夹,使用create polygon标注好保存标注的分类和文件后

2021-08-01 23:23:31 763

转载 MS COCO官网数据集(百度云)下载,COCO API、MASK API和Annotation format介绍(来自官网)

COCO系列文章:MS COCO数据集目标检测评估(Detection Evaluation)(来自官网)MS COCO数据集人体关键点评估(Keypoint Evaluation)(来自官网)MS COCO数据集输出数据的结果格式(result format)和如何参加比赛(participate)(来自官网)MS COCO官网数据集(百度云)下载,COCO API、MASK API和Annotation format介绍(来自官网)由于coco的官网老是打不开,因此把官网内容记录在此包括MS

2021-07-31 16:30:31 751

转载 当我们在做技术调研的时候,到底需要做什么?怎么做?

一、序日常工作中,或多或少都会有接触到一些技术调研的工作,有些是亲自参与,有些是分配给其他人来完成。技术调研的过程中,会碰到一些问题,并且解决一些问题。有些技术调研可以做的非常完美,得出的结论让人无可挑剔,但是有些就显得不那么严谨,总能让挑剔的人找出一些问题。抛开技术调研,我们只看调研的话,在生活中就比较常见了。例如:计划旅行的攻略、挑选一件商品,这些都是有借鉴意义的。只是这些生活中的例子,是对我们自己负责,没有做好可能会影响出游的心情或者损失购买机会。可在工作中,技术调研的好坏,能根本上决定了公司

2021-07-27 11:38:03 1319 1

原创 pytorch API学习--数据预处理

[1]pytorch实现自由的数据读取-torch.utils.data的学习[2]Pytorch训练集和测试集划分及训练集批次的划分与加载[3]使用torch.utils.data.random_split()划分数据集

2021-06-24 10:27:29 107

原创 运算符重载

参考文章[1]python面向对象11_运算符重载[2]16-3 轻松学 Python 类 运算符重载 ( 第三节 )[3]千锋教育_Python视频教程_Python基础_python对象之运算符重载与str方法的使用

2021-06-23 16:57:26 56

原创 python装饰器

闭包要想了解装饰器,首先要了解一个概念,闭包。什么是闭包,一句话说就是,在函数中再嵌套一个函数,并且引用外部函数的变量,这就是一个闭包了。装饰器装饰器是不改变已有函数,实现跟该函数有关的功能,例如计算函数运行时间,多次运行该函数。只需要在函数前面@func,func实现想要测试或者运行的功能。参考文章:[1]Python装饰器(二):带参数[2]python 装饰器详解...

2021-06-22 20:18:30 53

转载 C++ 指针与取地址&

知识点小结C++的指针和引用因为涉及到地址和地址当中的存储内容,所以比较容易混淆。首先需要注意的是,指针和引用存放的都是被引用对象的地址!地址!地址!比如对于指针,当我们定义一个指针p,比如说int* p = &a时,指针p必须指向一个地址(即等号右边必须是一个地址)。而*p则表示该地址中包含的内容(即a)。&这里是取地址符号,不是引用,但作用也是和地址相关,及取出变量的地址。好,现在我们接触到了第一个地址,就是变量的地址,这个地址中存放了变量的内容,在下面的例子中可以认为这个地址中存放

2021-06-15 19:06:35 2840

原创 strlen函数与sizeof的区别

strlen定义:C 库函数 size_t strlen(const char *str) 计算字符串 str 的长度,直到空结束字符,但不包括空结束字符sizeof定义:sizeof是C语言的一种单目操作符,如C语言的其他操作符++、–等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。char num[5] = "ab";printf("sizeof(num):%d, strlen(num)%d

2021-06-15 11:18:09 162

原创 cpplint 代码静态审查

问题1:should almost always be at the end of the previous line [whitespace/braces] [1]问题2:No copyright message found. You should have a line: "Copyright [year] " [1]参考文章[1]Code Like in Google

2021-06-04 11:42:41 593

转载 软件工程分析设计图库目录

软件工程结构化设计主要工具process onppt参考文章[1]软件工程分析设计图库目录[2]程序员画图参考——流程图、时序图、算法原理图和系统架构图

2021-05-30 21:38:00 122

原创 Ubuntu Google test 单元测试

Ubuntu Google test 命令行安装测试1,Ubuntu 直接通过命令行安装测试sudo apt-get install libgtest-dev2,编译链接库2.1 进入gtest文件夹cd /usr/src/gtest2.2编译库文件#没有安装Cmake的请先安装cmakesudo mkdir build cd buildsudo cmake .. #一定要以sudo的方式运行,否则没有写入权限sudo make #这个也一样要以sudo的方式3,将

2021-05-22 17:38:21 695

转载 用一张PPT让面试官在100个人里面记住你

转载文章:用一张PPT让面试官在100个人里面记住你大三那年我应朋友邀请参加了一个精英小团体的聚会,其中有个同学分享了他是如何打动面试官进入腾讯实习的故事。这位同学很酷,穿着拖鞋就跑去面试了,手里拿了个破烂的牛皮纸文件袋。面试官一看这哪行,还懂不懂得尊重面试啊?只见这位同学目光坚定、两眼有神,缓缓打开文件夹说:“诸位,我叫XXX,我的故事都装在这个文件夹里面。”接着慢慢拿出一张张照片、信件和证明,像变魔术拿出一件件物品,佐证着他的创造力和执行力。据说面试官看完之后心跳加速,下巴都快掉下来了。最后自然录取

2021-05-19 19:27:47 387

原创 Git 应用

Git如何合并分支到主干及合并主干到分支master表示主干的名称,develop表示分支的名称。1.合并分支代码到主干2.合并主干代码到分支参考文章[1]Git如何合并分支到主干及合并主干到分支

2021-05-17 14:57:27 61

转载 计算机视觉经典书籍推荐

计算机视觉书籍推荐计算机视觉是人工智能的一个分支,主要研究如何使机器“看”的科学,通俗的将就是用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。无人机技术领域关于计算机视觉的应用也产生了不少优秀案例,如何更好的学习或深入计算机视觉呢?阿木实验室今天就为大家推荐一些计算机视觉值得阅读的经典书籍。参考文章[1]参考博客计算机视觉经典书籍推荐...

2021-05-16 11:00:46 288

原创 C/C++代码规范

C/C++编程规范有谷歌和华为等不同版本,这里选择采用谷歌作为标准,也因为有相应的工具方便使用;格式化不同编程规范工具有clang-format[7][8]和Cpplint[2][3][4];Clion安装cpplint[6]和vscode安装cpplint[5]参考下面文章;参考文章[1]Google 开源项目风格指南 [2]代码风格审查工具Cpplint[3]cpplint 介绍[4]【编程基础】CppLint工具使用过程[5]vscode进阶:C/C++开发环境配置[6]Clion安

2021-05-14 20:01:26 475

转载 高级车道线识别

算法流程滑动车道线提取过程剖析1,计算梯度直方图的峰值作为x轴参考基准点;2,从基准点开始画矩形框向上找框中非零点;3,第二个框的基本点是上一个基准点集x轴的均值;4,拟合所有非零点成直线,得到y=0的值就是x方向拟合基准点,斜率的倾向角;...

2021-04-25 15:19:10 105

原创 图像透视变换

定义透视变换(Perspective Transformation)是将成像投影到一个新的视平面(Viewing Plane),也称作投影映射(Projective Mapping)。问题透视变换矩阵如何求解,矩阵不同参数底层原理是什么?透视变换目标图像的坐标点坐标值如何定?(目前是尝试出来的)参考文章[1] 透视变换——cv::getPerspectiveTransform()与cv::warpPerspective()详解[2] 透视变换(进阶)[3] 高级车道线识别...

2021-04-21 19:46:31 117

原创 正则化

背景解决过拟合问题原理引入正则化实现对参数的约束,有效选择特征问题:1,数学上如何解释正则化过程?答:可以从两个角度来理解正则化,一种是贝叶斯角度,另一种是最优化角度[5]。可以看出加入权重衰减后会引起学习规则的修改[4],在每步梯度更新之前都会先收缩权重向量——将权重向量前边乘上一个小于1的权重因子(1−ϵα),也就是说,正则化惩罚系数α升高会将权重w拉向0。可以从两个角度进一步理解一下这个操作:a.在神经网络中,当一些权重趋近于0时,则可以理解为去掉了一些逻辑单元,简化后的网络虽然小但

2021-04-20 20:35:47 180

转载 Batch Normalization原理与实战

总结至此,关于Batch Normalization的理论与实战部分就介绍道这里。总的来说,BN通过将每一层网络的输入进行normalization,保证输入分布的均值与方差固定在一定范围内,减少了网络中的Internal Covariate Shift问题,并在一定程度上缓解了梯度消失,加速了模型收敛;并且BN使得网络对参数、激活函数更加具有鲁棒性,降低了神经网络模型训练和调参的复杂度;最后BN训练过程中由于使用mini-batch的mean/variance作为总体样本统计量估计,引入了随机噪声,在一

2021-04-12 17:11:09 62

原创 TensorFlow框架原理

推荐一个Tensorflow框架讲解的学习视频TensorFlow框架原理

2021-04-12 15:15:24 202

原创 深度卷积网络中反卷积(转置卷积)

结论插值方法不需要学习任何参数,而转置卷积就像卷积一样需要学习参数。tf.nn.conv2d_transpose中设置参数“SAME”,参考【3】,是在输入四周PAD一圈或者两圈0,然后在裁减,输出不唯一;设置参数“VALID”时,直接在四周PAD两圈0,没有裁剪,输出唯一确定,当不知道该函数如何使用时写一个小的DEMO可以快速了解。参考文章【1】深度卷积网络中如何进行上采样?【2】一文搞懂反卷积,转置卷积【3】tf.nn.conv2d_transpose反卷积(转置卷积)【4】如何理解深

2021-04-08 19:13:50 122

转载 一篇文章为你讲透双线性插值

原文连接:一篇文章为你讲透双线性插值问题1:这样如果我们采用不用的坐标系产生的结果是不一样的,而且无论我们采用什么坐标系,最左侧和最右侧(最上侧和最下侧)的点是不“公平的”,这是第一个问题。问题2:目标图像的原点(0, 0)点和原始图像的原点是重合的,但是目标图像的几何中心点相对于原始图像的几何中心点偏右下,那么整体图像的位置会发生偏移,为什么这样说,其实图像是由1个个的像素点组成,单纯说1个像素点是没有太大的意义的,1个像素点跟相邻像素点的值的渐变或者突变形成图像颜色的渐变或者边界,所以参与计算的

2021-04-06 11:24:35 250

转载 CNN真的需要下采样(上采样)吗?

一篇非常棒的博客文章连接:CNN真的需要下采样

2021-04-01 15:43:24 92

转载 深度学习的可解释性|Global Average Pooling(GAP)

GAP (Global Average Pooling)可用于模型微调,在做图像分类比赛时效果较好.最早在<>中提出.在常见的卷积神经网络中,全连接层之前的卷积层负责对图像进行特征提取,在获取特征后,传统的方法是接上全连接层之后再进行激活分类,而GAP的思路是使用GAP来替代该全连接层(即使用池化层的方式来降维),更重要的一点是保留了前面各个卷积层和池化层提取到的空间信息\语义信息,所以在实际应用中效果提升也较为明显!,另外,GAP去除了对输入大小的限制!,而且在卷积可视化Grad-CAM中也

2021-04-01 14:26:00 1794

转载 深度卷积网络中如何进行上采样?

原文连接深度卷积网络中如何进行上采样?摘要深度学习的许多应用中需要将提取的特征还原到原图像大小,如图像的语义分割、生成模型中的图像生成任务等。通过卷积和池化等技术可以将图像进行降维,因此,一些研究人员也想办法恢复原分辨率大小的图像,特别是在语义分割领域应用很成熟。常见的上采样方法有双线性插值、转置卷积、上采样(unsampling)、上池化(unpooling)和亚像素卷积(sub-pixel convolution,PixelShuffle)。下面对其进行简单介绍。参考文献参考文章:上采样、上池

2021-03-31 17:36:01 658

原创 二分类分割调试

BUG List问题1:Loss值固定不变解决方法:1,改变初始化值标准差stddev,loss开始变化;2,训练代码忘记运行adam优化器;参考文章:深度学习(神经网络)训练时loss不变的可能原因问题2:Loss Nan解决方法:sparse_softmax_cross_entropy_with_logits的logits输入前又做了一遍softmax。参考文章:tf.nn.sparse_softmax_cross_entropy_with_logits问题3:Tensorflo

2021-03-31 15:56:42 231

原创 分割评价指标MIOU

MIOU定义有很多博客都有写MIOU,参考下面文章注意点:类别包含背景,二分类也包含背景混淆矩阵就是分别统计分类模型归错类,归对类的观测值个数,然后把结果放在一个表里展示出来。代码实现def fast_hist(a, b, n): ''' a是W*H的一维数组,预测值 b是W*H的一维数组,真实值 ''' # k是一个一维bool数组,形状(H×W,);目的是找出标签中需要计算的类别 k = (a >= 0) & (a < n)

2021-03-26 16:51:51 1234 3

原创 为什么要批标准化?

有两个作者写的很好什么是批标准化 (Batch Normalization)详解深度学习中的Normalization,BN/LN/WN

2021-03-21 11:47:16 267

转载 tf.nn.sparse_softmax_cross_entropy_with_logits

转载总结请参考原文连接:sparse_softmax_cross_entropy_with_logitstf.nn.sparse_softmax_cross_entropy_with_logits与tf.nn.sofrmax_cross_entropy_with_logits有一些差异:1,onehot格式和类别格式;2,label的维度不同;写在前面:想做这篇很久很久了,想对比加了sparse的和不加的api有什么区别。也准备了很久,但是越准备,我的疑问就越多,所以一直没有下手写。写前一篇也是只

2021-03-16 14:00:48 472

转载 卷积神经网络中的pooling层能否用相同stride的convolution层替代?

项目场景:卷积神经网络中的pooling层能否用相同stride的convolution层替代?问题描述:根据Inception_v3 general design principles,作者在其论文中有这样的描述:concat一个stride为2的conv层和stride为2的pooling层可以avoid representation bottlenecks,那么pooling层是否可以完全由conv层替代,因为conv层也可以通过增大stride来缩小feature map的尺寸,增大感受野。

2021-03-14 11:04:06 1078

转载 ResNet网络结构分析---DeepLabV3

今天回顾了ResNet的论文Deep Residual Learning for Image Recognition,又结合PyTorch官方代码,整理一遍ResNet的结构,在这里写个总结。首先,ResNet在PyTorch的官方代码中共有5种不同深度的结构,深度分别为18、34、50、101、152(各种网络的深度指的是“需要通过训练更新参数”的层数,如卷积层,全连接层等),和论文完全一致。图1是论文里给出每种ResNet的具体结构:图1 不同深度ResNet的具体结构其中,根据Block类型,可以将这

2021-03-14 10:14:21 1185

原创 Anaconda环境中安装Python版的OpenCV

经常和图像处理打交道,需要用到OpenCV,如何安装Python版的OpenCV呢?总结了大概有三种方式:编译源码pip 命令conda 命令编译源码这里不推荐编译源码方式,尤其是新手,因为可能会出现可多意料之外的错误。给出两篇相关的博客,有兴趣的可以自己去看看:https://blog.csdn.net/u012150360/article/details/70156195https://www.cnblogs.com/freeweb/p/5794447.html需要注意点:编译之

2021-03-12 13:20:54 1464

原创 解决CUDA driver version is insufficient for CUDA runtime version

项目场景:conda环境下运行tensorflow代码,配置环境如下:tensorflow==>1.11cuda==>9.2cudnn==>7.13Driver Version==>390.138问题描述:出现错误:CUDA driver version is insufficient for CUDA runtime version原因分析:CUDA版本与显卡驱动版本不对应CUDA版本对显卡驱动版本有要求,见如下链接Tensorflow版本对应C

2021-03-11 10:21:30 4113

原创 tf.nn.conv2D() 空洞卷积使用错误

Bug调试Tensorflow用tf.nn.conv2D()实现空洞卷积,具体代码如下:out_tensor = tf.nn.conv2d(in_place, filter=filter_tensor, strides=(1, 1, 1, 1),padding=‘SAME’, dilations=(1, dilation_rate, dilation_rate, 1),data_format=‘NHWC’)dilation_rate>1,出现下面错误InvalidArgumentErro

2021-03-10 11:36:41 380

原创 摄像头参数

参考文章:[1]带你认识弥散圆,深层次解析光圈、焦距、物距对照片景深的影响[2]Chief Ray Angle[3]TV ,distortion ,EFL, FOV ,relative illuminance

2021-03-09 09:16:26 126

原创 全局平均池化

文章目录一、作用和优点二、Tensorflow实现参考文献一、作用和优点首次提出全局平均池化概念的论文是:Network In Network, 作用和优点都讲的很清楚。在这里插入图片描述:作用:如果要预测K个类别,在卷积特征抽取部分的最后一层卷积层,就会生成K个特征图,然后通过全局平均池化就可以得到 K个1×1的特征图,将这些1×1的特征图输入到softmax layer之后,每一个输出结果代表着这K个类别的概率(或置信度 confidence),起到取代全连接层的效果。优点:- 和全

2021-03-08 17:44:19 1476

原创 二值语义分割评价标准

文章目录前言一、F1 Score 定义二、代码实现总结参考文献前言刚开始做两个类别语义分割项目时,发现分割的评价指标高,但是实际效果可能完全错误的现象。当时使用的指标是Pixel Accuracy,因为前景像素占总像素的5%以内,所以如果预测结果都是背景的话识别也过也非常高。目前分割论文中普遍使用的评价标准是mIOU,单一类别和多类别都可以使用该标准,另外还有一个较好的评价指标F1 Score。即使是F1 Score还不能完全表示所有分割任务的评价标准,具体人物可以参考这篇文章(R. Haralic

2021-03-02 10:23:05 1279 2

转载 深度残差网络

深度残差网络(Deep residual network, ResNet)***文章解读参考博客***:[深度残差网络—ResNet总结](https://www.cnblogs.com/xiaoboge/p/10539884.html) 文章目录 一、前言二、深度网络的退化问题三、残差学习3.1 残差网络原理3.2 ResNet结构为什么可以解决深度网络退化问题?3.3 残差单元3.4 ResNet的网络结...

2021-02-26 14:18:23 642

空空如也

空空如也

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

TA关注的人

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