What is semper for?
It measures how a surface deforms from photographs — full-field displacement and strain maps, computed on your phone. It is aimed at mechanical testing and materials work.
Short answers to the questions people arrive with. In-app Why? chips land on the matching heading in From the app. The full message list is in Troubleshooting.
It measures how a surface deforms from photographs — full-field displacement and strain maps, computed on your phone. It is aimed at mechanical testing and materials work.
You sign in (Google or email), and a new account needs a one-time admin approval before you can use the app. That gate is about managing access, not payment.
semper is an allow-list app while it is in early release. Support is emailed automatically when you sign up; tap Check status in the app after you are approved — it does not update on its own.
Yes, once your phone has been approved. Importing frames and running the correlation need no network. Only sign-in, approval checks, and cloud uploads do.
You load photos you have already taken, or pick a video and semper samples it into frames (the first frame becomes the reference). For how to shoot a good speckle and lighting, see the iDICs guide below.
No. Displacements are in pixels — semper has no spatial calibration. Convert with your own scale factor (pixels per mm from your setup).
The engine locates each subset to roughly 1/100 of a pixel, and recommends a subset size that targets about 0.007 px displacement accuracy on your image. Real accuracy depends on your speckle, lighting, and camera — see Lighting & accuracy and Strain field stats. A parameter sweep lets you check it on your own images.
Lossy formats (JPEG, HEIC, and similar) soften speckle edges. Prefer PNG or TIFF. RAW and DNG import only through Files, not the gallery. Details: From the app · jpeg-warning.
On import the app measures your pattern. Weak contrast or the wrong speckle size both raise failed subsets. Details: From the app · speckle-contrast.
Only if you turn on Save to cloud. The correlation always runs on the phone; cloud backup just stores the results you choose to sync, so you can restore them. See Privacy for the full picture.
Yes. Export “Everything”, quote the VSG with any strain value, and keep the archive with your raw images — inputs, fields, and parameters together are what make the result reproducible. From a sweep you can also Save graph for an annotated lattice plot PNG.
No. Forgot password mails a link that reopens semper on a set-new-password form (same password rules). Email sign-in links work the same way once App Links are verified.
Only if you opt in. After the beta notice on first run you are asked once; you can change it later under Settings → Your data → Send crash reports. Declining is the default. Reports never include your images or results.
On the lattice plot, double-tap the value readout to copy that combination’s subset, step, and strain window. Start a new single-setting analysis and tap Paste params on step 2.
The From the app section below covers the messages the app links here. Troubleshooting has the full list keyed by on-screen text. For how-to, use the Manual; for account or private matters, email support.
Answers for the exact warnings and errors the app can open here. Heading IDs match the app’s FAQ links — do not rename them without updating the app strings. Sourced from the app FAQ (updated 2026-08-28).
When you see it: Wizard step 1 — a chip warns that a frame or reference is not lossless (JPEG, HEIC, etc.).
Why it matters: Lossy compression adds blocking artefacts and softens speckle edges. Displacement can still run, but strain noise and failed subsets rise.
What to do: Re-export or re-shoot as PNG or TIFF when accuracy matters. On a phone, shoot in a camera mode that writes lossless stills rather than pulling JPEGs out of the gallery.
When you see it: Speckle chips in the wizard’s first step. They report different faults — contrast and size — and are worth telling apart.
Why it matters: DIC tracks small windows of random pattern. If gradients inside a subset are weak, correlation fails or wanders.
What to do:
Under the subset slider the wizard reports how large your speckles measure, in pixels of the frame you imported. The iDICs Good Practices Guide asks for dots spanning 3 to 9 px.
| What it says | What it means | What to do |
|---|---|---|
| Below 3 px | The pattern is too fine for this frame to resolve. It aliases, and points can fail to correlate at all. | Shoot closer, or spray a coarser pattern. |
| 3–9 px | Nothing to change. | — |
| Above 9 px | It will correlate, but the extra pixels buy no extra accuracy, and a subset large enough to span the dots leaves fewer measurement points across the ROI. | A finer pattern, or shoot from further back. |
| Subset spans too few speckles | A subset should cover about three dots. Fewer than that and it can correlate confidently against the wrong place. | Raise the subset size to the value the chip names (under the slider on step 2). |
Contrast and size are independent: a pattern can be crisp and still be far too fine. See Lighting & accuracy for how much light changes measured strain noise.
Context: Internal noisetest (2026-08-28) — static speckle, fixed specimen and tripod, only lighting varied (bright / medium / dim). True strain = 0; all reported Exx values are measurement error.
Main finding: More light → better accuracy when subset size is held fixed. Dim light is always worst; a larger subset partially compensates but does not beat bright at the same patch size.
Example — robust strain scatter (typical error, mε) at 65 px subset, same ROI:
| Lighting | Typical σ |
|---|---|
| Bright | 0.07–0.12 |
| Medium | 0.10–0.13 |
| Dim | 0.23–0.37 |
At 15 px subset, dim scatter can be 2–3× bright (e.g. 1.6 vs 0.5 mε).
The app raises subset size in dim light (e.g. 65 px vs 15–21 px in bright). Larger patches average noise down. Comparing app-default runs confuses lighting with subset. Always compare at the same subset to isolate lighting.
| Lighting | Effect on images | Effect on strain |
|---|---|---|
| Dim | Dark ROI, low sharpness, weak SSSIG | Highest scatter; needs large subset |
| Medium | Good luma and SSSIG | Middle — but tripod drift in some runs dominated outliers |
| Bright | Strong ROI luma, good contrast | Lowest scatter at fixed subset |
Device-to-device differences were secondary to lighting and burst stability in this study.
When you see it: Result viewer heatmap, CSV # field_stats, PDF field summary.
On a static specimen (zero true strain), the app still reports mean, median, min, max, and scatter. They answer different questions.
| Stat | What it is | How to read it on a static test |
|---|---|---|
| Mean / median | Average / middle Exx in the field | Stay near 0 mε — looks fine even when the run is noisy |
| Min / max | Single worst points in the field | Spike (±100–800 mε) from outliers, drift, or bad subsets — misleading alone |
| Robust σ (MAD) | Typical point-to-point scatter | Best single accuracy read — tracks lighting and subset |
CSV exports max/min/mean per frame; median on points is computed in reports. The heatmap colour scale uses percentiles (p02–p98); CSV extrema are raw.
When you see it: Wizard step 2 — deformed frames differ in pixel size from the reference.
Why it matters: Subset positions are in reference pixels; a size change breaks the grid unless frames are rescaled (not automatic).
What to do: Re-export all frames at the same resolution, or re-shoot with a fixed resolution setting.
When you see it: ROI width or height is smaller than the subset diameter.
What to do: Enlarge the ROI on the speckle, or reduce subset size in step 3.
When you see it: Sweep plan chip — subset range extends above what the ROI can fit.
What to do: Widen the ROI, lower the maximum subset in the sweep, or reduce step so fewer grid points are required.
When you see it: No valid subset × strain-window combinations for this ROI and ranges.
What to do: Enlarge the ROI or narrow subset / VSG ranges until at least one combination fits.
When you see it: Engine failure — decorrelation / AKAZE could not match the pair.
What to do: Check focus and speckle; ensure reference and deformed frames are the same scene; improve speckle contrast.
When you see it: Engine failure — ROI held no valid points.
What to do: Enlarge ROI; confirm it lies on speckle; check subset fits inside ROI (ROI too small).
When you see it: Engine failure — decode or engine start failed.
What to do: Re-import images; confirm files are readable PNG/TIFF; free memory on low-RAM phones.
When you see it: Engine failure — too few subsets converged.
What to do: Improve speckle and lighting; try a larger subset or smaller step; check for motion blur between frames.
When you see it: Engine failure or hollow lattice nodes — strain window too large for ROI/step, or no points survived VSG filtering.
What to do: Reduce strain window (VSG), enlarge ROI, or coarsen step. In sweeps, tap a hollow node for its one-line reason; Why? opens this section.
When you see it: Reference image failed to load or decode.
What to do: Try PNG/TIFF; avoid corrupted or unsupported RAW without conversion; check storage permission.
When you see it: One or more deformed frames failed to load.
What to do: Same as reference; ensure batch paths are stable and formats match.
When you see it: Video metadata could not be read.
What to do: Re-copy the file; try a shorter clip; confirm the container is supported on this phone.
When you see it: Too few frames extracted from the selected segment.
What to do: Widen the segment, lower sampling interval, or raise max frames in Settings.
When you see it: Result viewer opened without a .dat batch for this session.
What to do: Re-run analysis from the wizard, or open a session that completed successfully.
When you see it: Not enough memory to decode a full-field frame.
What to do: Close other apps; open a smaller analysis; reduce the ROI or shoot at a lower resolution.
When you see it: Custom colour-scale min ≥ max.
What to do: Set min below max, or reset to auto scale.
For painting a speckle and experiment design beyond this FAQ, see the iDICs Good Practices Guide for Digital Image Correlation, or the Manual and How DIC works.