AI视觉训练环境-【2】开发客户端搭建

        本文介绍搭建一套简单的AI视觉训练环境的过程,作者也是刚开始接触机器视觉,现将学习过程中的搭建过程梳理下来分享给大家。创作过程实属不易,如不喜欢请轻轻绕过,如有建议无比欢迎,只愿我们共同进步。

训练环境

1.概述

         开发环境基于yolov5进行训练演练,开发人员通过PyCharm、VSCode等开发环境连接至远程训练服务器的容器,利用训练服务器的GPU进行训练。

        开发端操作系统:Windows

2.Anaconda安装

2.1程序安装

官方下载地址:https://www.anaconda.com/products/distribution
下载windows版本进行安装,具体安装步骤忽略。

2.2配置环境变量

        在 控制面板\系统和安全\系统\高级系统设置\环境变量\用户变量\PATH  中添加 anaconda的安装目录的Scripts文件夹, 比如我的路径是C:\Users\name\anaconda3\Scripts, 看个人安装路径不同需要自己调整。
        之后就可以打开Anaconda Prompt命令行,输入

conda --version

        如果输出conda 4.4.11之类的就说明环境变量设置成功了。
        为了避免可能发生的错误, 我们在命令行输入以下命令,对所有工具包进行升级:

conda upgrade --all 

2.3添加下载源

打开打开C:\User\name\ .condarc,(如:C:\Users\xiyou)
用记事本打开.condarc文件,修改内容如下:

channels:- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
show_channel_urls: true

3.数据标注工具安装

        数据标注工具我们选择labelImg,labelImg是一种矩形标注工具,常用于目标识别和目标检测,其标记数据输出为.xml和.txt。

3.1创建虚拟环境

1)    启动Anaconda Prompt创建虚拟环境,命名为labelimg

conda create -n labelimg python=3.8 -y

2)    切换至该虚拟环境

conda activate labelimg

 3.2安装labelImg

1)安装依赖包PyQt5、pyqt5-tools、lxml

pip install PyQt5 pyqt5-tools lxml -i https://pypi.tuna.tsinghua.edu.cn/simple

2)安装labelImg

pip install labelImg -i https://pypi.tuna.tsinghua.edu.cn/simple

3)运行labelImg启动,如果正常打开labelImg工具,则安装成功。

labelImg

4.数据标注

4.1数据预处理

1)数据去重
     可利用visipics工具对重复的图片进行处理,下载地址如下:
http://www.winwin7.com/soft/7756.html
2)数据集拆分
    首先准备好需要打标注的数据集,我们创建一个名称为MyData的文件夹,里面创建一个名称为Images的文件夹用于存放需要打标签的原始数据;再创建一个名称为labels的文件夹用于存放标注的标签文件;再创建一个名称为predefined_classes.txt的文件,用于存放标注类别的名称。

创建images文件夹和labels文件夹,分别存放图片和标注文件,如下:

MyData/       
  ├── images/    # 原始图片文件所在目录
  ├── labels/     # 标注文件所在目录
  ├── predefined_classes.txt   # 标注类别定义 
  ├── splitYoloDataSet.py     # 数据集拆分脚本    

其中:

  •  predefined_classes.txt文件中的分类标签定义,例如:

  • splitYoloDataSet.py 脚本的内容如下:
im

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/415436.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Gazebo的模型下载。

git clone zouxu634866/gazebo_modelshttps://gitee.com/zouxu6348660/gazebo_models.git,并完成路径配置。 (本文提供了gitee下载,国外的Github下载较慢。)

16位单片机单片机S1C17153

16位单片机单片机 .16KB ROM / 2KB内存 * S1C17653对于程序开发很有用。 .产生具有内置振荡器的操作时钟。 - OSC3B振荡器电路:2MHz/1MHz/500kHz(类型)内部振荡器电路 -OSC1无振荡器电路:32.768 kHz(类型&#xf…

【C语言】linux内核ipoib模块 - ipoib_intf_init

一、ipoib_intf_init函数定义 int ipoib_intf_init(struct ib_device *hca, u8 port, const char *name,struct net_device *dev, struct ipoib_dev_priv *priv) {struct rdma_netdev *rn netdev_priv(dev);int rc;priv->ca hca;priv->port port;rc rdma_init_netde…

微信小程序(四)页面跳转

注释很详细&#xff0c;直接上代码 上一篇 新增内容 1.相对路径页面跳转 2. 绝对路径页面跳转 index.wxml <!-- navigator是块级元素&#xff0c;占一整行 --> <!-- 页面跳转url&#xff0c;相对路径 --> <navigator url"../logs/logs"><butto…

匿名/箭头函数,立即执行函数IIFE;函数声明式和函数表达式

目录 匿名/箭头函数&#xff1a;简洁 继承上一层作用域链的this 不绑定arguments,用rest参数 rest 参数&#xff1a;...真正的数组 因为没有function声明&#xff0c;所以没有原型prototype&#xff0c;所以不能作为构造函数 当函数体只有一句时&#xff0c;可省 return ,…

c++:基于c语言基础上的语法不同(1)

前言&#xff1a;此篇文章适合学完c语言基础概念的同学&#xff0c;是帮助c向c语言的同学快速掌握基本语法。 基础格式 #include<iostream>using namespace std; int main() {system("pause");return 0; } 输入&#xff1a; cin>>a;//a是输入内容 输出…

MySQL面试总结

MySQL优化 1.MySQL如何定位慢查询 1.1开源工具 1.2MySQL自带慢日志 1.3解答 2.EXPLAIN 2.1解答 3.什么是索引 4.B树 4.1数据结构对比 5.聚簇索引&#xff08;聚集索引&#xff09; 6.覆盖索引 7.索引创建原则 8.什么情况下索引失效 9.你对sql优化经验 10.事务 11.MVCC 11.主从…

力扣 | 438. 找到字符串中所有字母异位词

滑动窗口解题 示例 在s里面控制一个p字符串长度的滑动窗口&#xff0c;统计该滑动窗口中的每种字符出现的次数 import java.util.ArrayList; import java.util.Arrays; import java.util.List;public class Problem_438_FindAnagrams {public List<Integer> findAnagram…

「JavaSE」类和对象3

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;快来卷Java啦 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 类和对象3 &#x1f349;多态&#x1f34c;重写&#x1f34c;向上转型&向下转型&#x1f34c;静态绑定&动态绑定&#x…

FFmpeg之SWScale

文章目录 一、概述二、函数调用结构图三、Libswscale处理数据流程四、重要结构体4.1、SwsContext4.2、SwsFilter 五、重要函数5.1、sws_getContext5.1.1、sws_alloc_context5.1.2、sws_init_context 5.2、sws_scale5.2.1、SwsContext中的swscale()5.2.2、check_image_pointers5…

全网最详细!!Python 爬虫快速入门

1. 背景 最近在工作中有需要使用到爬虫的地方&#xff0c;需要根据 Gitlab Python 实现一套定时爬取数据的工具&#xff0c;所以借此机会&#xff0c;针对 Python 爬虫方面的知识进行了学习&#xff0c;也算 Python 爬虫入门了。 需要了解的知识点&#xff1a; Python 基础语…

three.js从入门到精通系列教程002 - three.js正交相机OrthographicCamera

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>three.js从入门到精通系列教程002 - three.js正交相机OrthographicCamera</title><script src"ThreeJS/three.js"></script><script src&qu…