Skip to content

Scanimage TIFF import

Barry Wark edited this page Feb 2, 2012 · 4 revisions

ScanImage TIFF import specification

Data from the ScanImage data acquisition system is saved to individual ScanImage TIFF files.

Assumptions

  • Each TIFF file represents data from a single ScanImage trial.
  • Each ScanImage trial maps one-to-one to a single Ovation Epoch.

Requirements

The automated unit tests (TestScanImageTiffImport.m) define the following specifications for appendScanImageTIFF:

  1. appendScanImageTIFF requires ScanImage version 3.60 format files
  2. appendScanImageTIFF adds an Ovation Response for each PMT.
  3. appendScanImageTIFF Responses reference (via URL) the original ScanImage TIFF. TIFF data is not copied into the Ovation database.
  4. appendScanImageTIFF adds the following deviceParameters and associated values from the ScanImage header to all Responses:
    • header.configName
    • header.acq.externallyTriggered
    • header.acq.averaging
    • header.acq.numberOfFrames
    • header.acq.linesPerFrame
    • header.acq.pixelsPerLine
    • header.acq.frameRate
    • header.acq.linescan
    • header.acq.zoomFactor
    • header.acq.scanAmplitudeX
    • header.acq.scanAmplitudeY
    • header.acq.scanRotation
    • header.acq.scaleXShift
    • header.acq.scaleYShift
    • header.acq.xstep
    • header.acq.ystep
    • header.acq.msPerLine
    • header.acq.pmtOffsetChannel(per channel)
    • header.acq.pmtOffsetStdDevChannel(per channel)
    • header.acq.fastScanningX
    • header.acq.fastScanningY
    • header.sofware.version
    • header.sofware.minorRev
    • header.sofware.beta
    • header.init.scanOffsetX
    • header.motor.absXPosition
    • header.motor.absYPosition
    • header.motor.absZPosition
    • header.motor.relXPosition
    • header.motor.relYPosition
    • header.motor.relYPosition
    • header.motor.relZPosition
    • header.motor.distance
  5. appendScanImageTIFF inserts Response objects with units V (Volts)
  6. appendScanImageTIFF inserts Response objects with
  7. appendScanImageTIFF calculates Response X-dimension sampling rate as frame_distance_x / header.acq.pixelsPerLine
  8. appendScanImageTIFF calculates Response Y-dimension sampling rate as frame_distance_y / header.acq.linesPerFrame
  9. appendScanImageTIFF calculates Response Z-dimension sampling rate as header.acq.zStepSize
  10. appendScanImageTIFF Response has sampling rate units {'microns/pixel', 'microns/pixel', 'microns/step'}
  11. appendScanImageTIFF Response has dimension labels {'X', 'Y', 'Z'}
  12. appendScanImageTIFF Response has filterColor property defined by the YAML mapping between PMT number and filter color
  13. appendScanImageTIFF Response has shape [header.acq.pixelsPerLine, header.acq.linesPerFrame, header.acq.numberOfZSlices]
  14. appendScanImageTIFF throws a Matlab exception (ovation:scanimage_tiff_importer:timeMismatch) if the scan time does not fall within the time span [Epoch.startTime, Epoch.endTime] of the Epoch to which appendScanImageTIFF is appending.
Clone this wiki locally