Android智能识别 - 银行卡区域裁剪

1. 基本概念

计算机视觉、智能识别、机器学习

2. 智能识别需要的基础

1>:c/c++ 语法编程基础;
2>:opencv 常用基础;
3>:图像的算法基础;

3. 银行卡识别步骤

第一步:从相册或者拍照一张银行卡图片,然后截取到银行卡区域;
a:轮廓增强(梯度增强);
b:进行二值化轮廓过滤;
第二步:截取银行卡号区域;
方式1:找到银联区域,然后截取,精度强;
方式2:直接截取卡号:宽度尽量截取大一些,比如截取宽度 1/2 - 3/4 区域;
第三步:然后找到所有数字;
第四步:然后对字符串进行粘连处理;

4. bitmap转mat

比如bitmap是20*40矩阵,颜色通道为 argb三颜色通道,对应于mat矩阵也是20 * 40矩阵,对应颜色通道为 type1;
然后在Bitmap中锁定画布,拿到头指针,然后在 mat中开辟相同内存的空间,然后把 头指针放到 mat中,这样 操作 mat就相当于操作的是bitmap;

单颜色通道 - 黑白图片 - 0到255;


图片.png

你可能感兴趣的:(Android智能识别 - 银行卡区域裁剪)