自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 3.文件批量重命名

# -*- coding: utf-8 -*-import osimport cv2f1 = os.listdir('G:/car-door/Images-car')n=0for i in f1: f2=os.listdir('G:/car-door/Images-car'+'/'+i) #if (i.endswith('.jpg')): #os.rename(i,'1.png') for j in f2: n+=1 img=...

2021-03-16 14:16:36 148

原创 2.显示xml标注框

import osimport xml.dom.minidomimport cv2a=[]ImgPath = 'C:\\Users\chenlufei\Desktop\data\stair\stair\\'AnnoPath = 'C:\\Users\chenlufei\Desktop\data\stair\stair_xml\outputs\\'#ImgPath = 'C:\\Users\chenlufei\Desktop\data\stair\stair\\'#AnnoPath = 'C:

2021-03-16 14:15:55 324

原创 1.视频切帧

import cv2import osvideo_path = 'C:\\Users\\chenlufei\Desktop\data\hand\\9.mp4' # 视频文件地址,是视频文件timeF = 1 # 隔timeF帧截一次图,1表示全截#images_path = video_path.split('.', 1)[0]images_path='C:\\Users\\chenlufei\Desktop\data\hand\\9' ...

2021-03-16 14:10:19 679

原创 MobileNet v1-v2的理解

v1: (1)单片卷积 + 1x1 通道改维度; (2)宽度因子a + 分辨率因子 b ; (以最低的精度损失换取大量的参数减少)v2: (1)加入残差结构(先升维:增加信息量,再降维度:较少参数,与Resnet相反),增加梯度传播 (2)较少block最后的Relu,为lineat,减少信息破坏; (3)全卷积(减少...

2019-08-21 16:05:52 1493

原创 GoogLenet Inception v1-v4的理解

简单来说:v1:多尺度融合v2:卷积分解,俩个3x3代替5x5v3:1xn+nx1代替nxn进一步减少参数v4:加入残差思想【问题来了】什么是Inception呢?Inception历经了V1、V2、V3、V4等多个版本的发展,不断趋于完善,下面一一进行介绍一、Inception V1通过设计一个稀疏网络结构,但是能够产生稠密的数据,既能增加神经...

2019-08-21 11:53:38 458

原创 26--leetcode--删除排序数组的重复项

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。class Solution(object): def removeDuplicates(self, nums): if len(nums) ==1: ...

2019-08-15 11:41:07 104

原创 24--leetcode--俩俩交换链表中的结点

# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def swapPairs(self, head): ...

2019-08-14 17:34:17 139

原创 22--leetcode--括号生成

给出n代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution(object): def generateParenthesis(self, n):...

2019-08-14 15:16:25 112

原创 21--leetcode--合并两个有序列表

# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def mergeTwoLists(self, l1, l...

2019-08-14 10:45:35 117

原创 20--leetcode--括号是否匹配

利用堆。class Solution: def isValid(self, s): stack = [] lookup = { "(":")", "[":"]", "{":"}" } for i in s: i...

2019-08-05 17:21:05 140

原创 14--leetcode--最大公共子串

找到最短的字符串已list[0]为标准,遍历list,加单个字符串右指针,不同即已到最长公共字串,返回class Solution(object): def longestCommonPrefix(self, strs): if not strs: return "" if len(strs) == 1:...

2019-08-03 16:09:42 253

原创 12--leetcode--数字转罗马数字

罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000 相当于如下哈希表d = {1000:'...

2019-08-03 15:21:09 119

原创 13--leetcode

罗马数字转整数class Solution(object): def romanToInt(self, s): d = {'I':1, 'IV':4, 'V':5, 'IX':9, 'X':10, 'XL':40, 'L':50, 'XC':90, 'C':100, 'CD':400, 'D':500,'CM':900, 'M':1000} i=0...

2019-08-02 11:35:58 81

原创 双线性插值的理解

双线性插值不仅可以resize图片(解决最近邻锯齿状问题),还可以代替反卷积(本质也是resize)。记录下原理:双线性插值 假设源图像大小为mxn,目标图像为axb。那么两幅图像的边长比分别为:m/a和n/b。注意,通常这个比例不是整数,编程存储的时候要用浮点型。目标图像的第(i,j)个像素点(i行j列)可以通过边长比对应回源图像。其对应坐标为(i*m/a,j*n/b)。显...

2019-07-05 11:50:58 2107

转载 PSP-Net的理解(多尺度特征融合分割)

Pyramid Scene Parsing Network收录:CVPR 2017 (IEEE Conference on Computer Vision and Pattern Recognition)原文地址: PSPNet代码: pspnet-github Keras tensorflow效果图:markAbstract本文提出的金字塔池化...

2019-07-03 16:00:49 8685

转载 DenseNet的理解

论文:Densely Connected Convolutional Networks论文链接:https://arxiv.org/pdf/1608.06993.pdf代码的github链接:https://github.com/liuzhuang13/DenseNetMXNet版本代码(有ImageNet预训练模型): https://github.com/miraclewkf/Dense...

2019-06-27 13:24:02 491

原创 Batch Normalization的理解

莫凡:https://zhuanlan.zhihu.com/p/24810318言有三:https://www.zhihu.com/question/38102762

2019-06-10 16:50:07 133

原创 第N+1次踩坑Caffe小计

Ubuntu16.04 Caffe 安装步骤记录(超详尽)系统:Ubuntu 16.04+caffe+cuda9.1+cudnn+opencv2.4,默认是新电脑第N+1次踩坑caffe,原来几次比较顺利,好久没配没想到遇到问题很大,趁机好好理解了下配置中遇到参数、路径、环境等的具体含义,不再机械化安装成功率高了不少,分享下。安装流程细分为如下10个步骤,细化步骤粒度更易避免出错...

2019-05-20 17:13:41 256

原创 22--leetcode--python

给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出 n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution(object): def generateParenthesis(self, N): ...

2019-04-11 22:13:28 248

原创 19--leetcode--python

给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。思路,最有效:双指针,前面i走n,然后j从头,i接着走到尾巴,j到倒数n !!!!class Solution(o...

2019-04-10 00:46:03 298

原创 17--leetcode--python

1.给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。思路:要做两个数组,遍历上一轮...

2019-04-08 22:50:44 241

原创 SSD 速度性能分析及anchor的选择

SSD最大特点是速度快1. 因为是end to end 的 网络,没有其他冗余机构2. anchor 是在大格上(8x8),每个格子有5中尺寸,整体anchor比Faster-RCNN中少很多3. 4-3,7,8-2,9-2,10-2,11层 5个层都做多尺度回归,为了改善小目标检测效果不佳4. 整个网络是框回归的思想generate anchor/原文中叫 def...

2019-03-20 17:02:59 3517

原创 cs231n笔记(11++)--faster-rcnn 中 RPN与Fast R-CNN特征共享详细过程

RPN与Fast R-CNN特征共享详细过程总结:一句话:训练rpn时保持与fast-rcnn共享的卷基层参数不变,fine-tune其它层;反过来也是保持共享卷基层参数不变。Faster-R-CNN算法由两大模块组成:1.PRN候选框提取模块;2.Fast R-CNN检测模块。我们已经描述了如何为生成区域建议训练网络,而没有考虑基于区域的目标检测CNN如何利用这些建议框...

2019-03-20 16:17:41 2078 2

转载 LSTM的理解

[译] 理解 LSTM(Long Short-Term Memory, LSTM) 网络本文译自Christopher Olah 的博文Recurrent Neural Networks人类并不是每时每刻都从一片空白的大脑开始他们的思考。在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义。我们不会将所有的东西都全部丢弃,然后用空白的大脑进行思...

2019-03-18 00:02:09 333

原创 11--leetcode--python

一.给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表...

2019-03-11 23:53:58 197

原创 手写IoU及非极大值抑制

面试的时候让手写IOU和非极大值抑制,虽然集体原理挺了解的,但是没有手写过这种应用函数,IoU还好,非极大值写个磕磕绊绊,写了个伪代码加口述混了过去。回来总结下def IOU(x1,y1,X1,Y1, x2,y2,X2,Y2): xx = max(x1,x2) XX = min(X1,X2) yy = max(y1,y2) YY = min(Y1,Y2...

2019-03-07 16:26:41 836

原创 4.霍夫变换直线检测

定义:霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,可以识别图像中的几何形状。它将图像空间中的特征点映射到参数空间进行投票,通过检测累计结果的局部极值点得到一个符合某特定形状的点的集合。经典霍夫变换用来检测图像中的直线,后来霍夫变换扩展到任意形状物体的识别,多为圆和椭圆。它的抗噪声、抗形变能力较强。另一种直线提取的方法是对图像边缘点进行链码追踪,在得到的链码串中提取...

2019-03-06 21:54:50 409

原创 6--leetcode--python笔记

6.将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列。比如输入字符串为"LEETCODEISHIRING"行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。请你实现这个将字符串进行指定行数变...

2019-03-04 23:09:50 140

原创 7--leetcode--python笔记

一.给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231, 231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。...

2019-03-04 17:10:48 127

翻译 GraphCut与GarbCut算法的理解

GrabCut是对GraphCut的改进版,是迭代的Graph Cut。OpenCV中的GrabCut算法是依据《"GrabCut"- Interactive Foreground Extraction using Iterated Graph Cuts》这篇文章来实现的。该算法利用了图像中的纹理(颜色)信息和边界(反差)信息,只要少量的用户交互操作即可得到比较好的分割结果。那下面我们来了解这...

2019-03-02 16:25:48 1615

原创 5--leetcode--python

5.最长回文子串给定一个字符串s,找出s中的最长回文子串。思路:为了降低时间复杂度,先写个for循环,把每个字符作为回文子串的中间点。再从中心点左右扩展找出该中心点的最大回文子串。第二步单独写个函数完成。注意子串分奇数串和偶数串,注意边界取值。class Solution(object): def longestPalindrome(self, s): m...

2019-03-02 15:41:56 183

原创 3--LeetCode--python

一.给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。思路:暴力算法两个for,时间复杂度O(n2)。所以采用哈希表将时间复杂度降到O(n)。将第一次见的字符作为key放入字典中,值为它的位置。再碰见就移动左指针class Solution(object): def lengthOfLongestSubstring(self, s): ...

2019-02-28 23:06:17 114

转载 深度学习中调参问题

深度学习调参有哪些技巧?作者:量子位来源:https://www.zhihu.com/question/25097993/answer/585714651最近,一位来自伯克利的小哥Josh Robin分享了他的深度学习debug心得,从最简单模型开始一步步深入到复杂模型,希望能给你一点帮助。为什么你的模型效果这么差?为什么别人的模型都能快速达到较低的错误率,而...

2019-02-28 12:07:30 801

原创 1,2--LeetCode-python笔记

一.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。(1)class Solution(object): def twoSum(self, nums, target): l={} for i ...

2019-02-27 10:35:46 110

原创 批量修改voc数据集中xml属性详解

import osimport os.pathimport xml.dom.minidom# C:\\Users\chenlufei\Desktop\\1234.xmlpath="F:\\sss\\" #路径(最好路径下只有xml文件,有其他文件容易报错)files=os.listdir(path) #得到文件夹下所有文件名称s=[]for xmlFile in ...

2018-12-29 04:46:33 2198

转载 cs231n笔记(11+)--faster-rcnn中,对RPN的理解

 2017年05月28日 00:45:55 美利坚节度使 阅读数:20487更多个人分类: 深度学习版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ying86615791/article/details/72788414 原文中rcnn部分的截图  图片来自网上,黑色是滑动窗口的区域,就是上图的红色区域的s...

2018-09-17 16:25:35 315

原创 如何从头到尾的用caffe-ssd训练自己的数据集并进行目标识别

caffe-ssd是一种非常适合新手的end to end 目标识别框架。也是我在学习了深度学习和目标识别理论以后第一个上手跑的程序。具体步骤如下:一 SSD的安装下载caffe,如果没有配置过可以参考:https://blog.csdn.net/baobei0112/article/details/77996369在home目录下,获取SSD的代码,下载完成后有一个caffe文件夹 1 git...

2018-05-02 11:22:00 18630 1

原创 cs231n笔记(10)--fastRCNN

整体训练框架大致为:1.与R-CNN一样用Selective Search方法生成2000个建议矿框(proposals)2.将整张图片直接输入CNN中,进行特征提取,得到feature map3.把之前生成的2000个建议框映射到刚刚CNN提取的最后一层feature map 上也就是说,与R-CNN最大的区别是fast R-CNN先进行特征提取,后映射2000个建议框(R-CN...

2018-04-14 16:30:11 249

原创 cs231n笔记(9+)——RoI pooling

每一个RoI都由一个四元组(r,c,h,w)表示,其中(r,c)表示左上角,而(h,w)则代表高度和宽度。这一层使用最大池化(max pooling)将RoI区域转化成固定大小的 H*W 的特征图(H和W是取决于任何特定RoI层的超参数)。RoI 最大池化通过将 h×w RoI窗口划分为 h / H × w / W个子窗口网格,子窗口大小固定为 H × W ,然后将每个子窗口中的值max pool...

2018-04-14 15:52:34 480

转载 caffe入门2

学习的caffe的目的,不是简单的做几个练习,而是最终落实到自己的项目或科研中去。因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试的整个流程。一、数据的准备    有条件的同学,可以去ImageNet的官网点击打开链接,下载ImageNet图片来训练。但是我没有下载,因为我注册过程中一直出现bug。    也可以去这个网盘(点击打开链接)下载图像数据,包括手写数字.jpg,手写数...

2018-03-12 11:28:59 216

空空如也

空空如也

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

TA关注的人

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