Awesome video understanding toolkits based on PaddlePaddle. It supports video data annotation tools, lightweight RGB and skeleton based action recognition model, practical applications for video tagging and sport action detection.
D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\reader.py:485: UserWarning: DataLoader with multi-process mode is not supported on MacOs and Windows currently. Please use signle-process mode with num_workers = 0 instead
"DataLoader with multi-process mode is not supported on MacOs and Windows currently." \
E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\solver\optimizer.py:124: DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()
getattr(paddle.optimizer, opt_name).__init__).args
[10/26 11:00:34] Training in fp32 mode.
D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\nn\layer\norm.py:654: UserWarning: When training, we now always track global mean and variance.
"When training, we now always track global mean and variance.")
Traceback (most recent call last):
File "E:/lyw/2022-8-12Detection/PaddleVideo-release-2.2.0/main.py", line 139, in <module>
main()
File "E:/lyw/2022-8-12Detection/PaddleVideo-release-2.2.0/main.py", line 135, in main
profiler_options=args.profiler_options)
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\tasks\train.py", line 227, in train_model
outputs = model(data, mode='train')
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\dygraph\layers.py", line 930, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\dygraph\layers.py", line 915, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\modeling\framework\estimators\base.py", line 53, in forward
return self.train_step(data_batch)
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\modeling\framework\estimators\depth_estimator.py", line 38, in train_step
outputs = self.forward_net(inputs, day_or_night='day_and_night')
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\modeling\framework\estimators\depth_estimator.py", line 29, in forward_net
outputs = self.backbone(inputs, day_or_night)
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\dygraph\layers.py", line 930, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\dygraph\layers.py", line 915, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\modeling\backbones\adds.py", line 1014, in forward
self.generate_images_pred(inputs, outputs, 'day')
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\modeling\backbones\adds.py", line 1114, in generate_images_pred
depth, inputs[("inv_K", source_scale)])
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\dygraph\layers.py", line 930, in __call__
return self._dygraph_call_func(*inputs, **kwargs)
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\fluid\dygraph\layers.py", line 915, in _dygraph_call_func
outputs = self.forward(*inputs, **kwargs)
File "E:\lyw\2022-8-12Detection\PaddleVideo-release-2.2.0\paddlevideo\modeling\backbones\adds.py", line 358, in forward
cam_points = paddle.matmul(inv_K[:, :3, :3], self.pix_coords)
File "D:\Program Files\Anaconda3\envs\paddle\lib\site-packages\paddle\tensor\linalg.py", line 145, in matmul
return op(x, y, 'trans_x', transpose_x, 'trans_y', transpose_y)
ValueError: (InvalidArgument) Input(X) and Input(Y) has error dim.X_broadcast's shape[0] must be equal to Y_broadcast's shape[0],or X_broadcast's shape[0] <= 1, or Y_broadcast's shape[0] <= 1,But received X_broadcast's shape[0] = [2]received Y_broadcast's shape[0] = [6]
[Hint: Expected x_bd_dims[i] == y_bd_dims[i] || x_bd_dims[i] <= 1 || y_bd_dims[i] <= 1 == true, but received x_bd_dims[i] == y_bd_dims[i] || x_bd_dims[i] <= 1 || y_bd_dims[i] <= 1:0 != true:1.] (at ../paddle/phi/kernels/impl/matmul_kernel_impl.h:54)
[operator < matmul_v2 > error]
Process finished with exit code 1
BUG描述 bug信息如下:
产生原因 不理解https://github.com/PaddlePaddle/PaddleVideo/blob/release/2.2.0/docs/zh-CN/dataset/Oxford_RobotCar.md中的数据准备工作。 感觉这里面描述的数据准备有点混乱。 1 首先不理解数据集下载的描述 这里面1、2点提到的Bumblebee XB3的左目图像我似乎没有需要下载,是否只需要下载第3点中所给的所有链接数据就行了?似乎这里面包含了训练验证数据。附加的原始数据是不是不用下载。 这里给出的9条链接已经是全部的处理后数据了?
2 数据预处理的描述 我的理解是上面9条链接给出的数据已经是预处理后的数据了,所以直接拿来解压生成了最终的数据集。 我准备的数据集格式如下,均来自数据集下载第3条给出的9个链接,不包含“附原始未处理数据下载地址”里面的数据(和数据预处理第4点给出的描述有点不同): data └── oxford ├── splits ├── train_files.txt ├── val_day_files.txt └── val_night_files.txt └── oxford_processing_forADDS ├── day_train_all/ #白天训练图像文件夹 (解压自day_train_all.7z.001) ├── day_train_all_fake_night/ #夜晚训练图像文件夹 (解压自day_train_all_fake_night.7z.001) ├── day_val_451/ #白天验证图像文件夹 (解压自day_val_451.7z) ├── day_val_451_gt/ #白天验证深度真值文件夹 (解压自day_val_451_gt.7z) ├── night_val_411/ #夜晚验证图像文件夹 (解压自night_val_411.7z) └── night_val_411_gt/ #夜晚验证深度真值文件夹 (解压自night_val_411_gt.7z) 我没有用到day_train_all.7z.002和day_train_all_fake_night.7z.002的数据,002的数据解压有问题,似乎001和002的数据是一样的,我也不清楚这里面的区别是什么? 整个数据集的我没有做任何预处理,“1. 图像去畸变”、“2. 动态帧筛选”,因为没有给出具体怎么做的方法。总之,用了上面我给出的数据集格式训练之后,就遇到了BUG,不清楚这个bug产生的原因是不是数据集的问题。也可能是别的问题。
运行程序的命令 python mian.py --validate -c configs/estimation/adds/adds.yaml --seed 20