全流程机器视觉工程开发(一)环境准备,paddledetection和labelme

本文主要是介绍全流程机器视觉工程开发(一)环境准备,paddledetection和labelme,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

我现在在准备做一个全流程的机器视觉的工程,之前做了很多理论相关的工作。大概理解了机器视觉的原理,然后大概了解了一下,我发现现在的库其实已经很发展了,完全不需要用到非常多的理论,只需要知道开发过程就可以了,甚至paddlex已经直接有了傻瓜式模型训练的软件,所以我现在准备来做一个全流程机器视觉工程开发,不涉及过多理论。

准备

现在准备一下机器视觉工程的前情提要。

我准备使用paddledetection来做机器视觉。什么是paddleDetection?你可以理解为paddlepaddle对于目前主流的机器学习模型做了一些整合,只需要使用paddleDetection库就可以做一个很方便的训练、预测等工作。

准备好paddledetection之后,也就是我们的模型工具之后,还需要对现有图片做一些简单的划分工作,这里就需要用到labelme工具来进行.

在这里插入图片描述

环境安装

我这个教程和别的教程不太一样。因为年代久远,paddledetection库的原始安装方式已经不太适用了,所以我这里重新写一个paddledetection安装方式。

主要流程大概如下:

  1. 安装anaconda
  2. 安装paddle库
  3. 安装CUDA库
  4. 去github上下载paddledetection仓库
  5. 给自己安装pycocotools和lap库
  6. 直接安装paddledetection的依赖包requirements.txt
  7. 安装paddledetection

流程

  1. 安装anaconda
    这步略,不知道的可以浏览:Anaconda安装教程(超详细版)

  2. 安装paddle库
    这步略,参考paddle官网,不行就自己在csdn上搜,或者看我往期
    这里给出官网链接:开始使用

  3. 安装CUDA库
    这步略,参考本人往期文章:简易机器学习笔记(十)Windows下 PaddlePaddle配置CUDA加速环境

  4. 去github上下载paddledetection仓库
    github链接:PaddleDetection
    你要做的就是直接把这个仓库clone到本地,拉下来的项目大概是这样的

在这里插入图片描述
里面是这一大堆东西,暂时先不管是干嘛的,只需要先放在这里就可以了。

  1. pycocotools和lap库
    到一般的教程了,这里会告诉你直接去安装requirements.txt,但是很多人现在可能会直接报错numpy的问题,这个可能是因为库实在是年久失修了,主要出问题的库实际上就那么两个,一个是pycocotools,一个是lap

首先可以尝试一下能不能直接安装这两个库,也就是直接尝试以下两条命令

pip install pycocotools
pip install lap

一般情况下这个pycocotools是没问题的,出问题的是这个lap库,我这里主要演示lap库怎么手动安装,pycocotools也是同理

首先我们找到两个库的github地址:

pycocotools
lap

把这两个库clone到本地,大概是这样

在这里插入图片描述
在cmd中使用python尝试安装这个setup.py文件,指令大概是:

#path/to/setup.py指代setup.py的路径
python path/to/setup.py install 

注意这条指令需要使用setuptools,怎么安装这个库不过多赘述了

一般这样手动安装就可以正常安装成功了,pycocotools和lap库都是这样安装的。

  1. 直接安装paddledetection的依赖包requirements.txt

lap库和pycocotools安装完毕后,基本上问题就不大了。现在只需要使用以下指令来对paddledetection包中的requirements进行安装就行了

#path/to/requirements.txt 指代paddledetection库下的requirements.txt的路径
pip install -r path/to/requirements.txt

我们可以打开requirements.txt来看一看,里面也只有一些库的名字而已

在这里插入图片描述

  1. 安装paddledetection
    到这里基本上就快安装完了,只需要最后一步,就是安装paddledetection,流程和安装lap库差不多
#path/to/setup.py 指代paddledetection库下的setup.py的路径
python path/to/setup.py install 

数据标注工具labelme

刚刚我们安装完了paddledetection库,也就是准备好模型,接下来要准备的就是数据标注工具labelme

这个比较简单,直接参考博客:添加链接描述

这篇关于全流程机器视觉工程开发(一)环境准备,paddledetection和labelme的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/619953

相关文章

Python38个游戏开发库整理汇总

《Python38个游戏开发库整理汇总》文章介绍了多种Python游戏开发库,涵盖2D/3D游戏开发、多人游戏框架及视觉小说引擎,适合不同需求的开发者入门,强调跨平台支持与易用性,并鼓励读者交流反馈以... 目录PyGameCocos2dPySoyPyOgrepygletPanda3DBlenderFife

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

Spring Boot从main方法到内嵌Tomcat的全过程(自动化流程)

《SpringBoot从main方法到内嵌Tomcat的全过程(自动化流程)》SpringBoot启动始于main方法,创建SpringApplication实例,初始化上下文,准备环境,刷新容器并... 目录1. 入口:main方法2. SpringApplication初始化2.1 构造阶段3. 运行阶

使用Go实现文件复制的完整流程

《使用Go实现文件复制的完整流程》本案例将实现一个实用的文件操作工具:将一个文件的内容完整复制到另一个文件中,这是文件处理中的常见任务,比如配置文件备份、日志迁移、用户上传文件转存等,文中通过代码示例... 目录案例说明涉及China编程知识点示例代码代码解析示例运行练习扩展小结案例说明我们将通过标准库 os