首页 > 解决方案 > C ++ opencv如何扩展Mat dims

问题描述

我的tensorflow模型希望图像具有形状:[1, 1080, 1920, 3]我正在尝试重塑从视频中捕获的帧。

使用 python 和 numpy 似乎很容易做到这一点:np.expand_dims(frame, axis=0) 但我不知道如何在 c++ 上使用Matfrom opencv

有任何想法吗?

标签: c++opencvtensorflow

解决方案


是的,有一个简单的函数叫做 resize :)

C++: void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, >int interpolation=INTER_LINEAR);

你的问题基本上在这里得到了回答Resize an image type "Mat" opencv C++,但是 IIRC(与他在那里所说的相反), dst 可以预先创建或只是一个参考,它会自动创建它。

有关如何使用它的更详细说明,请参阅此处“调整大小”功能下的文档。


推荐阅读