




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
邊緣計(jì)算算法SDK應(yīng)用(基于RockX)邊緣智能計(jì)算應(yīng)用
車牌識(shí)別算法接口應(yīng)用邊緣智能計(jì)算應(yīng)用職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計(jì)劃03知識(shí)儲(chǔ)備04任務(wù)實(shí)施05任務(wù)檢查與評(píng)價(jià)06任務(wù)小結(jié)07任務(wù)拓展08
車牌識(shí)別算法接口應(yīng)用了解車牌識(shí)別含義與應(yīng)用場(chǎng)景了解RockX車牌識(shí)別算法掌握USB攝像頭采集圖像掌握車牌識(shí)別算法接口的調(diào)用,識(shí)別圖像掌握多線程的方式實(shí)現(xiàn)圖像采集和算法識(shí)別功能職業(yè)能力目標(biāo)01知識(shí)目標(biāo)技能目標(biāo)職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計(jì)劃03知識(shí)儲(chǔ)備04任務(wù)實(shí)施05任務(wù)檢查與評(píng)價(jià)06任務(wù)小結(jié)07任務(wù)拓展08
車牌識(shí)別算法接口應(yīng)用
此任務(wù)的主要內(nèi)容是介紹車牌識(shí)別在生活當(dāng)中的應(yīng)用場(chǎng)景,利用OpenCV實(shí)現(xiàn)圖像的采集調(diào)用算法接口,進(jìn)行圖像識(shí)別,使用多線程方式實(shí)現(xiàn)圖像采集和車牌識(shí)別,通過本次學(xué)習(xí),掌握車牌識(shí)別算法接口的應(yīng)用。任務(wù)描述任務(wù)要求完成RockX車牌識(shí)別算法接口的定義與使用多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別任務(wù)描述與要求02職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計(jì)劃03知識(shí)儲(chǔ)備04任務(wù)實(shí)施05任務(wù)檢查與評(píng)價(jià)06任務(wù)小結(jié)07任務(wù)拓展08
車牌識(shí)別算法接口應(yīng)用任務(wù)分析怎么樣實(shí)現(xiàn)攝像頭對(duì)車牌的識(shí)別?如何使用多線程方式實(shí)現(xiàn)視頻流的車牌檢測(cè)?任務(wù)分析與計(jì)劃03任務(wù)計(jì)劃表項(xiàng)目名稱邊緣計(jì)算算法SDK應(yīng)用(基于RockX)任務(wù)名稱車牌算法接口的應(yīng)用計(jì)劃方式自主設(shè)計(jì)計(jì)劃要求請(qǐng)用6個(gè)計(jì)劃步驟來完整描述出如何完成本次任務(wù)序號(hào)任務(wù)計(jì)劃1
2
3
456通過上面的思考,你是否對(duì)本任務(wù)要完成的工作有所了解?讓我們一起來制訂完成本次任務(wù)的實(shí)施計(jì)劃吧!任務(wù)分析與計(jì)劃03職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計(jì)劃03知識(shí)儲(chǔ)備04任務(wù)實(shí)施05任務(wù)檢查與評(píng)價(jià)06任務(wù)小結(jié)07任務(wù)拓展08
車牌識(shí)別算法接口應(yīng)用RockX車牌識(shí)別算法簡(jiǎn)介204知識(shí)儲(chǔ)備車牌識(shí)別含義與應(yīng)用場(chǎng)景11車牌識(shí)別的含義2應(yīng)用場(chǎng)景04車牌識(shí)別系統(tǒng)(VehicleLicensePlateRecognition,VLPR)是計(jì)算機(jī)視頻圖像識(shí)別技術(shù)在車輛牌照識(shí)別中的一種應(yīng)用,車牌識(shí)別技術(shù)要求能夠?qū)⑦\(yùn)動(dòng)中的汽車牌照從復(fù)雜背景中提取并識(shí)別出來,通過車牌提取、圖像預(yù)處理、特征提取、車牌字符識(shí)別等技術(shù),識(shí)別車輛牌號(hào)、顏色等信息。04車牌識(shí)別的含義車牌識(shí)別技術(shù)要求能夠?qū)⑦\(yùn)動(dòng)中的汽車牌照從復(fù)雜背景中提取并識(shí)別出來,通過車牌提取、圖像預(yù)處理、特征提取、車牌字符識(shí)別等技術(shù),識(shí)別車輛牌號(hào)、顏色等信息,目前最新的技術(shù)水平為字母和數(shù)字的識(shí)別率可達(dá)到99.7%,漢字的識(shí)別率可達(dá)到99%。04車牌識(shí)別的含義在停車場(chǎng)管理中,車牌識(shí)別技術(shù)也是識(shí)別車輛身份的主要手段。在深圳市公安局建設(shè)的《停車庫(kù)(場(chǎng))車輛圖像和號(hào)牌信息采集與傳輸系統(tǒng)技術(shù)要求》中,車牌識(shí)別技術(shù)成為車輛身份識(shí)別的主要手段。。04車牌識(shí)別的含義車牌識(shí)別就是依次實(shí)現(xiàn)汽車圖像的車牌定位、車牌字符分割、車牌字符識(shí)別算法的過程。04車牌識(shí)別系統(tǒng)的基本工作原理及流程車牌識(shí)別的含義車牌定位就是把車牌圖像從含有汽車和背景的圖像中提取出來,其輸入的是原始的汽車圖像,輸出是車牌圖像。車牌的字符分割就是通過對(duì)車牌圖像的預(yù)處理、幾何校正等把字符從車牌圖像中分割出來,分成一個(gè)個(gè)獨(dú)立的字符,其輸入是車牌定位后得到的車牌圖像,輸出是經(jīng)過預(yù)處理、幾何校正等后得到的一組單個(gè)的字符圖像,并得到各個(gè)字符的點(diǎn)陣數(shù)據(jù)。字符識(shí)別是依次從單個(gè)字符點(diǎn)陣數(shù)據(jù)中提取字符特征數(shù)據(jù),并給出識(shí)別結(jié)果。04車牌識(shí)別系統(tǒng)的基本工作原理及流程車牌識(shí)別的含義04車牌識(shí)別系統(tǒng)的基本工作原理及流程車牌識(shí)別的含義車牌定位是車牌識(shí)別的關(guān)鍵步驟,為了能在復(fù)雜背景和不均勻光照條件下快速準(zhǔn)確定位車牌位置,基于改進(jìn)IsotropicSobel邊緣檢測(cè)算子的車牌定位算法,由此來解決其存在的問題,該算法通過改進(jìn)IsotropicSobel邊緣檢測(cè)算子,實(shí)現(xiàn)了車牌圖像在水平、垂直以及對(duì)角線方向上的紋理特征提取,然后采用Otsu算法閾值化,再對(duì)閾值化后的二值圖像做數(shù)學(xué)形態(tài)學(xué)運(yùn)算得到車牌的候選區(qū)域,最后利用車牌特征去除偽車牌。04車牌定位車牌識(shí)別的含義04車牌識(shí)別算法實(shí)現(xiàn)(1)對(duì)輸入的彩色圖像進(jìn)行灰度化處理(2)Sobel邊緣檢測(cè)算子(3)對(duì)邊緣檢測(cè)后的灰度圖進(jìn)行二值化處理(4)對(duì)車牌圖像進(jìn)行圖像形態(tài)學(xué)操作車牌識(shí)別的含義04車牌識(shí)別算法實(shí)現(xiàn)算法流程圖:車牌識(shí)別的含義1、車輛檢測(cè)跟蹤模塊2、車牌定位模塊3、車牌矯正及精定位模塊4、車牌切分模塊5、車牌識(shí)別模塊6、車牌識(shí)別結(jié)果決策模塊7、車牌跟蹤模塊04車牌識(shí)別系統(tǒng)采用高度模塊化的設(shè)計(jì),將車牌識(shí)別過程的各個(gè)環(huán)節(jié)各自作為一個(gè)獨(dú)立的模塊。車牌識(shí)別的含義(1)文件分辨率低,通常由于車牌較遠(yuǎn),有時(shí)是由于低端相機(jī)導(dǎo)致的;(2)圖像模糊,尤其是運(yùn)動(dòng)模糊;(3)由于強(qiáng)光,反射或陰影造成的光照和對(duì)比度較差;(4)車牌(部分)遮擋,通常是拖車桿或車牌上的污漬;(5)前后識(shí)別結(jié)果不同,如拖車,露營(yíng)車等;(6)采集車牌時(shí),車道在相機(jī)視角中發(fā)生改變;(7)字體不同,常見于一些浮夸的車牌;(8)規(guī)避車牌識(shí)別的手段;(9)不同國(guó)家或各州間的缺乏協(xié)調(diào)。不同國(guó)家或州的兩輛車可以有相同的車牌號(hào)但是設(shè)計(jì)不同。04車牌識(shí)別難點(diǎn)車牌識(shí)別的含義1車牌識(shí)別的含義2應(yīng)用場(chǎng)景04
車牌識(shí)別技術(shù)結(jié)合電子不停車收費(fèi)系統(tǒng)(ETC)識(shí)別車輛,過往車輛通過道口時(shí)無須停車,即能夠?qū)崿F(xiàn)車輛身份自動(dòng)識(shí)別、自動(dòng)收費(fèi)。在車場(chǎng)管理中,為提高出入口車輛通行效率,車牌識(shí)別針對(duì)無需收停車費(fèi)的車輛(如月卡車、內(nèi)部免費(fèi)通行車輛),建設(shè)無人值守的快速通道,免取卡、不停車的出入體驗(yàn),正改變出入停車場(chǎng)的管理模式。04車牌識(shí)別應(yīng)用場(chǎng)景1.電子警察系統(tǒng)電子警察系統(tǒng)作為一種抓拍車輛違章違規(guī)行為的智能系統(tǒng),可以完成多項(xiàng)違章抓拍功能,其中包括違章闖紅燈抓拍功能、違章不按車道行駛抓拍功能、違章壓線變道抓拍功能、違章壓雙黃線抓拍功能和違章逆行抓拍功能等內(nèi)容。04車牌識(shí)別應(yīng)用場(chǎng)景2.卡口系統(tǒng)卡口系統(tǒng)對(duì)監(jiān)控路段的機(jī)動(dòng)車輛進(jìn)行全天候的圖像抓拍,自動(dòng)識(shí)別車牌號(hào)碼,通過公安專網(wǎng)與卡口系統(tǒng)控制中心的黑名單數(shù)據(jù)庫(kù)進(jìn)行比對(duì),當(dāng)發(fā)現(xiàn)結(jié)果相符合時(shí),系統(tǒng)自動(dòng)向相關(guān)人員發(fā)出警報(bào)信號(hào)。04車牌識(shí)別應(yīng)用場(chǎng)景3.高速公路收費(fèi)系統(tǒng)當(dāng)車輛在高速公路收費(fèi)入口站時(shí),系統(tǒng)進(jìn)行車牌識(shí)別,保存車牌信息,當(dāng)車輛在高速公路收費(fèi)出口站時(shí),系統(tǒng)再次進(jìn)行車牌識(shí)別,與進(jìn)入車輛的車牌信息進(jìn)行比對(duì),只有進(jìn)站和出站的車牌一致方可讓車輛通行。04車牌識(shí)別應(yīng)用場(chǎng)景4.高速公路超速抓拍系統(tǒng)系統(tǒng)抓拍超速的車輛和識(shí)別車牌號(hào)碼,并通過公安專網(wǎng)將超速車輛的車牌號(hào)碼傳達(dá)到各出口處罰點(diǎn),各出口處罰點(diǎn)用車牌識(shí)別設(shè)備對(duì)出口車輛進(jìn)行車牌識(shí)別,與己經(jīng)收到的超速車輛的號(hào)碼對(duì)比,一旦號(hào)碼相同立即報(bào)警。04車牌識(shí)別應(yīng)用場(chǎng)景5.停車場(chǎng)收費(fèi)系統(tǒng)當(dāng)車輛進(jìn)入停車場(chǎng)時(shí),收費(fèi)系統(tǒng)抓拍車輛圖片進(jìn)行車牌識(shí)別,保存車輛信息和進(jìn)入時(shí)間,當(dāng)車輛離開停車場(chǎng)時(shí),收費(fèi)系統(tǒng)自動(dòng)識(shí)別出該車的車牌號(hào)碼和保存車輛離開的時(shí)間,并計(jì)算出該車的停車費(fèi)用,車主交完費(fèi)用后,收費(fèi)系統(tǒng)自動(dòng)放行。04車牌識(shí)別應(yīng)用場(chǎng)景6.公交車報(bào)站系統(tǒng)當(dāng)公交車進(jìn)入和離開公交站臺(tái)時(shí),報(bào)站系統(tǒng)對(duì)其進(jìn)行車牌識(shí)別,然后與數(shù)據(jù)庫(kù)中的車牌進(jìn)行比對(duì),語(yǔ)音報(bào)讀車牌結(jié)果和公交線路。綜上所述,車牌識(shí)別技術(shù)的廣泛應(yīng)用使道路安全、交通通暢、車輛安全、環(huán)境保護(hù)得到了全面的保障。04車牌識(shí)別應(yīng)用場(chǎng)景RockX車牌識(shí)別算法簡(jiǎn)介204知識(shí)儲(chǔ)備車牌識(shí)別含義與應(yīng)用場(chǎng)景1RockX車牌識(shí)別算法簡(jiǎn)介04rockx車牌識(shí)別庫(kù)是集成在核心開發(fā)板上的一套python的接口庫(kù),可以直接調(diào)用RockX車牌識(shí)別算法簡(jiǎn)介04下面是可識(shí)別的車牌字符表注:
1.CCPD(ChineseCityParkingDataset)是國(guó)內(nèi)車牌數(shù)據(jù)集,從中隨機(jī)抽取10000張進(jìn)行測(cè)試。
2.支持識(shí)別國(guó)內(nèi)藍(lán)色、綠色和黃色車牌。
3.可識(shí)別的車牌字符如表所示。RockX車牌識(shí)別算法簡(jiǎn)介04調(diào)用過程職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計(jì)劃03知識(shí)儲(chǔ)備04任務(wù)實(shí)施05任務(wù)檢查與評(píng)價(jià)06任務(wù)小結(jié)07任務(wù)拓展08
車牌識(shí)別算法接口應(yīng)用05任務(wù)實(shí)施多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別2RockX車牌識(shí)別相關(guān)算法接口的定義與使用142加載圖片數(shù)據(jù)1導(dǎo)入相關(guān)的庫(kù)3實(shí)例化算法接口對(duì)象調(diào)用車牌檢測(cè)函數(shù)RockX車牌識(shí)別相關(guān)算法接口的定義與使用05RockX車牌識(shí)別相關(guān)算法接口的定義與使用86調(diào)用車牌識(shí)別函數(shù)5調(diào)用車牌對(duì)齊函數(shù)7畫出車牌框,并繪制車牌號(hào)將經(jīng)過算法處理的圖像顯示RockX車牌識(shí)別相關(guān)算法接口的定義與使用05RockX車牌識(shí)別相關(guān)算法接口的定義與使用RockX車牌識(shí)別相關(guān)算法接口的定義與使用05下面通過車牌識(shí)別實(shí)驗(yàn),利用OpenCV采集圖片,識(shí)別圖片中的車牌,來詮釋RockX車牌識(shí)別相關(guān)算法接口的定義和使用RockX車牌識(shí)別相關(guān)算法接口的定義與使用05importtimeimportcv2#引入OpenCV圖像處理庫(kù)fromrockximportRockX#引入車牌識(shí)別算法接口庫(kù)1導(dǎo)入相關(guān)的庫(kù)RockX車牌識(shí)別相關(guān)算法接口的定義與使用05圖片使用OpenCV利用攝像頭采集一張圖片,或者使用OpenCV讀取現(xiàn)有的圖片,這里使用讀取攝像頭的方式2加載圖片數(shù)據(jù)RockX車牌識(shí)別相關(guān)算法接口的定義與使用05cap=cv2.VideoCapture(0)time.Sleep(2)cap.set(cv2.CAP_PROP_FRAME_WIDTH,640)cap.set(cv2.CAP_PROP_FRAME_HEIGHT,480)dWindow('image_win',flags=cv2.WINDOW_NORMAL|cv2.WINDOW_KEEPRATIO)ret,frame=cap.read()cv2.imshow('image_win',frame)cv2.waitKey(200)cv2.imwrite("圖片名稱",frame)cap.release()cv2.destroyAllWindows()2加載圖片數(shù)據(jù)讀取一張圖片利用OpenCV打開攝像頭采集一張圖片,在之前的章節(jié)有介紹,例如以下案例:RockX車牌識(shí)別相關(guān)算法接口的定義與使用05importipywidgetsaswidgets#jupyter畫圖庫(kù)fromIPython.displayimportdisplay#jupyter顯示庫(kù)imgbox=widgets.Image()#定義一個(gè)圖像盒子,用于裝載圖像數(shù)據(jù)display(imgbox)#將盒子顯示出來imgbox.value=cv2.imencode('.jpg',image_car)[1].tobytes()#把圖像值轉(zhuǎn)成byte類型的值2加載圖片數(shù)據(jù)(2)打印原始的照片RockX車牌識(shí)別相關(guān)算法接口的定義與使用05in_img_h,in_img_w,ch=image_pose.shapeprint(in_img_h,in_img_w,ch)2加載圖片數(shù)據(jù)(3)獲取圖片信息獲取圖片的長(zhǎng),寬和通道數(shù)RockX車牌識(shí)別相關(guān)算法接口的定義與使用05在RockX庫(kù)中,包含了算法各種功能模式,實(shí)例化算法為:handle=RockX(功能類型)3實(shí)例化算法接口功能類型:這里采用車牌的檢測(cè),對(duì)齊,和識(shí)別的功能模式RockX.ROCKX_MODULE_CARPLATE_DETECTION是車牌檢測(cè)功能類型RockX.ROCKX_MODULE_CARPLATE_ALIGN是車牌對(duì)齊功能類型RockX.ROCKX_MODULE_CARPLATE_RECOG是車牌識(shí)別功能類型RockX車牌識(shí)別相關(guān)算法接口的定義與使用054調(diào)用車牌檢測(cè)函數(shù)參數(shù)說明:in_img:輸入圖片(numpyndarray)width:圖片寬height:圖片高pixel_fmt:圖片pixelformat為了獲取車牌框的位置,調(diào)用車牌檢測(cè)函數(shù),通過對(duì)圖像的檢測(cè),識(shí)別車牌的的位置信息rockx_carplate_detect(self,in_img,width,height,pixel_fmt)返回值說明:ret:狀態(tài)碼,0為成功,其他失敗results:RockX對(duì)象的列表,就是說一張圖可能包含多個(gè)車牌對(duì)象,每個(gè)對(duì)象包含了車牌的位置框信息等,比如,其中一個(gè)車牌信息:results[0].box表示車牌的位置框信息(results[0].box.left,results[0].box.top)表示位置框,左上角的位置(results[0].box.right,results[0].box.bottom)表示位置框,右下角的位置RockX車牌識(shí)別相關(guān)算法接口的定義與使用055調(diào)用車牌對(duì)齊函數(shù)rockx_carplate_align(self,in_img,width,height,pixel_fmt,in_box)為了對(duì)車牌的圖片的傾斜等,需要對(duì)車牌進(jìn)行矯正對(duì)齊調(diào)用車牌對(duì)齊函數(shù),通過前面得到的車牌對(duì)象,把車牌對(duì)象的位置框信息作為輸入,進(jìn)行車牌的矯正對(duì)齊這里只使用單個(gè)車牌(results[0])結(jié)果來做檢測(cè)識(shí)別,根據(jù)上面的參數(shù)說明:in_img:輸入圖片(numpyndarray)width:圖片寬height:圖片高pixel_fmt:圖片pixelformatin_box:車牌檢測(cè)后的單個(gè)車牌的位置信息返回值說明:ret:狀態(tài)碼,0為成功,其他失敗align_result:返回對(duì)齊后的結(jié)果對(duì)象,主要包含對(duì)齊后的圖片數(shù)據(jù)信息,比如:對(duì)齊后的圖片align_result.aligned_imageRockX車牌識(shí)別相關(guān)算法接口的定義與使用056調(diào)用車牌識(shí)別函數(shù)rockx_carplate_recognize(self,in_aligned_img)為了獲取具體的車牌信息,調(diào)用車牌識(shí)別函數(shù),針對(duì)矯正對(duì)齊后的圖片數(shù)據(jù)結(jié)果,進(jìn)行識(shí)別分析參數(shù)說明:in_aligned_img:車牌對(duì)齊后的對(duì)象的圖片數(shù)據(jù)(align_result.aligned_image)返回值說明:ret:狀態(tài)碼,0為成功,其他失敗recog_result:返回識(shí)別后的結(jié)果信息,比如:車牌號(hào)RockX車牌識(shí)別相關(guān)算法接口的定義與使用057畫出車牌框,并繪制車牌號(hào)cv2.rectangle(image,pt1=(int(left),int(top)),pt2=(int(right),int(bot)),color=(0,255,0),thickness=3)(1)利用OpenCV在圖像上添加文字cv2.rectangle()的作用是根據(jù)坐標(biāo),描繪一個(gè)簡(jiǎn)單的矩形邊框參數(shù)依次為:圖片,左上角右下角位置坐標(biāo),線條顏色,線條粗細(xì)RockX車牌識(shí)別相關(guān)算法接口的定義與使用057畫出車牌框,并繪制車牌號(hào)fromlib.ft2importft(2)引入中文繪畫庫(kù)用于在圖片上描繪中文字符ft.draw_text的作用是在圖片的某個(gè)位置上添加文字信息,參數(shù)依次為,圖片,位置,文字,字體大小,字體顏色img=ft.draw_text(img,position,'{}'.format(plate_number),34,(255,0,0))RockX車牌識(shí)別相關(guān)算法接口的定義與使用058將經(jīng)過算法處理的圖像顯示importipywidgetsaswidgets#jupyter畫圖庫(kù)fromIPython.displayimportdisplay#jupyter顯示庫(kù)imgbox=widgets.Image()#定義一個(gè)圖像盒子,用于裝載圖像數(shù)據(jù)display(imgbox)#將盒子顯示出來imgbox.value=cv2.imencode('.jpg',image_car)[1].tobytes()#把圖像值轉(zhuǎn)成byte類型的值利用jupyter的畫圖庫(kù)和顯示庫(kù),來顯示獲取的圖片05任務(wù)實(shí)施多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別2RockX車牌識(shí)別相關(guān)算法接口的定義與使用142定義攝像頭采集線程1引入相關(guān)的庫(kù)3定義算法識(shí)別線程調(diào)用兩個(gè)線程,啟動(dòng)視頻流的車牌識(shí)別5停止線程多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別05多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別根據(jù)前面學(xué)到的知識(shí),利用多線程,使圖像采集和算法識(shí)別同時(shí)運(yùn)行,從而實(shí)現(xiàn)視頻流的車牌識(shí)別,并且可以避免一些因花時(shí)間太久,導(dǎo)致的視頻卡頓多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別05使用線程可以把占據(jù)長(zhǎng)時(shí)間的程序中的任務(wù)放到后臺(tái)去處理。用戶界面可以更加吸引人,比如用戶點(diǎn)擊了一個(gè)按鈕去觸發(fā)某些事件的處理,可以彈出一個(gè)進(jìn)度條來顯示處理的進(jìn)度。程序的運(yùn)行速度可能加快。在一些等待的任務(wù)實(shí)現(xiàn)上如用戶輸入、文件讀寫和網(wǎng)絡(luò)收發(fā)數(shù)據(jù)等,線程就比較有用了。在這種情況下我們可以釋放一些珍貴的資源如內(nèi)存占用等等。1引入相關(guān)的庫(kù)多線程類似于同時(shí)執(zhí)行多個(gè)不同程序,多線程運(yùn)行有如下優(yōu)點(diǎn):多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別051引入相關(guān)的庫(kù)importtime#時(shí)間庫(kù)importcv2#引入opencv圖像處理庫(kù)fromlib.ft2importft#中文描繪庫(kù)importthreading#這是python的標(biāo)準(zhǔn)庫(kù),線程庫(kù)importipywidgetsaswidgets#jupyter畫圖庫(kù)fromIPython.displayimportdisplay#jupyter顯示庫(kù)fromrockximportRockX#引入算法庫(kù)每個(gè)獨(dú)立的線程有一個(gè)程序運(yùn)行的入口、順序執(zhí)行序列和程序的出口。但是線程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個(gè)線程執(zhí)行控制。多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別052定義攝像頭采集線程結(jié)合上面的opencv采集圖像的內(nèi)容,利用多線程的方式串起來,形成一個(gè)可傳參,可調(diào)用的通用類。這里定義了一個(gè)全局變量camera_img,用作存儲(chǔ)獲取的圖片數(shù)據(jù),以便于其他線程可以調(diào)用init初始化函數(shù)實(shí)例化該線程的時(shí)候,會(huì)自動(dòng)執(zhí)行初始化函數(shù),在初始化函數(shù)里面,打開攝像頭,并設(shè)置分辨run函數(shù)該函數(shù)是在實(shí)例化后,執(zhí)行start啟動(dòng)函數(shù)的時(shí)候,會(huì)自動(dòng)執(zhí)行。在該函數(shù)里,實(shí)現(xiàn)了循環(huán)獲取圖像的內(nèi)容請(qǐng)說說執(zhí)行線程的幾種方式?多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別052定義攝像頭采集線程classCameraThread(threading.Thread):def__init__(self,camera_id,camera_width,camera_height):threading.Thread.__init__(self)self.working=Trueself.cap=cv2.VideoCapture(camera_id)#打開攝像頭self.cap.set(cv2.CAP_PROP_FRAME_WIDTH,camera_width)#設(shè)置攝像頭分辨率寬度self.cap.set(cv2.CAP_PROP_FRAME_HEIGHT,camera_height)#設(shè)置攝像頭分辨率高度代碼分析多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別05defrun(self):globalcamera_img#定義一個(gè)全局變量,用于存儲(chǔ)獲取的圖片,以便于算法可以直接調(diào)用whileself.working:try: ret,image=self.cap.read()#獲取新的一幀圖片,ret為獲取的狀態(tài)值 ifnotret: time.sleep(0.1) continuecamera_img=imageexceptExceptionase: pass defstop(self): self.working=False self.cap.release()多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別0523定義算法識(shí)別線程結(jié)合調(diào)用算法接口的內(nèi)容和圖像顯示內(nèi)容,利用多線程的方式整合起來,循環(huán)識(shí)別,對(duì)攝像頭采集線程中獲取的每一幀圖片進(jìn)行識(shí)別,并顯示,形成視頻流的畫面init初始化函數(shù)實(shí)例化該線程的時(shí)候,會(huì)自動(dòng)執(zhí)行初始化函數(shù),在初始化函數(shù)里面,定義了顯示內(nèi)容,并實(shí)例化車牌識(shí)別run函數(shù)該函數(shù)是在實(shí)例化后,執(zhí)行start啟動(dòng)函數(shù)的時(shí)候,會(huì)自動(dòng)執(zhí)行。在該函數(shù)是一個(gè)循環(huán),實(shí)現(xiàn)了對(duì)采集的每一幀圖片進(jìn)行算法識(shí)別,然后將結(jié)果繪畫在圖片上,并將處理后的圖片顯示出來多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別05調(diào)用兩個(gè)線程,啟動(dòng)視頻流的車牌識(shí)別camera_th=CameraThread(0,640,480)camera_th.start()face_detect_th=FaceDetectThread()face_detect_th.start()實(shí)例化兩個(gè)線程,并啟動(dòng)這兩個(gè)線程,實(shí)現(xiàn)完整的車牌識(shí)別功能,運(yùn)行時(shí),加載模型比較久,需要等待幾秒多線程方式實(shí)現(xiàn)視頻流的車牌識(shí)別05
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 共同股權(quán)投資合同范本
- 關(guān)于續(xù)簽監(jiān)控合同范本
- 涼皮店用工合同范例
- 事業(yè)單位勞務(wù)合同范本3篇
- 公司考核合同范本
- 下班無償保潔合同范本
- 入股銷售合同范本
- 北京貸款合同范本
- 農(nóng)業(yè)設(shè)備運(yùn)輸合同范例
- 公司簽承攬合同范本
- 2024年福建省廈門市翔安區(qū)殘疾人聯(lián)合會(huì)招聘殘疾人工作聯(lián)絡(luò)員29人歷年重點(diǎn)基礎(chǔ)提升難、易點(diǎn)模擬試題(共500題)附帶答案詳解
- 幼兒園家長(zhǎng)會(huì)疾病預(yù)防
- 《儲(chǔ)糧害蟲防治技術(shù)》課件-第六章 儲(chǔ)糧保護(hù)劑及其應(yīng)用
- 2型糖尿病性增殖性出血性視網(wǎng)膜病的護(hù)理查房
- 人工智能基礎(chǔ)與應(yīng)用-課程標(biāo)準(zhǔn)
- 業(yè)主授權(quán)租戶安裝充電樁委托書
- 排水管道施工組織設(shè)計(jì)排水管道施工組織設(shè)計(jì)排水施工排水管道施工施工設(shè)計(jì)
- 倉(cāng)庫(kù)管理人員安全培訓(xùn)考試題含答案
- 2024年度核醫(yī)學(xué)科危重癥患者應(yīng)急預(yù)案流程圖
- 2024未來會(huì)議:AI與協(xié)作前沿趨勢(shì)白皮書
- 書畫同源 課件-2023-2024學(xué)年高中美術(shù)人教版(2019)選擇性必修2 中國(guó)書畫
評(píng)論
0/150
提交評(píng)論