OpenCV C++ 图像叠加 (给图片加logo)

Posted 挚望

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenCV C++ 图像叠加 (给图片加logo)相关的知识,希望对你有一定的参考价值。

原图

                        

 

 代码展示

#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main() {
    Mat image = cv::imread("C:\\\\Users\\\\admin\\\\Desktop\\\\football.png");
    Mat logo = cv::imread("C:\\\\Users\\\\admin\\\\Desktop\\\\opencv_logo.png");
    Mat gray = cv::imread("C:\\\\Users\\\\admin\\\\Desktop\\\\opencv_logo.png", 0);
    Mat imageROI,mask;
    imageROI = image(Rect(0, 0, logo.cols, logo.rows));
    threshold(gray, mask, 10, 255, THRESH_BINARY);
    imshow("img2graybin", mask);
    logo.copyTo(imageROI, mask);
    imshow("result", image);
    waitKey();
    return 0;
}

 

效果展示

                二值化之后的图片

                ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​

 

以上是关于OpenCV C++ 图像叠加 (给图片加logo)的主要内容,如果未能解决你的问题,请参考以下文章

opencv copyto给图片加logo

opencv 模板匹配

opencv ORB特征匹配

第一节课 opencv图像处理,对图片进行叠加处理

黄聪:利用ImageMagicK给图片加水印

opencv AKAZE 局部特征匹配算法