#image #image-processing #ocr #thinning #image-thinning

imgthin

一种用于细化数字图案的快速并行算法

2个版本

0.1.1 2020年8月4日
0.1.0 2020年8月3日

#676 in 图像

MIT 许可证

29KB
743

imgthin-rs

GitHub Actions MIT licensed Released API docs Master API docs

受快速并行细化数字图案算法启发的Rust图像细化库。

一种用于细化数字图案的快速并行算法(改进/原始)。

研究摘要

本文提出了一种快速并行细化算法。它由两个子迭代组成:一个旨在删除东南边界点和西北角点,另一个旨在删除西北边界点和东南角点。端点和像素连通性得到保留。每个图案被细化到单位厚度的“骨架”。实验结果表明,这种方法非常有效。

安装

imgthin 作为依赖项添加到 Cargo.toml 文件中。

要使用张和苏恩的原始算法:-

# Cargo.toml

imgthin = "0.1.1"

要使用杨圣和文星改进的算法:-

# Cargo.toml

imgthin = {version = "0.1.1", features=["improved_ysc_whh"]}

用法

use imgthin::imgthin;

//    _________ Vec<Vec<bool>>
//    v
let thinned = imgthin(vec!(
     vec!(false, false, true, true, false),
     vec!(false, false, true, true, false),
     vec!(false, false, true, true, false)
)).expect("Can not thin the image.");

展示

通过 细化
imgthin-rs Passed Image imgthin-rs Thinned Image
imgthin-rs Passed Image imgthin-rs Thinned Image

贡献

欢迎所有PR和问题。星标也欢迎。

无运行时依赖

特性