Sunteți pe pagina 1din 27

1

Metod de selecionare bazat pe


Fuzzy Logic

Capitolul 1 - Introducere

1.1 Tema proiectului

Metodele de selecionare bazate pe Fuzzy Logic reprezint o soluie modern i
avansat n realizarea sistemelor decizionale, bazate pe diverse trsturi asemntoare ale
obiectelor. n aceast lucrare s-a propus realizarea proiectrii i dezvoltrii unui astfel de
model de clasificare, bazat pe extragerea unor caracteristici i apoi utilizarea acestora pentru
realizarea seleciei (luarea deciziei). Intrarea acestui model const n imagini color ale
obiectelor de clasificat.
Aplicaia beneficiaz de o implementare pe dou nivele, respectiv primul nivel fiind
reprezentat de algoritmii de extragere a celor trei caracteristici (marime, culoare, aspect
fizic), realizai n mediul de dezvoltare integrat (IDE) Matlab, iar cel de-al doilea nivel
constnd n proiectarea unui model de decizie cu Fuzzy Logic, de tip Mamdani, cu trei
intrri, corespunztoare trsturilor obiectelor i dou ieiri, ce semnific tipul, respectiv
starea obiectelor. Ulterior, este realizat legatura ntre sistemul de selecionare i parametrii
de intrare rezultai n urma prelucrrii imaginilor cu algoritmii corespunztori.
Deoarece, sistemul n discuie este unul decizional i nu unul de control, am utilizat ca
metod de defuzzificare metoda mediei maximelor (MOM). Valorile returnate la ieire n
urma defuzzificarii sunt corelate cu variabilele lingvistice corespunztoare n vederea afirii
rezultatelor finale, rezultate care dovedesc corectitudinea proiectrii i implementrii
ntregului proces.

2

1.1.1 Fundamentare teoretic

Logica Fuzzy a devenit o soluie foarte promitoare pentru realizarea metodelor
decizionale. Tema acestei lucrri propune proiectarea eficient a unui sistem de sortare
implementat pe baza logicii fuzzy. Pentru modelarea sistemului de clasificare i a
algoritmilor de extragere a proprietilor obiectelor s-a folosit mediul de dezvoltare integrat
Matlab, i mai exact Image Processing Toolbox, i Fuzzy Logic Toolbox.

1.1.2 Metodologia propus

Fig.1 - Schema logic pentru metodologia propus
3

Punctul de plecare n implementarea unei astfel de metode de clasificare este
reprezentat de specificaiile sistemului. Figura de mai sus reprezint schema logic a
metodologiei propuse.
Dup ce au fost fcute specificaiile sistemului de selecionare urmeaz proiectarea
unui model decizional cu Fuzzy Logic n Matlab FIS Editor. Acest model este analizat, testat
i ajustat pn cnd rezultatele experimentale corespund cu performanele cerute.

1.2 Logica Fuzzy

Logica Fuzzy (cuvant provenit din limba engleza care inseamna logic vag) este o
form de logic multi-valorica derivat din setul teoretic fuzzy, folsit pentru concluzionarea
unor propoziii ale cror valoare de adevr este mai mult aproximativ dect precis. Spre
deosebire de logica clasic, care lucreaz cu dou valori numerice exacte (0 pentru fals i 1
pentru adevrat), logica fuzzy folosete o plaj continu de valori logice cuprinse n
intervalul [0;1], unde 0 indic falsitatea complet, iar 1 indic adevrul complet. Astfel, dac
n logica clasic un obiect poate aparine (1) sau nu (0) unei mulimi date, n logica fuzzy
putem defini gradul de apartenen al obiectului la mulime care poate lua valori ntre 0 i 1.
Mai mult, atunci cnd sunt folosite variabile lingvistice, gradele de apartenena pot fi
controlate prin funcii specifice.
Diferen esenial dintre logica clasic i cea fuzzy, este faptul c legea terului
exclus", nu mai este valabil. n Figura 2 de mai jos este ilustrat diferena ntre logica
boolean i cea fuzzy. Dac n primul caz exist o delimitare clar ntre cele dou valori de
adevr, n al doilea caz exist o zon de nedeterminare, n care valoarea de adevr poate fi 0
i 1 n acelai timp, ntr-o anumit msur dat de gradul dapartenenta.[3]

4


Fig. 1 - Ilustrarea mulimilor TRUE i FALSE n logica boolean (a) i n logica fuzzy (b) [3]


1.2.1 Mulimile Fuzzy

Conceptul de mulime fuzzy, introdus de ctre Zadeh, a aprut ca o urmare fireasc a
imposibilitii de a modela un sistem indenit cu ajutorul unor instrumente matematice
precise, cum ar fi cele ale teoriei probabilistice.
Fie X o colecie de obiecte. Mulimea fuzzy A definit pe mulimea X este o mulime
de perechi ordonate:

unde reprezint funcia caracteristic sau funcia de apartenena a lui x la mulimea A.
Semnul /" este folosit doar pentru a delimita valoarea real x de valoarea funciei de
apartenena .
Functia de apartenena se definete pe intervalul de valori posibile ale lui x cu valori
reale, n intervalul [0,1]: [0; 1].
Dac A conine doar 0 i 1, atunci A nu mai este o mulime fuzzy, ci una
caracteristic logicii clasice. Dac funcia de apartenena este discret, atunci mulimea A se
scrie ca:

Dac funcia de apartenena este o funcie continu, atunci mulimea fuzzy A se scrie
ca:
{ ( ) / }
A
A x x =
( )
A
x
( )
A
x
( )
A
x

1 1 2 2
1
/ / ... / /
n
n n i i
i
A x x x x
=
= + + + =

5


unde prin integrare se nelege totalitatea punctelor .
Pentru o mai bun nelegere a mulimilor fuzzy definim cinci concepte:
1. Variabil lingvistic : o proprietate, un atribut al obiectului (obiectelor) n discuie
2. Valoare lingvistic : un adverb, adjectiv asociatvariabilei lingvistice, care d i numele
mulimii fuzzy asociate
3. Universul discuiei : o mulime clasic, tranant, pe care se definesc mulimile fuzzy
4. Gradul de apartenena : arat masura n care un element aparine unei mulimi fuzzy,
[0;1]
5. Funcia de apartenena : asociaz fiecrui element x gradul de apartenena la mulimea
fuzzy :

Astfel, mulimea fuzzy este complet determinat de mulimea perechilor ordonate:

Funciile de apartenena pot fi de mai multe tipuri. De exemplu, n toolboxul de Fuzzy
Logic din Matlab sunt implementate 11 tipuri de mulimi fuzzy reprezentate n Figur 3.
Acestea sunt triunghiulare (trimf), trapezoidale (tramf), de tip Gauss (gaussmf i gauss2mf),
clopot generalizat (gbellmf), sigmoidale (sigmf, dsigmf, psigmf) i curbe polinomiale (zmf,
pimf, smf).
Un tip special de mulime fuzzy este mulimea de tip singleton a crei funcie de
apartenena are valoarea 1 doar ntr-un punct particular i valoarea 0 n rest. [1]

( ) /
A
X
A x x =
}
( ) /
A
x x
x =
A=
X =
=
e
A
e
A
( ) : [0;1]
A
x X
A
{( , ( )) | }
A
A x x x X = e
6


Figura 2: Cele 11 tipuri de mulimi fuzzy [7]

1.2.2 Variabile lingvistice

n timp ce variabilele matematice iau de obicei valori numerice, n aplicaiile cu
logic fuzzy, variabilele lingvistice nenumerice sunt adesea folosite pentru a facilita
exprimarea regulilor i a faptelor.
O variabil lingvistic precum vrsta poate lua o valoare precum tnr sau
antonimul acestuia btrn. Oricum, marea utilitate a variabilelor lingvistice este aceea c
pot fi modificate prin intermediul pragurilor lingvistice aplicate termenilor primari. De
asemenea, pragurile lingvistice pot fi asociate unor funcii certe.

1.2.3 Grade de adevr

Logica fuzzy i logica probalisic sunt similare din punct de vedere matematic,
ambele avnd grade de adevr cuprinse n intervalul 0-1, dar conceptual sunt diferite, datorit
7

interpretrilor diferite. Logica fuzzy corespunde unor grade de adevr, n timp ce logic
probalistic corespunde probabilitii, posibilitii. Consecvent, probabilitatea nu are nimic
n comun cu fuzzificarea, acestea sunt concepte diferite care la o privire superficial par
similare din cauza folosirii aceluiai interval de valori numerice reale, [0;1]. Totui, din
moment ce teoreme, precum cea a lui De Morgan, au aplicabiliti duale, i proprietile
variabilelor aleatoare sunt similare cu proprietile strilor logice binare, se pot observa
cazurile n care ar putea aprea confuzii.

1.2.4 Aplicarea valorilor de adevr

O aplicaie de baz ar putea caracteriza gamele de variaie pentru o variabil continu.
De exemplu, msurarea temperaturii pentru mpiedicarea blocrii frnelor unui automobil
poate avea mai multe funcii membre separate, definind intervale de temperatur particulare
necesare pentru controlul corespunztor al frnelor. Fiecare funcie indic aceeai valoare a
temperaturii ctre o valoare de adevr n intervalul [0;1].



n aceast imagine, nelesul expresiilor RECE, CALD, FIERBINTE este reprezentat
de funcii care acoper scara de temperatura. Un punct coninut n acest interval are trei
valori de adevr- una pentru fiecare din aceste trei funcii. Linia vertical din imagine
reprezint o anumit temperature pe care cele trei sgei (valori de adevr) de ecartament o
indic. Din moment ce sageata roie pointeaza spre zero, acesta temperatur poate fi
interpretat ca fiind nu fierbinte. Sageata portocalie (care indic spre 0,2) descrie aceast
8

temperatur ca fiind uor cald, n timp ce sageata albastr (care pointeaza la 0,8) descrie
temperatura ca fiind destul de rece. [1]

1.2.5 Raionament Fuzzy

Raionamentul fuzzy (denumit si raionamentul aproximativ) este analogul logicii
predicatelor pentru raionamentul cu propoziii precise i este, aadar, o extensie a logicii
propoziiilor clasice. Raionamentul fuzzy folosete propoziii fuzzy care sunt afirmaii ce pot
fi adevrate n anumite grade cuprinse n intervalul [0; 1]. Aceste propoziii sunt exprimate
folosind limbajul natural. Un model de propoziie fuzzy este:
x este A
unde x este o variabil lingvistic iar A este o valoare lingvistic a variabilei x . nelesul
acestei propoziii este determinat de mulimea fuzzy A definit pe universul discuiei
variabilei x .
Regulile fuzzy sunt propoziii condiionale de tipul DAC-ATUNCI care folosesc
variabile i valori lingvistice fuzzy:
Daca x este A atunci y este B
unde A i B sunt valori lingvistice definite prin mulimi fuzzy pentru variabilele lingvistice
x , respectiv y.

Partea DAC a regulii ( x este A) se numete premis sau antecedent, pe cnd partea
ATUNCI ( y este B ) se numete concluzie sau consecvent.
Interpretarea unei reguli fuzzy are loc n dou etape: mai nti se evalueaz premisa
iar apoi se aplic acest rezultat concluziei. Dac premisa este adevrat ntr-un anumit grad,
atunci concluzia este adevrat n acelai grad.
n logica Boolean principalele instrumente de raionament sunt tautologiile, cum
sunt modus ponens i modus tolens. n logica fuzzy este folosit acelai principiu, dar n locul
propoziiilor tranante sunt folosite propoziii i reguli fuzzy. Cea mai folosit tautologie n
raionamentul fuzzy este modus ponens generalizat (MPG):
9


unde A
-
i B
-
sunt mulimile fuzzy A i B modificate.

Aflarea concluziei B
-
se realizeaz n urma procesului de inferen (deducie) fuzzy,
care matematic se poate rezolva folosind regula compoziional de inferen propus de
Zadeh:
B
-
= A
-
o ( A B )
unde: simbolizeaz operaia de implicaie (evaluarea regulii fuzzy);
o simbolizeaz operaia de compunere a celor dou propoziii fuzzy din
MPG.

Folosind funciile de apartenen avem:
( ) ( ) ( , )
A B
B A
y x x y
- -

=

Trebuie stabilii operatorii pentru cele dou operaii: implicaie i compunere. Pentru
implicaie cei mai folosii operatori sunt:
min ( , ) min( ( ), ( ))
A B A B
x y x y

=
(Mamdani)

produs ( , ) ( ) ( )
A B A B
x y x y

=
(Larsen)
Pentru compunere cel mai des se folosete compunerea max-min:
( ) max min{ ( ), ( , )}
A B
B A
y x x y
- -

= , y V e
x X e
premis
implicaie
concluzie concluzie
x este A
-

DAC x este A ATUNCI y este B
bbbbbbb B erww n B B B B
y este B
-

10

unde X i V sunt universurile discuiei pentru cele dou variabile, x respectiv y .
Folosirea compunerii max-min mpreun cu implicaiile min sau produs conduc la
cele mai folosite mecanisme de inferen compoziional:

- Inferena compoziional max-min, sau Mamdani
( ) max min{ ( ), ( ))}
B
B A
y x y
- -
= , y V e
x X e
- Inferena compoziional max-produs, sau Larsen
( ) max min{ ( ), ( ) ( )}
A B
B A
y x x y
- -
= , y V e
x X e
A* este o mulime fuzzy rezultat n urma unui proces de fuzzificare (ce se va discuta
n paragraful urmtor) i de cele mai multe ori este o mulime fuzzy singleton. Inferena
compoziional este ilustrat n Figura 4, pentru trei tipuri de inferene: Mamdani, Larsen i
Takagi-Sugeno. Avnd n vedere cazul particular de mulime fuzzy singleton pentru A*,
inferena compoziional max-min se reduce la formula:
( ) min{ ( ), min( ( ), ( ))}
A B
B A
y x x y
- -
-
= , y V e
( ) min{min( ( ), ( ), ( )}
A B
B A
y x x y
- -
-
= , y V e

n cazul n care mulimea fuzzy B este de tip Takagi-Sugeno de ordin zero (mulime
fuzzy singleton) indiferent de operatorul folosit pentru operaia de compunere, rezult
inferena compoziional Takagi-Sugeno.[1]

11



Fig. 3 - Inferena compoziional [8]

1.2.6 Proprietile mulimilor Fuzzy

Normalitatea. O mulime fuzzy este normal dac valoarea maxim afunctiei de
apartenena este 1:

( ) 1
x
x v =
12

unde reprezint supremul sau maximul lui . n caz contrar vom spune c mulimea
este subnormal.
Convexitatea. O mulime fuzzy este convex dac i numai dac mulimile
definite ca:

sunt convexe pentru orice [0;1].

Punctul crossover. Pentru o mulime punctul crossover este elementul
pentru care funcia de apartenena are valoarea 0,5.
Valori singulare fuzzy. O valoare singular (engl. singleton) este o mulime fuzzy
care are un grad de apartenena pentru o singur valoare. Fie o valoare singular pentru un
interval , , atunci poate fi scris ca:
Folosind aceast definiie, o mulime fuzzy poate fi considerat o reuniune de valori
singulare. [1]


Capitolul 2 - Sisteme Fuzzy

Un sistem cu logic fuzzy (SLF) permite modelarea i implementarea funcionrii
oricrui proces prin descrierea relaiilor de intrare-ieire folosind variabile i valori
lingvistice i reguli fuzzy DAC-ATUNCI (IF-THEN). Valorile numerice tranante ale
variabilelor de ieire rezult prin aplicarea unor operaii: fuzzificare, inferen fuzzy,
defuzzificare, asupra valorilor numerice ale variabilelor de intrare.
Dup Brubaker dezvoltarea unui sistem cu logic fuzzy este justificat pentru
sistemele a cror funcionare este prea complex pentru a putea fi definit adecvat prin
tehnici tradiionale:

- sisteme prea complexe pentru a fi modelate precis;
x
v
x

A
A
o
{ | ( ) }
A
A x x
o
o = >
o e
A
A
X x X e A
/ A x =
13

- sisteme cu funcionare mediu spre puternic neliniar;
- sisteme ce prezint anumite incertitudini fie n intrri fie n funcionare.

n Figura 5. este prezentat structura unui SLF. Specific acestei structuri este lipsa
fluxului informaional de la Baza de cunotine, att nspre interfaa de Fuzzificare ct i
nspre interfaa de Defuzzificare [1]


Figura 4: Schema bloc a unui sistem cu logic fuzzy [1]

n structura SLF sunt cuprinse modulele:
- Fuzzificare =: interfaa ce transform valorile tranante ale variabilelor de intrare
( x *) n mulimi fuzzy de tip singleton ( A*);
- Baza de cunotine =: furnizeaz modulului Inferen informaiile necesare:
- mulimile fuzzy pentru variabilele de intrare ( A);
- mulimile fuzzy pentru variabilele de ieire ( B );
- baza de reguli fuzzy.
- Inferen =: blocul care determin valorile fuzzy ale variabilelor de ieire ( B *)
Fuzzificare Inferen Defuzzificare
A
*
B
*
y
*
x
*
Valori
tranante de
intrare

Valori
tranante
de ieire

Mulimi fuzzy de
intrare (A)
Mulimi fuzzy de
ieire (B)
Baza de
reguli fuzzy
Baza de cunotine

mulimi i reguli
fuzzy

f
l
u
x

i
n
f
o
r
m
a

i
o
n
a
l

flux de calcul


14

folosind inferena fuzzy;
- Defuzzificare =: interfaa ce transform valorile fuzzy ale variabilelor de ieire n
valori tranante ( y *).

2.1 Sisteme cu locic Fuzzy Takagi-Sugeno

n prezent exist dou tipuri de SLF: de tip Mamdani i de tip Takagi-Sugeno. Ele
difer n principal prin partea de concluzie a regulilor fuzzy. Sistemele Mamdani
2
x utilizeaz
mulimi fuzzy obinuite, pe cnd sistemele Takagi-Sugeno (T-S) folosesc n concluzie funcii
(liniare) a variabilelor de intrare.
Fluxul de date dintr-un SLF este prezentat grafic n Figura 6. Valorile tranante
1
x * i
2
x * ale variabilelor de intrare sunt fuzzificate rezultnd mulimile fuzzy singleton
1
A *,
respectiv
2
A *. Gradele de activare (adevr) ale celor dou reguli sunt
1
, respectiv
2
i
sunt valori intermediare folosite n cadrul inferenei. Menionm c regula R2 este o regul
compus coninnd n partea de premis ambele variabile legate prin conectivul fuzzy I.
Pentru conectivul I este folosit operatorul min. Valorile fuzzy pariale ale variabilei de
ieire furnizate de cele dou reguli sunt
1
B * i
2
B * n cazul unui SLF T-S de ordin zero,
respectiv
1
y * i
2
y * n cazul unui SLF T-S de ordin unu. Aceste valori pariale sunt agregate
i apoi defuzzificate folosind metoda de defuzzificare numit medie ponderat. n urma
defuzzificrii se obine valoarea tranant y * a variabilei de ieire corespunztoare valorilor
tranante
1
x * i
2
x * ale celor dou variabile de intrare.[1]
15


Fig. 5 - Prelucrarea semnalelor ntr-un sistem cu logic fuzzy Takagi-Sugeno [1]


2.2 Sistemele cu logic Fuzzy Mamdani

Metoda de inferen Mamdani este cea mai des folosit n metodologia fuzzy. Aceast
metod a fost de departe cea dinti metod de control utiliznd logic fuzzy. A fost propus
n 1975 de ctre Ebrahim Mamdani ntr-o ncercare de a controla o combinaie ntre un motor
pe baz de abur i un boiler prin sintetizarea unui set de control cu reguli lingvistice obinut
pe baz de axperimentare. Efortul lui Mamdani a fost bazat pe teoriile lui Lotfi Zadeh
privitoare la algoritmii fuzzy pentru sisteme complexe i procese decizionale. Structura unui
sistem cu logic fuzzy de tip Mamdani este afiat n Figura 7.
Inferena de tip Mamdani, Figura 8, presupune c funciile member de ieire s fie
mulimi fuzzy. Dup finalizarea procesului de agregare, exist o mulime fuzzy pentru
fiecare variabil de ieire care necesit defuzzificare. Este posibil, i n multe cazuri mult mai
eficient, s folosim un singur vrf ca ieire a funciilor member dect un set de mulimi
fuzzy distribuite. Acest tip de ieire poart numele de ieire a funciilor member singleton,
i poate fi gndit c un set fuzzy pre-defuzzificat. Ea mbuntete eficiena procesului de
16

defuzzificare, deoarece simplific modul de calcul cerut de metoda mult mai general
Mamdani, care determin centrul de greutate a unei funcii bidimensionale. Mai degrab
dect integrarea n funcia bidimensional pentru a determina centrul de greutate, putem
folosi o medie ponderat pentru cteva puncte date. [1]










Fig. 6 - Structura unui sistem cu logic fuzzy Mamdani [1]



Fig. 7 - Interpretarea diagramei fuzzy de inferena de tip Mamdani [1]

17

Capitolul 3 - Instrumente software

3.1 Mediul de programare MATLAB

MATLAB (de la Matrix Laboratory) este un mediu de dezvoltare pentru calcul
numeric i analiz statistic care conine limbajul de programare cu acelai nume, creeat de
MathWorks. MATLAB permite manipularea matricilor, vizualizarea funciilor,
implementarea algoritmilor, crearea de interfee i poate interaciona cu alte aplicaii.
Este un limbaj interactiv de nivel superior care permite realizarea unor cerine de
calcul dificile cu o vitez de lucru mai ridicat dect cea a limbajelor de programare
tradiionale, precum C, C++ sau Fortran. Chiar dac e specializat n calcul numeric, exist
pachete care i permit s interacioneze cu motoarele de calcul simbolic gen Maple. Un
pachet adiional, Simulink, ofer posibilitatea de a realiza simulri ale sistemelor dinamice i
mbarcate utiliznd modele matematice. MATLAB e utilizat pe larg n industrie, n
universiti i e disponibil cross-platform, sub diverse sisteme de operare: Windows,
GNU/Linux, UNIX i Mac OS.
MATLAB pune la dispoziia utilizatorului un set de Toolbox-uri specializate pentru
rezolvarea diverselor cerine n cel mai optim mod. Astfel, n cea ce privete preluarea i
procesarea imaginilor avem definite dou toolbox-uri i anume: Image Acquizition i Image
Processing. Acest mediu suport date standard i formate de imagine, incluznd JPEG,
JPEG-2000, TIFF, PNG, HDF, HDF-EOS, FITS, Microsoft Excel, ASCII i fiiere binare.
De asemenea, acesta suport formate de imagini multiband BIP i BIL, precum cele
utilizate de LANDSAT, de exemplu. Nivelul jos de intrri/ieiri i funciile de mapare a
memoriei ofer posibilitatea de a dezvolta rutine client pentru a opera cu orice format de
date. [2]


18

3.2 Image Acquizition Toolbox

Image Acquizition Toolbox permite achiziia videoclipurilor i imaginilor direct n
MATLAB i Simulink de la uniti hardware compatibile PC. Hardware-ul poate fi detectat
automat i configurat n conformitate cu cerinele problemei, previzualiznd achiziia, dup
care are loc achiziia clipurilor video i imaginilor. Avnd suport pentru furnizori multiplii de
hardware, poate folosi un domeniu larg de dispozitive de imagistic, de la camere web
comune sau acaparatori industriali de frame-uri pn la camere tiinifice performane care
confrunt iluminatul slab, vitez ridicat, precum i alte provocri.[4]

3.3 Image Processing Toolbox

Softul Image Processing Toolbox ofer un set comprehensiv de algoritmi-referin
standard i unelte grafice pentru procesarea, analiza, vizualizarea i dezvoltarea imaginilor.
Acesta ofer capacitatea de a restaura imagini afectate de zgomot sau degradate,
mbuntirea imaginilor pentru creterea inteligibitatii, extragerea de caracteristici,
analizarea formelor i texturilor i nregistrarea a dou imagini. Cele mai multe funcii ale
toolboxurilor sunt scrise n limbaj MATLAB deschis, oferind abilitatea inspectrii
algoritmilor, modificrii codului surs, i crerii propriilor funcii client.
Image Processing Toolbox suport un set divers de tipuri de imagini, inclusive cu
gama dinamic ridicat, rezoluii de gigapixeli sau imagini tomografice. Uneltele dinamice
permit explorarea unei imagini, examinarea unei regiuni de pixeli, ajustarea contrastului,
crearea de contururi sau histograme i manipularea regiunilor de interes. De asemenea,
imaginile suportate sunt generate de o gam larg de dispzitive, incluznd camere digitale,
satelii sau senzori de aer, dispozitive de imagistic medical, microscoape, telescoape i alte
dispozitive stintifice. Aceste imagini pot fi vizualizate, analizate i procesate n mai multe
tipuri de date, incluznd puncte flotante cu precizie singular i dual, i ntregi cu semn sau
fr semn pe 8, 16 i 32 de bii.
19

mpreun, cele dou toolboxuri promovate de MATLAB, ofer un mediu complet
pentru dezvoltarea aplicaiilor cu imagini personalizate. [4]

3.4 Afiarea i explorarea imaginilor

Image Procesing Toolbox ramific grafica MATLAB pentru a oferi capabiliti de
afiare personaliizata ale imaginilor. Se pot creea afiaje cu imagini mulltiple ntr-o singur
fereastr, afiaje adnotate cu text i grafice, i crearea de afisaaje specializate precum
histogramele, profilele i conturarea subiectelor.
Adiional funciilor de afiaj, toolboxul dezvolt o gam de unelte interactive pentru
explorarea imaginilor. Se pot obine informaiile de imagine, mrirea i conturarea acesteia
precum i examinarea n detaliu a unei regiuni de pixeli. De asemenea, se poate manipula
interactiv regiuni de interes precum punctele, liniile, pologoanele, elipsele i formele
neregulate sau se pot ajusta contrastele ori masura distanele. [4]

3.5 Procesarea i postprocesarea imaginilor

Acest toolbox ofer algoritmi referinta-standard pentru procesarea i postprocesarea
cerinelor pentru rezolvarea frecvenelor probleme de sistem, precum zgomotul, intervalul
dinamic redus, optica defocalizat i diferena ntre reprezentarea diferit a intrrii respectiv
ieirii unui dispoziv.
Algoritmii de detecie a conturului permit determiarea marginilor unui obiect coninut
ntr-o imagine. Aceti algoritmi includ metodele Sobel, Prewitt, Roberts, Canny i Laplasian
din Gaussian. Metoda Canny care este foarte performan poate determin contururi foarte
slabe fr a fi influen de zgomot.
Algorimii de segmentare a imaginilor determin regiunile de limitare dintr-o imagine.
Exist diverse abordri ale segmentrii imaginilor, incluznd determinarea automat a unui
prag, metode bazate pe contur, i metode bazate pe morfologie precum transformarea
cotiturilor, utillizata des pentru segmentarea obiectelor focalizate.[4]
20

3.6 Proiectarea i simularea sistemelor fuzzy n MATLAB cu
Fuzzy Logic Toolbox

Fuzzy Logic Toolbox extinde mediul tehnic de calcul cu instrumente pentru
proiectarea sistemelor bazate pe logic fuzzy. Interfaa grafic prezint paii de urmat n n
proiectarea sistemelor fuzzy. Sunt puse la dispoziie funcii pentru numeroase metode cu
logic fuzzy comune, inclusiv gruparea fuzzy ori nvarea neurofuzzy adaptiv.
Toolboxul permite modelarea comportamental a sistemelor logice complexe folosind
reguli logice simple, iar apoi implementarea acestor reguli ntr-un sistem de inferen fuzzy.
Acest toolbox poate fi folosit ca un motor de inferen de sine stttor. Alternativ, se pot
folosi blocuri de inferen fuzzy n Simulink, iar simularea sistemului fuzzy se face folosind
un model comprehensiv al ntregului sistem dinamic. [4]

3.7 Utilizarea Fuzzy Logic Toolbox

Acest toolbox ofer interfee grafice ce permit dezvoltarea de sisteme fuzzy clasice i
moduri de recunoatere. Folosind toolboxul se pot realiza sisteme de inferen fuzzy, sisteme
de inferen neurofuzzy adaptive i clasificri fuzzy. Suplimentar, acesta ofer un controller-
bloc fuzzy care poate fi folosit n Simulink pentru modelarea i simularea sistemelor fuzzy de
control logic. Din Simulink se poate genera cod n limbajul de programare C pentru a fi
folosit n aplicaii imbricate ce include logic fuzzy. [4]

3.8 Construirea unui sistem de inferen fuzzy

Inferena fuzzy este o metod de interpretare a vectorului de intrare, bazat pe reguli
definite de utilizator, i asignarea de valori vectorului de ieire. Utiliznd interfeele grafice
de editare i afisre coninute n Fuzzy Logic Toolbox, se poate defini setul de reguli, a
21

funciilor membre i analiza comportamentul unui sistem de inferen fuzzy. Urmtoarele
interfee de editare i afiare sunt oferite: [1][4]
- FIS Editor - afieaz informaii generale despre sistemul de inferen fuzzy









Fig. 8 - Editorul FIS [4]

- Membership Function Editor (Editorul Funciilor Membre) - permite afiarea i editarea
funciilor membre asociate variabilelor de intrare i de ieire a fiierului .FIS









Fig. 9 - Editorul de funcii membre

22

- Rule Editor (Editorul Regulilor) permite afiarea i editarea de reguli fuzzyfolosind unul din
cele trei formate: sintaxa full-English, notaie simbolic concis, sau notaie indexat.
- Rule Viewer (Afiarea Regulilor) permite observarea detaliat a comportamentului unui
fiier .FIS pentru a diagnostica dinamica unor reguli specifice su studia efectul modificrii
variabilelor de intrare.
- Surface Viewer (Afiarea Sprafetelor) genereaz o suprafa tridimensional a doua
variabile de intrare i o ieire a unui .FIS









Figura 10: Afiarea suprafeelor


3.9 Modelarea utiliznd logic fuzzy

Fuzzy Logic Toolbox permite aplicarea tehnicilor de clasificare i neurofuzzy pentru
diverse mdele i clasificarea comportamentelor sistemelor. [4]

Inferena neurofuzzy adaptiv
Utiliznd Sistemul de Inferen Adaptiv Neurofuzzy (ANFIS) se pot forma funcii
membre prin instruirea acestora cu date de intrare/ieire, mai degrab dect specificndu-le
23

manual. Toolboxul folosete un algoritm de post-propagare singular sau n combinaie cu
metoda ptratelor mai mici, capabilizand sistemul fuzzy s nvee pe parcurs de la date.

Clasificarea fuzzy
Fuzzy Logic Toolbox ofer suport pentru metoda de clasificare fuzzy C-means i
pentru clasificarea substractiv precum i tehnici de modelare pentru clasificarea
datelor.Fuzzy C-means este o metod de clasificare a datelor n care fiecare obiect aparine
unei clase ntr-un anumit grad specificat de gradul de apartenena. Este o metod care arta
cum s se grupeze obiectele ce populeaz un spaiu multidimensional ntr-un numr
specificat de clase diferite. Funcia fcm din Fuzzy Logic Toolbox pornete cu o estimare
iniial a centrelor de clase, menite s marcheze locaia medie a fiecrei clase. De obicei,
estimarea iniial acentrelor este cel mai probabil incorect. n plus, fcm atribuie (aleator)
fiecrui obiect un grad de apartenena la fiecare clas. Prin actualizarea iterativ a centrelor
claselor i a gradelo de apartenena a tuturor obiectelor fcm deplaseaz iterativ centrele
claselor n locaiile cele mai potrivite setului de date. Aceast iterare (optimizare) se bazeaz
pe minimizarea unei funcii obiectiv ce reprezint suma distanelor de la fiecare obiect la un
centru de clas, ponderat cu gradul de apartenena al acelui obiect la acea clas. [6]

3.10 Defuzificarea

Operaia de asignare a unei valori reale corespunztoare unei funcii de apartenena se
numete defuzzificare, fiind necesar n numeroase aplicaii n care rezultatele sunt fuzzy.
n esen, defuzzificarea reprezint procesul de transformare a unei mrimi fuzzy ntr-
o mrime crisp. Ieirea unui proces (sistem) fuzzy poate fi - din punct de vedere logic -
reuniunea a dou sau mai multe funcii de apartenena fuzzy, definite pe universul de discurs
al variabilei de ieire. De exemplu, putem presupune c ieirea fuzzy a unui sistem este
alctuit din dou pri: prima parte de form trapezoidal
1
A

i a doua - de form
triunghiular
2
A . n general, ieirea fuzzy A a unui process poate implic mai multe funcii
24

de apartenena fuzzy de diferite forme; n acest caz
1
k
i
i
A A
=
= . Corespunztor conveniei
adoptateexista mai multe metode de defuzzificare, alegerea metodei n aplicaii bazndu-se
pe criterii care in de aprecierea rezultatelor obinute n fiecare aplicaie dat. [1][4][6]

a) Metoda maximului funciei de apartenena. Aceast metod furnizeaz ca rezultat al
defuzzificarii, valoarea crisp x
-
, pentru care x X e ( ) ( )
c c
x x
-
> , x X e (Figura 12).
Dac funcia de apartenena i atinge maximul ntr-un singur punct, valoarea reprezentativ
a funciei de apartenena se consider ca fiind valoarea variabilei ( x
-
) pentru care se atinge
maximul respectiv.



Fig. 11 - Metoda maximului funciei de apartenena [1][4][6]

b) Metoda (abscisei) centrului de mas este una dintre cele mai utilizate metode de
defuzzificare i permite calculul valorii x
-
(Figura 13) conform relaiei:
1
( )
( ( ))
( )
c
c
x xdx
f x
x dx


=
}
}
.
25


Fig. 12 - Metoda centrului de mas [1][4][6]

c) Metoda mediei ponderate este aplicabil pentru funcii de apartenena simetrice, fiind
prezentat n Figur 14 din care rezult c valoarea defuzzificata se obine prin ponderarea
valorilor funciilor de apartenena n punctele de maxim:
1
( )
( ( ))
( )
C
c
x x
f x
x

.

Fig. 13 - Metoda mediei ponderate [1][4][6]

26

d) Metoda mediei maximelor presupune calculul lui x
-
(Figura 15) unde:
1
( ( ))
2
a b
f x

+
=

Fig. 14 - Metoda mediei maximelor [1][4][6]











27

Bibliografie

[1] Gabriel Oltean, Emilia Sipos - Tehnici fuzzy n proiectarea i modelarea circuitelor analogice Ed. U.T.
Press
[2] Chander Mohan - An Introduction to fuzzy set theory and fuzzy logic
[3] M. Ivanovici - Procesarea imaginilor folosind Logica Fuzzy
[4] Image Processing Toolbox - Matlab
[5] Image Acquisition Toolbox - Matlab
[6] www.mathworks.com/products/fuzzylogic/
[7] http://www.bel.utcluj.ro/dce/didactic/tice/03_LogicaMultimiFuzzy.pdf
[8] http://www.bel.utcluj.ro/rom/dce/goltean/tice/04_RationamentAproximativ.pdf

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