- 博客(76)
- 收藏
- 关注
转载 ! [rejected] master -> master (fetch first)问题的解决方案
! [rejected] master -> master (fetch first)问题的解决方案 今天在做git push时出现了如下错误: 分析原因,基本上可以确定是因为github上的远程库与本地库版本不一致(我对github上的文件做了编辑操作,且未更新到本地,当...
2020-09-18 14:40:15
254
原创 多方向目标检测《Gliding vertex on the horizontal bounding box for multi-oriented object detection》
github链接:https://github.com/MingtaoFu/gliding_vertex《Gliding vertex on the horizontal bounding box for multi-oriented object detection》是华中科大白翔老师的新作,发表于2019年11月21号。该文章是用来做物体检测的,有意思的是发挥了白翔老师在OCR方面的特长。一般的物体检测都是使用一个非旋转矩形来表示一个物体,文章认为对于长条形的物体(例如斜着的中文句子,航拍的船舶等),
2020-09-15 11:17:06
1825
原创 关于计算loss
一、def train(model, device, train_loader, optimizer, epoch): model.train() for batch_idx, (data, target) in enumerate(train_loader): data, target = data.to(device), target.to(device) optimizer.zero_grad() output = model(data
2020-09-14 15:12:27
2423
原创 ap的计算
根据检测到的结果:如下有7幅图像,其中15个地面真实对象由绿色边界框表示,24个检测到的对象由红色边界框表示。每个检测到的物体都有一个置信水平,…,Y)。下表显示了边界框及其相应的置信度。最后一列将检测结果标识为TP或FP。在本例中,如果IOU>30%,否则它就是一个FP。通过查看上面的图像,我们可以大致判断出检测是TP还是FP。(P表示正样本,通过预测的bbox与ground truth的iou确定为正样本或负样本)在一些图像中,有一个以上的检测与ground truth交叉(图...
2020-09-08 15:57:41
10530
3
原创 特征尺寸和卷积神经网络感受野的计算
神经网络感受野计算普通卷积感受野计算感受野指的是当前的特征图的一个特征点在输入空间影响的区域,该点的值被输入空间的这个区域影响,与其他区域无5173。通常有两种方式可以计算感受野,从后往前算和从前往后算。从前往后计算的方法很简单,基本上一个公式就可以计算,使用递推公式计算。 L表示感受野的大小,k表示网络的层序号,f表示卷积核尺寸,s表示步长大小。递推公式的增量为后一部分,对于第k层,其卷积核为fk...
2020-09-08 10:00:42
1268
原创 利用face_alignment检测人脸68个特征点并对齐
1.安装face_alignment 包,和dlib 包pip install face_alignment pip install dlib==19.6.1我的torch是1.2.0的2.实现import cv2import mathimport numpy as npimport face_alignmentclass FaceDetect: def __init__(self, device, detector): # landmarks will be
2020-09-07 16:00:27
3860
原创 安装dlib报错解决办法 Python
pypi.python.org/pypi/dlib/19.6.0下载 dlib-19.6.0-cp36-cp36m-win_amd64.whl 成功安装 dlib 但是import 时候失败尝试 pip install dlib==19.6.1 成功import。其他版本下载https://pypi.python.org/pypi/dlib/19.4.0下载 dlib-19.4.0-cp35-cp35m-win_amd64.whl其他版本的根据自己的 python 自行切换小版本进行网页尝试下载
2020-09-07 11:16:35
804
原创 pytorch之保存与加载模型
pytorch之保存与加载模型本篇笔记译自pytorch官网tutorial,用于方便查看。pytorch与保存、加载模型有关的常用函数3个:torch.save(): 保存一个序列化的对象到磁盘,使用的是Python的pickle库来实现的。torch.load(): 解序列化一个pickled对象并加载到内存当中。torch.nn.Module.load_state_dict(): 加载一个解序列化的state_dict对象1. state_dict在PyTorch中所有可学
2020-08-17 10:04:21
490
原创 关于python3.x的除法、向上向下取整及四舍五入的问题
除法的运算‘/’ 无论是否整除返回的都是 float ,暂且叫它精确除法 例如 : 10/5,的到的结果是 2.0 ‘//’无论是否整除返回的都是 int ,而且是去尾整除 例如 :5//2,得到的结果是 2向上向下取整要先导入模块 math 向上取整 math.ceil() 返回值为 int 向下取整 math.floor() 返回值为 int四舍五入 内置函数 round() 返回值为 int
2020-08-03 15:38:19
829
原创 Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等)
Numpy中提供了concatenate,append, stack类(包括hsatck、vstack、dstack、row_stack、column_stack),r_和c_等类和函数用于数组拼接的操作。各种函数的特点和区别如下标: concatenate 提供了axis参数,用于指定拼接方向 append 默认先ravel再拼接成一维数组,也可指定axis ...
2020-07-27 14:03:20
29735
原创 np.tile()函数
在讲tile方法之前,先要讲一下Numpy数组中的几个概念。在NumPy中,数组这一类又被称为ndarray。1、ndarray.ndim指数组的维度,即数组轴(axes)的个数,其数量等于秩(rank)。通俗地讲,我们平时印象中的数组就是一维数组,维度为1、轴的个数为1、秩也等于1;最常见的矩阵就是二维数组,维度为2、轴的个数为2(可以理解为由x轴、y轴组成)、秩等于2;我们所知的空间就相当于三维数组,维度为3、轴的个数为3(x、y、z轴)、秩等于3;以此类推。2、ndarray.shape按.
2020-07-27 13:58:14
2834
原创 关于pytorch grid_sample()
torch.nn.functional.grid_sample(input, grid, mode='bilinear', padding_mode='zeros')在这里的一点误解,导致debug接近两周的时间grid (N x OH x OW x 2) 对于outp...
2020-07-21 16:13:44
597
原创 Error(s) in loading state_dict for DataParallel
关于PyTorch模型保存与导入的一些注意点:1.没有使用并行计算:import torch.nn as nn class Net(nn.Module): def __init__(self): super().__init__() self.conv1 = nn.Conv2d(2, 2, 1) ...
2020-07-21 10:36:32
1365
1
原创 python打印整张图像的像素点--显示不全问题
在做图像处理的时候,经常需要打印出图片所有的像素值加以分析,但图片宽度往往大于控制台的行宽 从而造成像素值的不完全显示;那么怎样才能将图片所有像素值打印(分行打印)出来呢,请看下面:其实很简单,程序开头import完所需的包后,另起一行加上如下代码:np.set_printoptions(threshold=np.inf)...
2020-07-20 14:26:03
1179
1
原创 tensorflow各个版本的CUDA以及Cudnn版本对应关系
概述,需要注意以下几个问题:(1)NVIDIA的显卡驱动程序和CUDA完全是两个不同的概念哦!CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。CUDA的本质是一个工具包(ToolKit);但是二者虽然不一样的。显卡驱动的安装:当我们使用一台电脑的时候默认的已经安装了NVIDIA的显卡驱动,因为没有显卡驱动根本用不了显卡嘛,但是这个时候我们是没有CUDA可以用的,我们可
2020-07-15 15:34:29
319
原创 nvcc -V版本与(nvidia-smi)CUDA版本不一致
在win10中显卡驱动只能安装一个,但是可以同时安装多个版本的cudanvcc -V显示的是环境变量中的NVIDIA版本,如:也可以在环境变量中将低版本cuda移到最上方,来进行切换,如个人理解。
2020-07-15 15:01:26
8657
转载 PyTorch 学习笔记:transforms的二十二个方法(transforms用法非常详细)
变换是常见的图像变换。它们可以使用链接在一起Compose。此外,还有torchvision.transforms.functional模块。功能转换可以对转换进行细粒度控制。如果您必须构建更复杂的转换管道(例如,在分段任务的情况下),这将非常有用。torchvision.transforms.Compose(transforms)transforms(Transform对象列表)-要组成的变换列表。例子:transforms.Compose([ transforms.CenterCr
2020-07-15 11:49:32
11007
3
转载 深度学习CV行业失业工具包大集合
深度学习CV行业失业工具包大集合序言一、目标检测工具箱1.1 mmdetection1.2 Detectron21.3 SimpleDet1.4 PaddleDetetion二、语义分割工具箱2.1 semantic-segmentation-pytorch2.2 Semantic-Segmentation-Keras三、OCR工具箱3.1 chineseocr_lite3.2 PaddleOCR四、实例分割工具箱4....
2020-06-10 09:25:16
774
原创 conda在指定环境下安装包
conda在指定环境下安装包 有两个方法可以实现方法一:conda install -n 环境名 包名举个例子,在名字为test_env的环境中安装tensorflowxxxx$ conda install -n test_env tensorflow 方法二:进入环境,在环境里用conda安装举个例子,在名...
2020-05-29 15:04:58
3063
原创 string 和 list 之间的相互转换
本文记录了 str 转 list 的多种情况的解决方法和 list 转 str 的解决方法。目录1. string to list2. list to string1. string to list情况1:'[1,2,3,4]' -> [1,2,3,4]这里我们就要巧用python中的方法 eval() 了。根据菜鸟教程的讲解,该函数用来执行一个字符串表达式,并返回表达式的值。比如 eval('3*7') 返回的是 21 这个值,那我们用:In [1]: eval('[1
2020-05-09 16:20:09
737
原创 python列表和字典之间的相互转换
列表转换成字典注:列表不能直接使用dict转换成字典。方法一:使用zip()函数a = ['a1','a2','a3','a4']b = ['b1','b2','b3']d = zip(a,b)print(dict(d)) # {'a1': 'b1', 'a2': 'b2', 'a3': 'b3'}将a和b两个列表内的元素两两组合成键值对。当两个列表的长度不一致时,多出的元素在另一个列表无匹配的元素时就...
2020-05-09 13:42:31
793
原创 tensorflow下已经初始化,但还是存在 Attempting to use uninitialized value的解决方案
init = tf.global_variables_initializer()要写到函数调用的后面import tensorflow.contrib.slim as slimimport tensorflow as tfdef Mobilenet(input_shape,classes,is_training=True,width_multiplier=1,use_bias=True):...
2020-03-19 13:40:30
2732
原创 tf中list和tensor的转换
input_shape = [4,224,224,4]input = tf.random_normal(input_shape) #转成tensorinputs_shape = input.get_shape().as_list() #转成listprint(inputs_shape)[4,224,224,4]
2020-03-18 16:08:43
10651
2
原创 python日志
python日志简单生成日志自定义 Logger报错简单生成日志但是当发生异常时,直接使用无参数的 debug()、info()、warning()、error()、critical() 方法并不能记录异常信息,需要设置 exc_info 参数为 True 才可以,或者使用 exception() 方法,还可以使用 log() 方法,但还要设置日志级别和 exc_info 参数。import...
2020-01-07 10:51:18
231
转载 opencv 直线拟合
一、话说直线拟合霍夫直线检测容易受到线段形状与噪声的干扰而失真,这个时候我们需要另辟蹊径,通过对图像进行二值分析,提取骨架,对骨架像素点拟合生成直线,这种做法在一些场景下非常有效,而且效果还比较好。前面已经讲过霍夫变换,这里就不再叙述,直接上干货。二、距离变换距离变换是二值图像处理与操作中常用手段,在骨架提取...
2019-11-08 15:38:18
1048
转载 Python+OpenCV实现图像的傅里叶变换
文章目录傅里叶变换numpy实现OpenCV实现逆傅里叶变换numpy实现OpenCV实现傅里叶变换滤波实例numpy实现傅里叶变换O...
2019-11-06 16:20:15
603
转载 tensorflow ckpt模型和pb模型获取节点名称,以及ckpt转pb模型
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本...
2019-10-22 14:30:02
503
转载 argparse之在python脚本中赋值
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...
2019-10-16 17:05:35
1160
原创 python cv2读取中文路径
img_filename = “D:/9.2/Voc20072/全部目标检测机身外壳/JPEGImages/” + i + “.jpg”读取src = cv2.imdecode(np.fromfile(img_filename, dtype=np.uint8), -1)保存savePath = “D:/9.2/result1/机身外壳/” + i + “.jpg”cv2.imencode...
2019-10-16 13:45:36
1265
原创 python把路径中反斜杠‘\‘变为‘/‘
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本...
2019-10-14 15:30:25
5692
转载 cv2和PIL.Image之间的转换
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 ...
2019-08-22 16:12:45
2486
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅