当前位置: 首页 > 专利查询>重庆大学专利>正文

工业CT断层序列图像直接生成数控加工代码的方法技术

技术编号:7441685 阅读:454 留言:0更新日期:2012-06-16 18:07
本发明专利技术公开了一种由工业CT断层序列图像直接生成数控加工代码的方法,对工业CT断层序列图像进行图像处理得到轮廓点数据,针对工业CT断层图像特征,在阈值分割图中根据轮廓点所围部分的灰度值设置标识位,并依据一个轮廓点的标识位进行判定,确定了内外轮廓;将单层图像的各个轮廓向内或向外偏移进行刀具半径补偿和加工余量预留;划分加工区域,生成各断层的刀具路径;连接各层的刀具路径并生成整个工件的数控加工代码。本发明专利技术只需要输入工件的工业CT断层序列图像,经过简单设置就可以直接输出该工件的数控加工代码,具有操作方便、处理效率高等优点。

【技术实现步骤摘要】

本专利技术涉及属于图像处理和计算机辅助制造领域,特别涉及一种工业CT断层序列图像直接生成数控加工代码的方法
技术介绍
随着工业CT系统检测精度的提高,工业CT在逆向工程中的研究和应用得到了越来越广泛的关注与重视。将工件的工业CT断层序列图像转换为数控代码,通常的方法是先建立该工件的三维模型,然后导入CAM软件自动生成数控代码,三维模型的品质直接关系到数控加工的效果。目前,基于工业CT断层序列图像的三维建模主要集中在三维表面建模和三维实体模型重构这两个方面。三维表面模型一般以STL格式保存,可以直接用来快速原型,也可以用来数控加工,但是STL模型常会有些缺陷,例如,表面存在孔洞、顶点未相连、法向向量反向、面重叠等,这些缺陷会使自动数控编程系统产生错误的刀路规划路径, 从而影响加工效果。三维实体模型重构可以通过专业的逆向软件进行重构或者是针对工业 CT断层序列图像自主开发的实体建模软件进行重构,但是模型重构方法现在还存在很多问题,例如,曲面构建过程中,对曲线和曲面的拟合误差的分配问题,多曲面连接问题,边缘提取精度问题等。虽然可以通过修复解决STL的缺陷问题,通过大量人机交互操作解决实体重构问题,但是这些修复操作带来了误差累积、模型变形等诸多新的问题。要完全解决上述这些问题将花费大量时间和精力,严重影响了后续的数控加工进度。因此如何将工业CT断层序列图像快速有效的转换为数控加工代码,是当前急需解决的问题。
技术实现思路
有鉴于此,为了解决上述问题,本专利技术提出一种不需要进行三维建模,由工件的工业CT断层序列图像直接生成数控加工代码的方法。本专利技术的目的是这样实现的本专利技术提供的工业CT断层序列图像直接生成数控加工代码的方法,包括以下步骤Sl 提取工业CT断层序列图像的轮廓点数据;S2 针对工业CT断层图像特征,在阈值分割图中根据轮廓点所围部分的灰度值设置标识位,并依据一个轮廓点的标识位进行判定,确定内外轮廓;S3 将单层图像的各个轮廓向内或向外偏移进行刀具半径补偿和加工余量预留;S4 划分加工区域,生成各断层的刀具路径;S5 连接各层的刀具路径并生成整个工件的数控加工代码。进一步,所述步骤Si,具体步骤如下Sll 对工业CT断层序列图像进行图像处理得到二值化的阈值分割图像,设黑点代表的是工件实体部分,白点代表的是加工区域;S12 提取轮廓边缘,所述轮廓边缘用黑点表示;S13 对轮廓边缘进行去噪、细化、连接,轮廓跟踪;S14 得到工业CT断层序列图像的轮廓点数据;进一步,所述步骤S2,具体步骤如下S21 设置断层图像各轮廓点的标识位flagl,并初始化所有轮廓点的标识位 flagl ;取标识位flagl为0 ;S22 将轮廓点数据按xy坐标系划分,χ坐标相同的轮廓点划分到一列,按照y坐标从小到大的顺序排序,并存入以向量形式建立的某一层图像的列数据结构Ri,其中i表示第i列;将每列第一个和最后一个点存入列数据结构Ri中;S23 将列数据结构Ri的起始位置和结束位置作为轮廓点数据的标识位flagl并保存在列数据结构Ri中;S24 若同一列数据结构Ri中有3个以上连续轮廓点数据,则只保留连续轮廓点数据的两端的轮廓点,删除连续轮廓点数据中位于中间部分的轮廓点数据;S25 对每列数据结构Ri自下往上逐对判断,若两相邻轮廓点之间,白点数多于黑点数,则两点之间为加工区域段,将第一个点的标识位flagl设置为1 ;反之,将第一个点的标识位flagl设置为0 ;每列数据结构Ri的最后一个轮廓点的标识位flagl为0 ;其中,标识位flagl = 1表示该轮廓点是其所在列的一段加工区域的起始点,标识位flagl = 0表示该轮廓点是其所在列的一段加工区域的终点;S26:将当前的轮廓点数据对应到二值化图像中,在二值化图像中判断对应列数据结构Ri的逐对轮廓点之间是否为加工区域段,并设置轮廓点的标识位flagl ;若轮廓点对应到二值化图像中的部分对应为加工区域,则将该段区域的起始点的标识位flagl设为1 ; 同理,若轮廓点对应到二值化图像中的部分对应为为非加工区域,则将该段区域的起始点的标识位flagl设置为0 ;S27 修正轮廓点数据的标识位flagl S28 根据修正后的轮廓点数据标识位flagl来判断内外轮廓,将经轮廓点标识位 flagl设置后的列数据结构Ri按照y值从小到大顺序进行查找,直到找到第一个属于该轮廓的轮廓点,即寻找该轮廓在本列数据结构Ri的下轮廓点;若此点的标识位flagl为1,则该点为本列的一段加工区域的起始点,可认定此轮廓为内轮廓,所围的为加工区域;反之若此点的标识位flagl为0,则此轮廓为外轮廓;进一步,所述步骤S27中修正轮廓点数据的标识位flagl,具体步骤如下S271 若标识位flagl出现“11”时,将第2个轮廓点作为白点加工区域,将处理后的数据保存在列数据结构Ri ;S272 若标识位flagl出现“00”时,将第3个轮廓点作为白点加工区域,将处理后的数据保存在列数据结构Ri ;S273 若标识位flagl出现“000”时,将第3和第4个轮廓点作为白点加工区域, 将处理后的数据保存在列数据结构Ri ;进一步,所述步骤S3,具体步骤如下对各个轮廓进行偏移,偏移量是刀具半径与加工余量之和,偏移量反映在断层图像上是所对应的像素数量;进一步,所述步骤S4,具体步骤如下S41 对各轮廓点数据设置用以标识轮廓点是否已被划分到加工区域的标识位 flag2,并将其初始化为0 ;S42 逐列查找相邻轮廓点的标识位f Iagl是否为加工区域,且标识位f lag2是否为未划分的加工区域,如果否,则该层的所有轮廓点都已经被划分到各个加工区域,将所有轮廓点的标识位flag2设置为1 ;S43:如果是,判断两相邻列的点PQ和P' Q'是否属于同一加工区域的点,同时, 将标识位f lag2设置为1 ;S44 如果是,则进入步骤S46 ;S45 如果否,返回步骤S42继续寻找新的加工区域;直到所有加工区域判定结束;S46 将加工区域的点按照双向铣削的走刀方式存储在刀具路径数据结构Areai 中,其中,i表示该断层图像的第i个加工区域;进一步,所述步骤S43判断两相邻列的点是否属于同一加工区域的点,具体包括以下步骤S431 若两相邻列的点PQ和P‘ Q'满足Py < Q/且P/ < Qy,则PQ和P‘ Q' 四点属于同一加工区域,将P' Q'的标识位flag2置1 ;其中,Py、Qy、Py'和Qy'分别表示两相邻列的点PQ和P' Q'的y坐标;S432 若两相邻列的点PQ和P' Q'满足Py > Q/或Qy < P/,则PQ和P' Q' 不属于同一加工区域;进一步,所述步骤S5,具体步骤如下S51 将单层的各个加工区域连接起来可以生成单层图像的刀具路径数据结构 Areai ;S52 将各层的刀具路径连接起来生成整个工件的整体刀具路径数据结构;S53 采用直线插补的方式将整体刀具路径数据结构转换为数控加工代码;进一步,所述S53中将刀具路径数据结构Areai转换为数控加工代码,具体步骤如下S531 输入工艺参数,包括切削参数、机床类型、刀具参数的设置;S532 依次读取各个加工区域Areai中点的信息,本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:段黎明陈中郭琰
申请(专利权)人:重庆大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术