Iden icación de imágenes po análisis
de ex u as u ilizando ap endizaje
au omá ico
T abajo de n de g ado
Nicolás Alcaine Camilli
Alejand o Rod íguez Chacón
Depa amen o de A qui ec u a de Compu ado es y Au omá ica
Facul ad de In o má ica
Uni e sidad Complu ense de Mad id
Cu so académico 2018/2019
Iden icación de imágenes po
análisis de ex u as u ilizando
ap endizaje au omá ico
Memo ia p esen ada pa a el abajo de n de g ado de
Ingenie ía In o má ica
Di igida po el Doc o
José Jaime Ruz O iz
Depa amen o de A qui ec u a de Compu ado es y
Au omá ica
Facul ad de In o má ica
Uni e sidad Complu ense de Mad id
Cu so académico 2018/2019
Ag adecimien os
Que emos ag adece los ánimos, la ayuda y el conocimien o ecibidos a
una g an can idad de pe sonas. Sin ellas, es e abajo no hab ía sido posible.
En p ime luga , que emos e e i nos a nues o u o , José Jaime Ruz
O iz, po pe mi i nos ealiza es e TFG, po su buena e, po su paciencia
y po se una uen e de es ímulo y conocimien o ines imable.
También que emos da las g acias a nues os amilia es, compañe os en
la acul ad y amigos. Ellos han sido un sos én en e a la ad e sidad, pues
siemp e nos han ansmi ido sus mejo es deseos y nos han o ecido su ayuda
incondicional.
No nos ol idamos ampoco de odos los p o eso es, que, du an e la ca-
e a, g acias a su labo docen e, nos han p epa ado pa a a on a el u u o
con la mayo de las segu idades.
Po úl imo, debemos ag adece a odos aquellos au o es, pasados o p e-
sen es, que, bien a a és de la publicación de lib os o a ículos, o bien me-
dian e el desa ollo de la écnica, han c eado el sedimen o que hace posible,
no solo es e abajo, sino cualquie o o abajo, ac ual o u u o.
Resumen
En la ac ualidad, el econocimien o de obje os en imágenes a a és del
p ocesamien o digi al y el ap endizaje au omá ico es un campo que se en-
cuen a en cla o auge den o del mundo mode no, es o es así has a el pun o
de que la u ilización de las ecnologías de i adas de es a á ea de in es i-
gación han gene ado múl iples dilemas é icos en la sociedad ac ual. Pa a
pode ase e a es a a mación no enemos más que ememo a las dis in as
polémicas causadas, ecien emen e, po los sis emas de econocimien o acial.
Den o del p ocesamien o digi al po ap endizaje au omá ico encon a-
mos el análisis de ex u a como una de las a ian es más p ominen es en el
o ganig ama de es e ex enso campo. Y p ecisamen e es e se á el ema un-
damen al de nues o p oyec o, el cual desa olla emos y p o undiza emos a
lo la go de es as páginas.
Po ende, nues o obje i o pa a es e p oyec o se á implemen a un en-
o no ope a i o que acili e el desa ollo de di e en es aplicaciones de cla-
sicación de ex u as y que pe mi a ensayos con di e en es pa áme os y
congu aciones. Además, aplica emos el sis ema, a modo de ensayo p ác ico,
sob e el p oblema de iden icación de la neumonía a pa i de adiog a ías
con ayos X.
Pa a lle a a cabo es o, el p oyec o se di idi á en a ias pa es di e en-
ciadas:
In es igación y es udio p e io.
Desa ollo de la aplicación en es módulos uncionales.
Tes eo pa a la búsqueda de posibles e o es de implemen ación y bús-
queda de la congu ación óp ima pa a el p oblema de la neumonía.
Resul ados y conclusiones.
ii
Abs ac
Nowadays, he ecogni ion o objec s in images h ough digi al p oces-
sing and machine lea ning is a eld ha is clea ly booming in he mode n
wo ld, his is so o he poin ha he use o echnologies de i ed om his
a ea o esea ch has gene a ed mul iple e hical dilemmas in oday's socie y.
To be able o asse his a ma ion we ha e only o emembe he die en
con o e sies caused, ecen ly, by he acial ecogni ion sys ems.
Wi hin he digi al p ocessing by machine lea ning we nd ex u e analy-
sis as one o he mos p ominen a ian s in he o ganiza ion cha o his
ex ensi e eld. And p ecisely his will be he undamen al heme o ou p o-
jec , which we will de elop and deepen h oughou his pages.
The e o e, ou goal o his p ojec will be o implemen an ope a ing en-
i onmen ha acili a es he de elopmen o die en ex u al classica ion
applica ions and allows es ing wi h die en pa ame e s and congu a ions.
In addi ion, we will apply he sys em, as a p ac ical es , on he p oblem o
iden i ying pneumonia om x- ays.
To ca y ou his, he p ojec will be di ided in o se e al die en ia ed
pa s:
Resea ch and p e ious s udy.
De elopmen o he applica ion in h ee unc ional modules.
Tes ing o sea ch o possible implemen a ion e o s and sea ch o he
op imal congu a ion o he pneumonia p oblem.
Resul s and conclusions.
ix
x i Índice
3. Me odología de abajo 23
3.1. Googled i e............................ 24
3.2. Googlehangou s ......................... 24
3.3. Gi lab............................... 25
3.4. Gi K aken............................. 25
4. Iden icación de análisis po ex u a u ilizando ap endizaje
au omá ico 27
4.1. Funcionamien o gene al del sis ema . . . . . . . . . . . . . . . 27
4.2. Módulo 1: Toma de mues as . . . . . . . . . . . . . . . . . . 27
4.2.1. Componen es del módulo . . . . . . . . . . . . . . . . 30
4.3. Módulo 2: Ap endizaje de la SVM . . . . . . . . . . . . . . . 30
4.3.1. Componen es del módulo . . . . . . . . . . . . . . . . 31
4.4. Módulo 3: Clasicación de mues as con la SVM . . . . . . . 33
4.4.1. Componen es del clasicado . . . . . . . . . . . . . . 36
5. P uebas y e aluación 37
5.1. In oducción............................ 37
5.2. Elp oblema............................ 38
5.3. El conjun o de da os . . . . . . . . . . . . . . . . . . . . . . . 38
5.4. Elexpe imen o .......................... 39
6. Conclusiones y abajo u u o 43
6.1. Conclusión............................. 43
6.2. Conclusion............................. 44
6.3. T abajo u u o .......................... 46
6.3.1. U iliza o os mé odos de análisis . . . . . . . . . . . . 46
6.3.2. Velocidad de ejecución . . . . . . . . . . . . . . . . . . 47
6.3.3. O os abajos u u os . . . . . . . . . . . . . . . . . . 48
7. Con ibuciones indi iduales 49
7.1. Nicolás Alcaine Camilli . . . . . . . . . . . . . . . . . . . . . . 49
7.2. Alejand o Rod íguez Chacón . . . . . . . . . . . . . . . . . . 50
8. Apéndice A: Ejemplo de ejecución 53
9. Apéndice B: Manual de usua io 63
Bibliog a ía 65
Índice de gu as
2.1. Ejemplo de escala de g ises. . . . . . . . . . . . . . . . . . . . 10
2.2. Ejemplo de como esul a ía la ma iz de co-ocu encia de dis-
ancia 1 y di ección es e. . . . . . . . . . . . . . . . . . . . . . 11
2.3. Ma iz de co-ocu encia (1,0) pa a la imagen de p ueba. . . . 11
2.4. No maliación de la ma iz. . . . . . . . . . . . . . . . . . . . . 12
2.5. Ca ac e ís icas implemen adas en el p oyec o. Siendo P i,j la
p obabilidad de co-ocu encia de los alo es de g is i y j, pa a
unadis anciadada........................ 13
2.6. Concep o de la SVM. . . . . . . . . . . . . . . . . . . . . . . . 14
2.7. Hipe plano de sepa ación. . . . . . . . . . . . . . . . . . . . . 15
2.8. Hipe plano de sepa ación máxima. . . . . . . . . . . . . . . . 16
2.9. Clases no sepa able linealmen e. . . . . . . . . . . . . . . . . . 17
2.10.Ke nellineal. ........................... 18
2.11. Ke nel polinómico. . . . . . . . . . . . . . . . . . . . . . . . . 18
2.12. Ke nel gaussiano. . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1. Vis a de las amas del p oyec o desde Gi K aken. . . . . . . . 25
4.1. Vis a del módulo de oma de mues as. . . . . . . . . . . . . . 28
4.2. Ejemplo de mues eo. . . . . . . . . . . . . . . . . . . . . . . . 29
4.3. Diag ama de bloques del sis ema . . . . . . . . . . . . . . . . 30
4.4. Vis adelmódulo2........................ 33
4.5. Vis adelmódulo3........................ 34
4.6. Ejemplo de esul ado del ba ido . . . . . . . . . . . . . . . . 35
4.7. Comando de acceso a libs m . . . . . . . . . . . . . . . . . . . 36
5.1. Resul ados de las p uebas . . . . . . . . . . . . . . . . . . . . 39
5.2. Ba ido esul an e de la congu ación 13 . . . . . . . . . . . . 41
5.3. Ba ido esul an e de la congu ación 13 . . . . . . . . . . . . 42
5.4. Ba ido esul an e de la congu ación 13 . . . . . . . . . . . . 42
6.1. Ejemplo de geome ía ac al en la na u aleza. . . . . . . . . . 46
x ii
x iii Índice de igu as
6.2. Compa a i a de endimien o en la decon olución de una ima-
gen, implemen ada sob e una CPU, mul ip og amada sob e
ocho núcleos y en una GPU median e CUDA. [8] . . . . . . . 47
8.1. ................................... 53
8.2. ................................... 54
8.3. ................................... 54
8.4. ................................... 55
8.5. ................................... 56
8.6. ................................... 56
8.7. ................................... 57
8.8. ................................... 57
8.9. ................................... 58
8.10.................................... 58
8.11.................................... 59
8.12.................................... 60
8.13.................................... 60
8.14.................................... 61
Índice de Tablas
xix
Capí ulo 1
In oducción
Resumen:
en es e capí ulo se expone la mo i ación que nos ha lle ado
a desa olla es e p oyec o, así como los obje i os iniciales del mismo.
1.1. Mo i ación
Desde los inicios de la in o má ica siemp e se ha a ado de c ea máqui-
nas, cada ez más complejas, que ue an capaces de emula algunas de las
ca ac e ís icas, unciones y mane as de p ocesa la ealidad p opias del se
humano. En es e sen ido, las compu ado as end ían a se un con enedo del
conocimien o del homb e sal o po el hecho de que disponen de una capaci-
dad de cómpu o inni amen e supe io . Se ían un auxilia que posibili a ía
el descub imien o de nue os a ances cien ícos y a ilugios écnicos. En pa-
lab as de Vanne a Bush:
"
Cie amen e, se debe á asegu a la delegación en las máquinas del a duo
abajo que equie e la compleja y de allada manipulación ma emá ica de los
da os, si deseamos que el ce eb o de esos cien ícos quede lib e pa a canali-
za lo a a eas mucho más impo an es que la me a ans o mación epe i i a
de los da os según eglas p ees ablecidas
"[3].
Uno de los campos de la in o má ica donde más palpable se hace lo dicho
y que más se ha expandido en los úl imos iempos es la isión po o dena-
do , la cual deni íamos como "
una disciplina cien íca que incluye mé odos
pa a adqui i , p ocesa , analiza y comp ende las imágenes del mundo eal
con el n de p oduci in o mación numé ica o simbólica pa a que puedan se
a ados po un o denado
"
1
. Tal y como los humanos usamos nues os ojos
1
h ps://es.wikipedia.o g/wiki/Visión_a icial
1
2
Capí ulo 1.
In oducción
y ce eb os pa a comp ende el mundo que nos odea.
Y es den o del á ea de la isión po compu ado donde encon amos
el campo del econocimien o de pa ones g ácos, que a su ez, engloba el
análisis de ex u as como una de las amas más p ominen es, ya que es la
esponsable de mul i ud de hallazgos y aplicaciones an impo an es como:
Diagnós ico de cánce de piel y lesiones pigmen adas benignas (G een e al.,
1991), ecupe ación de imágenes po colo y ex u a (Vel kamp y Hagedoo n,
1999), diagnós ico de mioca di is (Fe deghini e al., 1991), de ección de ca-
ac e ís icas de los hielos pola es (Seph on e al., 1994), clasicación de las
ocas olcánicas po ex u a (He nández, 1995), clasicación de o maciones
ege ales (Gil e al., 1997a), iden icación de pe sonas median e la ex u a
del I is y de ección de esiduos en de e minados medios u ilizando cáma as
óp icas.
Cla o es á que implemen a odas es as he amien as no es una a ea
sencilla. Pa a log a lo, hay que apoya se en écnicas de clasicación basadas
en ap endizaje au omá ico, como edes neu onales o, en nues o caso, SVM;
y en écnicas de ADI (Análisis Digi al de Imágenes), las cuales es án ela-
cionadas con la ex acción de mediciones ú iles, da os o in o mación de un
campo de la imagen u ilizando disposi i os y sis emas au omá icos.
1.2. Obje i os
El obje i o p incipal de es e TFG es implemen a un analizado de ex-
u as que sea capaz de iden ica la p esencia de un de e minado ma e ial
en una imagen an solo a eniéndonos a su ex u a. No end emos en cuen a
o as ca ac e ís icas como el colo y la o ma del ma e ial.
Pa a ello hab á, en p ime luga , que analiza digi almen e las imáge-
nes de nues o da ase y ob ene mues as que nos si an pos e io men e
pa a en ena nues a máquina y clasica las imágenes. Es a a ea se com-
ple a á haciendo uso de mé odos es adís icos, basados en el his og ama de
la ma iz de g ises de la imagen; de la ma iz de co-ocu encia de segundo
o den, de i ada del his og ama de g ises; y de 14 desc ip o es de ácil cálculo.
En segundo luga , hab emos de ins ancia una SVM (Suppo ec o ma-
chine), pa a en ena y clasica , que eciba como en ada los ec o es de
ca ac e ís icas de las mues as ecogidas en la p ime a pa e, o las p opias
componen es de la ma iz de co-ocu encia .
Po úl imo, y como complemen o u obje i o secunda io, aplica emos o-
1.3. Visión gene al del documen o 3
do el sis ema sob e un caso conc e o de la ealidad y ealiza emos un es udio
sob e la calidad de los esul ados ob enidos.
1.3. Visión gene al del documen o
El documen o es a á di idido en los siguien es capí ulos que se mues an
a con inuación:
Capí ulo 2: se explica á odo el es udio p e io a la implemen ación del
sis ema.
Capí ulo 3: en es e apa ado explica emos odo lo elacionado con la
ges ión del p oyec o y la adminis ación del abajo.
Capí ulo 4: desc ibi emos el sis ema en su o alidad a pa i de un
análisis de allado de cada una de sus pa es.
Capí ulo 5: compo amien o del sis ema sob e un p oblema conc e o.
Capí ulo 6: conclusiones del abajo y p oyec os u u os.
Capí ulo 7: se expond án las con ibuciones de cada miemb o del equi-
po al esul ado nal.
Apéndice A: ejemplo de ejecución de la aplicación.
Apéndice B: manual de usua io.
4
Capí ulo 1.
In oducción
1.4. Mo i a ion
Since he beginning o compu ing, we ha e always ied o c ea e inc ea-
singly complex machines ha we e able o emula e some o he cha ac e-
is ics, unc ions and ways o unde s and p ope ly eali y as human being
would. In his sense, compu e s would become a con aine o he knowledge
o man, excep by he ac ha hey ha e an inni ely supe io compu ing
capaci y. They would be an auxilia y ha would enable he disco e y o new
scien ic ad ances and echnical de ices. In he wo ds o Vanne a Bush:
"
Relie mus be secu ed om labo ious de ailed manipula ion o highe
ma hema ics as well, i he use s o i a e o ee hei b ains o some hing
mo e han epe i i e de ailed ans o ma ions in acco dance wi h es ablished
ules.
"[3].
One o he elds o compu e science whe e wha has been said is mos
palpable and has been expanded he mos in ecen imes is compu e ision,
which we would dene as "
an in e disciplina y scien ic eld ha deals wi h
how compu e s can be made o gain high-le el unde s anding om digi al
images o ideos. F om he pe spec i e o enginee ing, i seeks o au oma e
asks ha he human isual sys em can do.
"
2
.
And i is wi hin he a ea o compu e ision whe e we nd he eld o
ecogni ion o g aphic pa e ns, which, in u n, encompasses he analysis
o ex u es as one o he mos p ominen b anches, since i is esponsible
o a mul i ude o ndings and applica ions as impo an as: skin cance
and benign pigmen ed lesions diagnosis(G een and ano he s,1991), eco e y
o images by colo and ex u e (Vel kamp and Hagedoo n,1999), myoca di-
is diagnosis(Fe deghini and o he s, 1991), de ec ion o pola ice cha ac e-
is ics(Seph on and o he s, 1994), classica ion o olcanic ocks by ex u-
e(He nández, 1995), classica ion o plan o ma ions(Gil and o he s, 1997),
iden ica ion o people h ough he ex u e o I is and de ec ion o was e in
ce ain a ea using op ical came as.
O cou se, implemen ing all hese ools is no a simple ask. To achie-
e his, we mus ely on classica ion echniques based on machine lea ning,
such as neu al ne wo ks o , in ou case, SVM; and in he echniques o digi al
image análisis which a e ela ed o he ex ac ion o use ul measu emen s,
da a o in o ma ion om a eld o he image using de ices and au oma ic
sys ems.
2
h ps://en.wikipedia.o g/wiki/Compu e _ ision
1.5. Objec i es 5
1.5. Objec i es
The main objec i e o his pape is o implemen a ex u e analyze able
o iden i y he p esence o a ce ain ma e ial in an image only by adhe ing o
i s ex u e. We will despise o he cha ac e is ics such as he colo and shape
o he ma e ial.
To do his, we will s ha e o digi ally analyze he images o ou da-
ase and ob ain samples ha will se e us la e o ain ou machine and
classi y he images. This ask will be comple ed using s a is ical me hods,
based on he his og am o he g ay ma ix o he image; by he second-o de
co-occu ence ma ix, de i ed om he g ay his og am; and 14 easily calcu-
la ed desc ip o s.
In second e m, we will ha e o ins an ia e an SVM (Suppo ec o ma-
chine), o ain and classi y, ha ecei es as inpu he cha ac e is ics ec o s
o he samples collec ed in he s pa , o he own componen s o he co-
ocu ence ma ix.
Finally, as a complemen o seconda y objec i e, we would like o apply
he whole sys em on a conc e e case o eali y and ealize a small s udy on
he quali y o he esul s ob ained.
1.6. Gene al ision o he documen
The documen will be di ided in o he ollowing chap e s:
Chap e 2: he en i e s udy p e ious o he implemen a ion o he sys-
em.
Chap e 3: in his sec ion we will explain e e y hing ela ed o he
p ojec managemen and adminis a ion.
Chap e 4: we will desc ibe he sys em a i s en i e y om a de ailed
analysis o each o i s pa s.
Chap e 5: beha io o he sys em on a specic p oblem.
Chap e 6: conclusions o wo k and u u e p ojec s.
Chap e 7: he con ibu ions o each eam membe o he nal esul .
Appendix A: execu ion example.
Appendix B: use manual.
12
Capí ulo 2.
T abajo p e io
Figu a 2.4: No maliación de la ma iz.
enemos así el cálculo de ambos sen idos en una misma di ección, aho a
enemos: es e-oes e, no e-su , no es e-su oes e, no oes e-su es e). Es o se
consigue sumando la ma iz de coocu encia calculada en una di ección a su
aspues a.
Ya que enemos la ma iz simé ica, lo siguien e y lo úl imo que hay
que hace es exp esa la como ma iz de p obabilidad, no maliza la al como
mues a la Figu a 2.4.
Una ez que enemos la ma iz no malizada, pod emos u iliza la pa a ob-
ene medidas es adís icas, que desc iban la ex u a. Reco demos que, una
ez que se denan es as ca ac e ís icas, los bloques de imágenes se pue-
den clasica u ilizando una de las múl iples écnicas de econocimien o de
pa ones. Ha alick denió es as 14 ca ac e ís icas: Segundo momen o angu-
la , con as e, co elación, a ianza, momen o de di e encia in e sa, suma
de p omedios, suma de a ianzas, suma de en opía, en opía, di e encia de
a ianza, di e encia de en opía, medidas de in o mación de la co elación y
máximo coecien e de co elación. Cada ca ac e ís ica nos da á in o mación
dis in a, y se á más ele an e dependiendo de la na u aleza de la ex u a.
Las ca ac e ís icas que noso os hemos implemen ado pa a o ma los
ec o es de clasicación son las siguien es:
2.3. SVM 13
Figu a 2.5: Ca ac e ís icas implemen adas en el p oyec o. Siendo P i,j la
p obabilidad de co-ocu encia de los alo es de g is i y j, pa a una dis ancia
dada
2.3. SVM
Es bien sabido que exis en una g an can idad de algo i mos de clasi-
cación, como las edes neu onales o la eg esión logís ica, pa a clasica
conjun os de da os. La mayo ía de ellos uncionan de una o ma muy simi-
14
Capí ulo 2.
T abajo p e io
la , po lo que hay que ene un conocimien o muy ele ado de los ma ices
que apo a cada algo i mo pa a elegi el co ec o en cada momen o. La ma-
yo ía de las eces la a iable más c í ica de un p oblema se á el amaño de
su conjun o de da os; la máquina de ec o de sopo e es una de las écnicas
que más po encial puede apo a en es a si uación.
Una desc ipción bas an e ap oximada de cómo unciona una SVM se ía:
dado un conjun o de pun os, subconjun o de un conjun o mayo (espacio),
en el que cada uno de ellos pe enece a una de dos posibles ca ego ías, un
algo i mo basado en SVM cons uye un modelo capaz de p edeci si un pun o
nue o (cuya ca ego ía desconocemos) pe enece a una ca ego ía o a la o a.
4
Pa a comple a es a denición, es necesa io deci que la idea de ás de la
máquina es la de clasica un conjun o de da os de cualquie dimensiona-
lidad, pa ame izado ma emá icamen e, buscando el hipe plano que di ide
al conjun o de da os en las clases dadas. Siemp e hab á muchos hipe planos
que clasiquen a ese conjun o de da os de o ma más o menos co ec a. Po
an o, la cla e es encon a aquel que haga una mejo clasicación, es deci ,
aquél que deje un mayo ma gen en e ambas clases. Es a úl ima es la azón
po la que, a eces, se conoce a las SVM como clasicado es de ma gen má-
ximo.
Figu a 2.6: Concep o de la SVM.
Ad e imos que en es e abajo no se p o undiza á en el aspec o ma e-
má ico, pe o puede encon a se una desc ipción de allada en el lib o
Suppo
Vec o Machines Succinc ly by Alexand e Kowalczyk
[7].
4
h ps://es.wikipedia.o g/wiki/Máquinas_de_ ec o es_de_sopo e
2.3. SVM 15
2.3.1. Maximal Ma gin Classie e Hipe plano
En un espacio p-dimensional, un hipe plano se dene como un subespacio
plano y a ín de dimensiones
p−1
. El é mino a ín signica que el subespa-
cio no iene po qué pasa po el o igen. [11] En el caso de un espacio de
dimensión uno el hipe plano se á un pun o (di ide una línea en dos). Si lo
que enemos es un espacio de dimensión dos, un plano, en onces el hipe -
plano se á una ec a. Es o es gene alizable a cualquie dimensión median e
la siguien e ecuación:
β0+β1x1+β2x2+... +βpxp= 0
Y es p ecisamen e es a ecuación la que nos in e esa pa a conoce el un-
cionamien o del SVM. Simplemen e:
β0+β1x1+β2x2+... +βpxp<0
o bien
β0+β1x1+β2x2+... +βpxp>0
Vemos como el hipe plano di ide el espacio en dos mi ades, de al o -
ma que dependiendo del signo del esul ado de esol e la ecuación pa a un
pun o X implica que es e pun o sea clasicado en una u o a clase. Lo dicho
se comp ende á mucho mejo median e un ejemplo.
En la siguien e imagen con emplamos un espacio bidimensional que es
di idido median e un hipe plano, en es e caso una ec a. La ecuación que
desc ibe es a ec a es
1 + 2x1+ 3x2= 0
. Así emos que al á ea azul la
con o ma án los pun os que cumplen:
1 + 2x1+ 3x2>0
, mien as que la
egión oja se á aquella que se o me con los pun os que sa is acen la misma
ecuación con signo con a io.
Figu a 2.7: Hipe plano de sepa ación.
16
Capí ulo 2.
T abajo p e io
Pa a esol e los p oblemas de clasicación con SVM hay que encon a
el hipe plano óp imo de sepa ación o
maximal ma gin hype plane
, es deci
aquel que se encuen a más alejado de odas las obse aciones de en ena-
mien o. Pa a ob ene lo, se iene que calcula la dis ancia pe pendicula de
cada obse ación a un de e minado hipe plano. La meno de es as dis ancias
de e mina el ma gen máximo de sepa ación que hab á que op imiza has a
llega al
maximal ma gin hype plane
.
Figu a 2.8: Hipe plano de sepa ación máxima.
La imagen an e io mues a el
maximal ma gin hype plane
pa a un con-
jun o de da os de en enamien o. Las es obse aciones equidis an es espec-
o al
maximal ma gin hype plane
se encuen an a lo la go de las líneas discon-
inuas que indican la anchu a del ma gen. A es as obse aciones se les conoce
como ec o es sopo e, ya que son ec o es en un espacio p-dimensional y
sopo an (denen) el
maximal ma gin hype plane
. Cualquie modicación en
es as obse aciones ( ec o es sopo e) conlle a cambios en el
maximal ma -
gin hype plane
[11].
2.3.2. Clasicado de ec o sopo e o So Ma gin SVM
Siemp e que clasicamos con SVM nos gus a ía encon a un hipe plano
que ue a capaz de hace una sepa ación pe ec a del conjun o de da os. Pe-
o, a eces, es a sepa ación o bien no es posible, o bien es con ap oducen e
a la ho a de gene aliza el p oblema, al pasa de en enamien o a clasicación.
En el p ime caso se puede expe imen a con dis in os ipos de Ke nels
pa a adap a "la o ma"del hipe plano a "la nube de pun os". En el segundo
caso es amos an e un p oblema de sob eajus e(o e ing), que solo se solu-
2.3. SVM 17
Figu a 2.9: Clases no sepa able linealmen e.
ciona á usando un pa áme o C que apo e cie a exibilidad y
con ole la
compensación en e e o es de en enamien o y los má genes ígidos, c ean-
do así un ma gen blando que pe mi a algunos e o es en la clasicación a la
ez que los penaliza
5
. Cuan o mayo es el alo de C mayo es el ajus e.
2.3.3. Ke nels
En el pun o an e io decíamos que, en ocasiones, la sepa ación en e dos
conjun os de da os es in iable y que pa a ello necesi a íamos con a con o as
o mas de hipe plano que no clasiquen de o ma lineal. Es o se log a con la
u ilización de dis in os ipos de ke nel.
Un ke nel es una unción que de uel e el esul ado del
do p oduc
en e
dos ec o es ealizado en un nue o espacio dimensional dis in o al que se
encuen an los ec o es. Aunque no se ha en ado en de alle en las ó mu-
las ma emá icas empleadas pa a esol e el p oblema de op imización, es a
con iene un
do p oduc
. Si se sus i uye es e
do p oduc
po un ke nel, se
ob ienen di ec amen e los ec o es sopo e (y el hipe plano) en la dimensión
co espondien e al ke nel [11]. Exis en mul i ud de ke nels dis in os, algunos
de los más u ilizados y que se emplean en el abajo son:
Ke nel lineal
(Figu a 2.9):
K(x, x0) = x∗x0
. Si se emplea un Ke nel
lineal, el clasicado
Suppo Vec o Machine
ob enido es equi alen e
al
Suppo Vec o Classie
.
5
h ps://es.wikipedia.o g/wiki/Máquinas_de_ ec o es_de_sopo e
18
Capí ulo 2.
T abajo p e io
Figu a 2.10: Ke nel lineal.
Ke nel polinómico
(Figu a 2.10):
K(x, x0) = (x∗x0+c)d
. Cuando
se emplea d = 1 y c = 0, el esul ado es el mismo que el de un
ke nel
lineal. Si d >1, se gene an lími es de decisión no lineales, aumen ando
la no linealidad a medida que aumen a d. No suele se ecomendable
usa d >5 po p oblemas de
o e ing
.
Figu a 2.11: Ke nel polinómico.
Ke nel gaussiano
(Figu a 2.11):
K(x, x0) = exp(−γ||x−x0||2)
. El
alo de
γ
con ola el compo amien o del ke nel, cuando es muy pe-
queño el modelo nal es equi alen e al del ke nel lineal, a medida que
aumen a su alo , ambién lo hace la exibilidad del modelo.
2.4. Tecnologías ele an es 19
Figu a 2.12: Ke nel gaussiano.
2.4. Tecnologías ele an es
2.4.1. Py hon
Py hon es un lenguaje de al o ni el de los años 90 c eado po Guido an
Rossum que en los úl imos años ha ganado bas an e popula idad. Uno de sus
g andes a ac i os es que in en a ace ca se al lenguaje na u al, en a izando
la legibilidad y limpieza del código, pe mi iendo que sea ela i amen e sen-
cillo ealiza desa ollos usando dicho lenguaje.
También es un lenguaje in e p e ado que usa ipado dinámico y esolu-
ción dinámica de nomb es. Sopo a di e en es pa adigmas, pe mi iendo que
se abaje en p og amación impe a i a, uncional y o ien ada a obje os, lo
que le da una g an e sa ilidad.
Py hon con iene una amplia lib e ía es ánda , y un g an núme o de mó-
dulos que le dan una g an can idad de he amien as pa a abaja en di e-
en es ámbi os, siendo uno de los más des acados el análisis de da os, lo cual
hace que sea un lenguaje ecu en e en el desa ollo de aplicaciones cien í-
cas.
Aunque nalmen e no hemos usado las biblio ecas de Py hon pa a im-
plemen a las pa es de ap endizaje au omá ico de la máquina de ec o de
sopo e, mo i ados po su acilidad de uso y po la exis encia de he amien-
as pa a la elabo ación de in e aces, sí lo hemos empleado en la cons ucción
20
Capí ulo 2.
T abajo p e io
de los módulos 1 y 3.
2.4.2. Pillow
Pillow es una lib e ía OpenSou ce pa a Py hon que añade una g an can-
idad de unciones de uso común pa a abaja con imágenes, como pueden
se : aplicación de l os, edimensionado de imágenes y cambios de o ma o.
Es una he amien a muy impo an e de ca a al p oyec o, dado que el
p ime y e ce módulo ealizan un análisis donde se u ilizan dis in as ope-
aciones pa a simplica la ex acción de da os sob e las múl iples imágenes.
2.4.3. NumPy y SciPy
NumPy es una lib e ía OpenSou ce pa a Py hon que añade uncionali-
dades pa a abaja con ec o es y ealiza calculos cien icos. Basada en
la lib e ía Nume ic, se c eó pa a ene un código de ácil man enimien o,
op imizado pa a da mayo eciencia, y exible en su uso.
NumPy nos apo a di e en es es uc u as, más ecien es que las es ánda
de Py hon, pa a encapsula da os como ec o es o ma ices(como es el caso
de la ma iz de Co-Ocu encia).
SciPy es una lib e ía OpenSou ce pa a Py hon que añade una g an co-
lección de algo i mos ma emá icos y p opo ciona a los usua ios una in e az
capaz de p ocesa da os con la misma ecacia que he amien as como Ma lab
u Oc a e.
2.4.4. PyQ
PyQ es un binding de la biblio eca g áca Q pa a el lenguaje de p o-
g amación Py hon. Fue desa ollado po Ri e bank Compu ing.
Q es un amewo k que pe mi e desa olla aplicaciones mul ipla a o ma
e in e aces g ácas. Desa ollado en 1992, nace pa cialmen e en un desa ollo
de código abie o, pe o no comple amen e lib e. Fue u ilizado en el desa o-
llo de KDE, ac ualmen e uno de los esc i o ios más popula es de GNU/Linux.
2.4. Tecnologías ele an es 21
2.4.5. Ja aFX
Ja aFX es una pla a o ma so wa e con la capacidad de p oduci aplica-
ciones web p o is as de las ca ac e ís icas de una aplicación de esc i o io.
Es la al e na i a a Swing más usada debido a la exibilidad de es ilos en
las componen es, lo cual se consigue median e el empleo de hojas css. Po
es a azón, hemos op ado po Ja aFX pa a p oduci una in e az dinámica
pa a el módulo 2 que sea capaz de adap a sus es ilos en las di e en es pla-
a o mas, y que además sea lo más simple y ampliable posible.
Cabe des aca que, al emplea lenguaje Ja a, ha sido bas an e sencillo
comunica se en e p ocesos de la e minal y ealiza llamadas a p og amas
de libSVM, consiguiendo que un p oceso hijo sea espe ado po su pad e en
sólo unas pocas líneas de código.
2.4.6. libSVM
libSVM es una de las lib e ías en código abie o más conocidas pa a a-
baja con máquinas de ec o sopo e. Su licencia es BSD, po lo que hemos
podido usa su código C pa a compila nues as p opias e siones de los p o-
g amas de en enamien o y p edicción.
Es as lib e ías con ienen un amplio epe o io de APIs en di e en es len-
guajes, po ejemplo en Ja a, C, C++, Py hon, R, e c. También ae sopo e
pa a apps de and oid.
En e sus uncionalidades des acan los clasicado es de máquina sopo e
(SVC), eg esiones (SVR) y es imación de una dis ibución (SVM de una cla-
se). Pa a nues o abajo nos en ocamos exclusi amen e en los clasicado es
de máquina sopo e, en especial C-SVC, que abaja con el hipe -pa áme o
C, explicado an e io men e en la eo ía.
O a ca ac e ís ica muy impo an e, es que con iene un sc ip llamado
g id.py, que se emplea pa a abaja con alidación c uzada. La alidación
c uzada es una écnica capaz de consegui esul ados óp imos de los alo es
C y gamma pa a un de e minado caso de p ueba con sus p edic o es.
En cuan o a ke nels, libSVM sopo a el ke nel lineal, polinomial, adial
(gaussiano) y el ke nel sigmoide. En la pa e p ác ica e emos que los ke nels
más ú iles pa a nues as clasicaciones se án el ke nel polinomial y el adial.
28
Capí ulo 4.
Iden icación de análisis po ex u a u ilizando ap endizaje
au omá ico
condicionado po el a amien o que se le haya dado a las imágenes en es e
componen e.
Figu a 4.1: Vis a del módulo de oma de mues as.
El módulo de oma de mues as cuen a con dos "modalidades"pa a ea-
liza el análisis sob e la imagen: análisis es adís ico y análisis po ma iz
de co-ocu encia, cons uida al y como indicamos en el capí ulo 2 de es a
memo ia . En caso de que e ealiza un análisis es adís ico, el usua io selec-
ciona á ESTADÍSTICOS, las ca ac e ís icas que desee aplica a la imagen y
p ocede á con el mues eo. Si lo que que emos es ealiza un análisis sob e
la ma iz de co-ocu encia, selecciona emos MATRIZ CO-OCURRENCIA,
las ca ac e ís icas deseadas, la di ección de la co-ocu encia (es necesa ia
al menos una di ección), un escalado de g ises(cada mues a se á ans o -
mada a una ma iz de g ises), una dis ancia y, nalmen e, se p ocede á al
mues eo. De mane a opcional se pod á ma ca la opción .
A
ñadi ma iz de
co-ocu encia como ca ac e ís ica", con ella pod emos añadi cada compo-
nen e de la ma iz de co-ocu encia como una componen e más del ec o de
ca ac e ís icas de cada mues a analizada. En esumen podemos inco po a
una es a egia más (comúnmen e u ilizada en es udios p eceden es) pa a ob-
ene in o mación de las imágenes.
Ambas modalidades ope a án sob e las ca ac e ís icas denidas en el ca-
pí ulo 2, sin emba go, la p ime a de ellas analiza á las mues as aplicando
4.2. Módulo 1: Toma de mues as 29
l os y cálculos di ec amen e sob e los da os de las ma ices de las mues-
as, mien as que la segunda calcula á, en p ime luga , las ma ices de
co-ocu encia de las dis in as mues as, con la congu ación seleccionada
pa a dichas ma ices, y aplica á las ca ac e ís icas sob e ellas, en ez de di-
ec amen e sob e las mues as.
Finalmen e queda el mues eo, que consis i á en selecciona una de las
dos clases de mues a (posi i a o nega i a), e i clickeando sob e la imagen
pa a que se ma quen las mues as. Una ez e minado el mues eo se ealiza
el p ocesado de cada mues a y se almacena en una es uc u a de da os.
Figu a 4.2: Ejemplo de mues eo.
Reco damos que la idea de es a aplicación es c ea un un en o no ope-
a i o que acili e el desa ollo de di e en es aplicaciones de clasicación de
ex u as, pe mi iendo ensayos con di e en es pa áme os. Como consecuen-
cia de ello, y al se un módulo de oma de mues as manual, con el obje i o
de agiliza es a a ea, se ha a ado de implemen a odo ipo de acilidades
pa a la pe sona que in e ac úa con la aplicación: p ecauciones pa a que las
mues as no se sob epongan, es icciones pa a que las mues as no excedan
los bo des, posibilidad de ob ene mues as sob e dis in as imágenes, e c.
30
Capí ulo 4.
Iden icación de análisis po ex u a u ilizando ap endizaje
au omá ico
4.2.1. Componen es del módulo
La elección de Py hon pa a el Clasicado iene dada po se un lenguaje
que des aca po su can idad de paque es que en ocan al análisis de da os.
En es e módulo se han hecho uso los siguien e paque es de Py hon:
PIL: es e paque e de Py hon pe mi e abaja de o ma sencilla con
imágenes
PyQ : es e paque e es una implemen ación en Py hon de Q un amoso
amewo k GUI.
SciPy: es un ecosis ema de paque es pa a ealiza compu ación de da os
cien ícos en Py hon.
Figu a 4.3: Diag ama de bloques del sis ema
4.3. Módulo 2: Ap endizaje de la SVM
En es e módulo, la aplicación se cen a en la clasicación de los da os
ob enidos po la salida del componen e an e io , es o es, un a chi o zip con
un che o pa a el en enamien o con los ec o es a ojados po el módulo 1
y un a chi o de congu ación json de ca a a pode usa el módulo 3.
4.3. Módulo 2: Ap endizaje de la SVM 31
4.3.1. Componen es del módulo
Los a chi os usados pa a es e módulo son:
s m- ain: Es un ejecu able cons uido sob e C, cuya unción es la de
en ena el da ase que le in oducimos y gene a un a chi o model,
que se á aquel que use la máquina pa a luego pode ealiza las clasi-
caciones.
s m-p edic : O o ejecu able que clasica el da ase de es y c ea un
po cen aje de acie os en e las clases que es ima la máquina y las
clases que ealmen e ep esen an los ejemplos. Además c ea un che o
ou pu que gua da odas las clases que es imó la máquina du an e la
clasicación.
g id.py: Sc ip de py hon opcional, pe o ú il pa a ealiza K- old c oss-
alida ion sob e el da ase . Pa a pode usa lo al máximo endimien o,
es imp escindible ene gnuplo ins alado en el sis ema, debido a que
gene a una imágen que ep esen a una g áca sob e los pa áme os C
y gamma con mejo es esul ados.
Pa a selecciona qué ipo de clasicación se quie e ealiza , en la in e az
g áca se pueden selecciona 5 ipos:
C-SVC: Habili ado po de ec o, debido a que es el más empleado en
es e abajo. Equi ale al explicado en la sección SVM So Ma gin en
el capí ulo 2.
nu-SVC: Tiene la misma unción que C-SVC, con la di e encia de que
és e emplea el pa áme o nu en luga del pa áme o C.
SVM one class: Idóneo pa a pode es udia la elación que ienen las
ca ac e ís icas sob e una clase en especíco.
Epsilon SVR: Emplea eg esión lógica sob e el da ase empleando el
pa áme o épsilon. Es e clasicado nunca se emplea, debido a que el
más idóneo pa a es e abajo es SVC.
nu-SVR: Igual que el an e io , solo que empleando el pa áme o nu en
luga de C.
Ke nels u ilizables ( ambién explicados en el capí ulo 2):
lineal.
32
Capí ulo 4.
Iden icación de análisis po ex u a u ilizando ap endizaje
au omá ico
polynomial.
adial.
sigmoid.
Los pa áme os que se pueden emplea pa a ealiza el en enamien o de
la máquina son:
Deg ee: Dene el pa áme o d pa a el ke nel polinomial.
Gamma: Dene el pa áme o gamma pa a el ke nel polinomial, adial
y sigmoidal.
Coe 0: Dene el pa áme o pa a el ke nel polinomial y sigmoidal.
Cos : Dene el pa áme o C pa a C-SVC y Epsilon SVR.
Nu: Dene el pa áme o nu pa a nu-SVC, SVM one class y nu-SVR.
Epsilon-SVR: Dene épsilon pa a Epsilon SVR.
Cache Size: Dene el amaño de la memo ia caché pa a ealiza la
clasicación.
Epsilon: De e mina ole ancia pa a el c i e io de e minación.
Sh ink: Ac i a la opción de aco a el núme o de i e aciones que ealiza
la máquina pa a ap ende du an e el en enamien o.
Es ima e: Ac i a la opción de usa p obabilidades es imadas de acie -
o gene adas po un k- old c oss alida ion u ilizado du an e el en-
enamien o. Es ecomendable sólo usa lo una ez que se denen los
pa áme os óp imos pa a un da ase .
Weigh : Es un pa áme o que ac ualiza C mul iplicándose po el p opio
C.
4.4. Módulo 3: Clasicación de mues as con la SVM 33
Figu a 4.4: Vis a del módulo 2
4.4. Módulo 3: Clasicación de mues as con la SVM
La idea de es e módulo es ealiza un ba ido de una imagen dada con
un amaño de mues a y unas ca ac e ís icas idén icas a las u ilizadas en
el módulo de ap endizaje. Pa a ello se aplica án las dos pa es p eceden es
del sis ema con el obje i o de ob ene el ec o de ca ac e ís icas de cada
mues a del ba ido. Finalmen e se p ocede á a la clasicación de cada uno
de es os ec o es.
34
Capí ulo 4.
Iden icación de análisis po ex u a u ilizando ap endizaje
au omá ico
Figu a 4.5: Vis a del módulo 3
Pa a comple a el ba ido lo p ime o que hab á que hace se á ca ga una
imagen, o un conjun o de imágenes, jun o con el aining se a ojado po la
SVM, es deci , un di ec o io comp imido, con ex ensión .zip, que con end á
un a chi o de ex ensión . ain con las mues as usadas pa a el en enamien o
de la SVM y un json con los pa áme os de congu ación que ue on selec-
cionados en el módulo an e io pa a en ena a la máquina de ec o sopo e.
Una ez ob enidos los da os de en ada necesa ios pa a que es e com-
ponen e uncione, se inicia un p oceso que naliza á con las imágenes de
en ada ma cadas de al o ma que se di e encia án, del es o de o mas de
la imagen, los obje os que que íamos adi ina po su ex u a. En el caso de
la búsqueda de neumonía en adiog a ías de ayos x, las pa es de la imagen
que no son neumonías queda án enma cadas den o de un ecuad o ojo y
las que sí lo son apa ece án sin dibuja .
4.4. Módulo 3: Clasicación de mues as con la SVM 35
Figu a 4.6: Ejemplo de esul ado del ba ido
El p oceso se inicia á ca gando la congu ación del json y el a chi o
. ain pa a inmedia amen e después gene a un comando que llame al mó-
dulo dos(a a és de una ube ía) y le pase an o la congu ación como las
mues as del en enamien o. Es o se hace con el n de adqui i un modelo,
al y como el de la sección an e io , que si a pa a clasica las mues as del
ba ido.
Una ez que hemos en enado a la máquina de nue o y hemos ob enido
el modelo de en enamien o, p ocede emos a di idi la imagen en un g id,
cuyas celdas end án el amaño de mues a que se especicó en el módulo
1, y a eco e lo de o ma descenden e, de izquie da a de echa. En es e e-
co ido se clasica án las mues as según dic amine el modelo y se gene a á
una ma iz de booleanos que se u iliza á, nalmen e, pa a pin a la imagen
aco de al esul ado de la clasicación.
Hay que acla a que, en es e módulo, pa a pode clasica hay que c ea
un che o . con cada mues a y ejecu a , a pa i de llamadas al sis ema
ope a i o(pa a accede a libs m), el mé odo p edic esiden e en el modelo
de en enamien o ob enido:
36
Capí ulo 4.
Iden icación de análisis po ex u a u ilizando ap endizaje
au omá ico
Figu a 4.7: Comando de acceso a libs m
4.4.1. Componen es del clasicado
El módulo subp ocess: pe mi e in oca p ocesos desde Py hon y co-
munica se con ellos: en ia da os a la en ada (s din) y ecibi la in o -
mación de salida (s dou ). Además, espe a a que el p oceso nalice o
bien e mina lo p ema u amen e, y ob ene el alo de e o no.
1
Al igual que en el módulo 1, ambién u ilizamos las lib e ías PIL,
numPy y PyQ .
1
h ps:// ecu sospy hon.com/guias-y-manuales/subp ocess-c eacion-y-comunicacion-
con-p ocesos/
Capí ulo 5
P uebas y e aluación
Resumen:
En es e capí ulo mos a emos el compo amien o del sis-
ema sob e un p oblema conc e o.
5.1. In oducción
Desde que comenzamos a abaja en el sis ema de iden icación de imá-
genes po análisis de ex u as nos hemos es ado p egun ando cual se ía el
campo de in es igación más ap opiado pa a aplica nues o desa ollo.
El p ime es udio que conside amos hace ue el de aplica el análisis de
ex u a al diagnós ico de en e medades odon ológicas, pe o as habla con
un odon ólogo y ob ene un conjun o de da os pa a el en enamien o y la
clasicación, decidimos desca a es a in es igación, ya que no encon amos
la o ma de aplica nues o sis ema al da ase ecibido.
T as es e p ime in en o, la os eopo osis ue el siguien e p oblema que
alo amos. Con ac amos con la uni e sidad poli écnica de O leans (F ancia)
pa a que nos lega an su da ase e ique ado con mues as de dicha en e me-
dad, pe o las imágenes que nos die on e an álidas, en el mejo de los casos,
pa a esol e un p oblema de clasicación, no pa a la iden icación de un
obje o den o de la imagen, al y como p e endemos noso os.
Finalmen e hemos decidido emplea nues a aplicación en la iden ica-
ción de la neumonía a pa i de las adiog a ías de la caja o ácica de dis-
in os pacien es. El conjun o de da os pa a es e expe imen o se ha ob e-
nido de Kaggle, que a su ez lo ha ob enido del abajo "
Ches X- ay8:
Hospi al-scale Ches X- ay Da abase and Benchma ks on Weakly-
Supe ised Classica ion and Localiza ion o Common Tho ax Di-
seases
",[13] el cual ealiza un es udio muy simila al nues o, aunque u iliza
37
44
Capí ulo 6.
Conclusiones y abajo u u o
un e a o más dedigno de la ealidad, son muy suscep ibles de inc emen-
a la e ec i idad de los esul ados pa alelamen e a la capacidad de cómpu o.
El segundo de es os ac o es es la g an can idad de a ian es que hay
pa a esol e un p oblema conc e o. Y no solo eso, sino que cualquie peque-
ña modicación o combinación de dis in os pa adigmas puede, dependiendo
del caso, a oja esul ados comple amen e dis in os e incluso cons i ui una
nue a a ian e. Po ello, los es udios del a e ealizados po mul i ud de au-
o es en el pasado son la base imp escindible pa a consegui éxi os en es e
campo, ya que con ellos podemos ene un conocimien o gene al sob e sob e
mul i ud de écnicas muy impo an es.
En cuan o al desa ollo del p oyec o, hemos de deci que es amos sa is e-
chos con el esul ado nal debido a que, du an e la ealización de es e, hemos
adqui ido unos aliosos conocimien os y una abundan e expe iencia g acias a
que pa a implemen a el sis ema hemos enido que en emezcla , de mane a
comple amen e lib e y no eglada, dis in os ipos de ecnologías y lenguajes
de p og amación, lo que nos a o zado, has a cie o pun o, a se c ea i os a
la ho a de in en a soluciones pa a los p oblemas que han ido su giendo y a
amilia iza nos con dichas he amien as.
También nos gus a ía des aca que abaja en es e p oyec o nos ha he-
cho conciencia nos de la u ilidad de usa sis emas de con ol de e siones, de
planica co ec amen e un p oyec o desde el p incipio y de la impo ancia
de ealiza una in es igación p e ia comple a.
En las siguien es páginas explica emos lo que, a nues o juicio, son posi-
bles ampliaciones, complemen os o a ian es ele an es pa a nues o p oyec o
ac ual.
6.2. Conclusion
We belie e ha o s a his sec ion o conclusions he bes we can do is
o speak hones ly abou wha has mos caugh ou a en ion abou his nal
p ojec .
We would say ha he mos imp essi e hing o us has been he simpli-
ci y o he echniques applied o sol e a p oblem as complex and necessa ily
chao ic as i is o iden i y an objec h ough i s ex u e, being ha a ew
elemen a y ma hema ical unc ions, a ma ix model, whose o ma ion is no
complex a all, and some o he innume able au oma ic lea ning echniques
o sol e eg ession p oblems a e sucien equi emen s o iden i y a la ge
6.2. Conclusion 45
pa o he ex u es, bo h na u al and a icial.
Bu i he echniques a e so simple, why when we in es iga e he s a e
o he a we see ha o mo e han 50 yea s he e ha e been p og esses
and changes in he ma e ? We belie e ha his is undamen ally due o wo
ac o s.
The s o hese is, ob iously, he inc ease in he capaci y and speed o
ha dwa e p ocessing, gi en ha p oblems o his ype, which equi e hand-
ling a huge amoun o in o ma ion in o de o make a mo e eliable po ai
o eali y, hey a e e y suscep ible o inc ease he eec i eness o he esul s
pa allel o he compu ing capaci y.
The second o hese ac o s is he la ge numbe o a ian s ha exis o
sol e a specic p oblem. And no only ha , bu any small modica ion o
combina ion o die en pa adigms can, depending on he case, yield com-
ple ely die en esul s and e en cons i u e a new a ian . Fo his eason,
he s udies o a made by many au ho s in he pas a e he essen ial basis
o achie e success in his eld, since wi h hem we can ha e a gene al know-
ledge abou a mul i ude o e y impo an echniques.
Rega ding he de elopmen o he p ojec , we ha e o say ha we a e
sa ised wi h he nal esul . because du ing he ealiza ion o his, we ha e
acqui ed aluable knowledge and an abundan expe ience hanks o he ac
ha o implemen he sys em we ha e had o in e mingle, comple ely ee
and no egula ed, die en ypes o echnologies and p og amming langua-
ges, which We ha e been o ced, o some ex en , o be c ea i e when i comes
o in en ing solu ions o he p oblems ha ha e a isen and o become a-
milia wi h hese ools.
We would also like o highligh ha wo king on his p ojec has made us
awa e o he u ili y o using e sion con ol sys ems, o co ec ly planning a
p ojec om he beginning and o he impo ance o ca ying ou a comple e
p io in es iga ion.
In he ollowing pages we will explain wha , in ou opinion, possible ex-
ensions, complemen s o a ian s ele an o ou cu en p ojec .
46
Capí ulo 6.
Conclusiones y abajo u u o
6.3. T abajo u u o
6.3.1. U iliza o os mé odos de análisis
En capí ulos p e ios hemos is o que los mé odos de análisis de ex u as
pueden se clasicados de muchas o mas, aunque gene almen e se suelen
di idi en: es adís icos, basados en la dis ibución espacial de los ni eles de
g ises; es uc u ales, los cuales suponen que la ex u a es á o mada po una
es uc u a que se epi e, denominada p imi i a; y espec ales.
Una de las ías que nos gus a ía aplica en el u u o se ía combina
el ac ual mé odo es adís ico de la co-ocu encia con mé odos es uc u ales,
conc e amen e u iliza la geome ía ac al pa a encon a pa ones en la ex-
u a, en la línea del abajo "
Análisis de la ex u a a pa i de la geome ía
ac al
"(Peleg, e al., 1984)
Figu a 6.1: Ejemplo de geome ía ac al en la na u aleza.
La azón de es a idea su ge de lo in ui i o que esul a aplica el ac al
pa a desc ibi la disposición de las pa ículas de una ex u a. Mien as que
la geome ía euclídea clásica a menudo esul a insucien e pa a desc ibi las
o mas en e esadas y caó icas que comúnmen e ap eciamos en los elemen os
más mic oscópicos, la geome ía ac al como con aposición a es a esul a
algo mucho más pe inen e de aplica en el mundo de las impe ec as ex u-
as.
1
1
La ma emá ica siemp e ha se ido de lenguaje de las ciencias, sob e odo de las lla-
madas po algunos ác icas. A pa i de ellas se han cons uido modelos que simulan la
ealidad con mayo o meno éxi o y que ecuen emen e es os modelos sus i uyen a la mis-
6.3. T abajo u u o 47
Además, u iliza ac ales es una opción in e esan e pues o que son una
de las o mas más comunes de la na u aleza,
p esen es en la ma e ia biológi-
ca, jun o con las sime ías (las o mas básicas que solo necesi an la mi ad de
in o mación gené ica) y las espi ales (las o mas de c ecimien o y desa ollo
de la o ma básica hacia la ocupación de un mayo espacio)
.
2
6.3.2. Velocidad de ejecución
Una de las ace as que con end ía mejo a de ca a al u u o se ía la e-
locidad con la que se ejecu a la aplicación. Pese a que ya hemos aplicado
algunas écnicas pa a es e p opósi o(mul i h eading), el ma gen de mejo a
sigue siendo bas an e amplio.
Una écnica que cob a cada ez más impo ancia en las aplicaciones cien-
ícas y de cálculo in ensi o es el uso de a je as acele ado as de ídeo. Al
n y al cabo, es e ipo de p ocesado es ue on diseñados pa a es e ipo de
abajos y po an o es una idea muy sensa a u iliza las en nues o sis ema.
O a mane a de mejo a la elocidad de ejecución se ía plan ea una
op imización del código.
Figu a 6.2: Compa a i a de endimien o en la decon olución de una imagen,
implemen ada sob e una CPU, mul ip og amada sob e ocho núcleos y en una
GPU median e CUDA. [8]
ma ealidad. En el caso de los p ocesos ugosos, oughness en el lenguaje de Mandelb o ,
ales como pliegues, o bien enómenos que se au o eplican como los p oceso de ep oduc-
ción de células, las ma emá icas sal o modelos es adís icos y algunos analí icos han enido
un éxi o escaso [1]
2
h ps://es.wikipedia.o g/wiki/F ac alCa ac e ís icas_de_un_ ac al
48
Capí ulo 6.
Conclusiones y abajo u u o
6.3.3. O os abajos u u os
Expe imen a con dis in os ipos de ha dwa e pa a la oma de mues-
as; cáma as é micas, po ejemplo.
Combina el iden icado de obje os con un clasicado . Po ejemplo,
una ez au oma izado el p oceso de iden icación de la neumonía, po-
demos complemen a el diagnós ico implemen ando un clasicado que
dis inga en e neumonía í ica o bac e iana.
U iliza o o ipo de écnicas de ap endizaje au omá ico dis in as al
SVM.
Capí ulo 7
Con ibuciones indi iduales
7.1. Nicolás Alcaine Camilli
Al comienzo del abajo, se ealizó una sepa ación de módulos pa a que
cada uno de noso os pudiese enca ga se p ác icamen e con alguno de ellos y
especializa se, pudiendo ealiza una in es igación sob e él y pos e io men e
documen a lo en la memo ia jun o con la implemen ación del código nece-
sa io pa a lle a lo a la pa e p ác ica.
De aquí en la p ime a eunión se eligió a Alejand o como enca gado de
odo el p ime módulo, es deci , oda la pa e de análisis de ex u as en
imágenes y su implemen ación. A mí se me asignó el segundo módulo, que se
enca ga de analiza odas las ca ac e ís icas es udiadas en el an e io módulo
y pode ealiza clasicaciones de obje os p esen es en las imágenes usando
ap endizaje au omá ico, en conc e o empleando SVM, debido a su g an ca-
pacidad de clasicación median e sus ke nels.
Al comienzo de la ealización de mi módulo, u e la idea de ealiza lo
bajo Py hon, debido a que en e noso os habíamos is o que Py hon es
un lenguaje que poco a poco se ue especializando en las ma emá icas y en
pa icula , sob e da a science (den o de és e ambién en ap endizaje au o-
má ico). También mi idea ue esa po que enía pensado unica ese módulo
jun o con los demás y ellos ya los habían empezado a implemen a bajo ese
lenguaje.
Más a de p ocedí a i implemen ando el ke nel gaussiano bajo la clasi-
cación usando el pa áme o C, pe o no con inué po una pos e io eunión
con el u o , donde habíamos decidido en e noso os 2 que el módulo iba
a es a comple amen e sepa ado del es o de módulos y que se pod ía usa
di ec amen e una lib e ía capaz de ealiza odas las ope aciones bajo SVM.
49
50
Capí ulo 7.
Con ibuciones indi iduales
Al nal op é po usa Ja aFX como lenguaje de mi módulo, debido a su
acilidad y moldeabilidad a la ho a de c ea in e aces de usua io. An e io -
men e sólo había abajado con el lenguaje Ja a, pe o se me hizo bas an e
ácil su ap endizaje ya que ambién ealizé abajos de páginas web con CSS3
en el pasado, y oda la pa e g áca de sus elemen os se denen bajo p o-
piedades CSS.
También op é po ealiza llamadas ex e nas al p og ama pa a pode ea-
liza los en enamien os y las clasicaciones, usando ejecu ables compilados
en C de la lib e ía libSVM.
Es a lib e ía la escogí debido a su g an popula idad en el mundo del ma-
chine lea ning, y es de código abie o, po lo cual no hay incon enien es pa a
usa su código bajo nues o p oyec o. La licencia de és e es BSD, po lo que
enemos libe ad de usa és e an o en código ce ado como abie o.
Mien as ui implemen ando el código pa a el módulo, pudimos e en e
los dos miemb os que hay di e en es conexiones en e cada módulo, po lo
que he es ado colabo ando con mis compañe os en el es o de módulos en
lo que espec a al uso de che os de en enamien o y en el en enamien o y
es eo en el módulo 3.
En e odos ambién uimos haciendo p uebas usando odos los módulos,
an o con imágenes de la cáma a é mica de nues o u o , como con imáge-
nes que pidió Alejand o pa a el es udio e iden icación de la neumonía sob e
pacien es. En e odos pudimos uni ambos conocimien os pa a consegui
clasicaciones óp imas.
Po o a pa e, ambién he ido documen ando en la memo ia odas mis
in es igaciones en el capí ulo 2 y su uncionamien o en el módulo 2 sob e el
capí ulo 4 y sob e el apéndice B. El apéndice A ambién ha sido esc i o po
mí.
7.2. Alejand o Rod íguez Chacón
En el inicio del p oyec o, en la ase de in es igación, me enca gué de ami-
lia iza me con el es ado del a e y las écnicas de p ocesamien o de imágenes,
es deci , de la ma iz de co-ocu encia y de las ó mulas ma emá icas que
u ilizamos pa a ob ene las componen es del ec o de ca ac e ís icas. Es e
es udio consis ió en la lec u a de la bibliog a ía apo ada po el u o (en e
la que se encuen an [12] y [9]) y de documen os ob enidos de o as uen es,
como "Tex u al ea u es o image classica ion"de Robe Ha alick.
7.2. Alejand o Rod íguez Chacón 51
Po an o, cuando comenzamos a desa olla el sis ema, mi come ido ue
p og ama en Py hon aquellas pa es que enían que e con es a in es i-
gación y pos e io men e las conec é con la GUI. En deni i a, elabo é el
módulo 1. Pa a pode comenza a desa olla u e an es que in es iga el
uncionamien o de Py hon en algunos aspec os, ya que no enía una g an
expe iencia p e ia con es e lenguaje.
En es e pun o, aunque no de ca a a la implemen ación del sis ema, am-
bién comencé a es udia o os aspec os impo an es de la eo ía como: SVM,
los dis in os modelos exis en es pa a el p ocesamien o de imágenes digi a-
les(es adís icos, es uc u ales, e c) y es udios de o os au o es sob e la ex-
u a.
Du an e es e iempo, ambién ayudé a esol e algunos p oblemas del
módulo 3, sob e odo aquellos que enían que e con man ene la cohe en-
cia con el módulo 1.
Al ob ene una p ime a e sión de la aplicación, as e isa lo hecho po
odo el equipo, comp obé el compo amien o de los módulos y pude encon-
a dis in os e o es como que el módulo de oma de mues as cogía el colo
de la ma ca( e de o ojo) como mues a o que las mues as se solapaban.
Una ez e minada la pa e écnica del p oyec o, ambién me he espon-
sabilizado de hace la mayo pa e de p uebas iniciales pa a comp oba la
e ec i idad de la máquina con p oblemas eales.
Es as p uebas conlle a on, con el n de cub i la mayo pa e del abanico
de posibles congu aciones, una planicación de las dis in as combinaciones
de pa áme os que e an in e esan es pa a p oba en el sis ema. Cuando na-
lizamos es os es , a a és del análisis de los che os de salida del módulo 2,
conseguimos deni que pa áme os e an los más adecuados pa a p oblema
p opues o.
En cuan o a la a ea de ob ención de da ase s pa a la in es igación, mi
con ibución ha sido apo a el conjun o de da os de la neumonía y con ac-
a , de mane a in uc uosa, con la uni e sidad de uni e sidad poli écnica de
O leans (F ancia) con el p opósi o de ob ene un da ase de os eopo osis.
Sin emba go, di ía que la mayo pa e de mi abajo ha es ado des inado,
en p ime a ins ancia, a la in es igación de las ecnologías u ilizadas y de las
posibles aplicaciones del p oyec o y, en úl imo é mino, a la elabo ación de la
mayo pa e de es a memo ia, pa a lo cual ha sido necesa io ap ende LaTex
desde ce o pues ningún miemb o del equipo enía expe iencia p e ia con es e
52
Capí ulo 7.
Con ibuciones indi iduales
sis ema de composición de ex os.
Capí ulo 8
Apéndice A: Ejemplo de
ejecución
Como ejemplo de ejecución oma emos una imagen de neumonía bac e-
iana:
Figu a 8.1
Usa emos la aplicación del módulo 1 pa a i dibujando algunas mues as
de neumonía y del es o del cue po. En o al se oman 260 mues as: 130
posi i as y 130 nega i as:
53
60
Capí ulo 8.
Apéndice A: Ejemplo de ejecución
Figu a 8.12
Es o nos ab i á o a en ana pa a escoge nues o zip. Es a en ana so-
lamen e admi i á o ma o zip:
Figu a 8.13
61
Aho a solo nos queda ap e a en "S a "pa a empeza con el ba ido de
imagen y gene a odos los casos de neumonía que encuen e el SVM.
Figu a 8.14
Capí ulo 9
Apéndice B: Manual de usua io
Pa a empeza , lo p ime o es ob ene los di e en es módulos, pa a el p i-
me o y el e ce o eque imos Py hon 3.7 y cie os módulos ins alados, po
el o o lado el módulo 2 eque i á OpenJDK 12 y ya pues al es a mon ado
con ma en el mismo ca ga á odas sus dependencias.
Pa a ins ala las dependencias de Py hon una o ma ecomendada es ha-
ce uso de anaconda pues se adap a a los di e en es en o nos.
Una ez ins alado desde la consola de anaconda (conda p omp ) bas a
ejecu a los comandos conda ins all:
conda ins all -c anaconda numpy
conda ins all -c anaconda pil
conda ins all -c anaconda scipy
conda ins all -c dsdale24 pyq 5
El es o a excepción de Tools debe ía eni ins alado po de ec o, con la
ins alación de Py hon 3.7 de anaconda
Aquí esumi é las ecnologías y he amien as necesa ias pa a la ejecución
comple a de nues a he amien a.
Requisi os:
Clasicado (Módulo 1)
SVM (Módulo 2)
Analizado (Módulo 3)
Py hon 3.7
Numpy
63
64
Capí ulo 9.
Apéndice B: Manual de usua io
Pillow
Scipy
PyQ
Tools (Py hon lib)
ZipFile (Py hon lib)
Ma h(Py hon lib)
IO (Py hon lib)
OpenJDK 12
Bibliog a ía
[1] V. A guedas.
La geome ía de la na u aleza: Benoi Mandelb o
. Escula
ma emá ica, Uni e sidad de Cos a Rica, Feb e o, 2012.
[2] A.Rosen eld and E.T oy.
Visual ex u e analysis
. 1970.
[3] V. Bush.
As we may hink
. The A lan ic Mon ly, Julio, 1945.
[4] M. M. Galloway.
Tex u e analysis using g ay le el un-leng hs
. Compu-
e G aphics and Image P ocessing, 1975.
[5] S. K. D. Ha alick, R.M. Tex u al ea u es o image classica ion, 1973.
[6] H.Kaize .
A quan ica ion o ex u es on ae ial pho og aphs
. Bos on
Uni ., 1955.
[7] A. Kowalczyk.
Suppo Vec o Machines Succinc ly
. Sync usion, 2501
Ae ial Cen e Pa kway Sui e 200 Mo is ille, NC 27560 USA, 2017.
[8] F. J. M. Na as.
Desa ollo de un p oceso de decon olución pa a imágenes
usando GPUs
. Facul ad de in o má ica, Uni e sidad de Mu cia, 2009.
[9] M. P esu i.
la ma iz de co-ocu encia en la clasicación mul iespec-
al: u o ial pa a la enseñanza de medidas ex u ales en cu sos de g ado
uni e si a io.
Uni e sidad Nacional de La Pla a, Agos o, 2004.
[10] V. J. R.Bixby, G. Ele ding and R.Loewe.
Na u al image compu e
. 1967.
[11] J. A. Rod igo.
Máquinas de Vec o Sopo e (Suppo Vec o Machines,
SVMs)
. h ps:// pubs.com/Joaquin_AR/267926, Ab il, 2017.
[12] J. L. G. Rod íguez.
Es ado Ac ual de la Rep esen ación y Análisis de
Tex u a en Imágenes.
Julio, 2008.
[13] X. Wang e al.
Ches X- ay8: Hospi al-scale Ches X- ay Da abase and
Benchma ks on Weakly-Supe ised Classica ion and Localiza ion o
Common Tho ax Diseases
. Na ional Ins i u es o Heal h, Be hesda, MD
20892, Na ional Cen e o Bio echnology In o ma ion, Na ional Lib a y
o Medicine, Depa men o Radiology and Imaging Sciences, Clinical
Cen e .
65