[深度学习]CenterNet/CenterTrack学习笔记

 

    https://github.com/HRNet/HigherHRNet-Human-Pose-Estimation

  • 三项任务[应用]

Main results

Object Detection on COCO validation

BackboneAP / FPSFlip AP / FPSMulti-scale AP / FPS
Hourglass-10440.3 / 1442.2 / 7.845.1 / 1.4
DLA-3437.4 / 5239.2 / 2841.7 / 4
ResNet-10134.6 / 4536.2 / 2539.3 / 4
ResNet-1828.1 / 14230.0 / 7133.2 / 12

Keypoint detection on COCO validation

BackboneAPFPS
Hourglass-10464.06.6
DLA-3458.923

3D bounding box detection on KITTI validation

BackboneFPSAP-EAP-MAP-HAOS-EAOS-MAOS-HBEV-EBEV-MBEV-H
DLA-343296.987.879.293.984.375.734.030.526.8

 


  • 测试样例:

python demo.py multi_pose --demo /home/ubuntu/PycharmProjects/CenterNet-master/images/ --load_model ../models/multi_pose_dla_3x.pth

python demo.py ctdet --demo /home/ubuntu/catkin_ws/src/data_avi/navinfo_park_right.avi --load_model ../models/ctdet_coco_dla_2x.pth

 


  python demo.py ddd --exp_id 3dop --demo /home/ubuntu/monodepth2/monodepth2-master/kitti_data/2011_09_26/2011_09_26_drive_0001_sync/image_00/data --load_model ../models/ddd_3dop.pth


 

 


  • CenterNet训练自己的数据

https://blog.csdn.net/weixin_41765699/article/details/100118353

https://blog.csdn.net/weixin_43509263/article/details/100799415

coco标注信息与labelme标注信息的详解、相互转换及可视化

https://www.cnblogs.com/taotingz/p/11443209.html

https://blog.csdn.net/qq_14845119/article/details/89930248


  • CenterNet安装requirements.txt时报错

教程输入pip install requirements.txt

打开requirements.txt发现里面只有库的名字但是没有具体的版本,感觉可能是因为这个原因所以找不到要下载的版本(我猜的)

解决办法

因为requirements.txt里面的库也不多,所以每一个单独pip install 库名即可
如果感觉网速很慢的话就在末尾加上国内源

例如:pip install 库名 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

参考:https://blog.csdn.net/weixin_42840933/article/details/85308265

如果依然下不了的话(例如scipy依然报错ERROR: Could not find a version that satisfies the requirement scipy (from versions: none)),那么尝试用whl的方法安装

  1. 下载对应版本的whl文件scipy-1.3.1-cp36-cp36m-manylinux1_x86_64.whl:下载地址

进入到whl文件的地址,在终端输入pip install scipy-1.3.1-cp36-cp36m-manylinux1_x86_64.whl

  • No module named '_ext'问题解决方法

File "XXXX/src/lib/models/networks/DCNv2/dcn_v2.py", line 13, in <module>

import _ext as _backend

ModuleNotFoundError: No module named '_ext'kn

这是一个深度学习代码运行时报的错,错误原因是XXXX/src/lib/models/networks/DCNv2/目录下需要重新编译,要把该目录的build文件夹(如果存在的话)删除,然后在命令行运行python setup.py build develop

如果不把build文件夹删除就可能会报这样的错:

File "XXXX/src/lib/models/networks/DCNv2/dcn_v2.py", line 13, in <module>

import _ext as _backend

ImportError: XXXX/src/lib/models/networks/DCNv2/_ext.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN2at7getTypeERKNS_6TensorE

  • ImportError: torch.utils.ffi is deprecated. Please use cpp extensions instead.

https://blog.csdn.net/ShuqiaoS/article/details/88420326

    from torch._C import *

ImportError: numpy.core.multiarray failed to import

Traceback (most recent call last):

  • torch版本太高

>>> torch.__version__

'1.5.1'

 pip3 install pytorch==0.4.1

/CenterNet-master/src/lib/models/networks/DCNv2$ ./make.sh

python demo.py ctdet --demo /path/to/image/or/folder/or/video --load_model ../models/ctdet_coco_dla_2x.pth

    from ._dcn_v2 import lib as _lib, ffi as _ffi

ImportError: /home/ubuntu/PycharmProjects/CenterNet-master/src/lib/models/networks/DCNv2/_ext/dcn_v2/_dcn_v2.so: undefined symbol: __cudaRegisterFatBinaryEnd

  • Cuda 本版问题

sudo sh cuda_9.0.176_384.81_linux.run   [更新 --0%--]--->  enter

ubuntu@ubuntu-System-Product-Name:/usr/local$ vim ~/.bashrc

https://www.jianshu.com/p/6a6fbce9073f

gedit ~/.bashrc

source ~/.bashrc

vim ~/.bashrc #修改配置文件 

#在文件结尾处添加

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64

export PATH=$PATH:/usr/local/cuda/bin

export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

bashrc文件里设置

sudo rm -rf cuda

sudo ln -s /usr/local/cuda-9.0 /usr/local/cuda

 

 

添加软连接(symbol link)相当于添加一个快捷方式,解决cannot open shared object file: No such file or directory问题。

sudo ln -s source target

sudo ldconfig /usr/local/cuda/lib64

如果要修改软连接指向,使用-f

sudo ln -fs source target

如果是文件夹,则可以加上-n

sudo ln -fns source target

    import _ext as _backend  ImportError: No module named _ext

No module named '_ext'问题解决方法

File "XXXX/src/lib/models/networks/DCNv2/dcn_v2.py", line 13, in <module>

import _ext as _backend

ModuleNotFoundError: No module named '_ext'kn

这是一个深度学习代码运行时报的错,错误原因是XXXX/src/lib/models/networks/DCNv2/目录下需要重新编译,要把该目录的build文件夹(如果存在的话)删除,然后在命令行运行python setup.py build develop

如果不把build文件夹删除就可能会报这样的错:

File "XXXX/src/lib/models/networks/DCNv2/dcn_v2.py", line 13, in <module>

import _ext as _backend

ImportError: XXXX/src/lib/models/networks/DCNv2/_ext.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN2at7getTypeERKNS_6TensorE

 

export  PYTHONPATH="/usr/lib/python3.5/site-packages:$PYTHONPATH"

 

which python

/usr/bin/python

 sudo rm /usr/bin/python

sudo ln -s /usr/bin/python3 /usr/bin/python

因为是受ROS安装的影响,ROS安装之后会在python pyth中加入:

'/opt/ros/kinetic/lib/python2.7/dist-packages'

而为了解决此问题,可以在需要运行的python文件(即使用import cv2的python文件)中,添加以下代码:

import sys

sys.path.remove('/opt/ros/kinetic/lib/python2.7/dist-packages')

通过这两行代码可以把ROS写入path中的路径给清除,进行可以import anaconda中的cv2包。

ImportError: No module named '_tkinter', please install the python3-tk package 

 ImportError: No module named '_tkinter', please install the python3-tk package

先更新包,命令:sudo apt-get update

然后:

提示还没有'_tkinter',这时只要把python3修改成对应的python版本号,

比如我的是python3.6.5,重新输入sudo apt-get install python3.6-tk,即可

madel

 

 

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值