自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于pixijs的仿Flex布局实现

Flex简介Flex是一种网页布局方案,其名字来源于“弹性盒子”(flexible box),能够实现如垂直居中、水平居中、对齐等效果,相比于原来的盒状布局更加灵活,本文将模拟flex的部分属性,基于pixijs模拟在canvas上的flex布局,用于一些UI的设计。需要了解felx的移步阮一峰的教程。开始flex-directionflex-direction属性实例。分别可设置为:row(从左到右)column(从上到下)row-reverse(从右到左)column-reverse

2020-05-09 09:33:15 1487 1

原创 游戏引擎mota-js-v3.0 施工记录

mota-js是一款用于做出魔塔类型游戏的HTML5引擎(github项目地址),目前最新的版本是v2.66,由于原主力开发以及

2020-04-23 22:14:27 1531 6

原创 win10安装pytorch1.4.0过程记录

首先确认显卡情况找到显卡驱动,在系统信息中找到对应的CUDA版本去官网下载安装CUDA和cudnn(参考博文)CUDA:https://developer.nvidia.com/cuda-downloadscudnn:https://developer.nvidia.com/rdp/cudnn-download安装Python需要看清楚python是32位还是64位,目前...

2020-02-19 13:32:18 6553 5

原创 安全深度学习框架PySyft

1 准备1.1 环境搭建PySyft需要的前置环境:anaconda,python >= 3.6, Pytorch 1.1。安装syft:git clone https://github.com/OpenMined/PySyft.gitcd PySyftpip install -r pip-dep/requirements.txtpip install -r pip-dep/r...

2019-12-27 15:50:49 8195 10

原创 秘密共享原理与实现

毕业设计里用到了一些密码学的知识,在博客做个记录。秘密共享秘密共享(Secret Sharing),如其名,是一种用来共享秘密的技术。理解这个技术,首先需要把意义搞清楚,然后了解技术实现原理,最后用工具实现一个demo。共享的意义一个秘密信息,必然有其最初的持有者,也即发布者。发布者具有秘密的使用权和共享权,即他有权利将秘密分享给别人。但这里存在一个问题:如何保证这个共享过程是安全的?传...

2019-12-17 16:39:50 13446 1

原创 tensorflow学习笔记(一)基础

一年前写了python学习系列,持续大约一个月。现在回想起来,当时确实是打下了一定的python基础,现在写代码都是在用python,而很少用c++了。最近要做的研究方向与深度学习很相关,所以在学这方面的内容。之前学了一段时间tensorflow,但很散乱,断断续续的。前两天突然想到以前写的python学习系列,可以用写文章的方式来整理,于是就有了此系列文章。希望在暑假期间可以更完吧。还是...

2018-07-24 17:24:21 300

翻译 开源项目Easy Machine Learning简介

Easy Machine Learning这个项目是网络数据挖掘课上老师团队做系统,推荐给我们用来做大作业,目前只学了点皮毛,先对项目的简介进行大概的翻译。

2017-10-24 23:25:36 1316 1

原创 机器学习:几种常见的学习方法

机器学习的几种方法,在理解和实践过程中持续更新。

2017-05-14 00:00:45 14104

原创 如何读懂一段代码

对于一段不知道背景知识的代码,如何读懂? 对于程序员来说,读代码要比写代码困难。因为写代码是在自己的世界创造,而读代码却是在接触别人的世界的建筑。每个人的世界都是不尽相同的,因此在读别人的代码时,总会有些滞涩,我也是更愿意自己写,读懂算法思想、梗概,然后自己来实现。因此在过去很长一段时间,写的代码都只是一时之快,很难长久——写完不久之后,我已经不认识自己曾经写的东西了,甚至觉得那是别人写的。

2017-05-10 23:39:13 29246

原创 神经网络模型:感知器

感知器是神经网络中的概念,是一个接受数个输入,经过内部计算后得到输出的模型,其模拟的是自然界的神经细胞:接受输入信号的刺激,达到一定阈值后细胞体表现为激发,否则为抑制。

2017-05-09 23:33:30 1184

原创 解读一段循环冗余校验(CRC)算法程序

今天遇到一段这样的程序,一时半会很难读懂。

2017-05-08 23:39:22 1860

原创 知识的表示与知识库

知识表示是人工智能课程三大基础(知识表示、知识推理以及知识应用)之一。在解决实际问题中,通常需要用到多种不同的表示方法,因为每种数据结构都有其优缺点,没有哪种数据结构拥有多种功能,因此需要对知识根据具体应用而采用不同的知识表示方法。

2017-05-07 23:25:02 3697

原创 python:使用scipy求解常微分方程

遇到一个物理问题,要求解如下微分方程组: d2xdt2=wdydt\frac{d^2x}{dt^2}=w\frac{dy}{dt}d2ydt2=−wdxdt\frac{d^2y}{dt^2}=-w\frac{dx}{dt}经参考相关资料后得知,需要用到scipy包中的odeint函数。 odeint函数使用方法如下:def sol(y,t,v0,w0): return (w0*y[1]+

2017-05-06 23:01:36 19753

原创 用钩子函数实现鼠标动作录制

在日常的一些操作中,会遇到重复的鼠标动作,类似按键精灵的软件就会成为比较好的助手。这里借助网上查找的资料自己实现了一个简单的鼠标动作录制软件。

2017-05-05 23:45:31 1608 1

原创 python学习笔记(十一)使用email与smtplib

在一些网站注册中,会自动发送一封邮件用于验证。python也可以实现发送邮件,使用email与smtplib这两个模块。本文介绍两个模块的大致作用,在文末给出学习项目中正在使用中的例子。

2017-05-04 22:33:39 1036

原创 opencv:HSV颜色模型

之前操作图像数据通常使用的是RGB颜色模型。RGB是通过三个颜色通道(R、G、B)的叠加得到不同的颜色的。今天学习了一个新的颜色模型:HSV。 作为对比,先看熟悉的RGB。RGB中有三个参数,分别代表红绿蓝三基色的亮度,范围是0~255。这里的三基色是指光的三基色,三基色组合可以得到大部分颜色。 HSV中也有三个参数,H、S、V,分别代表色调(Hue),饱和度(Saturation),明度(Va

2017-05-03 16:55:20 4082 3

原创 python学习笔记(十一)使用SQLite

SQLite是一个轻型数据库系统,python内置SQLite3的库,可以直接使用。本文简述SQLite的使用方法,并在文末给出一个未完成的例子。

2017-05-02 23:46:30 458

原创 python连续赋值可能引发的错误

今天写的代码片段:X = Y = []..X.append(x)Y.append(y)其中x和y是读取的每一个数据的xy值,打算将其归入列表之后绘散点图,但是绘图出来却是一条直线,数据本身并不是这样分布的。 反复检查后,发现是X = Y =[]这一句的错误。

2017-05-01 21:45:49 1868

原创 K-均值聚类算法及其初始点的选取

K-均值聚类(K-Means Clustering)是一种无监督的聚类方法,即最初并不知道同种类数据的特征,算法会根据数据自身特点进行分类。

2017-05-01 20:45:52 10406

原创 Notepad++一键配置python运行 & 可能出现的文件路径错误

使用Notepad++写python的代码,每次运行都需要重开命令行,太过麻烦。Notepad++中提供了运行的快捷设置,其设置步骤如下:

2017-04-30 09:27:39 6254

原创 python学习笔记(十)错误处理、Matplotlib绘图示例

由于python是弱类型的语言,所以在进行编程时,极易产生各类类型不符的错误,虽然大部分可以在编写中检查出来,但是一些隐蔽错误很容易在运行期影响软件的安全。因此这里介绍try的用法,用于能处理错误的情况不致程序崩溃。在文末给出一个使用Matplotlib的实例。

2017-04-29 23:49:46 2184

原创 计算数据的相似度:欧几里德、皮尔逊相关度

在《集体智慧编程》中提到了如何计算数据的相似性,有两种相关度:欧几里德距离评价和皮尔逊相关度。

2017-04-28 23:13:09 1974

原创 python学习笔记(九)函数式进阶:使用map、reduce、filter、sorted

在第三节中简单学习了函数式的概念,这里通过运用几个常用的高阶函数来熟悉函数式编程方法,在文末给出一个综合性例子。开始这四个高阶函数具有相似的参数结构,都是以其中一个参数为列表,另一个参数为函数。不同的是它们的功能。mapmap的作用简单来说是将列表中各个元素冠以函数头。即将函数映射作用到每一个元素上.(格式:map(函数,列表))def mp(a): print a return a

2017-04-27 21:25:20 378

原创 Leetcode两道小题目python试水

做两道算法题目,练习使用python

2017-04-26 20:27:49 360

原创 python学习笔记(八)协程、爬取网页

协程又叫微线程,但与线程是完全不同的概念。线程之间是并发的,开发者不知道它们在什么时候切换;而协程是属于一个线程的,它们之间的切换开发者是明确的。在介绍完协程后会给出一个使用urllib爬取网页中图片的地址的例子演示协程。

2017-04-25 22:45:21 1003

原创 python学习笔记(七)多线程

多线程编程用于需要并发的时候,比如上一次学的服务器,单线程编写会很困难,用多线程会方便许多。在本文结束部分会给出一个opencv采集视频,并使用多线程控制其播放的例子。

2017-04-24 22:24:25 1424 1

原创 C++:xutility文件中发生错误

在写程序中途测试时,突然多出一堆语法错误,且来源于xutility文件。 打开xutility文件,其中定义了许多结构体以及函数模板。在其中找错误源是找不到的,因为全是类似于缺少;之类的错误。于是回退之前写的代码,终于发现问题所在。

2017-04-23 20:11:35 8308

原创 python学习笔记(六)网络编程

在计算机网络中学过TCP/IP协议,将网络分为物理层、网际层、传输层,应用层等。网络编程一般属于传输层之上的内容,会用到TCP、UDP协议。其中TCP是有连接传输,UDP是无连接的。开始网络的作用是实现计算机互连与资源共享,因此数据传输是其核心内容。要实现数据的传输,需要知道要传输目标的IP地址,因此双方互连需至少一个地址。

2017-04-22 21:24:07 317

原创 Opencv:IplImage*转Mat后的内存泄露问题

用Windows的API获得一个BMP的句柄,并将其转换到IplImage格式,然后再转到Mat类型。但在这里注意到会发生一个内存泄露的问题,记录下来。

2017-04-21 18:25:30 2014 2

原创 python学习笔记(五)文件操作、正则表达式

文件操作python的文件IO操作和C++类似,都是流的形式。

2017-04-20 22:45:46 1729

原创 opencv:基于不变矩方法的图像特征提取

在遇到需要对一个图像某个位置的物体进行判断时,一般想到的都是拿已经存储的图像去对比,对比的时候,由于噪声干扰以及多种冗余信息存在的原因,不可能按像素一个个比对,需要对图像特征进行提取,然后再比对。 不变矩指的是物体经过平移、旋转、缩放以及比例变换后仍保持不变的矩特征量。 中心矩定义如下: upq=∑x∑y(x−x0)p(y−y0)qf(x,y)\begin{equation}u_{pq} =

2017-04-19 20:45:34 3688

原创 python学习笔记(四)模块、面向对象

import关键字可以将一个python代码文件引入当前文件,其作用类似于c++中的include,这个被引入的代码文件被称为模块(Module)。 from XX import XX是指从一个包中引入某个模块。包(Package)相当于一个目录,但和一般文件目录不同的是,其中必须有一个名为__init__.py的文件,其内容可以为空。import后是模块名,也可以写*,代表引入该包中的所有模块。

2017-04-18 21:12:56 319

原创 python学习笔记(三)运行环境、函数式

python可以用很多方式运行起来: 1. 使用控制台,键入python,即可进入python解释器,然后每一句都会被解释执行 2. 使用IDE,同样是解释器形式 3. 使用文本编辑器写一系列代码保存,并在控制台进入保存的目录,键入 python xxx.py,翻译并执行 4. 用IDE提供的编辑器,写完之后run,效果与3一样。

2017-04-17 21:57:44 336

原创 python学习笔记(二)数据结构与算法

最初学习编程时,是先学了数据结构与算法才学透C++的一些使用,因此先从数据结构和算法的概念开始说起这节,然后再介绍几种Python内置的数据类型,及操作数据的算法。

2017-04-16 20:24:05 375

原创 python学习笔记(一)HelloWorld:从零开始学一门编程语言

一年前读《集体智慧编程》这本书的时候用到过python,那个时候并没有详细去学习,只是粗略地过了一遍,基本已经忘光了,现在准备重新捡起来,并记录整个学习过程,供以后进行参考。

2017-04-15 20:20:25 1527

原创 NC编译器结题以及软件重用性的思索

经过3月29日到今天一共17天的紧张学习赶工,NC编译器的编写环节暂时告一段落。从开始的简单制导翻译到后来的词法语法分析,虽然其中还有很多细节没有学到位,但在与无数BUG的斗争中大体上已经领略到了一个编译前端的结构。这里做一下总结: 输入一段代码、一些规则,按规则输出代码中的信息,这就是一个编译器的工作。看似简单,但如果规则较复杂,不进行理论有序的描述就很难得到正确的结果。因此,把编译过程划分为几

2017-04-14 19:29:45 408

原创 c++:使用function模板和bind函数

function< T >fuction是c++11标准库中的类模板,可以实现函数对象在函数参数中的传递调用。 声明格式如下:function<retType(args)> f;其中retType和args分别为定义的函数的返回类型和参数类型,它可以用函数对象类的对象、函数指针以及lambda函数来定义:

2017-04-13 22:01:56 2146 1

原创 编译原理学习笔记(五)语法制导定义

在初学编译原理时的第二章中就给了制导翻译程序的例子,在第五章中又再次提到,不过更加详细。 上次做的预测分析器还有不完善的地方——目前只能进行语法分析,不能产生语义动作。可以使用语法制导定义的方法来完成。语法制导定义是上下文无关文法和属性以及规则的结合,属性与文法符号相关联,规则和产生式相关联。非终结符具有两种属性:综合属性和继承属性。分析树上的非终结符的综合属性是由产生式所关联的语义规则来定义的,

2017-04-12 21:06:42 10084

原创 编译原理学习笔记(四)预测分析器(2)

上次说到了驱动表,这里给出利用驱动表进行预测分析的算法实现(原书伪码见p144)syn_unit end(0);//结束符syn_unit start(mode, mesh_table[mode]->src.lex, 0, syn_unit::NONTERMINATOR);//mode为开始符号的参数stack<syn_unit> stk;stk.push(end);stk.push(sta

2017-04-11 17:26:04 822

原创 触碰认知的临界点——人工智能能否取代其开发者?

认知的界限,只能由我们来不断拓宽,而不可能寄托于人工智能来触碰。

2017-04-10 19:05:08 1683 2

空空如也

空空如也

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

TA关注的人

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