在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python中pyzxing安裝與測試方法

OpenCV學堂 ? 來源:OpenCV學堂 ? 作者:OpenCV學堂 ? 2022-06-12 16:50 ? 次閱讀

引子

Python中有幾個開源的條碼解析庫,之前我測試過pyzbar、libdmx這些庫,發現都是個錘子,主要是功能太弱了,解碼能力堪憂,之前我用ZXING C++版本寫過一很好用的條碼跟二維碼的解碼庫,于是我搜索一下看看是否有Python版本的ZXING,發現真有就是pyzxing,但是需要注意的是,它不是基于ZXing C++的,它是通過Python調用Java的依賴實現解碼的,而且默認是支持hard模型跟旋轉模式解碼的。

pyzxing安裝與測試

https://pypi.org/project/pyzxing/

pyzxing在python下安裝特別簡單,只需要一條命令行執行:

pip install pyzxing

但是它其實是依賴OpenJDK才能運行的,推薦最好安裝1.8版本,下載地址如下:

https://www.oracle.com/java/technologies/downloads/#jdk18-windows

安裝好之后,cmd運行測試如下:

fa9fe6c4-ea27-11ec-ba43-dac502259ad0.png

相關解碼函數

相關功能與函數說明可以直接訪問這個頁面:

https://pypi.org/project/pyzxing/

它支持三種輸入

-直接輸入圖像文件名,然后解碼-使用opencv-python讀取圖像,輸入numpy數據解碼-使用目錄通配符,支持一次多張解碼操作

相關函數演示代碼如下:

from pyzxing import BarCodeReader
reader = BarCodeReader()results = reader.decode('/PATH/TO/FILE')# Or file pattern for multiple filesresults = reader.decode('/PATH/TO/FILES/*.png')print(results)# Or a numpy array# Requires additional installation of opencv# pip install opencv-pythonresults = reader.decode_array(img)

OpenCV-Python解碼開發演示

在實際使用ZXING的解碼中,首先需要做的就是各種圖像預處理,因為多數工業噴碼的圖像質量都很一般,直接ZXING解碼一次成功率大概只有50%左右,都需要通過各種預處理之后輸入到ZXING二次解碼,二次解碼成功率會提升到95%左右,這個時候需要針對那些特別難的碼進行更深度的預處理跟重新裁剪然后三次解碼,總的三次解碼成功率可以達到99%左右。這個里面涉及特別多解碼細節問題。這里以最簡單的幾個工業常見的DataMatrix碼的解碼為例說明:
frompyzxingimportBarCodeReader
importcv2
importos

code_roi=cv2.imread(os.path.join(test_dir,f),cv2.IMREAD_GRAYSCALE)
cv2.bitwise_not(code_roi,code_roi)
ret,binary=cv2.threshold(code_roi,0,255,cv2.THRESH_BINARY|cv2.THRESH_OTSU)
se=cv2.getStructuringElement(cv2.MORPH_RECT,(3,3))
binary=cv2.erode(binary,se)
results=reader.decode_array(binary)
found=False
forresultinresults:
code_txt=result.get('parsed')
ifcode_txtisnotNone:
print("decodecontent:",code_txt)
print("codetype:",result.get('format'))
found=True

fad250a0-ea27-11ec-ba43-dac502259ad0.png

fb048f66-ea27-11ec-ba43-dac502259ad0.png

fb509e56-ea27-11ec-ba43-dac502259ad0.png

解碼輸出

fbfafe0a-ea27-11ec-ba43-dac502259ad0.png

原文標題:OpenCV+pyzxing實現條碼解析

文章出處:【微信公眾號:OpenCV學堂】歡迎添加關注!文章轉載請注明出處。


審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4338

    瀏覽量

    62761
  • python
    +關注

    關注

    56

    文章

    4800

    瀏覽量

    84820
  • 解碼庫
    +關注

    關注

    0

    文章

    3

    瀏覽量

    6586

原文標題:OpenCV+pyzxing實現條碼解析

文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學堂】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Pythondict支持多個key的方法

    ? 在Python,字典(dict)是一種非常強大的數據結構,它允許我們通過鍵(key)來存儲和檢索值(value)。有時候,我們可能想要根據多個鍵來檢索或操作字典的數據。雖然Python
    的頭像 發表于 11-29 15:59 ?186次閱讀

    電腦是已經安裝python2.7,為什么打開GUI的script window時,一直提示未找到python2.7?

    電腦是已經安裝python2.7,為什么打開GUI的script window時,一直提示未找到python2.7?
    發表于 11-14 07:50

    家用斷路器的安裝方法

    家用斷路器的安裝是家庭電氣安全的重要環節,其安裝方法需要細致且準確,以確保電路的安全可靠運行。以下是對家用斷路器安裝方法的詳細介紹,包括
    的頭像 發表于 08-23 11:36 ?1157次閱讀

    使用Python進行Ping測試

    在網絡工程,Ping測試是一種常用的網絡診斷工具,用于檢查網絡連接的可達性和響應時間。Ping測試通過向目標主機發送ICMP(Internet Control Message Protocol
    的頭像 發表于 08-12 17:56 ?543次閱讀
    使用<b class='flag-5'>Python</b>進行Ping<b class='flag-5'>測試</b>

    Python在AI的應用實例

    Python在人工智能(AI)領域的應用極為廣泛且深入,從基礎的數據處理、模型訓練到高級的應用部署,Python都扮演著至關重要的角色。以下將詳細探討Python在AI的幾個關鍵應用
    的頭像 發表于 07-19 17:16 ?1181次閱讀

    如何實現Python復制文件操作

    Python 中有許多“開蓋即食”的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在這篇文章,你將會看到一些用 Python 實現文件復制的特殊方法
    的頭像 發表于 07-18 14:53 ?438次閱讀

    基于Python的深度學習人臉識別方法

    基于Python的深度學習人臉識別方法是一個涉及多個技術領域的復雜話題,包括計算機視覺、深度學習、以及圖像處理等。在這里,我將概述一個基本的流程,包括數據準備、模型選擇、訓練過程、以及測試與評估,并附上簡單的代碼示例。
    的頭像 發表于 07-14 11:52 ?1284次閱讀

    安裝依賴的Python軟件包時報錯如何解決?

    安裝依賴的 Python 軟件包,出現了如下錯誤,請問如何解決,謝謝! Command \"E:/msys32/mingw32/bin/python2.7.exe E:/msys32
    發表于 06-26 07:32

    用離線安裝安裝的idf,其創建的Python虛擬環境無激活腳本是怎么回事?

    如題,用離線安裝安裝的idf,其創建的Python虛擬環境無激活腳本,具體如下圖所示: 反而用vscode插件安裝的idf有,如下圖:vscode插件
    發表于 06-11 06:49

    python 學習:在內網 python庫-numpy 安裝方法,升級pip3版本的指令

    \\\\numpy-1.26.4-cp311-cp311-win_amd64.whl 內網升級pip 升級版本的指令: python.exe -m pip install --upgrade pip--proxy \"http://gateway.schneider.z
    發表于 04-22 17:18

    Python自動化測試框架及其應用

    Pytest是一個非常成熟的全功能的Python測試框架,與python自帶的unittest測試框架類似,但是比unittest框架使用起來更簡潔,功能更強大。
    的頭像 發表于 04-03 16:15 ?568次閱讀
    <b class='flag-5'>Python</b>自動化<b class='flag-5'>測試</b>框架及其應用

    基于Python的地圖繪制教程

    本文將介紹通過Python繪制地形圖的方法,所需第三方Python相關模塊包括 rasterio、geopandas、cartopy 等,可通過 pip 等方式安裝
    的頭像 發表于 02-26 09:53 ?1257次閱讀
    基于<b class='flag-5'>Python</b>的地圖繪制教程

    如何使用linux下gdb來調試python程序

    如何使用linux下gdb來調試python程序? 在Linux下,可以使用GDB(GNU調試器)來調試Python程序。GDB是一個強大的調試工具,可以幫助開發者診斷和修復程序的錯誤。在本文
    的頭像 發表于 01-31 10:41 ?2667次閱讀

    itop-RK3588開發板機器視覺開發OpenCV-Python安裝

    itop-RK3588開發板機器視覺開發OpenCV-Python安裝
    的頭像 發表于 01-26 15:18 ?4235次閱讀
    itop-RK3588開發板機器視覺開發OpenCV-<b class='flag-5'>Python</b>的<b class='flag-5'>安裝</b>

    如何解決Python爬蟲中文亂碼問題?Python爬蟲中文亂碼的解決方法

    如何解決Python爬蟲中文亂碼問題?Python爬蟲中文亂碼的解決方法Python爬蟲過程,遇到中文亂碼問題是常見的情況。亂碼問題主
    的頭像 發表于 01-12 15:11 ?2474次閱讀
    主站蜘蛛池模板: 亚洲免费成人在线| 色人岛| 亚洲免费在线观看视频| 亚洲专区一路线二| 久久98精品久久久久久婷婷| 在线免费成人网| 香港三级理论在线观看网站| 婷婷六月久久综合丁香一二| 四虎黄色片| 美女免费视频是黄的| 国产三级精品播放| 亚洲天天| 久久国产成人午夜aⅴ影院| 亚洲欧美啪啪| 女攻各种play男受h| 亚洲毛片大全| 欧美瑟瑟| 888米奇在线视频四色| 亚洲欧美精品| 亚洲最大成人在线| 人人插人人射| 国产成人91青青草原精品| 天天爽夜夜爽每晚高澡| 操操片| 黄网站免费视频| 特级毛片aaa免费版| 性视频软件| 日韩一二三级| 国产三级精品最新在线| 天天舔| 欧美性猛| 一级片免费在线播放| 日本黄a| www亚洲免费| 精品乱人伦一区二区三区| 亚洲一卡2卡3卡4卡5卡乱码| 亚欧美色| 韩国三级hd中文字幕久久精品| 天天干天天干天天插| 黄色在线观看网站| 性欧美视频在线观看|