Вот код, который я имею в настоящее время (упрощен): < /p>
cv::cuda::GpuMat croppedGpuImage(frame_meta_cv_Gpumat, cv::Rect(x, y, w, h));
// Convert to grayscale on GPU
cv::cuda::GpuMat grayGpu;
cv::cuda::cvtColor(croppedGpuImage, grayGpu, cv::COLOR_BGR2GRAY);
// ORB feature extraction on GPU
static cv::Ptr orb_gpu = cv::cuda::ORB::create(500);
cv::cuda::GpuMat keypoints_gpu, descriptors_gpu;
// Problem line
orb_gpu->detectAndComputeAsync(grayGpu, cv::cuda::GpuMat(), keypoints_gpu, descriptors_gpu);
if (!descriptors_gpu.empty())
{
static cv::Ptr matcher_gpu = cv::cuda::DescriptorMatcher::createBFMatcher(cv::NORM_HAMMING);
for (const auto& tpl : template_descriptors)
{
const cv::Mat& des_template_cpu = tpl.second.second;
if (des_template_cpu.empty()) continue;
cv::cuda::GpuMat des_template_gpu;
des_template_gpu.upload(des_template_cpu); // trying to upload CPU descriptor to GPU
std::vector knn_matches;
matcher_gpu->knnMatch(des_template_gpu, descriptors_gpu, knn_matches, 2);
// Filter good matches (Lowe’s ratio)
std::vector good_matches;
for (const auto& m : knn_matches)
{
if (m.size() >= 2 && m[0].distance < 0.75f * m[1].distance)
good_matches.push_back(m[0]);
}
if (good_matches.size() > 10)
{
ret = 1;
}
}
}
< /code>
Я получаю ошибку времени компиляции, например: < /p>
terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(4.9.0-dev) /tmp/opencv/modules/core/src/cuda_gpu_mat.cpp:152: error: (-215:Assertion failed) 0
Подробнее здесь: https://stackoverflow.com/questions/796 ... -detecting
Ошибка OpenCV CUDA: (-215: Утверждение не удалось) Размеры ROI Недопустители при обнаружении и вычислении клавиш и дескр ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
PyQtGraph ROI RemoveHandle не удаляет круговой дескриптор для эллиптической ROI
Anonymous » » в форуме Python - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Ошибка «Утверждение не удалось» при обнаружении маркеров Aruco с помощью OpenCV в JAVA
Anonymous » » в форуме JAVA - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-