工作流 /
图像 /
Bria:产品持有

Bria:产品持有
Bria: Product Holding
使用 Bria,将产品放到照片中人物的手中。一张人物照片加上一到三张产品图,就足以生成一张生活场景图像:面部、姿态和背景保持不变,产品被自然地握在手中。非常适合原本需要拍摄的电商和社交内容。
图像
5 个节点 2 个输入 ComfyUI ≥ 0.42.5 ComfyUI 9 KB
节点构成
LoadImage
× 2
MarkdownNote
× 1
BriaProductHolding
× 1
SaveImage
× 1
官方标注的模型
BRIA
工作流 JSON
和上面「下载工作流 JSON」是同一份文件。
1{
2 "id": "a84dfbd8-7949-46bb-ab74-e302adaefdd6",
3 "revision": 0,
4 "last_node_id": 5,
5 "last_link_id": 3,
6 "nodes": [
7 {
8 "id": 1,
9 "type": "MarkdownNote",
10 "pos": [
11 40,
12 40
13 ],
14 "size": [
15 420,
16 540
17 ],
18 "flags": [],
19 "order": 2,
20 "mode": 0,
21 "inputs": [],
22 "outputs": [],
23 "properties": [],
24 "widgets_values": [
25 "# Bria: Product Holding\n\nPut a product into the person's hands. Bria keeps the face, pose and background of the person photo and renders the product held naturally, so a phone snapshot plus a product shot is enough for a lifestyle image. The result comes back at roughly one megapixel.\n\n## Input Asset\n\n- [bria_holding_person.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/bria_holding_person.png)\n- [bria_holding_product.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/bria_holding_product.png)\n\n## Parameters\n\n- `product_images` takes 1 to 3 images of the same product: the product, its packaging, another angle or a companion item. The node starts with one product socket, and the + button on the node adds more.\n- `instruction` is optional extra direction on top of Bria's built-in one, such as `hold the bag in one hand` or `face the label to the camera`. Left empty, the product is simply placed in a hand.\n- Better results come from a person photo where the hands are already visible and empty, which gives Bria room to place the product.\n- `aspect_ratio` at `auto` keeps the framing of the person photo; a fixed ratio returns 0.6 to 1 megapixel.\n- When the person already holds something similar, the product replaces it instead of being added next to it.\n- This node only returns an image, so it is connected to Save Image.\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
26 ],
27 "widgets_values_named": {
28 "text": "# Bria: Product Holding\n\nPut a product into the person's hands. Bria keeps the face, pose and background of the person photo and renders the product held naturally, so a phone snapshot plus a product shot is enough for a lifestyle image. The result comes back at roughly one megapixel.\n\n## Input Asset\n\n- [bria_holding_person.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/bria_holding_person.png)\n- [bria_holding_product.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/bria_holding_product.png)\n\n## Parameters\n\n- `product_images` takes 1 to 3 images of the same product: the product, its packaging, another angle or a companion item. The node starts with one product socket, and the + button on the node adds more.\n- `instruction` is optional extra direction on top of Bria's built-in one, such as `hold the bag in one hand` or `face the label to the camera`. Left empty, the product is simply placed in a hand.\n- Better results come from a person photo where the hands are already visible and empty, which gives Bria room to place the product.\n- `aspect_ratio` at `auto` keeps the framing of the person photo; a fixed ratio returns 0.6 to 1 megapixel.\n- When the person already holds something similar, the product replaces it instead of being added next to it.\n- This node only returns an image, so it is connected to Save Image.\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
29 },
30 "color": "#222",
31 "bgcolor": "#000"
32 },
33 {
34 "id": 2,
35 "type": "LoadImage",
36 "pos": [
37 500,
38 40
39 ],
40 "size": [
41 320,
42 370
43 ],
44 "flags": [],
45 "order": 0,
46 "mode": 0,
47 "inputs": [
48 {
49 "name": "image",
50 "type": "COMBO",
51 "link": null
52 },
53 {
54 "name": "upload",
55 "type": "IMAGEUPLOAD",
56 "link": null
57 }
58 ],
59 "outputs": [
60 {
61 "name": "IMAGE",
62 "type": "IMAGE",
63 "links": [
64 1
65 ]
66 },
67 {
68 "name": "MASK",
69 "type": "MASK",
70 "links": null
71 }
72 ],
73 "properties": {
74 "Node name for S&R": "LoadImage"
75 },
76 "widgets_values": [
77 "bria_holding_person.png",
78 "image"
79 ],
80 "widgets_values_named": {
81 "image": "bria_holding_person.png",
82 "upload": "image"
83 }
84 },
85 {
86 "id": 3,
87 "type": "LoadImage",
88 "pos": [
89 500,
90 470
91 ],
92 "size": [
93 320,
94 370
95 ],
96 "flags": [],
97 "order": 1,
98 "mode": 0,
99 "inputs": [
100 {
101 "name": "image",
102 "type": "COMBO",
103 "link": null
104 },
105 {
106 "name": "upload",
107 "type": "IMAGEUPLOAD",
108 "link": null
109 }
110 ],
111 "outputs": [
112 {
113 "name": "IMAGE",
114 "type": "IMAGE",
115 "links": [
116 2
117 ]
118 },
119 {
120 "name": "MASK",
121 "type": "MASK",
122 "links": null
123 }
124 ],
125 "properties": {
126 "Node name for S&R": "LoadImage"
127 },
128 "widgets_values": [
129 "bria_holding_product.png",
130 "image"
131 ],
132 "widgets_values_named": {
133 "image": "bria_holding_product.png",
134 "upload": "image"
135 }
136 },
137 {
138 "id": 4,
139 "type": "BriaProductHolding",
140 "pos": [
141 900,
142 40
143 ],
144 "size": [
145 440,
146 420
147 ],
148 "flags": [],
149 "order": 3,
150 "mode": 0,
151 "inputs": [
152 {
153 "name": "person_image",
154 "type": "IMAGE",
155 "link": 1
156 },
157 {
158 "name": "product_images.product_image_1",
159 "type": "IMAGE",
160 "link": 2
161 },
162 {
163 "name": "product_images.product_image_2",
164 "type": "IMAGE",
165 "link": null,
166 "shape": 7
167 },
168 {
169 "name": "instruction",
170 "type": "STRING",
171 "link": null
172 },
173 {
174 "name": "aspect_ratio",
175 "type": "COMBO",
176 "link": null
177 },
178 {
179 "name": "seed",
180 "type": "INT",
181 "link": null
182 },
183 {
184 "name": "moderation",
185 "type": "COMFY_DYNAMICCOMBO_V3",
186 "link": null
187 }
188 ],
189 "outputs": [
190 {
191 "name": "IMAGE",
192 "type": "IMAGE",
193 "links": [
194 3
195 ]
196 }
197 ],
198 "properties": {
199 "Node name for S&R": "BriaProductHolding"
200 },
201 "widgets_values": [
202 "hold the bag in one hand",
203 "auto",
204 42,
205 "fixed",
206 "false"
207 ],
208 "widgets_values_named": {
209 "instruction": "hold the bag in one hand",
210 "aspect_ratio": "auto",
211 "seed": 42,
212 "control_after_generate": "fixed",
213 "moderation": "false"
214 },
215 "color": "#432",
216 "bgcolor": "#653"
217 },
218 {
219 "id": 5,
220 "type": "SaveImage",
221 "pos": [
222 1420,
223 40
224 ],
225 "size": [
226 440,
227 470
228 ],
229 "flags": [],
230 "order": 4,
231 "mode": 0,
232 "inputs": [
233 {
234 "name": "images",
235 "type": "IMAGE",
236 "link": 3
237 },
238 {
239 "name": "filename_prefix",
240 "type": "STRING",
241 "link": null
242 }
243 ],
244 "outputs": [
245 {
246 "name": "images",
247 "type": "IMAGE",
248 "links": null
249 }
250 ],
251 "properties": [],
252 "widgets_values": [
253 "api_bria_product_holding"
254 ],
255 "widgets_values_named": {
256 "filename_prefix": "api_bria_product_holding"
257 }
258 }
259 ],
260 "links": [
261 [
262 1,
263 2,
264 0,
265 4,
266 0,
267 "IMAGE"
268 ],
269 [
270 2,
271 3,
272 0,
273 4,
274 1,
275 "IMAGE"
276 ],
277 [
278 3,
279 4,
280 0,
281 5,
282 0,
283 "IMAGE"
284 ]
285 ],
286 "groups": [],
287 "config": [],
288 "extra": {
289 "ds": {
290 "scale": 1,
291 "offset": [
292 0,
293 0
294 ]
295 },
296 "frontendVersion": "1.57.1"
297 },
298 "version": 0.4
299}