Code Monkey home page Code Monkey logo

ahmed-ai-01 / nao_mimc Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 9 KB

The Humanoid Robot Pose Mimicry project merges computer vision and robotics. It uses the Mediapipe library to capture human upper body poses from images and transmits them to a NAO humanoid robot. This interactive project explores seamless human-robot interaction through the replication of detected poses.

License: MIT License

Python 100.00%
cv2 mediapipe mimc nao naoqi-api naoqi-python naoqi-robot opencv openpose-estimation pose-estimation

nao_mimc's Introduction

Robotics Project: Humanoid Robot Pose Mimicry

Overview

This project involves capturing and processing human upper body pose information using the Mediapipe library and transmitting the relevant joint angles to a humanoid robot (NAO) using the NAOqi framework. The goal is to enable the robot to mimic the detected upper body pose of a human.

Components

  1. Human Pose Detection:(py3)

    • Uses the Mediapipe library to detect and extract key landmarks of the upper body from an input image.
    • Landmark coordinates are stored in a text file for further use.
  2. Robot Motion Control(py2.7):

    • Uses the NAOqi framework to control the motion of a humanoid robot based on the extracted pose information.
    • Joint angles are read from the text file and interpolated to mimic the detected upper body pose.

Requirements

  • OpenCV
  • Mediapipe
  • NAOqi (Python SDK for controlling NAO humanoid robots)

Setup

  1. Ensure all required libraries are installed (cv2, mediapipe, and naoqi).
  2. Update all paths
  3. Run the pose detection component to capture and store upper body pose information, make to sure to use pyhton 3.
  4. Run the robot motion control component to make the humanoid robot mimic the detected upper body pose, make sure to use python 2.7.

Documentation

For detailed documentation, including the Denavit-Hartenberg (DH) model of the NAO robot, please refer to [email protected]

Usage

  1. Adjust file paths and IP addresses in the code according to your setup.
  2. Fine-tune time durations in the robot motion code for smoother movements.

Note

  1. You can make the pose detection capture the landmarks from a video or even LiveFeed

Contribution

Feel free to contribute by opening issues or creating pull requests. Your feedback and enhancements are welcome!

nao_mimc's People

Contributors

ahmed-ai-01 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.