opencv c++ 实现水中倒影
时间: 2023-11-13 19:06:25 浏览: 240
要实现水中倒影,首先需要将原始图像上下翻转,然后将翻转后的图像与原始图像拼接在一起,形成一个完整的倒影图像。这个过程可以使用OpenCV的函数cv::flip()来实现上下翻转,使用cv::vconcat()函数将两个图像拼接在一起。下面是一个简单的示例代码:
```
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat src = imread("input.jpg");
if (src.empty())
{
printf("Could not open or find the image\n");
return -1;
}
Mat flipImg;
flip(src, flipImg, 0); // 上下翻转
Mat reflection;
vconcat(src, flipImg, reflection); // 拼接
imshow("Reflection", reflection);
waitKey();
return 0;
}
```
上面的代码加载名为“input.jpg”的原始图像,然后使用cv::flip()函数翻转图像,最后使用cv::vconcat()函数将原始图像和翻转后的图像拼接在一起,并显示结果图像。
阅读全文