如何将已经检测并保存的人脸识别为本地系统为.jpg?

How to recognized face which are already detected and saved is local system as .jpg?

我用过OpenCV, JavaFX 检测人脸图像并保存在本地文件夹中。现在我想识别已经保存在本地系统中的人脸。我需要一些指导和一些示例代码或链接,以便我可以更进一步。

为了面子

Rect rectCrop = null;
    int i =1;
    for (Rect rect : facesArray) {
        Imgproc.rectangle(frame, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height),
                new Scalar(0, 255, 0));
        rectCrop = new Rect(rect.x, rect.y, rect.width, rect.height);

        Mat image_roi = new Mat(frame,rectCrop);
         Imgcodecs.imwrite("./face"+ i +".jpg",image_roi);
         i++;
    }

使用 openCV 3.4 尝试以下代码

static Mat processFace(Net net, Mat img) {
Mat blob = Dnn.blobFromImage(img, 1./255, new Size(96,96), Scalar.all(0), 
true, false);
net.setInput(blob);
return net.forward().clone();
}

  public static void main(String[] args) {
// Load the native library.
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

Net net  = Dnn.readNetFromTorch("openface.nn4.small2.v1.t7");

Mat img1 = Imgcodecs.imread("../img/face1.png");
Mat img2 = Imgcodecs.imread("../img/face2.jpg");

Mat feature1 = processFace(net, img1);
Mat feature2 = processFace(net, img2);
double distance = Core.norm(feature1, feature2);
System.out.println("distance: " + distance);
}