Fausse arrestation de Donald Trump, l'intelligence artificielle détournée - Les dessous de l'infox, la chronique Donald Trump va-t-il être arrêté comme il l’affirme depuis le samedi 18 mars ? La question enflamme les réseaux sociaux ces derniers jours. L’ancien président américain pourrait être inculpé pour avoir acheté, en 2016, le silence d’une ancienne actrice porno avec qui il aurait eu une liaison. Cette possible inculpation d’un ancien chef d'État, serait une première dans l’histoire des États-Unis. Mais attention, beaucoup d’infox circulent en ligne, accompagnées d'images fabriquées. Donald Trump au sol en train d’être violemment interpellé, en prison derrière les barreaux, ou encore poursuivi par plusieurs policiers dans la rue. À en croire certains internautes, celles-ci seraient la preuve de l’arrestation de l’ancien président américain. Des images générées par l’IA Ces illustrations ont été générées par l’intelligence artificielle avec l'outil Midjourney. Les progrès de l’intelligence artificielle détournés Pas de mobilisation massive en soutien à Donald Trump
Voici le lien pour télécharger ce site. Décompresser l'archive dans le répertoire www d'un serveur comme Uwamp ou easyphp il en existe des portables (clé USB). Si vous avez besoin de davantage d'infos : Stephan.Van-Zuijlen@ac-nice.fr Voici un petit florilège (non exhaustif..) de ce que l'on peut faire en P5js avec des images. Tous ces programmes sont réalisables avec Processing (mode P5js) et sans aucun doute transposables à d'autres langages.. Vous pouvez modifier directement les programmes sur cette page (grâce à un widget récupéré sur le net..) Si d'autres idées vous viennent à l'esprit n'hésitez pas à nous les transmettre.. Deux exercices sont disponibles là. Une page pour réaliser ce que vous voulez sur une image Des pistes pour des activités avec des élèves Le site d'Éric Desblache Les bases Ce programme affiche une image dans un cadre. Certaines fonctions permettent de modifier l'image. Par exemple on teinte l'image en rouge avec la fonction : tint(255,0,0); Essayez avec d'autres couleurs.
Photographie numérique Ci-dessus quelques repères historiques de la photo numérique présentés sous la forme d'une frise : Au cours de ce thème vous aurez à utilisez le logiciel GIMP, logiciel libre et gratuit qui vous permettra de visualiser des images et surtout de les retoucher. Pour l'installer, il vous suffit de suivre le tutoriel présent dans le document téléchargeable ici. La version de GIMP la plus récente est la 2.10.22 et non plus celle du tutoriel mais la démarche à suivre reste strictement la même. Partie 1 : L'oeil et le capteur numérique L'oeil et le capteur photographique En comparant les images schématisant la vision humaine et l'appareil photo numérique, quel est l'équivalent au niveau de l'appareil numérique : du cristallin de l'oeil humain ? Notion d'image numérique Définition d'une image La définition d’une image numérique est le nombre de pixels qui la composent. Résolution d'une image Profondeur de couleur Associer à chacune des images ci-dessus sa profondeur. Le poids d'une image Introduction
Lancer de rayons 1. Introduction L'algorithme du lancer de rayons ([1][2]) permet d'effectuer la synthèse d'images de scènes tridimensionnelles. Il consiste à lancer des rayons depuis le point d'observation vers la scène, afin de déterminer la couleur à affecter à chaque point de l'image. Un autre algorithme utilisé pour obtenir des images de scènes est l'algorithme de rendu par objet, qui consiste à projeter les objets sur le plan image et à utiliser un tampon de profondeur (Z-buffer). Ce document explique le principe de l'algorithme de lancer de rayons, sous sa forme élémentaire, et présente un exemple en python. 2. 2.a. La formation d'une image par un système optique (œil, caméra, etc) obéit aux lois de la perspective, expliquées dans Projection perspective. La lumière provenant d'un point M d'un objet suit le rayon MC pour parvenir au plan image. Figure pleine page La lumière qui part de M pour parvenir au plan image provient des sources de lumière. 2.b. Figure pleine page 2.c. 2.d. Figure pleine page
Polygone 1. Introduction La triangulation d'une surface plane polygonale est une décomposition de la surface en triangles. La triangulation est en particulier utilisée pour la représentation graphique des surfaces, car le coloriage d'une surface triangulaire est une opération élémentaire simple à programmer. Les processeurs graphiques sont programmés pour colorier des surfaces élémentaires triangulaires (les triangles sont traités en parallèle). La résolution numérique des équations différentielles à dérivées partielles fait aussi appel à la triangulation des surfaces. On sait par ailleurs qu'une courbe plane, par exemple une courbe de Bézier, peut être approchée par une ligne polygonale. On s'intéresse ici à un algorithme permettant de trianguler un polygone simple, dont le temps d'exécution est quadratique par rapport au nombre de sommets du polygone. 2. On considère une région polygonale du plan, délimitée par une chaîne polygonale fermée qui ne se coupe pas elle-même. Figure pleine page 3. 4.
Bézier 1. Introduction Les courbes de Bézier sous couramment utilisées pour tracer des courbes définies par des points de contrôle, en particulier dans les logiciels de CAO. Pour alléger les notations, on se limite aux courbes dans un espace à 2 dimensions (courbes planes), mais tous les résultats et algorithmes s'appliquent également dans un espace à 3 dimensions. 2. 2.a. Par convention, on notera de la manière suivante un point P de l'espace à 2 dimensions dont les coordonnées dans un repère cartésien sont (x,y) : En python, on représentera un point par une liste [x,y]. Une courbe paramétrée définie sur un intervalle [a,b] est une application continue : Les fonctions x(t),y(t) sont continues. 2.b. Une courbe paramétrée est polynomiale de degré d si les fonctions x(t),y(t) sont des polynômes de degré d. 2.c. Une courbe de Bézier cubique est une courbe polynomiale de degré 3 définie par 4 points de contrôle, (P0,P1,P2,P3). La droite (P0,P1) est donc tangente à la courbe au point P0. 2.d. 3. 3.a.
Arbre d'objets 1. Introduction Dans un programme de représentation graphiques d'objets, il faut appliquer des transformations affines aux objets pour les placer dans l'espace, soit de manière absolue, soit par rapport à d'autres objets. Ce document montre comment utiliser une structure de données en arbre pour stocker les objets afin de calculer efficacement la transformation affine de visualisation-modélisation (modelview) de chacun d'eux au moment d'effectuer le rendu. 2. Principe Les objets sont placés dans un arbre qui permet de représenter les relations géométriques entre les différents objets. Figure pleine page L'objet racine est la scène. Chaque objet comporte donc une transformation affine qui le positionne (et l'oriente) par rapport à son objet père. Supposons que l'on cherche à calculer la transformation de visualisation-modélisation de l'objet 3. Pour obtenir une matrice de visualisation-modélisation, il faut donc multiplier les matrices en parcourant l'arbre à partir de la racine.
Visualisation 1. Introduction Les transformations de visualisation sont les transformations géométriques qui permettent d'obtenir une représentation bidimensionnelle (sous forme d'image) d'objets définis dans l'espace à trois dimensions. Les transformations géométriques utilisées sont les transformations affines et la projection perspective. Ces transformations sont mises en œuvre dans l'algorithme de rendu par objet, qui est fréquemment programmé sur les processeurs graphiques (GPU) via l'interface de programmation OpenGL. Le système considéré est constitué de différents objets. 2. Le positionnement des objets dans l'espace se fait au moyen de transformations affines. Les points caractéristiques des objets, par exemple les sommets des polyèdres, sont définis par leurs coordonnées homogènes : On note M la matrice 4x4 de la transformation affine qui permet (par multiplication à gauche) de placer les points dans l'espace. La deuxième étape consiste à positionner et orienter la caméra dans l'espace. 3. 4.
Transformations affines 1. Introduction Ce document présente une implémentation Python des transformations affines et de la projection perspective. Un point de l'espace ou un vecteur est représenté par ses coordonnées homogènes : Pour un point w=1, pour un vecteur w=0. Effectuer une transformation affine (ou une transformation linéaire pour un vecteur) consiste à multiplier cette matrice colonne par une matrice 4x4. Pour obtenir une projection perspective, une matrice de perspective doit être appliquée, qui modifie la valeur de w. 2. Le programme comporte une classe Transformation3D, dont les principales données sont la matrice de transformation et son inverse. import numpy import math Voici le constructeur. class Transformation3D: def __init__(self): self.M = numpy.identity(4,dtype=numpy.float64) self.invM = numpy.identity(4,dtype=numpy.float64) self.pile = [] self.deg2rad = math.pi/180.0 Les deux fonctions suivantes permettent d'ajouter une transformation à la pile et de récupérer la dernière transformation : 3.
Perspective 1. Introduction La projection perspective est la transformation géométrique réalisée par un système optique qui forme l'image d'objets situés dans l'espace. 2. Pour définir géométriquement la formation d'une image par un système optique, on considère le cas simple d'une lentille mince convergente, de centre O. Figure pleine page La figure montre deux points de l'espace A et B et leur projection A' et B' sur le plan image. L'application qui transforme les points de l'espace en leur projection sur le plan image est la projection perspective. La projection produit une image renversée par rapport aux objets. Figure pleine page On adopte la convention consistant à viser dans la direction des Z négatifs, qui permet de voir le repère OXY dans le sens direct (c'est aussi la convention utilisée fréquemment en optique). Ces deux relations définissent la projection perspective. On voit qu'un objet donné a une image dont la taille est inversement proportionnelle à sa distance au centre optique. 3. 4.