如何显示窗口大小不同的输出图像?通过使用 cv::Mat

How can I Display output image with difference size of window? by using cv::Mat

本文关键字:图像 Mat cv 输出 何显示 显示 窗口大小      更新时间:2023-10-16

根据 如何显示窗口大小不同的输出图像?

我想使用 OpenCV 功能在窗口上显示图像。但是,每当我尝试显示图像时,都会适合显示的大小。

如果我想显示窗口大小不同的图像(例如,窗口大小为 1280x960 像素,并且图像在偏移坐标 100x100 像素处为 600x600 像素),我该如何制作它们?

但是,根据之前的问题,我想使用 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,则必须阅读文档!