Q:py3中numpy的@运算符在py2中无法识别
A:用np.matmul函数替代@运算符
Q:除法运算符变化
A:在代码文件头两行增加以下代码
# -- coding: utf-8 -- from __future__ import division
Q:py3中函数传参可以指定类型,而py2无法识别
A:删除对类型的指定
Q:py3闭包中关键字nonlocal,py2无法识别
A:改用函数套函数的写法,用字典代替nonloacl变量,具体教程
Q:py3中使用@torch.jit.script装饰器,py2中无法使用
A:@torch.jit.script装饰器用于模型加速,直接删除不影响代码效果,或者在执行代码前增加注释PYTORCH_JIT=0关闭装饰器
Q:py3函数传参args和**kwargs,在py2中无法识别
A:py2可以识别args和**kwargs,但必须放在最后两个位置
Q:py2中不支持pathlib
A:单独安装pathlib库
Q:py3中time.perf_counter()函数在py2中无法使用
A:这只是一个计时的函数,精度比time.time()更高,直接替换为time.time()不影响结果
Q:不同版本的opencv对cv2.findContours函数的调用方式有差异
A:如果代码报错,尝试替换下面两种代码
contours, _ = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE) _, contours, hierarchy = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)
Q:ONNX转TNN,可能会损失一些网络参数
A:猜测是一些固定输出,无需通过模型推理也获得



