自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

暮日落流年的博客

记录学习生活中的一些所思、所想

  • 博客(152)

原创 如何处理.nii文件

最近读了一篇论文[1],是利用深度学习进行MRI图像重建的,作者在github[2]上提供给我们的他的实现代码,他使用的一个MRI分割比赛的数据集[3],但是将数据集下载下来发现全部都是.nii格式的文件,用普通的方法也是打不开的,经过一个星期的摸索,也是大概了解了如何读取以及处理.nii文件。 1. NIFTI出现原因.nii文件是NIFTI格式的文件,出现的原因是原来一种图像格...

2018-05-30 16:46:52 27209 54

原创 caffe学习

简单的入门一下caffe参考Deep learning tutorial on Caffe technology : basic commands, Python and C++ code.Caffe TutorialCSDN:Caffe以后可能会用到caffe这个框架,姑且先学习一下。

2020-07-02 16:53:51 118

原创 ubutu16.04 python3.6 opencv3.2 caffe(CPU) 填坑指南

最近由于需要,安装一下caffe,由于手边暂时没有gpu,所以在自己笔记本先安装一下cpu版本的caffe。由于caffe是属于比较老的框架,然后对python 2.7支持比较好,或者python3.5以下也是可以的,但是由于我们的python是3.6,以及tensorflow == 1.6,因此我们尝试在python 3.6的情况下,安装caffe CPU版本。系统版本:ubutu 16.04anoconda 4.3.30python 3.6opencv 3.2.0caffe 1.0.0.

2020-06-30 23:23:33 97

原创 ubutu16.04卸载opencv2安装opencv3

最近在安装caffe,然后caffe安装失败,最后定位到可能出现的错误原因就是opencv版本。虽然不知道什么时间安装了opencv2,现在发现重新安装opencv3并不是那么的容易,也是花了几个小时才安装好了,这里记录以下填坑的step。系统版本:ubutu 16.04anoconda 4.3.30python 3.6opencv 3.2.0caffe 1.0.00. 前言这里我们安装opencv3是为了后面安装caffe服务的。由于caffe是属于比较老的框架,然后对python.

2020-06-30 21:45:10 107

原创 OCR一些基础知识

OCR基础。RNN 原理。循环神经网络(RNN)原理通俗解释CTC原理。CTC算法详解CRNN原理。CRNN算法详解参考:机器学习遇到好的在补充,才入门,感觉学的东西还蛮多的。

2020-05-14 14:46:00 195 2

原创 目标检测 Mask RCNN

论文: Mask R-CNN代码:一. Facebook: facebookresearch/Detectron二.Tensorflow: CharlesShang/FastMaskRCNN三.Keras and TensorFlow: matterport/Mask_RCNN四.MXNet:TuSimple/mx-maskrcnn五.Pytorch:multimodallearning/pytorch-mask-rcnn论文解析:知乎:令人拍案称奇的Mask RCNNCSDN:Mask

2020-05-11 11:35:14 215

原创 目标检测 RetinaNet

此篇论文获得了ICCV最佳学生论文奖,提出了Focal Loss。论文: Focal Loss for Dense Object Detection代码:一. Caffe2: facebookresearch/Detectron二. Keras: fizyr/keras-retinanet三. Pytorch: kuangliu/pytorch-retinanet论文解析:知乎:简单的交叉熵损失函数,你真的懂了吗?知乎:物体检测之Focal Loss及RetinaNetCSDN:论文.

2020-05-11 10:44:27 190

原创 目标检测 FPN

论文: Feature Pyramid Networks for Object Detection代码:一. Pytorch: jwyang/fpn.pytorch二. Tensorflow: yangxue0827/FPN_Tensorflow论文解析:FPN posterCSDN:FPN详解CSDN:FPN(feature pyramid networks)算法讲解

2020-05-09 15:38:42 112

原创 目标检测 R-FCN

下面是R-FCN的学习论文:R-FCN: Object Detection via Region-based Fully Convolutional Networks代码:一. Matlab: daijifeng001/R-FCN二. Pytorch: ShadowXZT/pytorch_RFCN论文解析:CSDN:R-FCN论文解读及难点理解CSDN:R-FCN算法及Caf...

2020-04-30 15:51:29 130

原创 OCR学习-导语

OCR 学习。1. 自己的博客2. 其他参考   按照这个仓库hwalsuklee/awesome-deep-text-detection-recognition介绍的学习。2.1 综述性文章:Scene Text Detection and Recognition: Recent Advances and Future TrendsScene ...

2020-04-30 15:15:47 94

原创 目标检测-SSD

下面是SSD的学习论文:SSD: Single Shot MultiBox Detector代码:一. caffe: weiliu89/caffe论文解析:知乎:SSD目标检测CSDN:目标检测算法之SSDCSDN:SSD原理解读-从入门到精通CSDN:最详细的目标检测SSD算法讲解以后有什么在补充的,继续更新。...

2020-04-26 10:41:10 168

原创 目标检测-yolo系列

接下来就是Yolo系列1. YOLO v1论文:You Only Look Once: Unified, Real-Time Object Detection代码:一. Tensorflow: hizhangp/yolo_tensorflow二. Darknet:darknet/yolo代码解析:YOLO源码解析论文解析:知乎:图解YOLOCSDN:YOLO(You Onl...

2020-04-23 10:38:41 173

原创 目标检测-R-CNN系列

首先是对R-CNN系列进行学习,其包含了R-CNN, Fast R-CNN, Faster R-CNN。1. R-CNN在理解R-CNN代码的之前,需要了解一些前期的知识,包括了Selective Search,而这个又是以这个Graph-Based Image Segmentation为基础的,所以我们首先先对这二个有所了解。1.1 Efficient Graph-Based Im...

2020-04-23 10:36:51 149

原创 目标检测学习-导语

最近在学习OCR,而目标检测作为其基础当然需要学习一下了。因为这些前人已经有很多博客很详细的进行介绍了,所以我这里只是收集一些资料作为自己以后查阅。如果大家喜欢看视频的话,可以看这个网上找到的视频,包含了目标检测的相关介绍,SIFT以及HOG特征介绍,R-CNN系列,YOLO系列,SSD等等。视频链接:bilibili:人工智能_目标检测以及一个目标检测的深度学习仓库hoya012/deep...

2020-04-23 10:32:39 168

原创 Zotero 5.0 + 坚果云同步盘 + papership 配置教程

最近需要一个文献管理工具,然后网上推荐使用Zotero,于是乎装一下吧。原生的Zotero存储空间只有300M,那么就需要第三方代存文件了,使用坚果云或者百度云,由于目前百度云不太支持这种操作了,只能选择坚果云了。另外,为了在IOS端或者IPAD端阅读文献,你可能还需要一个papership软件。所以,这篇博客记录一下三者联合安装的过程,中间可能会需要遇到一些问题,记录下来填坑指南。1. 安...

2020-04-13 10:03:29 2742

原创 Latex排版大括号让其左对齐

用Latex写论文遇到一个问题,就是用大括号插入多行公式,但是默认是居中对齐,虽然不是很难的问题,但这里也记录一下。1. 问题首先使用在线Latex网站插入大括号多行公式的时候,出现问题:然后发现公式是居中对齐的,现在目标是让其变成左对齐。2. 问题解决首先使用在线Latex,加入我们用大括号插入一个三行一列的公式,其中代码如下:\left\{\begin{matrix} a =...

2020-03-17 10:05:56 1211

原创 python实现图像拼接

最近写论文遇到一个问题,就是我们使用python matplotlib.pyplot包中subplot创建两个子图,但是创建的子图并不符合我们的预期需求,于是乎记录下来其中的填坑指南。1. 初始问题       假设我们现在我们有以下局部代码,假设这里的A,B是提前已知的np.array数组,A shape=(128, ...

2020-03-07 10:13:13 683

原创 matlab报错:尝试将 SCRIPT xxx 作为函数执行

最近在跑matlab代码,今天在运行别人程序发现了一个错误,尝试将 SCRIPT xxx 作为函数执行, 这里记录自己的填坑指南,也方便自己和大家以后查阅。1. 问题出现在运行某代码的时出现错误, **尝试将 SCRIPT xxx 作为函数执行。**如下图所示:2. 猜想问题出现的可能性经过网上的搜索,发现列举了两种可能的错误:文件名和函数名重名所致,只需将函数重命名函数文件的...

2019-12-30 15:17:54 2300

原创 GAN原理再探

虽然自己很早就接触到了GAN,但是基本上都是停留在了解基本概念的阶段。如果别人问我什么是GAN,我可能会说:首先大家都知道GAN有两个网络,一个是generator,一个是discriminator,从二人零和博弈中受启发,通过两个网络互相对抗来达到最好的生成效果。如果在具体一点,可能会列举警察和小偷的故事,警察尽量判断是否为真,小偷尽量蒙骗警察。但是总是感觉缺少点什么,如果别人问我,为什么GA...

2019-09-15 21:39:28 167

原创 c++ 按分割符(忽略多次出现)切割string字符串

最近在做各家公司的笔试题,每次花在数据输入上时间很多,尤其是遇到字符串问题,总是卡壳。而其中最麻烦的就是输入一串字符串,以分隔符进行分隔,比如逗号,忽略出现多次的情况。因为C++不像python和Java有很好的库函数帮助我们,唯一可用的Boost库不能用,这也强迫我们使用自己定义的split函数了。所以,这篇文章也是自己的一个总结,希望自己以后可以查阅,也可以帮助其他需要的同学。1. 问题...

2019-09-09 10:20:30 553

原创 C++实现统计某个字符在字符串出现的次数,忽略大小写

1. 题目描述写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。输入描述:第一行输入一个有字母和数字以及空格组成的字符串,第二行输入一个字符。输出描述:输出输入字符串中含有该字符的个数。输入:ABCDEFA输出12. 思路这道题直观的思路是可以利用STL的count函数,但是忽略大小写直接套用就...

2019-08-16 11:09:44 2113

原创 C++打印一个字符串的全部排列,要求不要出现重复的排列

1. 题目打印一个字符串的全部排列,要求不要出现重复的排列.比如给字符串abc, 那么需要我们输出abc,acb, bac, bca, cab,cba.2. 思路我们主要是借助递归思想.将每个元素都与子数组的第一个元素交换再求剩余部分的全排列求完后再交换会来,复原原数组,这样是防止出现重复元素一开始看网上的代码实在是不知所云,后来去网上找个视频,感觉不错.[算法教程] 全排列...

2019-07-20 20:32:41 589 1

原创 C++实现一个数据流中,随时可以取得中位数

1. 题目描述Leetcode295: 数据流的中位数中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。例如,[2,3,4] 的中位数是 3[2,3] 的中位数是 (2 + 3) / 2 = 2.5设计一个支持以下两种操作的数据结构:void addNum(int num) - 从数据流中添加一个整数到数据结构中。double findMedian() -...

2019-07-19 17:25:19 441

原创 C++实现会议安排问题(贪心问题)

1. 题目描述一些项目要占用一个会议室宣讲,会议室不能同时容纳两个项目的宣讲。 给你每一个项目开始的时间和结束的时间(给你一个数组,里面 是一个个具体的项目),你来安排宣讲的日程,要求会议室进行的宣讲的场次最多。返回这个最多的宣讲场次。数学描述:如下图所示我们给定三个数组,图中表示三条线段,线段的两个端点分别代表的是起始时间和终止时间。注意:如果上一个活动在t时间结束,下一个活动最早应...

2019-07-19 15:47:32 393

原创 C++项目最大收益(贪心问题)

1. 题目描述输入: 参数1,正数数组costs; 参数2,正数数组profits;参数3,正数k; 参数4,正数m;costs[i]表示i号项目的花费, profits[i]表示i号项目在扣除花费之后还能挣到的钱(利润) ,k表示你不能并行、只能串行的最多做k个项目 m表示你初始的资金。说明:你每做完一个项目,马上获得的收益,可以支持你去做下一个项目。输出: 你最后获得的最大钱数。2...

2019-07-19 11:22:52 564

原创 C++实现切金条问题(贪心问题)

1. 题目描述一块金条切成两半,是需要花费和长度数值一样的铜板的。比如长度为20的金条,不管切成长度多大的两半,都要花费20个铜板。一群人想整分整块金条,怎么分最省铜板?例如,给定数组{10,20,30},代表一共三个人,整块金条长度为10+20+30=60. 金条要分成10,20,30三个部分。如果, 先把长度60的金条分成10和50,花费60 再把长度50的条分成20和30,花费50 一共...

2019-07-19 10:06:49 171

原创 c++实现图的广度优先搜索(BFS)和深度优先搜索(DFS)

1. 基本概念图分为无向图和有向图。与一个顶点相邻接的顶点数叫做该顶点的度。在有向图中,进入一个顶点的弧叫做该顶点的入度,从一个顶点发出的弧叫做该顶点的出度。在无向图中,若图中任意一对顶点都是连通的,则称此图是连通图。在有向图中,若任意一对顶点u和v间存在一条从u到v的路径和从v到u的路径,则称此图是强连通图。无向图的一个极大连通子图称为该图的一个连通分量。有向图的一个极大强连通子...

2019-07-18 10:31:04 991

原创 c++出现double free or corruption (fasttop)

今天在写图的相关的程序,写着写着就出现了一个问题,如图。1. 问题代码这里我们的目标主要是想要是利用邻接矩阵创建一个图,主要代码主要是参考这篇博客【C++】图的定义及性质#include <iostream>#include <climits>enum GraphKind {DG, UDG, DN, UDN};/* directed graph, undi...

2019-07-16 21:39:00 1727

原创 C++实现字符串拼接找到字典序最小组合问题

1. 题目描述给定一个字符串类型的数组strs,找到一种拼接方式,使得把所有字 符串拼起来之后形成的字符串具有最低的字典序。比如:举例:strs=[“abc”,“de”]。可以拼成"abcde",也可以拼成"deabc",但前者字典顺序更小,所以返回“abcde”strs=[“b”,“ba”]. 可以拼成“bba”和“bab”,后者字典序小,返回后者“bab”2. 思...

2019-07-15 16:04:42 332

原创 c++实现岛问题(并查集)

1. 问题描述一个矩阵中只有0和1两种值,每个位置都可以和自己的上、下、左、右四个位置相连,如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛?比如:0 0 1 0 1 01 1 1 0 1 01 0 0 1 0 00 0 0 0 0 0这个矩阵中有三个岛。2. 思路我们的主体是进行二维数组的遍历,同时我们也定义一个感染函数。比如我们遇到一个1时候,我们对这个...

2019-07-13 11:23:37 374

原创 C++设计RandomPool结构

1. 题目要求设计一种结构,在该结构中有如下三个功能:insert(key):将某个key加入到该结构,做到不重复加入。delete(key):将原本在结构中的某个key移除。getRandom(): 等概率随机返回结构中的任何一个key。【要求】 Insert、delete和getRandom方法的时间复杂度都是O(1)O(1)O(1)2. 思路用两个hash表为了得到k...

2019-07-09 17:13:46 401 4

原创 C++ 已知一棵完全二叉树,求其节点的个数

1. 题目要求:时间复杂度低于O(N),N为这棵树的节点个数2. 思路思路:因为满树的节点数2h−12^{h} - 12h−1如果一个节点的右子树的最左节点到达完全二叉树的最后一层,则左子树为满树,节点个数等于左子树的节点数+递归求右子树的节点数+本节点,如果此节点的右子树的最左节点没有到完全二叉树的最后一层,则右子树为满树,节点个数等于右子树的节点数+递归求左子树的节点+本节点。3...

2019-07-06 23:09:04 256

原创 C++判断一棵树是否为完全二叉树(CBT)

1. 定义如果一棵深度为k,有n个结点的二叉树中各结点能够与深度为k的顺序编号的满二叉树从1到n标号的结点相对应的二叉树称为完全二叉树。(只有最下两层结点可以度小于2)。需要满足以下二个特征:叶子结点只可能在层次最大的两层上出现;前k-1层中的结点都是“满”的,且第 k 层的结点都集中在左边。2. 思路层序遍历的时候我们都是只把不为空的左右孩子送入队列中,现在我们把层...

2019-07-06 21:15:16 1815

原创 C++实现二叉树深度优先搜索(DFS)、广度优先搜索(BFS)

在前面的文章中我们实现了二叉树的深度优先搜索,先序遍历,中序遍历,后序遍历,分别实现了递归和非递归版本。这里我们着重介绍一下广度优先搜索(BFS)1. 基本概念如图所示,BFS为是从根节点开始,沿着树的宽度遍历树的节点。如果所有节点均被访问,则算法中止。如上图所示的二叉树,A 是第一个访问的,然后顺序是 B、C,然后再是 D、E、F、G。2. 基本思路仔细看看层序遍历过程,其实就是从...

2019-07-06 20:18:21 2549

原创 C++判断一棵树是否为AVL(二叉平衡树)

1. 题目要求判断一棵二叉树是否是平衡二叉树2. 思路AVL树的名字来源于它的发明作者G.M. Adelson-Velsky 和 E.M. Landis。AVL树是最先发明的自平衡二叉查找树(Self-Balancing Binary Search Tree,简称平衡二叉树)。平衡二叉树定义(AVL):它或者是一颗空树,或者具有以下性质的二叉排序树:它的左子树和右子树的深度之差(平...

2019-07-06 16:21:47 487

原创 C++判断一棵树是否为BST(二叉排序树、搜索树)

1. 题目给定一棵二叉树,判定该二叉树是否是二叉搜索树(Binary Search Tree)?2. 思路二叉搜索树要求:结点node的左子树所有结点的值都小于node的值。结点node的右子树所有结点的值都大于node的值。结点node的左右子树同样都必须是二叉搜索树假设如图所示二叉树: 10 / \ 5 15 -------- binary t...

2019-07-06 15:57:29 1586

原创 C++实现二叉树的序列化和反序列化

1. 题目要求二叉树的序列化和反序列化2. 思路2.1 序列化首先我们介绍二叉树先序序列化的方式,假设序列化的结果字符串为str,初始时str等于空字符串。先序遍历二叉树,如果遇到空节点,就在str的末尾加上“#!”,“#”表示这个节点为空,节点值不存在,当然你也可以用其他的特殊字符,“!”表示一个值的结束。如果遇到不为空的节点,假设节点值为3,就在str的末尾加上“3!”。现在请你...

2019-07-06 10:45:45 1338 3

原创 C++实现在二叉树中找到一个节点的后继节点

在二叉树中找到一个节点的后继节点1. 题目描述给定一颗二叉树和其中的一个节点,如果找出中序遍历的下一个节点?树中的节点除了有两个分别指向左、右子节点的指针,还有一个指向父节点的指针。已知该二叉树如图所示:2. 思路分为三种情况:一个节点有右孩子,则在中序遍历中,该节点的后继是它的右子树的最左节点。这个节点是它父亲的左孩子,则该节点的后继节点是它的父亲。这个节点...

2019-07-05 15:33:58 345 1

原创 C++实现二叉树的先序、中序、后序遍历,包括递归方式和非递归 方式

C++实现二叉树的先序、中序、后序遍历,包括递归方式和非递归方式。1. 二叉树的基本结构struct Node { int value; Node* left; Node* right; Node(int value): value(value), left(nullptr), right(nullptr) {}};2. 递归和非递归方...

2019-07-05 11:02:03 4822

原创 C++判断一个链表是否为回文结构

1. 题目描述(基础要求)给定一个链表的头节点head,请判断该链表是否为回文结构。 例如: 1->2->1,返回true。 1->2->2->1,返回true。15->6->15,返回true。 1->2->3,返回false。2. 思路如果对空间复杂度没有要求的话,我们可以借助辅助空间.我们借助一个STL的stack将我们的va...

2019-06-01 16:39:25 1098

空空如也

空空如也

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