• Atlas 200 DK开发板问题总结


    1.fatal error: acl/acl.h: No such file or directory
    该问题是因为在设置的DDK环境变量下找不到头文件。
    解决方法:
    1)输入echo $DDK,查看当前DDK地址
    2)在src文件夹下找到CMakeLists.txt文件,发现该文件有一个变量名称叫INC_PATH,查找该变量名,发现有如下用到的地方:

    # Header path
    include_directories(
        ../inc/
        common/inc/
        yolo/inc/
        deepsort/inc/
        retina/inc/
        dimp/inc/
        $ENV{HOME}/ascend_ddk/${ARCH}/include/
        $ENV{HOME}/ascend_ddk/${ARCH}/include/ascenddk
        ${INC_PATH}/acllib/include/
        $ENV{HOME}/Ascend/driver
        $ENV{HOME}/ascend_ddk/${ARCH}/include/opencv4/opencv2
    
    )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    对INC_PATH继续进行查找,可以看到如下代码段:

    # add host lib path
    link_directories(
        /usr/local/lib/
        ${LIB_PATH}
        $ENV{HOME}/ascend_ddk/${ARCH}/lib/
        ${INC_PATH}/atc/lib64
        ${INC_PATH}/aclib/lib64/stub/
        ${INC_PATH}/include/
        ${INC_PATH}/
        $ENV{HOME}/Ascend/
        $ENV{HOME}/Ascend/driver/
    )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在其中加入${INC_PATH}/include/(结合DDK_PATH进行确认),也就是在查找acl.h时从该目录下查找,这样便可确定acl.h位置,问题解决。
    2.fatal error: opencv2/opencv.hpp: No such file or directory
    该问题性质和问题一类似,网上的解决方法有说重新安装编译libopencv-dev或者是修改安装包路径并重新编译、还有直接apt-get install 的,这些方法均试过,没有实质作用。
    最简单的解决方法,确定DDK_PATH后直接软链接到DDK_PATH,无需编译即可通过。

    3.Atlas 200I DK上网问题总结
    ①如果只用一根网线连接PC和开发板,需保证二者在同一网段下(通过修改网络适配里的以太网Ipv4设置来实现),虽然官方推荐这个方法,但是本人在尝试时发现并不是很好用,因此并不推荐。
    ②通过路由器桥接,该方法很好用,需要两根网线,登录tplogin.cn进入桥接页面,然后开启wifi即可使得板子联网。

    4.Atlas 200I DK在推理时经常断网转换不成功问题
    由于本人是在个人热点下进行模型转换的,在转换deepsort的om模型时,采用了下述命令:

    atc --model=deep.onnx --framework=5  --output=deep_dims --input_format=ND  --input_shape="actual_input_1:-1,3,128,64" --dynamic_dims="1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39;40;41;42;43;44;45;46;47;48;49;50" --log=error --soc_version=Ascend310B4
    
    • 1

    但是转换的很慢,或者直接报出如下问题:
    在这里插入图片描述
    同时还会出现爆内存的问题:
    在这里插入图片描述

    针对该问题,可以在自己的PC上进行模型转换,采用WSL的方式创建Ubuntu系统,然后安装配置文件进行转换,参考链接如下:
    https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC1/Application%20Development%20Guide/ttmutat/tmuacop_0011.html

    5.代码运行时出现:
    OpenBLAS Warning : Detect OpenMP Loop and this application may hang. Please rebuild the library with USE_OPENMP=1 option.
    解决方法:export OMP_NUM_THREADS=1

    6.SSH服务重启失败,提示:ssh.serviceJob for ssh.service failed
    经常报如下错误:

     /etc/init.d/ssh restartRestarting ssh (via systemctl): ssh.serviceJob for ssh.service failed because the control process exited with error code. See "systemctl status ssh.service" and "journalctl -xeu ssh.service" for details.  failed!
    
    • 1

    解决思路:
    ①查看权限

    /usr/sbin/sshd -T
    
    • 1
    # /usr/sbin/sshd -T
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Permissions 0755 for '/etc/ssh/ssh_host_rsa_key' are too open.
    It is required that your private key files are NOT accessible by others.
    This private key will be ignored.
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Permissions 0755 for '/etc/ssh/ssh_host_ecdsa_key' are too open.
    It is required that your private key files are NOT accessible by others.
    This private key will be ignored.
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Permissions 0755 for '/etc/ssh/ssh_host_ed25519_key' are too open.
    It is required that your private key files are NOT accessible by others.
    This private key will be ignored.
    sshd: no hostkeys available -- exiting.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    ②修改权限

    chmod -R 600 /etc/ssh/*
    
    • 1

    ③重启SSH服务

    /etc/init.d/ssh restart
    
    • 1

    显示成功:

    Restarting ssh (via systemctl): ssh.service.
    
    • 1

    7.设置DNS配置网络
    无法联网问题如下:
    (base) root@davinci-mini-devkit-1:~# ping baidu.com
    ping: baidu.com: Temporary failure in name resolution

    解决思路:
    添加DNS

    echo"nameserver 8.8.8.8" >> /etc/resolv.conf
    
    • 1

    8.执行Python脚本报错,提示:No module named _bz2
    编译问题:
    执行Python脚本报错,提示:No module named _bz2,该依赖库不是Python库,而是C语言的系统动态库,属于Python的底层库,需要在编译Python阶段一起编译才能使用。

    解决思路:
    ①使用sudo或root用户执行安装bz2。

    sudo apt-get update
    sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev
    
    • 1
    • 2

    ②下载Python安装包,并使用本地域用户执行重新编译并安装Python,Python版本可自行决定。

    cd <python安装包路径>
    ./configure --prefix=/usr/local/python3.9.7 --enable-loadable-sqlite-extensions --enable-shared --enable-optimizations
    make -j4
    sudo make install
    
    • 1
    • 2
    • 3
    • 4

    9.Python导入opencv模块报错,提示:ImportError: libGL.so.1: cannot open shared object file: No such file or directory
    出现以下错误:

     ---------------------------------------------------------------------------
     ImportError                               Traceback (most recent call last)
     Cell In[1], line 1
     ----> 1 import cv2
           2 import numpy as np
           3 import ipywidgets as widgets
    
      File ~/miniconda3/lib/python3.9/site-packages/cv2/__init__.py:181
         176             if DEBUG: print("Extra Python code for", submodule, "is loaded")
         178     if DEBUG: print('OpenCV loader: DONE')
     --> 181 bootstrap()
    
     File ~/miniconda3/lib/python3.9/site-packages/cv2/__init__.py:153, in bootstrap()
         149 if DEBUG: print("Relink everything from native cv2 module to cv2 package")
         151 py_module = sys.modules.pop("cv2")
     --> 153 native_module = importlib.import_module("cv2")
         155 sys.modules["cv2"] = py_module
         156 setattr(py_module, "_native", native_module)
    
     File ~/miniconda3/lib/python3.9/importlib/__init__.py:127, in import_module(name, package)
         125             break
         126         level += 1
     --> 127 return _bootstrap._gcd_import(name[level:], package, level)
     ImportError: libGL.so.1: cannot open shared object file: No such file or directory 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    解决思路:
    安装GL库

    # 更新apt-get
    apt-get update
    # 安装GL库
    apt install libgl1-mesa-glx
    
    • 1
    • 2
    • 3
    • 4

    10.atc转化om时容易挂掉
    在用atc转换deepsort的om模型时,一直长时间无反应,问题如下:
    在这里插入图片描述
    解决思路:
    ①键盘输入“Win+R”,打开命令行窗口,输入cmd即可查看系统版本信息(在命令行输入VER也能达到相同效果),回显如下所示:

    C:\Users\xxx>cmd
    Microsoft Windows [版本 10.0.19045.2486]
    (c) Microsoft Corporation。保留所有权利。
    
    • 1
    • 2
    • 3

    ②搜索并找到Windows PowerShell/命令提示符,右键单击图标并选择“以管理员身份运行”后,先更新wsl内核,再通过运行以下命令查看在线商店可以下载并且可用的Linux发行版本列表:

    wsl --update
    wsl --list --online
    
    • 1
    • 2

    在这里插入图片描述
    ③确认需下载的Ubuntu 22.04版本,输入以下命令,安装完成后重启计算机。

    wsl --install --distribution Ubuntu-22.04
    
    • 1

    ④启动Linux Ubuntu22.04子系统。
    单击“Windows”菜单栏,所用应用下面找到并单击“Ubuntu 22.04.2 LTS”图标,启动Ubuntu 22.04.2 LTS
    在这里插入图片描述
    ⑤在Ubuntu 22.04 LTS系统命令行界面配置apt-get源

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
    sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    sudo apt-get update 
    sudo apt upgrade
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    12.< tag-动态规划和子序列, 子数组>lt.72. 编辑距离
    Mybatis的特性详解——动态SQL
    ffmpeg源码阅读之avformat_alloc_output_context2
    ​数据库原理及应用上机(实验二 SQL数据定义功能实验)
    Redisson入坑篇
    setter与getter访问器属性——数据驱动显示
    经营收款码收款有手续费吗
    Python实验项目7 :tkinter GUI编程
    基于 QEMUv8 搭建 OP-TEE 开发环境
    将Servlet项目改为SSM项目
  • 原文地址:https://blog.csdn.net/qq_43820692/article/details/133157330