现在只要说“扫一扫”,很多人都会下意识地拿出手机,启动微信的“扫一扫”功能。那么,微信为什么能快速识别二维码呢?
二维码(二维条码)是用某种特定的几何图形按一定规律,在平面上(二维方向上)分布黑白相间的图形,来记录数据的一种符号信息。它巧妙地利用构成计算机内部逻辑基础的“0”和“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图像输入设备或光电扫描设备自动识读,实现快速识别二维码的功能。
扫码过程其实就是不断对焦、采集图像、识别的过程,采集的帧数越少,代表扫码速度越快。微信团队经过分析数据得出结论,微信正常图片的解码速度为:苹果系统约为5毫秒,安卓系统约为12毫秒。将整个扫码预判模块置于核心识别引擎之前,就能实现快速过滤大量无码图像,使信息响应更加及时,提高扫码过程中的流畅度。
“扫一扫”作为微信核心功能,微信团队专门开发了二维码和条形码识别“大杀器”——识别引擎QBar。QBar对二维码容错性解码算法、多语言字符检测算法等均进行了数十项优化,在识别率和识别速度上得到了提升,成功提高了解码的概率。同时,微信图像技术团队给每个步骤都做上“标签”,目的是找出错误信息,对失败信息再设置相应的二次检测流程,进行更“努力”的尝试,且越到后面的步骤,表明图中存在二维码的概率越大。通过这样每步找错、多次识别解码,大大提高了手机扫描二维码的成功率。一些二维码就算穿孔、污损或者弯折,一样能被识读,被正确还原。
冗长的输入,因“扫一扫”变得简单;安全的“扫一扫”,让二维码成了网络的新入口。
赞(0)
最新评论