自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CSAPP-存储器层次结构

存储器层次结构K的不同含义DRAW(内存)DRAW没有设计成一维数组,而是设计为二维阵列的方式,以行列索引的方式获取8bit的数据(如图减少地址总线的数量,由4变2),但是先访问行再访问列的方式增加了访问时间。1.输入行索引2.再输入列索引,从行缓冲获取某个单元格的数据传送到数据总线上内存模块磁盘机械硬盘访问磁盘数据的花费的时间操作系统层面的机械硬盘固态硬盘闪存芯片闪存芯片的擦除(以Block为单位)时间局部性与空间局部性时间局部性:同一个变量在

2021-12-31 20:29:44 467

原创 CSAPP-优化程序的性能

编译器优化编译器是不能获知指针引用的对象如图假如xp与yp指向同一位置,那么版本1不能优化成版本2函数多次调用不能简化成乘法程序优化代码级优化低级优化(循环展开)展开的大小不能超过现有的寄存器个数,因为超过之后剩余的数放在栈,读写内存影响程序执行...

2021-12-28 21:35:26 219

原创 CSAPP-处理器体系架构

本节会使用简化版的x86-64的处理器——Y86-64进行学习Y86-64的寄存器以及指令定义15个寄存器进行编号(4位表示寄存器)用0xF填充表示没有用寄存器的数数据传送指令整数操作指令跳转指令其他指令指令示例指令状态码(异常)寄存器的电路描述指令的执行包括6个阶段(取址,译码,执行,访存,写回,更新PC)取址阶段指令实际长度为2-10byte译码阶段(从寄存器读数据)执行阶段主要是ALU负责操作数运算,地址偏移运算,栈指针(入栈出栈)计算

2021-12-27 21:43:19 531

原创 CSPP 数据的机器级表示

寄存器(intel-x86-64)调用寄存器与被调用寄存器因为要保证在调用函数返回后寄存器的值恢复为未被调用之前,所以下面的例子运用pushq指令保存被调用寄存器rbx的值(函数)gcc产生的指令指示操作数的大小寄存器的作用%rax存储返回值 %rsp存储栈指针的位置%rdi %rsi %rdx %rcx %r8 %r9分别保存函数参数1-6指令的构成【操作码+操作数】内存引用内存引用的类型数组的引用:数据存送指令数据的入栈数据的出栈leaq

2021-12-22 21:22:06 1068

原创 csapp 信息的表示和处理

信息的表示和处理信息的存储数据按字节的形式存储,实际运算时按字(数据总线的条数)进行存取。大端指的是数据的低字节部分存储在高地址小端指的是数据的高字节部分存储在低地址对于0x01234567 大端模式的低地址存储的值是【0x12】,小端模式的搞地质存储的值是【0x67】C++测试大小端的简单方法:C语言的按位操作和逻辑运算不同,逻辑运算的结果只有0和1C语言的移位操作无符号数 +正数有符号数(负数)左移向左移动,末尾补0向左移动,末尾补0右移

2021-12-17 21:54:01 213

原创 CSAPP 计算机漫游

计算机硬件组织PC:存放下一条指令的地址(地址大小为一个字)内存:存放指令和数据总线上的一次传输的数据大小与数据总线的条数有关(一般为一个字)输入输出设备:输入输出设备通过适配器或者控制器与IO总线间传递数据操作系统操作系统:软硬件的接口目的:1.防止对硬件设备的不安全修改或者接触2.提供统一的机制应用硬件操作系统的三个抽象机制———————————————————————C语言的虚拟内存分布可执行文件hello的运行过程可执行文件hello主要是输出hello worl

2021-12-14 22:03:54 887

原创 python把图像矩阵获取两点

1.cv2获取的图像矩阵模式不是RGB,是BGRimport numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread("XX.jpg")plt.imshow(img[:,:,::-1])#把图像转为RGB模式显示2.赋值给某个numpy矩阵,并存成图片import numpy as npimport cv2img = cv2.imread("XX.jpg")new_numpy = np.zero

2021-01-02 17:23:51 127

原创 C/C++生成带参数可在CMD运行的exe

首先确保C/C++能正常运行1.修改C/C++代码,使之能接收参数左边为修改的代码,右边为程序源码2.在release模式下重新生成exe切换release模式重新生成解决方案3.在CMD验证生成的exeexe在哪里?打开CMD运行exeXX.exe arg1 arg2一些很重要的事情,生成的exe不能直接运行的原因:1.修改代码有误2.程序可能引用了一些外部的txt,xml,json等等非.c或者.cpp的文件(引用哪些请细细看看自己的代码)至于这些外部文件的位置

2020-08-22 20:51:09 1778

原创 C#运行【C++/C】 release模式生成的带参数的exe

需求:在C# 界面里面点击一个按钮,能保证运行带参数的exe1.确保exe在cmd能运行成功如果不知道C/C++怎么生成一个可在cmd运行的带参数的exe,可参考2.新建一个winform项目(包含按钮)3.为按钮注册点击事件,使其能运行exe此部分参考C# 中运行exe程序3.1 新建一个运行带参数的exe的函数using System.Diagnostics;新增一个函数StartProcess_args接受所运行的exe和参数// filename表示exe所在路径(路径不

2020-08-22 18:41:14 828

原创 python打包成exe(包括打包引用的包+带参数的)

python打包成exe需求把py文件转换成一个带参数的exe此py包含其他的包(如下面例子的imageio)步骤1.安装pyinstaller,可参考安装pyinstaller2.生成一个带参数的py###一个带参数的test.py文件import sys import imageio # imageio为打包时需要引用的包arg0 = sys.argv[0] # 为打包的exearg1 = sys.argv[1] #为exe在cmd运行的第一个参数arg2 = sys.ar

2020-08-22 17:21:42 2806

原创 RNN系列的目标检测

基于滑窗的CNN网络目标检测RCNN因为基于滑动窗口的检测产生的窗口很多都是无用的窗口(不包含物体或者没有完整包含物体),所以RCNN在此基础改进窗口的获取方式,(使用selective_search产生窗口)RCNN的四个步骤1.输入图像2.使用selective_search提取一系列的检测窗口,并从原图裁剪之后warp到固定大小记作warped region(大约2k个)3.每个wraped region都会放入CNN分类器提取特征4.提取到的特征连接SVM和坐标回归器进行分类与检测

2020-07-28 11:46:39 1330

原创 YOLOV3的三个门限值解释以及yolov3详解

YOLOV3关于yolov3必须了解的三个门限值ignore_iou_thresh:【IOU门限】标记与真实框有交集的锚框的objectness(框内是否有物体)为1还是-1的分界线yolov3是对生成的每个锚框进行标记标记与真实框IOU最大的锚框objectness=1【只有该锚框对应的预测框才参与损失函数计算和类别预测】标记与真实框的非最大但IOU大于等于ignore_iou_thresh的锚框的objectness=-1表示是真实框对应的锚框(锚框包含真实目标),但其对应的预测框不负责损失

2020-07-19 00:34:12 5084

原创 HOG特征进行人脸检测

HOGHOG是计算图像的梯度以及方向,然后使用直方图对梯度值进行统计得到的特征对待检测图像进行HOG特征提取后,送入SVM进行分类1.HOG预处理以下讲解默认图片为64X1282.计算图像的梯度和方向通过使用sobel算子求出水平梯度和垂直梯度;关于sobel算子,可参考sobel算子最后使用如下公式计算出梯度幅值和梯度方向[其中gx,gy分别指水平梯度,垂直梯度]g=gx2+gy2θ=arctan⁡gygx g = \sqrt { g^2_x + g^2_y } \\ \th

2020-07-06 17:30:35 3028

原创 Haar-like特征之人脸检测

推荐阅读https://www.cnblogs.com/BlueFire-py/p/9396837.html

2020-07-02 21:13:19 2683 2

原创 pandas 综合练习

综合练习In[1]:import pandas as pdimport numpy as np端午节的淘宝粽子交易df = pd.read_csv("端午粽子数据.csv").convert_dtypes()df.head()Out[2]: 标题 价格 付款人数 店铺 发货地址 0 五芳斋粽子礼盒 心悦+18只装咸鸭蛋组合端午节礼品团购嘉兴肉粽子 129 6人付款 五芳斋官方旗舰店 浙江 嘉兴 ...

2020-07-01 19:04:07 225

原创 pandas之时序数据

pandas之时序数据1.时序的创建名称 描述 元素类型 创建方式 ① Date times(时间点/时刻) 描述特定日期或时间点 Timestamp to_datetime或date_range ② Time spans(时间段/时期) 由时间点定义的一段时期 Period Period或period_range ③ Date offsets(相对时间差) 一段时间的相对大小(与夏/冬令时无关) DateOf..

2020-06-29 21:47:59 233

原创 LBP特征

LBP特征1.原始的LBP的算子每个像素点以其周围的8邻域像素的灰度值与自身灰度值比较【大于等于赋值为1,小于赋值为0】之后按顺时针/逆时针的方式平铺得到一个二进制数,此二进制数转十进制作为该像素点的LBP值(LBP描述符)LBP算子具有灰度不变性:对整张图做不同的光照变化,都不会改变中心像素与邻域像素之间的相对像素的大小比较。计算原图上的每个像素点的LBP值,利用全图所有像素点的LBP值的频数直方图归一化作为原图提取到的LBP特征,因为原始LBP算子的十进...

2020-06-28 22:03:00 1766 1

原创 pandas之分类数据

pandas之分类数据1.category变量创建的四种方式1-1.创建Series时赋值类型指定Series创建的dtype='category'类别为pandas自动创建,不包含np.NA1-2.创建DataFrame时赋值某列的类型1-3.利用内置的Categorical创建,可以自定义类型cat = pd.Categorical(['a','b','c','a'],categories=['a','b','c']) # categories可...

2020-06-27 16:12:52 1642

原创 pandas之文本数据

pandas之文本数据1.string类型1-1.string类型的转换1.object类型用astype('string') 2.非object类型用astype('str').astype('string')1-2.string类型的拆分XX列.str.split(pat,n=-1,expand=False)---》object## pat:分割字符 n:最多按照分割字符切割几次【-1表示全切割】 expand:是否把分割后的列表拆分成多列##...

2020-06-26 23:50:10 368

原创 Harris角点检测原理

Harris角点检测原理发现角点的原则:在角点周围的区域内,图像梯度有两个及以上的主要方向; 角点在区域内必须容易区分。 设计两个评价标准【使角点成为可区分的点】:(1)通过查看一个较小的窗口容易发现角点;(2)在任意方向移动这个窗口强度变化很大。1.强度变化描述表示窗口W的移动量 ,表示点移动之后的强度,表示点的强度,是窗口函数,表示点在窗口所占的权重1-1.窗函数的选择选择均值滤波表示各窗口对强度变化的权重(贡献)一样;选择高...

2020-06-24 23:05:25 169

原创 Panda缺失

Pandas 缺失1.三种缺失符号及其对比【pandas 1.0之前】三种记号(pandas 1.0) np.nan None np.NaT【时间序列用】 类型 float64 Nonetype pandas._libs.tslibs.nattype.NaTType equal的时候是否会包括在内 不包括 包括 不包括 某列出现该值的类型 1.数值型,布尔型统一转换为float64 2....

2020-06-23 16:45:38 297

原创 5.SVHN 数据集识别完整代码

SVHN 数据集识别import os, sys, glob, shutil, jsonos.environ["CUDA_VISIBLE_DEVICES"] = '0'import cv2from PIL import Imageimport numpy as npfrom tqdm import tqdm, tqdm_notebookimport torchtorch.manual_seed(0)torch.backends.cudnn.deterministic = Falsetor

2020-06-02 20:37:50 3501 9

原创 pytorch的梯度反向传播 detach backward

一、梯度的传播反向传播什么时候停止1.为叶子节点时【反向时前面没有与之相连的节点】常见的叶子节点【输入】2.该节点唯一相连的节点的require_grads=False3.该节点唯一相连的节点使用detach函数时该方法常用于GAN网络生成器的输出使用detach时,pytorch不对生成器进行梯度计算,叶子节点为判别器的首个参数二、 detach梯度分离的使用https://www.jb51.net/article/181631.htm三、 详解backward()ht

2020-05-29 19:50:09 667

原创 4_SVHN数据集的验证与评估

SVHN数据集的验证与评估训练集,测试集,验证集的不同作用训练集:训练网络,调整网络参数,!不能提高模型泛化能力 验证集:验证模型精度,调整网络超参数 测试集:验证模型的泛化能力验证集的选择方法1.留出法:划分训练集一部分作为训练集,一部分作为验证集【一般比例8:2】 &适用于数据量较大& 2.K折交叉验证法:划分训练集为K份,循环K次让每份都作为验证集,其他K-1份为训练集 &适用于数据量不大的情况& 3.bootstrap法:每次有放回的从训练集

2020-05-29 19:11:21 1629

原创 3构建SVHN数据集的数字识别网络

pytorch 网络构建import torchtorch.manual_seed(0)torch.backends.cudnn.deterministic= Falsetorch.backends.cudnn.benchmark = Trueimport torchvision.models as modelsimport torchvision.transforms as transformsimport torchvision.datasets as datasetsimport to

2020-05-25 15:37:06 2303

转载 mxnet 参数共享的一些理解【转载】【侵权删】

1.参数共享,梯度也共享,但梯度计算是对所有共享层的梯度计算并加和原文来自:https://discuss.gluon.ai/t/topic/987/85假设不共享的时候,第一层参数w1的导数为w1_grad,第二层参数w2的导数为w2_grad。参数共享之后,w1和w2变为同一个自变量,这个自变量的导数为“w1_grad + w2_grad”。编程验证方法:建立两个网络,net1 和 net2.net1 和 net2 的结构相同,参数初始值相同,loss相同,输入的x相同。唯一不同的是

2020-05-25 12:02:40 819

原创 2.SVHN数据集数据扩增

import os,sys,glob,shutil,jsonimport cv2from PIL import Imageimport numpy as npimport torchfrom torch.utils.data.dataset import Datasetimport torchvision.transforms as transforms1.建立pytorch的数据集Dataset对象必须继承和重定义__getitem__和__len__ 【可选】自定义tansfor.

2020-05-22 15:20:02 791

原创 天池SVHN数据集分析

天池SVHN的数据训练集:3万张图像验证集:1万张图像测试集A/B:4万张图像【B数据集为比赛用】对于每张图像提供一个json对象属性:1.读取图片以及json属性import jsonimport cv2import numpy as npfrom matplotlib import pyplot as plttrain_json = json.load(open('/content/drive/My Drive/drive/SVHN/mchar_train.json

2020-05-20 23:03:24 1211

原创 opencv边缘检测之sobel算子,canny算子

边缘检测1.边缘与导数边缘:图像像素值跳变的地方【图像像素突变的地方】导数:描述变化率的大小[图像跳变的幅度大小] 求完导数的图可以直接作为边缘提取的图, 跳变大小为0->黑色 跳变大小为>0 -->接近白色2.边缘检测的两种常用方法2.1 sobel 算子原理:利用sobel算子分别在X方向,Y方向进行卷积得到Y方向上的边缘与X方向的边缘2.1.1 ...

2020-05-01 11:07:49 1395

原创 opencv之阈值二值化

阈值分割(二值化)阈值分类1.全局阈值定义:全局只使用一个阈值进行二值划分 缺点:没有考虑光照,明暗变化,用全局阈值可能会丢失图像信息2.局部自适应阈值定义:对不同区域设置不同的阈值,利用这些不同的阈值进行局部的划分,这些阈值通常是像素的像素邻域内的平均值,中值或者高斯加和值。阈值的求法1.大津阈值(最大类间方差法)原理:选取类间方差最大的阈值作为全局阈值划分...

2020-04-28 21:34:55 2808

原创 opencv之图像滤波

图像滤波图像滤波分类转存失败重新上传取消转存失败重新上传取消卷积简介图片来自【http://www.elecfans.com/d/920675.html】卷积的实质对某个像素的领域内的所有像素与卷积核逐像素进行线性加权平均值如图所示,原图为6*6的输入图像,经过3*3的卷积核变成4*4的输出图像【(6-3)//1+1】计算公式:(input.size-kern...

2020-04-27 17:41:29 430

原创 opencv之颜色空间变换

彩色空间互转RGB空间RGB(红绿蓝)是根据人眼识别的颜色定义出的空间,可表示大部分颜色。 RGB颜色空间是基于颜色的加法混色原理,从黑色不断叠加Red,Green,Blue的颜色,最终可得到白色光HSV颜色空间HSV是一种将RGB色彩空间的点在倒圆锥体中的表示方法H(Hue)[色相]:色相是色彩的基本属性,相当于颜色的名称S(Saturation)[饱和度]:色彩的纯...

2020-04-25 22:24:52 251

原创 opencv之几何变换

图像处理之几何变换1.坐标系笛卡尔坐标与图像坐标笛卡尔坐标:以图像中心为原点,向上方向为y轴正方向,向右方向为x轴正方向图像坐标:以图像左上角为原点,原点以下方向为y轴正方向,原点以右方向为x轴正方向2.变换矩阵T矩阵表明原图坐标(v,w)通过变换矩阵T得到在同一坐标系下的变换坐标(x,y) 原图坐标系与变换后的坐标都指图像坐标系二维图像坐标变换的核心的变换图像...

2020-04-25 15:39:43 238

原创 opencv之图像插值

图像插值算法1.定义插值指的是在一幅图像[u,v]中,灰度值仅在整数位置有定义,然而输出图像[x,y]的灰度值一般由处在非整数坐标(u,v)值来决定2.关于插值的映射方法1.向前映射的插值法:原图像映射到输出图像中,原图像像素值由4个输出图像的像素进行分配用h(x,y)表示原图像,用f(x,y)表示目标图像,插值的原理就是利用整数位置上的像素值h(x,y)去构造对应位置分数位置的像素...

2020-04-21 20:40:55 697

原创 数据挖掘-4.模型融合与集成

1.Booststrap从当前样本重复样本总数次有放回的随机选取样本构建成新的训练样本【构建的新样本可能有多个重复的数据】#从data中构建n_sample个新样本def get_bootstrap_samples(data,n_samples): indices = np.random.randint(0,len(data), (n_samples,len(data))) ...

2020-04-04 12:07:59 164

原创 如果让markdown的图片变清晰/改变大小

方法:利用html语法注意此方法只使用于支持html语法的markdown编辑器<img src="图片路径" style="zoom:80%" />zoom值可以自行调整

2020-04-01 18:14:22 1816 1

原创 数据挖掘-3.建模调参

绘制学习率曲线与验证曲线learning_curve :param ::train_sizefill_betweendef plot_learning_curve(estimator,title, X, y, ylim=None, cv=None, n_jobs=1, train_size = np.linspace(.1,1.0,5...

2020-03-31 20:54:27 151

原创 数据挖掘-2.特征工程-EDA

2020-03-28 15:01:32 279

原创 数据挖掘-1.数据分析-EDA

2020-03-24 21:34:20 76

原创 jupyter 404的解决方法

错误1(websocket有问题)解决方法 :重装旧版本龙卷风pip install tornado==5.1.1错误2(缺少nodejs)解决方法 :安装nodeisconda install nodejs

2020-03-22 21:05:33 3055

空空如也

空空如也

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

TA关注的人

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