Sunteți pe pagina 1din 28

Cuprins

Introducere
Capitolul 1 Teoria fractalilor
1.1 Scurt istoric
1.2 Definitie
1.3 Proprietati ale fractalilor
Capitolul 2 Recunoasterea formelor si aplicatii
2.1Triunghiul lui Sierpinski
2.2 Covorul lui Sierpinski
2.3 Curba lui Koch
2.4Steaua lui Koch
2.5 Praful lui Cantor
3.Dimensiunea fractala
3.1 Dimensiunea auto-similaritatii
3.2Dimensiunea calcularii casutelor
Capitolul 3 Algoritmi inspirati din natura
1.Sistem-L
1.1 Figuri geometrice
1.2 Paranteze in Sisteme –L si arhitecturi de plante
1.3 Sisteme-L si algoritmi genetici
2 Sisteme IFS
2.1 Bazele unui IFS
2.2 Generarea unei imagini cu IFS
2.3 Haos si Intamplare in generarea IFS
2.4 Jocul Haosului
3. Generarea fractalilor prin numere complexe –consideratii matematice
3.1 Setul Mandelbrot
3.2 Setul Julia
Capitolul 4 Metode de generare a curbelor si suprafetelor
Capitolul 5 Compresia fractala
1. Istoric
2. IFS
2.1Imagini binare
3. Extinderi in tonuri de gri
4. Codificare
5. Caracteristici
6. Rezolutia independenta si scalarea fractala
7. Interpolarea fractala
Capitolul 6 Inteligenta artificiala in proiectarea sistemelor de e-learning

Concluzii
Bibliografie

1
Introducere
Ce este un fractal?

În termeni generalizati, un fractal demostreaza o limită. Fractali modeleaza


complexe procese fizice şi sisteme dinamice. Principiul de bază a fractalilor este că un
proces simplu care trece prin mai multe iteratii infinit devine un proces foarte complex.

Fractali încerca sa modeleze procesul complex de căutare pentru procesul simplu


de dedesubt.Cei mai multi fractali funcţionează pe principiul unei bucle de feedback. O
operaţie simplă se efectuează pe o bucată de date şi apoi reintrodus din nou. Acest proces
se repetă infinit de multe ori. Limita a procesului de producere este fractal.Aproape toati
fractalii sunt cel puţin parţial auto-similari. Acest lucru înseamnă că o parte din fractal
este identica cu sine, cu excepţia întregului fractal insa in proportie mai mica.Fractalii
pot arata foarte complicat. Cu toate acestea, de obicei, acestea sunt procese foarte simple
care produc rezultate complicat. Şi această proprietate provine din teoria Haosului. Daca
ceva are rezultate complicate, nu înseamnă neaparat că a avut o intrare
complicata. Haosul poate s-a strecurat (în ceva la fel de simplu ca eroare de rotunjire
pentru un calcul), producand rezultate complicat.Dimensiunile fractale sunt folosite
pentru a măsura complexitatea obiectelor. Avem acum modalităţi de măsurarea lucrurilor
care au fost in mod traditional lipsit de sens sau imposibil de cuantificat.Cercetarea
fractala este un domeniu destul de nou de interes si prin intermediul calculatoarelor
putem genera acum şi decoda fractali cu reprezentări grafice. Unul dintre domeniile
fierbinţi de astăzi de cercetare pare a fi Fractalii de compresie a imaginii. Multe site-uri
web se dedica discuţiilor despre aceasta ramura..Principalul dezavantaj in compresia
imaginii fractale si in cazul fractlilor in general este puterea de calcul necesara pentru
a inregistra si decoda.

Geometria fractala a fost dezvoltata cu precadere dupa anii 1980 ca urmare a


lucrarilor lui B.Mandelbrot. Deschiderea principala a fost realizata imediat dupa aceasta
când s-a descoperit ca o extrem de larga gama de fenomene naturale începând cu cele
fizice, chimice, biologice, geologice, astronomice etc si terminând cu cele economice,
sociale, culturale, psihologice si chiar antropologice pot fi descrise si întelese în cadrul
acestei noi geometrii.

În general fractalii pot fi regulati sau aleatori (întâmplatori). Fractalii regulati se


formeaza prin unirea la un loc (concatenarea) a unor forme similare dupa un algoritm dat.
Cartea lui Mandelbrot, The Fractal Geometry of Nature, abunda în multe constructii de
fractali regulati.Analiza acestor forme arata doua lucruri importante: curbele si

2
suprafetele fractale au lungime, respectiv arie, infinite, dar închid o arie finita, respectiv
un volum finit. Dependenta de scala, respectiv autosimilaritatea formelor fractale este
descrisa printr-o marime denumita dimensiune fractala, D. Dimensiunea fractala este o
caracteristica globala (adica nu se refera la un singur punct) a suprafetei. Totusi ea se
bazeaza si reflecta proprietatile locale ale suprafetei. D este o masura a iregularitatii prin
comparatie cu o forma fixata, dar rezultatul nu depinde de forma aleasa.

Fara a intra în detalii vom trece în revista unele aplicatii ale analizei si ale structurilor
fractale.

Capitolul 1
Teoria fractalilor si aplicatii in informatica

1.1 Scurt Istoric

Matematica tipica fractala isi are inceputurile in secolul 17 in teoriile filosofice ale lui
Gottfried Leibniz ce trateaza autosimilaritatea ca si recursiva insa doar in 1872 a aparut
primul fractal demonstrat de catre Karl Weistrass ca si functie continua dar
nediferentiabila.
In anul 1875 odata cu apartitia unei lucrari de renume a matematicianului Benoit
Mandelbrot numita “O teorie a seriilor fractale” care se extinde mai apoi in cartea de
manifest “Geometria fractala a naturii” apar teorii sustinute despre fractali.
In anul 1904 Helge von Koch da o definitie geometrica a unei fuctii similare si da
nastere asa numitului “fulg al lui Koch”.In 1915 si 1916 sant creati “Triunghiul lui
Sierpinski” si “Covorul lui Sierpinski” de catre Waclaw Sierpinski.Alaturi de acesti
inventatori apare si Georg Cantor care introduce notiunea de Multime Cantor ca si
submultimi ale axei reale.
La inceputul secolului 20 sant ilustrate functiile iterate in planul complex de catre
cercetatori ce renume ca Gaston Julia si mai apoi in 1960 Benoit Mandelbrot care
introduce termenul de Dimensiune Hausdorff-Besicovitch pentru un fractal si studiaza
pentru acestia autosimilaritatea satatica si dimensiunea fractala.
Cuvantul “fractal”provine din limba latina “fractus”
care inseamna spart sau fracturat a fost pentru prima data utilizat de catre Mandelbrot \

1.2 Definitie

3
Cuvantul “fractal”provine din limba latina “fractus” care inseamna spart sau fracturat a
fost pentru prima data utilizat de catre Mandelbrot ca si Curbă sau formă foarte
neregulată pentru care orice parte aleasă în mod convenabil devine similară ca formă cu o
alta mai mare sau mai mică în momentul în care cea dintâi este mărită, respectiv redusă la
dimensiunea celei de-a doua. (cf. engl. fractal, fr. fractale, din lat. fractus = spart,
neregulat (part. al lui frangere = a sparge)

1.3 Proprietati le fractalilor

Fractalul, ca obiect geometric, are în general următoarele caracteristici:

 Are o structură fină la scări arbitrar de mici.


 Este prea neregulat pentru a fi descris în limbaj geometric euclidian tradiţional.
 Este autosimilar (măcar aproximativ sau stochastic).
 Are dimensiunea Hausdorff mai mare decât dimensiunea topologică (deşi această
cerinţă nu este îndeplinită de curbele Hilbert).
 Are o definiţie simplă şi recursivă.

Deoarece par identici la orice nivel de magnificare, fractalii sunt de obicei consideraţi ca
fiind infinit complecşi (în termeni informali). Printre obiectele naturale care aproximează
fractalii până la un anumit nivel se numără norii, lanţurile montane, arcele de fulger,
liniile de coastă şi fulgii de zăpadă. Totuşi, nu toate obiectele autosimilare sunt fractali—
de exemplu, linia reală (o linie dreaptă Euclidiană) este autosimilară, dar nu îndeplineşte
celelalte caracteristici.
Capitolul 2
Recunoasterea formelor

1 Descrierea fractalilor

1.1Triunghiul lui Sierpinski

Probabil cel mai cunoscut fractal al tuturor timpurilor este aºa-numitul triunghi al lui
Sierpinski.
Modul de realizare al acestui fractal este foarte simplu:
-la început se deseneazã un triunghi pe care îl vom diviza în patru pãrþi egale, iar trei
dintre ele (cele din exterior) vor fi si ele divizate (folosind acelasi procedeu), procesul
continuând la infinit pentru toate triunghiurile formate.
.O altã modalitate de realizare a acestui fractal este urmãtoarea: se porneste de la un
triunghi plin în care se "decupeazã" triunghiuri egale cu un sfert din triunghiul initial.
Dacã repetãm la infinit acest proces, atunci vom obtine un fractal identic cu triunghiul lui

4
Sierpinski (uneori,când este realizat prin aceastã tehnicã el se mai numeste garnitura lui
Sierpinski.
Problema a apãrut atunci când Sierpinski a încercat sã determine aria pe care o ocupã
acest fractal. Pe de o parte am putea crede cã aria este zero, deoarece un numãr infinit de
gãuri acoperã în cele din urmã orice suprafaþã plinã din triunghi. Pe de altã parte însã, la
un moment dat, îndepãrtãm doar un sfert din aria rãmasã,lãsând mare parte încã acoperitã
si, deci, oricât de mult am repeta aceastã operaþiune, întotdeauna va rãmâne mai mult
decât s-a luat. Deci aria nu ajunge niciodatã zero.

Implementarea in Matlab

TRIUNGHIUL LUI SIERPINSKI

function sierpinski(size)
if nargin ~= 1 %
size = 9;
end
clf;
dim = 2^size;
axis square;
hold on;

for y = 1:dim
for x = 1:y
if bitand((x-1),(y-x)) == 0
plot(x-.5*x,dim-y);
end
end
end

1.2Covorul lui Sierpinski

O altã formã imaginatã de acelasi matematician este covorul lui Sierpinski. Forma
geometricã de la care se porneste este un segment de dreaptã care este apoi înlocuit
cu alte opt segmente de dreaptã . Fiecare segment este înlocuit cu forma întreagã si
procesul continuã la infinit. Asemãnându-se foarte tarecu triunghiul lui Sierpinski ºi
putând fi obþinut prin metoda prezentatã mai sus, dar si prin decuparea de gãuri
într-un pãtrat plin, s-ar putea ivi si aici aceea si controversã legatã de aria formei.

Implementarea in Matlab

function carpet(i);

% CARPET(N) deseneaza cele n %iteratii ale covorului lui sierpinski

5
% CARPET uses n = 5.

%default setting
switch nargin
case 0
i=5;
end

tic;
M = 0;
% creaza o matrice M formata din zero si unu
% indica punctele covorului
for k=1:i
M = [M, M, M;
M, ones(3^(k-1)), M;
M, M, M];
end

% plot settings
imagesc(M);
colormap(gray);

axis equal;
axis off;
toc

1.3Curba lui Koch

Curba lui Koch este un alt exemplu de fractal clasic. Algoritmul este relativ
simplu:
• un segment de dreapta cu lungime finita, se imparte in trei segmente egale
• cel din mijloc va constitui baza unui triunghi echilateral, dupa care se va elimina
• se repeta procesul pentru segmentele nou create
Se poate observa cu usurinta ca lungimea curbei lui Koch este infinita,deoarece la fiecare
iteratie, pasii de mai sus se aplica fiecarui segment, numarul acestora multiplicandu-se de
patru ori, lungimea fiecaruia fiind 1/3 din lungimea segmentelor de la pasul anterior.
Astfel , lungimea creste cu 1/3,iar la a n-a iteratie,aceasta va fi (4/3)^n,deci tinzand spre
infinit.
Dimensiunea fractala a curbei Koch este egala cu lg4/lg3 adica aproximativ 1.26. Oricat
de mult am micsora scara, oricat de mult am inainta cu privirea in interiorul figurii,
imaginea pe care o vom observa va fi identica cu cea de la care am pornit. Acesta este un

6
exemplu de autosimilaritate perfecta, ce se gaseste doar la fractalii matematici, natura
folosindu-se de o autosimilaritate relativa, sau statistica.

1.4 Steaua lui Koch

Steaua lui Koch este un alt exemplu de fractal, in care putem observa un paradox
interesant. Algoritmul pentru realizarea acestui fractal este asemanator celui de mai
inainte, cu exceptia ca se porneste nu de la un segment de dreapta, ci de la un triunghi
echilateral, caruia I se aplica algoritmul folosit pentru construirea curbei lui Koch. Ce
vom obtine? Dupa prima iteratie se va obtine o figura asemanatoare stelei lui David, cu
lungimea mai mare decat a primei figuri. Continuand iteratiile la nesfarsit, vom ajunge in
situatia in care lungimea stelei lui Koch va fi infinita, insa va delimita o arie finita,egala
cu 8/3 din aria triunghiului initial.

Implementare in Matlab

TRIUNGHIUL LUI SIERPINSKI

function sierpinski(size)
if nargin ~= 1 %
size = 9;
end
clf;
dim = 2^size;
axis square;
hold on;

for y = 1:dim
for x = 1:y
if bitand((x-1),(y-x)) == 0
plot(x-.5*x,dim-y);
end
end
end

1.5 Praful lui Cantor

Mulţimea lui Cantor (sau discontinuul lui Cantor sau praful lui Cantor) este un
concept în cadrul topologiei atribuit matematicianului Georg Cantor.
O alta varianta la fel de cunoscuta in lumea fractalilor este praful lui Cantor. Ideea de
generare este aceeasi:
- Se porneste de la un initiator ce este si in acest caz un segment de dreapta.
- Legea de generare presupune doar indepartarea treimii din mijloc a segmentului.
In acest mod, prin repetarea la nesfarsit a legii, se obtine o structura alcatuita

7
dintr-un set de puncte, structura caracterizata printr-o dimensiune data de
relatia:
Df = Ln(2) / Ln(3) = 0.63092.....
Din nou o structura particulara, cu dimensiune intermediara cazurilor cunoscute de
geometria euclidiana.

Nici de dimensiune zero, specifica punctului, dar nici de dimensiune 1, specifica liniei, ci
0.63092... Un mic "monstru" matematic, scufundat intr-o linie, dar care are identitate
doar in spatiul 0.63092...
Oare cate fenomene fizice ce se desfasoara in jurul nostru ar putea fi descrise,
caracterizate prin acest model al prafului lui Cantor.. Aşadar, mulţimea lui Cantor are
următoarele proprietăţi:

 Nu are nici un punct de acumulare, deci nu este densă în niciun punct.

 Are măsura Lebesgue nulă.

 Dimensiunea Hausdorff a mulţimii nu este număr întreg, deci mulţimea lui Cantor
este un fractal.

 Este echipotentă cu mulţimea numerelor reale .

2. Dimensinea fractalã
Este arhicunoscut faptul cã orice formã are o anumitã dimensiune. Astfel:
· punctul are dimensiunea 0;
· dreapta are dimensiunea 1;
· planele si suprafetelele au dimensiunea 2;
· spatiul are dimensiunea 3.
Aceste dimensiuni au fost mai apoi extinse, ajun-
gându-se la asa-numitele spatii n-dimensionale. În aceste spatii, obiectele vor avea n-
dimensiuni..
Noile descoperiri din matematicã, realizate la începutul secolului al XX-lea, au dus
inevitabil la necesitatea unui mod cu totul nou de mãsurare a spaþiului si a dimen-
siunii. Rãspunsul a fost dat de cãtre matematicienii Felix
Haussdorff si Abram S. Besicovitch care au descoperit (în sensul strict al cuvântului)
dimensiuni noi, dar au si redefinit cu adevãrat dimensiunea în sine.
În urma studierii si dezvoltãrii lucrãrilor lui Haussdorff, Besicovitch a afirmat cã
formele pot avea dimensiuni fractionare. Astfel, curbe cum ar fi cele ale lui Sierpinski sau
Koch, ar cãdea între dimensiunile normale si astfel s-ar putea explica comportarea lor
ciudatã. Dimensiunea Haussdorff-Besicovitch a fost calculatã pe baza masurãtorilor de la

8
aproximãrile simple ale unei curbe. Mai exact ea este definitã ca fiind raportul dintre
logaritmul numãrului de copii si logaritmul mãrimii "semintei" co-
respunzãtoare fiecãrei copii.
De exemplu, pentru linia de coastã Koch triunghiularã, vom avea log 4 / log 3
~1.2618 deoarece sunt patru copii ºi fiecare reprezintã o treime din
mãrimea seminþei. Ideea dimensiunilor fracþionare s-a dovedit pânã la urmã mult mai
puternicã decât si-au imaginat creatorii ei, deoarece natura abundã de forme auto-reflec-
tive (cum ar fi liniile de coastã) putând astfel caracteriza dupã acest criteriu o mare parte
din mediul înconjurãtor. Mai târziu, Benoit Mandelbrot a dat dimensiunii Haus-
sdorff-Besicovitch numele de dimensiune fractalã. Aceastã
dimensiune fractalã a avut o deosebitã valoare pentru
matematicieni, acestia fiind capabili acum sã mãsoare un adevãrat univers de forme care
înainte nu putea fi mãsurat.
Dimensiunea fractala permite masurarea gradului de complexitate prin evaluarea
rapiditatii cresterii sau descresterii masuratorilor cu cat scara de evaluare devine mai
mica sau mare.
Exista multe tipuri de dimensiuni dintre care amintim dimensiunea
topologica,dimensiunea Hausdorff si dimensiunea euclidiana.
Vom discuta despre doua tipuri de dimensiuni:dimensiunea auto-similaritatii si
dimensiunea numararii casutelor.
Dar inainte de a explica algoritmii de masurare a dimensiunii trebuie sa explicam cum
lucreaza o lege de putere.In mod esential datele se comporta cu o lege de putere can sent
definite de urmatoarea ecuatie:
y = c * x^ d
Unde c este constant.Apoi determinam daca se incadreaza regulii prin reprezentarea
grafica a lui log(y) versus log(x).Daca graficul este o linie dreapta atunci va fi o lege de
putere cu gradient d.

2.1 Dimensiunea auto-similaritatii

Pentru a masaura auto similaritatea imaginea trebuie sa fie similara cu ea insasi.Atunci


legea de putere este data de:
a=1/(s^D)
unde:
a=numarul de parti
s=factorul de reducere
D=masura dimensiunii auto similaritatii

De exemplu:
1 Daca o linie este rupta in 3 bucati fiecare va fi o treime din lungimea celei
originale.Astfel a=3,s=1/3,D=1;
2 daca un patrat este rupt in patru parti ,fiecare parte va fi jumatate din lungimea partii
originale. Astfel a=4,s=1/2,D=2.
3 Pentru Triunghiul lui Sierpinski,triunghiul original este taiat in doua si vor rezulta trei
parti.Astfel a=3.s=1/2,D=1,5850.

9
2.2 Dimensiunea calcularii casutelor

Pentru a acalcula dimensiunea calcularii casutelor trebuie sa plsam imaginea pe un


grid.Axa x a gridului este s=1(grosimea suprafetei)
De exemplu daca gridul este inlt de 240 blocuri pe 120 blocuri si s=1/120.Apoi numara
blocurile pe care imaginea le atinge.Eticheteaza acest numar N(s).Aum redimensioneaza
suprafata si repeta procesul.Afiseaza grafic valorile gasite pe un graf unde axa x eate
log(s) si axa y este log(N(s)).Deseneaza linia si gaseste gradientul.
Dimensiunea calcularii casutelor este mai des utilizata decat cea a dimensiunii
autosimilaritati fiindca aceasta poate masura imagini care nu sant autosimilare.

Capitolul 3
Algoritmi inspirati din natura

Conceptul de similitudine poate fi extins intr-o anumita masura prin introducerea


unor mici schimbari in seria de transformari similare – asa-numitele perturbari. Daca
introducem anumite perturbari intr-un arbore fractal uniform, rezultatul poate semana
cu un copac real, un coral sau cu un burete.
Fractali aproximativi pot fi observati usor in natura; aceste obiecte afiseaza o
structura auto-similara la o scara mare, dar finita. Exemple de fractali din natura: norii,
fulgii de zapada, cristalele, lanturile montane, fulgerele, retelele de rauri, liniile de coasta.
Formele fractale sunt aproape imposibil de trasat fără ajutorul calculatorului. Formulele
care generează fractalii sunt de multe ori relativ simple, dar trebuie calculate repetat,
fiecare iteraţie utilizand rezultatul precedentei. Rezultatele cele mai precise sunt atinse cu
ajutorul calculatorului. Grafica pe calculator facilitează de asemenea comparaţiile intre
formele naturale şi imitaţiile lor computerizate.
Există mai multe tehnici de reprezentare (atractorii stranii, pentru sisteme haotice, metoda
Newton-Raphson, care se bazează pe găsirea soluţiei unei ecuaţii polinomiale, agregarea
limitată de difuzie, etc.), IFS, Sisteme-L.

1. Sisteme Lindenmayer (L-sisteme)

L-sistemele au fost propuse de către biologul Aristid Lindenmayer în 1968 ca


modele
fundamentale pentru o teorie axiomatică a dezvoltării biologice. Ele si-au dovedit
utilitatea în
grafica pe calculator pentru desenarea de peisaje naturale prin modelarea corectă a
plantelor şi în generarea fractalilor.
Notiunea centrală în L-sisteme este cea de substituţie, de re-scriere, unde ideea de
bază
este de a defini obiecte complexe prin înlocuiri succesive ale părţilor formate din obiecte
simple utilizând recursiv un set de reguli de generare (sau producţii). L-sistemele se
încadrează în mod natural în teoria limbajelor formale: pe baza unui un alfabet şi a unui

10
set de producţii, un L-sistem generează în mod iterativ un anumit şir de cuvinte plecând
de la un cuvânt iniţial.
Formal, un L-sistem este un triplet format dintr-un alfabet, un set de producţii şi o
axiomă. Prin alfabet înţelegem o mulţime finită de caractere (de litere, de simboluri, etc)
cu ajutorul cărora formăm succesiuni finite de caractere numite stringuri (sau cuvinte).
Fiecare caracter are asociată câte o regulă de substituţie (de generare, de derivare, de
producţie, etc) prin care el este înlocuit cu un anumit string. Oricare două stringuri
formează un alt string prin simpla lor alăturare, adică prin concatenare. Numim axiomă
stringul iniţial cu care pornim procesul de generare în care, la fiecare pas, înlocuim
fiecare caracter al stringului vechi cu stringul corespunzător lui din regulile de substituţie,
obţinând astfel prin concatenare noul string.

1.1 Figuri geometrice descrise de L-sisteme

Mulţi fractali (sau cel puţin aproximaţiile lor finite) sunt alcătuiţi din secvenţe de figuri
elementare Aceaste secvenţe pot fi descrise de
stringuri generate de L-sisteme dacă dăm fiecărui caracter din alfabet cate o interpretare
geometrică.
Sisteme de Lindenmayer au fost concepute ca o teorie matematică de dezvoltare. Astfel,
aspecte geometrice au fost dincolo de sfera de aplicare a teoriei. Ulterior, mai multe
interpretarea geometrică a sistemelor de L-au fost propuse pentru a le transforma într-un
instrument versatil pentru modelarea fractal şi a plantelor.

Multi fractali (sau cel puţin aproximările lor finite) pot fi gânditi ca secvenţe de
segmente primitive gen elemente-line. Pentru a produce fractali, sirurile de caractere
generate de L-sisteme trebuie să conţină informaţiile necesare despre geometrie figura. O
interpretare grafică de siruri de caractere, bazate pe geometria broască ţestoasă, este
descrisă de Prusinkiewicz et al. (1989), (1990). Această interpretare poate fi folosit
pentru a produce imagini. O stare de broască ţestoasă este definit ca un triplet (x, y, a), în
cazul în coordonate carteziene (x, y) reprezinta broasca testoasa poziţia, şi
unghiul a, numit titlul, este interpretat ca directia in care broasca testoasa se
confruntă. Având în vedere dimensiunea pas d şi b unghiul de creştere, broasca testoasa
poate răspunde la comenzile reprezentate de următoarele simboluri:

F- mutare înainte un pas de lungime d.


Modificările la Turtle (x ', y', a), în cazul în care
x '= x + d cos (a) şi y' = y + d păcat (a). O baterie Li-
segmentul NE între punctele (x, y) şi (x ', y')
este redactat.

f -mutare înainte un pas de lungime d fără sa


desenaţi o linie. Starea de broască ţestoasăse prezinta cu modificari ca mai sus

+ Viraj stânga de unghi b. Starea următoare a


Turtle este (x, y, a + b).

11
- Viraj stânga de unghi b. Starea următoare a
Turtle este (x, y, ab).

Descrierea de mai sus ne dă o metodă riguroasă pentru cartografiere siruri de caractere la


imagini, care pot fi aplicate pentru a interpreta siruri de caractere generate de L-
sisteme. Figura următoare arată patru aproximări ale curbei cunoscut sub numele de
``''quadratic insula Koch. Aceste cifre au fost obţinute prin interpretarea siruri de
caractere generate de următoarele L-sistem:

w: F + F + F + F
P: F -> F + FF-FF + F + FF

1.2 Pranteze in Sisteme-l si arhitecturi de plante

În urma descrierii din secţiunea precedentă, broasca testoasa interpretează un şir de


caractere ca o succesiune de segmente de linie, conectat la capete reciproc. În funcţie de
segmentul de lungimi şi unghiuri între ele, cifra rezultată va fi mai mult sau mai puţin
complicata , dar întotdeauna rămâne doar o singură linie.În lucrările sale, Lindenmayer, a
introdus o notaţie pentru reprezentarea de arbori. Graficul-teoretic folosind siruri de
caractere cu paranteze. Ideea a fost de a descrie în mod oficial ramificare structuri gasite
in multe plante, de la alge la copaci, folosind cadrul de L-sisteme. Din nou, interpretări
posterior geometrice de siruri de caractere cu paranteze au fost propuse pentru modelarea
realiste de plante. Astfel, pentru a reprezenta ramificarea structurilor L-sisteme de alfabet
este extins cu două simboluri noi, `[" şi "]", pentru a delimita o sucursală. Acestea sunt
interpretate de broască ţestoasă, după cum urmează:
[Pop-un stat din coş şi să-l
stadiul actual de broască ţestoasă.] Împingeţi starea actuală de broască ţestoasă
pe o stivă .
Un exemplu de un şir de paranteze si interpretarea acestuia broasca testoasa, obţinute în
derivaţii de lungime n = 1-5, sunt prezentate în figura următoare. Aceste cifre au fost
obţinute prin interpretarea sirurilor de caractere generate de L-sistem:
w: F
P: F -> F [-F] F [+ F] [F]

12
1.3 L-sisteme şi algoritmi genetici

Următoarele imagini au fost create de autor, folosind un algoritm genetic cu genotipuri


inspirat de L-sisteme. Funcţia de fitness este bazata pe ipoteze curente evoluţioniste în
ceea ce priveşte factorii care au avut cel mai mare efect asupra evoluţiei plantelor.

2 Sisteme IFS

Codurile IFS (Iterated Function System) sunt utilizate pentru a descrie fractalii
liniari (un nume mai corect ar fi fractali afini, datorită transformărilor afine pe care le
folosesc). Un fractal liniar este o imagine care poate fi definită prin copii ale ei inseşi
create prin transformări afine. Există şi alte tipuri de fractali care conţin forme auto-
similare, cum ar fi binecunoscutul set Mandelbrot.
IFS inlocuieşte un poligon cu alte poligoane, pe baza unui generator. La fiecare
iteraţie, fiecare poligon este inlocuit cu o versiune scalată, rotită şi translatată a
poligonului in generator.
Matematica din spatele fractalilor liniari este surprinzător de simplă, necesitand
doar cunoştinţe de transformări liniare. Un astfel de sistem de funcţie iterativă este
compus dintr-un set de transformări, care pot
fi orice transformare afină normală. Singura restricţie impusă este contracţia
transformării, adică transformarea aduce două puncte mai aproape unul de altul.
Fiecare transformare are asociată o anumita probabilitate de alegere, p; suma
acestora este 1.
Modul de funcţionare a sistemului este următorul: se alege un punct iniţial, şi la
fiecare iteraţie este aleasă o anumită transformare pe baza probabilităţilor asignate, iar
punctele rezultate sunt desenate pe ecran.
Practic, pentru a crea un IFS pentru o imagine dorită, procedeul este simplu.
Luăm imaginea unei frunze, spre exemplu, o scalăm, rotim şi translatăm pană cand
această versiune micşorată a imaginii iniţiale este cuprinsă in interiorul imaginii mari.
Aceasta va fi prima transformare a setului de transformări, w1. In pasul următor, se va lua
din nou imaginea iniţială, se va scala, roti, translata astfel incat să ocupe un spaţiu din
forma iniţială, neacoperit de transformarea precedentă. Suprapunerea este de preferat să
fie cat mai mică. Se repetă acest procedeu pană cand toată suprafaţa imaginii este
acoperită de copii micşorate ale ei inseşi. Setul de transformări utilizate devine setul de
transformări IFS pentru reprezentarea fractală a imaginii dorite.

2.1 Bazele unui IFS

Un sistem IFS este format dintrun set de transformari w1 , w2 ,... wn .Fiecare din
aceste transformari pot fi facute in cazul oricarei transformari afine.Singura restrictie este

13
aceea ca trebuie sa fie o transformare de contractie ceea ce insemna ca daca aplici
transformarea aceasta va muta mai aproapae 2 puncte.
Transformarea poate fi scrisa in notatie matriceala astfel:
|x| |a b||x| |e|
w| |=| || |+| |
|y| |c d||y| |f|

Fiecare din aceste transfomari w1,w2,...wn are o valoare repetitiva p1,p2,...pn care
reprezinta probabilitatea ca o anumita transformare sa ales. Suma dintre p1,p2,..pn trebuie
sa valoreze 1.

2.2 Generarea unei Imagini cu IFS


Feriga ifs descoperita de catre Michael Barnsy este un binecunoscut si simplu ifs care
genereaza imaginea unei ferigi Black Spleenwort.
Feriga este creata prin folosirea urmatoarelor 4 transformari afine:

| x | | r*cos(a) -s*sin(b) | | x | | h |
| y | | r*sin(a) s*cos(b) | | y | | k |

Translation Rotation Scaling


h,k a,b r,s

w1 0,0 0,0 0,0.16


w2 0,1.6 -2.5,-2.5 0.85,0.85
w3 0,1.6 49,49 0.3,0.3
w4 0,0.44 120,-50 0.3,0.37

2.3 Haos si intamplare in generarea IFS

Dupa cum am Feriga Barnsey este imposibil de generat prin desenarea


triunghiurilor deoarece sant prea multe triunghiuri de desenat si prea multe transformari
de aplicat. De aceea in locul triunghiurilor vom folosi transformarea de puncte,fiind mult
mai usor de computat in desenare si transformare.
Vom folosi Covorul lui Sierpinski ca si exemplu.
-Incepem cu un triunghi imaginar si etichetam varfurile 1,2,3.
-alegem un punct la intamplare
-generam un intreg aleator aflat intre 1 si 3.
-urmatorul punct sete mijlocul dintre primul punct si varful generat aleator.
-continua prin generarea intregilor aleatori si a punctelor de mijloc.
-vom vizualiza covorul lui Sierpinski dupa 1000 si ceva de iteratii.

Aplicam algoritmul ferigii:


1 alege numarul total de iteratii de performat =i
2 seteaza numarul total de transformari la n
3 eticheteaza fiecare transformare cu un intreg de la 1 la n

14
4 alege un punct aleator pe care il vei nhumi a
5 Genereaza un numar intreg aleator intre 1 si n
6 aplica tranzitia etichetata cu numarul aleator a generand un nou punct a.
7 plot a.
8 mergi la pasul 5 repetand de i ori.

2.4 Jocul haosului

Jocul Haosului este numit si algoritmul iteratei aleatoare si poate fi folosit in generarea
oricarui algoritm linear.Ca exemplu avem generarea Sitei lui Sierpinski in care se va
utiliza jocul haosului cu trei atractori pozitionati in trei varfuri ale unui triunghi
echilateral Cand se va misca pozitia curenta catre un atractor ,nultimea miscata reprezinta
intotdeauna jumatate din distanta dintrea punctul curent si varful selectat.
Pasii in crearea fractalului sant urmatorii:
-defineste cele trei puncte
- selecteaza un punct de strat
- selecteaz aleator unul dintre cei trei atractori
- muta pozitia curenta la jumatatea distantei fata de atractorul selectat si reprezinta grafic
un punct
-intoarce-te la pasul 3

3 Generarea fractalilor prin numere complexe


3.1 Setul Mandelbrot
Setul Mandelbrot este domeniul de convergenta a seriei contruita de secventa complexa
definita de regula recursiva Zn = Zn-12 + C. Cu alte cuvinte folosind un simplu algoritm
este posibil sa impartim punctele din planul complex in doua categorii:

• puncte in setul Mandelbrot;


• puncte in afara setului Mandelbrot.

Imaginea urmatoare arata o portiune a planului complex. Punctele setului Mandelbrot au


fost reprezentate cu negru.

15
Este posibil sa asociem o culoare cu un punct din afara setului Mandelbrot. Culoare
punctelor depinde de numarul de iteratii necesare pentru a determina daca fac sau nu
parte din setul Mandelbrot, si poate fi interpretata ca distanta fata de setul Mandelbrot.

Alegeti un punct din planul complex (sa-i spunem C). Numarul are formax + i*y.
Calculati valoarea expresiei Z2 + C, zu Z = 0, la inceput. Rezultatul e in mod evident C.
Dati lui Z valoarea obtinuta si repetati calculul: acum rezultatul este numarul
complex C2+C. Dati aceasta valoare lui Z si repetati calculul. In termeni matematici
aceata este iterarea functiei Zn = Zn-12 + C. Ce se va intampla cu punctul in urma iterarii?
Va ramane langa origine sau se va indeparta de aceasta? Daca ramane in apropierea
originii spunem ca puntul C apartine setului Mandelbrot. In caz contrar spunem ca
punctul se indeparteaza spre infinit si nu apartine setului Mandelbrot.

Haideti sa aruncm o privire asupra algoritmului dintr-un alt punct de vedere. Sa


consideram ca toate puntele sunt atrase atat de infinit cat si de setul Mandelbrot. Aceasta
face mai usor de inteles de ce:

• puncte indepartate de setul Mandelbrot se misca rapid spre infinit;

16
• puncte apropiate de setul Mandelbrot scapa greu spre infinit;
• puncte din setul Mandelbrot nu ating nicioadata infinitul.

Dupa cum se observa e imposibil de aplicat procesul descris mai sus pentru ca nu putem
itera la infinit pentru a vedea daca un punct va ajunge sau nu la infinit. Este usor de
demonstrat insa ca daca distanta de la punct la origine devine mai mare decat 2, va ajunge
la infinit. Tinand cont de aceasta in momentul in care distanta de la punct la origine
depaseste valoarea 2 putem sa oprim calculul pentru ca stim ca punctul va migra spre
infinit. In plus putem asocia o culoare cu numarul de iteratii efectuate (un mic numar de
iteratii inseamna ca punctul migreaza rapid spre infinit).

Pe de alta parte, daca punctul apartine setului Mandelbrot, distanta sa de origine nu va


depasi nicioadata valoarea 2, indiferent de numarul de iteratii efectuate. Chiar daca
punctul nu apartine setului ar putea fi necesare un numar foarte mare de iteratii pentru a
afla acest lucru. In ambele cazuri stabilim un numar maxim de iteratii, dupa care
presupunem ca face parte din set. Cu cat facem mai multe iteratii cu atat imaginea va fi
mai clara, dar calculele vor fi mai lungi

Implementarea in matlab

function Mandelbrot(iter,pixel)

% MANDELBROT(ITER,PIXEL) deseneaza setul Mandelbrot;

% ITER reprezinta numarul de iteratii, iar

% PIXEL reprezinta numarul de puncte pe axa Ox.

% MANDELBROT foloseste implicit iter = 23, pixel = 400.

% implicit

switch nargin

case 0

iter=23;

pixel=400;

end

17
% decompose x- and y-axis according to the chosen

% proportion of r = 3:4.

r = 3/4;

x = linspace(-2.5,1.5,pixel);

y = linspace(-1.5,1.5,round(pixel*r))';

% Creeaza matricea C care contine toti pixelii

% care trebuie analizati.

[Re,Im] = meshgrid(x,y);

C = Re + i * Im;

% Matricea B da un numar caracteristic fiecarui pixel in

% functie de viteza cu care acesta diverge.

% Prin urmare, B si C au aceeasi dimensiune.

B = zeros(round(pixel*r),pixel);

Cn = B; % C_0 = 0+0i

for l = 1:iter

Cn = Cn.*Cn + C; % realizeaza "harta"

B = B + (abs(Cn)<2); % if |cn| > 2 the sequence diverges

end;

% setari ale graficului

18
imagesc(B);

colormap(jet);

axis equal

axis off

4.2 Setul Julia

Seturile Julia sunt legate in mod strict de setul Mandelbrot. Functia iterativa
utilizata pentru a obtine setul Julia este Zn+1 = Z2n + C. Ceea de difera este modul in care
aceasta formula este utilizata. Pentru a obtine un fractal Mandelbrot, iteram formula
pentru fiecare punct C din planul complex si incepem intotdeauna cu Z0 = 0. Cand
construim un fractal Julia, C ramane fix pe tot timpul iterarii, in timp ce Z0variaza.
Valoare lui C determina forma setului Julia: cu alte cuvinte fiecare punct din planul
complex este asociat cu un set Julia particular.
Cum se poate construi un set Julia?
Alegeti un punct din planul complex (sa-i spunem C). Numarul complex corespunzator
are forma x + i*y. Urmatorul algoritm genereaza setul Julia asociat acestui punct C: fiind
dat un punct generic Z din planul complex, se poate stabili daca acesta apartine setului
Julia, asociat cu C, si implicit culoarea care trebuie sa i se asocieze. Pentru a vedea daca
Z apartine sau nu setului, trebuie sa iteram functiaZn+1 = Z2n + C cu Z0 = Z. Ce se intampla
cu punctul initial Z cand formula este iterata? Va ramane langa origine sau se va
indeparta de ea spre infinit? In primul caz punctul apartine setului Julia. In cel de-al
doilea caz se deplaseaza spre infinit si ii asociem o culoare punctului Z, in functie de
viteza cu care se deplaseaza spre infinit. Pentru a putea genera o imagine a intregului set
Julia asociat punctului C, trebuie sa repetam acest proces pentru toate punctele Z ale
caror coordonate sunt incluse in plaja: -2 < x < 2, -1.5 < y < 1.5

Trebuie remarcat ca in timp ce Setul Mandelbrot este conex , un set Julia este conex doar
daca este asociat cu un punct din setul Mandelbrot. Acesta e doar un exemplu al legaturii
dintre setul Julia si setul Mandelbrot.
Exemplu: setul Julia asociat punctului C1 este conex. Setul Julia asociat punctului C2 nu
este conex. (vezi imaginea de mai jos)

19
Metoda de obtinere a unui set Julia este aceeasi cu cea utilizata pentru a obtine un set
Mandelbrot. Daca distanta fata de origine devine mai mare decat 2 putem fi siguri ca va
ajunge la infinit. Astfel ne putem opri si asociat o anumita culoare in functie de numarul
de iteratii efectuate. Daca punctul apartine setului Julia distanta sa fata de origine nu va
depasi nicioadata valoarea 2, indiferent de numarul de iteratii efectuate. Chiar daca
punctul nu apartine setului Julia pot fi necesare un numar mare de iteratii pentru a afla
acest lucru. In ambele cazuri stabilim un numar maxim de iteratii, dupa care presupunem
ca punctul face parte din set (si il vom desena cu negru).

Implementarea in Matlab
function Julia(c,k,v)

%JULIA(C,K,V) deseneaza setul Julia cu urmatorii parametrii:


c este un numar complex folosit in harta f(z) = z² + c.
k reprezinta numarul de iteratii
v determina numarul de puncte de pe axa Ox.
JULIA foloseste constanta c = 0.2+0.65i, numarul de iteratii k = 14,
si numarul punctelor de pe axa Ox este v = 500.
% implicit
if nargin < 3
c = 0.2+0.65i;
k = 14;
v = 500;
end
% radius of the circle beyond which every point diverges
r = max(abs(c),2);

% divide the x-axis


d = linspace(-r,r,v);

% creaza matricea cu numerele complexe

20
A = ones(v,1)*d+i*(ones(v,1)*d)';

% creaza matricea punctelor


B = zeros(v,v);

% iteratii
for s = 1:k
B = B+(abs(A)<=r);
% harta
A = A.*A+ones(v,v).*c;
end;

% setarile graficului
imagesc(B);
colormap(jet);
hold off;
axis equal;
axis off;

Capitol 4

Metode de generare a curbelor si suprafetelor


Una dintre cele mai populare metode stochastice de reprezentare a curbelor si
suprafetelor sant bazate pe conceptul de fractal care a fost folosit pentru optimizarea
generarii unui model de teren.Astfel fractalii permit crearea unor suprafete realiste in
timp scurt fara a se face apelul la prea multe functii exacte.Un alt avantaj al utilizarii
frctalilor este acela ca face posibila computerizarea suprafetelor la nivele detaliate
arbitrar fara a creste dimensiunea bazei de date.

Introducere

Curbele si suprafetele sant elemente geometriei Euclidiene si sant adecvate a reprezenta


forme artificiale dar si forme naturale ca linii de coasta ,munti ,forme fragmentate,nori
etcAcestea sant mai bine reprezentate cu ajutorul geometriei fractale care are o mai mare
capabilitate de reprezentare entitati lumesti care nu sant perfect definite ci iregulate si
fragmentate .
Conceptul de dimensiune fractala
Dimensiunea fractala precizeza cat de dens un fenomen ocupa spatiul in care se afla
.Acest lucru este independent de unitatile de masura folosite sau de modificarea spatiului
de streching sau condensare.

21
Dimensiunea fractala a mai multo entitati poate fi obtinuta prin ecuatia 1 sau 2(Laurini si
Thompson 2002):
1)

lo gn
d=
( r)
lo g 1
2) d =
logn
logs

Unde:
n = numarul de parti repetitive
r =ratia self-similaritatii
d=dimensiunea fractala

Alternativ,s, factorul de scalare ,inversul raportului self-similaritatii, poate fi gândit ca


numărul de piese in care o entitate este împărţită . Cal de exemplu, fulgul de zăpadă
deja menţionat cu , n= 4, r = 1 / 3, oferindu-d = 1.2619.
Ne putem imagina un continuum în cazul în care o valoare d aproape de 0
ar însemna o entitate este aproape de un punct, o valoare de 1 înseamnă o linie, şi
dacă este aproape de 2, aceasta este o zonă.
În mod similar, o linie netedă va avea o dimensionalitatea de 1, dar o
linie neregulate are o valoare mai mare, cu siguranţă, mai mare decât 1. Pentru liniile de
coasta dimensiune medie fractala este d = 1,2, pentru teren, d este de aproximativ 2,3.

Pentru a intelege mai bine acest concept descriem pasii producerii unui fulg de nea:
Pas1
-Se ia un triunghi
-impartim fiecare parte a triunghiului in 3 parti si inlocuim partea din mijloc cu 2 parti
egale
-va fi generat un poligon cu 12 parti.
Pas 2
Se reia algoritmul
Se genereaza un poligon cu 48 de parti.
• la fiecare pas numarul de parti este multiplicat de 4 ori.

1 Miscarea Browniana
Mişcare browniană este cel mai popular model folosit pentru a efectua
interpolari fractale dintr-un set de probe.
Definitie
Mişcare browniană,observate prima data de Robert Brown în 1827, este mişcarea de mici
particule cauzate de bombardament continuu de către alte
particule vecine. Brown a constatat că distribuţia
pozitiei particulelor este întotdeauna Gaussiana cu o variaţie dependentă
numai pe durata de timp a observaţiei mişcării.
(Laurini Thompson şi 2002).
Mişcare browniană de fracţionare (FBM), poate fi folosita pentru simularea suprafetelor

22
topografice
FBM oferă o metodă de generare a neregularitatilor, suprafete auto similare care
seamana cu topografia si care au cunoscut dimensiunea fractala.
Funtiile FBm pot fi categorisite prin numeroase grafice care simuleaza fenomenul
variatiei impotriva distantei spatiale dintre 2 puncte prin ecuatia data de Felgueiras si
Goodchild 1995:
[( )] 2
(
E z i − z j = K * Di , j)2H

Unde:
E=asteptare statistica
Z i , Z j =inaltimile suprafetei in punctele i si j;
d i , j =distanta spatiala dintre aceste puncte
K=constanta proportionalitatii
H=parametru in intervalul 0 la 1
H controleaza suprafata si duritatea si are o relatie cu dimensiunea fractala D dupa cum
se observa di urmatoarea ecuatie:
D=3-H
Cum H este 0,5 vom obtine o miscare Browniana.Cu cat este mai mic H cu atat este mai
mare D.

1. curbe stochastice afisate pentru


diferite valori ale prametrului H.
(Fournier and Goodchild 1995).

In 1980 Fourier aprezentat proceduri


recursive pentru determinarea curbelor si
suprafetelor bazate pe modele
stochastice.Acestea descriu 2 metode
pentru construirea suprafetelor fractale
bidimensionale primitive:
1)subdiviziunea poligoanelor (crearea de fractali poligonali):
Este bazata pe metoda de subdiviziune a unui fractal printro linie poligonala.Aceasta
este o procedura recursiv care interpoleaza puncte intermediare a unei linii poligonale.
Algoritmul
Imparte recursiv cele mai apropiate intrvale extreme si genereaza o valoare scalara la
mijloc care este proportionala cu deviatia standard curenta .Subdivizarea poate continua
pana cand aria sau partea triunghiului curent atinge o limita predefinita.Deci triunghiul
original este transformat intrun triunghi fractal ale carui suprafete iregulate sant compuse
din mai multe fatete triunghiulare mai mici.
-definitia suprafetelor parametrice stochastice.
Dupa acest stadiu utilizam conceptul fracatal de interpolare.Aceasta metoda este folosita
pentru estimarea valorilor lui z pe un grid rectangular avand la baza ideea lui Felgueiras
si Goodchiled(1995)Aceasta incepe prin definirea triunghiului curent Tc al modelului
care contine punctele gridului Pi ( xi , y i , z i ) .Apoi triunghiul Tc este subdivizat recursiv
in patru triunghiuri mai mici prin conectarea punctelor de mijloc intre triunghiuri.Valorile

23
z ale acestor puncte de mijloc sant definite de catre o linie fractala poligonala .Un nou
triunghi Tc care contine puncte Pi este ales dintre cele 4 triunghiuri mai mici
.Subdiviziunea continua pana cand punctul Pi se afla in cadrul unui criteriu de
proximitate ale unuia dintre vrfurile triunghiului Tc .Cand proximitatea este satisfacuta
putem defini z i = z pentru acest varf.

Capitol 5
Compresia fractala
Compresia fractala reprezinta o metoda de compresie a imaginii utilizand
fractali.Aceasta metoda este potrivita pentru texturi si imagini naturale pe baza faptului
ca parti ale imaginii seamana cu alte parti ale aceleasi imagini.Algoritmii fractali
convertec aceste parti in date matematice numite “coduri fractale” care snt folosite pentru
recrearea imaginii codate.Compresia fractala difera de compresiile bazate pe pixeli cum
ar fi: JPEG,GIF, MPEG,atunci cand nu sant salvati pixeli.Odata ce o imagine a fost
convertita in cod fractal ,imaginea poate fi recreata pentru a umple orice marime de
ecran fara a pierde din definirea care apare in schemele de compresie conventionale.

Istoric

Michael Barnsley a condus dezvoltarea compresiei fractale în 1987, şi i-au fost acordate
mai multe brevete pe tehnologie. Studentul lui Barnsley absolventul Arnaud Jacquin a
implementat automat primului algoritm în software-ul în 1992. Toate metodele se
bazează pe transformarea fracatala folosind sistemele iterative. . Michael Barnsley şi
Alan Sloan format Systems Inc în 1987, care a fost acordat peste 20 de patente
suplimentare legate de compresie fractal.

Fractal de comprimare imagine a fost folosit într-un număr de aplicaţii


comerciale: onOne Software-ul , dezvoltat sub liceenţă de la Systems Inc, Genuine
Fractals 5 , care este un plug-in photoshop capabil de economisire a fişierelor
comprimate în FIF (Fractal Image Format). Utilizarea cea mai de succes de comprimare
a imaginii de fractal este data de Microsoft în cartea de enciclopedia
multimedia Encarta, de asemenea, sub licenţă. Systems Inc furniza un encoder shareware
(Fractal Imager), un singur decodor, un plug-in Netscape ca decodor şi un pachet de
dezvoltare pentru utilizarea sub Windows pe bază de metode wavelet de compresie
îmbunătăţită a imaginii şi au fost mai uşor de licenţiat de către furnizorii de software

24
comercial. În timpul anilor 1990 Systems Inc şi partenerii cheltuie resurse considerabile
pentru a aduce la video compresia fractala. În timp ce rezultatele de compresie au fost
promiţătoare, hardware din acea vreme nu a avut puterea de procesare pentru ca
compresia video fractala să fie practic dincolo de uzantele selectari de pana atunici. Până
la 15 de ore au fost necesare pentru a comprima un minut de video.

1 IFS
Imaginea fractala poate fi descrisa matematic ca o functie al unui sistem iterativ.

1.1 Imagini binare


Incepem cu reprezentarea unei imagini binare unde imaginea poate fi privita ca si un
subset al lui R la patrat.Un IFS este un set de mapari contractate f1...Fn;

Conform acestor funcţii de cartografiere, IFS descrie un set S dimensional două ca punct
fix al operatorului Hutchinson

H este un operator de cartografiere seturi la seturi, şi S este un set unic satisface H


(S) = S. Ideea este de a construi IFS, astfel încât acest set S este binar imaginea de
intrare. S set pot fi recuperate de la IFS prin repetare punct fix : pentru orice
nevidcompact set iniţial A 0, iteraţia A k +1 = H (A k) converge la S.

S set este auto-similare, deoarece H (S) = S implică faptul că S este o uniune de copii
mapate de sine:

2 Extinderea în tonuri de gri


IFS reprezentare poate fi extinsă la o imagine în tonuri de gri prin considerarea
imaginii grafic ca un subset de . Pentru o imagine în tonuri de gri U (x, y), ia în
considerare set S = {(x, y, u (x, y))}. Apoi, similar cu cazul binar, S este descris de un IFS
utilizând un set de mapare a contracţiei ƒ ƒ 1 ,..., N, dar în ,

25
3 Codificarea
O problemă provocatoare de cercetare în curs de desfăşurare în reprezentarea imaginii
fractale cum de a alege ƒ ƒ 1 ,..., N astfel încât punct fix sa apropie imaginea de intrare, şi
cum să facă acest lucru eficient. O abordare simplă [1] pentru a face acest lucru este
următoarea:

1. Partiţie domeniul imaginii în blocuri de


dimensiune i R S S ×.
2. Pentru fiecare i R, de căutare pe imagine pentru a
găsi un D i bloc de dimensiunea 2 s × 2 s, care este foarte similar cu R i.
3. Selectaţi funcţiile de cartografiere, astfel încât H
(D i) = i R pentru fiecare i.

În a doua etapă, este important de a găsi un bloc similar, astfel încât IFS reprezintă cu
exactitate imaginea de intrare, astfel încât un număr suficient de blocuri candidat
pentru D am nevoie pentru a fi luate în considerare. Pe de altă parte, o căutare de mare
având în vedere mai multe blocuri de calcul este costisitoare. Acest gâtuire de căutare
pentru blocuri similare este aceea codare fractala este mult mai lent decât, de
exemplu DCT şi wavelet imagine bazate pe reprezentări.
Caracteristici

Cu compresie fractal, codificare este extrem de costisitoare din cauza computationale de


căutare utilizate pentru a găsi auto-asemănări.Decodarea, cu toate acestea este destul de
rapida. În timp ce această asimetrie a făcut-o până acum practica pentru aplicaţii în timp
real, cumsant cele video când este arhivat pentru distribuţie sau de la stocarea fişierelor
descărcări pe disc de compresie fractală devine mai competitivă.

La un raport de compresie comune, până la aproximativ 50:1, compresie fractala oferă


rezultate similare cu DCT pe bază de algoritmi, cum ar fi JPEG . Un raport ridicat de
compresie fractală poate oferi calitate superioara. Pentru imagini din satelit, raporturi de
peste 170:1 au fost realizate cu rezultate acceptabile. Fractal raportul de compresie video
de 25:1-244:1 au fost realizate în vremuri de compresie rezonabil (2.4 - 66 sec / cadru).

Compresie măreşte eficienţa cu imagine mai mare complexitate şi adâncimea de culoare,


comparativ cu simple tonurile de gri in imagini.

26
4 Rezoluţia independenţa şi scalarea fractala
O trăsătură inerentă de compresie fractala este că imaginile devin independente de
rezoluţie [7] după ce a fost convertit la codul fractal.Acest lucru se datorează faptului că
sistemele de reiterată în funcţia de scară fişier comprimat pe termen nelimitat. Această
proprietate scalarea nedeterminată un fractal este cunoscut sub numele de "scalarea
fractal".
5 Interpolare Fractala
Independenţa rezoluţiei unei imagini fractal-codificate poate fi utilizată pentru a creşte
rezoluţia de afişare a unei imagini. Acest proces este, de asemenea, cunoscut sub numele
de "interpolare fractala". În interpolarea fractala, o imagine este codificata în coduri
fractale prin compresie fractală, şi ulterior decomprimat la o rezoluţie mai
mare. Rezultatul este o imagine-eşantion în care sistemele de funcţia reiterat au fost
folosite ca interpolant . Interpolare Fractala susţine foarte bine detaliul geometric
comparativ cu metodele tradiţionale, cum ar fi interpolare interpolare
biliniară şi interpolare bicubica .

Capitolul 5

Inteligenta artificiala in proiectarea sistmelor de e-learning

Concluzii
Din nefericire pentru aceia dintre noi cărora le place să controleze lucrurile, mare parte
din lumea
naturală nu se conformează cu uşurinţă ecuaţiilor liniare. Formele neliniare, „fractale”,
sunt mai degrabă
regulă decat excepţie. Aşa cum spunea Benoit Mandelbrot in cartea sa „Geometria
fractală a naturii”: „Norii
nu sunt sfere, munţii nu sunt conuri, liniile de coastă nu sunt cercuri, iar scoarţa
copacilor nu e netedă...”.
Tehnicile noastre matematice au repurtat un mare succes in prezicerea fenomenelor
excepţionale, care sunt
aproape liniare, cum ar fi traiectoriile pro 10110h71k iectilelor, planetelor şi particulelor.
Subiecte mai haotice
(şi imediat folositoare) cum ar fi vremea, cutremurele, curgerea fluidelor şi dinamica
formativă au inşelat
constant previziunile.

27
Fractalii nu oferă in mod neapărat speranţa că putem controla aceste fenomene
inşelătoare. Din contră, incepem să inţelegem că haosul şi imprevizibilul sunt mult mai
puternic incluse in natură decat ne-am
imaginat vreodată. Oricum, fractalii ne oferă instrumente puternice pentru modelarea şi
vizualizarea sistemelor neliniare. In majoritatea cazurilor, cu ajutorul fractalilor putem
modela aspectul şi structura lumii reale mult mai uşor şi mai succint decat cu formele
liniare.Interesul crescand in grafica fractală a fost de asemenea influenţat de proliferarea
microcalculatoarelor puternice.

Bibliografie

Motorul de cautare Google.com


Enciclopedia Wikipidia
Fractals everywere-Google carti
Fractals surfaces-Google carti
Hypertextbook.com

28

S-ar putea să vă placă și