1 个不稳定版本

0.1.0 2021年4月3日

#9#人类


用于 symcode-webapp

MIT/Apache

93KB
2K SLoC

SymCode库

人类和机器的符号条码

故事 | 演示 | 使用方法

由🦀构建,由Vision Cortex研究小组提供

概要

symcode是编程库,提供设计符号条码的基础设施,同时支持Acute32的演示实现。

一个SymCode由一个在网格结构中排列的符号数组组成。

可以自定义的内容

  1. 符号集
  2. 查找器的形状和位置
  3. 排列(3x3、4x5等)和填充(符号之间的空间)
  4. 编码和错误检测方案(针对不同的有效负载大小)

我们提供了一个配置为3x3的演示实现Acute32:5个符号 * 5位/符号 = 20位有效负载 + 5位校验和

第二个配置可以编码更多的位:5x4 -> 16个符号 * 5位/符号 = 64位有效负载 + 16位校验和

架构

/acute32模块实现了扫描器特性。

/interfaces模块定义了扫描器和生成器不同阶段的抽象概念

  1. SymcodeScanner 扫描管道

  2. Finder 用于从彩色图像中检测查找元素

  3. Fitter 用于从查找候选者中找到正确的透视变换

  4. Reader 用于扫描图像以读取一系列符号

  5. Decoder 用于将符号数组解码成位字符串

  6. Encoder 用于将位字符串编码成Symcode表示

  7. SymcodeGenerator 用于为给定的Symcode表示生成Symcode图像

  8. Debugger 用于开发期间使用,有助于可视化管道阶段

依赖项

~4.5MB
~85K SLoC