interoperability of imaging data file formats: the mpscope case quoc-thang nguyen physics...

14
Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Upload: virgil-norris

Post on 17-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Interoperability of Imaging Data File Formats:The MPScope Case

Quoc-Thang NGUYEN

Physics Department, UCSD

Page 2: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Multiphoton laser fluorescence scanning microscopy.

• Multiphoton Laser Fluorescence Scanning Microscope (MPLFSM):

Focus high energy, femtosecond laser pulse to excite fluorescent dye:

2 photons @ 800 nm ~ 1 photon @ 400 nm

• MPLFSM versus other Fluorescence Microscopes:

No out of focus z-sectioning, sharp contrast excitation

Longer Better penetration in scattering tissue

Smaller excitation Less dye bleaching volume Better resolution

More photons collected

Page 3: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Brightfield vs. Multiphoton

Trigeminal Ganglion Neurons loaded with Calcium Green

Zeiss Axioplan 2Microscope

Cooled CCD CameraFuzzy images, severe bleaching

Multiphoton LaserScanning Fluorescence

Microscopez-sectioning

500

m40 xWater

ImmersionObjective

Page 4: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Custom-built multiphoton microscopes

Used in Neuroscience, Immunology, Developmental Biology...

Commercial two-photon scopes: $750K

Custom-made 2P scope: <$250K

Better optics, detectors and layout for in vivo/in vitro experiments. Extensive customization (bringing other laser lines etc...)

Page 5: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

The MPScope Software Suite

Software choice for custom multiphoton microscope was limited:

- ScanImage (K. Svoboda's lab - Matlab)- LabView based software

MPScope:- Comprehensive suite of programs to control custom multiphotonmicroscopes and analyze results- Downloaded by ~ 50 laboratories worldwide (executable or source code)- Extensive community, now on NITRC- Commercial scopes using MPScope

Nguyen et al. (2006) MPScope: a versatile software suite for multiphoton microscopy. J. Neurosci. MethodsNguyen, Q.-T. and Kleinfeld, D. (2008) Book chapter in "In vivo optical imaging of brain function"

Page 6: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

MPScope: Description

MPScope =

MPScan

+

MPView

+

MPFileMicrosoft Windows Platform

Page 7: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Important features of MPScope

High performance suite of software:

- Very fast, compact (native compiled code)- Symmetrical line scans for fast frame rate- Easy deployment: no need for run-time libraries- Professional looking GUI- Supports wide variety of microscope hardware- Multithreaded- Intel Integrated Performance Primitive Library

COM (Component Object Model) -based technologies:

- ActiveX Automation client and server- ActiveX Scripting- Structured Storage

Page 8: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

File Format Considerations

Goal of File Format :

Uncompromizing performance and seamless integration withWindows to allow different types of data (imaging, electrophys)to be stored

Native (i.e., binary with Intel byte ordering)- Fast- Opaque header

Text/XML-based data file:- Bulky (storing binary data is convoluted)- Slower

Page 9: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

The MPScope File Format (I)

Structured Storage: "A File System Inside a File"

- COM: Component Object Model (Windows)- Compound Files: Implementation of Structured Storage

Structured Storage

- Hierarchical organizations of folders and data streams insidea data file- Previously used as the Microsoft Office file format mechanism,CAD programs, etc...

Page 10: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

The MPScope File Format (II)"A File System Inside a File"

- Extensible file structure (displacement deltas)

- Allow e-phys, imaging + other info to be stored independently

- Queriable, extensible, programmableProperty Information Stream

Solves the opaque, non-extensible header problem!Data mining

Page 11: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Interoperability with other applications (I)

Data Interchange Via Disk File

MPScan (acquisition):- Save as BMP file

MPView:- Save as: TIFF

AVIBMP

Convenient, but ackward and slow!

Page 12: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Interoperability with other applications (II)

Data Interchange from adressing space to adressing space

- Faster, more accurate memory to memory transfer- ActiveX Automation + ActiveX Scripting

Possibilities:

- MPView -> Matlab (images to matrices automatically)One mouse click

- MPFile.OCX -> Matlab, Visual Basic, C++ clientsA few lines of code (high-level component)

- MPScan -> Header additions in near real-time

- MPScan -> MySQL database for logging files

- MPScan -> whole frames to clients in near real-time

Page 13: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

Interoperability with other applications (III)

The MPFILE.OCX component

- ActiveX Automation standard component

- Opens MPScope files from any ActiveX Automation- enabledapplication (Matlab, C/C++, Visual Basic, Delphi)

- High-level interface, no need to think about headers, file offsets

- Backward and forward compatible

-Easy to use (Matlab example):f = figure( [300, 300, 500, 500])mpfile = actxcontrol('MPFile.Data', [0, 0, 500, 500], f)openResult = invoke(mpfile, 'OpenMPFile', 'c:\MCC\050105_006.MPD')openResult =

0frameCount = invoke(mpfile, 'ReadParameter', 'Frame Count')frameCount =

150

Page 14: Interoperability of Imaging Data File Formats: The MPScope Case Quoc-Thang NGUYEN Physics Department, UCSD

ConclusionWhat we learned:

It's OK to have a proprietary file format as long as there aresoftware translators for major image formats and softwarebridges to other applications.

Future Directions:

- Enhanced Windows Integration.

Thumbnail images in Explorer, Windows 64-bit - Cross-Platform Tools for Mac OSX and Linux.

Java libraries for reading Compound Files (Apache POIFS).

Compound File specs opened by Microsoft as part ofthe Microsoft Open Specification Promise (2007)