Opencv 如何使用Mat';创建GPUMat实体的数据指针?
如何使用Mat的指针创建GPUMat实体 下面我的实现是错误的Opencv 如何使用Mat';创建GPUMat实体的数据指针?,opencv,Opencv,如何使用Mat的指针创建GPUMat实体 下面我的实现是错误的 #include<opencv2/opencv.hpp> #include "opencv2/gpu/gpu.hpp" //using namespace cv; int main() { //Mat img = imread(); cv::Mat mSource = cv::imread("C:\\New Folder\\1.jpg"); cv::gpu::GpuMat gpuInput(mS
#include<opencv2/opencv.hpp>
#include "opencv2/gpu/gpu.hpp"
//using namespace cv;
int main()
{
//Mat img = imread();
cv::Mat mSource = cv::imread("C:\\New Folder\\1.jpg");
cv::gpu::GpuMat gpuInput(mSource.rows, mSource.cols, CV_32FC1, mSource.data, cv::Mat::AUTO_STEP);
cv::gpu::GpuMat mGTarget;
cv::gpu::resize(gpuInput, mGTarget, cv::Size(0, 0), 0.5, 0.5);
cv::Mat mTarget;
mGTarget.download(mTarget);
cv::imwrite("C:\\New Folder\\5.jpg", mTarget);
}
#包括
#包括“opencv2/gpu/gpu.hpp”
//使用名称空间cv;
int main()
{
//Mat img=imread();
cv::Mat mSource=cv::imread(“C:\\New Folder\\1.jpg”);
cv::gpu::GpuMat gpuInput(mSource.rows、mSource.cols、cv_32FC1、mSource.data、cv::Mat::AUTO_STEP);
cv::gpu::GpuMat mGTarget;
cv::gpu::resize(gpuInput,mGTarget,cv::Size(0,0),0.5,0.5);
cv::Mat mTarget;
mGTarget.download(mTarget);
cv::imwrite(“C:\\New Folder\\5.jpg”,mTarget);
}
使用GpuMat::upload
和GpuMat::download
功能。upload
函数将cv::Mat
作为参数,并将主机数据上载到设备
GpuMat gpuInput;
gpuInput.upload(mSource);
使用
GpuMat::upload
和GpuMat::download
功能。upload
函数将cv::Mat
作为参数,并将主机数据上载到设备
GpuMat gpuInput;
gpuInput.upload(mSource);
@md612你到底为什么要这样做?我有一个类似的应用程序也有同样的问题--@md612解码的帧很可能是单通道YUV帧,你提供的是
CV_8UC3
图像类型。您必须确定解码帧的类型。@md612为什么要这样做?我有一个类似的应用程序,它也有同样的问题。@md612解码帧很可能是单通道YUV帧,您提供的是CV_8UC3
图像类型。您必须确定解码帧的类型。为什么不使用TAPI?为什么不使用TAPI?