Discode 一种圆形二维编码

2023-08-03 00:20:13 +08:00
 7gugu

前言

之前微信、抖音和支付宝都相继推出了各自的私有二维编码系统,感觉这种异形的二维编码系统真的是好有趣,不过经过查询后,感觉互联网上对于这种异形二维编码貌似没啥文章介绍其中的技术原理,因此自己琢磨着搞了一个简易版的圆形二维编码系统,希望可以通过这个 Demo 向大家分享一下这种异形的二维码究竟是如何被设计、编码以及解码。

编码截图

编码特性

  1. 支持 30Bit data
  2. 支持 a-z, A-Z, 0-9, "@", "." 总共 64 种字符
  3. 中心支持自定义 Logo

TODO

Demo 目录

目前这个 Demo 一共包含了四个部分,第一、二部分的博文主要是从设计者的角度分享了我对于异形二维码的思考以及如何设计一个编码字典;第三部分主要是通过博文概要的说明了其中的技术原理;第四部份则是代码 Demo ,其中包含了一个可以生成 Discode 编码的页面以及一个用于识别该编码的网页。

  1. [Discode] 为啥要设计新的二维码系统?
  2. [Discode] 设计 Discode
  3. [Discode] 生成 & 识别 Discode
  4. Github 代码仓库

联系方式

最后

如果可以得到大家的 Star 将不胜感激。如果有其他想法,也欢迎在评论区中和善的分享你的 idea ,希望大家能够喜欢这个项目。

10760 次点击
所在节点    分享创造
35 条回复
loopinfor
2023-08-05 17:33:19 +08:00
镜头不是都会变形吗?
7gugu
2023-08-05 18:06:05 +08:00
@NoOneNoBody 如果纯实用角度来看是的,条形码太普遍了,满大街都是。但如果还要考虑到辨识度那一定是这种圆形更有辨识度。
7gugu
2023-08-05 18:06:24 +08:00
@loopinfor 轻微变形不影响
7gugu
2023-08-05 18:09:50 +08:00
@NoOneNoBody 还有一点其实这种圆形码要是想支持自动矫正难度也不大,只要定义一个规则来矫正就好。比如微信的小程序码是就是通过一个大的定位点+三个小定位点,来标识正确的方向。
lhbc
2023-08-08 16:22:45 +08:00
连 URL 都不支持吗
7gugu
2023-08-08 16:26:37 +08:00
@lhbc 不支持,不过这种环形码也不咋需要支持 URL ,能够存储一个乱序字符串就好了。类似短链一样,具体的信息可以存到服务器上。
mdn
2023-08-08 16:28:50 +08:00
请问 4 个角如何确定方向了,微信小程序设计的圆形二维码是 3 个角可以确认从何处开始读取
7gugu
2023-08-08 16:36:15 +08:00
@mdn
目前的处理办法是直接不确认,直接让用户自己找一个正确方向就好了,反正扫不出来也是用户的问题😂,苹果就是这么干的。

如果要优化,目前有两种方案。一个是把四个中的一个定位点做大一点或者小一点作为锚点,用来做旋转矫正,比如小程序码就是比较大的那个定位点永远都是在右下角,抖音码永远都是在右上角;二是占用编码区做一个特殊标记来做旋转矫正。不过这个我一直没空去弄,就这么放着了。
mdn
2023-08-08 17:00:40 +08:00
@7gugu #28 如果不需要确认,为何不取消了
或者重新设计下,目前感觉 4 个角在边上太突兀了
7gugu
2023-08-08 17:09:31 +08:00
@mdn 功能上是用来作为定位点,另外就是人为制造一点差异,毕竟去掉了就是一比一复刻 Apple Clips Code 了
icenine
2023-08-17 14:01:50 +08:00
感觉鲁棒性比较差
7gugu
2023-08-17 14:40:07 +08:00
@icenine 问题不大,这种私有编码主打的就是一个特别,能把它从 QRCode 中区分出来就行。如果要改进的话,编码上可以引入 RS 码等纠错码、图形上加入方向标识、识别算法上可以引入各种矫正算法。
Arthur2e5
2023-08-22 20:44:19 +08:00
@7gugu 不好意思,Clips 是可以反着扫的
7gugu
2023-08-23 10:33:22 +08:00
@Arthur2e5 那就是说 Apple 除了规范外,在识别层面上还做了额外的处理了。这个也很好解决,只要修改我前面说的特殊定位点即可实现旋转纠正。
z6vPWtWJiu3mpB30
2023-09-02 11:09:28 +08:00
说到美观,apple clip 是好看的,就是找不到能有能生成外观与 apple clip 相似的二维码生成器

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/961950

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX