18 #ifndef PIC_GL_TONE_MAPPING_HYBRID_TMO_HPP 19 #define PIC_GL_TONE_MAPPING_HYBRID_TMO_HPP 130 ms = float(
double(timeVal) / 1000000.0);
132 printf(
"GPU time segmentation: %f ms\n", ms);
148 int value = int(check_value);
152 ms = float(
double(timeVal) / 1000000.0);
155 printf(
"GPU time Checking Different Zones: %f ms\n", ms);
209 ms = float(
double(timeVal) / 1000000.0);
211 printf(
"GPU time Tone Mapping+Blending: %f ms\n", ms);
214 printf(
"Total time: %f\n", tot_ms);
int channels
Definition: filter_radial_basis_function.hpp:80
DragoTMOGL * flt_drago
Definition: hybrid_tmo.hpp:48
ImageGL * execute(ImageGL *imgIn, ImageGL *imgOut=NULL)
execute
Definition: drago_tmo.hpp:98
The HybridTMOGL class.
Definition: hybrid_tmo.hpp:36
ImageGL * execute(ImageGL *imgIn, ImageGL *imgOut=NULL)
execute
Definition: reinhard_tmo.hpp:161
ImageGL * imgReinhard
Definition: hybrid_tmo.hpp:43
void update(ImageGL *img)
update
The PyramidGL class.
Definition: pyramid.hpp:35
bool isValid()
isValid checks if the current image is valid, which means if they have an allocated buffer or not...
Definition: filter_radial_basis_function.hpp:1148
GLuint glBeginTimeQuery()
glBeginTimeQuery
Definition: timings.hpp:29
The FilterGLRemapping class.
Definition: filter_remapping.hpp:30
bool bFirst
Definition: hybrid_tmo.hpp:46
PIC_INLINE ImageGLVec SingleGL(ImageGL *img)
SingleGL creates a single for filters input.
Definition: image_vec.hpp:39
The DragoTMOGL class.
Definition: drago_tmo.hpp:33
float Ld_Max
Definition: hybrid_tmo.hpp:45
GLuint64 glEndTimeQuery(GLuint64 ret)
glEndTimeQuery
Definition: timings.hpp:46
ImageGL * imgDrago
Definition: hybrid_tmo.hpp:43
ImageGL * Process(ImageGL *imgIn, ImageGL *imgOut)
Process.
Definition: hybrid_tmo.hpp:99
The ImageGL class.
Definition: image.hpp:42
bool Write(std::string nameFile, LDR_type typeWrite, int writerCounter)
Write saves an Image into a file on the disk.
Definition: filter_radial_basis_function.hpp:1924
PyramidGL * pyrA
Definition: hybrid_tmo.hpp:44
virtual ImageGL * Process(ImageGLVec imgIn, ImageGL *imgOut)
Process.
Definition: display.hpp:258
The ReinhardTMOGL class.
Definition: reinhard_tmo.hpp:35
The ReduxGL class.
Definition: redux.hpp:32
void blend(PyramidGL *pyr, PyramidGL *weight)
blend
HybridTMOGL()
HybridTMOGL.
Definition: hybrid_tmo.hpp:67
The SegmentationGL class.
Definition: segmentation_tmo_approx.hpp:32
~HybridTMOGL()
Definition: hybrid_tmo.hpp:88
void update(float alpha, float phi, bool bGlobal=true)
update
Definition: reinhard_tmo.hpp:147
ImageGL * seg_map
Definition: hybrid_tmo.hpp:42
int width
Definition: filter_radial_basis_function.hpp:80
PyramidGL * pyrWeight
Definition: hybrid_tmo.hpp:44
PyramidGL * pyrB
Definition: hybrid_tmo.hpp:44
float b
Definition: hybrid_tmo.hpp:45
SegmentationGL seg
Definition: hybrid_tmo.hpp:39
bool bAllocate
Definition: hybrid_tmo.hpp:46
ReinhardTMOGL * flt_reinhard
Definition: hybrid_tmo.hpp:49
void loadToMemory()
loadToMemory
void allocateFilters()
allocateFilters
Definition: hybrid_tmo.hpp:54
Definition: bilateral_separation.hpp:25
static ReduxGL * createCheck()
createCheck
Definition: redux.hpp:183
ReduxGL * check
Definition: hybrid_tmo.hpp:41
ImageGL * execute(ImageGL *imgIn, ImageGL *imgOut)
execute
Definition: segmentation_tmo_approx.hpp:110
float * getVal(float *ret, ReduxGL *flt)
getVal
Definition: image.hpp:399
FilterGLRemapping remap
Definition: hybrid_tmo.hpp:40
ImageGL * reconstruct(ImageGL *imgOut)
reconstruct
int height
Definition: filter_radial_basis_function.hpp:80
ImageGL * remapped
Definition: hybrid_tmo.hpp:43