衷心感谢,昨日发布的文章引来了众多友人的关注,并且有幸收获了第一条评论,网友Rick61提出,若人工智能无法自主识别CAD特征,则其应用价值将大打折扣,此观点我深以为然。
事实上,昨日午后我也尝试了让deepseek进行图像识别,实践结果显示目前deepseek已具备一定的图像解析能力,但由于仍处于deepseek发展的初期阶段,存在一些不足之处在所难免,或许将来autodesk公司会选择接入deepseek或chatgpt来解决这个问题,又或者通过二次开发?这个议题待有机会再深入探讨,接下来将展示如何利用DeepSeek实现从图像识别到生成自动绘图代码的过程。
首先,需要提供一张图像,为了确保试验的顺利进行,我选取了一张由CAD绘制的简单图形的截图,如下图所示
一张使用autoCAD绘制的图形截图
随后,需要输入提示信息:请运用autocad的lisp语言,依据所提供的autocad图形,生成一段自动绘图的代码,该图形的长边长度为20,短边长度为10,底部为圆弧,其半径为10,无需设置图层,仅使用直线和圆弧指令
在界面的右下角找到“+”号按钮上传图片,并填入提示信息,如下图所示:
DeepSeek经过一番处理,生成了相应的代码,如下所示:
将代码复制到记事本中,并保存为tc.lsp文件,然后将文件拖拽至autoCAD窗口中加载,接着在命令行输入函数名DRAWSHIELD并执行。(具体操作步骤可参考昨日发布的文章)
生成的图形效果如下:
最终呈现的图形与提供的图片在形状上保持一致,只是方向相反,总体而言已达到预期效果,这证明了deepseek能够识别简单的CAD图形,并能生成相应的重绘代码。相信随着deepseek的持续进化以及专业制图训练的加入,这些问题都将逐步得到解决。作为普通人,我们能做的只有耐心等待。
ps:或许有人会认为我的提示信息过于冗长,其实这就像引导一个孩子学习CAD绘图一样,作为初学者,他们并不熟悉许多规则,需要大人的悉心指导,因此必须详细说明,例如明确要求使用直线和圆弧进行绘图,是为了避免他们习惯性地使用pline(多段线指令)。相信随着专业训练的深入,这些细节将不再需要。
若感兴趣,不妨阅读我前几日撰写的关于使用autoCAD自带脚本生成图形的文章,如有任何疑问,欢迎留言交流!
本次生成的lisp代码如下:
(defun c:DRAWSHIELD ()
; 绘制顶部水平线(长边20)
(command “_.line” “0,0” “20,0” “”)
; 绘制右侧垂直线(短边10)
(command “_.line” “20,0” “20,10” “”)
; 绘制底部半圆(半径10)
(command “_.arc”
“20,10” ; 起点:右侧顶点
“c” ; 圆心模式
“10,10” ; 圆心坐标(X坐标为中间点,Y坐标保持高度)
“0,10” ; 终点:左侧顶点
)
; 闭合左侧垂直线
(command “_.line” “0,10” “0,0” “”)
(princ) ; 静默退出
)