使用OpenCV进行图片读取与写入的教程
101 浏览量
更新于2024-08-31
收藏 303KB PDF 举报
"OpenCV是计算机视觉领域广泛使用的库,用于图像处理和计算机视觉任务。本文将探讨如何使用OpenCV在Python中实现读取和写入图片的操作。
1. **读取图片**
使用`cv2.imread()`函数可以从磁盘读取图片。该函数接受两个参数:`filename`是图片文件的路径,`flags`则控制图片的读取方式。如果`flags`设置为0,图片将以灰度模式读取;设置为1(默认值),则读取为彩色图片。以下是一个简单的示例:
```python
import cv2
img = cv2.imread("img.jpg", 1)
cv2.imshow('img', img)
cv2.waitKey(0)
```
`cv2.imshow()`函数用于显示图片,`winname`是窗口的名字,`mat`是图片数据。`cv2.waitKey(0)`会暂停程序执行,直到用户按下任意键,确保图片能被正确显示。
2. **图片写入**
要将图片写入文件,可以使用`cv2.imwrite()`函数。它需要两个参数:`filename`为保存图片的路径,`img`是待写入的图片数据。例如:
```python
img = cv2.imread("img.jpg", 1)
cv2.imwrite('img1.jpg', img)
```
这将把`img`中的数据保存到名为`img1.jpg`的文件中。
3. **图像质量与压缩**
- **JPEG** 图片格式采用有损压缩,压缩比例越高,图片大小越小,但可能会导致图像质量下降,出现马赛克现象。可以通过设置`cv2.IMWRITE_JPEG_QUALITY`标志来调整JPEG质量。例如,设置质量为50:
```python
img = cv2.imread("img.jpg", 1)
cv2.imwrite('imgTest2.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 50])
```
- **PNG** 图片格式支持无损压缩,可以保留原始图像数据。此外,PNG还支持透明度设置。例如:
```python
img = cv2.imread("img.jpg", 1)
cv2.imwrite('imgTest1.png', img)
```
通过这些基本操作,开发者可以轻松地在OpenCV中处理图片的读取和保存,同时也能够根据需求调整图片的压缩质量和格式。对于更复杂的图像处理任务,如图像分析、特征提取或图像变换,OpenCV提供了丰富的功能和算法供进一步探索。"
284 浏览量
点击了解资源详情
2023-04-10 上传
2023-05-22 上传
2024-08-07 上传
weixin_38590520
- 粉丝: 6
- 资源: 939
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析