mirror of
https://github.com/eddyem/improclib.git
synced 2026-03-20 08:40:57 +03:00
convert for usage with libusefull_macros v0.3.2
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
#include <usefull_macros.h>
|
||||
|
||||
int main(int argc, char **argv){
|
||||
sl_init();
|
||||
if(argc != 2){
|
||||
fprintf(stderr, "Usage: %s filename - open bw image file, equalize histogram, plot two crosses ans save as output.jpg\n", argv[0]);
|
||||
return 1;
|
||||
@@ -31,9 +32,9 @@ int main(int argc, char **argv){
|
||||
return 2;
|
||||
}
|
||||
int w = I->width, h = I->height;
|
||||
double t0 = dtime();
|
||||
double t0 = sl_dtime();
|
||||
uint8_t *eq = il_equalize8(I, 3, 0.1);
|
||||
green("Equalize: %g ms\n", (dtime() - t0)*1e3);
|
||||
green("Equalize: %g ms\n", (sl_dtime() - t0)*1e3);
|
||||
il_Image_free(&I);
|
||||
if(!eq) return 3;
|
||||
il_Img3 *I3 = MALLOC(il_Img3, 1);
|
||||
|
||||
@@ -24,7 +24,7 @@ static int help = 0, w = 1024, h = 1024, Niter = 1000000;
|
||||
static double xsigma = 10., ysigma = 10., x0 = 512., y0 = 512.;
|
||||
static char *outp = "output.png";
|
||||
|
||||
static myoption cmdlnopts[] = {
|
||||
static sl_option_t cmdlnopts[] = {
|
||||
{"help", NO_ARGS, NULL, '?', arg_int, APTR(&help), "show this help"},
|
||||
{"width", NEED_ARG, NULL, 'w', arg_int, APTR(&w), "resulting image width (default: 1024)"},
|
||||
{"height", NEED_ARG, NULL, 'h', arg_int, APTR(&h), "resulting image height (default: 1024)"},
|
||||
@@ -38,9 +38,9 @@ static myoption cmdlnopts[] = {
|
||||
};
|
||||
|
||||
int main(int argc, char **argv){
|
||||
initial_setup();
|
||||
parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) showhelp(-1, cmdlnopts);
|
||||
sl_init();
|
||||
sl_parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) sl_showhelp(-1, cmdlnopts);
|
||||
if(w < 1 || h < 1) ERRX("Wrong image size");
|
||||
if(xsigma < DBL_EPSILON || ysigma < DBL_EPSILON) ERRX("STD should be >0");
|
||||
if(Niter < 1) ERRX("Iteration number should be a large positive number");
|
||||
|
||||
@@ -27,7 +27,7 @@ static char *outp = "output.jpg", *inp = NULL;
|
||||
|
||||
static il_Pattern *star = NULL, *cross = NULL;
|
||||
|
||||
static myoption cmdlnopts[] = {
|
||||
static sl_option_t cmdlnopts[] = {
|
||||
{"help", NO_ARGS, NULL, '?', arg_int, APTR(&help), "show this help"},
|
||||
{"width", NEED_ARG, NULL, 'w', arg_int, APTR(&w), "resulting image width (default: 1024)"},
|
||||
{"height", NEED_ARG, NULL, 'h', arg_int, APTR(&h), "resulting image height (default: 1024)"},
|
||||
@@ -85,11 +85,11 @@ static void addfromfile(il_Img3 *I, void (*fn)(il_Img3*, const char*)){
|
||||
}
|
||||
|
||||
int main(int argc, char **argv){
|
||||
initial_setup();
|
||||
sl_init();
|
||||
char *helpstring = "Usage: %s [args] x1,y1[,amp1] x2,y2[,amp2] ... xn,yn[,amp3] - draw 'stars' at coords xi,yi with amplitude ampi (default: 255)\n\n\tWhere args are:\n";
|
||||
change_helpstring(helpstring);
|
||||
parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) showhelp(-1, cmdlnopts);
|
||||
sl_helpstring(helpstring);
|
||||
sl_parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) sl_showhelp(-1, cmdlnopts);
|
||||
if(w < 1 || h < 1) ERRX("Wrong image size");
|
||||
if(argc == 0 && inp == NULL) ERRX("Point at least one coordinate pair or file name");
|
||||
il_Img3 *I = il_Img3_new(w, h);
|
||||
@@ -100,9 +100,9 @@ int main(int argc, char **argv){
|
||||
for(int i = 0; i < argc; ++i) addstar(I, argv[i]);
|
||||
if(inp) addfromfile(I, addstar);
|
||||
il_Pattern_free(&star);
|
||||
double t0 = dtime();
|
||||
double t0 = sl_dtime();
|
||||
il_Img3_addPoisson(I, lambda);
|
||||
green("Poisson noice took %gms\n", (dtime()-t0) * 1e3);
|
||||
green("Poisson noice took %gms\n", (sl_dtime()-t0) * 1e3);
|
||||
if(!il_Img3_jpg(outp, I, 95)) WARNX("Can't save %s", outp);
|
||||
for(int i = 0; i < argc; ++i) addcross(I, argv[i]);
|
||||
if(inp) addfromfile(I, addcross);
|
||||
|
||||
@@ -27,7 +27,7 @@ static char *outp = "output.png", *inp = NULL;
|
||||
|
||||
static il_Image *star = NULL;
|
||||
|
||||
static myoption cmdlnopts[] = {
|
||||
static sl_option_t cmdlnopts[] = {
|
||||
{"help", NO_ARGS, NULL, '?', arg_int, APTR(&help), "show this help"},
|
||||
{"width", NEED_ARG, NULL, 'w', arg_int, APTR(&w), "resulting image width (default: 1024)"},
|
||||
{"height", NEED_ARG, NULL, 'h', arg_int, APTR(&h), "resulting image height (default: 1024)"},
|
||||
@@ -78,11 +78,11 @@ static void addfromfile(il_Image *I){
|
||||
}
|
||||
|
||||
int main(int argc, char **argv){
|
||||
initial_setup();
|
||||
sl_init();
|
||||
char *helpstring = "Usage: %s [args] x1,y1[,w1] x2,y2[,w2] ... xn,yn[,w3] - draw 'stars' at coords xi,yi with weight wi (default: 1.)\n\n\tWhere args are:\n";
|
||||
change_helpstring(helpstring);
|
||||
parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) showhelp(-1, cmdlnopts);
|
||||
sl_helpstring(helpstring);
|
||||
sl_parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) sl_showhelp(-1, cmdlnopts);
|
||||
if(w < 1 || h < 1) ERRX("Wrong image size");
|
||||
if(argc == 0 && inp == NULL) ERRX("Point at least one coordinate pair or file name");
|
||||
il_Image *I = il_Image_new(w, h, IMTYPE_U16);
|
||||
|
||||
@@ -27,7 +27,7 @@ static int help = 0, ndilat = 0, neros = 0;
|
||||
double bg = -1.;
|
||||
static char *infile = NULL, *outbg = NULL, *outbin = NULL;
|
||||
|
||||
static myoption cmdlnopts[] = {
|
||||
static sl_option_t cmdlnopts[] = {
|
||||
{"help", NO_ARGS, NULL, 'h', arg_int, APTR(&help), "show this help"},
|
||||
{"input", NEED_ARG, NULL, 'i', arg_string, APTR(&infile), "input file name"},
|
||||
{"obg", NEED_ARG, NULL, 0, arg_string, APTR(&outbg), "input minus bg jpeg filename"},
|
||||
@@ -39,9 +39,9 @@ static myoption cmdlnopts[] = {
|
||||
};
|
||||
|
||||
int main(int argc, char **argv){
|
||||
initial_setup();
|
||||
parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) showhelp(-1, cmdlnopts);
|
||||
sl_init();
|
||||
sl_parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) sl_showhelp(-1, cmdlnopts);
|
||||
if(!infile) ERRX("Point name of input file");
|
||||
il_Image *I = il_Image_read(infile);
|
||||
if(!I) ERR("Can't read %s", infile);
|
||||
@@ -54,23 +54,23 @@ int main(int argc, char **argv){
|
||||
uint8_t *idata = (uint8_t*) Ibg->data;
|
||||
for(int i = 0; i < wh; ++i) idata[i] = (idata[i] > ibg) ? idata[i] - ibg : 0;
|
||||
if(outbg) il_write_jpg(outbg, Ibg->width, Ibg->height, 1, idata, 95);
|
||||
double t0 = dtime();
|
||||
double t0 = sl_dtime();
|
||||
uint8_t *Ibin = il_Image2bin(I, bg);
|
||||
if(!Ibin) ERRX("Can't binarize image");
|
||||
green("Binarization: %gms\n", 1e3*(dtime()-t0));
|
||||
green("Binarization: %gms\n", 1e3*(sl_dtime()-t0));
|
||||
if(neros > 0){
|
||||
t0 = dtime();
|
||||
t0 = sl_dtime();
|
||||
uint8_t *eros = il_erosionN(Ibin, w, h, neros);
|
||||
FREE(Ibin);
|
||||
Ibin = eros;
|
||||
green("%d erosions: %gms\n", neros, 1e3*(dtime()-t0));
|
||||
green("%d erosions: %gms\n", neros, 1e3*(sl_dtime()-t0));
|
||||
}
|
||||
if(ndilat > 0){
|
||||
t0 = dtime();
|
||||
t0 = sl_dtime();
|
||||
uint8_t *dilat = il_dilationN(Ibin, w, h, ndilat);
|
||||
FREE(Ibin);
|
||||
Ibin = dilat;
|
||||
green("%d dilations: %gms\n", ndilat, 1e3*(dtime()-t0));
|
||||
green("%d dilations: %gms\n", ndilat, 1e3*(sl_dtime()-t0));
|
||||
}
|
||||
if(outbin){
|
||||
il_Image *tmp = il_bin2Image(Ibin, w, h);
|
||||
@@ -78,9 +78,9 @@ int main(int argc, char **argv){
|
||||
il_Image_free(&tmp);
|
||||
}
|
||||
il_ConnComps *comps;
|
||||
t0 = dtime();
|
||||
t0 = sl_dtime();
|
||||
size_t *labels = il_CClabel4(Ibin, w, h, &comps);
|
||||
green("Labeling: %gms\n", 1e3*(dtime()-t0));
|
||||
green("Labeling: %gms\n", 1e3*(sl_dtime()-t0));
|
||||
if(labels && comps->Nobj > 1){
|
||||
printf("Detected %zd components\n", comps->Nobj-1);
|
||||
il_Box *box = comps->boxes + 1;
|
||||
|
||||
@@ -24,7 +24,7 @@ static int help = 0, w = 1024, h = 1024;
|
||||
static double lambda = 15.;
|
||||
static char *outp = "output.png";
|
||||
|
||||
static myoption cmdlnopts[] = {
|
||||
static sl_option_t cmdlnopts[] = {
|
||||
{"help", NO_ARGS, NULL, '?', arg_int, APTR(&help), "show this help"},
|
||||
{"width", NEED_ARG, NULL, 'w', arg_int, APTR(&w), "resulting image width (default: 1024)"},
|
||||
{"height", NEED_ARG, NULL, 'h', arg_int, APTR(&h), "resulting image height (default: 1024)"},
|
||||
@@ -34,9 +34,9 @@ static myoption cmdlnopts[] = {
|
||||
};
|
||||
|
||||
int main(int argc, char **argv){
|
||||
initial_setup();
|
||||
parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) showhelp(-1, cmdlnopts);
|
||||
sl_init();
|
||||
sl_parseargs(&argc, &argv, cmdlnopts);
|
||||
if(help) sl_showhelp(-1, cmdlnopts);
|
||||
if(w < 1 || h < 1) ERRX("Wrong image size");
|
||||
if(lambda < 1.) ERRX("LAMBDA should be >=1");
|
||||
il_Image *I = il_Image_new(w, h, IMTYPE_U8);
|
||||
|
||||
Reference in New Issue
Block a user