yolov8-opencv-onnxruntime-cpp icon indicating copy to clipboard operation
yolov8-opencv-onnxruntime-cpp copied to clipboard

yolov8_seg_onnx.cpp内存错误

Open V-lambow opened this issue 9 months ago • 1 comments

onnx推理时, bool Yolov8SegOnnx::OnnxBatchDetect(std::vectorcv::Mat& srcImgs, std::vector<std::vector<OutputParams>>& output) { std::vectorcv::Vec4d params; std::vectorcv::Mat input_images; cv::Size input_size(_netWidth, _netHeight); //preprocessing PreProcessing(srcImgs, input_images, params); cv::Mat blob = cv::dnn::blobFromImages(input_images, 1 / 255.0, input_size, cv::Scalar(0, 0, 0), true, false);

int64_t input_tensor_length = VectorProduct(_inputTensorShape);
std::vector<Ort::Value> input_tensors;
std::vector<Ort::Value> output_tensors;
input_tensors.push_back(Ort::Value::CreateTensor<float>(_OrtMemoryInfo, (float*)blob.data, input_tensor_length, _inputTensorShape.data(), _inputTensorShape.size()));

output_tensors = _OrtSession->Run(Ort::RunOptions{ nullptr },
	_inputNodeNames.data(),
	input_tensors.data(),
	_inputNodeNames.size(),
	_outputNodeNames.data(),
	_outputNodeNames.size()
);

最后一条语句发生了内存错误: Exception thrown at 0x00007FF9C8CA58F0 (nvcuda64.dll) in main.exe: 0xC0000005: Access violation reading location 0x000001B2913EC000. 如何修复

V-lambow avatar Feb 07 '25 08:02 V-lambow