3.8 KiB
Face Scan RK3588 - Guida ai sorgenti e compilazione
Repository sorgente
Repository originale identificato:
/home/nvme/dockerdata/prove/face-clustering-rk3588-knn-opencl-validated
Questo repository contiene il motore utilizzato per il Face Scan dei progetti:
s141js → s190js
Scopo del programma
Il binario:
bin/face_scan
esegue:
- rilevamento dei volti nelle fotografie;
- estrazione degli embedding facciali;
- generazione dell'output JSON utilizzato successivamente dal sistema di riconoscimento.
Il riconoscimento delle persone non viene eseguito da face_scan.
Il riconoscimento viene effettuato successivamente dal programma:
bin/face_knn
che utilizza gli embedding generati da face_scan.
Sorgenti principali
Main Face Scan
src/face_scan.cc
Si occupa di:
- caricamento immagine;
- avvio scansione;
- generazione output JSON.
Motore RKNN
src/face_engine.cc
Gestisce:
- caricamento modello RKNN;
- inferenza tramite NPU Rockchip;
- estrazione embedding.
Header
include/face_engine.h
include/face_config.h
Binari generati
bin/face_scan
bin/face_recognition
Modelli utilizzati
I modelli sono contenuti nella directory:
models/
Verificare i modelli disponibili con:
find models -type f
Librerie richieste
Verifica:
ldd bin/face_scan
Dipendenze identificate:
librknnrt.so
libpthread.so
libdl.so
libstdc++.so.6
libgcc_s.so.1
libc.so.6
libm.so.6
Dipendenza fondamentale:
lib/librknnrt.so
Runtime NPU Rockchip.
Compilazione
Pulizia:
make clean
Compilazione:
make
Il Makefile genera:
bin/face_scan
bin/face_recognition
Comandi di verifica
Verifica dipendenze:
ldd bin/face_scan
Verifica hash:
sha256sum bin/face_scan
Visualizza simboli:
nm -C bin/face_scan | head
Hardware target
Scheda:
Orange Pi 5 Plus
SoC:
Rockchip RK3588
Acceleratore:
Rockchip NPU
Runtime:
RKNN Runtime
Relazione con Face KNN
Pipeline completa:
Foto
↓
face_scan
↓
embedding facciali
↓
face_knn
↓
riconoscimento persona
↓
database
↓
gallery
Face Scan:
NPU Rockchip (RKNN)
Face KNN:
CPU/OpenCL
Mali-G610
Cartelle da conservare
Per poter ricompilare il Face Scan in futuro conservare:
src/
include/
models/
lib/
Makefile
In particolare:
src/face_scan.cc
src/face_engine.cc
include/face_engine.h
include/face_config.h
lib/librknnrt.so
Note storiche
Il repository:
face-clustering-rk3588-knn-opencl-validated
è stato identificato come repository sorgente originale del motore Face Scan utilizzato dai progetti s141js → s190js.
Data documentazione:
2026-10-26
Verifica ricompilazione Face Scan
Data verifica: 2026-10-26
Ambiente utilizzato
Repository: /home/nvme/dockerdata/prove/a/docs/face-scan-source
Comandi eseguiti:
make clean
make
Confronto binari
| File | SHA256 |
|---|---|
| Binario compilato | 7b5148ee602f9bb1aa52e3c5c269c584b9dbea05b94296b049d32ec9985c69aa |
| Binario s190js | 7b5148ee602f9bb1aa52e3c5c269c584b9dbea05b94296b049d32ec9985c69aa |
Esito
✅ Ricompilazione verificata con successo.
Il binario generato dalla compilazione dei sorgenti presenti nel repository produce un file identico bit per bit al binario utilizzato in:
/home/nvme/dockerdata/prove/s190js/bin/face_scan
Conclusione
Sono stati verificati:
- sorgenti
- header
- Makefile
- libreria RKNN
- modelli
.rknn
Il repository contiene tutto il necessario per rigenerare il binario face_scan senza dipendenze aggiuntive.
Riproducibilità confermata.