欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何利用python檢測圖片是否包含二維碼

 更新時間:2020年10月15日 08:35:11   作者:羅華  
這篇文章主要介紹了如何利用python檢測圖片是否包含二維碼,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下

前言

因為一直在幾個平臺發(fā)文章,發(fā)現(xiàn)有些平臺并不會檢測文章中的圖片是否會包含二維碼,但是其中也有平臺會去檢測,所以就去研究了一下python如何去檢測。搜了一下大概有兩個庫可以使用:

  • 一個是zbar,這個庫是挺牛的,不過只支持python2.7,再者也沒有繼續(xù)維護,什么年代了,應(yīng)該沒人使用python2.7了吧(2020年1月以后連python2.7都不再維護了,有還在使用的童靴該跟上時代了)。
  • 一個是pyzbar,基本上傳承了zbar的功能。

安裝

pip install pyzbar -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
pip install Pillow

測試

準(zhǔn)備圖片

首先去二維碼生成網(wǎng)站準(zhǔn)備一堆二維碼作為測試準(zhǔn)備,我準(zhǔn)備了一些圖片,也有不包含二維碼的。

代碼

使用方法如下圖,圖片使用Pillow庫打開,再用pyzbardecode解碼,代碼如下:

import pyzbar.pyzbar as pyzbar
from PIL import Image,ImageEnhance
import os
img_dir = "..\\img"
def open_img():

  img_list = []
  for _,_,file_list in os.walk(img_dir):
    img_list = [os.path.join(img_dir,file) for file in file_list if file.endswith(".jpg") or file.endswith(".png") ]
  print("所有文件:{}".format(img_list))

  return img_list



def show():
  img_list = open_img()
  for _img in img_list:
    img = Image.open(_img)
    # img = ImageEnhance.Brightness(img).enhance(2.0)#增加亮度

    # img = ImageEnhance.Sharpness(img).enhance(17.0)#銳利化

    # img = ImageEnhance.Contrast(img).enhance(4.0)#增加對比度

    # img = img.convert('L')#灰度化
    texts = pyzbar.decode(img)
    if not texts:
      print("{}文件不存在二維碼".format(_img))
    for text in texts:
      t = text.data.decode("utf-8")
      if t:
        print("{}文件存在二維碼,內(nèi)容為:{}".format(_img,t))



if __name__ == '__main__':
  show()

注釋掉的代碼可以在圖片識別率低的情況下打開,以此提高圖片亮度。

運行結(jié)果

都能正確識別出來,效果還是可以的。

以上就是如何利用python檢測圖片是否包含二維碼的詳細內(nèi)容,更多關(guān)于python 二維碼的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python操作mongodb數(shù)據(jù)庫進行模糊查詢操作示例

    Python操作mongodb數(shù)據(jù)庫進行模糊查詢操作示例

    這篇文章主要介紹了Python操作mongodb數(shù)據(jù)庫進行模糊查詢操作,結(jié)合實例形式分析了Python連接MongoDB數(shù)據(jù)庫及使用正則表達式進行模糊查詢的相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • Python3.5裝飾器原理及應(yīng)用實例詳解

    Python3.5裝飾器原理及應(yīng)用實例詳解

    這篇文章主要介紹了Python3.5裝飾器原理及應(yīng)用,結(jié)合具體實例形式詳細分析了Python3.5裝飾器的概念、原理、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2019-04-04
  • 在Python中如何傳遞任意數(shù)量的實參的示例代碼

    在Python中如何傳遞任意數(shù)量的實參的示例代碼

    這篇文章主要介紹了在Python中如何傳遞任意數(shù)量的實參的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • tensorflow實現(xiàn)tensor中滿足某一條件的數(shù)值取出組成新的tensor

    tensorflow實現(xiàn)tensor中滿足某一條件的數(shù)值取出組成新的tensor

    今天小編就為大家分享一篇tensorflow實現(xiàn)tensor中滿足某一條件的數(shù)值取出組成新的tensor,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • 淺談優(yōu)化Django ORM中的性能問題

    淺談優(yōu)化Django ORM中的性能問題

    這篇文章主要介紹了淺談優(yōu)化Django ORM中的性能問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • 5行Python代碼實現(xiàn)圖像分割的步驟詳解

    5行Python代碼實現(xiàn)圖像分割的步驟詳解

    這篇文章主要介紹了5行Python代碼實現(xiàn)圖像分割的步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Python+tkinter使用80行代碼實現(xiàn)一個計算器實例

    Python+tkinter使用80行代碼實現(xiàn)一個計算器實例

    這篇文章主要介紹了Python+tkinter使用80行代碼實現(xiàn)一個計算器實例,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • python編寫根據(jù)年份判斷生肖實例

    python編寫根據(jù)年份判斷生肖實例

    這篇文章主要為大家介紹了python編寫根據(jù)年份判斷生肖實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • python密碼學(xué)列置換密碼學(xué)習(xí)

    python密碼學(xué)列置換密碼學(xué)習(xí)

    這篇文章主要為大家介紹了python密碼學(xué)列置換密碼學(xué)習(xí)的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Python可變對象與不可變對象原理解析

    Python可變對象與不可變對象原理解析

    這篇文章主要介紹了Python可變對象與不可變對象原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02

最新評論