基于机器视觉技术的条形码在线识别系统设计

  本设计研究EAN13条形码识别的译码技术,在基于机器视觉技术上,构建了一套条形码在线检测识别系统,系统将由以下几个部分构成:条形码图像定位与采集、计算机图像预处理、条形码图像中值滤波去噪、条码解析与识读。经过实验,确定该系统可对绝大部分EAN13条形码进行快速并准确的识读。

关键词: 机器视觉; 图像处理; 条码识别;在线检测;EAN13条形码;QT

一:设计目标

  1. 掌握条形码识别原理;
  2. 熟悉条形码识别的概念,发展现状;
  3. 熟悉机器视觉系统设计的一般流程;
  4. 掌握常用图像处理技术;

 设计内容与要求

1.完成基于机器视觉技术的条形码在线识别系统算法设计;

2.完成基于机器视觉技术的条形码在线识别系统上位机设计;

3.EAN13条形码识别误差率≤2%;

二:qt程序

三:条形码定位算法

#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include<iostream>
#include<stdlib.h>
using namespace cv;
using namespace std;
int main()
{Mat Img,grayImg,gradx,blurgradx,gradAbsx,threshImg,close_threshImg,erode_threshImg,dilate_threshImg;Img=imread("E:\\txm1.jpg");imshow("0原图",Img);            cvtColor(Img,grayImg,COLOR_BGR2GRAY);imshow("1灰度图",grayImg);Scharr(grayImg,gradx,CV_16S,1,0);imshow("2边缘检测图",gradx);convertScaleAbs(gradx,gradAbsx);imshow("3Abs图",gradAbsx);blur(gradAbsx,blurgradx,Size(5,5));imshow("4滤波图",blurgradx);threshold(blurgradx,threshImg,150,255,CV_8UC1);imshow("4.5阈值分割图",threshImg);Mat kernal=getStructuringElement(MORPH_RECT,Size(25,5));morphologyEx(threshImg,close_threshImg,MORPH_CLOSE,kernal);imshow("5闭操作",close_threshImg);Mat edkl=getStructuringElement(MORPH_RECT,Size(3,3));erode(close_threshImg,erode_threshImg,edkl,Point(-1,-1),8);imshow("6腐蚀操作",erode_threshImg);dilate(erode_threshImg,dilate_threshImg,edkl,Point(-1,-1),15);imshow("7膨胀操作",dilate_threshImg);waitKey(0);return 0;}

四:程序运行及条形码识别测试

详细代码:https://github.com/hhhvvvddd/Bar-Code-Recognition-System

定位算法:https://www.cnblogs.com/fpzs/p/9637795.html

参考资料:https://max.book118.com/html/2015/1203/30750959.shtm

图像处理项目——基于机器视觉技术的条形码在线识别系统设计相关推荐

  1. 图像处理项目——基于机器视觉技术的人脸在线识别系统设计

    基于机器视觉技术的人脸在线识别系统设计 本设计研究人脸检测与识别技术,在基于机器视觉技术上,构建了一套人脸在线检测识别系统,系统将由以下几个部分构成:计算机图像预处理.数据收集和预处理. 人脸图像定位 ...

  2. 基于机器视觉技术的条形码在线识别系统设计

    本文来自公众号"AI大道理". 这里既有AI,又有生活大道理,无数渺小的思考填满了一生. 本设计研究EAN13条形码识别的译码技术,在基于机器视觉技术上,构建了一套条形码在线检测识 ...

  3. SSM毕设项目基于Java技术的医院在线挂号系统s73ib(java+VUE+Mybatis+Maven+Mysql)

    SSM毕设项目基于Java技术的医院在线挂号系统s73ib(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + ...

  4. 毕业设计 - 题目:基于机器视觉的图像矫正 (以车牌识别为例) - 图像畸变校正

    文章目录 0 简介 1 思路简介 1.1 车牌定位 1.2 畸变校正 2 代码实现 2.1 车牌定位 2.1.1 通过颜色特征选定可疑区域 2.1.2 寻找车牌外围轮廓 2.1.3 车牌区域定位 2. ...

  5. 《基于机器视觉的输电线路交叉点在线测量方法及技术方案》论文笔记

    <基于机器视觉的输电线路交叉点在线测量方法及技术方案>论文笔记 原文链接:On-line Measurement Method and Technical Scheme of Transm ...

  6. 基于机器视觉技术的快递自动分拣

    快递自动化分拣引入机器视觉技术已经进入了快速发展的阶段.目前,国内大型物流运转中心已开始釆用全自动化分拣,多数快递公司处于半自动化状态,中小型物流分拣中心目前仍靠人工录入地址信息.扫描进行分拣. 快递 ...

  7. 《基于机器视觉测量系统的工业在线检测研究》论文笔记

    <基于机器视觉测量系统的工业在线检测研究>论文笔记 原文链接:Research on Industrial Online Detection Based on Machine Vision ...

  8. 基于机器视觉技术的瓷砖分色检测系统解析

    基于机器视觉技术的瓷砖分色检测系统解析 众所周知,采用喷墨技术的陶瓷生产,瓷砖的颜色.花纹.图案越来越多,表面越来越复杂.而依靠人工根据色差程度对瓷砖进行检测,容易受到各种不稳定因素干扰,导致错判.误 ...

  9. 基于flash技术框架的在线图片编辑器

    OpCol是一款由国人开发的,基于flash技术框架的在线图片编辑器. 这款图片编辑器,并没有打算做成在线的Photoshop,在是提供一些在线图片编辑的基本功能:功能包括:图片缩放.裁剪.颜色调整. ...

  10. 流水线自动分拣机器人仿真,vrep与matlab联合仿真,基于机器视觉技术进行自动分拣,采用scara型机械臂

    流水线自动分拣机器人仿真,vrep与matlab联合仿真,基于机器视觉技术进行自动分拣,采用scara型机械臂,按照不同的颜色与形状分拣,放入不同的盒子并统计数量. 仅供学习使用 基础太差的勿. ID ...

最新文章

  1. 刚出炉!程序员人才补贴:单项目最高补贴1000万元
  2. oracle如何删除可回收归档,Oracle正确删除归档并回收空间的方法
  3. 基于STM32的DS1302时钟芯片驱动
  4. [云炬创业基础笔记]第二章创业者测试6
  5. 北斗导航 | GNSS技术在自动驾驶中的作用
  6. python一些方便excel行操作的函数(一)
  7. 阿里巴巴张勇:有信心在本财年末国内年度活跃消费者达10亿
  8. Solr删除managedschema
  9. 【Codeforces 1421 D】Hexagons,贪心,模拟
  10. 求数列的最大子段和java_十大经典排序算法(Java版本)
  11. bochs上网镜像怎么上网_bochs win7镜像可上网版
  12. HP Proliant DL360 Gen9服务器开箱
  13. Zabbix系列:proxy存储数据表proxy_history
  14. spark 概述与安装
  15. 【JavaSE】入门概述(1~41)
  16. matplotlib画会动的椭圆
  17. 化合物分子 ogb、dgl生成图网络及GNN模型训练;pgl图框架
  18. Scratch 相关等级考试
  19. 线程与蓝牙:物联网连接的 VHS 与 Betamax?
  20. [读书笔记]Spring中BeanFactory和ApplicationContext的联系和区别

热门文章

  1. 斐波那契数列Python实现
  2. 渣硕试水字节,本以为简历都过不了,123+HR面直接拿到Offer
  3. 命令行升级 Cisco ios AP c3702i c3602i c2702i 1702i胖固件 Autonomous ios image ap3g2-k9w7-tar.153-3.JPO.tar
  4. 从0到1使用Kubernetes系列(六):数据持久化实战
  5. 英语单词-中国特有词汇(一)
  6. 已启用spectre缓存,但找不到spectre缓解库
  7. Linux(Ubuntu)光盘镜像文件制作及使用攻略
  8. 基础总结篇:Activity的四种launchMode
  9. 由bootstrap-fileinput.js图片预览高度BUG谈谈如何提高驾驭开源插件的能力
  10. Linux网络扫描和嗅探工具—Nmap命令