Implementing yolov4 target detection and tracking based on nao robot

Overview

基于nao机器人实现yolov4目标检测并进行跟踪

Introduction - 介绍

本项目为yolov4算法在nao机器人上的应用。

关于YOLOv4原理请参考YOLOv4原论文
本项目主要YOLOv4框架参考Bubbliiiing博主复现的代码
原博客链接:https://blog.csdn.net/weixin_44791964/article/details/106214657
复现代码链接:https://github.com/bubbliiiing/yolov4-pytorch
nao机器人单目测距方法请参考:https://wenku.baidu.com/view/bdc7eea7482fb4daa48d4b24.html
使用本项目前请先下载复现YOLOv4代码,并用py3.6文件夹中.py文件替换原文件中的同名文件


下图为目标跟踪流程图。由于nao机器人sdk库naoqi仅支持py2.7环境,本项目需分别运行py2.7环境下的"封装跟踪.py"文件和py3.6环境下的"predict.py"文件。
该项目可以让nao机器人转头寻找水瓶目标,检测到目标后通过单目测距向目标前进,当目标距离和nao小于1.09m时,程序完成运行。 image

Requirements - 必要条件

py2.7环境

numpy==1.16.6+vanilla
opencv-python==2.4.13.7
Pillow==6.2.2
pynaoqi==2.1.4.13

tips

naoqi库为软银官方提供的nao机器人sdk
naoqi库百度云链接:链接: https://pan.baidu.com/s/1kib-Bx9BjiOXCjrIycsIAw 提取码: 5k8b


py3.6环境

pytorch和cuda版本参考Bubbliiiing博文,其他缺少环境任意版本即可。 参考环境见py3.6环境文件(仅供参考,因为包含了很多自用无关的库)

Configuration - 配置

使用本项目前请先下载复现YOLOv4代码,并用py3.6文件夹中.py文件替换原文件中的同名文件
YOLOv4环境的配置方法:
1.将训练好的只检测水瓶类的权重文件放入model_data文件夹,并替换yolo.py中的初始路径
2.把model_data文件夹下的voc_classes.txt文件中物品类别改为只有bottle
3.更多问题详见Bubbliiiing博文。

本项目跟踪的只有水瓶类,所以训练时只提取了VOC2007数据集中的水瓶类别
只有水瓶类别的VOC2007数据集百度云链接:链接: https://pan.baidu.com/s/1d11f3lm2BvPtwxXuRYZ5HQ 提取码: w2kn
训练好的只检测水瓶类的权重百度云链接: 链接: https://pan.baidu.com/s/1Qt__j8RAOZeRbY8BjXitpA 提取码: 5u2b

Usage - 用法

配置好py3.6和py2.7环境后。先运行"封装跟踪.py"文件,再运行"predict.py"文件。
检测到的图片信息可见于img文件夹

Changelog - 更新日志

License - 版权信息

本项目证书为GPL-3.0 License,详见GPL-3.0 License.md

Code and dataset for ACL2018 paper "Exploiting Document Knowledge for Aspect-level Sentiment Classification"

Aspect-level Sentiment Classification Code and dataset for ACL2018 [paper] ‘‘Exploiting Document Knowledge for Aspect-level Sentiment Classification’’

Ruidan He 146 Nov 29, 2022
Official PyTorch implementation of MX-Font (Multiple Heads are Better than One: Few-shot Font Generation with Multiple Localized Experts)

Introduction Pytorch implementation of Multiple Heads are Better than One: Few-shot Font Generation with Multiple Localized Expert. | paper Song Park1

Clova AI Research 97 Dec 23, 2022
An implementation of IMLE-Net: An Interpretable Multi-level Multi-channel Model for ECG Classification

IMLE-Net: An Interpretable Multi-level Multi-channel Model for ECG Classification The repostiory consists of the code, results and data set links for

12 Dec 26, 2022
Source code for Acorn, the precision farming rover by Twisted Fields

Acorn precision farming rover This is the software repository for Acorn, the precision farming rover by Twisted Fields. For more information see twist

Twisted Fields 198 Jan 02, 2023
Source code release of the paper: Knowledge-Guided Deep Fractal Neural Networks for Human Pose Estimation.

GNet-pose Project Page: http://guanghan.info/projects/guided-fractal/ UPDATE 9/27/2018: Prototxts and model that achieved 93.9Pck on LSP dataset. http

Guanghan Ning 83 Nov 21, 2022
Rank 1st in the public leaderboard of ScanRefer (2021-03-18)

InstanceRefer InstanceRefer: Cooperative Holistic Understanding for Visual Grounding on Point Clouds through Instance Multi-level Contextual Referring

63 Dec 07, 2022
PyContinual (An Easy and Extendible Framework for Continual Learning)

PyContinual (An Easy and Extendible Framework for Continual Learning) Easy to Use You can sumply change the baseline, backbone and task, and then read

Zixuan Ke 176 Jan 05, 2023
[ECCV 2020] XingGAN for Person Image Generation

Contents XingGAN or CrossingGAN Installation Dataset Preparation Generating Images Using Pretrained Model Train and Test New Models Evaluation Acknowl

Hao Tang 218 Oct 29, 2022
Fast methods to work with hydro- and topography data in pure Python.

PyFlwDir Intro PyFlwDir contains a series of methods to work with gridded DEM and flow direction datasets, which are key to many workflows in many ear

Deltares 27 Dec 07, 2022
Computer Vision is an elective course of MSAI, SCSE, NTU, Singapore

[AI6122] Computer Vision is an elective course of MSAI, SCSE, NTU, Singapore. The repository corresponds to the AI6122 of Semester 1, AY2021-2022, starting from 08/2021. The instructor of this course

HT. Li 5 Sep 12, 2022
The code is an implementation of Feedback Convolutional Neural Network for Visual Localization and Segmentation.

Feedback Convolutional Neural Network for Visual Localization and Segmentation The code is an implementation of Feedback Convolutional Neural Network

19 Dec 04, 2022
Learning hidden low dimensional dyanmics using a Generalized Onsager Principle and neural networks

OnsagerNet Learning hidden low dimensional dyanmics using a Generalized Onsager Principle and neural networks This is the original pyTorch implemenati

Haijun.Yu 3 Aug 24, 2022
Official implementation for NIPS'17 paper: PredRNN: Recurrent Neural Networks for Predictive Learning Using Spatiotemporal LSTMs.

PredRNN: A Recurrent Neural Network for Spatiotemporal Predictive Learning The predictive learning of spatiotemporal sequences aims to generate future

THUML: Machine Learning Group @ THSS 243 Dec 26, 2022
Progressive Domain Adaptation for Object Detection

Progressive Domain Adaptation for Object Detection Implementation of our paper Progressive Domain Adaptation for Object Detection, based on pytorch-fa

96 Nov 25, 2022
[内测中]前向式Python环境快捷封装工具,快速将Python打包为EXE并添加CUDA、NoAVX等支持。

QPT - Quick packaging tool 快捷封装工具 GitHub主页 | Gitee主页 QPT是一款可以“模拟”开发环境的多功能封装工具,最短只需一行命令即可将普通的Python脚本打包成EXE可执行程序,并选择性添加CUDA和NoAVX的支持,尽可能兼容更多的用户环境。 感觉还可

QPT Family 545 Dec 28, 2022
Code for models used in Bashiri et al., "A Flow-based latent state generative model of neural population responses to natural images".

A Flow-based latent state generative model of neural population responses to natural images Code for "A Flow-based latent state generative model of ne

Sinz Lab 5 Aug 26, 2022
MMdet2-based reposity about lightweight detection model: Nanodet, PicoDet.

Lightweight-Detection-and-KD MMdet2-based reposity about lightweight detection model: Nanodet, PicoDet. This repo also includes detection knowledge di

Egqawkq 12 Jan 05, 2023
Red Team tool for exfiltrating files from a target's Google Drive that you have access to, via Google's API.

GD-Thief Red Team tool for exfiltrating files from a target's Google Drive that you(the attacker) has access to, via the Google Drive API. This includ

Antonio Piazza 39 Dec 27, 2022
Exadel CompreFace is a free and open-source face recognition GitHub project

Exadel CompreFace is a leading free and open-source face recognition system Exadel CompreFace is a free and open-source face recognition service that

Exadel 2.6k Jan 04, 2023
Tackling data scarcity in Speech Translation using zero-shot multilingual Machine Translation techniques

Tackling data scarcity in Speech Translation using zero-shot multilingual Machine Translation techniques This repository is derived from the NMTGMinor

Tu Anh Dinh 1 Sep 07, 2022