自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Peanut 大本营

学习记录

  • 博客(137)
  • 资源 (7)
  • 收藏
  • 关注

原创 图像、视频相关评价指标

图像、视频生成模型的常用指标

2023-11-10 17:14:42 160

原创 YUV图像格式

各种YUV数据格式

2022-06-22 11:12:11 1150 1

原创 各种数据集

深度学习相关的各种数据集

2022-03-15 15:08:36 3905

原创 caffe编译依赖

caffe依赖apt install libprotobuf-dev protobuf-compilerapt install libgflags-devapt install libgoogle-glog-devapt install libatlas-base-devapt install libhdf5-serial-devapt install liblmdb-devapt install libleveldb-devapt install libsnappy-dev

2021-05-28 13:32:38 158

原创 图像对比度增强

图像对比度增强1. 线性变换通过y=ax+b对灰度值进行处理,例如对于过暗的图片,其灰度分布在[0,100], 选择a=2,b=10能将灰度范围拉伸到[10, 210]。需要根据情况设置a和b的值。cv2.convertScaleAbs(img,alpha=1.5,beta=0)2. 直方图正规化自动计算y=ax+b中的a和b,实际上就是将图像从[min, max]映射到[0, 255]:cv2.normalize(img,dst=None,alpha=350,beta=10,norm_t

2021-05-24 17:23:31 708

原创 查看各种信息

查看各种信息Linux系统信息CPU信息(型号)物理CPU个数每个物理CPU中core的个数(即核数)逻辑CPU的个数内存信息Linux 内核linux 系统版本机器型号(机器硬件型号)Linux系统信息CPU信息(型号)cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c物理CPU个数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l每个物理CPU中core的个数(即核数)

2021-05-13 10:14:34 146

原创 Pytorch分布式训练(单机多卡)

主要两种方式:DataParallel和DistributedDataParallelDataParallel实现简单,但速度较慢,且存在负载不均衡的问题。DistributedDataParallel本身是实现多机多卡的,但单机多卡也可以使用,配置稍复杂。demo如下:DataParallelimport torchimport torch.nn as nnfrom torch.autograd import Variablefrom torch.utils.data import Data

2020-09-21 16:41:45 4134 2

原创 关于Softmax

基本公式:Si=ezi∑j=0Cezj S_i = \frac{e^{z_i}}{\sum_{j=0}^C{e^{z_j}}}Si​=∑j=0C​ezj​ezi​​其中,输入zzz为一个C维向量,输出SSS也是一个C维向量,这里的C通常就是分类里面的类别数量。公式的分母对于每个输出SiS_iSi​都是一样的,区别只在于分子ezie^{z_i}ezi​,从这个角度看softmax就有点类似于归一化操作,实际效果也是把任意范围的输入变成[-1,1]的输出(维度不变)。图像如下:softmax交叉熵

2020-05-11 19:25:20 164

原创 Opencv 形态学操作

形态学操作:使图像的形态发生改变的操作目的:用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的常用操作:膨胀、腐蚀、开操作、闭操作,梯度计算,顶帽变换,黑帽变换等应用场景:消除噪声、边界提取、区域填充、连通分量提取、凸壳、细化、粗化等;分割出独立的图像元素,或者图像中相邻的元素;求取图像中明显的极大值区域和极小值区域;求取图像梯度kernel:每次操作的范围...

2020-04-08 17:56:45 441

原创 姿态估计(人体关键点检测)之CPN

CPN:Cascaded Pyramid Network for Multi-Person Pose Estimation官方代码:https://github.com/chenyilun95/tf-cpn整体框架:此方法为TOP-DOWN方法,需依赖另一个人体检测模型,先把人体检测出来,再用此模型进行关键点检测。模型分为两大部分,一部分是Globalnet,主体是resnet,负责初步检...

2020-03-20 15:44:41 3101

原创 cmake findpackage 版本问题

专治cmake中findpackage的各种找不到问题,各种版本不对问题以重症患者protbuf为例。首先明确一点,findpackage的作用就是找到相关目录地址,并指定给相关变量。自动的找不着,我们手工指定就完了。step 1找到cmake目录,可以通过命令which cmake 定位。然后在cmake的根目录下找到share/cmake-x.xx/Modules/目录,找到Find...

2020-03-17 11:03:34 2298 1

原创 各种resize

opencvpythonresize(src, dsize, dst, fx, fy, interpolation)其中dsize和fx&fy二选一即可,dsize为(width, height)模式, interpolation为插值方式,默认为INTER_LINEAR代码插值方式INTER_NEAREST最近邻插值INTER_LINEAR双线...

2020-03-11 18:01:10 394

原创 tensorflow/keras 2 ncnn

以resnet50为例,记录tensorflow和keras模型转ncnn的过程resnet50 模型定义def identity_block(input_tensor, kernel_size, filters, stage, block): nb_filter1, nb_filter2, nb_filter3 = filters if K.image_dim_or...

2020-03-09 18:01:22 1191 5

原创 KMeans 聚类

import numpy as npimport matplotlib.pyplot as plt'''标志位统计递归运行次数'''flag = 0'''欧式距离'''def ecludDist(x, y): return np.sqrt(sum(np.square(np.array(x) - np.array(y))))'''曼哈顿距离'''def manhattan...

2019-08-12 17:14:56 149

原创 mnist demo

mnist demoimport tensorflow as tf slim = tf.contrib.slimfrom tensorflow.examples.tutorials.mnist import input_dataimport numpy as np mnist = input_data.read_data_sets('mnist', one_hot=True)num...

2019-08-12 17:04:47 206

原创 slim的train

文章目录函数定义参数args:Returns:基本流程模型恢复/初始化从checkpoint文件恢复模型用内存变量初始化"冻结"部分层非梯度更新函数定义tf.contrib.slim.learning.train_USE_DEFAULT=0def train(train_op, logdir, train_step_fn=train_step, ...

2019-06-13 00:02:50 534

原创 目标检测测评指标——mAP

文章目录精确度Average PrecisionPASCAL VOC 2007的APPASCAL VOC 2012mAP:mean Average Precision,简单翻译过来就是平均的平均精确度(没错,就是两个平均),首先是一个类别内,求平均精确度(Average Precision),然后对所有类别的平均精确度再求平均(mean Average Precision)。精确度对于简单的...

2019-04-28 22:09:26 14252 4

原创 SSD代码解读之三——net

文章目录结构实现关键函数结构实现在vgg16的基础上修改,使用slim实现,比较简单。超参数定义:def ssd_arg_scope(weight_decay=0.0005, data_format='NHWC'): with slim.arg_scope([slim.conv2d, slim.fully_connected], ...

2019-04-21 20:03:40 2093

原创 SSD代码解读之四——loss

文章目录相关参数实现过程相关参数loss的调用过程如下。ssd_net.losses(logits, localisations, b_gclasses, b_glocalisations, b_gscores, match_threshold=FLAGS.match_threshol...

2019-04-21 19:36:42 1942 4

原创 SSD代码解读之二——default box生成及标签整理

文章目录Default box生成(anchors)标签整理(bboxes_encode)Default box生成(anchors)Default box是对特定的feature map的每个点,生成特定数量、特定大小的box。生成的所有层的default box存入一个list中,每个feature map一个元素。def ssd_anchors_all_layers(img_shape...

2019-04-02 23:09:46 1755

原创 SSD代码解读之一——数据预处理

文章目录

2019-04-02 22:08:07 2430

原创 SSD原理解读

SSD解读优点网络结构抽取特征和预测过程:Default box生成规则正负样本选取——Hard negtive mining损失函数优点end to end,比yolo更准更快,比faster rcnn更快使用小的卷积滤波,在不同的feature map层预测bbox类别和bbox偏差可以在更小的输入图片中得到更好的结果网络结构基本网络: VGG16(stage1~stage...

2019-03-27 22:06:02 614

原创 二元分类中的各种评价指标

二元分类中的各种评价指标混淆矩阵1. 准确率 (accuracy)2. 错误率3. 召回率(recall)/灵敏度(sensitive)4. 特效度(specificity)5. 精确率、精度(Precision)6. 综合评价指标F-Measure混淆矩阵通过混淆矩阵来表示预测值和实际值之间的关系其中,TP表示预测结果为Positive且预测正确(实际类别也是Positive),FP表示...

2019-03-09 16:08:39 1998

原创 各种图片格式

主要介绍python和tensorflow中各种格式的图片处理 一、图片的读入 PIL.Image读入图片(RGB格式)from PIL import Imagedef PIL_open(): image=Image.open('lena.png') image.show() cv2读入图片 (GBR格式)import cv2d...

2019-03-01 22:19:40 970

原创 子串相关问题

    子串相关的问题直观的解法通常时间复杂度都比较高。如下模板可以借鉴解决很多相关问题:int findSubstring(string s){ vector<int> map(128,0); int counter; // check whether the substring is valid int begin=0, end...

2019-02-22 11:21:30 406

原创 梯度检验

    原理:利用如下公式:    一方面,利用数字计算的方法,估算,另一方面,利用设计的梯度算法计算梯度,看两者是否近似,如果相差很小,说明梯度算法正确。    利用数字计算方法计算梯度:     计算单个变量:(f的返回值是一个数字,如loss)def eval_numerical_gradient(f, x, verbose=True, h=0.00001): ...

2019-01-30 22:53:14 896

原创 batch_norm

    batch_norm对输入的每一个特征进行归一化,再进行缩放和平移(gamma和beta的作用)    这里主要记录其实现。   前向传播:    比较简单,就是求x的均值和方差,然后按如下公式求出     这里还记录了均值和方差的moving average,用于测试时使用。def batchnorm_forward(x, gamma, beta, bn_p...

2019-01-30 22:28:24 388

原创 Numpy one_hot

     代码如下:n_classes = 10y = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 0])y_one_hot = (np.arange(n_classes) == y[:, None]).astype(np.float64)    其中用到的是numpy的广播机制和Boolean数组的转换    首先把y变成列矩阵In [34]...

2018-12-24 00:11:11 691

原创 常用损失函数

    主要记录机器学习中的两大类任务(分类和回归)常用的损失函数一、分类问题1. Cross Entropy Loss(CE)    交叉熵损失,也叫Log Loss(两者等价,标签为{-1, 1}时为log loss, 标签为{0, 1}时为交叉熵)    原始的交叉熵公式如下,主要是衡量两个分布的相似程度,分布越相似,交叉熵越小。          对于二分类问题...

2018-11-19 23:20:23 8753

原创 Django用户认证

    django的用户认证有很多方法,可以自己写,也有很多第三方的模块。本文记录的是使用Django自带的认证模块的方法,不需要任何其他第三方的包。    1、基本配置    新建好project后,检查settings.py,确保INSTALLED_APPS和MIDDLEWARE中,包含以下模块INSTALLED_APPS = [ # 其它应用列表... 'dj...

2018-10-18 10:52:48 1981

原创 Apache + Django环境搭建

    环境:Macbook,conda,python2.71、安装mod_wsgi模块    通过pip安装:pip install mod_wsgi。网络上很多教程说通过homebrew安装或者通过源码安装,实测失败。    安装后的路径为:/Users/XXX/anaconda3/envs/djg/lib/python2.7/site-packages/mod_wsgi2、A...

2018-10-14 23:25:33 356

原创 数组:盛最多水的容器

    给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。    说明:你不能倾斜容器,且 n 的值至少为 2。    最直观、粗暴的方法:全遍历,时间复杂度为O(n^2)。    ...

2018-09-20 15:54:23 939

原创 tfrecord 基本用法

    tfrecord格式是tensorflow官方推荐的数据格式,把数据、标签进行统一的存储   tfrecord文件包含了tf.train.Example 协议缓冲区(protocol buffer,协议缓冲区包含了特征 Features), 能让tensorflow更好的利用内存。    把某个文件夹的图片和标签存入同一个tfrecord文件,代码如下:def write(i...

2018-09-15 13:32:37 5993 7

原创 字符串:优势洗牌

    给定两个大小相等的数组 A 和 B,A 相对于 B 的优势可以用满足 A[i] > B[i] 的索引 i 的数目来描述。求 A 的任意排列,使其相对于 B 的优势最大化。    示例一:输入:A = [2,7,11,15], B = [1,10,4,11],输出:[2,11,7,15]    示例二:输入:A = [12,24,8,32], B = [13,25,32,11]...

2018-09-13 15:54:20 391

原创 图像的变换

一、旋转 旋转的数学原理: 经过计算,可以得到以下关系: x′=xcosθ−ysinθ y′=xsinθ+ycosθ 写成矩阵的形式是: 或者是:(注意坐标按行的方式和按列的方式排列时,变换矩阵的左右位置不一样,矩阵中元素的位置也不一样。可以根据计算的实际过程来确定) 因此,如果知道旋...

2018-09-10 22:17:29 2044

原创 Tensorflow数据读取

目录 (1)Placeholder (2)队列的形式,建立从文件到tensor的映射 (3)tf 原生 Dataset API (4)slim.dataset (1)Placeholder Placeholder的方式比较简单,在设计计算图时把输入设置为占位符Placeholder,在执行计算时通过feed_dict来传入数据,数据的预处...

2018-08-11 20:26:28 780

原创 Ubuntu下的py-faster-rcnn配置

    OS:ubuntu 16.04 LTS    GPU:GTX 1070Ti(Nvidia驱动、cuda、cudnn已安装)    Python:conda + python2.7    1、下载源码:git clone --recursive https://github.com/rbgirshick/py-faster-rcnn.git    2、在caffe-fast-...

2018-07-14 21:59:41 218

原创 Tensorflow模型保存与提取

1、tf.train.Saver类 tensorflow主要通过train.Saver类来保存和提取模型,该类定义在tensorflow/python/training/saver.py中 Saver的初始化参数如下:__init__(self, var_list=None, #一个字典,指定保存的对象列表,默认为None,即保存所有可保存对象 r...

2018-07-12 11:22:29 1517

原创 Tensorflow的Variable和get_variable

    tf创建变量主要有两种方式:tf.Variable()(V大写)、tf.get_variable()。    1、tf.Variable()    (1)每次调用得到的都是不同的变量,即使使用了相同的变量名,在底层实现的时候还是会为变量创建不同的别名var1 = tf.Variable(name='var', initial_value=[2], dtype=tf.float32)var...

2018-07-11 21:00:47 1749

原创 Tensorflow-gpu 版 faster-rcnn demo

    经过一顿折腾,终于跑通了tensorflow版的faster rcnn,mark一下。    git源代码:git clone --recursive https://github.com/smallcorgi/Faster-RCNN_TF.git。这是github上面star最多的,也还有其他的实现,不过这个应该是最靠谱的。     进入Fater-RCNN/lib目录,执行ma...

2018-06-20 20:27:24 4767 3

yolov5x.pt

ultralytics版yolov5x预训练模型,由于不可描述的原因,官方下载特别慢,提供给需要的小伙伴

2020-11-11

证件照白底改蓝底(Photoshop)

证件照白底改蓝底或红底,操作简单,对头发还原度高。

2016-04-16

JSoup demo

java的HTML解析工具jsoup的demo,eclipse工程

2015-07-23

Solr配置入门教程

自己总结的solr配置入门教程,包括从mysql和xml里导入数据,建立索引的详细过程,其他格式类似。

2015-07-23

httpclient http客户端

java模拟的http客户端,eclipse工程,直接可用

2015-07-23

TFIDF的java实现

TF-IDF的java实现,eclipse工程,直接可用

2015-07-23

程序设计+第2版+王挺+课后答案

程序设计课后答案(王挺 清华大学出版社第2版),供学习这本教材的同学参考学习

2014-04-15

空空如也

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

TA关注的人

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