一.根据三个点,求顶点角度
def cal_ang(point_1, point_2, point_3): """ 根据三点坐标计算夹角 :param point_1: 点1坐标 :param point_2: 点2坐标 :param point_3: 点3坐标 :return: 返回任意角的夹角值,这里只是返回点3的夹角 """ a2 = (point_2[0]-point_3[0])*(point_2[0]-point_3[0])+(point_2[1]-point_3[1])*(point_2[1] - point_3[1]) b2= (point_1[0]-point_3[0])*(point_1[0]-point_3[0])+(point_1[1]-point_3[1])*(point_1[1] - point_3[1]) c2 = (point_1[0]-point_2[0])*(point_1[0]-point_2[0])+(point_1[1]-point_2[1])*(point_1[1] - point_2[1]) a=math.sqrt(a2) b=math.sqrt(b2) #c=math.sqrt(c2) #A=math.degrees(math.acos((a*a-b*b-c*c)/(-2*b*c))) #B=math.degrees(math.acos((b*b-a*a-c*c)/(-2*a*c))) C=math.degrees(math.acos((a2+b2-c2)/(2*a*b))) return C 二. 拉普拉斯判断图片是否模型 def is_blur(face,yuzhi): """ :param face: 脸部 :param yuzhi: 阈值判断脸部是否模糊 :return: """ Var=cv2.Laplacian(face, cv2.CV_64F).var() #print(Var) if Var > yuzhi: return False,Var else: return True,Var