python利用百度云接口實現(xiàn)車牌識別的示例
一個小需求---實現(xiàn)車牌識別。
目前有兩個想法
1. 調(diào)云在線的接口或者使用SDK做開發(fā)(配置環(huán)境和編譯第三方庫很麻煩,當然使用python可以避免這些問題)
2. 自己實現(xiàn)車牌識別算法(復雜)
一開始準備使用百度云文字識別C++ SDK來做,發(fā)現(xiàn)需要準備curl、jsoncpp和OpenCV,并且curl和jsoncpp需要自己編譯,很麻煩,所以換用了python來做,真的是順暢簡單。
1. 安裝python環(huán)境(我用python3.7)
python官網(wǎng)下載地址:https://www.python.org/downloads/release/python-374/建議直接下載安裝版installer(看對系統(tǒng)和位數(shù))

打開安裝包無腦安裝即可。安裝好之后,看一下是否安裝成功。
cmd
python --version

2. 百度云SDK下載安裝及創(chuàng)建應用
參考https://cloud.baidu.com/doc/OCR/s/pjwvxzmtc文檔,安裝python SDK
查看pip版本(python環(huán)境自帶,但是要注意版本)
pip --version

如果版本不合適,那么自行升級pip
pip install -U pip
安裝baidu-aip
pip install baidu-aip
(安裝成功的樣子)
現(xiàn)在我們的百度云SDK就安裝好了,下來創(chuàng)建應用
登錄百度云(沒賬號注冊一下)

創(chuàng)建應用

自己填一下

現(xiàn)在我們就創(chuàng)建好了車牌識別的應用,點擊應用列表可查看。

這里的APPID、API KEY、Secret Key要在代碼中使用。(注意不要泄漏)
3. 編碼調(diào)接口,實現(xiàn)需求
python代碼實現(xiàn)
'''
Statement
1. using the file
2. prepare a image path and call func "get_license_plate(filePath)"
3. you can get a json object
4. get the info from the pbject
example :
{
"log_id": 3583925545,
"words_result": {
"color": "blue",
"number": "蘇HS7766"
}
}
'''
from aip import AipOcr
import json
"""get img"""
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read()
""" get licsense plate """
def get_license_plate(filePath):
""" APPID AK SK """
APP_ID = '********'
API_KEY = '**************'
SECRET_KEY = '******************'
""" create client """
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
image = get_file_content(filePath)
""" 調(diào)用車牌識別 """
res = client.licensePlate(image)
return res
""" call example """
str = 'C:\\Users\\***\\Desktop\\big.jpg' """ 照片絕對地址 """
res = get_license_plate(str)
print('車牌號碼:' + res['words_result']['number'])
print('車牌顏色:' + res['words_result']['color'])
代碼分解
引入庫
from aip import AipOcr """百度云SDK""" import json """json庫"""
創(chuàng)建客戶端
""" APPID AK SK 自己創(chuàng)建的應用中的數(shù)據(jù)""" APP_ID = '*******' API_KEY = '***************' SECRET_KEY = '******************' """ create client """ client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
調(diào)用接口得到車牌識別結果
image = get_file_content(filePath) """ 調(diào)用車牌識別 """ res = client.licensePlate(image)
這里的res是一個json對象/一個dict
例子
{
"log_id": 3583925545,
"words_result": {
"color": "blue",
"number": "蘇HS7766"
}
}
可以使用res['listname']['listname']形式獲取字典數(shù)據(jù)
print('車牌號碼:' + res['words_result']['number'])
print('車牌顏色:' + res['words_result']['color'])
至此,我們就實現(xiàn)了使用百度云SDK,通過編寫python代碼調(diào)用接口的車牌識別需求。

參考文檔
【1】百度云API文檔:https://cloud.baidu.com/doc/OCR/s/pjwvxzmtc/
【2】python pip安裝與使用:https://www.runoob.com/w3cnote/python-pip-install-usage.html
【3】python官網(wǎng):https://www.python.org/downloads/release/python-374/
到此這篇關于python利用百度云接口實現(xiàn)車牌識別的示例的文章就介紹到這了,更多相關python 百度云車牌識別內(nèi)容請搜素腳本之家以前的文章或下面相關文章,希望大家以后多多支持腳本之家!
相關文章
python 線性回歸分析模型檢驗標準--擬合優(yōu)度詳解
今天小編就為大家分享一篇python 線性回歸分析模型檢驗標準--擬合優(yōu)度詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
使用pymysql查詢數(shù)據(jù)庫,把結果保存為列表并獲取指定元素下標實例
這篇文章主要介紹了使用pymysql查詢數(shù)據(jù)庫,把結果保存為列表并獲取指定元素下標實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
Python實現(xiàn)OpenCV中文路徑圖片讀寫的詳細指南
在Python中使用OpenCV處理圖片時,涉及讀取和保存圖片的操作,可能會遇到中文路徑的兼容性問題,該指南的目的是展示如何正確處理帶有中文路徑的圖片,并使用OpenCV將圖片保存到指定的中文路徑,需要的朋友可以參考下2025-03-03

