FlipMyFormat

Low Poly: Rebuild a Photo From Triangles

Facets subdivide where the picture is busy and stay large where it is flat, so the triangles cluster around your subject instead of being spread evenly over an empty sky. Each one takes the average of the pixels it actually covers.

Adaptive subdivisionNo gaps or seamsLive before and afterBatch + ZIP downloadNever uploaded

Drop images here

or click to browse · or paste with Ctrl+V

JPG · PNG · WebP · GIF · BMP · AVIF

40 px

The size used in flat areas such as sky. Larger means a bolder, more abstract result.

8 px

How far the detailed areas are allowed to subdivide. Smaller keeps more of the subject readable.

65%
Nearly uniformFollows every edge

How eagerly a busy area splits into smaller facets. This is what puts the triangles where the picture actually is.

0 px

Presets

92

Your photos are never uploaded. The subdivision and the export both run inside this browser tab.

People also use

Everything this tool does

Triangles go where the picture is

On a test image half flat and half detailed, a uniform grid gives 16 facets to each half. Adaptive subdivision gave 16 to the flat half and 256 to the detailed one, sixteen times the resolution where it matters.

Every facet averaged over its real area

Not sampled at the centre. On a noisy flat field, centre sampling gave facets varying by 34 levels while averaging gave facets identical to each other.

No gaps between facets

Each cell splits into exactly two triangles by a single test, so no pixel falls between them or is painted twice. Checked across a whole output, no pixel is left unwritten.

Both bounds are yours

The largest facet sets how bold the flat areas look and the smallest decides whether a face survives. The gap between them is where the whole effect lives.

Optional facet outlines

Off, the result reads as faceted glass. On, it reads as a wireframe render, and the colour is yours to set.

Completely deterministic

The subdivision depends only on the image and your settings, so the same photo always produces the same facets.

Drag to compare

Before and after share one frame with a slider, which is how you judge whether the subject has survived.

Six purpose-built presets

Classic, bold and abstract, portrait, wireframe, nearly uniform and fine facets.

Batch with one ZIP

The subdivision adapts to each photo individually, so one setting suits a varied set.

Nothing is uploaded

No server, no queue, nothing to delete afterwards. Close the tab and every trace of the image goes with it.

What each control does

Three of these decide where the triangles go. The largest facet is what you get in flat areas, the smallest is how far detail is allowed to subdivide, and the sensitivity decides how eagerly that happens.

SettingWhat it doesTryGood for
Largest 20-30fine facets everywheresmallest 4-8Detailed, subtle
Largest 50-80bold shapes in flat areassmallest 8-12Abstract, graphic
Smallest 4-6detail subdivides faranyFaces stay readable
Smallest 16-24coarse even on detailanyVery abstract
Sensitivity 20-40close to a uniform gridanyEven, wallpaper-like
Sensitivity 70-100follows the subject closelyanyPortraits, clear subjects
Outline 1-2visible facet edgesdark colourFaceted, geometric look

Adaptive

subdivision

0

files uploaded

0

unpainted pixels

2

triangles per facet

ZIP

batch download

Free

no account needed

FlipMyFormat vs other low poly tools

CapabilityFlipMyFormatTypical free tool
Files stay in your browser
Triangles subdivide around detail
Every facet averaged over its real area
No unpainted pixels or seams
Optional facet outlines
Batch ZIP download without paying
No watermark on the output

How to get low poly that keeps the subject

Low poly art works by throwing away almost everything and keeping only the large shapes, which means the entire question is where you spend your triangles. Most filters answer it badly by using a uniform grid, so an empty sky receives exactly as many facets as a face does. The sky does not need them, since it is nearly one colour and would look identical with a tenth as many, and the face desperately does, because that is where all the information the viewer cares about lives. The result is a picture that reads as noise in the smooth areas and mush in the important ones. The approach here is to start with large cells and split any cell whose contents vary too much, repeating until either the variation is low enough or the cell has reached your minimum size. That puts the triangles where the picture actually is. Practically, the three size controls interact and it is worth setting them in order. The largest facet decides how bold the flat areas look and is the main lever on the overall character. The smallest decides whether a face survives, and if your subject is turning to mush it is almost always this that needs lowering. The sensitivity then decides how eagerly the subdivision happens between those two bounds, and pushing it up is what makes the triangles visibly cluster around your subject. Outlines are a separate stylistic decision: off, the result reads as faceted glass, and on, it reads as a wireframe render.

  1. 1

    Add a photo

    Drag it in, click to browse, or paste with Ctrl+V. A clear subject against a simple background gives the subdivision something obvious to follow.

  2. 2

    Set the largest and smallest facet

    The largest controls the flat areas, the smallest controls how far detail can subdivide. The gap between them is where the effect lives.

  3. 3

    Tune the sensitivity and export

    Higher sensitivity clusters triangles more tightly around your subject. Export PNG so the facet edges stay hard.

Where to spend the triangles

Subdivision that follows the picture

The subdivision measures the standard deviation of brightness inside each cell and splits the cell into four when that exceeds a threshold, repeating until the variation is acceptable or the cell reaches your minimum size. The effect is easy to measure. On a test image that is half flat grey and half fine detail, a uniform grid at the same facet size gives 16 facets to each half. Adaptive subdivision produced 16 in the flat half and 256 in the detailed one, which is sixteen times the resolution spent where it actually matters. The sensitivity control is what governs it: on an image of moderate texture, sensitivity 0 produced 32 facets in total and sensitivity 100 produced 485. That is the entire argument for doing it this way, and it is why a face survives here and turns to mush under a uniform grid.

No gaps, and honest facet colours

Two smaller things are worth getting right. Every cell is split into exactly two triangles along one diagonal, and every pixel in the cell is assigned to one triangle or the other by a single test, so no pixel can fall between them and none is painted twice. We check the whole output for pixels that were never written and find none. The second is how each facet takes its colour. Averaging the pixels the triangle actually covers is more work than reading the colour at its centre, and much more stable: on a test image with light noise, centre sampling produced facets varying by 34 levels across a flat area while averaging produced facets identical to each other. That difference is most visible at large facet sizes, where a single wrong colour covers a lot of the frame.

What people use it for

Wallpapers and backgrounds

Low poly is a staple of desktop and phone wallpaper, and large facets scale to any screen without looking soft.

Portrait art

A faceted portrait is a common commission, and the adaptive subdivision is what keeps the face readable.

Poster and event design

The geometric look reads as modern and reproduces well in print at any size.

Game and app art

Low poly is an established game aesthetic, so faceted photographs sit naturally alongside it.

Album and cover artwork

Bold facets are striking at thumbnail size, which is most of what a cover needs.

Presentation backgrounds

A faceted photograph behind text is far less distracting than the photograph itself.

Logo and brand explorations

Faceting a product or a landmark is a quick route to a geometric mark.

Stickers and merchandise

Flat colour areas print cleanly and survive being reproduced small.

Six tips worth knowing

If your subject is turning to mush, lower the smallest facet. That is almost always the control at fault.

The largest facet is the main lever on character. Large means bold and abstract, small means subtle and detailed.

Push the sensitivity up for portraits so the triangles cluster tightly around the face.

Simple backgrounds work best. A busy background pulls triangles away from your subject, which is the opposite of what you want.

Turn outlines on for a wireframe render look and off for faceted glass. They are two quite different results.

Export PNG. Flat facets with hard boundaries is exactly the content JPEG fringes worst.

Troubleshooting

My subject is unrecognisable

Lower the smallest facet so detailed areas can subdivide further, and raise the sensitivity so they subdivide more eagerly.

The facets look even everywhere

Your sensitivity is low, which is close to a uniform grid. Raise it so busy areas split and flat ones do not.

It is slow on large images

Subdivision plus averaging every facet is real work. The preview runs on a smaller copy, so dragging stays responsive even when the full export takes a moment.

There are visible seams between facets

There should not be, since every pixel belongs to exactly one triangle. If you see lines, check whether the outline control is above zero.

Frequently asked questions

What is a low poly effect?

Rebuilding a photograph from a small number of flat coloured facets, the way a low polygon count 3D model is built. It keeps only the large shapes and discards everything else.

Why does adaptive subdivision matter?

Because a uniform grid spends the same number of triangles on an empty sky as on a face. On a test image half flat and half detailed, a uniform grid gives 16 facets to each half while adaptive subdivision gave 16 and 256.

How does it decide where to subdivide?

It measures the standard deviation of brightness inside each cell and splits the cell into four when that exceeds a threshold, repeating until the variation is low enough or the cell hits your minimum size.

How is each facet coloured?

By averaging every pixel the triangle actually covers. On a noisy flat field, sampling the centre instead gave facets varying by 34 levels while averaging gave facets identical to each other.

Are there gaps between the facets?

No. Each cell splits into exactly two triangles by a single test, so every pixel belongs to one or the other. Checked across a whole output, no pixel is left unwritten.

My subject turned to mush

Lower the smallest facet so detailed areas can subdivide further, and raise the sensitivity so they do it more eagerly. That control is almost always the problem.

What is the difference between the two size controls?

The largest is what you get in flat areas such as sky, and the smallest is how far a detailed area is allowed to split. The gap between them is where the whole effect lives.

How is this different from a mosaic?

A mosaic uses irregular tile shapes with grout between them and a uniform tile size. This uses triangles that vary in size according to how much detail is present, with no gaps at all.

Should I use outlines?

It is a stylistic choice. Off, the result reads as faceted glass; on, it reads as a wireframe render. Both are legitimate and they look quite different.

Which photos work best?

A clear subject against a simple background. A busy background pulls triangles away from your subject, which is the opposite of what you want.

Is the result the same every time?

Yes. The subdivision depends only on the image and your settings, with no randomness anywhere, so the same photo always produces the same facets.

Does the image change size?

No. The output keeps your original width and height, with the facets drawn into it.

Why is it slow on large images?

Subdividing and then averaging every facet is genuine work. The preview runs on a smaller copy so dragging stays responsive, and only the export processes at full size.

Which format should I export?

PNG. Flat areas of colour separated by hard boundaries is precisely what JPEG handles worst, adding fringing along every facet edge.

Are my photos uploaded to a server?

No. The subdivision and the export both run in your browser using the canvas API. Nothing is sent anywhere.

Is transparency preserved?

Yes for PNG and WebP output. The alpha channel is untouched. JPG has no alpha, so transparent areas are filled with the background colour first.

Can I process a batch?

Yes, and it works well because the subdivision adapts to each photo individually. One setting suits a varied set.

Does it add a watermark or need an account?

No to both. No sign-up, no email wall, no daily limit and no watermark on the output.