#创建变量
std::vector<torch::jit::IValue> inputs;
inputs.push_back(torch::ones({ 1,3,224,224 }));
torch::jit::IValue inputs;
#定义模型变量
torch::jit::script::Module model = torch::jit::load("path");
at::Tensor output = model.forward(inputs).toTensor();
#获取尺寸
ouput.sizes()
int heigh = output.size(0);
int weight = output.size(1);
torch::Tensor out_tensor = output.detach(); # requires_grad为false,
out_tensor = out_tensor.squeeze().detach().permute({ 1, 2, 0 });
out_tensor = out_tensor.mul(255).clamp(0, 255).to(torch::kU8);
out_tensor = out_tensor.to(torch::kCPU);
cv::Mat resultImg(img_h, img_w, CV_8UC3, out_tensor.data_ptr());
#
cv::Mat tensor2Mat(torch::Tensor &i_tensor)
{
int height = i_tensor.size(0), width = i_tensor.size(1);
i_tensor = i_tensor.to(torch::kCPU);
cv::Mat o_Mat(cv::Size(width, height), CV_32F, i_tensor.data_ptr());
return o_Mat;
}