使用Opencv创建幻灯片

时间:2018-03-09 17:26:42

标签: python opencv

如何在图像之间平滑过渡的文件夹中创建图像的幻灯片放映

 using cv2.addWeighted ?

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>

int main() {

    auto img1 = cv::imread("img1.jpg");
    auto img2 = cv::imread("img2.jpg");

    // Make sure the images are the same size
    img1 = img1(cv::Rect(0, 0, 700, 700));
    img2 = img2(cv::Rect(0, 0, 700, 700));

    cv::namedWindow("Slideshow");

    for (double alpha = 0; alpha < 1; alpha += 0.05) {
        cv::Mat out;
        cv::addWeighted(img1, alpha, img2, 1-alpha, 0, out, -1);
        imshow("Slideshow", out);
        cv::waitKey(100);
    }

    cv::waitKey();

    return 0;
}

请注意,这只是关于如何使用cv::addWeighted的示例。它不应该像这样在实践中使用。

您可以通过在for循环和alpha参数中使用cv::waitKey的增量来调整转换速度。