1 module dcv.features.corner.fast.fast_9; 2 3 /* 4 Authors: Edward Rosten 5 Copyright: Copyright (c) 2006, 2008 Edward Rosten, All rights reserved. 6 7 Additional notice: 8 Module integrates FAST implementation present in the Edward Rosten's 9 github repository: https://github.com/edrosten/fast-C-src 10 */ 11 12 import core.stdc.stdlib : malloc, free, realloc; 13 14 import dcv.features.corner.fast.base; 15 16 17 int fast9_corner_score(const ubyte* p, const int *pixel, int bstart) @nogc 18 { 19 int bmin = bstart; 20 int bmax = 255; 21 int b = (bmax + bmin)/2; 22 23 /*Compute the score using binary search*/ 24 for(;;) 25 { 26 int cb = *p + b; 27 int c_b= *p - b; 28 29 30 if( p[pixel[0]] > cb) 31 if( p[pixel[1]] > cb) 32 if( p[pixel[2]] > cb) 33 if( p[pixel[3]] > cb) 34 if( p[pixel[4]] > cb) 35 if( p[pixel[5]] > cb) 36 if( p[pixel[6]] > cb) 37 if( p[pixel[7]] > cb) 38 if( p[pixel[8]] > cb) 39 goto is_a_corner; 40 else 41 if( p[pixel[15]] > cb) 42 goto is_a_corner; 43 else 44 goto is_not_a_corner; 45 else if( p[pixel[7]] < c_b) 46 if( p[pixel[14]] > cb) 47 if( p[pixel[15]] > cb) 48 goto is_a_corner; 49 else 50 goto is_not_a_corner; 51 else if( p[pixel[14]] < c_b) 52 if( p[pixel[8]] < c_b) 53 if( p[pixel[9]] < c_b) 54 if( p[pixel[10]] < c_b) 55 if( p[pixel[11]] < c_b) 56 if( p[pixel[12]] < c_b) 57 if( p[pixel[13]] < c_b) 58 if( p[pixel[15]] < c_b) 59 goto is_a_corner; 60 else 61 goto is_not_a_corner; 62 else 63 goto is_not_a_corner; 64 else 65 goto is_not_a_corner; 66 else 67 goto is_not_a_corner; 68 else 69 goto is_not_a_corner; 70 else 71 goto is_not_a_corner; 72 else 73 goto is_not_a_corner; 74 else 75 goto is_not_a_corner; 76 else 77 if( p[pixel[14]] > cb) 78 if( p[pixel[15]] > cb) 79 goto is_a_corner; 80 else 81 goto is_not_a_corner; 82 else 83 goto is_not_a_corner; 84 else if( p[pixel[6]] < c_b) 85 if( p[pixel[15]] > cb) 86 if( p[pixel[13]] > cb) 87 if( p[pixel[14]] > cb) 88 goto is_a_corner; 89 else 90 goto is_not_a_corner; 91 else if( p[pixel[13]] < c_b) 92 if( p[pixel[7]] < c_b) 93 if( p[pixel[8]] < c_b) 94 if( p[pixel[9]] < c_b) 95 if( p[pixel[10]] < c_b) 96 if( p[pixel[11]] < c_b) 97 if( p[pixel[12]] < c_b) 98 if( p[pixel[14]] < c_b) 99 goto is_a_corner; 100 else 101 goto is_not_a_corner; 102 else 103 goto is_not_a_corner; 104 else 105 goto is_not_a_corner; 106 else 107 goto is_not_a_corner; 108 else 109 goto is_not_a_corner; 110 else 111 goto is_not_a_corner; 112 else 113 goto is_not_a_corner; 114 else 115 goto is_not_a_corner; 116 else 117 if( p[pixel[7]] < c_b) 118 if( p[pixel[8]] < c_b) 119 if( p[pixel[9]] < c_b) 120 if( p[pixel[10]] < c_b) 121 if( p[pixel[11]] < c_b) 122 if( p[pixel[12]] < c_b) 123 if( p[pixel[13]] < c_b) 124 if( p[pixel[14]] < c_b) 125 goto is_a_corner; 126 else 127 goto is_not_a_corner; 128 else 129 goto is_not_a_corner; 130 else 131 goto is_not_a_corner; 132 else 133 goto is_not_a_corner; 134 else 135 goto is_not_a_corner; 136 else 137 goto is_not_a_corner; 138 else 139 goto is_not_a_corner; 140 else 141 goto is_not_a_corner; 142 else 143 if( p[pixel[13]] > cb) 144 if( p[pixel[14]] > cb) 145 if( p[pixel[15]] > cb) 146 goto is_a_corner; 147 else 148 goto is_not_a_corner; 149 else 150 goto is_not_a_corner; 151 else if( p[pixel[13]] < c_b) 152 if( p[pixel[7]] < c_b) 153 if( p[pixel[8]] < c_b) 154 if( p[pixel[9]] < c_b) 155 if( p[pixel[10]] < c_b) 156 if( p[pixel[11]] < c_b) 157 if( p[pixel[12]] < c_b) 158 if( p[pixel[14]] < c_b) 159 if( p[pixel[15]] < c_b) 160 goto is_a_corner; 161 else 162 goto is_not_a_corner; 163 else 164 goto is_not_a_corner; 165 else 166 goto is_not_a_corner; 167 else 168 goto is_not_a_corner; 169 else 170 goto is_not_a_corner; 171 else 172 goto is_not_a_corner; 173 else 174 goto is_not_a_corner; 175 else 176 goto is_not_a_corner; 177 else 178 goto is_not_a_corner; 179 else if( p[pixel[5]] < c_b) 180 if( p[pixel[14]] > cb) 181 if( p[pixel[12]] > cb) 182 if( p[pixel[13]] > cb) 183 if( p[pixel[15]] > cb) 184 goto is_a_corner; 185 else 186 if( p[pixel[6]] > cb) 187 if( p[pixel[7]] > cb) 188 if( p[pixel[8]] > cb) 189 if( p[pixel[9]] > cb) 190 if( p[pixel[10]] > cb) 191 if( p[pixel[11]] > cb) 192 goto is_a_corner; 193 else 194 goto is_not_a_corner; 195 else 196 goto is_not_a_corner; 197 else 198 goto is_not_a_corner; 199 else 200 goto is_not_a_corner; 201 else 202 goto is_not_a_corner; 203 else 204 goto is_not_a_corner; 205 else 206 goto is_not_a_corner; 207 else if( p[pixel[12]] < c_b) 208 if( p[pixel[6]] < c_b) 209 if( p[pixel[7]] < c_b) 210 if( p[pixel[8]] < c_b) 211 if( p[pixel[9]] < c_b) 212 if( p[pixel[10]] < c_b) 213 if( p[pixel[11]] < c_b) 214 if( p[pixel[13]] < c_b) 215 goto is_a_corner; 216 else 217 goto is_not_a_corner; 218 else 219 goto is_not_a_corner; 220 else 221 goto is_not_a_corner; 222 else 223 goto is_not_a_corner; 224 else 225 goto is_not_a_corner; 226 else 227 goto is_not_a_corner; 228 else 229 goto is_not_a_corner; 230 else 231 goto is_not_a_corner; 232 else if( p[pixel[14]] < c_b) 233 if( p[pixel[7]] < c_b) 234 if( p[pixel[8]] < c_b) 235 if( p[pixel[9]] < c_b) 236 if( p[pixel[10]] < c_b) 237 if( p[pixel[11]] < c_b) 238 if( p[pixel[12]] < c_b) 239 if( p[pixel[13]] < c_b) 240 if( p[pixel[6]] < c_b) 241 goto is_a_corner; 242 else 243 if( p[pixel[15]] < c_b) 244 goto is_a_corner; 245 else 246 goto is_not_a_corner; 247 else 248 goto is_not_a_corner; 249 else 250 goto is_not_a_corner; 251 else 252 goto is_not_a_corner; 253 else 254 goto is_not_a_corner; 255 else 256 goto is_not_a_corner; 257 else 258 goto is_not_a_corner; 259 else 260 goto is_not_a_corner; 261 else 262 if( p[pixel[6]] < c_b) 263 if( p[pixel[7]] < c_b) 264 if( p[pixel[8]] < c_b) 265 if( p[pixel[9]] < c_b) 266 if( p[pixel[10]] < c_b) 267 if( p[pixel[11]] < c_b) 268 if( p[pixel[12]] < c_b) 269 if( p[pixel[13]] < c_b) 270 goto is_a_corner; 271 else 272 goto is_not_a_corner; 273 else 274 goto is_not_a_corner; 275 else 276 goto is_not_a_corner; 277 else 278 goto is_not_a_corner; 279 else 280 goto is_not_a_corner; 281 else 282 goto is_not_a_corner; 283 else 284 goto is_not_a_corner; 285 else 286 goto is_not_a_corner; 287 else 288 if( p[pixel[12]] > cb) 289 if( p[pixel[13]] > cb) 290 if( p[pixel[14]] > cb) 291 if( p[pixel[15]] > cb) 292 goto is_a_corner; 293 else 294 if( p[pixel[6]] > cb) 295 if( p[pixel[7]] > cb) 296 if( p[pixel[8]] > cb) 297 if( p[pixel[9]] > cb) 298 if( p[pixel[10]] > cb) 299 if( p[pixel[11]] > cb) 300 goto is_a_corner; 301 else 302 goto is_not_a_corner; 303 else 304 goto is_not_a_corner; 305 else 306 goto is_not_a_corner; 307 else 308 goto is_not_a_corner; 309 else 310 goto is_not_a_corner; 311 else 312 goto is_not_a_corner; 313 else 314 goto is_not_a_corner; 315 else 316 goto is_not_a_corner; 317 else if( p[pixel[12]] < c_b) 318 if( p[pixel[7]] < c_b) 319 if( p[pixel[8]] < c_b) 320 if( p[pixel[9]] < c_b) 321 if( p[pixel[10]] < c_b) 322 if( p[pixel[11]] < c_b) 323 if( p[pixel[13]] < c_b) 324 if( p[pixel[14]] < c_b) 325 if( p[pixel[6]] < c_b) 326 goto is_a_corner; 327 else 328 if( p[pixel[15]] < c_b) 329 goto is_a_corner; 330 else 331 goto is_not_a_corner; 332 else 333 goto is_not_a_corner; 334 else 335 goto is_not_a_corner; 336 else 337 goto is_not_a_corner; 338 else 339 goto is_not_a_corner; 340 else 341 goto is_not_a_corner; 342 else 343 goto is_not_a_corner; 344 else 345 goto is_not_a_corner; 346 else 347 goto is_not_a_corner; 348 else if( p[pixel[4]] < c_b) 349 if( p[pixel[13]] > cb) 350 if( p[pixel[11]] > cb) 351 if( p[pixel[12]] > cb) 352 if( p[pixel[14]] > cb) 353 if( p[pixel[15]] > cb) 354 goto is_a_corner; 355 else 356 if( p[pixel[6]] > cb) 357 if( p[pixel[7]] > cb) 358 if( p[pixel[8]] > cb) 359 if( p[pixel[9]] > cb) 360 if( p[pixel[10]] > cb) 361 goto is_a_corner; 362 else 363 goto is_not_a_corner; 364 else 365 goto is_not_a_corner; 366 else 367 goto is_not_a_corner; 368 else 369 goto is_not_a_corner; 370 else 371 goto is_not_a_corner; 372 else 373 if( p[pixel[5]] > cb) 374 if( p[pixel[6]] > cb) 375 if( p[pixel[7]] > cb) 376 if( p[pixel[8]] > cb) 377 if( p[pixel[9]] > cb) 378 if( p[pixel[10]] > cb) 379 goto is_a_corner; 380 else 381 goto is_not_a_corner; 382 else 383 goto is_not_a_corner; 384 else 385 goto is_not_a_corner; 386 else 387 goto is_not_a_corner; 388 else 389 goto is_not_a_corner; 390 else 391 goto is_not_a_corner; 392 else 393 goto is_not_a_corner; 394 else if( p[pixel[11]] < c_b) 395 if( p[pixel[5]] < c_b) 396 if( p[pixel[6]] < c_b) 397 if( p[pixel[7]] < c_b) 398 if( p[pixel[8]] < c_b) 399 if( p[pixel[9]] < c_b) 400 if( p[pixel[10]] < c_b) 401 if( p[pixel[12]] < c_b) 402 goto is_a_corner; 403 else 404 goto is_not_a_corner; 405 else 406 goto is_not_a_corner; 407 else 408 goto is_not_a_corner; 409 else 410 goto is_not_a_corner; 411 else 412 goto is_not_a_corner; 413 else 414 goto is_not_a_corner; 415 else 416 goto is_not_a_corner; 417 else 418 goto is_not_a_corner; 419 else if( p[pixel[13]] < c_b) 420 if( p[pixel[7]] < c_b) 421 if( p[pixel[8]] < c_b) 422 if( p[pixel[9]] < c_b) 423 if( p[pixel[10]] < c_b) 424 if( p[pixel[11]] < c_b) 425 if( p[pixel[12]] < c_b) 426 if( p[pixel[6]] < c_b) 427 if( p[pixel[5]] < c_b) 428 goto is_a_corner; 429 else 430 if( p[pixel[14]] < c_b) 431 goto is_a_corner; 432 else 433 goto is_not_a_corner; 434 else 435 if( p[pixel[14]] < c_b) 436 if( p[pixel[15]] < c_b) 437 goto is_a_corner; 438 else 439 goto is_not_a_corner; 440 else 441 goto is_not_a_corner; 442 else 443 goto is_not_a_corner; 444 else 445 goto is_not_a_corner; 446 else 447 goto is_not_a_corner; 448 else 449 goto is_not_a_corner; 450 else 451 goto is_not_a_corner; 452 else 453 goto is_not_a_corner; 454 else 455 if( p[pixel[5]] < c_b) 456 if( p[pixel[6]] < c_b) 457 if( p[pixel[7]] < c_b) 458 if( p[pixel[8]] < c_b) 459 if( p[pixel[9]] < c_b) 460 if( p[pixel[10]] < c_b) 461 if( p[pixel[11]] < c_b) 462 if( p[pixel[12]] < c_b) 463 goto is_a_corner; 464 else 465 goto is_not_a_corner; 466 else 467 goto is_not_a_corner; 468 else 469 goto is_not_a_corner; 470 else 471 goto is_not_a_corner; 472 else 473 goto is_not_a_corner; 474 else 475 goto is_not_a_corner; 476 else 477 goto is_not_a_corner; 478 else 479 goto is_not_a_corner; 480 else 481 if( p[pixel[11]] > cb) 482 if( p[pixel[12]] > cb) 483 if( p[pixel[13]] > cb) 484 if( p[pixel[14]] > cb) 485 if( p[pixel[15]] > cb) 486 goto is_a_corner; 487 else 488 if( p[pixel[6]] > cb) 489 if( p[pixel[7]] > cb) 490 if( p[pixel[8]] > cb) 491 if( p[pixel[9]] > cb) 492 if( p[pixel[10]] > cb) 493 goto is_a_corner; 494 else 495 goto is_not_a_corner; 496 else 497 goto is_not_a_corner; 498 else 499 goto is_not_a_corner; 500 else 501 goto is_not_a_corner; 502 else 503 goto is_not_a_corner; 504 else 505 if( p[pixel[5]] > cb) 506 if( p[pixel[6]] > cb) 507 if( p[pixel[7]] > cb) 508 if( p[pixel[8]] > cb) 509 if( p[pixel[9]] > cb) 510 if( p[pixel[10]] > cb) 511 goto is_a_corner; 512 else 513 goto is_not_a_corner; 514 else 515 goto is_not_a_corner; 516 else 517 goto is_not_a_corner; 518 else 519 goto is_not_a_corner; 520 else 521 goto is_not_a_corner; 522 else 523 goto is_not_a_corner; 524 else 525 goto is_not_a_corner; 526 else 527 goto is_not_a_corner; 528 else if( p[pixel[11]] < c_b) 529 if( p[pixel[7]] < c_b) 530 if( p[pixel[8]] < c_b) 531 if( p[pixel[9]] < c_b) 532 if( p[pixel[10]] < c_b) 533 if( p[pixel[12]] < c_b) 534 if( p[pixel[13]] < c_b) 535 if( p[pixel[6]] < c_b) 536 if( p[pixel[5]] < c_b) 537 goto is_a_corner; 538 else 539 if( p[pixel[14]] < c_b) 540 goto is_a_corner; 541 else 542 goto is_not_a_corner; 543 else 544 if( p[pixel[14]] < c_b) 545 if( p[pixel[15]] < c_b) 546 goto is_a_corner; 547 else 548 goto is_not_a_corner; 549 else 550 goto is_not_a_corner; 551 else 552 goto is_not_a_corner; 553 else 554 goto is_not_a_corner; 555 else 556 goto is_not_a_corner; 557 else 558 goto is_not_a_corner; 559 else 560 goto is_not_a_corner; 561 else 562 goto is_not_a_corner; 563 else 564 goto is_not_a_corner; 565 else if( p[pixel[3]] < c_b) 566 if( p[pixel[10]] > cb) 567 if( p[pixel[11]] > cb) 568 if( p[pixel[12]] > cb) 569 if( p[pixel[13]] > cb) 570 if( p[pixel[14]] > cb) 571 if( p[pixel[15]] > cb) 572 goto is_a_corner; 573 else 574 if( p[pixel[6]] > cb) 575 if( p[pixel[7]] > cb) 576 if( p[pixel[8]] > cb) 577 if( p[pixel[9]] > cb) 578 goto is_a_corner; 579 else 580 goto is_not_a_corner; 581 else 582 goto is_not_a_corner; 583 else 584 goto is_not_a_corner; 585 else 586 goto is_not_a_corner; 587 else 588 if( p[pixel[5]] > cb) 589 if( p[pixel[6]] > cb) 590 if( p[pixel[7]] > cb) 591 if( p[pixel[8]] > cb) 592 if( p[pixel[9]] > cb) 593 goto is_a_corner; 594 else 595 goto is_not_a_corner; 596 else 597 goto is_not_a_corner; 598 else 599 goto is_not_a_corner; 600 else 601 goto is_not_a_corner; 602 else 603 goto is_not_a_corner; 604 else 605 if( p[pixel[4]] > cb) 606 if( p[pixel[5]] > cb) 607 if( p[pixel[6]] > cb) 608 if( p[pixel[7]] > cb) 609 if( p[pixel[8]] > cb) 610 if( p[pixel[9]] > cb) 611 goto is_a_corner; 612 else 613 goto is_not_a_corner; 614 else 615 goto is_not_a_corner; 616 else 617 goto is_not_a_corner; 618 else 619 goto is_not_a_corner; 620 else 621 goto is_not_a_corner; 622 else 623 goto is_not_a_corner; 624 else 625 goto is_not_a_corner; 626 else 627 goto is_not_a_corner; 628 else if( p[pixel[10]] < c_b) 629 if( p[pixel[7]] < c_b) 630 if( p[pixel[8]] < c_b) 631 if( p[pixel[9]] < c_b) 632 if( p[pixel[11]] < c_b) 633 if( p[pixel[6]] < c_b) 634 if( p[pixel[5]] < c_b) 635 if( p[pixel[4]] < c_b) 636 goto is_a_corner; 637 else 638 if( p[pixel[12]] < c_b) 639 if( p[pixel[13]] < c_b) 640 goto is_a_corner; 641 else 642 goto is_not_a_corner; 643 else 644 goto is_not_a_corner; 645 else 646 if( p[pixel[12]] < c_b) 647 if( p[pixel[13]] < c_b) 648 if( p[pixel[14]] < c_b) 649 goto is_a_corner; 650 else 651 goto is_not_a_corner; 652 else 653 goto is_not_a_corner; 654 else 655 goto is_not_a_corner; 656 else 657 if( p[pixel[12]] < c_b) 658 if( p[pixel[13]] < c_b) 659 if( p[pixel[14]] < c_b) 660 if( p[pixel[15]] < c_b) 661 goto is_a_corner; 662 else 663 goto is_not_a_corner; 664 else 665 goto is_not_a_corner; 666 else 667 goto is_not_a_corner; 668 else 669 goto is_not_a_corner; 670 else 671 goto is_not_a_corner; 672 else 673 goto is_not_a_corner; 674 else 675 goto is_not_a_corner; 676 else 677 goto is_not_a_corner; 678 else 679 goto is_not_a_corner; 680 else 681 if( p[pixel[10]] > cb) 682 if( p[pixel[11]] > cb) 683 if( p[pixel[12]] > cb) 684 if( p[pixel[13]] > cb) 685 if( p[pixel[14]] > cb) 686 if( p[pixel[15]] > cb) 687 goto is_a_corner; 688 else 689 if( p[pixel[6]] > cb) 690 if( p[pixel[7]] > cb) 691 if( p[pixel[8]] > cb) 692 if( p[pixel[9]] > cb) 693 goto is_a_corner; 694 else 695 goto is_not_a_corner; 696 else 697 goto is_not_a_corner; 698 else 699 goto is_not_a_corner; 700 else 701 goto is_not_a_corner; 702 else 703 if( p[pixel[5]] > cb) 704 if( p[pixel[6]] > cb) 705 if( p[pixel[7]] > cb) 706 if( p[pixel[8]] > cb) 707 if( p[pixel[9]] > cb) 708 goto is_a_corner; 709 else 710 goto is_not_a_corner; 711 else 712 goto is_not_a_corner; 713 else 714 goto is_not_a_corner; 715 else 716 goto is_not_a_corner; 717 else 718 goto is_not_a_corner; 719 else 720 if( p[pixel[4]] > cb) 721 if( p[pixel[5]] > cb) 722 if( p[pixel[6]] > cb) 723 if( p[pixel[7]] > cb) 724 if( p[pixel[8]] > cb) 725 if( p[pixel[9]] > cb) 726 goto is_a_corner; 727 else 728 goto is_not_a_corner; 729 else 730 goto is_not_a_corner; 731 else 732 goto is_not_a_corner; 733 else 734 goto is_not_a_corner; 735 else 736 goto is_not_a_corner; 737 else 738 goto is_not_a_corner; 739 else 740 goto is_not_a_corner; 741 else 742 goto is_not_a_corner; 743 else if( p[pixel[10]] < c_b) 744 if( p[pixel[7]] < c_b) 745 if( p[pixel[8]] < c_b) 746 if( p[pixel[9]] < c_b) 747 if( p[pixel[11]] < c_b) 748 if( p[pixel[12]] < c_b) 749 if( p[pixel[6]] < c_b) 750 if( p[pixel[5]] < c_b) 751 if( p[pixel[4]] < c_b) 752 goto is_a_corner; 753 else 754 if( p[pixel[13]] < c_b) 755 goto is_a_corner; 756 else 757 goto is_not_a_corner; 758 else 759 if( p[pixel[13]] < c_b) 760 if( p[pixel[14]] < c_b) 761 goto is_a_corner; 762 else 763 goto is_not_a_corner; 764 else 765 goto is_not_a_corner; 766 else 767 if( p[pixel[13]] < c_b) 768 if( p[pixel[14]] < c_b) 769 if( p[pixel[15]] < c_b) 770 goto is_a_corner; 771 else 772 goto is_not_a_corner; 773 else 774 goto is_not_a_corner; 775 else 776 goto is_not_a_corner; 777 else 778 goto is_not_a_corner; 779 else 780 goto is_not_a_corner; 781 else 782 goto is_not_a_corner; 783 else 784 goto is_not_a_corner; 785 else 786 goto is_not_a_corner; 787 else 788 goto is_not_a_corner; 789 else if( p[pixel[2]] < c_b) 790 if( p[pixel[9]] > cb) 791 if( p[pixel[10]] > cb) 792 if( p[pixel[11]] > cb) 793 if( p[pixel[12]] > cb) 794 if( p[pixel[13]] > cb) 795 if( p[pixel[14]] > cb) 796 if( p[pixel[15]] > cb) 797 goto is_a_corner; 798 else 799 if( p[pixel[6]] > cb) 800 if( p[pixel[7]] > cb) 801 if( p[pixel[8]] > cb) 802 goto is_a_corner; 803 else 804 goto is_not_a_corner; 805 else 806 goto is_not_a_corner; 807 else 808 goto is_not_a_corner; 809 else 810 if( p[pixel[5]] > cb) 811 if( p[pixel[6]] > cb) 812 if( p[pixel[7]] > cb) 813 if( p[pixel[8]] > cb) 814 goto is_a_corner; 815 else 816 goto is_not_a_corner; 817 else 818 goto is_not_a_corner; 819 else 820 goto is_not_a_corner; 821 else 822 goto is_not_a_corner; 823 else 824 if( p[pixel[4]] > cb) 825 if( p[pixel[5]] > cb) 826 if( p[pixel[6]] > cb) 827 if( p[pixel[7]] > cb) 828 if( p[pixel[8]] > cb) 829 goto is_a_corner; 830 else 831 goto is_not_a_corner; 832 else 833 goto is_not_a_corner; 834 else 835 goto is_not_a_corner; 836 else 837 goto is_not_a_corner; 838 else 839 goto is_not_a_corner; 840 else 841 if( p[pixel[3]] > cb) 842 if( p[pixel[4]] > cb) 843 if( p[pixel[5]] > cb) 844 if( p[pixel[6]] > cb) 845 if( p[pixel[7]] > cb) 846 if( p[pixel[8]] > cb) 847 goto is_a_corner; 848 else 849 goto is_not_a_corner; 850 else 851 goto is_not_a_corner; 852 else 853 goto is_not_a_corner; 854 else 855 goto is_not_a_corner; 856 else 857 goto is_not_a_corner; 858 else 859 goto is_not_a_corner; 860 else 861 goto is_not_a_corner; 862 else 863 goto is_not_a_corner; 864 else if( p[pixel[9]] < c_b) 865 if( p[pixel[7]] < c_b) 866 if( p[pixel[8]] < c_b) 867 if( p[pixel[10]] < c_b) 868 if( p[pixel[6]] < c_b) 869 if( p[pixel[5]] < c_b) 870 if( p[pixel[4]] < c_b) 871 if( p[pixel[3]] < c_b) 872 goto is_a_corner; 873 else 874 if( p[pixel[11]] < c_b) 875 if( p[pixel[12]] < c_b) 876 goto is_a_corner; 877 else 878 goto is_not_a_corner; 879 else 880 goto is_not_a_corner; 881 else 882 if( p[pixel[11]] < c_b) 883 if( p[pixel[12]] < c_b) 884 if( p[pixel[13]] < c_b) 885 goto is_a_corner; 886 else 887 goto is_not_a_corner; 888 else 889 goto is_not_a_corner; 890 else 891 goto is_not_a_corner; 892 else 893 if( p[pixel[11]] < c_b) 894 if( p[pixel[12]] < c_b) 895 if( p[pixel[13]] < c_b) 896 if( p[pixel[14]] < c_b) 897 goto is_a_corner; 898 else 899 goto is_not_a_corner; 900 else 901 goto is_not_a_corner; 902 else 903 goto is_not_a_corner; 904 else 905 goto is_not_a_corner; 906 else 907 if( p[pixel[11]] < c_b) 908 if( p[pixel[12]] < c_b) 909 if( p[pixel[13]] < c_b) 910 if( p[pixel[14]] < c_b) 911 if( p[pixel[15]] < c_b) 912 goto is_a_corner; 913 else 914 goto is_not_a_corner; 915 else 916 goto is_not_a_corner; 917 else 918 goto is_not_a_corner; 919 else 920 goto is_not_a_corner; 921 else 922 goto is_not_a_corner; 923 else 924 goto is_not_a_corner; 925 else 926 goto is_not_a_corner; 927 else 928 goto is_not_a_corner; 929 else 930 goto is_not_a_corner; 931 else 932 if( p[pixel[9]] > cb) 933 if( p[pixel[10]] > cb) 934 if( p[pixel[11]] > cb) 935 if( p[pixel[12]] > cb) 936 if( p[pixel[13]] > cb) 937 if( p[pixel[14]] > cb) 938 if( p[pixel[15]] > cb) 939 goto is_a_corner; 940 else 941 if( p[pixel[6]] > cb) 942 if( p[pixel[7]] > cb) 943 if( p[pixel[8]] > cb) 944 goto is_a_corner; 945 else 946 goto is_not_a_corner; 947 else 948 goto is_not_a_corner; 949 else 950 goto is_not_a_corner; 951 else 952 if( p[pixel[5]] > cb) 953 if( p[pixel[6]] > cb) 954 if( p[pixel[7]] > cb) 955 if( p[pixel[8]] > cb) 956 goto is_a_corner; 957 else 958 goto is_not_a_corner; 959 else 960 goto is_not_a_corner; 961 else 962 goto is_not_a_corner; 963 else 964 goto is_not_a_corner; 965 else 966 if( p[pixel[4]] > cb) 967 if( p[pixel[5]] > cb) 968 if( p[pixel[6]] > cb) 969 if( p[pixel[7]] > cb) 970 if( p[pixel[8]] > cb) 971 goto is_a_corner; 972 else 973 goto is_not_a_corner; 974 else 975 goto is_not_a_corner; 976 else 977 goto is_not_a_corner; 978 else 979 goto is_not_a_corner; 980 else 981 goto is_not_a_corner; 982 else 983 if( p[pixel[3]] > cb) 984 if( p[pixel[4]] > cb) 985 if( p[pixel[5]] > cb) 986 if( p[pixel[6]] > cb) 987 if( p[pixel[7]] > cb) 988 if( p[pixel[8]] > cb) 989 goto is_a_corner; 990 else 991 goto is_not_a_corner; 992 else 993 goto is_not_a_corner; 994 else 995 goto is_not_a_corner; 996 else 997 goto is_not_a_corner; 998 else 999 goto is_not_a_corner; 1000 else 1001 goto is_not_a_corner; 1002 else 1003 goto is_not_a_corner; 1004 else 1005 goto is_not_a_corner; 1006 else if( p[pixel[9]] < c_b) 1007 if( p[pixel[7]] < c_b) 1008 if( p[pixel[8]] < c_b) 1009 if( p[pixel[10]] < c_b) 1010 if( p[pixel[11]] < c_b) 1011 if( p[pixel[6]] < c_b) 1012 if( p[pixel[5]] < c_b) 1013 if( p[pixel[4]] < c_b) 1014 if( p[pixel[3]] < c_b) 1015 goto is_a_corner; 1016 else 1017 if( p[pixel[12]] < c_b) 1018 goto is_a_corner; 1019 else 1020 goto is_not_a_corner; 1021 else 1022 if( p[pixel[12]] < c_b) 1023 if( p[pixel[13]] < c_b) 1024 goto is_a_corner; 1025 else 1026 goto is_not_a_corner; 1027 else 1028 goto is_not_a_corner; 1029 else 1030 if( p[pixel[12]] < c_b) 1031 if( p[pixel[13]] < c_b) 1032 if( p[pixel[14]] < c_b) 1033 goto is_a_corner; 1034 else 1035 goto is_not_a_corner; 1036 else 1037 goto is_not_a_corner; 1038 else 1039 goto is_not_a_corner; 1040 else 1041 if( p[pixel[12]] < c_b) 1042 if( p[pixel[13]] < c_b) 1043 if( p[pixel[14]] < c_b) 1044 if( p[pixel[15]] < c_b) 1045 goto is_a_corner; 1046 else 1047 goto is_not_a_corner; 1048 else 1049 goto is_not_a_corner; 1050 else 1051 goto is_not_a_corner; 1052 else 1053 goto is_not_a_corner; 1054 else 1055 goto is_not_a_corner; 1056 else 1057 goto is_not_a_corner; 1058 else 1059 goto is_not_a_corner; 1060 else 1061 goto is_not_a_corner; 1062 else 1063 goto is_not_a_corner; 1064 else if( p[pixel[1]] < c_b) 1065 if( p[pixel[8]] > cb) 1066 if( p[pixel[9]] > cb) 1067 if( p[pixel[10]] > cb) 1068 if( p[pixel[11]] > cb) 1069 if( p[pixel[12]] > cb) 1070 if( p[pixel[13]] > cb) 1071 if( p[pixel[14]] > cb) 1072 if( p[pixel[15]] > cb) 1073 goto is_a_corner; 1074 else 1075 if( p[pixel[6]] > cb) 1076 if( p[pixel[7]] > cb) 1077 goto is_a_corner; 1078 else 1079 goto is_not_a_corner; 1080 else 1081 goto is_not_a_corner; 1082 else 1083 if( p[pixel[5]] > cb) 1084 if( p[pixel[6]] > cb) 1085 if( p[pixel[7]] > cb) 1086 goto is_a_corner; 1087 else 1088 goto is_not_a_corner; 1089 else 1090 goto is_not_a_corner; 1091 else 1092 goto is_not_a_corner; 1093 else 1094 if( p[pixel[4]] > cb) 1095 if( p[pixel[5]] > cb) 1096 if( p[pixel[6]] > cb) 1097 if( p[pixel[7]] > cb) 1098 goto is_a_corner; 1099 else 1100 goto is_not_a_corner; 1101 else 1102 goto is_not_a_corner; 1103 else 1104 goto is_not_a_corner; 1105 else 1106 goto is_not_a_corner; 1107 else 1108 if( p[pixel[3]] > cb) 1109 if( p[pixel[4]] > cb) 1110 if( p[pixel[5]] > cb) 1111 if( p[pixel[6]] > cb) 1112 if( p[pixel[7]] > cb) 1113 goto is_a_corner; 1114 else 1115 goto is_not_a_corner; 1116 else 1117 goto is_not_a_corner; 1118 else 1119 goto is_not_a_corner; 1120 else 1121 goto is_not_a_corner; 1122 else 1123 goto is_not_a_corner; 1124 else 1125 if( p[pixel[2]] > cb) 1126 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 goto is_a_corner; 1132 else 1133 goto is_not_a_corner; 1134 else 1135 goto is_not_a_corner; 1136 else 1137 goto is_not_a_corner; 1138 else 1139 goto is_not_a_corner; 1140 else 1141 goto is_not_a_corner; 1142 else 1143 goto is_not_a_corner; 1144 else 1145 goto is_not_a_corner; 1146 else 1147 goto is_not_a_corner; 1148 else if( p[pixel[8]] < c_b) 1149 if( p[pixel[7]] < c_b) 1150 if( p[pixel[9]] < c_b) 1151 if( p[pixel[6]] < c_b) 1152 if( p[pixel[5]] < c_b) 1153 if( p[pixel[4]] < c_b) 1154 if( p[pixel[3]] < c_b) 1155 if( p[pixel[2]] < c_b) 1156 goto is_a_corner; 1157 else 1158 if( p[pixel[10]] < c_b) 1159 if( p[pixel[11]] < c_b) 1160 goto is_a_corner; 1161 else 1162 goto is_not_a_corner; 1163 else 1164 goto is_not_a_corner; 1165 else 1166 if( p[pixel[10]] < c_b) 1167 if( p[pixel[11]] < c_b) 1168 if( p[pixel[12]] < c_b) 1169 goto is_a_corner; 1170 else 1171 goto is_not_a_corner; 1172 else 1173 goto is_not_a_corner; 1174 else 1175 goto is_not_a_corner; 1176 else 1177 if( p[pixel[10]] < c_b) 1178 if( p[pixel[11]] < c_b) 1179 if( p[pixel[12]] < c_b) 1180 if( p[pixel[13]] < c_b) 1181 goto is_a_corner; 1182 else 1183 goto is_not_a_corner; 1184 else 1185 goto is_not_a_corner; 1186 else 1187 goto is_not_a_corner; 1188 else 1189 goto is_not_a_corner; 1190 else 1191 if( p[pixel[10]] < c_b) 1192 if( p[pixel[11]] < c_b) 1193 if( p[pixel[12]] < c_b) 1194 if( p[pixel[13]] < c_b) 1195 if( p[pixel[14]] < c_b) 1196 goto is_a_corner; 1197 else 1198 goto is_not_a_corner; 1199 else 1200 goto is_not_a_corner; 1201 else 1202 goto is_not_a_corner; 1203 else 1204 goto is_not_a_corner; 1205 else 1206 goto is_not_a_corner; 1207 else 1208 if( p[pixel[10]] < c_b) 1209 if( p[pixel[11]] < c_b) 1210 if( p[pixel[12]] < c_b) 1211 if( p[pixel[13]] < c_b) 1212 if( p[pixel[14]] < c_b) 1213 if( p[pixel[15]] < c_b) 1214 goto is_a_corner; 1215 else 1216 goto is_not_a_corner; 1217 else 1218 goto is_not_a_corner; 1219 else 1220 goto is_not_a_corner; 1221 else 1222 goto is_not_a_corner; 1223 else 1224 goto is_not_a_corner; 1225 else 1226 goto is_not_a_corner; 1227 else 1228 goto is_not_a_corner; 1229 else 1230 goto is_not_a_corner; 1231 else 1232 goto is_not_a_corner; 1233 else 1234 if( p[pixel[8]] > cb) 1235 if( p[pixel[9]] > cb) 1236 if( p[pixel[10]] > cb) 1237 if( p[pixel[11]] > cb) 1238 if( p[pixel[12]] > cb) 1239 if( p[pixel[13]] > cb) 1240 if( p[pixel[14]] > cb) 1241 if( p[pixel[15]] > cb) 1242 goto is_a_corner; 1243 else 1244 if( p[pixel[6]] > cb) 1245 if( p[pixel[7]] > cb) 1246 goto is_a_corner; 1247 else 1248 goto is_not_a_corner; 1249 else 1250 goto is_not_a_corner; 1251 else 1252 if( p[pixel[5]] > cb) 1253 if( p[pixel[6]] > cb) 1254 if( p[pixel[7]] > cb) 1255 goto is_a_corner; 1256 else 1257 goto is_not_a_corner; 1258 else 1259 goto is_not_a_corner; 1260 else 1261 goto is_not_a_corner; 1262 else 1263 if( p[pixel[4]] > cb) 1264 if( p[pixel[5]] > cb) 1265 if( p[pixel[6]] > cb) 1266 if( p[pixel[7]] > cb) 1267 goto is_a_corner; 1268 else 1269 goto is_not_a_corner; 1270 else 1271 goto is_not_a_corner; 1272 else 1273 goto is_not_a_corner; 1274 else 1275 goto is_not_a_corner; 1276 else 1277 if( p[pixel[3]] > cb) 1278 if( p[pixel[4]] > cb) 1279 if( p[pixel[5]] > cb) 1280 if( p[pixel[6]] > cb) 1281 if( p[pixel[7]] > cb) 1282 goto is_a_corner; 1283 else 1284 goto is_not_a_corner; 1285 else 1286 goto is_not_a_corner; 1287 else 1288 goto is_not_a_corner; 1289 else 1290 goto is_not_a_corner; 1291 else 1292 goto is_not_a_corner; 1293 else 1294 if( p[pixel[2]] > cb) 1295 if( p[pixel[3]] > cb) 1296 if( p[pixel[4]] > cb) 1297 if( p[pixel[5]] > cb) 1298 if( p[pixel[6]] > cb) 1299 if( p[pixel[7]] > cb) 1300 goto is_a_corner; 1301 else 1302 goto is_not_a_corner; 1303 else 1304 goto is_not_a_corner; 1305 else 1306 goto is_not_a_corner; 1307 else 1308 goto is_not_a_corner; 1309 else 1310 goto is_not_a_corner; 1311 else 1312 goto is_not_a_corner; 1313 else 1314 goto is_not_a_corner; 1315 else 1316 goto is_not_a_corner; 1317 else if( p[pixel[8]] < c_b) 1318 if( p[pixel[7]] < c_b) 1319 if( p[pixel[9]] < c_b) 1320 if( p[pixel[10]] < c_b) 1321 if( p[pixel[6]] < c_b) 1322 if( p[pixel[5]] < c_b) 1323 if( p[pixel[4]] < c_b) 1324 if( p[pixel[3]] < c_b) 1325 if( p[pixel[2]] < c_b) 1326 goto is_a_corner; 1327 else 1328 if( p[pixel[11]] < c_b) 1329 goto is_a_corner; 1330 else 1331 goto is_not_a_corner; 1332 else 1333 if( p[pixel[11]] < c_b) 1334 if( p[pixel[12]] < c_b) 1335 goto is_a_corner; 1336 else 1337 goto is_not_a_corner; 1338 else 1339 goto is_not_a_corner; 1340 else 1341 if( p[pixel[11]] < c_b) 1342 if( p[pixel[12]] < c_b) 1343 if( p[pixel[13]] < c_b) 1344 goto is_a_corner; 1345 else 1346 goto is_not_a_corner; 1347 else 1348 goto is_not_a_corner; 1349 else 1350 goto is_not_a_corner; 1351 else 1352 if( p[pixel[11]] < c_b) 1353 if( p[pixel[12]] < c_b) 1354 if( p[pixel[13]] < c_b) 1355 if( p[pixel[14]] < c_b) 1356 goto is_a_corner; 1357 else 1358 goto is_not_a_corner; 1359 else 1360 goto is_not_a_corner; 1361 else 1362 goto is_not_a_corner; 1363 else 1364 goto is_not_a_corner; 1365 else 1366 if( p[pixel[11]] < c_b) 1367 if( p[pixel[12]] < c_b) 1368 if( p[pixel[13]] < c_b) 1369 if( p[pixel[14]] < c_b) 1370 if( p[pixel[15]] < c_b) 1371 goto is_a_corner; 1372 else 1373 goto is_not_a_corner; 1374 else 1375 goto is_not_a_corner; 1376 else 1377 goto is_not_a_corner; 1378 else 1379 goto is_not_a_corner; 1380 else 1381 goto is_not_a_corner; 1382 else 1383 goto is_not_a_corner; 1384 else 1385 goto is_not_a_corner; 1386 else 1387 goto is_not_a_corner; 1388 else 1389 goto is_not_a_corner; 1390 else if( p[pixel[0]] < c_b) 1391 if( p[pixel[1]] > cb) 1392 if( p[pixel[8]] > cb) 1393 if( p[pixel[7]] > cb) 1394 if( p[pixel[9]] > cb) 1395 if( p[pixel[6]] > cb) 1396 if( p[pixel[5]] > cb) 1397 if( p[pixel[4]] > cb) 1398 if( p[pixel[3]] > cb) 1399 if( p[pixel[2]] > cb) 1400 goto is_a_corner; 1401 else 1402 if( p[pixel[10]] > cb) 1403 if( p[pixel[11]] > cb) 1404 goto is_a_corner; 1405 else 1406 goto is_not_a_corner; 1407 else 1408 goto is_not_a_corner; 1409 else 1410 if( p[pixel[10]] > cb) 1411 if( p[pixel[11]] > cb) 1412 if( p[pixel[12]] > cb) 1413 goto is_a_corner; 1414 else 1415 goto is_not_a_corner; 1416 else 1417 goto is_not_a_corner; 1418 else 1419 goto is_not_a_corner; 1420 else 1421 if( p[pixel[10]] > cb) 1422 if( p[pixel[11]] > cb) 1423 if( p[pixel[12]] > cb) 1424 if( p[pixel[13]] > cb) 1425 goto is_a_corner; 1426 else 1427 goto is_not_a_corner; 1428 else 1429 goto is_not_a_corner; 1430 else 1431 goto is_not_a_corner; 1432 else 1433 goto is_not_a_corner; 1434 else 1435 if( p[pixel[10]] > cb) 1436 if( p[pixel[11]] > cb) 1437 if( p[pixel[12]] > cb) 1438 if( p[pixel[13]] > cb) 1439 if( p[pixel[14]] > cb) 1440 goto is_a_corner; 1441 else 1442 goto is_not_a_corner; 1443 else 1444 goto is_not_a_corner; 1445 else 1446 goto is_not_a_corner; 1447 else 1448 goto is_not_a_corner; 1449 else 1450 goto is_not_a_corner; 1451 else 1452 if( p[pixel[10]] > cb) 1453 if( p[pixel[11]] > cb) 1454 if( p[pixel[12]] > cb) 1455 if( p[pixel[13]] > cb) 1456 if( p[pixel[14]] > cb) 1457 if( p[pixel[15]] > cb) 1458 goto is_a_corner; 1459 else 1460 goto is_not_a_corner; 1461 else 1462 goto is_not_a_corner; 1463 else 1464 goto is_not_a_corner; 1465 else 1466 goto is_not_a_corner; 1467 else 1468 goto is_not_a_corner; 1469 else 1470 goto is_not_a_corner; 1471 else 1472 goto is_not_a_corner; 1473 else 1474 goto is_not_a_corner; 1475 else if( p[pixel[8]] < c_b) 1476 if( p[pixel[9]] < c_b) 1477 if( p[pixel[10]] < c_b) 1478 if( p[pixel[11]] < c_b) 1479 if( p[pixel[12]] < c_b) 1480 if( p[pixel[13]] < c_b) 1481 if( p[pixel[14]] < c_b) 1482 if( p[pixel[15]] < c_b) 1483 goto is_a_corner; 1484 else 1485 if( p[pixel[6]] < c_b) 1486 if( p[pixel[7]] < c_b) 1487 goto is_a_corner; 1488 else 1489 goto is_not_a_corner; 1490 else 1491 goto is_not_a_corner; 1492 else 1493 if( p[pixel[5]] < c_b) 1494 if( p[pixel[6]] < c_b) 1495 if( p[pixel[7]] < c_b) 1496 goto is_a_corner; 1497 else 1498 goto is_not_a_corner; 1499 else 1500 goto is_not_a_corner; 1501 else 1502 goto is_not_a_corner; 1503 else 1504 if( p[pixel[4]] < c_b) 1505 if( p[pixel[5]] < c_b) 1506 if( p[pixel[6]] < c_b) 1507 if( p[pixel[7]] < c_b) 1508 goto is_a_corner; 1509 else 1510 goto is_not_a_corner; 1511 else 1512 goto is_not_a_corner; 1513 else 1514 goto is_not_a_corner; 1515 else 1516 goto is_not_a_corner; 1517 else 1518 if( p[pixel[3]] < c_b) 1519 if( p[pixel[4]] < c_b) 1520 if( p[pixel[5]] < c_b) 1521 if( p[pixel[6]] < c_b) 1522 if( p[pixel[7]] < c_b) 1523 goto is_a_corner; 1524 else 1525 goto is_not_a_corner; 1526 else 1527 goto is_not_a_corner; 1528 else 1529 goto is_not_a_corner; 1530 else 1531 goto is_not_a_corner; 1532 else 1533 goto is_not_a_corner; 1534 else 1535 if( p[pixel[2]] < c_b) 1536 if( p[pixel[3]] < c_b) 1537 if( p[pixel[4]] < c_b) 1538 if( p[pixel[5]] < c_b) 1539 if( p[pixel[6]] < c_b) 1540 if( p[pixel[7]] < c_b) 1541 goto is_a_corner; 1542 else 1543 goto is_not_a_corner; 1544 else 1545 goto is_not_a_corner; 1546 else 1547 goto is_not_a_corner; 1548 else 1549 goto is_not_a_corner; 1550 else 1551 goto is_not_a_corner; 1552 else 1553 goto is_not_a_corner; 1554 else 1555 goto is_not_a_corner; 1556 else 1557 goto is_not_a_corner; 1558 else 1559 goto is_not_a_corner; 1560 else if( p[pixel[1]] < c_b) 1561 if( p[pixel[2]] > cb) 1562 if( p[pixel[9]] > cb) 1563 if( p[pixel[7]] > cb) 1564 if( p[pixel[8]] > cb) 1565 if( p[pixel[10]] > cb) 1566 if( p[pixel[6]] > cb) 1567 if( p[pixel[5]] > cb) 1568 if( p[pixel[4]] > cb) 1569 if( p[pixel[3]] > cb) 1570 goto is_a_corner; 1571 else 1572 if( p[pixel[11]] > cb) 1573 if( p[pixel[12]] > cb) 1574 goto is_a_corner; 1575 else 1576 goto is_not_a_corner; 1577 else 1578 goto is_not_a_corner; 1579 else 1580 if( p[pixel[11]] > cb) 1581 if( p[pixel[12]] > cb) 1582 if( p[pixel[13]] > cb) 1583 goto is_a_corner; 1584 else 1585 goto is_not_a_corner; 1586 else 1587 goto is_not_a_corner; 1588 else 1589 goto is_not_a_corner; 1590 else 1591 if( p[pixel[11]] > cb) 1592 if( p[pixel[12]] > cb) 1593 if( p[pixel[13]] > cb) 1594 if( p[pixel[14]] > cb) 1595 goto is_a_corner; 1596 else 1597 goto is_not_a_corner; 1598 else 1599 goto is_not_a_corner; 1600 else 1601 goto is_not_a_corner; 1602 else 1603 goto is_not_a_corner; 1604 else 1605 if( p[pixel[11]] > cb) 1606 if( p[pixel[12]] > cb) 1607 if( p[pixel[13]] > cb) 1608 if( p[pixel[14]] > cb) 1609 if( p[pixel[15]] > cb) 1610 goto is_a_corner; 1611 else 1612 goto is_not_a_corner; 1613 else 1614 goto is_not_a_corner; 1615 else 1616 goto is_not_a_corner; 1617 else 1618 goto is_not_a_corner; 1619 else 1620 goto is_not_a_corner; 1621 else 1622 goto is_not_a_corner; 1623 else 1624 goto is_not_a_corner; 1625 else 1626 goto is_not_a_corner; 1627 else if( p[pixel[9]] < c_b) 1628 if( p[pixel[10]] < c_b) 1629 if( p[pixel[11]] < c_b) 1630 if( p[pixel[12]] < c_b) 1631 if( p[pixel[13]] < c_b) 1632 if( p[pixel[14]] < c_b) 1633 if( p[pixel[15]] < c_b) 1634 goto is_a_corner; 1635 else 1636 if( p[pixel[6]] < c_b) 1637 if( p[pixel[7]] < c_b) 1638 if( p[pixel[8]] < c_b) 1639 goto is_a_corner; 1640 else 1641 goto is_not_a_corner; 1642 else 1643 goto is_not_a_corner; 1644 else 1645 goto is_not_a_corner; 1646 else 1647 if( p[pixel[5]] < c_b) 1648 if( p[pixel[6]] < c_b) 1649 if( p[pixel[7]] < c_b) 1650 if( p[pixel[8]] < c_b) 1651 goto is_a_corner; 1652 else 1653 goto is_not_a_corner; 1654 else 1655 goto is_not_a_corner; 1656 else 1657 goto is_not_a_corner; 1658 else 1659 goto is_not_a_corner; 1660 else 1661 if( p[pixel[4]] < c_b) 1662 if( p[pixel[5]] < c_b) 1663 if( p[pixel[6]] < c_b) 1664 if( p[pixel[7]] < c_b) 1665 if( p[pixel[8]] < c_b) 1666 goto is_a_corner; 1667 else 1668 goto is_not_a_corner; 1669 else 1670 goto is_not_a_corner; 1671 else 1672 goto is_not_a_corner; 1673 else 1674 goto is_not_a_corner; 1675 else 1676 goto is_not_a_corner; 1677 else 1678 if( p[pixel[3]] < c_b) 1679 if( p[pixel[4]] < c_b) 1680 if( p[pixel[5]] < c_b) 1681 if( p[pixel[6]] < c_b) 1682 if( p[pixel[7]] < c_b) 1683 if( p[pixel[8]] < c_b) 1684 goto is_a_corner; 1685 else 1686 goto is_not_a_corner; 1687 else 1688 goto is_not_a_corner; 1689 else 1690 goto is_not_a_corner; 1691 else 1692 goto is_not_a_corner; 1693 else 1694 goto is_not_a_corner; 1695 else 1696 goto is_not_a_corner; 1697 else 1698 goto is_not_a_corner; 1699 else 1700 goto is_not_a_corner; 1701 else 1702 goto is_not_a_corner; 1703 else if( p[pixel[2]] < c_b) 1704 if( p[pixel[3]] > cb) 1705 if( p[pixel[10]] > cb) 1706 if( p[pixel[7]] > cb) 1707 if( p[pixel[8]] > cb) 1708 if( p[pixel[9]] > cb) 1709 if( p[pixel[11]] > cb) 1710 if( p[pixel[6]] > cb) 1711 if( p[pixel[5]] > cb) 1712 if( p[pixel[4]] > cb) 1713 goto is_a_corner; 1714 else 1715 if( p[pixel[12]] > cb) 1716 if( p[pixel[13]] > cb) 1717 goto is_a_corner; 1718 else 1719 goto is_not_a_corner; 1720 else 1721 goto is_not_a_corner; 1722 else 1723 if( p[pixel[12]] > cb) 1724 if( p[pixel[13]] > cb) 1725 if( p[pixel[14]] > cb) 1726 goto is_a_corner; 1727 else 1728 goto is_not_a_corner; 1729 else 1730 goto is_not_a_corner; 1731 else 1732 goto is_not_a_corner; 1733 else 1734 if( p[pixel[12]] > cb) 1735 if( p[pixel[13]] > cb) 1736 if( p[pixel[14]] > cb) 1737 if( p[pixel[15]] > cb) 1738 goto is_a_corner; 1739 else 1740 goto is_not_a_corner; 1741 else 1742 goto is_not_a_corner; 1743 else 1744 goto is_not_a_corner; 1745 else 1746 goto is_not_a_corner; 1747 else 1748 goto is_not_a_corner; 1749 else 1750 goto is_not_a_corner; 1751 else 1752 goto is_not_a_corner; 1753 else 1754 goto is_not_a_corner; 1755 else if( p[pixel[10]] < c_b) 1756 if( p[pixel[11]] < c_b) 1757 if( p[pixel[12]] < c_b) 1758 if( p[pixel[13]] < c_b) 1759 if( p[pixel[14]] < c_b) 1760 if( p[pixel[15]] < c_b) 1761 goto is_a_corner; 1762 else 1763 if( p[pixel[6]] < c_b) 1764 if( p[pixel[7]] < c_b) 1765 if( p[pixel[8]] < c_b) 1766 if( p[pixel[9]] < c_b) 1767 goto is_a_corner; 1768 else 1769 goto is_not_a_corner; 1770 else 1771 goto is_not_a_corner; 1772 else 1773 goto is_not_a_corner; 1774 else 1775 goto is_not_a_corner; 1776 else 1777 if( p[pixel[5]] < c_b) 1778 if( p[pixel[6]] < c_b) 1779 if( p[pixel[7]] < c_b) 1780 if( p[pixel[8]] < c_b) 1781 if( p[pixel[9]] < c_b) 1782 goto is_a_corner; 1783 else 1784 goto is_not_a_corner; 1785 else 1786 goto is_not_a_corner; 1787 else 1788 goto is_not_a_corner; 1789 else 1790 goto is_not_a_corner; 1791 else 1792 goto is_not_a_corner; 1793 else 1794 if( p[pixel[4]] < c_b) 1795 if( p[pixel[5]] < c_b) 1796 if( p[pixel[6]] < c_b) 1797 if( p[pixel[7]] < c_b) 1798 if( p[pixel[8]] < c_b) 1799 if( p[pixel[9]] < c_b) 1800 goto is_a_corner; 1801 else 1802 goto is_not_a_corner; 1803 else 1804 goto is_not_a_corner; 1805 else 1806 goto is_not_a_corner; 1807 else 1808 goto is_not_a_corner; 1809 else 1810 goto is_not_a_corner; 1811 else 1812 goto is_not_a_corner; 1813 else 1814 goto is_not_a_corner; 1815 else 1816 goto is_not_a_corner; 1817 else 1818 goto is_not_a_corner; 1819 else if( p[pixel[3]] < c_b) 1820 if( p[pixel[4]] > cb) 1821 if( p[pixel[13]] > cb) 1822 if( p[pixel[7]] > cb) 1823 if( p[pixel[8]] > cb) 1824 if( p[pixel[9]] > cb) 1825 if( p[pixel[10]] > cb) 1826 if( p[pixel[11]] > cb) 1827 if( p[pixel[12]] > cb) 1828 if( p[pixel[6]] > cb) 1829 if( p[pixel[5]] > cb) 1830 goto is_a_corner; 1831 else 1832 if( p[pixel[14]] > cb) 1833 goto is_a_corner; 1834 else 1835 goto is_not_a_corner; 1836 else 1837 if( p[pixel[14]] > cb) 1838 if( p[pixel[15]] > cb) 1839 goto is_a_corner; 1840 else 1841 goto is_not_a_corner; 1842 else 1843 goto is_not_a_corner; 1844 else 1845 goto is_not_a_corner; 1846 else 1847 goto is_not_a_corner; 1848 else 1849 goto is_not_a_corner; 1850 else 1851 goto is_not_a_corner; 1852 else 1853 goto is_not_a_corner; 1854 else 1855 goto is_not_a_corner; 1856 else if( p[pixel[13]] < c_b) 1857 if( p[pixel[11]] > cb) 1858 if( p[pixel[5]] > cb) 1859 if( p[pixel[6]] > cb) 1860 if( p[pixel[7]] > cb) 1861 if( p[pixel[8]] > cb) 1862 if( p[pixel[9]] > cb) 1863 if( p[pixel[10]] > cb) 1864 if( p[pixel[12]] > cb) 1865 goto is_a_corner; 1866 else 1867 goto is_not_a_corner; 1868 else 1869 goto is_not_a_corner; 1870 else 1871 goto is_not_a_corner; 1872 else 1873 goto is_not_a_corner; 1874 else 1875 goto is_not_a_corner; 1876 else 1877 goto is_not_a_corner; 1878 else 1879 goto is_not_a_corner; 1880 else if( p[pixel[11]] < c_b) 1881 if( p[pixel[12]] < c_b) 1882 if( p[pixel[14]] < c_b) 1883 if( p[pixel[15]] < c_b) 1884 goto is_a_corner; 1885 else 1886 if( p[pixel[6]] < c_b) 1887 if( p[pixel[7]] < c_b) 1888 if( p[pixel[8]] < c_b) 1889 if( p[pixel[9]] < c_b) 1890 if( p[pixel[10]] < c_b) 1891 goto is_a_corner; 1892 else 1893 goto is_not_a_corner; 1894 else 1895 goto is_not_a_corner; 1896 else 1897 goto is_not_a_corner; 1898 else 1899 goto is_not_a_corner; 1900 else 1901 goto is_not_a_corner; 1902 else 1903 if( p[pixel[5]] < c_b) 1904 if( p[pixel[6]] < c_b) 1905 if( p[pixel[7]] < c_b) 1906 if( p[pixel[8]] < c_b) 1907 if( p[pixel[9]] < c_b) 1908 if( p[pixel[10]] < c_b) 1909 goto is_a_corner; 1910 else 1911 goto is_not_a_corner; 1912 else 1913 goto is_not_a_corner; 1914 else 1915 goto is_not_a_corner; 1916 else 1917 goto is_not_a_corner; 1918 else 1919 goto is_not_a_corner; 1920 else 1921 goto is_not_a_corner; 1922 else 1923 goto is_not_a_corner; 1924 else 1925 goto is_not_a_corner; 1926 else 1927 if( p[pixel[5]] > cb) 1928 if( p[pixel[6]] > cb) 1929 if( p[pixel[7]] > cb) 1930 if( p[pixel[8]] > cb) 1931 if( p[pixel[9]] > cb) 1932 if( p[pixel[10]] > cb) 1933 if( p[pixel[11]] > cb) 1934 if( p[pixel[12]] > cb) 1935 goto is_a_corner; 1936 else 1937 goto is_not_a_corner; 1938 else 1939 goto is_not_a_corner; 1940 else 1941 goto is_not_a_corner; 1942 else 1943 goto is_not_a_corner; 1944 else 1945 goto is_not_a_corner; 1946 else 1947 goto is_not_a_corner; 1948 else 1949 goto is_not_a_corner; 1950 else 1951 goto is_not_a_corner; 1952 else if( p[pixel[4]] < c_b) 1953 if( p[pixel[5]] > cb) 1954 if( p[pixel[14]] > cb) 1955 if( p[pixel[7]] > cb) 1956 if( p[pixel[8]] > cb) 1957 if( p[pixel[9]] > cb) 1958 if( p[pixel[10]] > cb) 1959 if( p[pixel[11]] > cb) 1960 if( p[pixel[12]] > cb) 1961 if( p[pixel[13]] > cb) 1962 if( p[pixel[6]] > cb) 1963 goto is_a_corner; 1964 else 1965 if( p[pixel[15]] > cb) 1966 goto is_a_corner; 1967 else 1968 goto is_not_a_corner; 1969 else 1970 goto is_not_a_corner; 1971 else 1972 goto is_not_a_corner; 1973 else 1974 goto is_not_a_corner; 1975 else 1976 goto is_not_a_corner; 1977 else 1978 goto is_not_a_corner; 1979 else 1980 goto is_not_a_corner; 1981 else 1982 goto is_not_a_corner; 1983 else if( p[pixel[14]] < c_b) 1984 if( p[pixel[12]] > cb) 1985 if( p[pixel[6]] > cb) 1986 if( p[pixel[7]] > cb) 1987 if( p[pixel[8]] > cb) 1988 if( p[pixel[9]] > cb) 1989 if( p[pixel[10]] > cb) 1990 if( p[pixel[11]] > cb) 1991 if( p[pixel[13]] > cb) 1992 goto is_a_corner; 1993 else 1994 goto is_not_a_corner; 1995 else 1996 goto is_not_a_corner; 1997 else 1998 goto is_not_a_corner; 1999 else 2000 goto is_not_a_corner; 2001 else 2002 goto is_not_a_corner; 2003 else 2004 goto is_not_a_corner; 2005 else 2006 goto is_not_a_corner; 2007 else if( p[pixel[12]] < c_b) 2008 if( p[pixel[13]] < c_b) 2009 if( p[pixel[15]] < c_b) 2010 goto is_a_corner; 2011 else 2012 if( p[pixel[6]] < c_b) 2013 if( p[pixel[7]] < c_b) 2014 if( p[pixel[8]] < c_b) 2015 if( p[pixel[9]] < c_b) 2016 if( p[pixel[10]] < c_b) 2017 if( p[pixel[11]] < c_b) 2018 goto is_a_corner; 2019 else 2020 goto is_not_a_corner; 2021 else 2022 goto is_not_a_corner; 2023 else 2024 goto is_not_a_corner; 2025 else 2026 goto is_not_a_corner; 2027 else 2028 goto is_not_a_corner; 2029 else 2030 goto is_not_a_corner; 2031 else 2032 goto is_not_a_corner; 2033 else 2034 goto is_not_a_corner; 2035 else 2036 if( p[pixel[6]] > cb) 2037 if( p[pixel[7]] > cb) 2038 if( p[pixel[8]] > cb) 2039 if( p[pixel[9]] > cb) 2040 if( p[pixel[10]] > cb) 2041 if( p[pixel[11]] > cb) 2042 if( p[pixel[12]] > cb) 2043 if( p[pixel[13]] > cb) 2044 goto is_a_corner; 2045 else 2046 goto is_not_a_corner; 2047 else 2048 goto is_not_a_corner; 2049 else 2050 goto is_not_a_corner; 2051 else 2052 goto is_not_a_corner; 2053 else 2054 goto is_not_a_corner; 2055 else 2056 goto is_not_a_corner; 2057 else 2058 goto is_not_a_corner; 2059 else 2060 goto is_not_a_corner; 2061 else if( p[pixel[5]] < c_b) 2062 if( p[pixel[6]] > cb) 2063 if( p[pixel[15]] < c_b) 2064 if( p[pixel[13]] > cb) 2065 if( p[pixel[7]] > cb) 2066 if( p[pixel[8]] > cb) 2067 if( p[pixel[9]] > cb) 2068 if( p[pixel[10]] > cb) 2069 if( p[pixel[11]] > cb) 2070 if( p[pixel[12]] > cb) 2071 if( p[pixel[14]] > cb) 2072 goto is_a_corner; 2073 else 2074 goto is_not_a_corner; 2075 else 2076 goto is_not_a_corner; 2077 else 2078 goto is_not_a_corner; 2079 else 2080 goto is_not_a_corner; 2081 else 2082 goto is_not_a_corner; 2083 else 2084 goto is_not_a_corner; 2085 else 2086 goto is_not_a_corner; 2087 else if( p[pixel[13]] < c_b) 2088 if( p[pixel[14]] < c_b) 2089 goto is_a_corner; 2090 else 2091 goto is_not_a_corner; 2092 else 2093 goto is_not_a_corner; 2094 else 2095 if( p[pixel[7]] > cb) 2096 if( p[pixel[8]] > cb) 2097 if( p[pixel[9]] > cb) 2098 if( p[pixel[10]] > cb) 2099 if( p[pixel[11]] > cb) 2100 if( p[pixel[12]] > cb) 2101 if( p[pixel[13]] > cb) 2102 if( p[pixel[14]] > cb) 2103 goto is_a_corner; 2104 else 2105 goto is_not_a_corner; 2106 else 2107 goto is_not_a_corner; 2108 else 2109 goto is_not_a_corner; 2110 else 2111 goto is_not_a_corner; 2112 else 2113 goto is_not_a_corner; 2114 else 2115 goto is_not_a_corner; 2116 else 2117 goto is_not_a_corner; 2118 else 2119 goto is_not_a_corner; 2120 else if( p[pixel[6]] < c_b) 2121 if( p[pixel[7]] > cb) 2122 if( p[pixel[14]] > cb) 2123 if( p[pixel[8]] > cb) 2124 if( p[pixel[9]] > cb) 2125 if( p[pixel[10]] > cb) 2126 if( p[pixel[11]] > cb) 2127 if( p[pixel[12]] > cb) 2128 if( p[pixel[13]] > cb) 2129 if( p[pixel[15]] > cb) 2130 goto is_a_corner; 2131 else 2132 goto is_not_a_corner; 2133 else 2134 goto is_not_a_corner; 2135 else 2136 goto is_not_a_corner; 2137 else 2138 goto is_not_a_corner; 2139 else 2140 goto is_not_a_corner; 2141 else 2142 goto is_not_a_corner; 2143 else 2144 goto is_not_a_corner; 2145 else if( p[pixel[14]] < c_b) 2146 if( p[pixel[15]] < c_b) 2147 goto is_a_corner; 2148 else 2149 goto is_not_a_corner; 2150 else 2151 goto is_not_a_corner; 2152 else if( p[pixel[7]] < c_b) 2153 if( p[pixel[8]] < c_b) 2154 goto is_a_corner; 2155 else 2156 if( p[pixel[15]] < c_b) 2157 goto is_a_corner; 2158 else 2159 goto is_not_a_corner; 2160 else 2161 if( p[pixel[14]] < c_b) 2162 if( p[pixel[15]] < c_b) 2163 goto is_a_corner; 2164 else 2165 goto is_not_a_corner; 2166 else 2167 goto is_not_a_corner; 2168 else 2169 if( p[pixel[13]] > cb) 2170 if( p[pixel[7]] > cb) 2171 if( p[pixel[8]] > cb) 2172 if( p[pixel[9]] > cb) 2173 if( p[pixel[10]] > cb) 2174 if( p[pixel[11]] > cb) 2175 if( p[pixel[12]] > cb) 2176 if( p[pixel[14]] > cb) 2177 if( p[pixel[15]] > cb) 2178 goto is_a_corner; 2179 else 2180 goto is_not_a_corner; 2181 else 2182 goto is_not_a_corner; 2183 else 2184 goto is_not_a_corner; 2185 else 2186 goto is_not_a_corner; 2187 else 2188 goto is_not_a_corner; 2189 else 2190 goto is_not_a_corner; 2191 else 2192 goto is_not_a_corner; 2193 else 2194 goto is_not_a_corner; 2195 else if( p[pixel[13]] < c_b) 2196 if( p[pixel[14]] < c_b) 2197 if( p[pixel[15]] < c_b) 2198 goto is_a_corner; 2199 else 2200 goto is_not_a_corner; 2201 else 2202 goto is_not_a_corner; 2203 else 2204 goto is_not_a_corner; 2205 else 2206 if( p[pixel[12]] > cb) 2207 if( p[pixel[7]] > cb) 2208 if( p[pixel[8]] > cb) 2209 if( p[pixel[9]] > cb) 2210 if( p[pixel[10]] > cb) 2211 if( p[pixel[11]] > cb) 2212 if( p[pixel[13]] > cb) 2213 if( p[pixel[14]] > cb) 2214 if( p[pixel[6]] > cb) 2215 goto is_a_corner; 2216 else 2217 if( p[pixel[15]] > cb) 2218 goto is_a_corner; 2219 else 2220 goto is_not_a_corner; 2221 else 2222 goto is_not_a_corner; 2223 else 2224 goto is_not_a_corner; 2225 else 2226 goto is_not_a_corner; 2227 else 2228 goto is_not_a_corner; 2229 else 2230 goto is_not_a_corner; 2231 else 2232 goto is_not_a_corner; 2233 else 2234 goto is_not_a_corner; 2235 else if( p[pixel[12]] < c_b) 2236 if( p[pixel[13]] < c_b) 2237 if( p[pixel[14]] < c_b) 2238 if( p[pixel[15]] < c_b) 2239 goto is_a_corner; 2240 else 2241 if( p[pixel[6]] < c_b) 2242 if( p[pixel[7]] < c_b) 2243 if( p[pixel[8]] < c_b) 2244 if( p[pixel[9]] < c_b) 2245 if( p[pixel[10]] < c_b) 2246 if( p[pixel[11]] < c_b) 2247 goto is_a_corner; 2248 else 2249 goto is_not_a_corner; 2250 else 2251 goto is_not_a_corner; 2252 else 2253 goto is_not_a_corner; 2254 else 2255 goto is_not_a_corner; 2256 else 2257 goto is_not_a_corner; 2258 else 2259 goto is_not_a_corner; 2260 else 2261 goto is_not_a_corner; 2262 else 2263 goto is_not_a_corner; 2264 else 2265 goto is_not_a_corner; 2266 else 2267 if( p[pixel[11]] > cb) 2268 if( p[pixel[7]] > cb) 2269 if( p[pixel[8]] > cb) 2270 if( p[pixel[9]] > cb) 2271 if( p[pixel[10]] > cb) 2272 if( p[pixel[12]] > cb) 2273 if( p[pixel[13]] > cb) 2274 if( p[pixel[6]] > cb) 2275 if( p[pixel[5]] > cb) 2276 goto is_a_corner; 2277 else 2278 if( p[pixel[14]] > cb) 2279 goto is_a_corner; 2280 else 2281 goto is_not_a_corner; 2282 else 2283 if( p[pixel[14]] > cb) 2284 if( p[pixel[15]] > cb) 2285 goto is_a_corner; 2286 else 2287 goto is_not_a_corner; 2288 else 2289 goto is_not_a_corner; 2290 else 2291 goto is_not_a_corner; 2292 else 2293 goto is_not_a_corner; 2294 else 2295 goto is_not_a_corner; 2296 else 2297 goto is_not_a_corner; 2298 else 2299 goto is_not_a_corner; 2300 else 2301 goto is_not_a_corner; 2302 else if( p[pixel[11]] < c_b) 2303 if( p[pixel[12]] < c_b) 2304 if( p[pixel[13]] < c_b) 2305 if( p[pixel[14]] < c_b) 2306 if( p[pixel[15]] < c_b) 2307 goto is_a_corner; 2308 else 2309 if( p[pixel[6]] < c_b) 2310 if( p[pixel[7]] < c_b) 2311 if( p[pixel[8]] < c_b) 2312 if( p[pixel[9]] < c_b) 2313 if( p[pixel[10]] < c_b) 2314 goto is_a_corner; 2315 else 2316 goto is_not_a_corner; 2317 else 2318 goto is_not_a_corner; 2319 else 2320 goto is_not_a_corner; 2321 else 2322 goto is_not_a_corner; 2323 else 2324 goto is_not_a_corner; 2325 else 2326 if( p[pixel[5]] < c_b) 2327 if( p[pixel[6]] < c_b) 2328 if( p[pixel[7]] < c_b) 2329 if( p[pixel[8]] < c_b) 2330 if( p[pixel[9]] < c_b) 2331 if( p[pixel[10]] < c_b) 2332 goto is_a_corner; 2333 else 2334 goto is_not_a_corner; 2335 else 2336 goto is_not_a_corner; 2337 else 2338 goto is_not_a_corner; 2339 else 2340 goto is_not_a_corner; 2341 else 2342 goto is_not_a_corner; 2343 else 2344 goto is_not_a_corner; 2345 else 2346 goto is_not_a_corner; 2347 else 2348 goto is_not_a_corner; 2349 else 2350 goto is_not_a_corner; 2351 else 2352 if( p[pixel[10]] > cb) 2353 if( p[pixel[7]] > cb) 2354 if( p[pixel[8]] > cb) 2355 if( p[pixel[9]] > cb) 2356 if( p[pixel[11]] > cb) 2357 if( p[pixel[12]] > cb) 2358 if( p[pixel[6]] > cb) 2359 if( p[pixel[5]] > cb) 2360 if( p[pixel[4]] > cb) 2361 goto is_a_corner; 2362 else 2363 if( p[pixel[13]] > cb) 2364 goto is_a_corner; 2365 else 2366 goto is_not_a_corner; 2367 else 2368 if( p[pixel[13]] > cb) 2369 if( p[pixel[14]] > cb) 2370 goto is_a_corner; 2371 else 2372 goto is_not_a_corner; 2373 else 2374 goto is_not_a_corner; 2375 else 2376 if( p[pixel[13]] > cb) 2377 if( p[pixel[14]] > cb) 2378 if( p[pixel[15]] > cb) 2379 goto is_a_corner; 2380 else 2381 goto is_not_a_corner; 2382 else 2383 goto is_not_a_corner; 2384 else 2385 goto is_not_a_corner; 2386 else 2387 goto is_not_a_corner; 2388 else 2389 goto is_not_a_corner; 2390 else 2391 goto is_not_a_corner; 2392 else 2393 goto is_not_a_corner; 2394 else 2395 goto is_not_a_corner; 2396 else if( p[pixel[10]] < c_b) 2397 if( p[pixel[11]] < c_b) 2398 if( p[pixel[12]] < c_b) 2399 if( p[pixel[13]] < c_b) 2400 if( p[pixel[14]] < c_b) 2401 if( p[pixel[15]] < c_b) 2402 goto is_a_corner; 2403 else 2404 if( p[pixel[6]] < c_b) 2405 if( p[pixel[7]] < c_b) 2406 if( p[pixel[8]] < c_b) 2407 if( p[pixel[9]] < c_b) 2408 goto is_a_corner; 2409 else 2410 goto is_not_a_corner; 2411 else 2412 goto is_not_a_corner; 2413 else 2414 goto is_not_a_corner; 2415 else 2416 goto is_not_a_corner; 2417 else 2418 if( p[pixel[5]] < c_b) 2419 if( p[pixel[6]] < c_b) 2420 if( p[pixel[7]] < c_b) 2421 if( p[pixel[8]] < c_b) 2422 if( p[pixel[9]] < c_b) 2423 goto is_a_corner; 2424 else 2425 goto is_not_a_corner; 2426 else 2427 goto is_not_a_corner; 2428 else 2429 goto is_not_a_corner; 2430 else 2431 goto is_not_a_corner; 2432 else 2433 goto is_not_a_corner; 2434 else 2435 if( p[pixel[4]] < c_b) 2436 if( p[pixel[5]] < c_b) 2437 if( p[pixel[6]] < c_b) 2438 if( p[pixel[7]] < c_b) 2439 if( p[pixel[8]] < c_b) 2440 if( p[pixel[9]] < c_b) 2441 goto is_a_corner; 2442 else 2443 goto is_not_a_corner; 2444 else 2445 goto is_not_a_corner; 2446 else 2447 goto is_not_a_corner; 2448 else 2449 goto is_not_a_corner; 2450 else 2451 goto is_not_a_corner; 2452 else 2453 goto is_not_a_corner; 2454 else 2455 goto is_not_a_corner; 2456 else 2457 goto is_not_a_corner; 2458 else 2459 goto is_not_a_corner; 2460 else 2461 if( p[pixel[9]] > cb) 2462 if( p[pixel[7]] > cb) 2463 if( p[pixel[8]] > cb) 2464 if( p[pixel[10]] > cb) 2465 if( p[pixel[11]] > cb) 2466 if( p[pixel[6]] > cb) 2467 if( p[pixel[5]] > cb) 2468 if( p[pixel[4]] > cb) 2469 if( p[pixel[3]] > cb) 2470 goto is_a_corner; 2471 else 2472 if( p[pixel[12]] > cb) 2473 goto is_a_corner; 2474 else 2475 goto is_not_a_corner; 2476 else 2477 if( p[pixel[12]] > cb) 2478 if( p[pixel[13]] > cb) 2479 goto is_a_corner; 2480 else 2481 goto is_not_a_corner; 2482 else 2483 goto is_not_a_corner; 2484 else 2485 if( p[pixel[12]] > cb) 2486 if( p[pixel[13]] > cb) 2487 if( p[pixel[14]] > cb) 2488 goto is_a_corner; 2489 else 2490 goto is_not_a_corner; 2491 else 2492 goto is_not_a_corner; 2493 else 2494 goto is_not_a_corner; 2495 else 2496 if( p[pixel[12]] > cb) 2497 if( p[pixel[13]] > cb) 2498 if( p[pixel[14]] > cb) 2499 if( p[pixel[15]] > cb) 2500 goto is_a_corner; 2501 else 2502 goto is_not_a_corner; 2503 else 2504 goto is_not_a_corner; 2505 else 2506 goto is_not_a_corner; 2507 else 2508 goto is_not_a_corner; 2509 else 2510 goto is_not_a_corner; 2511 else 2512 goto is_not_a_corner; 2513 else 2514 goto is_not_a_corner; 2515 else 2516 goto is_not_a_corner; 2517 else if( p[pixel[9]] < c_b) 2518 if( p[pixel[10]] < c_b) 2519 if( p[pixel[11]] < c_b) 2520 if( p[pixel[12]] < c_b) 2521 if( p[pixel[13]] < c_b) 2522 if( p[pixel[14]] < c_b) 2523 if( p[pixel[15]] < c_b) 2524 goto is_a_corner; 2525 else 2526 if( p[pixel[6]] < c_b) 2527 if( p[pixel[7]] < c_b) 2528 if( p[pixel[8]] < c_b) 2529 goto is_a_corner; 2530 else 2531 goto is_not_a_corner; 2532 else 2533 goto is_not_a_corner; 2534 else 2535 goto is_not_a_corner; 2536 else 2537 if( p[pixel[5]] < c_b) 2538 if( p[pixel[6]] < c_b) 2539 if( p[pixel[7]] < c_b) 2540 if( p[pixel[8]] < c_b) 2541 goto is_a_corner; 2542 else 2543 goto is_not_a_corner; 2544 else 2545 goto is_not_a_corner; 2546 else 2547 goto is_not_a_corner; 2548 else 2549 goto is_not_a_corner; 2550 else 2551 if( p[pixel[4]] < c_b) 2552 if( p[pixel[5]] < c_b) 2553 if( p[pixel[6]] < c_b) 2554 if( p[pixel[7]] < c_b) 2555 if( p[pixel[8]] < c_b) 2556 goto is_a_corner; 2557 else 2558 goto is_not_a_corner; 2559 else 2560 goto is_not_a_corner; 2561 else 2562 goto is_not_a_corner; 2563 else 2564 goto is_not_a_corner; 2565 else 2566 goto is_not_a_corner; 2567 else 2568 if( p[pixel[3]] < c_b) 2569 if( p[pixel[4]] < c_b) 2570 if( p[pixel[5]] < c_b) 2571 if( p[pixel[6]] < c_b) 2572 if( p[pixel[7]] < c_b) 2573 if( p[pixel[8]] < c_b) 2574 goto is_a_corner; 2575 else 2576 goto is_not_a_corner; 2577 else 2578 goto is_not_a_corner; 2579 else 2580 goto is_not_a_corner; 2581 else 2582 goto is_not_a_corner; 2583 else 2584 goto is_not_a_corner; 2585 else 2586 goto is_not_a_corner; 2587 else 2588 goto is_not_a_corner; 2589 else 2590 goto is_not_a_corner; 2591 else 2592 goto is_not_a_corner; 2593 else 2594 if( p[pixel[8]] > cb) 2595 if( p[pixel[7]] > cb) 2596 if( p[pixel[9]] > cb) 2597 if( p[pixel[10]] > cb) 2598 if( p[pixel[6]] > cb) 2599 if( p[pixel[5]] > cb) 2600 if( p[pixel[4]] > cb) 2601 if( p[pixel[3]] > cb) 2602 if( p[pixel[2]] > cb) 2603 goto is_a_corner; 2604 else 2605 if( p[pixel[11]] > cb) 2606 goto is_a_corner; 2607 else 2608 goto is_not_a_corner; 2609 else 2610 if( p[pixel[11]] > cb) 2611 if( p[pixel[12]] > cb) 2612 goto is_a_corner; 2613 else 2614 goto is_not_a_corner; 2615 else 2616 goto is_not_a_corner; 2617 else 2618 if( p[pixel[11]] > cb) 2619 if( p[pixel[12]] > cb) 2620 if( p[pixel[13]] > cb) 2621 goto is_a_corner; 2622 else 2623 goto is_not_a_corner; 2624 else 2625 goto is_not_a_corner; 2626 else 2627 goto is_not_a_corner; 2628 else 2629 if( p[pixel[11]] > cb) 2630 if( p[pixel[12]] > cb) 2631 if( p[pixel[13]] > cb) 2632 if( p[pixel[14]] > cb) 2633 goto is_a_corner; 2634 else 2635 goto is_not_a_corner; 2636 else 2637 goto is_not_a_corner; 2638 else 2639 goto is_not_a_corner; 2640 else 2641 goto is_not_a_corner; 2642 else 2643 if( p[pixel[11]] > cb) 2644 if( p[pixel[12]] > cb) 2645 if( p[pixel[13]] > cb) 2646 if( p[pixel[14]] > cb) 2647 if( p[pixel[15]] > cb) 2648 goto is_a_corner; 2649 else 2650 goto is_not_a_corner; 2651 else 2652 goto is_not_a_corner; 2653 else 2654 goto is_not_a_corner; 2655 else 2656 goto is_not_a_corner; 2657 else 2658 goto is_not_a_corner; 2659 else 2660 goto is_not_a_corner; 2661 else 2662 goto is_not_a_corner; 2663 else 2664 goto is_not_a_corner; 2665 else if( p[pixel[8]] < c_b) 2666 if( p[pixel[9]] < c_b) 2667 if( p[pixel[10]] < c_b) 2668 if( p[pixel[11]] < c_b) 2669 if( p[pixel[12]] < c_b) 2670 if( p[pixel[13]] < c_b) 2671 if( p[pixel[14]] < c_b) 2672 if( p[pixel[15]] < c_b) 2673 goto is_a_corner; 2674 else 2675 if( p[pixel[6]] < c_b) 2676 if( p[pixel[7]] < c_b) 2677 goto is_a_corner; 2678 else 2679 goto is_not_a_corner; 2680 else 2681 goto is_not_a_corner; 2682 else 2683 if( p[pixel[5]] < c_b) 2684 if( p[pixel[6]] < c_b) 2685 if( p[pixel[7]] < c_b) 2686 goto is_a_corner; 2687 else 2688 goto is_not_a_corner; 2689 else 2690 goto is_not_a_corner; 2691 else 2692 goto is_not_a_corner; 2693 else 2694 if( p[pixel[4]] < c_b) 2695 if( p[pixel[5]] < c_b) 2696 if( p[pixel[6]] < c_b) 2697 if( p[pixel[7]] < c_b) 2698 goto is_a_corner; 2699 else 2700 goto is_not_a_corner; 2701 else 2702 goto is_not_a_corner; 2703 else 2704 goto is_not_a_corner; 2705 else 2706 goto is_not_a_corner; 2707 else 2708 if( p[pixel[3]] < c_b) 2709 if( p[pixel[4]] < c_b) 2710 if( p[pixel[5]] < c_b) 2711 if( p[pixel[6]] < c_b) 2712 if( p[pixel[7]] < c_b) 2713 goto is_a_corner; 2714 else 2715 goto is_not_a_corner; 2716 else 2717 goto is_not_a_corner; 2718 else 2719 goto is_not_a_corner; 2720 else 2721 goto is_not_a_corner; 2722 else 2723 goto is_not_a_corner; 2724 else 2725 if( p[pixel[2]] < c_b) 2726 if( p[pixel[3]] < c_b) 2727 if( p[pixel[4]] < c_b) 2728 if( p[pixel[5]] < c_b) 2729 if( p[pixel[6]] < c_b) 2730 if( p[pixel[7]] < c_b) 2731 goto is_a_corner; 2732 else 2733 goto is_not_a_corner; 2734 else 2735 goto is_not_a_corner; 2736 else 2737 goto is_not_a_corner; 2738 else 2739 goto is_not_a_corner; 2740 else 2741 goto is_not_a_corner; 2742 else 2743 goto is_not_a_corner; 2744 else 2745 goto is_not_a_corner; 2746 else 2747 goto is_not_a_corner; 2748 else 2749 goto is_not_a_corner; 2750 else 2751 if( p[pixel[7]] > cb) 2752 if( p[pixel[8]] > cb) 2753 if( p[pixel[9]] > cb) 2754 if( p[pixel[6]] > cb) 2755 if( p[pixel[5]] > cb) 2756 if( p[pixel[4]] > cb) 2757 if( p[pixel[3]] > cb) 2758 if( p[pixel[2]] > cb) 2759 if( p[pixel[1]] > cb) 2760 goto is_a_corner; 2761 else 2762 if( p[pixel[10]] > cb) 2763 goto is_a_corner; 2764 else 2765 goto is_not_a_corner; 2766 else 2767 if( p[pixel[10]] > cb) 2768 if( p[pixel[11]] > cb) 2769 goto is_a_corner; 2770 else 2771 goto is_not_a_corner; 2772 else 2773 goto is_not_a_corner; 2774 else 2775 if( p[pixel[10]] > cb) 2776 if( p[pixel[11]] > cb) 2777 if( p[pixel[12]] > cb) 2778 goto is_a_corner; 2779 else 2780 goto is_not_a_corner; 2781 else 2782 goto is_not_a_corner; 2783 else 2784 goto is_not_a_corner; 2785 else 2786 if( p[pixel[10]] > cb) 2787 if( p[pixel[11]] > cb) 2788 if( p[pixel[12]] > cb) 2789 if( p[pixel[13]] > cb) 2790 goto is_a_corner; 2791 else 2792 goto is_not_a_corner; 2793 else 2794 goto is_not_a_corner; 2795 else 2796 goto is_not_a_corner; 2797 else 2798 goto is_not_a_corner; 2799 else 2800 if( p[pixel[10]] > cb) 2801 if( p[pixel[11]] > cb) 2802 if( p[pixel[12]] > cb) 2803 if( p[pixel[13]] > cb) 2804 if( p[pixel[14]] > cb) 2805 goto is_a_corner; 2806 else 2807 goto is_not_a_corner; 2808 else 2809 goto is_not_a_corner; 2810 else 2811 goto is_not_a_corner; 2812 else 2813 goto is_not_a_corner; 2814 else 2815 goto is_not_a_corner; 2816 else 2817 if( p[pixel[10]] > cb) 2818 if( p[pixel[11]] > cb) 2819 if( p[pixel[12]] > cb) 2820 if( p[pixel[13]] > cb) 2821 if( p[pixel[14]] > cb) 2822 if( p[pixel[15]] > cb) 2823 goto is_a_corner; 2824 else 2825 goto is_not_a_corner; 2826 else 2827 goto is_not_a_corner; 2828 else 2829 goto is_not_a_corner; 2830 else 2831 goto is_not_a_corner; 2832 else 2833 goto is_not_a_corner; 2834 else 2835 goto is_not_a_corner; 2836 else 2837 goto is_not_a_corner; 2838 else 2839 goto is_not_a_corner; 2840 else if( p[pixel[7]] < c_b) 2841 if( p[pixel[8]] < c_b) 2842 if( p[pixel[9]] < c_b) 2843 if( p[pixel[6]] < c_b) 2844 if( p[pixel[5]] < c_b) 2845 if( p[pixel[4]] < c_b) 2846 if( p[pixel[3]] < c_b) 2847 if( p[pixel[2]] < c_b) 2848 if( p[pixel[1]] < c_b) 2849 goto is_a_corner; 2850 else 2851 if( p[pixel[10]] < c_b) 2852 goto is_a_corner; 2853 else 2854 goto is_not_a_corner; 2855 else 2856 if( p[pixel[10]] < c_b) 2857 if( p[pixel[11]] < c_b) 2858 goto is_a_corner; 2859 else 2860 goto is_not_a_corner; 2861 else 2862 goto is_not_a_corner; 2863 else 2864 if( p[pixel[10]] < c_b) 2865 if( p[pixel[11]] < c_b) 2866 if( p[pixel[12]] < c_b) 2867 goto is_a_corner; 2868 else 2869 goto is_not_a_corner; 2870 else 2871 goto is_not_a_corner; 2872 else 2873 goto is_not_a_corner; 2874 else 2875 if( p[pixel[10]] < c_b) 2876 if( p[pixel[11]] < c_b) 2877 if( p[pixel[12]] < c_b) 2878 if( p[pixel[13]] < c_b) 2879 goto is_a_corner; 2880 else 2881 goto is_not_a_corner; 2882 else 2883 goto is_not_a_corner; 2884 else 2885 goto is_not_a_corner; 2886 else 2887 goto is_not_a_corner; 2888 else 2889 if( p[pixel[10]] < c_b) 2890 if( p[pixel[11]] < c_b) 2891 if( p[pixel[12]] < c_b) 2892 if( p[pixel[13]] < c_b) 2893 if( p[pixel[14]] < c_b) 2894 goto is_a_corner; 2895 else 2896 goto is_not_a_corner; 2897 else 2898 goto is_not_a_corner; 2899 else 2900 goto is_not_a_corner; 2901 else 2902 goto is_not_a_corner; 2903 else 2904 goto is_not_a_corner; 2905 else 2906 if( p[pixel[10]] < c_b) 2907 if( p[pixel[11]] < c_b) 2908 if( p[pixel[12]] < c_b) 2909 if( p[pixel[13]] < c_b) 2910 if( p[pixel[14]] < c_b) 2911 if( p[pixel[15]] < c_b) 2912 goto is_a_corner; 2913 else 2914 goto is_not_a_corner; 2915 else 2916 goto is_not_a_corner; 2917 else 2918 goto is_not_a_corner; 2919 else 2920 goto is_not_a_corner; 2921 else 2922 goto is_not_a_corner; 2923 else 2924 goto is_not_a_corner; 2925 else 2926 goto is_not_a_corner; 2927 else 2928 goto is_not_a_corner; 2929 else 2930 goto is_not_a_corner; 2931 2932 is_a_corner: 2933 bmin=b; 2934 goto end_if; 2935 2936 is_not_a_corner: 2937 bmax=b; 2938 goto end_if; 2939 2940 end_if: 2941 2942 if(bmin == bmax - 1 || bmin == bmax) 2943 return bmin; 2944 b = (bmin + bmax) / 2; 2945 } 2946 return 0; 2947 } 2948 2949 static void make_offsets(int *pixel, int row_stride) @nogc 2950 { 2951 pixel[0] = 0 + row_stride * 3; 2952 pixel[1] = 1 + row_stride * 3; 2953 pixel[2] = 2 + row_stride * 2; 2954 pixel[3] = 3 + row_stride * 1; 2955 pixel[4] = 3 + row_stride * 0; 2956 pixel[5] = 3 + row_stride * -1; 2957 pixel[6] = 2 + row_stride * -2; 2958 pixel[7] = 1 + row_stride * -3; 2959 pixel[8] = 0 + row_stride * -3; 2960 pixel[9] = -1 + row_stride * -3; 2961 pixel[10] = -2 + row_stride * -2; 2962 pixel[11] = -3 + row_stride * -1; 2963 pixel[12] = -3 + row_stride * 0; 2964 pixel[13] = -3 + row_stride * 1; 2965 pixel[14] = -2 + row_stride * 2; 2966 pixel[15] = -1 + row_stride * 3; 2967 } 2968 2969 2970 2971 int* fast9_score(const ubyte* i, int stride, xy* corners, int num_corners, int b) @nogc 2972 { 2973 int* scores = cast(int*)malloc(int.sizeof * num_corners); 2974 int n; 2975 2976 int [16]pixel; 2977 make_offsets(pixel.ptr, stride); 2978 2979 for(n=0; n < num_corners; n++) 2980 scores[n] = fast9_corner_score(i + corners[n].y*stride + corners[n].x, pixel.ptr, b); 2981 2982 return scores; 2983 } 2984 2985 2986 xy* fast9_detect(const ubyte* im, int xsize, int ysize, int stride, int b, int* ret_num_corners) @nogc 2987 { 2988 int num_corners=0; 2989 xy* ret_corners; 2990 int rsize=512; 2991 int [16]pixel; 2992 int x, y; 2993 2994 ret_corners = cast(xy*)malloc(xy.sizeof*rsize); 2995 make_offsets(pixel.ptr, stride); 2996 2997 for(y=3; y < ysize - 3; y++) 2998 for(x=3; x < xsize - 3; x++) 2999 { 3000 const ubyte* p = im + y*stride + x; 3001 3002 int cb = *p + b; 3003 int c_b= *p - b; 3004 if(p[pixel[0]] > cb) 3005 if(p[pixel[1]] > cb) 3006 if(p[pixel[2]] > cb) 3007 if(p[pixel[3]] > cb) 3008 if(p[pixel[4]] > cb) 3009 if(p[pixel[5]] > cb) 3010 if(p[pixel[6]] > cb) 3011 if(p[pixel[7]] > cb) 3012 if(p[pixel[8]] > cb) 3013 {} 3014 else 3015 if(p[pixel[15]] > cb) 3016 {} 3017 else 3018 continue; 3019 else if(p[pixel[7]] < c_b) 3020 if(p[pixel[14]] > cb) 3021 if(p[pixel[15]] > cb) 3022 {} 3023 else 3024 continue; 3025 else if(p[pixel[14]] < c_b) 3026 if(p[pixel[8]] < c_b) 3027 if(p[pixel[9]] < c_b) 3028 if(p[pixel[10]] < c_b) 3029 if(p[pixel[11]] < c_b) 3030 if(p[pixel[12]] < c_b) 3031 if(p[pixel[13]] < c_b) 3032 if(p[pixel[15]] < c_b) 3033 {} 3034 else 3035 continue; 3036 else 3037 continue; 3038 else 3039 continue; 3040 else 3041 continue; 3042 else 3043 continue; 3044 else 3045 continue; 3046 else 3047 continue; 3048 else 3049 continue; 3050 else 3051 if(p[pixel[14]] > cb) 3052 if(p[pixel[15]] > cb) 3053 {} 3054 else 3055 continue; 3056 else 3057 continue; 3058 else if(p[pixel[6]] < c_b) 3059 if(p[pixel[15]] > cb) 3060 if(p[pixel[13]] > cb) 3061 if(p[pixel[14]] > cb) 3062 {} 3063 else 3064 continue; 3065 else if(p[pixel[13]] < c_b) 3066 if(p[pixel[7]] < c_b) 3067 if(p[pixel[8]] < c_b) 3068 if(p[pixel[9]] < c_b) 3069 if(p[pixel[10]] < c_b) 3070 if(p[pixel[11]] < c_b) 3071 if(p[pixel[12]] < c_b) 3072 if(p[pixel[14]] < c_b) 3073 {} 3074 else 3075 continue; 3076 else 3077 continue; 3078 else 3079 continue; 3080 else 3081 continue; 3082 else 3083 continue; 3084 else 3085 continue; 3086 else 3087 continue; 3088 else 3089 continue; 3090 else 3091 if(p[pixel[7]] < c_b) 3092 if(p[pixel[8]] < c_b) 3093 if(p[pixel[9]] < c_b) 3094 if(p[pixel[10]] < c_b) 3095 if(p[pixel[11]] < c_b) 3096 if(p[pixel[12]] < c_b) 3097 if(p[pixel[13]] < c_b) 3098 if(p[pixel[14]] < c_b) 3099 {} 3100 else 3101 continue; 3102 else 3103 continue; 3104 else 3105 continue; 3106 else 3107 continue; 3108 else 3109 continue; 3110 else 3111 continue; 3112 else 3113 continue; 3114 else 3115 continue; 3116 else 3117 if(p[pixel[13]] > cb) 3118 if(p[pixel[14]] > cb) 3119 if(p[pixel[15]] > cb) 3120 {} 3121 else 3122 continue; 3123 else 3124 continue; 3125 else if(p[pixel[13]] < c_b) 3126 if(p[pixel[7]] < c_b) 3127 if(p[pixel[8]] < c_b) 3128 if(p[pixel[9]] < c_b) 3129 if(p[pixel[10]] < c_b) 3130 if(p[pixel[11]] < c_b) 3131 if(p[pixel[12]] < c_b) 3132 if(p[pixel[14]] < c_b) 3133 if(p[pixel[15]] < c_b) 3134 {} 3135 else 3136 continue; 3137 else 3138 continue; 3139 else 3140 continue; 3141 else 3142 continue; 3143 else 3144 continue; 3145 else 3146 continue; 3147 else 3148 continue; 3149 else 3150 continue; 3151 else 3152 continue; 3153 else if(p[pixel[5]] < c_b) 3154 if(p[pixel[14]] > cb) 3155 if(p[pixel[12]] > cb) 3156 if(p[pixel[13]] > cb) 3157 if(p[pixel[15]] > cb) 3158 {} 3159 else 3160 if(p[pixel[6]] > cb) 3161 if(p[pixel[7]] > cb) 3162 if(p[pixel[8]] > cb) 3163 if(p[pixel[9]] > cb) 3164 if(p[pixel[10]] > cb) 3165 if(p[pixel[11]] > cb) 3166 {} 3167 else 3168 continue; 3169 else 3170 continue; 3171 else 3172 continue; 3173 else 3174 continue; 3175 else 3176 continue; 3177 else 3178 continue; 3179 else 3180 continue; 3181 else if(p[pixel[12]] < c_b) 3182 if(p[pixel[6]] < c_b) 3183 if(p[pixel[7]] < c_b) 3184 if(p[pixel[8]] < c_b) 3185 if(p[pixel[9]] < c_b) 3186 if(p[pixel[10]] < c_b) 3187 if(p[pixel[11]] < c_b) 3188 if(p[pixel[13]] < c_b) 3189 {} 3190 else 3191 continue; 3192 else 3193 continue; 3194 else 3195 continue; 3196 else 3197 continue; 3198 else 3199 continue; 3200 else 3201 continue; 3202 else 3203 continue; 3204 else 3205 continue; 3206 else if(p[pixel[14]] < c_b) 3207 if(p[pixel[7]] < c_b) 3208 if(p[pixel[8]] < c_b) 3209 if(p[pixel[9]] < c_b) 3210 if(p[pixel[10]] < c_b) 3211 if(p[pixel[11]] < c_b) 3212 if(p[pixel[12]] < c_b) 3213 if(p[pixel[13]] < c_b) 3214 if(p[pixel[6]] < c_b) 3215 {} 3216 else 3217 if(p[pixel[15]] < c_b) 3218 {} 3219 else 3220 continue; 3221 else 3222 continue; 3223 else 3224 continue; 3225 else 3226 continue; 3227 else 3228 continue; 3229 else 3230 continue; 3231 else 3232 continue; 3233 else 3234 continue; 3235 else 3236 if(p[pixel[6]] < c_b) 3237 if(p[pixel[7]] < c_b) 3238 if(p[pixel[8]] < c_b) 3239 if(p[pixel[9]] < c_b) 3240 if(p[pixel[10]] < c_b) 3241 if(p[pixel[11]] < c_b) 3242 if(p[pixel[12]] < c_b) 3243 if(p[pixel[13]] < c_b) 3244 {} 3245 else 3246 continue; 3247 else 3248 continue; 3249 else 3250 continue; 3251 else 3252 continue; 3253 else 3254 continue; 3255 else 3256 continue; 3257 else 3258 continue; 3259 else 3260 continue; 3261 else 3262 if(p[pixel[12]] > cb) 3263 if(p[pixel[13]] > cb) 3264 if(p[pixel[14]] > cb) 3265 if(p[pixel[15]] > cb) 3266 {} 3267 else 3268 if(p[pixel[6]] > cb) 3269 if(p[pixel[7]] > cb) 3270 if(p[pixel[8]] > cb) 3271 if(p[pixel[9]] > cb) 3272 if(p[pixel[10]] > cb) 3273 if(p[pixel[11]] > cb) 3274 {} 3275 else 3276 continue; 3277 else 3278 continue; 3279 else 3280 continue; 3281 else 3282 continue; 3283 else 3284 continue; 3285 else 3286 continue; 3287 else 3288 continue; 3289 else 3290 continue; 3291 else if(p[pixel[12]] < c_b) 3292 if(p[pixel[7]] < c_b) 3293 if(p[pixel[8]] < c_b) 3294 if(p[pixel[9]] < c_b) 3295 if(p[pixel[10]] < c_b) 3296 if(p[pixel[11]] < c_b) 3297 if(p[pixel[13]] < c_b) 3298 if(p[pixel[14]] < c_b) 3299 if(p[pixel[6]] < c_b) 3300 {} 3301 else 3302 if(p[pixel[15]] < c_b) 3303 {} 3304 else 3305 continue; 3306 else 3307 continue; 3308 else 3309 continue; 3310 else 3311 continue; 3312 else 3313 continue; 3314 else 3315 continue; 3316 else 3317 continue; 3318 else 3319 continue; 3320 else 3321 continue; 3322 else if(p[pixel[4]] < c_b) 3323 if(p[pixel[13]] > cb) 3324 if(p[pixel[11]] > cb) 3325 if(p[pixel[12]] > cb) 3326 if(p[pixel[14]] > cb) 3327 if(p[pixel[15]] > cb) 3328 {} 3329 else 3330 if(p[pixel[6]] > cb) 3331 if(p[pixel[7]] > cb) 3332 if(p[pixel[8]] > cb) 3333 if(p[pixel[9]] > cb) 3334 if(p[pixel[10]] > cb) 3335 {} 3336 else 3337 continue; 3338 else 3339 continue; 3340 else 3341 continue; 3342 else 3343 continue; 3344 else 3345 continue; 3346 else 3347 if(p[pixel[5]] > cb) 3348 if(p[pixel[6]] > cb) 3349 if(p[pixel[7]] > cb) 3350 if(p[pixel[8]] > cb) 3351 if(p[pixel[9]] > cb) 3352 if(p[pixel[10]] > cb) 3353 {} 3354 else 3355 continue; 3356 else 3357 continue; 3358 else 3359 continue; 3360 else 3361 continue; 3362 else 3363 continue; 3364 else 3365 continue; 3366 else 3367 continue; 3368 else if(p[pixel[11]] < c_b) 3369 if(p[pixel[5]] < c_b) 3370 if(p[pixel[6]] < c_b) 3371 if(p[pixel[7]] < c_b) 3372 if(p[pixel[8]] < c_b) 3373 if(p[pixel[9]] < c_b) 3374 if(p[pixel[10]] < c_b) 3375 if(p[pixel[12]] < c_b) 3376 {} 3377 else 3378 continue; 3379 else 3380 continue; 3381 else 3382 continue; 3383 else 3384 continue; 3385 else 3386 continue; 3387 else 3388 continue; 3389 else 3390 continue; 3391 else 3392 continue; 3393 else if(p[pixel[13]] < c_b) 3394 if(p[pixel[7]] < c_b) 3395 if(p[pixel[8]] < c_b) 3396 if(p[pixel[9]] < c_b) 3397 if(p[pixel[10]] < c_b) 3398 if(p[pixel[11]] < c_b) 3399 if(p[pixel[12]] < c_b) 3400 if(p[pixel[6]] < c_b) 3401 if(p[pixel[5]] < c_b) 3402 {} 3403 else 3404 if(p[pixel[14]] < c_b) 3405 {} 3406 else 3407 continue; 3408 else 3409 if(p[pixel[14]] < c_b) 3410 if(p[pixel[15]] < c_b) 3411 {} 3412 else 3413 continue; 3414 else 3415 continue; 3416 else 3417 continue; 3418 else 3419 continue; 3420 else 3421 continue; 3422 else 3423 continue; 3424 else 3425 continue; 3426 else 3427 continue; 3428 else 3429 if(p[pixel[5]] < c_b) 3430 if(p[pixel[6]] < c_b) 3431 if(p[pixel[7]] < c_b) 3432 if(p[pixel[8]] < c_b) 3433 if(p[pixel[9]] < c_b) 3434 if(p[pixel[10]] < c_b) 3435 if(p[pixel[11]] < c_b) 3436 if(p[pixel[12]] < c_b) 3437 {} 3438 else 3439 continue; 3440 else 3441 continue; 3442 else 3443 continue; 3444 else 3445 continue; 3446 else 3447 continue; 3448 else 3449 continue; 3450 else 3451 continue; 3452 else 3453 continue; 3454 else 3455 if(p[pixel[11]] > cb) 3456 if(p[pixel[12]] > cb) 3457 if(p[pixel[13]] > cb) 3458 if(p[pixel[14]] > cb) 3459 if(p[pixel[15]] > cb) 3460 {} 3461 else 3462 if(p[pixel[6]] > cb) 3463 if(p[pixel[7]] > cb) 3464 if(p[pixel[8]] > cb) 3465 if(p[pixel[9]] > cb) 3466 if(p[pixel[10]] > cb) 3467 {} 3468 else 3469 continue; 3470 else 3471 continue; 3472 else 3473 continue; 3474 else 3475 continue; 3476 else 3477 continue; 3478 else 3479 if(p[pixel[5]] > cb) 3480 if(p[pixel[6]] > cb) 3481 if(p[pixel[7]] > cb) 3482 if(p[pixel[8]] > cb) 3483 if(p[pixel[9]] > cb) 3484 if(p[pixel[10]] > cb) 3485 {} 3486 else 3487 continue; 3488 else 3489 continue; 3490 else 3491 continue; 3492 else 3493 continue; 3494 else 3495 continue; 3496 else 3497 continue; 3498 else 3499 continue; 3500 else 3501 continue; 3502 else if(p[pixel[11]] < c_b) 3503 if(p[pixel[7]] < c_b) 3504 if(p[pixel[8]] < c_b) 3505 if(p[pixel[9]] < c_b) 3506 if(p[pixel[10]] < c_b) 3507 if(p[pixel[12]] < c_b) 3508 if(p[pixel[13]] < c_b) 3509 if(p[pixel[6]] < c_b) 3510 if(p[pixel[5]] < c_b) 3511 {} 3512 else 3513 if(p[pixel[14]] < c_b) 3514 {} 3515 else 3516 continue; 3517 else 3518 if(p[pixel[14]] < c_b) 3519 if(p[pixel[15]] < c_b) 3520 {} 3521 else 3522 continue; 3523 else 3524 continue; 3525 else 3526 continue; 3527 else 3528 continue; 3529 else 3530 continue; 3531 else 3532 continue; 3533 else 3534 continue; 3535 else 3536 continue; 3537 else 3538 continue; 3539 else if(p[pixel[3]] < c_b) 3540 if(p[pixel[10]] > cb) 3541 if(p[pixel[11]] > cb) 3542 if(p[pixel[12]] > cb) 3543 if(p[pixel[13]] > cb) 3544 if(p[pixel[14]] > cb) 3545 if(p[pixel[15]] > cb) 3546 {} 3547 else 3548 if(p[pixel[6]] > cb) 3549 if(p[pixel[7]] > cb) 3550 if(p[pixel[8]] > cb) 3551 if(p[pixel[9]] > cb) 3552 {} 3553 else 3554 continue; 3555 else 3556 continue; 3557 else 3558 continue; 3559 else 3560 continue; 3561 else 3562 if(p[pixel[5]] > cb) 3563 if(p[pixel[6]] > cb) 3564 if(p[pixel[7]] > cb) 3565 if(p[pixel[8]] > cb) 3566 if(p[pixel[9]] > cb) 3567 {} 3568 else 3569 continue; 3570 else 3571 continue; 3572 else 3573 continue; 3574 else 3575 continue; 3576 else 3577 continue; 3578 else 3579 if(p[pixel[4]] > cb) 3580 if(p[pixel[5]] > cb) 3581 if(p[pixel[6]] > cb) 3582 if(p[pixel[7]] > cb) 3583 if(p[pixel[8]] > cb) 3584 if(p[pixel[9]] > cb) 3585 {} 3586 else 3587 continue; 3588 else 3589 continue; 3590 else 3591 continue; 3592 else 3593 continue; 3594 else 3595 continue; 3596 else 3597 continue; 3598 else 3599 continue; 3600 else 3601 continue; 3602 else if(p[pixel[10]] < c_b) 3603 if(p[pixel[7]] < c_b) 3604 if(p[pixel[8]] < c_b) 3605 if(p[pixel[9]] < c_b) 3606 if(p[pixel[11]] < c_b) 3607 if(p[pixel[6]] < c_b) 3608 if(p[pixel[5]] < c_b) 3609 if(p[pixel[4]] < c_b) 3610 {} 3611 else 3612 if(p[pixel[12]] < c_b) 3613 if(p[pixel[13]] < c_b) 3614 {} 3615 else 3616 continue; 3617 else 3618 continue; 3619 else 3620 if(p[pixel[12]] < c_b) 3621 if(p[pixel[13]] < c_b) 3622 if(p[pixel[14]] < c_b) 3623 {} 3624 else 3625 continue; 3626 else 3627 continue; 3628 else 3629 continue; 3630 else 3631 if(p[pixel[12]] < c_b) 3632 if(p[pixel[13]] < c_b) 3633 if(p[pixel[14]] < c_b) 3634 if(p[pixel[15]] < c_b) 3635 {} 3636 else 3637 continue; 3638 else 3639 continue; 3640 else 3641 continue; 3642 else 3643 continue; 3644 else 3645 continue; 3646 else 3647 continue; 3648 else 3649 continue; 3650 else 3651 continue; 3652 else 3653 continue; 3654 else 3655 if(p[pixel[10]] > cb) 3656 if(p[pixel[11]] > cb) 3657 if(p[pixel[12]] > cb) 3658 if(p[pixel[13]] > cb) 3659 if(p[pixel[14]] > cb) 3660 if(p[pixel[15]] > cb) 3661 {} 3662 else 3663 if(p[pixel[6]] > cb) 3664 if(p[pixel[7]] > cb) 3665 if(p[pixel[8]] > cb) 3666 if(p[pixel[9]] > cb) 3667 {} 3668 else 3669 continue; 3670 else 3671 continue; 3672 else 3673 continue; 3674 else 3675 continue; 3676 else 3677 if(p[pixel[5]] > cb) 3678 if(p[pixel[6]] > cb) 3679 if(p[pixel[7]] > cb) 3680 if(p[pixel[8]] > cb) 3681 if(p[pixel[9]] > cb) 3682 {} 3683 else 3684 continue; 3685 else 3686 continue; 3687 else 3688 continue; 3689 else 3690 continue; 3691 else 3692 continue; 3693 else 3694 if(p[pixel[4]] > cb) 3695 if(p[pixel[5]] > cb) 3696 if(p[pixel[6]] > cb) 3697 if(p[pixel[7]] > cb) 3698 if(p[pixel[8]] > cb) 3699 if(p[pixel[9]] > cb) 3700 {} 3701 else 3702 continue; 3703 else 3704 continue; 3705 else 3706 continue; 3707 else 3708 continue; 3709 else 3710 continue; 3711 else 3712 continue; 3713 else 3714 continue; 3715 else 3716 continue; 3717 else if(p[pixel[10]] < c_b) 3718 if(p[pixel[7]] < c_b) 3719 if(p[pixel[8]] < c_b) 3720 if(p[pixel[9]] < c_b) 3721 if(p[pixel[11]] < c_b) 3722 if(p[pixel[12]] < c_b) 3723 if(p[pixel[6]] < c_b) 3724 if(p[pixel[5]] < c_b) 3725 if(p[pixel[4]] < c_b) 3726 {} 3727 else 3728 if(p[pixel[13]] < c_b) 3729 {} 3730 else 3731 continue; 3732 else 3733 if(p[pixel[13]] < c_b) 3734 if(p[pixel[14]] < c_b) 3735 {} 3736 else 3737 continue; 3738 else 3739 continue; 3740 else 3741 if(p[pixel[13]] < c_b) 3742 if(p[pixel[14]] < c_b) 3743 if(p[pixel[15]] < c_b) 3744 {} 3745 else 3746 continue; 3747 else 3748 continue; 3749 else 3750 continue; 3751 else 3752 continue; 3753 else 3754 continue; 3755 else 3756 continue; 3757 else 3758 continue; 3759 else 3760 continue; 3761 else 3762 continue; 3763 else if(p[pixel[2]] < c_b) 3764 if(p[pixel[9]] > cb) 3765 if(p[pixel[10]] > cb) 3766 if(p[pixel[11]] > cb) 3767 if(p[pixel[12]] > cb) 3768 if(p[pixel[13]] > cb) 3769 if(p[pixel[14]] > cb) 3770 if(p[pixel[15]] > cb) 3771 {} 3772 else 3773 if(p[pixel[6]] > cb) 3774 if(p[pixel[7]] > cb) 3775 if(p[pixel[8]] > cb) 3776 {} 3777 else 3778 continue; 3779 else 3780 continue; 3781 else 3782 continue; 3783 else 3784 if(p[pixel[5]] > cb) 3785 if(p[pixel[6]] > cb) 3786 if(p[pixel[7]] > cb) 3787 if(p[pixel[8]] > cb) 3788 {} 3789 else 3790 continue; 3791 else 3792 continue; 3793 else 3794 continue; 3795 else 3796 continue; 3797 else 3798 if(p[pixel[4]] > cb) 3799 if(p[pixel[5]] > cb) 3800 if(p[pixel[6]] > cb) 3801 if(p[pixel[7]] > cb) 3802 if(p[pixel[8]] > cb) 3803 {} 3804 else 3805 continue; 3806 else 3807 continue; 3808 else 3809 continue; 3810 else 3811 continue; 3812 else 3813 continue; 3814 else 3815 if(p[pixel[3]] > cb) 3816 if(p[pixel[4]] > cb) 3817 if(p[pixel[5]] > cb) 3818 if(p[pixel[6]] > cb) 3819 if(p[pixel[7]] > cb) 3820 if(p[pixel[8]] > cb) 3821 {} 3822 else 3823 continue; 3824 else 3825 continue; 3826 else 3827 continue; 3828 else 3829 continue; 3830 else 3831 continue; 3832 else 3833 continue; 3834 else 3835 continue; 3836 else 3837 continue; 3838 else if(p[pixel[9]] < c_b) 3839 if(p[pixel[7]] < c_b) 3840 if(p[pixel[8]] < c_b) 3841 if(p[pixel[10]] < c_b) 3842 if(p[pixel[6]] < c_b) 3843 if(p[pixel[5]] < c_b) 3844 if(p[pixel[4]] < c_b) 3845 if(p[pixel[3]] < c_b) 3846 {} 3847 else 3848 if(p[pixel[11]] < c_b) 3849 if(p[pixel[12]] < c_b) 3850 {} 3851 else 3852 continue; 3853 else 3854 continue; 3855 else 3856 if(p[pixel[11]] < c_b) 3857 if(p[pixel[12]] < c_b) 3858 if(p[pixel[13]] < c_b) 3859 {} 3860 else 3861 continue; 3862 else 3863 continue; 3864 else 3865 continue; 3866 else 3867 if(p[pixel[11]] < c_b) 3868 if(p[pixel[12]] < c_b) 3869 if(p[pixel[13]] < c_b) 3870 if(p[pixel[14]] < c_b) 3871 {} 3872 else 3873 continue; 3874 else 3875 continue; 3876 else 3877 continue; 3878 else 3879 continue; 3880 else 3881 if(p[pixel[11]] < c_b) 3882 if(p[pixel[12]] < c_b) 3883 if(p[pixel[13]] < c_b) 3884 if(p[pixel[14]] < c_b) 3885 if(p[pixel[15]] < c_b) 3886 {} 3887 else 3888 continue; 3889 else 3890 continue; 3891 else 3892 continue; 3893 else 3894 continue; 3895 else 3896 continue; 3897 else 3898 continue; 3899 else 3900 continue; 3901 else 3902 continue; 3903 else 3904 continue; 3905 else 3906 if(p[pixel[9]] > cb) 3907 if(p[pixel[10]] > cb) 3908 if(p[pixel[11]] > cb) 3909 if(p[pixel[12]] > cb) 3910 if(p[pixel[13]] > cb) 3911 if(p[pixel[14]] > cb) 3912 if(p[pixel[15]] > cb) 3913 {} 3914 else 3915 if(p[pixel[6]] > cb) 3916 if(p[pixel[7]] > cb) 3917 if(p[pixel[8]] > cb) 3918 {} 3919 else 3920 continue; 3921 else 3922 continue; 3923 else 3924 continue; 3925 else 3926 if(p[pixel[5]] > cb) 3927 if(p[pixel[6]] > cb) 3928 if(p[pixel[7]] > cb) 3929 if(p[pixel[8]] > cb) 3930 {} 3931 else 3932 continue; 3933 else 3934 continue; 3935 else 3936 continue; 3937 else 3938 continue; 3939 else 3940 if(p[pixel[4]] > cb) 3941 if(p[pixel[5]] > cb) 3942 if(p[pixel[6]] > cb) 3943 if(p[pixel[7]] > cb) 3944 if(p[pixel[8]] > cb) 3945 {} 3946 else 3947 continue; 3948 else 3949 continue; 3950 else 3951 continue; 3952 else 3953 continue; 3954 else 3955 continue; 3956 else 3957 if(p[pixel[3]] > cb) 3958 if(p[pixel[4]] > cb) 3959 if(p[pixel[5]] > cb) 3960 if(p[pixel[6]] > cb) 3961 if(p[pixel[7]] > cb) 3962 if(p[pixel[8]] > cb) 3963 {} 3964 else 3965 continue; 3966 else 3967 continue; 3968 else 3969 continue; 3970 else 3971 continue; 3972 else 3973 continue; 3974 else 3975 continue; 3976 else 3977 continue; 3978 else 3979 continue; 3980 else if(p[pixel[9]] < c_b) 3981 if(p[pixel[7]] < c_b) 3982 if(p[pixel[8]] < c_b) 3983 if(p[pixel[10]] < c_b) 3984 if(p[pixel[11]] < c_b) 3985 if(p[pixel[6]] < c_b) 3986 if(p[pixel[5]] < c_b) 3987 if(p[pixel[4]] < c_b) 3988 if(p[pixel[3]] < c_b) 3989 {} 3990 else 3991 if(p[pixel[12]] < c_b) 3992 {} 3993 else 3994 continue; 3995 else 3996 if(p[pixel[12]] < c_b) 3997 if(p[pixel[13]] < c_b) 3998 {} 3999 else 4000 continue; 4001 else 4002 continue; 4003 else 4004 if(p[pixel[12]] < c_b) 4005 if(p[pixel[13]] < c_b) 4006 if(p[pixel[14]] < c_b) 4007 {} 4008 else 4009 continue; 4010 else 4011 continue; 4012 else 4013 continue; 4014 else 4015 if(p[pixel[12]] < c_b) 4016 if(p[pixel[13]] < c_b) 4017 if(p[pixel[14]] < c_b) 4018 if(p[pixel[15]] < c_b) 4019 {} 4020 else 4021 continue; 4022 else 4023 continue; 4024 else 4025 continue; 4026 else 4027 continue; 4028 else 4029 continue; 4030 else 4031 continue; 4032 else 4033 continue; 4034 else 4035 continue; 4036 else 4037 continue; 4038 else if(p[pixel[1]] < c_b) 4039 if(p[pixel[8]] > cb) 4040 if(p[pixel[9]] > cb) 4041 if(p[pixel[10]] > cb) 4042 if(p[pixel[11]] > cb) 4043 if(p[pixel[12]] > cb) 4044 if(p[pixel[13]] > cb) 4045 if(p[pixel[14]] > cb) 4046 if(p[pixel[15]] > cb) 4047 {} 4048 else 4049 if(p[pixel[6]] > cb) 4050 if(p[pixel[7]] > cb) 4051 {} 4052 else 4053 continue; 4054 else 4055 continue; 4056 else 4057 if(p[pixel[5]] > cb) 4058 if(p[pixel[6]] > cb) 4059 if(p[pixel[7]] > cb) 4060 {} 4061 else 4062 continue; 4063 else 4064 continue; 4065 else 4066 continue; 4067 else 4068 if(p[pixel[4]] > cb) 4069 if(p[pixel[5]] > cb) 4070 if(p[pixel[6]] > cb) 4071 if(p[pixel[7]] > cb) 4072 {} 4073 else 4074 continue; 4075 else 4076 continue; 4077 else 4078 continue; 4079 else 4080 continue; 4081 else 4082 if(p[pixel[3]] > cb) 4083 if(p[pixel[4]] > cb) 4084 if(p[pixel[5]] > cb) 4085 if(p[pixel[6]] > cb) 4086 if(p[pixel[7]] > cb) 4087 {} 4088 else 4089 continue; 4090 else 4091 continue; 4092 else 4093 continue; 4094 else 4095 continue; 4096 else 4097 continue; 4098 else 4099 if(p[pixel[2]] > cb) 4100 if(p[pixel[3]] > cb) 4101 if(p[pixel[4]] > cb) 4102 if(p[pixel[5]] > cb) 4103 if(p[pixel[6]] > cb) 4104 if(p[pixel[7]] > cb) 4105 {} 4106 else 4107 continue; 4108 else 4109 continue; 4110 else 4111 continue; 4112 else 4113 continue; 4114 else 4115 continue; 4116 else 4117 continue; 4118 else 4119 continue; 4120 else 4121 continue; 4122 else if(p[pixel[8]] < c_b) 4123 if(p[pixel[7]] < c_b) 4124 if(p[pixel[9]] < c_b) 4125 if(p[pixel[6]] < c_b) 4126 if(p[pixel[5]] < c_b) 4127 if(p[pixel[4]] < c_b) 4128 if(p[pixel[3]] < c_b) 4129 if(p[pixel[2]] < c_b) 4130 {} 4131 else 4132 if(p[pixel[10]] < c_b) 4133 if(p[pixel[11]] < c_b) 4134 {} 4135 else 4136 continue; 4137 else 4138 continue; 4139 else 4140 if(p[pixel[10]] < c_b) 4141 if(p[pixel[11]] < c_b) 4142 if(p[pixel[12]] < c_b) 4143 {} 4144 else 4145 continue; 4146 else 4147 continue; 4148 else 4149 continue; 4150 else 4151 if(p[pixel[10]] < c_b) 4152 if(p[pixel[11]] < c_b) 4153 if(p[pixel[12]] < c_b) 4154 if(p[pixel[13]] < c_b) 4155 {} 4156 else 4157 continue; 4158 else 4159 continue; 4160 else 4161 continue; 4162 else 4163 continue; 4164 else 4165 if(p[pixel[10]] < c_b) 4166 if(p[pixel[11]] < c_b) 4167 if(p[pixel[12]] < c_b) 4168 if(p[pixel[13]] < c_b) 4169 if(p[pixel[14]] < c_b) 4170 {} 4171 else 4172 continue; 4173 else 4174 continue; 4175 else 4176 continue; 4177 else 4178 continue; 4179 else 4180 continue; 4181 else 4182 if(p[pixel[10]] < c_b) 4183 if(p[pixel[11]] < c_b) 4184 if(p[pixel[12]] < c_b) 4185 if(p[pixel[13]] < c_b) 4186 if(p[pixel[14]] < c_b) 4187 if(p[pixel[15]] < c_b) 4188 {} 4189 else 4190 continue; 4191 else 4192 continue; 4193 else 4194 continue; 4195 else 4196 continue; 4197 else 4198 continue; 4199 else 4200 continue; 4201 else 4202 continue; 4203 else 4204 continue; 4205 else 4206 continue; 4207 else 4208 if(p[pixel[8]] > cb) 4209 if(p[pixel[9]] > cb) 4210 if(p[pixel[10]] > cb) 4211 if(p[pixel[11]] > cb) 4212 if(p[pixel[12]] > cb) 4213 if(p[pixel[13]] > cb) 4214 if(p[pixel[14]] > cb) 4215 if(p[pixel[15]] > cb) 4216 {} 4217 else 4218 if(p[pixel[6]] > cb) 4219 if(p[pixel[7]] > cb) 4220 {} 4221 else 4222 continue; 4223 else 4224 continue; 4225 else 4226 if(p[pixel[5]] > cb) 4227 if(p[pixel[6]] > cb) 4228 if(p[pixel[7]] > cb) 4229 {} 4230 else 4231 continue; 4232 else 4233 continue; 4234 else 4235 continue; 4236 else 4237 if(p[pixel[4]] > cb) 4238 if(p[pixel[5]] > cb) 4239 if(p[pixel[6]] > cb) 4240 if(p[pixel[7]] > cb) 4241 {} 4242 else 4243 continue; 4244 else 4245 continue; 4246 else 4247 continue; 4248 else 4249 continue; 4250 else 4251 if(p[pixel[3]] > cb) 4252 if(p[pixel[4]] > cb) 4253 if(p[pixel[5]] > cb) 4254 if(p[pixel[6]] > cb) 4255 if(p[pixel[7]] > cb) 4256 {} 4257 else 4258 continue; 4259 else 4260 continue; 4261 else 4262 continue; 4263 else 4264 continue; 4265 else 4266 continue; 4267 else 4268 if(p[pixel[2]] > cb) 4269 if(p[pixel[3]] > cb) 4270 if(p[pixel[4]] > cb) 4271 if(p[pixel[5]] > cb) 4272 if(p[pixel[6]] > cb) 4273 if(p[pixel[7]] > cb) 4274 {} 4275 else 4276 continue; 4277 else 4278 continue; 4279 else 4280 continue; 4281 else 4282 continue; 4283 else 4284 continue; 4285 else 4286 continue; 4287 else 4288 continue; 4289 else 4290 continue; 4291 else if(p[pixel[8]] < c_b) 4292 if(p[pixel[7]] < c_b) 4293 if(p[pixel[9]] < c_b) 4294 if(p[pixel[10]] < c_b) 4295 if(p[pixel[6]] < c_b) 4296 if(p[pixel[5]] < c_b) 4297 if(p[pixel[4]] < c_b) 4298 if(p[pixel[3]] < c_b) 4299 if(p[pixel[2]] < c_b) 4300 {} 4301 else 4302 if(p[pixel[11]] < c_b) 4303 {} 4304 else 4305 continue; 4306 else 4307 if(p[pixel[11]] < c_b) 4308 if(p[pixel[12]] < c_b) 4309 {} 4310 else 4311 continue; 4312 else 4313 continue; 4314 else 4315 if(p[pixel[11]] < c_b) 4316 if(p[pixel[12]] < c_b) 4317 if(p[pixel[13]] < c_b) 4318 {} 4319 else 4320 continue; 4321 else 4322 continue; 4323 else 4324 continue; 4325 else 4326 if(p[pixel[11]] < c_b) 4327 if(p[pixel[12]] < c_b) 4328 if(p[pixel[13]] < c_b) 4329 if(p[pixel[14]] < c_b) 4330 {} 4331 else 4332 continue; 4333 else 4334 continue; 4335 else 4336 continue; 4337 else 4338 continue; 4339 else 4340 if(p[pixel[11]] < c_b) 4341 if(p[pixel[12]] < c_b) 4342 if(p[pixel[13]] < c_b) 4343 if(p[pixel[14]] < c_b) 4344 if(p[pixel[15]] < c_b) 4345 {} 4346 else 4347 continue; 4348 else 4349 continue; 4350 else 4351 continue; 4352 else 4353 continue; 4354 else 4355 continue; 4356 else 4357 continue; 4358 else 4359 continue; 4360 else 4361 continue; 4362 else 4363 continue; 4364 else if(p[pixel[0]] < c_b) 4365 if(p[pixel[1]] > cb) 4366 if(p[pixel[8]] > cb) 4367 if(p[pixel[7]] > cb) 4368 if(p[pixel[9]] > cb) 4369 if(p[pixel[6]] > cb) 4370 if(p[pixel[5]] > cb) 4371 if(p[pixel[4]] > cb) 4372 if(p[pixel[3]] > cb) 4373 if(p[pixel[2]] > cb) 4374 {} 4375 else 4376 if(p[pixel[10]] > cb) 4377 if(p[pixel[11]] > cb) 4378 {} 4379 else 4380 continue; 4381 else 4382 continue; 4383 else 4384 if(p[pixel[10]] > cb) 4385 if(p[pixel[11]] > cb) 4386 if(p[pixel[12]] > cb) 4387 {} 4388 else 4389 continue; 4390 else 4391 continue; 4392 else 4393 continue; 4394 else 4395 if(p[pixel[10]] > cb) 4396 if(p[pixel[11]] > cb) 4397 if(p[pixel[12]] > cb) 4398 if(p[pixel[13]] > cb) 4399 {} 4400 else 4401 continue; 4402 else 4403 continue; 4404 else 4405 continue; 4406 else 4407 continue; 4408 else 4409 if(p[pixel[10]] > cb) 4410 if(p[pixel[11]] > cb) 4411 if(p[pixel[12]] > cb) 4412 if(p[pixel[13]] > cb) 4413 if(p[pixel[14]] > cb) 4414 {} 4415 else 4416 continue; 4417 else 4418 continue; 4419 else 4420 continue; 4421 else 4422 continue; 4423 else 4424 continue; 4425 else 4426 if(p[pixel[10]] > cb) 4427 if(p[pixel[11]] > cb) 4428 if(p[pixel[12]] > cb) 4429 if(p[pixel[13]] > cb) 4430 if(p[pixel[14]] > cb) 4431 if(p[pixel[15]] > cb) 4432 {} 4433 else 4434 continue; 4435 else 4436 continue; 4437 else 4438 continue; 4439 else 4440 continue; 4441 else 4442 continue; 4443 else 4444 continue; 4445 else 4446 continue; 4447 else 4448 continue; 4449 else if(p[pixel[8]] < c_b) 4450 if(p[pixel[9]] < c_b) 4451 if(p[pixel[10]] < c_b) 4452 if(p[pixel[11]] < c_b) 4453 if(p[pixel[12]] < c_b) 4454 if(p[pixel[13]] < c_b) 4455 if(p[pixel[14]] < c_b) 4456 if(p[pixel[15]] < c_b) 4457 {} 4458 else 4459 if(p[pixel[6]] < c_b) 4460 if(p[pixel[7]] < c_b) 4461 {} 4462 else 4463 continue; 4464 else 4465 continue; 4466 else 4467 if(p[pixel[5]] < c_b) 4468 if(p[pixel[6]] < c_b) 4469 if(p[pixel[7]] < c_b) 4470 {} 4471 else 4472 continue; 4473 else 4474 continue; 4475 else 4476 continue; 4477 else 4478 if(p[pixel[4]] < c_b) 4479 if(p[pixel[5]] < c_b) 4480 if(p[pixel[6]] < c_b) 4481 if(p[pixel[7]] < c_b) 4482 {} 4483 else 4484 continue; 4485 else 4486 continue; 4487 else 4488 continue; 4489 else 4490 continue; 4491 else 4492 if(p[pixel[3]] < c_b) 4493 if(p[pixel[4]] < c_b) 4494 if(p[pixel[5]] < c_b) 4495 if(p[pixel[6]] < c_b) 4496 if(p[pixel[7]] < c_b) 4497 {} 4498 else 4499 continue; 4500 else 4501 continue; 4502 else 4503 continue; 4504 else 4505 continue; 4506 else 4507 continue; 4508 else 4509 if(p[pixel[2]] < c_b) 4510 if(p[pixel[3]] < c_b) 4511 if(p[pixel[4]] < c_b) 4512 if(p[pixel[5]] < c_b) 4513 if(p[pixel[6]] < c_b) 4514 if(p[pixel[7]] < c_b) 4515 {} 4516 else 4517 continue; 4518 else 4519 continue; 4520 else 4521 continue; 4522 else 4523 continue; 4524 else 4525 continue; 4526 else 4527 continue; 4528 else 4529 continue; 4530 else 4531 continue; 4532 else 4533 continue; 4534 else if(p[pixel[1]] < c_b) 4535 if(p[pixel[2]] > cb) 4536 if(p[pixel[9]] > cb) 4537 if(p[pixel[7]] > cb) 4538 if(p[pixel[8]] > cb) 4539 if(p[pixel[10]] > cb) 4540 if(p[pixel[6]] > cb) 4541 if(p[pixel[5]] > cb) 4542 if(p[pixel[4]] > cb) 4543 if(p[pixel[3]] > cb) 4544 {} 4545 else 4546 if(p[pixel[11]] > cb) 4547 if(p[pixel[12]] > cb) 4548 {} 4549 else 4550 continue; 4551 else 4552 continue; 4553 else 4554 if(p[pixel[11]] > cb) 4555 if(p[pixel[12]] > cb) 4556 if(p[pixel[13]] > cb) 4557 {} 4558 else 4559 continue; 4560 else 4561 continue; 4562 else 4563 continue; 4564 else 4565 if(p[pixel[11]] > cb) 4566 if(p[pixel[12]] > cb) 4567 if(p[pixel[13]] > cb) 4568 if(p[pixel[14]] > cb) 4569 {} 4570 else 4571 continue; 4572 else 4573 continue; 4574 else 4575 continue; 4576 else 4577 continue; 4578 else 4579 if(p[pixel[11]] > cb) 4580 if(p[pixel[12]] > cb) 4581 if(p[pixel[13]] > cb) 4582 if(p[pixel[14]] > cb) 4583 if(p[pixel[15]] > cb) 4584 {} 4585 else 4586 continue; 4587 else 4588 continue; 4589 else 4590 continue; 4591 else 4592 continue; 4593 else 4594 continue; 4595 else 4596 continue; 4597 else 4598 continue; 4599 else 4600 continue; 4601 else if(p[pixel[9]] < c_b) 4602 if(p[pixel[10]] < c_b) 4603 if(p[pixel[11]] < c_b) 4604 if(p[pixel[12]] < c_b) 4605 if(p[pixel[13]] < c_b) 4606 if(p[pixel[14]] < c_b) 4607 if(p[pixel[15]] < c_b) 4608 {} 4609 else 4610 if(p[pixel[6]] < c_b) 4611 if(p[pixel[7]] < c_b) 4612 if(p[pixel[8]] < c_b) 4613 {} 4614 else 4615 continue; 4616 else 4617 continue; 4618 else 4619 continue; 4620 else 4621 if(p[pixel[5]] < c_b) 4622 if(p[pixel[6]] < c_b) 4623 if(p[pixel[7]] < c_b) 4624 if(p[pixel[8]] < c_b) 4625 {} 4626 else 4627 continue; 4628 else 4629 continue; 4630 else 4631 continue; 4632 else 4633 continue; 4634 else 4635 if(p[pixel[4]] < c_b) 4636 if(p[pixel[5]] < c_b) 4637 if(p[pixel[6]] < c_b) 4638 if(p[pixel[7]] < c_b) 4639 if(p[pixel[8]] < c_b) 4640 {} 4641 else 4642 continue; 4643 else 4644 continue; 4645 else 4646 continue; 4647 else 4648 continue; 4649 else 4650 continue; 4651 else 4652 if(p[pixel[3]] < c_b) 4653 if(p[pixel[4]] < c_b) 4654 if(p[pixel[5]] < c_b) 4655 if(p[pixel[6]] < c_b) 4656 if(p[pixel[7]] < c_b) 4657 if(p[pixel[8]] < c_b) 4658 {} 4659 else 4660 continue; 4661 else 4662 continue; 4663 else 4664 continue; 4665 else 4666 continue; 4667 else 4668 continue; 4669 else 4670 continue; 4671 else 4672 continue; 4673 else 4674 continue; 4675 else 4676 continue; 4677 else if(p[pixel[2]] < c_b) 4678 if(p[pixel[3]] > cb) 4679 if(p[pixel[10]] > cb) 4680 if(p[pixel[7]] > cb) 4681 if(p[pixel[8]] > cb) 4682 if(p[pixel[9]] > cb) 4683 if(p[pixel[11]] > cb) 4684 if(p[pixel[6]] > cb) 4685 if(p[pixel[5]] > cb) 4686 if(p[pixel[4]] > cb) 4687 {} 4688 else 4689 if(p[pixel[12]] > cb) 4690 if(p[pixel[13]] > cb) 4691 {} 4692 else 4693 continue; 4694 else 4695 continue; 4696 else 4697 if(p[pixel[12]] > cb) 4698 if(p[pixel[13]] > cb) 4699 if(p[pixel[14]] > cb) 4700 {} 4701 else 4702 continue; 4703 else 4704 continue; 4705 else 4706 continue; 4707 else 4708 if(p[pixel[12]] > cb) 4709 if(p[pixel[13]] > cb) 4710 if(p[pixel[14]] > cb) 4711 if(p[pixel[15]] > cb) 4712 {} 4713 else 4714 continue; 4715 else 4716 continue; 4717 else 4718 continue; 4719 else 4720 continue; 4721 else 4722 continue; 4723 else 4724 continue; 4725 else 4726 continue; 4727 else 4728 continue; 4729 else if(p[pixel[10]] < c_b) 4730 if(p[pixel[11]] < c_b) 4731 if(p[pixel[12]] < c_b) 4732 if(p[pixel[13]] < c_b) 4733 if(p[pixel[14]] < c_b) 4734 if(p[pixel[15]] < c_b) 4735 {} 4736 else 4737 if(p[pixel[6]] < c_b) 4738 if(p[pixel[7]] < c_b) 4739 if(p[pixel[8]] < c_b) 4740 if(p[pixel[9]] < c_b) 4741 {} 4742 else 4743 continue; 4744 else 4745 continue; 4746 else 4747 continue; 4748 else 4749 continue; 4750 else 4751 if(p[pixel[5]] < c_b) 4752 if(p[pixel[6]] < c_b) 4753 if(p[pixel[7]] < c_b) 4754 if(p[pixel[8]] < c_b) 4755 if(p[pixel[9]] < c_b) 4756 {} 4757 else 4758 continue; 4759 else 4760 continue; 4761 else 4762 continue; 4763 else 4764 continue; 4765 else 4766 continue; 4767 else 4768 if(p[pixel[4]] < c_b) 4769 if(p[pixel[5]] < c_b) 4770 if(p[pixel[6]] < c_b) 4771 if(p[pixel[7]] < c_b) 4772 if(p[pixel[8]] < c_b) 4773 if(p[pixel[9]] < c_b) 4774 {} 4775 else 4776 continue; 4777 else 4778 continue; 4779 else 4780 continue; 4781 else 4782 continue; 4783 else 4784 continue; 4785 else 4786 continue; 4787 else 4788 continue; 4789 else 4790 continue; 4791 else 4792 continue; 4793 else if(p[pixel[3]] < c_b) 4794 if(p[pixel[4]] > cb) 4795 if(p[pixel[13]] > cb) 4796 if(p[pixel[7]] > cb) 4797 if(p[pixel[8]] > cb) 4798 if(p[pixel[9]] > cb) 4799 if(p[pixel[10]] > cb) 4800 if(p[pixel[11]] > cb) 4801 if(p[pixel[12]] > cb) 4802 if(p[pixel[6]] > cb) 4803 if(p[pixel[5]] > cb) 4804 {} 4805 else 4806 if(p[pixel[14]] > cb) 4807 {} 4808 else 4809 continue; 4810 else 4811 if(p[pixel[14]] > cb) 4812 if(p[pixel[15]] > cb) 4813 {} 4814 else 4815 continue; 4816 else 4817 continue; 4818 else 4819 continue; 4820 else 4821 continue; 4822 else 4823 continue; 4824 else 4825 continue; 4826 else 4827 continue; 4828 else 4829 continue; 4830 else if(p[pixel[13]] < c_b) 4831 if(p[pixel[11]] > cb) 4832 if(p[pixel[5]] > cb) 4833 if(p[pixel[6]] > cb) 4834 if(p[pixel[7]] > cb) 4835 if(p[pixel[8]] > cb) 4836 if(p[pixel[9]] > cb) 4837 if(p[pixel[10]] > cb) 4838 if(p[pixel[12]] > cb) 4839 {} 4840 else 4841 continue; 4842 else 4843 continue; 4844 else 4845 continue; 4846 else 4847 continue; 4848 else 4849 continue; 4850 else 4851 continue; 4852 else 4853 continue; 4854 else if(p[pixel[11]] < c_b) 4855 if(p[pixel[12]] < c_b) 4856 if(p[pixel[14]] < c_b) 4857 if(p[pixel[15]] < c_b) 4858 {} 4859 else 4860 if(p[pixel[6]] < c_b) 4861 if(p[pixel[7]] < c_b) 4862 if(p[pixel[8]] < c_b) 4863 if(p[pixel[9]] < c_b) 4864 if(p[pixel[10]] < c_b) 4865 {} 4866 else 4867 continue; 4868 else 4869 continue; 4870 else 4871 continue; 4872 else 4873 continue; 4874 else 4875 continue; 4876 else 4877 if(p[pixel[5]] < c_b) 4878 if(p[pixel[6]] < c_b) 4879 if(p[pixel[7]] < c_b) 4880 if(p[pixel[8]] < c_b) 4881 if(p[pixel[9]] < c_b) 4882 if(p[pixel[10]] < c_b) 4883 {} 4884 else 4885 continue; 4886 else 4887 continue; 4888 else 4889 continue; 4890 else 4891 continue; 4892 else 4893 continue; 4894 else 4895 continue; 4896 else 4897 continue; 4898 else 4899 continue; 4900 else 4901 if(p[pixel[5]] > cb) 4902 if(p[pixel[6]] > cb) 4903 if(p[pixel[7]] > cb) 4904 if(p[pixel[8]] > cb) 4905 if(p[pixel[9]] > cb) 4906 if(p[pixel[10]] > cb) 4907 if(p[pixel[11]] > cb) 4908 if(p[pixel[12]] > cb) 4909 {} 4910 else 4911 continue; 4912 else 4913 continue; 4914 else 4915 continue; 4916 else 4917 continue; 4918 else 4919 continue; 4920 else 4921 continue; 4922 else 4923 continue; 4924 else 4925 continue; 4926 else if(p[pixel[4]] < c_b) 4927 if(p[pixel[5]] > cb) 4928 if(p[pixel[14]] > cb) 4929 if(p[pixel[7]] > cb) 4930 if(p[pixel[8]] > cb) 4931 if(p[pixel[9]] > cb) 4932 if(p[pixel[10]] > cb) 4933 if(p[pixel[11]] > cb) 4934 if(p[pixel[12]] > cb) 4935 if(p[pixel[13]] > cb) 4936 if(p[pixel[6]] > cb) 4937 {} 4938 else 4939 if(p[pixel[15]] > cb) 4940 {} 4941 else 4942 continue; 4943 else 4944 continue; 4945 else 4946 continue; 4947 else 4948 continue; 4949 else 4950 continue; 4951 else 4952 continue; 4953 else 4954 continue; 4955 else 4956 continue; 4957 else if(p[pixel[14]] < c_b) 4958 if(p[pixel[12]] > cb) 4959 if(p[pixel[6]] > cb) 4960 if(p[pixel[7]] > cb) 4961 if(p[pixel[8]] > cb) 4962 if(p[pixel[9]] > cb) 4963 if(p[pixel[10]] > cb) 4964 if(p[pixel[11]] > cb) 4965 if(p[pixel[13]] > cb) 4966 {} 4967 else 4968 continue; 4969 else 4970 continue; 4971 else 4972 continue; 4973 else 4974 continue; 4975 else 4976 continue; 4977 else 4978 continue; 4979 else 4980 continue; 4981 else if(p[pixel[12]] < c_b) 4982 if(p[pixel[13]] < c_b) 4983 if(p[pixel[15]] < c_b) 4984 {} 4985 else 4986 if(p[pixel[6]] < c_b) 4987 if(p[pixel[7]] < c_b) 4988 if(p[pixel[8]] < c_b) 4989 if(p[pixel[9]] < c_b) 4990 if(p[pixel[10]] < c_b) 4991 if(p[pixel[11]] < c_b) 4992 {} 4993 else 4994 continue; 4995 else 4996 continue; 4997 else 4998 continue; 4999 else 5000 continue; 5001 else 5002 continue; 5003 else 5004 continue; 5005 else 5006 continue; 5007 else 5008 continue; 5009 else 5010 if(p[pixel[6]] > cb) 5011 if(p[pixel[7]] > cb) 5012 if(p[pixel[8]] > cb) 5013 if(p[pixel[9]] > cb) 5014 if(p[pixel[10]] > cb) 5015 if(p[pixel[11]] > cb) 5016 if(p[pixel[12]] > cb) 5017 if(p[pixel[13]] > cb) 5018 {} 5019 else 5020 continue; 5021 else 5022 continue; 5023 else 5024 continue; 5025 else 5026 continue; 5027 else 5028 continue; 5029 else 5030 continue; 5031 else 5032 continue; 5033 else 5034 continue; 5035 else if(p[pixel[5]] < c_b) 5036 if(p[pixel[6]] > cb) 5037 if(p[pixel[15]] < c_b) 5038 if(p[pixel[13]] > cb) 5039 if(p[pixel[7]] > cb) 5040 if(p[pixel[8]] > cb) 5041 if(p[pixel[9]] > cb) 5042 if(p[pixel[10]] > cb) 5043 if(p[pixel[11]] > cb) 5044 if(p[pixel[12]] > cb) 5045 if(p[pixel[14]] > cb) 5046 {} 5047 else 5048 continue; 5049 else 5050 continue; 5051 else 5052 continue; 5053 else 5054 continue; 5055 else 5056 continue; 5057 else 5058 continue; 5059 else 5060 continue; 5061 else if(p[pixel[13]] < c_b) 5062 if(p[pixel[14]] < c_b) 5063 {} 5064 else 5065 continue; 5066 else 5067 continue; 5068 else 5069 if(p[pixel[7]] > cb) 5070 if(p[pixel[8]] > cb) 5071 if(p[pixel[9]] > cb) 5072 if(p[pixel[10]] > cb) 5073 if(p[pixel[11]] > cb) 5074 if(p[pixel[12]] > cb) 5075 if(p[pixel[13]] > cb) 5076 if(p[pixel[14]] > cb) 5077 {} 5078 else 5079 continue; 5080 else 5081 continue; 5082 else 5083 continue; 5084 else 5085 continue; 5086 else 5087 continue; 5088 else 5089 continue; 5090 else 5091 continue; 5092 else 5093 continue; 5094 else if(p[pixel[6]] < c_b) 5095 if(p[pixel[7]] > cb) 5096 if(p[pixel[14]] > cb) 5097 if(p[pixel[8]] > cb) 5098 if(p[pixel[9]] > cb) 5099 if(p[pixel[10]] > cb) 5100 if(p[pixel[11]] > cb) 5101 if(p[pixel[12]] > cb) 5102 if(p[pixel[13]] > cb) 5103 if(p[pixel[15]] > cb) 5104 {} 5105 else 5106 continue; 5107 else 5108 continue; 5109 else 5110 continue; 5111 else 5112 continue; 5113 else 5114 continue; 5115 else 5116 continue; 5117 else 5118 continue; 5119 else if(p[pixel[14]] < c_b) 5120 if(p[pixel[15]] < c_b) 5121 {} 5122 else 5123 continue; 5124 else 5125 continue; 5126 else if(p[pixel[7]] < c_b) 5127 if(p[pixel[8]] < c_b) 5128 {} 5129 else 5130 if(p[pixel[15]] < c_b) 5131 {} 5132 else 5133 continue; 5134 else 5135 if(p[pixel[14]] < c_b) 5136 if(p[pixel[15]] < c_b) 5137 {} 5138 else 5139 continue; 5140 else 5141 continue; 5142 else 5143 if(p[pixel[13]] > cb) 5144 if(p[pixel[7]] > cb) 5145 if(p[pixel[8]] > cb) 5146 if(p[pixel[9]] > cb) 5147 if(p[pixel[10]] > cb) 5148 if(p[pixel[11]] > cb) 5149 if(p[pixel[12]] > cb) 5150 if(p[pixel[14]] > cb) 5151 if(p[pixel[15]] > cb) 5152 {} 5153 else 5154 continue; 5155 else 5156 continue; 5157 else 5158 continue; 5159 else 5160 continue; 5161 else 5162 continue; 5163 else 5164 continue; 5165 else 5166 continue; 5167 else 5168 continue; 5169 else if(p[pixel[13]] < c_b) 5170 if(p[pixel[14]] < c_b) 5171 if(p[pixel[15]] < c_b) 5172 {} 5173 else 5174 continue; 5175 else 5176 continue; 5177 else 5178 continue; 5179 else 5180 if(p[pixel[12]] > cb) 5181 if(p[pixel[7]] > cb) 5182 if(p[pixel[8]] > cb) 5183 if(p[pixel[9]] > cb) 5184 if(p[pixel[10]] > cb) 5185 if(p[pixel[11]] > cb) 5186 if(p[pixel[13]] > cb) 5187 if(p[pixel[14]] > cb) 5188 if(p[pixel[6]] > cb) 5189 {} 5190 else 5191 if(p[pixel[15]] > cb) 5192 {} 5193 else 5194 continue; 5195 else 5196 continue; 5197 else 5198 continue; 5199 else 5200 continue; 5201 else 5202 continue; 5203 else 5204 continue; 5205 else 5206 continue; 5207 else 5208 continue; 5209 else if(p[pixel[12]] < c_b) 5210 if(p[pixel[13]] < c_b) 5211 if(p[pixel[14]] < c_b) 5212 if(p[pixel[15]] < c_b) 5213 {} 5214 else 5215 if(p[pixel[6]] < c_b) 5216 if(p[pixel[7]] < c_b) 5217 if(p[pixel[8]] < c_b) 5218 if(p[pixel[9]] < c_b) 5219 if(p[pixel[10]] < c_b) 5220 if(p[pixel[11]] < c_b) 5221 {} 5222 else 5223 continue; 5224 else 5225 continue; 5226 else 5227 continue; 5228 else 5229 continue; 5230 else 5231 continue; 5232 else 5233 continue; 5234 else 5235 continue; 5236 else 5237 continue; 5238 else 5239 continue; 5240 else 5241 if(p[pixel[11]] > cb) 5242 if(p[pixel[7]] > cb) 5243 if(p[pixel[8]] > cb) 5244 if(p[pixel[9]] > cb) 5245 if(p[pixel[10]] > cb) 5246 if(p[pixel[12]] > cb) 5247 if(p[pixel[13]] > cb) 5248 if(p[pixel[6]] > cb) 5249 if(p[pixel[5]] > cb) 5250 {} 5251 else 5252 if(p[pixel[14]] > cb) 5253 {} 5254 else 5255 continue; 5256 else 5257 if(p[pixel[14]] > cb) 5258 if(p[pixel[15]] > cb) 5259 {} 5260 else 5261 continue; 5262 else 5263 continue; 5264 else 5265 continue; 5266 else 5267 continue; 5268 else 5269 continue; 5270 else 5271 continue; 5272 else 5273 continue; 5274 else 5275 continue; 5276 else if(p[pixel[11]] < c_b) 5277 if(p[pixel[12]] < c_b) 5278 if(p[pixel[13]] < c_b) 5279 if(p[pixel[14]] < c_b) 5280 if(p[pixel[15]] < c_b) 5281 {} 5282 else 5283 if(p[pixel[6]] < c_b) 5284 if(p[pixel[7]] < c_b) 5285 if(p[pixel[8]] < c_b) 5286 if(p[pixel[9]] < c_b) 5287 if(p[pixel[10]] < c_b) 5288 {} 5289 else 5290 continue; 5291 else 5292 continue; 5293 else 5294 continue; 5295 else 5296 continue; 5297 else 5298 continue; 5299 else 5300 if(p[pixel[5]] < c_b) 5301 if(p[pixel[6]] < c_b) 5302 if(p[pixel[7]] < c_b) 5303 if(p[pixel[8]] < c_b) 5304 if(p[pixel[9]] < c_b) 5305 if(p[pixel[10]] < c_b) 5306 {} 5307 else 5308 continue; 5309 else 5310 continue; 5311 else 5312 continue; 5313 else 5314 continue; 5315 else 5316 continue; 5317 else 5318 continue; 5319 else 5320 continue; 5321 else 5322 continue; 5323 else 5324 continue; 5325 else 5326 if(p[pixel[10]] > cb) 5327 if(p[pixel[7]] > cb) 5328 if(p[pixel[8]] > cb) 5329 if(p[pixel[9]] > cb) 5330 if(p[pixel[11]] > cb) 5331 if(p[pixel[12]] > cb) 5332 if(p[pixel[6]] > cb) 5333 if(p[pixel[5]] > cb) 5334 if(p[pixel[4]] > cb) 5335 {} 5336 else 5337 if(p[pixel[13]] > cb) 5338 {} 5339 else 5340 continue; 5341 else 5342 if(p[pixel[13]] > cb) 5343 if(p[pixel[14]] > cb) 5344 {} 5345 else 5346 continue; 5347 else 5348 continue; 5349 else 5350 if(p[pixel[13]] > cb) 5351 if(p[pixel[14]] > cb) 5352 if(p[pixel[15]] > cb) 5353 {} 5354 else 5355 continue; 5356 else 5357 continue; 5358 else 5359 continue; 5360 else 5361 continue; 5362 else 5363 continue; 5364 else 5365 continue; 5366 else 5367 continue; 5368 else 5369 continue; 5370 else if(p[pixel[10]] < c_b) 5371 if(p[pixel[11]] < c_b) 5372 if(p[pixel[12]] < c_b) 5373 if(p[pixel[13]] < c_b) 5374 if(p[pixel[14]] < c_b) 5375 if(p[pixel[15]] < c_b) 5376 {} 5377 else 5378 if(p[pixel[6]] < c_b) 5379 if(p[pixel[7]] < c_b) 5380 if(p[pixel[8]] < c_b) 5381 if(p[pixel[9]] < c_b) 5382 {} 5383 else 5384 continue; 5385 else 5386 continue; 5387 else 5388 continue; 5389 else 5390 continue; 5391 else 5392 if(p[pixel[5]] < c_b) 5393 if(p[pixel[6]] < c_b) 5394 if(p[pixel[7]] < c_b) 5395 if(p[pixel[8]] < c_b) 5396 if(p[pixel[9]] < c_b) 5397 {} 5398 else 5399 continue; 5400 else 5401 continue; 5402 else 5403 continue; 5404 else 5405 continue; 5406 else 5407 continue; 5408 else 5409 if(p[pixel[4]] < c_b) 5410 if(p[pixel[5]] < c_b) 5411 if(p[pixel[6]] < c_b) 5412 if(p[pixel[7]] < c_b) 5413 if(p[pixel[8]] < c_b) 5414 if(p[pixel[9]] < c_b) 5415 {} 5416 else 5417 continue; 5418 else 5419 continue; 5420 else 5421 continue; 5422 else 5423 continue; 5424 else 5425 continue; 5426 else 5427 continue; 5428 else 5429 continue; 5430 else 5431 continue; 5432 else 5433 continue; 5434 else 5435 if(p[pixel[9]] > cb) 5436 if(p[pixel[7]] > cb) 5437 if(p[pixel[8]] > cb) 5438 if(p[pixel[10]] > cb) 5439 if(p[pixel[11]] > cb) 5440 if(p[pixel[6]] > cb) 5441 if(p[pixel[5]] > cb) 5442 if(p[pixel[4]] > cb) 5443 if(p[pixel[3]] > cb) 5444 {} 5445 else 5446 if(p[pixel[12]] > cb) 5447 {} 5448 else 5449 continue; 5450 else 5451 if(p[pixel[12]] > cb) 5452 if(p[pixel[13]] > cb) 5453 {} 5454 else 5455 continue; 5456 else 5457 continue; 5458 else 5459 if(p[pixel[12]] > cb) 5460 if(p[pixel[13]] > cb) 5461 if(p[pixel[14]] > cb) 5462 {} 5463 else 5464 continue; 5465 else 5466 continue; 5467 else 5468 continue; 5469 else 5470 if(p[pixel[12]] > cb) 5471 if(p[pixel[13]] > cb) 5472 if(p[pixel[14]] > cb) 5473 if(p[pixel[15]] > cb) 5474 {} 5475 else 5476 continue; 5477 else 5478 continue; 5479 else 5480 continue; 5481 else 5482 continue; 5483 else 5484 continue; 5485 else 5486 continue; 5487 else 5488 continue; 5489 else 5490 continue; 5491 else if(p[pixel[9]] < c_b) 5492 if(p[pixel[10]] < c_b) 5493 if(p[pixel[11]] < c_b) 5494 if(p[pixel[12]] < c_b) 5495 if(p[pixel[13]] < c_b) 5496 if(p[pixel[14]] < c_b) 5497 if(p[pixel[15]] < c_b) 5498 {} 5499 else 5500 if(p[pixel[6]] < c_b) 5501 if(p[pixel[7]] < c_b) 5502 if(p[pixel[8]] < c_b) 5503 {} 5504 else 5505 continue; 5506 else 5507 continue; 5508 else 5509 continue; 5510 else 5511 if(p[pixel[5]] < c_b) 5512 if(p[pixel[6]] < c_b) 5513 if(p[pixel[7]] < c_b) 5514 if(p[pixel[8]] < c_b) 5515 {} 5516 else 5517 continue; 5518 else 5519 continue; 5520 else 5521 continue; 5522 else 5523 continue; 5524 else 5525 if(p[pixel[4]] < c_b) 5526 if(p[pixel[5]] < c_b) 5527 if(p[pixel[6]] < c_b) 5528 if(p[pixel[7]] < c_b) 5529 if(p[pixel[8]] < c_b) 5530 {} 5531 else 5532 continue; 5533 else 5534 continue; 5535 else 5536 continue; 5537 else 5538 continue; 5539 else 5540 continue; 5541 else 5542 if(p[pixel[3]] < c_b) 5543 if(p[pixel[4]] < c_b) 5544 if(p[pixel[5]] < c_b) 5545 if(p[pixel[6]] < c_b) 5546 if(p[pixel[7]] < c_b) 5547 if(p[pixel[8]] < c_b) 5548 {} 5549 else 5550 continue; 5551 else 5552 continue; 5553 else 5554 continue; 5555 else 5556 continue; 5557 else 5558 continue; 5559 else 5560 continue; 5561 else 5562 continue; 5563 else 5564 continue; 5565 else 5566 continue; 5567 else 5568 if(p[pixel[8]] > cb) 5569 if(p[pixel[7]] > cb) 5570 if(p[pixel[9]] > cb) 5571 if(p[pixel[10]] > cb) 5572 if(p[pixel[6]] > cb) 5573 if(p[pixel[5]] > cb) 5574 if(p[pixel[4]] > cb) 5575 if(p[pixel[3]] > cb) 5576 if(p[pixel[2]] > cb) 5577 {} 5578 else 5579 if(p[pixel[11]] > cb) 5580 {} 5581 else 5582 continue; 5583 else 5584 if(p[pixel[11]] > cb) 5585 if(p[pixel[12]] > cb) 5586 {} 5587 else 5588 continue; 5589 else 5590 continue; 5591 else 5592 if(p[pixel[11]] > cb) 5593 if(p[pixel[12]] > cb) 5594 if(p[pixel[13]] > cb) 5595 {} 5596 else 5597 continue; 5598 else 5599 continue; 5600 else 5601 continue; 5602 else 5603 if(p[pixel[11]] > cb) 5604 if(p[pixel[12]] > cb) 5605 if(p[pixel[13]] > cb) 5606 if(p[pixel[14]] > cb) 5607 {} 5608 else 5609 continue; 5610 else 5611 continue; 5612 else 5613 continue; 5614 else 5615 continue; 5616 else 5617 if(p[pixel[11]] > cb) 5618 if(p[pixel[12]] > cb) 5619 if(p[pixel[13]] > cb) 5620 if(p[pixel[14]] > cb) 5621 if(p[pixel[15]] > cb) 5622 {} 5623 else 5624 continue; 5625 else 5626 continue; 5627 else 5628 continue; 5629 else 5630 continue; 5631 else 5632 continue; 5633 else 5634 continue; 5635 else 5636 continue; 5637 else 5638 continue; 5639 else if(p[pixel[8]] < c_b) 5640 if(p[pixel[9]] < c_b) 5641 if(p[pixel[10]] < c_b) 5642 if(p[pixel[11]] < c_b) 5643 if(p[pixel[12]] < c_b) 5644 if(p[pixel[13]] < c_b) 5645 if(p[pixel[14]] < c_b) 5646 if(p[pixel[15]] < c_b) 5647 {} 5648 else 5649 if(p[pixel[6]] < c_b) 5650 if(p[pixel[7]] < c_b) 5651 {} 5652 else 5653 continue; 5654 else 5655 continue; 5656 else 5657 if(p[pixel[5]] < c_b) 5658 if(p[pixel[6]] < c_b) 5659 if(p[pixel[7]] < c_b) 5660 {} 5661 else 5662 continue; 5663 else 5664 continue; 5665 else 5666 continue; 5667 else 5668 if(p[pixel[4]] < c_b) 5669 if(p[pixel[5]] < c_b) 5670 if(p[pixel[6]] < c_b) 5671 if(p[pixel[7]] < c_b) 5672 {} 5673 else 5674 continue; 5675 else 5676 continue; 5677 else 5678 continue; 5679 else 5680 continue; 5681 else 5682 if(p[pixel[3]] < c_b) 5683 if(p[pixel[4]] < c_b) 5684 if(p[pixel[5]] < c_b) 5685 if(p[pixel[6]] < c_b) 5686 if(p[pixel[7]] < c_b) 5687 {} 5688 else 5689 continue; 5690 else 5691 continue; 5692 else 5693 continue; 5694 else 5695 continue; 5696 else 5697 continue; 5698 else 5699 if(p[pixel[2]] < c_b) 5700 if(p[pixel[3]] < c_b) 5701 if(p[pixel[4]] < c_b) 5702 if(p[pixel[5]] < c_b) 5703 if(p[pixel[6]] < c_b) 5704 if(p[pixel[7]] < c_b) 5705 {} 5706 else 5707 continue; 5708 else 5709 continue; 5710 else 5711 continue; 5712 else 5713 continue; 5714 else 5715 continue; 5716 else 5717 continue; 5718 else 5719 continue; 5720 else 5721 continue; 5722 else 5723 continue; 5724 else 5725 if(p[pixel[7]] > cb) 5726 if(p[pixel[8]] > cb) 5727 if(p[pixel[9]] > cb) 5728 if(p[pixel[6]] > cb) 5729 if(p[pixel[5]] > cb) 5730 if(p[pixel[4]] > cb) 5731 if(p[pixel[3]] > cb) 5732 if(p[pixel[2]] > cb) 5733 if(p[pixel[1]] > cb) 5734 {} 5735 else 5736 if(p[pixel[10]] > cb) 5737 {} 5738 else 5739 continue; 5740 else 5741 if(p[pixel[10]] > cb) 5742 if(p[pixel[11]] > cb) 5743 {} 5744 else 5745 continue; 5746 else 5747 continue; 5748 else 5749 if(p[pixel[10]] > cb) 5750 if(p[pixel[11]] > cb) 5751 if(p[pixel[12]] > cb) 5752 {} 5753 else 5754 continue; 5755 else 5756 continue; 5757 else 5758 continue; 5759 else 5760 if(p[pixel[10]] > cb) 5761 if(p[pixel[11]] > cb) 5762 if(p[pixel[12]] > cb) 5763 if(p[pixel[13]] > cb) 5764 {} 5765 else 5766 continue; 5767 else 5768 continue; 5769 else 5770 continue; 5771 else 5772 continue; 5773 else 5774 if(p[pixel[10]] > cb) 5775 if(p[pixel[11]] > cb) 5776 if(p[pixel[12]] > cb) 5777 if(p[pixel[13]] > cb) 5778 if(p[pixel[14]] > cb) 5779 {} 5780 else 5781 continue; 5782 else 5783 continue; 5784 else 5785 continue; 5786 else 5787 continue; 5788 else 5789 continue; 5790 else 5791 if(p[pixel[10]] > cb) 5792 if(p[pixel[11]] > cb) 5793 if(p[pixel[12]] > cb) 5794 if(p[pixel[13]] > cb) 5795 if(p[pixel[14]] > cb) 5796 if(p[pixel[15]] > cb) 5797 {} 5798 else 5799 continue; 5800 else 5801 continue; 5802 else 5803 continue; 5804 else 5805 continue; 5806 else 5807 continue; 5808 else 5809 continue; 5810 else 5811 continue; 5812 else 5813 continue; 5814 else if(p[pixel[7]] < c_b) 5815 if(p[pixel[8]] < c_b) 5816 if(p[pixel[9]] < c_b) 5817 if(p[pixel[6]] < c_b) 5818 if(p[pixel[5]] < c_b) 5819 if(p[pixel[4]] < c_b) 5820 if(p[pixel[3]] < c_b) 5821 if(p[pixel[2]] < c_b) 5822 if(p[pixel[1]] < c_b) 5823 {} 5824 else 5825 if(p[pixel[10]] < c_b) 5826 {} 5827 else 5828 continue; 5829 else 5830 if(p[pixel[10]] < c_b) 5831 if(p[pixel[11]] < c_b) 5832 {} 5833 else 5834 continue; 5835 else 5836 continue; 5837 else 5838 if(p[pixel[10]] < c_b) 5839 if(p[pixel[11]] < c_b) 5840 if(p[pixel[12]] < c_b) 5841 {} 5842 else 5843 continue; 5844 else 5845 continue; 5846 else 5847 continue; 5848 else 5849 if(p[pixel[10]] < c_b) 5850 if(p[pixel[11]] < c_b) 5851 if(p[pixel[12]] < c_b) 5852 if(p[pixel[13]] < c_b) 5853 {} 5854 else 5855 continue; 5856 else 5857 continue; 5858 else 5859 continue; 5860 else 5861 continue; 5862 else 5863 if(p[pixel[10]] < c_b) 5864 if(p[pixel[11]] < c_b) 5865 if(p[pixel[12]] < c_b) 5866 if(p[pixel[13]] < c_b) 5867 if(p[pixel[14]] < c_b) 5868 {} 5869 else 5870 continue; 5871 else 5872 continue; 5873 else 5874 continue; 5875 else 5876 continue; 5877 else 5878 continue; 5879 else 5880 if(p[pixel[10]] < c_b) 5881 if(p[pixel[11]] < c_b) 5882 if(p[pixel[12]] < c_b) 5883 if(p[pixel[13]] < c_b) 5884 if(p[pixel[14]] < c_b) 5885 if(p[pixel[15]] < c_b) 5886 {} 5887 else 5888 continue; 5889 else 5890 continue; 5891 else 5892 continue; 5893 else 5894 continue; 5895 else 5896 continue; 5897 else 5898 continue; 5899 else 5900 continue; 5901 else 5902 continue; 5903 else 5904 continue; 5905 if(num_corners == rsize) 5906 { 5907 rsize*=2; 5908 ret_corners = cast(xy*)realloc(ret_corners, xy.sizeof*rsize); 5909 } 5910 ret_corners[num_corners].x = x; 5911 ret_corners[num_corners].y = y; 5912 num_corners++; 5913 5914 } 5915 5916 *ret_num_corners = num_corners; 5917 return ret_corners; 5918 5919 } 5920