- 博客(102)
- 资源 (11)
- 收藏
- 关注

原创 深度学习框架比较分析及各种版本mnist识别
现在市场上流行的深度学习框架很多,常用的有tensorflow, keras,MXNet, Torch, Caffe, Theano等几种,通过对比分析可以得到:框架 开发语言 优劣及难易程度 tensorflow c++/cuda/python 资料全,灵活性好,适应性广,但前期上手难 keras c++/cuda/python ...
2019-09-06 09:37:31
534

原创 深度学习中常见的打标签工具和数据集集合
集大家之所长汇集于此,希望对有需要的你能有所帮助。一、打标签工具(1)labelimg/labelme这两款工具简便易行,前者主要用于对目标进行大致的标定,用于常见的框选标定,后者主要用于较为细致的轮廓标定,多用于mask rcnn等。安装也是很方便的,直接在终端下用pip install labelimg即可(至于labelme,需要先安装pyqt,所以先pip insta...
2018-11-05 11:12:34
40701
9

转载 从CNN到SSD目标检测机器学习方法总结
目标检测方法比较:object detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别。object detection要解决的问题就是物体在哪里,是什么这整个流程的问题。其中检测算法的发展如下,本文主要关注后半部分的,首先可以看一下CNN,它主要用来提取图像特征做分类。(一)图像分类:CNNhttps://blog.csdn.net/l...
2018-09-03 11:36:56
5247
1

原创 Windows下用c++来调用tensorflow训练好的模型
在尝试用c++来调用tensorflow训练好的模型时确实花了一些时间,现在总结一下,以供后续的学习: 首先我想说明的一下是常见的tensorflow训练好的模型保存方式有两种:ckpt格式和pb格式,其中前者主要用于暂存我们训练的临时数据,避免发生意外导致训练终止,前面的努力全部白费掉了。而后者常用于将模型固化,提供离线预测,用户只要提供一个输入,通过模型就可以得到一个预测结...
2018-07-14 11:13:51
36287
121
原创 以clion为例记录一次基于docker环境配置开发
clion作为jetbrains家族一款强劲的ide,多见于c++开发,而docker又是一个环境管理的利器,两者结合起来使用,在实际开发过程中往往可以做到事半功倍的效果,尤其是在一些多环境多版本控制开发中。1、打开CLion -> 选择文件 -> 设置 -> 构建、执行、部署 -> 部署 -> 点击加号(添加一个远程配置) -> 设置为SFTP协议(默认)在配置基于docker的ros环境时,按照上面的步骤配置完成后,如果还报找不到“catkin”错误,这还需要在clion的cmake里配置一下环境。
2022-09-08 14:05:20
1143
4
原创 刷题小技巧
刷题是最常见提高coding能力的一种途径,常见的刷题网站有leetcode和牛客等,但是这两者之间有略微的差异,下面对其进行简单的总结:(1)牛客等ACM模式什么是ACM输入模式呢? 就是自己构造输入数据格式,把要需要处理的容器填充好,OJ不会给你任何代码,包括include哪些函数都要自己写,最后也要自己控制返回数据的格式。例如,#include<iostream>#include<string>int main(int argc,char **...
2022-03-29 19:51:43
1448
原创 记录一次完整的docker踏坑之旅
大家都知道opencv的安装方式有两种,一种是直接pip安装,一种是源码安装,据网上资料所查,两者没多大区别。我以前都习惯用第一种,但是我有时候在想linux环境下如果我想构建c++项目,那么我怎么调用pip安装的opencv包呢?或者如果我源码编译的,c++项目和python项目是否都可以直接调用呢?还是说我把它们分开,源码编译的c++调用,pip安装的给python?直觉告诉我第三种可行性最高,带着这个疑问,我苦苦搜寻了一圈,发现没啥收获?于是我决定自己动手实践一下。下面就是基于docker...
2021-08-14 09:56:13
271
原创 安装pycocotools库
pycocotools这个库对于cver而言,相信大家都不陌生,COCO是一个大型的图像数据集,用于目标检测、分割、人的关键点检测、素材分割和标题生成。这个包提供了Matlab、Python和luaapi,这些api有助于在COCO中加载、解析和可视化注释。请访问http://cocodataset.org/,可以了解关于COCO的更多信息,包括数据、论文和教程。COCO网站上也描述了注释的确切格式。Matlab和PythonAPI是完整的,LuaAPI只提供基本功能。 除了这个...
2021-08-12 17:34:10
5138
1
原创 深度学习之网络爬虫总结
深度学习的前提就是海量的数据,在现实生产过程中采集大量的数据是很累时费钱的,这时候就到了爬虫大显身手的时候了。常见的网上爬虫资源方法都很单一,今天我就尝试一下就自己接触的几种方法进行一个简单的总结:(1)利用资源库import requestfrom lxml import xtreeimport beautiful-soup(2)利用爬虫框架pyspi...
2021-07-18 21:09:22
862
1
原创 防火墙配置
防火墙(Firewall),也称防护墙。它是一种位于内部网络与外部网络之间的网络安全系统。一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。防火墙对于我们的网络安全的重要性不言而喻 但是在实际的开发过程中 我们有可能会需要开启、关闭防火墙 那么 Ubuntu中怎么管理防火墙呢。1、Windows2、Linux以Ubuntu为例,在终端下进行如下操作,安装方法sudo apt-get install ufw这是有图形界面的(比较简陋),在新立得...
2021-06-28 16:11:48
3311
原创 linux下如何让脚本在后台运行
在服务器中我们经常需要将一些脚本挂在后台继续运行,而不是随着我们切断一段会话就结束了运行,常见的作法有如下几种,下面就进行简单的总结:1.nohup安装:which nohup ###查看/usr/bin目录下有没有nohup命令yum install coreutils ###安装###环境配置vi ~/.bash_profile 在PATH=$PATH:$HOME/bin后面添加:/usr/binsource ~/.bashrcnohup --vers...
2021-06-28 15:49:47
3279
原创 视屏处理优化工具
一直想做视屏目标跟踪之类的,在这里记录下自己点滴摸索过程:1、视屏抽帧 一段视屏其实就是就是一段连续的图片,由于人的肉眼识别频率有限(一般24张/秒),当超过这个极限就给人眼造成的感觉就是画面是运动的,这就是所谓的视频,而一秒内播放的图片数就是帧率(fps/s)。将每张图片从视屏中剥离出来就是抽帧。一般常见的抽帧方法如下:(1)利用FFmpeg工具 ...
2021-06-07 11:04:18
145
原创 深度学习入门到精通
如今深度学习越来越火热,想要快速学习掌握这门技术,除了勤奋努力外,一个好的引导是很重要的,尤其对于一个新手小白来说。但是网上的各种学习资料参差不齐,如何挑选一个合适自己的那就显得尤为重要了。下面就自己觉得不错的资料分享给我为数不多的粉丝朋友们!(1)基础篇 都知道深度学习需要一定的数学基础,例如概率论和矩阵运算等,如果你在这一块比较欠缺,可以推荐你关注一下唐宇迪的《数据科学人工智能-必备数学基础》,链接:https://study.163.com/course/introduc...
2021-06-06 09:26:03
282
原创 模型推理部署
TVM针对不同的深度学习框架和硬件平台,实现了统一的软件栈,以尽可能高效的方式,将不同框架下的深度学习模型部署到硬件平台上。与LLVM的架构相似,在2017年由陈天奇团队推出,和 NNVM 一起组成深度学习到各种硬件的完整优化工具链,支持手机,cuda, opencl, metal, javascript 以及其它各种后端。 如果从编译器的视角来看待如何解决这个问题,各种框架写的网络可以根据特定的规则转化成某种统一的表示形式,在统一表示的基础上进行一些可重用的图优化,之后再用不......
2021-03-19 14:33:28
1179
1
原创 yolov3及其各种变形算法解析
yolov3作为目前最为流行的one stage检测模型,从出现到现在衍生发展了太多版本,甚至到了去年性能更优的v4和v5都已经出来了,今天就此机会总结一下常见的v3变形算法。YOLOv3-tiny(YOLOv3的tiny版本) YOLOv3-SPP1(仅在第一个检测头前集成SPP模块) YOLOv3-SPP3(在三个检测头前都加入了SPP模块) SlimYOLOv3-SPP3-50(n=50, k=90, 迭代剪枝2次) SlimYOLOv3-SPP3-90(n=90, ...
2021-02-05 17:01:17
686
1
转载 分布式架构简记
大多数的开发者大多数的系统可能从来没接触过分布式系统,也根本没必要进行分布式系统架构,为什么?因为在访问量或者QPS没有达到单台机器的性能瓶颈的时候,根本没必要进行分布式架构。那如果业务量上来了,一般会怎么解决呢? 机器升级。机器配置的垂直扩展,首先要找到当前性能的瓶颈点,是CPU,是内存,是硬盘,还是带宽。砸钱加CPU,砸钱换SSD硬盘,砸钱换1T内存,这通常是解决问题最直接也最高效的方法。带宽不够?加带宽,1G不够用100G。CPU 8核不够?搞32核96核。这是绝大多数公...
2021-01-20 14:53:10
195
转载 目标检测之yolo系列
YOLO v.s Faster R-CNN1.统一网络:YOLO没有显示求取region proposal的过程。Faster R-CNN中尽管RPN与fast rcnn共享卷积层,但是在模型训练过程中,需要反复训练RPN网络和fast rcnn网络.相对于R-CNN系列的"看两眼"(候选框提取与分类),YOLO只需要Look Once.2. YOLO统一为一个回归问题,而R-CNN将检测结果分为两部分求解:物体类别(分类问题),物体位置即bounding box(回归问题)。YOLOv1论
2021-01-15 10:37:24
1180
转载 关于卷积神经网络的几点猜想
》首先一张图像通过卷积会不会改变尺寸大小有以下几种情况:卷积+padding(solid表示不填充,same表示填充到不改变图像大小,这是TensorFlow的叫法,其他框架不一样) 卷积+padding(非补全式填充) 卷积stride不等于1 #https://www.zhihu.com/question/270777218 pooling池化层操作在日常神经网络的构建过程中...
2021-01-14 14:33:56
487
原创 科研工作利器——chrome浏览器
攒了好久,今天终于决定动笔将它记录下来。chrome浏览器,无论是科研还是工作,相信大家都不会陌生,但是怎样发挥这款利器的最大威力,可能大家还不大熟悉,今天就自己的摸索进行简单记录:...
2021-01-11 14:26:21
683
1
原创 项目管理之导出依赖环境requirements.txt文件
在日常python项目建设中,不可避免的会依赖各种第三方库,我们很熟悉通过pip install 来进行安装,但是一旦涉及到项目移植,所有的依赖环境都需要重新来弄一遍,这确实让人很烦心,而常见的解决这种问题的方法有这两种:(1)生成项目所需依赖的requiretments.txt文件 这种情况就是将项目所需的所有第三方库全部整理到一个txt文件中,其中包括第三方库名和版本信息,当移植后直接通过以下指令来进行快速安装pip install -r requiretme...
2020-12-22 10:52:28
3960
3
原创 实战项目之基于flask的及时聊天系统
web开发就是基于浏览器进行人机交互,当访客登录到指定网址后,不仅可以看到浏览器渲染的画面,同时还可以与后台进行一些操作,再通过浏览器返回后台服务器处理的结果,这段时间一直在摸索利用flask框架来做点有意思的事,这不,他就来了。相对于django框架,flask具有以下特点,Flask:小巧、灵活,让程序员自己决定定制哪些功能,非常适用于小型网站。对于普通的工人来说将毛坯房装修为城市综合体还是很麻烦的,使用Flask来开发大型网站也一样,开发的难度较大,代码架构需要自己设计...
2020-12-18 16:57:58
1742
5
原创 PDF文件还可以这么玩。。。
大家在日常生活工作中,难免会需要对文档进行一些处理,word等格式文件还行,但是pdf格式的文件,真的让人又爱又恨,大家喜欢用pdf格式的原因就是可以将文件的格式全部固定化下来,避免换到另一个环境由于word等版本不一样导致样式啥的都丢失了,这样便于文件传输与打印等,但是爱也因它,恨也由它,这样固定死了,我们一旦需要对它进行二次修改就会比较麻烦,而今天我就碰到这种事了,所以我觉得可以将我的解决方法和大家分享一下:(1)格式转化 这种方式常见于想要快速获得结果但是又不想进...
2020-12-09 22:16:24
175
原创 深度学习之虚拟环境的配置
在学习过程中总是会接触到各种各样的项目,但是可能各个项目之间需要的环境不一样 ,每次都需要重新去配置相应的环境,这样会显得很麻烦啰嗦,这时候我们就可以借助到虚拟环境来解决这个问题。通过一番摸索,虚拟环境的配置一般可以有两个方向:说在前面:首先查看当前有几个虚拟环境(conda env list):(1)借助第三方库 通过安装virtualenv来安装...
2020-11-26 15:37:37
810
原创 tensorflow调试小技巧总结
Debugging 是程序员必备技能,TensorFlow 程序员也不例外。然而 TensorFlow 的运行模式是先构造一张 graph,再执行 session.run(),这就为调试带来一些困难。普通调试工具如 pdb 只能看到 graph 外部的变量和控制流程,无法深入 graph 内部一探究竟。几种常用方法:1.通过Session.run()获取变量的值2.利用Tensorboard查看一些可视化统计3.使用tf.Print()和tf.Assert()打印变量4....
2020-09-22 10:45:06
814
原创 docker安装使用系列三之nVidia-docker安装与使用
由于默认安装的docker都是基于cpu版本的,如果想要配合GPU进行一些简单的部署的话,则需要安装nvidia-docker来结合使用。
2020-09-21 11:33:07
9642
原创 docker安装使用系列一之docker不同系统间安装与使用
(1)安装与配置加速项docker在centos安装uname -a ###查看内核版本yum update ###yum升级到最新yum install -y yum-utils device-mapper-persistent-data lvm2 ###安装需要的软件包####设置yum源yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)y
2020-09-19 11:48:53
1044
原创 回调函数
回调函数,这个概念确实碰到很多次了,乘着今天在做项目的时候,抓住机会记录下学习心得。一、基本概念》回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。》钩子函数钩子函数是Windows消息处理机制的一部分,通过设置“钩子”,应用程序可以在系统级对所有消息、事件进行过滤,...
2020-08-26 09:33:43
845
原创 python之常见的数据结构
Python中常见的数据结构可以统称为容器。序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器。线性数据结构分类:栈(stack)--先进后出、 队列(queue)-先进先出、双端队列(deque)、链表(LinkedList)一、序列(列表、元组和字符串)序列中的每个元素都有自己的编号。Python中有6种内建的序列。其中列表和元组是最常见的类型。其他包括字符串、...
2020-08-14 10:58:26
250
原创 深度学习之相关硬件知识总结
俗话说得好,工欲善其事必先利其器,想要学好深度学习,你必须拥有足够的算力,否则一切都只是停留在纸上谈兵了。下面就自己了解的进行以下总结:(1)算力---处理单元 人工智能的实现需要依赖三个要素:算法是核心,硬件和数据是基础。算法主要分为为工程学法和模拟法。工程学方法是采用传统的编程技术,利用大量数据处理经验改进提升算法性能;模拟法则是模仿人类或其他生物所用的方法或...
2020-08-13 17:21:20
1298
原创 GitHub项目、代码搜索、使用等技巧
代码搜索网站:代码:GitHubCodaseOhlohkrugleMerobase Component FinderGoogle Code Archive SymbolHound 可以搜索特殊符号的搜索引擎,程序员的福音,遇到 Bash、正则之类的问题时候的利器! Hoogle Haskell 的专用函数搜索引擎,妈妈再也不用担心我的 Functional Programming R...
2020-07-15 14:30:45
53177
2
原创 python之web框架django
Web应用框架(Web application framework)是一种开发框架,用来支持动态网站、网络应用程序及网络服务的开发。其类型有基于请求的和基于组件的两种框架,前者的代表有Struts和Spring MVC等,后者的成员则有JSF、Tapestry等等,常见的架构有MVC和CMS两种。Web应用框架有助于减轻网页开发时共通性活动的工作负荷,例如许多框架提供数据库访问接口、标准样板以及会话管理等,可提升代码的可再用性。常用的web开发框架根据不同语言罗列如下: PHP ...
2020-07-05 22:37:36
1273
原创 mysql数据库的常见操作
mysql基础知识一 、常用操作数据库的命令1.show databases; 查看所有的数据库2.create database test; 创建一个叫test的数据库3.drop database test;删除一个叫test的数据库4.use test;选中库 ,在建表之前必须要选择数据库5.show tables; 在选中的数据库之中查看所有的表6.create table 表名 (字段1 类型, 字段2 类型);7.desc 表名;查看所在的表的字段8.drop ta...
2020-06-30 22:41:19
415
原创 python特殊函数
在日常使用python时,我们经常会碰到一些特殊的函数,下面就此进行一定的总结:1.匿名函数匿名函数:函数名字被隐藏匿名函数的定义语法:lambda 参数1,参数2,...,参数n:函数体注意:匿名函数函数体只有一行代码,并且该行代码必须具有运行结果,运行结果会被作为函数的返回值自动返回(也可以实现只输出功能,但违背了Python简化代码的初衷,一般不建议使用)匿名函数因...
2020-06-29 23:52:18
883
原创 图像化界面开发之QT入门
1、认识QT(1)控件 布局(layouts)空间间隔组(Spacers):lHorizontal Spacer:水平间隔。 lVertical Spacer:垂直间隔。按钮组(Buttons)中各个按钮的名称依次解释如下:lPush Button:按钮。 lTool Button:工具按钮。 lRadio Button:单选按钮。 lC...
2020-06-20 23:46:28
1971
1
原创 模型加速之openvino
1.什么是OpenVINO工具包OpenVINO™工具包可快速部署模拟人类视觉的应用程序和解决方案。该工具包基于卷积神经网络(CNN),可扩展英特尔®硬件的计算机视觉(CV)工作负载,从而最大限度地提高性能。OpenVINO™工具包包括深度学习部署工具包(DLDT)。OpenVINO工具包:在边缘启用基于CNN的深度学习推理 支持跨英特尔®CPU,英特尔®集成显卡,英特尔®FPG...
2020-05-17 18:04:49
3471
12
原创 深度学习之网络可视化
想要对一个深度学习模型有最直观的了解那就是直接可视化其网络结构,常见的网络可视化工具有很多,今天就自己了解的进行简单的总结,tensorflow的模型结构可视化方法:(1)使用自带的tensorboard(不直观)(2)使用netron工具打开(.pd 或者是.meta文件)(3)第三方库CNNGraph(https://github.com/huachao100...
2020-05-14 18:59:42
1759
1
yolo系列预训练权重.txt
2021-03-03
matrixcookbook.pdf
2020-08-23
rufus_files.7z
2020-05-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人