使用OpenCV进行图片读取与写入的教程
26 浏览量
更新于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提供了丰富的功能和算法供进一步探索。"
2647 浏览量
点击了解资源详情
146 浏览量
152 浏览量
109 浏览量
weixin_38590520
- 粉丝: 6
- 资源: 939
最新资源
- 关于sql优化.doc
- 服装行业电子商务平台建设构想.pdf
- JAVA解惑之详细介绍
- sql server 2000
- Java项目开发常见问题分析
- accp5.0s2三层+OOP测试
- css常用参数说明文档
- Websphere Appliction Server Development Best Practices for Performance and Scalability.pdf
- 高质量C++编程指南.pdf
- FastReport_3.0_设计手册PDF
- The_C_Programming_Language_2nd_edition
- Test Automation Frame--主要框架的介绍.doc
- tuxedo编程速成
- JBossWeb用户手册
- PHP5与MySQL5 Web开发技术详解.pdf
- 很好的linux学习笔记