用python读取图像
我正在尝试阅读python中的用python读取图像,python,image,scipy,Python,Image,Scipy,我正在尝试阅读python中的png图像。scipy中的imread功能正在运行,他们建议使用imageio库 但是,我宁愿将外部库的使用限制在scipy、numpy和matplotlib库。因此,使用imageio或scikit image对我来说不是一个好选择 python或scipy、numpy或matplotlib中是否有任何方法可以读取图像,这些方法没有被弃用?可以使用matplotlib(如matplotlib中所示) 如果你想的话,画一张图 imgplot = plt.imshow
png
图像。scipy
中的imread
功能正在运行,他们建议使用imageio
库
但是,我宁愿将外部库的使用限制在scipy
、numpy
和matplotlib
库。因此,使用imageio
或scikit image
对我来说不是一个好选择
python或
scipy
、numpy
或matplotlib
中是否有任何方法可以读取图像,这些方法没有被弃用?可以使用matplotlib(如matplotlib中所示)
如果你想的话,画一张图
imgplot = plt.imshow(img)
如果您只想使用指定的
仅限库,我将使用matplotlib
在matplotlib中:
import matplotlib.image
read_img = matplotlib.image.imread('your_image.png')
为了得到更好的答案,您可以使用以下代码行。 以下是可能对您有所帮助的示例:
image = cv2.imread('/home/pictures/1.jpg')
plt.imshow(image)
plt.show()
在imread()
中,您可以传递目录。因此,您还可以使用str()
和+
组合动态目录和固定目录,如下所示:
path = '/home/pictures/'
for i in range(2) :
image = cv2.imread(str(path)+'1.jpg')
plt.imshow(image)
plt.show()
from PIL import Image
image = Image.open("image_path.jpg")
image.show()
两者都是相同的。您也可以这样使用:
path = '/home/pictures/'
for i in range(2) :
image = cv2.imread(str(path)+'1.jpg')
plt.imshow(image)
plt.show()
from PIL import Image
image = Image.open("image_path.jpg")
image.show()
jupyter中的警告消息建议使用“matplotlib.pyplot.imread”。来自:
Matplotlib只能本机读取PNG。通过枕头上的可选依赖项支持更多图像格式
因此,对于
PNG
的情况,我们可以使用plt.imread()
。在其他情况下,直接使用枕头可能更好。您可以尝试这样使用cv2
导入cv2
image=cv2.imread('图像页')
cv2.imshow(“图像”,图像)
cv2.等待键(0)
cv2.destroyAllWindows()
我阅读了所有答案,但我认为最好的方法之一是使用库
import cv2
img = cv2.imread('your_image.png',0)
要显示图像,请使用以下代码:
from matplotlib import pyplot as plt
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis
plt.show()
简易方法
从IPython.display导入图像
Image(filename=“Covid.jpg”size)如果我想创建一个for循环,以1×1打开文件夹中的所有图像,我将如何使用上述方法?Thanks@OscarDolloway我希望能对你有所帮助。但它是有效的,因为:“如果没有给出,格式是从文件名推导出来的。如果无法推导,则尝试使用PNG。”()