隐形二维码
一、 功能
将二维码隐藏在图片中,实现既能正确扫码又保持图像原貌不影响图片美观的效果。
二、 核心技术点
图片的每一个像素点都是由RGB三个颜色纸组成的,每个颜色值利用8个Byte来表示。人眼的辨别能力是有限的,以蓝色为例,色值#0000FF(二进制11111111)和色值#0000FE(二进制11111110)所表示的颜色的差别人眼很难区分,而机器却可以对其进行区分与识别,从而两个色值即可以存放不同的信息。每一个像素点由三种颜色组成,对其他两种颜色红和绿进行相同的操作,即可以在一个像素点中存储2^3=8位字节。由此将二维码隐藏在图片当中。
三、 模块
1. 统一像素
即将二维码和图片进行相同大小及数量的像素块的分割(或将二维码嵌入图像并且将嵌入部分的图像进行提取再进行等量像素分割)
2. 隐藏
依次读取二维码的每一个像素点并将二维码黑白部分进行编码,例如黑色用尾数为0(R:#ff0000 G:#00ff00 B:#0000fe)表示,白色部分用尾数为1(R: #ff0001 G:#00ff01 B:#0000ff )表示,并将其带入到彩色图片中相应的像素点内,对图片进行转化。
3. 提取
依次读取图片每一个像素点,与隐藏的方法相反,将其转化为黑白二维码。
4. 扫码识别
需要在普通二维码扫码软件的基础上添加二维码的提取功能。
5. 评估
可以从信息容量、容错率、译码可靠性(读码错误率)、保密性防伪性、成本方面进行评估。