有限图片识别

问题描述

有AB两组各10张的10*15像素的小图片,上面画的分别是0-9十个数字,现在已知其中一组图片与数字的对应关系,给出另外一组的任意一张图片,怎么用程序识别出这个图片上的数字是多少?A组图片跟B组图片不同但是极其相似

解决方案

解决方案二:
直接用OCR不行吗?
解决方案三:
根据像素分布情况判断呗
解决方案四:

解决方案五:
引用1楼liuchaolin的回复:

直接用OCR不行吗?

正在尝试,但是觉得就0-9十个数字,没必要用别的dll想自己搞定
解决方案六:
引用2楼danding_ge的回复:

根据像素分布情况判断呗

关键在于怎么判断没有误判?
解决方案七:
不知你的10个数字是什么字体,是否规范。
解决方案八:
就这么个样子
解决方案九:
像这样,把图片分成15部分(分的越多越精确),遍历图片上每个部分的像素点,如果其中一个像素点是黑的,则记为1,反之为0;然后记录一张图片中每个部分像素点为1个数量,判断这个数量与哪个数字对应部分的像素点数量匹配。
解决方案十:
计算图片和对比组每个图片的差异,差异最小的可以认定匹配。判断差异有很多方法,一个比较简单的就是求像素之间的距离:1、把10*15像素变成一个向量,比如每个像素取它的亮度,并把所有的行合并成一个150维的向量(第一行写在前面,跟着写第二行...):{255,124,...,255}2、假设对比组图像1的向量为:{255,126,...,255}3、两个向量的距离(的平方)就是:floatdistance1=(255-255)^2+(124-126)^2+...+(255-255)^2;
解决方案十一:
例如图中第一部分有大概20个像素点,0-9十个数字中第一部分像素值大于15的有0235689,再看第三行第一列的部分有50个像素点,大于40的还剩下68,最后看第二行第三列也有50个像素点,大于40的只有8了。当然,这是人脑的逻辑,直接用于做计算机的算法并不适用,所以还要靠你自己来设计,我只给你提供个思路,多动动脑子吧!
解决方案十二:
引用9楼gomoku的回复:

计算图片和对比组每个图片的差异,差异最小的可以认定匹配。判断差异有很多方法,一个比较简单的就是求像素之间的距离:1、把10*15像素变成一个向量,比如每个像素取它的亮度,并把所有的行合并成一个150维的向量(第一行写在前面,跟着写第二行...):{255,124,...,255}2、假设对比组图像1的向量为:{255,126,...,255}3、两个向量的距离(的平方)就是:floatdistance1=(255-255)^2+(124-126)^2+...+(255-255)^2;

看不懂,能不能解释下向量。
解决方案十三:
二维平面上两个点的距离的平方=(x1-x2)^2+(y1-y2)^2三维上两个点的距离的平方=(x1-x2)^2+(y1-y2)^2+(z1-z2)^2同理,N维上两个点的距离的平方=(a1-a2)^2+(b1-b2)^2+(c1-c2)^2+...距离就是差异的一种体现。
解决方案十四:
引用8楼danding_ge的回复:

像这样,把图片分成15部分(分的越多越精确),遍历图片上每个部分的像素点,如果其中一个像素点是黑的,则记为1,反之为0;然后记录一张图片中每个部分像素点为1个数量,判断这个数量与哪个数字对应部分的像素点数量匹配。

这个做法相当于是忽略了细节,粗略估计黑点分布相似度,如果把握好分割的区间会要的效果,如果区间没把握好,698得到的结果回事一样的
解决方案十五:
引用7楼wangzheyongle的回复:

就这么个样子

privatevoidForm1_Load(objectsender,EventArgse){Bitmapsourcebm5=newBitmap("5.jpg");txt_5.Text=ImageToBase64(sourcebm5,ImageFormat.Jpeg);Bitmapsourcebm6=newBitmap("6.jpg");txt_6.Text=ImageToBase64(sourcebm6,ImageFormat.Jpeg);Bitmapsourcebm7=newBitmap("7.jpg");txt_7.Text=ImageToBase64(sourcebm7,ImageFormat.Jpeg);}privatestringImageToBase64(System.Drawing.Imageimage,System.Drawing.Imaging.ImageFormatformat){using(MemoryStreamms=newMemoryStream()){//ConvertImagetobyte[]image.Save(ms,format);byte[]imageBytes=ms.ToArray();//Convertbyte[]toBase64Stringstringbase64String=Convert.ToBase64String(imageBytes);returnbase64String;}}尝试转成Base64字符串,然后截取比较
解决方案:
引用13楼wangzheyongle的回复:

Quote: 引用8楼danding_ge的回复:
像这样,把图片分成15部分(分的越多越精确),遍历图片上每个部分的像素点,如果其中一个像素点是黑的,则记为1,反之为0;然后记录一张图片中每个部分像素点为1个数量,判断这个数量与哪个数字对应部分的像素点数量匹配。

这个做法相当于是忽略了细节,粗略估计黑点分布相似度,如果把握好分割的区间会要的效果,如果区间没把握好,698得到的结果回事一样的

如果你的图像都是固定的,那么这个区间就很好把握。

时间: 2024-05-04 01:21:49

有限图片识别的相关文章

京华时报推出了基于移动图片识别技术的“云”报纸

在移动http://www.aliyun.com/zixun/aggregation/3519.html">互联网时代,印刷媒体如何捕捉新技术为我所用?北京的京华时报日前推出了基于移动图片识别技术的"云"报纸. "云"报纸需要一份报纸和一部可拍照的移动智能终端.先下载安装一个"联通亿拍"的应用,激活其中的"我是拍客"功能,就能开启拍照识别程序,然后将摄像头对准京华时报的报头,按下拍照识别键,就能完整地在终端上呈

modi-C#调用MODI 的OCR进行图片识别时无法识别jpeg格式的图片

问题描述 C#调用MODI 的OCR进行图片识别时无法识别jpeg格式的图片 最近调用MODI做了个小的OCR识别软件,效果还可以,但发现无法识别jpeg格式的图片,请各位大神指点指点. 主要代码如下: StringBuilder sb = new StringBuilder(); string img_Path = txt_imgpath.Text.Trim(); // 图片地址 if (String.IsNullOrEmpty(img_Path)) { MessageBox.Show("请先

图片识别OCR,将图片上的文字识别出来

问题描述 图片识别OCR,将图片上的文字识别出来 求大神可以将上面的图片文字识别出来,急急急. 解决方案 OCR识别图片的一些实例 OCR 图片文字识别图解教程图片文字识别的两种简便方法 解决方案二: 用纯javascript或者纯jQuery 调用中国气象网的json数据的代码 解决方案三: 用纯javascript或者纯jQuery 调用中国气象网的json数据的代码 解决方案四: 用纯javascript或者纯jQuery 调用中国气象网的json数据的代码 解决方案五: 用纯javasc

微信公众平台消息接口开发(24)图片识别之人脸识别API

微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 图片识别 人脸识别 API 作者:方倍工作室  原文:http://www.cnblogs.com/txw1958/archive/2013/03/13/weixin-if24-face-recognize-api.html   一.微信图片获取 首先要获得用户发过来的图片,微信公众平台支持接收图片,一条图片消息的格式如下: <xml> <ToUserName><![CDATA[gh_13d1a3a7

图片识别应用Shortcut欲代替二维码读取内容

据国外媒体报道,很多人认为QR二维码技术是联接实体媒体和网络的一种笨拙的方式,其黑白相间的外形也是十分丑陋.然而,QR二维码技术却在出版商.广告商和网络咨询顾问中大受青睐.目前,有一家来自于瑞士苏黎世的公司Kooaba正在致力于开发一种图片识别技术.最近,公司推出了一款新应用,希望能够代替QR二维码匹敌,让其退出历史舞台. 这款叫做Shortcut的应用,允许用户对报纸.杂志.广告和广告牌进行拍照,然后直接在手机上获得数字版内容.这款应用有一个和Path十分相似的用户界面,用户能对发现的内容进行

微信公众平台消息接口开发(23)图片识别之男人味/女人味指数

微信 图片识别 人脸识别 男人味 女人味 微信公众平台消息接口 微信开发模式 作者:http://www.cnblogs.com/txw1958/标题:http://www.cnblogs.com/txw1958/archive/2013/02/28/weixin-if23-man-woman.html  家有儿女 测试结果  某航空姐测试结果   --------------------------------------------------------------------------

图片识别工具Tesseract初探_实用技巧

一.框架介绍 Tesseract 是一款图片识别工具,可以抓取图片中的文字,可以支持多种语言(默认是英语),需要下载开源文件可以在github上下载,如果知识应用不想太多深究直接在google code里边搜索下载即可. 二.Tesseract内容  Doc:说明文档  Tessdata:存放各种文字库(chi_sim.traineddata:中文 等)  Tessseract.exe 即可以启动文件开始调用Tesseract 可以通过cmd方式调用,先cd到对应的目录,然后 输入 tesser

两个问题:DLL.Config和验证图片识别

问题描述 如何在ASP.NET中让DLL读取自己所生成的DLL.CONFIG而不是WEB.CONFIG?如何识别破解验证码?简单的.http://passport.csdn.net/ShowExPwd.aspx顶者有分:回答一个就给全分. 解决方案 解决方案二:1.web.config就是一个xml文件阿:你自己写的文件然后读取出你要的设置就可以了阿:只是比较麻烦,你需要写一个这样的类来进行调用2.这个还是比较难的,因为答案是放在内存中的,你也无法知道是否加过密,放在session还是views

【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇二:基于OneNote难点突破和批量识别

      篇二:基于OneNote难点突破和批量识别 [1]开篇概述:在对本章技术介绍前,还是梳理下思路.描述下本章功能和开发过程.做个系统大致了解之后,在粘贴出本节效果图配以完整代码,然后分拆之,个体技术剖析.这样既可以达到全局整体效果,也可以对局部技术或者知识点做以小结.功能看图描述:本程序开发基于C#+WPF,然后这些条件具备前需要安装office2010以上版本,包含OneNote即可   完整代码:   namespace OnenoteOCRDemo { /// <summary>