www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > IoT設(shè)計(jì)分享
[導(dǎo)讀]之前我們學(xué)習(xí)了使用樹莓派和OpenCV的人臉識(shí)別。今天我們就用這兩個(gè)來用python構(gòu)建一個(gè)車牌識(shí)別系統(tǒng)。實(shí)時(shí)車牌檢測(cè)和識(shí)別對(duì)于自動(dòng)收費(fèi)站,找出交通規(guī)則違規(guī)者以及解決其他與車輛相關(guān)的安全問題非常有用。

之前我們學(xué)習(xí)了使用樹莓派和OpenCV的人臉識(shí)別。今天我們就用這兩個(gè)來用python構(gòu)建一個(gè)車牌識(shí)別系統(tǒng)。實(shí)時(shí)車牌檢測(cè)和識(shí)別對(duì)于自動(dòng)收費(fèi)站,找出交通規(guī)則違規(guī)者以及解決其他與車輛相關(guān)的安全問題非常有用。

所以在本教程中,我們將建立一個(gè)實(shí)時(shí)車牌識(shí)別系統(tǒng)使用樹莓派和派相機(jī)。該系統(tǒng)采用OpenCV和光學(xué)字符識(shí)別技術(shù)實(shí)現(xiàn)車牌的自動(dòng)識(shí)別和讀取。Pi相機(jī)模塊連續(xù)捕獲幀,當(dāng)按下鍵盤上的一個(gè)鍵時(shí),它將最后一幀保存為新圖像。然后利用OpenCV中的輪廓函數(shù)對(duì)車牌進(jìn)行檢測(cè)。最后,樹莓派裁剪出特定區(qū)域,并執(zhí)行光學(xué)字符識(shí)別來讀取車牌號(hào)碼。

組件的要求

?覆盆子π

?π的相機(jī)

這里只使用樹莓派和Pi相機(jī)來構(gòu)建這個(gè)樹莓派車牌識(shí)別系統(tǒng)。我們之前使用樹莓派相機(jī),并使用它構(gòu)建了一些項(xiàng)目,如Web控制樹莓派監(jiān)控機(jī)器人,基于物聯(lián)網(wǎng)的智能Wi-Fi門鈴,智能閉路電視監(jiān)控系統(tǒng)等。

要了解有關(guān)如何將Pi相機(jī)與樹莓派接口的更多信息,請(qǐng)遵循我們之前的教程。

車牌識(shí)別的先決條件

這里我們使用OpenCV庫來檢測(cè)和識(shí)別車牌,使用Tesseract庫來讀取字符。因此,在繼續(xù)之前,首先安裝OpenCV、Tesseract和其他必需的庫。我們之前在樹莓派項(xiàng)目中使用了OpenCV進(jìn)行人臉識(shí)別。

在樹莓派3上安裝OpenCV

這里使用OpenCV庫來檢測(cè)和識(shí)別人臉。要安裝OpenCV,首先要更新樹莓派。

然后使用以下命令安裝所需的依賴項(xiàng),以便在樹莓派上安裝OpenCV。

之后,使用下面的命令在樹莓派上安裝OpenCV。

安裝超正方體

要安裝Tesseract,首先,使用下面的命令配置Debian軟件包(dpkg):

之后,使用apt-get選項(xiàng)安裝Tesseract OCR(光學(xué)字符識(shí)別)。

之后,使用pip安裝pytesseract。

之后,使用下面的命令安裝PYTTSX3庫,用于文本到語音的轉(zhuǎn)換:

安裝imutils

imutils用于使基本的圖像處理功能,如平移、旋轉(zhuǎn)、調(diào)整大小、骨架化和顯示Matplotlib圖像更容易使用OpenCV。使用以下命令安裝imutils:

SMTP郵件設(shè)置樹莓派車牌識(shí)別

SMTP (Simple Mail Transfer Protocol)是在TCP/IP網(wǎng)絡(luò)上提供電子郵件服務(wù)的標(biāo)準(zhǔn)協(xié)議。該服務(wù)器提供接收和發(fā)送電子郵件消息的功能。當(dāng)樹莓派檢測(cè)并識(shí)別車牌時(shí),我們使用SMTP發(fā)送郵件。

要在樹莓派上使用SMTP服務(wù),我們首先必須在樹莓派上安裝SMTP庫。使用下面的命令來安裝:

現(xiàn)在我們必須編輯配置文件。為此,使用以下命令打開配置文件:

然后加上下面的行。不要忘記添加您的電子郵件和電子郵件密碼。

用樹莓派進(jìn)行車牌識(shí)別的Python編程

車牌識(shí)別OpenCV python代碼涉及三個(gè)主要步驟。第一步是車牌檢測(cè)。利用輪廓函數(shù)檢測(cè)圖像中的矩形物體,找到車牌號(hào)碼。第二步是字符分割。一旦輪廓檢測(cè)到車牌,我們必須裁剪出來,并保存為一個(gè)新的圖像。最后一步是字符識(shí)別。我們將對(duì)裁剪后的圖像執(zhí)行光學(xué)字符識(shí)別來檢測(cè)數(shù)字。

完整的python車牌識(shí)別代碼在本頁末尾給出。我們?cè)谶@里解釋代碼。

在代碼的開頭,為這個(gè)項(xiàng)目導(dǎo)入所需的包。

然后初始化相機(jī)對(duì)象,將分辨率設(shè)置為(640,480),幀率設(shè)置為30 fps。

然后使用capture_continuous函數(shù)開始從樹莓派相機(jī)捕獲幀。我們使用鍵盤鍵‘ S ’來捕捉一個(gè)特定的幀。

當(dāng)鍵盤鍵被按下時(shí),它將占用最后一幀。在捕獲最后一幀后,它將使用雙邊過濾器功能從捕獲的圖像中刪除不需要的細(xì)節(jié)。

去除不需要的細(xì)節(jié)后,使用Canny Edge Method進(jìn)行邊緣檢測(cè)。

現(xiàn)在我們將在圖像上尋找輪廓。然后將檢測(cè)到的輪廓由大到小進(jìn)行排序。

樹莓派可以找到多個(gè)輪廓,所以我們需要在得到的結(jié)果中搜索一個(gè)有四個(gè)邊的矩形輪廓和一個(gè)閉合圖形來過濾車牌輪廓。

找到車牌后,把除車牌以外的所有東西都遮起來

在對(duì)除車牌區(qū)域外的整個(gè)圖像進(jìn)行屏蔽后,我們將裁剪出車牌區(qū)域并將其保存為新圖像。

現(xiàn)在,在最后一步中,使用Tesseract庫從車牌圖像讀取字符,并將識(shí)別的字符存儲(chǔ)在“text”變量中。如前所述,當(dāng)Pi檢測(cè)到車牌時(shí),我們也會(huì)發(fā)送郵件。因此,車牌信息將發(fā)送到上述電子郵件地址。發(fā)送郵件的代碼如下。

這是如何使用Python和樹莓派構(gòu)建車牌識(shí)別。這個(gè)項(xiàng)目的結(jié)果不會(huì)100%準(zhǔn)確。有時(shí)它無法檢測(cè)到車牌,或者有時(shí)它讀取一些垃圾值。結(jié)果很大程度上取決于圖像質(zhì)量和圖像方向。

本文編譯自iotdesignpro

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀
關(guān)閉