Certains liens ne seront pas actifs s´il n´y a pas de
connexion internet.
ATTENTION: cette application ne tourne que sur la version d´anyflo
16.2 de juillet 2014.
Une analyse dynamique de la
fft du signal audio (ou sa dérivée) en temps réel fournit, à
chaque image, une liste
M1 de paramètres qui est passée en entrée
(motif) d´un
réseau neuronal lequel fournit, en sortie, une autre liste
L1 (loi) de
paramètres qui sont interprétés en termes de dynamique sur des volumes
et des textures.
Une liste
M2 des modules maximums de la fft est passée en entrée (motif)
d´un deuxième réseau neuronal lequel fournit, en sortie, une autre liste
L1
(loi) de paramètres qui sont interprétés en termes de succession de séquences.
En fait c´est l´
enveloppe de la fft qui est traitée.
Afin d´assurer un traitement en temps réel un ensemble de dossiers
d´images, lues au lancement du programme, sont interpolées afin de fournir
des transitions continues.
Les réseaux sont dynamiquement entrainés par l´algorithme de la
rétropropagation de l´erreur, ses entrées étant périodiquement
misea à jour par le signal audio. Il s´en suit une animation se calant en permanence
sur la musique. Différents
effets peuvent être programmés.
Remarque:
Le message "Must press w key to start audio" apparait.
HEL
Aide.
EXP
HEL
Aide.
AUD
HEL
RING
AMP
FFT
STOP
HEL
Aide.
RING
Changer
freq (frequence) and
dur (durée).
AMP
Changer
audio et
amplitude.
FFT
Changer
audio et
amplitude.
STOP
Stoppe le son.
NET
HEL
BUILD
LEARN
MATRIX
HEL
Aide.
BUILD
Construction d´un réseau neuronal.
Changer
couples=nombre de couples d´apprentissage.
Change
hide=nombre de couches cacgées.
LEARN
Apprentissage du réseau, produire un son.
MATRIX
Affiche la matrice des poids synaptiques.
INPUT
HEL
Aide.
AUD
Audio.
CAM
Caméra, la fenêtre est décalée vers la droite
pour laisser la place à la fenêtre de WebCam.exe
qu´il aura fallu lancer auparavent, ainis qu´une webcam dont
l´image, convenablement redimensionnée, aura été
amenée sur la première., sinon le programme se bloque...
Modifier les échelles:
liminance rgb: luminance (1D) ou RGB (3D).
dim cam: dimension de l´image caméra affichée.
secx secy: dimension de l´image captée également dimension
des motifs et des lois du réseau qu´il faudra reconstruire.
speed: vitesse de modification des motifs.
Il suffit ensuite de cliquer sur AUTO pour lancer le processus.
OUTPUT
HEL
Aide.
INI: ini image
IMA
HEL
READ
DIRECTORY
BUILD
PIXEL
Ces différents modes peuvent être combinés.
HEL
Aide.
READ
lit des images: cliquer sur sur un nom de directory,
puis un nom.bmp.
DIRECTORY
lit des dossiers d´images: cliquer sur des noms de dossiers.
BUILD
construit des images aléatoires, cliquer sur nb = nombre
d´images et complex = complexité
PIXEL
construit des images de courbes, cliquer sur nb = complexité
CAM
Capture une image web cam et l´affiche en texture transparente (Il faut avoir
lancé webcam.js, puis avoir lancé une web cam et avoir
amené son image (convenablement redimensionnée) sur la fenêtre
précédente, puis cliquer sur click here.
CAM2
Comme CAM2, mais l´image n´est capturéé
que lorsque la transparence de la dernière couche est nulle.
NET1
Réseau neuronal transformant la fft du signal audio.
Modifier couples (nombre de couplde d´apprentissage); et
hide (nombre de couches cachées).
HEL
Aide.
INI
Supprime le réseau.
LEARN
Lance l´apprentissage.
On peut
voir
les neurones de la couche d´entré e (en vert), ceux de la couche
de sortie (en rouge) ainsi que ceux des couches cachées s´activer.
À droite s´affiche la courbe d´erreur (en blanc).
MATRIX
Affiche la matrice des poids synaptiques.
NET2
Réseau neuronal transformant la mémoire Memroy en valeurs
passées à interaction image(1,Nb_Seq)vol law(m); pour
déterminer la séquence suivante. Modifier:
dim motif=taille des motifs (aussi dimension de la mémoire ).
couples (nombre de couplde d´apprentissage); et
hide (nombre de couches cachées).
HEL
Aide.
INI
Supprime le réseau.
LEARN
Lance l´apprentissage.
On peut
voir
les neurones de la couche d´entré e (en vert), ceux de la couche
de sortie (en rouge) ainsi que ceux des couches cachées s´activer.
À droite s´affiche la courbe d´erreur (en blanc).
MATRIX
Affiche la matrice des poids synaptiques.
AUTO
Lance le processus.
Cliquer sur reset change la période de rafraichissement du réseau.
Cliquer sur ni change le nombre des images interpolées, cette opération
peut prendre un certain temps.
HEL
Aide.
SELF
Active l´
automapping (raccourcis clavier s).
SHOW
Affiche le signal audio, les motifs et les lois des deux réseaux
(même si : est actif).
PREC
image precision réalise un seuillage de l´image.
PRO
séquences programmables déterminées par /*??? A FAIRE ???*/
LIGHT
Calcule la couleur de la lumière en fonction de la moyenne de la fft
(raccourcis clavier l).
COL
Calcule les couleurs des volumes en fonction de la moyenne de la fft, modifier
les échelles coe COL et pow (une petite valeur de pow augmente les
contrastes.
VIEW
point de visée variable (raccourcis clavier v).
VOL
trajectoires sur les volumes (raccourcis clavier V).
SIN
Variation sinusoidale de l´incrément de la texture.
net
transforme (ou non) le signal audio via le réseau neuronal Net1
(raccourcis clavier n).
DEB
Mode dubug: imprime certeains paramètres au lancement et en cours d´exécution
(raccourcis clavier d).
DER
fait Der[2]=1 (vitesse capteur) (raccourcis clavier D).
SEQ
Affiche les séquences:
nb,im1,im2,i1,i2
nb = nombre d´images clées de la séquence.
im1 = première image générée.
im2 = dernière image générée.
i1 = première image clée.
i2 = dernière image clée.
CONT
Extraction de contour.
MOVE
Les ponts fixes des grilles (leurs contours) sont déplacés selon la fft,
modifier l´échelle coe MOVE (raccourcis clavier M).
BACK
La couleur du fond varie (raccourcis clavier b).
NOISE
Les forces appliquées aux dommets sont bruitées de coe NOISE,
accessible sur SCALES VOL (raccourcis clavier Z).
NEXT
séquence suivante.
ALEA
séquences aléatoires.
LAW
séquences déterminées par le maximum de l´évaluation
de la mémoire Memory par le réseau Net2
(raccourcis clavier L).
AMP
séquences déterminées par Module*max(number image).
(raccourcis clavier a).
CUR
séquences déterminées par law(Module,Curve).
(raccourcis clavier k).
Pour changer la courbe Curve cliquer sur SCALES -> PARAM, modifier
np, puis la courbe.
TRA
Les images sont mélangées par image(i1,i2)center(x,y)radius(rx,ry)transp(t1,t2)normal
TAB
la look up table est modifiée en fonction des valeurs du module stockées
dans la pile FILO Memory.
WAIT
Audio OFF/ON (ON par défaut, il faut enfoncer la touche w
pour activer l´audio.
SCALES
HEL
aide
OUTPUT
dim: taille des images.
dim: taille des images.
r,g,b: coefficients des seuils de la couleur si PREC est validé.
AUD
audio: nombre d´échantillons = taille des
motifs d´entré
= 2^audio. Il est ensuite nécessaire de cliquer sur AUTO.
envelope: coefficient de l´enveloppe.
above: si validé audio var sort above (signal réduit
à sa composante maximum).
derive: capture = vitesse.
min: minimum du signal audio, permet d´ignorer des valeurs trop faibles.
max: maximum du signal audio, permet d´ignorer des valeurs trop grandes.
amp: coefficient multiplicateur du signal.
exp,adjust,rand:
ajustement du signal.
per: période de rafraichissement des motifs;
speed: vitesse de variation des textures.
coe audio=c:
si c >0: fait coe audio=c.
si <0: choisir m1 et m2 faisant coe audio=m1,m2
(coefficient automatique).
CAM
luminance rgb: image luminance ou RVG.
dim cam: résolution de l´image (puissance de 2).
secx secy: résolution de la caméra.
VOL
texture: nombre de textures.
Si CONT est validé:
pricision et smooth
raideur,coe raideur et coefficient de viscosité des ressorts.
max incrément maximum des mappes (évite des sautes
d´images).
viscosite: viscosité
hide: nombre de couches cachées.
ni: détermine la taille de l´interpolation des images.
sin1,sin2: si SIN a été validé
modifie les variations sonusoidales de l´incrément de la texture.
PARAM
Si l´option TAB est active, affiche la courbe de la look up table.
Si l´option raw est active, affiche le nom du fichier image
actuellement traité et léechelle coe de période de ce
traitement. Les fichiers doivent être en format raw.
Si l´option CUR est active, affiche np et la courbe
Curve que l´on peut modifier.
RESET
Restitue les images d´origine (après, par exemple, SELF ou
PREC).
ILLUM
yes/no illum.
EXT
yes/no illum, modifier l´échelle ext.
INI
Restitue les paramètres d´origine.
EXI
Quitte le programme.
: (deux points) cache les menus.
A: enchaînement aléatoire des images (sinon linéaire) pour
m mini menu apparaissant en haut et à gauche avec les options:
A ALEA
b BACK
c COL
C CONT
D DER
d DEB
h help mini menu (raccoyrcis clavier).
i initialisatin
l LIGHT
L LAW
m mini menu
M MOVE
n NET
N NEXT
p PREC
P PRO
r RESET
s SELF
S SHOW
t TRA
T TAB
v VIEW
V VOL
Z NOISE
: cache les menus
+ incrémente amp
- démente amp
q EXI
Direct
Cliquer sur neuro_VJ_raw.js lançant
neuro_VJ.func avec l´option raw
qui lit dynamiquement les images au format raw du directory RAW.
Cliquer sur neuro_VJ_bmp.js lançant
neuro_VJ.func avec l´option
dir=ima/BMP qui lit les images au format bmpdu directory
BMP.
Cliquer sur webcam.js lançant un driver
de la mémoire partagée.
Puis lancer une webcam, amener l´image redimentionnée sur la
fenêtre sur celle du driver (coin bas gauche).
Puis cliquer sur neuro_VJ_cam.js lançant
neuro_VJ.func avec les options:
cam lisant l´image capturée.
et dir=ima/BMP qui lit les images au format bmp
du directory BMP.
Jouer de la musique et agir devant la caméra.
Manuel
Lancer neuro_VJ.js sans option.
Cliquer sur INPUT puis sur AUD, ce qui fait de
l´audio le capteur d´entrée.
Cliquer sur OUTPUT
puis sur IMA
puis sur DIRECTORY
et sélectionner plusieurs dossiers.
Cliquer sur AUTO, ce qui lance le processus: toutes les images des
dossiers sélectionnés sont chargées et interpollées, elles seront
utilisées comme textures sur 3 grilles affichées en transparences interpollées.
Enfoncer la touche : (deux points) ce qui cache les menus.
Enfoncer la touche m ce qui donne le mini menu.
Enfoncer la touche h ce qui donne le help du mini menu.
Enfoncer des touches documentées pour produire différents effets.
Enfoncer la touche : ce qui donne les menus.
Cliquer sur SCALES, puis, pour modifier des paramètres, sur:
OUTPUT.
AUD.
VOL.
NET1.
NET2.
Fonctionnement automatique
|
Active NET1, NETWORK->LEARN,
et AUTO.
Remarque: si INPUT_AUD a été
validé, il faut avoir lu des images.
The function
La fonction neuro_VJ.func est dans le
dossier ima.
Les séquences
Si net n´est pas validé le signal est directement
interprété (le message DIRECT est affiché dessous).
Sinon le signal est passé en entrée du réseau neuronal
Net1qui donne, en sortie la valeur à interpréter. Il faut
avoir lu des images) ou avoir précisé une
option dir.
L´option dir=dir_1,dir_2,...,dir_n produit une succession de
séquences selon divers critèes:
aléatoire (raccourcis clavier A).
next (raccourcis clavier N).
law (raccourcis clavier L).
amplitude (raccourcis clavier a).
curve (raccourcis clavier k).
On peut construire autant de tels dossiers que l´on veut. Mais, comme
les images sont chargées en mémoire, le nombre d´images
qu´ils contiennent est limité selon la taille de la mémoire.
Dans ce cas l´option raw permet de lire dynamiquement
autant d´images que l´on veut. Pour celà il sera nécessaire
de lancer bmp_raw.js.
les volumes
Nb_Vol[2] grilles sont construites avec:
secx = secy = Nxy = dim(Capture)
memory(1) = numéros des points non soumis à la dynamique
(mais modifiés directement par la fft si MOVE est actif).
memory(2) = coordonnées de ces points.
ver=memory(1)vol(num);n=dim(ver);p=memory(2)vol(num);
(dans la fonction func_AUTO)
memory("a")vol(num)=(average(Capture))^e;
aud=n: fait Nb_AUDIO[2]=n (9 par défaut).
aut: active le fonctionnement automatique.
cam: active la caméra.
cont=p: contour de précision p (0.025 par défaut).
cur=0,0,0, x1,y1,0, x2,y2,0, ..., 1,1,0: Curve.
der: fait Derive[2]=1 (vitesse capteur).
dim=d: taille des images=2^d (7 par défaut).
dir=ima/BMP: lit les images du dossier BMP.
dir0=dos: lit les dossierd du dossier dos.
env=n: fait Envelope[2]=n (6 par défaut).
1: donne un exemple d´une option programmable, voir case 1:
de la fonction option(w)lisant deux dossiers BMP1,BMP2. Le fichier
neuro_VJ_1.js utilise une telle option.
raw: seules les images actives sont chargées, ce qui autorise
des interpollations entre un nombre illimité d´images qui peuvent être de
grandes dimensions (cependant, dans ce cas, l´option TAB ne fonctionne
plus en temps réel).
L´interpolation des textures se fait par transparence avec les propriétés:
texture vol(1)=t1,t2,... et
transp texture vol(1)=tr1,tr2,...).
Le tableau Transp = {(transp,signe,0)i de n vecteurs 3D permet de
gérer l´enchaînement des séquences.
texture=nb: nombre de textures.
Exemple:
quot;dir=ima/BMP1,ima/BMP2;
lit les images des dossiers ima/CAH_1 et ima/SUZ_1
ni=n: nombre d´images intercallées; entre 2 images consécutives
(12 par défaut).
:: cache les menus.
a: enchaînement aléatoire des images (sinon linéaire).
b: active la couleur du fond.
c: active les couleurs.
l: active la lumière.
nb=n: active n volumes.
p: active limage precision.
q: inhibe la touche q (évite une sortie intespetive...).
s: active l´automapping.
t: active la transparence.
T: active la look up table.
v: active la fonction VIEW.
V: active la fonction VOL.
Z: active la fonction NOISE avec le coefficient c.
w: déactive la fonction WAIT.
neuro_VJ.js: lancement sans option.
neuro_VJ_1.js: option "1"
(un dossier, dim=7)
neuro_VJ_2.js: option "2"
(deux dossiers, dim=7)
neuro_VJ_3.js: option "3""
(trois dossiers, dim=7)
neuro_VJ_4.js: option "3""
(quatre dossiers, dim=6)
neuro_VJ_16.js: option "3""
(seize dossiers, dim=7)
neuro_VJ_cam.js: option cam
neuro_VJ_cam2.js: option cam2
neuro_VJ_raw.js: option raw
Remarque:
Si au moins une option est présente (lancement automatique) l´option
EXI est courcicuitée (pour ne pas sortir intempestivement du
programme si la touche q esy enfoncée par erreur), pour sortir il faut faire:
: pour retrouver les menus.
et cliquer sur EXI.
Le fichier jpg_bmp.js lance
le fichier jpg_bmp.func permettant de convertir des images
depuis ima/JPG/*.jpg de tailles quelconques dans ima/BMP/*.bmp de taille 256.
Le fichier bmp_raw.js lance
le fichier bmp_raw.func permettant de convertir des images
depuis ima/BMP/*.bmp de taille 256 dans ima/RAW/*.raw.