Caso Técnico

Caso de detección facial sin conexión RK3588 y entrega de Android SDK

Winge Technology implementó la detección local de rostro frontal, perfil izquierdo y perfil derecho en gafas inteligentes RK3588 Android y entregó Core AAR, Face AAR, Camera2 Demo, documentación de integración y evidencias de una regresión breve en el dispositivo.

Caso de detección facial sin conexión RK3588 y entrega de Android SDK

Resumen del caso

El proyecto se desarrolló para gafas inteligentes RK3588 Android. Los rostros frontales, perfiles izquierdos y perfiles derechos se detectan localmente sin un servicio de reconocimiento en la nube. El SDK recibe fotogramas Camera2 o imágenes locales y devuelve caja facial, cinco puntos, orientación, yaw, confianza, ID de seguimiento breve y tiempo de proceso. La entrega incluyó Core AAR, Face AAR, Camera2 Demo y documentación de integración.

El alcance es detección facial y estimación de pose, no identificación de personas. No incluye nombre o número de empleado, base de datos facial, verificación 1:1, búsqueda 1:N, prueba de vida ni análisis de edad, género o emoción.

Contexto del proyecto

El dispositivo objetivo era una gafa inteligente RK3588 Android arm64-v8a. El cliente necesitaba localizar personas en la vista previa para selección táctil, ampliación local e interacciones posteriores. El procesamiento debía ejecutarse sin conexión en el dispositivo e integrarse en una aplicación Android existente.

Las entradas incluyen Camera2 YUV_420_888, NV21, RGBA_8888 e imágenes fijas. También se trataron la diferencia entre la tasa de cámara e inferencia, la vida del búfer, rotación, espejo, YUV stride y el mapeo de coordenadas del modelo a la vista previa.

Alcance de entrega

ElementoContenido
Android SDKCore AAR y Face AAR
DemoCamera2 Demo APK de detección facial en tiempo real
APIDetección síncrona y asíncrona
EntradaYUV_420_888, NV21, RGBA_8888 e imágenes locales
SalidaCaja, confianza, cinco puntos, frontal/izquierda/derecha, yaw, trackId y tiempo por llamada
DocumentosGuía de integración, ejemplos, diagnóstico, notas y lista SHA-256
EjecuciónProcesamiento local sin conexión en RK3588 Android

Solución técnica

Flujo: Camera2 o imagen fija → formato y orientación → detección OpenCV YuNet → geometría de cinco puntos → clasificación frontal/izquierda/derecha → seguimiento breve → callback y superposición en interfaz.

La base usa OpenCV 4.10.0 y YuNet en CPU. El flujo en tiempo real usa 320×320; las imágenes fijas, 640×640. Las tres direcciones comparten detector y API, y se estiman mediante la geometría de los puntos.

La Demo envía una petición cada 100 ms, unas diez por segundo. Cada instancia mantiene una sola petición asíncrona pendiente. DirectBuffers de la aplicación guardan Y/U/V. Camera2 usa acquireLatestImage() para omitir fotogramas antiguos y limitar la latencia acumulada.

Causa y corrección

Algunas imágenes se detectaban en escritorio, pero devolvían cero en Android Demo. La comparación del modelo, la entrada y la salida móvil aisló el problema en la lectura de la matriz OpenCV Java.

FaceDetectorYN.detect() devuelve una matriz monocanal N×15. El código Android original no leía los 15 valores de cada fila, por lo que resultados válidos se descartaban en la comprobación de longitud. La corrección lee la fila completa según columnas y canales. También se añadieron rotación, conversión de color, alternativa para imágenes anchas y comprobaciones de coherencia AAR.

La regresión se amplió a rostros frontales, perfiles, muestras sin rostro, imágenes fijas y Camera2 para separar problemas de modelo, preprocesado, decodificación y coordenadas UI.

Verificación de ingeniería

Los datos proceden del registro de entrega del 29-07-2026 y se aplican a Eye Algo Face SDK 0.4.5 fix5 en RK3588 Android arm64-v8a. Prueban el build, la API y el flujo corto indicados; no establecen precisión en lote, estabilidad prolongada ni rendimiento de producción.

PruebaResultado
Tests unitarios SDK, Core y Face157/157 superados
Tests unitarios de Demo13/13 superados
Tests de herramientas Python143/143 superados
Android Lint0 Error, 19 Warning
Build APK y AARSuperado
Instalación, inicio y permisos RK3588Superado
Camera2 durante 10 segundossubmit/callback 79/79; dropped 0
Escaneo corto de erroresSin errores de crash, cámara, permisos o biblioteca nativa

Las muestras incluyen frontal, perfiles simétricos y negativos sin rostro. Este conjunto pequeño verifica detección, dirección e interfaz; no sustenta Precision, Recall, F1 ni precisión por pose.

Resultados y aplicaciones

  • Detección frontal, izquierda y derecha reunida en una API Android SDK.
  • Camera2 e imágenes locales comparten la misma estructura de salida.
  • El procesamiento local reduce la carga de vídeo original y funciona sin red.
  • Cajas y puntos sirven para selección, seguimiento breve, ampliación y algoritmos posteriores.
  • El paquete incluye Demo, AAR, integración, diagnóstico y lista de hashes.

Aplicable a selección de personas en gafas inteligentes, escenas con varias personas, indicación de dirección, imágenes sin conexión y preparación de recortes. Identidad, prueba de vida y análisis conductual posteriores quedan fuera del alcance.

Límites de aceptación

El artefacto actual es para pruebas del cliente e integración, no está firmado para producción. Antes del lanzamiento se requieren el material de firma del cliente y un conjunto real congelado para confirmar anotaciones, Precision, Recall, F1, matriz de confusión por pose y umbrales permitidos.

Perfiles extremos, oclusión, reflejo fuerte, poca luz, caras pequeñas y recaptura de pantalla aún pueden causar omisiones o errores de dirección. El tiempo de una imagen no representa media, P95, tasa estable ni rendimiento prolongado. La prueba de ocho horas no completada no se declara superada.

Preguntas frecuentes

¿El SDK necesita red?

La detección se ejecuta en RK3588 Android y no depende de la nube. La conexión de la aplicación depende de las funciones del cliente.

¿Incluye identificación facial?

No. Incluye posición, cinco puntos y dirección frontal/izquierda/derecha, sin nombre, base facial, 1:1 ni 1:N.

¿Cómo se integra en Android?

Core AAR y Face AAR ofrecen API síncrona y asíncrona. Se incluyen Camera2 Demo, formatos, reglas de búfer, ejemplos y diagnóstico.

¿Qué comprobaciones RK3588 se completaron?

Instalación, inicio, permisos, muestras fijas y Camera2 durante diez segundos. Precisión formal, firma y estabilidad de ocho horas son elementos separados.

¿Puede usarse directamente en otro RK3588?

La API y el método se reutilizan, pero cámara, Android, orientación, stride, memoria, temperatura y carga exigen repetir build, función, rendimiento y estabilidad.

Servicios relacionados

Comentar un Proyecto Similar

Envíe el dispositivo objetivo, la versión de Android, la entrada de cámara y los criterios de aceptación para una revisión técnica inicial.

Online
Phone
13910119357
WeChat
WhatsApp
Winge Technology WhatsApp QR code Scan or click to contact us
Top