效果

 

 

        VideoCapture video = new VideoCapture();
            video.Open(0); //电脑默认自带摄像头为0
            while (true)
            {
                Mat src = new Mat();
                if (!video.Read(src))
                {
                    break;
                } 
                Mat grayImage = new Mat();
                Cv2.CvtColor(src, grayImage, ColorConversionCodes.BGR2GRAY); //图形转成黑白色分析更明显
                Rect[] faces = cascade.DetectMultiScale(
                image: grayImage,
                scaleFactor: 1.1,
                minNeighbors: 1,
                flags: HaarDetectionTypes.DoRoughSearch | HaarDetectionTypes.ScaleImage,
                minSize: new OpenCvSharp.Size(30, 30)
                 );
                if (faces.Length > 0) //识别到人脸 
                  foreach (Rect face in faces) 
                      Cv2.Rectangle(src, face, new Scalar(0, 255, 0), 2); //画框 
                    
                Cv2.ImShow("Demo", src); 
                Cv2.WaitKey(1);
                src.Release(); //释放

            }
          
            Cv2.DestroyAllWindows();

  添加文字

  Cv2.Rectangle(src, face, new Scalar(0, 255, 0), 1);
  Cv2.PutText(src, name, new OpenCvSharp.Point(face.X, face.Y),HersheyFonts.HersheySimplex, 3, Scalar.Blue);
               

 

 

 

posted on 2022-04-27 20:17  金科许俊  阅读(298)  评论(0)    收藏  举报