50 *x2 /=
pow(2., num_levels_);
51 *y2 /=
pow(2., num_levels_);
56 std::vector<FloatImage> pyramid1(num_levels_);
57 std::vector<FloatImage> pyramid2(num_levels_);
61 for (
int i = num_levels_ - 1; i >= 0; --i) {
63 double xx = x1 /
pow(2., i);
64 double yy = y1 /
pow(2., i);
76 LG <<
"Tracking on level " << i;
78 tracker_->Track(pyramid1[i], pyramid2[i], xx, yy, &x2_new, &y2_new);
85 LG <<
"Finest level of pyramid tracking failed; failing.";
89 LG <<
"Failed to track at level " << i <<
"; restoring guess.";
input_tx image(0, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "preview_img") .compute_source("compositor_compute_preview.glsl") .do_static_compilation(true)