Integrované Výpočetní Systémy
Příklady
Úloha obrazové registrace v Matlabu
function [C,pos_x,pos_y] = registrace_2(refer,temp) %cross corelation % prekryvam vetsi obrayek mensim a pocitam jak moc se lisi st=size(temp); sr=size(refer); %stredni hodnota mt=mean(mean(temp)'); C=refer; %pocitani cross korelace pro kazdy bod - vysledek je matice for x=1:sr(1)-st(1), for y=1:sr(2)-st(2), R=refer(x:(x+st(1)-1),y:(y+st(2)-1)); mR=mean(mean(R)'); Z1=temp-mt; Z2=R-mR; C(x,y)=sum(sum((Z1.*Z2))')/ sqrt(sum(sum(Z1.*Z1)')*sum(sum(Z2.*Z2)')); end; x/((sr(1)-st(1))/100) end; %hledani pozice maxima v cross matici [A,pos_A]=max(C); [B,pos_B]=max(A); pos_x=pos_B; pos_y=pos_A(pos_B); %vsazeni zpet out=refer; out(pos_x:(pos_x+st(1)-1) , pos_y:(pos_y+st(2)-1)) = temp; figure; colormap(gray); imagesc(out);
![]()