Amazing-Python-Scripts

Форк
0
40 строк · 1.2 Кб
1
import cv2
2
import numpy as np
3

4
frameWidth = 640
5
frameHeight = 480
6
nPlateCascade = cv2.CascadeClassifier(
7
    'res/haarcascade_russian_plate_number.xml')
8
minArea = 500
9
color = (255, 0, 255)
10

11
cap = cv2.VideoCapture(0)
12
cap.set(3, frameWidth)
13
cap.set(4, frameHeight)
14
cap.set(10, 150)
15
count = 0
16

17
while True:
18
    success, img = cap.read()
19
    imgGray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
20

21
    numberPlates = nPlateCascade.detectMultiScale(imgGray, 1.1, 4)
22

23
    for (x, y, w, h) in numberPlates:
24
        area = w*h
25
        if area > minArea:
26
            cv2.rectangle(img, (x + y), (x + w, y + h), (255, 0, 255), 2)
27
            cv2.putText(img, "Number Plate", (x, y-5),
28
                        cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, color, 2)
29
            imgRoi = img[y:y+h, x:x+w]
30
            cv2.imshow("ROI", imgRoi)
31

32
    cv2.imshow("Result", img)
33
    if cv2.waitKey(1) & 0xFF == ord('s'):
34
        cv2.imwrite('res/scanned/NoPlate_' + str(count) + '.jpg', imgRoi)
35
        cv2.rectangle(img, (0, 200), (640, 300), (0, 255, 0), cv2.FILLED)
36
        cv2.putText(img, 'Scan Saved', (150, 265),
37
                    cv2.FONT_HERSHEY_DUPLEX, 2, (0, 0, 255), 2)
38
        cv2.imshow("Result", img)
39
        cv2.waitKey(500)
40
        count += 1
41

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.