Mise en oeuvre d’une camera numérique auto- adaptative

24
Mise en oeuvre d’une camera numérique auto-adaptative Projet de fin d’étude – Département Informatique - 1 Laurent AUGEAI & Victorien SILVESTRO

description

Mise en oeuvre d’une camera numérique auto- adaptative. Projet de fin d’étude – Département Informatique -. Plan de la présentation. Introduction Description du Hardware Fonctionnalités Travail à réaliser Description technique. Introduction. Objectif : - PowerPoint PPT Presentation

Transcript of Mise en oeuvre d’une camera numérique auto- adaptative

Page 1: Mise  en oeuvre d’une camera  numérique        auto- adaptative

1

Mise en oeuvre d’une camera numérique

auto-adaptative

Projet de fin d’étude – Département Informatique -

Laurent AUGEAI & Victorien SILVESTRO

Page 2: Mise  en oeuvre d’une camera  numérique        auto- adaptative

2

Introduction

Description du Hardware

Fonctionnalités

Travail à réaliser

Description technique

Laurent AUGEAI & Victorien SILVESTRO

Plan de la présentation

Page 3: Mise  en oeuvre d’une camera  numérique        auto- adaptative

3

Objectif : Détection de mouvement avec caméra embarquée

Contexte : Caméra utilisée en robotique Solution existante par port série

Laurent AUGEAI & Victorien SILVESTRO

Introduction

Page 4: Mise  en oeuvre d’une camera  numérique        auto- adaptative

4

Idée de base : Caméra directement connecté à la carte Gain en rapidité

=> Augmentation de la performance globale du système

Laurent AUGEAI & Victorien SILVESTRO

Introduction

Page 5: Mise  en oeuvre d’une camera  numérique        auto- adaptative

5

Schéma d’organisation:

Laurent AUGEAI & Victorien SILVESTRO

Description du Hardware

Page 6: Mise  en oeuvre d’une camera  numérique        auto- adaptative

6

Capture des images

Compression JPEG

Détection de mouvement

Transmission réseau

Mise à disposition des images

Laurent AUGEAI & Victorien SILVESTRO

Fonctionnalités

Page 7: Mise  en oeuvre d’une camera  numérique        auto- adaptative

7

Le driver de la caméra pour ce Hardware

Logiciel applicatif embarqué

Logiciel applicatif sur le poste distant

Laurent AUGEAI & Victorien SILVESTRO

Travail à réaliser

Page 8: Mise  en oeuvre d’une camera  numérique        auto- adaptative

8

Langage C

Environnement Linux (embarqué et poste de développement)

Cross compilation des binaires depuis un poste distant

Connexion Ethernet et Série

Laurent AUGEAI & Victorien SILVESTRO

Environnement de travail

Page 9: Mise  en oeuvre d’une camera  numérique        auto- adaptative

9

Embarqués :

Driver de récupération des informations (Pixels) provenant de la caméra.

Configuration de la caméra Détection de mouvement Construction de l’image Transmission réseau

Laurent AUGEAI & Victorien SILVESTRO

Modules

Page 10: Mise  en oeuvre d’une camera  numérique        auto- adaptative

10

Poste Extérieur :

Interface graphique Affichage du flux Stockage des enregistrements après détection

Laurent AUGEAI & Victorien SILVESTRO

Modules

Page 11: Mise  en oeuvre d’une camera  numérique        auto- adaptative

11

Driver Caméra : Pixels récupérés sous le format YUV.

Pb de rapidité entre le déclenchement de l’interruption et le traitant d’interruption.

Choix du pooling pour récupérer les pixels en fonction du registre d’état des signaux de l’imageur.

Utilisation des interfaces standards des drivers Linux (ioctl, read, write).

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 12: Mise  en oeuvre d’une camera  numérique        auto- adaptative

12

Observations a l’oscilloscope

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 13: Mise  en oeuvre d’une camera  numérique        auto- adaptative

13

Solution de Capture

1 – Déclencher sur signal d’interruption VSYNC (début d’image)

2 – Attendre par pooling le signal HREF (début de ligne)

3 – Capturer en boucle toutes les informations (validation des pixels et valeur du pixel) pendant la durée d’une ligne de l’image

4 – si toutes les lignes ont été reçues, aller en 5, sinon en 2

5 – examiner les valeurs obtenues dans le registre de validation et en déduire les données pixels valides.

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 14: Mise  en oeuvre d’une camera  numérique        auto- adaptative

14

Configuration de la caméra :

Utilisation du driver I2C fourni

Ecriture des registres de la caméra pour réglage : Fréquence d’horloge Fenêtrage Format de données Luminosité Gain

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 15: Mise  en oeuvre d’une camera  numérique        auto- adaptative

15

Construction de l’image :

Espace utilisateur Utilisation de la librairie « libjpeg » Mode Noir et Blanc Différent taux de compression disponible

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 16: Mise  en oeuvre d’une camera  numérique        auto- adaptative

16

Détection de mouvement :

Par comparaison de deux images successives. Les images successives ne sont pas conservées. Utilisation de l’indice de comparaison : Ecart-type. Ecart-type : observation de la fluctuation des valeurs sur

des images fixes.

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 17: Mise  en oeuvre d’une camera  numérique        auto- adaptative

17

Transmission réseau :

Socket Unix Protocole UDP non connecté pour le streaming Envoi des données brutes encadrées avec des balises

pour reconstitution des images. Un port vidéo (flux streaming) Un port de commande

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 18: Mise  en oeuvre d’une camera  numérique        auto- adaptative

18

Réception réseau : Un entête qui signale le début d’une nouvelle image (premier

paquet) Un entête qui signale la fin d’une image (dernier paquet) Un entête avec indicateur de position dans le flux

Le serveur adapte son comportement : signal d’une nouvelle image = initialise la création nouvelle

image, jette image précédente si non terminée. Indicateur de flux = informe de la cohérence Inclusion des informations mouvements dans le premier entête

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 19: Mise  en oeuvre d’une camera  numérique        auto- adaptative

19

Affichage du flux :

Utilisation de GTK+ version 2.0 Deux mode d’affichage : streaming & Mouvement-

uniquement Poste client -> récupère les données du réseau et les

affiche

Laurent AUGEAI & Victorien SILVESTRO

Description technique

Page 20: Mise  en oeuvre d’une camera  numérique        auto- adaptative

20

Câble Ethernet non détecté

Connexion Série inactives

Position des jumpers

Réglage manuel de la netteté

Laurent AUGEAI & Victorien SILVESTRO

Problèmes Matériels

Page 21: Mise  en oeuvre d’une camera  numérique        auto- adaptative

21

Temps de latence entre l’interruption et le Handler

Recompilation de la libjpeg

Adresse des pixels erronée

Mémoire disponible dans le noyau

Paquets Réseau non ordonnés

Laurent AUGEAI & Victorien SILVESTRO

Problèmes de Design

Page 22: Mise  en oeuvre d’une camera  numérique        auto- adaptative

22

Système complètement autonome

Performances réduites dues au système de récupération des images

1 image/seconde Résolution 240x220 Images noir&blanc Détection de mouvements

(basée sur la luminosité) Transmission streaming

Gain en fréquence d’images par rapport au précédent système

Laurent AUGEAI & Victorien SILVESTRO

Perfomance générale du système

Page 23: Mise  en oeuvre d’une camera  numérique        auto- adaptative

23

Une expérience significative dans le monde de l’embarqué

Prise en compte de la réelle difficulté des systèmes embarqués

Interface hardware (drivers) Debug avec l’oscilloscope à sonde Cross-compilation Contraintes d’espace mémoire et de temps d’éxécution

Laurent AUGEAI & Victorien SILVESTRO

Conclusion

Page 24: Mise  en oeuvre d’une camera  numérique        auto- adaptative

24Laurent AUGEAI & Victorien SILVESTRO