From 04ddadce19ae232f7a7d743295246de2c496f9b3 Mon Sep 17 00:00:00 2001 From: Novy San87 Date: Wed, 5 Aug 2026 18:26:19 +0700 Subject: [PATCH] =?UTF-8?q?Face=20scan:=20tampilkan=20hanya=20kandidat=20d?= =?UTF-8?q?engan=20skor=20>=3D=200.45=20(ambang=20cocok=20microservice)=20?= =?UTF-8?q?=E2=80=94=20kandidat=20skor=20rendah=20tidak=20muncul=20lagi,?= =?UTF-8?q?=20hanya=20siswa=20yang=20dikenali?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/FaceIdController.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/Http/Controllers/FaceIdController.php b/app/Http/Controllers/FaceIdController.php index a04f97d..90b1976 100644 --- a/app/Http/Controllers/FaceIdController.php +++ b/app/Http/Controllers/FaceIdController.php @@ -71,6 +71,15 @@ class FaceIdController extends Controller ]; } + // Tampilkan HANYA kandidat yang benar-benar cocok (skor >= ambang microservice). + // Microservice mengirim top-3 termasuk skor rendah — buang yang di bawah ambang + // supaya yang muncul hanya siswa yang dikenali (kecuali kasus kembar/ambigu). + $matchThreshold = 0.45; // sinkron config.THRESHOLD microservice (FACEID_THRESHOLD) + $candidates = array_values(array_filter( + $candidates, + fn (array $c) => $c['score'] >= $matchThreshold + )); + return response()->json([ 'ok' => true, 'matched' => $data['matched'] ?? false,