一、Numpy
Numpy是一个用于处理大型多维数组和矩阵的库,提供了大量的数学函数来操作这些数组。基本的函数用法:
- 创建数组:
numpy.array()
- 数组形状:
shape
- 数组元素类型:
dtype
- 数组元素总数:
size
- 改变数组形状:
reshape()
- 数组切片:
[]
- 数组索引:
[]
- 数组元素赋值:
=
- 数组运算:
+, -, *, /, %, **
二、Scipy
Scipy是一个用于科学计算的库,提供了一系列的高级算法和便利的函数。基本的函数用法:
- 优化:
scipy.optimize.minimize()
,scipy.optimize.root()
- 插值:
scipy.interpolate.interp1d()
,scipy.interpolate.griddata()
- 积分:
scipy.integrate.quad()
,scipy.integrate.simps()
- 特殊函数:
scipy.special.exp()
,scipy.special.erf()
- 统计:
scipy.stats.norm()
,scipy.stats.ttest_ind()
三、Pandas
Pandas是一个用于数据处理和分析的库,提供了DataFrame这种高效的二维标签数据结构。基本的函数用法:
- 创建DataFrame:
pandas.DataFrame()
- 读取数据:
pandas.read_csv()
,pandas.read_excel()
- 选择列:
[]
- 选择行:
iloc[]
,loc[]
- 数据过滤:
df[df['column'] > value]
- 数据统计:
df['column'].describe()
,df['column'].mean()
,df['column'].std()
- 数据分组:
df.groupby('column')
- 数据合并:
pd.concat([df1, df2])
,pd.merge(df1, df2)
四、Matplotlib
Matplotlib是一个用于绘制图形的库,可以生成各种静态、动态、交互式的图表。基本的函数用法:
- 创建图形:
plt.figure()
,plt.subplot()
- 绘制线图:
plt.plot()
,plt.scatter()
,plt.bar()
,plt.hist()
- 设置标题和标签:
plt.title()
,plt.xlabel()
,plt.ylabel()
,plt.legend()
- 保存图形:
plt.savefig()
,plt.show()
- 图像处理:可以使用PIL库进行图像的读取、显示和保存,使用OpenCV库进行图像的预处理和特征提取。
五、 图像处理:我们可以使用NumPy的数组来表示图像的像素矩阵,然后使用SciPy中的滤波器对图像进行平滑处理。
import numpy as np
from scipy.ndimage import filters
from PIL import Image
# 读取图像并转换为灰度图
img = Image.open('example.jpg').convert('L')
# 将图像转换为NumPy数组
img_array = np.array(img)
# 使用高斯滤波器对图像进行平滑处理
smoothed_img_array = filters.gaussian_filter(img_array, sigma=3)
# 将处理后的NumPy数组转换回图像
smoothed_img = Image.fromarray(smoothed_img_array)
# 显示原始图像和平滑处理后的图像
img.show()
smoothed_img.show()
六、 图像分割:我们可以使用SciPy中的形态学操作对图像进行分割。
import numpy as np
from scipy.ndimage import morphology
from PIL import Image
# 读取图像并转换为灰度图
img = Image.open('example.jpg').convert('L')
# 将图像转换为NumPy数组
img_array = np.array(img)
# 定义一个结构元素(用于腐蚀操作)
structuring_element = np.ones((5, 5), dtype=np.uint8)
# 使用腐蚀操作对图像进行分割
segmented_img_array = morphology.binary_erosion(img_array > 128, structure=structuring_element)
# 将处理后的NumPy数组转换回图像
segmented_img = Image.fromarray(segmented_img_array * 255)
# 显示原始图像和分割后的图像
img.show()
segmented_img.show()
标签:plt,img,报告,scipy,读书,数组,图像,array
From: https://www.cnblogs.com/python12123/p/17934271.html