- 博客(233)
- 资源 (10)
- 问答 (1)
- 收藏
- 关注
原创 五折交叉验证选择数据集的方法
假定在某一个项目中,没有现成的数据集划分,你需要手动将该数据集划分为训练、验证和测试集,一般比例取60%:20%:20%。但是仅仅通过随机选取某一个数据集划分可能是不全面的,因而我们应该使用五折交叉验证,使得每个子集都有可能成为测试集,从而取五折测试集的平均性能作为整体算法的性能,即如下图所示。假定我们有一个图像文件夹img_path,希望通过遍历该图像文件夹来获取五折划分对应的训练-验证-测试子集。那么如何用代码实现呢?
2024-05-17 19:45:31 995
原创 VeriEye 13.0商用虹膜识别软件python SDK试用指南
将SDK下载解压,然后从路径Neurotec_Biometric_13_0_SDK_2023-05-24\Neurotec_Biometric_13_0_SDK\Bin\Win64_x64\Activation中找到ActivationWizard.exe,进行许可证授权,可以自己找几张虹膜图像,然后运行iris_segment.py可以得到分割后的虹膜图像,运行iris_enroll.py可以得到每个原始虹膜图像的模板,运行verify.py可以得到两个模板之间的相似性得分。2. 下载python包,
2023-07-25 09:30:07 424
原创 深度理解PyTorch的WeightedRandomSampler处理图像分类任务的类别不平衡问题
最近做活体检测任务,将其看成是一个图像二分类问题,然而面临的一个很大问题就是正负样本的不平衡问题,也就是正样本(活体)很多,而负样本(假体)很少,如何处理好数据集的类别不平衡问题有很多方法,如使用加权的交叉熵损失(nn.CrossEntropyLoss(weight=weight)),但是更加有效的一个实践是。2. 对于类别不平衡的数据集,一般在9-10轮以后就会看全所有的样本,而对于类别均衡的数据集,采用上述方法采样,需要大致经过5轮才能看完所有的样本(这种情况下就不用采取这种采样策略了)。
2023-04-12 15:24:57 1625 1
原创 【深度学习】利用预训练的CNN构造新的网络结构
在我们利用现有的网络,比如resnet18作为backbone,来设计新的目标检测、语义分割等网络时,如何使用官方定义好的resnet18结构,并能载入预训练权重,是一个很关键的问题。目前pytorch框架给我们提供了三种范式,可以帮助我们设计基于预训练CNN作为backbone的新网络结构。以图像分类任务为例进行说明。【方法一】使用torchvision或者 PyTorch Hub参考:Models and pre-trained weights — Torchvision 0.15 documentat
2023-04-07 22:36:33 709
原创 利用透射变换裁剪图像中的四边形
起点可能不一致,方向也可能不一致。我们采用分别计算原始图像中四边形的上下两个边,和左右两个边,分别求其平均值,来确定目标图像的大小。最近有个标注任务,需要从如下的一张图像中标注四边形,然后将四边形的图像区域从图像中裁剪出来,并且映射成标准的矩形图像。针对第一个问题,可以采用透射变换来做,仿射变换不适合,因为这个四边形不是矩形,也不是平行四边形,而仿射变换能够。1) 图中的四边形并非矩形,因此从四边形图像映射到一个标准的矩形图像,需要进行变换。【方法三,通用方法,*****】【方法一,*****】
2023-04-06 11:27:03 536
原创 使用极链/AutoDL云服务器复盘caffe安装
2022年在ubuntu 上成功安装caffe,cuda为10.1,无cudnn,python 2.7.
2022-06-17 22:09:35 1393 1
原创 win10 平台VS2019最简安装实现C++/C开发
这两天一直在安装vs2015,总是卡在visual studio 2015 出现安装包丢失或损坏的现象,尽管按照网上很多方法尝试解决,但是一直不行。算了。还是使用最新版的VS 2019安装,没想到很顺利。下面总结一下在win10平台上最简安装VS2019,实现C++开发的全过程。1.下载 Visual Studio只需要下载社区版本即可。 【下载】2. 下载完成后,打开Visual Studio 安装程序运行你下载的引导程序文件以安装 Visual Studio 安装程序。 这个新.
2021-08-28 10:48:11 3867
原创 Pytorch——对应点相乘和矩阵相乘
1. 点乘,对应元素相乘,不求和import torcha = torch.Tensor([[1,2], [3,4], [5,6]])b1 = a.mul(a)//b2=a*a
2021-06-10 12:03:07 697
原创 为什么torch.nn.Linear的表达形式为y=xA^T+b而不是常见的y=Ax+b?
今天看代码,对比paper常见的公式与实际的代码,发现了torch.nn.Linear的表达形式和我预想的有点不一致,于是思索了一番。
2021-06-10 10:27:47 670
原创 复盘caffe安装
最近因之前的服务器上的caffe奔溃了,不得已重新安装这一古老的深度学习框架,之前也尝试了好几次,每次都失败,这次总算是成功了,因此及时地总结一下。以下安装的caffe主要是针对之前虹膜分割和巩膜分割所需的caffe版本。之前已经出过一个安装指南,部分内容与之重叠。其实整个caffe安装最困难的部分就是各个依赖软件的安装,因此我们只要把这部分安装好了就可以了。注意:安装指南,请参考《深度学习:21天实战caffe》的第5天那一章,只要按照上面所说的,将所有依赖文件安装在一个目录下,即可。最后安装
2020-11-28 14:48:15 606
原创 【2020年】最新中国科学院大学学位论文写作规范
最近在完成国科大博士论文写作的时候,有一些心得体会,特此总结下来,以飨读者,尤其是可爱的学弟学妹们。需要注意的是,以下仅仅是我自己的心得而已,仅供参考。1. 首先推荐大家使用国科大的Latex模板:https://github.com/mohuangrui/ucasthesis。这个模板非常好,基本上只需要书写内容即可,不需要配置其他参数。2. 由于我的习惯,我喜欢使用ctex编辑文件,但是ctex太老了,不能编译以上最新的国科大论文模板,所以需要使用texlive+Texmaker。如下.
2020-06-12 11:17:16 2057
转载 matlab局部放大的图中图画法
【亲测有效】在作图过程中,如果想将局部信息展示出来并且画在同一张图中,一般的MATLAB作图法就比较拙计了,好在MATLAB还是很强大的,当然,除了不能当女朋友之外 .... ╮(╯▽╰)╭ function showdetail()% 在当前的axes上操作,用矩形框选出感兴趣的一% 块区域然后在现有的axes里新建一axes将其画出set(gcf,'color','whit...
2019-12-01 17:30:30 2437 4
原创 一次惨痛的装机经历
最近不小心把我的联想一体机电脑系统搞坏了,就不得不重装系统,之前的系统是win7,于是开始的时候想着直接装win10,升级一下系统。但是装的过程中总是卡在了win10的正在准备系统中,进度环不转了。后来转了多次都不行,最后我才意思到我的电脑还不能装win10,因为我的win7分区是MBR的,如果要转win10,需要改改MBR到GPT。可是我不太会改,于是就放弃装win10了。期间我咨询了联想的...
2019-08-15 14:47:57 537
原创 Pytorch的C++接口实践
Pytorch1.1版本已经提供了相对稳定的c++接口,网上也有了众多的资料供大家参考,进行c++的接口的初步尝试。可以按照对应的选项下载,下面我们要说的是:如何利用已经编译好的官方libtorch库和其他的opencv库等联合编写应用?其实很简单,大概的步骤有三步:第一步:在python环境下将模型导出为jit的模型第二步:编写对应的c++ inference 程序。...
2019-08-06 23:23:34 29567 8
原创 win7 + vs2015+ matlab2016a + python3.5安装matcaffe cpu版本
参考:1.caffe-windows直接安装版---编译后的Release2.安装Windows10 和环境下的caffe(新版)3.win10+vs2015编译caffe的cpu debug版本、部署matcaffe主要的方法参考文献3.当前caffe-windows仅支持python2.7和3.5要注意的是:如果在安装时发现python接口有问题,可以去掉pytho...
2019-06-24 13:17:46 721
原创 在现有的python环境下创建另一个python版本【亲测有效】
比如,你现在的python环境是3.6,想要使用一个3.5,可以在anaconda环境下使用conda虚拟环境。第一步:conda create -n py35【创建Py35虚拟环境】第二步: 进入环境activate py35第三步: 升级或者降级python3.5conda install python=3.5然后新的python3.5安装成功,退出环...
2019-06-23 17:44:42 1076
原创 将bgr彩色矩阵归一化到0-255之间 【RGB image normalization】
参考下面文章,可以使用normalize 函数。 https://blog.csdn.net/kuweicai/article/details/78988886对于彩色rgb图像,也可以直接使用以上函数, 参考 https://devtalk.nvidia.com/default/topic/1042100/rgb-image-normalization/?offset=8image = cv...
2019-01-05 23:25:42 9407
原创 求圆和椭圆上任意角度的点的坐标
圆上任意角度的点的坐标如上图,给定圆心(Cx,Cy),半径为R, 求θ\thetaθ对应的点的坐标? 此处θ\thetaθ是相对于水平轴的角度。显然我们可以使用极坐标转换来求:{px=Cx+Rcos(θ)py=Cy+Rsin(θ)\left\{\begin{matrix}px= Cx+Rcos(\theta) \\ py= Cy+Rsin(\theta) \end{matrix}\...
2019-01-04 22:27:21 30351 5
原创 使用opencv的LBF算法进行人脸关键点检测
首先下载最新的opencv 和opencv_contrib, 然后按照在Windows下编译扩展OpenCV 3.1.0 + opencv_contrib的方法进行编译,其中核心一点就是先编译opencv,再在OPENCV_EXTRA_MODULES_PATH中加入opencv_contrib的modules的路径。编译好了后就可以进行人脸关键点检测。我们这里提供我们编译好的vs2015+op...
2018-10-31 22:48:47 1971
原创 matlab ,python,c++关于格式化输出数字的表达
我们想要格式化输出1,2,3,...为001,002,003 ... 那么在matlab,python,c++该如何表达呢? matlab:>> filedir=sprintf('%03i',10)filedir =010or >> imagename=num2str(10,'%03d')imagename =010 ...
2018-08-04 11:42:26 696
原创 opencv中的椭圆拟合
首先贴一个最简单的程序:访问:https://blog.csdn.net/guduruyu/article/details/70069426//创建一个用于绘制图像的空白图 cv::Mat image = cv::Mat::ones(480, 640, CV_8UC3); //设置蓝色背景 image.setTo(cv::Scalar(100, 0, 0)); //输入拟...
2018-06-22 10:17:51 5400
原创 源码安装libjpeg-turbo1.2.1,无root权限
首先说明我的系统是redhat linux64位。没有root权限。我们想安装libjpeg-turbo. 下面介绍具体的安装步骤。本来想安装最新的版本,但是最后失败了,无奈安装成1.2.1.1. 下载源码: https://zh.osdn.net/projects/sfnet_libjpeg-turbo/downloads/1.2.1/libjpeg-turbo-1.2.1.tar.gz/2. ...
2018-04-21 17:00:34 1245
原创 源码安装NASM,无root权限
首先说明我的系统是redhat linux64位。没有root权限。我们想安装nasm2.13. 下面介绍具体的安装步骤。1. 下载源码: https://www.nasm.us/pub/nasm/releasebuilds/2.13/ 选择nasm-2.13-xdoc.tar.gz下载在本地目录下2. 解压,tar -xvzf nasm-2.13-xdoc.tar.gz &cd nas...
2018-04-21 16:47:05 2218
原创 源码安装Bazel
有时候我们需要源码安装tensorflow,这时逃不过的第一步就是安装Bazel,如果没有root权限的时候,这时我们就需要源码安装Bazel了。下面是安装步骤,参考:https://docs.bazel.build/versions/master/install-compile-source.html1. Ensure that JDK 8, Python, Bash, zip, and the...
2018-04-12 18:18:54 7385 1
原创 安装oracle-java,并覆盖原先的OpenJDK
Centos默认安装openJDK只安装了java,没有安装javac.如果需要安装javac,需要install the openjdk-8-jdk package。参考:http://openjdk.java.net/install/为了完整地安装java,我们转而选择使用oracle-java,由于我们没有root权限,所以选择源码安装。步骤如下:1. 首先创建自定义目录,如~/java2....
2018-04-12 15:49:20 1871
原创 caffe 关于Deconvolution的初始化注意事项
对于fcn,经常要使用到Deconvolution进行上采样。对于caffe使用者,使用Deconvolution上采样,其参数往往直接给定,不需要通过学习获得。给定参数的方式很有意思,可以通过两种方式实现,但是这两种方式并非完全等价,各有各的价值。第一种方式: 通过net_surgery给定,这种方式最开始出现在FCN中。https://github.com/shelhamer/...
2018-02-28 10:37:13 5701
原创 sigmoid函数的数值稳定性
在深度学习中,我们常常选用sigmoid函数作为激活函数。sigmoid函数的具体形式如下: f(x)=11+e−x f(x)=\frac{1}{1+e^{-x}} 曲线表示为: 再画大一点,取x区间更大一些,则为: 显然从图像上看,sigmoid函数是数值稳定的,即对于更大范围的x,y的取值是连续的,有效的。从理论上看,
2018-01-22 16:45:05 2782 1
转载 语义分割深度学习方法集锦
转载:https://github.com/handong1587/handong1587.github.io/edit/master/_posts/deep_learning/2015-10-09-segmentation.mdPapersDeep Joint Task Learning for Generic Object Extractionintro: NIPS 2014homepage
2018-01-19 16:49:27 12875 3
原创 deeplab运行指南
以下仅仅为一个总结,参考了网上的众多资料,仅备忘记。主要链接deeplab主页:http://liangchiehchen.com/projects/DeepLab.html官方代码:https://bitbucket.org/aquariusjay/deeplab-public-ver2python 版caffe实现:https://github.com/TheLegendAli/DeepL
2017-12-14 21:20:54 5000 1
原创 关于FCN的数据集着色说明
前方我们讲解了《 FCN-数据篇》。里面包含了如何制作类似pascal voc的label。很大篇幅在谈如何着色,如何转化为索引图像。 由于一些内容参考网上的资料,所以对里面的一些操作含义也有些糊涂。 其实网上的东西也不都对,很多人云亦云。所以需要我们仔细甄别。 其中我就发现了一个错误。我们来从头谈起。pascal voc数据集 当我们从网上下载pascal voc2012的数据集,会发现S
2017-12-04 17:29:07 4316 4
原创 正则表达式及其在python上的应用
今天学习了一早上正则表达式。如下内容部分转载自《读懂正则表达式就这么简单》 一、什么是正则表达式正则表达式是一种特殊的字符串模式,用于匹配一组字符串,就好比用模具做产品,而正则就是这个模具,定义一种规则去匹配符合规则的字符。1.2 常用的正则匹配工具 在线匹配工具: 1. http://www.regexpal.com/ 2. http://rubular.com/ ...
2017-12-03 10:41:24 765
原创 FCN-加载训练与测试数据
当我们生成了数据后,我们来看看FCN是如何加载数据的。FCN 代码预览其中: - data : 训练测试数据 - ilsvrc-nets:存放预训练的模型 - 剩下的框:不同数据集的训练测试prototxt - voc_layers,siftflow_layers等:数据生成层 - snapshot:保存快照(若没有自建)加载训练测试数据我们从solve.py看起。 在这里郑重
2017-12-02 17:01:58 1349
原创 FCN-数据篇
从本篇开始,我们来记录一下全卷积网络用来做语义分割的全过程。 代码:https://github.com/shelhamer/fcn.berkeleyvision.org 下面我们将描述三方面的内容: 1. 官方提供的公开数据集 2. 自己的数据集如何准备,主要是如何标注label 3. 训练结束后如何对结果着色。公开数据集这里分别说一下SiftFlowDataset与pascal voc数
2017-12-02 15:48:51 5480 3
原创 Mask RCNN笔记
mask rcnn简介mask rcnn是何凯明基于以往的faster rcnn架构提出的新的卷积网络,一举完成了object instance segmentation. 该方法在有效地目标的同时完成了高质量的语义分割。 文章的主要思路就是把原有的Faster-RCNN进行扩展,添加一个分支使用现有的检测对目标进行并行预测。同时,这个网络结构比较容易实现和训练,速度5fps也算比较快点,可以很方便
2017-11-22 00:22:25 63202 16
原创 Feature Pyramid Networks for Object Detection 总结
最近在阅读FPN for object detection,看了网上的很多资料,有些认识是有问题的,当然有些很有价值。下面我自己总结了一下,以供参考。 1. FPN解决了什么问题?答: 在以往的faster rcnn进行目标检测时,无论是rpn还是fast rcnn,roi 都作用在最后一层,这在大目标的检测没有问题,但是对于小目标的检测就有些问题。因为对于小目标来说,当进行卷积池化到最后一层,实际
2017-11-21 22:52:43 19226 13
转载 图像金字塔总结
本文转载自:http://blog.csdn.net/dcrmg/article/details/52561656 一、 图像金字塔图像金字塔是一种以多分辨率来解释图像的结构,通过对原始图像进行多尺度像素采样的方式,生成N个不同分辨率的图像。把具有最高级别分辨率的图像放在底部,以金字塔形状排列,往上是一系列像素(尺寸)逐渐降低的图像,一直到金字塔的顶部只包含一个像
2017-11-21 19:59:06 13311
转载 Visual Studio 2008 环境变量的配置(参考设置VS2010)
本文转载自:http://blog.csdn.net/tracyliang223/article/details/21539361COPY FROM:http://www.cnblogs.com/waterlin/archive/2011/10/31/2230341.html在调试 Visual Studio 2008 程序时,经常有一些动态链接库(即 dll 文件)需
2017-11-17 16:00:04 1922
原创 visual studio 2015安装 无法启动程序,因为计算机丢失D3DCOMPILER_47.dll 的解决方法
对于题目中的解决方法,我查到了微软提供的一个方案:https://support.microsoft.com/en-us/help/4019990/update-for-the-d3dcompiler-47-dll-component-on-windows进入如下页面:http://www.catalog.update.microsoft.com/Search.aspx?q=KB4019990
2017-11-17 14:07:25 72107 9
原创 faster rcnn end2end 训练与测试
除了前面讲过的rpn与fast rcnn交替训练外,faster rcnn还提供了一种近乎联合的训练,姑且称为end2end训练。根据论文所讲,end2end的训练一气呵成,对于前向传播,rpn可以作为预设的网络提供proposal.而在后向传播中,rpn,与fast rcnn分别传导,而汇聚到shared layer.,但是没有考虑掉roi pooling层对于predicted bound
2017-11-14 22:58:14 4653 2
原创 faster rcnn的测试
当训练结束后,faster rcnn的模型保存在在py-faster-rcnn/output目录下,这时就可以用已有的模型对新的数据进行测试。下面简要说一下测试流程。测试的主要代码是./tools/test_net.py,并且使用到了fast_rcnn中test.py。 主要流程就是:1. 读取imdb,主要就是测试数据的位置等信息。2. 然后循环读取图片
2017-11-13 21:57:14 1325
test_demo.zip
2019-08-06
matlab_caffe_cpu_vs2015_matlab_2016_py35.zip
2019-06-23
doxygen安装工具
2015-11-08
2.46公式推导有误,应该改为
2014-12-29
TA创建的收藏夹 TA关注的收藏夹
TA关注的人