diff --git a/python/haarcascade.py/main.py b/python/haarcascade.py/main.py new file mode 100644 index 0000000..a89cff9 --- /dev/null +++ b/python/haarcascade.py/main.py @@ -0,0 +1,66 @@ +import cv2 +import sys +import pandas + +cascPath = "haarcascade_frontalface_default.xml" +faceCascade = cv2.CascadeClassifier(cascPath) + +video_capture = cv2.VideoCapture('X:/video.mp4') + +list_avr = [] +f = 0 + +red = 0 +blue = 0 +green = 0 + +while True: + temp = [] + # Capture frame-by-frame + ret, frame = video_capture.read() + img = cv2.resize(frame, (640, 480)) + gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + + faces = faceCascade.detectMultiScale( + img, + scaleFactor=1.1, + minNeighbors=5, + minSize=(30, 30), + #flags=cv2.cv.CV_HAAR_SCALE_IMAGE + ) + + + + # Draw a rectangle around the faces + for (x, y, w, h) in faces: + cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2) + for i in range(x, x+w): + for j in range(y, y+w): + B, G, R = img[i, j] + red += R + blue += B + green += G + n = (x+w)*(y+w) + temp.append([int(red/n), int(green/n), int(blue/n)]) + list_avr.append(temp) + temp = [] + red = 0 + green = 0 + blue = 0 + cv2.imshow('Video', img) + + key = cv2.waitKey(1) & 0xFF + if key == ord('q') or cv2.getWindowProperty('Video', cv2.WND_PROP_VISIBLE) < 1: + break + + f += 1 +print(len(list_avr)) + +with open("X:/listRGB.txt", "w") as file: + # Write each item in the list to a new line in the file + for line in list_avr: + file.write(str(line) + "\n") + +# When everything is done, release the capture +video_capture.release() +cv2.destroyAllWindows()