C# 写一个从摄像头中检测人脸的程序,主动走在时代的风口浪尖上 前沿技术的应用

该代码示例展示了如何利用Emgu.CV库在C#中创建一个简单的人脸检测程序。通过VideoCapture捕获摄像头画面,CascadeClassifier检测人脸,并在图像上标出检测到的人脸区域。程序循环运行,直到用户按ESC键退出。
摘要由CSDN通过智能技术生成

我不懂里面的技术细节实现,大公司也难以去研究开发它。我们普通人只需要在项目中会使用它即可。再难的技术也不难了。我们只做应用,不搞科研。

1.还是用chatGPT来写。

using Emgu.CV;
using Emgu.CV.Structure;
using Emgu.CV.CvEnum;

class Program
{
    static void Main(string[] args)
    {
        // 创建摄像头捕获对象
        VideoCapture capture = new VideoCapture();

        // 创建人脸检测器对象
        CascadeClassifier faceCascade = new CascadeClassifier("haarcascade_frontalface_default.xml");

        // 打开摄像头
        capture.Start();

        // 创建窗口显示图像
        CvInvoke.NamedWindow("人脸检测");

        while (true)
        {
            // 从摄像头中获取图像
            Mat frame = capture.QueryFrame();

            // 转换为灰度图像进行人脸检测
            Mat grayFrame = new Mat();
            CvInvoke.CvtColor(frame, grayFrame, ColorConversion.Bgr2Gray);

            // 在灰度图像中检测人脸
            Rectangle[] faces = faceCascade.DetectMultiScale(grayFrame, 1.1, 3, Size.Empty);

            // 在图像中画出检测到的人脸矩形
            foreach (Rectangle face in faces)
            {
                CvInvoke.Rectangle(frame, face, new Bgr(Color.Red).MCvScalar, 2);
            }

            // 显示图像
            CvInvoke.Imshow("人脸检测", frame);

            // 等待按下ESC键退出
            if (CvInvoke.WaitKey(1) == 27)
                break;
        }

        // 停止摄像头,并释放资源
        capture.Stop();
        CvInvoke.DestroyAllWindows();
    }
}

2.像上一篇一样补上缺的东西。

有什么错,直接问,高效快速精准,太牛了。 

 

 

3.测试:看结果,调参数,就这么简单。

 

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黄人软件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值