allenai / objaverse-xl

🪐 Objaverse-XL is a Universe of 10M+ 3D Objects. Contains API Scripts for Downloading and Processing!
https://objaverse.allenai.org/
Apache License 2.0
704 stars 40 forks source link

Dataset format similar to objaverse 1.0 ? #10

Open hunoutl opened 11 months ago

hunoutl commented 11 months ago

Currently the cache system available with your API does not allow full storage of all 3D objects.. I am working on a cluster using GPFS as a file system, in the current state of the API, I cannot save as many unique files per level of my tree. Block cutting on Objaverse 1.0 was very correct.

Do you plan to offer a dataset storage format similar to Objaverse 1.0 ?

mattdeitke commented 11 months ago

Hi @hunoutl, I'm not really sure what you mean. Can you clarify?

hunoutl commented 11 months ago

I download a sample of objaverse-XL :

├── github
│   └── github.parquet
├── hf-objaverse-v1
│   ├── glbs
│   │   ├── 000-001
│   │   │   └── d76c718935404a2e88121eab4cbd1679.glb
│   │   ├── 000-006
│   │   │   ├── 8ada22e724604370b890aa90162bf7b8.glb
│   │   │   └── c48637d694b04666b93f892dfdc30cdc.glb
│   │   ├── 000-007
│   │   │   ├── 8c5ac2a5c9e3493995a64c4ca761d4ed.glb
│   │   │   └── 908bf91da9474396a9db8cf34b80508d.glb
│   │   ├── 000-009
│   │   │   ├── 3f61c303139f4d87b644b467ce64e1c1.glb
│   │   │   └── 804dc4846337436a822ddfb0bc5b4f6c.glb
│   │   ├── 000-012
│   │   │   └── f9ff963833c8475093c2c3a37f339c1e.glb
│   │   ├── 000-018
│   │   │   └── 28c1d71b715a4fc2a760bd5403c65516.glb
│   │   ├── 000-020
│   │   │   ├── 2b3aded3a111459e924811a1d203484f.glb
│   │   │   └── b6871cbd5d8d4fdf8451b695e2fd62fa.glb
│   │   ├── 000-024
│   │   │   └── 808e3269d21446b7b8e5c595be6f64d7.glb
│   │   ├── 000-025
│   │   │   └── 724643e1bd244827802ab25e56ca809b.glb
│   │   ├── 000-026
│   │   │   ├── 21e7a8a0d07b4d6999d8374180d142eb.glb
│   │   │   ├── 36144f6313054dc3947a6e25557f4eec.glb
│   │   │   ├── 5d2eb860261c4eefb46217b3e2f7080c.glb
│   │   │   └── 9ff56a5bb058427285819e5aebd6383a.glb
│   │   ├── 000-027
│   │   │   └── df5211e734f044229951a0c46c3f83ba.glb
│   │   ├── 000-028
│   │   │   └── 4d465c98a30e498f9ccca23e5bd40e81.glb
│   │   ├── 000-029
│   │   │   └── 73bda95cd014445799fdcea110e2034f.glb
│   │   ├── 000-034
│   │   │   ├── 2b875c75e4ee429cbf3b0ba9e39188ca.glb
│   │   │   ├── c4d2155d1b504e98addc0830692b8f99.glb
│   │   │   └── f0d3f81512cc4e7092325d9225ccead8.glb
│   │   ├── 000-035
│   │   │   ├── 5884a0f5200c44ceaa7d0399bea577f9.glb
│   │   │   └── 8c3a63f1ae074d088425e2a0a276504e.glb
│   │   ├── 000-038
│   │   │   └── f94cadba589240c9811f04a922f5a78b.glb
│   │   ├── 000-041
│   │   │   └── 85f07bd273b548d5af1a87898c2b5ec4.glb
│   │   ├── 000-043
│   │   │   ├── 01cc4d7de4c44127bbc2bf92dffcbb75.glb
│   │   │   ├── 3af628b2e93f4d1389ee67bf114d3370.glb
│   │   │   └── a48a5dae0d5d4a318eef30d33f191096.glb
│   │   ├── 000-048
│   │   │   └── 03aa6c64dfcc4e6bb931ffd33f94af26.glb
│   │   ├── 000-049
│   │   │   └── d13e72515cb04404985095f149af783e.glb
│   │   ├── 000-055
│   │   │   └── f3ba45138ab043e682ab0055f9f40b03.glb
│   │   ├── 000-058
│   │   │   └── f32cdd11cce842b794c710f0fe58c2ee.glb
│   │   ├── 000-060
│   │   │   └── 6598e7a30ae34f9fa1f7cd423e8a24bf.glb
│   │   ├── 000-065
│   │   │   └── 5883b64a125145968dfdb1b69339c871.glb
│   │   ├── 000-067
│   │   │   └── 7b0a05e7b5f44f1d9cc4c9a6988cdfbc.glb
│   │   ├── 000-072
│   │   │   ├── 6da15b5ec68e45bb87450c1234bf0f61.glb
│   │   │   └── 93c1d19906e64390a24812b8a6ad9562.glb
│   │   ├── 000-076
│   │   │   └── 4548b79a4c7e45d1b760efb9d26b6656.glb
│   │   ├── 000-079
│   │   │   ├── 6125fcd1064c4fc593688269ee569408.glb
│   │   │   ├── 655ceaedc584486789b35088fb6ce231.glb
│   │   │   └── f91b465edb664ccb8653eb28771c7bf4.glb
│   │   ├── 000-084
│   │   │   └── 468067ec65264185bf51948cbacbf389.glb
│   │   ├── 000-085
│   │   │   └── cc2c9ac5149b405382d718cd85937f1c.glb
│   │   ├── 000-086
│   │   │   └── 4ee1c7154ccc408696b6e2d323b16696.glb
│   │   ├── 000-087
│   │   │   └── ae25f14929c445f697d890f8b59ddee5.glb
│   │   ├── 000-089
│   │   │   ├── 1115e63c4cd947fe8faa16c3eab35a42.glb
│   │   │   ├── 594874dae99d428d8add3bb88eabf754.glb
│   │   │   ├── 94cdf048d5524095b3a6c4dacd1946f5.glb
│   │   │   ├── dd94cdc1ac0f4941b405f0347e618655.glb
│   │   │   └── ef08e3c8ddab471b8b665df0133989a6.glb
│   │   ├── 000-090
│   │   │   └── aaeedf55e7f54d19828822571b0d883a.glb
│   │   ├── 000-091
│   │   │   └── c12bdc4aa3c94a1a9a2be7dc2d693b1d.glb
│   │   ├── 000-092
│   │   │   ├── 0db602dfa85e4f70968833bfd4d20d22.glb
│   │   │   └── 3715c86fbfae4177bcd5873b2270bb9f.glb
│   │   ├── 000-093
│   │   │   ├── 0bfacb5c595f4cfea6a9a61880f74be8.glb
│   │   │   └── 55a9a1eedb8641928be2be4141e447e6.glb
│   │   ├── 000-094
│   │   │   └── 857fced82f62473b92c19494234e2ed8.glb
│   │   ├── 000-096
│   │   │   └── 6a0715651f3c45318a9137e2e7a266c6.glb
│   │   ├── 000-097
│   │   │   └── 73a08e736d904b229564f354aeed1dc6.glb
│   │   ├── 000-099
│   │   │   └── 51221227c2904e8fb77ac6962c36a800.glb
│   │   ├── 000-100
│   │   │   └── a07468383a7844a5bf932db208dfbcb6.glb
│   │   ├── 000-103
│   │   │   └── ac5dc79712814b0d8be2e1e594c3b3d0.glb
│   │   ├── 000-104
│   │   │   └── c1c6e68260894d93b730139cb49b7aec.glb
│   │   ├── 000-107
│   │   │   ├── 1ce6263cde704dbf9ccc81e0404c3168.glb
│   │   │   ├── a226e0e491cd40d1bf7d47e79275b330.glb
│   │   │   └── c7c2d52769c04be49ff381ab30a7f35d.glb
│   │   ├── 000-108
│   │   │   └── 35de3997e6d34e9e883c76751a5bc557.glb
│   │   ├── 000-109
│   │   │   └── 66ebff2a3f584fa09f9fcb8eb67b6cc4.glb
│   │   ├── 000-112
│   │   │   ├── 7af8608d531f4e2fa74fa056f33a6558.glb
│   │   │   └── b08872bf147a4768ac4ba117d08c27ac.glb
│   │   ├── 000-113
│   │   │   ├── 9fde4af0cd68446294181c22b20396c4.glb
│   │   │   └── d8c76cc7dafa4aae96a138a7e6d6421e.glb
│   │   ├── 000-117
│   │   │   └── 16d4bbcec1c64a8799df4b22ff422c11.glb
│   │   ├── 000-118
│   │   │   ├── c9d13217f4cc4f098d8c221a9dbbbc27.glb
│   │   │   └── d04df6ed1aef44f6b93a2b062e525b45.glb
│   │   ├── 000-122
│   │   │   ├── 6eb74637605445a78f1579de592dc923.glb
│   │   │   └── 8de8f6328a904fc6a92ca3b626ac8aa8.glb
│   │   ├── 000-124
│   │   │   └── 8a2ed0e1a463428682017e87a2431252.glb
│   │   ├── 000-125
│   │   │   └── a92f3f5c0b454561af0d98e9f9dd8b1b.glb
│   │   ├── 000-130
│   │   │   └── c67f61fa444044bcb88ec3e28f0ca7ac.glb
│   │   ├── 000-131
│   │   │   └── f91bf938ecb24e73a45f6f4bd6928d9d.glb
│   │   ├── 000-132
│   │   │   └── c73c1a4e369c4ce8a71ef92abee3a13c.glb
│   │   ├── 000-133
│   │   │   ├── a8d13a69e7b34432830d83d7d18f1fc7.glb
│   │   │   └── d2d38e11f85d42468df47322373d2189.glb
│   │   ├── 000-134
│   │   │   └── cefb3074fb484ea1aca322005cc198e7.glb
│   │   ├── 000-135
│   │   │   ├── 2d012e643288403baa8f1c145779ba40.glb
│   │   │   ├── 41c031f582064a419541281eff94b03d.glb
│   │   │   └── 4b3a11df85c446bb9b7fd7ff4a4befcd.glb
│   │   ├── 000-136
│   │   │   └── 729e5bc464454b5099445538e7785a19.glb
│   │   ├── 000-139
│   │   │   └── 337b9d3ef61e4623bfebd95e7e333ee0.glb
│   │   ├── 000-140
│   │   │   └── ae0329aeb5eb456687227f2fc0f96819.glb
│   │   ├── 000-142
│   │   │   ├── 325e6e924f194fdf81c2c8c82eb87881.glb
│   │   │   ├── 6d5a85d8e0fc4e2c86a17193531fcc8a.glb
│   │   │   └── 9e963c257372435b8f4a538a34c42965.glb
│   │   ├── 000-143
│   │   │   ├── 3553a459d02c4a2f9a8117d84404e850.glb
│   │   │   ├── 49ad7548d68945ef9d434482ea06ea00.glb
│   │   │   └── b3c803579f1043c9adc0d0edf83b438c.glb
│   │   ├── 000-150
│   │   │   └── 6fee286c73214638ab59e44744dc8987.glb
│   │   ├── 000-151
│   │   │   ├── 0f4087ccb7d74e649a8289eb6a8d0c2a.glb
│   │   │   └── 3d2fe2c666504d8eb1331e3a4e9d832e.glb
│   │   ├── 000-153
│   │   │   ├── 29d97b01365d44fc8f69042f01530297.glb
│   │   │   └── d0adf9624c014f1bbe3e3358e46ad2d3.glb
│   │   ├── 000-154
│   │   │   └── bc79ba06d757402e99a4d31804aef183.glb
│   │   ├── 000-156
│   │   │   └── 23a440b440a0407f86013589909a18f6.glb
│   │   └── 000-157
│   │       └── 606042d0a3e949fab6f73130a78bae5d.glb
│   └── object-paths.json.gz
├── sketchfab
│   └── sketchfab.parquet
├── smithsonian
│   ├── objects
│   │   ├── 00311ba1-b3fe-53d5-b798-efc679912f4e.glb
│   │   ├── 0fc021b6-fc83-5cde-bfe4-75175ef2eea8.glb
│   │   ├── 150a3ecf-ecb5-538d-b429-f6bc1754d779.glb
│   │   ├── 1c0239a0-058e-511a-9a08-ab53d4cca2ed.glb
│   │   ├── 2b946275-89ea-5ac5-a9fc-f100ff6862a9.glb
│   │   ├── 41043bf2-ec3b-531c-927d-aa9f104ae3db.glb
│   │   ├── 4d108743-ba3d-593b-890e-f14027e1ccb7.glb
│   │   ├── 72ca2aa2-558e-52d4-b14f-a696bfde3d4c.glb
│   │   ├── 75b9ea26-b842-59eb-974a-5de2d25a8095.glb
│   │   ├── 9080df26-8b9a-5c56-8925-4cddd20535e7.glb
│   │   ├── 98e17297-5df5-5666-a5c0-883a6c1dce94.glb
│   │   ├── 9d853a19-9d03-59ba-8554-17f9d3b20529.glb
│   │   ├── a6a805f8-b6bc-5bdf-b00a-344a2e399ff5.glb
│   │   ├── b312ee45-4b05-54d6-8129-8adcda44a6ef.glb
│   │   ├── b31e1db9-c458-59ee-a1d9-e49e28775f66.glb
│   │   ├── b79eb9aa-8a43-5b73-ace8-9d1bc0d14050.glb
│   │   ├── ba52b378-a79e-53c5-bde9-b4b6912580d7.glb
│   │   ├── be7bcd96-ad8a-5427-aa04-34b93ccd2d3b.glb
│   │   ├── c6c4560d-9b16-56ae-9733-feef8f1ad608.glb
│   │   ├── cc8b0710-4010-50e7-8ffa-b017a7000d65.glb
│   │   ├── ce34e608-d65b-5aa1-b121-198292a9a6d7.glb
│   │   ├── d38863cf-d34f-5f93-859e-4d6e156bd802.glb
│   │   ├── e99f669f-a2f7-53bc-a09b-6d6efe9d1a26.glb
│   │   ├── e9ebd562-b0c3-5812-959f-e2b48586e416.glb
│   │   └── f98377fd-08c1-57c8-a314-4931dd9c50ca.glb
│   └── smithsonian.parquet
└── thingiverse
    ├── thing-1537667-file-2381643.stl
    ├── thing-1627488-file-2526193.stl
    ├── thing-1994531-file-3118827.stl
    ├── thing-2230090-file-3532531.stl
    ├── thing-2732163-file-4516738.stl
    ├── thing-2940409-file-4989556.stl
    ├── thing-2963119-file-5039317.stl
    ├── thing-2982989-file-5083262.stl
    ├── thing-3382840-file-5962984.stl
    ├── thing-4247369-file-7891786.stl
    ├── thing-4265141-file-7942211.stl
    ├── thing-4290630-file-8007146.stl
    ├── thing-4560604-file-8573556.stl
    ├── thing-4595865-file-8690985.stl
    ├── thing-4686883-file-9001566.stl
    ├── thing-4727070-file-9134195.stl
    ├── thing-4804105-file-9385686.stl
    ├── thing-4967701-file-10394629.stl
    ├── thing-5183385-file-11270069.stl
    ├── thing-5278544-file-11545966.stl
    ├── thing-5808540-file-12645307.stl
    ├── thing-5852440-file-12731341.stl
    ├── thing-6033480-file-13102066.stl
    ├── thing-908798-file-1435799.stl
    ├── thing-957494-file-1513060.stl
    └── thingiverse.parquet

Here for example, the thingiverse object are all save in the same level while hf-objaverse-v1 groups it in blocks with intermediate folder 000-xxx

mattdeitke commented 11 months ago

I see, thanks for clarrifying! This isn't that much of an issue when downloading to s3, as paths there don't really matter.

Implementing it shouldn't be too difficult, but I don't have much bandwidth to implement this at the moment. PRs are welcome :) If you make a PR, I'd just add an optional folder_structure parameter, which sets it to be grouped by block or the current way. The current way would be necessary to continue supporting for backwards compatibility reasons, and for caching, for people who already downloaded the dataset. So, I would still set the current way to be the default.

kireoxdz commented 4 months ago

@hunoutl ,Could you please send me a sample case? My network is not good. I want to see the sample so that I can make my own data set. Thank you. This is my email address “1196345479@qq.com”