Advertisement
tuttelikz

Calculate Roughness average mean from front

Sep 4th, 2017
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 4.22 KB | None | 0 0
  1. clear all; close all; clc;
  2.  
  3. nm = {'01_KB_1\forearm','01_KB_1\forehead',...
  4.     '02_YJ_1\forearm','02_YJ_1\forehead','02_YJ_1\backhand',...
  5.     '03_PU_1\forearm','03_PU_1\backhand',...
  6.     '04_HG_1\forearm','04_HG_1\forehead',...
  7.     '05_HR_1\forearm','05_HR_1\forehead','05_HR_1\backhand',...
  8.     '06_HG_1\forearm','06_HG_1\forehead','06_HG_1\backhand',...
  9.     '07_EJ_1\forearm','07_EJ_1\forehead',...
  10.     '08_MA_1\forearm','08_MA_1\forehead','08_MA_1\backhand',...
  11.     '09_NY_1\forearm','09_NY_1\backhand',...
  12.     '10_MR_1\forearm','10_MR_1\forehead','10_MR_1\backhand'};
  13.  
  14. % OpenfilePath = 'C:\Users\TBL\Documents\MATLAB\1708_AMORE\04_HG_1\forearm';
  15. max_step = 500;
  16. gsigma = 4;
  17.  
  18. filename = 'testdata.xlsx';
  19. titles = {'Folder','mean_avg_rough','mean_rms_rough','mean_max_rough'};
  20. xlRangeTitle = 'B1:E1';
  21. xlswrite(filename,titles,xlRangeTitle);
  22.    
  23. for j = 1:length(nm)
  24.     OpenPath = strcat('C:\Users\TBL\Documents\MATLAB\1708_AMORE\',nm(1,j));
  25.     X = ['Current Folder:',nm(1,j),' index: ',num2str(j)];
  26.     disp(X)
  27.     for step = 1:max_step
  28.         read_file_name = strcat('Image',num2str(step-1,'%04d'),'.jpg');
  29.         img = imread([OpenPath{1},'\' ,read_file_name]);
  30.  
  31.         %img = imread('Image0035.jpg');
  32.         [H,W] = size(img);
  33.  
  34.         diff = 1;
  35.        
  36.     %     img = double(img);
  37.         img_filt = imgaussfilt(img,gsigma);
  38.         img_diff = filt_diff(img_filt,H,W,diff);
  39.         up = H-2;
  40.         down = 222;
  41.         [img_line_surf,ind_line_surf,avg_index,ref_line,line1] = line_surf3(img_diff,H,W,diff,up,down);
  42.  
  43.  
  44.         % figure()
  45.         % imshow(img_line_surf)
  46.  
  47.         % [line3V,line3I] = min(img_line_surf);
  48.  
  49.         diff = 2;
  50.         med = 60;
  51.         %img_med = imgaussfilt(img_crop,gsigma);
  52.         img_med = padarray(img',med,'replicate','both');
  53.         img_med = padarray(img_med',med,'replicate','both');
  54.         img_med = medfilt2(img_med,[med*2 med*2]);
  55.         img_med = img_med([med+1:H+med],[med+1:W+med]);
  56.         img_filt1 = zeros(H+diff,W);
  57.         img_filt2 = zeros(H+diff,W);
  58.  
  59.         img_filt1([diff+1:H+diff],:) = img_med;
  60.         img_filt2([1:H],[1:W]) = img_med;
  61.  
  62.         %%
  63.         img_med = img_filt1 - img_filt2;
  64.         img_med = img_med([diff+1:H+diff],:);
  65.         %%
  66.  
  67.         %%
  68.         % figure();
  69.         % imshow(img_med,[]);
  70.  
  71.         img_line2 = zeros(H,W);
  72.  
  73.         %diff = 10;
  74.         for i = 1:W
  75.             [local_max,local_index] = min(img_med(:,i));
  76.             img_line2(local_index,i) = 255; %+2 %-10    ubrat -diff
  77.             line2(i) = local_index-diff; %brat -diff
  78.         end
  79.  
  80.     %     figure()
  81.     %     imshow(img)
  82.     %     hold on
  83.     %     plot(line2)
  84.     %     plot(line1)
  85.     %     hold off
  86.         valley_depth = peak_valley(line1,line2,W);
  87.         [avg_rough(step),rms_rough(step),max_rough(step)] = roughness_valley(valley_depth);
  88.         %fprintf('%i\n', step);
  89.         fprintf('.');
  90.         if mod(step,100) == 0
  91.             fprintf('\n');
  92.         end
  93.     end
  94.  
  95. %     disp(X)
  96. %     fprintf(')'%i\n', j);
  97.     fprintf('\nValues: \n');
  98.     mean_avg_rough = mean(avg_rough)
  99.     mean_rms_rough = mean(rms_rough)
  100.     mean_max_rough = mean(max_rough)
  101.    
  102. %     figure()
  103. %     imshow(img)
  104. %     hold on
  105. %     plot(line1)
  106. %     plot(line2)
  107. %     hold off
  108.  
  109. %     xlswrite(filename,mean_avg_rough);
  110.    
  111. %     filename = 'testdata.xlsx';
  112. %     X = ['Current Folder:',nm(1,j),' index: ',num2str(j)];
  113. %     OpenPath = strcat('C:\Users\TBL\Documents\MATLAB\1708_AMORE\',nm(1,j));
  114.    
  115.    
  116. %    A = {nm(1,j),mean_avg_rough,mean_rms_rough,mean_max_rough};
  117. %    titles = {'Folder','mean_avg_rough','mean_rms_rough','mean_max_rough'};
  118.     A = [nm(1,j),num2str(mean_avg_rough),num2str(mean_rms_rough),num2str(mean_max_rough)];
  119.  
  120.     xlRangeVariables = strcat('B',num2str(j+1),':','E',num2str(j+1));
  121.     xlswrite(filename,A,xlRangeVariables);
  122.  
  123.    
  124. % sheet = 2;
  125. % xlRange = 'E1';
  126.    
  127.  
  128.  
  129. end
  130.  
  131.  
  132.  
  133.  
  134. %mean_total_rough = mean(total_rough)
  135.  
  136.  
  137. % figure()
  138. % imshow(img)
  139. % hold on
  140. % plot(line1)
  141. % plot(line2)
  142. % hold off
  143.  
  144.  
  145. %}
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152. % [peak_height,valley_depth] = peak_valley(line3I,line2,W);
  153. % [avg_rough,rms_rough,max_rough,total_rough] = roughness(peak_height,valley_depth)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement