<aside> 😀 位图转G代码轮廓加工轨迹程序I2G(img2gcode)
</aside>
最近实验室要用机器人写字画图,但流程都是利用已有的软件去生成g代码,心中不仅冒出个想法,其实可以利用opencv的二值处理和轮廓提取来直接获得轨迹坐标,然后生成g代码。于是用python写了程序。
附件下载:
1.使用import按钮导入图片

2.调节bl,bh设定转化成2值图像的值,gb调节降噪系数,使用view预览

3.觉得效果合适后根据h和w调节缩放系数s,然后设置抬刀高度,最后按gen生成nc文件

4.生成的nc文件可用cimcoedit等程序仿真查看

很简单的小程序,比起之前的流程,傻瓜式操作,其实好像微雕大师已经有这个功能,但是自己写了一下,觉得还是有点收获的。至少opencv用起来了。
图像加载 (im_b_clicked)
当用户点击加载图像按钮时,会触发im_b_clicked函数。此函数使用FileWindow类的实例来弹出文件选择对话框,让用户选择一个图像文件:
def im_b_clicked():
global pic, fpath
fw = FileWindow('Open')
flnm = fw.slot_btn_choosefile()
if flnm:
fpath = flnm[0]
pic = cv.imread(fpath, 0) # 使用OpenCV读取图像
# 更新界面上的图像尺寸信息
ui.h_le.setText(str(pic.shape[0]))
ui.w_le.setText(str(pic.shape[1]))
# 显示图像
img = QtGui.QPixmap(fpath).scaled(ui.img_v.width(), ui.img_v.height())
ui.img_v.setPixmap(img)
ui.view_b.setEnabled(True) # 启用查看按钮
else:
pass
这个函数中,cv.imread用于读取图像,QPixmap用于将图像显示在GUI上。
图像查看 (view_b_clicked)