Mercurial > hg > wm
comparison Meerwald/wm_bruyn_d.c @ 20:bd669312f068
suppress warnings, fix link errors
author | Peter Meerwald-Stadler <pmeerw@pmeerw.net> |
---|---|
date | Sat, 28 Jan 2023 23:54:58 +0100 |
parents | 4987db85cfae |
children |
comparison
equal
deleted
inserted
replaced
19:0fffb6f03ebf | 20:bd669312f068 |
---|---|
39 double *slope; | 39 double *slope; |
40 int rows, cols, format; | 40 int rows, cols, format; |
41 int c; | 41 int c; |
42 int i, j; | 42 int i, j; |
43 int n; | 43 int n; |
44 int col, row; | 44 int row; |
45 int n_block; | 45 int n_block; |
46 | 46 |
47 char signature_name[MAXPATHLEN]; | 47 char signature_name[MAXPATHLEN]; |
48 char input_name[MAXPATHLEN] = "(stdin)"; | 48 char input_name[MAXPATHLEN] = "(stdin)"; |
49 char output_name[MAXPATHLEN] = "(stdout)"; | 49 char output_name[MAXPATHLEN] = "(stdout)"; |
70 switch (c) { | 70 switch (c) { |
71 case 'h': | 71 case 'h': |
72 case '?': | 72 case '?': |
73 usage(); | 73 usage(); |
74 break; | 74 break; |
75 case 'k': | 75 case 'k': |
76 skipping = 1; | 76 skipping = 1; |
77 break; | 77 break; |
78 case 'n': | 78 case 'n': |
79 nbit_signature = atoi(optarg); | 79 nbit_signature = atoi(optarg); |
80 if (nbit_signature <= 0 || nbit_signature > NBITSIGNATURE) { | 80 if (nbit_signature <= 0 || nbit_signature > NBITSIGNATURE) { |
241 pgm_readpgmrow(in, image[row], cols, maxval, format); | 241 pgm_readpgmrow(in, image[row], cols, maxval, format); |
242 | 242 |
243 fclose(in); | 243 fclose(in); |
244 | 244 |
245 row = 0; | 245 row = 0; |
246 col = 0; | |
247 | 246 |
248 // allocate memory for one block | 247 // allocate memory for one block |
249 block = alloc_grays(blocksize, blocksize); | 248 block = alloc_grays(blocksize, blocksize); |
250 | 249 |
251 // allocate memory for zone classification | 250 // allocate memory for zone classification |
253 | 252 |
254 // allocate memory for category classification | 253 // allocate memory for category classification |
255 category1 = alloc_grays(blocksize, blocksize); | 254 category1 = alloc_grays(blocksize, blocksize); |
256 category2 = alloc_grays(blocksize, blocksize); | 255 category2 = alloc_grays(blocksize, blocksize); |
257 | 256 |
258 // set up category classification array according to | 257 // set up category classification array according to |
259 // pattern type parameter | 258 // pattern type parameter |
260 for (i = 0; i < blocksize; i++) | 259 for (i = 0; i < blocksize; i++) |
261 for (j = 0; j < blocksize; j++) { | 260 for (j = 0; j < blocksize; j++) { |
262 category1[j][i] = lookup_pattern(pattern1, i, j); | 261 category1[j][i] = lookup_pattern(pattern1, i, j); |
263 category2[j][i] = lookup_pattern(pattern2, i, j); | 262 category2[j][i] = lookup_pattern(pattern2, i, j); |
288 yb = random() % (rows / blocksize); | 287 yb = random() % (rows / blocksize); |
289 } while (add_coord(coords, xb, yb) < 0); | 288 } while (add_coord(coords, xb, yb) < 0); |
290 | 289 |
291 // copy image block | 290 // copy image block |
292 fprintf(stderr, "XXX1 %d %d %d\n", xb*blocksize, yb*blocksize, blocksize); | 291 fprintf(stderr, "XXX1 %d %d %d\n", xb*blocksize, yb*blocksize, blocksize); |
293 copy_grays_to_block(block, image, xb * blocksize, yb * blocksize, blocksize, blocksize); | 292 copy_grays_to_block(block, image, xb * blocksize, yb * blocksize, blocksize, blocksize); |
294 fprintf(stderr, "XXX2\n"); | 293 fprintf(stderr, "XXX2\n"); |
295 | 294 |
296 if (verbose > 0) | 295 if (verbose > 0) |
297 fprintf(stderr, "detecting bit #%d in block at (%d/%d)\n", n, xb * blocksize, yb * blocksize); | 296 fprintf(stderr, "detecting bit #%d in block at (%d/%d)\n", n, xb * blocksize, yb * blocksize); |
298 | 297 |
299 // sort luminance values in block to represent increasing function F | 298 // sort luminance values in block to represent increasing function F |
300 sort_grays(block[0], n_block); | 299 sort_grays(block[0], n_block); |