• Non ci sono risultati.

Codici Matlab Appendice

N/A
N/A
Protected

Academic year: 2021

Condividi "Codici Matlab Appendice"

Copied!
6
0
0

Testo completo

(1)

Appendice

Codici Matlab

Calibrazione

L=imread('calibra.bmp'); % inserire il nome del file di calibrazione

L=wiener2(L,[5,5]); imshow(L) [ix,iy,mis]=improfile; figure plot(mis) figure plot(mis(2:end)-mis(1:end-1)) pause

mssx=input('margine superiore picco sinistro:'); misx=input('margine inferiore picco sinistro:'); msdx=input('margine superiore picco destro:'); midx=input('margine inferiore picco destro:');

c=5*input('numero celle:');

sx=[ix(mssx)+ix(misx)]/2; dx=[ix(msdx)+ix(midx)]/2;

unita=(dx-sx)/c;

save unita unita

Trazione

Inseguimento della posizione dei marker

% cambiare nome al file filmato % salvare

(2)

function misura=spostamento_traz

mov=aviread('traz3_100X.avi'); %nome file filmato

L=wiener2(mov(1).cdata,[5 5]); imshow(L) [ix,iy,mis]=improfile; [vali,pos,posinv]=multiple_position_image1(L,ix,iy,length(ix)); posinv(1) posinv(2) pos(1) pos(2) figure plot (mis(2:end)-mis(1:end-1)) i0in=1; mark1(1)=ix(posinv(i0in)); i0in=i0in+1; mark2(1)=ix(posinv(i0in)); val=abs(mark1-mark2);i0=i0in; while val<15 i0=i0+1; mark2=ix(posinv(i0)); val=abs(mark1-mark2); end i0in=1; mark11(1)=ix(pos(i0in)); i0in=i0in+1; mark22(1)=ix(pos(i0in)); val=abs(mark11-mark22);i0=i0in; while val<15 i0=i0+1; mark22=ix(pos(i0)); val=abs(mark11-mark22); end if(abs(mark11-mark1)>100) duffy=mark11; mark11=mark22; mark22=duffy; end misura(1,:)=[min(mark1+mark11,mark2+mark22) max(mark1+mark11,mark2+mark22)]*0.5; for ll=2:length(mov); L=wiener2(mov(ll).cdata,[5 5]); [vali,pos,posinv]=multiple_position_image1(L,ix,iy,length(ix)); multiple_position_image1 function [c,pos1,pos2]=multiple_position_image(ima,xi,yi,num) c=improfile(ima,xi,yi,num); [val1,pos1]=sort(c(2:end)-c(1:end-1)); [val2,pos2]=sort(c(2:end)-c(1:end-1),'descend'); return

(3)

i0in=1; while(abs(mark1(ll-1)-ix(posinv(i0in)))>5) ll i0in=i0in+1; end mark1(ll)=ix(posinv(i0in)); i0in=1; while(abs(mark2(ll-1)-ix(posinv(i0in)))>5) i0in=i0in+1; end mark2(ll)=ix(posinv(i0in)); val=abs(mark1(ll)-mark2(ll));i0=i0in; while val<60 i0=i0+1; mark2(ll)=ix(posinv(i0)); val=abs(mark1(ll)-mark2(ll)); end i0in=1; while(abs(mark11(ll-1)-ix(pos(i0in)))>5) i0in=i0in+1; end mark11(ll)=ix(pos(i0in)); i0in=1; while(abs(mark22(ll-1)-ix(pos(i0in)))>5) i0in=i0in+1; end mark22(ll)=ix(pos(i0in)); val=abs(mark11(ll)-mark22(ll));i0=i0in; while val<60 i0=i0+1; mark22(ll)=ix(pos(i0)); val=abs(mark11(ll)-mark22(ll)); end if(abs(mark11(ll)-mark1(ll))>100) duffy=mark11(ll); mark11(ll)=mark22(ll); mark22(ll)=duffy(ll); end misura(ll,:)=[min(mark1(ll)+mark11(ll),mark2(ll)+mark22(ll)) max(mark1(ll)+mark11(ll),mark2(ll)+mark22(ll))]*0.5; end return

Calcolo della deformazione in trazione

% caricare unita

% modificare spostamento_traz

% modificare il nome per il salvataggio

(4)

u=input('risoluzione unita:'); f=input('risoluzione immagine:'); h=u/f;

figure

plot(posizioni)

title('Posizione dei marker') xlabel('frame')

ylabel('posizione(mm)')

legend('marker sx','marker dx')

distanza=[(posizioni(:,2)-posizioni(:,1))./unita]*h; figure

plot(distanza)

title('Distanza tra i marker') xlabel('frame')

ylabel('distanza(mm)')

save traz3

Compressione

Valutazione dell’area del provino

% cambiare nome immagine % caricare unità

% cambiare nome salvataggio

L=imread('area_compr3_50X.bmp'); L=wiener2(L,[5 5]); imshow(L); [ix,iy,mis]=improfile; figure plot(mis) figure plot(mis(2:end)-mis(1:end-1)) pause

p1=input('picco destro:'); p2=input('picco sinistro:');

u=input('risoluzione unita:'); f=input('risoluzione immagine:'); H=u/f;

area=pi*((((p2/unita-p1/unita)/2)*H)^2);

save area_compr3 area

Valutazione dello spessore iniziale del provino

(5)

% caricare unità

% cambiare nome salvataggio

L=imread('spess_compr3_150X.bmp'); L=wiener2(L,[5 5]); imshow(L); [ix,iy,mis]=improfile; figure plot(mis) figure plot(mis(2:end)-mis(1:end-1)) pause

pd=input('picco destro:'); ps=input('picco sinistro:');

u=input('risoluzione unita:'); f=input('risoluzione immagine:'); H=u/f;

thick=(sqrt((ix(pd)-ix(ps))^2+(iy(pd)-iy(ps))^2)/unita)*H;

save thick_compr3 thick

Inseguimento dei punti di riferimento

% cambiare nome al file filmato % salvare

% mettere pointbreak in 19

function misura=spostamento_compr

mov=aviread('compr3_50X.avi') % nome file filmato

L=wiener2(mov(1).cdata,[5 5]); imshow(L) [ix,iy,mis]=improfile; [vali,pos,posinv]=multiple_position_image1(L,ix,iy,length(ix)); posinv(1) pos(1) figure plot (mis(2:end)-mis(1:end-1)) i0in=1; mark1(1)=ix(posinv(i0in)); i0in=1; mark11(1)=ix(pos(i0in)); misura(1,:)=[mark1(1) mark11(1)]; for ll=2:length(mov); ll

(6)

L=wiener2(mov(ll).cdata,[5 5]); [vali,pos,posinv]=multiple_position_image1(L,ix,iy,length(ix)); i0in=1; while(abs(mark1(ll-1)-ix(posinv(i0in)))>5) i0in=i0in+1; end mark1(ll)=ix(posinv(i0in)); i0in=1; while(abs(mark11(ll-1)-ix(pos(i0in)))>5) i0in=i0in+1; end mark11(ll)=ix(pos(i0in)); misura(ll,:)=[mark1(ll) mark11(ll)]; end return

Calcolo della deformazione in compressione

% caricare unita

% caricare thick corrispondente % modificare spostamento_compr

% modificare il nome per il salvataggio

posizioni=spostamento_compr;

u=input('risoluzione unita:'); f=input('risoluzione immagine:'); h=u/f;

figure

plot(posizioni)

title('Posizione dei marker') xlabel('frame')

ylabel('posizione')

legend('marker sx','marker dx')

tip=(((posizioni(1,2)-posizioni(1,1))/unita)*h-thick);

spessore=[(((posizioni(:,2)-posizioni(:,1))/unita)*h-tip)]; figure

plot(spessore)

title('Spessore campione') xlabel('frame')

ylabel('spessore(mm)')

Riferimenti

Documenti correlati

ma dall’altro lato evidenzia anche la forte differenza con la fattispecie contravvenzionale di cui all’art. Nel compiere questa scelta il legislatore non sembra essere stato

dell’una con quelle dell’altra, si è potuto capire quali frammenti mancavano in ogni filmato. Si tratta di.. posporre; si è detta però molto dispiaciuta e ha inviato un

First, after the &#34;Governmentality&#34; lecture, Foucault several times shifted the meaning of the term and the respective periodisation. To give only a few

In questi casi l'istituzione della NGMA, nonostante non possieda ancora all'interno della sua collezione opere dei suddetti artisti, ha iniziato a muovere i primi passi verso

Students, staff, employers and the institutional community engage in higher education with different literacies, different ambitions and different aesthetics and technology,

Smentendo l’idea dell’inesistenza della nozione di individualità nel pensiero cinese diffusasi in Occidente, la prima parte della trattazione mette in luce la centralità

Questa foto è stata scattata nel 2000, quindi molto più recente rispetto alle altre, e si può infatti notare come cambia ciò che vuole trasmetterci l’autore: di

This thesis addresses the implementation of sustainable development in the legal frameworks of regional integration agreements (RIAs). Sustainable development is reaffirmed as