模型转换中的数据校准处理

问题描述

如果原始模型的在推理时 需要做如下前处理,

#pytorch
# 输入图片为RGB
transform = Compose([
        ToPILImage(),
        Resize([512, 512]),
        ToTensor(),
        Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])]
        )

那么在做校准时的前处理时,是否需要将图片转换为 RGB,在接着处理均值方差,归一化。

看例程的疑问点:-
这里减去均值也没体现,而且乘255后(0255),数据范围不也和推理时输入的范围(01 或者-1 ~1)不一致了么

image.png

您好,均值、方差、归一化都是配置在yaml文件中的,mean表示均值,scale中包括了方差和归一化,这样实现的目的是将均值、方差、归一化放在一个预处理conv节点中加速实现,其实现过程如下图所示,255mean就是yaml中的mean,1/(255std)就是yaml中的scale。

J5用户,我们有技术支持一对一哦~

谢谢您的回复,那么我在模型转换,准备校准数据的时候,需要对校准数据做归一化么。

请问,如果是通过img*(1/img.max())除以最大值实现的归一化,该怎样设置yaml中的scale和mean

在yaml中配置后,准备校准数据时,不再需要对校准数据做归一化。-

上面图片失效了,下面重新给出: