caffe windows https://github.com/BVLC/caffe/tree/windows 官方教程遇到的问题boost没有安装好,将boost作为附加库和lib库.. 而且anaconda python路径没有安装好,虽然在props文件里面已经设定了pyhon_dir路径,但是仍旧没有。这个时候直接附加库目录: F:\DL\boost_1_61_0; C:\An
numpy给图片加高斯噪声 给加高斯噪声的意思,就是在原图像矩阵上面加一个符合高斯或者叫正态分布特征的矩阵。生成随机噪声的三个方法,如果我们的目标矩阵是一个r*c的矩阵,要生成一个均值是mean,标准差sigma的随机噪声矩阵,那么是这样sigma*np.random.randn(r,c)+mean, #输入是两个参数,一个mean,一个sigma。sigma*np.random.standard_n
在windows下编译caffe的python接口(CPU模式) 主要的资料来源是happynear的教程(英文github,中文csdn博客),但是里面对python接口是分散讲的,而且有个地方有遗漏,摸索一天才发现怎么弄,所以这里针对python的部分单独讲讲。 我用的是VS2013,CPU模式,因为我的笔记本的N卡太弱了,所以我后来还是用CPU模式了。 第一步 下载所需2个包一个happynear的github的包,另一个他的3rdp
图像处理和OpenCV小记 不管是图像处理还是计算机视觉,都越来越需要机器学习做特征集的训练了。但是feature engineer或者说图像本身各种关键特征的提取也是很关键的。今天在pysearch上看到了这句话也正是一样, A clever use of contour properties can save you from training complicated machine learning models.
Opencv里面的TermCriteria对象解释 用meanshift的时候,看到能够在视频里面识别某个物体还画个框。细看了下OpenCV里面meanshift方法是这样用的。cv2.meanShift(dst, track_window, term_crit)其实meanshift识别和这个track_window真没什么直接关系,meanshift识别的就是密度最大的那个点,找到那个点再加个框就行了,我原来觉得尺寸人家都能自己算出
从目的上来讲BackProjection 我第一次遇到BackProjection这个词觉得很学术,我也不知道为什么要用,直到我遇到一个例子,这个在此链接有讲,但是我把它讲的再细化一下。首先是这个例子。我们有一个梅西的图片,现在我们要把草皮绿色的地方提取出来,那么怎么做呢? 最简单你可以用颜色为绿色的一段阈值进行提取,现在我们用BackProjection这个方式进行提取。首先我把梅西那张图里面的其中一块草
python因为opencv无法读取图像而出现python.exe停止工作 使用opencv处理一堆图像,有jpg,png和gif。jpg的图像很多,程序处理过程中出现"python.exe程序已停止工作",后来发现是cv2.imread无法读取gif图像造成的。
pandas和numpy使用小记 numpy数组不可以扩展可是它最大的缺点就是不可动态扩展——“NumPy的数组没有这种动态改变大小的功能,numpy.append()函数每次都会重新分配整个数组,并把原来的数组复制到新数组中。http://blog.chinaunix.net/uid-23100982-id-3164530.htmlnumpy数组的展平可以用flatten,也可以用numpy.rave
灰度共生矩阵计算熵遇到0的问题解决 灰度共生矩阵有非常多的纹理特征维度。熵就是其中之一,可以表示图像分布聚集的程度。如果图像分布比较均匀,熵就比较小,就越有可能是噪声;反正,可能是真正有用的图像。计算公式就是 - sum(P(i,j)*log(P(i,j))其中有个bug就是灰度共生矩阵有可能有0的现象出现,log(0)是没有意义的对于这个问题,我在网上找的答案是计算的时候把这个0的时候剔除掉,不计算在内
numpy多维数组操作np.apply_over_axes使用 参考http://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.apply_over_axes.htmlnumpy.apply_over_axes(func, a, axes)[source]其中a是需要操作的输入数组,func是操作函数比如加和sum,求均值average或者其他自定义函数,axes是需要操作的轴
github基本使用的命令 1) 配置 git首先在本地创建 ssh key:ssh-keygen -t rsa -C "your_email@youremail.com"ssh -T git@github.comgit配置git config --global user.name "your name"git config --global user.email "your_email@your
简单说直方图均衡化的思想 直方图均衡化的主要思想就是,让出现频率较高的像素值,在直方图均衡化后,拥有较高的像素值。也就是高频像素值,最经常出现的,信息量最多的,是最亮的。反之,低频像素值,最不经常出现的,信息量最少的,是最暗的RGB彩色图像,可以分别对RGB三个波段进行直方图均衡化处理;也可以转换到HSV空间,对V分量进行处理。最后就是把灰度的频率信息,转化成,像素亮度信息。详细例子wi
[机器学习手记]随机森林与数字识别 kaggle数字识别题目介绍和数据地址:https://www.kaggle.com/c/digit-recognizer解法:python.sklearn的随机森林方法不只# -*- coding: utf-8 -*-"""Created on Wed Nov 25 20:39:46 2015@author: Ning LI"""import num
ubuntu无线网卡配置 auto lo #配置loiface lo inet loopbackiface eth0 inet dhcp #配置eth0auto hot-plug wlan0 #配置wlan0iface wlan0 inet dhcp方法一--------------------------
[机器学习手机13]scikit-learn几种交叉验证方式 这次需要介绍的是scikit-learn库里面的几种常见的交叉验证方式: 1) LeavePOut, 2) LeaveOneOut, 3) KFold, 4) Stratified KFold其实归并起来,主要是两种,KFold和LeavePOut先讲KFold,sklearn.cross_validation.KFold(n, n_folds=3, shuffle=False
Jetson tk1 开发板重刷系统 电脑使用:需要用linux的主机,将镜像文件刷到jetson tk1里面,而且千万不要用树莓派,我自己用树莓派无法执行里面的一个mksparse的二进制文件, 会显示Mksparse: cannot execute binaries,但是在ubuntu里面没有这个问题。树莓派的不是用户的权限问题,而且对二进制文件本身也加了chmod +x的执行权限了,所以应该是系统问题。因此最好用正经的l
github学习笔记 git初始化操作1)git init2)git remote add origin git@github.com:cmusphinx/pocketsphinx.git3)git clone git@XXX.git4)git fetch origin拉代码git pull origin master远程仓库git remote add
动态规划 栈问题 有n个数顺序(依次)入栈,出栈序列有Cn种,Cn=[1/(n+1)]*(2n)!/[(n!)*(n!)]()这个进出栈的问题里面。一旦元素决定好时机进去了,他前面元素的进出站可以递归,他后面元素的进出站时机也可以用递归计算,。f(1)=1f(2)=2f(3)=5f(4)=f(0)*f(3)+f(1)*f(2)+f(2)
[编程思考练习12]C++q前置声明 class A{public:int n;const int i;int &c;public:A(int N):c(2),i(12){this.n=N}}前置声明能够:1) 减少对象的大小 2) A里面包含B对象,传统方法B改变了额,那么A跟着也要重新编译一下。而如果A里面包含的是B *b这种指针或者引用对象,