我想使用线性插值将图像从width=500更改为width=100。我怎么能这么做呢?
svdrlsy41#
您可以使用cv::resize来调整图像大小。interpolation参数可以设置为cv::INTER_LINEAR以进行线性插值。代码示例:
cv::resize
interpolation
cv::INTER_LINEAR
cv::Mat bigImg(cv::Size(500, 500), CV_8UC1); // Initialize bigImg in some way ... cv::Mat smallImg; cv::resize(bigImg, smallImg, cv::Size(100, 100), 0, 0, cv::INTER_LINEAR);
有关cv::resize和插值选项,请参阅文档。您还可以在此处查看各种情况下推荐的插值方法:Which kind of interpolation best for resizing image?。
1条答案
按热度按时间svdrlsy41#
您可以使用
cv::resize
来调整图像大小。interpolation
参数可以设置为cv::INTER_LINEAR
以进行线性插值。代码示例:
有关
cv::resize
和插值选项,请参阅文档。您还可以在此处查看各种情况下推荐的插值方法:Which kind of interpolation best for resizing image?。