BrainVISA Processes - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

BrainVISA Processes

Description:

Modular and customizable software platform built to host ... Example : Concatenate grey and white hemispheres mesh. Simple process. Mandatory import ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 23
Provided by: brain7
Category:

less

Transcript and Presenter's Notes

Title: BrainVISA Processes


1
BrainVISA Processes
2
Plan
  • What is BrainVISA ?
  • Writing a process
  • Simple process
  • Database ontology
  • Viewer
  • Creating a toolbox
  • Documentation
  • Advanced use

3
What is BrainVISA ?
  • Modular and customizable software platform built
    to host heterogeneous tools dedicated to
    neuroimaging research
  • Keywords process, toolbox, data ontology
  • Visualization with Anatomist

4
Writing a process
  • Writing a process
  • Simple process
  • Database ontology
  • Viewer

5
Simple process
  • Script python
  • Contains
  • Imports
  • Declarative part name, userLevel, role
  • Signature input and output parameters
  • Functions validation, initialization, execution
  • Example Concatenate grey and white hemispheres
    mesh

6
Simple process
  • Mandatory import
  • from neuroProcesses import
  • Process name
  • name string
  • Visibility level
  • userLevel integer
  • Role
  • roles ( role, ...)
  • role lt- viewer editor converter importer

7
Simple process
  • Signature
  • signature Signature( parameter_list )
  • parameter_list lt- parameter_name, parameter_type,
    ...
  • Parameter types
  • String()
  • Number()
  • Integer()
  • Float()
  • Choice( value1, ... )
  • ReadDiskItem( type, formats)
  • WriteDiskItem( type, formats )

8
Simple process
  • DiskItem data, can be stored in several files.
  • Type data meaning (T1 MRI, Brain Mask...)
  • Format file format for storage (NIFTI image,
    GIS Image, BMP Image, ...)
  • Types and formats used in processes must exists
    in BrainVISA.
  • Documentation about existing types

9
Simple process
  • Functions
  • Validation
  • def validation()
  • if ltconditiongt
  • raise ValidationError( "error message" )
  • Initialization
  • def initialization( self )
  • self.parameter_name value
  • self.setOptional( parameter_name )
  • self.linkParameters( destination, source )
  • self.addLink( destination, sources , function )
  • Execution
  • def execution(self, context)
  • function_body

10
Simple process
  • Execution context interactions with BrainVISA,
    system commands call...
  • write, warning, error prints a message.
  • log writes a message in the BrainVISA log
    file.
  • ask, dialog asks a question to the user.
  • temporary creates a temporary file.
  • system call a system command.
  • runProcess runs a process.
  • matlab calls a Matlab command.
  • checkInterruption defines a breakpoint.

11
Examples
  • Ex1 process using existing types, no database
  • -gt iterations, default viewer
  • Ex2 add-hoc link between output and inputs
  • Ex3 specific types for inputs, link between
    inputs, database
  • Ex4 New type for output -gt udpate types and
    hierarchy

12
Database ontology
  • Ontology BrainVISA
  • Data types and formats
  • Hierarchy organization of data in the
    database file system
  • Filenames
  • Files places in database directory
  • filename and place ltgt type and attributes
  • gt allows linking parameters
  • Example type Hemisphere whitegrey Mesh

13
Viewer
  • Special process callable by clicking on
  • One mandatory input parameter
  • Uses pyanatomist
  • Examples
  • Viewer for Hemisphere whitegrey Mesh
  • Ex5 importance of referentials

14
Toolbox
  • Groups processes that are related to a same
    domain
  • Contains processes and data ontology
  • Each toolbox can be developped, maintained and
    distributed by a different group / lab
  • Examples
  • T1 MRI
  • Diffusion tracking
  • Sulci
  • FMRI
  • MEG-EEG, ...
  • My Processes is also a toolbox (in
    home/.brainvisa)

15
Toolbox
  • File organization (T1 MRI toolbox)

16
Toolbox
  • Configuration file
  • userName the name that will be displayed in
    BrainVISA interface.
  • icon file path of the icon that will reprensent
    the toolbox in graphical interface. Optional,
    there is a default icon.
  • description tooltip for the toolbox, that will
    be displayed when the mouse pass on the toolbox
    name. Optional, default tooltip is the name of
    the toolbox.

17
Toolbox
  • Links with other toolboxes
  • Link on a process can appear in several toolboxes
  • Links are stored in a minf file named
    lttoolbox_namegt.minf
  • Example
  • diffusion importation processes in Diffusion
    tracking toolbox
  • Links on these processes in Data management
    toolbox

18
Documentation
  • Displayed in BrainVISAs right panel
  • Documentation on
  • Process ltprocess file namegt.procdoc
  • -gt Interface for editing process documentation
  • Category (processes sub-directories)
    category_documentation.minf in the directory
  • Toolbox category_documentation.minf in
    processes directory
  • Can include
  • HTML tags
  • Links to processes, category
  • images

19
Advanced use
  • Pipelines
  • Other special processes converters, editors
  • Changing graphical interface
  • Running in batch mode
  • Translations
  • ...

20
Where can I find documentation ?
  • Index of all docs
  • file///i2bm/research/share/doc/index.html
  • http//brainvisa.info/doc/index.html
  • BrainVISA programming manual
  • file///i2bm/research/share/doc/brainvisa-3.1/bv_p
    g/en/html/index.html
  • BrainVISA epydoc
  • file///i2bm/research/share/doc/brainvisa-3.1/bv_p
    g/en/html/index.html
  • Pyanatomist epydoc
  • file///i2bm/research/share/doc/pyanatomist-3.1/ep
    ydoc/index.html

21
Summary
  • Process
  • Types and Formats
  • Hierarchy
  • Toolbox
  • Documentation

22
BrainVISA processes
  • Thank you !
Write a Comment
User Comments (0)
About PowerShow.com