/// <summary> /// 对图片做opencv的人脸分析 /// </summary> /// <param name="imgTag"></param> public static void OpenCVAnalysis(ImageTag imgTag) { var imageFile = imgTag.GetTrueImageFile(); var image = Cv2.ImRead(imageFile); var tps = new List <TagPart>(); foreach (var face in FaceDetect.OpenCvDetectMultiScale(image)) { var body = AITag.Common.Utils.GetBodyRect(face, (double)(64 - 8) / 128, image.Width, image.Height); if (body != Rect.Empty) { tps.Add(new TagPart { Face = face, Body = body }); } } if (tps.Count == 0) { imgTag.Status = "opencv_fail"; } else { imgTag.OpenCvParts = tps; imgTag.Status = "opencv_finish"; } }