.bolt | ||
output | ||
src | ||
.gitignore | ||
index.js | ||
package-lock.json | ||
package.json | ||
pnpm-lock.yaml | ||
README.md |
图片灰度处理工具
这个程序可以处理本地图片和网络图片,提供两种灰度处理算法,并支持生成 TSPL 打印指令:
- OTSU 自动阈值法
- 平均灰度法
功能特点
- 支持本地图片和网络图片处理
- 提供 OTSU 和平均灰度两种处理算法
- 自动创建输出目录
- 保留原始文件名
- 生成 TSPL 打印指令
- 提供详细的处理信息输出
算法说明
-
OTSU 算法:
- 自动计算最优阈值
- 适用于双峰直方图图像
- 输出文件名后缀为
_otsu.jpg
- 生成对应的
_otsu.tspl
打印指令文件
-
平均灰度算法:
- 使用图像的平均灰度值作为阈值
- 简单快速,适用于对比度较好的图像
- 输出文件名后缀为
_average.jpg
- 生成对应的
_average.tspl
打印指令文件
TSPL 打印指令
程序会为每个处理后的图像生成对应的 TSPL 打印指令文件:
- 自动计算适合的打印参数
- 支持自定义打印浓度和速度
- 生成标准 TSPL 指令格式
- 可直接发送到支持 TSPL 的打印机
使用方法
- 安装依赖:
npm install
- 运行程序:
npm start
输出说明
- 程序会在
output
目录下保存:- 处理后的图片(.jpg)
- TSPL 打印指令文件(.tspl)
- 控制台会显示:
- 图片尺寸
- 计算得到的阈值
- 图片输出路径
- TSPL 指令文件路径
自定义使用
你可以修改 src/index.js
中的参数来处理其他图片:
// 处理网络图片
const imageUrl = 'https://你的图片URL';
// 选择处理方法: 'otsu' 或 'average'
const result = await processor.processImage(imageUrl, outputDir, 'otsu');
你也可以自定义 TSPL 转换器的参数:
const tsplConverter = new TSPLConverter({
density: 10, // 打印浓度 (0-15)
speed: 3, // 打印速度 (1-4)
width: 384 // 打印宽度(点)
});</content>