Cody

Solution 773105

Submitted on 7 Nov 2015 by Alfonso Nieto-Castanon
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','circles.png')); [centers,radii] = detectcircles(I,[18 20],13); c = [119 222; 185 218; 124 116; 37 37; 178 184; 93 167; 37 72; 71 38; 93 132; 122 186; 97 96; 71 74; 151 204]; r = 19*ones(13,1); d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[118 221;184 217;70 37;36 71;36 36;92 166;176 183;123 115;92 130;70 72;95 95;120 184;150 202] [19;19;19;19;19;19;19;19;19;19;19;19;19]

2   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','circlesBrightDark.png')); [centers,radii] = detectcircles(I,[32 64],6); c = [75 250; 100 100; 250 400; 300 120; 450 240; 330 370]; r = [35; 50; 60; 40; 50; 55]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[298 118;328 368;73 248;448 238;98 98;248 398] [40;55;35;50;50;60]

3   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','coins.png')); [centers,radii] = detectcircles(I,[24 30],10); c = [236 174; 149 35; 56 50; 266 103; 217 71; 120 209; 110 85; 175 120; 96 146; 37 107]; r = [25; 29; 25; 24; 29; 29; 24; 29; 29; 29]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[264 101;147 33;54 48;118 207;234 172;173 118;215 69;94 144;35 105;108 83] [24;29;24;30;25;29;29;29;29;25]

4   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','coloredChips.png')); [centers,radii] = detectcircles(I,[20 28],26); c = [83 177; 304 336; 420 88; 434 165; 244 166; 327 297; 273 53; 130 44; 271 281; 408 265; 312 192; 420 346; 146 199; 228 232; 329 135; 175 297; 366 224; 150 258; 217 107; 345 119; 445 68; 372 293; 150 342; 251 8; 259 217; 198 107]; r = [23; 24; 23; 23; 23; 23; 23; 23; 23; 23; 23; 24; 23; 23; 23; 24; 23; 24; 23; 23; 23; 24; 25; 23; 23; 25]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[310 191;406 263;127 42;241 164;270 51;418 344;148 256;269 279;442 66;364 222;173 295;143 197;325 295;326 133;196 106;249 6;370 290;343 117;258 216;226 229;148 340;419 86;217 105;301 334;428 162;79 174] [23;23;23;23;23;24;24;23;23;23;24;23;23;23;22;23;24;23;22;24;24;22;21;22;24;22]

5   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','eight.tif')); [centers,radii] = detectcircles(I,[35 40],4); c = [198 189; 247 72; 62 141; 124 58]; r = [37; 37; 38; 37]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[196 187;245 70;59 139;121 56] [38;38;38;38]

6   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','moon.tif')); [centers,radii] = detectcircles(I,[200 210],1); c = [253 287]; r = [205]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[252 285] 206

7   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','pillsetc.png')); [centers,radii] = detectcircles(I,[15 55],4); c = [103 240; 252 326; 119 130; 319 84]; r = [17; 17; 50; 37]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[249 324;101 238;118 132;315 76] [17;17;48;43]

8   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','tape.png')); [centers,radii] = detectcircles(I,[75 85],1); c = [236 172]; r = [80]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[234 171] 80

9   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','testpat1.png')); [centers,radii] = detectcircles(I,[110 120],1); c = [128 128]; r = [116]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[126 126] 116

10   Pass
%% I = imread(fullfile(matlabroot,'toolbox','images','imdata','toysnoflash.png')); [centers,radii] = detectcircles(I,[90 100],1); c = [267 506]; r = [94]; d1 = squeeze(sqrt(sum(bsxfun(@minus,centers,permute(c,str2num('3 2 1'))).^2,2))); d2 = squeeze(sqrt(sum(bsxfun(@minus,radii,permute(r,str2num('3 2 1'))).^2,2))); mask = d1<5 & d2<5; Re = mean(any(mask)); Pr = sum(any(mask))/size(mask,1); assert(Pr>=0.5) assert(Re>=0.75)

[264 504] 94