gpt4 book ai didi

opencv - OpenCV resize()导致新图像中的剪切

转载 作者:行者123 更新时间:2023-12-02 17:47:37 26 4
gpt4 key购买 nike

我正在使用resize命令在opencv中将720 x 480图像的大小调整为1920 x 1080:http://docs.opencv.org/modules/imgproc/doc/geometric_transformations.html#resize

cv::Mat imgA = [self matForPixelBuffer:[self bufferA]]; 
cv::Mat imgB = [self matForPixelBuffer:[self bufferB]];
cv::Mat resizeB(imgA.rows, imgA.cols, CV_8UC4);
cv::resize(imgB, resizeB, resizeB.size(), 0, 0, cv::INTER_LINEAR);

imgA和imgB分别为1920x1080和720x480,并带有CV_8UC4缓冲区,该缓冲区为无符号字符,步长为4字节GRBA。

当我调整imgB的大小时,将剪切生成的图像resizeB。谁会对此产生什么原因有任何建议?

这是剪切后的图像: http://pasteboard.co/1XzmTl1l.png

这是原始的: http://pasteboard.co/1XZkSKss.png

最佳答案

好的,我在例程中发现了一个错误:

cv::Mat img((int)[pixelBuffer width], (int)[pixelBuffer height], CV_MAKETYPE(CV_8U,(int)[pixelBuffer numberOfBytes]), [pixelBuffer data]);

构造Mat时,我颠倒了行和列。解决此问题后,便可以正确缩放Mat
cv::Mat img((int)[pixelBuffer height], (int)[pixelBuffer width], CV_MAKETYPE(CV_8U,(int)[pixelBuffer numberOfBytes]), [pixelBuffer data]);

关于opencv - OpenCV resize()导致新图像中的剪切,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31416523/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com