Two phone photos show the shopper from the front and side. From them, the model needs to recover the body's 2D outlines and proportions, then use those outlines to estimate a 3D shape. This post explains that process, including where we accept tradeoffs and where the system still needs improvement.
Our target is online apparel shopping, not clinical measurement or professional pattern grading. A size recommendation only needs to place a shopper in the right size bucket, while bespoke tailoring needs far tighter measurements. We optimize for online fit decisions, and our technical choices follow that goal.
Starting with two phone silhouettes
The process begins with one front photo and one side photo. The shopper stands against a plain background with feet together and arms slightly away from the body. We also collect self-reported height, the system's only fixed scale reference. The silhouette geometry and parametric body prior provide the rest.
We turn each image into a 2D body silhouette by separating the outline from its background. Image quality matters most here. A patterned wall, loose clothing, or low light can distort the outline, while fitted clothing and a plain light background usually help. Guidance improves typical inputs, but cannot fully repair very poor images.
The front and side contours give us two 2D projections of one 3D body. Reconstructing that body is underdetermined because many 3D shapes can create the same projections. The parametric body prior supplies the missing constraint.
Using a parametric body prior
We use a learned parametric model built from 3D body scans across a large population. It represents bodies as changes from a mean shape, using a small set of shape parameters, or principal components, to capture most variation in human proportions.
We fit the model by finding shape parameters whose projected front and side silhouettes best match the photos. The prior limits the search to shapes consistent with human proportion variation instead of every possible 3D form. That makes fitting practical and greatly reduces physically impossible estimates.
Results depend on whether the scans used to train the model represent the shopper's body shape. A homogeneous training population can reduce accuracy for people outside it. We measure performance across demographic groups in calibration data and focus improvements on identified gaps.
Measurements we extract, and those we do not
From the fitted model, we calculate circumferences and lengths at anatomical landmarks. Reliable outputs include chest at its widest point, waist at its narrowest, hips at their widest, shoulder width from point to point, and shoulder to natural waist length. These measurements guide many upper and lower garment fit decisions.
Two photos do not give us sleeve length, inseam, thigh circumference, or calf circumference with the same confidence. Those values need direct measurement or a more restricted pose that shoppers rarely use naturally. For fitted trousers and tailored jackets, we use the available measurements to place the shopper in the garment's size range and flag likely accommodation problems. Precision is lower for these dimensions than for the main circumferences.
Using measurements to compare garment fit
We compare the extracted body measurements with garment construction measurements supplied during brand onboarding. Each body and garment point must use matching definitions, so we first learn how the brand measures its products. For example, a flat chest measurement doubled into circumference differs from a measurement taken around the sewn garment. We standardize these conventions during setup.
The result evaluates each dimension separately: whether the body measurement fits a size's garment range, and by how much. A value outside that range creates a recommendation note. A value near either boundary notes that the dimension may feel tight or relaxed, based on which edge it approaches.
We avoid a binary fit or no-fit result. A dimension-by-dimension view shows the tradeoffs behind a size choice. Trousers may fit at the hip but sit near the thigh limit, or fit everywhere except the waist. Either case could recommend medium, but the details help the shopper trust the recommendation.
Our honest accuracy limit
Two phone photos are not a body scanner. In good imaging conditions, primary circumference measurements are accurate within about 1.5-2 cm for most shoppers. That is enough for size-grid decisions, where sizes often span 2-4 inches of body measurement. It is not enough to predict whether one dimension is 0.5 inches too tight, so we do not claim that precision.
We state this limit in our documentation and shopper-facing recommendation. The result is a high-confidence size placement, not tailored fitting. That framing suits online shopping and matches our pilot data. We are not replicating a scanner. We are making a size chart more useful for shoppers taking photos at home.