成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Python掃一掃二維碼的兩種方式詳細(xì)說明

89542767 / 1594人閱讀

  在教學(xué)Python解決二維碼圖片的過程當(dāng)中,大家看到基本上都是“用python形成霸氣二維碼圖片”、“用Python制運(yùn)作的圖二維碼圖片”什么的文章內(nèi)容。但是關(guān)于應(yīng)用Python大批量掃一掃二維碼的實例教程,實屬罕見。文中就給大家歸納了Python掃一掃二維碼的兩種方式,有興趣的話可以學(xué)習(xí)下


  序言


  近期在尋找材料時,發(fā)覺了一則10年前新聞報道:二維碼圖片將成為線上與線下重要通道。從目前的移動互聯(lián)來說,付款收款二維碼/防疫健康碼這些和我們密切相關(guān),二維碼圖片的確變成了生活當(dāng)中必不可少的一部分。

01.png

  在學(xué)習(xí)Python處理二維碼的過程中,我們看到的大多是“用python生成酷炫二維碼”、“用Python制作動圖二維碼”之類的文章。而關(guān)于使用Python批量識別二維碼的教程,并不多見。所以今天我會給大家分享兩種批量識別二維碼的Python技巧!


  pyzbar+PIL


  二維碼又稱二維條碼,常見的二維碼為QRCode,QR全稱QuickResponse,是一個移動設(shè)備上超流行的一種編碼方式。

02.png

  我們在之前的文章《輕松識別數(shù)百個快遞單號》,Python的第三方模塊pyzbar不僅可以識別一維條形碼,也可以很方便地處理二維碼的識別。


  不過pyzbar庫需要搭配PIL或者opencv使用,主要是為了利用Image.open()或者cv2.imread()來讀取圖片文件。


  在交互式環(huán)境中輸入如下命令:


  from pyzbar.pyzbar import decode
  from PIL import Image
  decocdeQR = decode(Image.open("D:/test.jpg"))
  print(decocdeQR[0].data.decode('ascii'))


  輸出:

03.png

  這樣就輕松實現(xiàn)了二維碼的解析與識別。


  cv2


  另外,opencv模塊其實自帶二維碼識別功能。


  注1:對于opencv模塊,安裝時需要輸入pipinstallopencv-python,但在導(dǎo)入的時候采用importcv2。


  注2:使用opencv模塊時,文件路徑、圖片名稱都不要包含中文,否則會報錯。


  在交互式環(huán)境中輸入如下命令:


  import cv2
  qrcode_filename = "D:/test.jpg"
  qrcode_image = cv2.imread(qrcode_filename)
  qrCodeDetector = cv2.QRCodeDetector()
  data, bbox, straight_qrcode = qrCodeDetector.detectAndDecode(qrcode_image)
  print(data)

  輸出:

04.png

  如上所示,我們同樣實現(xiàn)了二維碼的解析與識別。在上述代碼中,第四行代碼中qrCodeDetector.detectAndDecode(qrcode_image)有三個返回值。其中data是解碼后的內(nèi)容,如我們打印輸出結(jié)果所示。


  bbox是指二維碼輪廓的四個角,從左上角順時針轉(zhuǎn)的。而straight_qrcode是二維碼的原始排列,也就是每個點是0還是255的一個矩陣,白色是255,黑色是0。

05.png

  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/128802.html

相關(guān)文章

  • 微信公眾號 一掃

    使用 weixin-java-tools 完成公眾端喚起微信掃一掃 如果沒有引入相關(guān)的jar 可以查看之前的文章 點我 Java代碼 使用 wxMpService 很方便獲取一些微信需要的參數(shù) @Autowired private WxMpService wxMpService; @GetMapping(path = scannerQrcode) public...

    msup 評論0 收藏0
  • HBuilder開發(fā)WAP2APP增加一掃功能

    摘要:需求明確開啟常見的條碼二維碼及一維碼的掃描識別功能,可調(diào)用設(shè)備的攝像頭對條碼圖片掃描進(jìn)行數(shù)據(jù)輸入。通過可獲取條碼碼管理對象。知識點明確模塊提供開啟攝像頭掃描功能。載入中取消退出頁面從相冊選擇二維碼 需求明確 開啟常見的條碼(二維碼及一維碼)的掃描識別功能,可調(diào)用設(shè)備的攝像頭對條碼圖片掃描進(jìn)行數(shù)據(jù)輸入。通過plus.barcode可獲取條碼碼管理對象。 知識點明確 Barcode模塊:p...

    _ipo 評論0 收藏0
  • HBuilder開發(fā)wpp2app增強(qiáng)性能之實現(xiàn)一掃

    摘要:需求明確開啟常見的條碼二維碼及一維碼的掃描識別功能,可調(diào)用設(shè)備的攝像頭對條碼圖片掃描進(jìn)行數(shù)據(jù)輸入。通過可獲取條碼碼管理對象。載入中取消退出頁面從相冊選擇二維碼 需求明確 開啟常見的條碼(二維碼及一維碼)的掃描識別功能,可調(diào)用設(shè)備的攝像頭對條碼圖片掃描進(jìn)行數(shù)據(jù)輸入。通過plus.barcode可獲取條碼碼管理對象。 實現(xiàn)步驟 創(chuàng)建條碼掃描識別控件實例對象,涉及到Barcode模塊,具體參...

    waltr 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<