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

怎么制作网站准考证在网上打印python基础教程答案

怎么制作网站准考证在网上打印,python基础教程答案,京东网站设计代码,网页界面设计中表单的组成部分有哪四方面文章目录 0 前言1 实现方法1.1 原理1.1.1 字符定位1.1.2 字符识别1.1.3 深度学习算法介绍1.1.4 模型选择 2 算法流程3 部分关键代码 4 效果展示5 最后 0 前言 #x1f525; 优质竞赛项目系列#xff0c;今天要分享的是 #x1f6a9; 毕业设计 图像识别 深度学习 身份证识别… 文章目录 0 前言1 实现方法1.1 原理1.1.1 字符定位1.1.2 字符识别1.1.3 深度学习算法介绍1.1.4 模型选择 2 算法流程3 部分关键代码 4 效果展示5 最后 0 前言 优质竞赛项目系列今天要分享的是 毕业设计 图像识别 深度学习 身份证识别系统 该项目较为新颖适合作为竞赛课题方向学长非常推荐 学长这里给一个题目综合评分(每项满分5分) 难度系数3分工作量3分创新点4分 更多资料, 项目分享 https://gitee.com/dancheng-senior/postgraduate 1 实现方法 1.1 原理 1.1.1 字符定位 在Android移动端摄像头拍摄的图片是彩色图像上传到服务器后为了读取到身份证上的主要信息就要去除其他无关的元素因此对身份证图像取得它的灰度图并得到二值化图。 对身份证图像的的二值化有利于对图像内的信息的进一步处理可以将待识别的信息更加突出。在OpenCV中提供了读入图像接口函数imread, 首先通过imread将身份证图像读入内存中 ​ id_card_img cv2.imread(path_img)之后再调用转化为灰度图的接口函数cvtColor并给它传入参数COLOR_BGR2GRAY,它就可以实现彩色图到灰度图的转换代码如下 ​ gray_id_card_img cv2.cvtColor(color_img, cv2.COLOR_BGR2GRAY) preprocess_bg_mask PreprocessBackgroundMask(boundary)转化为二值化的灰度图后图像如图所示 转换成灰度图之后要进行字符定位通过每一行进行垂直投影就可以找到所有字段的位置具体如下 然后根据像素点起始位置确定字符区域然后将字符区域一一对应放入存放字符的列表中 ​ vertical_peek_ranges extract_peek_ranges_from_array(vertical_sum,minimun_val40,minimun_range1)vertical_peek_ranges2d.append(vertical_peek_ranges)最后的效果图如图所示 1.1.2 字符识别 身份证识别中最重要的是能够识别身份证图像中的中文文字(包括数字和英文字母)这里学长采用深度学习的方式来做 1身份证图像涉及个人隐私很难获取其数据训练集。针对此问题我采用获取身份证上印刷体汉字和数字的数据训练集的方法利用Python图像库PIL将13类汉字印刷体字体转换成6492个类别建立了较大的字符训练集 2如何获取身份证图片上的字符是在设计中一个重要问题。我采用水平和垂直投影技术首先对身份证图像进行预处理然后对图片在水平和垂直方向上像素求和区分字符与空白区域完成了身份证图像中字符定位与分割工作有很好的切分效果 3在模型训练中模型的选择与设计是一个重要的环节本文选择Lenet模型发现模型层次太浅然后增加卷积层和池化层设计出了改进的深层Lenet模型然后采用Caffe深度学习工具对模型进行训练并在训练好的模型上进行测试实验表明模型的测试精度达到96.2%。 1.1.3 深度学习算法介绍 深度学习技术被提出后发展迅速在人工智能领域取得了很好的成绩越来越多优秀的神经网络也应运而生。深度学习通过建立多个隐层的深层次网络结构比如卷积神经网络可以用来研究并处理目前计算机视觉领域的一些热门的问题如图像识别和图像检索。 深度学习建立从输入数据层到高层输出层语义的映射关系免去了人工提取特征的步骤建立了类似人脑神经网的分层模型结构。深度学习的示意图如图所示 1.1.4 模型选择 在进行网络训练前另一项关键的任务是模型的选择与配置因为要保证模型的精度要选一个适合本文身份证信息识别的网络模型。 ​ 首先因为汉字识别相当于一个类别很多的图片分类系统所以先考虑深层的网络模型优先采用Alexnet网络模型对于汉字识别这种千分类的问题很合适但是在具体实施时发现本文获取到的数据训练集每张图片都是6464大小的一通道的灰度图而Alexnet的输入规格是224224三通道的RGB图像在输入上不匹配并且Alexnet在处理像素较高的图片时效果好用在本文的训练中显然不合适。 其次是Lenet模型没有改进的Lenet是一个浅层网络模型如今利用这个模型对手写数字识别精度达到99%以上效果很好在实验时我利用在Caffe下的draw_net.py脚本并且用到pydot库来绘制Lenet的网络模型图实验中绘制的原始Lenet网络模型图如图所示图中有两个卷积层和两个池化层网络层次比较浅。 2 算法流程 3 部分关键代码 ​ cv2_color_img cv2.imread(test_image)##放大图片resize_keep_ratio PreprocessResizeKeepRatio(1024, 1024)cv2_color_img resize_keep_ratio.do(cv2_color_img) ##转换成灰度图cv2_img cv2.cvtColor(cv2_color_img, cv2.COLOR_RGB2GRAY)height, width cv2_img.shape##二值化 调整自适应阈值 使得图像的像素值更单一、图像更简单adaptive_threshold cv2.adaptiveThreshold(cv2_img, ##原始图像255, ##像素值上限cv2.ADAPTIVE_THRESH_GAUSSIAN_C, ##指定自适应方法Adaptive Method这里表示领域内像素点加权和cv2.THRESH_BINARY, ##赋值方法二值化11, ## 规定领域大小一个正方形的领域2) ## 常数C阈值等于均值或者加权值减去这个常数adaptive_threshold 255 - adaptive_threshold## 水平方向求和找到行间隙和字符所在行numpyhorizontal_sum np.sum(adaptive_threshold, axis1)## 根据求和结果获取字符行范围peek_ranges extract_peek_ranges_from_array(horizontal_sum)vertical_peek_ranges2d []for peek_range in peek_ranges:start_y peek_range[0] ##起始位置end_y peek_range[1] ##结束位置line_img adaptive_threshold[start_y:end_y, :]## 垂直方向求和分割每一行的每个字符vertical_sum np.sum(line_img, axis0)## 根据求和结果获取字符行范围vertical_peek_ranges extract_peek_ranges_from_array(vertical_sum,minimun_val40, ## 设最小和为40minimun_range1) ## 字符最小范围为1## 开始切割字符vertical_peek_ranges median_split_ranges(vertical_peek_ranges)## 存放入数组中vertical_peek_ranges2d.append(vertical_peek_ranges)## 去除噪音主要排除杂质小的曝光点不是字符的部分filtered_vertical_peek_ranges2d []for i, peek_range in enumerate(peek_ranges):new_peek_range []median_w compute_median_w_from_ranges(vertical_peek_ranges2d[i])for vertical_range in vertical_peek_ranges2d[i]:## 选取水平区域内的字符当字符与字符间的间距大于0.7倍的median_w说明是字符if vertical_range[1] - vertical_range[0] median_w*0.7:new_peek_range.append(vertical_range)filtered_vertical_peek_ranges2d.append(new_peek_range)vertical_peek_ranges2d filtered_vertical_peek_ranges2dchar_imgs []crop_zeros PreprocessCropZeros()resize_keep_ratio PreprocessResizeKeepRatioFillBG(norm_width, norm_height, fill_bgFalse, margin4)for i, peek_range in enumerate(peek_ranges):for vertical_range in vertical_peek_ranges2d[i]:## 划定字符的上下左右边界区域x vertical_range[0]y peek_range[0]w vertical_range[1] - xh peek_range[1] - y## 生成二值化图char_img adaptive_threshold[y:yh1, x:xw1]## 输出二值化图char_img crop_zeros.do(char_img)char_img resize_keep_ratio.do(char_img)## 加入字符图片列表中char_imgs.append(char_img)## 将列表转换为数组np_char_imgs np.asarray(char_imgs)## 放入模型中识别并返回结果output_tag_to_max_proba caffe_cls.predict_cv2_imgs(np_char_imgs)ocr_res ## 读取结果并展示for item in output_tag_to_max_proba:ocr_res item[0][0]print(ocr_res.encode(utf-8))## 生成一些Debug过程产生的图片if debug_dir is not None:path_adaptive_threshold os.path.join(debug_dir,adaptive_threshold.jpg)cv2.imwrite(path_adaptive_threshold, adaptive_threshold)seg_adaptive_threshold cv2_color_img# color (255, 0, 0)# for rect in rects:# x, y, w, h rect# pt1 (x, y)# pt2 (x w, y h)# cv2.rectangle(seg_adaptive_threshold, pt1, pt2, color)color (0, 255, 0)for i, peek_range in enumerate(peek_ranges):for vertical_range in vertical_peek_ranges2d[i]:x vertical_range[0]y peek_range[0]w vertical_range[1] - xh peek_range[1] - ypt1 (x, y)pt2 (x w, y h)cv2.rectangle(seg_adaptive_threshold, pt1, pt2, color)path_seg_adaptive_threshold os.path.join(debug_dir,seg_adaptive_threshold.jpg)cv2.imwrite(path_seg_adaptive_threshold, seg_adaptive_threshold)debug_dir_chars os.path.join(debug_dir, chars)os.makedirs(debug_dir_chars)for i, char_img in enumerate(char_imgs):path_char os.path.join(debug_dir_chars, %d.jpg % i)cv2.imwrite(path_char, char_img) 4 效果展示 5 最后 更多资料, 项目分享 https://gitee.com/dancheng-senior/postgraduate
文章转载自:
http://www.morning.pbpcj.cn.gov.cn.pbpcj.cn
http://www.morning.pqnkg.cn.gov.cn.pqnkg.cn
http://www.morning.bwjgb.cn.gov.cn.bwjgb.cn
http://www.morning.jlpdc.cn.gov.cn.jlpdc.cn
http://www.morning.pfcrq.cn.gov.cn.pfcrq.cn
http://www.morning.bkwd.cn.gov.cn.bkwd.cn
http://www.morning.rlsd.cn.gov.cn.rlsd.cn
http://www.morning.mmzhuti.com.gov.cn.mmzhuti.com
http://www.morning.cftkz.cn.gov.cn.cftkz.cn
http://www.morning.nytgk.cn.gov.cn.nytgk.cn
http://www.morning.rlwgn.cn.gov.cn.rlwgn.cn
http://www.morning.dqpd.cn.gov.cn.dqpd.cn
http://www.morning.mmxnb.cn.gov.cn.mmxnb.cn
http://www.morning.rxzcl.cn.gov.cn.rxzcl.cn
http://www.morning.ybhrb.cn.gov.cn.ybhrb.cn
http://www.morning.mxmzl.cn.gov.cn.mxmzl.cn
http://www.morning.fxzgw.com.gov.cn.fxzgw.com
http://www.morning.nmnhs.cn.gov.cn.nmnhs.cn
http://www.morning.yodajy.cn.gov.cn.yodajy.cn
http://www.morning.lhrxq.cn.gov.cn.lhrxq.cn
http://www.morning.rpdmj.cn.gov.cn.rpdmj.cn
http://www.morning.dbjyb.cn.gov.cn.dbjyb.cn
http://www.morning.nqbs.cn.gov.cn.nqbs.cn
http://www.morning.hjwzpt.com.gov.cn.hjwzpt.com
http://www.morning.fqnql.cn.gov.cn.fqnql.cn
http://www.morning.knlgk.cn.gov.cn.knlgk.cn
http://www.morning.xltdh.cn.gov.cn.xltdh.cn
http://www.morning.bksbx.cn.gov.cn.bksbx.cn
http://www.morning.bpmtj.cn.gov.cn.bpmtj.cn
http://www.morning.mkygc.cn.gov.cn.mkygc.cn
http://www.morning.xpmhs.cn.gov.cn.xpmhs.cn
http://www.morning.znsyn.cn.gov.cn.znsyn.cn
http://www.morning.nj-ruike.cn.gov.cn.nj-ruike.cn
http://www.morning.bgdk.cn.gov.cn.bgdk.cn
http://www.morning.pwghp.cn.gov.cn.pwghp.cn
http://www.morning.ltrz.cn.gov.cn.ltrz.cn
http://www.morning.jrtjc.cn.gov.cn.jrtjc.cn
http://www.morning.hlppp.cn.gov.cn.hlppp.cn
http://www.morning.wfbs.cn.gov.cn.wfbs.cn
http://www.morning.ndmbd.cn.gov.cn.ndmbd.cn
http://www.morning.gbnsq.cn.gov.cn.gbnsq.cn
http://www.morning.prprj.cn.gov.cn.prprj.cn
http://www.morning.dxxnq.cn.gov.cn.dxxnq.cn
http://www.morning.wnjrf.cn.gov.cn.wnjrf.cn
http://www.morning.bkxnp.cn.gov.cn.bkxnp.cn
http://www.morning.krtky.cn.gov.cn.krtky.cn
http://www.morning.mwhqd.cn.gov.cn.mwhqd.cn
http://www.morning.zqfjn.cn.gov.cn.zqfjn.cn
http://www.morning.kcbml.cn.gov.cn.kcbml.cn
http://www.morning.mnnxt.cn.gov.cn.mnnxt.cn
http://www.morning.lkgqb.cn.gov.cn.lkgqb.cn
http://www.morning.lzrpy.cn.gov.cn.lzrpy.cn
http://www.morning.wnhml.cn.gov.cn.wnhml.cn
http://www.morning.kkqgf.cn.gov.cn.kkqgf.cn
http://www.morning.gnbtp.cn.gov.cn.gnbtp.cn
http://www.morning.jzlfq.cn.gov.cn.jzlfq.cn
http://www.morning.lngyd.cn.gov.cn.lngyd.cn
http://www.morning.rbtny.cn.gov.cn.rbtny.cn
http://www.morning.pdwny.cn.gov.cn.pdwny.cn
http://www.morning.sjsks.cn.gov.cn.sjsks.cn
http://www.morning.dgknl.cn.gov.cn.dgknl.cn
http://www.morning.hjrjr.cn.gov.cn.hjrjr.cn
http://www.morning.zdbfl.cn.gov.cn.zdbfl.cn
http://www.morning.cfynn.cn.gov.cn.cfynn.cn
http://www.morning.rhsg.cn.gov.cn.rhsg.cn
http://www.morning.pzjrm.cn.gov.cn.pzjrm.cn
http://www.morning.rswfj.cn.gov.cn.rswfj.cn
http://www.morning.srkqs.cn.gov.cn.srkqs.cn
http://www.morning.zntf.cn.gov.cn.zntf.cn
http://www.morning.yyngs.cn.gov.cn.yyngs.cn
http://www.morning.gwzfj.cn.gov.cn.gwzfj.cn
http://www.morning.kjsft.cn.gov.cn.kjsft.cn
http://www.morning.rrqbm.cn.gov.cn.rrqbm.cn
http://www.morning.zwhtr.cn.gov.cn.zwhtr.cn
http://www.morning.tnwwl.cn.gov.cn.tnwwl.cn
http://www.morning.rhkmn.cn.gov.cn.rhkmn.cn
http://www.morning.qyxnf.cn.gov.cn.qyxnf.cn
http://www.morning.ujianji.com.gov.cn.ujianji.com
http://www.morning.nsjpz.cn.gov.cn.nsjpz.cn
http://www.morning.qrcxh.cn.gov.cn.qrcxh.cn
http://www.tj-hxxt.cn/news/268844.html

相关文章:

  • 城乡建设网官方网站seo月薪
  • 网站制作做网站智慧团建官网网页版入口
  • 企业网站怎么维护北京软件开发培训学校
  • 青海网站建设企业一级注册安全工程师
  • 陕西咸阳做网站的公司网站制作什么
  • 网站建设中的财务预算官方网站制作哪家专业
  • 凡科做的网站百度能收录吗一元购网站的建设
  • 个人网站建设教程融水苗族自治县网站建设公司
  • 门户网站如何制作开发工具都有哪些
  • html5网站模板 站长网设计素材网站照片
  • 做网站投资太大 网站也没搞起来专题学习网站开发流程
  • 用wordpress 扒站网站html优化
  • qq刷赞网站如何做分站专业网站建设电
  • 郑州网站建设知乎广州网站建设外包建设推广
  • 网站开发的电视剧福田做网站多少钱
  • 贵州讯玛网站建设合肥市城乡建设厅网站
  • 烟台建设银行网站外包平台
  • 免费心理咨询师24小时在线咨询东莞网站快速排名优化
  • 基于php技术的小型企业网站开发做本地分类信息网站赚钱吗
  • 网站底部导航菜单台州企业网站
  • 台前网站建设电话discu论坛网站模板
  • 佛山中小企业网站建设沈阳网站建设公司报价
  • 做网站模板全国建筑行业资质查询平台
  • 上海工程建设执业资格注册中心网站wordpress商城视频教程
  • 电子商务网站建设实习报告广州市网站建设 乾图信息科技
  • 怎么在ftp中查看网站首页路径做微商那个网站好
  • 中美网站建设差异小程序开发公司如何寻找客户
  • 网站发布内容是否过滤武清做网站公司
  • 长春建站方法wordpress留言插件
  • 网站设计 中国风人力招聘网站建设任务执行书