Why Your Blurry Photos Keep Hiding: The CIEdges Story
Last month, a wedding photographer emailed us. She'd used three different camera roll cleaners over the past two years. Each one had promised to find and flag her blurry shots. Each one had failed. She still had hundreds of slightly soft, half-focused images clogging her library. 'I thought blur detection was just a checkbox feature,' she wrote. 'Apparently it matters how you actually do it.'
The blurry photo problem nobody talks about
Most camera roll apps don't have blur detection at all. They'll find duplicates, weed out screenshots, delete large videos. But a photo that's in focus? It stays, even if it's soft around the edges or motion-blurred beyond recovery.
The reason is straightforward: blur detection is hard. Your phone's camera produces thousands of images in a month. Some are sharp and clear. Some are underexposed in bad light and genuinely soft. Some are slightly out of focus because you moved the phone a fraction of a second too early. Some are beautiful motion blur you actually wanted to keep.
A naive blur detector might flag all of them. Or worse, flag none. We spent months understanding why existing approaches were so crude. The wedding photographer's frustration wasn't unique. She was just brave enough to tell us about it.
CIEdges and why edge detection matters
Sharp photographs have one thing in common: defined edges. A crisp line between a subject and its background. Fine detail in hair or fabric. Clear boundaries in architectural shots. Blurry photos lack these transitions. Instead of sharp edges, they have soft gradients.
CIEdges is a sharpness scoring algorithm that looks for edges in your photo. Not like the edge-detection filters you might know from Instagram. This is mathematical. The system samples the image, identifies where brightness changes sharply from one pixel to the next, and builds a confidence score.
The clever part: CIEdges doesn't just count edges. It measures their quality. A sharp edge shows a rapid, clean transition. A blurry edge shows a gradual fade. The algorithm can distinguish between them, which means it can tell the difference between a genuinely sharp photo and one that's gone soft in the camera.
We implemented this scoring across every frame in your library. Not as a binary yes/no decision. Culr builds a sharpness percentile. Your sharpest photos score highest. Your softest score lowest. You get to decide the threshold for what counts as 'too blurry to keep'.
Why local processing changes everything
Here's the thing that separates Culr from a lot of other apps: every pixel stays on your phone. We don't send your photos anywhere. Not to a server, not to a cloud service, not to any external API.
This matters for blur detection because the algorithm needs to see the full image data with precision. Compressed uploads, server-side processing, or rounded-off results all degrade the accuracy. If you're making decisions about which photos to delete based on sharpness scoring, you need a score you can trust.
When you open Culr and enable blur detection (it's part of the Plus tier), the sharpness calculation runs entirely on your device, in the background. No upload. No wait. Your library gets analysed, grouped by how sharp or soft each shot is, and presented to you as a sorted list. You swipe through, keep what matters, delete what doesn't. The moment you delete, we also check whether that photo's already synced to iCloud. You'll never lose something that hasn't backed up yet.
The real reason photographers actually use it
That wedding photographer we mentioned? She came back after a month. She'd gone through her library with Culr's blur detection enabled. She said it saved her about six hours of manual review. More importantly, she said something I've heard a few times now: 'I can actually trust it. It's not just deleting photos at random. It's showing me why.'
That's the difference between a feature checkbox and something that actually solves a problem. Burst photos are a good example. If you shoot with burst mode on, your camera captures five, ten, sometimes twenty frames in a second. Most of them are duplicates or slightly soft. Culr ranks every frame by sharpness, highlights your best keeper, and lets you delete the rest in bulk. Photographers use this constantly because it actually accelerates their workflow instead of slowing it down.
Burst ranking uses the same CIEdges scoring underneath. But the context is different. You're culling in batches. You need speed and you need confidence that the 'keeper' highlight is actually your sharpest shot. We've tested this with people who shoot professionally. They come back. They actually use it.
What CIEdges can't do (and why honesty matters)
Blur detection sounds like a silver bullet. In practice, it's a very useful tool with real limits.
CIEdges excels at catching motion blur, focus errors, and photos taken in poor lighting where the camera couldn't focus properly. It's less reliable on artistic choices. A photograph with selective focus, where the subject is sharp and the background is intentionally soft, might score lower than you'd expect because CIEdges sees less overall edge definition.
It also can't judge composition or creativity. A sharp but boring photo still scores high. A blurry candid that somehow works still scores low. CIEdges is purely mechanical. It's measuring one thing: edge definition across the frame.
That's why Culr doesn't just delete blurry photos on its own. We show you the scores, group your photos by sharpness level, and let you decide. You're still in control. The algorithm helps you move faster, not replace your judgment. For someone with five thousand or fifty thousand photos, that speed matters. The confidence that you understand why something's being flagged matters more.
If your camera roll is full of images you haven't had time to sort through, the bottleneck isn't usually finding the obvious garbage. It's deciding what to keep when you've got dozens of similar shots, burst sequences, and photos you can't quite remember taking. Does a sharpness score actually help you make faster decisions, or does it just add another variable to think about?