python中Numpy库的ravel()函数解说及应用

简介: python中Numpy库的ravel()函数解说及应用

python中Numpy库的ravel()函数解说和应用


1.说明


python 中的 ravel() 函数将数组多维度拉成一维数组。


ravel 英文译为散开,解开; flatten 英文译为变平。 两者的区别在于返回拷贝(copy)还是返回视图(view), numpy.ravel() 返回的是视图,会影响原始矩阵;numpy.flatten() 返回的是拷贝,对拷贝所做的修改不会影响原始矩阵。


2.应用


例如归一化图片信息统计

for img_list in [img_list_1440, img_list_576]:
    imgs = np.concatenate(img_list, axis=-1)
    imgs = imgs.astype(np.float32) / 255.
    for i in tqdm(range(3)):
        pixels = imgs[:, :, i, :].ravel()
        means[i] += float(np.mean(pixels))
        stdevs[i] += float(np.std(pixels))
# mean=[0.46157165, 0.46698335, 0.46580717]
# std=[0.28069802, 0.28096266, 0.28323689])

归一化需要的mean和std得到后,即可方便后续使用,例如数据集定义阶段归一化:

# 准备数据集
import paddlex as pdx
from paddlex import transforms as T
train_transforms = T.Compose([
    T.MixupImage(mixup_epoch=-1), 
    T.RandomDistort(),
    T.RandomExpand(im_padding_value=[123.675, 116.28, 103.53]), 
    T.RandomCrop(),
    T.RandomHorizontalFlip(), 
    T.BatchRandomResize(
        target_sizes=[320, 352, 384, 416, 448, 480, 512, 544, 576, 608],
        interp="RANDOM"), 
    T.Normalize(
        mean=[0.46157165, 0.46698335, 0.46580717], std=[0.28069802, 0.28096266, 0.28323689])
])
eval_transforms = T.Compose([
    T.Resize(
        target_size=608, interp="CUBIC"), 
    T.Normalize(
        mean=[0.46157165, 0.46698335, 0.46580717], std=[0.28069802, 0.28096266, 0.28323689])


目录
相关文章
|
2天前
|
XML JSON 数据库
Python的标准库
Python的标准库
110 77
|
8天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
34 18
|
3天前
|
XML JSON 数据库
Python的标准库
Python的标准库
26 11
|
3天前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
30 8
|
9天前
|
Python
Python中的函数
Python中的函数
24 8
|
11天前
|
安全 API 文件存储
Yagmail邮件发送库:如何用Python实现自动化邮件营销?
本文详细介绍了如何使用Yagmail库实现自动化邮件营销。Yagmail是一个简洁强大的Python库,能简化邮件发送流程,支持文本、HTML邮件及附件发送,适用于数字营销场景。文章涵盖了Yagmail的基本使用、高级功能、案例分析及最佳实践,帮助读者轻松上手。
22 4
|
2月前
|
Python
pip批量安装Python库 requirement.txt 离线环境无互联网环境下pip安装Python库
pip批量安装Python库 requirement.txt 离线环境无互联网环境下pip安装Python库
143 3
|
6月前
|
开发工具 git Python
安装和使用`libnum`是一个用于数字理论函数的Python库
【6月更文挑战第19天】`libnum`是Python的数字理论函数库。安装可通过`git clone`,进入目录后运行`python setup.py install`,也可用`pip install libnum`。示例:使用`int_to_hex`将十进制数42转换为十六进制字符串'2a'。注意,信息可能已过时,应查最新文档以确保准确性。如遇问题,参考GitHub仓库或寻求社区帮助。
124 1
|
5月前
|
Python
确保你已经安装了`python-barcode`库。如果没有,可以通过pip来安装:
确保你已经安装了`python-barcode`库。如果没有,可以通过pip来安装:
|
Python
Anaconda虚拟环境安装Python库与Spyder
本文介绍在Anaconda中,为Python的虚拟环境安装第三方库与Spyder等配套软件的方法~
458 1
Anaconda虚拟环境安装Python库与Spyder