python中,有些函数输入需要是array类型的,如cv2.boundingRect(),需要把list格式转为array。 如已知手部21个关节点的(x,y)坐标,求这些关节点的最小外接矩形 all_points = [] for hand_pt in hand_pts_all: x = float(hand_pt[0]) y = float(hand_pt[1]) points = [x, y] all_points.append(points) a = np.array(all_points, dtype = np.float32)#list转为array #外接矩形框,没有方向角 x, y, w, h = cv2.boundingRect(a)
注意,在a = np.array(all_points, dtype = np.float32),一定要写dtype = np.float32,否则默认是double型,执行函数 cv2.boundingRect(a)会报错。