我正在尝试使用 OpenCV 调整 cv::Mat img
的大小。当我使用函数 cv::resize()
时,我将 src
和 dst
img 设置为与输入 img 相同,如 cv::resize(img, img)
。当我测试程序时,到目前为止它工作正常。但是我对调整大小函数的实现方式有点困惑,因为当我阅读文档时它说我们需要在调整大小之前预先分配 dst
img。
谁能给我解释一下? 谢谢。
最佳答案
正如@Micka 所指出的,您不需要预先分配dst
。但是,如果您愿意,您可以使用不同的调用约定。
来自 OpenCV documentation :
函数
resize
将图像src
的大小调整为指定的大小。请注意,不考虑初始dst
类型或大小。相反,大小和类型源自src
、dsize
、fx
和fy
。如果你想调整src
的大小以适应预先创建的dst
,你可以按如下方式调用该函数:// explicitly specify dsize=dst.size(); fx and fy will be computed from that. resize(src, dst, dst.size(), 0, 0, interpolation);
关于c++ - 为 opencv resize 函数设置 src 和 dst img 相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26052052/