- 博客(132)
- 资源 (8)
- 收藏
- 关注
原创 Python DataFrame 字段中连续相同值定位查找
1、概述 最近数据清洗,需要清除dataframe中每列中有死值(即字段中出现连续同样值的行数,继续出现认为可能数据有异常,例如如果数据连续出现3次相同的值即认为死值),做了一些测试。例如,dataframe的序列值为:[2, 3, 3, 3, 4, 6, 6, 6, 6, 6, 7, 9, 10],连续的“3”和“6”值即判断为死值,找出其下标,即找到下标[1, 2, 3]、 [5, 6, 7, 8, 9]。
2020-07-24 12:49:35
4753
原创 Python DataFrame 固定周期内统计每列的非零值
1、概述 最近做一个数值统计,统计固定周期内(比如100行统一次)每列的非零值,实现不难,先统计0值个数,再计算非零值个数,主要是有些关于dataframe的操作技巧可以作为以后的参考。 data.csv文件数据示例格式如下: &nbs
2020-07-24 11:23:52
3136
转载 目标检测中的AP和mAP计算方法(易理解版)
图像分类任务通常用accuracy来衡量模型的准确率,对于目标检测任务,比如测试集上的所有图片一共有1000个object(这里的object不是图片的数量,因为一张图片中可能包含若干个object),两个模型都正确检测出了900个object(IOU>规定的阈值)。与图像分类任务不同的是,目标检测因为可能出现重复检测...
2020-04-29 14:36:41
9151
14
原创 多线程读取+多进程保存多路摄像头图像
项目需要对多路在线视频采集数据保存,利用自己之前的两篇博客:(1)利用python多进程程或多线程实时读取远程IP摄像头视频(2)Pyhon cv2.VideoWriter 保存视频整合成如下代码,可以对多路网络摄像头图像实时采集并分别保存视频。或者自己改写代码,直接保存每路的实时图像也可以。from threading import Threadfrom collections imp...
2020-04-02 12:08:55
4875
12
原创 工作思考感悟
突然想写下自己的一些工作中的感想,以便激励自己今后学习1、关于写代码(1)打好基本功,不懂的语法及时总结学习(2)可以学习github上优秀代码风格和语法(3)写代码前一定要整理好自己的算法思路,可以画出流程后再编码(4)熟练学习代码提交相关技能,如makefile编写、git提交等2、关于解决问题(1)遇到代码或者其他问题可以在百度、谷歌、CSDN、博客园、Stack Overfl...
2020-03-31 15:38:35
324
原创 yolov3-tiny 完整训练自己的数据集步骤(数据准备、模型训练和测试、计算mAP和recall)
最近项目需要要进行yolov3-tiny训练自己的数据,参考了一些网上的方法和自己以前做faster-rcnn的经验,总结了自己步骤,以供学习。本文前提是已经编译过opencv源码,安装好cuda和cudnn等,我的博客中有编译和安装参考。 &...
2020-03-26 10:47:06
16880
24
原创 linux中用git将本地代码上传到远程仓库步骤
1、增加秘钥(方便我们提交代码重复输入密码)(1)在终端执行ssh-keygen(2)获取秘钥 cat ~/.ssh/id_rsa.pub (3)在git仓库的“用户设置中”添加秘钥,名称可以随意:PS:秘钥2、上传代码在需要上传的代码文件中终端中执行:touch README.md //这个貌似必须有,我第一次因为这个上传出错git init // 初始化...
2020-03-16 22:13:53
11362
1
原创 海康SDK开发实时读取摄像头图像
1、概述 最近项目需要实时读取网络摄像头,并对图像做处理,参考网络资料和海康SDK开发文档,文档中给了两种方式(1)SDK直接解码显示(2)实时流数据回调,用户自行处理码流数据(开发文档上以软解显示为例),自己分别在Windows做了两种方式的时延测试,第一种方式测试时延约为200ms,第二种测试时延较大,达到了秒...
2020-03-14 17:55:12
8773
7
原创 深度学习面试题合集
1、不容错过的12个深度学习面试问题https://ai.51cto.com/art/202001/609327.htm2、深度学习面试题总结1-20https://blog.csdn.net/weixin_42073654/article/details/830635513、深度学习面试及答案https://cloud.tencent.com/developer/article/152...
2020-03-10 08:55:39
1061
原创 吴恩达深度学习视频及笔记(转)
最近在学习吴恩达深度学习,视频及笔记链接地址记录于此,方便后续学习。吴恩达深度学习视频来自于黄海广博士,链接为:https://zhuanlan.zhihu.com/p/84816512黄海广博士等人翻译的吴恩达深度学习课程,链接为:http://www.ai-start.com/dl...
2020-02-12 14:26:07
313
原创 像素坐标转到世界坐标时相机坐标系中的Zc值求解
世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换公式参考:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换 其中图像坐标到世界坐标的转化公式作者讲解的也比较清楚,但是对于Zc的值,作者并没有给出进一步讲解 ...
2020-01-07 16:47:37
20094
96
原创 aruco码C++检测和位姿估计代码
// aruco_code_detect.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include "pch.h"#include <iostream> #include <opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> #inclu...
2019-11-26 18:25:24
7740
9
原创 生成aruco码方法
利用C++生成aruco码,代码如下:#include "pch.h"#include <iostream> #include <opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> #include <...
2019-11-26 18:18:41
9684
15
转载 卷积神经网络(CNN)详解
一、卷积神经网络的基本概念卷积神经网络与普通神经网络的区别在于,卷积神经网络包含了一个由卷积层和子采样层(池化层)构成的特征抽取器。在卷积神经网络的卷积层中,一个神经元只与部分邻层神经元连接。在CNN的一个卷积层中,通常包含若干个特征图(featureMap),每个特征图由一些矩形排列的的神经元组成,同一特征图的神经元共享权值,这里共享的权值就是卷积核。卷积核一般以随机小数矩阵的形式初始化,在网...
2019-11-21 23:12:06
2454
1
原创 python画出最小外接矩形及其中心点
本文主要对opencv给出画出的最小外接矩形及其中心点的方法,用于可视化查找的目标块位置,便于调试,实际中查找到最小外接矩形后,会对轮廓筛选,参见我另一片博客:Python图片查找轮廓、多边形拟合、最小外接矩形操作实例,此外本文参考了博客OpenCv-Python 最小外接圆、最小外接矩形、椭圆拟合、直线拟合im...
2019-11-20 11:30:10
5983
转载 从YOLOv1到YOLOv3,目标检测的进化之路
引言:如今基于深度学习的目标检测已经逐渐成为自动驾驶,视频监控,机械加工,智能机器人等领域的核心技术,而现存的大多数精度高的目标检测算法,速度较慢,无法适应工业界对于目标检测实时性的需求,这时YOLO算法横空出世,以近乎极致的速度和出色的准确度赢得了大家的一致好评。基于此,我们选择YOLO算法来实现目标检测。YOLO算法目前...
2019-11-13 10:01:17
492
原创 戴尔笔记本设置U盘启动在window10下安装ubuntu双系统
这两天买了新戴尔G3笔记本,想安装双系统,之前自己也安装过台式和笔记本电脑的双系统,基本上没问题,设置U盘动都能用,这次搞了断断续续搞了两三天,都进入不了U盘启动,最后参考搜了很久发现有一个设置没有设置,就是如下的第3项,其实我之前安装只设置了第1项就可以找到U盘(戴尔台式机)然后安装即可,我之前的惠普的笔记本安装也没有设置...
2019-11-11 10:03:19
2463
1
原创 对训练图片中小目标进行提取扩展并改写xml中bndbox的坐标值
本文对小物体(在原图占比较小的),例如长宽都小于416的物体进行单独拿出来保存,并生大小为416×416的图片和一个只含有一个object的xml,如果检测的物体长宽都大于416,暂时舍弃。其中的"000000.xml"是随便一个xml,保证只含有一个object就可以,用于复制。img_path ,xml_path,spli...
2019-11-07 14:38:45
1404
1
转载 python简单过滤字母和数字的方法小结
本文实例讲述了Python简单过滤字母和数字的方法,具体如下:实例1:crazystring = ‘dade142.!0142f[., ]ad’#只保留数字new_crazy = filter(str.isdigit, crazystring)print(''.join(list(new_crazy))) #输出:1420142#只保留字母new_crazy = filter(st...
2019-10-29 21:58:37
2903
原创 python四行代码进行OCR字符识别
对OCR字符识别进行初步研究,发现Google有OCR的识别库,于是尝试测试一下。 OCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程,对应图形验证码来说,它们都是一...
2019-10-28 22:10:45
1035
转载 在Ubuntu下解决: 无法对目录 /var/lib/apt/lists/ 加锁的问题解决
在Ubuntu执行命令时,会出现无法对目录 “/var/lib/apt/lists/ 加锁”的错误,解决办法很简单,记录一下,方便使用。使用sudo apt-get update命令时出现如下错误:E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)Unable ...
2019-10-28 11:05:44
2829
原创 linux下查看tensorflow、cuda、cudnn、opencv版本命令
在模型训练时经常遇到库版本问题,需要查看版本是否对应,例如tensorflow、cuda、cudnn、opencv版本等,查询命令总结如下:1、查询tensorflow版本:import tensorflow as tfprint(tf.__version__)2、查询cuda版本:cat /usr/local/c...
2019-10-25 12:24:45
1374
转载 Ubuntu系统后插入网线后没有网络连接
新装了Ubuntu系统,插入有线网后没有网络连接,插拔无反应。解决办法:下载网卡驱动,https://downloadcenter.intel.com/zh-cn/download/28861/-PCIe-解压提取,打开终端,执行下面命令;cd src #进入到解压后的src文件夹sudo make installsudo modprobe e1000e执行后可以正常连接...
2019-10-24 14:44:40
5879
1
原创 简单的在线人脸检测实现
1、概述 最近看到一个很简洁的人脸检测代码(https://blog.csdn.net/fendouaini/article/details/102454320),很感兴趣,想尝试是不是可以在线对人脸检测并对人数统计,比如在商场的出入口,学校的出入口等,因为我本身对人脸检测研究少,但知道有很多人脸检测方法。写这个博客是为了记录...
2019-10-18 17:40:23
627
转载 6目摄像头照片球面投影变换拼接全景图片
最近在做全景拼接项目,有有六张来源自于六目摄像头的图片,分别来自不同方向上的图片,示意图如下: ________ | | | top | | | _______|________|______________...
2019-09-27 10:19:18
2335
3
原创 批量图片验证模型错误: OP_REQUIRES failed at save_restore_v2_ops.cc:184 : Not found: Key conv1_1/bias not found
最近测试alexnet模型时,模型训练及测试代码:https://github.com/stephen-v/tensorflow_alexnet_classify。想对多个图片进行检测,但是模型在计算出第一个图片时,第二个就会出错,并且报错:OP_REQUIRES failed at save_restore_v2_ops...
2019-09-26 18:49:07
6641
4
转载 深度学习中图像预处理为什么要减去图像均值
在深度学习中,大家都会发现训练集,验证集合测试集划分好之后会有减去均值的一步操作,但很多人都是只跟着做,并没有探究为什么要做这一步处理。其主要原理是我们默认自然图像是一类平稳的数据分布(即数据每一维的统计都服从相同分布),此时,在每个样本上减去数据的统计平均值可以移除共同的部分,凸显个体差异。其效果如下所示:  ...
2019-09-23 14:54:25
2604
原创 CSDN博客字体、颜色、字号设置以及增加空格、分割线方法
字体设置:<font face="微软雅黑">微软雅黑测试</font>效果:微软雅黑测试颜色设置:<font color=#DC143C>'红色字体测试'</font>效果:‘红色字体测试’字号设置:<font size=6 >字号设置为6测试</font>效果:字号设置为6测试空格(...
2019-09-18 09:50:11
472
原创 将训练数据的图片和xml文件重新命名
之前对训练的图片和xml文件重新命名为6位数前缀的名称(原始的可能有中文或者不符合使用习惯等),修改后的图片和xml格式如下: &nbs...
2019-09-17 16:32:02
3624
17
原创 利用GRB颜色模型过滤条件进行火灾检测
火灾检测的相关介绍参考我另一篇博客:https://blog.csdn.net/zhou4411781/article/details/100095274本文参考论文:Fire detection using statistical color model in video sequences,提取效果比一般的RGB颜色过滤提取效果好些,我进行了测试,提取的区域更加饱和,代码参考博客:https...
2019-09-17 10:18:46
2107
1
转载 Alexnet网络模型介绍
1、概述 AlexNet是2012年ImageNet竞赛冠军获得者Hinton和他的学生Alex Krizhevsky设计的。也是在那年之后,更多的更深的神经网路被提出,比如优秀的vgg,GoogleLeNet。其官方提供的数据模型,准确率达到57.1%,top 1-5 达到80.2%. 这项对于传统的机器学习分类算法而言,已...
2019-09-11 16:52:05
12096
原创 LeNet, AlexNet, ZFnet, VGGNet, GoogLeNet, ResNet, DenseNet英文论文链接汇总
简单了解一下卷积神经网络常见架构,如果需要深入学习,还需要看文末的几篇博客或者自己结合论文细读。LeNet这是最早用于数字识别的CNN,标志着CNN的真正面世7层(1Input+3Cov+1FC+1Output)AlexNet网络增大(5Conv+3maxpool+3fc)Data Augmentation:水平翻转、随机裁剪、平移变换、颜色、光照变换;Dropo...
2019-09-11 16:02:47
1141
转载 SIFT特征匹配详细原理
1. SIFT(尺度不变特征变换) SIFT,即尺度不变特征变换(Scale-invariant feature transform,SIFT),是用于图像处理领域的一种描述。这种描述具有尺度不变性,它对物体的尺度变化,刚体变换,光照强度和遮挡都具有较好的稳定性,可在图像中检测出关键点,是一种局部特征描述子。SIFT 算法被认...
2019-09-10 22:10:13
13236
转载 Canny边缘检测算法
最近看的一篇详细的Canny边缘检测算法代码,作者写的比较清楚,转载以记录。链接为:https://www.cnblogs.com/techyan1990/p/7291771.html还有另一篇也可学习:https://blog.csdn.net/likezhaobin/article/details/6892176...
2019-09-09 23:37:46
2604
原创 protoc指定版本安装
1、概述在编译caffe时会遇到protoc版本过高而导致编译失败的问题(默认的好像是2.6.1以下),记录一下安装protoc某个版本的的过程。2、安装以安装protoc2.6.1为例:下载新的包:protobuf-2.6.1.tar.gzhttps://github.com/protocolbuffers/protobuf/releases?after=v3.0.0-alpha-1...
2019-09-09 21:49:58
9024
1
转载 NCNN网络入门及安装
1、概述ncnn 是一个为手机端极致优化的高性能神经网络前向计算框架。ncnn 从设计之初深刻考虑手机端的部署和使用。无第三方依赖,跨平台,手机端 cpu 的速度快于目前所有已知的开源框架。基于 ncnn,开发者能够将深度学习算法轻松移植到手机端高效执行,开发出人工智能 APP,将 AI 带到你的指尖。ncnn 目前已在腾讯多款应用中使用,如QQ,Qzone,微信,天天P图等。NCNN git...
2019-09-09 21:26:10
1212
转载 C++类库版本不同导致的OpenCV编译链接错误
原因GCC4和GCC5使用的C++标准库下,string的名字不一样,导致链接错误。错误分析之前在Ubuntu下使用OpenCV的时候一切正常。后来再次编译的时候,连接器提示有些库函数找不到:main.o:在函数‘main’中:main.cpp:15:对‘cv::imread(std::stringconst&, int)’未定义的引用main.cpp:22:对‘cv::nam...
2019-09-07 16:54:22
919
原创 批量删除LabelImg制作的.xml中的部分的节点值(标签值)
概述自己在用labelImage打好标签后,想只用其中几类训练,不想训练全部类别,又不想重新打标生成.xml文件,因此想到这个办法:直接在.xml文件中删除原有的不需要的标签类及其属性。打标时标签名出现了大小写(工程量大时可能会手滑),程序中有改写标签值为小写的过程,因为我做py-faster-rcnn 训练时,标签必须全部为小写。以如下的.xml文件为例,我故意把标签增加了大写<a...
2019-09-06 10:55:50
3583
8
转载 Python迭代器和生成器
转载博客园的一篇文章,介绍比较详细:https://www.cnblogs.com/wj-1314/p/8490822.html
2019-09-04 17:54:06
122
原创 卷积层和池化层中padding参数“SAME”和“VALID”的区别
padding参数的作用是决定在进行卷积或池化操作时,是否对输入的图像矩阵边缘补0,‘SAME’ 为补零,‘VALID’ 则不补,因为在这些操作过程中过滤器可能不能将某个方向上的数据刚好处理完。VALID 模式inputs: 1 2 3 4 5 6 7 8 9 10 11 (12 13) |________________|...
2019-09-04 17:20:06
5705
1
dataFrame的嵌套修改内容时,如何不影响原有的dataFrame,如代码
2023-12-29
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅