Informatique Graphique Méthodes de Rendu



Documents pareils
Synthèse d'images I. Venceslas BIRI IGM Université de Marne La

Les algorithmes de base du graphisme

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Géométrie discrète Chapitre V

Détection des points d intérêt et Segmentation des images RGB-D. Présentée par : Bilal Tawbe. Semaine de la recherche de l UQO

Initiation au HPC - Généralités

point On obtient ainsi le ou les points d inter- entre deux objets».

Tp_chemins..doc. Dans la barre "arche 2" couleur claire 1/5 21/01/13

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

M2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013

Mesurer les altitudes avec une carte

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

Contrôle Non Destructif : Implantation d'algorithmes sur GPU et multi-coeurs. Gilles Rougeron CEA/LIST Département Imagerie Simulation et Contrôle

Rendu temps réel de mer et de nuages

Rendu et Eclairage. La Cambre AlICe ( Note technique 3DS MAX décembre 2007 Denis Derycke

Franck VAUTIER, Jean-Pierre TOUMAZET, Erwan ROUSSEL, Marlène FAURE, Mohamed ABADI, Marta FLOREZ, Bertrand DOUSTEYSSIER

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN

Exercices Corrigés Premières notions sur les espaces vectoriels

Sillage Météo. Notion de sillage

Introduction au maillage pour le calcul scientifique

Des interfaces textuelles aux interfaces graphiques

Traitement numérique de l'image. Raphaël Isdant

Découvrir la voûte céleste c est avant tout une balade dans le ciel qui nous entoure. Mais pour se promener d une étoile ou d une galaxie à une

315 et 495 sont dans la table de 5. 5 est un diviseur commun. Leur PGCD n est pas 1. Il ne sont pas premiers entre eux

Gestion de scène pour les moteurs 3D

GL BE FLYER. Chef de projet de l équipe : SCIONICO Pierre

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

Mémoire. Rendu 3D temps-réel de grands objets. Benoît Bossavit Stéphane Romero-Romero Frédérick Roy Romain Vergne. Vendredi 07 Avril 2006

Table des matières. I Mise à niveau 11. Préface

Hiver 2013 IMN 259. Introduction à l analyse d images. Par Pierre-Marc Jodoin

Programme de la 1ère année

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Évaluation et implémentation des langages

Masses de données et calcul : à l IRIT. 8 octobre 2013

RIE LE RENDU THEO. 2 e trim ÉTAPE DE FINITION BOÎTE DE DIALOGUE. remarques

Synthèse d images Edmond Boyer

Vers du matériel libre

TPs Architecture des ordinateurs DUT Informatique - M4104c SUJETS. R. Raffin Aix-Marseille Université romain.raffin-at-univ-amu.fr

GIMP. Le traitement d'images libre INSTALLATION SUR WINDOWS

chapitre 4 Nombres de Catalan

Equation LIDAR : exp 2 Equation RADAR :

TP SIN Traitement d image

Interoperabilité entre Observatoire Virtuel et Grilles de calcul

IFO. Soleil. Antoine COUSYN 29/07/ /02/2015. Vidéo. Manipur, Inde. Saturation du capteur CMOS. 19 Juin h11 heure locale.

6.4. Les Ombres Raytracées (Raytraced Shadows) Shading Lamp Shadow and Spot Hemi Spot Sun Sun Scene F10 Shadow Render Ray Ray Shadow Shadow and Spot

31. OOo Draw Réglages propres à Draw

DUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique

Object Removal by Exemplar-Based Inpainting

Réalisation de cartes vectorielles avec Word

GMEC1311 Dessin d ingénierie. Chapitre 1: Introduction

Introduction W3C... FLOSS Manual Fr - Initiation à Inkscape 7

PROJET BIGDATART DOSSIER DE PRESENTATION

IMAGE BASED MODELING généralités et utilisation des outils de photomodélisation. 123D Catch de Autodesk.

Published : License : GPL

A V A N T - P R O J E T

Groupe Eyrolles, 2006, ISBN :

Chp. 4. Minimisation d une fonction d une variable

Formats d images. 1 Introduction

Modules Multimédia PAO (Adobe)

Leçon 18 Coupes et sections

L espace de travail de Photoshop

Segmentation d'images à l'aide d'agents sociaux : applications GPU

pcon.planner 6 Préparer et présenter une implantation en toute simplicité

Art of Illusion 2.0: quand Java fait de la très bonne 3D

Un exemple avec WORKSPACE d'interwrite

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Configuration et optimisation d'arcgis Server Gaëtan LAVENU ESRI France Sylvain BARD-MAÏER ESRI France

Algorithmes d'apprentissage

SUPPORT DE COURS FLASH CS4

Paris et New-York sont-ils les sommets d'un carré?

Station Totale Geomax Série Zoom30

LE PROJOPHONE de Fresnel

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

Rétablissement d un réseau cellulaire après un désastre

LES CAPTEURS CCD/CMOS

Fonctions de plusieurs variables

PRINCIPE MICROSCOPIE CONFOCALE

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Recherche d'images par le contenu Application au monitoring Télévisuel à l'institut national de l'audiovisuel

Conservation des documents numériques

Comment accéder à d Internet Explorer

ANNEXE 3 CHARTE DE COMMUNICATION DES SERVICES SMS+ / MMS+

MCMC et approximations en champ moyen pour les modèles de Markov

modélisation solide et dessin technique

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Création de maquette web

3 Approximation de solutions d équations

TABLE DES MATIÈRES CHAPITRE I. Les quanta s invitent

Ligne Dentaire. Système Dentaire Panoramique et 3D

Perdu dans la jungle des droits d accès?

Livre Blanc WebSphere Transcoding Publisher

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

PHOTOSHOP - L'AFFICHAGE

PHYSIQUE 2 - Épreuve écrite

Traitement bas-niveau

Lecture graphique. Table des matières

Utilisation du logiciel Epson Easy Interactive Tools

Guide Draw. Chapitre 5 Combiner plusieurs objets

Transcription:

Informatique Graphique Méthodes de Guillaume Gilet Guillaume.Gilet@unilim.fr 2012-2013

Résumé des épisodes précédents Principe de synthèse d'images Evaluation du transport de lumière Complexité des phénomènes Equation du rendu et simplications Modélisation d'objets 3D Découplage géométrie / apparence Dans notre cas, une représentation explicite : Tableau de sommets Notion d'adjacence

Le pipeline graphique Principe Une liste de sommets Le pipeline graphique Une liste d'attributs (couleurs, normales...) Des relations d'adjacence + autres... (caméras, lumières, textures...) Une grille 2D de pixels

Méthodes de rendu Diverses méthodes En fonction des objectifs / moyens Diverses approximations Divers temps de calculs Comment remplir notre grille de pixels? Determiner quels objets sont visibles par la caméra Comment les positionner sur la grille? Deux principales méthodes Espace image : Lancer de rayons Espace objet : Projection/ (moteurs 3D)

Méthodes de rendu Lancer de rayons

Méthode de rendu Le lancer de rayons I I I I I Méthode espace image Un rayon pour chaque pixel Permet de simuler des e ets complexes Calcul d'intersection

Méthode de rendu Le lancer de rayon Principes Pour chaque pixel Calculer une couleur Portion de la scène visible depuis ce pixel Lancer un rayon dans la scène Rayons primaires

Méthode de rendu Le lancer de rayon Principes Pour chaque pixel Calculer une couleur Lancer un rayon dans la scène Rayons primaires Pas d'intersection : couleur indénie

Méthode de rendu Le lancer de rayon Principes Plusieurs intersections Surface visible depuis le pixel

Méthode de rendu Le lancer de rayon Principes Evaluer équation du rendu Simplication : couleur de l'objet

Méthode de rendu Le lancer de rayon Principes Plusieurs intersections Choix de l'intersection la plus proche Il faut tester tous les objets!

Le Lancer de Rayon On connait l'objet pour 1 pixel Evaluer l'équation du rendu Pour l'instant : Une constante Comment?

Le Lancer de Rayon On connait l'objet pour 1 pixel Evaluer l'équation du rendu Pour l'instant : Une constante Comment? Lancer de rayons avec lumière Intégrer les sources de lumières La lumière est elle visible?

Le Lancer de Rayon Lancer de rayons simple Grosse approximation Pas de simulation des eets complexes Pas de prise en compte des sources lumineuses Uniquement calcul de visibilité

Le Lancer de Rayon Lancer de rayons simple Grosse approximation Pas de simulation des eets complexes Pas de prise en compte des sources lumineuses Uniquement calcul de visibilité Lancer de rayons avec lumière Rajouter de la lumière

Méthode de rendu Le lancer de rayons Intégration de la lumière Comment intégrer la lumière?

Méthode de rendu Le lancer de rayons Intégration de la lumière Lancer un rayon vers la lumière Rayon d'ombre Notion de visibilité Recherche d'intersections

Méthode de rendu Le lancer de rayons Intégration de la lumière Evaluation de l'équation du rendu Evaluation simple Discrète Phong/Gouraud (dans les prochains cours)

Méthode de rendu Le lancer de rayons Intégration de la lumière Evaluation de l'équation du rendu Evaluation simple Discrète Phong/Gouraud (dans les prochains cours)

Méthode de rendu Le lancer de rayons Intégration de la lumière Evaluation de l'équation du rendu Evaluation simple Discrète Phong/Gouraud (dans les prochains cours)

Méthode de rendu Le lancer de rayons Intégration de la lumière Evaluation de l'équation du rendu Evaluation simple Discrète Phong/Gouraud (dans les prochains cours) Formulation

Le Lancer de Rayon Lancer de rayons avec lumière Toujours de grosses approximations Pas de simulation des eets complexes Pas de surface reechissantes Pas de transparence Prise en compte de la lumière directe

Le Lancer de Rayon Lancer de rayons avec lumière Toujours de grosses approximations Pas de simulation des eets complexes Pas de surface reechissantes Pas de transparence Prise en compte de la lumière directe Idée : Simuler le trajet inverse de la lumière

Méthode de rendu Complexier le lancer de rayons Rajouter des reexions

Méthode de rendu Complexier le lancer de rayons Lancer un rayon rééchi Rayon rééchi Loi de Fresnel

Méthode de rendu Complexier le lancer de rayons Evaluation récursive du nouveau rayon Nouveau rayon d'ombre, rééchi

Méthode de rendu Complexier le lancer de rayons Evaluation récursive du nouveau rayon Nouveau rayon d'ombre, rééchi Formulation recursive du problème

Méthode de rendu Complexier le lancer de rayons Et la transparence? Rayon Transmis A travers l'objet

Méthode de rendu Complexier le lancer de rayons

Le Lancer de Rayon Lancer de rayons avec lumière Toujours des approximations Pas de simulation des eets complexes Pas de lumière indirecte

Le Lancer de Rayon Lancer de rayons avec lumière Toujours des approximations Pas de simulation des eets complexes Pas de lumière indirecte Importance de la lumière indirecte Besoin d'autres méthodes Illumination globale Path Tracing, Photon mapping...

Le Lancer de Rayon Lancer de rayons avec lumière Toujours des approximations Pas de simulation des eets complexes Pas de lumière indirecte Importance de la lumière indirecte Besoin d'autres méthodes Illumination globale Path Tracing, Photon mapping... Exemple (UP)

Le Lancer de Rayon Avantages et inconvénients Parallèlisme Qualité d'image Eets complexes Calcul d'intersection pour chaque objet Un rayon pour chaque pixel de l'image Performances oine (de moins en moins vrai)

Méthodes de rendu Projection/

Méthodes de rendu Projection/ Projection/ Méthode espace objet Modèles polygonaux Projection de chaque objet sur le plan image Projection des sommets : Passage continu/discret

Méthodes de rendu Projection/ Projection Pour chaque objet Projection des sommets dans le plan image (espace ecran)

Méthodes de rendu Projection/ Sommets projetés dans le plan image

Méthodes de rendu Projection/ Discrétisation du plan image Remplissage des polygones Tracé de droites Production de Fragments

Méthodes de rendu Projection/ Exemple pour un triangle Projection de 3 sommets

Méthodes de rendu Projection/ Exemple pour un triangle Projection de 3 sommets Avec chacun une couleur

Méthodes de rendu Projection/ Exemple pour un triangle Projection de 3 sommets Avec chacun une couleur Et une information de connexité Une primitive

Méthodes de rendu Projection/ Exemple pour un triangle Algorithme de Bresenham Méthode de remplissage de polygone Utilisation des cartes graphiques

Méthodes de rendu Projection/ Calcul d'illumination? Domaine discret Interpolation des éléments Couleur Position 3D Normale

Méthodes de rendu Projection/ Calcul d'illumination? Domaine discret Interpolation des éléments Couleur Position 3D Normale

Méthodes de rendu Projection/ Elimination des parties cachées Plusieurs méthodes Algorithme du peintre Division de l'écran Z-Buer

Méthodes de rendu Projection/ Elimination des parties cachées Idée : stocker pour chaque fragment sa profondeur Depth Buer Principe : comparer la profondeur de chaque fragment avec celle stockée

Méthodes de rendu Projection/ Elimination des parties cachées Idée : stocker pour chaque fragment sa profondeur Depth Buer Principe : comparer la profondeur de chaque fragment avec celle stockée

Méthodes de rendu Projection/ Elimination des parties cachées Idée : stocker pour chaque fragment sa profondeur Depth Buer Principe : comparer la profondeur de chaque fragment avec celle stockée

Méthodes de rendu Projection/ Elimination des parties cachées Idée : stocker pour chaque fragment sa profondeur Depth Buer Principe : comparer la profondeur de chaque fragment avec celle stockée Pour chaque fragment f i (GL_LEQUAL) Si depth(f i ) <= depth(buer(f i )) mettre a jour couleur et profondeur de f i

Méthodes de rendu Projection/ Elimination des parties cachées Idée : stocker pour chaque fragment sa profondeur Depth Buer Principe : comparer la profondeur de chaque fragment avec celle stockée Pour chaque fragment f i (GL_LESS) Si depth(f i ) < depth(buer(f i )) mettre a jour couleur et profondeur de f i

Méthodes de rendu En conclusion...

Méthodes de rendu Lancer de rayons Visibilité Espace Image Complexité Résolution Scène Méthode récursive Calculs en 3D Méthode récursive Eets lumineux complexes Intersections parfois diciles Parallèlisable

Méthodes de rendu Lancer de rayons Visibilité Espace Image Complexité Résolution Scène Méthode récursive Calculs en 3D Méthode récursive Eets lumineux complexes Intersections parfois diciles Parallèlisable Rastérisation Visibilité Espace Objet Complexité Scène Résolution (aussi) Remplissage rapide Calculs en 2D (et 1/2) Eets lumineux simples Simplicité des calculs Parallèlisable

Méthodes de rendu Objectif Qualité Plutôt lancer de rayons Temps de calculs Eets lumineux complexes Nombreuses optimisations Structures d'accélération Evaluation stochastique Gestion mémoire (Reyes) Algorithme principalement CPU Fort intérêt des CPU multicoeurs Objectif Temps réél Plutôt rastérisation Simplicité des calculs Développement dû aux cartes graphiques Calcul matriciel et vectoriel Gestion simple de mémoire Utilisation du cache Parallèlisation massive Maintenant quasi-exclusivement GPU Attention : ça peut changer demain! Evolutions matérielles très rapides Evolution vers les architectures multicoeurs