Skip to content
WAD-QC edited this page Apr 9, 2014 · 18 revisions

De analysemodule WAD_MG voor WAD software is bedoeld voor analyse van flatfield opnames van een mammograaf, en is getest voor de Lorad Selenia mammograaf.

De analysemodule kent twee acties:

  1. WAD_MG_AEC: analyse van parameters uit de DICOM header gerelateerd aan de belichtingsautomaat (Automatic Exposure Control, AEC)
  2. WAD_MG_flatField: analyse van een flatfield opname

De opnames worden met een flatfield fantoom (EUREF: 'standaard test block') gemaakt worden, doorgaans een PMMA blok van 4 tot 5 cm dat de gehele detector bedekt. Voor de AEC test opnamen moet de automaat gebruikt worden. Voor de flatfield opname kan een vaste mAs waarde (vergelijkbaar met de waarde die de belichtingsautomaat geeft) gebruikt worden, dit heeft als voordeel dat de detector onafhankelijk van de belichtingsautomaat getest wordt, en als nadeel dat de buisopbrengst van invloed is op de resultaat. De flatfield analyse kan ook op een opname met de belichtingsautomaat worden uitgevoerd. Voor de flatfield analyse is het essentieel dat een DICOM type 'for processing' (klasse codering: 1.2.840.10008.5.1.4.1.1.1.2.1) gebruikt wordt.

Functionele beschrijving

WAD_MG_AEC

Deze actie haalt een aantal parameters uit de DICOM header, gerelateerd aan de werking van de belichtingsautomaat. De opname moet dus met de belichtingsautomaat zijn gemaakt.

Beschrijving van de analyse

  • AEC - Exposure [mAs]: uit DICOM veld ExposureInuAs, of als dat niet gedefinieerd is: Exposure
  • AEC - Exposure Index: DICOM veld te configureren (configuratie file, zie hieronder)
  • AEC - Exposure Time: uit DICOM veld ExposureTime
  • AEC - Organ Dose: uit DICOM veld OrganDose
  • AEC - Entrance Dose [mGy]: uit DICOM veld EntranceDoseInmGy

Overige velden:

  • kVp: uit DICOM veld KVP
  • AEC Anode Target Material: uit DICOM veld AnodeTargetMaterial
  • AEC Filter Material: uit DICOM veld FilterMaterial
  • AEC Sensor: uit DICOM veld ExposureControlModeDescription

WAD_MG_flatField

De functionaliteit van de actie WAD_MG_flatField is gelijk aan die van het programma FlatFieldTest.exe dat beschikbaar is gesteld via de EUREF. NB: Voor de flatfield analyse is het essentieel dat een DICOM type 'for processing' (klasse codering: 1.2.840.10008.5.1.4.1.1.1.2.1) gebruikt wordt.

Beschrijving van de analyse Voor de Flatfield Global analyse worden alle pixels in het beeld gebruikt, behalve enkele rijen bovenaan en onderaan de detector (zie parameter skipRows in configuratie file)

  • Flatfield Global - Mean: gemiddelde van alle pixel waardes
  • Flatfield Global - SD: standaard deviatie van alle pixel waardes
  • Flatfield Global - SNR: Mean / SD

Voor de ROI analyse wordt een vierkante ROI, grootte 10mm x 10mm, over het gehele beeld heen 'geschoven' in stapjes van 5mm. Van elke ROI worden een aantal grootheden berekend:

  • Flatfield ROI - SNR: SNR (=mean/SD) per ROI, gemiddeld over alle ROI's
  • Flatfield Deviating Pixels - aantal pixels dat onder of boven de drempelwaarde ligt. Drempelwaarde is gedefinieerd als fractie van het gemiddelde ROI signaal. De fractie moet gedefinieerd worden, zie parameter threshold in de configuratie file. Een typische waarde is 0.2. Het aantal deviating pixels is beperkt tot maximaal 200.
  • Flatfield Deviating ROIs - aantal ROIs waarvan de SNR onder of boven de drempelwaarde ligt. Drempelwaarde is gedefinieerd als fractie van de gemiddelde SNR-per-ROI. De fractie moet gedefinieerd worden, zie parameter SNRthreshold in de configuratie file. Een typische waarde is 0.2.

De ROI analyse genereert ook een afbeelding van de flatfield opname met daaroverheen de Deviating Pixels in rood gemarkeerd en de Deviating ROIs in blauw. Aangezien de mammogrammen doorgaans vrij veel pixels bevatten, wordt slechts 1 op de 25 pixels weergegeven, en de Deviating Pixels kunnen ook over elkaar heen vallen. De afbeelding is dus duidelijk indicatief.

Een complete lijst met de coordinaten van de deviating pixels is te vinden in 'niveau 2' van de resultaten.

Configuratie file

Acties

  • WAD_MG_AEC

  • Parameters <params>

<EI_field> naam van het DICOM veld waar de Exposure Index uit gehaald moet worden. De naamgeving is die van de Matlab DICOM info structuur.

  • Actielimieten <Exposure> <ExposureIndex> <ExposureTime> <OrganDose> <EntranceDose> <kVp>

  • WAD_MG_flatField

  • Parameters <params>

<skipRows> aantal rijen dat overgeslagen moet worden in de flatfield analyse. Als de eerste rijen sterk afwijkende pixel waarden hebben (en dus compleet als 'deviating pixel' worden geclassificeerd) wordt het maximum aantal deviating pixels (200) bereikt. De tekst auto kan worden gebruikt in plaats van een getal, in dat geval wordt de eerste rij waarvan het gemiddelde ongelijk is aan het gemiddelde van de vorige rij geincludeerd in de analyse.

<threshold> fractionele drempelwaarde (fractie van gemiddelde) voor detectie van 'deviating pixels'.

<thresholdSNR> fractionele drempelwaarde (fractie van gemiddelde SNR) voor detectie van 'deviating ROIs'.

  • Actielimieten

<mean> Flatfield global mean.

<SNR_ROI> Gemiddelde van de SNR-per-ROI.

Voor de overige resultaten kunnen ook actielimieten gezet worden, de naamgeving van de velden is:

<SD> <SNR> <mean_ROI> <SD_ROI>

Voorbeeld configuratie file

<?xml version="1.0" encoding="UTF-8"?>

<!--
    Configuratie voor WAD MG analyse module
-->

<WAD_MG_config>
    <!-- naam van de configuratie -->
    <name>Selenia</name>

    <!-- beschrijving -->
    <description>WAD MG configuratie voor VUmc Hologic Selenia</description>

    <!-- versie / datum -->
    <version>1.1.0 / 20131127</version>
        
    <!-- Logfile verbose options -->
    <logverbose>
	<!-- mode: 0 = quiet, 1 = to logfile, 2 = to screen, 3 = to log + screen -->
	<mode>1</mode>
	<!-- level: 1 = normal, 2 = output series search -->
	<level>1</level>
    </logverbose>


<!-- *** ACTIE LIMIETEN *** -->
    <grens>
	<!-- EXPOSURE: 54 +/- 5% en 8% -->
	<grootheid>Exposure</grootheid>
	<eenheid>mAs</eenheid>
	<omschrijving>AEC</omschrijving>
	<grens_relatief_referentie>54</grens_relatief_referentie>
	<grens_relatief_kritisch>8%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>5%</grens_relatief_acceptabel>
    </grens>
    <grens>
        <!-- EXPOSURE INDEX: 413 +/- 5% en 8% -->
	<grootheid>Exposure Index</grootheid>
	<omschrijving>AEC</omschrijving>
	<grens_relatief_referentie>413</grens_relatief_referentie>
	<grens_relatief_kritisch>8%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>5%</grens_relatief_acceptabel>
    </grens>
    <grens>
	<!-- EXPOSURE TIME: 640.4 +/- 20% en 30% -->
	<grootheid>Exposure Time</grootheid>
	<omschrijving>AEC</omschrijving>
	<grens_relatief_referentie>640.4</grens_relatief_referentie>
	<grens_relatief_kritisch>30%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>20%</grens_relatief_acceptabel>
    </grens>
    <grens>
	<!-- ORGAN DOSE: 0.01 +/- 50% en 60% -->
	<grootheid>Organ Dose</grootheid>
	<omschrijving>AEC</omschrijving>
	<grens_relatief_referentie>0.01</grens_relatief_referentie>
	<grens_relatief_kritisch>60%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>50%</grens_relatief_acceptabel>
    </grens>
    <grens>
	<!-- ENTRANCE DOSE: 11.8 +/- 50% en 60% -->
	<grootheid>EntranceDose</grootheid>
	<eenheid>mGy</eenheid>
	<omschrijving>AEC</omschrijving>
	<grens_relatief_referentie>11.8</grens_relatief_referentie>
	<grens_relatief_kritisch>60%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>50%</grens_relatief_acceptabel>
    </grens>
    <grens>
	<!-- KVP: 28 -->
	<grootheid>kVp</grootheid>
	<grens_kritisch_onder>28</grens_kritisch_onder>
	<grens_kritisch_boven>28</grens_kritisch_boven>
	<grens_acceptabel_onder>28</grens_acceptabel_onder>
	<grens_acceptabel_boven>28</grens_acceptabel_boven>
    </grens>


    <grens>
	<!-- MEAN: 580 +/- 10% en 15% -->
	<grootheid>Mean</grootheid>
	<omschrijving>Flatfield Global</omschrijving>
	<grens_relatief_referentie>580</grens_relatief_referentie>
	<grens_relatief_kritisch>15%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>10%</grens_relatief_acceptabel>
    </grens>
    <grens>
	<!-- ROI SNR: 54.1 +/- 10% en 15% -->
	<grootheid>SNR</grootheid>
	<omschrijving>Flatfield ROI</omschrijving>
	<grens_relatief_referentie>54.1</grens_relatief_referentie>
	<grens_relatief_kritisch>15%</grens_relatief_kritisch>
	<grens_relatief_acceptabel>10%</grens_relatief_acceptabel>
    </grens>




<!-- *** ACTIES *** -->

<!--
    Lijst van analyses
    De configuratie is per Matlab functie:
    - <name> naam van de Matlab functie (zie documentatie voor valide funties)
    - <match> series description: indien gelijk wordt de functie gestart
      <match field="SeriesDescription"> idem
      <match type="DCM4CHEE" field="SeriesDescription"> idem
      <match field="ImagesInSeries"> aantal beelden in de DICOM serie: indien gelijk wordt de functie gestart
      <match type="DICOM" field="SequenceName"> DICOM veld inhoud: indien gelijk wordt de functie gestart
      Valide "DCM4CHEE" velden (uit de DCM4CHEE database) zijn SeriesDescription en ImagesInSeries (aantal beelden in serie).
      NB: test op DICOM veld is trager dan "interne" velden.
    - optioneel: <resultsNamePrefix> plak tekst vooraan het veld "omschrijving" van het resultaat. Maakt het mogelijk om onderscheid te maken tussen meerdere acties met dezelfde naam, bijv. dezelfde analyse op verschillende DICOM series of dezelfde analyse met andere parameters, op hetzelfde DICOM beeld. Actielimieten kunnen gedefinieerd worden op de aangepaste naam (voeg dezelfde tekst toe bij omschrijving>, de prefix wordt gevolgd door een spatie).
    - optioneel: <params> configuratie parameters per funtie
-->


    <action>
	<!-- AEC -->
	<name>WAD_MG_AEC</name>
	<!-- series selectie -->
	<!-- SOP class ForPresentation -->
	<match type="DICOM" field="MediaStorageSOPClassUID">1.2.840.10008.5.1.4.1.1.1.2.1</match>
	<!-- AEC mode Auto Time -->
	<match type="DICOM" field="ExposureControlMode">AUTO_TIME</match>
	<!-- Molybdenum filter -->
	<match type="DICOM" field="FilterMaterial">MOLYBDENUM</match>
	<!-- parameters -->
	<params>
	    <!-- where to find the exposure index -->
	    <EI_field>RelativeXrayExposure</EI_field>
	</params>
    </action>


    <action>
	<!-- FlatField -->
	<name>WAD_MG_flatField</name>
	<!-- series selectie -->
	<!-- SOP class ForPresentation -->
	<match type="DICOM" field="MediaStorageSOPClassUID">1.2.840.10008.5.1.4.1.1.1.2.1</match>
	<!-- AEC mode Manual -->
	<match type="DICOM" field="ExposureControlMode">MANUAL</match>
	<!-- Molybdenum filter -->
	<match type="DICOM" field="FilterMaterial">MOLYBDENUM</match>
	<!-- parameters -->
	<params>
	    <!-- number of rows to skip in FlatField -->
	    <!-- use "auto" to find the first non-constant pixel -->
	    <skipRows>auto</skipRows>
	    <!-- relative threshold for deviating pixels in FlatField -->
	    <threshold>0.2</threshold>
	    <!-- relative threshold for deviating ROIs in FlatField -->
	    <SNRthreshold>0.2</SNRthreshold>
	</params>
    </action>

    <!-- Example how to run same analysis on another DICOM image in the study
         Note the use of the optional tag <resultsNamePrefix> to get a unique description
	 for this series. For corresponging action limits add the same tag (separated by single space).
	 In this example that would be <omschrijving>Rh AEC</omschrijving>  -->
    <action>
	<!-- AEC -->
	<name>WAD_MG_AEC</name>
	<!-- series selectie -->
	<!-- SOP class ForPresentation -->
	<match type="DICOM" field="MediaStorageSOPClassUID">1.2.840.10008.5.1.4.1.1.1.2.1</match>
	<!-- AEC mode Auto Time -->
	<match type="DICOM" field="ExposureControlMode">AUTO_TIME</match>
	<!-- Rhodium filter -->
	<match type="DICOM" field="FilterMaterial">RHODIUM</match>
	<!-- Add prefix to results description to distinguish from analysis on Mo -->
	<resultsNamePrefix>Rh</resultsNamePrefix>
	<!-- parameters -->
	<params>
	    <!-- where to find the exposure index -->
	    <EI_field>RelativeXrayExposure</EI_field>
	</params>
    </action>

</WAD_MG_config>

Clone this wiki locally