基于ios系统的利用图像生成G代码的方法

文档序号:10653525阅读:945来源:国知局
基于ios系统的利用图像生成G代码的方法
【专利摘要】本发明涉及基于ios系统的利用图像生成G代码的方法,包括如下步骤:1、图片灰度化;2、图像噪声过滤;3、图像二值化;4、找出图像的连通域轮廓;5、遍历轮廓;6、生成G代码文件;7、预览G代码文件。本发明简单可靠,算法简单,计算量小,生成G路径能直接预览出效果,并且可以实现多参数调节,生成的G代码空行程少,路径优化好。
【专利说明】
基于i os系统的利用图像生成G代码的方法
技术领域
[0001]本发明涉及图像生成G代码技术领域,具体的说是基于1s系统的利用图像生成G代码的方法。
【背景技术】
[0002]G代码是数控程序中的指令,一般也称为G指令,是一种运行于数控加工系统(CNC)中的程序,不同的G代码表示CNC中不同操作,比如,GO表示快速定位,Gl表示直线插补。通过编写不同的数控指令,可以生成一定的刀具路径,通过控制电机的转动,让数控加工系统加工出对应路径形状的路径。
[0003]而目前利用CNC系统可以加工出很多有价值的产品,其中,3D打印机、激光雕刻机等即是3轴CNC的典型应用。
[0004]由于3D打印日趋成熟,当用户想要利用手机拍照并打印出相应图片,主要是将图片生成G代码并传输到3D打印机等CNC设备中去。其中关键步骤即是利用图像处理技术实现图像转换成G代码。
[0005]如中国专利申请号为201610077708.6提出的一种基于视觉控制的磨边装置及方法,描述了一种利用图像处理方式实现的生成G代码的过程,该种方法没有对采集到的图像进行预处理,会导致图像处理过程中的噪声对最后G代码产生影响。并且该方法采集的是最外面的一层轮廓,进而对最外层轮廓进行G代码生成,而非对整体的轮廓进行加工,并且该方法利用的是一套视觉系统,但实际应用到的只是两张图片。
[0006]如中国专利申请号为201610077868.0提出的一种基于视觉控制的餐盘磨边方法,亦是只对最外层加工,并考虑到对刀具的补位和偏移,3D打印机中类似刀具模块部分即是打印头,但是打印头非可偏移和可动,所以该类方法在3D打印机中不适用。
[0007]又如中国专利申请号为201110378812.6提出的工业CT断层序列图像直接生成数控加工代码的方法,描述了一种对图像中的轮廓进行G代码生成,但是该方法加工的模块是分割后的区域,分割出来的图像部分不加工;并且该方法没有对区域进行划分,生成的刀具路径是一张整体的刀具路径,而非一个模块、一个模块的刀具路径;该方法也对刀具模块进行了补位和偏移,3D打印系统中并不适用。
[0008]当用户使用移动终端如苹果设备(iPhone/iPad等)实现拍照3D打印功能,目前此类技术在windows等桌面系统中趋于成熟,但是该类技术均被各大主流厂商掌握,无法被广泛应用,尤其在移动操作系统(比如Android和1s)中,该类技术还未得到应用,而且,基于图片的G代码基本都是遍历图像每一个像素点后生成,使得路径不合理,刀具空行程多。

【发明内容】

[0009]由于opencv图像处理库目前已经支持1s系统,将图像在1s系统中的处理变为方便,将图像在1s系统中处理后生成G代码,最后利用手持设备实时控制CNC “绘画”出图像变为可能。
[0010]结合上述技术,本发明提出一种基于1s系统的利用图像生成G代码的方法。
[0011]基于1s系统的利用图像生成G代码的方法,包括以下步骤:
[0012]首先,图片灰度化:由于采集到的图片多为彩色图片,彩色图片由3种基本颜色组合而成,即红色、蓝色、绿色,图像学中称为RGB图像,每种颜色又分为0-255种不同的梯度,不同的梯度表示该颜色不同的强度,O最弱,255最强。如果RGB值为0,则图片为黑色,为255,三种颜色组合成为白色。其中3种颜色不便处理,需要将图片生成只一种颜色的组合,即将图片灰度化,将3通道的图像映射成只有一种颜色的图像,灰度图像利用亮度来显示,也有0-255种梯度。
[0013]其次,图像平滑化:由于图像中存在一定的噪声,需要将噪声过滤,可以选择一定的高斯核实现高斯滤波。可以实现图像的去噪,让图像更加平滑,方便后期的处理。使用者调用opencv_1s库中高斯滤波函数并指定高斯核大小和对应高斯参数,实现图像的高斯去噪。
[0014]第三步,图像二值化:滤波后的图像仍然由0-255个梯度组成,需要将图像生成只有O和255亮度值组成,称为图像的二值化。主要通过一定的阈值,将亮度值大于阈值的像素点设置为255,小于阈值的像素点设置为0,将图像生成只有黑和白两种像素的点,便于后面的图像处理,其中,opencvjos库中自带对应接口实现图像二值化,调用者需要指定阈值或者利用默认阈值。
[0015]第四步,找出图像的连通域轮廓:利用opencv中的寻找连通域的方法找到图像中的轮廓,使用者可以根据图像中连通域的面积设定阈值,在轮廓中过滤掉小于阈值的轮廓。
[0016]第五步,遍历轮廓:根据图像尺寸和数控系统的可以加工的最大尺寸来设定一定的比例,根据程序算法流程进行设定G代码。具体为循环轮廓的行和列,遍历轮廓中每个像素的值,同时设定两个布尔型变量初始值为NO,用于作为遍历的像素值是否为255的tag。通过判断tag值设定G代码的类别。当判断出第一次遍历到值为255的点时,设定GO到指定点,同时设定TO值为YES,G1Z轴到指定点,G1X,Y到指定点,同时可以设置一些开关量等需要处理和加工的参数。当第一次遍历到值为O时,设定GlZ轴到指定点,同时设定TO值为YES,当判断出连续的O点时,不做任何改变,当判断出连续的255点时,可以设定GlX,Y到指定点,也可以不设定,根据实际需求,如果图像较小,或者图像比例和模型比例较小,建议设定,如果比例较大,可以不设定,该算法重要的点是要判断Tag值来实现,方便程序流程的理解和实现。
[0017]第六步,生成G代码文件:组合G代码开头和结尾,生成G代码文件。程序开头可以根据需要设定的对应的数控系统设定一定的开关量等设置信息,程序结尾设置数控系统归零。
[0018]第七步,预览G代码文件:在Repetier-Host软件中预览对应的G代码文件,该软件可以直观的判断G代码的刀具路径,判断生成的路径的可靠性。
[0019]本发明的有益效果是:
[0020]本发明简单可靠,算法简单,计算量小,生成G路径能直接预览出效果,并且可以实现多参数调节,生成的G代码空行程少,路径优化好。
【附图说明】
[0021]下面结合附图和实施例对本发明进一步说明。
[0022]图1为本发明的流程图;
[0023]图2为本发明的实施例中使用的原图;
[0024]图3为本发明的实施例中图像阈值处理后找出的轮廓图;
[0025]图4为本发明生成G代码的算法流程图;
[0026]图5为本发明的路径预览图。
【具体实施方式】
[0027]为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面对本发明进一步阐述。
[0028]如图1至图5所示,基于1s系统的利用图像生成G代码的方法,包括如下步骤:
[0029]由于采集到的图片多为彩色图片,如图2所示,首先,需要将图片生成只一种颜色的组合,即将图片灰度化,将3通道的图像映射成只有一种颜色的图像,灰度图像利用亮度来显示,也有0-255种梯度。
[0030]其次,由于图像中存在一定的噪声,因此,调用opencvjos库中高斯滤波函数,并指定高斯核大小和对应高斯参数,实现图像的高斯去噪。
[0031]第三步,图像二值化。滤波后的图像仍然由0-255个梯度组成,需要将图像生成只有O和255亮度值组成,称为图像的二值化。主要通过设定一定的阈值,将亮度值大于阈值的像素点设置为255,小于阈值的像素点设置为0,将图像生成只有黑和白两种像素点,便于后面的图像处理,具体地,opencv_iοs库中自带对应接口实现图像二值化,调用者需要指定阈值或者利用默认阈值。
[0032]第四步,找出图像的连通域轮廓。利用opencv中的寻找连通域的方法找到图像中的轮廓,根据图像中连通域的面积设定阈值,在轮廓中过滤掉小于阈值的轮廓,处理后的图像如图3所示。
[0033]第五步,遍历轮廓。根据图像尺寸和数控系统的可以加工的最大尺寸来设定一定的比例,按照如图4所示程序算法流程进行设定G代码。具体为循环轮廓的行和列,遍历轮廓中每个像素的值,同时设定两个布尔型变量初始值为NO,用于作为遍历的像素值是否为255的tag ο通过判断tag值设定G代码的类别。当判断出第一次遍历到值为255的点时,设定数控机床的GO操作到指定点,同时设定TO值为YES,操作Gl沿Z轴到指定点,操作Gl沿X轴和Y轴到指定点,同时可以设置一些开关量等需要处理和加工的参数。
[0034]当第一次遍历到值为O时,设定操作Gl走Z轴到指定点,同时设定TO值为YES,当判断出连续的O点时,不做任何改变,当判断出连续的255点时,可以设定操作Gl走X轴和Y轴到指定点,也可以不设定,设定与否根据实际需求,如果图像较小,或者图像比例和模型比例较小,建议设定,如果比例较大,可以不设定。该算法重要的点是要判断Tag值来实现,方便程序流程的理解和实现。
[0035]第六步,组合G代码开头和结尾,生成G代码文件。程序开头可以根据需要设定的对应的数控系统设定一定的开关量等设置信息,程序结尾设置数控系统归零。
[0036]第七步,在Repetier-Host软件中预览对应的G代码文件,该软件可以直观的判断G代码的刀具路径,判断生成的路径的可靠性,具体如图5所示,由图中可以看出,路径基本在小区域范围内移动,空行程少。
[0037]以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明内。本发明要求保护范围由所附的权利要求书及其等效物界定。
【主权项】
1.基于1s系统的利用图像生成G代码的方法,包括如下步骤: 第一步,图片灰度化; 第二步,图像噪声过滤; 第三步,图像二值化; 第四步,找出图像的连通域轮廓; 其特征在于:还包括以下步骤: 第五步,遍历轮廓:根据图像尺寸和数控系统的可以加工的最大尺寸来设定一定的比例,根据程序算法流程进行设定G代码; 第六步,生成G代码文件:组合G代码开头和结尾,生成G代码文件; 第七步,预览G代码文件,判断生成的路径的可靠性。2.根据权利要求1所述的基于1s系统的利用图像生成G代码的方法,其特征在于:第一步中,灰度的图像利用亮度来显示。3.根据权利要求1所述的基于1s系统的利用图像生成G代码的方法,其特征在于:第四步中,根据图像中连通域的面积设定阈值,在轮廓中过滤掉小于阈值的轮廓。4.根据权利要求1所述的基于1s系统的利用图像生成G代码的方法,其特征在于:第六步中,程序结尾设置数控系统归零。
【文档编号】G06T7/00GK106020120SQ201610614980
【公开日】2016年10月12日
【申请日】2016年7月29日
【发明人】郭龙, 金力, 陈双, 万立浩
【申请人】芜湖哈特机器人产业技术研究院有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1