‘壹’ 求易语言图片识别的方法或者 源码 谢谢 有分 瞎打的别来 不给分
强大的识图识色模块个插件,精易论坛搜索大漠两个字,有一大堆你需要的模块和插件。
‘贰’ 现在在弄openCV的OCR,不知道怎么展开,求大神指点迷津一些思路什么的,要求可以自己训练,识别字符数字
假设已经把验证码图片保存到本地了
验证码识别的大致步骤
1,读取图片到bitmap
2,进行灰度操作
3,进行才二值操作
4,如果有干扰点 一般用滤波器或八邻域去干扰点
5,如果有干扰线 如果是简单的直线可以用扫描法,八后法等,复杂的应该根据特点调整算法
6,如果有干扰色块 也应该想法去除
7,如果有较大的倾斜 需要进行适当校正
8,此时得到的应该是比较干净的字符了,如果是非粘连的可以直接用投影法分割成单个字符
如果有粘连,需要根据图形特点从算法上做相应的处理,保证大致分割正确
9,分割成单个字符以后,如果字符比较正常 变形扭曲程序不大,可以直接用模式识别
如果变形扭曲较厉害,一般建议使用神经网络进行训练后再识别
如果是比较简单的验证码可以使用网上的一些组件,我常用的一个是OcrKingApi
不是太复杂的识别效果还可以,关键是免费的。使用文档可以看一下文库的链接
http://wenku..com/view/b5b6721555270722192ef7b3.html
字符识别没大必要用openCV 你不觉得它太大了吗,而且它的主要适用于计算机视觉方面的处理
如果是变形比较厉害的可以用神经网络训练 常用的有BP ,SVM等
‘叁’ 连通区域标记算法概述
数字图像处理中,像素邻接关系主要体现在四邻域、D 邻域与八邻域三种。图像中的连通区域由相同像素值且相邻的像素组成,连通区域标记算法的任务则是给图像中所有连通区域赋予不同符号。
以图示为例,下图.a 展示原始二值图像,下图.b 根据四邻居规则标记连通区域,下图.c 则是利用八邻域规则。从图中可见,四邻域规则标记出四个独立区域,而八邻域规则则为三个。此标记算法在二值化图像上操作,旨在将感兴趣前景与背景分离,为后续图像处理提供基础。其应用领域广泛,如光学字符识别中的字符分割,医学图像处理中目标提取,视频图像中前景目标分割提取等。
连通区域标记算法分为两种常用类型:基于 Seed-Filling 的算法与基于 Two-Pass 的算法。Seed-Filling 算法只需一次遍历图像,效率较高,而 Two-Pass 算法需遍历两次,运行时间较长。本节将简要介绍 Seed-Filling 算法。
Seed-Filling 算法核心思想:选取图像中一点作为种子,依据指定邻接关系将满足条件的像素归入集合中。遍历结束后,集合内的像素点构成同一连通区域,标记为label。算法具体步骤如下:
1. 按照从左到右、从上至下的顺序遍历图像中的每个像素点。
2. 若像素点已遍历,则继续遍历,否则跳至步骤3。
3. 将该像素点设为种子,并将其加入标记为 label 的集合中,然后使用指定邻域关系将符合条件的像素压入栈中。
4. 弹出栈顶像素,将其加入集合中,同时使用邻域关系将符合条件的像素压入栈中。
5. 重复步骤4,直至栈空,此时找到一个连通区域,其类别标记为label。
6. 重复步骤2直至遍历完整幅图像。