- 博客(28)
- 资源 (1)
- 收藏
- 关注
原创 windows下安装Java 和 scala
scala是JVM上的语言,所以要先安装Java运行环境。安装java 下载最新的java,安装成功后,测试Java是否安装成功,测试如下:C:\Users\Administrator>java -versionjava version "1.8.0_91"Java(TM) SE Runtime Environment (build 1.8.0_91-b1
2016-05-06 11:09:49 411
原创 Ubuntu Linux 配置JDK环境
下载JDK7: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html有好几个linux版本的 JDK,x86对应的是32位操作系统下的应用程序,x64对应的是64位操作系统下的应用程序,通过命令行查看系统版本 root@ubuntu:~# getconf LONG_BIT 6
2016-05-04 17:09:21 326
原创 linux基础
hadoop的环境是Linux,需要安装Linux系统。并且我们要搭建集群,需要多台硬件的,不可能为了搭建集群,去买几台电脑。采用虚拟化(虚拟机)搭建解决这方面的问题。 1. 虚拟化 安装了虚拟机wmware station,然后创建虚拟机安装Linux 2. Linux操作及使用 打开终端:Ctrl+Alt+T 重启网络:sudo /etc/init.d/networ
2016-04-22 18:06:43 395
原创 hadoop学习笔记
1. Hadoop相关术语 云计算:基于互联网的计算方式,共享的软硬件资源和信息可以按需求提供给计算机和其他设备,即:把计算作为一种商品通过互联网进行流通,云技术与其他技术的区别:云技术可以使用的语言有java,c++等。云技术的开发是在其他语言的基础上。比如Java语言。与其他技术,最显著的区别,不是在开发上,而是在于架构上,最显著的特点是分布式。Hadoop是目前较火云技术: hado
2016-04-22 14:19:46 300
转载 堆和栈的区别
堆和栈的区别 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap)一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。 3、全局区(静
2016-04-20 10:05:53 254
转载 Hadoop新手学习指导
对于我们新手入门学习hadoop大数据存储的朋友来说,首先了解一下云计算和云计算技术是有必要的。下面先是介绍云计算和云计算技术的: 云计算,是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机和其他设备,主要是基于互联网的相关服务地增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法
2016-04-15 10:12:53 351
原创 算法导论笔记ch4_分治策略_最大连续子数组之和
求解递归式的方法: 1. 带入法:猜想一个界,然后用数学归纳法证明这个界是正确的(看到这顿时感觉回到了中学笔推的时代); 2. 递归树法:将递归转换为一颗树,其节点表示不同层次的调用产生的代价,然后用边界和技术来求解递归式; 3. 主方法: 可求解如下公式递归式的界:T(n) = aT(n/b) + f(n),这里刻划了一个分治算法:生成a个子问题,每个问
2016-03-24 19:27:57 424
原创 算法导论笔记ch2_算法基础(插入排序、归并排序、设计算法)
循环不变式三个性质:初始化、保持、终止。 插入排序:设置标志位key,然后从坐到右依次比较,代码如下:void ClsAlgoriIntro::sort_insert(int *array,int len) {int i,j,key;for (j= 1;j{key = array[j];i=j-1;while( i >=0 && array[i]>k
2016-03-24 17:51:13 278
原创 链表内置函数 filter(), map(), 和 reduce()
链表来讲,有三个内置函数非常有用: filter(), map(), 和 reduce() 。 1. filter(function, sequence) 返回一个sequence(序列),包括了给定序列中所有调用 function(item) 后返回值为true的元素。(如果可能的话,会返回相同的类型)。如果该 序列 (sequence) 是一个 st
2016-03-14 09:53:07 383
原创 LDA( 线性判别分析)
定义: 1. LDA 线性判别式分析(Linear Discriminant Analysis),也称为Fisher线性判别(Fisher Linear Discriminant,FLD)。 基本思想: 将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模
2016-03-08 18:13:55 1020
原创 HAAR、LBP和HOG特征训练分类器
工具:opencv_traincascade.exe,opencv_createsamples.exe位于opencv\build\x86\vc10\bin文件夹下,可用以训练HAAR、LBP和HOG特征训练分类器训练的过程:1、训练样本准备 以行人训练为例,首先正样本是各种各样的行人的照片,负样本就是非人照片。样本个数最好在上千个,太少训练出来的分类器不能准确检测行人,
2016-03-04 14:37:31 3246
原创 VS2010重编译OpenCV2.4.9调试源代码
1、工具 下载并安装这几个工具:CMake2.8(http://www.cmake.org/cmake/resources/software.html)、OpenCV2.4.9、VS20102、用CMake生成OpenCV2.4.9 的VS2010解决方案 新建文件夹OpenCVProject:D:\Program Files\OpenCVProject(用于
2016-03-03 11:38:56 411
原创 笔记_人脸检测框架(Viola-Jones Objects detection framwork)
参考文献地址:http://www.docin.com/p-499040137.html 文献中物体检测框架包括三部分:a. 特征提取 采用类似于harr特征。如下图所示: 其特征取值为白色区域对应图像的像素值之和减去灰色区域对应图像的像素值之和。一副图像中这样的特征数量太多,为降低复杂度作者引入积分图加速技术,使得计算效率大大提高。注:
2016-03-03 10:36:23 867
原创 ocr识别中的图像分割方法小结
ocr识别中的图像分割方法小结Email:whowhoha@outlook.com ocr 字符图像的特点是:背景复杂,存在如底纹、水印、底线、框线、加盖印章干扰叠加 ,同时存在 光照不匀、对比度小、倾斜、污迹、背景网络 、防伪标识、磨损、打印时着力不均、字的笔画深浅、及受油墨多寡的影等因素的影响,故图像的干扰和噪声大,采用普通的二值化分割方法效果不佳,故针对 OCR图像
2015-11-22 23:46:56 7711
原创 基于Niblack's method方法的局部阈值分割
基于Niblack's method方法的局部阈值分割Email:whowhoha@outlook.com /*原理: T(x,y)=m(x,y) + k*s(x,y) 取一个宽度为w的矩形框,(x,y)为这个框的中心。 统计框内数据,T(x,y)为阈值,m(x,y)为均值,s(x,y)为均方差,k为
2015-11-22 23:40:56 3350
原创 基于otsu的图像二值化
基于otsu的图像二值化Email:whowhoha@outlook.comOtsu算法步骤如下:设图象包含L个灰度级(0,1…,L-1),灰度值为i的的象素点数为Ni,图象总的象素点数为N=N0+N1+...+N(L-1)。灰度值为i的点的概率为:P(i) = N(i)/N.门限t将整幅图象分为暗区c1和亮区c2两类,则类间方差σ是t的函数:σ=a1*a2(u1-
2015-11-22 23:38:13 386
原创 K均值用于图像分割
K均值聚类用于图像分割Email:whowhoha@outlook.com 聚类:将抽象对象的集合分成由多个相似的对象组成的多个子类的过程,常用聚类方法有:分裂法,层次法,基于密度的方法,基于网格的方法,基于模型的方法,K均值法。其中K均值法是一种基于距离的分裂法。K均值算法是非常常用的一种聚类算法,用于将给定的样本集分成指定数目的聚类。具体算法如下:·
2015-11-22 23:36:43 830
原创 基于熵的二值化
基于熵的二值化Email:whowhoha@outlook.com 一维最大熵分割方法,它的思想是统计图像中每一个灰度级出现的概率 ,计算该灰度级的熵 ,假设以灰度级T分割图像,图像中低于T灰度级的像素点构成目标物体(O),高于灰度级T的像素点构成背景(B),对图像中的每一个灰度级分别求熵,选取使熵最大的灰度级作为分割图像的阈
2015-11-22 23:35:02 1259 1
原创 图像二值化简介
图像二值化简介Email:whowhoha@outlook.com 所谓二值图像,就是指图像上的所有点的灰度值只用两种可能,不为"0"就为"255",也就是整个图像呈现出明显的黑白效果。为了得到理想的二值图像,一般采用阈值分割技术,它对物体与背景有较强对比的图像的分割特别有效,它计算简单而且总能用封闭、连通的边界定义不交叠的区域。所有灰度大于或等于阈值的像素
2015-11-22 23:33:29 1655
原创 图像分割算法简介及常用边缘检测算法
图像分割算法概述及常用边缘检测算法Email:whowhoha@outlook.com一、概述 用计算机进行数字图像处理的目的有两个,一是产生更适合人类视觉观察和识别的图像,二是希望计算机能够自动进行识别和理解图像。无论是为了何种目的,图像处理的关键一步是对包含有大量各式各样景物信息的图像进行分解。分解的最终结果就是图像被分成一些具有各种特征的最小成分,这些成分就称为图像的基
2015-11-22 23:23:53 7402
原创 Adaboost训练及在目标检测中的应用
Adaboost训练及在目标检测中的应用Email:whowhoha@outlook.com1. Adaboost原理 Adaboost(AdaptiveBoosting)是一种迭代算法,通过对训练集不断训练弱分类器,然后把这些弱分类器集合起来,构成强分类器。adaboost算法训练的过程中,初始化所有训练样例的具有相同的权值重,在此样本分布下训练出一个弱
2015-11-22 22:56:51 1020
原创 云台派高D控制命令
D协议云台控制命令: 方位控制: 命令控制字符上FF 01 00 04 30 00 35 FF 01 00 00 00 00 01 下FF 01 00 10 00 30 41 FF 01 00 00 00 00 01左FF 01 00 04 30 00 3
2014-06-17 10:12:58 1513
转载 高效程序员的特征:聪明,懒惰
英文原文:Productive Developers are Smart and Lazy 这里我使用了聪明,懒惰和程序员这几个词。我说的这几个词的意思是:程序员:有积极活力的,专注于用代码解决真实世界里的问题,不是指那些梦想家,那些永远只想不做的人。聪明:能够周全的思考问题(不是那些耍小聪明的人)。懒惰:就像是程序中的lazy-loading,是指延后写代码的时间(而不是
2014-06-10 19:03:26 370
原创 第三方的静态库出现错误的解决
在工程内编入第三方的功能, 包含.h和.lib就直接使用第三方提供的功能了. 这样肯定方便. 编译的时候通不过. 1.把编译不过的部分变成Dll的一部分, 主程序只调用Dll来引入第三方的功能. 如果有多个第三方的功能,分别封装Dll.2.在Dll内调整Link设置, 知道编译通过为止. 主要是运行时库。libcmt.lib(crt0init.obj) : error
2014-05-19 19:08:22 2558
转载 SVD分解的理解
SVD分解(奇异值分解),本应是本科生就掌握的方法,然而却经常被忽视。实际上,SVD分解不但很直观,而且极其有用。SVD分解提供了一种方法将一个矩阵拆分成简单的,并且有意义的几块。它的几何解释可以看做将一个空间进行旋转,尺度拉伸,再旋转三步过程。首先来看一个对角矩阵,几何上, 我们将一个矩阵理解为对于点 (x, y) 从一个平面到另一个平面的映射:下图显示了
2014-05-12 08:40:17 361
原创 C实现栈
C实现的栈stack#include#includetypedef struct elementT{ struct elementT* next; void* data;}element;int CreateStack(element **stack){ *stack = NULL; return 1;}int Push(el
2014-04-23 01:13:21 350
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人