function[vertikalni_bez_mrk,horizontalni]=filtr_EOG_peaky(vertikalni0,horizontalni0,k,proband,prah)


%% mediánový filtr %filtrace vertikálního a horizontálního kanálu mediánovým filtrem o délce okna 15
vertikalni=medfilt1(vertikalni0,15); 
horizontalni=medfilt1(horizontalni0,15);
vertikalni_puv=vertikalni;
vertikalni_bez_mrk=vertikalni;

%% výpočet derivovaného signálu
derivace=diff(vertikalni); %výpočet derivovaného signálu
derivace=abs(derivace);
[pks,lock]=findpeaks(derivace,'MinPeakProminence',prah);%nalezení píků o výšce vyšší než zvolený práh


pocatek_mrk=[];
konec_mrk=[];
pocatek_mrk_poc=[];
x=1;
i=1;
M=1;
N=1;
while i<length(pks)
        
     if lock(i+1)-lock(i)<28  %jedná se o mrknutí
         pom=lock(i);
         pom2=lock(i+1);
         M=1;
        while vertikalni(pom)>vertikalni(pom-1)&& M==1
             pom=pom-1;
             if pom==2; %počátek mrknutí na začátku záznamu
                 M=2;
             end
        end
        while vertikalni(pom2)>vertikalni(pom2+1)&& N==1
             if pom2==length(vertikalni)-1
                N=2;
             else
                 pom2=pom2+1;
             end
        end
        if max(vertikalni(pom:pom2))>vertikalni(pom)&& max(vertikalni(pom:pom2))>vertikalni(pom2)
        konec_mrk(x)=pom2;
        pocatek_mrk(x)=pom;
        if k==18
        while konec_mrk(x)-pocatek_mrk(x)>100
            konec_mrk(x)=konec_mrk(x)-10
            pocatek_mrk(x)=pocatek_mrk(x)+10
        end
        end
        x=x+1;
        i=i+2;
        else
            i=i+2;
        end
     else
         i=i+1;
     end  
end
if length(lock)>0
    if length(vertikalni)-lock(end)<20 % část mrknutí na konci signálu
     pom4=(lock(end));
         while vertikalni(pom4)>vertikalni(pom4-1)
             pom4=pom4-1;
         end
     konec_mrk(x)=length(vertikalni);
     pocatek_mrk(x)=pom4;  
    elseif lock(1)<20 && M==1%část mrknutí na začátku signálu
          pom5=lock(1);
         while vertikalni(pom5)>vertikalni(pom5+1)
             pom5=pom5+1;
          end
             konec_mrk_poc=pom5;
             pocatek_mrk_poc=1;
    end
end


 if pocatek_mrk_poc==1 %část mrknutí na začátku
        delka_cary_poc=konec_mrk_poc-pocatek_mrk_poc+1; 
        interp_poc=linspace(vertikalni(konec_mrk_poc), vertikalni(konec_mrk_poc), delka_cary_poc);
        vertikalni_bez_mrk(pocatek_mrk_poc:konec_mrk_poc)=interp_poc;
 end

 for j=1:length(pocatek_mrk)
%      if pocatek_mrk(j)==1 %část mrknutí na začátku
%         delka_cary(j)=konec_mrk(j)-pocatek_mrk(j)+1; 
%         interp=linspace(vertikalni(konec_mrk(j)), vertikalni(konec_mrk(j)), delka_cary(j));
%         vertikalni_bez_mrk(pocatek_mrk(j):konec_mrk(j))=interp;
     if konec_mrk(j)==length(vertikalni) %část mrknutí na konci signálu
        delka_cary(j)=konec_mrk(j)-pocatek_mrk(j)+1; 
        interp=linspace(vertikalni(pocatek_mrk(j)),vertikalni(pocatek_mrk(j)), delka_cary(j));
        vertikalni_bez_mrk(pocatek_mrk(j):konec_mrk(j))=interp;
     else
     delka_cary(j)=konec_mrk(j)-pocatek_mrk(j)+1;
     interp=linspace(vertikalni(pocatek_mrk(j)), vertikalni(konec_mrk(j)), delka_cary(j));
     vertikalni_bez_mrk(pocatek_mrk(j):konec_mrk(j))=interp;
     
     end
 end
  
% figure(5)
% plot(vertikalni)
% hold on
% plot(pocatek_mrk,vertikalni(pocatek_mrk),'*')
% hold on
% plot(konec_mrk,vertikalni(konec_mrk),'*')
% hold on
% plot(vertikalni_bez_mrk)
% 
% figure(6)
% subplot(211)
% plot(vertikalni)
% subplot(212)
% plot(vertikalni_bez_mrk)
