areaDetector: Recent Developments and Future Ideas

Slides:



Advertisements
Similar presentations
Patient information extraction in digitized X-ray imagery Hsien-Huang P. Wu Department of Electrical Engineering, National Yunlin University of Science.
Advertisements

What's new?. ETS4 for Experts - New ETS4 Functions - improved Workflows - improvements in relation to ETS3.
EPICS V4/areaDetector Integration
Detector Characterisation Group
AreaDetector: What’s New? Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
A new Network Concept for transporting and storing digital video…………
AreaDetector for ADCs How to deal with 1D data Tom Cobb.
ImageJ tutorial showing the operations needed to calculate air-filled porosity for an example soil column.
areaDetector Developments
Jeffrey Hill.  LANSCE Requirements – a Review  EPICS Paradigm Shift – a Review  Status – What is Implemented  What is an Abstract Data Type?  Benefits.
MEG Experiments Stimulation and Recording Setup Educational Seminar Institute for Biomagnetism and Biosignalanalysis February 8th, 2005.
AreaDetector Data Processing Pipeline In EPICS V4 Dave Hickin Diamond Light Source EPICS Collaboration Meeting Diamond Light Source 01/05/2013.
AreaDetector: A module for EPICS area detector support New developments Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
3dtv.at Stereoscopic Player and Stereoscopic Multiplexer S3D-Today November 2006 Munich, Germany.
TOP, The Output Processor TOP, The Output Processor  Training Presentation Electrotek Concepts.
Achieving True Color Fidelity
1 QED In Vivo USB Input Output Box configuration This tutorial contains a number of instructions embedded in a great deal of explanation. Procedures that.
SLAC asyn class, Day 1, August 26, 2010 Example asyn driver Modbus Mark Rivers, Marty Kraimer, Eric Norum University of Chicago Advanced Photon Source.
AreaDetector and GStreamer Similarities and Differences Tom Cobb.
MetImage : Image Analysis Software. The MetImage LX workstation is a complete image analysis system developed specifically to increase the speed, accuracy.
TERMS TO KNOW. Programming Language A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. Each language has.
Modeling and Animation with 3DS MAX R 3.1 Graphics Lab. Korea Univ. Reference URL :
A. Homs, BLISS Day Out – 15 Jan 2007 CCD detectors: spying with the Espia D. Fernandez A. Homs M. Perez C. Guilloud M. Papillon V. Rey V. A. Sole.
Development of EPICS Embedded Image Processing System Takashi Obina, Jun-ichi Odagiri, Ryota Takai KEK, Accelerator Laboratory.
A Streaming Video Server for areaDetector Tom Cobb Presented by Nick Rees.
AreaDetector: Recent Additions and Future Plans Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
NetTech Solutions Working with Web Elements Lesson 6.
Knowledge Systems Lab JN 9/10/2002 Computer Vision: Gesture Recognition from Images Joshua R. New Knowledge Systems Laboratory Jacksonville State University.
AreaDetector: A module for EPICS area detector support Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
AreaDetector: A module for EPICS area detector support Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
© 2008 The McGraw-Hill Companies, Inc. All rights reserved. ACCESS 2007 M I C R O S O F T ® THE PROFESSIONAL APPROACH S E R I E S Lesson 7 – Adding and.
An introduction to areaDetector Tom Cobb. What is areaDetector?  C++ framework for detectors in EPICS  Drivers produces NDArrays of data  Plugins consume.
VISTA IMAGING RADIOLOGY VIEWER. 2 The focus of this document is on the VistA Imaging Display Radiology Viewer. Other Display changes will be discussed.
Integrating EPICS and LabVIEW on Windows using DCOM Freddie Akeroyd ISIS Computing Group.
AreaDetector workshop Summary and notes…. Overview iocBuilder File Writer Changes areaDetector driver pattern shared vector Asyn client without an IOC.
High Speed Detectors at Diamond Nick Rees. A few words about HDF5 PSI and Dectris held a workshop in May 2012 which identified issues with HDF5: –HDF5.
Motor drivers for asyn motor device support Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
Learning the Basics The tutorial in this section is designed to introduce you to the basic image acquisition and analysis tools within QED. You can go.
ORNL is managed by UT-Battelle for the US Department of Energy EPICS on SNS Instruments Matt Pearson SNS ORNL 18 th - 22 nd May 2015.
Examples of Matlab Controls Software on ALICE Andy Wolski 24 September 2014 Multiknobs: simultaneous control of a set of magnets Undulator Gap Scan ALICE.
Image Text & Audio hacks. Introduction Image Processing is one of the fastest growing technology in the field of computer science. It is a method to convert.
CI-110 Plant Canopy Analyzer Instrument Training Conducted by: Brienne Meyer
AreaDetector: What’s New? Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago.
Date of download: 6/23/2016 Copyright © 2016 SPIE. All rights reserved. Pixel layouts for (a) a standard 3-T APS containing reset (R), row select (RS)
ORNL is managed by UT-Battelle for the US Department of Energy ADnED Handling V4 Neutron Event Data Matt Pearson SNS ORNL 18 th -22 nd May 2015.
AsynMotor: Support For Coordinated Multi-Axis Motion In EPICS Mark Rivers University of Chicago.
1 Topic Report Photodetector and CCD Tuan-Shu Ho.
ESS Timing System Plans Timo Korhonen Chief Engineer, Integrated Control System Division Nov.27, 2014.
VC-A20P Full HD PTZ Camera
GeoSoilEnviroCARS, Advanced Photon Source
Introducing OpenShot Library
Tango Integration of Modern 2D Detectors
Flash Interface, Commands and Functions
Mark Rivers University of Chicago
EPICS MCA and Canberra Support
Transact™ Mobile SDK Quickly bring capture-enabled mobile applications to market with open-ended backend integrations.
FTIR multi-touch screen
Fitting Curve Models to Edges
EPICS areaDetector Architecture
The New Readout Electronics for the SLAC Focusing DIRC Prototype (SLAC experiment T-492 ) L. L. Ruckman, G. S. Varner Instrumentation Development Laboratory.
asyn Driver Tutorial Measurement Computing 1608GX-2A0
Advanced Photon Source
areaDetector: A module for EPICS area detector support
Advanced Photon Source
What’s New and What’s Next
areaDetector: What’s New? Mark Rivers, Univ. of Chicago
quadEM: New Beam Position Monitor & Electrometer Hardware and Software
GeoSoilEnviroCARS The University of Chicago
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
PYTHON25K: CMOS Image Sensor, 26.2 MP, Global Shutter
Presentation transcript:

areaDetector: Recent Developments and Future Ideas Mark Rivers GeoSoilEnviroCARS, Advanced Photon Source University of Chicago

Moved areaDetector to github areaDetector was getting too big. New releases being held up waiting for testing on one detector types, etc. Hard to collaborate with other sites using APS Subversion repository git and github provide much better tools for multi-site collaborations Moved in December 2013, with R2-0 release in April 2014 Split into 3 “core” repositories, and separate repositories for each detector

New Organization areaDetector ADCore ADBinaries ADProsilica ADPilatus Top-level module RELEASE files, documentation, Makefile ADCore Core module Base classes, plugins, simDetector, documentation ADBinaries Binary libraries for Windows (HDF5, GraphicsMagick) ADProsilica Prosilica driver ADPilatus Pilatus driver … Each box above is a separate git repository Can be released independently Hosted at http://github.com/areaDetector project Each repository is a submodule under areaDetector/areaDetector Can clone individual repositories, or clone the entire project with git clone –recursive https://github.com/areaDetector.git

New Organization Top-level areaDetector andor3App/ builds only a driver library, and depends only on base and asyn iocs/ builds an application and depends on autosave, busy, etc. Can disable building this.

New drivers ADAndor3 driver for sCMOS cameras from Andor ADPointGrey driver for GigE, USB-3.0, USB 2.0 and Firewire cameras from Point Grey ADLightField driver for Princeton Instruments cameras using their LightField application ADPixirad driver for CdTe pixel array detectors from Pixirad ADAndor added Shamrock spectrometer control for Andor cameras ADmarCCD added support for triggered acquisition using new high-speed (-HS) detectors from Rayonix ADPSL major rewrite of Photonic Sciences Limited driver to support new server features

R2-0: Point Grey driver New driver for all cameras from Point Grey using their FlyCap2 SDK. Firewire, GigE and USB 3.0 High performance, low cost Example: Model GS3-U3-23S6M 1920 x 1200 global shutter CMOS No smear •  Distortion-free Dynamic range of 73 dB Peak QE of 76% Read noise of 7e- Max frame rate of 162 fps (~400 MB/S, 4X faster than GigE) USB 3.0 interface $1,295 Comparable to PCO Edge and Andor Zyla for 10X less money

Pink Beam, Mirror=2.0 mrad Mirror angle=2.0 mrad (Beads_Pink_H) 2 mm Al absorber 8-bit data 1 ms exposure time, 124 frames/s, 900 projections, 7.3 seconds total Rotation axis orientation corrected for mirror angle Vertical slice Horizontal slice

R2-0: Pixirad driver New driver for Pixirad CdTe pixel array detector Similar to Pilatus, but CdTe gives very high efficiency to 80 keV or more 2 energy thresholds, so 2 different energy images simultaneously

Recent Additions (R2-0) Improved timestamp support New timestamp functions added to asynManager in response to need from LCLS. These are used to set a user-defined timestamp source, to attach that timestamp to pasynUser. Standard asyn device support sets prec->time with this value, which will be used if prec->TSE=-2. asynStatus (*registerTimeStampSource)(asynUser *pasynUser, void *userPvt, timeStampCallback callback); asynStatus (*unregisterTimeStampSource)(asynUser *pasynUser); asynStatus (*updateTimeStamp)(asynUser *pasynUser); asynStatus (*getTimeStamp)(asynUser *pasynUser, epicsTimeStamp *pTimeStamp); asynStatus (*setTimeStamp)(asynUser *pasynUser, const epicsTimeStamp *pTimeStamp); Added new virtual methods to asynPortDriver for timestamp support. These are updateTimeStamp(), setTimeStamp(), getTimeStamp().

Recent Additions (R2-0) Improved timestamp support Added new epicsTimeStamp field to NDArray. The previous timeStamp field was a double. Useful for plotting and math, but only microsecond precision and not useful for record timestamps. All drivers now call the following as soon as an image is collected: updateTimeStamp(&pImage->epicsTS); NDPluginDriver::processCallbacks now calls the following when an NDArray is received: setTimeStamp(&pArray->epicsTS); This means that all EPICS records, including plugin records, associated with a specific NDArray will have the timestamp when that array was collected if the record has TSE=-2

R2-0: Attributes Added new attribute type, NDAttrSourceFunct. This type of attribute gets its value from a user-defined C++ function. It can thus be use to get any type of metadata. Previously only EPICS PVs and driver/plugin parameters were available as metadata.

R2-1 File Plugin Enhancements NDPluginFile (from DLS) Added new optional feature "LazyOpen" which, when enabled and in "Stream" mode, will defer file creation until the first frame arrives in the plugin. Removes the need to initialize the plugin with a dummy frame before starting capture. NDFileTIFF (from Matt Pearson) Supports any NDArray data type Stores NDAttributes as ASCII user tags, up to 490. NDFileHDF5 (DLS/APS collaboration) Now supports using an XML file to define the layout and placement of NDArrays and NDAttributes in the HDF5 file. Can be used to create NeXus-compliant files without using NDFileNeXus plugin NDFileNeXus will probably be deprecated in a future release.

R2-1 Transform plugin Greatly simplified: just 8 operations including null operation 13-85 times faster than previous releases depending on data type, color mode

R2-1 Overlay plugin Added support for text overlays Added support for line widths in cross and rectangle overlays

Future Ideas Put more functionality into ADDriver base class Currently it does not do much, all code is in each driver for: Doing callbacks to plugins Processing new exposure time with writeFloat64 function writeFloat64 in ADDriver base class would call setExposure() in derived class Derived class would call ADDriver::doPluginCallbacks(), which would handle setting attributes, getting timestamp, calling plugins, etc. This is the way the Model 3 motor driver, which also uses asynPortDriver, is written Work on this here?

Future Ideas Demultiplexor & multiplexor plugins Allow multiple plugins of same type to work on the same data stream when it saturates a single core Extend areaDetector concepts to other types of detectors: ADCs Electrometers Waveform digitizers Oscilloscopes? They all produce 1-D (or 2-D for multi-channel inputs) arrays that could benefit from plugins for file saving, FFTs, ROI extraction, digital filtering, etc. Demonstate areaDetector outside of EPICS IOC Use NTNDArray as the base type inside areaDetector?