HairDeck / config.json
OxBee's picture hyz317's picture
Duplicate from hyz317/HairDeck
cb4182e
Raw History Blame Contribute Delete
8.98 kB
{
"name": "HairDeck",
"format": "safetensors (state dict; args, step and token dim as JSON in the metadata key hairdeck)",
"license": "apache-2.0",
"manifest": "MANIFEST.json",
"models": {
"card_vae": {
"checkpoint": "ckpt/card_vae/model.safetensors",
"params_million": 8.07
},
"point_cloud_dit": {
"checkpoint": "ckpt/pointcloud_model/model.safetensors",
"params_million": 181.3,
"sampling": "scripts/test.py pointcloud (the test set: 50 Euler steps, CFG 2, seeds 0, 1, 2 in results/pointcloud/seed<k>, then the evaluation)"
},
"chain_dit": {
"checkpoint": "ckpt/chain_model/model.safetensors",
"params_million": 30.5,
"sampling": "scripts/test.py chains (the test set on the artists' cards: 50 Euler steps, CFG 2, seeds 0, 1, 2 in results/chains/seed<k>, then the evaluation; --cards results/pointcloud: on the point-cloud model's cards, chain seed k on card seed k)"
},
"image_dit": {
"checkpoint": "ckpt/image_model/model.safetensors",
"about": "the image model: RGB input (DINOv3 ViT-L/16 tokens of the 448 px crop), head frame, widened synthetic augmentation, restyled renders mixed in with p 0.33, initialised from the point-cloud model, 100K steps",
"params_million": 182.3,
"sampling": "scripts/image_to_hair.py IMAGE --out OUT (hairdeck.infer.image.Pipeline: Euler 50, CFG 2, seed 0)"
},
"color_dit": {
"checkpoint": "ckpt/color_model/model.safetensors",
"about": "the colour model: the image model's network fine-tuned to predict 16 CIELAB colours along every generated card from the 448 px crop and the person matte; trained on renders of the training hairstyles with the colours of their VRM materials, starting from the image model",
"params_million": 183.5,
"sampling": "scripts/image_to_hair.py IMAGE --out OUT (hairdeck.infer.image.Pipeline: one pass on the clean card tokens of every variation)"
}
},
"data": {
"avatar_body": {
"files": [
"data/avatar/body.json",
"data/avatar/avatar.vrm",
"data/avatar/hair.glb"
],
"about": "the avatar body of the VRM export (hairdeck.vrm; a VRoid Studio template avatar): the VRM, its original hair (hair.glb, for the check that the export removed it) and body.json with its head-frame fit and the VRM meta written into exported files (author hyz317, Apache-2.0)"
},
"demo_examples": {
"files": [
"data/demo_examples/examples.json",
"data/demo_examples/ex01.png",
"data/demo_examples/ex02.png",
"data/demo_examples/ex03.png",
"data/demo_examples/ex04.png",
"data/demo_examples/ex05.png",
"data/demo_examples/ex06.png",
"data/demo_examples/ex07.png",
"data/demo_examples/ex08.png",
"data/demo_examples/ex09.png",
"data/demo_examples/ex10.png",
"data/demo_examples/ex11.png",
"data/demo_examples/ex12.png"
],
"about": "the 12 example images of the demo (examples.json lists them in the order shown)"
},
"test_data": {
"files": [
"data/test_cards_orig/",
"data/test_cards_orig_dirs.npz",
"data/spring/chains_test.jsonl",
"data/spring/chains_test_head.npz",
"data/cards_test.npz",
"ckpt/card_vae/latents_test_head.npy",
"data/head_frame_test.npz",
"data/head_params_test.json"
],
"about": "evaluation data of scripts/test.py (file names: test row, 000 to 099): the cards of the original hair meshes of the 100 test cases (CHARM-format card json, 8 columns; for the 24 combined-template cases, of their two template meshes) and the true width direction at each of their control points (test_cards_orig_dirs.npz), read by the pointcloud test; the spring-bone chains of the test characters (as extracted from their VRM files, and as chain tokens in the head frame) and the card features and head-frame card latents of the GT cards that the chain model is conditioned on, and the test characters' head fits and head frames, read by the chains test"
},
"inference_data": {
"files": [
"data/token_stats.json",
"data/token_stats_head.json",
"data/head_frame_train.npz",
"data/spring/chain_stats_head.json"
],
"about": "card token normalisation (point-cloud and head-frame models), the canonical head of the head frame (W, O; head proxy), chain token statistics of the chain DiT"
}
},
"files": [
"ckpt/card_vae/latent_stats.json",
"ckpt/card_vae/latent_stats_head.json",
"ckpt/card_vae/latents_test_head.npy",
"ckpt/card_vae/model.safetensors",
"ckpt/card_vae/stats.json",
"ckpt/chain_model/model.safetensors",
"ckpt/color_model/model.safetensors",
"ckpt/image_model/model.safetensors",
"ckpt/pointcloud_model/model.safetensors",
"data/avatar/avatar.vrm",
"data/avatar/body.json",
"data/avatar/hair.glb",
"data/cards_test.npz",
"data/demo_examples/ex01.png",
"data/demo_examples/ex02.png",
"data/demo_examples/ex03.png",
"data/demo_examples/ex04.png",
"data/demo_examples/ex05.png",
"data/demo_examples/ex06.png",
"data/demo_examples/ex07.png",
"data/demo_examples/ex08.png",
"data/demo_examples/ex09.png",
"data/demo_examples/ex10.png",
"data/demo_examples/ex11.png",
"data/demo_examples/ex12.png",
"data/demo_examples/examples.json",
"data/head_frame_test.npz",
"data/head_frame_train.npz",
"data/head_params_test.json",
"data/spring/chain_stats_head.json",
"data/spring/chains_test.jsonl",
"data/spring/chains_test_head.npz",
"data/test_cards_orig/000.json",
"data/test_cards_orig/001.json",
"data/test_cards_orig/002.json",
"data/test_cards_orig/003.json",
"data/test_cards_orig/004.json",
"data/test_cards_orig/005.json",
"data/test_cards_orig/006.json",
"data/test_cards_orig/007.json",
"data/test_cards_orig/008.json",
"data/test_cards_orig/009.json",
"data/test_cards_orig/010.json",
"data/test_cards_orig/011.json",
"data/test_cards_orig/012.json",
"data/test_cards_orig/013.json",
"data/test_cards_orig/014.json",
"data/test_cards_orig/015.json",
"data/test_cards_orig/016.json",
"data/test_cards_orig/017.json",
"data/test_cards_orig/018.json",
"data/test_cards_orig/019.json",
"data/test_cards_orig/020.json",
"data/test_cards_orig/021.json",
"data/test_cards_orig/022.json",
"data/test_cards_orig/023.json",
"data/test_cards_orig/024.json",
"data/test_cards_orig/025.json",
"data/test_cards_orig/026.json",
"data/test_cards_orig/027.json",
"data/test_cards_orig/028.json",
"data/test_cards_orig/029.json",
"data/test_cards_orig/030.json",
"data/test_cards_orig/031.json",
"data/test_cards_orig/032.json",
"data/test_cards_orig/033.json",
"data/test_cards_orig/034.json",
"data/test_cards_orig/035.json",
"data/test_cards_orig/036.json",
"data/test_cards_orig/037.json",
"data/test_cards_orig/038.json",
"data/test_cards_orig/039.json",
"data/test_cards_orig/040.json",
"data/test_cards_orig/041.json",
"data/test_cards_orig/042.json",
"data/test_cards_orig/043.json",
"data/test_cards_orig/044.json",
"data/test_cards_orig/045.json",
"data/test_cards_orig/046.json",
"data/test_cards_orig/047.json",
"data/test_cards_orig/048.json",
"data/test_cards_orig/049.json",
"data/test_cards_orig/050.json",
"data/test_cards_orig/051.json",
"data/test_cards_orig/052.json",
"data/test_cards_orig/053.json",
"data/test_cards_orig/054.json",
"data/test_cards_orig/055.json",
"data/test_cards_orig/056.json",
"data/test_cards_orig/057.json",
"data/test_cards_orig/058.json",
"data/test_cards_orig/059.json",
"data/test_cards_orig/060.json",
"data/test_cards_orig/061.json",
"data/test_cards_orig/062.json",
"data/test_cards_orig/063.json",
"data/test_cards_orig/064.json",
"data/test_cards_orig/065.json",
"data/test_cards_orig/066.json",
"data/test_cards_orig/067.json",
"data/test_cards_orig/068.json",
"data/test_cards_orig/069.json",
"data/test_cards_orig/070.json",
"data/test_cards_orig/071.json",
"data/test_cards_orig/072.json",
"data/test_cards_orig/073.json",
"data/test_cards_orig/074.json",
"data/test_cards_orig/075.json",
"data/test_cards_orig/076.json",
"data/test_cards_orig/077.json",
"data/test_cards_orig/078.json",
"data/test_cards_orig/079.json",
"data/test_cards_orig/080.json",
"data/test_cards_orig/081.json",
"data/test_cards_orig/082.json",
"data/test_cards_orig/083.json",
"data/test_cards_orig/084.json",
"data/test_cards_orig/085.json",
"data/test_cards_orig/086.json",
"data/test_cards_orig/087.json",
"data/test_cards_orig/088.json",
"data/test_cards_orig/089.json",
"data/test_cards_orig/090.json",
"data/test_cards_orig/091.json",
"data/test_cards_orig/092.json",
"data/test_cards_orig/093.json",
"data/test_cards_orig/094.json",
"data/test_cards_orig/095.json",
"data/test_cards_orig/096.json",
"data/test_cards_orig/097.json",
"data/test_cards_orig/098.json",
"data/test_cards_orig/099.json",
"data/test_cards_orig_dirs.npz",
"data/token_stats.json",
"data/token_stats_head.json"
]
}