Did you test your code on different opencv version or different machine.
Opencv mat performance.
But there can be exceptions especially when numpy works with views instead of copies.
23 1s on my computer intel i7 8gb ram with opencv 2 4 1 the time elapsed is the computation loop is approx.
According to khronos group opencl open computing language is.
This feature was leveraged to make the camera image data accessible to opencv.
With opencv 4 1 1 the time elapsed is the computation loop is approx.
The class mat represents an n dimensional dense numerical single channel or multi channel array.
Without opencv removing the two cv mat lines the opencv library is not linked.
N dimensional dense array class.
I didn t find such bug in opencv 3 2 when i run your code.
The 4 values rows cols type and data are all that is required to represent an image buffer of any format as an opencv mat.
So for same operation opencv functions are preferred.
The image data from any camera can be.
The mat is just a simple container for actual image data.
Normally opencv functions are faster than numpy functions.
I even find that opencv can get better performance on data you gave us.
In this case the time elapsed is the computation loop is approx.
It can be used to store real or complex valued vectors and matrices grayscale or color images voxel volumes vector fields point clouds tensors histograms though very high dimensional histograms may be better stored in a sparsemat.
The umat class tells opencv functions to process images with an opencl specific code which uses an opencl enabled gpu if exists in the system automatically switching to cpu otherwise.
There are several other magic commands to measure performance profiling line profiling memory measurement and.
Although some developers never heard about umat class and its advantages.
We ran this test program.