18 #ifndef PIC_GL_ALGORITHMS_PUSHPULL_HPP 19 #define PIC_GL_ALGORITHMS_PUSHPULL_HPP 21 #include "../../gl/image.hpp" 22 #include "../../gl/image_vec.hpp" 24 #include "../../util/array.hpp" 26 #include "../../gl/filtering/filter_down_pp.hpp" 27 #include "../../gl/filtering/filter_up_pp.hpp" 47 for(
unsigned int i = 1; i <
stack.size(); i++) {
77 void update(
float *value,
float threshold = 1e-6f)
112 stack.push_back(imgOut);
118 stack.push_back(tmp);
133 int n = int(
stack.size() - 2);
135 for(
int i = n; i >= 0; i--) {
153 float *tmp_value =
new float[img->
channels];
156 pp.
update(tmp_value, 1e-4f);
157 imgOut = pp.
Process(img, imgOut);
int channels
Definition: filter_radial_basis_function.hpp:80
FilterGLUpPP * flt_up
Definition: pushpull.hpp:39
~PushPullGL()
Definition: pushpull.hpp:67
PIC_INLINE ImageGLVec SingleGL(ImageGL *img)
SingleGL creates a single for filters input.
Definition: image_vec.hpp:39
ImageGL * cloneGL()
cloneGL
static ImageGL * execute(ImageGL *img, ImageGL *imgOut, float value)
Execute.
Definition: pushpull.hpp:149
The ImageGL class.
Definition: image.hpp:42
void update(float *value, float threshold)
update
Definition: filter_down_pp.hpp:111
virtual ImageGL * Process(ImageGLVec imgIn, ImageGL *imgOut)
Process.
Definition: display.hpp:258
FilterGLDownPP * flt_down
Definition: pushpull.hpp:38
void update(float *value, float threshold=1e-6f)
update
Definition: pushpull.hpp:77
ImageGLVec stack
Definition: pushpull.hpp:41
ImageGL * Process(ImageGL *imgIn, ImageGL *imgOut)
Process computes push-pull.
Definition: pushpull.hpp:98
int width
Definition: filter_radial_basis_function.hpp:80
#define MIN(a, b)
Definition: math.hpp:69
void release()
release
Definition: pushpull.hpp:46
PIC_INLINE ImageGLVec DoubleGL(ImageGL *img1, ImageGL *img2)
DoubleGL creates a couple for filters input.
Definition: image_vec.hpp:52
Definition: bilateral_separation.hpp:25
The FilterGLUpPP class.
Definition: filter_up_pp.hpp:31
void update(float *value, float threshold)
update
Definition: filter_up_pp.hpp:91
static T * assign(T *data, int size, T *ret)
assign
Definition: array.hpp:464
The FilterGLDownPP class.
Definition: filter_down_pp.hpp:30
PushPullGL()
PushPullGL.
Definition: pushpull.hpp:61
The PushPullGL class.
Definition: pushpull.hpp:34
std::vector< ImageGL * > ImageGLVec
ImageGLVec an std::vector of pic::ImageGL.
Definition: image_vec.hpp:32
int height
Definition: filter_radial_basis_function.hpp:80