Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question on pusht real data? #82

Open
johnnevins opened this issue May 20, 2024 · 1 comment
Open

Question on pusht real data? #82

johnnevins opened this issue May 20, 2024 · 1 comment

Comments

@johnnevins
Copy link

johnnevins commented May 20, 2024

Hi Cheng, impressive work and thanks for sharing!
When I use the code below to take a glimpse at the real data for pusht task, specifically replay_buffer.zarr, I found that for key 'robot_eef_pose', the first few lines of data looks like this:
0 1 2 3 4 5
0 0.533725 -0.006530 0.042214 2.221969 -2.220902 0.000002
1 0.533733 -0.006531 0.042218 -2.221880 2.220919 0.000019
2 0.534755 -0.006327 0.042264 -2.221999 2.220719 -0.000020
3 0.540700 -0.005669 0.042172 2.222212 -2.220670 -0.000082
4 0.553361 -0.005552 0.042226 -2.222025 2.220843 0.000048

Question: 1. what do these 6 dims represent respectively? 2.If it were (x,y,z,r,p,y), why does dim4&5 jump between +/- with adjacent timestamp?(e.g.2.221969 to -2.221880 as above) I assume the data is ordered in time as I checked the corresponding 'timestamp' data(code I use at the end), and the output is as below:
print(df_timestamp.head())
0
0 1672955667.4093015194
1 1672955667.5093014240
2 1672955667.6093015671
3 1672955667.7093014717
4 1672955667.8093016148

FYI, the code I use to get the 'robot_eef_pose' data:

import zarr
import pandas as pd

file_path = '/home/ubuntu/diffusion_policy/data/pusht_real/real_pusht_20230105/replay_buffer.zarr'
zarr_file = zarr.open(file_path, mode='r')

group_key = list(zarr_file.group_keys())[0]
group = zarr_file[group_key]

# List all arrays within the group
print("Array keys in group '%s': %s" % (group_key, list(group.array_keys())))
#Array keys in group 'data': ['action', 'robot_eef_pose', 'robot_eef_pose_vel', 'robot_joint', 'robot_joint_vel', 'stage', 'timestamp']

array_key = list(group.array_keys())[1]   #robot_eef_pose
robot_eef_pose = group[array_key][:]

df_robot_eef_pose = pd.DataFrame(robot_eef_pose)
print(df_robot_eef_pose.head())

the code I use to get the corresponding 'timestamp' info:

array_key = list(group.array_keys())[6]     #timestamp
timestamp = group[array_key][:]

df_timestamp = pd.DataFrame(timestamp)

pd.set_option('display.float_format', '{:.10f}'.format)

print(df_timestamp.head())

@johnnevins
Copy link
Author

Hi, one more question: in the real_pusht data that you provided, where is the zero origin of the world coordinate? Just to confirm, is it where the first joint (the base joint) is mounted to the mounting surface? Since I wasn't able to find related metadata info.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant