En mobilkamera riktad mot en yta säger dig nästan ingenting kvantitativt om den ytan, eftersom bilden domineras av det ljus som råkar falla på den. En köksbänk fotograferad mitt på dagen och i skymningen ger två helt olika bilder av samma material. Kameran är en utmärkt detektor; problemet är att belysningen är okänd.

Mobilen har dock sin egen ljuskälla, bara några millimeter från linsen. Ficklampan är inte justerbar, dess färg går inte att ändra och den är inte kalibrerad i laboratoriemässig mening — men den är konsekvent: samma LED, samma position, samma ljusstyrka varje gång du tänder den. Ett känt ljus plus en detektor utgör grunden för ett riktigt optiskt instrument. Två av Sentios verktyg är byggda på just den grunden, och de riktar den i motsatta riktningar: det ena studsar ljuset mot en yta, det andra lyser igenom den.

Reflektion: bildparet är tricket

Reflektionsverktyget tar inte ett foto av en yta. Det tar två: ett med släckt ficklampa och ett med tänd ficklampa, från samma position, och arbetar med differensen.

Detta par är hela idén. Omgivningsbilden registrerar allt som rummet bidrar med — ljus från fönster, taklampor, skuggor. Bilden med tänd ficklampa registrerar samma scen plus en sak till: ytans svar på ficklampan. Subtrahera den första från den andra och rummet raderas i stort sett ut. Det som återstår är hur ytan svarade på ett ljus vars intensitet, position och spektrum är desamma vid varje körning. Du har ersatt ”ett foto i vilket ljus som helst” med ”den här ytans svar på en känd stimulans” — och den storheten är jämförbar från en mätning till nästa.

För att detta ska fungera måste kameran sluta försöka vara hjälpsam. Autoexponering skulle se bilden med tänd ficklampa som ljusare och i tysthet sänka förstärkningen; automatisk vitbalansering skulle färgkorrigera varje bild oberoende av varandra. Vilket som helst av detta förstör subtraktionen, eftersom de två bilderna inte längre skulle mätas på samma skala. Därför låser verktyget AE och AWB för paret — samma disciplin, av samma anledning, som när knacktestet använder mobilens obehandlade ljudväg. Signalprocessorerna som mobilerna levereras med är byggda för att få saker att se ut och låta bra; mätning kräver att de hålls ur vägen.

Vad är detta bra för? Överallt där den intressanta egenskapen är hur en yta återkastar ljus snarare än vilken färg den har:

Translucens: genomlysning, med linsen på andra sidan

Syskonverktyget vänder på geometrin. I stället för att studsa ficklampans ljus mot en yta trycker du provet mot kameralinsen med ficklampan bakom, och verktyget mäter hur mycket ljus som slipper igenom — och, vilket är mycket användbart, hur denna transmission skiljer sig mellan de röda, gröna och blå kanalerna. Detta är genomlysning — det klassiska tricket att hålla ett ägg mot en lampa — där mobilen står för både lampa och öga.

Uppdelningen i färgkanaler är viktig eftersom material sällan dämpar ljus jämnt över hela spektrumet. Ett löv släpper igenom rött lättare än blått; ett äggs innehåll förändrar färgen på det genomsläppta ljuset i takt med att ägget utvecklas; fruktskal släpper igenom ljus annorlunda när pigmenten förändras. Avläsningen är alltså inte bara ”hur mycket släpptes igenom” utan ”hur mycket av varje färg släpptes igenom” — och förhållandet mellan kanalerna är ofta mer informativt, och stabilare, än någon enskild nivå.

Användningsfall där frågan är ”hur mycket ljus slipper igenom, och vilken färg överlever”:

Ett ärligt förbehåll: samma uppställning, annars ingen jämförelse

Avläsningar av translucens är jämförbara mellan körningar med samma uppställning, inte mellan olika uppställningar — och det är värt att vara tydlig med varför, eftersom orsaken ligger i fysiken, inte i någon begränsning i programvaran.

När du trycker ett prov mot linsen blir kontaktens geometri en del av mätningen. Hur hårt du trycker förändrar provets tjocklek och hur tätt det ligger an. Exakt var det placeras förändrar sträckan från ficklampa till sensor. En luftspalt sprider ljus; en tätare kontakt gör det inte. Inget av detta registreras, så inget av det kan korrigeras för. Två avläsningar av samma blad, hållet på samma sätt på samma telefon, är en rättvis jämförelse. En avläsning från din telefon jämfört med en från en kompis — med annan placering av ficklampan, annan lins, annat tryck — är det inte, och verktyget kommer inte att låtsas som något annat.

Det här är samma resonemang, ärligt tillämpat, som formar allt annat på plattformen: använd avläsningar relativt, i en konsekvent uppställning, så är de tillförlitliga; behandla dem som absoluta universella värden så är de det inte. Tvåtelefoners-aktiviteten för ljudisolering går ganska långt för att bygga in den förhållandestrukturen i sitt eget protokoll, av just denna anledning.

Designregel: lita aldrig på en absolut nivå. Ficklampans LED-lampor skiljer sig mellan olika telefonmodeller, kamerasensorer skiljer sig i känslighet, och ingendera är kalibrerad. Därför är dessa verktyg byggda på skillnader och förhållanden — ficklampsbelyst minus omgivande ljus, rött i förhållande till blått, denna veckas avläsning mot förra veckans av samma objekt — storheter där de okända konstanterna tar ut varandra. Det är den optiska versionen av regeln som de akustiska verktygen följer: egenskaper måste överleva ett enhetsbyte, eller ärligt begränsas till en enda.

Två verktyg, ett instrument

Reflektans och translucens är samma instrument i två konfigurationer: ett fast ljus, en låst detektor och en funktion beräknad från en jämförelse snarare än en enskild bildruta. Båda körs helt på telefonen, båda sparar sina avläsningar i objektkatalogen så att en yta eller ett prov samlar på sig en historik, och båda kan i efterhand ges en etikett med faktiskt utfall — beläggningen som faktiskt fallerade, ägget som var befruktat — så att varje mätning blir ett framtida träningsexempel.

De är två punkter i en längre lista. För en fullständig rundtur av vad en telefons sensorer kan förvandlas till, börja med översikten av verktyg.