Код Python, который я хочу конвертировать:
Код: Выделить всё
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
img_float = np.float32(img_gray)
img_log = cv2.log(img_float)
print(img_log[100,100]) //Prints 5.325 floating value
cv2.imwrite("log_py.jpg", img_log) // shows log transformed image
Код: Выделить всё
cv::Mat src_host = cv::imread("crack2.jpg");
cv::Mat dst;
cv::cuda::GpuMat dst, src, log, gray_gpu;
src.upload(src_host);
cv::cuda::cvtColor(src, gray_gpu, cv::COLOR_BGR2GRAY);
gray_gpu.convertTo(gray_gpu, CV_32FC1);
cv::cuda::log(gray_gpu, log);
log.download(dst);
std::cout
Подробнее здесь: [url]https://stackoverflow.com/questions/46106383/opencvcuda-gpumat-cv-8uc1-to-cv-32fc1-conversion-black-image[/url]