1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-30 15:53:03 +04:00

Merge pull request #20107 from sivanov-work:gapi_transpose_op

G-API: Add transpose operation

* Add kernels decl & def

* Add draft for UT

* Fix UT for Transpose

* Add perf test

* Fix docs

* Apply comments
This commit is contained in:
Sergey Ivanov
2021-05-25 20:36:01 +03:00
committed by GitHub
parent 5f637e5a02
commit 2b06208bbd
13 changed files with 140 additions and 0 deletions
+6
View File
@@ -417,6 +417,12 @@ std::tuple<GOpaque<double>,GArray<int>,GArray<Point3f>> kmeans(const GArray<Poin
return core::GKMeans3D::on(data, K, bestLabels, criteria, attempts, flags);
}
GMat transpose(const GMat& src)
{
return core::GTranspose::on(src);
}
GOpaque<Size> streaming::size(const GMat& src)
{
return streaming::GSize::on(src);
@@ -634,6 +634,15 @@ GAPI_OCV_KERNEL(GCPUKMeans3D, cv::gapi::core::GKMeans3D)
}
};
GAPI_OCV_KERNEL(GCPUTranspose, cv::gapi::core::GTranspose)
{
static void run(const cv::Mat& in, cv::Mat& out)
{
cv::transpose(in, out);
}
};
GAPI_OCV_KERNEL(GCPUParseSSDBL, cv::gapi::nn::parsers::GParseSSDBL)
{
static void run(const cv::Mat& in_ssd_result,
@@ -774,6 +783,7 @@ cv::gapi::GKernelPackage cv::gapi::core::cpu::kernels()
, GCPUKMeansNDNoInit
, GCPUKMeans2D
, GCPUKMeans3D
, GCPUTranspose
, GCPUParseSSDBL
, GOCVParseSSD
, GCPUParseYolo
@@ -522,6 +522,15 @@ GAPI_OCL_KERNEL(GOCLConvertTo, cv::gapi::core::GConvertTo)
}
};
GAPI_OCL_KERNEL(GOCLTranspose, cv::gapi::core::GTranspose)
{
static void run(const cv::UMat& in, cv::UMat& out)
{
cv::transpose(in, out);
}
};
cv::gapi::GKernelPackage cv::gapi::core::ocl::kernels()
{
static auto pkg = cv::gapi::kernels
@@ -586,6 +595,7 @@ cv::gapi::GKernelPackage cv::gapi::core::ocl::kernels()
, GOCLConcatVert
, GOCLLUT
, GOCLConvertTo
, GOCLTranspose
>();
return pkg;
}