About this tool
Phones fake a shallow depth of field with a depth sensor or a second camera. A photo from a camera, an older phone or a scan has no depth data, so this page estimates it: Depth Anything V2 Small (Apache-2.0) guesses how far away every part of the picture is, MODNet finds the person, and the blur grows with the distance from the plane you focus on. Add bokeh to a photo, blur a busy background behind a portrait, product or pet — all in this tab, without handing the picture to anyone.
Focus, aperture and bokeh
Focus starts on the detected subject. Tap anywhere on the result to focus on that depth instead; only the blur is recomputed, the models do not run again. Blur strength is labelled f/1.4 to f/8 because that is how photographers think about it, but the number is a metaphor, not a lens setting. The bokeh can be round or hexagonal, and bright points turn into bright discs because the blur is computed in linear light. Swipe between the original and the result, or open the depth map to see what the model thought was near and far.
Honest limits
Depth is guessed by AI from one photo, not measured. Edges of hair, glass, mirrors and thin railings often go wrong. Subject protection keeps the person sharp even where the depth map got the hair wrong; it helps a lot, but it is not right every time, and it is tuned for people, so pets and products rely on the depth map alone. The shape and size of the bokeh are simulated, not what a real lens would draw. Without WebGPU the page switches to a slower, coarser method and shows which one is running.
What it downloads and what it keeps
The first photo downloads about 125 MB of models from Hugging Face — 99 MB for depth and 26 MB for the subject — and they stay in this browser's cache afterwards. The photo itself is never uploaded; there is no upload endpoint. The result is saved at the photo's own size, up to 8,192 px on the long edge and 16 million pixels, as a JPEG (quality 0.92) or a PNG.