之前简单学习了python后着迷于anaconda里各种完善丰富的包和jupyter notebook这种友好的ide。正好有一份数字图像处理的小练习,若从零开始用matlab实在折腾,决定用python做。
po上解决过程中一些小小问题和解决方案。
1.绘制图像直方图code
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
img=np.array(Image.open('d:/pic/lena.jpg').convert('L')) //要注意python本来打开图像是RGB格式,需要转换
plt.figure("lena")
arr=img.flatten()
n, bins, patches = plt.hist(arr, bins=256, normed=1, alpha=0.75) //三个返回值都有对应作用!
plt.show()
返回值 :
n: 直方图向量,是否归一化由参数 normed 设定
bins: 返回各个bin的区间范围