Kiedy skompilować ten przykład:błąd z gpumat i maty
#include <iostream>
#include "opencv2/opencv.hpp"
#include "opencv2/gpu/gpu.hpp"
int main (int argc, char* argv[])
{
try
{
cv::Mat src_host = cv::imread("file.png", CV_LOAD_IMAGE_GRAYSCALE);
cv::gpu::GpuMat dst, src;
src.upload(src_host);
cv::gpu::threshold(src, dst, 128.0, 255.0, CV_THRESH_BINARY);
cv::Mat result_host = dst;
cv::imshow("Result", result_host);
cv::waitKey();
}
catch(const cv::Exception& ex)
{
std::cout << "Error: " << ex.what() << std::endl;
}
return 0;
}
mam następujący błąd:
threshold.cpp: In function ‘int main(int, char**)’:
threshold.cpp:19: error: conversion from ‘cv::gpu::GpuMat’ to non-scalar type ‘cv::Mat’ requested
Czy ktoś wie dlaczego?
dzięki za twoją odpowiedź. Teraz podczas wykonywania tego pliku następujący błąd: /// OpenCV Błąd: Kod Nieznany błąd -216 (Biblioteka jest skompilowany bez obsługi CUDA) w formie kopii, plik /home/cbib/Descargas/OpenCV-2.4. 3/modules/core/src/gpumat.cpp, linia 736 ///// wiesz co może być spowodowane? –
@CitoBebster ... Dzieje się tak, ponieważ używasz plików binarnych OpenCV skompilowanych bez obsługi CUDA. Sprawdź [tę odpowiedź] (http://stackoverflow.com/questions/13228762/opencv-2-4-3rc-and-cuda-4-2-opencv-error-no-gpu-support/13231205#13231205), w którym ta sama kwestia została rozwiązana. – sgarizvi