scipy 图像处理(scipy misc scipy ndimage) matplotlib 图像处理

from scipy.misc import
imread / imsave / imshow
imresize / imrotate / imfilter

1. scipy.misc 下的图像处理

from scipy.misc import imread, imresize, imsave
I = imread('./cat.jpg')
I_tinted = I * (1, .95, .9)
I_tinted = imresize(I_tinted, (300, 300))
                # print(I_tinted.shape)
imsave('./figs/cat_tinted.jpg', I_tinted)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • imread():返回的是 numpy.ndarray 也即 numpy 下的多维数组对象;
  • I_tinted = imresize(I_tinted, (300, 300)),经过 imresize 操作得到的 I_tinted 仍然是 3 维的彩色信息(I_tinted.shape ⇒ (300, 300, 3));

若想显示图像,则一般使用 matplotlib 下的 相关函数:

import matplotlib.pyplot as plt
plt.subplot(1, 2, 1)
plt.imshow(I)
plt.subplot(1, 2, 2)
plt.imshow(I_tinted)
plt.axis('off')
plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

2. scipy.ndimage

3. matplotlib 下的图像处理

  • 改变颜色空间:matplotlib.colors.rgb_to_hsv:
    • 注意接收的参数必须在 [0, 1] 区间内;
    • 返回值也是 [0, 1] 区间内;

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://www.cnblogs.com/captainbed

猜你喜欢

转载自www.cnblogs.com/siwnhwxh/p/10192627.html