◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
错误的 astype 返回值
问题示例代码中使用了 astype 方法来将图像数组转换为 float32 数据类型。然而,打印输出的数组类型却是 float64,而不是预期的 float32。
原因:后续操作的影响
导致此问题的原因是后续操作 image = (image - mean) / std。mean 和 std 数组是 float64 类型,因此它们的乘法和除法运算结果也是 float64 类型。由于 image 已与这两个 float64 数组进行操作,因此最终结果的类型也被提升为 float64。
因此,即使 astype(np.float32) 指定了目标数据类型,后续操作也会覆盖转换,从而导致输出数组具有 float64 数据类型。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。