【平头哥RVB2601开发板试用体验】显示二维码
## 前言
显示二维码最关键的步骤是如何把二维码转化为0,1数组。
我的步骤是:
(1)通过二维码工具生成一个黑白二维码。
(2)通过图像工具把二维码缩小成64*64的大小,并弄成bmp单色模式。
(3)通过代码转化为0,1数组。
(4)加载到板子上进行显示。
# 图片转01数python代码
随便写的代码,没管规范性。
```
# coding: utf-8
from PIL import Image
import numpy
l = []
im = Image.open('趣python.bmp')
matrix = numpy.asarray(im)
for ms in matrix:
tmp = []
for m in ms:
if m > 127:
tmp.append(0)
else:
tmp.append(1)
l.append(*32 + tmp + *32)
print(l)
```
得到的结果类似这样的:
```
[, ..., [..., 1, 1, 1, 1, 1]]
```
把 `[` 和 `]` 替换为 `{` 和 `}`,并把这个数组赋值给g_bm_rv就可以显示了。
# 结果展示
![](https://s2.loli.net/2022/05/24/tyo42XW8vnaULPI.jpg)
![](https://s2.loli.net/2022/05/24/RBmI1HNU53yniaP.jpg)
不得不说,还是黑底白字看起来更高级一些。
<p>但是白底黑字更容易扫描出来~</p>
<p>真能实用扫出来吗,编程这么短,效果却不错</p>
led2015 发表于 2022-5-25 21:26
真能实用扫出来吗,编程这么短,效果却不错
<p>可以的,这是花了大概半个小时折腾出来的,</p>
<p>你用微信扫一下第二个二维码试试!<img height="48" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/hug.gif" width="60" /></p>
<p> </p>
<p>其实可以处理的更好一点,处理的图有点糊了,</p>
<p>重点还是前期的图像处理,我后面改进一下,可以看到有一些边缘没处理好</p>
<p>我以为是动态生成的图片呢,原来是显示的bmp,可以试试动态生成。</p>
页:
[1]