簡體   English   中英

為什么cv :: gpu :: GaussianBlur比cv :: GaussianBlur慢?

[英]Why cv::gpu::GaussianBlur is slower, than cv::GaussianBlur?

我不是C ++,OpenCV和CUDA的專業人士,並且不明白為什么

cv::gpu::warpPerspective(g_mask, g_frame, warp_matrix, g_frame.size(), 
    cv::INTER_LINEAR, cv::BORDER_CONSTANT, cv::Scalar(255,255,255));
cv::gpu::GaussianBlur(g_frame, g_frame, cv::Size(blur_radius, blur_radius), 0);
g_frame.download(mask);

慢於

cv::gpu::warpPerspective(g_mask, g_frame, warp_matrix, g_frame.size(), 
    cv::INTER_LINEAR, cv::BORDER_CONSTANT, cv::Scalar(255,255,255));
g_frame.download(mask);
cv::GaussianBlur(mask, mask, cv::Size(blur_radius, blur_radius), 0);

告訴我,為什么會這樣? 還是我寫錯了代碼?

GPU的IPC開銷通常是罪魁禍首。 您應該考慮使用cv :: Stream接口以最小化該開銷。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM