У меня есть Animesr.onnx для моего приложения ios/macos со сверхвысоким разрешением, поэтому мне нужно преобразовать коды Python в коды C++. Это мои коды на Python:
Это результат
и это результат cv::ddn::blobFromImage()
Оба результата — отстой, в отличие от моего результата на Python.
Я думаю, проблема в предварительной обработке изображения в качестве входных данных перед запуском модели и обработке выходных данных в виде cv image, я плохо разбираюсь в операциях с матрицами, таких как преобразование, транспонирование, изменение формы и т. д.
Можете ли вы помочь мне предоставить правильные коды обработки изображений с помощью opencv C++?
У меня есть Animesr.onnx для моего приложения ios/macos со сверхвысоким разрешением, поэтому мне нужно преобразовать коды Python в коды C++. Это мои коды на Python: [code]session = onnxruntime.InferenceSession('animesr.onnx')
cv::Mat outputImage(height, width, CV_32FC(channels), const_cast(outputData)); cv::Mat uint8Image; outputImage.convertTo(uint8Image, CV_8UC3, 255); cv::Mat bgrOutput; cv::cvtColor(uint8Image, bgrOutput, cv::COLOR_RGB2BGR); cv::imwrite(outputPath, bgrOutput); [/code] Это результат [img]https://i.sstatic.net/FjzJe.jpg[/img] и это результат cv::ddn::blobFromImage() [img]https://i.sstatic.net/vUxgE.jpg[/img]
Оба результата — отстой, в отличие от моего результата на Python. Я думаю, проблема в предварительной обработке изображения в качестве входных данных перед запуском модели и обработке выходных данных в виде cv image, я плохо разбираюсь в операциях с матрицами, таких как преобразование, транспонирование, изменение формы и т. д. Можете ли вы помочь мне предоставить правильные коды обработки изображений с помощью opencv C++?