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=...
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:
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' ...
MobileNet v1-v2的理解 v1: (1)单片卷积 + 1x1 通道改维度; (2)宽度因子a + 分辨率因子 b ; (以最低的精度损失换取大量的参数减少)v2: (1)加入残差结构(先升维:增加信息量,再降维度:较少参数,与Resnet相反),增加梯度传播 (2)较少block最后的Relu,为lineat,减少信息破坏; (3)全卷积(减少...
GoogLenet Inception v1-v4的理解 简单来说:v1:多尺度融合v2:卷积分解,俩个3x3代替5x5v3:1xn+nx1代替nxn进一步减少参数v4:加入残差思想【问题来了】什么是Inception呢?Inception历经了V1、V2、V3、V4等多个版本的发展,不断趋于完善,下面一一进行介绍一、Inception V1通过设计一个稀疏网络结构,但是能够产生稠密的数据,既能增加神经...
26--leetcode--删除排序数组的重复项 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。class Solution(object): def removeDuplicates(self, nums): if len(nums) ==1: ...
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): ...
22--leetcode--括号生成 给出n代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution(object): def generateParenthesis(self, n):...
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...
20--leetcode--括号是否匹配 利用堆。class Solution: def isValid(self, s): stack = [] lookup = { "(":")", "[":"]", "{":"}" } for i in s: i...
14--leetcode--最大公共子串 找到最短的字符串已list[0]为标准,遍历list,加单个字符串右指针,不同即已到最长公共字串,返回class Solution(object): def longestCommonPrefix(self, strs): if not strs: return "" if len(strs) == 1:...
12--leetcode--数字转罗马数字 罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000 相当于如下哈希表d = {1000:'...
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...
双线性插值的理解 双线性插值不仅可以resize图片(解决最近邻锯齿状问题),还可以代替反卷积(本质也是resize)。记录下原理:双线性插值 假设源图像大小为mxn,目标图像为axb。那么两幅图像的边长比分别为:m/a和n/b。注意,通常这个比例不是整数,编程存储的时候要用浮点型。目标图像的第(i,j)个像素点(i行j列)可以通过边长比对应回源图像。其对应坐标为(i*m/a,j*n/b)。显...
PSP-Net的理解(多尺度特征融合分割) Pyramid Scene Parsing Network收录:CVPR 2017 (IEEE Conference on Computer Vision and Pattern Recognition)原文地址: PSPNet代码: pspnet-github Keras tensorflow效果图:markAbstract本文提出的金字塔池化...
DenseNet的理解 论文:Densely Connected Convolutional Networks论文链接:https://arxiv.org/pdf/1608.06993.pdf代码的github链接:https://github.com/liuzhuang13/DenseNetMXNet版本代码(有ImageNet预训练模型): https://github.com/miraclewkf/Dense...
Batch Normalization的理解 莫凡:https://zhuanlan.zhihu.com/p/24810318言有三:https://www.zhihu.com/question/38102762
第N+1次踩坑Caffe小计 Ubuntu16.04 Caffe 安装步骤记录(超详尽)系统:Ubuntu 16.04+caffe+cuda9.1+cudnn+opencv2.4,默认是新电脑第N+1次踩坑caffe,原来几次比较顺利,好久没配没想到遇到问题很大,趁机好好理解了下配置中遇到参数、路径、环境等的具体含义,不再机械化安装成功率高了不少,分享下。安装流程细分为如下10个步骤,细化步骤粒度更易避免出错...
22--leetcode--python 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出 n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution(object): def generateParenthesis(self, N): ...
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...