《人工智能开源硬件与Pyhthon编程实践》课件 项目10 计算机视觉与条码识别.pptVIP

《人工智能开源硬件与Pyhthon编程实践》课件 项目10 计算机视觉与条码识别.ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机视觉与条码识别 人工智能开源硬件与python编程实践 情境导入 自助借还书机可自行完成对条形码读者卡的识别、图书的条形码扫描、图书的充消磁作业等功能,读者只需要按照屏幕显示的操作步骤进行操作,十几秒钟便可完成整个借还书的过程。 条形码不仅可以应用在图书馆、超市、仓库等场所,在校园里也有很多应用。 任务与目标 了解图像处理及条形码识别技术的基本原理、相关算法和应用框架; 掌握运用人工智能开源硬件设计智能应用系统的方法,掌握Python语言的编程方法; 应用人工智能开源硬件和Python相关算法模块设计条形码扫描与识别应用系统; 利用Python编程,编写条形码提取及识别算法,实现对条形码的识别解码功能,针对生活应用场景,进一步创新设计具有实用价值的二维码应用系统。 知识拓展:条形码 条形码是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。 条形码可以用来标出物品的制造厂家、商品名称、生产日期、图书编号、邮政快递编号、设备编号等丰富信息。 知识拓展:条形码的构成 静区:静区也叫空白区,分为左空白区和右空白区,左空白区是让扫描设备做好扫描准备,右空白区是保证扫描设备正确识别条码的结束标记。 起始字符:第一位字符,具有特殊结构,当扫描器读取到该字符时,便开始正式读取代码了。 数据字符:条形码的主要内容。 校验字符:检验读取到的数据是否正确。不同编码规则可能会有不同的校验规则。 终止字符:最后一位字符,一样具有特殊结构,用于告知代码扫描完毕,同时还起到只是进行校验计算的作用。 知识拓展:码制区分 条形码的码制有很多种编码模式,常用的包括EAN码、UPC码、39码、128码、Codabar库德巴码等; EAN码/UPC码(统一产品代码)。是国际通用的编码体系,是一种长度固定、无含义的条码,所表达的信息全部为数字,主要应用于国际商品标识; Codabar(库德巴码)。可表示数字0 - 9,字符$、+、 -、还有只能用作起始/终止符的a,b,c d四个字符,可变长度,没有校验位,空白区比窄条宽10,非连续性条形码,每个字符表示为4条3空; 39码和128码:ASCII字符集编码,美国国防部和汽车行业最先使用,我国目前为企业内部自定义码制,根据需要确定条码的长度和信息,可以是数字,也可包含字母 。 知识拓展:条形码的扫描与识别 扫描。条形码的扫描需要扫描器,扫描器利用自身光源照射条形码,再利用光电转换器接受反射的光线,将反射光线的明暗转换成数字信号。 译码。白条、黑条的宽度不同,相应的电信号持续时间长短也不同。译码器通过测量脉冲数字电信号0、1的数目来判别条和空的数目。通过测量0、1信号持续的时间来判别条和空的宽度。然后根据条码对应的编码规则,将条形符号换成相应的数字、字符信息。 设计与实践 图像梯度与边缘检測 条形码的轮廓检测 设定条码的码制 条码识别 Python编程实现及结果分析 图像梯度与边缘检測 图像边缘的检测一般是通过对图像进行梯度运算来实现的。 图像梯度运算理解成对图像数据从各个方向(横向、纵向、斜方向等)进行求导,从而提取出图像的边缘。 常用的图像梯度计算方法有Sobel算子、scharr算子与laplacian算子 条形码的轮廓检测 获取包含条形码的图像并转换为灰度图; 利用Sobel或Scharr算子计算水平x方向和垂直y方向上的梯度幅值,得到条形码图像的梯度表示; 从梯度表示图中,初步提取包含高水平梯度和低竖直梯度的图像区域; 模糊并二值化图像。然后将模糊化后的图形进行二值化,梯度图中任何小于等于255的像素设为0(黑色),其余设为255(白色); 对二值化后的图像应用数学形态学中的闭运算,消除条形码竖条之间的缝隙; 连续进行若干次数学形态学中的的腐蚀及膨胀运算。 找到图像中的最大轮廓,就是检测到的条形码区域。 设定条码的码制 定义一个函数,设计码制选择功能,供主程序调用 。 def barcode_name(code): if(code.type() == image.EAN2): return EAN2 if(code.type() == image.EAN5): return EAN5 if(code.type() == image.UPCE): return UPCE if(code.type() == image.ISBN10): return ISBN10 if(code.type() == image.CODABAR): return CODABAR if(code.type() == image.CODE39):

文档评论(0)

soloman_555 + 关注
实名认证
文档贡献者

全网最全各版本教材各学科新课标双减背景下作业设计

1亿VIP精品文档

相关文档