Editor de Morphing

L'Editor de Morphing va nèixer amb el desig de programar una aplicació vistosa

L'efecte escollit és el de Morphing que havia vist feia molts anys a una demostració de DOS del grup espanyol Iguana

Descripció

Amb l'aplicació podràs:

  • Escollir una llista de fotos amb les cares que vols transformar.
  • Insertar automàticament una triangulació amb 68 puntos reconeguts de la teva cara
  • Ajustar la triangulació adaptada a cada una de les cares.
  • Crear el video de morphing (video de transició d'una cara a una altra).

Característiques generals:

  • Multi-idioma
  • Multi-resolució (zoom configurable)
  • Opció de mode fosc
  • Notificació de nova versió
  • Manual d'usuari

Descripció del codi

Algoritme a alt nivell:

  • Partint d'una triangulació (la mateixa en totes les imatges)
  • Però amb els vèrtex dels triangles adaptats a les particularitats de cada cara
  • L'efecte de morphing, es crea fent una transició de la triangulació d'una imatge a la de la imatge següent, fent alhora una fosa de la imatge de cada triangle

Triangulació de Delaunay:

  • Es fa ús d'una llibreria professional de triangulació incremental de Delaunay que vaig traduir a Java d'una implementació en C++ que vaig trobar a internet, l'algorisme del qual el van idear investigadors del tema.
  • Funció afegida (perquè la necessitava): opció de revertir la inserció de l'últim vèrtex, cosa que ve como anell al dit per a que l'usuari tingui un vèrtex tentatiu al vuelo, fins que es formalitzi a la triangulació (demo).
  • Funció afegida (superinteressant): poder definir el domini inicial amb forma de rectangle, enlloc de amb un triangle (cosa no trivial, almenys amb el meu background!!).
  • Funció afegida per a recòrrer els triangles de la triangulació amb el patró de disseny Visitor.

Funcions interesants creades:

  • Algebra bàsoca: Transformació de les coordenades d'un punt interior a un triangle, a les coordenades dins d'un altre triangle, coneixent els vèrtex d'ambdos triangles
  • Matemàtica bàsica: Recòrrer els pixels d'un triangle, amb el patró de disseny Visitor.
  • Opció multi-fil per a crear la seqüència de video.


Amb la versió v1.1, es facilita molt a l'usuari la creació de la triangulació, ja que es pot fer ús d'una llibreria de detecció de cares amb I.A., que s'invoca per API rest a un servidor propi al núvol.

Gràcies a aquesta llibreria, podem partir d'una triangulació amb els 68 vèrtex detectats de cada cara, i podem seguir afegint vèrtex, si ho considerem necessari.

Pantalles

Editor de Morphing v1.0 (2022)

Video creat
Video demo
Descarregar

Editor de Morphing v1.1 (2023-2024)

Video creat
Video demo
Descarregar

Versions

image

La idea d’aquesta aplicació ve de fa molt de temps.

Quan era jove ja m’agradava la programació i disfrutava veient les demos que molts grups de programadors preparaven per a les diferents competicions de demos per tot el món.

Molts efectes d’aquestes demos eren espectaculars, tenint en compte la potència dels ordinadors de l’època.

Un cop vaig veure una demo d’un grup espanyol a la que hi havia un efecte de morphing: els components de l’equip s’anaven transformant de l’un a l’altre, i al final, l’últim es transformava en una iguana (el grup es deia Iguana).

Un efecte molt vistós.

Amb els anys li he estat donant voltes a com realitzar aquest efecte, i al final us presento aquesta aplicació amb la solució que proposo per a aconseguir-ho.

Hi ha un manual en castellà que explica pas a pas com fer anar l'aplicació.

Video de demostració

Video creat amb l'aplicació

image

Justament desprès d'haver cursat el màster d'intel.ligència artificial, hi ha ganes d'intruduir elements d'IA al meu projecte personal.

Aquest cop fent ús d'una llibreria de detecció de cares ja madura.


Amb aquesta nova versió, s'intenta facilitar la tasca a l'usuari afegint eines que permeten crear malles amb més soltura

Més concretament, s'inclou una llibreria que detecta cares a les imatges (dlib-68 face landmarks), que retorna 68 vèrtex de cada una de les cares detectades


Amb aquesta nova informació, l'aplicació permet:

  • inserir els 68 vèrtex detectats, amb un sol click
  • posicionar amb més exactitud els vèrtex a les cares noves

I es pot comprovar, que amb aquesta millora es poden crear projectes de Morphing d'una manera molt més àgil.

Així, per exemple, es pot crear un efecte interessant amb quatre fotos, en menys de 20 minuts, quan amb la versió anterior podies tardar ben bé un parell d'hores


Hi ha un manual d'usuari que explica pas a pas com fer anar l'aplicació.

Video de demostració

Video creat amb l'aplicació

Videos

Descàrregues