123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include <cstdio>
- #include <cstdlib>
- #include <segmentation/felzenszwalb/image.h>
- #include <segmentation/felzenszwalb/misc.h>
- #include <segmentation/felzenszwalb/pnmfile.h>
- #include "segmentation/felzenszwalb/segment-image.h"
- using namespace felzenszwalb;
- int main(int argc, char **argv) {
- if (argc != 6) {
- fprintf(stderr, "usage: %s sigma k min input(ppm) output(ppm)\n", argv[0]);
- return 1;
- }
- float sigma = atof(argv[1]);
- float k = atof(argv[2]);
- int min_size = atoi(argv[3]);
- printf("loading input image.\n");
- image<rgb> *input = loadPPM(argv[4]);
- printf("processing\n");
- int num_ccs;
- image<rgb> *seg = segment_image(input, sigma, k, min_size, &num_ccs);
- savePPM(seg, argv[5]);
- printf("got %d components\n", num_ccs);
- printf("done! uff...thats hard work.\n");
- return 0;
- }
|