clean and format codebase
Former-commit-id: 5d0497ac67199a7ea475849a6ec3f28df46371cb
This commit is contained in:
70
vid_chk.py
70
vid_chk.py
@ -1,57 +1,67 @@
|
||||
import cv2
|
||||
import numpy as np
|
||||
|
||||
import ch340
|
||||
|
||||
flag = False
|
||||
vidId = 1
|
||||
cap = cv2.VideoCapture(vidId, cv2.CAP_DSHOW)
|
||||
while not flag:
|
||||
suc,im = cap.read()
|
||||
cv2.imshow("image",im)
|
||||
suc, im = cap.read()
|
||||
cv2.imshow("image", im)
|
||||
k = cv2.waitKey(0)
|
||||
if k & 0xff == ord('q'):
|
||||
if k & 0xFF == ord("q"):
|
||||
# cap.release()
|
||||
# cv2.destroyAllWindows()
|
||||
flag=True
|
||||
flag = True
|
||||
else:
|
||||
vidId+=1
|
||||
vidId += 1
|
||||
cap.release()
|
||||
cap.open(vidId, cv2.CAP_DSHOW)
|
||||
print(f"使用摄像头索引: {vidId}")
|
||||
|
||||
import ch340
|
||||
|
||||
base = 30
|
||||
pump = ch340.CH340()
|
||||
while True:
|
||||
suc,im = cap.read()
|
||||
hsv = cv2.cvtColor(im,cv2.COLOR_BGR2HSV)
|
||||
s = hsv[:,:,1]
|
||||
mask = s>base
|
||||
cv2.imshow('mask',im*mask[:,:,np.newaxis])
|
||||
tot = mask.shape[0]*mask.shape[1]
|
||||
suc, im = cap.read()
|
||||
hsv = cv2.cvtColor(im, cv2.COLOR_BGR2HSV)
|
||||
s = hsv[:, :, 1]
|
||||
mask = s > base
|
||||
cv2.imshow("mask", im * mask[:, :, np.newaxis])
|
||||
tot = mask.shape[0] * mask.shape[1]
|
||||
val = np.sum(mask)
|
||||
rate = val/tot
|
||||
thr = (0.05,0.2, 0.5)
|
||||
rate = val / tot
|
||||
thr = (0.05, 0.2, 0.5)
|
||||
ret = ""
|
||||
if rate < thr[0]:
|
||||
ret = "transport"
|
||||
elif rate <thr[1]:
|
||||
ret = "middle"
|
||||
ret = "transport"
|
||||
elif rate < thr[1]:
|
||||
ret = "middle"
|
||||
elif rate < thr[2]:
|
||||
ret = "about"
|
||||
ret = "about"
|
||||
else:
|
||||
ret = "colored"
|
||||
im = cv2.putText(im, f"Rate: {rate:.2},base={base},{ret}", (10, 30), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
|
||||
cv2.imshow('image',im)
|
||||
ret = "colored"
|
||||
im = cv2.putText(
|
||||
im,
|
||||
f"Rate: {rate:.2},base={base},{ret}",
|
||||
(10, 30),
|
||||
cv2.FONT_HERSHEY_SIMPLEX,
|
||||
1,
|
||||
(0, 255, 0),
|
||||
2,
|
||||
)
|
||||
cv2.imshow("image", im)
|
||||
k = cv2.waitKey(1)
|
||||
if k & 0xff == ord('w'):
|
||||
base+=1
|
||||
elif k & 0xff == ord('s'):
|
||||
base-=1
|
||||
elif k & 0xff == ord('a'):
|
||||
pump.push_async(speed=0.1,vol=0.1)
|
||||
elif k & 0xff == ord('q'):
|
||||
if k & 0xFF == ord("w"):
|
||||
base += 1
|
||||
elif k & 0xFF == ord("s"):
|
||||
base -= 1
|
||||
elif k & 0xFF == ord("a"):
|
||||
pump.push_async(speed=0.1, vol=0.1)
|
||||
elif k & 0xFF == ord("q"):
|
||||
print("Camera index = ", vidId)
|
||||
print("k =",base)
|
||||
print("k =", base)
|
||||
cap.release()
|
||||
cv2.destroyAllWindows()
|
||||
break
|
||||
break
|
||||
|
Reference in New Issue
Block a user