Compare commits
No commits in common. "b8e5bbf3ccf95364f004e63c3e147914159dc32c" and "71205d4ab08bbedb0e922f7e5687a6d50ffea607" have entirely different histories.
b8e5bbf3cc
...
71205d4ab0
@ -196,10 +196,6 @@ switch (idFx) {
|
||||
/* hipass filter */
|
||||
retval = insitu_filtre3x3(image, 1);
|
||||
break;
|
||||
case 20:
|
||||
retval = octotree_classif(image, 0);
|
||||
break;
|
||||
|
||||
|
||||
/* here are the glitches */
|
||||
case 24: /* experiment ! */
|
||||
@ -241,6 +237,8 @@ typedef struct {
|
||||
int flags;
|
||||
} Crapulor;
|
||||
|
||||
|
||||
|
||||
/* -------------------------------------------------------------- */
|
||||
char * crap_name_from_number(int num)
|
||||
{
|
||||
@ -254,14 +252,10 @@ switch (num) {
|
||||
case 9: return "classif0";
|
||||
case 10: return "binariz";
|
||||
case 11: return "trinariz";
|
||||
case 12: return "smoo2x2";
|
||||
case 13: return "fltr3x3";
|
||||
case 14: return "desatur";
|
||||
case 15: return "killines";
|
||||
|
||||
case 18: return "updown";
|
||||
|
||||
case 20: return "octoclass";
|
||||
}
|
||||
|
||||
return "???";
|
||||
|
@ -15,7 +15,7 @@ extern int verbosity;
|
||||
*/
|
||||
int get_float_metric_a(FloatImg *pimg, float *where)
|
||||
{
|
||||
float means[4]; /* four values : R G B A */
|
||||
float means[4];
|
||||
int foo;
|
||||
|
||||
#if DEBUG_LEVEL
|
||||
|
@ -1,4 +0,0 @@
|
||||
|
||||
|
||||
pipeliner le graber et le fondeur par la SHM ?
|
||||
|
@ -18,37 +18,6 @@
|
||||
*/
|
||||
extern int verbosity;
|
||||
|
||||
/* -------------------------------------------------------------- */
|
||||
/* nouveau du 27 decembre 2020, un soir de grand froid... */
|
||||
|
||||
int octotree_classif(FloatImg *pimg, int notused)
|
||||
{
|
||||
int foo;
|
||||
float mm[6], means[4];
|
||||
|
||||
fprintf(stderr, ">>> %s ( %p %d )\n", __func__, pimg, notused);
|
||||
|
||||
foo = fimg_meanvalues(pimg, means);
|
||||
if (foo) {
|
||||
fprintf(stderr, "oups %d in meanvalues\n", foo);
|
||||
return foo;
|
||||
}
|
||||
fprintf(stderr, "means: %11f %11f %11f\n", means[0], means[1], means[2]);
|
||||
|
||||
foo = fimg_get_minmax_rgb(pimg, mm);
|
||||
if (foo) {
|
||||
fprintf(stderr, "oups %d in get minmax\n", foo);
|
||||
return foo;
|
||||
}
|
||||
fimg_print_minmax(mm, __func__);
|
||||
|
||||
/*
|
||||
* compute the height center points */
|
||||
|
||||
|
||||
|
||||
return -1;
|
||||
}
|
||||
/* -------------------------------------------------------------- */
|
||||
/* nouveau du 19 decembre 2020, pour le grand ecran de da Scritch */
|
||||
|
||||
|
@ -4,7 +4,6 @@
|
||||
|
||||
|
||||
int bouger_les_pixels(FloatImg *pimg, int kaboo);
|
||||
int octotree_classif(FloatImg *pimg, int notused);
|
||||
|
||||
int mirror_split(FloatImg *pimg, int kaboo);
|
||||
int upside_down(FloatImg *pimg);
|
||||
|
@ -3,7 +3,7 @@
|
||||
* ugly code from tTh
|
||||
*/
|
||||
|
||||
#define FIMG_VERSION 116
|
||||
#define FIMG_VERSION 115
|
||||
|
||||
/*
|
||||
* in memory descriptor
|
||||
|
@ -24,9 +24,7 @@ if (foo) {
|
||||
return foo;
|
||||
}
|
||||
|
||||
if (verbosity) {
|
||||
fprintf(stderr, "%-20s %dx%d\n", path, numbers[0], numbers[1]);
|
||||
}
|
||||
if (verbosity) fprintf(stderr, "%-20s %d x %d\n",path, numbers[0], numbers[1]);
|
||||
|
||||
if (FIMG_TYPE_RGB != numbers[2]) {
|
||||
fprintf(stderr, "file %s, %d : bad type\n", path, numbers[2]);
|
||||
@ -53,7 +51,6 @@ int main(int argc, char *argv[])
|
||||
{
|
||||
int foo, idx;
|
||||
int opt;
|
||||
int compte = 0;
|
||||
|
||||
int to_gray = 0;
|
||||
char *output_file = "out.fimg";
|
||||
@ -100,7 +97,6 @@ for (idx=optind; idx<argc; idx++) {
|
||||
}
|
||||
fimg_add_2(&temp, &accu);
|
||||
}
|
||||
compte++;
|
||||
}
|
||||
|
||||
if (to_gray) {
|
||||
@ -123,7 +119,6 @@ if (verbosity) {
|
||||
fprintf(stderr, "err %d on fimg_get_minmax_rgb\n", foo);
|
||||
return foo;
|
||||
}
|
||||
printf("Count %d\n", compte);
|
||||
printf("Rmin %12.4g Rmax %12.4g delta %12g\n",
|
||||
vals[0], vals[1], vals[1]-vals[0]);
|
||||
printf("Gmin %12.4g Gmax %12.4g %12g\n",
|
||||
|
@ -35,8 +35,6 @@
|
||||
#define SAVE_AS_CUMUL 1
|
||||
#define SAVE_AS_FIMG 0
|
||||
|
||||
#define NBR_BUFFERS 4
|
||||
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
#define CLEAR(x) memset(&(x), 0, sizeof(x))
|
||||
@ -191,10 +189,10 @@ if ((fmt.fmt.pix.width != width) || (fmt.fmt.pix.height != height)) {
|
||||
fmt.fmt.pix.width, fmt.fmt.pix.height);
|
||||
}
|
||||
|
||||
// fprintf(stderr,"--- Ok 1\n");
|
||||
fprintf(stderr,"--- Ok 1\n");
|
||||
|
||||
CLEAR(req);
|
||||
req.count = NBR_BUFFERS;
|
||||
req.count = 2;
|
||||
req.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
|
||||
req.memory = V4L2_MEMORY_MMAP;
|
||||
xioctl(fd, VIDIOC_REQBUFS, &req);
|
||||
@ -222,7 +220,7 @@ for (n_buffers = 0; n_buffers < req.count; ++n_buffers) {
|
||||
|
||||
(void)fimg_timer_set(0);
|
||||
|
||||
for (i = 0; i < NBR_BUFFERS; ++i) {
|
||||
for (i = 0; i < n_buffers; ++i) {
|
||||
CLEAR(buf);
|
||||
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
|
||||
buf.memory = V4L2_MEMORY_MMAP;
|
||||
@ -241,6 +239,7 @@ else {
|
||||
fmt.fmt.pix.width, fmt.fmt.pix.height,
|
||||
FIMG_TYPE_RGB);
|
||||
}
|
||||
|
||||
fimg_clear(&cumul);
|
||||
cumul.fval = 255.0; /* must be read from camera XXX */
|
||||
cumul.count = 0;
|
||||
@ -281,14 +280,13 @@ for (i = 0; i < nbre_capt; i++) {
|
||||
fimg_timer_get(0));
|
||||
fflush(stderr);
|
||||
}
|
||||
|
||||
CLEAR(buf);
|
||||
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
|
||||
buf.memory = V4L2_MEMORY_MMAP;
|
||||
xioctl(fd, VIDIOC_DQBUF, &buf);
|
||||
if(verbosity > 2) {
|
||||
fprintf(stderr, "xioctl VIDIOC_DQBUF done\n");
|
||||
fflush(stderr);
|
||||
}
|
||||
|
||||
fprintf(stderr, "xioctl VIDIOC_DQBUF done\n"); fflush(stderr);
|
||||
|
||||
#if SAVE_AS_CUMUL
|
||||
if (upscaling) {
|
||||
@ -405,7 +403,7 @@ fimg_destroy(&cumul);
|
||||
|
||||
type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
|
||||
xioctl(fd, VIDIOC_STREAMOFF, &type);
|
||||
for (i = 0; i < NBR_BUFFERS; ++i) {
|
||||
for (i = 0; i < n_buffers; ++i) {
|
||||
v4l2_munmap(buffers[i].start, buffers[i].length);
|
||||
}
|
||||
|
||||
|
@ -15,7 +15,7 @@ de capture des images, précisément dans cet appel système :
|
||||
buf.memory = V4L2_MEMORY_MMAP;
|
||||
xioctl(fd, VIDIOC_DQBUF, &buf);
|
||||
|
||||
Quand le programme semble figé, un strace -p <pid> sort le même
|
||||
Quand le programme semble figé, un strace -p <pi> sort le même
|
||||
message en rafale _très_ féroce :
|
||||
|
||||
ioctl(3, VIDIOC_DQBUF, {type=V4L2_BUF_TYPE_VIDEO_CAPTURE}) = -1 EAGAIN (Resource temporarily unavailable)
|
||||
|
Loading…
Reference in New Issue
Block a user