OpenCV图像处理:基本读取与叠加
需积分: 10 149 浏览量
更新于2024-09-11
收藏 1KB TXT 举报
本篇代码主要介绍了如何在OpenCV 2.1环境下处理和操作图片,包括图片的读取、叠加以及显示。OpenCV是一个广泛应用于计算机视觉和机器学习的开源库,它提供了丰富的图像处理和计算机视觉功能。
首先,我们来看第一个示例。在`main`函数中,程序通过`imread`函数从指定路径"D:\\9.jpg"读取一张图片到`Mat`对象`img`中。`imread`函数用于从磁盘或内存中加载图像数据,如果加载失败(如文件不存在或者格式不支持),返回空指针,因此这里检查`img.data`是否为NULL来判断图片是否成功加载。接着,使用`namedWindow`函数创建一个窗口,名为"Ƭ",并设置窗口大小自动适应图像内容,`imshow`函数则将图片显示在该窗口中。最后,调用`waitKey`函数等待用户按键,然后退出程序。
第二个示例中,代码加载了两张图片:一张水果图片("D:\\Fruits.jpg")和一张logo图片("D:\\logo.png")。首先,分别将这两张图片读入`Mat`对象`image`和`logo`。然后,通过`Rect`结构体定义了一个ROI(Region of Interest,感兴趣区域),在这里是logo在原图中的位置(左上角坐标10,10,宽度和高度分别为logo的列数和行数)。接下来,使用`addWeighted`函数对ROI部分进行操作,这个函数可以计算两个矩阵(这里是ROI和logo)的加权和,权重分别为1.0和0.3,表示logo会以较轻的透明度叠加到ROI上。结果被赋值回`imageROI`。最后,创建一个名为"result"的新窗口,显示处理后的图片,再次调用`imshow`和`waitKey`完成显示和等待用户交互。
总结来说,这段代码展示了OpenCV的基本操作,包括图片的读取、ROI的选取和图片的叠加(这里使用了加权叠加来实现透明度效果)。通过这些基本操作,开发者可以进一步探索OpenCV的更多高级功能,如图像滤波、特征检测、物体识别等,以便在实际项目中应用。
2021-09-29 上传
379 浏览量
2013-01-31 上传
2024-01-26 上传
2024-02-17 上传
2023-09-05 上传
2023-05-31 上传
2023-12-15 上传
2023-05-25 上传
陈浩1111
- 粉丝: 0
- 资源: 2
最新资源
- WPF渲染层字符绘制原理探究及源代码解析
- 海康精简版监控软件:iVMS4200Lite版发布
- 自动化脚本在lspci-TV的应用介绍
- Chrome 81版本稳定版及匹配的chromedriver下载
- 深入解析Python推荐引擎与自然语言处理
- MATLAB数学建模算法程序包及案例数据
- Springboot人力资源管理系统:设计与功能
- STM32F4系列微控制器开发全面参考指南
- Python实现人脸识别的机器学习流程
- 基于STM32F103C8T6的HLW8032电量采集与解析方案
- Node.js高效MySQL驱动程序:mysqljs/mysql特性和配置
- 基于Python和大数据技术的电影推荐系统设计与实现
- 为ripro主题添加Live2D看板娘的后端资源教程
- 2022版PowerToys Everything插件升级,稳定运行无报错
- Map简易斗地主游戏实现方法介绍
- SJTU ICS Lab6 实验报告解析