I am using OpenCV.jl for image processing and I want to increase the contrast of an image using adaptive histogram equalization. I can create the CLAHE object with OpenCV.createCLAHE
, but that is an “C++ smart pointer of type OpenCV.cv_PtrAllocated{OpenCV.CLAHE}
”, but I have no idea about how to use it.
I have found in this discussion that ImageContrastAdjustment.jl also allows to do it, but I would like to know if OpenCV - which I am already using - might be sufficient, without having to add more dependencies to the project.
To give a bit of more context: OpenCV’s CLAHE class has the method apply
- and Python’s binding also uses it, according to the documentation.
Now, according to the tutorial for the Julia OpenCV binding “because Julia does not support OOP paradigm some changes had to be made. To access functions like obj.function(ARGS)
you should instead use function(obj, ARGS)
” Thus, I would expect a method OpenCV.apply
for the output of OpenCV.createCLAHE
, but the name OpenCV.apply
does not even exist.
1 Like
I ran into the same issue. My guess is the function needs to be added here: opencv_contrib/modules/julia/gen/jl_cxx_files/cv_manual_wrap.jl at 4.x · opencv/opencv_contrib · GitHub
Don’t have time at the moment, but I’d like to come back to implementing this if we end up fully adopting Julia into the project I am currently working on.