*
Principe
Image autonome tout à la fois cause et
conséquence d´elle-même: un
réseau neuronal complètement connecté
(c´est à dire réentrant) dont la couche
d´entrée est l´image, dont la couche de
sortie fournit des paramètres dynamiques
générant l´imag et dont la matrice des
poids synaptiques est l´image au moyen de la
transformation:
poids = 2 * luminance - 1
assurant des poids compris entre -1 et 1 pour des luminances
comprises entre 0 et 1.
L´analyse dynamique de capteurs (comme un signal
audio) permet de moduler les sorties du réseau.
L´image est générée par un
automapping sur:
Une grille Sel dont les sommets subissent des forces
dues à des ressorts dont la raideur et la viscosité
sont calculées en fonction de
dist sum(fft)
des grilles Map1,2,3,... animées en position,
dilatation, rotation et tranparence selon le même principe.
Des corps peuvent être
ajoutés.
Le
code émergent est déclenché en
enfonçant la touche .
Une explication est obtenue en enfonçant la touche .
Installation
Cette application peut fonctionner en mode installation
ou VJ ou spectacle en interprétant tout
type de musique.
Il suffit d´un micro externe placé au voisinage
des baffles, la touche a permet d´ajustar
automatiquement la sensibilité du micro (modifier Sen_Adj,Sen_Coe_Adj) , pour un réglage
plus fin utiliserles les tpuches , (virgule et ;
(point virgule).
Les
Raccourcis clavier permettent tous
les effets programmés.
Une immersion peut ê:tre obtenue en utilisant plusieurs
ordinateurs et plusieurs vidéo projecteurs.
Menu
HEL
Help court.
DOC
Ce fichier.
TEST
construit automatiquement un réseau aléatoire
SELF
HEL
aide
BUILD
Modifier n, la matrice des poids
synaptiques sera de dimension n2*n2 avce n2 = 2 n,
la dimension des motifs et des lois sera n2, les
dimensions de l'image associée à la matrice
sera n2 * n2, cette image sera mappée sur une
grille occupant une grande partie de l'écran
et, si on capte cette image pour remplir
la matrice on réalise ainsi un automapping
de réseau.
Le réseau ne fonctionne plus sur le mode
mimétique de la reconnaissance mais comme
un moteur auto entretenu de création
d'images animées.
START
lance le processus
BODY
Modifier nb.
body.func construction des corps.
traj_bod.func animation
des corps et gestion des collisions.
influence de l´environnement
ILLUM
yes/no illum
INI
Réinitialisation.
READ
Lit le fichier PARAM_NET des paramètres:
Tempo enchainement de programmes
Ni0,Ni1 période minpmm et mximum
Sen_Coe_Fft multiplicateur de la fft
Sen_Env enveloppe
Sen_Min filtre basse amplitude
Sen_Max filtre haute amplitude
Sen_Dil amplification des hautes fréquznczs
Nb_E duré de l´explication
Sem_E explication -1 (no), 1 (yes)
Size_1_2 taille minimum et maximum des mappes Map123.
Bod_Coe_Hair longueur des cheveux.
Sti_Sel,Vis_Sel ressort de Sel.
Rota rotatuon des mappes.
Coe_X,Coe_Y,Coe_Fad déplacement des mappes.
Add_Force_Rota force rota add vol.
Force0 base des forces.
Visc0 base des viscosités
Reb rebond.
Coe coefficient des forces.
Up saut.
Balance équilibre.
Center centrage.
Collision_Gravity gravité.
Coe_Ste
Rotx,Roty,Rotz rotation des torses.
Lock /*??? BUG ???*/
Lum0,Lum luminosité.
Coe_Speed,Coe_Mod coefficients pour k.
Sen_Coe_Sng coefficient pour sng.
RP,GP,BP,DRP,DGP,DBP pulsation des couleurs.
Thr_Traj seuil de choix des trajectoires en
fonction de Sen_Nb_Gre.
Period_Traj période de pulsation des
trajectoires.
Sen_Average dynamic(id)average.
Coe_Speed_Rota coefficient pour K.
Coe_Map coefficient de variation des mappes.
Sen_Top_Thr Sen_Top=(Sen_Dif>Sen_Dif_Ave*Sen_Top_Thr[2])=1 : 0; permet de déclencher les mouvements avant
terme.
Back_Speed contre mouvement
Rota_Rad rotation des radius
WRITE
Écrit le fichier PARAM_NET des paramètres,
permet de relancer el programme avec les paramètres
modifiés.
IMAGE
HEL
Aide.
BUILD
Construit une image 3D.
DISPL
Affiche une image 3D.
PARAM
HEL
Help
IMAGE
Paramètres d´image;.
size1,size2 minimum et maximum de dilatation des
mappes Map1,2,3.
rota,force rotation des mappes.
x,y déplacement des mappes.
fad *(x,y).
lum0,lum col=lum0+rgb*lum*sqrt(Sen_Nb_Gre)
r,g,b RP,GP,BP.
dr,dg,db DRP,DGP,DBP: puls(RP,GP,BP).
RP,GP,BP;
DYNAMIC
Paramètres de la dynamique.
BODY
Paramètresdes corps.
nb nombre de corps
t0,t1,t transparence maximum,minimum,courante
traj 1,2,3: choix définitif, 0:
retour au mode pulsé de variation de traj.
INETWORK
Paramètres des réseaux neuronaux.
hide nombre de couches cachées.
SENSOR
Paramètres des capteurs.
COE
Coefficients.
DEBUG
interaction debug.
EMER
Affichage du code émergent, r sur fond noir,
E explications.
TEXT
Le texte du fichier Text s'affiche ligne par ligne
au bas de l'écran, cliquer dans le texte pour changer de ligne.
L'option tex=Text1 permet de charger un autre fichier
Text1.
Si la première ligne est:
*Text_Poi=Xe1+Dy2,Ye2-4*Dy2;Text_D=2;
Le texte s'affiche par 2 lignes au point
Xe1+Dy2,Ye2-4*Dy2.
Si une ligen se termine par Fn la fonction Fig(n)
est exécutée (fichier TEX.func).
EXI
Termine le programme.
cclavier
Un caractère
A vibration des maps
B couleur du fond
C socks
D yes/no cursor
E explications
F focale automatique
H Hat
I sauvegarde les images à partir du
fichier sensor.
L Lock actif
M=n nombre de mappes actives? si n>4 nombre
pulsé entre 1 et 4 de période n
N contrast
O simple
R reset
S Num_S++
T trajectoires automatiques
T programme suivant après Tempo images
U func_USE()
W yes/no wing
X text
Y a< href="#EME">EMER/a>text
Z rand Num_S
a fft automatique
b body++:
b>c displ fft, dila=correction de la fft
(augmente les aigus)
d dila body
e yes/no ext
f ini/previous fft
g pressg key to start
h help
i yes/no illum"Y
p Paramètres
q exit
r yes/bo displ network back
s SPEED
t yes/no transp
u pour que plusieurs corps se tournent autour
x affichage rapide
z complex (b=3,A+,u+)
: yes/no menu
. affiche le mini menu des paramètres
* mode raccourcis long terminé par ENTER
affiché an bas et à gauche de l´écran
aprè le signe <<. Les 2 premiers
caractères doivent être tapés assez
rapidement, sinon le premier caractère déclenche
la fonction définies dans F0.
* sort de ce mode.
Raccourcis long
spe mode spécial.
Utilisation
Lancements par défaut
Cliquer sur DEMO.js:
dem: options g&ecute;nérales
options particuliéegraves,res:
sex=0 commande le nombre de corps
age=18;hai=1
Cliquer sur DEMO_MOU.js: sorris avec 1 corps.
Cliquer sur DEMO_SPE.js: mode spécial selon
le fichier SPE:
L´option spe=SPE1 permet de choisir le
fichier.
Cliquer sur DEMOXXX-2.js: 2 corps en mode film, il
faut avoir construit l´image T.jpg avec
l´application mount_OK, on peut modifier le nom de
cette image dans le fichier DEMOXXX-2.js (tit=new name).
Comment modifier ces fichiers
On peut préciser d´aures paramètres, par exemple:
WshShell.Run("anyflo.exe env=env \"lan=net(\\\"dem;k;E;age=18,16;sex=1,0;hai=.2,2;b=2;tra=1;D;g;c=1\\\")\" ful");
pour un garçon de 18 ans et une fille de 16 ans
avec des cheveux de longueurs .2 et 2.
Cliquer sur AUDIO.js pour construire le fichier
sensor.snsor des valeurs de l´audio.
Cliquer sur TIME.js pour ajuster ce fichier à
un temps donné.
Cliquer sur DILA.js pour modifier l´amplitude
de ce fichier.
Cliquer sur IMAGE.js pour générer un
film.
Spectacle
Cliquer sur AUTO.js: automatique (A, a)avec 2 corps avec inhibition de q.
L´option a permet d´adapter
automatiquement l´audio mais écrase les contrastes,
en sortir en enfonçant la touche a et régler
l´,audio au moyen des touches:
, (virgule) diminue
; (point virgule) augmente.
On pourra utiliser plusieurs PC et plusieurs vidéo
projecteurs pour une immersion.
Modification
Les paramètres par dé,faut sont définis
dans le fichier PARAM et peuvent y
être modifiés.
En mode interactif cliquer sur PAR ou
enfoncer la touche p. Après modification des
paramètres ceux-ci peuvent être sauvés
dans le fichier PARAM en cliquant sur
WRITE.
Les paramètres par dé,faut d´origine sont
définis dans le fichier PARAM0 qui
ne doit pas être modifié.
Animation en play back
Pour créer des vidéos en interaction
endogène ne subissant pas les limitations du temps
ré,el (temps de calucul poportionnel à la
complexité) il suffit d´enregistrer une
compression des valeurs des capteurs puis de rejouer (play
back) en lisant ces valeurs:
- Cliquer sur AUDIO.js pour stocker
les informations du son dans le fichier sensor.sensor.
Options:
dil=1.105 dilatation du fichier sensor.sensor.
fft=f capteur audio initialisé à
f.
sen=name.sensor nom du fichier de sauvegarde des
valeurs du capteur (sensor.sensor par défaut).
I sortie du programma à la fin du traitement.
wri informations audio stocées dans le
fichier sensor.sensor<.b>.
per=25 période.
Options de lancement
Un caractère
voir raccourcis clavier.
q inhibe le caractère q en mode
interaction (pour éviter une sortie intempestive), le menu
EXI reste actif, on peut aussi sortir par
!exit
Autres
b=n n corps.
beg=n d´but des mappes après
n images.
c_a=c Sen_Coe_Fft=0,2*c,c,c.
col=c Type_Col=c, Mod_Col=1.
dcp=c plus (c<1) moins (c>1) d´images.
dem démo interactive.
dil=d dilate le fichier sensor.sensor et
sauve le résultata dans le même fichier pour un
play bac.
E"=n n=dur&eacut.e;e de l´
explication (250 par défaut).
fad=n fad out sur n images.
Nb_Fad
ima sauvegarde des images sous sav/I*.jpg
à partir du fichier sensor.
pow=c Sen_Coe_Pow=0,2*c,c,c.
T=n Type_Traj=n Sem_I=1.
aut Type_Traj=AUT Sem_I=1.
dat Type_Traj=DAT Sem_I=1.
ran Type_Traj=RAN Sem_I=1.
rot Type_Traj=ROT Sem_I=1.
ryt Type_Traj=RYT Sem_I=1.
fly Type_Traj=FLY Sem_I=1.
sav sauvegarde les paramètres dans le
fichier sensor lorsque la musique joue.
gri=n grilles de dimension n.
map=n n mappes , ne change plus.
max=n init après n images (0: off par
défaut).
ni0=25 période.
sta SELF START<>a>
num=n numéro de la première image sauvée.
sav=../sqv/I.jpg animation en play back à
partir du fichier sensor.SENSOR construit par
AUDIO.js sauvant les images sous le nom ../sav/I_xxx.jpg.
Mode spécial
spe lit le fichier SPE
spe=SPE1 lit le fichier SPE1
Un tel fichier est de la forme:
im0;I0;
im1;I1;
...
imn;In;
Si la dernière ligne du fichier est per; lecture
périodique.
Les instructions Ii seront executées aux
images imi.
Nb_Spe={imi}0<=i<n
{memoryi=imi;Ii;}0<=i<n
ran Type_Traj=RAN
dat Type_Traj=DAT
ryt Type_Traj=RYT
fly Type_Traj=FLY
rot Type_Traj=ROT
aut Type_Traj=AUT
tes mode test sans sauver les images et avec input
tra=t trajectoire t4
tran=t0,t1 transparence Tr0=t1,Tr1=t1.
tex=Text1 charge le fichier en Text1
Text par défaut).
TEXT.
ted=d d=0 (full screen, by default), d=200 (win_vid)
abscisse des images de Text
tra transp Tr0=.9,Tr1=.4
tra=t0,t1 transp Tr0=t1,Tr1=t1
Programme
Principe
Le réseau Net est complètement
connecté sa matrice des poids synaptiques est
2 * luminance(image) - 1.
Les sommets de la grille Sel sont affectés
de forces calculées selon Num_S:
1: en fonction des paramètres de sortie du
réseau
2: attirés par les sommets de la grille Attach (en
mouvement) par des ressots (spring attach).
L´algorithme d´automapping s´applique
à 3 grilles Map1,Map2,Map3).
Coe_Spe force rota vol(map).
Cette application est écrite en
langage anyflo. Les sources *.func
sont dans le dossier env.
Principaux paramètres
Le fichier PARAM
contient les
paramètres parsp défaut:
Tempo nombre de minutes avant
l´enchainement du programme suivant
(emergent_code.js),
si 0 pas d´enchainement (par défaut).
Ni0,Ni1 bornes de Ni2.
Sen_Coe_Fft coefficient de la fft.
Sen_Env enveloppe.
Sen_D_Min correction de Sen_Min.
Sen_Min seuil inférieur de coe fft.
Sen_Max seuil supérieur de coe fft.
Sen_Coe_Mou coefficient de la souris.
Nb_E durée de E_() (explication.
Sem_E -1 pas d´explication).
Size1,Size2 bornes de la taille des mappes.
Bod_Coe_Hair longueur des cheveux.
Sti_Sel raideur de Sel.
Vis_Sel viscosité de Sel.
Rota rotation des mappes.
Coe_X,Coe_Y déplacement des mappes.
Nb_Fad fad in, titlr, fad out.
Sen_Dil dilatation des aigus.
Coe_ni coefficient de rapidité.
Add_Force_Rota foece rota add.
law loi de mouvement.
Nb_S2 durée de M2()
Sem_E -1 yes, 1 no E_()
Speed_Thorax4=speed rota vol(Thorax4)
Mod_Col 0: Type_Col variable, 1: Type_Traj
constant
Col
Type_Traj RAN random, DAT datas, FLY vole, ROT rotation, RYT rythme.
Sem_I -1: Type_Traj variable, 1: Type_Traj
constant
Autrea paramètres
Variation de Sel
Nb_S nombre de variations
Per=0,1000,c,c
coefficient de durée
(0 pas de variation)
Num_Per={num,per,0}
num=numéro de la variaton
per=durée de la variaton
Dila=correction de la fft (augmente les aigus)
recalculé quand Dila0 change dans [0,25]
Beg=-1, option beg fait Beg=0
variations automatiques au début Beg=0,...,2000 .
Influence de l´environnement sur les corps
Sel_Ver sommets du volume Sel
Nb_Sel_Ver nombre de ces sommets
Sel_Bod numéros des paties du corps
influencées
Coe_Sel_1 coeffifients d´influence pour chaque
partie
Coe_Sel coeffifient d´influence global
Dem Dem=-1, option dem fait Dem=1,
raccourcis clavier D fait Dem=-1.
D12 coefficient de (dist vertex vol(Sel))
Net,Hide,Dim_Motif,Dim_Law
Nxy,Sel,Force,Sti,Vis,Vertex
Nb_Map,Map: mappes
Dem: démo
Ni1,Im
mapping de réseau
Dem démo, augmentation de la
complexité sur 2000 images.
Amp2,R2,Im2 vaiiation S2.
Variations des mappes:
Num_Per={num,per}
Coe_For_Rot force rota map
Vis_For_Rot coe viscosity map
R_M,G_M,B_M color maps
Law1,Law2 law speed rota vol(Belly)
Type_Law Type_Law_s=acc,dec,pend,NIL
Type_Law=pend: loi de mouvement.
Nb_Type_Col nombre de types de couleurs
Type_Col numéro du type
Tr0,Tr1 transparence des peaux fonction de Sen_Nb_Gre dns [Tr1,Tr0].
Speed_Pel vitesse de Pelvis, influence spine et
fem_lib dans traj_roty_rota(pel,spine,head,ni,sp,ry)
du fichier traj_bod.func par
sp=Sen_Dif_Spe*Balance[2]*Speed_Pel{i};.
Balance rétablissement de l'équilibre
par rotation du torse.
Center centrage.
Coe coefficient de mouvement.
Coe_Speed_Vol accentue les force rota vol(f)
en fonction de abs(Sen_Dif_Spe) et dans le sens de
speed rota vol(f) (fonction force_rota_add()
du fichier traj_bod.unc).
Speed_Vol={f,s,0}, s=speed rota vol(f) avec
f=femur_g,tibia_g,humerus_g,radius_g,femur_d,tibia_d,humerus_d,radius_d,thorax4.
Cor_Bal correction du déséquilibre =
point d´ancrage positionné lors d´un nouveau
contact avec le sol.
contre-mouvement des bras
/* Arms */ dans le fichier traj_bod.func (fonction
traj_bod()).
Lock=f,v si L est actif les corps > 1 sont
mus par le corps 1.
Search
dans net.func:
Coe_Rotx coefficient d'animation du torse
func set_Num_Per Num_Per={num,per}
func func_traj_map animation des mappes.
func func_SEL_STA force add abs vol(pel):
rebond des corps.
func traj_sep spring rota vol(Sel):
dynamique de Sel.
=collision collision avec le sol.
dans la fonction traj_sel()
spring vol(Sel)=sv,v; gestion des
mouvements de Sel.
dans
traj_bod.func:
w=collision vol(pel) gestion des
collisions.
Paramètres
Enfoncer la touche p pour faire apparaitre les
paramètres ou cliquer sur PAR.
Réglage de l'acute;audio
Enfoncer la touche . (point) pour faire apparaitre le mini
menu au bas d l´écran, modifier fft, ou
enfoncer la touche , (virgule) pour diminuer, enfoncer la
touche ; (point virgule) pour augmenterer.
On peut aussi changer Sen_Coe_Fft dans le fixhier
PARAM.
Taille des mappes
Cliquer sur IMAGE et modifier
size1 et size2 (minimum et maximum des tailles),
lum luminance.
Taille de Sel
Cliquer sur COE et modifier
coe et visc (raideur et viscosité)de Sel.
Corps
Modifier
Force et visc (force et viscosité)
des mouvements.
Cliquer sur BODY et modifier les é,chelles:
nb nombre de corps
Up,Down rsbmnd
coe bod torsion du thorax
t0,t1,t transparence
rotxroty
Trajectoires
Type_Traj type
Thr_Tral seuil de choix FLY et ROT
Period_Traj période de changement.
Coe_Traj barycentre de traj force rota (1) et
traj rotz (0).
Dysfonctionnements
Général
Enfoncer la touche J réinitialise tous leparamètres.
Pour réinitialiser le dernier corps:
0 pour le supprimer
b pour le créer.
Disparition de la souris
Snfoncer la touche _video.exeD.
Autres
Anyflo se relance automatiquement en cas de bug, le tuer puis
cliquer sur anyfloçvideo.exc;, taper par exemple
bug1() et analyser les messages dacute;erreurs.