chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內(nèi)不再提示

Python中pyzxing安裝與測試方法

OpenCV學堂 ? 來源:OpenCV學堂 ? 作者:OpenCV學堂 ? 2022-06-12 16:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引子

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

pyzxing安裝與測試

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

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

pip install pyzxing

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

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

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

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

相關解碼函數(shù)

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

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

它支持三種輸入

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

相關函數(shù)演示代碼如下:

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解碼開發(fā)演示

在實際使用ZXING的解碼中,首先需要做的就是各種圖像預處理,因為多數(shù)工業(yè)噴碼的圖像質(zhì)量都很一般,直接ZXING解碼一次成功率大概只有50%左右,都需要通過各種預處理之后輸入到ZXING二次解碼,二次解碼成功率會提升到95%左右,這個時候需要針對那些特別難的碼進行更深度的預處理跟重新裁剪然后三次解碼,總的三次解碼成功率可以達到99%左右。這個里面涉及特別多解碼細節(jié)問題。這里以最簡單的幾個工業(yè)常見的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實現(xiàn)條碼解析

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


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

    關注

    3

    文章

    4409

    瀏覽量

    66983
  • python
    +關注

    關注

    57

    文章

    4861

    瀏覽量

    89671
  • 解碼庫
    +關注

    關注

    0

    文章

    3

    瀏覽量

    6677

原文標題:OpenCV+pyzxing實現(xiàn)條碼解析

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    導軌水平安裝安裝面不平的解決方法

    水平安裝微型導軌時,安裝面不平整會導致導軌變形、運行卡滯甚至縮短壽命。
    的頭像 發(fā)表于 12-16 17:57 ?916次閱讀
    導軌水平<b class='flag-5'>安裝</b><b class='flag-5'>中</b><b class='flag-5'>安裝</b>面不平的解決<b class='flag-5'>方法</b>

    沒有專利的opencv-python 版本

    所有 官方發(fā)布的 opencv-python 核心版本(無 contrib 擴展)都無專利風險——專利問題僅存在于 opencv-contrib-python 擴展模塊的少數(shù)算法(如早期 SIFT
    發(fā)表于 12-13 12:37

    Termux調(diào)試圣誕樹Python代碼

    在Termux調(diào)試Python代碼(以圣誕樹立例)非常簡單,核心分為環(huán)境準備、代碼編寫、運行調(diào)試三個步驟,下面一步步教你操作: 一、環(huán)境準備(首次使用需做) Termux默認可能沒有Python
    發(fā)表于 12-09 09:02

    開關電源測試流程方法合集

    開關電源作為電子行業(yè)中最為常見的電源類型,其應用領域十分廣泛,作為電源模塊測試系統(tǒng)的專業(yè)供應商,納米軟件接觸的用戶,有很大一部的客戶需要我們?yōu)槠涮峁╅_關電源的測試流程和方法,作為其自
    的頭像 發(fā)表于 10-31 09:36 ?842次閱讀
    開關電源<b class='flag-5'>測試</b>流程<b class='flag-5'>方法</b>合集

    MA35-RTT如何安裝 Python 和 Libusb (Windows) ?

    MA35-RTT:如何安裝 Python 和 Libusb (Windows) ?
    發(fā)表于 09-03 08:30

    termux如何搭建python游戲

    Pygame),確保已安裝`clang`編譯器:`apt install -y clang` 3. 權限問題:若需訪問手機文件,安裝`termux-setup-storage`并授權存儲訪問權限。 通過以上步驟,即可在Termux
    發(fā)表于 08-29 07:06

    Python字符串逆序有幾種方式,代碼是什么

    對于一個給定的字符串,逆序輸出,這個任務對于python來說是一種很簡單的操作,畢竟強大的列表和字符串處理的一些列函數(shù)足以應付這些問題 了,今天總結了一下python對于字符串的逆序輸出的幾種常用
    的頭像 發(fā)表于 08-28 14:44 ?807次閱讀

    linux虛擬環(huán)境調(diào)用Linux 版matlab編譯的python庫時出錯

    、readme.txt、 requiredMCRProducts.txt、init.py、CAO_python.ctf。 在linux環(huán)境按照以下步驟安裝matlab runtime2018b: ① cd到MCR
    發(fā)表于 07-18 10:40

    【VisionFive 2單板計算機試用體驗】安裝openplc

    官網(wǎng)看到開發(fā)板可以安裝測試openplc,下面來體驗下openplc功能。 一、安裝軟件 1.1、安裝軟件包 root@starfive:~# sudo apt-get install
    發(fā)表于 07-15 23:30

    Hi3861 wifiiot_hispark_pegasus 按教程安裝python3 -m pip install build/lite 報錯

    問題1: 報錯: 問題2: 我安裝網(wǎng)上搜的方法執(zhí)行 python3 -m pip install --user ohos-build==0.4.3 hb -v [OHOS INFO] hb
    發(fā)表于 06-14 16:48

    ?如何在虛擬環(huán)境中使用 Python,提升你的開發(fā)體驗~

    RaspberryPiOS預裝了Python,你需要使用其虛擬環(huán)境來安裝包。今天出版的最新一期《TheMagPi》雜志刊登了我們文檔負責人NateContino撰寫的一篇實用教程,幫助你入門
    的頭像 發(fā)表于 03-25 09:34 ?661次閱讀
    ?如何在虛擬環(huán)境中使用 <b class='flag-5'>Python</b>,提升你的開發(fā)體驗~

    使用Python實現(xiàn)xgboost教程

    使用Python實現(xiàn)XGBoost模型通常涉及以下幾個步驟:數(shù)據(jù)準備、模型訓練、模型評估和模型預測。以下是一個詳細的教程,指導你如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發(fā)表于 01-19 11:21 ?2268次閱讀

    Flexus 云服務器 X:Python 安裝的極致便捷之旅

    前言 ????????Python 作為一種高級編程語言,因其簡潔易讀的語法和強大的庫支持,在數(shù)據(jù)科學、人工智能、Web 開發(fā)等領域得到了廣泛應用。然而,不同平臺上的安裝過程可能會有所不同,尤其是在
    的頭像 發(fā)表于 01-07 17:00 ?562次閱讀
    Flexus 云服務器 X:<b class='flag-5'>Python</b> <b class='flag-5'>安裝</b>的極致便捷之旅

    華為云 Flexus X 實例下的場景體驗——小企業(yè)使用 Python 語言——超迅速搭建簡單公網(wǎng) API 接口服務

    ,希望本文可以對小企業(yè)來說有一定的幫助作用。 目錄 前言 環(huán)境說明 連接并安裝 Python 環(huán)境 Python Web 接口編碼 上傳 WebAPI 接口代碼 安裝 flask
    的頭像 發(fā)表于 12-27 13:46 ?889次閱讀
    華為云 Flexus X 實例下的場景體驗——小企業(yè)使用 <b class='flag-5'>Python</b> 語言——超迅速搭建簡單公網(wǎng) API 接口服務

    Triton編譯器安裝步驟詳解

    必要的依賴: sudo apt-get updatesudo apt-get install build-essential cmake python3 python3-dev 對于 Windows(使用 WSL): 在 WSL
    的頭像 發(fā)表于 12-24 17:35 ?4694次閱讀