Symmetry Face Edits: The Middle of the Face Is Not the Middle of the Photo

Where the middle of a face is for a symmetry-face edit, measured: how far off the line can be before the nose changes, how little head turn breaks it, and what happened when the generator was asked to do it instead.

*No credit card required
Generated portrait with a thin vertical line drawn down the face; a yellow guide marks the center of the picture and a green guide marks the center of the face.
CapCut
CapCut
Oct 14, 2026

I asked an image generator to make the edit for me: em>create a perfectly symmetrical split-face portrait of this same person/em>. It drew a thin line down the face. The line runs through the exact middle of the picture, and nothing on either side of it was mirrored. That middle of the picture is 18 pixels from the middle of her face, and that gap is the whole difficulty with this effect.

Generated portrait with a thin vertical line drawn down the face; a yellow guide marks the center of the picture and a green guide marks the center of the face.

The line it drew is on the yellow guide. Her single earring and her side-swept hair are still there, so nothing was actually mirrored.

What the effect does, done properly

Choose a vertical line down the middle of the face. Keep one side of it, flip that side, and put the flipped copy where the other side was. Doing it from the left half gives one face, and doing it from the right half gives another.

The original portrait beside its left-half mirror and right-half mirror.

One photo, two mirrored versions. The earring and the hair are on only one side of the original, so each version gets both or neither.

This part is straightforward. The hard part is the line itself, because you are mirroring around it, and any error in where it sits gets doubled.

How far off the line can be

I made the same two versions over and over, moving the line a few pixels to the right each time, and measured the distance between the two nostrils. In this 2560-pixel portrait the pupils are 413 pixels apart.

Six enlarged noses from the two mirrored versions, with the line placed correctly, 10 pixels off, and 25 pixels off.

Moving the line right makes the left-half version's nose wider and the right-half version's narrower. At 25 pixels there is a notch in the tip where the two halves meet.

Line off by
Share of the pupil distance
Left-half version
Right-half version
0 px
0%
reference
reference
10 px
2.4%
nostrils 16% further apart
14% closer
25 px
6.1%
40% further apart, notched tip
35% closer

The rule behind the table: every pixel of error changes the nose width by two pixels. One half gains the pixels the line moved past and the other half loses them, and flipping doubles both. The measurements track this exactly, because this part is arithmetic, not taste.

There is one thing the arithmetic doesn't fix. Even with the best line, the left-half version's nose tip has a small notch. The line that best splits her mouth and the line that best splits her nose are a few pixels apart, which is normal for a real face. The best line is a compromise between the two, so no line will make both perfect.

Three candidates for the middle

Where you put the line
Distance from the middle of her face
Nostril spacing, measured on each version
The middle of the photo
18 px to the left (4.4% of the pupil distance)
left-half version 28.5% narrower, right-half version 24.9% wider
Halfway between the pupils
13 px to the left (3.1%)
20.6% narrower, 18.0% wider
Through the tip of the nose and the center of the lips
reference
—

The middle of the photo is the worst of the three. It's also the one the generator chose, and, as the next section shows, the one CapCut's crop box puts a crosshair on. Halfway between the pupils is better, but only by five pixels. To find the line, look down the face, not across it: the tip of the nose, the dip in the upper lip, and the center of the chin. Put the line through those points.

Doing it in CapCut

The online editor has everything you need, and I checked each control by name. Flip horizontal is on the timeline toolbar. Crop is on the timeline toolbar and on the canvas toolbar. Add overlay, on the canvas toolbar, gives you a second copy of the photo to work with. So: put the photo on the timeline, add it again as an overlay, flip the overlay, crop each copy to the half you're keeping, and slide the flipped half until its cut edge meets the other copy's cut edge.

CapCut crop dialog showing an aspect ratio menu, a manual crop mode, a rotate field and a crop frame over the portrait.

The crop dialog. Aspect ratio, manual crop, and rotation you can type in degrees. The crop edges can only be dragged.

You can't type the crop edges, only drag them. At the dialog's preview size, one pixel on your screen is 5.8 pixels of the photo. Drag the edge two screen pixels too far and your line is off by more than 10 photo pixels, which already moves the nose by 15%. Enlarge the preview as far as it goes before you drag, and check the result by looking at the nose rather than the crop frame.

Enlarged detail of the crop dialog: the crosshair sits on the middle of the photo, slightly left of the middle of the face.

The crosshair in the crop frame marks the middle of the photo, not the middle of her face. The gap between them is 18 pixels of the photo, and only 3 on screen.

Level the face before you split it. In this photo the pupils are 13 pixels apart vertically, a 1.8° tilt. The crop dialog's rotate box takes that number directly.

Why the head must face the camera

I made two more versions of the same portrait from the same reference, one asking for her head turned "a little" and one "about a quarter of the way to a profile". Both came back turned by about the same amount: the line through her nose and lips moved 6.4% and 6.7% of the pupil distance off the midpoint between her eyes, compared with 3.0% in the original. The generator didn't tell the two requests apart.

Left-half and right-half mirrored versions for three head positions; the turned heads produce one very wide face and one very narrow face.

Each version was mirrored around its own correct line, but even a slight turn makes one side of the face wider on camera than the other.

Mirroring doesn't correct for that. When the head is turned, the half facing the camera looks wide and the half turned away looks narrow. Mirror each one and you get a very broad face and a pinched one. The spacing between the eyes shows it: in the original, the left-half version's eyes are 1.13 times further apart than the right-half version's. After the slight turn that becomes 1.29 and 1.31. The turn causes this distortion even with a correctly placed line, so choose a photo where the face points straight at the camera.

What the generator gave back

Back to the attempt at the top. The generator kept the person: her face matches the original at 89% of the score a photo gets against itself. It also made her skin rougher, with 21% more fine texture on one cheek and 41% more on the other. And it didn't make her any more symmetrical. Around the mouth, her symmetry score was 0.577 before and 0.534 after, and over the whole face 0.393 before and 0.365 after. The earring stayed on one ear and the hair stayed on one side.

What it added is the line. Measured as a thin vertical ridge running down the face, it scores 15.5. The same measure scores 0.6 on the original photo and 6.0 on a faint line I drew in myself as a test. The tones on either side of it were already different in the original, where one side of her face is in the shadow of her hair. So the "two halves" look comes from lighting that was already there plus a line drawn in the middle of the picture.

What to do with this

Instead of
Do
Because
cutting at the middle of the photo or the crop crosshair
drawing the line through the nose tip, the center of the lips and the chin
The middle of the photo was 18 px off, which changes the nose by about 25–29%
cutting halfway between the eyes
treating that as a first guess and checking against the nose
It was 13 px off here and roughly twice that on a turned head
dragging the crop edge at normal size
enlarging the preview first and checking the nose afterwards
One screen pixel was 5.8 photo pixels
using a slightly turned photo
using one where the face points straight at the camera
A small turn pushed the difference between the two versions from 13% to about 30%
asking the generator to "make it symmetrical"
doing the flip and crop yourself
It drew a line at the middle of the picture and mirrored nothing

Where this stops

One face, one run of each generation. The doubling rule applies to any face and any photo, since it's just what mirroring does. The pixel amounts don't transfer directly; convert them to a share of the distance between the pupils, as in the tables. The generator result is a single attempt with one wording, and a different wording might get further. The head-turn comparison has only two turned images, and both happened to turn about the same amount, so they show the effect exists but don't give a limit in degrees.

The guide the tool gives you

The most visible reference in a crop box is the crosshair in its middle, and here it pointed to the wrong place: the middle of the picture, which the generator also chose. The middle of a face has no crosshair. You find it by looking down the face at the nose, the lips and the chin, and you check it by watching the nose after you mirror. The crop dialog shows the right line only if you look past its center mark.

Configuration and cost. Four stills: Image, Seedream 4.5, 16:9, 2K, Standard, 1 credit each. The three generated from the reference photo each showed “consume 1 credit” on the card. The first was the same configuration, but my script didn't capture its card text. Total 4 credits, 2026-09-24. The CapCut editor checks (flip, crop, overlay) used no credits. The test project in the editor was put back as it was, and the crop wasn't applied.

Files. Four stills, 2560×1440. The mirrored versions in this article were made with exact pixel operations, so the only thing that changes between them is where the line sits. The same operations are Flip horizontal and Crop in the editor. Prompt text is quoted as sent.

The three candidate lines were each measured directly, not worked out from the doubling rule: both mirrored versions were built at the middle of the photo and at the midpoint of the pupils, and the nostril pairs were drawn back to confirm them. The results agree with the rule to within a percentage point.

How the middle of the face was found. For each candidate vertical line in a window around the mouth, the left side was compared with the mirrored right side, and the line where they matched best was used. Before using it, I tested it on an image mirrored exactly around a known line, at three different positions, and it found the line exactly each time. For every photo, the line was drawn back onto the image to confirm it passes through the nose tip and the center of the lips.

Other measures, checked the same way. The nostril spacing was confirmed on a photo stretched by a known 10%, which it read as 10.0%. The eyes were found by a standard detector, confirmed by drawing them back. The line detector read 0.6 on the original, and 1.7, 3.1 and 6.0 on the original with faint lines of known brightness added. Face match and skin texture use instruments checked against known inputs earlier in this series.

Four measurements were thrown away. Searching the whole face for its best mirror line worked on the two front-facing photos but landed on the cheek of both turned ones. Measuring cheek width to judge head turn caught an ear on one photo and the drawn line on another. An automatic nose-tip finder found the top of the nose instead of the tip. My first reading of the nose tip on the turned faces was on a nostril, about 30 pixels off. Each error showed up when the result was drawn back onto the photo. The mouth-based line replaced all of them.

One set of numbers was withdrawn. The first nostril measurement on the original photo picked up one nostril and a shadow beside it, because the other nostril was lit too brightly to register. The nose figures in this article come only from the mirrored versions, where the nostrils are a matched pair and were detected correctly.

Hot and trending