[Android实例] Android实现OCR扫描识别数字图片之图片扫描识别

Android可以识别和扫描二维码,但是识别字符串呢?

google提供了以下解决方案用的是原来HP的相关资料。

可以吧,这个迁移到Android上。

工程导入成功是可以正常运行的,我是专门换了个电脑重新验证了下。

如果有不能运行的问题,应该是其他方面的问题,不然我的截图如何截 啊?

关于识别汉字,理论上可以识别,但是要是实现,并且很实用要做的东西更多。

兄弟不才啊,这2个简单的工程,仅仅识别数字,也是我鼓捣了半个多月才获得成果。

apk有时间再发。

http://code.google.com/p/tesseract-ocr/

实现图像识别的主要方法。

               TessBaseAPI baseApi = new TessBaseAPI();

                baseApi.init(TESSBASE_PATH, DEFAULT_LANGUAGE);

                Bitmap mp = BitmapFactory.decodeResource(getResources(),

                                R.drawable.number1);

                mp = mp.copy(Bitmap.Config.ARGB_8888, false);

                baseApi.setImage(mp);

                String value = baseApi.getUTF8Text();

需要,实现一个Camera,不停得扫描图像的,当得出扫描结果的时候就通知用户。

实现了识别数字 的判断,不过也可以识别其他字符,需要做的处理就更多了。

附件里有2个工程一个是 OcrLib是android lib工程

一个OcrSearch是个android工程,这2个工程需要都导入eclipse才可以运行起来。

最后先导入 OcrLib,然后再是 OcrSearch

回头大家可以实现下,识别简体中文的尝试

兄弟不是我要分啊,是论坛上传文件大小有限制啊,

郁闷啊,有不要积分的下载你也可以试试啊。发布到网盘地址大家可以尝试下啊:

推荐 aiyuaichou

导入后OcrSearch 有错,  CameraManager里, 我注释掉了

/*@TargetApi(Build.VERSION_CODES.GINGERBREAD)

        private void open(Camera theCamera) {

                int numCameras = Camera.getNumberOfCameras();

                if (numCameras == 0) {

                        Log.w(TAG, "No cameras!");

                        theCamera = null;

                        return;

                }

                int index = 0;

                while (index < numCameras) {

                        Camera.CameraInfo cameraInfo = new Camera.CameraInfo();

                        Camera.getCameraInfo(index, cameraInfo);

                        if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_BACK) {

                                break;

                        }

                        index++;

                }

                if (index < numCameras) {

                        Log.i(TAG, "Opening camera #" + index);

                        theCamera = Camera.open(index);

                } else {

                        Log.i(TAG, "No camera facing back; returning camera #0");

                        theCamera = Camera.open(0);

                }

        }*/

获取相机数..? Camera.getNumberOfCameras() 没有这个方法, 我就注释掉了这段

同样注释掉了

/*@TargetApi(Build.VERSION_CODES.GINGERBREAD)

        private static void getResult(Activity activity, int cameraId, Camera camera) {

                Camera.CameraInfo cameraInfo = new Camera.CameraInfo();

                Camera.getCameraInfo(cameraId, cameraInfo);

                int degrees = getDisplayRotation(activity);

                int result;

                if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {

                        result = (cameraInfo.orientation + degrees) % 360;

                        result = (360 - result) % 360; // compensate the mirror

                } else { // back-facing

                        result = (cameraInfo.orientation - degrees + 360) % 360;

                }

                camera.setDisplayOrientation(result);

        }*/ 

Camera.CameraInfo  没有这个类, 注释掉上面2段代码就能运行了, 貌似只能截取数字, 最近要做这个,楼主能给点学习的步骤么, 感谢, 方便的话61565021@qq.com

Android实现OCR扫描识别数字图片之图片扫描识别的更多相关文章

  1. QRCode 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo 二维码、支持微博微信 QQ 二维码扫描样式

    目录 功能介绍 常见问题 效果图与示例 apk Gradle 依赖 布局文件 自定义属性说明 接口说明 关于我 功能介绍 根据之前公司的产品需求,参考 barcodescanner 改的,希望能帮助到 ...

  2. tesseract-ocr识别英文和中文图片文字以及扫描图片实例讲解

    本文来源:http://blog.csdn.net/wanghui2008123/article/details/37694307 本文参考http://blog.sina.com.cn/s/blog ...

  3. android 图片二维码识别和保存(二)

    续上一篇,开发图片二维码识别功能后,我们对功能进行性能分析内存占用显著提高了,不使用该功能内存占用大约是147M,使用这个功能多次以后,高达203M. 因此对功能进行研究,发现每次生成的图片没有即时的 ...

  4. android 图片二维码识别和保存(一)

    最新业务开发二维码识别的功能,这个功能,在很多应用上都有,比如微信长按图片识别二维码,如果图片中存在可以识别的二维码时,可以增加一个选项 识别二维码.那么如何去实现这个功能呢.这里其实也非常简单,首先 ...

  5. Android 扫描Scard卡全部的图片

    这几天为了扫描Scard卡全部的图片的事非常纠结,我原本以为这是一件非常easy的事.可是我发现我错了.网上也没有完整的代码.仅仅是零零碎碎的能扫描单个文件的代码.在今天代码调试通过之后,我认为我有必 ...

  6. Android | 教你如何在安卓上实现通用卡证识别,一键各种卡绑定

    目录 前言 通用卡证识别的应用场景 如何使用通用卡证识别服务 集成通用卡证识别服务的关键流程 开发实战 1 开发准备 1.1 在项目级gradle里添加华为maven仓 1.2 在应用级的build. ...

  7. 身份证识别OCR,开启视频模式扫一扫即可识别身份证信息

    文章摘要:身份证识别等证件识别OCR技术在各个行业得到广泛应用,例如:车险移动查勘会用到身份证识别.行驶证识别.车架号识别: 寿险移动展业会用到名片识别.银行卡识别:电信实名制代理网点采集身份证信息会 ...

  8. Android studio ocr初级app开发问题汇总(含工程代码)

    博客第一篇文章,稍作修改,增加文字介绍 开发目的 最近由于某些需求,需要在Android手机端实现OCR功能,大致为通过手机照相,识别出相片中的中文信息字段.但是由于新手光环+流程不熟悉,遇到了各种各 ...

  9. 深入Android媒体存储服务(二):磁盘扫描流程

    简介: 本文是<深入Android媒体存储服务>系列第二篇,简要介绍媒体存储服务扫描文件的流程.文中介绍的是 Android 4.2. Android 有一套媒体存储服务,进程名是 and ...

随机推荐

  1. post get

    /// <summary> /// Get方法 /// </summary> /// <param name="serverUrl">url地址 ...

  2. PHP 的try catch 报错捕获机制

    首先上代码: try { echo 'Never executed'; echo "<br>"; if(1<0){ echo 'end'; }else{ thro ...

  3. 解决Undefined symbols for architecture x86_64: 报错 和 ld: warning: ld: warning: ignoring file警告

    出现这种错误的情况: 用iphone5模拟器编译程序正常, 用iphone5s以上的模拟器编译出现Undefined symbols for architecture x86_64: 报错 和 ld: ...

  4. XML有哪些解析方式有何优缺点?xml有哪些解析技术?区别是什么?

    有DOM,SAX,STAX等 (1):DOM:处理大型文件时其性能下降的非常厉害.这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XM ...

  5. 关键字throw(something)限制

    C++函数后加关键字throw(something)限制,是对这个函数的异常安全性作出限制.void f() throw() 表示f不允许抛出任何异常,即f是异常安全的.void f() throw( ...

  6. 24种设计模式--工厂方法模式【Factory Method Pattern】

    女娲补天的故事大家都听说过吧,今天不说这个,说女娲创造人的故事,可不是“造人”的工作,这个词被现代人滥用了. 这个故事是说,女娲在补了天后,下到凡间一看,哇塞,风景太优美了,天空是湛蓝的,水是清澈的, ...

  7. 仿小米网jQuery全屏滚动插件fullPage.js

    演 示 下 载   简介 如今我们经常能见到全屏网站,尤其是国外网站.这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次.比如 iPhone 5C 的介绍页面,QQ浏 ...

  8. laravel4通过控制视图模板路劲来动态切换主题

    通过控制视图模板路劲来动态切换主题 App::before(function($request) { $paths = Terminal::isMobile() ? array(__dir__.'/v ...

  9. 使用程序往Neo4j导入CSV报错

    今天在用程序向Neo4j导入csv文件时,报以下错误: java.net.ConnectException: Connection refused: connect java.rmi.ConnectE ...

  10. cetos 6.3 安装 apache+mysql+php

      1.安装 apache 服务器 yum install httpd 启动服务 service httpd start or /etc/init.d/httpd start 2.安装 mysql 数 ...