我正在使用Visp计算机视觉库,现在遇到了问题。我想调整图像大小,然后在窗口中显示它。我使用函数调整大小,但是图像出现问题。这是我的代码:
vpImageIo::read(I,"test.jpg");
vpDisplayGDI d(I);
vpDisplay::setTitle(I, "My image");
I.resize(10,10);
vpDisplay::display(I);
vpDisplay::flush(I);
也许有人过去有同样的问题并解决。
最佳答案
代码:
I.resize(10,10);
只会更改图像的尺寸。
要调整图像大小,必须使用
vpImageTools::resize()
。请注意,该功能无法就地运行(源图像和目标图像必须不同)。您想要的应该是这样的:
vpImage<vpRGBa> I_src, I;
vpImageIo::read(I_src, "test.jpg");
vpImageTools::resize(I_src, I, I_src.getWidth()/2, I_src.getHeight()/2);
vpDisplayGDI d(I);
vpDisplay::setTitle(I, "My image");
vpDisplay::display(I);
vpDisplay::flush(I);
vpDisplay::getClick(I);