Zpracování dat z počítačového mamografu
Obsah:
/1/ Zadání
/2.1/ Vstupní data
/2.2/ DICOM formát
/3/ Formát vstupních dat
/4/ Pre-processing
/5/ Registrace
/6/ Hledání klíčových bodů
/7/ Význam korelace
/8/ Metoda registrace
/9/ Vhodnost manuálního zadávání údajů
Zadání
The set of dynamic MR data of the breast contains
movements which have to be corrected:
The measurement of the breast was done 22 times -> 22 timepoints
At each timepoint 15 slices were acquired -> 15 slices
-> the data consist of 330 MR images
The nomenclature of the MR images is the following:
for example: b0011522.dcm
first 4 characters (b001): the patient number
next 2 characters (15): slice number (here: slice no. 15)
last 2 characters (22): number of timepoint (here: timepoint no. 22)
dcm: the MR images are in dicom format (image + header)
Vstupní data
Obrazové metody
Anatomické obrazové metody (mají za úkol zobrazit morfologii orgánu)- X-ray, , DSA (digital substraction angiography, X-ray)
- CT (computed tomography), CTA (computed tomography angiography)
- MRI (magnetic resonance imaging), MRA (magnetic resonance angiography)
- US (ultrasound), Doppler (vychází z US a používá změřený Dopplerův efekt)
- zpracování snímků a sekvencí z několika zdrojů (laparoskopie, laryngoskopie)
- planární scintigrafie
- SPECT (single photon emission computed tomography)
- PET (positron emission tomography)
- fMRI (functional magnetic resonance imaging)
- EEG (electro encephalography), MEG (magneto encephalography)
- pMRI (perfusion magnetic resonance imaging), fCT (functional computed tomography), EIT (electrical impedance tomography), MRE (magnetic resonance elastography)
DICOM formát
DICOM Image File Format is important file and network interchange standard in the area of medical imaging.Working with DICOM Image File Format is supported since Matlab Image Processing Toolbox v.3.0.
There are two min functions used for reading DICOm files
dicomread reads image data from DICOM file
dicominfo reads metadata from DICOM file
Z dostupných dat lze formát DICOM analyzovat jako bezeztrátový formát ukládání rastrových obrazových dat. Četnostní analýzou se potvrdila doměnka, že data jsou uložena od pozice 5298 (v tomto případě) ve formátu kdy 1 buňka zabírá 2 byty v pořadí HB,LB. V našem případě je velikost souboru Po zadání příkazu info = dicominfo('g:\data\0053.dcm') na soubor s daty 256 x 256 bodů v přesnosti 16bitů dostáváme z celkové velikosti souboru 137012B oblast pro data o velikosti 131072B a prostor pro informace o zbývající velikosti 5940B.
info =
Filename: 'g:\data\0053.dcm'
FileModDate: '09-Aug-2002 12:36:48'
FileSize: 137012
Format: 'DICOM'
FormatVersion: 3
Width: 256
Height: 256
BitDepth: 12
ColorType: 'grayscale'
SelectedFrames: []
FileStruct: [1x1 struct]
StartOfPixelData: 5928
MetaElementGroupLength: 192
FileMetaInformationVersion: [2x1 double]
MediaStorageSOPClassUID: '1.2.840.10008.5.1.4.1.1.4'
MediaStorageSOPInstanceUID: '1.3.12.2.1107.5.2.4.7672.20020307120006000003053'
TransferSyntaxUID: '1.2.840.10008.1.2.1'
ImplementationClassUID: '1.2.276.0.7230010.3.0.3.4.1'
ImplementationVersionName: 'OFFIS_DCMBP_341'
SpecificCharacterSet: 'ISO_IR 100'
ImageType: 'ORIGINAL\PRIMARY\OTHER'
SOPClassUID: '1.2.840.10008.5.1.4.1.1.4'
SOPInstanceUID: '1.3.12.2.1107.5.2.4.7672.20020307120006000003053'
StudyDate: '20020307'
SeriesDate: '20020307'
AcquisitionDate: '20020307'
ImageDate: '20020307'
StudyTime: '115325.123000'
SeriesTime: '120006.086000'
AcquisitionTime: '120009.931000'
ImageTime: '121634.092000'
AccessionNumber: ''
Modality: 'MR'
Manufacturer: 'SIEMENS'
InstitutionName: 'DKFZ*Heidelberg'
ReferringPhysiciansName: [1x1 struct]
StationName: 'MR61'
SeriesDescription: 'Mamma/Dynamik_Melanie 1'
ManufacturersModelName: 'MAGNETOM VISION plus'
Private_0009_10xx_Creator: 'SPI RELEASE 1'
Private_0009_12xx_Creator: 'SIEMENS CM VA0 CMS'
Private_0009_13xx_Creator: 'SIEMENS CM VA0 LAB'
Private_0009_1010: 'SPI VERSION 01.00'
Private_0009_1015: '049SAAMR022002030713435031'
Private_0009_1040: 0
Private_0009_1041: 'MRUPNONE'
Private_0009_1210: 'STANDARD'
Private_0009_1212: 0
Private_0009_1213: [6x1 double]
Private_0009_1214: [6x1 double]
Private_0009_1226: '20020307'
Private_0009_1227: '115056.000000'
Private_0009_1316: '808bf1b0'
Private_0009_1320: 'VC'
PatientsName: [1x1 struct]
PatientID: '300/02'
PatientsBirthDate: '19271118'
PatientsSex: 'F'
PatientsAge: '074Y'
PatientsWeight: 82
Private_0011_10xx_Creator: 'SPI RELEASE 1'
Private_0011_11xx_Creator: 'SIEMENS CM VA0 CMS'
Private_0011_1010: ''
Private_0011_1110: '20020307'
Private_0011_1111: '115325.123000'
Private_0011_1123: 82
ContrastBolusAgent: 'APPLIED'
BodyPartExamined: ''
ScanningSequence: 'RM'
SequenceVariant: 'NONE'
ScanOptions: ''
MRAcquisitionType: '2D'
SequenceName: 'fl2d'
AngioFlag: 'N'
SliceThickness: 4
RepetitionTime: 167.4200
EchoTime: 3.6300
NumberOfAverages: 1
ImagingFrequency: 63.6304
ImagedNucleus: '1H'
EchoNumbers: 1
MagneticFieldStrength: 1.4938
SpacingBetweenSlices: 1.2000
EchoTrainLength: 1
PercentSampling: 100
PercentPhaseFieldOfView: 100
DeviceSerialNumber: '7672'
SoftwareVersions: 'VB33D'
DateOfLastCalibration: '20011127'
TimeOfLastCalibration: '104809.000000'
ReceivingCoil: 'Breast'
AcquisitionMatrix: [4x1 double]
PhaseEncodingDirection: 'ROW'
FlipAngle: 90
SAR: 0
PatientPosition: 'HFP'
Private_0019_10xx_Creator: 'SIEMENS CM VA0 CMS'
Private_0019_12xx_Creator: 'SIEMENS MR VA0 GEN'
Private_0019_14xx_Creator: 'SIEMENS MR VA0 COAD'
Private_0019_15xx_Creator: 'SIEMENS CM VA0 ACQU'
Private_0019_1010: 50
Private_0019_1020: 'EXAMNONE'
Private_0019_1030: 'A IRS'
Private_0019_1050: 0
Private_0019_1060: 131072
Private_0019_1210: 44.5584
Private_0019_1211: 44.5584
Private_0019_1212: 0
Private_0019_1213: 13
Private_0019_1214: 1
Private_0019_1216: [2x1 double]
Private_0019_1218: 1.0402e+009
Private_0019_1220: 256
Private_0019_1221: 256
Private_0019_1226: 127
Private_0019_1228: -128
Private_0019_1230: 256
Private_0019_1231: 256
Private_0019_1240: 0
Private_0019_1241: []
Private_0019_1242: []
Private_0019_1245: 4
Private_0019_1246: []
Private_0019_1250: 1
Private_0019_1260: 90
Private_0019_1270: 1
Private_0019_1281: 'HANNING'
Private_0019_1282: [4x1 double]
Private_0019_1283: 'NONE'
Private_0019_1285: 'NONE'
Private_0019_1287: 'NONE'
Private_0019_1290: 0
Private_0019_1294: 1.5708
Private_0019_1296: [3x1 double]
Private_0019_1297: [2x1 double]
Private_0019_1298: [3x1 double]
Private_0019_1412: 1.4938
Private_0019_1414: 10
Private_0019_1416: [2x1 double]
Private_0019_1420: 788.9297
Private_0019_1421: 1
Private_0019_1422: 15
Private_0019_1424: 356.0698
Private_0019_1426: 175.9132
Private_0019_1450: 83.0600
Private_0019_1451: 64.8100
Private_0019_1452: 28.0500
Private_0019_1454: -1.8000
Private_0019_1455: 97.9374
Private_0019_1456: 38500
Private_0019_1460: 0.4713
Private_0019_1462: 0.4986
Private_0019_1470: 5.8274
Private_0019_1471: 5.8274
Private_0019_1472: 7.5000
Private_0019_1480: [3x1 double]
Private_0019_1482: 200
Private_0019_14a0: 1
Private_0019_14a2: 1.0616
Private_0019_14a5: [3x1 double]
Private_0019_14a6: [3x1 double]
Private_0019_14b0: 0
Private_0019_14d1: 0
Private_0019_14d2: 'NONE'
Private_0019_14d3: 1
Private_0019_14d4: 256
Private_0019_14d5: 0
Private_0019_14d6: 0
Private_0019_14d7: 129
Private_0019_14d8: 90
Private_0019_14d9: 1
Private_0019_14da: 'PLUSX'
Private_0019_1510: [1x56 char]
Private_0019_1511: '/usr/mrphys/heilmann/flash2d/mamma/fl2d_36b300.ykc'
Private_0019_1512: 'USER'
Private_0019_1513: 'fl2d'
StudyInstanceUID: '1.3.12.2.1107.5.2.4.7672.20020307115325000'
SeriesInstanceUID: '1.3.12.2.1107.5.2.4.7672.20020307120006000003'
StudyID: '1'
SeriesNumber: 3
AcquisitionNumber: 1
InstanceNumber: 53
ImagePosition: [3x1 double]
ImagePositionPatient: [3x1 double]
ImageOrientation: [6x1 double]
ImageOrientationPatient: [6x1 double]
Location: -73.6000
FrameOfReferenceUID: '1.3.12.2.1107.5.2.4.7672.20020307115056000'
ImageGeometryType: 'PLANAR'
MaskingImage: ''
AcquisitionsInSeries: 22
PositionReferenceIndicator: ''
SliceLocation: -73.6000
ImageComments: ''
Private_0021_10xx_Creator: 'SIEMENS MED'
Private_0021_11xx_Creator: 'SIEMENS CM VA0 CMS'
Private_0021_13xx_Creator: 'SIEMENS MR VA0 GEN'
Private_0021_23xx_Creator: 'SIEMENS MR VA0 RAW'
Private_0021_1010: ''
Private_0021_1011: ''
Private_0021_1020: 0
Private_0021_1120: [2x1 double]
Private_0021_1122: 1
Private_0021_1124: [2x1 double]
Private_0021_1126: 0
Private_0021_1130: 'HEAD'
Private_0021_1132: 'HEAD'
Private_0021_1160: [3x1 double]
Private_0021_1161: [3x1 double]
Private_0021_1163: -73.6000
Private_0021_1165: 5
Private_0021_116a: [3x1 double]
Private_0021_116b: [3x1 double]
Private_0021_1170: 'R \A \H'
Private_0021_1171: 'L \P \F'
Private_0021_1182: 'MEA'
Private_0021_1322: 0
Private_0021_1324: 0
Private_0021_1330: 0
Private_0021_1331: 0
Private_0021_1334: 0
Private_0021_1339: 4
Private_0021_1340: 22
Private_0021_1341: 22
Private_0021_1342: 1
Private_0021_1343: 1
Private_0021_1344: 0.3000
Private_0021_134f: 'INTERLEAVED'
Private_0021_1350: 0
Private_0021_1356: 167.4200
Private_0021_1370: 1
Private_0021_2300: 'IMAG'
Private_0021_2301: 256
Private_0021_2302: 256
Private_0021_2303: 3.8462e+004
Private_0021_2304: [3x1 double]
Private_0021_2305: [3x1 double]
Private_0021_2306: [3x1 double]
Private_0021_2307: [3x1 double]
Private_0021_2308: [3x1 double]
Private_0021_2309: 0
Private_0021_2310: 4095
Private_0021_2311: ''
Private_0021_2331: [16x1 double]
SamplesPerPixel: 1
PhotometricInterpretation: 'MONOCHROME2'
ImageDimensions: 2
Rows: 256
Columns: 256
PixelSpacing: [2x1 double]
ImageFormat: 'RECT'
BitsAllocated: 16
BitsStored: 12
HighBit: 11
PixelRepresentation: 0
ImageLocation: 32736
WindowCenter: [2x1 double]
WindowWidth: [2x1 double]
Private_0029_11xx_Creator: 'SIEMENS CM VA0 CMS'
Private_0029_1110: 'STD 1'
Private_0029_1120: 'NONE \NONE \NONE'
Private_0029_1152: 1
Private_0051_10xx_Creator: 'SIEMENS CM VA0 CMS'
Private_0051_1010: [1x312 char]
Formát vstupních dat
Vstupní data měření jednoho člověka se skládají ze sady 484 snímků které jsou uspořádány do matice 22 x 22 obrázků.Snímky jsou sejmuty v 22 řezech a každý řez je pořízen v odlišném čase v němž kontrastní látka pokaždě způsobí jiný kontrast cevního systému. Celkem je každý řez pořízen ve 22 časových okamžicích.
Úkolem práce je zobrazit tyto řezy pořízené v čase tak, aby se cévní soustava překrývala.
Pre-processing
V této fázi bylo třeba zvýraznit cévní strukturu hlavně v okolí nádoru z pozadí okolní tkáně. Samotná ekvalizace histogramu zpracovávaného obrazu v našem případě nepřinesla dobré výsledky. Analýzou dat bylo zjištěno, že obraz který je po načtení z formátu DICOM uložen v matici jejíž prvky jsou představovány datovým typem uint16 (tj. bezznaménkový celočíselný typ o délce 2Bytů s rozsahem hodnot 0 .. 65535) pokrývá v krajním případě pouze rozsah hodnot 0..2056. Hodnoty vyšší než uvedená horní mez se ve změřených datech nevyskytují v žádném snímku.Pokud byla provedena ekvalizace v rozsahu 0 .. 2056 s počtem boxů 64 resp. 128 došlo k poměrně dobrému zlepšní čitelnosti části snímku hrudního koše. Pro náš případ však bylo toto zvýraznění nepotřebné. Proto jsem hledal oblast v níž se bude ekvalizovat pomocí nalezení oblasti v níž budou data zpracována. Pokusy jsem došel k nejlepšímu rozsahu hodnot v rozmezí 650 až 2056. Obraz I jsem s těmito hodnotami oprahoval tak že I(m,n)=650 iff I(m,n)<=650 a I(m,n)=2056 iff I(m,n)>=2056 Poté jsem tato data převedl do stupnice 256 odstínů šedi a uložil do formátu uint8.
Následně jsem na datech provedl ekvalizaci histogramu.
Získané snímky po této úpravě poskytují obraz v němž je cévní soustava kontrastnější.

Pro uzavření této části se hodí zvláště pro automatické hledání souvisejících bodů provádět škálování odstínů šedi v několika krocích a v každém nalézt nejvýraznější klíčové body.
Zvláště musí být důkladně označena oblast přechodu mezi prsní tkání a hrudním košem, která díky potlačení spektra odstínů vedoucímu ke zvýraznění cévní soustavy v okolí nádoru zapadně do tmavého podkladu. Z tohoto důvodu budu klíčové body hladat přinejmenším ve dvou obrazech. Ekvalizovaném, který umožní přesné zacílení bodů v cévní soustavě a na původním obraze případně na obraze ekvalizovaném jako celku pro nalezení klíčových bodů v co největším okolí nádoru.
Registrace
Metody transformací implementované v Matlabu- lineární konformní (linear conformal)
- afinní (affine)
- projektivní (projective)
- polynomiální (polynomial) (řády 2,3,4)
- po částech lineární (piecewise linear)
- místně vážený průměr (lwm - local weighted mean)
Hledání klíčových bodů

V předchozím případě se ukázalo jako nedostačující použití malého počtu bodů ohrančujících konturu a tak došlo k posunu celého obrazu i v oblasti, která nás zajímá.
Toto bylo v následujících krocích odstraněno.

Význam korelace
/ pouzitelnost a nepouzitelnost /
Metoda registrace
/ podle materialu - viz DOC /
Vhodnost manuálního zadávání údajů
/ zatim nevhodne/