Python的Numpy库的函数astype()在将大范围数据类型转换为小范围数据类型时并不是做饱和(saturate)操作。
关于什么是饱和操作,可以参看博文:https://blog.csdn.net/wenhao_ir/article/details/125247806

关于题目中的问题,举例说明如下:

import numpy as npA = np.array([[1, 2, 3],[4, 5, 260.3]])B = A.astype('uint8')

运行结果如下:


如果做的是饱和操作,那么B的最后一个元素值该为255才对,而不应该为4。

如果想做饱和操作,该怎么办呢?
可以用成员函数where()变通实现饱和操作。
函数where()的原型如下:

where(condition[, x, y])

根据条件 condition 从 x 和 y 中选择元素,当 condition 为 True 时,选 x,否则选 y。

下面的语句实现0~255范围的饱和操作。

import numpy as npA1 = np.array([[-5, 2, 3],[4, 5, 260.3]])A2 = np.where(A1 > 255, 255, A1)
A3 = np.where(A2 < 0, 0, A2)

运行结果如下:

Python的Numpy库的函数astype()在将大范围数据类型转换为小范围数据类型时并不是做饱和(saturate)操作(附实现饱和操作的方法)相关推荐

  1. Python中numpy库unique函数解析

    a = np.unique(A) .unique()函数去除其中重复的元素,并按元素由大到小返回一个新的无元素重复的元组或者列表 import numpy as np A = [1, 2, 2, 5, ...

  2. Python:numpy库中的一些函数简介、使用方法之详细攻略

    Python:numpy库中的一些函数简介.使用方法之详细攻略 目录 numpy库中的一些函数简介.使用方法 1.np.concatenate() 1.1.函数案例 1.2.函数用法 numpy库中的 ...

  3. python 的numpy库中的mean()函数用法介绍

    这篇文章主要介绍了python 的numpy库中的mean()函数用法介绍,具有很好对参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 mean() 函数定义: 2 mean()函数功能: 求取均 ...

  4. Python的Numpy库的ndarray对象常用构造方法及初始化方法

    Python的Numpy库的ndarray对象常用构造方法及初始化方法 本文收集Python的Numpy库的ndarray对象常用的构造方法及初始化方法,会不断更新. 目录 1 直接赋值初始化一个nd ...

  5. python的 numpy库学习总结和介绍(超详细)模块

    目录 前言 numpy是什么? 一.创建数据容器 1.np.array(),通过传递一个列表,元祖来创建 2.np.zeros(),np.ones(),np.empty(),np.full(),传递对 ...

  6. [转载] Python里面numpy库中zeros()的一些问题

    参考链接: Python中的numpy.zeros Python里面numpy库中zeros函数的一些问题 定义 本文记录了在使用numpy库中的zeros函数时遇到的一些问题 定义 用法:zeros ...

  7. python中numpy.random.gamma()函数

    python中numpy.random.gamma()函数 根据官网,地址如下: https://www.w3cschool.cn/doc_numpy_1_11/numpy_1_11-generate ...

  8. Python使用numpy中trim_zeros函数去除首尾0值的语法

    Python使用numpy中trim_zeros函数去除首尾0值的语法 目录 Python使用numpy中trim_zeros函数去除首尾0值的语法 #numpy中trim_zeros

  9. 【Python】Numpy扩充数组函数之repeat和tile用法

    2019独角兽企业重金招聘Python工程师标准>>> [Python]Numpy扩充数组函数之repeat和tile用法,有需要的朋友可以参考下. 用repeat和tile扩充数组 ...

最新文章

  1. html文件显示不了box,Workbox.js registerNavigationRoute找不到/加载html文件
  2. 青少年编程竞赛交流群周报(第042周)
  3. 读完这45篇论文,“没人比我更懂AI了”
  4. jenkins php build,使用 Jenkins 自动化发布 PHP 项目
  5. mysql 审核引擎 goInception 的基本使用
  6. magento中调用图片的方法
  7. java 外部覆盖内部配置,Spring 与自定义注解、外部配置化的结合使用
  8. VMware View 4.0 测试-7
  9. Python学习 Day 025 -模块相关
  10. SpringMVC之@requestBody的作用
  11. pytorch错误解决 | 错误‘Widget Javascript not detected. It may not be installed or enabled properly.‘
  12. 写了个关于tomcat项目部署脚本 shell
  13. 拓端tecdat|Python、R对小说进行文本挖掘和层次聚类可视化分析案例
  14. 人工智能:一种现代的方法|课后习题解答
  15. Office 2010安装时缺少MSXML 6.10.1129.0
  16. 【万字解读】数据可视化图表使用场景大全 !
  17. 小米盒子打开adb调试模式
  18. 初识c语言(入门篇)
  19. 汇编语言: txt文件操作
  20. Genymotion 自配 AndoidSDK 一直Booting

热门文章

  1. linux设置静态ipv6地址,设置静态IPV6地址
  2. 2. 产品的主线与产品的爆点
  3. 【矩阵论】Hermite二次型(3)
  4. 3D打印服装 万圣节上非你莫属 - 趋梦工厂
  5. 【原创】ThinkpadX240更换三键触摸板注意事项
  6. 酒厂酒业IP网络广播系统建设方案-基于局域网的新一代交互智慧酒厂酒业IP广播设计指南
  7. 企业舆情监控机制,TOOM舆情分析企业舆情应对方法?
  8. 业务重要?还是技术重要?
  9. 一个前端菜鸟的成长记
  10. 安装Mocha+WebdriverIO