Skip to main content

Real and Proxy apple picks experiments

Project description

PickApp

Package to perform apple picking experiments with a UR5 robotic manipulator and a 3-finger underactuated gripper.

Contact

Alejandro Velasquez
velasale@oregonstate.edu
Robotics PhD Student

Description

This package takes datasets of apple picks performed with a robotic manipulator UR5e and a robotic gripper as end effector. The picks are performed in a real tree and in an apple proxy that emulates the physics of the apple tree. Hence, this package is useful for the user to:

  • Compare time-series plots from real and proxy picks.
  • Obtain statistics about the experiments, such as the distribution of cartesian and angular noise.
  • Do basic machine learning to check if - with the given data - it is possible to train a classifier and predict the outcome of the pick (e.g. successful, failed).

For brief usage instructions, type:

$ python compare_pics.py --help
$ python machine_learning.py --help
$ python metadata_stats.py --help 

Examples

module: compare_picks.py

The following example analyzes variable 'Force_x', among the 'failed' picks case, and does the Dynamic Time Warping (DTW) analysis during the 'pick' phase.

$ python compare_picks.py --variable force_z --case failed --phase pick

It outputs a time-series plot with the closest real and proxy picks. It also outputs a .csv file with a list of the real and proxy picks that are comparable. Comparable picks are the ones where the pose of the robot with respect to the apple is the same. These files are stored in the sub-folder results.

Image

module: machine_learning.py

The following example runs a Random Forest Classifier (RFC), with 10 experiments to account for the classifier's stochasticity, with a depth of 5 branches, and utilizes 5 features.

$ python machine_learning.py --experiments 10 --depth 5 --feature 5 --classifier rfc 

It outputs a boxplot with the classifier's accuracies during the experiments. The boxplot gets stored in a .pdf file, along with a .txt file with the confusion matrix of the best accuracy. These files are stored in the sub-folder results.

Image

module: metadata_stats.py

In the following example, the statistic analysis is run for the dataset 3_proxy_winter22_x1.

$ python metadata_stats.py --dataset 3_proxy_winter22_x1

It outputs .pdfs with box-plots of the angular and cartesian noise. It also outputs a .txt file with Mean, SD and percentiles of each noise. These files are stored in the sub-folder results.

x_noises
Mean: -0.012SD: 0.014Percentiles: [-0.02  -0.01   0.003]
y_noises
Mean: -0.005SD: 0.01Percentiles: [-0.015 -0.007  0.   ]
z_noises
Mean: -0.012SD: 0.006Percentiles: [-0.015 -0.01  -0.005]
roll_noises
Mean: -4.846SD: 12.74Percentiles: [-10.  -5.   5.]
pitch_noises
Mean: -4.382SD: 12.627Percentiles: [-10.   0.   5.]
yaw_noises
Mean: 0.0SD: 0.0Percentiles: [0. 0. 0.]

Installation

Tips

Tips to write better functions
https://pybit.es/articles/writing-better-functions/

Git cheat-sheet
https://education.github.com/git-cheat-sheet-education.pdf

MarkDown cheat-sheet
https://www.markdownguide.org/cheat-sheet/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pickApp-0.0.1.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pickApp-0.0.1-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file pickApp-0.0.1.tar.gz.

File metadata

  • Download URL: pickApp-0.0.1.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5

File hashes

Hashes for pickApp-0.0.1.tar.gz
Algorithm Hash digest
SHA256 621d9957bb72266432ae72455219db84e4411ff0dd4bf2eb8201c3b21664999a
MD5 ced015d84b0139beea4a12223ecd85af
BLAKE2b-256 4325204be2ade57a9acb2025ff6cb36bc0c88a5f3a02ebcfca66cc4ff2ee54cc

See more details on using hashes here.

File details

Details for the file pickApp-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pickApp-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5

File hashes

Hashes for pickApp-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dde267ca361df7d0199b2f2890e771582d077c87bcc927746d133217b9e4897c
MD5 1e2e47be97fb566beb3751891239608d
BLAKE2b-256 1b0cd1d46608c1ed8ee9bb5e9e735692806641ea502a10985680656e3ebf7713

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page