Behandling av stora mängder mätdata

Laborationen ger träning på filhantering och lite bildbehandling.

Introduktion: i denna laboration kommer du att skriva program som läser in hundratals bilder och analyserar dessa. Bilderna utgör riktiga mätdata från experiment som utfördes under våren och sommaren 2009 vid Laboratory for Molecular and Integrative Cellular Dynamics, Harvard Medical School (högst rankade universitet för medicinsk forskning i USA). Mätningarna utfördes av Peter Berntsen (rulla ner på sidan) tidigare doktorand vid Kondenserade materiens fysik, Chalmers. Jag har samarbetat med Peter flera år, bland annat med detta projekt, och jag bad honom om hjälp för att hitta på en realistisk fysiklab. Peter har dessutom skrivit om bakgrunden till fysiken, se punkt 1 nedan.

Det skall sägas att den analys projektgruppen (Peter, jag och personer vid Harvard) gör av mätdata är mer komplicerad än vad du kommer att göra i labben, den får ju inte bli för svår. Så, du får t.ex. inte tillgång till den stora mängd numeriska data som är knuten till varje bild.

Här är en del av en typisk bild:
Liten bild

Det du ser är metallkulor (en del markerade markerade med gröna plus) som sitter fastvuxna på ett monolager av mänskliga celler. Labben går, i all korthet, ut på att hitta alla gröna plus och göra lite statistik över fördelning etc. För att kunna lösa uppgiften krävs en hel del bakgrundsinformation, så börja med att läsa avsnitt ett-fyra nedan (ja, jag vet att det är en del text att läsa :-)  Avsnitt fem är däremot svårläst och helt frivilligt.
  1. Bakgrund av Peter Berntsen.
  2. Något om filhantering under unix och i Matlab.
  3. Lite om hur bilder lagras.
  4. Detaljer om labben samt lite tips.
  5. Länk till en vetenskaplig artikel om problemet (PDF), Peter och jag är medförfattare. Jag påstår inte att du skall kunna läsa artikeln efter att ha gjort labben.

Här följer nu det du skall göra.

Skriv ett program (du får själv bestämma vilka funktioner du vill ha) som läser bildfilerna och beräknar och skriver ut, på ett snyggt sätt:
  1. totala antalet bildfiler
  2. minsta antalet plus i en fil och namnen på de filer som har detta minsta antal
  3. största antalet plus i en fil och namnen på de filer som har detta största antal
  4. medelvärdet av antalet plus
  5. totala antalet plus

Slutligen skall ditt program rita ett histogram (help hist) över fördelningen av antalet plus.

Programmet skall kunna köras genom att man ger kommandot lab3 . Det är många filer så programmet får inte vara för långsamt.
När programmet är färdigt skall vi befinna oss i samma katalog som när vi startade programmet (och inte alltid i den katalog där bilderna ligger).
Det är viktigt att välja bekväma datastrukturer i labben, så tänk efter lite extra om du skall ha vanliga matriser/vektorer, cellvektorer, poster etc.

Back