تبدیل تصویر cv::mat به تانسور در TorchLib C++ می تواند با استفاده از کد زیر انجام شود:
#include <torch/torch.h>
#include <opencv2/opencv.hpp>
cv::Mat cv_img;
// load your cv::Mat here
torch::Tensor tensor_img = torch::from_blob(cv_img.data, {1, cv_img.rows, cv_img.cols, 3}, torch::kByte);
tensor_img = tensor_img.permute({0, 3, 1, 2});
tensor_img = tensor_img.to(torch::kFloat);
tensor_img = tensor_img.div(255.0);
کد بالا فرض می کند که cv::Mat در فرمت BGR است که فرمت پیش فرض استفاده شده توسط OpenCV است. اگر تصویر شما در فرمت RGB است، باید قبل از تبدیل به تنسور، یک کانال رنگی را تعویض کنید.
cv::cvtColor(cv_img, cv_img, cv::COLOR_RGB2BGR);