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

親手教你實(shí)現(xiàn)pynq-z2條形碼識(shí)別功能

 更新時(shí)間:2022年07月21日 15:54:45   作者:雪天魚  
這篇文章主要介紹了pynq-z2條形碼識(shí)別功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1. linux配置

要想實(shí)現(xiàn)本項(xiàng)目,首先解決以下三大要點(diǎn),也著實(shí)浪費(fèi)了很多時(shí)間

1.1解決pynq聯(lián)網(wǎng)

pynq聯(lián)網(wǎng)的教程網(wǎng)上可謂是不少,但是我卻整了很久。
首先是在家里,我采用

所示的方法,然后成功ping通外網(wǎng)
在學(xué)校時(shí)這個(gè)方法卻解決不了,我嘗試了網(wǎng)上很多方法都無法解決(可能我太菜了),最終在重新燒錄了幾次鏡像后發(fā)現(xiàn):直接把網(wǎng)線連到宿舍的路由器上就連上外網(wǎng)了...

具體還有關(guān)于修改下載源變?yōu)殓R像源的方法可以參考其他博客

1.2解決pyzbar庫下載

這個(gè)庫下載推薦采用

pip3 install pyzbar

這個(gè)庫安裝的路徑也要注意,命令行下輸入

pip3 show pyzbar

我的在這里:

圖 2.2.1. pyzbar的位置

多說一句,下面的zbar包我采用

sudo apt-get install python-zbar

得到,為什么不用pip3,因?yàn)閜ip3下載這個(gè)總是報(bào)錯(cuò),即使是

pip3 upgrade

也不行,不是pip3版本的問題。
我的linux鏡像是v2.3版本的,不知道大家采用v2.5或者更高會(huì)不會(huì)好些

圖 2.2.2. zbar的位置

1.3解決jupyter導(dǎo)入庫

1.3.1 首先說明問題的由來

我發(fā)現(xiàn)使用

pip3 install pillow

PIL在jupyter下能導(dǎo)入,但是卻不能導(dǎo)入pyzbar
又發(fā)現(xiàn)在命令行輸入 python3后,可以導(dǎo)入pyzbar,但不能導(dǎo)入zbar

圖 2.3.1. python3導(dǎo)入pyzbar成功,導(dǎo)入zbar不成功

我在命令行輸入pyhton 解釋器下發(fā)現(xiàn)不能導(dǎo)入pyzbar,但可以導(dǎo)入zbar
這就引起了我的注意,最終我發(fā)現(xiàn)原來pip3來的pyzbar有單獨(dú)的存儲(chǔ)路徑,apt-get同理
至于為什么python和python3不能引入相同的包
那就得

import sys
sys.path

采用語句來觀察,發(fā)現(xiàn)引用路徑不一致。我想我知道了癥結(jié)所在:

圖 2.3.2. 不太通順的解釋

$\color{#FF3030}{紅字}$不太通順,翻譯成 人話 就是:
jupyter要設(shè)置為 支持引用 存儲(chǔ)pyzbar包的路徑

1.3.2 方法一:

修改環(huán)境變量

說明,以下為引用:

文章源地址:http://www.dbjr.com.cn/article/256333.htm

Linux 下設(shè)置環(huán)境變量有三種方法,一種用于當(dāng)前終端,一種用于當(dāng)前用戶,一種用于所有用戶:
一:用于當(dāng)前終端:
在當(dāng)前終端中輸入:export PATH=$PATH:<你的要加入的路徑>
不過上面的方法只適用于當(dāng)前終端,一旦當(dāng)前終端關(guān)閉或在另一個(gè)終端中,則無效。

export NDK_ROOT=/home/jiang/soft/Android-ndk-r8e 

只能在當(dāng)前終端使用。
二:用于當(dāng)前用戶:
在用戶主目錄下有一個(gè) .bashrc 隱藏文件,可以在此文件中加入 PATH 的設(shè)置如下:

$ gedit ~/.bashrc

加入:

export PATH=<你的要加入的路徑>:$PATH

如果要加入多個(gè)路徑,只要:

export PATH=<你要加入的路徑1>:<你要加入的路徑2>: ...... :$PATH

當(dāng)中每個(gè)路徑要以冒號(hào)分隔。

這樣每次登錄都會(huì)生效

添加PYTHONPATH的方法也是這樣,在.bashrc中添加

export PYTHONPATH=/home/zhao/setup/caffemaster/python:/home/zhao/setup/mypy:$PYTHONPATH 

保存后在終端輸入 $ source ~/.bashrc 使環(huán)境變量立即生效

三:用于所有用戶:

$ sudo gedit /etc/profile 

加入:

export PATH=<你要加入的路徑>:$PATH

就可以了。
終端輸入:echo $PATH 可以查看環(huán)境變量

注意,修改環(huán)境變量后,除了第一種方法立即生效外,第二第三種方法要立即生效,可以source ~/.bashrc或者注銷再次登錄后就可以了!

到此引用結(jié)束

1.3.3 方法二 :

在代碼中加入語句

import sys
sys.path
sys.path.append('/home/xilinx/.local/lib/python3.6/site-packages')

sys.path是查看jupyter的庫查找路徑,可以查看你的jupyter是否包括了你的包的路徑
一般來說庫導(dǎo)入失敗都是由于這個(gè)原因——jupyter庫路徑
這是設(shè)置引用額外引用路徑的方法:

sys.path.append('')

可參考這篇文章:http://www.dbjr.com.cn/article/44107.htm

2. 提供代碼

# 關(guān)鍵識(shí)別代碼
barcodes = decode(image)
def decode (image,barcodes):
    # loop over the detected barcodes
    for barcode in barcodes:
        # extract the bounding box location of the barcode and draw the
        # bounding boxr surrounding the barcode on the image
        (x, y, w, h) = barcode.rect
        cv2.rectangle(image, (x, y),(x + w,y + h), (255, 0, 0), 5)
        # the barcode data is a bytes object so if we want to draw it on
        # our output image wre need to convert it to a string first
        barcodeData = barcode.data.decode("utf-8")
        barcodeType = barcode.type
        # draw the barcode data and barcode type on the image
        text ="{} ({})". format(barcodeData,barcodeType)
        cv2.putText(image,text,(x, y - 10), cv2.FONT_HERSHEY_SIMPLEX,.8, (255, 0, 0), 2) 
        # print the barcode type and data to the terminal
        print("[INFO] Found {} barcode: {}".format(barcodeType,barcodeData))
    plt.figure(figsize=(10,10))
    plt.imshow(image)
    plt.show()
# Decoding barcodes
decode(image,barcodes)

最終結(jié)果,發(fā)現(xiàn)框框并不是很貼合,可能是照片照的問題。但是識(shí)別的結(jié)果完全正確

完整代碼請(qǐng)見連接:

http://xiazai.jb51.net/202207/yuanma/QRcode_jb51.rar

打開是.ipynb格式。

到此這篇關(guān)于親手教你實(shí)現(xiàn)pynq-z2條形碼識(shí)別功能的文章就介紹到這了,更多相關(guān)pynq-z2條形碼識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論