Changeset 402


Ignore:
Timestamp:
Jan 4, 2005, 3:59:22 AM (15 years ago)
Author:
Sam Hocevar
Message:
  • print colour count in debug messages
Location:
pwntcha/trunk/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • pwntcha/trunk/src/common.h

    r398 r402  
    4646struct image *filter_median(struct image *img);
    4747struct image *filter_contrast(struct image *img);
     48int filter_count(struct image *img);
    4849
  • pwntcha/trunk/src/filters.c

    r398 r402  
    330330}
    331331
     332int filter_count(struct image *img)
     333{
     334    int histo[256];
     335    int x, y, i, count = 0;
     336    int r, g, b;
     337
     338    for(i = 0; i < 256; i++)
     339        histo[i] = 0;
     340
     341    for(y = 0; y < img->height; y++)
     342        for(x = 0; x < img->width; x++)
     343        {
     344            getgray(img, x, y, &r);
     345            histo[r] = 1;
     346        }
     347
     348    for(i = 0; i < 256; i++)
     349        count += histo[i];
     350
     351    return count;
     352}
     353
  • pwntcha/trunk/src/main.c

    r401 r402  
    109109        char *input = argv[optind], *result;
    110110        struct image *img;
     111        int count;
    111112
    112113        img = image_load(argv[optind]);
     
    118119        }
    119120
    120         dprintf("image size %ix%i\n", img->width, img->height);
     121        count = filter_count(img);
     122        dprintf("image size %ix%i, %i colours\n",
     123                img->width, img->height, count);
    121124
    122125        if(!strcmp(mode, "test"))
     
    135138                result = decode_phpbb(img);
    136139            }
    137             else if(img->height == 25 || img->height == 30)
     140            else if((img->height == 25 || img->height == 30)
     141                     && count < 10)
    138142            {
    139143                dprintf("autodetecting scode captcha\n");
Note: See TracChangeset for help on using the changeset viewer.