Hello everyone !
I’m trying to build an app for my girlfriend so she could try on tattoos.
My initial idea was to have a 3D model where she could put the tattoo with the location, size and orientation she wants (like on https://trytattoo3d.com) and then retrieve these parameters and have a image generation model that returns a picture of her she inputted with the tattoo to see how it looks like on her.
Would you have any advice on the feasibility and how to start such a project ? What should I look into ?
Thanks a lot !
1 Like
Is that a Unity avatar being used at https://trytattoo3d.com/? I used a free online service to generate my avatar clone. Then you can choose material and swing the camera round. There is a steep learning curve which has more to do with games development than machine learning. Much easier for me was using DepthScene which is free on HuggingFace. You can approximate the depth from a photo of your girlfriend and apply it to the tattoo?
“”"
(c) CC BY-SA 4.0, Tremeschin
Simple example of programmatically batch rendering multiple inputs
“”"
from pathlib import Path
from depthflow.scene import DepthScene, DepthState
def main():
\# Change to your own paths!
INPUTS = Path(r"C:\\Users\\eazy8\\Downloads\\backup chatgbt\\images")
OUTPUTS = Path(r"C:\\Users\\eazy8\\Downloads\\backup chatgbt\\output")
OUTPUTS.mkdir(exist_ok=True) # Make sure output folder exists
scene = DepthScene(backend="headless")
scene.ffmpeg.h264(preset="veryfast")
for ext in ("jpg", "jpeg", "png"):
for file in Path(INPUTS).glob(f"\*.{ext}"):
scene.input(image=file)
\# Animation variation one
scene.config.animation.clear()
scene.state = DepthState() # Fixme: Always reset?
scene.circle(intensity=0.8)
scene.main(
output=(OUTPUTS/f"{file.stem}-circle.mp4"),
time=7, ssaa=1.5, turbo=False,
)
\# Animation variation two
scene.config.animation.clear()
scene.state = DepthState()
scene.zoom(intensity=0.3, isometric=0, loop=True)
scene.main(
output=(OUTPUTS/f"{file.stem}-zoom.mp4"),
time=10, ssaa=1.5, turbo=False,
)
if _name_ == “_main_”:
main()
1 Like
I thought the closest existing project might be the VTON
family. However, Diffusion models alone aren’t really suited for tasks requiring high output accuracy. I think details like size, angle, and other specifics are likely to become ambiguous…
1 Like