指针式仪表自动读数与识别(一)
前言的前言
因原个人博客废弃,不再维护,防止文章丢失,遂迁移至此。
鉴于大家对源码的需求较多,遂将源码上传。源码地址见文末。
前言
本系列文章是关于“指针式仪表的自动读数与识别”,也是我的毕业设计选题(其实是被选题,老师安排好的,没得选)。主要内容包括仪表图像预处理、表盘定位、指针定位和读数等,并基于Hough变换(HT)、随机霍夫变换(RHT)等法方,提出了新的圆检测以、直线检测以及模板匹配方法,最后用C#实现了一个仪表自动读数的系统。在论文中写的比较偏原理一点,那么在这里就写的偏实践或者说偏代码实现一点。
本系列文章中使用的工具或者开源库有:
图像处理库:EmguCV(OpenCV在.NET平台下的封装,用法和OpenCV一样)
开发语言:C#(因为好写界面,而且对C++不熟,哈哈)
开发工具:当然是VS了,VS 2017
本文只是对本人毕设的一个总结,也是对在研究仪表读数过程中遇到的问题、遇到的好的文章或论文、一些方法以及调优的总结,并不涉及高深的算法或内容。
文章目录
指针式仪表自动读数与识别(一):前言
指针式仪表自动读数与识别(二):仪表图像预处理
指针式仪表自动读数与识别(三):圆形表盘定位
指针式仪表自动读数与识别(四):非圆形表盘定位
指针式仪表自动读数与识别(五):刻度线定位与拟合
指针式仪表自动读数与识别(六):指针定位
指针式仪表自动读数与识别(七):示数计算
指针式仪表自动读数与识别(八):仪表自动读数系统设计与开发
指针式仪表自动读数与识别(九):多仪表自动读数
源码地址:https://gitee.com/xgpxg/PointerTypeInstrumentIdentification
指针式仪表自动读数与识别(一)相关推荐
- 指针式仪表自动读数与识别(八):仪表自动读数系统设计与开发
序 前面几篇文章都是偏理论的,这篇文章则是偏实践的,本文使用C#+EmguCV开发一个仪表自动读数系统,目前该系统能够识别圆形的温度表.气压表以及方形的电流.电压表,误差控制在0.1%左右. 系统概述 ...
- 指针式仪表自动读数与识别(五):刻度线定位与拟合
刻度拟合 刻度在仪表自动读数中并不作为计算依据(起始和终止刻度除外),最终读数仅仅依赖指针.表盘位置以及量程,因此在求仪表刻度线时可以允许少量误差,这些误差不会对最终结果造成影响. 对于刻度线的拟合, ...
- 指针式仪表自动读数与识别(九):多仪表自动读数
前面的几篇文章是针对单个仪表的读数,本片文章是针对于多个仪表的读数.考虑到由于有些仪表并不止一个表盘,所以在摄像头采集到的图像中,一张图像会 包含多个表盘,若是用多个摄像头去拍摄则得不偿失,所以我们使 ...
- 指针式仪表自动读数与识别(二):仪表图像预处理
一.仪表图像预处理 1.预处理操作 在做任何图像处理相关操作之前都要先进行预处理.预处理操作包括: (1) 缩放和变换 缩放操作的主要目的是减小图像大小,减少计算量,缩放操作不是必须的,但是如果系统对 ...
- 指针式仪表自动读数与识别(四):非圆形表盘定位
基于RSCD的非圆形表盘定位 非圆形表盘外观一般为方形,常见于电流表和电压表.这些仪表没有明显的圆形表盘,因此无法通过直接Hough圆检测来定位表盘圆.观察仪表特点,可以发现虽然表盘不是圆形,但是表盘 ...
- 指针式仪表自动读数与识别(三):圆形表盘定位
Hough圆检测及其常用优化 针对圆形仪表来说,表盘定位常用的方法是Hough圆检测. Hough圆检测原理如下: 引用自百度百科: 通过在参数空间里进行简单的累加统计,然后在Hough参数空间寻找累 ...
- 指针式仪表的自动读数与识别
指针式仪表的自动读数与识别 前言 概述 步骤概括 1.仪表图像预处理 2.刻度线提取 2.1轮廓查找 2.2面积筛选,长宽比,距离 2.3刻度线轮廓拟合直线 3.指针轮廓提取 3.1 霍夫直线检测原理 ...
- MATLAB指针式仪表自动读数系统设计
一.课题介绍 随着模式识别技术.计算机技术等多种技术的不断完善和发展,机器视觉获得了巨大的进步与发展.目前在许多企业中,存在着大量的仪表,仪表的读数都要靠人来完成,工作量很大而且误差率相对来说比较高, ...
- PYTHON+YOLOV5+OPENCV,实现数字仪表自动读数,并将读数结果进行输出显示和保存
最近完成了一个项目,利用python+yolov5实现数字仪表的自动读数,并将读数结果进行输出和保存,现在完成的7788了,写个文档记录一下,若需要数据集和源代码可以私信. 最后实现的结果如下: 项目 ...
最新文章
- linux 内核 netfilter 网络过滤模块 (2)-conntrack
- HuggingFace-transformers系列的介绍以及在下游任务中的使用
- 君士坦丁堡分叉引起的安全问题
- [C语言程序设计_现代方法(第2版)] 第二章 C语言基本概念
- oracle10g备份导入
- terminal中常用的rvm指令
- dqpsk的matlab,基于MATLAB的理想_4_DQPSK系统仿真.pdf
- 也谈POV旋转LED制作,经验及技术点。
- 读书笔记——《灰度决策:如何处理复杂、棘手、高风险的难题》
- java中比例尺,地图比例尺换算原理
- 大数据高冷?10个有趣的大数据经典案例
- json数据快速格式化
- 湖南科技大学web课程设计之网页聊天室的实现
- 华天OA漏洞复现手册
- 数据库以及Mysql入门
- 格式化格林威治时间(Wed Aug 01 00:00:00 CST 2018)
- java医院管理系统源码_医院管理信息系统
- 一文教你搞懂C语言的Q格式使用
- 不愧java_JAVA高手请进
- 蓝桥杯-基础-成绩统计C/C++