IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 搭建目标检测模型之Harmonizing Transferability and Discriminability for Adapting Object Detectors -> 正文阅读

[人工智能]搭建目标检测模型之Harmonizing Transferability and Discriminability for Adapting Object Detectors

搭建环境

克隆项目HTCN

git clone git://github.com/xiangxiangtao/HTCN.git

主要环境

  • python=3.6.9
  • pytorch=1.0.1
  • cuda=10.0

其他环境参考fasterrcnn所需环境

编译

cd lib
python setup.py build develop

准备数据集

下载数据集

PASCAL_VOC 07+12 and Clipart

准备PASCAL_VOC 07+12

参考Pascal VOC数据集使用方法

准备Clipart

修改数据集配置信息

添加lib/datasets/

将数据集对应的脚本添加到lib/datasets/中

  • 对voc数据集,lib/datasets/中已经有了对应的脚本pascal_voc.py,不需要再添加;
  • 对clipart数据集,lib/datasets/中已经有了对应的脚本clipart.py,不需要再添加,不过需要根据实际需要修改clipart.py脚本中的路径,否则代码中的默认路径和clipart默认的路径组织方式不一样;
    在这里插入图片描述

修改lib/datasets/config_dataset.py

  • 修改__D.PASCAL和__D.CLIPART为实际的数据集所在路径;

修改lib/model/utils/parser_func.py

  • 对voc和clipart两个数据集,–dataset的值改为’voc_0712’,–dataset_t的值改为’clipart’,由于该脚本中set_dataset_args函数里已经有了对应的分支,不需要再进行修改;

修改lib/datasets/factory.py

根据前面的parser_func.py脚本中的args.imdb_name内容进行修改

  • args.dataset为"voc_0712"时,使用默认的代码即可;
  • args.dataset_t为"clipart"时,使用默认的代码即可;

预训练模型

下载预训练模型

点击HTCN中的链接,下载VGG16和ResNet101的预训练模型;
将预训练模型放到指定路径下,指定路径可以在lib/model/utils/config.py中进行修改;
在这里插入图片描述

训练模型

net可以选择vgg16/resnet101

python trainval_net_HTCN.py --dataset source_dataset --dataset_t target_dataset --net vgg16

报错1:ModuleNotFoundError: No module named ‘model.utils.cython_bbox’

解决办法:

参考No module named ‘model.utils.cython_bbox’ #7

打开setup.py

gedit lib/setup.py

将里面的

    ext_modules = [
        extension(
            "model._C",
            sources,
            include_dirs=include_dirs,
            define_macros=define_macros,
            extra_compile_args=extra_compile_args,
        )
    ]

替换成

ext_modules = [ extension( "model._C", sources, include_dirs=include_dirs, define_macros=define_macros, extra_compile_args=extra_compile_args, ), extension( "model.utils.cython_bbox", ["model/utils/bbox.pyx"], extra_compile_args={'cxx':[],'gcc': ["-Wno-cpp", "-Wno-unused-function"]}, include_dirs=[numpy_include] ) ]

报错2:NameError: name ‘numpy_include’ is not defined

解决办法

打开setup.py

gedit lib/setup.py

在刚才的ext_modules前面添加下面几行内容

    import numpy as np
    try: 
        numpy_include = np.get_include() 
    except AttributeError: 
        numpy_include = np.get_numpy_include()

报错3:AttributeError: ‘Namespace’ object has no attribute ‘set_cfgs’
解决办法:

数据集没配置好,参考前面的内容进行配置;

报错4:RuntimeError: set_sizes_contiguous is not allowed on a Tensor created from .data or .detach().
在这里插入图片描述

解决办法:

参考报错提示进行修改,去掉data。

测试模型

net根据训练时取的主干网络进行选择

python test_net_HTCN.py --dataset source_dataset --dataset_t target_dataset --net vgg16 --load_name path_to_model

训练结果

[1]:Pascal VOC数据集使用方法
[2]:HTCN
[3]:ubuntu安装pytorch及使用过程的报错记录

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-03 17:04:52  更:2021-10-03 17:05:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/22 1:35:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码