This is a static copy of a profile report

Home

bwfill>ParseInputs (15112 calls, 2.323 sec)
Generated 05-Nov-2014 07:52:50 using cpu time.
subfunction in file /usr1/opt/matlab/7.13/toolbox/images/images/bwfill.m
Copy to new window for comparing multiple runs

Parents (calling functions)

Function NameFunction TypeCalls
bwfillfunction15112
Lines where the most time was spent

Line NumberCodeCallsTotal Time% TimeTime Plot
334
badPix = find((r < 1) | (r ...
151120.250 s10.8%
182
switch nargin
151120.160 s6.9%
336
if (~isempty(badPix))
151120.130 s5.6%
330
if ~islogical(I)
151120.120 s5.2%
297
r = round(yi);
75560.100 s4.3%
All other lines  1.562 s67.2%
Totals  2.323 s100% 
Children (called functions)
No children
Code Analyzer results
No Code Analyzer messages.
Coverage results
[ Show coverage for parent directory ]
Total lines in function171
Non-code lines (comments, blank lines)50
Code lines (lines that can run)121
Code lines that did run31
Code lines that did not run90
Coverage (did run/can run)25.62 %
Function listing
   time   calls  line
170 function [xdata,ydata,I,xi,yi,r,c,style,newFig,fillHoles] = ParseInputs(varargin)
171
0.05 15112 172 style = 8;
0.05 15112 173 xdata = [];
0.06 15112 174 ydata = [];
0.03 15112 175 xi = [];
0.02 15112 176 yi = [];
0.07 15112 177 r = [];
0.03 15112 178 c = [];
0.03 15112 179 newFig = 0;
0.06 15112 180 fillHoles = 0;
181
0.16 15112 182 switch nargin
0.07 15112 183 case 0
184 % BWFILL
185
186 [xdata, ydata, I, flag] = getimage;
187 if (flag == 0)
188 error(message('images:bwfill:noImageFound'))
189 end
190 newFig = 1;
191 [xi,yi] = getpts;
192
193 r = round(axes2pix(size(I,1), ydata, yi));
194 c = round(axes2pix(size(I,2), xdata, xi));
195
0.08 15112 196 case 1
197 if ((numel(varargin{1}) == 1) && ...
198 ((varargin{1} == 4) || (varargin{1} == 8)))
199 % BWFILL(N)
200
201 style = varargin{1};
202 [xdata, ydata, I, flag] = getimage;
203 if (flag == 0)
204 error(message('images:bwfill:noImageFound'))
205 end
206
207 else
208 % BWFILL(BW)
209
210 I = varargin{1};
211 xdata = [1 size(I,2)];
212 ydata = [1 size(I,1)];
213 imshow(I,'XData',xdata,'YData',ydata);
214
215 end
216
217 newFig = 1;
218 [xi,yi] = getpts;
219 if (isempty(xi))
220 error(message('images:bwfill:interactiveSelectionAborted'))
221 end
222
223 r = round(axes2pix(size(I,1), ydata, yi));
224 c = round(axes2pix(size(I,2), xdata, xi));
225
0.08 15112 226 case 2
0.09 7556 227 if (ischar(varargin{2}))
0.07 7556 228 if (varargin{2}(1) == 'h')
229 % BWFILL(BW, 'holes')
0.04 7556 230 I = varargin{1};
0.04 7556 231 fillHoles = 1;
0.05 7556 232 style = 8;
233
234 else
235 error(message('images:bwfill:invalidInput'))
236 end
237
238 else
239
240 % BWFILL(BW, N)
241
242 I = varargin{1};
243 style = varargin{2};
244 if ((style ~= 4) && (style ~= 8))
245 error(message('images:bwfill:invalidN'))
246 end
247
248 xdata = [1 size(I,2)];
249 ydata = [1 size(I,1)];
250
251 imshow(I,'XData',xdata, 'YData',ydata);
252 newFig = 1;
253 [xi,yi] = getpts;
254 if (isempty(xi))
255 error(message('images:bwfill:interactiveSelectionAborted'))
256 end
257
258 r = round(axes2pix(size(I,1), ydata, yi));
259 c = round(axes2pix(size(I,2), xdata, xi));
260
261 end
262
0.02 7556 263 case 3
264 if (ischar(varargin{2}))
265 if (varargin{2}(1) == 'h')
266 % BWFILL(BW, 'holes', N)
267 I = varargin{1};
268 style = varargin{3};
269 fillHoles = 1;
270
271 else
272 error(message('images:bwfill:invalidInput'))
273 end
274
275 else
276
277 % BWFILL(BW,Xi,Yi)
278
279 I = varargin{1};
280 xdata = [1 size(I,2)];
281 ydata = [1 size(I,1)];
282 xi = varargin{2};
283 yi = varargin{3};
284 r = round(yi);
285 c = round(xi);
286
287 end
288
0.01 7556 289 case 4
290 % BWFILL(BW,Xi,Yi,N)
291
0.08 7556 292 I = varargin{1};
0.05 7556 293 xdata = [1 size(I,2)];
0.04 7556 294 ydata = [1 size(I,1)];
0.04 7556 295 xi = varargin{2};
0.05 7556 296 yi = varargin{3};
0.10 7556 297 r = round(yi);
0.06 7556 298 c = round(xi);
0.03 7556 299 style = varargin{4};
300
301 case 5
302 % BWFILL(X,Y,BW,Xi,Yi)
303
304 xdata = varargin{1};
305 ydata = varargin{2};
306 I = varargin{3};
307 xi = varargin{4};
308 yi = varargin{5};
309
310 r = round(axes2pix(size(I,1), ydata, yi));
311 c = round(axes2pix(size(I,2), xdata, xi));
312
313 case 6
314 % BWFILL(X,Y,BW,Xi,Yi,N)
315
316 xdata = varargin{1};
317 ydata = varargin{2};
318 I = varargin{3};
319 xi = varargin{4};
320 yi = varargin{5};
321 style = varargin{6};
322
323 r = round(axes2pix(size(I,1), ydata, yi));
324 c = round(axes2pix(size(I,2), xdata, xi));
325
326 otherwise
327 error(message('images:bwfill:tooManyInputs'))
328 end
329
0.12 15112 330 if ~islogical(I)
331 I = I ~= 0;
332 end
333
0.25 15112 334 badPix = find((r < 1) | (r > size(I,1)) | ...
335 (c < 1) | (c > size(I,2)));
0.13 15112 336 if (~isempty(badPix))
337 warning(message('images:bwfill:outOfRangeCoordinates'));
338 r(badPix) = [];
339 c(badPix) = [];
340 end