|
--- |
|
license: other |
|
license_name: flux-1-dev-non-commercial-license |
|
license_link: https://huggingface.co/black-forest-labs/FLUX.1-dev/blob/main/LICENSE. |
|
datasets: |
|
- raulc0399/open_pose_controlnet |
|
language: |
|
- en |
|
pipeline_tag: text-to-image |
|
tags: |
|
- Stable Diffusion |
|
- image-generation |
|
- Flux |
|
- diffusers |
|
- controlnet |
|
--- |
|
|
|
# openpose controlnet for flux.dev |
|
(big thanks to [oxen.ai](https://www.oxen.ai/) for sponsoring the GPU for the training) |
|
|
|
## inference |
|
|
|
an openpose controlnet for flux-dev, trained on https://huggingface.co/datasets/raulc0399/open_pose_controlnet |
|
|
|
the controlnet model is trained for the xlabs ai pipeline https://github.com/XLabs-AI/x-flux |
|
|
|
to install the pipeline, execute the following: |
|
|
|
``` |
|
git clone https://github.com/XLabs-AI/x-flux.git |
|
cd x-flux |
|
python3 -m venv xflux_env |
|
source xflux_env/bin/activate |
|
pip install -r requirements.txt |
|
``` |
|
|
|
to run the pipeline with controlnet: |
|
|
|
``` |
|
python3 main.py \ |
|
--prompt "person enjoying a day at the park, full hd, cinematic" \ |
|
--image ~/open_pose_controlnet_dataset/validation_images/pose/3_pose_1024.jpg --control_type openpose \ |
|
--local_path ./model.safetensors \ |
|
--use_controlnet --model_type flux-dev \ |
|
--width 1024 --height 1024 --timestep_to_start_cfg 2 \ |
|
--num_steps 50 --true_gs 4 --guidance 4 \ |
|
--save_path ~/gen_imgs |
|
``` |
|
|
|
if the image has already been preprocessed comment out the line #146 from src/flux/xflux_pipeline.py |
|
``` |
|
# self.annotator = Annotator(control_type, self.other_device) |
|
``` |
|
|
|
## training |
|
|
|
``` |
|
oxen clone https://hub.oxen.ai/raulc/open_pose_controlnet_dataset |
|
git clone https://github.com/raulc0399/x-flux.git |
|
cd x-flux |
|
git checkout open_pose_training |
|
python3 -m venv xflux_env |
|
source xflux_env/bin/activate |
|
pip install -r requirements.txt |
|
huggingface-cli login |
|
accelerate config |
|
mkdir images |
|
rsync -r ~/open_pose_controlnet_dataset/train/images/ images/ |
|
cp train_configs/test_openpose_controlnet.yaml train_configs/openpose_controlnet.yaml |
|
accelerate launch train_flux_deepspeed_controlnet.py --config "train_configs/openpose_controlnet.yaml" |
|
``` |
|
note 1: check the file train_configs/openpose_controlnet.yaml before starting |
|
|
|
note 2: rsync is needed, cp does not work with that many files |
|
|
|
note 3: the oxen repo has the caption files as json as expected by the training script |
|
|
|
## results |
|
|
|
using these 2 images: |
|
|
|
![control image 1](https://huggingface.co/raulc0399/flux_dev_openpose_controlnet/resolve/main/2_pose_1024.jpg "control image 1" ) |
|
![control image 2](https://huggingface.co/raulc0399/flux_dev_openpose_controlnet/resolve/main/3_pose_1024.jpg "control image 2") |
|
|
|
with these prompts: |
|
|
|
"two friends sitting by each other enjoying a day at the park, full hd, cinematic" |
|
"person enjoying a day at the park, full hd, cinematic" |
|
|
|
resulted in these images: |
|
|
|
![result image 1](https://huggingface.co/raulc0399/flux_dev_openpose_controlnet/resolve/main/prev_result_1_100.png "result image 1" ) |
|
![result image 2](https://huggingface.co/raulc0399/flux_dev_openpose_controlnet/resolve/main/prev_result_0_100.png "result image 2") |
|
|
|
|
|
## License |
|
|
|
Weights fall under the [FLUX.1 [dev]](https://huggingface.co/black-forest-labs/FLUX.1-dev/blob/main/LICENSE.md) Non-Commercial License<br/> |
|
|