当前位置: 首页 > wzjs >正文

中国建设银行网站首页u盾登入微网站界面设计基础

中国建设银行网站首页u盾登入,微网站界面设计基础,wordpress图片模糊,怎么做二维码直接进入网站目标:针对一张身份证照片,把身份证号码识别出来(转成数字或字符串)。 实现思路:需要将目标拆分成两个子任务:(1) 把身份证号码区域从整张图片中检测/裁剪出来;(2) 将图片中的数字转化成文字。第…

目标:针对一张身份证照片,把身份证号码识别出来(转成数字或字符串)。

实现思路:需要将目标拆分成两个子任务:(1) 把身份证号码区域从整张图片中检测/裁剪出来;(2) 将图片中的数字转化成文字。第一个子任务用OpenCV(如何自行编译OpenCV源码?),第二个子任务主要仰仗Tesseract(注:Tesseract是著名的OCR文字识别开源项目)。

使用OpenCV做图像处理的大致过程为:首先要将彩色图像转成灰度图,再进一步做二值化转换。为了把身份证号码区域整个圈出来,需要继续对图像进行“膨胀”处理,使得每个数字的小区域都与相邻数字的小区域连接起来,连成一个大区域。这样处理之后,在用cv::findContours查找轮廓时,就可以根据身份证号码区域的面积和宽高比把它挑选出来了。

具体代码实现

首先用OpenCV加载图片文件:

Mat srcImage = imread(".\\assets\\pigidcard.png");

接着对图像进行灰度化和二值化处理:

Mat grayImg;
cv::cvtColor(srcImage, grayImg, COLOR_BGR2GRAY);
Mat binary;
cv::threshold(grayImg, binary, 0, 255, THRESH_BINARY_INV | THRESH_OTSU);

到这一步,图像看起来是这样的:

接着要做“膨胀”处理。这一步非常关键!需要调整下面这个Size类型的内核大小,目标是让身份证号码的这些数字前后相连,形成一个整体的矩形区域。

Mat kernel = cv::getStructuringElement(MORPH_RECT, Size(26, 26));
Mat dilation;
cv::dilate(binary, dilation, kernel);

到这一步,图像看起来是这样的:

实际的轮廓/区域分布是这样的:

然后就是遍历图像中的所有轮廓。我们设定两个条件,当轮廓的面积以及轮廓外边框的宽高比都大于某个值(根据实际情况而定),我们就认为当前这个轮廓就是身份证号码区域,可以把它裁剪出来。

std::vector<std::vector<Point>> contours;
std::vector<Vec4i> hierarchy;
cv::findContours(dilation, contours, hierarchy, RETR_EXTERNAL, CHAIN_APPROX_SIMPLE);for (size_t i = 0; i < contours.size(); i++) {double area = cv::contourArea(contours[i]);Rect roi = cv::boundingRect(contours[i]);double aspectRatio = (double)roi.width / roi.height;// 根据实际情况调整这两个阈值if (area > 40000 && aspectRatio > 10) {Mat cropped = binary(roi);imshow("ID Card - number only", cropped);// 继续使用 Tesseract OCR// …break;}
}

上面代码运行的结果:cropped对象是裁剪出来的仅含一串身份证号码的小图片。注意这是一个二值图,而且不是膨胀处理后的图像哦!接着轮到Tesseract登场了,把这个图片中的数字转成字符串。(注:请参考这篇文章自行把Tesseract源代码编译成静态库。)

#include "baseapi.h"
#include "allheaders.h"#pragma comment(lib, "leptonica-1.84.1.lib")
#pragma comment(lib, "tesseract54.lib")// 使用 Tesseract OCR
tesseract::TessBaseAPI tess;
if (tess.Init("tessdata", "eng") == 0) {tess.SetPageSegMode(tesseract::PSM_SINGLE_BLOCK);// Tesseract无法识别二值图!转换回RGB图像Mat ocrImg;cv::cvtColor(cropped, ocrImg, COLOR_GRAY2BGR);int bytesPerPixel = GetBytesPerPixel(ocrImg);tess.SetImage((uchar*)ocrImg.data, ocrImg.cols, ocrImg.rows, bytesPerPixel, ocrImg.cols * bytesPerPixel);char* outText = tess.GetUTF8Text();std::cout << "ID numbers: " << outText << std::endl;delete[] outText;tess.End();
}

打完收工!o(* ̄▽ ̄*)ブ

P.S. 完整的代码可以从这里下载:https://github.com/luqiming666/OpenCVMisc。查看OpenCVMiscDlg.cpp 文件中的_DetectIDCard_WithGoodDilation() 函数实现即可。我也上传了Tesseract库文件,但只有Release版。如果要验证OCR效果,需要把OpenCVMisc项目的配置切换到Release + x64,并且在OpenCVMiscDlg.cpp文件头部放开这个宏定义:#define _ENABLE_TESSERACT_


文章转载自:

http://yADw1Rho.mnsmb.cn
http://omqJZqoX.mnsmb.cn
http://GJFsqoE1.mnsmb.cn
http://axULMZ8H.mnsmb.cn
http://vxlwUOwA.mnsmb.cn
http://03JNOBWq.mnsmb.cn
http://HMiPCkSM.mnsmb.cn
http://Vhy2xZet.mnsmb.cn
http://uFhjwFPP.mnsmb.cn
http://lUoQmNQs.mnsmb.cn
http://IhnKwxPQ.mnsmb.cn
http://euviH4eg.mnsmb.cn
http://m8v0VPDx.mnsmb.cn
http://dVoPJwGN.mnsmb.cn
http://SkNNzfGO.mnsmb.cn
http://Tve6cAg0.mnsmb.cn
http://YxuWNSR7.mnsmb.cn
http://g5oKyDsS.mnsmb.cn
http://EsVJqNMB.mnsmb.cn
http://QMs9bs7U.mnsmb.cn
http://G9HkAI4T.mnsmb.cn
http://yyBeIUIW.mnsmb.cn
http://QT6aM8gH.mnsmb.cn
http://ihCI8vOw.mnsmb.cn
http://iNBCrbi0.mnsmb.cn
http://CnqXT5ee.mnsmb.cn
http://91Pyn6sH.mnsmb.cn
http://at6b7BEn.mnsmb.cn
http://0huMEgcG.mnsmb.cn
http://dCBZkmq8.mnsmb.cn
http://www.dtcms.com/wzjs/765367.html

相关文章:

  • 自己做的影视会员网站违法么廊坊网站快速排名优化
  • 微信公众平台小程序怎么发布北京seo推广外包
  • 常州房地产网站建设专业做网站建设公司怎么样
  • 北京建网站公司有哪些郑州手机网站建设
  • 网站建设站长相关专业网站一般用什么做的
  • js模版网站wordpress角色名
  • 建设网站制作哪家好北京建网站多少钱
  • 电商企业门户网站建设方案个人网站的基本风格
  • 做网站必须在工信部备案吗做芯片外贸生意上哪个网站
  • 外贸企业建站公司将page转换为wordpress
  • 网站开发用什么架构在线ps修图编辑器
  • 湘潭网站建设哪些公司网站建设解决
  • 西安免费平台网站建设怎么做网页个人简介
  • 开展门户网站建设wordpress主题 国外
  • 杭州高端响应式网站浙江专业网站seo
  • 平顶山市城乡建设职工培训网站dede酒业企业网站模板
  • 徐汇做网站湘潭网站开发
  • 五级偏黄视频网站建设辽阳网站建设公司
  • 太原制作公司网站教育校园网站建设方案
  • 学做衣服网站有哪些wordpress 新闻 通知
  • 做红酒闪购的网站有哪些核工业工程研究设计有限公司
  • 国内网页设计网站建筑公司企业网站
  • 专门做创意桌椅的网站网站策划书格式及范文
  • 网站等保需要几年一做创建iis网站
  • 外贸网站建设公司策划宠物网站建设的目的
  • 丽水网站建设企业网站名称是否已被注册
  • 如何做网站的注册页面马关县住房和城乡建设局网站
  • 潍坊网站建设top儿童玩具网站模板
  • 海淘网站主要关键词中装装饰工程有限公司
  • 成都网站推广创新互联内蒙古交通建设质监局网站