给图像加logo(不同大小图像叠加)

#include "stdafx.h"
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
using namespace cv;

int main()
{
	system("color 02");

	//读取原图
	Mat src = imread("D:\\1.jpg");
	//读取logo图
	Mat logo = imread("D:\\logo.jpg");
	//调整logo大小
	resize(logo, logo, Size(120, 60));
	//定义logo的位置大小
	Rect logo_shape(src.cols - 120, src.rows - 60, 120, 60);
	//区域的左上角点的坐标为(src.cols - 120,src.rows - 60),即将logo放到图像右下角
	//区域宽为120,高为60
	//将logo的位置加载到原图并把该roi定义为logo_rio
	Mat logo_roi = src(logo_shape);
	//将logo拷贝至定义区域
	logo.copyTo(logo_roi);

	namedWindow("dst", WINDOW_NORMAL);
	imshow("dst", src);
	waitKey(0);

    return 0;
}

1.jpg

logo.jpg

结果:

猜你喜欢

转载自blog.csdn.net/Lemon_jay/article/details/89313882