Advertisement
Guest User

Untitled

a guest
May 22nd, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. close all; clear all;
  2. Indeks = imread('ksztalty.bmp');
  3. subplot(2,1,1)
  4. imshow(Indeks);
  5. Nei8 = bwlabel(Indeks,8);
  6. subplot(2,1,2)
  7. imshow(Nei8,[]);
  8. klasy = {'kolo';'krzyz';'kwadrat';'kwadrat';'krzyz';'kolo';'kwadrat'; 'krzyz'};
  9. r = regionprops(Nei8,'Centroid');
  10. for i=1:length(r)
  11. text(r(i).Centroid(1),r(i).Centroid(2),['\color{magenta}',klasy(i)]);
  12. end
  13. wsp = obliczWspolczynniki(Nei8);
  14. wsp(:,3)=wsp(:,3)/10;
  15. klasyfikator = fitcknn(wsp,klasy);
  16. [XX YY] = size(Nei8);
  17. ;
  18. %WYKRYWANIE KWADRATOW RMIN/RMAX
  19. Nei8kw = Nei8;
  20. for i=1:XX
  21. for j=1:YY
  22. piksel = Nei8kw(i,j);
  23. if piksel ~= 0 && ~(wsp(piksel,2) > 0.80 && wsp(piksel,2) < 0.84)
  24. Nei8kw(i,j) = 0;
  25. end
  26. end
  27. end
  28. figure
  29. imshow(Nei8kw,[]);
  30.  
  31. %WYKRYWANIE KRZYZYKOW RMIN/RMAX
  32. Nei8krz = Nei8;
  33. for i=1:XX
  34. for j=1:YY
  35. piksel = Nei8krz(i,j);
  36. if piksel ~= 0 && ~(wsp(piksel,2) > 0.52 && wsp(piksel,2) < 0.523)
  37. Nei8krz(i,j) = 0;
  38. end
  39. end
  40. end
  41. figure
  42. imshow(Nei8krz,[]);
  43.  
  44. %________________________________________________________%
  45.  
  46. KsztaltyReal = imread('ksztaltyReal.bmp');
  47. figure
  48. imshow(KsztaltyReal);
  49. KsztaltyRealGray = rgb2gray(KsztaltyReal);
  50.  
  51. h=fspecial('gaussian',[9 9]);
  52. filtr=conv2(KsztaltyRealGray,h,'same');
  53. filtr=uint8(filtr);
  54. figure;
  55. imhist(filtr);
  56. title('Histogram');
  57. filtr=~im2bw(filtr,76/256);
  58. figure;
  59. imshow(filtr);
  60. title('Po binaryzacji');
  61. figure;
  62. filtr=bwlabel(filtr,8);
  63. imshow(filtr,[]);klasyfikator = fitcknn(wsp,klasy);
  64. title('PO indeksacji');
  65.  
  66. r = regionprops(filtr,'Centroid');
  67. for i=1:length(r)
  68. text(r(i).Centroid(1),r(i).Centroid(2),['\color{magenta}',num2str(i)]);
  69. end
  70. wsp1=obliczWspolczynniki(filtr);
  71. wsp1(:,3)=wsp1(:,3)/10;
  72. [X Y]=size(filtr);
  73. %WYKRYWANIE KÓŁ COMPACTNESS
  74. for i=1:X
  75. for j=1:Y
  76. piksel=filtr(i,j);
  77. if piksel ~= 0 && ~(wsp1(piksel,1) > 0.73 && wsp1(piksel,1) < 0.86)
  78. filtr(i,j) = 0;
  79. end
  80. end
  81. end
  82. figure
  83. imshow(filtr,[]);
  84. lista = predict(klasyfikator,wsp1)
  85. celldisp(lista)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement