#image #compare #diff #change #assert

bin+lib dify

Rust 中的快速像素级图像比较工具

5 个版本 (3 个破坏性更新)

0.6.0 2023 年 1 月 28 日
0.5.1 2022 年 8 月 6 日
0.4.1-alpha.02022 年 8 月 6 日
0.4.0 2021 年 8 月 8 日
0.3.6-alpha.02021 年 3 月 20 日

图像 中排名第 348

Download history 23/week @ 2024-03-11 15/week @ 2024-03-18 10/week @ 2024-03-25 36/week @ 2024-04-01 13/week @ 2024-04-08 8/week @ 2024-04-15 22/week @ 2024-04-22 8/week @ 2024-05-06 9/week @ 2024-05-13 8/week @ 2024-05-20 15/week @ 2024-05-27 16/week @ 2024-06-03 14/week @ 2024-06-10 14/week @ 2024-06-17 13/week @ 2024-06-24

每月下载量 58

MIT 许可协议 MIT

33KB
668 行代码(不含注释)

Dify Logo

Dify

Rust 中的快速像素级图像比较工具

Workflows - CI crates.io version crates.io license crates.io downloads docs.rs

特性

特性
支持 .png.jpg.jpeg.bmp 格式
比较不同格式,例如 .png.jpg
比较不同尺寸
支持抗锯齿
支持遮挡区域
支持 macOS、Linux 和 Windows

演示

预期 实际 差异
expected actual diff

预期图像和实际图像来自 mapbox/pixelmatch

入门

安装

从二进制文件

发布页面 下载您平台上的二进制文件。

Node.js 生态系统

请参考 dify-bin npm 包,它是对 dify 可执行文件的 node.js 包装器

npm install -g dify-bin # or `yarn global add dify-bin`
dify --help

使用方法

dify left.jpg right.jpg

如果 a.jpgb.jpg 不同,请检查 diff.png

有关更多详细信息,请参阅 dify --help

Docker

docker run -v $(pwd):/mnt/dify ghcr.io/jihchi/dify left.jpg right.jpg

基准测试

测试数据来自 mtrKovalenko/odiff

hyperfine \
  --warmup 1 \
  --ignore-failure \
  --export-markdown bench-dify.md \
  'dify tiger.jpg tiger-2.jpg -o tiger-diff.png' \
  'dify water-4k.png water-4k-2.png -o water-diff.png' \
  'dify www.cypress.io.png www.cypress.io-2.png -o www.cypress.io-diff.png'
命令 平均 [ms] 最小 [ms] 最大 [ms] 相对
dify tiger.jpg tiger-2.jpg-o tiger-差异.png 40.2 ± 0.4 39.6 42.3 1.00
dify water-4k.png water-4k-2.png-o water-差异.png 1754.9 ± 23.3 1716.2 1799.6 43.68 ± 0.74
dify www.cypress.io.png www.cypress.io-2.png-o www.cypress.io-差异.png 1228.0 ± 17.6 1203.6 1251.7 30.56 ± 0.54

在 MacBook Pro (13 英寸,2019,两个 Thunderbolt 3 端口) 上运行,macOS Catalina 10.15.7。

路线图

查看公开问题以获取提议的功能列表(以及已知问题)。

贡献

贡献使得开源社区成为一个学习、灵感和创作的绝佳场所。您所做出的任何贡献都备受赞赏。

  1. 分支项目
  2. 创建您的功能分支(git checkout -b feature/AmazingFeature
  3. 提交您的更改(git commit -m 'Add some AmazingFeature'
  4. 推送到分支(git push origin feature/AmazingFeature
  5. 打开拉取请求

许可证

在MIT许可证下分发。有关更多信息,请参阅LICENSE

致谢

依赖项

~14–24MB
~141K SLoC