Skip to content

kucukbahadir/humanoidRobotControl

Repository files navigation

Bachelor Thesis

Humanoid Robot Control from Human Joint Angles via 2D Camera


by

M. Bahadir Kucuk



Supervisor: Dr. Kim Baraka

Second Reader: Prof. Dr. Koen Hindriks

Contribution

The goal of this research is to investigate how feasible it is to operate a humanoid robot using human joint angles captured by a 2D camera.

  • Open-closed hand status classifier
  • Angles of the human head, shoulders, and elbows
  • Tailoring angles to the robot
  • Interface
  • Ground truth angle comparison results
  • Experiment results

Packages

  • Please see requirements.txt

Installation

  • Programming language: Python3 (recommended version is 3.7 or above)
  • Clone the repository with
git clone https://github.com/kucukbahadir/BachelorThesis.git
  • Install requirement packages with
pip install -r requirements.txt

Usage

Run both separately

  • main.py for the interface
  • robot_joint_control.py in "Simulation" folder for the simulation

Place both windows side by side and fix your camera at the distance at least one and half meter in front of you and start to control your humanoid robot.

Methodology

Please read the methodology section of the thesis. link example

Output

Our approach gives an output of JSON file and use this output angles in humanoid robot control.

Output file example

{
  "Angles" : {
    "Head" : {
      "Pitch": {
        "Degree": null,
        "Radian": null
      },
      "Yaw": {
        "Degree": null,
        "Radian": null
      }
    },
    "Shoulders": {
      "Left": {
        "Roll": {
          "Degree": null,
          "Radian": null
        },
        "Pitch": {
          "Degree": null,
          "Radian": null
        }
      },
      "Right": {
        "Roll": {
          "Degree": null,
          "Radian": null
        },
        "Pitch": {
          "Degree": null,
          "Radian": null
        }
      }
    },
    "Elbows": {
      "Left":{
        "Roll": {
          "Degree": null,
          "Radian": null
        }
      },
      "Right": {
        "Roll": {
          "Degree": null,
          "Radian": null
        }
      }
    },
    "Wrists": {
      "Left":{
        "Roll": {
          "Degree": null,
          "Radian": null
        }
      },
      "Right": {
        "Roll": {
          "Degree": null,
          "Radian": null
        }
      }
    },
    "Hip": {
      "Left": {
        "Roll" : {
          "Degree": null,
          "Radian": null
        },
        "Pitch": {
          "Degree": null,
          "Radian": null
        }
      },
      "Right": {
        "Roll": {
          "Degree": null,
          "Radian": null
        },
        "Pitch": {
          "Degree": null,
          "Radian": null
        }
      }
    }
  },
  "Status": {
    "Hands" : {
      "Left" : {
        "is_open" : true
      } ,
      "Right" : {
        "is_open" : false
      }
    }
  }
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages