自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

This is MyC

一个对技术丧失了热情的人不可能成为真正的高手

  • 博客(73)
  • 收藏
  • 关注

原创 C++给定范围进行按位与运算

LeetCode上的题目: Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of all numbers in this range, inclusive.For example, given the range [5, 7], you should return 4.给定一个范围,将范围内的

2016-07-31 21:47:25 1157

原创 二分查找算法的C++和Python实现

二分查找算法是在有序数组中用到的较为频繁的一种算法,在未接触二分查找算法时,最通用的一种做法是,对数组进行遍历,跟每个元素进行比较,其时间为O(n).但二分查找算法则更优,因为其查找时间为O(lgn),譬如数组{1, 2, 3, 4, 5, 6, 7, 8, 9},查找元素6,用二分查找的算法执行的话,其顺序为:1. 第一步查找中间元素,即5,由于5<6,则6必然在5之后的数组元素中,那么就在{6,

2016-07-23 21:49:16 900

原创 Python十进制转二、八、十六进制

从十进制转其他进制是非常简单的,无非是分为两步:将这个数对要转换的进制数相除,取余数,如num%8,继续拿着除之后的整数部分对进制数取余数,直到整数部分为0为止将余数倒序输出,即可得到结果num = input('input an int number: ')t = input('input type(2,8,16): ')def trans(num): m = 0 lst

2016-07-21 14:59:49 1800

原创 桶排序,冒泡排序,快速排序算法Python实现

桶排序案例:学生分数为0~10,要按照从小到大排序: 1. 首先我们需要申请一个大小为10的数组(python为列表),然后遍历学生成绩,每遍历一个成绩就在序号=成绩的位置+1. 2. 生成完列表之后,按照序号从小到大遍历,打印出每个序号,每个序号打印次数是序号下的数值def bucket_sort(lst): pre_lst = [0]*10#预先设定的列表,全部置零 resu

2016-07-20 23:11:10 3017

原创 图像通道的拆分/合并处理

OpenCV里边彩色顺序是BGR,想要变成RGB顺序,有两种方法:方法一:比较常用的解决办法是拆分了三通道,再逆序合并回去:import cv2img = cv2.imread('img/image.png')b,g,r = cv2.split(img)img = cv2.merge([r,g,b])方法二:不必拆分合并,直接利用Numpy操作,img2 = img[:,:,::

2016-07-16 23:16:51 3861

原创 Python给定一个句子倒序输出单词以及字母

#!/usr/bin/python# -*- coding: utf-8 -*-def rever(sentence): newwords = [] words = sentence.split() words.reverse() space = ' '#单词之间一个间隔 for word in words: newword = []

2016-07-07 13:08:10 8240

原创 Python和opencv打开摄像头

import cv2import numpy as npcap = cv2.VideoCapture(0)while True: ret,frame = cap.read() cv2.imshow('frame',frame) if cv2.waitKey(1) &0xFF == ord('q'):#如果按下的这颗健为q则结束 breakcap.releas

2016-07-06 16:44:03 9617

原创 红外图像特点及识别方法

红外图像成像特点:由于红外图像是通过“测量”物体向外辐射的热量而获得的,故与可将光图像相比:分辨率差对比度低信噪比低视觉效果模糊灰度分布与目标反射特征无线性关系局部不变特征目前绝大多数景物匹配算法提取的都是全局不变特征,它能很好解决同一目标的一致性判决问题,但很难消除图像的成像畸变。当图像之间的成像畸变很复杂时,利用全局信息进行匹配非常困难,特别是存在局部遮挡时,全图特征会随之变化。基于

2016-07-04 11:03:54 32498

原创 Python爬虫实践(十一):selenium+phantomjs+正则表达式爬取文章并保存

爬取的是三联生活周刊的这篇文章:英国"脱欧":蝴蝶的翅膀动了(url:点击打开链接)一、环境准备:系统:UbuntuIDE:wingide安装以及破解wingide可参考这篇文章:点击打开链接,需要注意的是,经过验证,这个破解的py脚本对最新的wingide 5.1破解失败,在官网下载wingide的时候,点击older version,安装5.0.X的版本,我安装的是

2016-06-26 22:27:34 3988

原创 Python爬虫实践(10):实例2教务系统登录

打开登录首页,表面上,我们的url应该是:http://grdms.bit.edu.cn/yjs/login.jsp按F12,查看页面元素如下图:看到提交方式为post,action后边接的应该是我们提交用户名密码的网站,猜测是:http://grdms.bit.edu.cn/yjs/login.do为了验证猜想,登录之后F12查看network:

2016-06-23 10:22:29 982

原创 Python爬虫实践(九):第一个爬虫实例(简书首页)

做一个简单的爬虫,简单的不能再简单这里选取简书首页,爬取各个文章标题,由于不需要登录,所以无需Cookie,简书的网页源代码下载也无需设置headers在简书的首页按 F12,查看页面元素Element,可以看到我们所需要爬取的内容夹在了 ..XXXXX  之间所以,pattern我们可以这么写:pattern= re.compile('(.*?)', re.S)

2016-06-22 12:40:52 1480

转载 Python爬虫实践(八):正则表达式re模块(2)

前面的例子我们打印出了result.group(),其实每个匹配方法还有其他的属性/方法re.match(pattern, string[, flags])re.search(pattern, string[, flags])re.split(pattern, string[, maxsplit])re.findall(pattern, string[, flags])re.finditer

2016-06-21 14:44:41 800

原创 Python爬虫实践(七):正则表达式(2) re模块的使用

前面说到re模块,可用于正则表达式,匹配字符主要用到的函数有以下几种:#以下为匹配所用函数re.match(pattern, string[, flags])re.search(pattern, string[, flags])re.split(pattern, string[, maxsplit])re.findall(pattern, string[, flags])re.findit

2016-06-21 13:06:51 721

转载 Python爬虫实践(六):正则表达式(1)

正则表达式,就是将杂乱无章的下载网页解析成我们想要的信息的一种逻辑方法正则表达式是对字符串操作的一种==逻辑公式==,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。3. 如果表达式中

2016-06-20 23:55:22 559

原创 Python爬虫实践(五):Cookie

Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的。那么我们可以利用Urllib2库保存我们登录的Cookie,然后再抓取其他页面就达到目的了。1. 什么是Opener当你获取一个URL,你使用一个opener ( urllib2.OpenerDirecto

2016-06-20 19:21:32 692

原创 Python爬虫实践(四):一些不常用设置

代理设置urllib2默认会使用环境变量 http_proxy 来设置 ==HTTP Proxy==。假如一个网站它会检测某一段时间某个IP 的访问次数,如果访问次数过多,它会禁止你的访问。所以你可以设置一些代理服务器来帮助你做工作,每隔一段时间换一个代理,以防被禁止。设置方法:import urllib2enable_proxy = Trueproxy_handler = urllib2.Pr

2016-06-20 15:31:52 715

原创 Python爬虫实践(三)设置Headers

例子:以登录知乎为例import urllib2import urllibvalues={"username":"[email protected]","password":"XXXX"}data=urllib.urlencode(values)url= "https://www.zhihu.com/#signin"request=urllib2.Request(url,data)response=u

2016-06-20 14:44:43 40436

原创 Python爬虫实践(二):Urllib库的简单使用

扒网页,其实就是根据URL来获取它的网页信息。例子:import urllib2response = urllib2.urlopen("http://www.baidu.com")print response.read()保存为.py之后运行,即可得到百度首页的源码 首先我们调用的是urllib2库里面的urlopen方法,urlopen一般接受三个参数,参数如下:urlopen(url, da

2016-06-19 23:05:17 1052

原创 python爬虫实践(一):准备工作

urllib和urllib2 库 urllib 和 urllib2 库是学习Python爬虫最基本的库,利用这个库我们可以得到网页的内容,并对内容用正则表达式提取分析,得到我们想要的结果。urllib和urllib2模块都做与请求URL相关的操作,但他们提供不同的功能。 urllib2.urlopen可以接受一个Request对象或者url,(在接受Request对象时候,并以此可以来设置一个U

2016-06-19 22:19:07 1130

原创 python类class学习笔记

class Class_name(object) | 类名通常大写开头(约定俗成,不强制),object表示该类继承的类名,如果没有继承类,就写object,因为object类是所有类最终都会继承的类。def __init__(self,x,y,z...) | 通过定义一个特殊的__init__方法,在创建实例的时候,就把类属性初始化。 第一个参数永远是self,表示创建的实例本身因为__ini

2016-06-19 00:19:32 825

原创 python位操作学习笔记

bit进制转换 | bin()能够将整型输入转换为二进制数,同理,八进制和十六进制转换分别为:oct(),hex().print bin(2) #=> 0b10print oct(7) #=> 07print hex(15) #=> 0xf非整型转换为整型 | int()函数可以将非整型数据转换为整型数据,如int("42") #=>42,int()其实包含了两个参数。int('110

2016-06-14 18:03:13 2201

原创 python的list列表学习笔记

list对元素操作 | 取出第i个数就使用list_name[i]添加元素 | 通过list_name.append()来向list的最后一个元素后面加入新元素删除元素 | 有两种方法,通过索引删除元素和直接删除元素。list_name.pop(index),通过索引删除,索引从0开始计算list_name.remove(item),直接删除元素,需要知道list中的元素 快捷生成 | ra

2016-06-14 15:54:01 798

原创 python的datetime库笔记

使用datetime库 from datetime import datetime例子:打印现在时刻的时间from datetime import datetimenow=datetime.now()print now.yearprint now.monthprint now.day通过string的学习我们知道可以按照特定格式输出时间:print '%s-%s-%s' % (now.yea

2016-06-13 22:29:54 455

原创 python函数学习笔记

以关键词def开头,可带参数,也可不带。通常使用""" comment """"来注释函数的作用和参数含义函数之间可以互相调用使用数学函数的时候,如sqrt函数,需要通过import math引入数学模块,此情况下,使用时需要写出math.sqrt(25); 如果只需要用到某个特定函数(如sqrt)也可以只使用from math import sqrt,此时只需要写sqrt(25); 如果想使用

2016-06-13 22:29:04 385

原创 python字符串string笔记

写出某些字符串时需要\,如'what\'s wrong'通过fifth_letter="python[4]"可取出第五个字符o字符串操作方法有:len(string)、string.lower()、string.upper()、str(2),分别实现:计算长度,小写转换,大写转换,非字符串类型转字符串’2’打印字符串可以直接加引号print,也可以将字符串赋予变量,然后print变量即可字符

2016-06-13 21:12:34 379

原创 基于特征匹配的英文印刷字符识别代码自己的注释

function MainFormglobal bw;global bl;global bll;global s;global fontSize;global charpic;global hMainFig;global pic;global hText;clc; close all; warning off all;%目录检,如果当前目录不存在pic文件,则创建if ~

2016-06-13 16:02:27 4968 1

原创 Matlab如何在图上画包围目标区域的矩形(或圆)

1.rectangle函数功能:创建二维矩形对象。rectangle函数可以用来画矩形、椭圆、圆,画椭圆和圆时需要设置曲率。rectangle('Position',[x,y,w,h])从点(x,y)开始绘制一个宽w高h的矩形,对坐标轴数据单元指定值。rectangle(...,'Curvature',[x,y])指定矩阵边的曲率,可以使它从矩形到椭圆不同变化,水平曲率x为

2016-06-12 13:17:45 36522 3

转载 LaTex中英文简历代码示例

1. 英文简历: 1) 网上较好的英文简历模板 2)较简洁的英文简历模板自己主要根据第2)个模板制作了一个更为简洁的英文简历, 效果如下图:2. 中文简历:中文简历是根据一个师兄的简历改变的,效果图如下:中英文制作的工程差不多,就把中文版的代码贴出来了:% LaTeX resume example template%% Matthew M

2016-06-12 10:45:48 2728

转载 嵌入式系统中的目标识别技术

目标检测和识别是计算机视觉系统的一个必不可少的组成部分。在计算机视觉中,首先是将场景分解成计算机可以看到和分析的组件计算机视觉的第一步是特征提取,即检测图像中的关键点并获取有关这些关键点的有意义信息。特征提取过程本身包含四个基本阶段:图像准备、关键点检测、描述符生成和分类。实际上,这个过程会检查每个像素,以查看是否有特征存在于该像素中。特征提取算法将图像描述为指向图像中的关

2016-06-07 16:45:07 2510

原创 BP神经网络

BP神经网络基本BP神经网络算法包括: - 信号的前向传播 - 误差的反向传播也即计算实际输出时按照输入到输出的方向进行,权值阈值调整则相反。 BP是一种多层前馈神经网络,由输入层、隐含层和输出层组成。层与层之间有两种信号在流动:一种是从输入流向输出的工作信号,是输入和权值的函数;另一种是输入流向输出的信号,即误差。信号的前向传播:==隐含层==第ii个节点的输入和输出分别为: 输入: n

2016-06-01 13:20:30 2109

原创 感知器的简单理解

感知器基本概念:不断调整全职和阈值的过程称为训练训练过程中,把输入空间映射到输出空间的能力,称为学习调整权值和阈值的算法称为学习规则感知器学习规则称为δ\delta规则,tt–目标输出,aa–实际输出 e=t−ae=t-a训练网络的目的就是要使误差ee->0. 学习规则: W(k+1)=W(k)+epTW(k+1)=W(k)+ep^Tb(k+1)=b(k)+eb(k+1)=b(k)+e

2016-06-01 10:26:09 2924

转载 【图像算法】高斯混合模型(GMM)

高斯模型就是用高斯概率密度函数(正态分布曲线)精确地量化事物,将一个事物分解为若干的基于高斯概率密度函数(正态分布曲线)形成的模型。对图像背景建立高斯模型的原理及过程: - 图像灰度直方图反应的是图像中某个灰度值出现的频次,也可以认为是图像灰度概率密度的估计。 - 如果图像所包含的目标区域和背景区域相差比较大,且背景区域和目标区域在灰度上有一定的差异,那么该图像的灰度直方图呈现双峰-谷形状,其中

2016-05-30 16:55:56 5868

原创 【计算机网络】解决win10安装华为eNSP命令行界面(CLI)输出“###”终极办法!

系统是WIN10,下载eNSP安装之后测试,命令行界面(CLI)时一直输出无限井号。查询了网上的解决方案,关闭了防火墙,安全软件,还是不行。如果是AR启动失败的原因,其实在设置里面重新注册一遍就可以了。但是CLI#号的问题有点头疼。有人说先安装其他软件(virtualbox,wincap等)再安装eNSP,也都试过,不行。查看virtualbox软件的时候,发现virtualbox的显示内存都为1,

2016-05-12 16:56:24 23742 16

原创 【Matlab】图像插值函数interp2理解

图像插值就是利用已知邻近像素点的灰度值(或rgb图像中的三色值)来产生未知像素点的灰度值,以便由原始图像再生出具有更高分辨率的图像。通过例子来理解interp2函数:[X,Y] = meshgrid(-3:3); %产生网格坐标V = peaks(X,Y); %通过网格坐标计算函数值,产生三维凹凸面figuresurf(X,Y,V)title('Original Sampli

2016-05-10 23:47:35 27139 2

转载 Matlab函数meshgrid的作用:

Matlab函数meshgrid的作用:生成绘制3D图形所需的网格数据。例如, 要在“3<=x<=5,6<=y<=9,z不限制区间” 这个区域内绘制一个3D图形,如果只需要整数坐标为采样点的话。我们可能需要下面这样一个坐标构成的矩阵:(3,9),(4,9),(5,9);(3,8),(4,8),(5,8);(3,7),(4,7),(5,7);(3,6),(4,6),(5,6);X,Y] =

2016-05-10 23:01:28 3788

转载 【Matlab函数】conv2的用法

Matlab函数conv2的用法:C=conv2(A,B)C=conv2(Hcol,Hrow,A)C=conv2(...,'shape')说明:对于 C=conv2(A,B) ,conv2 的算矩阵 A 和 B 的卷积,若 [Ma,Na]=size(A), [Mb,Nb]=size(B), 则 size(C)=[Ma+Mb-1,Na+Nb-1]; C=conv2(Hcol,Hrow,A) 中,矩

2016-05-10 23:00:59 3203

转载 图像处理基本思想和算法研究

刚开始想把这部分内容命名为“基本算法”,意在介绍图像处理中的一些基本算法,后来仔细想想决定不这么写,因为图像处理是一个非常大的概念,图像处理不等于人脸识别,也不等于模式识别,直接介绍诸如图像处理基本算法之类的内容很容易写成空话,没有什么实际意义。读者有兴趣的话可以直接谷歌百度“图像处理十大经典算法”,上面有我想说的内容。万变不离其宗,算法是死的,重在思想。举个例子,我个人是主攻模式识别方向,在这个方

2016-05-09 20:38:07 8366 1

原创 c++复制构造函数实例

#include using namespace std;//复制构造函数只有一个参数,即对同类对象的引用//形如 X::X(X& ..)或X::X(const X &..),二者选一//如果没有定义复制构造函数,编译器会生成默认复制构造函数,默认是完成复制功能//复制构造函数不一定要定义成一个完成复制功能的函数,完全由你自己决定//第一种情况:class Complex{pub

2016-03-04 18:27:42 865

原创 C++构造函数实例讲解

构造函数一直看不懂,动手试了一次,总算懂了个一二。功夫不负有心人!#include using namespace std;//构造函数在对象生成的时候会被自动调用//如果定义了构造函数,则编译器不生成默认的无参数构造函数//一个类可以包含多个构造函数,对象使用哪个构造函数,取决于对象生成语句提供的参数类型、个数等//一个对象必须初始化以后才能使用,而构造函数就是起到了这个初始化作

2016-03-03 19:56:44 2945

原创 C语言笔记(3)

数组遍历时要注意以下几点:最好避免出现数组越界访问,循环变量最好不要超出数组的长度C语言的数组长度一经声明,长度就是固定,无法改变,并且C语言并不提供计算数组长度的方法由于C语言是没有检查数组长度改变或者数组越界的这个机制,可能会在编辑器中编译并通过,但是结果就不能肯定了,因此还是不要越界或者改变数组的长度数组作为函数参数:数组可以由整个数组当作函数的参数,也可以由数组中的某个元素当作函数的参

2016-02-24 19:43:15 447

空空如也

空空如也

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

TA关注的人

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