tuttelikz

getFezanSurface [!]

Sep 6th, 2017
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 5.60 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.  
  15. nm = {'01_KB_2\forearm','02_YJ_2\forearm','03_PU_2\forearm',...
  16.     '04_HG_2\forearm','05_HR_2\forearm','06_HG_2\forearm',...
  17.     '07_EJ_2\forearm','08_MA_2\forearm','09_NY_2\forearm','10_MR_2\forearm',...
  18.     '01_KB_2\forehead','02_YJ_2\forehead','04_HG_2\forehead','05_HR_2\forehead',...
  19.     '06_HG_2\forehead','07_EJ_2\forehead','08_MA_2\forehead','10_MR_2\forehead',...
  20.     '02_YJ_2\backhand','03_PU_2\backhand','05_HR_2\backhand','06_HG_2\backhand',...
  21.     '08_MA_2\backhand','09_NY_2\backhand','10_MR_2\backhand'};
  22.  
  23. % OpenfilePath = 'C:\Users\TBL\Documents\MATLAB\1708_AMORE\04_HG_1\forearm';
  24. max_step = 1;
  25. gsigma = 4;
  26.  
  27. filename = 'testdata_side_820111.xlsx';
  28. titles = {'Folder','mean_avg_rough','mean_rms_rough','mean_max_rough'};
  29. xlRangeTitle = 'B1:E1';
  30. xlswrite(filename,titles,xlRangeTitle);
  31.    
  32. for j = 1:1
  33.     OpenPath = strcat('C:\Users\TBL\Documents\MATLAB\1708_AMORE\',nm(1,j));
  34.     X = ['Current Folder:',nm(1,j),' index: ',num2str(j)];
  35.     disp(X)
  36.     for step = 1:max_step
  37.         read_file_name = strcat('Image',num2str(step-1,'%04d'),'.jpg');
  38.         img = imread([OpenPath{1},'\' ,read_file_name]);
  39.  
  40.         %img = imread('Image0035.jpg');
  41.         [H,W] = size(img);
  42.  
  43.         diff = 1;
  44.        
  45.     %     img = double(img);
  46.         img_filt = imgaussfilt(img,gsigma);
  47.         img_diff = filt_diff(img_filt,H,W,diff);
  48.         up = H-2;
  49.         down = 222;
  50.         [img_line_surf,ind_line_surf,avg_index,ref_line,line1] = line_surf3(img_diff,H,W,diff,up,down);
  51.  
  52.  
  53.         % figure()
  54.         % imshow(img_line_surf)
  55.  
  56.         % [line3V,line3I] = min(img_line_surf);
  57.  
  58.         diff = 5;
  59.         med = 60;
  60.         %img_med = imgaussfilt(img_crop,gsigma);
  61.         img_med = padarray(img',med,'replicate','both');
  62.         img_med = padarray(img_med',med,'replicate','both');
  63.         img_med = medfilt2(img_med,[med*2 med*2]);
  64.         img_med = img_med([med+1:H+med],[med+1:W+med]);
  65.         img_filt1 = zeros(H+diff,W);
  66.         img_filt2 = zeros(H+diff,W);
  67.  
  68.         img_filt1([diff+1:H+diff],:) = img_med;
  69.         img_filt2([1:H],[1:W]) = img_med;
  70.  
  71.         %%
  72.         img_med = img_filt1 - img_filt2;
  73.         img_med = img_med([diff+1:H+diff],:);
  74.         %%
  75.  
  76.         %%
  77.         % figure();
  78.         % imshow(img_med,[]);
  79.  
  80.         img_line2 = zeros(H,W);
  81.  
  82.         %diff = 10;
  83.         for i = 1:W
  84.             [local_max,local_index] = min(img_med(:,i));
  85.             img_line2(local_index,i) = 255; %+2 %-10    ubrat -diff
  86.             line2(i) = local_index-diff; %brat -diff
  87.         end
  88.        
  89.        
  90.  
  91.         figure()
  92.         imshow(img)
  93.         hold on
  94.         plot(line2)
  95.         plot(line1)
  96.         hold off
  97.        
  98.        
  99.        
  100. %         [M,I] = max(img_filt);
  101.         I = line2;
  102.         minRow = min(I);
  103.  
  104.         for i = 1:W
  105.             diffShift(i) = I(i)-minRow;
  106.             lowLine1(i) = I(i)+100-diffShift(i);
  107.         end
  108.         %imshow(img_filt)
  109.  
  110.         im = zeros(H,W);
  111.         topshift = 30;
  112.         %b = 500;
  113.         c = 20;
  114. %        
  115. %        
  116.         size(img_med,2)
  117.         for i=1:size(im,2)
  118.             j=200-I(i);
  119.             im(topshift+1-c:(topshift+j-9),i)=img(I(i)-c:(I(i)-10+j),i);
  120.             %im(topshift+1-c:(topshift+j-9),i)=img_crop(I(i)-c:(I(i)-10+j),i);
  121.         end
  122. %      
  123.  
  124.         figure()
  125.         imshow(im,[])
  126. %         figure()
  127. %         imshow(im)
  128.        
  129.        
  130.        
  131. %         hold on
  132. %         plot(line2)
  133. %         plot(line1)
  134. %         hold off
  135.    
  136. %         valley_depth = peak_valley(line1,line2,W);
  137. %         [avg_rough(step),rms_rough(step),max_rough(step)] = roughness_valley(valley_depth);
  138. %         %fprintf('%i\n', step);
  139. %         fprintf('.');
  140. %         if mod(step,100) == 0
  141. %             fprintf('\n');
  142. %         end
  143.        
  144.        
  145.     end
  146.  
  147. %     disp(X)
  148. %     fprintf(')'%i\n', j);
  149.     fprintf('\nValues: \n');
  150. %     mean_avg_rough = mean(avg_rough)
  151. %     mean_rms_rough = mean(rms_rough)
  152. %     mean_max_rough = mean(max_rough)
  153.    
  154. %     figure()
  155. %     imshow(img)
  156. %     hold on
  157. %     plot(line1)
  158. %     plot(line2)
  159. %     hold off
  160.  
  161. %     xlswrite(filename,mean_avg_rough);
  162.    
  163. %     filename = 'testdata.xlsx';
  164. %     X = ['Current Folder:',nm(1,j),' index: ',num2str(j)];
  165. %     OpenPath = strcat('C:\Users\TBL\Documents\MATLAB\1708_AMORE\',nm(1,j));
  166.    
  167.    
  168. %    A = {nm(1,j),mean_avg_rough,mean_rms_rough,mean_max_rough};
  169. %    titles = {'Folder','mean_avg_rough','mean_rms_rough','mean_max_rough'};
  170. %     A = [nm(1,j),num2str(mean_avg_rough),num2str(mean_rms_rough),num2str(mean_max_rough)];
  171.  
  172. %     xlRangeVariables = strcat('B',num2str(j+1),':','E',num2str(j+1));
  173. %     xlswrite(filename,A,xlRangeVariables);
  174.  
  175.    
  176. % sheet = 2;
  177. % xlRange = 'E1';
  178.    
  179.  
  180.  
  181. end
  182.  
  183.  
  184.  
  185.  
  186. %mean_total_rough = mean(total_rough)
  187.  
  188.  
  189. figure()
  190. imshow(img)
  191. hold on
  192. plot(line1)
  193. plot(line2)
  194. hold off
  195.  
  196.  
  197. %}
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204. % [peak_height,valley_depth] = peak_valley(line3I,line2,W);
  205. % [avg_rough,rms_rough,max_rough,total_rough] = roughness(peak_height,valley_depth)
Advertisement
Add Comment
Please, Sign In to add comment