Microsoft Agent Framework能根据图片生成矢量图吗?
摘要:本文尝试测试豆包的 Doubao-Seed-2.0-pro 的根据图片生成矢量图的能力,测试结论是生成效果很差
输入的测试图片:
提示词代码:
ChatMessage message =
new ChatMessage(ChatRole.User,
[
new TextContent("根据以下图片,生成矢量图的 Path 路径,要求 Path 路径是 svg 路径。你可以生成多段 Path 路径,分别给这些 Path 路径着色"),
new UriContent("http://cdn.lindexi.site/lindexi-20260313160236.jpg","image/jpg")
])
;
豆包输出如下:
思考:
用户现在需要把这张钢铁侠的图转成svg的path,首先我得先理清楚结构,分不同的部分,背景、铁霸王、托尼的脸、马克装甲各个部分,每个path给对应的fill对吧?首先先确定svg的视口,比如设成width="600" height="1080" viewBox="0 0 600 1080",这样比例和原图一致。
首先先做背景:深蓝色的背景,path就是整个画布,fill="#0a2a4a"对吧。然后是铁霸王的部分,首先铁霸王的装甲是青灰色,#3a5f6e,然后他的眼睛是发光蓝,#00ccff,胸口反应炉也是亮蓝,还有高光白色的部分。然后是托尼的部分:头发是黑色#111111,肤色是浅黄#f2d2a0,胡子是黑色。然后他的装甲:红色部分#e63923,金色部分#f0c239,反应炉是亮蓝#e0f7ff,还有金属高光的部分,还有黑色的描边,哦对,美漫风格都有黑描边,所以可以加个stroke="#000000" stroke-width="2"之类的。
不对,用户要的是path路径,每个路径对应不同的颜色,我得尽量分主要的块,不可能太细,但是主要部分要对。首先先列出来各个部分:
1. 背景路径:直接M0 0 H600 V1080 H0 Z,填充深蓝色#082440,没有描边。
2. 铁霸王主体装甲路径:大概的轮廓,填充#335a6b,描边黑色。
3. 铁霸王眼睛:两个小的path,填充#00d9ff,外发光?哦不对svg可以加滤镜,但是用户要path的话就直接填亮色就行。
4. 铁霸王胸口反应炉:外圈是银灰色#94a3a8,内圈亮蓝#45e0ff,中心白色#ffffff。
5. 托尼的头发:路径填充#121212,描边黑。
6. 托尼的面部皮肤:填充#f0c99d,描边黑。
7. 托尼的胡子、眉毛:填充#121212,无额外描边。
8. 托尼装甲红色主体部分:填充#e03020,描边黑。
9. 托尼装甲金色部分:填充#eebb30,描边黑。
10. 托尼胸口反应炉:外圈银灰#b4c0c4,内圈亮蓝#b0f0ff,中心白色#ffffff。
11. 手里的头盔:金色部分#eebb30,红色部分#e03020,描边黑。
12. 所有轮廓的描边?不对,其实每个path都带stroke就可以了。
哦对了,我要把path写出来,还要说明每个的颜色,还要注意是简化的矢量版,因为原图细节很多,不可能完全还原,是风格化还原对吧?还要和用户说明,这个是核心元素的简化矢量路径,你可以根据需求调整细节和配色。
等下,path的坐标要对应viewBox,我尽量写的合理。比如背景最简单:<path d="M0 0 h600 v1080 H0 z" fill="#07233f" />
然后铁霸王的轮廓:比如<path d="M600 220 c-10 -30 -30 -40 -60 -45 l-30 -120 c-10 -40 -40 -60 -80 -60 h-40 c-40 0 -70 20 -80 60 l-20 125 c-20 5 -40 15 -60 40 v200 c10 20 30 35 60 40 v200 c20 20 40 35 80 50 l260 30 c20 5 60 -10 90 -40 z" fill="#365b6d" stroke="#000" stroke-width="2.5" />这个大概是铁霸王的整体形状对吧。
