药盒图像检测与识别系统的设计与实现毕业论文
2020-04-09 15:43:43
摘 要
随着科学技术的发展,自动化设备被广泛运用在生活中的各个方面。国内外自动化药房都取得了一定的发展,但由于目前大多数设备只完成配发药品流程的自动化,药品的配舱工作自动化程度还比较低甚至还是采取人工添加与扫码确认的方式,导致其工作效率不能最大化而且准确性不能得到很好的保证。所以,允许机器自动检测与识别药盒具有很高的研究价值。本文研究工作如下:
(1)完成了药盒图像检测与识别系统的整体结构设计,用以提高自动化药房配舱工作的自动化程度、效率及准确性。
(2)为药盒图像识别过程设计出了四种算法,算法基于python语言环境开发,通过分析药盒的颜色特征和形状特征,实现对传送带上药盒的自动识别。
(3)对各种算法进行了横向比较,并完成了系统的整体测试工作,确定其在特定环境中是否适用。
重点对图像识别过程进行了多次测试。经过测试发现本文提出的算法有一定的抗干扰能力,准确率较高。
关键词:图像识别;python;自动化药房
Abstract
With the development of science and technology, automation equipment is widely used in all aspects of life. The automation pharmacy both at home and abroad has made a certain development, but because most of the equipment only completed the automation of the dispensing process, the automation degree of the dispensing work of the medicine is still relatively low or even by the way of artificial adding and scanning, which can not maximize the efficiency and the accuracy can not be obtained very well. Good guarantee. Therefore, allowing the machine to automatically detect and identify the medicine box has high research value. The work of this paper is as follows:
(1) complete the overall structure design of the drug box image detection and recognition system, so as to improve the automation, efficiency and accuracy of the automation pharmacy.
(2) four algorithms are designed for the image recognition process of the medicine box. The algorithm is based on the development of the python language environment. By analyzing the color features and shape features of the drug box, the automatic identification of the drug box on the conveyor belt is realized.
(3) horizontal comparison of various algorithms is carried out, and the overall testing work of the system is completed to determine whether it is applicable in specific environment.
Keywords: Image Recognition; Python; Automated Pharmacy
目 录
第1章 绪论 1
1.1论文研究背景及意义 1
1.2国内外研究现状 1
1.2.1计算机图像识别技术的研究现状 1
1.2.2基于图像识别的自动化设备研究现状 2
1.2.3自动化药房研究现状 2
1.3开发环境简介 2
1.4论文的主要工作 4
1.5论文的组织结构 4
第2章 药盒图像检测与识别系统的结构设计 6
2.1系统框架设计 6
2.2系统硬件的结构设计 6
2.2.1相机的选择 6
2.2.2光学镜头的选择 7
2.2.3光源的选择 7
2.3本章小结 7
第3章 图像识别技术基础原理 8
3.1图像颜色特征 8
3.1.1颜色空间 8
3.1.2颜色特征提取 8
3.2相似性度量 10
3.3本章小结 11
第4章 药盒图像检测与识别系统的算法设计与实现 12
4.1系统需求分析 12
4.2算法设计 12
4.2.1颜色直方图计算法 12
4.2.2哈希算法 13
4.3本章小结 18
第5章 系统测试 19
5.1相同图像验证 19
5.2图片抗干扰测试 20
5.3不同图片测试 22
5.4实际药盒图像测试 23
5.5本章小结 24
第6章 总结与展望 25
6.1工作总结 25
6.2展望 25
参考文献 26
附 录A 27
附 录B 29
附 录C 31
附 录D 35
致 谢 37
第1章 绪论
1.1论文研究背景及意义
随着科技的发展与进步,我国医疗事业也取得了长足的发展,人民群众对医疗卫生事业的要求日益提高, 在所有的医疗部门当中, 药房是医院重要的组成部分, 它承担着医院所有科室处方的处理和药品的分发工作 [1]。药品的配发、调剂与患者的治疗效果甚至与生命安全息息相关,传统的药师手工分拣药品的方式效率低下,容易造成患者在药房窗口的大量滞留,而且这对药师的体力也是一种考验。因此药房的信息化和自动化是不可避免的,使人力由体力型工作向智力型、技术型转变。
近年来,我国引进的国外自动化药房设备中,机械手式自动发药设备和储药槽式自动发药设备的应用最为广泛。德国ROWA公司生产的机械手式自动化药房系统采用机械手对药盒进行出入库操作,但其存取效率一般,每次可出药品数量较少,难以满足我国庞大就医人群的需要[1]。而储药槽式利用倾斜的储药槽来存储药物,因而出药量更大,能够更好地适应我国的医疗现状 [2]。
本文的药盒图像检测与识别系统,借助计算机强大的图像处理能力,用以提取和分析药盒的数字图像信息特征,采用颜色特征对图像进行分析以实现药盒的匹配,以便后续的存储与管理等工作。既提高了药盒入槽的工作效率也避免了药师人工加药时出现的差错。
1.2国内外研究现状
1.2.1计算机图像识别技术的研究现状
随着计算机科学于技术的不断发展,计算机技术已经渗入到我们生活的方方面面。与此同时新世纪以来,我国的图像识别技术也有了很大的进步,得到了较大的发展,并取得颇丰的研究成果。
计算机图像识别技术其主要的作用就是根据工业相机所提取到的图像,通过对图像中的信息进行提取以此来对图像中的物体进行辨别,并据此做出有意义的判断。现代图像识别技术大多由图像分割、图像特征提取、分类器识别三个部分组成[3],图像分割指的是将计算机获取的图像分割为一定数量的等面积区域;图像特征提取是对上述分割出的区域通过一定的算法提取出特征信息;分类器识别则是将各个区域提取出的图像特征信息进行适当的分类。在一定程度上来说,图像分割也可以被称为图像识别的过程。
图像识别已经在我们日常生活的各个方面有了一定程度的应用,最典型的就是在交通领域中的应用[4]。我国拥有复杂的交通网络,交通路况也极其复杂,可以利用计算机图像检测与识别技术运算处理速度快等优势为车辆提供导航服务,也可用于识别车辆的车牌和车主等信息、车流量统计、车辆速度监控等方面[5]。在公共安全领域,人脸识别技术广泛运用在多个城市的监控系统中,通过与公民身份信息进行快速匹配,此举大大提高了社会的安全性。同时图像识别技术在安防领域、通讯领域、农业领域、机器视觉领域以及医学领域都有广泛应用。
1.2.2基于图像识别的自动化设备研究现状
在日常生活中,基于图像识别的自动化设备已随处可见。如国外早在2009年就开始的谷歌自动驾驶汽车项目,利用激光扫描仪、超声波传感器、高清俯视鱼眼摄像头、高清3D摄像头、红外线夜视视像头、雷达、车身位置和惯性等传感器来规避行人障碍物和寻路。苹果iPhone X使用3D传感器捕获人脸图像实现用户数据的加密与解锁功能。
在国内,此类自动化设备也比比皆是,例如各学校入口处的车牌识别系统,车辆进出入自动识别将其分类为社会车辆与校内车辆;各客运站闸口出的人脸识别校验系统,使用身份证与人脸双重校验,与人工窗口校验相比效率有了显著提升。
1.2.3自动化药房研究现状
2012年,据权威网站调查,我国近30000家医院中的自动化药房数量的不足200家。经过近几年的发展,自动化药房比重逐年上升,但尚未在所有“三甲”医院中推广使用。因此,未来5~10年内,国内对自动化药房的需求将会逐年增加 [2]。
20世纪末至2010年,这期间的研究成果可以概括为自动药品售卖机,例如“智能化药房”、“盒装药品自动售药机”、“盒装药品自动售药机”、“全自动药品单剂量分包机系统”、“机械手式自动化药房”都是属于这个范畴[3]。此阶段的研究仅仅提高了药品发放效率,在发药的准确率和有效管理方面并没有提出建设性意见。
2008年至今,结合目前国内医院的实际情况,国内的部分医疗器械公司通过借鉴国外的产品技术,陆续的开始了对自动化药房的自主研发进程。如苏州艾隆科技股份有限公司和北京蝶和医疗科技有限公司均是国内在自动化药房自主研发技术上较为领先的公司。
1.3开发环境简介
本文的药盒图像检测与识别系统是基于Python语言环境进行开发的,集成开发环境(IDE)为PyCharm。
现在,全世界大约总共有600种编程语言,但被人广泛使用的的编程语言也仅仅只有20多种。图1.1是2002~2013十二年最常用的10种编程语言的变化图。
总的来说,这几种常用的编程语言各有千秋。C语言是更适用于编写操作系统等贴近硬件的语言。所以,C语言适合开发那些追求运行速度、充分发挥硬件性能的程序。而Python是用来编写应用程序的高级编程语言。所谓高级编程语言通常都会给使用者提供一个比较完善的基础代码库,让使用者可以直接调用。例如,针对电子邮件协议的SMTP库,针对桌面环境的GUI库,在这些已有的代码库的基础上开发,能极大的提高开发效率而且更便于维护。
图1.1 TIOBE排行榜
Python就为我们使用者提供了十分完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,被形象地称作“内置电池(batteries included)”。使用Python开发,许多功能不必从零开始编写,直接调用现成库文件即可。除了内置的库外,Python还拥有全球大量开发者为其开发的第三方库,使用者可以直接使用。同样的,自己开发好的代码通过很好的封装,也可以作为第三方库共享使用。
Python语言作为第四代计算机编程语言,其功能强大,具有解释性、交互性和面向对象三个特点。Python在国外是非常流行的编程语言,例如YouTube、Instagram,还有国内的豆瓣等很多大公司的网站都是用Python开发的,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。
同时Python作为一种脚本语言,它的执行效率非常高。它具有丰富而且使用的第三方标准库,使其适用范围非常广泛,大大提高了编程效率。由于PIL、Tkinter以及Pillow等第三方标准库的存在,使其能非常方便的进行图像的分析与处理。
其缺点也是明显的,第一个缺点就Python相比于C语言,其运行速度非常慢,因为Python是解释型语言,用户的代码在执行时会一行行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。反观C程序是运行前直接编译成CPU能执行的机器码,所以运行速度非常快。
但是在很多情况下应用程序不需要这么快的运行速度,因为用户根本感觉不出来。正如本文开发的程序,所有运行结果都是瞬间得出,几乎完全感受不到任何停顿。此缺点对本系统不会产生任何干扰。
第二个缺点是代码不能加密。如果要发布自己编写的Python程序,实际上就是将源代码发布出去了。在这一点上跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是常见的exe格式文件)发布出去。下载者想要从机器码反推出C代码是完全不可能的。类似的,只要是编译型的语言,都此类问题的困扰,而Python这种解释型的语言,则必须将源代码发布出去。同样的,在本文附录中都将代码贴出来了,也不存在这类问题。
1.4论文的主要工作
本文基于Python开发环境,设计出药盒图像检测与识别系统,实现药盒图像的自动识别与比对功能。
论文的主要工作如下:
(1)对药盒图像检测系统所涉及到的各类技术做初步的探索。对我国门诊自动化药房建设的发展现状进行分析,了解了国内外图像识别技术的研究现状。
(2)研究学习图像识别所需的相关知识与原理,了解图像特征的分类与提取算法,对图像的颜色特征算法进行了深入学习与研究。
(3)针对图像识别主体——药盒的图像特征进行了分析,根据其特点调整图像识别算法,通过实验验证其有效性,完成药盒图像检测系统的设计。
1.5论文的组织结构
论文分为六个章节对本系统的设计进行分析与讨论,具体如下:
第1章,绪论。介绍了药盒图像识别与检测系统的设计背景以及自动化药房与图像识别技术在国内外的发展现状,对本文所研究的药盒图像检测与识别系统的开发环境进行了全面的介绍。分析了开发此系统的实用价值和应用前景。
第2章,药盒图像检测与识别系统的结构设计。简要描述本系统的整体框架,搭建硬件平台。
第3章,图像识别技术基础原理。叙述图像识别所需的基本步骤以及实现方法,对相关技术进行了初步分析。
第4章,药盒图像检测与识别系统的算法设计与实现。通过分析系统需求,相应的设计四种不同的算法并进行了初步比较,都大致可以实现药盒图像识别功能,同时也对各算法做出了简要说明。
第5章,系统测试。搭建好开发环境,通过实际图像对各个算法分别进行测试,完成药盒图像识别系统的总体调试。
第6章,总结与展望。对本系统设计的优缺点进行总结并对下一步研究及后续发展做出展望。
第2章 药盒图像检测与识别系统的结构设计
2.1系统框架设计
药盒图像检测与识别系统由6个部分构成:光源、镜头、工业相机、图像处理软件、计算机、机械臂[5]。
相机与镜头属于成像器件。按照不同的标准可分为:标准分辨率数字相机和模拟相机等。光源作为辅助成像器件,对成像质量的好坏往往能起到至关重要的作用,各种形状的LED灯、高频荧光灯、光纤卤素灯等都很容易得到。照明是整个系统视觉输入的重要因素,它直接影响输入图像的质量和应用效果。计算机使整个系统的核心,在这里完成图像数据的处理[6]。图像处理软件用来完成输入图像的处理,然后通过一定的运算得出结果,将结果对应于相应的机械臂指令使其执行相应的药盒的搬运动作。
2.2系统硬件的结构设计
药盒图像检测与识别系统的首要过程就是对药盒图像进行采集,将图像转换成数字格式并传入计算机存储器[6]。然后计算机运用不同的算法来提高对检测有重要影响的图像像素,并识别图像关键特征。最后得出结论,控制机械臂下一步动作。数字图像的采集由相机、光源、镜头等装置构成[7]。
2.2.1相机的选择
目前的工业相机按照其感光芯片的不同主要可以分为CCD和CMOS两类。两种感光芯片对比如表2-1所示。
表2-1 CCD与CMOS比较
性能 | CCD | CMOS |
回应度 | 高 | 中 |
动态范围 | 高 | 中 |
一致性 | 高 | 中到高 |
快门一致性 | 快速,一直 | 较差 |
速度 | 中到高 | 更高 |
图像开窗功能 | 有限 | 非常好 |
抗拖影性能 | 高(可达到无拖影) | 高 |
时钟控制 | 多时钟 | 单时钟 |
工作电压 | 较高 | 较低 |
由于本系统只是进行二维药盒拍摄,并不需要极快的成像速度,而且一般来说CCD相机拍出的图像质量要优于CMOS相机,所以本系统选用CCD工业相机。
2.2.2光学镜头的选择
合适的镜头对系统能否发挥作用是极其重要的。镜头的选择过程也是将镜头的各项具体参数逐步明确化的过程。作为成像器件,镜头通常与光源、相机一起构成一个完整的图像采集系统,因此镜头的选择也会受到整个系统要求的制约。首先明确系统的分辨率,结合CCD像素尺寸就能知道放大倍率,再结合系统空间结构的约束就能知道大概的物象距离,进一步估算镜头的焦距。同时注意镜头的接口需要与相机的接口相匹配。
2.2.3光源的选择
在某些情况下,自然光并不能长期为系统相机提供稳定的拍摄环境,则需要外加稳定的光源来保证相机拍摄图像的质量。光源通过调制光束的方式将光线聚集到需检测的药盒上,使得药盒的特征显示更加突出不会被噪声所掩盖,能使背景与前景区域对比度增强,能减少因光线等因素造成的实验误差。因此,选择合适的光源可以大大提升药盒图像检测与识别系统的准确度。
常见的人工光源有LED、荧光灯、气体放电光源、卤素灯等等。LED的发光具有很强的方向性,结构紧凑,不仅响应速度快而且功率低,寿命长。荧光灯造价成本低,其特点是光谱不均匀分布,光线不集中很散。在大面积照明的环境一般用气体放电光源,该光源的结构紧凑,发光效率高。卤素灯,使用寿命比较短,常用在灵敏度高的环境下,一般由光纤传输。本系统选择性价比比较高的LED光源。
2.3本章小结
本章介绍了药盒图像检测与识别系统的整体结构构造,描述了如何选择合适的硬件搭建硬件平台。
第3章 图像识别技术基础原理
计算机对图像的识别本质上与人眼识别并不存在差别,这意味着图像识别技术本质上是依据对图像的记忆完成具体的识别工作。计算机图像识别就是在不用的图像之间筛选出有用信息,剔除干扰和冗余信息,最直观的就是找出图像之间的相似部分加以比对。计算机提取出的图像特征从根本上决定着图像识别算法的好坏,影响着图像识别的准确度[8]。图像特征主要有图像的颜色特征,纹理特征,形状特征和空间关系特征。本章主要介绍图像的颜色特征。
3.1图像颜色特征
在现实生活在所涉及到的大部分图像都是彩色的,尽管对于他们的处理与分析较之黑白图像要困难得多,但由于其广泛而迫切的需求,近年来已经被广大科研工作者所关注,业已成为研究的前沿和热点。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示:
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。