imwrite 图片清晰度
时间: 2024-05-18 08:13:38 浏览: 82
imwrite 函数是用于将图片写入文件的 OpenCV 函数。图片的清晰度取决于原始图片的质量和保存时的参数设置。
首先,确保原始图片的分辨率和清晰度较高。如果原始图片已经模糊或不清晰,那么无论保存时的设置如何,输出的图片也会有相同的问题。
其次,在使用 imwrite 函数保存图片时,可以通过调整参数来控制保存的质量。常用的参数为:
- JPEG 图片格式:可以通过设置 `imwrite` 函数的第三个参数来控制 JPEG 压缩的质量等级。参数名为 `params`,可以使用 `cv2.IMWRITE_JPEG_QUALITY` 关键字来指定质量等级,值范围为 0-100,默认为 95。较高的质量等级会保留更多细节,但文件大小也会更大。
```python
cv2.imwrite('output.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 90])
```
- PNG 图片格式:PNG 格式是一种无损压缩格式,不会降低图片质量。可以通过设置 `imwrite` 函数的第三个参数来控制 PNG 压缩的级别。参数名为 `params`,可以使用 `cv2.IMWRITE_PNG_COMPRESSION` 关键字来指定压缩级别,值范围为 0-9,默认为 3。较低的压缩级别会保留更多细节,但文件大小也会更大。
```python
cv2.imwrite('output.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 9])
```
这些参数的具体数值可以根据需要进行调整,以达到较好的输出质量和文件大小的平衡。
阅读全文