码迷,mamicode.com
首页 > 其他好文 > 详细

识别快递单号(1) - 图像处理

时间:2015-02-13 17:58:25      阅读:574      评论:0      收藏:0      [点我收藏+]

标签:

前言: 

   最近一个项目要发快递, 发完以后需要把单号录入后台. 暂时想到两方案:
  1. 手机拍照上传服务器, 服务器识别. (优点 不用开发手机端; 缺点 费流量, 虽然手机画质调最小一张照片也就100k)
  2. 做手机混合App, 手机端识别. (优点 省流量, 更便捷; 缺点 仅会一点Android, 苹果完全没玩过)

Anyway, 先把图像识别做出来, 其他都好说. 因为各个快递公司条码编码方式不同, 图像识别也有两种方案:
 1. 识别条码. (优点 识别简单; 缺点 需要学习多种编码方式)
 2. 识别条码下方数字单号. (优点 直接; 缺点 需要进行机器学习, 不过应该不难, 毕竟都是打印的数字)

大概流程是这样的: a. 获得照片(一般是快递单条码的特写), b. 找到识别部分(条码或单号), c. 识别.
ac暂且不说, 先做做b.

  转载请声明出处: http://www.cnblogs.com/zaiyuzhong/p/discern-shipment-waybill-1.html

正文:

一. 图像二值化
  我首先想到的就是这个, 因为条码和单号都是黑色, 快递单又是多层的, 下层的单号很容易就透上来了.
  1. 用RGB平均值将图片灰度化; (与人眼无关不需要用加权平均, RGB最大值得出图像偏亮)
  2. 因为拍照环境的光线问题, 使用的OTSU算法不能很有效的去除手机遮挡光源产生的阴影, 所以我没有取1/2点作为阀值.
  测试几张图片后发现1/2.1~1/2.5之间效果较好, 于是取1/2.3, 这个需要再多一些图片做测试, 但是我准备换Kittler算法.
技术分享 技术分享 技术分享
  以上从左到右分别是 原图 1/2灰度点阀值 1/2.3灰度点阀值 (白色块是后补的, 位置稍微不同别介意)

识别快递单号(1) - 图像处理

标签:

原文地址:http://www.cnblogs.com/zaiyuzhong/p/discern-shipment-waybill-1.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!