FLUX version update, I don't recommend using this version since results are not consistent; the 1000 image dataset was trained to the 10000 step limit provided by CivitAI, and I think that is not enough. Either I will improve the LoRA by training individual concepts (i.e diving fins) and merging them or I will have to find the way to train it to at least 50000 steps.
v02 update- Increased dataset to 1000 images, work in progress. Trained with about 450 images of female freedivers, all checkpoints I've tried have a hard time generating good, diverse underwater images so this one helps a lot with it. Some use notes: The most important thing is to trigger the LoRA with the tag "underwater".
There are a few trigger words that can be used, for example you may prompt for "dive mask coco", "dive mask cressif1" or "dive mask oval mask" to invoke three specific types of dive masks, those work quite well to render a proper dive mask which is something that usually gives poor results with SDXL (and all diffusion models I've tried). If you add "dive mask reflection" you should get either sunlight or the environment reflected on the mask glass. "floating hair" and "flowing hair" will affect the hair, the first work better for a still pose and the second for a swimming pose.
This LoRA can generate, with a bit of trial and error, reasonably accurate diving fins, just use "diving fins" or "freedive fins", "weight belt" adds just that although there wasn't enough training data for a very good rendering result. Use "barefoot" if you don't want fins to show up.
Diving fins are hugely varied in style and shape so they are difficult to train for, I made a LoRA for a specific model if you want to have a consistent result: https://civitai.com/models/765372/diving-fins-white-and-pink-finsovwp1
I added tags for water visibility, so "excellent water visibility", "good water visibility", "regular water visibility" and "poor water visibility" should have an effect; "murky water" and "dark water" can have strong effects too. "water surface" should show the underside of the water surface, "surface reflections" will put the subject close to the surface and reflecting on the surface above. "caustics", "light rays" and "sunlight" add light effects. There are several parameters for the bottom, such as "sandy bottom", "coral rubble", "coral reef", "rocks", "cave"; "shipwreck" will add exactly that to the image. You can switch between "ocean" and "swimming pool", you may have some luck trying a "split shot" where the image is split between underwater and above water.
For posing the body position can be influenced by "facing up/down/away/towards viewer" and the head direction with "looking towards viewer/up/down/aside", "swimming up/down/towards viewer/away" and even "selfie" will have an effect. "from above/side/below/behind" work fairly well for camera angles. For swimwear there's of course "bikini" and "one-piece swimsuit" but also "wetsuit" and "french cut wetsuit" (a bare legs wetsuit); you may use colors and "long/short sleeves" and "barelegs" to modify things.
One of the main purposes of this LoRA was to counteract what I call the snorkeling selfie syndrome in diffusion models, that is to say that they seem to have been mostly trained in selfie photos while snorkeling, so they almost invariably, when prompted for "1girl underwater" it will be a variation of a close up of a woman floating on the surface. I think I went a little overboard with it so this LoRA tends to produce full body, wide shots, so if you want a close up you'll really have to emphasize it.