1. 程式人生 > 實用技巧 >智慧停車場車牌識別系統【python】

智慧停車場車牌識別系統【python】

百度AI:https://ai.baidu.com 申請App_id

程式碼重點:pip install baidu_api

from aip import AipOcr

import os

# 百度識別車牌
# 申請地址 http://ai.baidu.com/
# 請將您申請的Key寫到專案根目錄下的key.txt檔案中,並且按照相應的內容進行填寫
filename = 'file/teddy_key.txt'  # 記錄申請的Key的檔案位置
if os.path.exists(filename):  # 判斷檔案是否存在
    with open(filename, "
r") as file: # 開啟檔案 dictkey = eval(file.readlines()[0]) # 讀取全部內容轉換為字典 # 以下獲取的三個Key是進入百度AI開放平臺的控制檯的應用列表裡建立應用得來的 APP_ID = dictkey['APP_ID'] # 獲取申請的APIID API_KEY = dictkey['API_KEY'] # 獲取申請的APIKEY SECRET_KEY = dictkey['SECRET_KEY'] # 獲取申請的SECRETKEY else:
print("請先在file目錄下建立key.txt,並且寫入申請的Key!格式如下:" "\n{'APP_ID':'申請的APIID', 'API_KEY':'申請的APIKEY', 'SECRET_KEY':'申請的SECRETKEY'}") # 初始化AipOcr物件 client = AipOcr(APP_ID, API_KEY, SECRET_KEY) # 讀取檔案 def get_file_content(filePath): with open(filePath, 'rb') as fp: return fp.read() # 根據圖片返回車牌號
def getcn(): # 讀取圖片 image = get_file_content('file/timg.jpeg') # 呼叫車牌識別 results = client.licensePlate(image)["words_result"]['number'] # 輸出車牌號 print(results) return results
# getcn()

時間計算【計算星期幾,與時間差】

import datetime


# 計算停車時間四捨五入
def DtCalc(stTime, edTime):
    st = datetime.datetime.strptime(stTime, "%Y-%m-%d %H:%M")
    ed = datetime.datetime.strptime(edTime, "%Y-%m-%d %H:%M")
    rtn = ed - st
    y = round(rtn.total_seconds() / 60 / 60)
    # 判斷停車時間 如果時間
    if y == 0:
        y = 1
    return y


# 返回 星期幾標記 0代表星期一 1代表星期二...6代表星期天
def get_week_numbeer(date):
    date = datetime.datetime.strptime(date, "%Y-%m-%d %H:%M")
    day = date.weekday()
    return day

呼叫攝像頭

import cv2

try:
    cam = cv2.VideoCapture(0)
except:
    print('請連線攝像頭')


# 從攝像頭讀取圖片
sucess, img = cam.read()
# 儲存圖片,並退出。
cv2.imwrite('file/test.jpg', img)
# 載入影象
image = pygame.image.load('file/test.jpg')
# 設定圖片大小
image = pygame.transform.scale(image, (640, 480))
# 繪製視訊畫面
screen.blit(image, (2, 2))


# 關閉攝像頭
cam.release()