Kapittel 2 — Inspector (Expert View)

Tom Inspector før import: Den venstre kolonnen viser punktene Images, Cameras og Log, under dem overskriften «Images (0)» og slippflaten «Drop images here / or tap + to import». Viewporten i midten er tom. Til høyre står Inspector med seks sammenslåtte seksjoner: Presets, Cameras & Capture, Training, Progress, Look og Export. Under hver overskrift forteller en grå linje hva seksjonen gjør og når den virker — «Ready-made recipes — they replace the training settings» (Presets), «Before training · decides how camera positions are solved · applies to the next run» (Cameras & Capture), «Before training · drives scene build-up and optimization · applies to the next run» (Training), «Display only» (Progress), «After training · applies immediately · reversible any time» (Look) og «Leveling the floor turns the view at once; the chosen orientation and format apply when saving» (Export). Helt nederst løper statuslinjen med status «Idle» samt den grønne start- og den røde stopp-knappen; øverst til høyre står bryteren Simple/Expert, her på Expert.

Inspector etter import: Overskriften i bildelisten viser «Images (35)», under den står de importerte opptakene med stigende filnavn fra IMG_0953.JPG. Bildene i denne testserien foreligger med 4032×3024 piksler; Auto-Render-Scale-logikken leser denne oppløsningen og foreslår en passende Render Scale. Viewporten er fortsatt tom, statuslinjen står på «Idle». Den grønne start-knappen nede til venstre er nå aktiv og starter treningen med den aktive Preset.

Inspector under trening: Tittellinjen viser den globale fremdriften, her «RadianceKit — Training 23%». Viewporten rendrer den pågående rekonstruksjonen i sanntid — en gummiand på et saueskinn, allerede tydelig gjenkjennelig (oppdateringsintervallet for live-forhåndsvisningen står i Settings → General → Training → Live Preview). Under Viewport løper fremdriften («4,700/20,000», «ETA 1m9s») og metrikklinjen med Loss 0.0109, LR 2.0e-04, SH 1 og Gaussians 16.0K; nede til venstre ligger pause- og stopp-knappen. I Inspector er gruppen CLASSIC utvidet, «Balanced 20K iters» har den grønne haken. Et «Modified»-merke vises først når en parameter avviker fra Preset — her er ingen slik å se. Sidepanelet «Log» samler SfM- og Training-Stage-hendelser.

Inspector etter trening: Tittellinjen forteller resultatet: «Training Complete — 8,708 Gaussians». I den venstre kolonnen står «Complete» med samme tall, i tillegg Images 25 og Cameras 35 — 25 bilder fordi Frame-Quality-dialogen har sortert ut ti uskarpe av 35 opptak. Statuslinjen melder «Completed» ved 20,000/20,000, metrikklinjen Loss 0.0075, LR 0.0e+00, SH 3 og Gaussians 9.7K. Viewporten viser den ferdige punktskyen formatfyllende — orbital dra-navigasjon aktiv (roterer rundt scenens midtpunkt).
At det her står to forskjellige Gaussian-tall, er tilsiktet: Metrikklinjen og Training Metrics viser status ved slutten av treningen (her 9,660, avrundet 9.7K), tittellinjen og scenen viser status etter de automatiske opprydningsrundene (8,708). Mellom dem ligger Post-Training Compactification og fjerning av nål- og skiveformede splats. Det mindre tallet er det som står i Viewport og som lagres ved eksport. Gruppene Training Metrics og Loss History er nå fylt med sluttverdiene, Export-seksjonen er aktiv.
Inspector er den høyre sidepanelet i Expert Mode (⌘2). Den samler alle treningsrelevante parametere i seks sammenleggbare seksjoner, som siden 2026-07-18 er gruppert etter domene. Standard- rekkefølgen ovenfra og ned er: Presets, Cameras & Capture, Training, Progress, Look og Export. Under hver overskrift står en andre linje som forteller fasen — når seksjonen virker og hvor reversibel den er (f.eks. «Before training · decides how camera positions are solved · applies to the next run» for Cameras & Capture, «After training · applies immediately · reversible any time» for Look, «Display only» for Progress). To tidligere seksjoner er slått sammen: Metrikker og Tapskurve er nå to separat sammenleggbare grupper («Training Metrics» og «Loss History») inne i Progress, og den tidligere Enhancements-seksjonen ligger nå fullt og helt i Training. «Look»-seksjonen (bildejusteringer etter trening) er den reelle UI-omdøpingen av den tidligere «Finishing»-seksjonen — det interne navnet er fremdeles «Finishing» av kompatibilitetshensyn, mens den viste overskriften heter «Look» (samme mønster med Training, som internt heter «Training Configuration»). Hver seksjon kan slås sammen ved klikk på overskriften, rekkefølgen kan endres med dra-og-slipp. Ved første oppstart er seksjonene sammenslått — på bildet over er alle seks lukket; app-tilstanden lagrer preferanser for sammenslåing og rekkefølge deretter på tvers av app-oppstarter. En allerede lagret gammel oppsett blir ved første oppstart migrert én gang til den nye grupperingen; Viewport ▸ Reset Inspector Layout gjenoppretter leveringstilstanden.
En rekke betjeningselementer fra Inspector dukker opp i nesten identisk form også i innstillingene (kapittel 3) — typisk SfM-backend, Sky-Masking og lignende standardverdier. Skillet er bevisst: Innstillingene leverer den app-globale malen for nyopprettede prosjekter, Inspector overstyrer disse verdiene for det prosjektet som er åpent nå. Den som først kjenner betjeningslogikken til den ene siden, kan bruke den andre blindt.
Den venstre kolonnen i Expert Mode — Project Navigator — hører ikke til Inspector, men er dens direkte nabo. Der kan importerte bilder velges med klikk, vises med mellomromstasten i Quick Look og fjernes med minus-knappen eller slette-tasten (med Cmd-Z for å angre). Inspector følger det gjeldende utvalget i sidepanelet med kontekstspesifikk detaljinformasjon, men de syv hovedseksjonene er alltid tilgjengelige.
Look-seksjonen (L1–L5)
Look-seksjonen (internt fortsatt kalt «Finishing») er siden domene-omgrupperingen den femte Inspector-seksjonen — mellom fremdrift og eksport — og samler post-trenings -bildejusteringene på ett sted. Alle regulatorer virker ikke destruktivt: Hver slider anvender look-beregningen på nytt på en uendret pristine-øyeblikksbilde (original DC-farge, -opacity, -skalering) — justeringen er dermed idempotent, ikke kumulativ. Resultatet vises live i Viewport (WYSIWYG, akkurat slik den senere eksporten blir) og bakes inn i hver eksport. Seksjonen er først tilgjengelig etter at en treningsøkt er fullført (før det står «Available after a training run completes."); verdiene tilbakestilles ved hver ny trening. Så lenge en eksport pågår, er alle regulatorer låst — en lås-melding «Locked while exporting — the file uses the current settings." vises og GroupBox er deaktivert.
L1Saturation-slider
HVOR
Inspector → Look-seksjonen → GroupBox → Saturation.
TEKNISK
Slider 0.5–1.2, visning med to desimaler (f.eks. «1.00»). Skalerer SH-DC-kroma til hvert splat rundt luminans-verdien: 1.0 = uendret, < 1.0 = avmettet (fargen trekkes mot gråtoner), > 1.0 = kraftigere. Matematisk regnes DC-fargen tilbake fra pristine-øyeblikksbildet, slik at gjentatt flytting ikke summeres opp. Er validert på DJI-drone-materiale (Pensford-viadukten), som har en tendens til overtegning — drone-standardverdien ligger på 0.82. Virker kun på farge-basisen (SH-grad 0), høyere SH-koeffisienter berøres ikke.
L2Splat length-slider
HVOR
Inspector → Look-seksjonen → GroupBox → Splat length.
TEKNISK
Slider 0.3–1.0, visning med to desimaler. Trekker de tre skaleringsaksene til hver Gaussian i logg-rommet mot gjennomsnittsverdien (jo mindre verdien, desto sterkere): 1.0 = uendret, mindre verdier gjør avlange «nål»-splat rundere, 0 ville vært rene kuler. Angriper nål-aktige, overstrukne splat uten å endre totalstørrelsen, og reduserer dermed typiske «konfetti»-artefakter. Anvendt fra pristine-øyeblikksbildet (original logg-skalering), derfor idempotent. Kommuterer med Splat size (L3), fordi begge jobber i logg-rommet.
L3Splat size-slider
HVOR
Inspector → Look-seksjonen → GroupBox → Splat size.
TEKNISK
Slider 0.5–2.0, visning med to desimaler. Skalerer hver Gaussian uniformt på alle tre aksene: 1.0 = uendret, < 1.0 = mindre/tettere/skarpere, > 1.0 = større/«luftigere» (fyller hull mellom splatene). Siden skaleringene ligger i logg-rommet, blir multiplikasjonen der til en additiv forskyvning — dette kommuterer med Splat length (L2), fordi en konstant offset lar avviket-fra-gjennomsnittet være urørt. Fra pristine-øyeblikksbildet, altså idempotent. Ny i denne versjonen.
L4Fade far region (med under-slidere)
HVOR
Inspector → Look-seksjonen → GroupBox → bryteren «Fade far region» pluss under-sliderne «Fade start ×radius» og «Fade floor».
TEKNISK
Bryter som aktiverer et radialt opacity-fall med avstanden fra kameraets tyngdepunkt — den svakt observerte «far-konfettien» i bakgrunnen tones ut. Kun for orbit-opptak: Bryteren er gråtonet ut når scenen ikke kvalifiserer for dette (lineære flyginger, for få eller degenererte kameraer); da vises meldingen «Far-fade applies only to orbit captures (not this scene)." i stedet for under-sliderne. Egnetheten fastslås via azimut-dekning av kameraposisjonene (en orbit sirkler tyngdepunktet og fyller mange kompass-sektorer, en lineær flyging kun ~2). To under-slidere styrer geometrien: Fade start ×radius (1.0–3.0) setter innerradiusen som et multiplum av orbit-radiusen, innenfor hvilken full opacity gjelder; Fade floor (0.0–1.0) er opacity-faktoren langt utenfor fade-radiusen. Viktig: Fadeen hopper over sky-dome-området (de frosne Gaussians i kuppelen), slik at den bevisste bakgrunnskuppelen ikke dempes med.
L5Reset finishing-knapp
HVOR
Inspector → Look-seksjonen → GroupBox → «Reset finishing» (nederst, liten knapp).
TEKNISK
Tilbakestiller alle look-innstillinger til standardverdiene (Saturation 1.0, Fade av, Splat length 1.0, Splat size 1.0) og utløser umiddelbart en ny finishing, slik at Viewport hopper tilbake til den uendrede trente tilstanden. Siden hele look-stacken regner idempotent fra pristine-øyeblikksbildet, er «tilbake til standard» eksakt det opprinnelige trenings-resultatet — ingen kvalitetstap ved gjentatt frem og tilbake. Låst som alle regulatorer i seksjonen mens en eksport pågår.
Presets-seksjonen (I1–I11)
Presets-seksjonen er den raskeste måten å bruke en testet konfigurasjon på. Innebygde presets (Capture Class, Classic, MCMC, Hybrid) gir utprøvde, reproduserbare utgangspunkter; egne presets kan lagres, eksporteres, importeres og deles. Listen er gruppert etter kategorier (Capture Class, Classic, MCMC, Hybrid, Custom) og mer enn én kategori kan være utvidet samtidig. Via kontekstmeny-mekanismen (høyreklikk på en rad) kan du nå eksport, duplisering og — for egne presets — sletting.
I1Save…-knappen
HVOR
Inspector → Presets-seksjonen → Save…-knappen (handlingslinje nederst).
TEKNISK
Åpner en popover med tekstfelt og Save-/Cancel-knapper. Gjeldende tilstand for treningsinnstillingene lagres som et nytt brukerdefinert preset (JSON-kodet, lagret app-overgripende). Lagringen kopierer alle 81 treningsparametere pluss gjeldende Densification-strategi. Presetet havner automatisk i kategorien Custom, uavhengig av hvilket innebygd preset det ble avledet fra. Tomme navn og rene whitespace-inntastinger forkastes. Allerede eksisterende navn avvises ikke — hvert preset har sin egen interne ID, doble navn er teknisk tillatt, men i praksis forvirrende.
I2Preset Name-tekstfelt
HVOR
Save-popover → tekstfelt «Preset Name».
TEKNISK
Enkelt tekstfelt med avrundet ramme, bred form. Verdien blir tatt i bruk som presetnavn når du klikker på Save-knappen. Ingen lengdebegrensning i grensesnittet, men det lagrede navnet må kunne JSON-kodes og vises i UI-listene — emoji og æøå fungerer. Innholdet tilbakestilles automatisk til en tom streng når popoveren åpnes. Save-knappen forblir deaktivert så lenge feltet er tomt etter trimming. Det finnes ingen auto-forslag og ingen forhåndsutfylling med navnet på presetet som er aktivt akkurat nå.
I3Cancel-knapp (Save-dialog)
HVOR
Save-popover → Cancel-knapp (til venstre).
TEKNISK
Lukker popoveren uten å lagre. Forkaster tekstfeltets innhold — neste gang det åpnes, tilbakestilles det igjen til tomt via Save…-knapp-logikken (I1). Standard knappestil, ingen bekreftelsesdialoger, ingen hurtigtaster. Gjeldende TrainingConfig forblir uendret, siden lagringsveien aldri ble utført.
I4Save-knapp (Save-dialog)
HVOR
Save-popover → Save-knapp (til høyre, fremhevet stil).
TEKNISK
Utløser selve lagringen. Validerer på nytt at navnet ikke er tomt (defensiv sjekk) og skriver deretter gjeldende TrainingConfig som JSON til app-lagringen. Lukker deretter popoveren. Blå fremheving, grået ut så lenge tekstfeltet er tomt. Hvis lagringen mislykkes (f.eks. fordi app-lagringen er full — svært usannsynlig), finnes det for øyeblikket ingen synlig feildialog; presetet ville da rett og slett ikke dukke opp ved neste app-oppstart.
I5Export…-knapp
HVOR
Inspector → Presets-seksjonen → handlingslinje → Export…-knapp.
TEKNISK
Eksporterer det for øyeblikket valgte presetet som en .radiancepreset-fil (internt JSON). Deaktivert når ingen preset er valgt. Ved klikk åpner appen en lagringsdialog med forhåndsutfylt filnavn (presetnavn + .radiancepreset-endelse). Det lagrede formatet inneholder hele TrainingConfig pluss metadata (navn, kategori, ID, innebygd-flagg). Dobbeltklikk i Finder åpner appen — men ikke automatisk importen; brukeren må bruke Import-knappen (I6).
I6Import…-knapp
HVOR
Inspector → Presets-seksjonen → handlingslinje → Import…-knapp.
TEKNISK
Åpner en fildialog som kun tillater .radiancepreset-filer (flervalg deaktivert). Ved valg lastes JSON-filen, valideres og settes inn i Custom-kategorien — med ny intern ID, slik at ingen kollisjoner med innebygde presets oppstår. Importen setter automatisk kategorien til Custom, selv om det eksporterte presetet opprinnelig var f.eks. et innebygd preset. Skadede filer eller filer som er inkompatible med en eldre skjemaversjon avvises stilltiende, uten feildialog (konsolloggen gir imidlertid opplysninger).
I7Preset-rad (klikk-aktivering)
HVOR
Inspector → Presets-seksjonen → hver preset-rad i hver kategori.
TEKNISK
Klikk på en preset-rad erstatter alle feltene i TrainingConfig med verdiene fra presetet, husker ID-en til det aktive presetet og tilbakestiller Modified-statusen. Aktiv-hakemerket foran raden vises kun når presetet er valgt OG uendret. Så snart en verdi i TrainingConfig endres (glidebryter, stepper, bryter i de andre Inspector-seksjonene), vises et oransje «Modified»-merke bak navnet. Innebygde presets kan ikke overskrives — ved endring må en egen kopi opprettes via Save-knappen (I1).
I8Kontekstmeny «Export…»
HVOR
Høyreklikk på hver preset-rad → første oppføring «Export…».
TEKNISK
Identisk funksjonalitet som I5 (Export…-knappen), men mer bekvem tilgjengelig — uten at presetet trenger å være valgt fra før. Eksporterer direkte presetet som ble klikket på i raden. Fungerer likt for alle preset-kategorier (innebygd eller Custom), ingen begrensning. Eksporten inneholder det innebygde flagget og opprinnelig kategori, men ved re-import mappes kategorien til Custom slik det er beskrevet under I6.
I9Kontekstmeny «Duplicate»
HVOR
Høyreklikk på hver preset-rad → andre oppføring «Duplicate».
TEKNISK
Kloner presetet inn i Custom-kategorien. Genererer en ny intern ID, legger « Copy» til navnet og lagrer kopien. Fungerer også for innebygde presets — klonen er da redigerbar. Originalen forblir uberørt. TrainingConfig blir kopiert verdi for verdi (JSON-rundtur), slik at det ikke finnes referansebindinger mellom original og kopi.
I10Kontekstmeny «Delete»
HVOR
Høyreklikk på egne preset-rader → siste oppføring «Delete» (rød, destruktiv).
TEKNISK
Kun synlig for Custom-presets. Innebygde kan ikke slettes. Oppføringen er markert som destruktiv, vises rødt i kontekstmenyen og er skilt ut bak en skillelinje, slik at man ikke klikker den ved et uhell. Det finnes ingen bekreftelses- dialog — ett klikk sletter presetet umiddelbart. Det slettede presetet kan ikke gjenopprettes (Cmd-Z fungerer ikke her — Undo finnes i den gjeldende byggen kun for bildelisten, ikke for preset- operasjoner). Hvis det slettede presetet var aktivt, forblir gjeldende TrainingConfig uendret, kun det aktive preset-valget nullstilles.
I11Kategori-header (utvide/kollapse)
HVOR
Inspector → Presets-seksjonen → hver kategori-header (Capture Class, Classic, MCMC, Hybrid, Custom).
TEKNISK
Utvidelsesstatus per kategori med ulik standardverdi: den kuraterte gruppen Capture Class starter utvidet, Classic, MCMC, Hybrid og Custom starter kollapset. Statusen lagres ikke — ved app-omstart er alle kategorier tilbake i standardtilstanden. Chevron-pilen roterer animert. Tallet til høyre i headeren viser antall presets i denne kategorien. Klikk-treffområdet omfatter hele header-området.
Trainingskonfigurasjon-seksjon (I12–I22)

Her ligger de sentrale spakene for treningskjøringen: hvordan Densification arbeider, hvor mange iterasjoner, hvor stor SSIM-vektingen er — i tillegg helt nederst de tidligere selvstendige utvidelsene (Perceptual Loss, Outdoor-gruppen, Advanced Densifier, Post-Training-passeringer). Helt øverst står Densification som trippel-bryter Classic | MCMC | Hybrid. SfM-backenden er ikke lenger her, men i sin egen seksjon Kameraer & opptak (I12, I13). De tre MCMC-radene («MCMC Quality», «Auto-scale by scene» og «Max Gaussians») forsvinner ikke lenger i Classic-modus, men forblir synlige og blir nedtonet; under det står en rad med hengelås-symbol som forteller hva som må endres («Only used by the MCMC and Hybrid densifiers — switch Densification above to change these.»). En adskilt blokk under det oppsummerer radene som gjelder for alle densifiers: Depth-Priority Scatter, Full-Resolution Training, det koblede paret Max Iterations / Densify Until samt glidebryterne SSIM Weight og Render Scale.
I12Camera Alignment-velger
HVOR
Inspector → Kameraer & opptak → Camera Alignment (popup-meny under Projection-velgeren).
TEKNISK
Popup-meny, ikke en segmentert velger — etikettene sprenger den smale Inspector-kolonnen. Hvilke oppføringer som vises, avhenger av build: den sandboxede App Store-versjonen tilbyr Apple Photogrammetry og Native, dev-/DMG-builds i tillegg COLMAP. Grunnen: COLMAP er et eksternt kommandolinjeprogram, og sandboxede apper får ikke starte fremmede binærfiler (App-Review-retningslinje 2.5.2) — derfor mangler backend-oppføringen med mapper-velger og binærfil-sti helt i Store-builden, i stedet for å være permanent nedtonet: en rad som aldri kan lyse opp, er ikke et hint, men støy. Ikke forveksle: Import og eksport av en COLMAP-arbeidsflate er ren Swift-filparsing, krever ingen COLMAP-installasjon og fungerer i enhver build (kapittel 1, M5). Tillegget «(Beta)» på Native-oppføringen er fjernet — Native har ikke vært beta siden v1.5.2. Valget bestemmer SfM-backenden for neste kjøring og styrer samtidig hvilke rader under kan betjenes (I13, High-Quality, Native SfM Recipe). Fotnote i grensesnittet: Ved et usortert bildesett retter pipelinen seg alltid etter Native, uansett hva velgeren viser — denne oppskriften finnes bare der. Velgeren låses bevisst ikke i denne situasjonen (verdien er ikke utilgjengelig, den blir bare overstyrt); i stedet vises et hint med forgreiningssymbol.
I13FOV Override-felt (Native SfM)
HVOR
Inspector → Kameraer & opptak → FOV Override (alltid synlig, kan bare betjenes ved Camera Alignment = Native).
TEKNISK
Numerisk tekstfelt (område 0-170°), standard 0 = automatisk bestemmelse fra EXIF eller heuristikk. Manuell inntasting er nødvendig hvis inndatabildene er hentet fra en video som ikke inneholder brennvidde-metadata. Typiske verdier: iPhone Wide ≈ 73°, DJI Mavic Wide-Crop ≈ 70°, drone med fullformatsensor ≈ 84°. Verdien klemmes til [0, 170] — verdier utenfor blir umiddelbart klemt tilbake. Påvirker bare den native SfM-pipelinen (Q4/Q5); Apple Photogrammetry ignorerer denne verdien helt. Siden 2026-07-18: Under andre backends blir feltet ikke lenger skjult, men nedtonet — sammen med «High-Quality» og «Native SfM Recipe» og en rad med hengelås-symbol («These configure the Native aligner — choose Native under Camera Alignment to change them.»). Den tidligere skjulingen skjulte at disse kontrollene i det hele tatt finnes. Sperren henger på det valgte backendet, ikke det faktisk brukte — omdirigeringen av usorterte bildesett til Native meldes i stedet av hintet under I12. Raden «Native SfM Recipe» krever i tillegg et usortert bildesett og har ellers sin egen forklaringsrad.
I15Densification-velger
HVOR
Inspector → Trainingskonfigurasjon → Densification (segmentert velger, alltid synlig).
TEKNISK
Bytter mellom de to Densification-strategiene: Classic (original 3DGS-metoden med Clone/Split/Prune og gradient-terskel) og MCMC (Stochastic Gradient Langevin Dynamics med Relocation, NeurIPS 2024). Ved overgang fra Classic til MCMC setter appen automatisk de MCMC-spesifikke feltene til utprøvde standardverdier (Reg-Weights = 0, MCMC-Cap-Multiplier 3.0, Sample-/Noise-Schedule). Uten denne automatiske initialiseringen led økter med gamle presets av 1.4.4-MCMC-Collapse-feilen (460K→5 Gaussians, watchdog-drap). Velgervalget bestemmer i tillegg hvilke Inspector-elementer som er synlige — ved MCMC dukker I16/I17 opp. Detaljert feltvirkning i kapittel 6, T11–T16 (Classic) og T61–T73 (MCMC).
I16MCMC Quality-bryter
HVOR
Inspector → Training → MCMC Quality (alltid synlig, kan betjenes ved Densification = MCMC eller Hybrid).
TEKNISK
Bytter gradient-akkumulering til 2 steg (aktiv) hhv. 1 steg (inaktiv). Akkumulerer gradientene fra to etterfølgende kamera-visninger før optimizer-steget utføres. Dette jevner ut optimeringsbanen og forbedrer sluttresultatet litt, men merkbart. Prisen: dobbelt så lang treningstid. Ved svært lange treninger (200K iterasjoner) gir dette ekstra 10+ minutter ventetid — så det lønner seg bare når de siste prosentene kvalitet virkelig trengs. Påvirker bare treningen, ikke eksportformatet eller viewport-visningen. Gjelder også for Hybrid, som bruker samme MCMC-maskineri. Siden 2026-07-18: Under Classic forsvinner raden ikke lenger, men blir nedtonet sammen med I17 og «Max Gaussians»; under det står «Only used by the MCMC and Hybrid densifiers — switch Densification above to change these.»
I17Auto-scale by scene-bryter
HVOR
Inspector → Training → Auto-scale by scene (alltid synlig, kan betjenes ved Densification = MCMC eller Hybrid).
TEKNISK
Når aktiv, skalerer den effektive Max-Gaussians- grensen med SfM-init-punktantallet × MCMC-Cap-Multiplier (standard 3.0). Eksempel: SfM leverer 250K initpunkter, basis-cap = 150K, multiplier 3.0 → effektiv grense = max(150K, 750K) = 750K. Når deaktivert, gjelder strengt bare basisen. Basisen selv står i raden Max Gaussians rett under (siden 1.8, standard 150 000, inndata klemt til 10 000–30 000 000). Ligger den effektive grensen over basisen, viser appen den i klartekst («Effective cap for this scene: …») — samt RAM-advarsel hvis den blir for høy. Ble innført for v1.4.5, fordi store utendørsopptak med over 1000 bilder og tilsvarende høy SfM-punkttetthet med den stive 150K-cap-standarden sultet ut Densification — overflødige punkter ble værende, nye fikk ikke oppstå. Standard AV i egendefinerte presets, PÅ i MCMC-innebygde presets. Virker bare i treningstiden, ikke ved eksport. Siden 2026-07-18: Under Classic blir raden nedtonet i stedet for skjult (med samme forklaringsrad som I16); klartekst-visning og RAM-advarsel vises der bevisst ikke, fordi Classic ikke bruker noen øvre grense i det hele tatt.
I18Max Iterations-steppevelger
HVOR
Inspector → Trainingskonfigurasjon → GroupBox → Max Iterations.
TEKNISK
Steppevelger med område 1 000–100 000, trinnstørrelse 1 000. Bestemmer det totale antallet optimizer-iterasjoner. Lineært korrelert med treningstiden (halvering = ca. 50% tid). Utprøvde verdier er 20K (Classic Balanced), 40K (Classic Quality) og 200K (MCMC Full). Over 40K gir Classic knapt noen forbedring — avkastningen flater ut. Ved endring blir, hvis lenkefunksjonen (I19) er aktiv, Densify Until dratt proporsjonalt med (standardforhold: 0.5, dvs. Densify-Until = Max/2).
I19Lenke/frikoble-knapp (Densify ↔ Iterations)
HVOR
Inspector → Trainingskonfigurasjon → GroupBox → liten lenke-knapp mellom Max Iterations og Densify Until.
TEKNISK
Bryteknapp som fryser forholdet mellom Densify Until og Max Iterations. Ved aktiv (lenke-ikon uthevet) blir Densify Until dratt proporsjonalt med ved hver endring av Max Iterations. Ved frikobling (lenke-pluss-ikon) forblir verdiene uavhengige. Standard er lenket, fordi det gjenspeiler den typiske korrelasjonen — hvis du drar treningen til dobbelt så mange iterasjoner, vil du som regel også la Densification kjøre proporsjonalt lenger. Forholdet beregnes ut fra gjeldende verdi når lenke-knappen settes; et typisk forhold er 0.5 (Densify-Until = halvparten av iterasjonstallet).
I20Densify Until-steppevelger
HVOR
Inspector → Trainingskonfigurasjon → GroupBox → Densify Until.
TEKNISK
Steppevelger med område 500–50 000, trinnstørrelse 500. Bestemmer iterasjonsindeksen der ingen nye Gaussians lenger legges til gjennom Clone/Split (Classic) eller Relocation (MCMC). Etter at den er nådd, forbedres bare posisjon og farge videre. Høyere verdier = flere Gaussians = større fil, lengre tid per iterasjon (+30-60% GPU-tid per steg). Typiske verdier: 15K (for 30K Max-Iter), 20K (for 40K), 100K (for 200K MCMC). Ved aktiv lenke (I19) skaleres den automatisk med. Virker forskjellig ved Classic vs MCMC: Classic stopper veksten helt, MCMC stopper Relocation-logikken, men Sample-/Noise-tilpasningen fortsetter.
I21SSIM Weight-glidebryter
HVOR
Inspector → Trainingskonfigurasjon → GroupBox → SSIM Weight.
TEKNISK
Glidebryter 0.0–1.0 i 0.05-trinn, visning som «0.20». Blander L1-loss (0.0) og SSIM-loss (1.0). L1 strammer opp lysstyrken per piksel, SSIM den strukturelle likheten (kanter, lokale statistikker). Standard 0.2 er verdien fra det opprinnelige 3DGS-papiret (Kerbl 2023) og et robust kompromiss for nesten enhver scene. Høyere verdier (0.5+) foretrekker detaljbevaring, men kan ignorere lokale lysstyrkefeil. Lavere verdier (< 0.1) fører til detaljtap ved skarpe kanter. SSIM- beregningen kjører i shaderen med et 11×11-Gaussian-vindu. Ytelse: Ved 0.0 (bare L1) er treningen ca. 8-12% raskere, fordi SSIM-beregningen i shaderen hoppes over.
I22Render Scale-glidebryter
HVOR
Inspector → Trainingskonfigurasjon → GroupBox → Render Scale.
TEKNISK
Glidebryter 0.25–1.0 i 0.25-trinn, visning som «100%». Skalerer trenings-rendering-oppløsningen relativt til kildebildestørrelsen. Største spak på ytelsen: 50% reduserer GPU-tid med ca. 75% (fordi 4× færre piksler), 25% med ca. 94%. Gradient- terskelen skaleres automatisk med. Under glidebryteren vises en live-oppløsningsvisning i MP (f.eks. «2304×1296 (3.0 MP)»). Hvis gjeldende verdi avviker fra den anbefalte, vises «— recommended: 50%» i oransje skrift. Anbefalingen sikter mot ~3 MP effektiv oppløsning — det området Apple Silicon-GPU-er behandler mest effektivt. 4K-kildebilder får f.eks. automatisk anbefalt 25%, FullHD-bilder 100%. En endring utløser i tillegg en buffer-reallokering.
Enhancements-gruppene (i Training-seksjonen, I26–I29, I42–I44)

Disse gruppene samler funksjoner som forbedrer bildekvaliteten uten å endre selve kjerne-trenings-loopen. Frem til 2026-07-18 utgjorde de en egen Inspector-seksjon ved navn Enhancements; siden domene-omgrupperingen sitter de nederst i seksjonen Training. Den tidligere Viewport-Scaling-velgeren (Off/MetalFX/Lanczos) er fjernet uten erstatning: den hadde aldri noen effekt — blit-avgjørelsen i viewporten er rent geometrisk — og betegnelsen lovet i tillegg en oppskalering, mens den faktiske Lanczos-passeringen er en antialiasing-ned-skalering av et oversamplet bilde. Visningen i viewporten heter derfor nå „Sampling" i stedet for „Scaling" (kapittel 4); ingen steder i appen oppskaleres det med MetalFX. Perceptual Loss (I29) er til tross for gruppetilhørigheten en del av treningen — den aktiveres under treningen som et ekstra loss-ledd; den ligger helt øverst, med forklaringslinjen „Multi-scale blur feature matching for structural similarity". Under kommer gruppen Outdoor med fire brytere — Sky Masking, Person Masking, Floater Cleanup og Reconstruct Sky Dome (I42–I44) —, trenings-valg mot himmel-floatere, som tidligere lå i innstillingsvinduet og nå ligger per prosjekt her. Deretter følger den sammenslåtte raden „Advanced Densifier (Expert)", som bærer en varseltrekant fordi bak den ligger regulatorer som også kan ødelegge en trening. Til slutt kommer gruppen „Runs automatically at the end of training" med Post-Training Compactification (I26) og bryteren „Remove Needle/Disc Floaters".
I26Post-Training Compactification-bryter
HVOR
Inspector → Training → gruppen „Runs automatically at the end of training" → Post-Training Compactification.
TEKNISK
Aktiverer en oppryddingsgjennomgang på slutten: Etter at trenings-iterasjonene er fullført, slettes Gaussians med Opacity under 0.01 (1 % synlighet). Dette krymper filstørrelsen typisk til omtrent halvparten, uten at et kvalitetstap blir synlig — fordi disse Gaussians uansett ikke bidrar visuelt. Compactification kjører som en GPU-Compact-pass og tar avhengig av Gaussian-antall brøkdeler av et sekund til noen få sekunder. Påvirker ikke trenings-ytelsen. Hvis denne bryteren er av, eksporteres også usynlige Gaussians — relevant kun hvis du trenger formatet til et videre trenings-stadium (Continue Training), ellers er det sløsing med lagringsplass.
I29Perceptual Loss-glidebryter
HVOR
Inspector → Training → Perceptual Loss.
TEKNISK
Glidebryter 0.0–0.2 i steg på 0.01, visning ved 0.0 som „Off", ellers som „0.05" osv. Aktiverer et ekstra loss-ledd som sammenligner multiskalert Gaussian-blur av renderingen med fasitbildet (ground truth, 3 blur-skalaer). Fanger opp strukturelle forskjeller som L1+SSIM alene ikke oppdager. Verdier mellom 0.05 og 0.1 forbedrer fine strukturer merkbart og koster dermed bare litt trenings-tid — rundt 5 % (ekstra forward-pass gjennom blur-kjernene). Over 0.15 blir treningen ustabil og kvaliteten synker igjen, fordi dette loss-leddet dominerer optimeringen. Virker under treningen, ikke i etterbehandlingen — til tross for plasseringen ved Enhancement-radene på slutten av Training-seksjonen er dette altså ingen ren etterjustering.
I42Sky Masking
HVOR
Inspector → Training (Outdoor-gruppen) → bryteren „Sky Masking". Lagres per prosjekt; standard: av.
TEKNISK
Aktiverer pre-training Apple-Vision-basert himmel-piksel-segmentering. Før treningsstart hentes for hvert inngangs-kamera himmel-regionen ut via Apple-Vision-forgrunnsmaske (himmel = bakgrunn) og tilordnes som en piksel-vis maske til det respektive kameraet. Under treningen multipliseres loss-bidraget per piksel med komplementet av himmel-masken — himmel-piksler bidrar med 0 til gradienten, slik at Gaussians som projiserer inn i himmelen ikke mottar optimerings-signaler og dermed ikke blir „tettere" eller „lysere". Reduserer floatere (mørke klumper i himmelen) betydelig ved utendørs-/drone-scener. Koster ~3 % L1-regresjon ved klassisk 40K-trening. Kun fornuftig ved utendørs-scener med klart gjenkjennelig himmel; ved innendørs-scener eller hvit bakgrunn identifiserer himmel-segmenteringen feil områder og blokkerer gyldige loss-signaler. Verdien lagres per prosjekt (ikke lenger app-globalt) og følger presetet hhv. scenefilen.
I43Floater Cleanup
HVOR
Inspector → Training (Outdoor-gruppen) → bryteren „Floater Cleanup" (undertittel „Remove Gaussians outside all camera views"). Lagres per prosjekt; standard: av.
TEKNISK
Bryteren styrer to effekter med ulike betingelser; begge utledes ved oppstart til den kjøre-lokale konfigurasjonen, og skrives ikke til den lagrede konfigurasjonen (ellers ville de hengt igjen som en engangs-rasting). (1) Frustum-union-cull ved treningsslutt — Gaussians utenfor unionen av alle kamera-frusta fjernes („aldri observert" = „aldri begrenset", og nettopp det er de fleste floatere). Denne delen har ingen strategi-betingelse og kjører likt ved Classic, MCMC og Hybrid — det er den bryteren er oppkalt etter. (2) To ekstra density-control-passeringer midt i løpet — kun ved Classic og kun fra 30 000 iterasjoner, satt til 55 % og 85 % av løpelengden (ved 35–40K altså rundt 20K og 30K). Begge passeringene leter etter Gaussians med svært lav opacity, minimal screen-space-størrelse og uten loss-bidrag, og fjerner dem. Effekt: ~5–15 % færre Gaussians på slutten, merkbart færre mørke klumper i himmelen ved drone-/utendørs-scener. Koster ~1–3 % L1-regresjon ved close-up-innendørs-scener, derfor ikke aktivert som standard. Verdien lagres per prosjekt og følger preset hhv. scenefil. Korrigering i forhold til tidligere utgaver: Bryteren er ikke lenger begrenset til Classic-densifieren og gråes heller ikke lenger ut under MCMC/Hybrid — det hadde nettopp stengt MCMC- og Hybrid-brukere ute fra cullen som virker for dem. Ved korte løp (f.eks. P2 Preview 5K) bortfaller kun midt-i-løpet-delen.
I44Reconstruct Sky Dome
HVOR
Inspector → Training (Outdoor-gruppen) → bryteren „Reconstruct Sky Dome". Lagres per prosjekt; standard: av.
TEKNISK
Aktiverer sky-dome-projeksjonen før treningen. Etter SfM og før treningsstart hentes for hvert inngangs-kamera den i S7 delte Apple-Vision-himmel-masken ut fra bildet, himmel-pikslene de-projiseres med kamera-intrinsikkene til en virtuell kule-overflate (standard-radius 8× scene-radius). På denne kulen initialiseres ~5000 nye Gaussians med farge-gjennomsnitt fra de projiserte himmel-pikslene, svært stor skalering (1.0 i scene-enheter) og start-opacity 0.95. Disse 5000 Gaussians er ikke en himmel-maske i klassisk forstand — de trenes som alle andre, men holdes gjennom den høye start-opaciteten i en tynn skall. Resultat: ved 360°-novel-views i utendørs-/drone-scener vises faktisk himmelfarge og skystrukturer i stedet for mørke confetti-klumper. Verdien huskes over omstarter. Fornuftig kun ved utendørs-scener med i det minste 360°-kamera-dekning; ved rene object-captures uten himmel-sikt har det ingen effekt. Status: eksperimentell, bredere A/B-validering over flere utendørs-sett gjenstår.
Metrikk-seksjon (I30–I37)

Mens en trening pågår, viser metrikk-gruppen («Training Metrics», en av de to sammenleggbare gruppene i seksjonen Fremdrift) åtte live-verdier fra treningsløkken. Før en trening starter er den tom («Start training to see live metrics»). Alle verdier oppdateres omtrent hvert 30. iterasjon (oppdateringsfrekvens for live-metrikkene). Seksjonen er skrivebeskyttet — ingen element er klikkbart eller endres. For dypere analyse kan du bruke JSONL-treningsloggene under ~/Documents/RadianceKit/Logs/.
I30Iteration
HVOR
Inspector → Fremdrift → Training Metrics → Iteration. Skrivebeskyttet.
TEKNISK
Visning i formatet «4523 / 40000» — gjeldende iterasjon over totalt planlagte iterasjoner. Telles synkront med treningsløkken, som pusher verdiene hvert ~30. iter. Det andre tallet tilsvarer Max-Iterations-verdien ved starttidspunktet; det endrer seg ikke lenger, selv om brukeren justerer steppern etterpå — den pågående kjøringen bruker sin egen snapshot-kopi. Hvis appen legger til iterasjoner via Training-menyen (Continue Training +5K/+10K/+20K), øker nevneren.
I31Loss
HVOR
Inspector → Fremdrift → Training Metrics → Loss. Skrivebeskyttet.
TEKNISK
Flyttallverdi med seks desimaler (f.eks. «0.024385»). Måler den kombinerte L1+SSIM-loss (miksforhold kontrollert via I21 SSIM Weight) pluss eventuelt Perceptual Loss (I29) og andre regularisatorer. Skalaen er ikke absolutt, men scene-avhengig — krever samme datasett for de fleste sammenligninger. Typiske sluttverdier ved gode konfigurasjoner: - Classic Quality 40K iters: 0.022–0.025 (Horse, Truck, Garden) - MCMC Full 200K iters: 0.024–0.028 - Utendørs drone 30K: 0.030–0.060 (dårligere pga. geometri) - Innendørs leiligheter: 0.018–0.025
Verdier over 0.10 etter 5K iterasjoner tyder på SfM-problemer (dårlige kameraposer) — avbryt og kjør SfM på nytt.
I32Learning Rate
HVOR
Inspector → Fremdrift → Training Metrics → Learning Rate. Skrivebeskyttet.
TEKNISK
Visning i vitenskapelig notasjon (f.eks. «1.60e-04»). Gjeldende læringsrate for posisjonsparametrene (3DGS har seks uavhengige læringsrater for posisjon, SH-DC, SH-Rest, Opacity, Scale, Rotation — her vises Position-LR som en representativ størrelse). Standard startverdi 1.6e-4, som synker via eksponentiell decay til ~1.6e-6 ved treningsslutt. Forfallet kan justeres via LR-Schedule-feltet i treningskonfigurasjonen (T-feltet i kap. 6). Hvis LR forblir uvanlig høy (f.eks. 1e-3 eller mer etter 10K iterasjoner), kan det tyde på en feilaktig lastet konfigurasjon.
I33SH Degree
HVOR
Inspector → Fremdrift → Training Metrics → SH Degree. Skrivebeskyttet.
TEKNISK
Heltall 0-3. Spherical-Harmonics-grad for fargerepresentasjonen. Begynner på 0 (bare DC-komponenten, dvs. retningsuavhengig farge per Gaussian — altså bare en RGB-konstant) og øker gradvis gjennom treningen opp til 3. Standard-schedulen øker graden med 1 ved 1000/2000/3000 iterasjoner. SH-3 tilsvarer 48 fargekoeffisienter per Gaussian (3 RGB-kanaler × 16 SH-basisfunksjoner). Høyere SH-grad = mer retningsavhengig refleksjon (blanke overflater ser korrekt forskjellige ut fra forskjellige vinkler), men også mer minne og tregere trening.
I34Gaussians
HVOR
Inspector → Fremdrift → Training Metrics → Gaussians. Skrivebeskyttet.
TEKNISK
Gjeldende antall Gaussians i modellen, formatert med lokal-separator (f.eks. «524.318»). Vekst: - Classic: starter på SfM-init-punktene (typisk 50K-300K), vokser gjennom Clone/Split til like før Densify Until, deretter statisk til treningsslutt (med unntak av pruning) - MCMC: sample-punkter legges til frem til MCMC-caps, deretter bare relocation
Sunne sluttverdier: - Classic Quality: 400K-700K (Horse 524K, Garden 800K) - MCMC Full: nøyaktig på caps (standard 150K, med Auto-Scale Multiplier × SfM-antall avhengig av scene 500K-1.5M)
Ved MCMC faller tallet til < 60% av caps → anomali (collapse-indikator, tyder på for aggressive regularisatorer).
I35GPU Memory
HVOR
Inspector → Fremdrift → Training Metrics → GPU Memory. Skrivebeskyttet.
TEKNISK
Estimat av minnebruken til Gaussian-bufferen som Gaussian-antall × 616 bytes (formatert i minne-stil). 616 bytes er størrelsen til en fullt utstyrt Gaussian (posisjon, skalering, rotasjon, opacity, SH-koeffisienter grad 3, gradient- akkumulator). Visningen omfatter ikke renderer-overhead (tile-buffer, sort-buffer, backward-buffer) — det reelle GPU- minnebehovet ligger typisk 2-3× over denne verdien. Ved 500K Gaussians: vises ~290 MB, reelt ~700 MB. Ved 1.5M Gaussians: vises ~880 MB, reelt ~2.5 GB. På M3 Max med 64+ GB unified memory ukritisk, på M3 Pro med 18 GB allerede en grense.
I36Speed
HVOR
Inspector → Fremdrift → Training Metrics → Speed. Skrivebeskyttet.
TEKNISK
Iterasjoner per sekund med ett desimaltall («24.3 it/s»). Beregnes av traineren som et glidende gjennomsnitt over de siste ~100 iterasjonene. Typiske verdier: - Quick Preset (1K iters): 80-120 it/s (kort, ingen steady-state) - Classic 20K @ 1.0 Render Scale (Truck-scene, M3 Max): 25-35 it/s - Classic 20K @ 0.5 Render Scale: 80-120 it/s - MCMC 200K @ 0.5 Render Scale: 25-50 it/s (tregere pga. relocation) - Ved 1M+ Gaussians og full oppløsning: < 10 it/s
Synkende speed gjennom treningen er normalt — flere Gaussians = mer beregning per iterasjon. Plutselige fall (f.eks. fra 30 → 5 it/s) tyder på GPU-thermal-throttling eller konkurrerende apper.
I37Elapsed
HVOR
Inspector → Fremdrift → Training Metrics → Elapsed. Skrivebeskyttet.
TEKNISK
Allerede forløpt tid som «4:23» (m:ss) eller «1:23:45» (h:mm:ss). Formatbytte etter 1 time. Måler kun den rene treningstiden, ikke de forutgående fasene (SfM-beregning, bilde- import). Ved pause/gjenoppta fortsetter klokken å gå — det er altså wall-clock, ikke CPU-tid.
Loss-diagram-seksjon (I39–I41)

Loss-diagram-gruppen («Loss History», den andre klappbare gruppen i seksjonen Fremdrift) visualiserer treningsforløpet over tid. Den består av to diagrammer: et loss-kurve-diagram (stort, øverst, blått) og et Gaussian-Count-diagram (mindre, nederst, oransje). Begge bygges opp live under treningen og forblir synlige helt til neste treningsstart. Før første trening er området tomt («Loss curve will appear during training»). Diagrammene er rene SwiftUI-Path-tegninger (ikke Swift-Charts-rammeverket), slik at de også renderer flytende ved 100K+ punkter.
I39Current Loss (visning)
HVOR
Inspector → Fremdrift → Loss History → venstre etikett-område «Current: 0.0075». Skrivebeskyttet.
TEKNISK
Float-verdien til det siste loss-sample-punktet, formatert med fire desimaler. Identisk med I31 (Loss i metrics-seksjonen), bare mer kompakt formatert her. Kilden er loss- historikken — en liste som får en oppføring per ~30 iterasjoner. Kun endelige verdier tas med i listen — NaN/Infinity (svært sjeldent, ved en gradient-eksplosjons-feil) filtreres bort.
I40Min Loss (visning)
HVOR
Inspector → Fremdrift → Loss History → høyre etikett-område «Min: 0.0051» (grønn). Skrivebeskyttet.
TEKNISK
Minimum av alle loss-verdier som noensinne er observert i den aktuelle treningskjøringen. Beregnes live på nytt fra loss-historikken — ingen separat lagring. Vises med grønn skrift fordi «Min» = «beste så langt». Den stiplede grønne linjen nederst i diagrammet markerer denne Y-posisjonen visuelt. Ved Continue-Training- økter starter minimum-sporingen på nytt — den gamle historikken erstattes i UI-en av den nye (blir ikke lagt til). Hvis den aktuelle treningen går dårligere enn den forrige, kan min-visningen dermed være høyere enn forrige sluttresultat.
I41Gaussian Count-diagram
HVOR
Inspector → Fremdrift → Loss History → andre diagram under (oransje). Skrivebeskyttet.
TEKNISK
Linjediagram over antall Gaussians gjennom treningsiterasjonene. Kilde: Gaussian-count-historikken (liste av (iter, count)-par, fylt av treneren hver ~30. iter). Y-skalaen er dynamisk mellom minimum og maksimum i historikken. Ved Classic- strategi ser kurven typisk slik ut: jevnt stigende frem til Densify Until, deretter flat (med små pruning-svingninger). Ved MCMC: bratt stigning frem til cap, deretter horisontal linje (relocation holder tallet konstant). En nedgang helt på slutten er normalt — i bildet over synker kurven fra rundt 16K til 9 660, fordi opprydningspassene etter siste iterasjon trer i kraft (I26). Bare et fall midt i kjøringen er urovekkende: da prunes det for aggressivt i densification — tegn på feil standardverdier eller en kjent MCMC-collapse-feil (v1.4.4-hotfix-tema).
Hvordan leser man loss-kurven?
Loss-diagrammet er det viktigste diagnoseverktøyet i Inspector — ingen annen indikator viser like direkte om treningen gjør nyttig fremgang eller sitter fast. Den typiske sunne formen er et raskt fall i de første 1000-3000 iterasjonene (fra ~0.15 til ~0.05), etterfulgt av et langsomt, jevnt fall frem til treningsslutt (ned til 0.020-0.030). Logaritmisk sett virker kurven da som en glatt diagonal.
Hva betyr et platå i loss-en? Hvis kurven forblir flat over flere tusen iterasjoner, finnes det to mulige tolkninger: (a) Treningen har «konvergert» — loss-en kan ikke lenger synke betydelig, fordi modellen er så god som den kan bli med gitte data og innstillinger. Dette er ønskelig; det er «ferdig». (b) Treningen «henger» — loss-en kunne egentlig fortsatt synke, men optimeringen stagnerer (lokalt minimum, læringsrate for lav, densification av). For å skille dem: Hvis loss-verdien ligger i et typisk godt område (0.020-0.030 for innendørs/objekt, 0.040-0.060 for utendørs) og kurven har vært flat i 5K iterasjoner, har den konvergert. Hvis verdien er merkbart høyere enn for sammenlignbare scener (f.eks. 0.08), henger den.
Merk: Gaussian-platå ≠ loss-platå. Et platå i Gaussian-antallet betyr ikke «treningen er ferdig». Det betyr bare at densification har sluttet å legge til nye punkter — enten fordi grensen er nådd (Classic) eller fordi MCMC-cap-en er full. Treningen fortsetter deretter og finjusterer bare de eksisterende punktene. Det egentlige «ferdig»-signalet leser du av loss-kurven og iterasjonsvisningen (I30), ikke her.
Tommelfingerregel for avbrudd: Hvis loss-kurven etter 5000+ iterasjoner ligger over 0.08 og knapt synker mer, er det stor sannsynlighet for at SfM-rekonstruksjonen er skjev. Avbryt treningen, sjekk i kapittel 9 om det valgte SfM-backend-et passer til scenen, bytt eventuelt til COLMAP/Native, og start på nytt. Det er bedre å bruke 10 minutter på bedre SfM enn 2 timer trening med dårlig kamerajustering.
Når bør du bruke Inspector?
Hurtigreferanse: Hvilken seksjon + hvilke controls for hvilket typisk bruksområde?
| Vanlig oppgave | Seksjon | Control-ID-er |
|---|---|---|
| Avmette fargene til det ferdige splatet | Look | L1 (Saturation) |
| Runde av nål-/konfetti-splats | Look | L2 (Splat length) |
| Fylle hullete sky / forstørre splats | Look | L3 (Splat size) |
| Skjule fjern «fjern-konfetti» ved orbits | Look | L4 (Fade far region) |
| Forkaste look-justeringer | Look | L5 (Reset finishing) |
| Laste et ferdig oppsett | Presets | I7 (klikk på rad) |
| Lagre eget oppsett | Presets | I1 → I2 → I4 |
| Dele oppsett med kolleger | Presets | I5 (Export) hhv. I6 (Import) |
| Bytte SfM-backend (f.eks. fordi Apple-PG er for ustabil) | Kameraer & opptak | I12 (se kap. 9) |
| Behandle videobilder uten EXIF-brennvidde | Kameraer & opptak | I13 (FOV Override) |
| COLMAP-ytelse: GLOMAP i stedet for klassisk | Kameraer & opptak | I14 — kun i utviklerversjoner, i App Store-versjonen mangler COLMAP som backend |
| Bytte fra Classic til MCMC | Treningskonfigurasjon | I15 |
| La treningen kjøre lenger | Treningskonfigurasjon | I18 (Max Iter) + I20 (Densify Until) — koblet via I19 |
| Halvere GPU-tiden | Treningskonfigurasjon | I22 (Render Scale til 50%) |
| Treningskvalitet +6% (MCMC) | Treningskonfigurasjon | I16 (MCMC Quality) |
| Utendørs scene med mange SfM-punkter | Treningskonfigurasjon | I17 (Auto-scale by scene) |
| Sette opp / bytte COLMAP-sti | Kameraer & opptak | I23 / I24 / I25 — kun i utviklerversjoner |
| Gjøre eksportfilene mindre | Trening | I26 (la alltid stå på) |
| Den siste dråpen detalj i fine strukturer | Trening | I29 (Perceptual Loss 0.05-0.1) |
| Overvåke treningen | Fremdrift ▸ Training Metrics | I30 (Fremdrift), I36 (tempo) — gjenstående tid vises i transportstripen under viewporten |
| Vurdere kvaliteten tidlig | Fremdrift ▸ Training Metrics | I31 (Loss < 0.05 etter 5K = bra) |
| Mistanke om SfM-problem | Fremdrift (begge gruppene) | I31 + I39 (Loss > 0.08 etter 5K → kjør SfM på nytt) |
| Skille mellom convergence og stuck | Fremdrift ▸ Loss History | I39 + I40 (lese loss-platå) |
| Oppdage densification-problem | Fremdrift ▸ Loss History | I41 (Gaussian-kurven faller → bug) |