Betül SARAL

Bilgisayar Mühendisi

Matlab - STPRTool Kurulum Ve Kullanım

| Comments

STPRTool Nedir ?

STPRTool (Statistical Pattern Recognition Toolbox for Matlab ), matlab içerisinde istatiksel örüntü tanıma için kullanılan bir toolbox olarak tanımlanır. Bu araç içerisinde kNN, SVM gibi örüntü tanıma yöntemleri bulunur. İçerisinde farklı algoritma yöntemleri barındırdığı için sonuçlarımızı gerçeğe yakın bulmamıza yardımcı olur.

Kurulum

  • İlk olarak STPRTool indirelim.
  • Dizini zip içerisinden C sürücüsü hariç herhangi bir yere çıkartın. Eğer STPRTool C sürücüsünde olursa derlenme sırasında problemler yaşanabilir.
  • Matlab içerisinde Open diyerek STPRTool içerisindeki stprpath.m dosyasını çalıştırın.
  • Daha sonra compilemex.m dosyasını çalıştırın. Eğer derlenme sırasında sorun çıkmamışsa STPRTool içerisinde olan tüm algoritmalar kullanılabilir hale gelmiştir.

  • Çıkabilecek Sorunlar

    STPRTool kurulumu sırasında biraz sorun çıkartabilir. Şimdi o sorunların çözümlerine bakalım.

    Terminal
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    >> compilemex
    Compiling MEX files of STPRtool...
    mex -O -IC:\Program Files\MATLAB\R2013a\toolbox\stprtool\kernels -outdir C:\Program Files\MATLAB\R2013a\toolbox\stprtool\kernels C:\Program Files\MATLAB\R2013a\toolbox\stprtool\kernels\kernel.c C:\Program Files\MATLAB\R2013a\toolbox\stprtool\kernels\kernel_fun.c
    Error using mex (line 206)
    The destination directory "C:\Program" cannot be found.
    
    Error in compilemex (line 113)
      eval(mexstr);
    
    Error in compilemex (line 113)
      eval(mexstr);
    

    Eğer yukarıdaki gibi bir hata alıyorsunuz compilemex.m içerisinde 102.satırda aşağıdaki değişikliği yapmanız gerekir.

    compilemex.m
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    % -- Compile functions -----------------------------
    for i=1:length(fun),
       mexstr = ['mex -O -I''' translate(fun(i).include,root) ...
                 ''' -outdir ''' translate(fun(i).outdir, root) ''' '];
    
      for j=1:length(fun(i).source),
        mexstr = [mexstr '''' translate(char(fun(i).source(j)),root) ''' '];
      end
    
      fprintf('%s\n',mexstr);
    
      eval(mexstr);
    end
    

    Diğeri ise compilemex.m derlenme sırasında mex ile ilgili aşağıdaki gibi hata alınıyorsa;

    SDK kurmanız gerekmektedir. Bunu şu siteden indirebilirsiniz. SDK kurulum sırasında da hata alabilirsiniz. Ben kurulum yaparken aşağıdaki gibi bir hata aldım.

    Bu hatayı yok etmek için kayıt defterini çalıştırın. Kayır defteri sistemde düzgün kurulmamış veya kaldırılamamış programları belirler ve gerekeni yapar. Kayıt defterini çalıştırdığımız zaman SDK kurulumunun yapabilmemiz için Uninstall VC++ 2010 (x86 and x64) kaldırılması gerekir. Böylece SDK kurulur ve derleme başarılı bir şekilde gerçekleşir.

    Comments