diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..72d821a5e --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "C:\\Users\\fayer\\anaconda3\\envs\\cv-env\\python.exe" +} \ No newline at end of file diff --git a/Facial_Image_Augmentation.py b/Facial_Image_Augmentation.py new file mode 100644 index 000000000..3133d46de --- /dev/null +++ b/Facial_Image_Augmentation.py @@ -0,0 +1,57 @@ +import sys +import cv2 +import os +import numpy as np +import math +import random + + +def facial_recognition_augmentation(label): + aug = 5 + image_path = sys.path[0] + '/Facial_images/face_rec/train/' + label + '/' + imagelist = os.listdir(image_path) + + for file_name in imagelist: + (nameWithoutExtention, extention) = os.path.splitext(os.path.basename(file_name)) + + if (extention==".jpg"): + + #print(image_path+file_name) + inputImage = cv2.imread(image_path+file_name) + + for i in range(aug): + rotate = random.randint(-8,8) + brightness = random.randint(-30, +30) + clahe = random.uniform(0.0, 1.0) + + choice = random.randint(0, 10) + + (h, w) = inputImage.shape[:2] #10 + center = (w // 2, h // 2) #11 + + M = cv2.getRotationMatrix2D(center, rotate, 1.0) #12 + inputImage = cv2.warpAffine(inputImage, M, (w, h)) #13 + + if (choice%3 == 1): + clahe = cv2.createCLAHE(clipLimit=clahe, tileGridSize=(8,8)) + inputImage = cv2.cvtColor(inputImage, cv2.COLOR_BGR2LAB) # convert from BGR to LAB color space + l, a, b = cv2.split(inputImage) # split on 3 different channels + l2 = clahe.apply(l) # apply CLAHE to the L-channel + inputImage = cv2.merge((l2,a,b)) # merge channels + inputImage = cv2.cvtColor(inputImage, cv2.COLOR_LAB2BGR) # convert from LAB to BGR + elif(choice%3 == 2): + fI = inputImage/255.0 + gamma = random.uniform(0.2, 0.4) + #inputImage = np.power(fI, gamma) + else: + cv2.addWeighted( inputImage, 0.5, inputImage, 0.5, brightness, inputImage) + + choice_1 = random.randint(0, 10) + if (choice_1%2 == 1): + gauss = random.randint(1, 2)*2-1 + + inputImage = cv2.GaussianBlur(inputImage, (gauss,gauss), 0) + + cv2.imwrite(image_path+nameWithoutExtention+"_aug"+str(i)+".jpg", inputImage) + + diff --git a/Facial_Recognition_Registration.py b/Facial_Recognition_Registration.py index d2872016d..805d0dae6 100644 --- a/Facial_Recognition_Registration.py +++ b/Facial_Recognition_Registration.py @@ -3,10 +3,11 @@ import os import math import cv2 import Facial_Recognition_Enrollment +import Facial_Image_Augmentation def register_your_face(label): - num_cap = 50 + num_cap = 10 path = sys.path[0] + '/Facial_images/face_rec/train/' + label @@ -30,14 +31,4 @@ def register_your_face(label): cap.release() cv2.destroyAllWindows() - -if __name__ == "__main__": - print("Face registration start...") - print() - label = input('Pleas enter your Name/Label: ') - register_your_face(label) - print("Data saved! Starting enrollment...") - print() - Facial_Recognition_Enrollment.enroll_face_dataset() # Need discuss and modify after intergrate with database. - print("Face registration completed!") - print() + Facial_Image_Augmentation.facial_recognition_augmentation(label) diff --git a/Facial_Recognition_Render(abandoned).py b/Facial_Recognition_Render(abandoned).py deleted file mode 100644 index 004c9d620..000000000 --- a/Facial_Recognition_Render(abandoned).py +++ /dev/null @@ -1,298 +0,0 @@ -import cv2 -import dlib -import numpy as np -import math - -# Returns 8 points on the boundary of a rectangle -def getEightBoundaryPoints(h, w): - boundaryPts = [] - boundaryPts.append((0,0)) - boundaryPts.append((w/2, 0)) - boundaryPts.append((w-1,0)) - boundaryPts.append((w-1, h/2)) - boundaryPts.append((w-1, h-1)) - boundaryPts.append((w/2, h-1)) - boundaryPts.append((0, h-1)) - boundaryPts.append((0, h/2)) - return np.array(boundaryPts, dtype=np.float) - - -# Constrains points to be inside boundary -def constrainPoint(p, w, h): - p = (min(max(p[0], 0), w - 1), min(max(p[1], 0), h - 1)) - return p - -# convert Dlib shape detector object to list of tuples -def dlibLandmarksToPoints(shape): - points = [] - for p in shape.parts(): - pt = (p.x, p.y) - points.append(pt) - return points - -# Compute similarity transform given two sets of two points. -# OpenCV requires 3 pairs of corresponding points. -# We are faking the third one. -def similarityTransform(inPoints, outPoints): - s60 = math.sin(60*math.pi/180) - c60 = math.cos(60*math.pi/180) - - inPts = np.copy(inPoints).tolist() - outPts = np.copy(outPoints).tolist() - - # The third point is calculated so that the three points make an equilateral triangle - xin = c60*(inPts[0][0] - inPts[1][0]) - s60*(inPts[0][1] - inPts[1][1]) + inPts[1][0] - yin = s60*(inPts[0][0] - inPts[1][0]) + c60*(inPts[0][1] - inPts[1][1]) + inPts[1][1] - - inPts.append([np.int(xin), np.int(yin)]) - - xout = c60*(outPts[0][0] - outPts[1][0]) - s60*(outPts[0][1] - outPts[1][1]) + outPts[1][0] - yout = s60*(outPts[0][0] - outPts[1][0]) + c60*(outPts[0][1] - outPts[1][1]) + outPts[1][1] - - outPts.append([np.int(xout), np.int(yout)]) - # Now we can use estimateRigidTransform for calculating the similarity transform. - tform = cv2.estimateAffinePartial2D(np.array([inPts]), np.array([outPts])) - return tform[0] - -# Normalizes a facial image to a standard size given by outSize. -# Normalization is done based on Dlib's landmark points passed as pointsIn -# After normalization, left corner of the left eye is at (0.3 * w, h/3 ) -# and right corner of the right eye is at ( 0.7 * w, h / 3) where w and h -# are the width and height of outSize. -def normalizeImagesAndLandmarks(outSize, imIn, pointsIn): - h, w = outSize - - # Corners of the eye in input image - if len(pointsIn) == 68: - eyecornerSrc = [pointsIn[36], pointsIn[45]] - elif len(pointsIn) == 5: - eyecornerSrc = [pointsIn[2], pointsIn[0]] - - # Corners of the eye in normalized image - eyecornerDst = [(np.int(0.3 * w), np.int(h/3)), - (np.int(0.7 * w), np.int(h/3))] - - # Calculate similarity transform - tform = similarityTransform(eyecornerSrc, eyecornerDst) - imOut = np.zeros(imIn.shape, dtype=imIn.dtype) - - # Apply similarity transform to input image - imOut = cv2.warpAffine(imIn, tform, (w, h)) - - # reshape pointsIn from numLandmarks x 2 to numLandmarks x 1 x 2 - points2 = np.reshape(pointsIn, (pointsIn.shape[0], 1, pointsIn.shape[1])) - - # Apply similarity transform to landmarks - pointsOut = cv2.transform(points2, tform) - - # reshape pointsOut to numLandmarks x 2 - pointsOut = np.reshape(pointsOut, (pointsIn.shape[0], pointsIn.shape[1])) - - return imOut, pointsOut - -def alignFace(imIn, faceRect, landmarkDetector, outSize): - # Corners of the eye in input image - (w, h) = outSize - landmarks = landmarkDetector(cv2.cvtColor(imIn, cv2.COLOR_BGR2RGB), faceRect) - pointsIn = np.array(dlibLandmarksToPoints(landmarks)) - - eyecornerSrc = [pointsIn[2], pointsIn[0]] - - # Corners of the eye in normalized image - eyecornerDst = [(np.int(0.2 * w), np.int(h/3)), - (np.int(0.8 * w), np.int(h/3))] - - # Calculate similarity transform - tform = similarityTransform(eyecornerSrc, eyecornerDst) - - imIn = np.float32(imIn)/255.0 - imOut = np.zeros(imIn.shape, dtype=imIn.dtype) - - # Apply similarity transform to input image - imOut = cv2.warpAffine(imIn, tform, outSize) - - imOut = np.uint8(imOut*255) - - return imOut - - -# find the point closest to an array of points -# pointsArray is a Nx2 and point is 1x2 ndarray -def findIndex(pointsArray, point): - dist = np.linalg.norm(pointsArray-point, axis=1) - minIndex = np.argmin(dist) - return minIndex - - -# Check if a point is inside a rectangle -def rectContains(rect, point): - if point[0] < rect[0]: - return False - elif point[1] < rect[1]: - return False - elif point[0] > rect[2]: - return False - elif point[1] > rect[3]: - return False - return True - - -# Calculate Delaunay triangles for set of points -# Returns the vector of indices of 3 points for each triangle -def calculateDelaunayTriangles(rect, points): - - # Create an instance of Subdiv2D - subdiv = cv2.Subdiv2D(rect) - - # Insert points into subdiv - for p in points: - subdiv.insert((p[0], p[1])) - - # Get Delaunay triangulation - triangleList = subdiv.getTriangleList() - - # Find the indices of triangles in the points array - delaunayTri = [] - - for t in triangleList: - # The triangle returned by getTriangleList is - # a list of 6 coordinates of the 3 points in - # x1, y1, x2, y2, x3, y3 format. - # Store triangle as a list of three points - pt = [] - pt.append((t[0], t[1])) - pt.append((t[2], t[3])) - pt.append((t[4], t[5])) - - pt1 = (t[0], t[1]) - pt2 = (t[2], t[3]) - pt3 = (t[4], t[5]) - - if rectContains(rect, pt1) and rectContains(rect, pt2) and rectContains(rect, pt3): - # Variable to store a triangle as indices from list of points - ind = [] - # Find the index of each vertex in the points list - for j in range(0, 3): - for k in range(0, len(points)): - if(abs(pt[j][0] - points[k][0]) < 1.0 and abs(pt[j][1] - points[k][1]) < 1.0): - ind.append(k) - # Store triangulation as a list of indices - if len(ind) == 3: - delaunayTri.append((ind[0], ind[1], ind[2])) - - return delaunayTri - -# Apply affine transform calculated using srcTri and dstTri to src and -# output an image of size. -def applyAffineTransform(src, srcTri, dstTri, size): - - # Given a pair of triangles, find the affine transform. - warpMat = cv2.getAffineTransform(np.float32(srcTri), np.float32(dstTri)) - - # Apply the Affine Transform just found to the src image - dst = cv2.warpAffine(src, warpMat, (size[0], size[1]), None, - flags=cv2.INTER_LINEAR, borderMode=cv2.BORDER_REFLECT_101) - - return dst - -# Warps and alpha blends triangular regions from img1 and img2 to img -def warpTriangle(img1, img2, t1, t2): - # Find bounding rectangle for each triangle - r1 = cv2.boundingRect(np.float32([t1])) - r2 = cv2.boundingRect(np.float32([t2])) - - # Offset points by left top corner of the respective rectangles - t1Rect = [] - t2Rect = [] - t2RectInt = [] - - for i in range(0, 3): - t1Rect.append(((t1[i][0] - r1[0]), (t1[i][1] - r1[1]))) - t2Rect.append(((t2[i][0] - r2[0]), (t2[i][1] - r2[1]))) - t2RectInt.append(((t2[i][0] - r2[0]), (t2[i][1] - r2[1]))) - - # Get mask by filling triangle - mask = np.zeros((r2[3], r2[2], 3), dtype=np.float32) - cv2.fillConvexPoly(mask, np.int32(t2RectInt), (1.0, 1.0, 1.0), 16, 0) - - # Apply warpImage to small rectangular patches - img1Rect = img1[r1[1]:r1[1] + r1[3], r1[0]:r1[0] + r1[2]] - - size = (r2[2], r2[3]) - - img2Rect = applyAffineTransform(img1Rect, t1Rect, t2Rect, size) - - img2Rect = img2Rect * mask - - # Copy triangular region of the rectangular patch to the output image - img2[r2[1]:r2[1]+r2[3], r2[0]:r2[0]+r2[2]] = img2[r2[1]:r2[1]+r2[3], r2[0]:r2[0]+r2[2]] * ((1.0, 1.0, 1.0) - mask) - img2[r2[1]:r2[1]+r2[3], r2[0]:r2[0]+r2[2]] = img2[r2[1]:r2[1]+r2[3], r2[0]:r2[0]+r2[2]] + img2Rect - -# detect facial landmarks in image -def getLandmarks(faceDetector, landmarkDetector, im, FACE_DOWNSAMPLE_RATIO = 1): - points = [] - imSmall = cv2.resize(im,None, - fx=1.0/FACE_DOWNSAMPLE_RATIO, - fy=1.0/FACE_DOWNSAMPLE_RATIO, - interpolation = cv2.INTER_LINEAR) - - faceRects = faceDetector(imSmall, 0) - - if len(faceRects) > 0: - maxArea = 0 - maxRect = None - # TODO: test on images with multiple faces - for face in faceRects: - if face.area() > maxArea: - maxArea = face.area() - maxRect = [face.left(), - face.top(), - face.right(), - face.bottom() - ] - - rect = dlib.rectangle(*maxRect) - scaledRect = dlib.rectangle(int(rect.left()*FACE_DOWNSAMPLE_RATIO), - int(rect.top()*FACE_DOWNSAMPLE_RATIO), - int(rect.right()*FACE_DOWNSAMPLE_RATIO), - int(rect.bottom()*FACE_DOWNSAMPLE_RATIO)) - - landmarks = landmarkDetector(im, scaledRect) - points = dlibLandmarksToPoints(landmarks) - return points - -# Warps an image in a piecewise affine manner. -# The warp is defined by the movement of landmark points specified by pointsIn -# to a new location specified by pointsOut. The triangulation beween points is specified -# by their indices in delaunayTri. -def warpImage(imIn, pointsIn, pointsOut, delaunayTri): - h, w, ch = imIn.shape - # Output image - imOut = np.zeros(imIn.shape, dtype=imIn.dtype) - - # Warp each input triangle to output triangle. - # The triangulation is specified by delaunayTri - for j in range(0, len(delaunayTri)): - # Input and output points corresponding to jth triangle - tin = [] - tout = [] - - for k in range(0, 3): - # Extract a vertex of input triangle - pIn = pointsIn[delaunayTri[j][k]] - # Make sure the vertex is inside the image. - pIn = constrainPoint(pIn, w, h) - - # Extract a vertex of the output triangle - pOut = pointsOut[delaunayTri[j][k]] - # Make sure the vertex is inside the image. - pOut = constrainPoint(pOut, w, h) - - # Push the input vertex into input triangle - tin.append(pIn) - # Push the output vertex into output triangle - tout.append(pOut) - - # Warp pixels inside input triangle to output triangle. - warpTriangle(imIn, imOut, tin, tout) - return imOut diff --git a/Facial_Recognition_Wrapper(abandoned).py b/Facial_Recognition_Wrapper(abandoned).py deleted file mode 100644 index 2a0bce283..000000000 --- a/Facial_Recognition_Wrapper(abandoned).py +++ /dev/null @@ -1,290 +0,0 @@ -import sys -import os -import math -import cv2 -import dlib -import numpy as np -import Facial_Recognition_Render as fr -import _pickle as cPickle -import glob -import DBHelper - -faceWidth = 320 -faceHeight = 320 -SKIP_FRAMES = 1 - - -def alignFace(imFace, landmarks): - l_x = landmarks[39][0] - l_y = landmarks[39][1] - r_x = landmarks[42][0] - r_y = landmarks[42][1] - dy = r_y - l_y - dx = r_x - l_x - # Convert from radians to degrees - angle = math.atan2(dy, dx) * 180.0 / math.pi - - eyesCenter = ((l_x + r_x) * 0.5, (l_y + r_y) * 0.5) - rotMatrix = cv2.getRotationMatrix2D(eyesCenter, angle, 1) - alignedImFace = np.zeros(imFace.shape, dtype=np.uint8) - alignedImFace = cv2.warpAffine(imFace, rotMatrix, (imFace.shape[1], imFace.shape[0])) - return alignedImFace - - -def face_detector_haarcascade(image): - grey = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) - - resize_fx = 1 - resize_fy = 1 - grey = cv2.resize(grey, dsize=None, fx=resize_fx, fy=resize_fy, interpolation=cv2.INTER_AREA) - - pwd = sys.path[0] - classfier = cv2.CascadeClassifier(pwd + "/Facial_models/haarcascade_frontalface_alt2.xml") - - faceRects = classfier.detectMultiScale(grey, scaleFactor=1.2, minNeighbors=1, minSize=(16, 16)) - - if len(faceRects) > 0: - for faceRect in faceRects: - x, y, w, h = faceRect - x = int(x / resize_fx) - y = int(y / resize_fy) - w = int(w / resize_fx) - h = int(h / resize_fy) - cv2.rectangle(image, (x - 10, y - 10), (x + w + 10, y + h + 10), (0, 255, 0), 5) - - return image - - -def face_detector_ssd(image): - pwd = sys.path[0] - net = cv2.dnn.readNetFromCaffe(pwd + "/Facial_models/deploy.prototxt", - pwd + "/Facial_models/res10_300x300_ssd_iter_140000_fp16.caffemodel") - - resize = (300, 300) - confidence_thres = 0.65 - - blob = cv2.dnn.blobFromImage(cv2.resize(image, dsize=resize), 1.0, resize, (104.0, 177.0, 123.0)) - # blob = cv2.dnn.blobFromImage(cv2.resize(image, (300, 300)), 1.0, (300, 300), (104.0, 177.0, 123.0)) - - net.setInput(blob) - - detections = net.forward() - - h, w, c = image.shape - - for i in range(0, detections.shape[2]): - confidence = detections[0, 0, i, 2] - if confidence > confidence_thres: - box = detections[0, 0, i, 3:7] * np.array([w, h, w, h]) - (startX, startY, endX, endY) = box.astype("int") - text = "{:.2f}%".format(confidence * 100) - y = startY - 10 if startY - 10 > 10 else startY + 10 - cv2.rectangle(image, (startX, startY), (endX, endY), (0, 255, 0), 5) - cv2.putText(image, text, (startX, y), cv2.FONT_HERSHEY_SIMPLEX, 1.00, (0, 255, 0), 3) - - return image - - -def training_data_loader(): - imagesFolder = sys.path[0] + "/Facial_images/face_rec/train/" - subfolders = [] - - for x in os.listdir(imagesFolder): - xpath = os.path.join(imagesFolder, x) - if os.path.isdir(xpath): - subfolders.append(xpath) - - imagePaths = [] - labels = [] - labelsMap = {} - labelsMap[-1] = "unknown" - - for i, subfolder in enumerate(subfolders): - labelsMap[i] = DBHelper.get_firstname(os.path.basename(subfolder)) + "_" + DBHelper.get_lastname( - os.path.basename(subfolder)) - for x in os.listdir(subfolder): - xpath = os.path.join(subfolder, x) - if x.endswith('jpg') or x.endswith('pgm'): - imagePaths.append(xpath) - labels.append(i) - - imagesFaceTrain = [] - labelsFaceTrain = [] - - faceDetector = dlib.get_frontal_face_detector() - landmarkDetector = dlib.shape_predictor(sys.path[0] + "/Facial_models/shape_predictor_68_face_landmarks.dat") - - for j, imagePath in enumerate(imagePaths): - im = cv2.imread(imagePath, 0) - imHeight, imWidth = im.shape[:2] - - landmarks = fr.getLandmarks(faceDetector, landmarkDetector, im) - - landmarks = np.array(landmarks) - - if len(landmarks) == 68: - x1Limit = landmarks[0][0] - (landmarks[36][0] - landmarks[0][0]) - x2Limit = landmarks[16][0] + (landmarks[16][0] - landmarks[45][0]) - y1Limit = landmarks[27][1] - 3 * (landmarks[30][1] - landmarks[27][1]) - y2Limit = landmarks[8][1] + (landmarks[30][1] - landmarks[29][1]) - - x1 = max(x1Limit, 0) - x2 = min(x2Limit, imWidth) - y1 = max(y1Limit, 0) - y2 = min(y2Limit, imHeight) - imFace = im[y1:y2, x1:x2] - - alignedFace = alignFace(imFace, landmarks) - alignedFace = cv2.resize(alignedFace, (faceHeight, faceWidth)) - - imagesFaceTrain.append(np.float32(alignedFace) / 255.0) - labelsFaceTrain.append(labels[j]) - - return imagesFaceTrain, labelsFaceTrain, labelsMap - - -def training_recognizer(rec_type): - imagesFaceTrain, labelsFaceTrain, labelsMap = training_data_loader() - - if (rec_type == 'LBPH'): - faceRecognizer = cv2.face.LBPHFaceRecognizer_create() - print("Training using LBPH Faces") - elif (rec_type == 'Eigen'): - faceRecognizer = cv2.face.EigenFaceRecognizer_create() - print("Training using Eigen Faces") - elif (rec_type == 'Fisher'): - faceRecognizer = cv2.face.FisherFaceRecognizer_create() - print("Training using Fisher Faces") - - faceRecognizer.train(imagesFaceTrain, np.array(labelsFaceTrain)) - faceRecognizer.write(sys.path[0] + '/Facial_models/face_rec_model.yml') - - with open(sys.path[0] + '/Facial_models/labels_map.pkl', 'wb') as f: - cPickle.dump(labelsMap, f) - - -def face_recognition_inference(rec_type): - # testFiles = glob.glob(sys.path[0]+'/Facial_test_images/face_rec/test/*.jpg') - # testFiles.sort() - i = 0 - correct = 0 - error = 0 - faceDetector = dlib.get_frontal_face_detector() - print(sys.path[0]) - landmarkDetector = dlib.shape_predictor(sys.path[0] + '/Facial_models/shape_predictor_68_face_landmarks.dat') - - if rec_type == 'LBPH': - faceRecognizer = cv2.face.LBPHFaceRecognizer_create() - print("Test using LBPH Faces") - elif rec_type == 'Eigen': - faceRecognizer = cv2.face.EigenFaceRecognizer_create() - print("Test using Eigen Faces") - elif rec_type == 'Fisher': - faceRecognizer = cv2.face.FisherFaceRecognizer_create() - print("Test using Fisher Faces") - - faceRecognizer.read(sys.path[0] + '/Facial_models/face_rec_model.yml') - labelsMap = np.load(sys.path[0] + '/Facial_models/labels_map.pkl', allow_pickle=True) - - cam = cv2.VideoCapture(0) - - while DBHelper.get_power() == "on": - # imagePath = testFiles[i] - success, original = cam.read() - im = cv2.resize(original, (640, 480)) - i += 1 - - im = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) - imHeight, imWidth = im.shape[:2] - - landmarks = fr.getLandmarks(faceDetector, landmarkDetector, im) - landmarks = np.array(landmarks) - - cond = False - cond2 = False - - if len(landmarks) == 68: - x1Limit = landmarks[0][0] - (landmarks[36][0] - landmarks[0][0]) - x2Limit = landmarks[16][0] + (landmarks[16][0] - landmarks[45][0]) - y1Limit = landmarks[27][1] - 3 * (landmarks[30][1] - landmarks[27][1]) - y2Limit = landmarks[8][1] + (landmarks[30][1] - landmarks[29][1]) - - x1 = max(x1Limit, 0) - x2 = min(x2Limit, imWidth) - y1 = max(y1Limit, 0) - y2 = min(y2Limit, imHeight) - imFace = im[y1:y2, x1:x2] - - alignedFace = alignFace(imFace, landmarks) - alignedFace = cv2.resize(alignedFace, (faceHeight, faceWidth)) - imFaceFloat = np.float32(alignedFace) / 255.0 - - predictedLabel = -1 - predictedLabel, score = faceRecognizer.predict(imFaceFloat) - center = (int((x1 + x2) / 2), int((y1 + y2) / 2)) - radius = int((y2 - y1) / 2.0) - text = '{} {}%'.format(labelsMap[predictedLabel], round(score, 5)) - cv2.rectangle(original, (x1, y1), (x2, y2), (0, 255, 0), 5) - cv2.putText(original, text, (x1, y1 - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.8, (0, 255, 0), 3) - cond = True - - if cond: - DBHelper.set_motor("on") - DBHelper.set_alarm("off") - elif not cond: - DBHelper.set_motor("off") - DBHelper.set_alarm("on") - - cv2.imshow('Face Recognition Demo', original) - - k = cv2.waitKey(10) - - DBHelper.set_alarm("off") - DBHelper.set_motor("off") - cam.release() - cv2.destroyAllWindows() - - -if __name__ == "__main__": - mode = 'test' - rec_type = 'LBPH' # 'LBPH' 'Fisher' 'Eigen' - - if mode == 'train': - training_recognizer(rec_type) - elif mode == 'test': - face_recognition_inference(rec_type) - - # video process (keep it in case if needed) - ''' - cameraCapture = cv2.VideoCapture(1) - success, frame = cameraCapture.read() - - while success and cv2.waitKey(1) == -1: - success, frame = cameraCapture.read() - face_detector_ssd(frame) - cv2.imshow("video", frame) - - cameraCapture.release() - cv2.destroyAllWindows() - ''' - - # image process (keep it in case if needed) - ''' - image_name = "8.jpg" - split_name = image_name.split(".") - - image_read_path = sys.path[0]+"/Facial_test_images/"+image_name - image_save_path = sys.path[0]+"/Facial_test_images/output/"+split_name[0]+"_result."+split_name[1] - - image = cv2.imread(image_read_path) - - image = face_detector_ssd(image) - image = face_detector_haarcascade(image) - - print(image_save_path) - - cv2.imwrite(image_save_path, image) - cv2.imshow("result", image) - cv2.waitKey() - cv2.destroyAllWindows() - ''' diff --git a/Facial_images/face_rec/train/User_1/0.jpg b/Facial_images/face_rec/train/User_1/0.jpg index 5d83ee139..48231d210 100644 Binary files a/Facial_images/face_rec/train/User_1/0.jpg and b/Facial_images/face_rec/train/User_1/0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/0_aug0.jpg b/Facial_images/face_rec/train/User_1/0_aug0.jpg new file mode 100644 index 000000000..b4b7251b7 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/0_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/0_aug1.jpg b/Facial_images/face_rec/train/User_1/0_aug1.jpg new file mode 100644 index 000000000..167485388 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/0_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/0_aug2.jpg b/Facial_images/face_rec/train/User_1/0_aug2.jpg new file mode 100644 index 000000000..720109c19 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/0_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/0_aug3.jpg b/Facial_images/face_rec/train/User_1/0_aug3.jpg new file mode 100644 index 000000000..90b8c6a44 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/0_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/0_aug4.jpg b/Facial_images/face_rec/train/User_1/0_aug4.jpg new file mode 100644 index 000000000..92b2c4682 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/0_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/1.jpg b/Facial_images/face_rec/train/User_1/1.jpg index 83b50dcda..f0a6680a3 100644 Binary files a/Facial_images/face_rec/train/User_1/1.jpg and b/Facial_images/face_rec/train/User_1/1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/10.jpg b/Facial_images/face_rec/train/User_1/10.jpg deleted file mode 100644 index 6e5a5e4a0..000000000 Binary files a/Facial_images/face_rec/train/User_1/10.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/11.jpg b/Facial_images/face_rec/train/User_1/11.jpg deleted file mode 100644 index c3310200c..000000000 Binary files a/Facial_images/face_rec/train/User_1/11.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/12.jpg b/Facial_images/face_rec/train/User_1/12.jpg deleted file mode 100644 index 6fc791efa..000000000 Binary files a/Facial_images/face_rec/train/User_1/12.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/13.jpg b/Facial_images/face_rec/train/User_1/13.jpg deleted file mode 100644 index 9e2f28188..000000000 Binary files a/Facial_images/face_rec/train/User_1/13.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/14.jpg b/Facial_images/face_rec/train/User_1/14.jpg deleted file mode 100644 index c09cc8d72..000000000 Binary files a/Facial_images/face_rec/train/User_1/14.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/15.jpg b/Facial_images/face_rec/train/User_1/15.jpg deleted file mode 100644 index 38af72ccd..000000000 Binary files a/Facial_images/face_rec/train/User_1/15.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/16.jpg b/Facial_images/face_rec/train/User_1/16.jpg deleted file mode 100644 index abbecdec4..000000000 Binary files a/Facial_images/face_rec/train/User_1/16.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/17.jpg b/Facial_images/face_rec/train/User_1/17.jpg deleted file mode 100644 index f81983d6a..000000000 Binary files a/Facial_images/face_rec/train/User_1/17.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/18.jpg b/Facial_images/face_rec/train/User_1/18.jpg deleted file mode 100644 index 70318b443..000000000 Binary files a/Facial_images/face_rec/train/User_1/18.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/19.jpg b/Facial_images/face_rec/train/User_1/19.jpg deleted file mode 100644 index c699b3c63..000000000 Binary files a/Facial_images/face_rec/train/User_1/19.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/1_aug0.jpg b/Facial_images/face_rec/train/User_1/1_aug0.jpg new file mode 100644 index 000000000..7b8d5fb2a Binary files /dev/null and b/Facial_images/face_rec/train/User_1/1_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/1_aug1.jpg b/Facial_images/face_rec/train/User_1/1_aug1.jpg new file mode 100644 index 000000000..2efb3790f Binary files /dev/null and b/Facial_images/face_rec/train/User_1/1_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/1_aug2.jpg b/Facial_images/face_rec/train/User_1/1_aug2.jpg new file mode 100644 index 000000000..bbe1f36c8 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/1_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/1_aug3.jpg b/Facial_images/face_rec/train/User_1/1_aug3.jpg new file mode 100644 index 000000000..1f84104c5 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/1_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/1_aug4.jpg b/Facial_images/face_rec/train/User_1/1_aug4.jpg new file mode 100644 index 000000000..6d2f92434 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/1_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/2.jpg b/Facial_images/face_rec/train/User_1/2.jpg index ba671e140..9a95c6754 100644 Binary files a/Facial_images/face_rec/train/User_1/2.jpg and b/Facial_images/face_rec/train/User_1/2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/20.jpg b/Facial_images/face_rec/train/User_1/20.jpg deleted file mode 100644 index ed4753934..000000000 Binary files a/Facial_images/face_rec/train/User_1/20.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/21.jpg b/Facial_images/face_rec/train/User_1/21.jpg deleted file mode 100644 index 133866675..000000000 Binary files a/Facial_images/face_rec/train/User_1/21.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/22.jpg b/Facial_images/face_rec/train/User_1/22.jpg deleted file mode 100644 index fcb3b7cfb..000000000 Binary files a/Facial_images/face_rec/train/User_1/22.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/23.jpg b/Facial_images/face_rec/train/User_1/23.jpg deleted file mode 100644 index 4864e663e..000000000 Binary files a/Facial_images/face_rec/train/User_1/23.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/24.jpg b/Facial_images/face_rec/train/User_1/24.jpg deleted file mode 100644 index acc5dc7cd..000000000 Binary files a/Facial_images/face_rec/train/User_1/24.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/25.jpg b/Facial_images/face_rec/train/User_1/25.jpg deleted file mode 100644 index e2368aba6..000000000 Binary files a/Facial_images/face_rec/train/User_1/25.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/26.jpg b/Facial_images/face_rec/train/User_1/26.jpg deleted file mode 100644 index 26728240c..000000000 Binary files a/Facial_images/face_rec/train/User_1/26.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/27.jpg b/Facial_images/face_rec/train/User_1/27.jpg deleted file mode 100644 index d859b9a8e..000000000 Binary files a/Facial_images/face_rec/train/User_1/27.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/28.jpg b/Facial_images/face_rec/train/User_1/28.jpg deleted file mode 100644 index b72eac8ba..000000000 Binary files a/Facial_images/face_rec/train/User_1/28.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/29.jpg b/Facial_images/face_rec/train/User_1/29.jpg deleted file mode 100644 index 41a2ecf1a..000000000 Binary files a/Facial_images/face_rec/train/User_1/29.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/2_aug0.jpg b/Facial_images/face_rec/train/User_1/2_aug0.jpg new file mode 100644 index 000000000..4e9bb1513 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/2_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/2_aug1.jpg b/Facial_images/face_rec/train/User_1/2_aug1.jpg new file mode 100644 index 000000000..a7f029975 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/2_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/2_aug2.jpg b/Facial_images/face_rec/train/User_1/2_aug2.jpg new file mode 100644 index 000000000..f3a9c4e5a Binary files /dev/null and b/Facial_images/face_rec/train/User_1/2_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/2_aug3.jpg b/Facial_images/face_rec/train/User_1/2_aug3.jpg new file mode 100644 index 000000000..d1cf697f8 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/2_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/2_aug4.jpg b/Facial_images/face_rec/train/User_1/2_aug4.jpg new file mode 100644 index 000000000..1691ceafb Binary files /dev/null and b/Facial_images/face_rec/train/User_1/2_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/3.jpg b/Facial_images/face_rec/train/User_1/3.jpg index a33b7b854..a2e83b284 100644 Binary files a/Facial_images/face_rec/train/User_1/3.jpg and b/Facial_images/face_rec/train/User_1/3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/30.jpg b/Facial_images/face_rec/train/User_1/30.jpg deleted file mode 100644 index 88098f6cc..000000000 Binary files a/Facial_images/face_rec/train/User_1/30.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/31.jpg b/Facial_images/face_rec/train/User_1/31.jpg deleted file mode 100644 index 077721c72..000000000 Binary files a/Facial_images/face_rec/train/User_1/31.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/32.jpg b/Facial_images/face_rec/train/User_1/32.jpg deleted file mode 100644 index 7c3212c22..000000000 Binary files a/Facial_images/face_rec/train/User_1/32.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/33.jpg b/Facial_images/face_rec/train/User_1/33.jpg deleted file mode 100644 index fa1779d1f..000000000 Binary files a/Facial_images/face_rec/train/User_1/33.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/34.jpg b/Facial_images/face_rec/train/User_1/34.jpg deleted file mode 100644 index 0107393d6..000000000 Binary files a/Facial_images/face_rec/train/User_1/34.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/35.jpg b/Facial_images/face_rec/train/User_1/35.jpg deleted file mode 100644 index ca985c0ac..000000000 Binary files a/Facial_images/face_rec/train/User_1/35.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/36.jpg b/Facial_images/face_rec/train/User_1/36.jpg deleted file mode 100644 index 13e4141dc..000000000 Binary files a/Facial_images/face_rec/train/User_1/36.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/37.jpg b/Facial_images/face_rec/train/User_1/37.jpg deleted file mode 100644 index a228d9d61..000000000 Binary files a/Facial_images/face_rec/train/User_1/37.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/38.jpg b/Facial_images/face_rec/train/User_1/38.jpg deleted file mode 100644 index 83fa96294..000000000 Binary files a/Facial_images/face_rec/train/User_1/38.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/39.jpg b/Facial_images/face_rec/train/User_1/39.jpg deleted file mode 100644 index 5d14124f1..000000000 Binary files a/Facial_images/face_rec/train/User_1/39.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/3_aug0.jpg b/Facial_images/face_rec/train/User_1/3_aug0.jpg new file mode 100644 index 000000000..c4301b278 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/3_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/3_aug1.jpg b/Facial_images/face_rec/train/User_1/3_aug1.jpg new file mode 100644 index 000000000..ecb0388dc Binary files /dev/null and b/Facial_images/face_rec/train/User_1/3_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/3_aug2.jpg b/Facial_images/face_rec/train/User_1/3_aug2.jpg new file mode 100644 index 000000000..292cdf20a Binary files /dev/null and b/Facial_images/face_rec/train/User_1/3_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/3_aug3.jpg b/Facial_images/face_rec/train/User_1/3_aug3.jpg new file mode 100644 index 000000000..1dda41afb Binary files /dev/null and b/Facial_images/face_rec/train/User_1/3_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/3_aug4.jpg b/Facial_images/face_rec/train/User_1/3_aug4.jpg new file mode 100644 index 000000000..7e784e038 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/3_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/4.jpg b/Facial_images/face_rec/train/User_1/4.jpg index 1863aab96..5ae594bc9 100644 Binary files a/Facial_images/face_rec/train/User_1/4.jpg and b/Facial_images/face_rec/train/User_1/4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/40.jpg b/Facial_images/face_rec/train/User_1/40.jpg deleted file mode 100644 index e1862a579..000000000 Binary files a/Facial_images/face_rec/train/User_1/40.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/41.jpg b/Facial_images/face_rec/train/User_1/41.jpg deleted file mode 100644 index ad7d40d78..000000000 Binary files a/Facial_images/face_rec/train/User_1/41.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/42.jpg b/Facial_images/face_rec/train/User_1/42.jpg deleted file mode 100644 index 03aac1d44..000000000 Binary files a/Facial_images/face_rec/train/User_1/42.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/43.jpg b/Facial_images/face_rec/train/User_1/43.jpg deleted file mode 100644 index 833b9d24a..000000000 Binary files a/Facial_images/face_rec/train/User_1/43.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/44.jpg b/Facial_images/face_rec/train/User_1/44.jpg deleted file mode 100644 index 4b90ca7dd..000000000 Binary files a/Facial_images/face_rec/train/User_1/44.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/45.jpg b/Facial_images/face_rec/train/User_1/45.jpg deleted file mode 100644 index a286af2ad..000000000 Binary files a/Facial_images/face_rec/train/User_1/45.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/46.jpg b/Facial_images/face_rec/train/User_1/46.jpg deleted file mode 100644 index 798bc53dd..000000000 Binary files a/Facial_images/face_rec/train/User_1/46.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/47.jpg b/Facial_images/face_rec/train/User_1/47.jpg deleted file mode 100644 index c8285b216..000000000 Binary files a/Facial_images/face_rec/train/User_1/47.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/48.jpg b/Facial_images/face_rec/train/User_1/48.jpg deleted file mode 100644 index 55fa7d9ac..000000000 Binary files a/Facial_images/face_rec/train/User_1/48.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/49.jpg b/Facial_images/face_rec/train/User_1/49.jpg deleted file mode 100644 index 6d9395102..000000000 Binary files a/Facial_images/face_rec/train/User_1/49.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_1/4_aug0.jpg b/Facial_images/face_rec/train/User_1/4_aug0.jpg new file mode 100644 index 000000000..c4dc3c0c0 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/4_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/4_aug1.jpg b/Facial_images/face_rec/train/User_1/4_aug1.jpg new file mode 100644 index 000000000..8d54911f1 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/4_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/4_aug2.jpg b/Facial_images/face_rec/train/User_1/4_aug2.jpg new file mode 100644 index 000000000..d203b7257 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/4_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/4_aug3.jpg b/Facial_images/face_rec/train/User_1/4_aug3.jpg new file mode 100644 index 000000000..ef2d02e22 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/4_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/4_aug4.jpg b/Facial_images/face_rec/train/User_1/4_aug4.jpg new file mode 100644 index 000000000..aaea8299c Binary files /dev/null and b/Facial_images/face_rec/train/User_1/4_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/5.jpg b/Facial_images/face_rec/train/User_1/5.jpg index 21ecce667..c9a68eb3f 100644 Binary files a/Facial_images/face_rec/train/User_1/5.jpg and b/Facial_images/face_rec/train/User_1/5.jpg differ diff --git a/Facial_images/face_rec/train/User_1/5_aug0.jpg b/Facial_images/face_rec/train/User_1/5_aug0.jpg new file mode 100644 index 000000000..5d443ab44 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/5_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/5_aug1.jpg b/Facial_images/face_rec/train/User_1/5_aug1.jpg new file mode 100644 index 000000000..b3551305c Binary files /dev/null and b/Facial_images/face_rec/train/User_1/5_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/5_aug2.jpg b/Facial_images/face_rec/train/User_1/5_aug2.jpg new file mode 100644 index 000000000..e48a2929b Binary files /dev/null and b/Facial_images/face_rec/train/User_1/5_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/5_aug3.jpg b/Facial_images/face_rec/train/User_1/5_aug3.jpg new file mode 100644 index 000000000..3e60da107 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/5_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/5_aug4.jpg b/Facial_images/face_rec/train/User_1/5_aug4.jpg new file mode 100644 index 000000000..7585ae152 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/5_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/6.jpg b/Facial_images/face_rec/train/User_1/6.jpg index 910438bbd..cabd8bbbd 100644 Binary files a/Facial_images/face_rec/train/User_1/6.jpg and b/Facial_images/face_rec/train/User_1/6.jpg differ diff --git a/Facial_images/face_rec/train/User_1/6_aug0.jpg b/Facial_images/face_rec/train/User_1/6_aug0.jpg new file mode 100644 index 000000000..5a9385c4b Binary files /dev/null and b/Facial_images/face_rec/train/User_1/6_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/6_aug1.jpg b/Facial_images/face_rec/train/User_1/6_aug1.jpg new file mode 100644 index 000000000..e518dc8a2 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/6_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/6_aug2.jpg b/Facial_images/face_rec/train/User_1/6_aug2.jpg new file mode 100644 index 000000000..7d695979e Binary files /dev/null and b/Facial_images/face_rec/train/User_1/6_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/6_aug3.jpg b/Facial_images/face_rec/train/User_1/6_aug3.jpg new file mode 100644 index 000000000..deb907eb0 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/6_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/6_aug4.jpg b/Facial_images/face_rec/train/User_1/6_aug4.jpg new file mode 100644 index 000000000..992e662ab Binary files /dev/null and b/Facial_images/face_rec/train/User_1/6_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/7.jpg b/Facial_images/face_rec/train/User_1/7.jpg index d351974b9..bd7accf48 100644 Binary files a/Facial_images/face_rec/train/User_1/7.jpg and b/Facial_images/face_rec/train/User_1/7.jpg differ diff --git a/Facial_images/face_rec/train/User_1/7_aug0.jpg b/Facial_images/face_rec/train/User_1/7_aug0.jpg new file mode 100644 index 000000000..20040d643 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/7_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/7_aug1.jpg b/Facial_images/face_rec/train/User_1/7_aug1.jpg new file mode 100644 index 000000000..9481be07a Binary files /dev/null and b/Facial_images/face_rec/train/User_1/7_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/7_aug2.jpg b/Facial_images/face_rec/train/User_1/7_aug2.jpg new file mode 100644 index 000000000..ba5025030 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/7_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/7_aug3.jpg b/Facial_images/face_rec/train/User_1/7_aug3.jpg new file mode 100644 index 000000000..8e52f18ad Binary files /dev/null and b/Facial_images/face_rec/train/User_1/7_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/7_aug4.jpg b/Facial_images/face_rec/train/User_1/7_aug4.jpg new file mode 100644 index 000000000..0835c61a6 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/7_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/8.jpg b/Facial_images/face_rec/train/User_1/8.jpg index b8d9fce60..0581ef6e4 100644 Binary files a/Facial_images/face_rec/train/User_1/8.jpg and b/Facial_images/face_rec/train/User_1/8.jpg differ diff --git a/Facial_images/face_rec/train/User_1/8_aug0.jpg b/Facial_images/face_rec/train/User_1/8_aug0.jpg new file mode 100644 index 000000000..63b78ec52 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/8_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/8_aug1.jpg b/Facial_images/face_rec/train/User_1/8_aug1.jpg new file mode 100644 index 000000000..83925c8b3 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/8_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/8_aug2.jpg b/Facial_images/face_rec/train/User_1/8_aug2.jpg new file mode 100644 index 000000000..1cb4b2def Binary files /dev/null and b/Facial_images/face_rec/train/User_1/8_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/8_aug3.jpg b/Facial_images/face_rec/train/User_1/8_aug3.jpg new file mode 100644 index 000000000..e235ec505 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/8_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/8_aug4.jpg b/Facial_images/face_rec/train/User_1/8_aug4.jpg new file mode 100644 index 000000000..c7b4b3bd9 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/8_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_1/9.jpg b/Facial_images/face_rec/train/User_1/9.jpg index 8c9a53304..f30297df2 100644 Binary files a/Facial_images/face_rec/train/User_1/9.jpg and b/Facial_images/face_rec/train/User_1/9.jpg differ diff --git a/Facial_images/face_rec/train/User_1/9_aug0.jpg b/Facial_images/face_rec/train/User_1/9_aug0.jpg new file mode 100644 index 000000000..34286229f Binary files /dev/null and b/Facial_images/face_rec/train/User_1/9_aug0.jpg differ diff --git a/Facial_images/face_rec/train/User_1/9_aug1.jpg b/Facial_images/face_rec/train/User_1/9_aug1.jpg new file mode 100644 index 000000000..8ac640c41 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/9_aug1.jpg differ diff --git a/Facial_images/face_rec/train/User_1/9_aug2.jpg b/Facial_images/face_rec/train/User_1/9_aug2.jpg new file mode 100644 index 000000000..bf63b0e19 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/9_aug2.jpg differ diff --git a/Facial_images/face_rec/train/User_1/9_aug3.jpg b/Facial_images/face_rec/train/User_1/9_aug3.jpg new file mode 100644 index 000000000..4503ec30c Binary files /dev/null and b/Facial_images/face_rec/train/User_1/9_aug3.jpg differ diff --git a/Facial_images/face_rec/train/User_1/9_aug4.jpg b/Facial_images/face_rec/train/User_1/9_aug4.jpg new file mode 100644 index 000000000..f958984c9 Binary files /dev/null and b/Facial_images/face_rec/train/User_1/9_aug4.jpg differ diff --git a/Facial_images/face_rec/train/User_2/0.jpg b/Facial_images/face_rec/train/User_2/0.jpg deleted file mode 100644 index ba3ef8144..000000000 Binary files a/Facial_images/face_rec/train/User_2/0.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/1.jpg b/Facial_images/face_rec/train/User_2/1.jpg deleted file mode 100644 index c9aa4c3c1..000000000 Binary files a/Facial_images/face_rec/train/User_2/1.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/10.jpg b/Facial_images/face_rec/train/User_2/10.jpg deleted file mode 100644 index 9c1154324..000000000 Binary files a/Facial_images/face_rec/train/User_2/10.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/11.jpg b/Facial_images/face_rec/train/User_2/11.jpg deleted file mode 100644 index 2e5e8ee13..000000000 Binary files a/Facial_images/face_rec/train/User_2/11.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/12.jpg b/Facial_images/face_rec/train/User_2/12.jpg deleted file mode 100644 index c9390ec52..000000000 Binary files a/Facial_images/face_rec/train/User_2/12.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/13.jpg b/Facial_images/face_rec/train/User_2/13.jpg deleted file mode 100644 index 0c9800004..000000000 Binary files a/Facial_images/face_rec/train/User_2/13.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/14.jpg b/Facial_images/face_rec/train/User_2/14.jpg deleted file mode 100644 index 984e6bda4..000000000 Binary files a/Facial_images/face_rec/train/User_2/14.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/15.jpg b/Facial_images/face_rec/train/User_2/15.jpg deleted file mode 100644 index 1c98f0aef..000000000 Binary files a/Facial_images/face_rec/train/User_2/15.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/16.jpg b/Facial_images/face_rec/train/User_2/16.jpg deleted file mode 100644 index 9c53040cd..000000000 Binary files a/Facial_images/face_rec/train/User_2/16.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/17.jpg b/Facial_images/face_rec/train/User_2/17.jpg deleted file mode 100644 index ba3ff8c4f..000000000 Binary files a/Facial_images/face_rec/train/User_2/17.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/18.jpg b/Facial_images/face_rec/train/User_2/18.jpg deleted file mode 100644 index 21aaa7375..000000000 Binary files a/Facial_images/face_rec/train/User_2/18.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/19.jpg b/Facial_images/face_rec/train/User_2/19.jpg deleted file mode 100644 index d7e97ba2e..000000000 Binary files a/Facial_images/face_rec/train/User_2/19.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/2.jpg b/Facial_images/face_rec/train/User_2/2.jpg deleted file mode 100644 index 2cf8ab1ae..000000000 Binary files a/Facial_images/face_rec/train/User_2/2.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/20.jpg b/Facial_images/face_rec/train/User_2/20.jpg deleted file mode 100644 index 283e21be5..000000000 Binary files a/Facial_images/face_rec/train/User_2/20.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/21.jpg b/Facial_images/face_rec/train/User_2/21.jpg deleted file mode 100644 index 430ac1a28..000000000 Binary files a/Facial_images/face_rec/train/User_2/21.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/22.jpg b/Facial_images/face_rec/train/User_2/22.jpg deleted file mode 100644 index 13e4c1bab..000000000 Binary files a/Facial_images/face_rec/train/User_2/22.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/23.jpg b/Facial_images/face_rec/train/User_2/23.jpg deleted file mode 100644 index 5e66e2a9e..000000000 Binary files a/Facial_images/face_rec/train/User_2/23.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/24.jpg b/Facial_images/face_rec/train/User_2/24.jpg deleted file mode 100644 index 4847e5309..000000000 Binary files a/Facial_images/face_rec/train/User_2/24.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/25.jpg b/Facial_images/face_rec/train/User_2/25.jpg deleted file mode 100644 index 0bdd8cac8..000000000 Binary files a/Facial_images/face_rec/train/User_2/25.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/26.jpg b/Facial_images/face_rec/train/User_2/26.jpg deleted file mode 100644 index b3be9c08d..000000000 Binary files a/Facial_images/face_rec/train/User_2/26.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/27.jpg b/Facial_images/face_rec/train/User_2/27.jpg deleted file mode 100644 index 847de3f1a..000000000 Binary files a/Facial_images/face_rec/train/User_2/27.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/28.jpg b/Facial_images/face_rec/train/User_2/28.jpg deleted file mode 100644 index cb196eb7d..000000000 Binary files a/Facial_images/face_rec/train/User_2/28.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/29.jpg b/Facial_images/face_rec/train/User_2/29.jpg deleted file mode 100644 index 3313ba83e..000000000 Binary files a/Facial_images/face_rec/train/User_2/29.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/3.jpg b/Facial_images/face_rec/train/User_2/3.jpg deleted file mode 100644 index 334e2ce69..000000000 Binary files a/Facial_images/face_rec/train/User_2/3.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/30.jpg b/Facial_images/face_rec/train/User_2/30.jpg deleted file mode 100644 index 28e0b7f1f..000000000 Binary files a/Facial_images/face_rec/train/User_2/30.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/31.jpg b/Facial_images/face_rec/train/User_2/31.jpg deleted file mode 100644 index 7a594fe85..000000000 Binary files a/Facial_images/face_rec/train/User_2/31.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/32.jpg b/Facial_images/face_rec/train/User_2/32.jpg deleted file mode 100644 index e54a16fab..000000000 Binary files a/Facial_images/face_rec/train/User_2/32.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/33.jpg b/Facial_images/face_rec/train/User_2/33.jpg deleted file mode 100644 index 17f8586ee..000000000 Binary files a/Facial_images/face_rec/train/User_2/33.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/34.jpg b/Facial_images/face_rec/train/User_2/34.jpg deleted file mode 100644 index 4617d8ae2..000000000 Binary files a/Facial_images/face_rec/train/User_2/34.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/35.jpg b/Facial_images/face_rec/train/User_2/35.jpg deleted file mode 100644 index d87a5ab66..000000000 Binary files a/Facial_images/face_rec/train/User_2/35.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/36.jpg b/Facial_images/face_rec/train/User_2/36.jpg deleted file mode 100644 index b8cbb8cff..000000000 Binary files a/Facial_images/face_rec/train/User_2/36.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/37.jpg b/Facial_images/face_rec/train/User_2/37.jpg deleted file mode 100644 index 2669770df..000000000 Binary files a/Facial_images/face_rec/train/User_2/37.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/38.jpg b/Facial_images/face_rec/train/User_2/38.jpg deleted file mode 100644 index 9e1ec94b8..000000000 Binary files a/Facial_images/face_rec/train/User_2/38.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/39.jpg b/Facial_images/face_rec/train/User_2/39.jpg deleted file mode 100644 index 17967b05d..000000000 Binary files a/Facial_images/face_rec/train/User_2/39.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/4.jpg b/Facial_images/face_rec/train/User_2/4.jpg deleted file mode 100644 index 84daf5540..000000000 Binary files a/Facial_images/face_rec/train/User_2/4.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/40.jpg b/Facial_images/face_rec/train/User_2/40.jpg deleted file mode 100644 index f8a1aece8..000000000 Binary files a/Facial_images/face_rec/train/User_2/40.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/41.jpg b/Facial_images/face_rec/train/User_2/41.jpg deleted file mode 100644 index 269b65b50..000000000 Binary files a/Facial_images/face_rec/train/User_2/41.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/42.jpg b/Facial_images/face_rec/train/User_2/42.jpg deleted file mode 100644 index 41da6a89c..000000000 Binary files a/Facial_images/face_rec/train/User_2/42.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/43.jpg b/Facial_images/face_rec/train/User_2/43.jpg deleted file mode 100644 index 16dccece2..000000000 Binary files a/Facial_images/face_rec/train/User_2/43.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/44.jpg b/Facial_images/face_rec/train/User_2/44.jpg deleted file mode 100644 index 8b3be00d9..000000000 Binary files a/Facial_images/face_rec/train/User_2/44.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/45.jpg b/Facial_images/face_rec/train/User_2/45.jpg deleted file mode 100644 index a8fbdae74..000000000 Binary files a/Facial_images/face_rec/train/User_2/45.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/46.jpg b/Facial_images/face_rec/train/User_2/46.jpg deleted file mode 100644 index 6ebd30c44..000000000 Binary files a/Facial_images/face_rec/train/User_2/46.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/47.jpg b/Facial_images/face_rec/train/User_2/47.jpg deleted file mode 100644 index 77bf5ee89..000000000 Binary files a/Facial_images/face_rec/train/User_2/47.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/48.jpg b/Facial_images/face_rec/train/User_2/48.jpg deleted file mode 100644 index b317b1662..000000000 Binary files a/Facial_images/face_rec/train/User_2/48.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/49.jpg b/Facial_images/face_rec/train/User_2/49.jpg deleted file mode 100644 index b0199b5b4..000000000 Binary files a/Facial_images/face_rec/train/User_2/49.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/5.jpg b/Facial_images/face_rec/train/User_2/5.jpg deleted file mode 100644 index deafb4b65..000000000 Binary files a/Facial_images/face_rec/train/User_2/5.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/6.jpg b/Facial_images/face_rec/train/User_2/6.jpg deleted file mode 100644 index ce463871a..000000000 Binary files a/Facial_images/face_rec/train/User_2/6.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/7.jpg b/Facial_images/face_rec/train/User_2/7.jpg deleted file mode 100644 index 31b8ec1c4..000000000 Binary files a/Facial_images/face_rec/train/User_2/7.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/8.jpg b/Facial_images/face_rec/train/User_2/8.jpg deleted file mode 100644 index 8c90548bc..000000000 Binary files a/Facial_images/face_rec/train/User_2/8.jpg and /dev/null differ diff --git a/Facial_images/face_rec/train/User_2/9.jpg b/Facial_images/face_rec/train/User_2/9.jpg deleted file mode 100644 index 7fc14b47c..000000000 Binary files a/Facial_images/face_rec/train/User_2/9.jpg and /dev/null differ diff --git a/Facial_models/descriptors.npy b/Facial_models/descriptors.npy index 48f23b639..a6cb65568 100644 Binary files a/Facial_models/descriptors.npy and b/Facial_models/descriptors.npy differ diff --git a/Facial_models/index.pkl b/Facial_models/index.pkl index 37b326565..e55e22277 100644 Binary files a/Facial_models/index.pkl and b/Facial_models/index.pkl differ diff --git a/Photos_of_Thieves/Thief_1/0.jpg b/Photos_of_Thieves/Thief_1/0.jpg new file mode 100644 index 000000000..939ffb358 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/0.jpg differ diff --git a/Photos_of_Thieves/Thief_1/1.jpg b/Photos_of_Thieves/Thief_1/1.jpg new file mode 100644 index 000000000..3803501e4 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/1.jpg differ diff --git a/Photos_of_Thieves/Thief_1/10.jpg b/Photos_of_Thieves/Thief_1/10.jpg new file mode 100644 index 000000000..f02f34e52 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/10.jpg differ diff --git a/Photos_of_Thieves/Thief_1/11.jpg b/Photos_of_Thieves/Thief_1/11.jpg new file mode 100644 index 000000000..bdef38820 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/11.jpg differ diff --git a/Photos_of_Thieves/Thief_1/12.jpg b/Photos_of_Thieves/Thief_1/12.jpg new file mode 100644 index 000000000..54fd73ef6 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/12.jpg differ diff --git a/Photos_of_Thieves/Thief_1/13.jpg b/Photos_of_Thieves/Thief_1/13.jpg new file mode 100644 index 000000000..66ab46211 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/13.jpg differ diff --git a/Photos_of_Thieves/Thief_1/14.jpg b/Photos_of_Thieves/Thief_1/14.jpg new file mode 100644 index 000000000..647a84510 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/14.jpg differ diff --git a/Photos_of_Thieves/Thief_1/15.jpg b/Photos_of_Thieves/Thief_1/15.jpg new file mode 100644 index 000000000..730a8e0b1 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/15.jpg differ diff --git a/Photos_of_Thieves/Thief_1/16.jpg b/Photos_of_Thieves/Thief_1/16.jpg new file mode 100644 index 000000000..52ff2ac9b Binary files /dev/null and b/Photos_of_Thieves/Thief_1/16.jpg differ diff --git a/Photos_of_Thieves/Thief_1/17.jpg b/Photos_of_Thieves/Thief_1/17.jpg new file mode 100644 index 000000000..1f47ecfaf Binary files /dev/null and b/Photos_of_Thieves/Thief_1/17.jpg differ diff --git a/Photos_of_Thieves/Thief_1/18.jpg b/Photos_of_Thieves/Thief_1/18.jpg new file mode 100644 index 000000000..afcceade0 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/18.jpg differ diff --git a/Photos_of_Thieves/Thief_1/19.jpg b/Photos_of_Thieves/Thief_1/19.jpg new file mode 100644 index 000000000..1f635fefb Binary files /dev/null and b/Photos_of_Thieves/Thief_1/19.jpg differ diff --git a/Photos_of_Thieves/Thief_1/2.jpg b/Photos_of_Thieves/Thief_1/2.jpg new file mode 100644 index 000000000..b7a78983d Binary files /dev/null and b/Photos_of_Thieves/Thief_1/2.jpg differ diff --git a/Photos_of_Thieves/Thief_1/20.jpg b/Photos_of_Thieves/Thief_1/20.jpg new file mode 100644 index 000000000..2e235f0b2 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/20.jpg differ diff --git a/Photos_of_Thieves/Thief_1/21.jpg b/Photos_of_Thieves/Thief_1/21.jpg new file mode 100644 index 000000000..29d009ede Binary files /dev/null and b/Photos_of_Thieves/Thief_1/21.jpg differ diff --git a/Photos_of_Thieves/Thief_1/22.jpg b/Photos_of_Thieves/Thief_1/22.jpg new file mode 100644 index 000000000..7cb69cbde Binary files /dev/null and b/Photos_of_Thieves/Thief_1/22.jpg differ diff --git a/Photos_of_Thieves/Thief_1/23.jpg b/Photos_of_Thieves/Thief_1/23.jpg new file mode 100644 index 000000000..8c15e3de0 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/23.jpg differ diff --git a/Photos_of_Thieves/Thief_1/24.jpg b/Photos_of_Thieves/Thief_1/24.jpg new file mode 100644 index 000000000..ff5272207 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/24.jpg differ diff --git a/Photos_of_Thieves/Thief_1/25.jpg b/Photos_of_Thieves/Thief_1/25.jpg new file mode 100644 index 000000000..1ae0b0cc7 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/25.jpg differ diff --git a/Photos_of_Thieves/Thief_1/26.jpg b/Photos_of_Thieves/Thief_1/26.jpg new file mode 100644 index 000000000..c1b55f35f Binary files /dev/null and b/Photos_of_Thieves/Thief_1/26.jpg differ diff --git a/Photos_of_Thieves/Thief_1/27.jpg b/Photos_of_Thieves/Thief_1/27.jpg new file mode 100644 index 000000000..b738b78d1 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/27.jpg differ diff --git a/Photos_of_Thieves/Thief_1/28.jpg b/Photos_of_Thieves/Thief_1/28.jpg new file mode 100644 index 000000000..ad64f5aeb Binary files /dev/null and b/Photos_of_Thieves/Thief_1/28.jpg differ diff --git a/Photos_of_Thieves/Thief_1/29.jpg b/Photos_of_Thieves/Thief_1/29.jpg new file mode 100644 index 000000000..6dccd2b7d Binary files /dev/null and b/Photos_of_Thieves/Thief_1/29.jpg differ diff --git a/Photos_of_Thieves/Thief_1/3.jpg b/Photos_of_Thieves/Thief_1/3.jpg new file mode 100644 index 000000000..91c4e90de Binary files /dev/null and b/Photos_of_Thieves/Thief_1/3.jpg differ diff --git a/Photos_of_Thieves/Thief_1/30.jpg b/Photos_of_Thieves/Thief_1/30.jpg new file mode 100644 index 000000000..e882ccb95 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/30.jpg differ diff --git a/Photos_of_Thieves/Thief_1/31.jpg b/Photos_of_Thieves/Thief_1/31.jpg new file mode 100644 index 000000000..9265e3298 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/31.jpg differ diff --git a/Photos_of_Thieves/Thief_1/32.jpg b/Photos_of_Thieves/Thief_1/32.jpg new file mode 100644 index 000000000..93c0a2231 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/32.jpg differ diff --git a/Photos_of_Thieves/Thief_1/33.jpg b/Photos_of_Thieves/Thief_1/33.jpg new file mode 100644 index 000000000..6c66fb7ff Binary files /dev/null and b/Photos_of_Thieves/Thief_1/33.jpg differ diff --git a/Photos_of_Thieves/Thief_1/34.jpg b/Photos_of_Thieves/Thief_1/34.jpg new file mode 100644 index 000000000..6dcfc1b6b Binary files /dev/null and b/Photos_of_Thieves/Thief_1/34.jpg differ diff --git a/Photos_of_Thieves/Thief_1/35.jpg b/Photos_of_Thieves/Thief_1/35.jpg new file mode 100644 index 000000000..964a997c1 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/35.jpg differ diff --git a/Photos_of_Thieves/Thief_1/36.jpg b/Photos_of_Thieves/Thief_1/36.jpg new file mode 100644 index 000000000..79291432a Binary files /dev/null and b/Photos_of_Thieves/Thief_1/36.jpg differ diff --git a/Photos_of_Thieves/Thief_1/37.jpg b/Photos_of_Thieves/Thief_1/37.jpg new file mode 100644 index 000000000..d2f4c5bca Binary files /dev/null and b/Photos_of_Thieves/Thief_1/37.jpg differ diff --git a/Photos_of_Thieves/Thief_1/38.jpg b/Photos_of_Thieves/Thief_1/38.jpg new file mode 100644 index 000000000..6be450ab2 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/38.jpg differ diff --git a/Photos_of_Thieves/Thief_1/39.jpg b/Photos_of_Thieves/Thief_1/39.jpg new file mode 100644 index 000000000..9881e2736 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/39.jpg differ diff --git a/Photos_of_Thieves/Thief_1/4.jpg b/Photos_of_Thieves/Thief_1/4.jpg new file mode 100644 index 000000000..5b437895f Binary files /dev/null and b/Photos_of_Thieves/Thief_1/4.jpg differ diff --git a/Photos_of_Thieves/Thief_1/40.jpg b/Photos_of_Thieves/Thief_1/40.jpg new file mode 100644 index 000000000..da7361a02 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/40.jpg differ diff --git a/Photos_of_Thieves/Thief_1/41.jpg b/Photos_of_Thieves/Thief_1/41.jpg new file mode 100644 index 000000000..4d01f58a4 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/41.jpg differ diff --git a/Photos_of_Thieves/Thief_1/42.jpg b/Photos_of_Thieves/Thief_1/42.jpg new file mode 100644 index 000000000..a9ba9d0c7 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/42.jpg differ diff --git a/Photos_of_Thieves/Thief_1/43.jpg b/Photos_of_Thieves/Thief_1/43.jpg new file mode 100644 index 000000000..bce255efe Binary files /dev/null and b/Photos_of_Thieves/Thief_1/43.jpg differ diff --git a/Photos_of_Thieves/Thief_1/44.jpg b/Photos_of_Thieves/Thief_1/44.jpg new file mode 100644 index 000000000..c465fa1d9 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/44.jpg differ diff --git a/Photos_of_Thieves/Thief_1/45.jpg b/Photos_of_Thieves/Thief_1/45.jpg new file mode 100644 index 000000000..70d2b9729 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/45.jpg differ diff --git a/Photos_of_Thieves/Thief_1/46.jpg b/Photos_of_Thieves/Thief_1/46.jpg new file mode 100644 index 000000000..df31079ee Binary files /dev/null and b/Photos_of_Thieves/Thief_1/46.jpg differ diff --git a/Photos_of_Thieves/Thief_1/47.jpg b/Photos_of_Thieves/Thief_1/47.jpg new file mode 100644 index 000000000..452bb646f Binary files /dev/null and b/Photos_of_Thieves/Thief_1/47.jpg differ diff --git a/Photos_of_Thieves/Thief_1/48.jpg b/Photos_of_Thieves/Thief_1/48.jpg new file mode 100644 index 000000000..238c7ab4f Binary files /dev/null and b/Photos_of_Thieves/Thief_1/48.jpg differ diff --git a/Photos_of_Thieves/Thief_1/49.jpg b/Photos_of_Thieves/Thief_1/49.jpg new file mode 100644 index 000000000..3a7c87498 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/49.jpg differ diff --git a/Photos_of_Thieves/Thief_1/5.jpg b/Photos_of_Thieves/Thief_1/5.jpg new file mode 100644 index 000000000..dcc7a97d0 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/5.jpg differ diff --git a/Photos_of_Thieves/Thief_1/6.jpg b/Photos_of_Thieves/Thief_1/6.jpg new file mode 100644 index 000000000..66ba3d350 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/6.jpg differ diff --git a/Photos_of_Thieves/Thief_1/7.jpg b/Photos_of_Thieves/Thief_1/7.jpg new file mode 100644 index 000000000..326b61b1d Binary files /dev/null and b/Photos_of_Thieves/Thief_1/7.jpg differ diff --git a/Photos_of_Thieves/Thief_1/8.jpg b/Photos_of_Thieves/Thief_1/8.jpg new file mode 100644 index 000000000..1699b024d Binary files /dev/null and b/Photos_of_Thieves/Thief_1/8.jpg differ diff --git a/Photos_of_Thieves/Thief_1/9.jpg b/Photos_of_Thieves/Thief_1/9.jpg new file mode 100644 index 000000000..57cee9f01 Binary files /dev/null and b/Photos_of_Thieves/Thief_1/9.jpg differ diff --git a/Photos_of_Thieves/Thief_2/0.jpg b/Photos_of_Thieves/Thief_2/0.jpg new file mode 100644 index 000000000..897d11d51 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/0.jpg differ diff --git a/Photos_of_Thieves/Thief_2/1.jpg b/Photos_of_Thieves/Thief_2/1.jpg new file mode 100644 index 000000000..5ac1c2785 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/1.jpg differ diff --git a/Photos_of_Thieves/Thief_2/10.jpg b/Photos_of_Thieves/Thief_2/10.jpg new file mode 100644 index 000000000..14e34058c Binary files /dev/null and b/Photos_of_Thieves/Thief_2/10.jpg differ diff --git a/Photos_of_Thieves/Thief_2/11.jpg b/Photos_of_Thieves/Thief_2/11.jpg new file mode 100644 index 000000000..acb7cf2b2 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/11.jpg differ diff --git a/Photos_of_Thieves/Thief_2/12.jpg b/Photos_of_Thieves/Thief_2/12.jpg new file mode 100644 index 000000000..5ecb86584 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/12.jpg differ diff --git a/Photos_of_Thieves/Thief_2/13.jpg b/Photos_of_Thieves/Thief_2/13.jpg new file mode 100644 index 000000000..a658bba69 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/13.jpg differ diff --git a/Photos_of_Thieves/Thief_2/14.jpg b/Photos_of_Thieves/Thief_2/14.jpg new file mode 100644 index 000000000..b00098621 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/14.jpg differ diff --git a/Photos_of_Thieves/Thief_2/15.jpg b/Photos_of_Thieves/Thief_2/15.jpg new file mode 100644 index 000000000..6a951dd64 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/15.jpg differ diff --git a/Photos_of_Thieves/Thief_2/16.jpg b/Photos_of_Thieves/Thief_2/16.jpg new file mode 100644 index 000000000..6949e37c1 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/16.jpg differ diff --git a/Photos_of_Thieves/Thief_2/17.jpg b/Photos_of_Thieves/Thief_2/17.jpg new file mode 100644 index 000000000..f36f42c05 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/17.jpg differ diff --git a/Photos_of_Thieves/Thief_2/18.jpg b/Photos_of_Thieves/Thief_2/18.jpg new file mode 100644 index 000000000..cbe9b3c93 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/18.jpg differ diff --git a/Photos_of_Thieves/Thief_2/19.jpg b/Photos_of_Thieves/Thief_2/19.jpg new file mode 100644 index 000000000..67bb9b1b8 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/19.jpg differ diff --git a/Photos_of_Thieves/Thief_2/2.jpg b/Photos_of_Thieves/Thief_2/2.jpg new file mode 100644 index 000000000..8b636c59b Binary files /dev/null and b/Photos_of_Thieves/Thief_2/2.jpg differ diff --git a/Photos_of_Thieves/Thief_2/20.jpg b/Photos_of_Thieves/Thief_2/20.jpg new file mode 100644 index 000000000..f71ed1b17 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/20.jpg differ diff --git a/Photos_of_Thieves/Thief_2/21.jpg b/Photos_of_Thieves/Thief_2/21.jpg new file mode 100644 index 000000000..17741118b Binary files /dev/null and b/Photos_of_Thieves/Thief_2/21.jpg differ diff --git a/Photos_of_Thieves/Thief_2/22.jpg b/Photos_of_Thieves/Thief_2/22.jpg new file mode 100644 index 000000000..60ff629d4 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/22.jpg differ diff --git a/Photos_of_Thieves/Thief_2/23.jpg b/Photos_of_Thieves/Thief_2/23.jpg new file mode 100644 index 000000000..d8a06d931 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/23.jpg differ diff --git a/Photos_of_Thieves/Thief_2/24.jpg b/Photos_of_Thieves/Thief_2/24.jpg new file mode 100644 index 000000000..878617264 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/24.jpg differ diff --git a/Photos_of_Thieves/Thief_2/25.jpg b/Photos_of_Thieves/Thief_2/25.jpg new file mode 100644 index 000000000..dd8816035 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/25.jpg differ diff --git a/Photos_of_Thieves/Thief_2/26.jpg b/Photos_of_Thieves/Thief_2/26.jpg new file mode 100644 index 000000000..f8a158ddf Binary files /dev/null and b/Photos_of_Thieves/Thief_2/26.jpg differ diff --git a/Photos_of_Thieves/Thief_2/27.jpg b/Photos_of_Thieves/Thief_2/27.jpg new file mode 100644 index 000000000..9874a3194 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/27.jpg differ diff --git a/Photos_of_Thieves/Thief_2/28.jpg b/Photos_of_Thieves/Thief_2/28.jpg new file mode 100644 index 000000000..430a3b9ee Binary files /dev/null and b/Photos_of_Thieves/Thief_2/28.jpg differ diff --git a/Photos_of_Thieves/Thief_2/29.jpg b/Photos_of_Thieves/Thief_2/29.jpg new file mode 100644 index 000000000..7f1d02f64 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/29.jpg differ diff --git a/Photos_of_Thieves/Thief_2/3.jpg b/Photos_of_Thieves/Thief_2/3.jpg new file mode 100644 index 000000000..a16b87435 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/3.jpg differ diff --git a/Photos_of_Thieves/Thief_2/30.jpg b/Photos_of_Thieves/Thief_2/30.jpg new file mode 100644 index 000000000..77bef3e36 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/30.jpg differ diff --git a/Photos_of_Thieves/Thief_2/31.jpg b/Photos_of_Thieves/Thief_2/31.jpg new file mode 100644 index 000000000..47af7d2f6 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/31.jpg differ diff --git a/Photos_of_Thieves/Thief_2/32.jpg b/Photos_of_Thieves/Thief_2/32.jpg new file mode 100644 index 000000000..74b780f03 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/32.jpg differ diff --git a/Photos_of_Thieves/Thief_2/33.jpg b/Photos_of_Thieves/Thief_2/33.jpg new file mode 100644 index 000000000..ab4025d6e Binary files /dev/null and b/Photos_of_Thieves/Thief_2/33.jpg differ diff --git a/Photos_of_Thieves/Thief_2/34.jpg b/Photos_of_Thieves/Thief_2/34.jpg new file mode 100644 index 000000000..c6174bd48 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/34.jpg differ diff --git a/Photos_of_Thieves/Thief_2/35.jpg b/Photos_of_Thieves/Thief_2/35.jpg new file mode 100644 index 000000000..ff5498544 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/35.jpg differ diff --git a/Photos_of_Thieves/Thief_2/36.jpg b/Photos_of_Thieves/Thief_2/36.jpg new file mode 100644 index 000000000..926bd0afc Binary files /dev/null and b/Photos_of_Thieves/Thief_2/36.jpg differ diff --git a/Photos_of_Thieves/Thief_2/37.jpg b/Photos_of_Thieves/Thief_2/37.jpg new file mode 100644 index 000000000..1a1a34cc0 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/37.jpg differ diff --git a/Photos_of_Thieves/Thief_2/38.jpg b/Photos_of_Thieves/Thief_2/38.jpg new file mode 100644 index 000000000..59c4dfbef Binary files /dev/null and b/Photos_of_Thieves/Thief_2/38.jpg differ diff --git a/Photos_of_Thieves/Thief_2/39.jpg b/Photos_of_Thieves/Thief_2/39.jpg new file mode 100644 index 000000000..b6bc76701 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/39.jpg differ diff --git a/Photos_of_Thieves/Thief_2/4.jpg b/Photos_of_Thieves/Thief_2/4.jpg new file mode 100644 index 000000000..d939fe1ac Binary files /dev/null and b/Photos_of_Thieves/Thief_2/4.jpg differ diff --git a/Photos_of_Thieves/Thief_2/40.jpg b/Photos_of_Thieves/Thief_2/40.jpg new file mode 100644 index 000000000..30abc95df Binary files /dev/null and b/Photos_of_Thieves/Thief_2/40.jpg differ diff --git a/Photos_of_Thieves/Thief_2/41.jpg b/Photos_of_Thieves/Thief_2/41.jpg new file mode 100644 index 000000000..1d6953bcc Binary files /dev/null and b/Photos_of_Thieves/Thief_2/41.jpg differ diff --git a/Photos_of_Thieves/Thief_2/42.jpg b/Photos_of_Thieves/Thief_2/42.jpg new file mode 100644 index 000000000..3f04a819d Binary files /dev/null and b/Photos_of_Thieves/Thief_2/42.jpg differ diff --git a/Photos_of_Thieves/Thief_2/43.jpg b/Photos_of_Thieves/Thief_2/43.jpg new file mode 100644 index 000000000..2f10aad6d Binary files /dev/null and b/Photos_of_Thieves/Thief_2/43.jpg differ diff --git a/Photos_of_Thieves/Thief_2/44.jpg b/Photos_of_Thieves/Thief_2/44.jpg new file mode 100644 index 000000000..926fe4c67 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/44.jpg differ diff --git a/Photos_of_Thieves/Thief_2/45.jpg b/Photos_of_Thieves/Thief_2/45.jpg new file mode 100644 index 000000000..a16b58f36 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/45.jpg differ diff --git a/Photos_of_Thieves/Thief_2/46.jpg b/Photos_of_Thieves/Thief_2/46.jpg new file mode 100644 index 000000000..0054d8f17 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/46.jpg differ diff --git a/Photos_of_Thieves/Thief_2/47.jpg b/Photos_of_Thieves/Thief_2/47.jpg new file mode 100644 index 000000000..b9d6bff55 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/47.jpg differ diff --git a/Photos_of_Thieves/Thief_2/48.jpg b/Photos_of_Thieves/Thief_2/48.jpg new file mode 100644 index 000000000..ba9a9685f Binary files /dev/null and b/Photos_of_Thieves/Thief_2/48.jpg differ diff --git a/Photos_of_Thieves/Thief_2/49.jpg b/Photos_of_Thieves/Thief_2/49.jpg new file mode 100644 index 000000000..ef937cbbc Binary files /dev/null and b/Photos_of_Thieves/Thief_2/49.jpg differ diff --git a/Photos_of_Thieves/Thief_2/5.jpg b/Photos_of_Thieves/Thief_2/5.jpg new file mode 100644 index 000000000..dd368694f Binary files /dev/null and b/Photos_of_Thieves/Thief_2/5.jpg differ diff --git a/Photos_of_Thieves/Thief_2/6.jpg b/Photos_of_Thieves/Thief_2/6.jpg new file mode 100644 index 000000000..76f2fd1b9 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/6.jpg differ diff --git a/Photos_of_Thieves/Thief_2/7.jpg b/Photos_of_Thieves/Thief_2/7.jpg new file mode 100644 index 000000000..66ac2710c Binary files /dev/null and b/Photos_of_Thieves/Thief_2/7.jpg differ diff --git a/Photos_of_Thieves/Thief_2/8.jpg b/Photos_of_Thieves/Thief_2/8.jpg new file mode 100644 index 000000000..a672fb2b5 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/8.jpg differ diff --git a/Photos_of_Thieves/Thief_2/9.jpg b/Photos_of_Thieves/Thief_2/9.jpg new file mode 100644 index 000000000..8c49faa60 Binary files /dev/null and b/Photos_of_Thieves/Thief_2/9.jpg differ diff --git a/Photos_of_Thieves/Thief_3/0.jpg b/Photos_of_Thieves/Thief_3/0.jpg new file mode 100644 index 000000000..f29676e24 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/0.jpg differ diff --git a/Photos_of_Thieves/Thief_3/1.jpg b/Photos_of_Thieves/Thief_3/1.jpg new file mode 100644 index 000000000..c5137ffa2 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/1.jpg differ diff --git a/Photos_of_Thieves/Thief_3/10.jpg b/Photos_of_Thieves/Thief_3/10.jpg new file mode 100644 index 000000000..eaf9569f2 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/10.jpg differ diff --git a/Photos_of_Thieves/Thief_3/11.jpg b/Photos_of_Thieves/Thief_3/11.jpg new file mode 100644 index 000000000..bfd898c48 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/11.jpg differ diff --git a/Photos_of_Thieves/Thief_3/12.jpg b/Photos_of_Thieves/Thief_3/12.jpg new file mode 100644 index 000000000..080146b54 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/12.jpg differ diff --git a/Photos_of_Thieves/Thief_3/13.jpg b/Photos_of_Thieves/Thief_3/13.jpg new file mode 100644 index 000000000..d55d925ea Binary files /dev/null and b/Photos_of_Thieves/Thief_3/13.jpg differ diff --git a/Photos_of_Thieves/Thief_3/14.jpg b/Photos_of_Thieves/Thief_3/14.jpg new file mode 100644 index 000000000..a932700ee Binary files /dev/null and b/Photos_of_Thieves/Thief_3/14.jpg differ diff --git a/Photos_of_Thieves/Thief_3/15.jpg b/Photos_of_Thieves/Thief_3/15.jpg new file mode 100644 index 000000000..ab4624bb6 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/15.jpg differ diff --git a/Photos_of_Thieves/Thief_3/16.jpg b/Photos_of_Thieves/Thief_3/16.jpg new file mode 100644 index 000000000..096c744fc Binary files /dev/null and b/Photos_of_Thieves/Thief_3/16.jpg differ diff --git a/Photos_of_Thieves/Thief_3/17.jpg b/Photos_of_Thieves/Thief_3/17.jpg new file mode 100644 index 000000000..a4cb59024 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/17.jpg differ diff --git a/Photos_of_Thieves/Thief_3/18.jpg b/Photos_of_Thieves/Thief_3/18.jpg new file mode 100644 index 000000000..68e33fa57 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/18.jpg differ diff --git a/Photos_of_Thieves/Thief_3/19.jpg b/Photos_of_Thieves/Thief_3/19.jpg new file mode 100644 index 000000000..f87a6494c Binary files /dev/null and b/Photos_of_Thieves/Thief_3/19.jpg differ diff --git a/Photos_of_Thieves/Thief_3/2.jpg b/Photos_of_Thieves/Thief_3/2.jpg new file mode 100644 index 000000000..0f2a451fc Binary files /dev/null and b/Photos_of_Thieves/Thief_3/2.jpg differ diff --git a/Photos_of_Thieves/Thief_3/20.jpg b/Photos_of_Thieves/Thief_3/20.jpg new file mode 100644 index 000000000..186ddc7d6 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/20.jpg differ diff --git a/Photos_of_Thieves/Thief_3/21.jpg b/Photos_of_Thieves/Thief_3/21.jpg new file mode 100644 index 000000000..7cf879b29 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/21.jpg differ diff --git a/Photos_of_Thieves/Thief_3/22.jpg b/Photos_of_Thieves/Thief_3/22.jpg new file mode 100644 index 000000000..41be8394d Binary files /dev/null and b/Photos_of_Thieves/Thief_3/22.jpg differ diff --git a/Photos_of_Thieves/Thief_3/23.jpg b/Photos_of_Thieves/Thief_3/23.jpg new file mode 100644 index 000000000..85111572c Binary files /dev/null and b/Photos_of_Thieves/Thief_3/23.jpg differ diff --git a/Photos_of_Thieves/Thief_3/24.jpg b/Photos_of_Thieves/Thief_3/24.jpg new file mode 100644 index 000000000..7a02144a0 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/24.jpg differ diff --git a/Photos_of_Thieves/Thief_3/25.jpg b/Photos_of_Thieves/Thief_3/25.jpg new file mode 100644 index 000000000..be5553e4d Binary files /dev/null and b/Photos_of_Thieves/Thief_3/25.jpg differ diff --git a/Photos_of_Thieves/Thief_3/26.jpg b/Photos_of_Thieves/Thief_3/26.jpg new file mode 100644 index 000000000..3101061df Binary files /dev/null and b/Photos_of_Thieves/Thief_3/26.jpg differ diff --git a/Photos_of_Thieves/Thief_3/27.jpg b/Photos_of_Thieves/Thief_3/27.jpg new file mode 100644 index 000000000..54652cf43 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/27.jpg differ diff --git a/Photos_of_Thieves/Thief_3/28.jpg b/Photos_of_Thieves/Thief_3/28.jpg new file mode 100644 index 000000000..69b7a3260 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/28.jpg differ diff --git a/Photos_of_Thieves/Thief_3/29.jpg b/Photos_of_Thieves/Thief_3/29.jpg new file mode 100644 index 000000000..1ab484693 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/29.jpg differ diff --git a/Photos_of_Thieves/Thief_3/3.jpg b/Photos_of_Thieves/Thief_3/3.jpg new file mode 100644 index 000000000..dc2036981 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/3.jpg differ diff --git a/Photos_of_Thieves/Thief_3/30.jpg b/Photos_of_Thieves/Thief_3/30.jpg new file mode 100644 index 000000000..e0203befb Binary files /dev/null and b/Photos_of_Thieves/Thief_3/30.jpg differ diff --git a/Photos_of_Thieves/Thief_3/31.jpg b/Photos_of_Thieves/Thief_3/31.jpg new file mode 100644 index 000000000..dec214086 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/31.jpg differ diff --git a/Photos_of_Thieves/Thief_3/32.jpg b/Photos_of_Thieves/Thief_3/32.jpg new file mode 100644 index 000000000..265632e57 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/32.jpg differ diff --git a/Photos_of_Thieves/Thief_3/33.jpg b/Photos_of_Thieves/Thief_3/33.jpg new file mode 100644 index 000000000..d3e454a19 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/33.jpg differ diff --git a/Photos_of_Thieves/Thief_3/34.jpg b/Photos_of_Thieves/Thief_3/34.jpg new file mode 100644 index 000000000..94ff2c0ca Binary files /dev/null and b/Photos_of_Thieves/Thief_3/34.jpg differ diff --git a/Photos_of_Thieves/Thief_3/35.jpg b/Photos_of_Thieves/Thief_3/35.jpg new file mode 100644 index 000000000..e469f262e Binary files /dev/null and b/Photos_of_Thieves/Thief_3/35.jpg differ diff --git a/Photos_of_Thieves/Thief_3/36.jpg b/Photos_of_Thieves/Thief_3/36.jpg new file mode 100644 index 000000000..da4559e10 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/36.jpg differ diff --git a/Photos_of_Thieves/Thief_3/37.jpg b/Photos_of_Thieves/Thief_3/37.jpg new file mode 100644 index 000000000..eadafc4b4 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/37.jpg differ diff --git a/Photos_of_Thieves/Thief_3/38.jpg b/Photos_of_Thieves/Thief_3/38.jpg new file mode 100644 index 000000000..fb3db7088 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/38.jpg differ diff --git a/Photos_of_Thieves/Thief_3/39.jpg b/Photos_of_Thieves/Thief_3/39.jpg new file mode 100644 index 000000000..ba979c25e Binary files /dev/null and b/Photos_of_Thieves/Thief_3/39.jpg differ diff --git a/Photos_of_Thieves/Thief_3/4.jpg b/Photos_of_Thieves/Thief_3/4.jpg new file mode 100644 index 000000000..abc04356b Binary files /dev/null and b/Photos_of_Thieves/Thief_3/4.jpg differ diff --git a/Photos_of_Thieves/Thief_3/40.jpg b/Photos_of_Thieves/Thief_3/40.jpg new file mode 100644 index 000000000..b8433106b Binary files /dev/null and b/Photos_of_Thieves/Thief_3/40.jpg differ diff --git a/Photos_of_Thieves/Thief_3/41.jpg b/Photos_of_Thieves/Thief_3/41.jpg new file mode 100644 index 000000000..fada95509 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/41.jpg differ diff --git a/Photos_of_Thieves/Thief_3/42.jpg b/Photos_of_Thieves/Thief_3/42.jpg new file mode 100644 index 000000000..e921db783 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/42.jpg differ diff --git a/Photos_of_Thieves/Thief_3/43.jpg b/Photos_of_Thieves/Thief_3/43.jpg new file mode 100644 index 000000000..4dcd018ce Binary files /dev/null and b/Photos_of_Thieves/Thief_3/43.jpg differ diff --git a/Photos_of_Thieves/Thief_3/44.jpg b/Photos_of_Thieves/Thief_3/44.jpg new file mode 100644 index 000000000..6541a78af Binary files /dev/null and b/Photos_of_Thieves/Thief_3/44.jpg differ diff --git a/Photos_of_Thieves/Thief_3/45.jpg b/Photos_of_Thieves/Thief_3/45.jpg new file mode 100644 index 000000000..0e8e44bb6 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/45.jpg differ diff --git a/Photos_of_Thieves/Thief_3/46.jpg b/Photos_of_Thieves/Thief_3/46.jpg new file mode 100644 index 000000000..02754c0af Binary files /dev/null and b/Photos_of_Thieves/Thief_3/46.jpg differ diff --git a/Photos_of_Thieves/Thief_3/47.jpg b/Photos_of_Thieves/Thief_3/47.jpg new file mode 100644 index 000000000..658bed07f Binary files /dev/null and b/Photos_of_Thieves/Thief_3/47.jpg differ diff --git a/Photos_of_Thieves/Thief_3/48.jpg b/Photos_of_Thieves/Thief_3/48.jpg new file mode 100644 index 000000000..e795a0bff Binary files /dev/null and b/Photos_of_Thieves/Thief_3/48.jpg differ diff --git a/Photos_of_Thieves/Thief_3/49.jpg b/Photos_of_Thieves/Thief_3/49.jpg new file mode 100644 index 000000000..e98bc0575 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/49.jpg differ diff --git a/Photos_of_Thieves/Thief_3/5.jpg b/Photos_of_Thieves/Thief_3/5.jpg new file mode 100644 index 000000000..74cf1eb67 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/5.jpg differ diff --git a/Photos_of_Thieves/Thief_3/6.jpg b/Photos_of_Thieves/Thief_3/6.jpg new file mode 100644 index 000000000..fee8f007a Binary files /dev/null and b/Photos_of_Thieves/Thief_3/6.jpg differ diff --git a/Photos_of_Thieves/Thief_3/7.jpg b/Photos_of_Thieves/Thief_3/7.jpg new file mode 100644 index 000000000..e750078c4 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/7.jpg differ diff --git a/Photos_of_Thieves/Thief_3/8.jpg b/Photos_of_Thieves/Thief_3/8.jpg new file mode 100644 index 000000000..bd0e81f32 Binary files /dev/null and b/Photos_of_Thieves/Thief_3/8.jpg differ diff --git a/Photos_of_Thieves/Thief_3/9.jpg b/Photos_of_Thieves/Thief_3/9.jpg new file mode 100644 index 000000000..57bde66fe Binary files /dev/null and b/Photos_of_Thieves/Thief_3/9.jpg differ diff --git a/Upload_Face.py b/Upload_Face.py index 6ab3e5dc9..c7b2f8ea4 100644 --- a/Upload_Face.py +++ b/Upload_Face.py @@ -3,6 +3,8 @@ import Facial_Recognition_Registration import Facial_Recognition_Enrollment from joblib import Parallel, delayed import multiprocessing +import Facial_Image_Augmentation + def upload_your_face(firstname, lastname, email, phone): @@ -16,20 +18,27 @@ def upload_your_face(firstname, lastname, email, phone): for user in users.each(): count += 1 print("Face registration start...") + Facial_Recognition_Registration.register_your_face("User_" + str(count)) + Parallel(n_jobs=multiprocessing.cpu_count())( - delayed(upload_parallel_user_photos)(i, count) for i in range(50)) + delayed(upload_parallel_user_photos)(i, count) for i in range(10)) DBHelper.upload_data("User_" + str(count), firstname, lastname, email, phone) + print("Data saved! Starting enrollment...") Facial_Recognition_Enrollment.enroll_face_dataset() print("Face registration completed!") print("Success.") + except: print("Face registration start...") + Facial_Recognition_Registration.register_your_face("User_1") + Parallel(n_jobs=multiprocessing.cpu_count())( - delayed(upload_parallel_user_photo)(i) for i in range(50)) + delayed(upload_parallel_user_photo)(i) for i in range(10)) DBHelper.upload_data("User_1", firstname, lastname, email, phone) + print("Data saved! Starting enrollment...") Facial_Recognition_Enrollment.enroll_face_dataset() print("Face registration completed!") diff --git a/__pycache__/Check_Up.cpython-37.pyc b/__pycache__/Check_Up.cpython-37.pyc new file mode 100644 index 000000000..4b7b636b4 Binary files /dev/null and b/__pycache__/Check_Up.cpython-37.pyc differ diff --git a/__pycache__/Check_Up.cpython-38.pyc b/__pycache__/Check_Up.cpython-38.pyc index eb29456d9..3373cecc2 100644 Binary files a/__pycache__/Check_Up.cpython-38.pyc and b/__pycache__/Check_Up.cpython-38.pyc differ diff --git a/__pycache__/DBHelper.cpython-37.pyc b/__pycache__/DBHelper.cpython-37.pyc new file mode 100644 index 000000000..e7814b99d Binary files /dev/null and b/__pycache__/DBHelper.cpython-37.pyc differ diff --git a/__pycache__/DBHelper.cpython-38.pyc b/__pycache__/DBHelper.cpython-38.pyc index a3157d124..0dfaa4bbc 100644 Binary files a/__pycache__/DBHelper.cpython-38.pyc and b/__pycache__/DBHelper.cpython-38.pyc differ diff --git a/__pycache__/Facial_Image_Augmentation.cpython-37.pyc b/__pycache__/Facial_Image_Augmentation.cpython-37.pyc new file mode 100644 index 000000000..2bd66c22d Binary files /dev/null and b/__pycache__/Facial_Image_Augmentation.cpython-37.pyc differ diff --git a/__pycache__/Facial_Image_Augmentation.cpython-38.pyc b/__pycache__/Facial_Image_Augmentation.cpython-38.pyc new file mode 100644 index 000000000..ec822ba66 Binary files /dev/null and b/__pycache__/Facial_Image_Augmentation.cpython-38.pyc differ diff --git a/__pycache__/Facial_Recognition_Enrollment.cpython-37.pyc b/__pycache__/Facial_Recognition_Enrollment.cpython-37.pyc new file mode 100644 index 000000000..c62cbb5a4 Binary files /dev/null and b/__pycache__/Facial_Recognition_Enrollment.cpython-37.pyc differ diff --git a/__pycache__/Facial_Recognition_Enrollment.cpython-38.pyc b/__pycache__/Facial_Recognition_Enrollment.cpython-38.pyc index fa89a42e7..ec97c03b8 100644 Binary files a/__pycache__/Facial_Recognition_Enrollment.cpython-38.pyc and b/__pycache__/Facial_Recognition_Enrollment.cpython-38.pyc differ diff --git a/__pycache__/Facial_Recognition_Inference.cpython-37.pyc b/__pycache__/Facial_Recognition_Inference.cpython-37.pyc new file mode 100644 index 000000000..d6f44d677 Binary files /dev/null and b/__pycache__/Facial_Recognition_Inference.cpython-37.pyc differ diff --git a/__pycache__/Facial_Recognition_Inference.cpython-38.pyc b/__pycache__/Facial_Recognition_Inference.cpython-38.pyc index 134336767..45c1e00bf 100644 Binary files a/__pycache__/Facial_Recognition_Inference.cpython-38.pyc and b/__pycache__/Facial_Recognition_Inference.cpython-38.pyc differ diff --git a/__pycache__/Facial_Recognition_Registration.cpython-37.pyc b/__pycache__/Facial_Recognition_Registration.cpython-37.pyc new file mode 100644 index 000000000..a5745d2e2 Binary files /dev/null and b/__pycache__/Facial_Recognition_Registration.cpython-37.pyc differ diff --git a/__pycache__/Facial_Recognition_Registration.cpython-38.pyc b/__pycache__/Facial_Recognition_Registration.cpython-38.pyc index 93209b21b..6a29bc3b9 100644 Binary files a/__pycache__/Facial_Recognition_Registration.cpython-38.pyc and b/__pycache__/Facial_Recognition_Registration.cpython-38.pyc differ diff --git a/__pycache__/Facial_Recognition_Thief_Registration.cpython-37.pyc b/__pycache__/Facial_Recognition_Thief_Registration.cpython-37.pyc new file mode 100644 index 000000000..cc31876b3 Binary files /dev/null and b/__pycache__/Facial_Recognition_Thief_Registration.cpython-37.pyc differ diff --git a/__pycache__/Facial_Recognition_Thief_Registration.cpython-38.pyc b/__pycache__/Facial_Recognition_Thief_Registration.cpython-38.pyc index d4aabe24a..0ae65187d 100644 Binary files a/__pycache__/Facial_Recognition_Thief_Registration.cpython-38.pyc and b/__pycache__/Facial_Recognition_Thief_Registration.cpython-38.pyc differ diff --git a/__pycache__/Remove_Face.cpython-37.pyc b/__pycache__/Remove_Face.cpython-37.pyc new file mode 100644 index 000000000..5fef13b3e Binary files /dev/null and b/__pycache__/Remove_Face.cpython-37.pyc differ diff --git a/__pycache__/Remove_Face.cpython-38.pyc b/__pycache__/Remove_Face.cpython-38.pyc index 8cb206559..cc8f08e73 100644 Binary files a/__pycache__/Remove_Face.cpython-38.pyc and b/__pycache__/Remove_Face.cpython-38.pyc differ diff --git a/__pycache__/Update.cpython-37.pyc b/__pycache__/Update.cpython-37.pyc new file mode 100644 index 000000000..5be82a378 Binary files /dev/null and b/__pycache__/Update.cpython-37.pyc differ diff --git a/__pycache__/Update.cpython-38.pyc b/__pycache__/Update.cpython-38.pyc new file mode 100644 index 000000000..7170cf5ff Binary files /dev/null and b/__pycache__/Update.cpython-38.pyc differ diff --git a/__pycache__/Upload_Face.cpython-37.pyc b/__pycache__/Upload_Face.cpython-37.pyc new file mode 100644 index 000000000..de0894d7c Binary files /dev/null and b/__pycache__/Upload_Face.cpython-37.pyc differ diff --git a/__pycache__/Upload_Face.cpython-38.pyc b/__pycache__/Upload_Face.cpython-38.pyc index 17e2f71ad..f27821541 100644 Binary files a/__pycache__/Upload_Face.cpython-38.pyc and b/__pycache__/Upload_Face.cpython-38.pyc differ diff --git a/__pycache__/Upload_Thief.cpython-37.pyc b/__pycache__/Upload_Thief.cpython-37.pyc new file mode 100644 index 000000000..764c18bd4 Binary files /dev/null and b/__pycache__/Upload_Thief.cpython-37.pyc differ diff --git a/__pycache__/Upload_Thief.cpython-38.pyc b/__pycache__/Upload_Thief.cpython-38.pyc index 5e23f8f6d..243b171bd 100644 Binary files a/__pycache__/Upload_Thief.cpython-38.pyc and b/__pycache__/Upload_Thief.cpython-38.pyc differ diff --git a/__pycache__/start_engine.cpython-37.pyc b/__pycache__/start_engine.cpython-37.pyc new file mode 100644 index 000000000..a2eacefd9 Binary files /dev/null and b/__pycache__/start_engine.cpython-37.pyc differ diff --git a/__pycache__/start_engine.cpython-38.pyc b/__pycache__/start_engine.cpython-38.pyc index 201695a79..c996a7d50 100644 Binary files a/__pycache__/start_engine.cpython-38.pyc and b/__pycache__/start_engine.cpython-38.pyc differ diff --git a/workspace.code-workspace b/workspace.code-workspace new file mode 100644 index 000000000..d60dc64c9 --- /dev/null +++ b/workspace.code-workspace @@ -0,0 +1,3 @@ +{ + "folders": [] +} \ No newline at end of file