c++视觉ROI 区域和ROI 区域图像叠加

ROI 区域提取和ROI 区域图像叠加

ROI 区域提取

cpp 复制代码
#include <opencv2/opencv.hpp>

int main() {
	// 读取图像
	cv::Mat image = cv::imread("1.jpg");

	// 检查图像是否成功加载
	if (image.empty()) {
		std::cerr << "Error: Could not read the image." << std::endl;
		return -1;
	}

	// 定义感兴趣区域的矩形
	cv::Rect roiRect(100, 50, 200, 150);

	// 提取感兴趣区域(ROI)
	cv::Mat roi = image(roiRect);

	// 在感兴趣区域上进行操作,例如将其转为灰度
	cv::cvtColor(roi, roi, cv::COLOR_BGR2GRAY);

	// 显示原始图像和修改后的图像
	cv::imshow("Original Image", image);
	cv::imshow("ROI (Gray)", roi);

	// 等待按键
	cv::waitKey(0);

	return 0;
}

ROI 区域图像叠加

cpp 复制代码
#include <opencv2/opencv.hpp>

int main() {
	// 读取主图像
	cv::Mat image = cv::imread("1.jpg");

	// 读取logo图像
	cv::Mat logo = cv::imread("2.jpg");

	// 检查图像是否成功加载
	if (image.empty() || logo.empty()) {
		std::cerr << "Error: Could not read the image(s)." << std::endl;
		return -1;
	}

	// 定义感兴趣区域的矩形
	cv::Rect roiRect(100, 250, logo.cols, logo.rows);

	// 提取感兴趣区域(ROI)
	cv::Mat imageROI = image(roiRect);

	// 将logo复制到感兴趣区域
	logo.copyTo(imageROI);

	// 显示原始图像和修改后的图像
	cv::imshow("Original Image", image);

	// 使用imshow展示了修改后的图像,所以注释掉了之前的代码行
	// cv::imshow("ROI with Logo", imageROI);

	// 等待按键
	cv::waitKey(0);

	return 0;
}
相关推荐
paterWang1 小时前
基于 Python 和 OpenCV 的酒店客房入侵检测系统设计与实现
开发语言·python·opencv
东方佑1 小时前
使用Python和OpenCV实现图像像素压缩与解压
开发语言·python·opencv
mit6.8242 小时前
[实现Rpc] 通信类抽象层 | function | using | 解耦合设计思想
c++·网络协议·rpc
laimaxgg2 小时前
Qt常用控件之单选按钮QRadioButton
开发语言·c++·qt·ui·qt5
ox00805 小时前
C++ 设计模式-命令模式
c++·设计模式·命令模式
Blasit5 小时前
C++ Qt建立一个HTTP服务器
服务器·开发语言·c++·qt·http
..过云雨5 小时前
04.类和对象(下)(初始化列表、static静态成员、友元friend[类外函数使用类私有成员]、内部类、匿名对象等)
开发语言·c++
刃神太酷啦6 小时前
树(数据结构·)
数据结构·c++·蓝桥杯c++组
清水加冰6 小时前
【算法精练】背包问题(01背包问题)
c++·算法
C#Thread6 小时前
机器视觉--索贝尔滤波
人工智能·深度学习·计算机视觉