我想使用 OpenCV 函数在窗口上显示图像。但是,任何时候我尝试显示图像都会适合显示的大小。
如果我想显示具有不同窗口大小的图像(例如,窗口大小 1280x960px,并且图像在偏移坐标 100x100px 处为 600x600px)我该如何制作它们?
但是,根据前面的问题,我想使用 cv::Mat (C++ API) 如何创建它们?
谢谢您的帮助。
我想使用 OpenCV 函数在窗口上显示图像。但是,任何时候我尝试显示图像都会适合显示的大小。
如果我想显示具有不同窗口大小的图像(例如,窗口大小 1280x960px,并且图像在偏移坐标 100x100px 处为 600x600px)我该如何制作它们?
但是,根据前面的问题,我想使用 cv::Mat (C++ API) 如何创建它们?
谢谢您的帮助。
cv::Mat smallImage = cv::imread("myimage.jpg");
cv::Mat bigWindow = cv::Mat::zeros(960,1280, smallImage.type());
cv::Rect r(0,0,smallImage.cols, smallImage.rows);
cv::Mat roi = bigWindow(r);
smallImage.copyTo(roi);
cv::namedWindow("Display"); // cv::namedWindow("Display", 0); if you want to be able to resize window
cv::imshow("Display", bigWindow);
cv::waitKey(0);
您在上一个问题中得到了答案。现在,如果您想进一步了解 OpenCV,您必须阅读文档!