Principe de détection
Le dispositif exploite le flash LED du téléphone, généralement un diode à 450 nm d’émission bleue, pour illuminer la scène. Les lentilles des caméras dissimulées, même celles à infrarouge, reflètent partiellement cette lumière. La caméra du smartphone capte la réflexion et génère une image brute où les points lumineux correspondent à des surfaces potentiellement optiques. L’IA intervient ensuite pour différencier les reflets de lentilles des artefacts lumineux classiques (écrans, surfaces métalliques).
Architecture logicielle et modèle d’IA
L’application intègre un réseau de neurones convolutif (CNN) optimisé pour l’inférence mobile via TensorFlow Lite. Le modèle a été entraîné sur un jeu de données de 12 000 images, dont 4 500 contenant des caméras cachées de différents formats (mini‑DVR, caméras à visée nocturne, lentilles de 2 mm à 8 mm) et 7 500 images de scènes sans dispositif. La couche finale utilise une fonction sigmoïde pour produire un score de probabilité de présence de lentille. Sur un smartphone équipé d’un Snapdragon 888, le temps moyen d’inférence est de 45 ms, ce qui permet une détection en temps réel.
import cv2, numpy as np, tflite_runtime.interpreter as tflite
model = tflite.Interpreter(model_path="camera_detector.tflite")
model.allocate_tensors()
img = cv2.imread('capture.jpg')
img_resized = cv2.resize(img, (224,224))
input_data = np.expand_dims(img_resized, axis=0).astype(np.float32)
model.set_tensor(0, input_data)
model.invoke()
output = model.get_tensor(1)
print('Probabilité de caméra :', output[0][0])
Performances, contraintes et limites
Les tests internes rapportent un taux de détection de 94,7 % à une distance de 30 cm, avec un taux de faux positifs de 3,2 % sur des surfaces réfléchissantes (verre, métal poli). Au-delà de 1 m, la puissance du flash (≈3 mW) devient insuffisante pour générer un signal exploitable, réduisant le taux de détection à moins de 60 %. L’éclairage ambiant influence également la précision : en plein jour, le contraste entre le reflet de lentille et le bruit de fond chute, augmentant les faux négatifs. Le modèle ne détecte pas les caméras purement optiques sans surface réfléchissante (ex. : lentilles à revêtement anti‑reflet).
Perspectives d’intégration et sécurité
Le traitement s’effectue entièrement sur l’appareil, ce qui évite l’envoi de données sensibles vers le cloud et respecte la confidentialité de l’utilisateur. Cependant, la dépendance à la puissance du flash implique que les appareils sans LED bleue ou avec des LED de faible intensité ne bénéficient pas de la même efficacité. Une amélioration possible serait d’associer la méthode à une analyse spectrale du capteur, exploitant les filtres IR natifs des caméras modernes. En l’état, la solution constitue un outil pratique pour les professionnels de la sécurité, mais elle ne remplace pas une inspection physique exhaustive.