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

Post on 31-Dec-2015

49 views 3 download

Tags:

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

1

Mise en oeuvre d’une camera numérique

auto-adaptative

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

Laurent AUGEAI & Victorien SILVESTRO

2

Introduction

Description du Hardware

Fonctionnalités

Travail à réaliser

Description technique

Laurent AUGEAI & Victorien SILVESTRO

Plan de la présentation

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

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

5

Schéma d’organisation:

Laurent AUGEAI & Victorien SILVESTRO

Description du Hardware

6

Capture des images

Compression JPEG

Détection de mouvement

Transmission réseau

Mise à disposition des images

Laurent AUGEAI & Victorien SILVESTRO

Fonctionnalités

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

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

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

10

Poste Extérieur :

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

Laurent AUGEAI & Victorien SILVESTRO

Modules

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

12

Observations a l’oscilloscope

Laurent AUGEAI & Victorien SILVESTRO

Description technique

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

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

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

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

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

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

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

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

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

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

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

24Laurent AUGEAI & Victorien SILVESTRO