本系列博客主要分享 Python 在机器视觉/计算机视觉下的编程应用
cv2 包是著名的视觉库OpenCV的Python实现

在对图片进行一定的操作后,我们需要将图像保存在对应的位置,cv2提供了 imwrite() 函数来将图像 写入 到计算机中:

import cv2    #导入opencv
import matplotlib.pyplot as plt    #导入绘图包
img = cv2.imread('./img.jpeg')    #读入图像
img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)    #将图像从opencv的brg通道转为matplotlib的rgb模式
plt.title('Img windows')
plt.imshow(img_rgb)    #绘图函数imshow()
plt.xticks([])    #关闭 x,y轴的坐标
plt.yticks([])
plt.show()    #显示图像
#-------------------------保存图像--------------------------#
cv2.imwrite('./new_img.jpg',img)    #利用cv2.imwrite()保存图像
plt.imsave('./new_img_rgb.png',img_rgb)   #对于校正通道后的图像,需要利用plt.imsave()保存

这里需要注意一下几点:
1.imwrite()函数保存成功后会返回True,它支持jpeg,png,tiff等格式。其第一个参数为希望保存的路径及文件名,第二个参数为保存图像的变量,彩色图像时,其需要BGR的通道顺序。
2.如果希望保存进行通道变换后的图像RGB顺序,那么可以利用matplotlib的pyplot工具中imsave()函数来实现,其主要支持png, pdf, ps, eps and svg等格式。
运行后读入的图像将被保存在当前目录下:
在这里插入图片描述

注意:如果通道保存错了的话(matplotlib为RGB,opencv为BGR),会出现下面红蓝相反的蓝瘦效果:
在这里插入图片描述

传送门:
Python与机器视觉(一)安装与环境
Python与机器视觉(二)读入图片并显示

OpenCV-Python是一个开源的计算机视觉库,它提供了一系列用于图像处理、计算机视觉和机器学习的函数和工具。它是Python编程语言的一个扩展,可以方便地在Python环境中使用。 OpenCV-Python具有丰富的功能,可以处理图像和视频,包括读取、显示、保存、调整大小、裁剪、旋转、翻转、滤波、边缘检测、特征提取、目标检测等。它还提供了一些高级功能,如人脸识别、人脸检测、目标跟踪、图像分割等。 OpenCV-Python使用简单,具有良好的文档和示例代码。它提供了丰富的函数和类,可以方便地完成各种计算机视觉任务。它还提供了一些图形界面工具,如图像查看器、视频播放器等,方便用户进行交互式操作。 OpenCV-Python支持多种图像格式,包括常见的JPEG、PNG、BMP等,还支持一些特殊的图像格式,如RAW、DICOM等。它还支持多种视频格式,包括常见的AVI、MP4、MOV等,还支持一些特殊的视频格式,如H264、H265等。 OpenCV-Python还支持多种平台,包括Windows、Linux、macOS等。它可以与其他Python库和工具进行集成,如NumP
plt.savefig(“filename.png”)   其实产生这个现象的原因很简单:在 plt.show() 后调用了 plt.savefig() ,在 plt.show() 后实际上已经创建了一个新的空白的图片(坐标轴), 这时候你再 plt.savefig() 就会保... img_bgr = cv.imread('./img.jpg',1) #BGR格式 img_gray = cv.imread('./img_gray',0) #灰度图 cv.imread(fname,0) cv.imread(fname,1) fname( 即filename),表示文件名或者文件路径
Matplotlib绘图可视化简单介绍Matplotlib.pyplot模块——快速绘图1、调用figure()创建一个绘图对象 Matplotlib旨在用Python实现MATLAB的功能,是python最出色的绘图库,功能很完善,同时也继承了python的简单明了的风格。 安装Matplotlib之前先要安装Numpy。Matplotlib是开源工具,可以从link免费下载。该链接中包含了非常详尽的使用说明和教程。 Matplotlib.pyplot模块——快速绘图 Matplotlib的py
1.灰度图像保存 用matplotlib.pyplot保存图片时遇到了将灰度图像保存成彩色图像的问题,原因在于这个库的保存函数会默认保存为彩色图像,如果要保存为灰度必须cmap="gray" plt.imsave('ct0.jpg',img) 也就是这么写 plt.imsave('ct0.jpg',gary,cmap='gray') 当然,也可以用cv2,我推测这个库就是灰度图像自动保存为灰度图像,彩色图像自动保存为彩色图像 cv2.imwrite(spicpath,img)
python进行图像处理中分别用到过matplotlib.pyplot、PIL、cv2种库,这种库图像读取和保存方法各异,并且图像读取时顺序也有差异,如plt.imread和PIL.Image.open读入的都是RGB顺序,而cv2.imread读入的是BGR顺序。使用时需要倍加注意。 1. cv2,matplotlib,PIL比较 读取图像 1.cv2.imread opencv读进...
import pandas as pd unrate = pd.read_csv('unrate.csv') # pd.to_datetime() 转换成日期格式,即由 1948/1/1 转换为 1948-01-01 unrate['DATE'] = pd.to_datetime(unrate['DATE']) print(unrate.head(12))
问题当使用如下代码保存使用plt.savefig 保存生成的图片时,结果打开生成的图片确实一片空白。import matplotlib.pyplot as plt""" 一些画图代码 """plt.show() plt.savefig("filename.png")原因其实产生这个现象的原因很简单:在plt.show() 后调用了plt.savefig() ,在plt.show() 后实际上已经创建
Python有很多库可以进行图像文件的读写,比如图像处理包pillow,科学绘图库matplotlib等。 Pylibtiff用于tiff文件的读写,matplotlib本身不支持tiff图像。 下面简单给出使用的示例:# _*_ coding: utf-8 _*import numpy as np from matplotlib import pyplot as plt from PIL im
对于Python机器视觉图像处理,你可以使用一些常见的库和工具,例如OpenCV和PIL(Python Imaging Library)。 OpenCV是一个广泛使用的开源计算机视觉库,它提供了许多图像处理和计算机视觉算法的实现。你可以使用OpenCV来读取、处理和保存图像,如调整大小、裁剪、旋转、滤波等。 首先,你需要安装OpenCV库。你可以使用pip在命令行中运行以下命令进行安装: pip install opencv-python 安装完成后,你可以导入OpenCV并开始处理图像。以下是一个示例代码,展示了如何使用OpenCV加载图像并显示它: ```python import cv2 # 通过指定文件路径加载图像 image = cv2.imread('path/to/image.jpg') # 在窗口中显示图像 cv2.imshow('Image', image) # 等待按下任意键后关闭窗口 cv2.waitKey(0) cv2.destroyAllWindows() 除了OpenCV,你还可以使用PIL库来进行图像处理。PIL提供了更高级的图像处理功能,例如调整对比度、亮度、色彩平衡等。 你可以使用以下命令来安装PIL库: pip install pillow 安装完成后,你可以导入PIL并使用它来打开、处理和保存图像。以下是一个示例代码,展示了如何使用PIL加载图像并进行一些处理: ```python from PIL import Image # 打开图像 image = Image.open('path/to/image.jpg') # 调整图像大小 resized_image = image.resize((500, 500)) # 保存处理后的图像 resized_image.save('path/to/resized_image.jpg') 这只是图像处理的入门示例,OpenCV和PIL都提供了大量的功能和方法,可以帮助你完成更复杂的图像处理任务。你可以在官方文档中找到更多关于它们的详细信息和示例代码。 希望这能帮助你入门Python机器视觉图像处理!如果你有其他问题,请随时向我提问。