• mmclassification安装与调试


            MMClassification 是一款基于 PyTorch 的开源图像分类工具箱,是 OpenMMLab 项目的成员之一 主分支代码目前支持 PyTorch 1.5 以上的版本。 MMClassification包含了诸多经典或高性能图像分类算法,复现了最新的一些论文和成果,特别是包括了大量CVPR论文的复现。

    1 项目地址

            项目地址:GitHub - open-mmlab/mmclassification: OpenMMLab Image Classification Toolbox and Benchmark

            安装指南:

            Prerequisites — MMClassification 0.23.1 documentation

            Getting Started — MMClassification 0.23.1 documentation

    2 安装步骤

            mmclassification的安装步骤如下:

    1. conda create -n openmmlab python=3.7 -y
    2. conda activate openmmlab
    3. pip install torch==1.8.1+cu101 torchvision==0.9.1+cu101 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html
    4. pip3 install openmim
    5. mim install mmcv-full
    6. git clone https://github.com/open-mmlab/mmclassification.git
    7. #如果github连接不上,可用gittee替换。
    8. #git clone https://gitee.com/monkeycc/mmclassification.git
    9. cd mmclassification
    10. pip install -v -e .

            其中,pytorch版本根据自身的cuda版本安装相应的版本即可。如果git无法使用,也可以用浏览器下载后解压。如果Github无法访问,可用gittee替换,即:https://gitee.com/monkeycc/mmclassification.git

            安装过程提示如下图所示,最后会提示安装成功。

    3 效果测试

            (1)下载预训练模型

            运行下面命令下载预训练模型:

    mim download mmcls --config resnet50_8xb32_in1k --dest .

            运行完之后,在当前目录下会下载到两个文件,即resnet50_8xb32_in1k.py 和resnet50_8xb32_in1k_20210831-ea4938fc.pth。

            如果运行文件时,提示search.py抛出如下异常:

            TypeError: __init__() got an unexpected keyword argument 'autocompletion'

            造成这个错误的原因是click版本不匹配,可以按照下述命令重新安装更低版本的click。

     pip install click==7.1.2
    

           修复完上述错误后,search.py文件还会继续报如下错误:

            修改python环境中/lib/python3.7/site-packages/mim/commands/search.py文件,这个文件在抱错时也会提示357行抛出异常,错误提示如下所示:

    1. File "/root/anaconda3/envs/openmmlab/lib/python3.7/site-packages/mim/commands/search.py", line 169, in get_model_info
    2. dataframe = convert2df(metadata)
    3. File "/root/anaconda3/envs/openmmlab/lib/python3.7/site-packages/mim/commands/search.py", line 357, in convert2df
    4. for result in results:
    5. TypeError: 'NoneType' object is not iterable

               解决方法是在357前增加if results is None: continue。如下所示:    

    1. if results is None:
    2. continue
    3. for result in results:

            (2)运行测试脚本

    python demo/image_demo.py demo/demo.JPEG resnet50_8xb32_in1k.py resnet50_8xb32_in1k_20210831-ea4938fc.pth --device cpu

            运行完成之后,会在命令行输出如下内容:

     4 【python三维深度学习】python三维点云从基础到深度学习_Coding的叶子的博客-CSDN博客_python 三维点云

    更多三维、二维感知算法和金融量化分析算法请关注“乐乐感知学堂”微信公众号,并将持续进行更新。

  • 相关阅读:
    Spring基础入门
    Docker(一) ----初始Docker
    PDF 工具箱
    jvm学习笔记
    搭建discuz论坛并攻破盗取数据库
    raft在etcd中的实现
    Python ModuleNotFoundError: No module named通俗的解释和方法
    peer_connection_interface参数
    有没有了解流量压力特性曲线的,求解释
    C++双整数转双字节16进制
  • 原文地址:https://blog.csdn.net/suiyingy/article/details/125452839