Hello,
I am trying to use the “cv2.cuda.minMaxLoc()” function but I am getting an error.
My code;
import cv2
import numpy as np
cpu_mat = np.random.random((512, 512)).astype(np.float32)
print("Example data of CPU: ", cpu_mat[0, 0])
gpu_mat = cv2.cuda_GpuMat()
gpu_mat.upload(cpu_mat)
min_val,max_val,min_loc,max_loc= cv2.cuda.minMaxLoc(gpu_mat)
print(f"Min Değer: {min_val}, Konum: {min_loc}")
print(f"Max Değer: {max_val}, Konum: {max_loc}")
downloaded_mat = gpu_mat.download()
and error code;
Example data of CPU: 0.93017995
Traceback (most recent call last):
File "/home/nanodev/Desktop/cuda2.py", line 14, in <module>
min_val,max_val,min_loc,max_loc= cv2.cuda.minMaxLoc(gpu_mat)
cv2.error: OpenCV(4.5.4) :-1: error: (-5:Bad argument) in function 'minMaxLoc'
> Overload resolution failed:
> - minMaxLoc() missing required argument 'minVal' (pos 2)
> - minMaxLoc() missing required argument 'minVal' (pos 2)
> - minMaxLoc() missing required argument 'minVal' (pos 2)
I am using Jetson orin nano devoloper kit and my system information is as follows.
I don’t have any problems when I don’t use cuda. I only have problems with cuda. I’ve added my code that works without cuda below;
import cv2
import numpy as np
cpu_mat = np.random.random((512, 512)).astype(np.float32)
print("Example data of CPU: ", cpu_mat[0, 0])
min_val,max_val,min_loc,max_loc= cv2.minMaxLoc(cpu_mat)
print(f"Min Değer: {min_val}, Konum: {min_loc}")
print(f"Max Değer: {max_val}, Konum: {max_loc}")
Can you support me with my problem?