Integrated Wonder3D & NeuS, Add vertex color support for mesh render

This commit is contained in:
MrForExample
2024-03-03 00:11:29 +01:00
parent 9603cbd726
commit 85f4429910
76 changed files with 109156 additions and 238 deletions
@@ -0,0 +1,782 @@
{
"last_node_id": 23,
"last_link_id": 36,
"nodes": [
{
"id": 17,
"type": "[Comfy3D] Large Multiview Gaussian Model",
"pos": [
1270,
461
],
"size": {
"0": 252,
"1": 46
},
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "multiview_images",
"type": "IMAGE",
"link": 35
},
{
"name": "lgm_model",
"type": "LGM_MODEL",
"link": 22
}
],
"outputs": [
{
"name": "gs_ply",
"type": "GS_PLY",
"links": [
19,
20
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Large Multiview Gaussian Model"
}
},
{
"id": 15,
"type": "[Comfy3D] Preview 3DMesh",
"pos": [
2326.1025658000017,
214.90587429004222
],
"size": [
600,
500
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "mesh_file_path",
"type": "STRING",
"link": 16,
"widget": {
"name": "mesh_file_path"
}
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Preview 3DMesh"
},
"widgets_values": [
"",
null
]
},
{
"id": 12,
"type": "[Comfy3D] Switch 3DGS Axis",
"pos": [
1558,
460
],
"size": {
"0": 210,
"1": 106
},
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "gs_ply",
"type": "GS_PLY",
"link": 19
}
],
"outputs": [
{
"name": "switched_gs_ply",
"type": "GS_PLY",
"links": [
13
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Switch 3DGS Axis"
},
"widgets_values": [
"+x",
"-y",
"-z"
]
},
{
"id": 10,
"type": "[Comfy3D] Preview 3DGS",
"pos": [
2331,
776
],
"size": [
600,
500
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "gs_file_path",
"type": "STRING",
"link": 11,
"widget": {
"name": "gs_file_path"
}
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Preview 3DGS"
},
"widgets_values": [
"",
null
]
},
{
"id": 16,
"type": "[Comfy3D] Convert 3DGS to Mesh with NeRF and Marching Cubes",
"pos": [
1566,
215
],
"size": {
"0": 411.6000061035156,
"1": 82
},
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "gs_ply",
"type": "GS_PLY",
"link": 20
}
],
"outputs": [
{
"name": "mesh",
"type": "MESH",
"links": [
17
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Convert 3DGS to Mesh with NeRF and Marching Cubes"
},
"widgets_values": [
"big",
false
]
},
{
"id": 5,
"type": "InvertMask",
"pos": [
170,
540
],
"size": {
"0": 210,
"1": 26
},
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 3
}
],
"outputs": [
{
"name": "MASK",
"type": "MASK",
"links": [
25,
32
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "InvertMask"
}
},
{
"id": 20,
"type": "[Comfy3D] Load Diffusers Pipeline",
"pos": [
-300,
330
],
"size": {
"0": 392.1646728515625,
"1": 86.24864196777344
},
"flags": {},
"order": 0,
"mode": 0,
"outputs": [
{
"name": "pipe",
"type": "DIFFUSERS_PIPE",
"links": [
29
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Load Diffusers Pipeline"
},
"widgets_values": [
"Wonder3DMVDiffusionPipeline",
"flamehaze1115/wonder3d-v1.0"
]
},
{
"id": 22,
"type": "[Comfy3D] Wonder3D MVDiffusion Model",
"pos": [
440,
460
],
"size": {
"0": 430.8000183105469,
"1": 170
},
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "mvdiffusion_pipe",
"type": "DIFFUSERS_PIPE",
"link": 29
},
{
"name": "reference_image",
"type": "IMAGE",
"link": 33
},
{
"name": "reference_mask",
"type": "MASK",
"link": 32
}
],
"outputs": [
{
"name": "multiview_images",
"type": "IMAGE",
"links": [
34
],
"shape": 3,
"slot_index": 0
},
{
"name": "multiview_normals",
"type": "IMAGE",
"links": [],
"shape": 3,
"slot_index": 1
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Wonder3D MVDiffusion Model"
},
"widgets_values": [
0,
"fixed",
1,
30
]
},
{
"id": 23,
"type": "GetImagesFromBatchIndexed",
"pos": [
918,
461
],
"size": {
"0": 236.4545135498047,
"1": 76
},
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 34
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
35,
36
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "GetImagesFromBatchIndexed"
},
"widgets_values": [
"0, 2, 3, 4"
]
},
{
"id": 1,
"type": "[Comfy3D] Load Large Multiview Gaussian Model",
"pos": [
917,
598
],
"size": {
"0": 315,
"1": 82
},
"flags": {},
"order": 1,
"mode": 0,
"outputs": [
{
"name": "lgm_model",
"type": "LGM_MODEL",
"links": [
22
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Load Large Multiview Gaussian Model"
},
"widgets_values": [
"model_fp16.safetensors",
"big"
]
},
{
"id": 2,
"type": "[Comfy3D] Load Diffusers Pipeline",
"pos": [
-138.35285154113785,
-248.56920693359376
],
"size": {
"0": 375.3948669433594,
"1": 83.33004760742188
},
"flags": {},
"order": 2,
"mode": 4,
"outputs": [
{
"name": "pipe",
"type": "DIFFUSERS_PIPE",
"links": [
23
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Load Diffusers Pipeline"
},
"widgets_values": [
"MVDreamPipeline",
"ashawkey/imagedream-ipmv-diffusers"
]
},
{
"id": 18,
"type": "[Comfy3D] MVDream Model",
"pos": [
451.6471484588624,
-248.56920693359376
],
"size": {
"0": 405.5999755859375,
"1": 286
},
"flags": {},
"order": 5,
"mode": 4,
"inputs": [
{
"name": "mvdream_pipe",
"type": "DIFFUSERS_PIPE",
"link": 23
},
{
"name": "reference_image",
"type": "IMAGE",
"link": 24
},
{
"name": "reference_mask",
"type": "MASK",
"link": 25
}
],
"outputs": [
{
"name": "multiview_images",
"type": "IMAGE",
"links": [],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] MVDream Model"
},
"widgets_values": [
"",
"ugly, blurry, pixelated obscure, unnatural colors, poor lighting, dull, unclear, cropped, lowres, low quality, artifacts, duplicate",
0,
"fixed",
4.99,
30,
0
]
},
{
"id": 14,
"type": "[Comfy3D] Save 3D Mesh",
"pos": [
1996.1025658,
214.90587429004222
],
"size": {
"0": 307.8253173828125,
"1": 60.248291015625
},
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "mesh",
"type": "MESH",
"link": 17
}
],
"outputs": [
{
"name": "save_path",
"type": "STRING",
"links": [
16
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Save 3D Mesh"
},
"widgets_values": [
"LGMTest/KungFuCat.obj"
]
},
{
"id": 9,
"type": "[Comfy3D] Save 3DGS",
"pos": [
1798,
459
],
"size": {
"0": 315,
"1": 58
},
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "gs_ply",
"type": "GS_PLY",
"link": 13
}
],
"outputs": [
{
"name": "save_path",
"type": "STRING",
"links": [
11
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Save 3DGS"
},
"widgets_values": [
"LGMTest/KungFuCat.ply"
]
},
{
"id": 4,
"type": "LoadImage",
"pos": [
-190,
480
],
"size": {
"0": 315,
"1": 314
},
"flags": {},
"order": 3,
"mode": 0,
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
24,
33
],
"shape": 3,
"slot_index": 0
},
{
"name": "MASK",
"type": "MASK",
"links": [
3
],
"shape": 3,
"slot_index": 1
}
],
"properties": {
"Node name for S&R": "LoadImage"
},
"widgets_values": [
"KungFuCat.png",
"image"
]
},
{
"id": 19,
"type": "PreviewImage",
"pos": [
1278,
138
],
"size": {
"0": 210,
"1": 246
},
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 36
}
],
"properties": {
"Node name for S&R": "PreviewImage"
}
}
],
"links": [
[
3,
4,
1,
5,
0,
"MASK"
],
[
11,
9,
0,
10,
0,
"STRING"
],
[
13,
12,
0,
9,
0,
"GS_PLY"
],
[
16,
14,
0,
15,
0,
"STRING"
],
[
17,
16,
0,
14,
0,
"MESH"
],
[
19,
17,
0,
12,
0,
"GS_PLY"
],
[
20,
17,
0,
16,
0,
"GS_PLY"
],
[
22,
1,
0,
17,
1,
"LGM_MODEL"
],
[
23,
2,
0,
18,
0,
"DIFFUSERS_PIPE"
],
[
24,
4,
0,
18,
1,
"IMAGE"
],
[
25,
5,
0,
18,
2,
"MASK"
],
[
29,
20,
0,
22,
0,
"DIFFUSERS_PIPE"
],
[
32,
5,
0,
22,
2,
"MASK"
],
[
33,
4,
0,
22,
1,
"IMAGE"
],
[
34,
22,
0,
23,
0,
"IMAGE"
],
[
35,
23,
0,
17,
0,
"IMAGE"
],
[
36,
23,
0,
19,
0,
"IMAGE"
]
],
"groups": [
{
"title": "MVDream: 4 multi-views",
"bounding": [
-172,
-366,
1139,
436
],
"color": "#3f789e",
"font_size": 24,
"locked": false
}
],
"config": {},
"extra": {},
"version": 0.4
}
@@ -0,0 +1,644 @@
{
"last_node_id": 47,
"last_link_id": 68,
"nodes": [
{
"id": 21,
"type": "PreviewImage",
"pos": [
1265,
880
],
"size": {
"0": 199.94778442382812,
"1": 274.4532775878906
},
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 32
}
],
"properties": {
"Node name for S&R": "PreviewImage"
}
},
{
"id": 28,
"type": "Image Rembg (Remove Background)",
"pos": [
1487,
475
],
"size": {
"0": 315,
"1": 250
},
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 37
}
],
"outputs": [
{
"name": "images",
"type": "IMAGE",
"links": [
38,
39
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "Image Rembg (Remove Background)"
},
"widgets_values": [
false,
"u2net",
false,
true,
true,
240,
10,
10,
"none"
]
},
{
"id": 30,
"type": "ImageToMask",
"pos": [
1859,
475
],
"size": {
"0": 315,
"1": 58
},
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 39
}
],
"outputs": [
{
"name": "MASK",
"type": "MASK",
"links": [
46
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "ImageToMask"
},
"widgets_values": [
"red"
]
},
{
"id": 32,
"type": "[Comfy3D] Preview 3DMesh",
"pos": [
3339,
369
],
"size": [
600,
500
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "mesh_file_path",
"type": "STRING",
"link": 44,
"widget": {
"name": "mesh_file_path"
}
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Preview 3DMesh"
},
"widgets_values": [
"",
null
]
},
{
"id": 29,
"type": "PreviewImage",
"pos": [
1857,
609
],
"size": {
"0": 210,
"1": 246
},
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 38
}
],
"properties": {
"Node name for S&R": "PreviewImage"
}
},
{
"id": 33,
"type": "[Comfy3D] Save 3D Mesh",
"pos": [
2980,
370
],
"size": {
"0": 315,
"1": 58
},
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "mesh",
"type": "MESH",
"link": 65
}
],
"outputs": [
{
"name": "save_path",
"type": "STRING",
"links": [
44
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Save 3D Mesh"
},
"widgets_values": [
"NeuS/Cat.obj"
]
},
{
"id": 22,
"type": "InvertMask",
"pos": [
562,
468
],
"size": {
"0": 210,
"1": 26
},
"flags": {},
"order": 2,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 33
}
],
"outputs": [
{
"name": "MASK",
"type": "MASK",
"links": [
34
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "InvertMask"
}
},
{
"id": 19,
"type": "PreviewImage",
"pos": [
1293,
538
],
"size": {
"0": 172.59315490722656,
"1": 299.3858947753906
},
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 31
}
],
"properties": {
"Node name for S&R": "PreviewImage"
}
},
{
"id": 4,
"type": "LoadImage",
"pos": [
186,
391
],
"size": {
"0": 318.80224609375,
"1": 348.95855712890625
},
"flags": {},
"order": 0,
"mode": 0,
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
30
],
"shape": 3,
"slot_index": 0
},
{
"name": "MASK",
"type": "MASK",
"links": [
33
],
"shape": 3,
"slot_index": 1
}
],
"properties": {
"Node name for S&R": "LoadImage"
},
"widgets_values": [
"round_cat.png",
"image"
]
},
{
"id": 2,
"type": "[Comfy3D] Load Diffusers Pipeline",
"pos": [
307,
216
],
"size": {
"0": 392.1646728515625,
"1": 86.24864196777344
},
"flags": {},
"order": 1,
"mode": 0,
"outputs": [
{
"name": "pipe",
"type": "DIFFUSERS_PIPE",
"links": [
29
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Load Diffusers Pipeline"
},
"widgets_values": [
"Wonder3DMVDiffusionPipeline",
"flamehaze1115/wonder3d-v1.0"
]
},
{
"id": 20,
"type": "[Comfy3D] Wonder3D MVDiffusion Model",
"pos": [
806,
370
],
"size": {
"0": 430.8000183105469,
"1": 170
},
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{
"name": "mvdiffusion_pipe",
"type": "DIFFUSERS_PIPE",
"link": 29
},
{
"name": "reference_image",
"type": "IMAGE",
"link": 30
},
{
"name": "reference_mask",
"type": "MASK",
"link": 34
}
],
"outputs": [
{
"name": "multiview_images",
"type": "IMAGE",
"links": [
31,
37,
47
],
"shape": 3,
"slot_index": 0
},
{
"name": "multiview_normals",
"type": "IMAGE",
"links": [
32,
48
],
"shape": 3,
"slot_index": 1
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Wonder3D MVDiffusion Model"
},
"widgets_values": [
999,
"fixed",
1,
30
]
},
{
"id": 34,
"type": "[Comfy3D] NeuS",
"pos": [
2270,
370
],
"size": {
"0": 315,
"1": 410
},
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "reference_image",
"type": "IMAGE",
"link": 47
},
{
"name": "reference_mask",
"type": "MASK",
"link": 46
},
{
"name": "reference_normals",
"type": "IMAGE",
"link": 48
}
],
"outputs": [
{
"name": "mesh",
"type": "MESH",
"links": [
64
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] NeuS"
},
"widgets_values": [
1500,
512,
0.0005,
0.0005,
1,
0.1,
1,
1,
0.1,
500,
0,
true,
512,
0
]
},
{
"id": 44,
"type": "[Comfy3D] Switch Mesh Axis",
"pos": [
2630,
370
],
"size": {
"0": 315,
"1": 130
},
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "mesh",
"type": "MESH",
"link": 64
}
],
"outputs": [
{
"name": "switched_mesh",
"type": "MESH",
"links": [
65
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "[Comfy3D] Switch Mesh Axis"
},
"widgets_values": [
"-x",
"-z",
"+y",
false
]
}
],
"links": [
[
29,
2,
0,
20,
0,
"DIFFUSERS_PIPE"
],
[
30,
4,
0,
20,
1,
"IMAGE"
],
[
31,
20,
0,
19,
0,
"IMAGE"
],
[
32,
20,
1,
21,
0,
"IMAGE"
],
[
33,
4,
1,
22,
0,
"MASK"
],
[
34,
22,
0,
20,
2,
"MASK"
],
[
37,
20,
0,
28,
0,
"IMAGE"
],
[
38,
28,
0,
29,
0,
"IMAGE"
],
[
39,
28,
0,
30,
0,
"IMAGE"
],
[
44,
33,
0,
32,
0,
"STRING"
],
[
46,
30,
0,
34,
1,
"MASK"
],
[
47,
20,
0,
34,
0,
"IMAGE"
],
[
48,
20,
1,
34,
2,
"IMAGE"
],
[
64,
34,
0,
44,
0,
"MESH"
],
[
65,
44,
0,
33,
0,
"MESH"
]
],
"groups": [],
"config": {},
"extra": {},
"version": 0.4
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 484 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB