我正在尝试使用 Nvidia 性能原语库来调整图像大小,但该nppiResize_8u_C3R
函数抛出了NPP_RESIZE_FACTOR_ERROR
文档中未列出的一个作为该函数的错误返回代码之一。这是我希望的简单代码:
#include <iostream>
#include <nppi.h>
int image_a_pitch;
NppiSize image_a_size = {.width = 960, .height = 540};
NppiRect image_a_roi = {.x = 0, .y = 0, .width = 960, .height = 540};
Npp8u* image_a = nppiMalloc_8u_C3(960, 540, &image_a_pitch);
int image_b_pitch;
NppiSize image_b_size = {.width = 960, .height = 540};
NppiRect image_b_roi = {.x = 0, .y = 0, .width = 960, .height = 540};
Npp8u* image_b = nppiMalloc_8u_C3(960, 540, &image_b_pitch);
NppStatus result = nppiResize_8u_C3R(image_a, image_a_pitch, image_a_size, image_a_roi, image_b, image_b_pitch, image_b_size, image_b_roi, NPPI_INTER_SUPER);
if (result != NPP_SUCCESS) {
std::cerr << "Error executing Resize -- code: " << result << std::endl;
}
您可能会注意到我实际上并没有调整图像的大小,是的,这是真的,但我正在尝试为这个错误创建最简单的情况。从我一直在测试的情况来看,我为图像使用什么尺寸似乎并不重要,我仍然得到相同的返回错误代码,这似乎不是该函数的有效错误代码,而是一个错误折旧的代码nppiResizeSqrPixel_8u_C3R
。
我肯定会感谢一些帮助,指出我在设置导致此错误的库调用时所做的任何错误。