跑通 TrackNet-Badminton-Tracking-tensorflow2 项目全记录
📝 跑通 TrackNet-Badminton-Tracking-tensorflow2 项目全记录
git clone https://github.com/Chang-Chia-Chi/TrackNet-Badminton-Tracking-tensorflow2.git
TrackNet-Badminton-Tracking-tensorflow2
conda create --prefix /cloud/TrackNet-Badminton-Tracking-tensorflow2/envs python=3.7
conda activate /cloud/TrackNet-Badminton-Tracking-tensorflow2/envs pip install -r requirements.txt
requirements.txt 内容如下:
numpy
focal-loss
opencv-python
tensorflow==2.3.0
python predict.py --video_path test/test.mp4
报错:
Traceback (most recent call last):File "predict.py", line 114, in <module>y_pred = model.predict(img_input, batch_size=BATCH_SIZE)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py", line 130, in _method_wrapperreturn method(self, *args, **kwargs)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py", line 1599, in predicttmp_batch_outputs = predict_function(iterator)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 780, in __call__result = self._call(*args, **kwds)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 840, in _callreturn self._stateless_fn(*args, **kwds)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2829, in __call__return graph_function._filtered_call(args, kwargs) # pylint: disable=protected-accessFile "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 1848, in _filtered_callcancellation_manager=cancellation_manager)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 1924, in _call_flatctx, args, cancellation_manager=cancellation_manager))File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 550, in callctx=ctx)File "/cloud/TrackNet-Badminton-Tracking-tensorflow2/envs/lib/python3.7/site-packages/tensorflow/python/eager/execute.py", line 60, in quick_executeinputs, attrs, num_outputs)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Default AvgPoolingOp only supports NHWC on device type CPU[[node res_net__track/sequential_1/res_net__bottle_neck/sequential_2/average_pooling2d/AvgPool (defined at /home/featurize/work/TrackNet-Badminton-Tracking-tensorflow2/TrackNet.py:55) ]] [Op:__inference_predict_function_10566]Errors may have originated from an input operation.
Input Source operations connected to node res_net__track/sequential_1/res_net__bottle_neck/sequential_2/average_pooling2d/AvgPool:res_net__track/sequential/activation_1/Relu (defined at /home/featurize/work/TrackNet-Badminton-Tracking-tensorflow2/TrackNet.py:151)Function call stack:
predict_function
pip uninstall -y tensorflow
conda install tensorflow-gpu
python predict.py --video_path test/test.mp4
报错:
Traceback (most recent call last):File "predict.py", line 125, in <module>tp, tn, fp1, fp2, fn = confusion(y_pred, y_true, tol)File "/home/featurize/work/TrackNet-Badminton-Tracking-tensorflow2/utils.py", line 182, in confusion_, contours, _ = cv2.findContours(h_pred[0].copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
ValueError: not enough values to unpack (expected 3, got 2)
pip uninstall opencv-python
pip install opencv-python==3.4.3.18
python predict.py --video_path test/test.mp4
Load weights successfully
Load csv file successfully
Beginning predicting......
2025-06-05 02:17:25.795704: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:116] None of the MLIR optimization passes are enabled (registered 2)
2025-06-05 02:17:25.796098: I tensorflow/core/platform/profile_utils/cpu_utils.cc:112] CPU Frequency: 2100095000 Hz
2025-06-05 02:17:29.229762: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudnn.so.7
2025-06-05 02:17:30.342027: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcublas.so.10
==========================================================
Number of true positive: 0
Number of true negative: 96
Number of false positive FP1: 366
Number of false positive FP2: 29
Number of false negative: 34
Accuracy: 0.18285714285714286
Precision: 0.0
Recall: 0.0
Total Time: 39.424506187438965
(ACC + Pre + Rec)/3: 0.06095238095238095
Done......