自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 资源 (1)
  • 收藏
  • 关注

原创 图像验证码识别(九)——训练和识别

前面讲到已经把所有的字符经过去干扰、分割和归一化得到标准大小的单个字符,接下来要做的就是识别验证码了。现在要做的基本上也就和OCR没什么区别了,因为得到的字符已经是尽可能标准的了。下面的识别分为两个步骤,第一步先是特征值的提取,第二步是SVM训练。一、特征值提取首先要说的是我当时在做这个的时候,还没有了解“主成分分析”,所以在提取特征值的时候用的是比较简单的方法,就是简单的提取像素

2016-03-01 14:39:23 15284 5

原创 图像验证码识别(八)——字符归一化

前面提到了将验证码上的字符分割成一个单独的字符图片并且保存,但是扣下来的字符串可能会有倾斜的现象,因为现在很多网页验证码为了防止破解都对字符进行了一定的扭曲和旋转,即使是同一个网站的验证码,每个相同的字符很有可能都是不一样的,所以为了提高识别的正确率,在这里最好能让每次进行训练的字符能够保持同一个角度。所以首先需要做的就是旋转倾斜。一、旋转倾斜旋转倾斜的目的就是要提高识别的正确率,

2016-03-01 14:38:32 7922

原创 图像验证码识别(七)——字符分割

前面经过各种去除噪点、干扰线,验证码图片现在已经只有两个部分,如果pixel为白就是背景,如果pixel为黑就为字符。正如前面流畅所提到的一样,为了字符的识别,这里需要将图片上的字符一个一个“扣”下来,得到单个的字符,接下来再进行OCR识别。字符分割可以说是图像验证码识别最关键的一步,因为分割的正确与否直接关系到最后的结果,如果4个字符分割成了3个,即便后面的识别算法识别率达到100%,结

2016-03-01 14:37:21 20183 2

原创 图像验证码识别(五)——去除噪点

降噪在计算机和信号学中用到的非常多,在多媒体技术中,降噪主要是去除图片上的干扰噪点,玩过单反的都知道,当ISO调太高的时候,图片会产生颗粒感,这些颗粒就是噪点。当然,验证码图片上的噪点有大有小,只要是用来干扰机器识别的,会对后面的图片处理以及识别造成干扰。常见的降噪算法一般都是一些滤波算法——均值滤波、中值滤波、自适应维纳滤波器和小波滤波等,不过在这里由于大多数验证码字符本身不是标准的打印

2016-03-01 14:36:23 34840 8

原创 图像验证码识别(四)——灰度化和二值化

一、灰度化灰度化应用很广,而且也比较简单。灰度图就是将白与黑中间的颜色等分为若干等级,绝大多数位256阶。在RGB模型种,黑色(R=G=B=0)与白色(R=G=B=255),那么256阶的灰度划分就是R=G=B=i,其中i取0到255.从前面可以知道,OpenCV读取图片之后图像的颜色数据矩阵默认是3通道的,也就是RGB模型,所以每个pixel都有3个分量,分别代表r,g和b的值。

2016-03-01 14:34:58 13184 2

原创 图像验证码识别(三)——基本流程讨论

图像验证码的识别很类似OCR,不过验证码的功能就是防止机器人暴力破解,因此相比于OCR,图片上的干扰因素要多的多。因此如果直接读取图片的特征值进行训练,这样正确率会非常低。常见的验证码干扰有很多种1. 首先是噪点,就是验证码图片种有很多鼓励的点,有些噪点的颜色各异,比如下面这张:2. 其次是字符的倾斜,验证码会有不同程度的旋转、扭曲,使得在识别的时候不易破解。

2016-03-01 14:32:17 9651

原创 Ruby on Rails邮件Mailer和上传附件paperclip

最近Rails项目的最后两个功能就是进行邮件通知和上传附件管理,这里使用了Rails框架下的ActionMailer和paperclip两个来完成的一、ActionMailer使用首先要忽略邮件的错误,进入config/environments,打开development.rb文件,将config.action_mailer.raise_delivery_errors设定为falsec

2015-06-17 21:00:05 1590

原创 rails使用devise验证

使用ruby on rails的好处之一就是有很多功能可以不用自己来实现,有很多开源的组件可以直接拿来用,达到自己的目的。登陆安全验证就是

2015-06-06 21:06:31 3281

原创 Mac系统安装Rails

最近有门课要写一个简单的Web应用,以前写Web都是用Java写的,想想这次还是用Ruby On Rails写算了,能节省很多时间。由于Ruby电脑上已经有了,所以直接安装Rails就可以了。sudo gem install rails

2015-06-02 21:51:53 1646 1

原创 Wildcard Matching 通配符匹配

题目要求:Implement wildcard pattern matching with support for '?' and '*'.'?' Matches any single character.'*' Matches any sequence of characters (including the empty sequence).The matching sho

2015-05-21 12:28:48 450

原创 Proxy模式设计——引用计数

谈到C++的垃圾收集策略,有一个用的比较多的方法就是引用计数在引用计数中,每一个对象负责维护对象所有引用的计数值。当一个新的引用指向对象时,引用计数器就递增,当去掉一个引用时,引用计数就递减。当引用计数到零时,该对象就将释放占有的资源。试想在某场景种,类A的资源在类B和类C中都被引用,因此如果A不在使用但是B和C还有用时,此时不能释放A;而在释放B和C时只需要消除对A的引用即可;只有当B和C都

2015-05-18 21:32:50 483

转载 C++中成员变量的初始化

类成员变量的初始化对于初学者来说是一个头疼的问题,总是记不住XXX类型应该怎样进行初始化。为了解决后顾之忧,今天就把类中所有类型的成员变量的初始化做一个总结。首先,我们来看看C++的类中都有哪几种类型的成员变量。[cpp] view plaincopyclass test  {         private:    

2015-05-12 16:29:06 405

原创 阿里巴巴C++研发实习生面试经验

抱着试一试的心态,在一个月以前提交简历,然后后来收到了笔试通知,笔试是在线的,翘了课参加的,笔试40分钟20道单选题,每道题有6个选项,需要注意的就是选错会扣分!题目不算很难,都是一些很散的知识点,考的范围很广,具体的我也记不太清了,毕竟过了一个月了,网上搜能搜一大堆,这里我也不细说了。选择题做完还有60分钟左右给你3到附加题,全是编程题,第一题是对内存的申请释放做优化的,第二题是操作系统资源分配

2015-04-23 14:04:46 1242

原创 二分搜索及其变形讨论

最近刷leetcode的时候遇到了不少二分查找的题,二分查找是非常高效的查找策略,但是有一个前提就是数组必须是有序的。1. 对于标准的二分搜索,针对的是没有重复元素的有序数组,每个元素只出现一次。标准的二分搜索的代码很简洁,对于程序员来讲最好会背int std_binary_search(int v[], int n, int target){ int l,r,m; l

2015-04-15 19:46:39 522

原创 Xsum问题总结

LeetCode前面有好几题都是XSum,比如2Sum,3Sum,还有4Sum,刷的有点疲劳了。下面就总结一下吧。2Sum最简单,先对数据进行排序,如果用STL的sort快排,时间复杂度为O(nlogn),然后设置两个指针,一个初始化为数组的头,一个初始化在数组的尾,然后两边向中间扫描,如果当前两个指针指向的数的和正好是target,那么就保存当前数对(注意先入栈从头开始的那个指针的数值,后入

2015-03-24 14:08:02 1051

原创 图像验证码识别(六)——图像中的直线检测

这里题目之所以没有写成“验证码图片中的干扰线去除”,就是因为在干扰线去除做的不是很好,最后也没有找到什么较为通用的算法能够有效地去除干扰线因素。不过也不算完全没有收获,这里就谈谈直线的检测。OpenCV提供hough变换来检测直线,具体的API是CvSeq* cvHoughLines2( CvArr* image, void* line_storage, int mehtod, d

2015-03-22 19:50:04 5379

原创 图像验证码识别(二)——OpenCV在Ubuntu环境下的安装

前面已经大致讲过位图文件的数据构成,但是图片的格式有很多,网上的验证码文件都是各种格式,位图文件算是简单的了,如果生成的是其他文件的验证码,解析起来更加麻烦。所以这里使用开源的计算机视觉库——OpenCV(Open Source Computer Vision Library)。使用这个,不仅图像的像素信息处理起来要简单的多,省去很多麻烦,同时OpenCV也提供了很多数学函数用于变换等,并且在

2015-03-09 20:29:27 2919

原创 Add Two Numbers

You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a link

2015-03-08 21:30:53 350

原创 Two Sum

最近开始刷leetcode了,感觉和pat相比,这个更看重算法,对时间复杂度的要求更高,而且最关键的是给测试用例,不像PAT上错了就各种猜猜猜,对输出格式也不用这么麻烦。第一次刷leetcode还是有点不习惯,第一题就纠结了好久。。。题目要求如下:Given an array of integers, find two numbers such that they add up

2015-03-07 14:46:06 489

原创 图像验证码的识别(一)——浅谈bmp文件格式

上个学期,用openCV做了一个OCR的课程设计,主要就是对图片验证码进行识别。最近新开学闲来无事,想想还是总结一下比较好,首先还是对图片的存储格式来介绍一下。在计算机图形学里,图片就是一个像素的矩阵,矩阵中的每一个点都是各种颜色的点,最后总体上来看就是一副图像。

2015-03-03 21:08:02 4213

原创 1038. Recover the Smallest Number (30)

Given a collection of number segments, you are supposed to recover the smallest number from them. For example, given {32, 321, 3214, 0229, 87}, we can recover many numbers such like 32-321-3214-0229-8

2014-12-03 21:51:34 417

原创 1037. Magic Coupon (25)

The magic shop in Mars is offering some magic coupons. Each coupon has an integer N printed on it, meaning that when you use this coupon with a product, you may get N times the value of that product b

2014-11-28 22:13:33 420

原创 1036. Boys vs Girls (25)

This time you are asked to tell the difference between the lowest grade of all the male students and the highest grade of all the female students.Input Specification:Each input file contains o

2014-11-21 22:31:50 407

原创 解决ubuntu 14.04字体太难看

ubuntu 14.04默认的汉字字体非常难看,特别是在Chrome浏览器里,如果ji

2014-11-21 16:12:48 1387

原创 机器码作为shellcode运行时段错误

将一些C语言代码汇编后得到的机器码可以作为shel

2014-11-19 20:51:53 1759

原创 1034. Head of a Gang (30)

One way that the police finds the head of a gang is to check people's phone calls. If there is a phone call between A and B, we say that A and B is related. The weight of a relation is defined to be t

2014-11-15 10:07:05 406

原创 const——error: variably modified ‘buf’ at file scope

const变量在C和C++之中还是有不少区别的。在C中,const修饰的变量一般zhizuo

2014-11-13 13:55:43 6843

原创 1033. To Fill or Not to Fill (25)

With highways available, driving a car from Hangzhou to any other city is easy. But since the tank capacity of a car is limited, we have to find gas stations on the way from time to time. Different ga

2014-11-12 20:22:29 411

原创 1032. Sharing (25)

To store English words, one method is to use linked lists and store a word letter by letter. To save some space, we may let the words share the same sublist if they share the same suffix. For example,

2014-11-10 16:53:49 463

原创 1031. Hello World for U (20)

Given any string of N (>=5) characters, you are asked to form the characters into the shape of U. For example, "helloworld" can be printed as:h de ll rlowoThat is, the characters must be pr

2014-11-08 15:44:01 370

原创 1030. Travel Plan (30)

A traveler's map gives the distances between cities along the highways, together with the cost of each highway. Now you are supposed to write a program to help a traveler to decide the shortest path b

2014-11-08 14:17:31 402

原创 1029. Median (25)

题目要求Given an increasing sequence S of N integers, the median is the number at the middle position. For example, the median of S1={11, 12, 13, 14} is 12, and the median of S2={9, 10, 15, 16, 17}

2014-11-07 21:11:00 464

原创 1028. List Sorting (25)

题目如下:Excel can sort records according to any column. Now you are supposed to imitate this function.InputEach input file contains one test case. For each case, the first line contains two

2014-11-07 16:41:11 492

原创 MPI子通信域Broadcast通信

MPI除了有一个默认的通信域MPI_COMM_WORLD之外

2014-11-04 19:15:38 1916

原创 1027. Colors in Mars (20)

People in Mars represent the colors in their computers in a similar way as the Earth people. That is, a color is represented by a 6-digit number, where the first 2 digits are for Red, the middle 2 dig

2014-11-01 18:57:48 333

原创 1025. PAT Ranking (25)

题目要求:Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test is supposed to run simultaneously in several places, and the

2014-10-30 15:44:02 367

原创 1024. Palindromic Number (25)

A number that will be the same when it is written forwards or backwards is known as a Palindromic Number. For example, 1234321 is a palindromic number. All single digit numbers are palindromic numbers

2014-10-25 11:05:38 378

原创 1022. Digital Library (30)

题目如下:

2014-10-23 12:53:24 425

原创 1021. Deepest Root (25)

题目要求:

2014-10-21 20:43:57 443

原创 1020. Tree Traversals (25)

题目如下:Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequen

2014-10-18 21:15:44 426

空空如也

空空如也

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

TA关注的人

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