GPU accelerated Fourier Ptychography
Description
Full text not available
Abstract
Fourier Ptychography er en nylig utviklet teknikk innenfor beregningsbasert mik-roskopi, som rekonstruerer et høyoppløselig bilde, med stort synsfelt, ut i fra etsett med lavoppløselige mikroskop-bilder. En programmerbar LED-matrise belyserprøven fra flere vinkler, slik at den kan rekonstrueres i høy detalj av en iterativfaseinnhentnings-algoritme.Denne avhandlingen utforsker potensialet FP-algoritmen har til å utnytte denubestridte regnekraften til moderne GPUer. En GPU-basert FP rekonstruksjonsal-goritme er utviklet i CUDA og sammenlignet med en eksisterende Matlab imple-mentasjon, med en økning i ytelse på opptil 70x.Ytelsen og nøyaktigheten til CUDA-basert FP rekonstruksjon i singelpresisjoner sammenlignet med dobbelpresisjon. Med en ytelsesøkning tilsvarende 4.3x,uten tap i nøyaktighet.Motivasjonen for en blokkprosesserings-tilnærmelse for rekonstruksjon av storebilder er diskutert. Både med tanke på bildekvalitet og minnehåndtering. En multi-tråd blokkprosesserings-løsning for rekonstruksjon av store bilder er presentertog utviklet i CUDA. Muligheten for å skjule minnetransaksjoner og oppnå høyereytelse, ved å benytte flere CUDA strømmer, er diskutert og realisert med moderatytelsesøkning.En simpel metode for korrektere uønskede effekter, som følger av å sy sammenbilder i blokkprosessering, er presentert og implementert på GPU med tilstrekke-lige resultater. Fourier Ptychography is a recently developed technique in computational micro-scopy that reconstructs a high field of view, high resolution image from a set of low resolu-tion microscope images. The sample is illuminated from multiple incident anglesusing a programmable LED matrix as back-light, and reconstructed using an iter-ative phase-retrieval algorithm.In this thesis, the potential for the FP reconstruction algorithm to utilize theunprecedented computing power of modern GPU’s is investigated. A GPU basedGauss-Newton FP reconstruction algorithm is developed in CUDA and comparedagainst an existing Matlab implementation, with an achieved increase in through-put of up to 70x.The performance and accuracy of single-precision CUDA FP reconstruction ismeasured against double precision, yielding increased throughput of 4.3x in singleprecision with no loss of accuracy.The motivation for a block-processing approach to reconstruct large imagesis discussed. Both in terms of improved quality of reconstruction, and efficientmemory handling. A multi-threaded block-processing solution for large image re-construction is presented and developed in CUDA. The prospect of this solutionto hide memory transfers and improve performance, through concurrency of mul-tiple CUDA streams, is discussed and realized with moderate performance gain.A simplistic method of correcting stitching effects that arise from block-processingis presented and implemented on GPU, with adequate results.