基于Qt的激光雕刻上位机软件设计与实现*
2017-04-24李兰芳杨星海辛化梅
李兰芳 杨星海 侯 伟 辛化梅
(1.山东师范大学物理与电子科学学院生命与健康研究院山东省医学物理图像处理技术省级重点实验室 济南 250014) (2.济南大学信息科学与工程学院 济南 250022)
基于Qt的激光雕刻上位机软件设计与实现*
李兰芳1杨星海2侯 伟1辛化梅1
(1.山东师范大学物理与电子科学学院生命与健康研究院山东省医学物理图像处理技术省级重点实验室 济南 250014) (2.济南大学信息科学与工程学院 济南 250022)
在Qt5.4开发环境和平台上,设计实现激光雕刻系统上位机软件。通过对基本图像信息的处理与转换,并结合数据传输的可靠形式,实现上位机对下位机的可靠通信。软件系统将图像处理的方法应用到激光雕刻领域,能够支持常见的图像格式。
Qt; 图像处理; 可靠通信; 激光雕刻
1 引言
随着科学技术的迅速发展,激光雕刻技术融合了计算机、电子信息、材料等学科的技术与特点,因其加工精度高、无污染、噪音小等良好的生产状况,被广泛应用于汽车、电子、广告、包装等众多行业,与人们的生活息息相关。由于激光器的制造技术已经较为成熟,因此,对激光设备的有效控制和激光加工工艺水平的提高成为了激光雕刻技术应用领域竞争的焦点[1~3]。
Qt是一个跨平台应用程序和UI开发框架,使用Qt只需一次性开发应用程序,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序[4]。本文实现了一种基于Qt开发的上位机处理系统,优化了对多种图片处理的支持,基于网络可靠协议TCP的上位机与下位机通信方式与传统串口通信相比,具有通信速度快且实时性高的特点,并进一步提高了激光雕刻的实用性能。
2 图形文件分析与处理
常见的激光雕刻策略多采取对位图图像进行处理,将原来图像信息转化成雕刻系统所能识别的新信息,包括灰度化、二值化等处理过程,其处理流程如图1所示。
图1 传统图像处理流程
具体而言就是通过不同的算法将初始位图(如BMP图像)进行灰度化、二值化等操作,并计算每个像素点灰度值的过程。与此同时,激光头以一定的扫描方式在X-Y轴进行扫描,并在图像每个像素所对应的雕刻位置,根据该像素灰度值的不同,来达到激光探头的出光强度,从而进行激光雕刻[5]。
本文设计的上位机软件支持对图像的灰度化、二值化、旋转、反色、保存等功能。其中灰度化功能的实现主要根据浮点算法,其基本公式为
Gray=R*0.3+G*0.59+B*0.11
(1)
所谓二值化就是将图像分割为前景与背景的形式,将处在某一水平的灰度值人为地划分为0和1的形式,基于此,本文利用可视化操作对图像进行二值化,并利用经验值手动设置阈值的方法对图像进行二值化处理。与以往操作相比虽然操作的次数多了,但是对图像的二值化水平提高了,具体实现过程如下:
1) 计算原图像的最大灰度值和最小灰度值,分别记为gi和gu,令初始阈值为
(2)
2) 根据阈值T0将图象分割为前景和背景,分别求出两者的平均灰度值Ab和Af
(3)
(4)
对图像进行二值处理后,需要得到图像的边缘信息。雕刻机会针对具有灰度信息的边缘部分进行提取,设定边缘距离,保证行程的设定在正常范围内。
利用Sobel算子实现边缘检测[6~7]。Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好地消除噪声的影响。在Sobel算子实际使用中,常用如下两个模板来检测图像边缘:
检测水平边沿横向模板:
(5)
检测垂直平边沿纵向模板:
(6)
计算图像的每一个像素的横向及纵向梯度大小可用以下公式:
(7)
计算梯度方向可用如下公式:
(8)
如果式(8)中的角度θ等于零,即代表图像该处拥有纵向边缘,左方较右方暗。
图像的旋转就是将图像的X坐标与Y坐标进行互换。旋转后图像的高度与宽度会根据旋转的角度进行变化,但图像本身的数据信息没有变化[8],如图2所示。
图2 图像旋转示意图
传统意义上的雕刻手段偏重于针对某一类图像进行雕刻处理,这无疑大大降低了激光雕刻的实用特性。结合实际雕刻需求,利用Qt的QPixmap类实现了将常见的图像格式(如jpeg、png、tif)等非位图图像转换为位图图像数据进行雕刻。另外,考虑到实际雕刻中需要设置雕刻幅面的大小,系统默认支持最大为800*600幅面的大小,可根据实际需求自行设定。
3 激光雕刻软件的数据通信与有效 控制
3.1 数据可靠通信分析
由于激光雕刻属于加工控制类操作,不仅需要保证数据传输的准确性,还要保证操作的实时性。众所周知,TCP协议是面向连接、保证高可靠性(数据无丢失、数据无错误、数据无重复到达)传输层协议[9],并且TCP协议程序使用的是client/server模式,在Qt中提供了QTcpSocket类来编写客户端程序,使用QTcpServer类编写服务器端程序,可以实现基于Qt的TCP通信方式很好地满足激光雕刻的应用条件。其具体应用原理如图3所示。
图3 FTP(File Transfer Protocol,文件传输协议)通信原理
服务器端通过端口监听客户端,一旦发现客户端的连接请求,就发出newConnection()信号,可以将此信号关联到我们自己的槽函数,进行数据的发送。同时在客户端,一旦有数据到来就会发出readyRead()信号,可以关联此信号,进行数据的接收[10]。
系统采用基于TCP协议的网络连接方式,通过IP地址以及端口的验证机制,保证数据传输的准确性。TCP通信方式很好地满足激光雕刻的应用条件,符合当前实际应用的需求。
3.2 雕刻状态及位置的设定
关于对激光强度的控制,一般采取对图像的灰度信息进行提取,然后根据提取到的灰度值大小进行数量级的量化,再依据同一数量级灰度值进行扫描雕刻[11]。由于较难掌握激光功率大小,经过此种方式打印出来的图像与原图像相比,雕刻品质不佳。
对二值图像灰度值为“0”的点的提取将成为上位机与下位机数据交换的关键。由于上位机本身发送的数据就是下位机需要雕刻点的位置信息,因此下位机可以在需要的点直接进行雕刻,转换成激光器的开关状态。只发送需要雕刻点位置信息数据的方式可以提高上位机与下位机数传输效率。
对于图像数据信息坐标的标定,可以利用Qt的QPainter类在图像上进行坐标的标定,这样可以提高雕刻坐标定位的准确性,进一步完善操作性能。系统设有上、下、左、右四个方向的定位控制,可根据实际幅面距离的大小选择步进单位长度。
4 实例展示
本文所设计的软件功能主要包括对图像的基本处理、初始幅面大小的设定、雕刻文件的传输、雕刻位置及激光强度的设定。在进行雕刻时,首先对图像进行二值化操作,然后进行转位图操作,并将得到的位图数据进行保存。通过网络连接将相关操作指令发送到下位机后,再进行雕刻操作。限于格式的要求,这里仅对图像二值化处理后的效果进行显示,如图4所示。
图4 软件界面效果图
5 结语
系统实现了基于Qt的激光雕刻上位机的设计,并结合图像处理方面的相关知识实现了对多种图像数据的有效处理。与传统方法相比,本文采用的方法除了支持多种图像格式以外,还可以进行二值阈值最优化选取,可以大大提高图像处理的效果。此外,上位机与下位机通过网络方式进行数据通信,在保证数据传输可靠性的前提下,进一步提高了机器操作的实时性,与传统软件相比具有较高的实用价值。
[1] 张天,王新政,唐道华.基于Delphi的激光雕刻上位机软件设计与实现[J].桂林理工大学学报,2012,35(1):131-135. ZHANG Tian, WANG Xinzheng, TANG Daohua. Implementation of Laser Carving System Based on Delphi Design[J]. Journal of Guilin University of Technology,2012,35(1):131-135.
[2] 崔承云,崔熙贵,石贵峰.激光雕刻非金属固体材料的表面形貌[J].红外与激光工程,2014,43(12):3932-3936. CUI Chengyun, CUI Xigui, SHI Guifeng. Surface morphology of non-metallic solid materials after laser carving[J]. Infrared and Laser Engineering,2014,43(12):3932-3936.
[3] 郑锦生,陈松青.激光雕刻技术的发展[J].机床与液压,2006(8):228-231. ZHENG Jinsheng, CHEN Songqing. The Progress of Laser Engraving Technology[J]. Machine Tool & Hydraulics, 2006(8):228-231.
[4] 霍亚飞.Qt及Qt Quick开发实战精解[M].北京:北京航空航天大学出版社,2012. HUO Yafei. QT and QT quick development of actual[M]. Beijing: BeiHang University Press,2012.
[5] 吕欣泽.基于DXF文件的激光雕刻系统的设计与实现[D].天津:天津师范大学,2010. LV Xinze. Design and Realization of laser engraving system based on DXF file[D]. Tianjin: Tianjin Normal University,2010.
[6] 蒋伟,陈辉.基于分数阶微分和Sobel算子的边缘检测新模型[J].计算机工程与应用,2012,48(4):182-185. JIANG Wei, CHEN Hui. New edge detection model based on fractional differential and Sobel operator[J]. Computer Engineering and Applications,2012,48(4):182-185.
[7] 杨新华,寇为刚.基于FPGA的Sobel算子图像边缘检测算法[J].仪表技术与传感器,2013(1):102-104. YANG Xinhua, KOU Weigang. Sobel Operator Image Edge Detection Algorithm Based on FPGA[J]. Instrument Technique and Sensor,2013(1):102-104.
[8] 宋振电.传能光纤激光雕刻系统图像处理的研究[D].秦皇岛:燕山大学,2009. SONG Zhendian. Research on image processing of optical fiber laser engraving system[D]. Qinhuangdao: Yanshan University,2009.
[9] 严冰,刘加海,季江民.Linux程序设计[M].杭州:浙江大学出版社,2012. YAN Bing, LIU Jiahai, JI Jiangmin. Beginning Linux Programming[M]. Hangzhou: Zhejiang University Press,2012.
[10] 张艺濒,张志斌,赵咏,等.TCP与UDP网络流量对比分析研究[J].计算机应用研究,2010,27(6):2192-2197. ZHANG Yibin, ZHANG Zhibin, ZHAO Yong, et al. Comparative analysis on TCP and UDP network traffic[J]. Application Research of Computers, 2010,27(6):2192-2197.
[11] 周永飞,赵海峰,黄子强,等.激光打标系统及工艺研究[J].电子设计工程,2011,19(2):126-129. ZHOU Yongfei, ZHAO Haifeng, HUANG Ziqiang, et al. Laser lithography system and its technological research[J], Electronic Design Engineering, 2011, 19(2): 126-129.
Design and Implementation of Laser Carving System Based on Qt
LI Lanfang1YANG Xinghai2HOU Wei1XIN Huamei1
(1. Shandong Province Key Laboratory of Medical Physics and Image Processing Technology,School of Physics and Electronics, Institute of Biomedical Sciences, Shandong Normal University, Jinan 250014)(2. School of Information Science and Engineering, University of Jinan, Jinan 250022)
The host computer software for laser engraving system is designed based on the Qt5.4 development environment and platform. Combined with reliable data transmission, communication between the host computer and the lower computer is established by basic image information processing and conversion. The image processing method is applied to the field of laser engraving, and the software system can support common image formats.
Qt, image processing, reliable communication, laser engraving Class Number TP391
2016年10月9日,
2016年11月29日
国家自然科学基金(编号:61401259);中国博士后科学基金(编号:2015M582128)资助。
李兰芳,男,硕士研究生,研究方向:信号与信息处理。杨星海,男,博士,副教授,研究方向:信号与信息处理。侯伟,女,副教授,研究方向:信号与信息处理。辛化梅,女,博士,副教授,研究方向:信号与信息处理。
TP391
10.3969/j.issn.1672-9722.2017.04.033