搞深度學習這東西配環境真的難。總是在達成目標的路上遇到各種錯誤。
本文僅記錄配置環境中的心得。Spatial Temporal Graph Convolutional Networks for Skeleton Based Action Recognition
論文解讀可參考:https://blog.csdn.net/qq_36893052/article/details/79860328
文章鏈接:https://arxiv.org/abs/1801.07455
Github 代碼:https://github.com/yysijie/st-gcn
第一步:你要從github網站上,下載這個包
第二步:配置環境
安裝pytorch參考我的這個博客:https://blog.csdn.net/Dongjiuqing/article/details/89417616
安裝openpose參考我這個博客:https://blog.csdn.net/Dongjiuqing/article/details/89006405
【注】:openpose要配置caffe和opencv,具體參考博客,這兩個必須要弄好。
然後FFmpeg和其他依賴項先按照人家給的方法去安裝。
第三部:安裝和下載模型
到這一步,我都沒什麼問題,最尷尬的事情來了。從人家的網站上可以看到,這一步之後就是運行示例代碼了。然而我卡住了。報了一個很奇怪的錯誤:看圖:
RuntimeError:Errors in loading state_dict for Model:......
百思不得其解。我是直接運行的他的代碼:
bash tools/get_models.sh
這一步卡住了,當時不知道哪裏錯了。以爲是之前的環境配的不對,還是別的什麼原因。一頭霧水。最後索性直接從頭重新配環境,然而到了運行示例代碼的時候,還是這個錯誤。日了。。。於是擱置了一段時間。這個環境就丟在了一遍。過了一週,實在沒辦法,代碼還是要實現 。找了學長的幫助,學長說是模型的問題。於是從下面的百度雲盤上下載了那個模型。然後替換掉原來的。這個問題神奇般的解決了!
然而報了下面這麼一個錯誤:
ValueError: No way to determine width or height from video.
我靠!心態崩了啊,有沒有,心態崩了啊!一個環境拖了20天還沒配好,那個絕望啊。看到報的錯誤的時候,感覺自己的skvideo或者是ffmpeg有問題。後來查了查,好像確實是有問題。ffmpeg按照github上給的方法安裝的版本是1.4,而這個skvideo要求至少是2.8的版本。(一個網站上說的,不知道真的假的。)然後我把用命令安裝的ffmpeg卸載了,用源碼安裝一個4.1.3版本的。具體操作如下。
#卸載github上已安裝的版本
pip uninstall ffmpeg
從這個網站上下載了4.1.3版本:https://ffmpeg.org/download.html
解壓之後安裝,進入到該文件夾後:
./configure
make
make install
第四部:運行Demo
python3 main.py demo --openpose '/home/sues/Desktop/openpose/build' --video '/home/sues/Desktop/st-gcn-master/resource/media/skateboarding.mp4' --device 0
感人啊,有沒有。配了那麼久的環境終於搞好了。