def count_strides()

in mobile_cv/arch/fbnet_v2/fbnet_builder.py [0:0]


def count_strides(arch_def_blocks):
    assert isinstance(arch_def_blocks, list)
    assert all("block_cfg" in x for x in arch_def_blocks)
    ret = 1
    for stride in count_stride_each_block(arch_def_blocks):
        if isinstance(stride, list) or isinstance(ret, list):
            if not isinstance(ret, list):
                ret = [ret] * len(stride)
            if not isinstance(stride, list):
                stride = [stride] * len(ret)
            ret = [x * y for x, y in zip(ret, stride)]
        else:
            ret *= stride
    return ret