平均绝对错误 - Python

5 python numpy

我是Python的新手

我必须实现一个可以计算2个图像之间的MAE的函数

这是我学到的MAE公式:在此输入图像描述

这是我的代码:

def calculateMAE(imageA, imageB):
    """
    Calculate MAE between 2 images
    np: numpy

    """
    mae = np.sum(imageB.astype("float") - imageA.astype("float"))
    mae /= float(imageA.shape[0] * imageA.shape[1] * 255) 

    if (mae < 0):
        return mae * -1
    else:
        return mae
Run Code Online (Sandbox Code Playgroud)

谁能告诉我我的功能是否合适?提前致谢!

Fly*_*ana 11

平均绝对误差的绝对符号在总和中的每个条目中,因此您无法检查mae < 0在总结之后是否 - 您需要将其放入总和中!

因此你应该有类似的东西

mae = np.sum(np.absolute((imageB.astype("float") - imageA.astype("float")))
Run Code Online (Sandbox Code Playgroud)

在哪里np.absolute(matrix)计算元素的绝对值.