
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2071
使用教程
环境要求
- 已安装 Go 环境(用于 go install 方式安装)
- macOS 用户可改用 Homebrew 安装
- 准备一张待转换的源图片(如 input.jpg),需为常见图片格式
- 如需二次开发,需具备 Go 语言基础
安装与启动步骤
-
1用 go install 安装
README 给出的官方安装方式,直接拉取 v2.0.0 版本的可执行命令行程序到 GOPATH/bin。
go install github.com/esimov/triangle/v2/cmd/triangle@v2.0.0 -
2macOS 用 Brew 安装
macOS 用户可通过 Homebrew 安装,无需自行配置 Go 环境,命令简短。
brew install triangle -
3或下载预编译二进制
不想装 Go 环境时,可从 GitHub releases 页面下载对应平台的二进制文件直接使用。
-
4转换图片
用 -in 指定源图片,也可直接传入图片 URL;工具会自动识别输入与输出文件类型,无需手动指定格式。README 节选未给出完整命令行示例,具体输出参数请以项目帮助信息为准。
-
5在 Go 代码中调用
以库的方式集成:创建 Processor 配置采样点数、模糊半径等参数,再 DecodeImage、Draw 生成三角化图像并编码输出。
proc := &triangle.Processor{ MaxPoints: 2500, BlurRadius: 2, PointRate: 0.75, BlurFactor: 1, EdgeFactor: 6, } img := &triangle.Image{ Processor: *proc, } input, err := os.Open("input.jpg") if err != nil { log.Fatalf("error opening the source file: %v", err) } src, err := img.DecodeImage(input) if err != nil { log.Fatalf("error decoding the image: %v", err) } res, _, _, err := img.Draw(src, *proc, func() {}) if err != nil { log.Fatalf("error generating the triangles: %v", err) } output, err := os.Create("output.png") if err != nil { log.Fatalf("error opening the destination file: %v", err) } png.Encode(output, res)
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
MaxPoints | 否 | 三角剖分使用的最大采样点数,越大细节越多 | 2500 |
BlurRadius | 否 | 高斯模糊半径,模糊越强输出越弥散 | 2 |
PointRate | 否 | 采样点比例,控制生成三角形的密度 | 0.75 |
BlurFactor | 否 | 模糊因子,影响边缘柔化程度 | 1 |
EdgeFactor | 否 | 边缘检测权重,决定边缘像素的保留强度 | 6 |
如何确认成功
命令行安装完成后可执行 triangle 命令;处理图片后在输出路径生成图像文件(如 output.png),用图片查看器打开确认已变为三角形风格。
常见问题
Q:没有 Go 环境可以安装吗?
A:可以。macOS 用 brew install triangle,其他平台可从 GitHub releases 下载预编译二进制文件,直接运行即可。
Q:支持哪些输入格式?
A:支持多种常见图片类型,且无需手动指定文件类型,工具会自动识别输入和输出的图片格式。
Q:输入图片能是网络地址吗?
A:可以,-in 参数支持直接传入图片 URL,工具会下载后再进行三角化处理。
Q:能输出矢量图吗?
A:可以,生成的图像支持保存为 SVG 文件,方便后续在矢量软件中编辑。
注意事项
- go install 方式需要本机已配置好 Go 环境及 GOPATH/bin 在 PATH 中。
- 工具可以递归并发处理整个目录及其子目录中的图片。
- 生成流程依次为模糊、灰度化、Sobel 边缘检测、卷积调整与德劳内三角剖分。
- 本教程未涉及的命令行参数因 README 节选未提供,请查阅项目 releases 或帮助信息确认。
核心亮点
- 纯 Go 实现,单二进制文件,跨平台易部署
- 算法成熟,生成效果稳定,艺术风格鲜明
- 提供命令行参数,可调节采样密度和颜色模式
不足之处
- 文档/社区待观察
- 功能相对单一,仅支持三角化风格,无更多滤镜或导出选项
适用场景
- 设计师快速生成低多边形风格素材
- 开发者学习德劳内三角剖分算法的实践案例
- 批量处理图片生成艺术效果用于社交媒体
替代项目
ImageTriangulation、Low-Poly Generator、triangulate
上一篇:TheChosenOne
下一篇:nft-generator-py
同类项目推荐
com.doji.diffusers
开源
在Unity里直接跑Stable Diffusion,无需后端
A Unity package to run pretrained diffusion models with Unity Sentis
photo-revival
开源
把日常照片一键变成诗意手绘插图,文艺感拉满
Codex skill for turning everyday photos into poetic white-paper hand-drawn illustrat···
ComfyUI-DyPE
开源
ComfyUI 里一键把文生图拉到 4K+,告别重复纹理和崩坏
ComfyUI DyPE+SEGA, enabling artifact-free 4K+ image generation: Z-Image, Qwen, Flux,···
comfyui-krea2edit
开源
在 ComfyUI 里按指令改图,主体身份不跑偏
Instruction-based, identity-preserving image editing for Krea 2 in ComfyUI — nodes ···
text-guided-image-colorization
开源
上传图片,指定对象颜色,一键生成彩色图像
This repository provides an interactive image colorization tool that leverages Stabl···
clarity-upscaler
开源
糊图一键变高清,免费开源随便用
Clarity AI | AI Image Upscaler & Enhancer - free and open-source Magnific Alternativ···
flutter_scribble
开源
涂鸦秒变精美图像,AI 帮你实现创意
Turn your scribbles into detailed images with AI
Forgedit
开源
用一句话改图,不用蒙版,AI 帮你搞定
The first paper discovered and applied Diffusion UNet's Disentanglement on structure···
RAT-GAN
开源
用文字描述,生成对应图像
A conditional GAN for text-to-image