二維碼又稱二維條碼,常見的二維碼爲QR Code,QR全稱Quick Response,是一個近幾年來移動設備上超流行的一種編碼方式,它比傳統的Bar Code條形碼能存更多的信息,也能表示更多的數據類型。算法
設備掃描二維條碼,經過識別條碼的長度和寬度中所記載的二進制數據,可獲取其中所包含的信息。app
在過去的 2017 年,支付寶的線下場景不斷擴大,收錢碼、口碑、共享單車、充電寶、停車繳費等產品讓咱們的生活愈來愈便利。二維碼由於成本低、兼容性好成爲了線上線上最主要的鏈接工具,也所以面臨更多新的挑戰。由於二維碼是一種點陣式信息編碼方式,任何視覺上的缺損、彎曲以及光線做用都會極大的影響識別成功率,若是識別困難也就意味着用戶可能選擇放棄,影響支付體驗也影響用戶心智。工具
用戶掃碼體驗的最關鍵的主要有如下幾個因素:測試
本文將從以上三個方面,分享支付寶掃碼技術團隊是如何爲用戶打造一個又準又快又穩的極致掃碼體驗。優化
咱們對用戶反饋進行了大量統計分析,發現絕大部分識別失敗都是由於二維碼並不標準,而且很遺憾的是在使用咱們早期的掃碼版本進行識別率測試時發現識別率只有 60%;ui
策略1:優化樁點查找算法長寬比耐受編碼
以往的掃碼算法,檢查長寬比例時容許差別 40%,可是因爲使用前向偏差,判斷結果跟長寬的前後順序相關,這會致使有些長寬比失調的碼,橫着掃不出來,可是旋轉 90 度豎着卻能掃出來了(^OMG^)。spa