iam*_*mai 7 python matplotlib python-imageio
与 matplotlib.imshow() 相比,似乎 matplotlib.imsave() 使图像变亮。例如,看看下面的代码。
import imageio
import matplotlib.pyplot as plt
image = imageio.imread('image.jpg')
plt.imshow(image)
plt.imsave('image_new.jpg',image )
image_new = imageio.imread('image_new.jpg')
plt.imshow(image_new)
Run Code Online (Sandbox Code Playgroud)
保存的图像“image_new.jpg”(右)比“image.jpg”(左)略亮
图片来源:https ://c1.staticflickr.com/9/8191/8424182610_e23dcc6b4d_b.jpg
小智 0
我对你的结果真的很满意。所以我尝试使用 CV2 和 matplotlib:
import imageio
import matplotlib.pyplot as plt
import numpy as np
import cv2; import os
p0 = os.getcwd()
image1 = plt.imread(p0+'\\2.jpg')
image = plt.imread(p0+'\\2.jpg')[:,:,0]
plt.subplot(141);plt.imshow(image1 );plt.title('Original image')
plt.imsave('image_plt.jpg',image )
imageio.imsave('image_imageio.jpg', image)
imagecv2 = image
cv2.imwrite('image_cv2.jpg',imagecv2 )
image_new = plt.imread('image_plt.jpg')[:,:,0]
plt.subplot(2,4,2);plt.title('read after save plt')
plt.imshow(image_new,cmap ='gray')
plt.subplot(2,4,6);plt.title('Diff original image with saved plt')
x=np.abs ( image - image_new)
plt.imshow(x,cmap ='gray')
image_cv2 = plt.imread('image_cv2.jpg')[:,: ]
plt.subplot(2,4,3);plt.title('read after save plt')
plt.imshow(image_new,cmap ='gray')
plt.subplot(2,4,7);plt.title('Diff original image with saved CV2')
x=np.abs ( image - image_cv2)
plt.imshow(x,cmap ='gray')
image_imageio = plt.imread('image_imageio.jpg')
plt.subplot(2,4,4);plt.title('read after save imageio')
plt.imshow(image_new,cmap ='gray')
plt.subplot(2,4,8);plt.title('Diff original image with saved imageio')
x=np.abs ( image - image_imageio)
plt.imshow(x,cmap ='gray')
figManager = plt.get_current_fig_manager()
figManager.window.showMaximized()
plt.savefig('diff.jpg')
Run Code Online (Sandbox Code Playgroud)
结果:
| 归档时间: |
|
| 查看次数: |
19987 次 |
| 最近记录: |