58 uint16_t x, y, x_min, x_max, x_start, x_end, y_start, y_end;
67 if(x_padding < min_dist) x_padding = min_dist;
68 if(y_padding < min_dist) y_padding = min_dist;
71 x_start = 3 + x_padding;
72 y_start = 3 + y_padding;
73 x_end = img->
w - 3 - x_padding;
74 y_end = img->
h - 3 - y_padding;
76 x_start = roi[0] > 0 ? roi[0] : 3 + x_padding;
77 y_start = roi[1] > 0 ? roi[1] : 3 + y_padding;
78 x_end = roi[2] < (img->
w - 3 - x_padding) ? roi[2] : img->
w - 3 - x_padding;
79 y_end = roi[3] < (img->
h - 3 - y_padding) ? roi[3] : img->
h - 3 - y_padding;
87 for (y = y_start; y < y_end; y++) {
89 if (min_dist > 0) { y_min = y - min_dist; }
91 for (x = x_start; x < x_end; x++) {
107 if ((*ret_corners)[i].y < y_min) {
111 if (x_min < (*ret_corners)[i].x && (*ret_corners)[i].x < x_max) {
127 const uint8_t *
p = ((
uint8_t *)img->
buf) + y * img->
w * pixel_size + x * pixel_size + pixel_size / 2;
132 if (
p[pixel[0]] > cb)
133 if (
p[pixel[1]] > cb)
134 if (
p[pixel[2]] > cb)
135 if (
p[pixel[3]] > cb)
136 if (
p[pixel[4]] > cb)
137 if (
p[pixel[5]] > cb)
138 if (
p[pixel[6]] > cb)
139 if (
p[pixel[7]] > cb)
140 if (
p[pixel[8]] > cb)
142 else if (
p[pixel[15]] > cb)
147 else if (
p[pixel[7]] < c_b)
148 if (
p[pixel[14]] > cb)
149 if (
p[pixel[15]] > cb)
154 else if (
p[pixel[14]] < c_b)
155 if (
p[pixel[8]] < c_b)
156 if (
p[pixel[9]] < c_b)
157 if (
p[pixel[10]] < c_b)
158 if (
p[pixel[11]] < c_b)
159 if (
p[pixel[12]] < c_b)
160 if (
p[pixel[13]] < c_b)
161 if (
p[pixel[15]] < c_b)
187 else if (
p[pixel[14]] > cb)
188 if (
p[pixel[15]] > cb)
196 else if (
p[pixel[6]] < c_b)
197 if (
p[pixel[15]] > cb)
198 if (
p[pixel[13]] > cb)
199 if (
p[pixel[14]] > cb)
204 else if (
p[pixel[13]] < c_b)
205 if (
p[pixel[7]] < c_b)
206 if (
p[pixel[8]] < c_b)
207 if (
p[pixel[9]] < c_b)
208 if (
p[pixel[10]] < c_b)
209 if (
p[pixel[11]] < c_b)
210 if (
p[pixel[12]] < c_b)
211 if (
p[pixel[14]] < c_b)
237 else if (
p[pixel[7]] < c_b)
238 if (
p[pixel[8]] < c_b)
239 if (
p[pixel[9]] < c_b)
240 if (
p[pixel[10]] < c_b)
241 if (
p[pixel[11]] < c_b)
242 if (
p[pixel[12]] < c_b)
243 if (
p[pixel[13]] < c_b)
244 if (
p[pixel[14]] < c_b)
270 else if (
p[pixel[13]] > cb)
271 if (
p[pixel[14]] > cb)
272 if (
p[pixel[15]] > cb)
280 else if (
p[pixel[13]] < c_b)
281 if (
p[pixel[7]] < c_b)
282 if (
p[pixel[8]] < c_b)
283 if (
p[pixel[9]] < c_b)
284 if (
p[pixel[10]] < c_b)
285 if (
p[pixel[11]] < c_b)
286 if (
p[pixel[12]] < c_b)
287 if (
p[pixel[14]] < c_b)
288 if (
p[pixel[15]] < c_b)
317 else if (
p[pixel[5]] < c_b)
318 if (
p[pixel[14]] > cb)
319 if (
p[pixel[12]] > cb)
320 if (
p[pixel[13]] > cb)
321 if (
p[pixel[15]] > cb)
323 else if (
p[pixel[6]] > cb)
324 if (
p[pixel[7]] > cb)
325 if (
p[pixel[8]] > cb)
326 if (
p[pixel[9]] > cb)
327 if (
p[pixel[10]] > cb)
328 if (
p[pixel[11]] > cb)
351 else if (
p[pixel[12]] < c_b)
352 if (
p[pixel[6]] < c_b)
353 if (
p[pixel[7]] < c_b)
354 if (
p[pixel[8]] < c_b)
355 if (
p[pixel[9]] < c_b)
356 if (
p[pixel[10]] < c_b)
357 if (
p[pixel[11]] < c_b)
358 if (
p[pixel[13]] < c_b)
384 else if (
p[pixel[14]] < c_b)
385 if (
p[pixel[7]] < c_b)
386 if (
p[pixel[8]] < c_b)
387 if (
p[pixel[9]] < c_b)
388 if (
p[pixel[10]] < c_b)
389 if (
p[pixel[11]] < c_b)
390 if (
p[pixel[12]] < c_b)
391 if (
p[pixel[13]] < c_b)
392 if (
p[pixel[6]] < c_b)
394 else if (
p[pixel[15]] < c_b)
420 else if (
p[pixel[6]] < c_b)
421 if (
p[pixel[7]] < c_b)
422 if (
p[pixel[8]] < c_b)
423 if (
p[pixel[9]] < c_b)
424 if (
p[pixel[10]] < c_b)
425 if (
p[pixel[11]] < c_b)
426 if (
p[pixel[12]] < c_b)
427 if (
p[pixel[13]] < c_b)
453 else if (
p[pixel[12]] > cb)
454 if (
p[pixel[13]] > cb)
455 if (
p[pixel[14]] > cb)
456 if (
p[pixel[15]] > cb)
458 else if (
p[pixel[6]] > cb)
459 if (
p[pixel[7]] > cb)
460 if (
p[pixel[8]] > cb)
461 if (
p[pixel[9]] > cb)
462 if (
p[pixel[10]] > cb)
463 if (
p[pixel[11]] > cb)
489 else if (
p[pixel[12]] < c_b)
490 if (
p[pixel[7]] < c_b)
491 if (
p[pixel[8]] < c_b)
492 if (
p[pixel[9]] < c_b)
493 if (
p[pixel[10]] < c_b)
494 if (
p[pixel[11]] < c_b)
495 if (
p[pixel[13]] < c_b)
496 if (
p[pixel[14]] < c_b)
497 if (
p[pixel[6]] < c_b)
499 else if (
p[pixel[15]] < c_b)
528 else if (
p[pixel[4]] < c_b)
529 if (
p[pixel[13]] > cb)
530 if (
p[pixel[11]] > cb)
531 if (
p[pixel[12]] > cb)
532 if (
p[pixel[14]] > cb)
533 if (
p[pixel[15]] > cb)
535 else if (
p[pixel[6]] > cb)
536 if (
p[pixel[7]] > cb)
537 if (
p[pixel[8]] > cb)
538 if (
p[pixel[9]] > cb)
539 if (
p[pixel[10]] > cb)
556 else if (
p[pixel[5]] > cb)
557 if (
p[pixel[6]] > cb)
558 if (
p[pixel[7]] > cb)
559 if (
p[pixel[8]] > cb)
560 if (
p[pixel[9]] > cb)
561 if (
p[pixel[10]] > cb)
584 else if (
p[pixel[11]] < c_b)
585 if (
p[pixel[5]] < c_b)
586 if (
p[pixel[6]] < c_b)
587 if (
p[pixel[7]] < c_b)
588 if (
p[pixel[8]] < c_b)
589 if (
p[pixel[9]] < c_b)
590 if (
p[pixel[10]] < c_b)
591 if (
p[pixel[12]] < c_b)
617 else if (
p[pixel[13]] < c_b)
618 if (
p[pixel[7]] < c_b)
619 if (
p[pixel[8]] < c_b)
620 if (
p[pixel[9]] < c_b)
621 if (
p[pixel[10]] < c_b)
622 if (
p[pixel[11]] < c_b)
623 if (
p[pixel[12]] < c_b)
624 if (
p[pixel[6]] < c_b)
625 if (
p[pixel[5]] < c_b)
627 else if (
p[pixel[14]] < c_b)
632 else if (
p[pixel[14]] < c_b)
633 if (
p[pixel[15]] < c_b)
659 else if (
p[pixel[5]] < c_b)
660 if (
p[pixel[6]] < c_b)
661 if (
p[pixel[7]] < c_b)
662 if (
p[pixel[8]] < c_b)
663 if (
p[pixel[9]] < c_b)
664 if (
p[pixel[10]] < c_b)
665 if (
p[pixel[11]] < c_b)
666 if (
p[pixel[12]] < c_b)
692 else if (
p[pixel[11]] > cb)
693 if (
p[pixel[12]] > cb)
694 if (
p[pixel[13]] > cb)
695 if (
p[pixel[14]] > cb)
696 if (
p[pixel[15]] > cb)
698 else if (
p[pixel[6]] > cb)
699 if (
p[pixel[7]] > cb)
700 if (
p[pixel[8]] > cb)
701 if (
p[pixel[9]] > cb)
702 if (
p[pixel[10]] > cb)
719 else if (
p[pixel[5]] > cb)
720 if (
p[pixel[6]] > cb)
721 if (
p[pixel[7]] > cb)
722 if (
p[pixel[8]] > cb)
723 if (
p[pixel[9]] > cb)
724 if (
p[pixel[10]] > cb)
750 else if (
p[pixel[11]] < c_b)
751 if (
p[pixel[7]] < c_b)
752 if (
p[pixel[8]] < c_b)
753 if (
p[pixel[9]] < c_b)
754 if (
p[pixel[10]] < c_b)
755 if (
p[pixel[12]] < c_b)
756 if (
p[pixel[13]] < c_b)
757 if (
p[pixel[6]] < c_b)
758 if (
p[pixel[5]] < c_b)
760 else if (
p[pixel[14]] < c_b)
765 else if (
p[pixel[14]] < c_b)
766 if (
p[pixel[15]] < c_b)
795 else if (
p[pixel[3]] < c_b)
796 if (
p[pixel[10]] > cb)
797 if (
p[pixel[11]] > cb)
798 if (
p[pixel[12]] > cb)
799 if (
p[pixel[13]] > cb)
800 if (
p[pixel[14]] > cb)
801 if (
p[pixel[15]] > cb)
803 else if (
p[pixel[6]] > cb)
804 if (
p[pixel[7]] > cb)
805 if (
p[pixel[8]] > cb)
806 if (
p[pixel[9]] > cb)
820 else if (
p[pixel[5]] > cb)
821 if (
p[pixel[6]] > cb)
822 if (
p[pixel[7]] > cb)
823 if (
p[pixel[8]] > cb)
824 if (
p[pixel[9]] > cb)
841 else if (
p[pixel[4]] > cb)
842 if (
p[pixel[5]] > cb)
843 if (
p[pixel[6]] > cb)
844 if (
p[pixel[7]] > cb)
845 if (
p[pixel[8]] > cb)
846 if (
p[pixel[9]] > cb)
872 else if (
p[pixel[10]] < c_b)
873 if (
p[pixel[7]] < c_b)
874 if (
p[pixel[8]] < c_b)
875 if (
p[pixel[9]] < c_b)
876 if (
p[pixel[11]] < c_b)
877 if (
p[pixel[6]] < c_b)
878 if (
p[pixel[5]] < c_b)
879 if (
p[pixel[4]] < c_b)
881 else if (
p[pixel[12]] < c_b)
882 if (
p[pixel[13]] < c_b)
890 else if (
p[pixel[12]] < c_b)
891 if (
p[pixel[13]] < c_b)
892 if (
p[pixel[14]] < c_b)
903 else if (
p[pixel[12]] < c_b)
904 if (
p[pixel[13]] < c_b)
905 if (
p[pixel[14]] < c_b)
906 if (
p[pixel[15]] < c_b)
935 else if (
p[pixel[10]] > cb)
936 if (
p[pixel[11]] > cb)
937 if (
p[pixel[12]] > cb)
938 if (
p[pixel[13]] > cb)
939 if (
p[pixel[14]] > cb)
940 if (
p[pixel[15]] > cb)
942 else if (
p[pixel[6]] > cb)
943 if (
p[pixel[7]] > cb)
944 if (
p[pixel[8]] > cb)
945 if (
p[pixel[9]] > cb)
959 else if (
p[pixel[5]] > cb)
960 if (
p[pixel[6]] > cb)
961 if (
p[pixel[7]] > cb)
962 if (
p[pixel[8]] > cb)
963 if (
p[pixel[9]] > cb)
980 else if (
p[pixel[4]] > cb)
981 if (
p[pixel[5]] > cb)
982 if (
p[pixel[6]] > cb)
983 if (
p[pixel[7]] > cb)
984 if (
p[pixel[8]] > cb)
985 if (
p[pixel[9]] > cb)
1011 else if (
p[pixel[10]] < c_b)
1012 if (
p[pixel[7]] < c_b)
1013 if (
p[pixel[8]] < c_b)
1014 if (
p[pixel[9]] < c_b)
1015 if (
p[pixel[11]] < c_b)
1016 if (
p[pixel[12]] < c_b)
1017 if (
p[pixel[6]] < c_b)
1018 if (
p[pixel[5]] < c_b)
1019 if (
p[pixel[4]] < c_b)
1021 else if (
p[pixel[13]] < c_b)
1026 else if (
p[pixel[13]] < c_b)
1027 if (
p[pixel[14]] < c_b)
1035 else if (
p[pixel[13]] < c_b)
1036 if (
p[pixel[14]] < c_b)
1037 if (
p[pixel[15]] < c_b)
1066 else if (
p[pixel[2]] < c_b)
1067 if (
p[pixel[9]] > cb)
1068 if (
p[pixel[10]] > cb)
1069 if (
p[pixel[11]] > cb)
1070 if (
p[pixel[12]] > cb)
1071 if (
p[pixel[13]] > cb)
1072 if (
p[pixel[14]] > cb)
1073 if (
p[pixel[15]] > cb)
1075 else if (
p[pixel[6]] > cb)
1076 if (
p[pixel[7]] > cb)
1077 if (
p[pixel[8]] > cb)
1088 else if (
p[pixel[5]] > cb)
1089 if (
p[pixel[6]] > cb)
1090 if (
p[pixel[7]] > cb)
1091 if (
p[pixel[8]] > cb)
1105 else if (
p[pixel[4]] > cb)
1106 if (
p[pixel[5]] > cb)
1107 if (
p[pixel[6]] > cb)
1108 if (
p[pixel[7]] > cb)
1109 if (
p[pixel[8]] > cb)
1126 else if (
p[pixel[3]] > cb)
1127 if (
p[pixel[4]] > cb)
1128 if (
p[pixel[5]] > cb)
1129 if (
p[pixel[6]] > cb)
1130 if (
p[pixel[7]] > cb)
1131 if (
p[pixel[8]] > cb)
1157 else if (
p[pixel[9]] < c_b)
1158 if (
p[pixel[7]] < c_b)
1159 if (
p[pixel[8]] < c_b)
1160 if (
p[pixel[10]] < c_b)
1161 if (
p[pixel[6]] < c_b)
1162 if (
p[pixel[5]] < c_b)
1163 if (
p[pixel[4]] < c_b)
1164 if (
p[pixel[3]] < c_b)
1166 else if (
p[pixel[11]] < c_b)
1167 if (
p[pixel[12]] < c_b)
1175 else if (
p[pixel[11]] < c_b)
1176 if (
p[pixel[12]] < c_b)
1177 if (
p[pixel[13]] < c_b)
1188 else if (
p[pixel[11]] < c_b)
1189 if (
p[pixel[12]] < c_b)
1190 if (
p[pixel[13]] < c_b)
1191 if (
p[pixel[14]] < c_b)
1205 else if (
p[pixel[11]] < c_b)
1206 if (
p[pixel[12]] < c_b)
1207 if (
p[pixel[13]] < c_b)
1208 if (
p[pixel[14]] < c_b)
1209 if (
p[pixel[15]] < c_b)
1238 else if (
p[pixel[9]] > cb)
1239 if (
p[pixel[10]] > cb)
1240 if (
p[pixel[11]] > cb)
1241 if (
p[pixel[12]] > cb)
1242 if (
p[pixel[13]] > cb)
1243 if (
p[pixel[14]] > cb)
1244 if (
p[pixel[15]] > cb)
1246 else if (
p[pixel[6]] > cb)
1247 if (
p[pixel[7]] > cb)
1248 if (
p[pixel[8]] > cb)
1259 else if (
p[pixel[5]] > cb)
1260 if (
p[pixel[6]] > cb)
1261 if (
p[pixel[7]] > cb)
1262 if (
p[pixel[8]] > cb)
1276 else if (
p[pixel[4]] > cb)
1277 if (
p[pixel[5]] > cb)
1278 if (
p[pixel[6]] > cb)
1279 if (
p[pixel[7]] > cb)
1280 if (
p[pixel[8]] > cb)
1297 else if (
p[pixel[3]] > cb)
1298 if (
p[pixel[4]] > cb)
1299 if (
p[pixel[5]] > cb)
1300 if (
p[pixel[6]] > cb)
1301 if (
p[pixel[7]] > cb)
1302 if (
p[pixel[8]] > cb)
1328 else if (
p[pixel[9]] < c_b)
1329 if (
p[pixel[7]] < c_b)
1330 if (
p[pixel[8]] < c_b)
1331 if (
p[pixel[10]] < c_b)
1332 if (
p[pixel[11]] < c_b)
1333 if (
p[pixel[6]] < c_b)
1334 if (
p[pixel[5]] < c_b)
1335 if (
p[pixel[4]] < c_b)
1336 if (
p[pixel[3]] < c_b)
1338 else if (
p[pixel[12]] < c_b)
1343 else if (
p[pixel[12]] < c_b)
1344 if (
p[pixel[13]] < c_b)
1352 else if (
p[pixel[12]] < c_b)
1353 if (
p[pixel[13]] < c_b)
1354 if (
p[pixel[14]] < c_b)
1365 else if (
p[pixel[12]] < c_b)
1366 if (
p[pixel[13]] < c_b)
1367 if (
p[pixel[14]] < c_b)
1368 if (
p[pixel[15]] < c_b)
1397 else if (
p[pixel[1]] < c_b)
1398 if (
p[pixel[8]] > cb)
1399 if (
p[pixel[9]] > cb)
1400 if (
p[pixel[10]] > cb)
1401 if (
p[pixel[11]] > cb)
1402 if (
p[pixel[12]] > cb)
1403 if (
p[pixel[13]] > cb)
1404 if (
p[pixel[14]] > cb)
1405 if (
p[pixel[15]] > cb)
1407 else if (
p[pixel[6]] > cb)
1408 if (
p[pixel[7]] > cb)
1416 else if (
p[pixel[5]] > cb)
1417 if (
p[pixel[6]] > cb)
1418 if (
p[pixel[7]] > cb)
1429 else if (
p[pixel[4]] > cb)
1430 if (
p[pixel[5]] > cb)
1431 if (
p[pixel[6]] > cb)
1432 if (
p[pixel[7]] > cb)
1446 else if (
p[pixel[3]] > cb)
1447 if (
p[pixel[4]] > cb)
1448 if (
p[pixel[5]] > cb)
1449 if (
p[pixel[6]] > cb)
1450 if (
p[pixel[7]] > cb)
1467 else if (
p[pixel[2]] > cb)
1468 if (
p[pixel[3]] > cb)
1469 if (
p[pixel[4]] > cb)
1470 if (
p[pixel[5]] > cb)
1471 if (
p[pixel[6]] > cb)
1472 if (
p[pixel[7]] > cb)
1498 else if (
p[pixel[8]] < c_b)
1499 if (
p[pixel[7]] < c_b)
1500 if (
p[pixel[9]] < c_b)
1501 if (
p[pixel[6]] < c_b)
1502 if (
p[pixel[5]] < c_b)
1503 if (
p[pixel[4]] < c_b)
1504 if (
p[pixel[3]] < c_b)
1505 if (
p[pixel[2]] < c_b)
1507 else if (
p[pixel[10]] < c_b)
1508 if (
p[pixel[11]] < c_b)
1516 else if (
p[pixel[10]] < c_b)
1517 if (
p[pixel[11]] < c_b)
1518 if (
p[pixel[12]] < c_b)
1529 else if (
p[pixel[10]] < c_b)
1530 if (
p[pixel[11]] < c_b)
1531 if (
p[pixel[12]] < c_b)
1532 if (
p[pixel[13]] < c_b)
1546 else if (
p[pixel[10]] < c_b)
1547 if (
p[pixel[11]] < c_b)
1548 if (
p[pixel[12]] < c_b)
1549 if (
p[pixel[13]] < c_b)
1550 if (
p[pixel[14]] < c_b)
1567 else if (
p[pixel[10]] < c_b)
1568 if (
p[pixel[11]] < c_b)
1569 if (
p[pixel[12]] < c_b)
1570 if (
p[pixel[13]] < c_b)
1571 if (
p[pixel[14]] < c_b)
1572 if (
p[pixel[15]] < c_b)
1601 else if (
p[pixel[8]] > cb)
1602 if (
p[pixel[9]] > cb)
1603 if (
p[pixel[10]] > cb)
1604 if (
p[pixel[11]] > cb)
1605 if (
p[pixel[12]] > cb)
1606 if (
p[pixel[13]] > cb)
1607 if (
p[pixel[14]] > cb)
1608 if (
p[pixel[15]] > cb)
1610 else if (
p[pixel[6]] > cb)
1611 if (
p[pixel[7]] > cb)
1619 else if (
p[pixel[5]] > cb)
1620 if (
p[pixel[6]] > cb)
1621 if (
p[pixel[7]] > cb)
1632 else if (
p[pixel[4]] > cb)
1633 if (
p[pixel[5]] > cb)
1634 if (
p[pixel[6]] > cb)
1635 if (
p[pixel[7]] > cb)
1649 else if (
p[pixel[3]] > cb)
1650 if (
p[pixel[4]] > cb)
1651 if (
p[pixel[5]] > cb)
1652 if (
p[pixel[6]] > cb)
1653 if (
p[pixel[7]] > cb)
1670 else if (
p[pixel[2]] > cb)
1671 if (
p[pixel[3]] > cb)
1672 if (
p[pixel[4]] > cb)
1673 if (
p[pixel[5]] > cb)
1674 if (
p[pixel[6]] > cb)
1675 if (
p[pixel[7]] > cb)
1701 else if (
p[pixel[8]] < c_b)
1702 if (
p[pixel[7]] < c_b)
1703 if (
p[pixel[9]] < c_b)
1704 if (
p[pixel[10]] < c_b)
1705 if (
p[pixel[6]] < c_b)
1706 if (
p[pixel[5]] < c_b)
1707 if (
p[pixel[4]] < c_b)
1708 if (
p[pixel[3]] < c_b)
1709 if (
p[pixel[2]] < c_b)
1711 else if (
p[pixel[11]] < c_b)
1716 else if (
p[pixel[11]] < c_b)
1717 if (
p[pixel[12]] < c_b)
1725 else if (
p[pixel[11]] < c_b)
1726 if (
p[pixel[12]] < c_b)
1727 if (
p[pixel[13]] < c_b)
1738 else if (
p[pixel[11]] < c_b)
1739 if (
p[pixel[12]] < c_b)
1740 if (
p[pixel[13]] < c_b)
1741 if (
p[pixel[14]] < c_b)
1755 else if (
p[pixel[11]] < c_b)
1756 if (
p[pixel[12]] < c_b)
1757 if (
p[pixel[13]] < c_b)
1758 if (
p[pixel[14]] < c_b)
1759 if (
p[pixel[15]] < c_b)
1788 else if (
p[pixel[0]] < c_b)
1789 if (
p[pixel[1]] > cb)
1790 if (
p[pixel[8]] > cb)
1791 if (
p[pixel[7]] > cb)
1792 if (
p[pixel[9]] > cb)
1793 if (
p[pixel[6]] > cb)
1794 if (
p[pixel[5]] > cb)
1795 if (
p[pixel[4]] > cb)
1796 if (
p[pixel[3]] > cb)
1797 if (
p[pixel[2]] > cb)
1799 else if (
p[pixel[10]] > cb)
1800 if (
p[pixel[11]] > cb)
1808 else if (
p[pixel[10]] > cb)
1809 if (
p[pixel[11]] > cb)
1810 if (
p[pixel[12]] > cb)
1821 else if (
p[pixel[10]] > cb)
1822 if (
p[pixel[11]] > cb)
1823 if (
p[pixel[12]] > cb)
1824 if (
p[pixel[13]] > cb)
1838 else if (
p[pixel[10]] > cb)
1839 if (
p[pixel[11]] > cb)
1840 if (
p[pixel[12]] > cb)
1841 if (
p[pixel[13]] > cb)
1842 if (
p[pixel[14]] > cb)
1859 else if (
p[pixel[10]] > cb)
1860 if (
p[pixel[11]] > cb)
1861 if (
p[pixel[12]] > cb)
1862 if (
p[pixel[13]] > cb)
1863 if (
p[pixel[14]] > cb)
1864 if (
p[pixel[15]] > cb)
1890 else if (
p[pixel[8]] < c_b)
1891 if (
p[pixel[9]] < c_b)
1892 if (
p[pixel[10]] < c_b)
1893 if (
p[pixel[11]] < c_b)
1894 if (
p[pixel[12]] < c_b)
1895 if (
p[pixel[13]] < c_b)
1896 if (
p[pixel[14]] < c_b)
1897 if (
p[pixel[15]] < c_b)
1899 else if (
p[pixel[6]] < c_b)
1900 if (
p[pixel[7]] < c_b)
1908 else if (
p[pixel[5]] < c_b)
1909 if (
p[pixel[6]] < c_b)
1910 if (
p[pixel[7]] < c_b)
1921 else if (
p[pixel[4]] < c_b)
1922 if (
p[pixel[5]] < c_b)
1923 if (
p[pixel[6]] < c_b)
1924 if (
p[pixel[7]] < c_b)
1938 else if (
p[pixel[3]] < c_b)
1939 if (
p[pixel[4]] < c_b)
1940 if (
p[pixel[5]] < c_b)
1941 if (
p[pixel[6]] < c_b)
1942 if (
p[pixel[7]] < c_b)
1959 else if (
p[pixel[2]] < c_b)
1960 if (
p[pixel[3]] < c_b)
1961 if (
p[pixel[4]] < c_b)
1962 if (
p[pixel[5]] < c_b)
1963 if (
p[pixel[6]] < c_b)
1964 if (
p[pixel[7]] < c_b)
1993 else if (
p[pixel[1]] < c_b)
1994 if (
p[pixel[2]] > cb)
1995 if (
p[pixel[9]] > cb)
1996 if (
p[pixel[7]] > cb)
1997 if (
p[pixel[8]] > cb)
1998 if (
p[pixel[10]] > cb)
1999 if (
p[pixel[6]] > cb)
2000 if (
p[pixel[5]] > cb)
2001 if (
p[pixel[4]] > cb)
2002 if (
p[pixel[3]] > cb)
2004 else if (
p[pixel[11]] > cb)
2005 if (
p[pixel[12]] > cb)
2013 else if (
p[pixel[11]] > cb)
2014 if (
p[pixel[12]] > cb)
2015 if (
p[pixel[13]] > cb)
2026 else if (
p[pixel[11]] > cb)
2027 if (
p[pixel[12]] > cb)
2028 if (
p[pixel[13]] > cb)
2029 if (
p[pixel[14]] > cb)
2043 else if (
p[pixel[11]] > cb)
2044 if (
p[pixel[12]] > cb)
2045 if (
p[pixel[13]] > cb)
2046 if (
p[pixel[14]] > cb)
2047 if (
p[pixel[15]] > cb)
2073 else if (
p[pixel[9]] < c_b)
2074 if (
p[pixel[10]] < c_b)
2075 if (
p[pixel[11]] < c_b)
2076 if (
p[pixel[12]] < c_b)
2077 if (
p[pixel[13]] < c_b)
2078 if (
p[pixel[14]] < c_b)
2079 if (
p[pixel[15]] < c_b)
2081 else if (
p[pixel[6]] < c_b)
2082 if (
p[pixel[7]] < c_b)
2083 if (
p[pixel[8]] < c_b)
2094 else if (
p[pixel[5]] < c_b)
2095 if (
p[pixel[6]] < c_b)
2096 if (
p[pixel[7]] < c_b)
2097 if (
p[pixel[8]] < c_b)
2111 else if (
p[pixel[4]] < c_b)
2112 if (
p[pixel[5]] < c_b)
2113 if (
p[pixel[6]] < c_b)
2114 if (
p[pixel[7]] < c_b)
2115 if (
p[pixel[8]] < c_b)
2132 else if (
p[pixel[3]] < c_b)
2133 if (
p[pixel[4]] < c_b)
2134 if (
p[pixel[5]] < c_b)
2135 if (
p[pixel[6]] < c_b)
2136 if (
p[pixel[7]] < c_b)
2137 if (
p[pixel[8]] < c_b)
2166 else if (
p[pixel[2]] < c_b)
2167 if (
p[pixel[3]] > cb)
2168 if (
p[pixel[10]] > cb)
2169 if (
p[pixel[7]] > cb)
2170 if (
p[pixel[8]] > cb)
2171 if (
p[pixel[9]] > cb)
2172 if (
p[pixel[11]] > cb)
2173 if (
p[pixel[6]] > cb)
2174 if (
p[pixel[5]] > cb)
2175 if (
p[pixel[4]] > cb)
2177 else if (
p[pixel[12]] > cb)
2178 if (
p[pixel[13]] > cb)
2186 else if (
p[pixel[12]] > cb)
2187 if (
p[pixel[13]] > cb)
2188 if (
p[pixel[14]] > cb)
2199 else if (
p[pixel[12]] > cb)
2200 if (
p[pixel[13]] > cb)
2201 if (
p[pixel[14]] > cb)
2202 if (
p[pixel[15]] > cb)
2228 else if (
p[pixel[10]] < c_b)
2229 if (
p[pixel[11]] < c_b)
2230 if (
p[pixel[12]] < c_b)
2231 if (
p[pixel[13]] < c_b)
2232 if (
p[pixel[14]] < c_b)
2233 if (
p[pixel[15]] < c_b)
2235 else if (
p[pixel[6]] < c_b)
2236 if (
p[pixel[7]] < c_b)
2237 if (
p[pixel[8]] < c_b)
2238 if (
p[pixel[9]] < c_b)
2252 else if (
p[pixel[5]] < c_b)
2253 if (
p[pixel[6]] < c_b)
2254 if (
p[pixel[7]] < c_b)
2255 if (
p[pixel[8]] < c_b)
2256 if (
p[pixel[9]] < c_b)
2273 else if (
p[pixel[4]] < c_b)
2274 if (
p[pixel[5]] < c_b)
2275 if (
p[pixel[6]] < c_b)
2276 if (
p[pixel[7]] < c_b)
2277 if (
p[pixel[8]] < c_b)
2278 if (
p[pixel[9]] < c_b)
2307 else if (
p[pixel[3]] < c_b)
2308 if (
p[pixel[4]] > cb)
2309 if (
p[pixel[13]] > cb)
2310 if (
p[pixel[7]] > cb)
2311 if (
p[pixel[8]] > cb)
2312 if (
p[pixel[9]] > cb)
2313 if (
p[pixel[10]] > cb)
2314 if (
p[pixel[11]] > cb)
2315 if (
p[pixel[12]] > cb)
2316 if (
p[pixel[6]] > cb)
2317 if (
p[pixel[5]] > cb)
2319 else if (
p[pixel[14]] > cb)
2324 else if (
p[pixel[14]] > cb)
2325 if (
p[pixel[15]] > cb)
2351 else if (
p[pixel[13]] < c_b)
2352 if (
p[pixel[11]] > cb)
2353 if (
p[pixel[5]] > cb)
2354 if (
p[pixel[6]] > cb)
2355 if (
p[pixel[7]] > cb)
2356 if (
p[pixel[8]] > cb)
2357 if (
p[pixel[9]] > cb)
2358 if (
p[pixel[10]] > cb)
2359 if (
p[pixel[12]] > cb)
2382 else if (
p[pixel[11]] < c_b)
2383 if (
p[pixel[12]] < c_b)
2384 if (
p[pixel[14]] < c_b)
2385 if (
p[pixel[15]] < c_b)
2387 else if (
p[pixel[6]] < c_b)
2388 if (
p[pixel[7]] < c_b)
2389 if (
p[pixel[8]] < c_b)
2390 if (
p[pixel[9]] < c_b)
2391 if (
p[pixel[10]] < c_b)
2408 else if (
p[pixel[5]] < c_b)
2409 if (
p[pixel[6]] < c_b)
2410 if (
p[pixel[7]] < c_b)
2411 if (
p[pixel[8]] < c_b)
2412 if (
p[pixel[9]] < c_b)
2413 if (
p[pixel[10]] < c_b)
2439 else if (
p[pixel[5]] > cb)
2440 if (
p[pixel[6]] > cb)
2441 if (
p[pixel[7]] > cb)
2442 if (
p[pixel[8]] > cb)
2443 if (
p[pixel[9]] > cb)
2444 if (
p[pixel[10]] > cb)
2445 if (
p[pixel[11]] > cb)
2446 if (
p[pixel[12]] > cb)
2472 else if (
p[pixel[4]] < c_b)
2473 if (
p[pixel[5]] > cb)
2474 if (
p[pixel[14]] > cb)
2475 if (
p[pixel[7]] > cb)
2476 if (
p[pixel[8]] > cb)
2477 if (
p[pixel[9]] > cb)
2478 if (
p[pixel[10]] > cb)
2479 if (
p[pixel[11]] > cb)
2480 if (
p[pixel[12]] > cb)
2481 if (
p[pixel[13]] > cb)
2482 if (
p[pixel[6]] > cb)
2484 else if (
p[pixel[15]] > cb)
2510 else if (
p[pixel[14]] < c_b)
2511 if (
p[pixel[12]] > cb)
2512 if (
p[pixel[6]] > cb)
2513 if (
p[pixel[7]] > cb)
2514 if (
p[pixel[8]] > cb)
2515 if (
p[pixel[9]] > cb)
2516 if (
p[pixel[10]] > cb)
2517 if (
p[pixel[11]] > cb)
2518 if (
p[pixel[13]] > cb)
2541 else if (
p[pixel[12]] < c_b)
2542 if (
p[pixel[13]] < c_b)
2543 if (
p[pixel[15]] < c_b)
2545 else if (
p[pixel[6]] < c_b)
2546 if (
p[pixel[7]] < c_b)
2547 if (
p[pixel[8]] < c_b)
2548 if (
p[pixel[9]] < c_b)
2549 if (
p[pixel[10]] < c_b)
2550 if (
p[pixel[11]] < c_b)
2576 else if (
p[pixel[6]] > cb)
2577 if (
p[pixel[7]] > cb)
2578 if (
p[pixel[8]] > cb)
2579 if (
p[pixel[9]] > cb)
2580 if (
p[pixel[10]] > cb)
2581 if (
p[pixel[11]] > cb)
2582 if (
p[pixel[12]] > cb)
2583 if (
p[pixel[13]] > cb)
2609 else if (
p[pixel[5]] < c_b)
2610 if (
p[pixel[6]] > cb)
2611 if (
p[pixel[15]] < c_b)
2612 if (
p[pixel[13]] > cb)
2613 if (
p[pixel[7]] > cb)
2614 if (
p[pixel[8]] > cb)
2615 if (
p[pixel[9]] > cb)
2616 if (
p[pixel[10]] > cb)
2617 if (
p[pixel[11]] > cb)
2618 if (
p[pixel[12]] > cb)
2619 if (
p[pixel[14]] > cb)
2642 else if (
p[pixel[13]] < c_b)
2643 if (
p[pixel[14]] < c_b)
2651 else if (
p[pixel[7]] > cb)
2652 if (
p[pixel[8]] > cb)
2653 if (
p[pixel[9]] > cb)
2654 if (
p[pixel[10]] > cb)
2655 if (
p[pixel[11]] > cb)
2656 if (
p[pixel[12]] > cb)
2657 if (
p[pixel[13]] > cb)
2658 if (
p[pixel[14]] > cb)
2684 else if (
p[pixel[6]] < c_b)
2685 if (
p[pixel[7]] > cb)
2686 if (
p[pixel[14]] > cb)
2687 if (
p[pixel[8]] > cb)
2688 if (
p[pixel[9]] > cb)
2689 if (
p[pixel[10]] > cb)
2690 if (
p[pixel[11]] > cb)
2691 if (
p[pixel[12]] > cb)
2692 if (
p[pixel[13]] > cb)
2693 if (
p[pixel[15]] > cb)
2716 else if (
p[pixel[14]] < c_b)
2717 if (
p[pixel[15]] < c_b)
2725 else if (
p[pixel[7]] < c_b)
2726 if (
p[pixel[8]] < c_b)
2728 else if (
p[pixel[15]] < c_b)
2733 else if (
p[pixel[14]] < c_b)
2734 if (
p[pixel[15]] < c_b)
2742 else if (
p[pixel[13]] > cb)
2743 if (
p[pixel[7]] > cb)
2744 if (
p[pixel[8]] > cb)
2745 if (
p[pixel[9]] > cb)
2746 if (
p[pixel[10]] > cb)
2747 if (
p[pixel[11]] > cb)
2748 if (
p[pixel[12]] > cb)
2749 if (
p[pixel[14]] > cb)
2750 if (
p[pixel[15]] > cb)
2776 else if (
p[pixel[13]] < c_b)
2777 if (
p[pixel[14]] < c_b)
2778 if (
p[pixel[15]] < c_b)
2789 else if (
p[pixel[12]] > cb)
2790 if (
p[pixel[7]] > cb)
2791 if (
p[pixel[8]] > cb)
2792 if (
p[pixel[9]] > cb)
2793 if (
p[pixel[10]] > cb)
2794 if (
p[pixel[11]] > cb)
2795 if (
p[pixel[13]] > cb)
2796 if (
p[pixel[14]] > cb)
2797 if (
p[pixel[6]] > cb)
2799 else if (
p[pixel[15]] > cb)
2825 else if (
p[pixel[12]] < c_b)
2826 if (
p[pixel[13]] < c_b)
2827 if (
p[pixel[14]] < c_b)
2828 if (
p[pixel[15]] < c_b)
2830 else if (
p[pixel[6]] < c_b)
2831 if (
p[pixel[7]] < c_b)
2832 if (
p[pixel[8]] < c_b)
2833 if (
p[pixel[9]] < c_b)
2834 if (
p[pixel[10]] < c_b)
2835 if (
p[pixel[11]] < c_b)
2864 else if (
p[pixel[11]] > cb)
2865 if (
p[pixel[7]] > cb)
2866 if (
p[pixel[8]] > cb)
2867 if (
p[pixel[9]] > cb)
2868 if (
p[pixel[10]] > cb)
2869 if (
p[pixel[12]] > cb)
2870 if (
p[pixel[13]] > cb)
2871 if (
p[pixel[6]] > cb)
2872 if (
p[pixel[5]] > cb)
2874 else if (
p[pixel[14]] > cb)
2879 else if (
p[pixel[14]] > cb)
2880 if (
p[pixel[15]] > cb)
2906 else if (
p[pixel[11]] < c_b)
2907 if (
p[pixel[12]] < c_b)
2908 if (
p[pixel[13]] < c_b)
2909 if (
p[pixel[14]] < c_b)
2910 if (
p[pixel[15]] < c_b)
2912 else if (
p[pixel[6]] < c_b)
2913 if (
p[pixel[7]] < c_b)
2914 if (
p[pixel[8]] < c_b)
2915 if (
p[pixel[9]] < c_b)
2916 if (
p[pixel[10]] < c_b)
2933 else if (
p[pixel[5]] < c_b)
2934 if (
p[pixel[6]] < c_b)
2935 if (
p[pixel[7]] < c_b)
2936 if (
p[pixel[8]] < c_b)
2937 if (
p[pixel[9]] < c_b)
2938 if (
p[pixel[10]] < c_b)
2967 else if (
p[pixel[10]] > cb)
2968 if (
p[pixel[7]] > cb)
2969 if (
p[pixel[8]] > cb)
2970 if (
p[pixel[9]] > cb)
2971 if (
p[pixel[11]] > cb)
2972 if (
p[pixel[12]] > cb)
2973 if (
p[pixel[6]] > cb)
2974 if (
p[pixel[5]] > cb)
2975 if (
p[pixel[4]] > cb)
2977 else if (
p[pixel[13]] > cb)
2982 else if (
p[pixel[13]] > cb)
2983 if (
p[pixel[14]] > cb)
2991 else if (
p[pixel[13]] > cb)
2992 if (
p[pixel[14]] > cb)
2993 if (
p[pixel[15]] > cb)
3019 else if (
p[pixel[10]] < c_b)
3020 if (
p[pixel[11]] < c_b)
3021 if (
p[pixel[12]] < c_b)
3022 if (
p[pixel[13]] < c_b)
3023 if (
p[pixel[14]] < c_b)
3024 if (
p[pixel[15]] < c_b)
3026 else if (
p[pixel[6]] < c_b)
3027 if (
p[pixel[7]] < c_b)
3028 if (
p[pixel[8]] < c_b)
3029 if (
p[pixel[9]] < c_b)
3043 else if (
p[pixel[5]] < c_b)
3044 if (
p[pixel[6]] < c_b)
3045 if (
p[pixel[7]] < c_b)
3046 if (
p[pixel[8]] < c_b)
3047 if (
p[pixel[9]] < c_b)
3064 else if (
p[pixel[4]] < c_b)
3065 if (
p[pixel[5]] < c_b)
3066 if (
p[pixel[6]] < c_b)
3067 if (
p[pixel[7]] < c_b)
3068 if (
p[pixel[8]] < c_b)
3069 if (
p[pixel[9]] < c_b)
3098 else if (
p[pixel[9]] > cb)
3099 if (
p[pixel[7]] > cb)
3100 if (
p[pixel[8]] > cb)
3101 if (
p[pixel[10]] > cb)
3102 if (
p[pixel[11]] > cb)
3103 if (
p[pixel[6]] > cb)
3104 if (
p[pixel[5]] > cb)
3105 if (
p[pixel[4]] > cb)
3106 if (
p[pixel[3]] > cb)
3108 else if (
p[pixel[12]] > cb)
3113 else if (
p[pixel[12]] > cb)
3114 if (
p[pixel[13]] > cb)
3122 else if (
p[pixel[12]] > cb)
3123 if (
p[pixel[13]] > cb)
3124 if (
p[pixel[14]] > cb)
3135 else if (
p[pixel[12]] > cb)
3136 if (
p[pixel[13]] > cb)
3137 if (
p[pixel[14]] > cb)
3138 if (
p[pixel[15]] > cb)
3164 else if (
p[pixel[9]] < c_b)
3165 if (
p[pixel[10]] < c_b)
3166 if (
p[pixel[11]] < c_b)
3167 if (
p[pixel[12]] < c_b)
3168 if (
p[pixel[13]] < c_b)
3169 if (
p[pixel[14]] < c_b)
3170 if (
p[pixel[15]] < c_b)
3172 else if (
p[pixel[6]] < c_b)
3173 if (
p[pixel[7]] < c_b)
3174 if (
p[pixel[8]] < c_b)
3185 else if (
p[pixel[5]] < c_b)
3186 if (
p[pixel[6]] < c_b)
3187 if (
p[pixel[7]] < c_b)
3188 if (
p[pixel[8]] < c_b)
3202 else if (
p[pixel[4]] < c_b)
3203 if (
p[pixel[5]] < c_b)
3204 if (
p[pixel[6]] < c_b)
3205 if (
p[pixel[7]] < c_b)
3206 if (
p[pixel[8]] < c_b)
3223 else if (
p[pixel[3]] < c_b)
3224 if (
p[pixel[4]] < c_b)
3225 if (
p[pixel[5]] < c_b)
3226 if (
p[pixel[6]] < c_b)
3227 if (
p[pixel[7]] < c_b)
3228 if (
p[pixel[8]] < c_b)
3257 else if (
p[pixel[8]] > cb)
3258 if (
p[pixel[7]] > cb)
3259 if (
p[pixel[9]] > cb)
3260 if (
p[pixel[10]] > cb)
3261 if (
p[pixel[6]] > cb)
3262 if (
p[pixel[5]] > cb)
3263 if (
p[pixel[4]] > cb)
3264 if (
p[pixel[3]] > cb)
3265 if (
p[pixel[2]] > cb)
3267 else if (
p[pixel[11]] > cb)
3272 else if (
p[pixel[11]] > cb)
3273 if (
p[pixel[12]] > cb)
3281 else if (
p[pixel[11]] > cb)
3282 if (
p[pixel[12]] > cb)
3283 if (
p[pixel[13]] > cb)
3294 else if (
p[pixel[11]] > cb)
3295 if (
p[pixel[12]] > cb)
3296 if (
p[pixel[13]] > cb)
3297 if (
p[pixel[14]] > cb)
3311 else if (
p[pixel[11]] > cb)
3312 if (
p[pixel[12]] > cb)
3313 if (
p[pixel[13]] > cb)
3314 if (
p[pixel[14]] > cb)
3315 if (
p[pixel[15]] > cb)
3341 else if (
p[pixel[8]] < c_b)
3342 if (
p[pixel[9]] < c_b)
3343 if (
p[pixel[10]] < c_b)
3344 if (
p[pixel[11]] < c_b)
3345 if (
p[pixel[12]] < c_b)
3346 if (
p[pixel[13]] < c_b)
3347 if (
p[pixel[14]] < c_b)
3348 if (
p[pixel[15]] < c_b)
3350 else if (
p[pixel[6]] < c_b)
3351 if (
p[pixel[7]] < c_b)
3359 else if (
p[pixel[5]] < c_b)
3360 if (
p[pixel[6]] < c_b)
3361 if (
p[pixel[7]] < c_b)
3372 else if (
p[pixel[4]] < c_b)
3373 if (
p[pixel[5]] < c_b)
3374 if (
p[pixel[6]] < c_b)
3375 if (
p[pixel[7]] < c_b)
3389 else if (
p[pixel[3]] < c_b)
3390 if (
p[pixel[4]] < c_b)
3391 if (
p[pixel[5]] < c_b)
3392 if (
p[pixel[6]] < c_b)
3393 if (
p[pixel[7]] < c_b)
3410 else if (
p[pixel[2]] < c_b)
3411 if (
p[pixel[3]] < c_b)
3412 if (
p[pixel[4]] < c_b)
3413 if (
p[pixel[5]] < c_b)
3414 if (
p[pixel[6]] < c_b)
3415 if (
p[pixel[7]] < c_b)
3444 else if (
p[pixel[7]] > cb)
3445 if (
p[pixel[8]] > cb)
3446 if (
p[pixel[9]] > cb)
3447 if (
p[pixel[6]] > cb)
3448 if (
p[pixel[5]] > cb)
3449 if (
p[pixel[4]] > cb)
3450 if (
p[pixel[3]] > cb)
3451 if (
p[pixel[2]] > cb)
3452 if (
p[pixel[1]] > cb)
3454 else if (
p[pixel[10]] > cb)
3459 else if (
p[pixel[10]] > cb)
3460 if (
p[pixel[11]] > cb)
3468 else if (
p[pixel[10]] > cb)
3469 if (
p[pixel[11]] > cb)
3470 if (
p[pixel[12]] > cb)
3481 else if (
p[pixel[10]] > cb)
3482 if (
p[pixel[11]] > cb)
3483 if (
p[pixel[12]] > cb)
3484 if (
p[pixel[13]] > cb)
3498 else if (
p[pixel[10]] > cb)
3499 if (
p[pixel[11]] > cb)
3500 if (
p[pixel[12]] > cb)
3501 if (
p[pixel[13]] > cb)
3502 if (
p[pixel[14]] > cb)
3519 else if (
p[pixel[10]] > cb)
3520 if (
p[pixel[11]] > cb)
3521 if (
p[pixel[12]] > cb)
3522 if (
p[pixel[13]] > cb)
3523 if (
p[pixel[14]] > cb)
3524 if (
p[pixel[15]] > cb)
3550 else if (
p[pixel[7]] < c_b)
3551 if (
p[pixel[8]] < c_b)
3552 if (
p[pixel[9]] < c_b)
3553 if (
p[pixel[6]] < c_b)
3554 if (
p[pixel[5]] < c_b)
3555 if (
p[pixel[4]] < c_b)
3556 if (
p[pixel[3]] < c_b)
3557 if (
p[pixel[2]] < c_b)
3558 if (
p[pixel[1]] < c_b)
3560 else if (
p[pixel[10]] < c_b)
3565 else if (
p[pixel[10]] < c_b)
3566 if (
p[pixel[11]] < c_b)
3574 else if (
p[pixel[10]] < c_b)
3575 if (
p[pixel[11]] < c_b)
3576 if (
p[pixel[12]] < c_b)
3587 else if (
p[pixel[10]] < c_b)
3588 if (
p[pixel[11]] < c_b)
3589 if (
p[pixel[12]] < c_b)
3590 if (
p[pixel[13]] < c_b)
3604 else if (
p[pixel[10]] < c_b)
3605 if (
p[pixel[11]] < c_b)
3606 if (
p[pixel[12]] < c_b)
3607 if (
p[pixel[13]] < c_b)
3608 if (
p[pixel[14]] < c_b)
3625 else if (
p[pixel[10]] < c_b)
3626 if (
p[pixel[11]] < c_b)
3627 if (
p[pixel[12]] < c_b)
3628 if (
p[pixel[13]] < c_b)
3629 if (
p[pixel[14]] < c_b)
3630 if (
p[pixel[15]] < c_b)
3661 if (corner_cnt >= *ret_corners_length) {
3662 *ret_corners_length *= 2;
3663 *ret_corners = realloc(*ret_corners,
sizeof(
struct point_t) * (*ret_corners_length));
3666 (*ret_corners)[corner_cnt].x = x;
3667 (*ret_corners)[corner_cnt].y = y;
3674 *num_corners = corner_cnt;
3684 pixel[0] = 0 * pixel_size + row_stride * 3 * pixel_size;
3685 pixel[1] = 1 * pixel_size + row_stride * 3 * pixel_size;
3686 pixel[2] = 2 * pixel_size + row_stride * 2 * pixel_size;
3687 pixel[3] = 3 * pixel_size + row_stride * 1 * pixel_size;
3688 pixel[4] = 3 * pixel_size + row_stride * 0 * pixel_size;
3689 pixel[5] = 3 * pixel_size + row_stride * -1 * pixel_size;
3690 pixel[6] = 2 * pixel_size + row_stride * -2 * pixel_size;
3691 pixel[7] = 1 * pixel_size + row_stride * -3 * pixel_size;
3692 pixel[8] = 0 * pixel_size + row_stride * -3 * pixel_size;
3693 pixel[9] = -1 * pixel_size + row_stride * -3 * pixel_size;
3694 pixel[10] = -2 * pixel_size + row_stride * -2 * pixel_size;
3695 pixel[11] = -3 * pixel_size + row_stride * -1 * pixel_size;
3696 pixel[12] = -3 * pixel_size + row_stride * 0 * pixel_size;
3697 pixel[13] = -3 * pixel_size + row_stride * 1 * pixel_size;
3698 pixel[14] = -2 * pixel_size + row_stride * 2 * pixel_size;
3699 pixel[15] = -1 * pixel_size + row_stride * 3 * pixel_size;
void fast9_detect(struct image_t *img, uint8_t threshold, uint16_t min_dist, uint16_t x_padding, uint16_t y_padding, uint16_t *num_corners, uint16_t *ret_corners_length, struct point_t **ret_corners, uint16_t *roi)
Do a FAST9 corner detection.
int fast9_detect_pixel(struct image_t *img, uint8_t threshold, uint16_t x, uint16_t y)
Do a FAST9 corner detection for a single pixel.