Matlab批量生成仪器设备标识二维码
实验室中,仪器设备一般贴上标识卡。但是,在有限的空间上不能写上过多的信息。二维码,充满在我们的生活中。比如:核酸检测中场地码、行程码、与核酸码都是二维码。但是,我们知道原理吗?我们却很少了解无时无刻都离不开的东西。
二维码,就是一堆的01(黑与白)数据。对于希望传递的信息,用约定的编码方式转为01阵列。根据01阵列生成二维码图像。扫一扫相当于解码。所以根据约定的编码方式,个人也可以制作二维码。如果你头脑记忆力超群,或者可以肉眼编码与解码。针对不同的解码方式,可以开发不同功能的二维码。比如微信的扫一扫、手机内置的扫一扫、支付宝的扫一扫不是完全一样的。
个人如何制作二维码?一般使用在线的方法或者WPS与OFFICE软件。也有些企业自己制作专门的软件,生成二维码。我们一般用PYTHON语言或JAVA语言调用JAVA的ZXing工具包实现二维码的编码与解码。对于Matlab语言,网上的资料比较少。本文用Matlab实现。当然也是使用ZXing工具包。从网上下载的Matlab函数包比较难实现批量化。自己通过改造,初步实现此功能。
一、基本流程
1.信息字符串的生成;
2.qrcode_gen调用函数将信息编码为01的矩阵;
3.imshow显示图像;
4.为方便浏览二维码,text写上二维码题目;
5.print打印二维码;
6.根据实际情况,裁切二维码。裁掉边缘的空白;
7.imwrite输出最后的二维码图片。
注意:qrcode_gen生成二维码矩阵的时候,可以设置一些参数。比如信息的编码方法。为了支持中文,一般设定为“UTF-8”。二维码的大小(Size),需要设定为17+4N。本文使用77。代码如下:
二、实际效果
1.读取已经收集好的仪器设备信息Excel表。串联信息。得到如下的二维码:
微信的扫一扫一般都不支持换行功能。所以这里的二维码都没有换行的功能。可能一些专门的二维码解码器才可以。如果是这样的话,需要在希望换行的地方增加换行符号。值得注意的是:读取Excel时候,得到的信息可能是数值型。所以这里代码用num2str转换为字符。
2.把得到的二维码插入到仪器设备的标识卡上。打印在空白的不干胶上。裁切后,可以贴在仪器设备上。
这是本人原创文章。可以阅读我的公众号文章 https://mp.weixin.qq.com/s/mnj1Wc_2ltGZtNsEXU6FCA