OpenCV4.4Pre
cudnn10.1
GTX1050

OpenCVコンパイル時にWITH_CUDAをチェック。
いろいろおまじないがあったけど、記録するのを忘れてた…Orz
contribを有効にするとか、imgprocを有効にするとか…

画像回転
cv::cuda::GpuMat baseGMat(*baseMat);
cv::cuda::GpuMat newGMat;
cv::Point2f center = cv::Point2f((float)baseRoiGMat.cols / 2.0f, (float)baseRoiGMat.rows / 2.0f);
cv::Mat affineMat;
cv::getRotationMatrix2D(center, 3.33, 1.0).copyTo(affineMat);
cv::cuda::warpAffine(baseRoiGMat, newRoiGMat, affineMat, baseRoiGMat.size());
newRoiGMat.download(*newMat);

MatとGpuMatの選別が面倒…
Only INTER_NEAREST , INTER_LINEAR , and INTER_CUBIC interpolation methods are supported.
と記載されているがINTER_NEARESTは動かなかった。
初期値であるINTER_LINEARで計測。

上記100回で(1600*1200*24、download/upload含まず)
i7-7700HQ:400msec
GTX1050:70msec

i7-8750H:243msec
GTX1060:35msec

i7-8700:220msec
RTX2070:18msec

2020/08/08追記
ちょこちょこバグがある。
フィルターがやたら遅いとか、copytoでmaskを使ったときにゴミが入るとか(BYTE境界がある?)…
あとドキュメントがほぼ英語…orz