二维码在线解码器
上传二维码图片自动识别解码,或手动输入矩阵进行解码,纯JavaScript实现
上传二维码图片
支持 PNG / JPG / BMP
点击选择图片或拖拽图片到此处
建议上传清晰、正放的二维码图片
二维码解码说明
本工具使用纯 JavaScript 实现二维码解码,包含图像预处理、寻像图形定位、模块矩阵提取、格式信息解析与数据解码等完整流程,无需任何第三方解码库。
图像上传模式:支持点击选择或拖拽上传二维码图片。解码器先将图像转为灰度,再使用 Otsu 自适应阈值算法进行二值化,随后在行列方向扫描 1:1:3:1:1 比例的寻像图形以定位二维码位置与方向,进而估算模块大小并采样出完整的模块矩阵。
手动矩阵模式:作为图像识别的可靠补充。用户可手动输入二维码的黑白模块矩阵(1/#/X 表示黑,0/./空格 表示白),解码器将直接解析该矩阵,适用于图像识别失败或需要精确验证的场景。
解码流程:读取格式信息获取纠错等级与掩码编号 → 对数据区域反向应用掩码 → 按 Zigzag 折线顺序读取数据位流 → 反交错还原数据码字与纠错码字 → 通过 Reed-Solomon 校验检测错误 → 根据模式指示符(数字/字母数字/字节)还原原始文本。
纠错说明:本工具实现 Reed-Solomon 校验子计算以检测数据是否完好。当图像清晰、扫描无误差时,校验子全为零,可直接解码;当检测到错误码字时会提示错误数量,此时建议使用更清晰的图片或手动矩阵模式。
使用建议:上传图片应尽量正放、清晰、高对比度;避免过度缩放、旋转或反光;若自动识别失败,可尝试手动矩阵输入模式获得稳定结果。