OpenCv for java 人脸识别(提供源代码)

一、内容

OpenCv 进行人脸识别非常简单,它已经提供了模型,直接调用该模型进行匹配即可

二、步骤

打开摄像头获取帧数据-->对帧数据进行模型匹配-->匹配通过就对目标画框框

听起来十分简单,确实十分简单,难主要在配置上出现问题繁琐,需要源代码请直接跳转第三步

伪代码:

public static void Video(){
        // 加载匹配模型
        // "C:\\Users\\kk\\IdeaProjects\\open-demo 需要改成当前本地项目地址
        CascadeClassifier faceCascade = new CascadeClassifier("C:\\Users\\kk\\IdeaProjects\\open-demo\\haarcascades\\haarcascade_frontalface_default.xml");
        // 打开摄像头
        VideoCapture videoCapture = new VideoCapture(0);

        while (true) {
            Mat frame = new Mat();
            // 读取帧图像
            videoCapture.read(frame);

            // 将图像转为灰度图
            Mat gray = new Mat();
            Imgproc.cvtColor(frame, gray, Imgproc.COLOR_BGR2GRAY);

            // 检测人脸
            MatOfRect faces = new MatOfRect();
            faceCascade.detectMultiScale(gray, faces);

            // 在检测到的人脸周围画矩形框
            for (Rect rect : faces.toArray()) {
                Imgproc.rectangle(frame, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height), new Scalar(0, 255, 0), 2);
            }

            // 显示图像
            HighGui.imshow("Frame", frame);

            // 按下q键退出循环
            if (HighGui.waitKey(1) == 'q') {
                break;
            }
        }

        // 释放摄像头
        videoCapture.release();
        // 关闭窗口
        HighGui.destroyAllWindows();
    }

三、源代码

已经提供了完整项目,具体说明请查看项目的 HELP.md 文件

gitee地址:OpenCv项目构建: OpenCv项目构建,OpenCv4.8.0+Springboot

如果觉得有用请点个赞 ^_^

你可能感兴趣的:(无聊的小程序,opencv,人工智能,计算机视觉,java)