<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>GPGPU-basierte Echtzeitdetektion von Nanoob jekten mittels Plasmonen-unterstutzter Mikroskopie</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Frank Weichert</string-name>
          <email>frank.weichert@tu-dortmund.de</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Constantin Timm</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marcel Gaspar</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alexander Zybin</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Evgeny L. Gurevich</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Heinrich Mu¨ller</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Peter Marwedel</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>ISAS - Institut for Analytical Science</institution>
          ,
          <addr-line>Dortmund</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Lehrstuhl fur Eingebettete Systeme, Technische Universitat Dortmund</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Lehrstuhl fur Graphische Systeme, Technische Universitat Dortmund</institution>
        </aff>
      </contrib-group>
      <fpage>39</fpage>
      <lpage>43</lpage>
      <abstract>
        <p>Kurzfassung. Die Verfugbarkeit echtzeitfahiger und mobiler Biosensoren gewinnt durch die zunehmende Verbreitung viraler Infektionen zunehmend an Bedeutung. Im Gegensatz zu Virusdetektionsmethoden wie beispielsweise ELISA erlaubt die neuartige Plasmonen-unterstutzte Mikroskopie von Nanoobjekten, Proben innerhalb von wenigen Minuten auf Viren analysieren zu konnen. Die Herausforderung fur ein, auf dieser Analysemethode beruhendes In-situ-Virusdetektionssystem, besteht in der Echtzeitverarbeitung von extrem hohen Datenmengen. Hier setzt die vorliegende Arbeit an, welche eine hoch parallele GPU-basierte Verarbeitungspipeline zur echtzeitfahigen Virusdetektion vorstellt. Durch die konsequente Ausnutzung der GPGPU-Fahigkeiten von Gra kkarten kann auf teure Spezialhardware verzichtet werden, um eine echtzeitkonforme Beschleunigung notwendiger Bildverarbeitungs- und Bildanalysealgorithmen bereitzustellen, die auch den Anforderungen an ein eingebettetes Virusdetektionssystem gerecht wird.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Der Einsatz ubiquita¨r verfu¨gbarer echtzeitfa¨higer Biosensoren wird vor dem
Hintergrund eines Anstiegs epidemisch auftretender viraler Infektionen zunehmend
relevant [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Mit der neuartigen, am Leibniz-Institut fu¨r Analytische
Wissenschaften entwickelte PAMONO-Technik (engl. Plasmon-assisted Microscopy of
Nano-Size Objects) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] steht eine Methodik zur Verfu¨gung, welche vergleichbar
zu etablierten Verfahren, wie z.B. ELISA die gestellten Anforderungen an eine
zuverla¨ssige Virusdetektion erfu¨llt, aber zudem die Umsetzung an ein
echtzeitfa¨higes portables System ermo¨glicht. Daher ko¨nnte dieses System auch
außerhalb von Speziallaboren, direkt vor Ort, z.B. an Flugha¨fen eingesetzt werden,
da es auf keine aufwendige Infrastruktur angewiesen ist. Prinzipiell basiert der
PAMONO-Sensor [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] auf der Erkennung von markierungsfreien biomolekularen
Bindungsreaktionen an einer Goldoberfla¨che, in einer mit einer CCD-Kamera
aufgenommenen Bildserie. Zur Detektion von Bindungsereignissen wird der
Effekt ausgenutzt, dass polarisierendes Licht (Laser), welches gebu¨ndelt u¨ber ein
      </p>
      <p>
        Prisma auf eine Metallschicht trifft, reflektiert wird und dieses zu einer Anregung
der Oberfla¨chenplasmonen innerhalb der Metallschicht fu¨hrt. Eine Virusbindung
vera¨ndert dabei die reflektierte Intensita¨t [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Eine CPU-basierte Analyse mit hoher Detektionsrate fu¨r PAMONO-Daten
wurde in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] vorgestellt. Die automatische Verarbeitung dieser Bilderserien stellt
aber mit einer Datenrate von circa 50 Megabyte/s im Hinblick auf das
verarbeitende System besondere Anforderungen, da selbst aktuelle Multicore-CPUs
mit einer durchschnittlichen Verarbeitungszeit zwischen 70 100 ms pro Frame
fu¨r die vorliegende Detektionsaufgabe nicht mehr konform zu einer
Echtzeitdetektion sind. Eine effiziente Beschleunigungsmo¨glichkeit fu¨r parallele
Algorithmen bieten Grafikkarten. Diese werden zunehmend auch im medizinischen
Umfeld eingesetzt, beispielsweise bei der Verarbeitung von Ultraschallbildern, da sie
im Gegensatz zu Spezialprozessoren [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] einen flexibleren Entwurf von
Algorithmen unterstu¨tzen. Ausgehend von dieser einleitenden Darstellung thematisiert
der Abschnitt 2, die echtzeitfa¨hige Analyse und Verarbeitung der
PANOMODaten mittels hoch parallelisierter Detektionsalgorithmen und der Abschnitt 3
die Entwurfsraumexploration mit verschiedenen Grafikkartenplattformen. Zur
Bewertung der Nachhaltigkeit der Umsetzung erfolgt diese ausgehend von der
Bewertung der Erkennungsrate der Verarbeitungspipeline (Abschn. 3).
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Material und Methoden</title>
      <p>Die Erkennung von Nanoobjekten beruht konzeptionell auf drei algorithmischen,
echtzeitfa¨higen Basisschritten (Abb. 1). Methodisch wird diese parallele
Verarbeitung und Klassifikation des Eingabebilderstroms u¨ber zwei Konzepte erreicht
(Abb. 2). Im Hinblick auf die Vorverarbeitung und Klassifikation mittels
Zeitreihenanalyse werden die Zeitreihen pro Bildposition durch die Prozessoren der
Grafikkarte gleichzeitig analysiert (Abb. 2a). Zur Aggregation der klassifizierten
Pixel zu (Virus-)Objekten erfolgt eine Fraktionierung der Bildebene in
parallel zu verarbeitende Frames (Abb. 2b). Die Thread-basierte Verarbeitung der
PAMONO-Daten geschieht dabei komplett auf der Grafikkarte, um
Verzo¨gerungen durch Speichertransfers zwischen der Grafikkarte und dem Analyserechner
auszuschließen.</p>
      <p>Der initiale Schritt zur Verarbeitung der PAMONO-Daten ist eine
Bildverbesserung in Form einer Hintergrundbereinigung und Rauschreduktion. In
diesem Schritt wird insbesondere der zeitlich nicht bzw. langsam variierende
Bildanteil durch Subtraktion eines Hintergrundes entfernt, um Partikelanhaftungen
viHintergrundbereinigung</p>
      <p>Vorverarbeitung</p>
      <p>Wavelet-basierte
Rauschreduktion
Mittelung der
Bilddaten</p>
      <p>Detektion der Partikelkandidaten
ZeitGrerbaiahdseieinenarttneeanly-se PüoblyegroDnisetxatnrazkmtiaoßn
PataZteneraintlry-eMsiehaetmcnhi-ting Marching-Squares</p>
      <p>Pixelaggregation und Klassifikation
Nachverarbeitung der
Detektionen</p>
      <p>Visualisierung
PseudofarbDarstellung
Abb. 1. Schematische Darstellung der GPGPU-Verarbeitungspipeline.
suell und maschinell erfassbarer zu machen. Weiterhin findet in diesem Schritt
eine Gla¨ttung der zeitlichen Intensita¨tsvariation (Rauschreduktion) mittels
Wavelets statt. Die Algorithmen der Vorverarbeitung ko¨nnen bis auf die einzelne
Pixelposition parallelisiert werden, d.h. bei M N -großen Bildern in der
aufgenommenen Bilderserie, werden M N parallele Threads (Zeitreihen) ausgefu¨hrt
(Abb. 2a), die automatisch auf die verschiedenen Rechenkerne der Grafikkarte
verteilt werden.</p>
      <p>Im Anschluss an die Vorverarbeitung der Daten erfolgt die Differenzierung
jedes Pixels aufgrund seiner zeitlichen Intensita¨tsvariation (Abb. 2a) in die
Klassen (Virus-)Partikel (positiv) und Hintergrund (negativ). Ein Virus bzw.
Nanoobjekt (schwarze Kurven) manifestiert sich durch einen im Verha¨ltnis zu den
Hintergrundstrukturen (graue Kurven) pra¨gnanten Sprung im Intensita¨tsprofil.
Die Pixelklassifikation in diesem Schritt basiert auf einem kombinierten Ansatz
aus einer gleitenden Sprungdetektion im Sinne eines gleitenden
Mittelwertprozesses und auf der Berechnung der A¨ hnlichkeit eines Zeitreihenabschnittes zu
einer musterhaften Sprungfunktion. Die Algorithmen dieser Pipelinestufen
werden analog zur Vorverarbeitung parallelisiert.</p>
      <p>Der letzte Schritt aggregiert positiv klassifizierte Pixel (Abb. 3a, schwarz
markierte Pixel) in zusammenha¨ngende Bereiche bzw. Segmente und
klassifiziert jedes dieser Segmente unter Bewertung von Formfaktoren wie
beispielsweise Kreishaftigkeit. Die Granularita¨t der Parallelisierung erfolgt in dieser Stufe
der Verarbeitungspipeline unter Beru¨cksichtigung der Zerlegung der Frames in
gleichgroße Teilbilder (Abb. 2b), die in parallelen Threads verarbeitet werden.
Falls sich Segmente u¨ber mehrere Teilbilder erstrecken, werden die einzelnen
Berechnungen synchronisiert und die Verarbeitung in einem Thread fortgesetzt.
Die als Nanoobjekt (Virus) klassifizierten Bildbereiche sind in der Abbildung 3a
durch weiße Polygone visualisiert.</p>
      <p>5,5e+4
5,0e+4
4,5e+4
t
itä4,0e+4
sen
t
In3,5e+4
3,0e+4
2,5e+4
2,0e+4</p>
      <p>Analysefenster</p>
      <p>Nanopartikel
kein Nanopartikel
10 20 30 Ze4i0t/Schic5h0t 60 70 80 90
(a) Zeitreihen-Parallelitat</p>
      <p>N
n
e
il
e
Z
Abb. 2. Exemplarische Darstellung der verschiedenen Ebenen der parallelen
Verarbeitung eines Bildes der Gro e M N : (a) Prinzip der parallelen Analyse der M N
Zeitreihen und (b) parallele Verarbeitung von k Teilbildern der Gro e ∆m ∆n.</p>
    </sec>
    <sec id="sec-3">
      <title>Ergebnisse</title>
      <p>Die Evaluierung erfolgte ausgehend von einem PC-Komplettsystem (Intel Core 2
Duo 2.8GHz, 4GB, Nvidia GTS 250) und einer per Firewire verbundenen
CCDKamera (Kappa DX 4 – 1020). Als Testdatenfundus standen drei exemplarische
Typen von Datensa¨tzen (inkl. manueller Segmentierung) mit 4316 Bildern zur
Verfu¨gung. Zwei Typen von Datensa¨tzen mit einer Auflo¨sung von 1000 566
Pixeln respektive 1000 367 Pixeln beruhen auf synthetischen Partikeln der Gro¨ße
200nm bzw. 280nm, fu¨r den dritten Typus mit einer Auflo¨sung von 1000 295
Pixeln wurden virusa¨hnliche Partikel (Virus-like Particles) verwendet.
Unabha¨ngig vom betrachteten Datensatz konnte aus der Evaluierung abgeleitet werden,
dass die Verarbeitungsgeschwindigkeit der Pipeline fu¨r die maximale
Datenrate der Kamera (30 fps bei 800 600 Pixeln) ausreichend ist und damit eine
Echtzeit-konforme Auswertung prinzipiell garantiert werden kann.</p>
      <p>Initial wurde die Erkennungsgu¨te der automatisch detektierten Strukturen
(Abb. 3a) mit den Referenzsegmentierungen innerhalb einer ROC-Analyse
bewertet (Abb. 3b): Sofern eine U¨berschneidung zwischen den extrahierten und
den manuell bestimmten Polygonen vorlag, wurden diese als True-Positives
bezeichnet, nicht geschnittene Polygone aus der automatischen Bestimmung als
False-Negatives und nicht geschnittene Polygone aus der Referenzsegmentierung
als False-Negatives. Sowohl die synthetischen als auch die realkonformen
Nanoobjekte werden in ausreichender Gu¨te erkannt. Dass die Identifikation der
synthetischen Strukturen eine geringere Auspra¨gung falsch positiver Strukturen
ausweist, liegt an der bedingt besseren Auspra¨gung in der Darstellung.</p>
      <p>Zur na¨heren Analyse der Skalierbarkeit und Performanz der
Verarbeitungspipeline wurde zudem eine Variation der Grafikkartentypen (Nvidia GTS 250
und 9800 GTX: 128 Rechenkerne; Nvidia GTX 280: 240 Rechenkerne)
vorgenommen. Gema¨ß der Auswertung – akkumulierte Laufzeit in Millisekunden pro
Verarbeitungsschritt der Pipeline – kann eine Skalierbarkeit der
Geschwindigkeit mit der Anzahl der Rechenkerne festgestellt werden (Abb. 3c). Aus der
Aufschlu¨sselung der einzelnen Laufzeiten ist erkennbar, dass die Detektion der
(a)
Abb. 3. (a) Darstellung der Partikelkandidaten (schwarz) und der zu Segmenten
aggregierten Pixel (wei ); Statistischer Vergleich zur (b) Klassi kationsbewertung fur drei
exemplarische Datensatze und (c) zur Laufzeit der verschiedenen Pipelineschritte in
Abhangigkeit zur Gra kkarte.
Partikelkandidaten einen pra¨gnanten Anteil der Bearbeitungszeit innerhalb der
Pipelineverarbeitung aufweist (2 3 ms). Die Gesamtlaufzeit pro Frame
variiert zwischen 7 ms (Nvidia GTX 280) und 11 ms, d.h. es ko¨nnen zwischen 90
und 142 Frames pro Sekunde verarbeitet werden – bei der CPU-basierten
Implementierung nur ca. 10 Frames pro Sekunde. Die Auswertung der GPU-basierten
Detektion zeigt daher, dass die Kamera (maximale U¨ bertragungsrate der
Kamera: 30 fps bei 800 600 Pixeln) momentan der Flaschenhals der Anwendung ist,
die GPU-basierte Detektion hingegen auch effizient genug ist, um einen ho¨heren
Datendurchsatz zu ermo¨glichen.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Diskussion</title>
      <p>Ausgehend von der Motivation, eine Echtzeit-konforme Detektion von
Nanoobjekten (insbesondere Viren) fu¨r die neuartige PAMONO-Technik zur Verfu¨gung
zu stellen, wurden in dieser Arbeit GPGPU-basierte Verarbeitungsalgorithmen
innerhalb einer hoch-parallelen Pipeline zur Anwendung gebracht. Es konnte
gezeigt werden, dass die Verarbeitungspipeline bis zu 142 Bilder pro Sekunde
verarbeiten kann und damit die Verarbeitung im Moment sogar oberhalb der
maximalen Datenrate der aktuell verwendeten Kamera liegt. Durch die
integrierte Kombination von zur parallelen Verarbeitung ausgerichteten
Algorithmen, u.a. zur Wavelet-basierten Rauschreduktion und merkmalsbasierten
Klassifikation auf Zeitreihen, kann trotz der performanten Verarbeitung weiterhin
eine hohe Erkennungsgu¨te von Nanoobjekten erreicht werden.
Zusammenfassend ist festzuhalten, dass das vorliegende Verfahren die Voraussetzungen an
ein In-situ-Virusdetektionssytem erfu¨llt. Trotz der subjektiv recht guten
Ergebnisse besteht die Notwendigkeit, die vorliegenden Algorithmen weiter zu
optimieren, insbesondere im Hinblick auf eine weitergehende Elimination von
Artefakten in den Bildfolgen und einer fru¨hzeitigen Einschra¨nkung des
Suchbereichs. Zudem sollen versta¨rkt hybride Verfahren zwischen Template-basierten
und Partitions-basierten Ansa¨tzen sowie der Verwendung von
Strukturparametern von Partitions-basierten Verfahren integriert werden. Im Hinblick auf ein
angestrebtes portables Virusdetektionssystem ist eine Adaptierung an die
speziellen Anforderungen mobiler Grafikchips (z.B. Nvidia ION) geplant.
Literaturverzeichnis</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Erickson</surname>
            <given-names>D</given-names>
          </string-name>
          , et al.
          <article-title>Nanobiosensors: opto uidic, electrical and mechanical approaches to biomolecular detection at the nanoscale</article-title>
          .
          <source>Micro uid Nano uidics</source>
          .
          <year>2008</year>
          ;
          <volume>4</volume>
          (
          <issue>1</issue>
          ):
          <volume>33</volume>
          {
          <fpage>52</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Zybin</surname>
            <given-names>A</given-names>
          </string-name>
          , et al.
          <article-title>Real-time detection of single immobilized nanoparticles by surface plasmon resonance imaging</article-title>
          .
          <source>Plasmonics</source>
          .
          <year>2010</year>
          ;
          <volume>5</volume>
          :
          <issue>31</issue>
          {
          <fpage>5</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Weichert</surname>
            <given-names>F</given-names>
          </string-name>
          , et al.
          <article-title>Signal analysis and classi cation for surface plasmon assisted microscopy of nanoobjects</article-title>
          .
          <source>Sens Actuators B Chem</source>
          .
          <year>2010</year>
          ;
          <volume>151</volume>
          :
          <fpage>281</fpage>
          {
          <fpage>90</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Dasika</surname>
            <given-names>G</given-names>
          </string-name>
          , et al.
          <article-title>MEDICS: ultra-portable processing for medical image reconstruction</article-title>
          .
          <source>In: Proc PACT. ACM; 2010</source>
          . p.
          <volume>181</volume>
          {
          <fpage>92</fpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>