Software: Difference between revisions

From BanghamLab
Jump to navigation Jump to search
Line 201: Line 201:
|}
|}
=<span style="color:Navy;">Historical</span>=
=<span style="color:Navy;">Historical</span>=
==<span style="color:Navy;">Robot arm: an educational toy still in production after 30 years, serving local industry</span>==
==<span style="color:Navy;">Robot arm: an educational device still in production after 30 years (serving local industry)</span>==
{| border="0" cellpadding="5" cellspacing="5"
{| border="0" cellpadding="5" cellspacing="5"
|- valign="top"
|- valign="top"
|width="10%"| <imgicon>MTtboxA.jpg|100px|BioformatsConverter</imgicon>
|width="50%"|[[Image:2014-06-10 14.22.20 small robot.jpg|400px|]]
|width="40%"|For modelling the behaviour of microtubules within a cell. <br><br>
|width="40%"|For teaching '''production control''' and '''interrupt programming'''. <br><br>
See [[MTtbox documentation|''Details'']]<br><br>
1983 and we are in a world of '''Apple II and BBC B computers''' - the ''6502'' processor reigns. Particularly good for real-time control it responded very fast to hardware interrupts from, for example, the timer. To illustrate timer interrupts what better than digital servo-motors? Set up the on-board timers to produce a stream of  'heartbeat' of pulses, one every 20 ms out of the parallel port and control up to eight motors.  Pulse widths, from 1 to 2 ms, control the position of each motor arm. Derek Fulton and made some lab. money by building and writing a series of articles showing exactly how to build this robot arm.[[Publications#.28G.29_Computer_control.2C_measurement_and_commercial_software |Bangham et al.]].
(Windows, Mac, Linux)
My copyright, I took it to a local company LJ-Electronics ([http://www.ljcreate.com/products/product.asp?id=314&program=195&curr=2 now LJ-Creative]) who incorporated detail for detail into their product line. '''Lovely outcome.'''
|width="50%"| 1983 and we are in a world of Apple II and BBC B computers - the 6502 processor reigns. Particularly good for real-time control it responded very fast to hardware interrupts from, for example, the timer. To illustrate timer interrupts what better than digital servo-motors. Set up the on board timers to produce a stream of  'heartbeat' of pulses, one every 20 ms out of the parallel port and control up to eight motors.  Pulse width, from 1 to 2 ms, controls the position of each motor arm. I wrote a series of articles on how to build a robot arm. [[Publications#.28G.29_Computer_control.2C_measurement_and_commercial_software |Bangham et al.]]
|}
|}


=Historical=
=Historical=

Revision as of 18:18, 10 June 2014

Current activity: a collaboration with the CoenLab with the aim of understanding how patterns of gene activity in biological organs influence the developing shape. The BanghamLab is focussed on the conceptual underpinning: concepts captured in computational growth models, experimental data visualisation and analysis.

Notes on documenting our software

Notes for Lab members on how to contribute to this Wiki and where to put downloads.
Matlab tip: searching a large data structure for a particular field. Clear the command window. Evaluate the structure to list all the fields, then use the usual control-f search tool on the command window.

Computational biology

Quantitative understanding of growing shapes: GFtbox

We developed GFtbox to allow us to model the growth of complex shapes with the ultimate goal: to understand the relationships between genes, growth and form.

Growth of a flower Example of a growing snapdragon flower and some mutants ( Green et al 2011). Growth is specified by factors (genes) according to the Growing Polarised Tissue Framework. Colours represent putative gene activity, arrows the polariser gradient and spots clones. GPT_Snapdragon_2010_Green_et_al-0002.png</wikiflv>
<imgicon>GPT_thumbnail2.png|120px|GFtbox</imgicon>

For modelling the growth of shapes.

Ready Reference Manual

(PC, Mac, Linux, uses Matlab
no Mathworks toolboxes needed
Matlab 30 day free trial and
student edition)


Ready Reference'for ancillary functions: in interaction function and external functions' Manual

What? How? Where? Background

Tutorials: from the beginning Start here

Examples: from publications

Download GFTbox from SourceForge

Download GFTbox project files:

Petals Sauret-Güeto et al 2013

Leaves Kuchen et al 2012

Principles and concepts Kennaway et al 2011

Snapdragon Green et al 2011, Cui et al 2010

GFtbox is an implementation of the Growing Polarised Tissue Framework (GPT-framework) for understanding and modelling the relationship between gene activity and the growth of shapes such leaves, flowers and animal embryos (Kennaway et al 2011).

The GPT-framework was used to capture an understanding of (to model) the growing petal (Sauret-Güeto et al 2013), leaf (Kuchen et al 2012) and Snapdragon flower Green et al 2011. The Snapdragon model was validated by comparing the results with other mutant and transgenic flowers Cui et al 2010.

The key point is how outgrowths can be specified by genes. The icon shows an asymmetrical outgrowth. Conceptually, it is specifed by two independent patterns under genetic control: a pattern of growth and a pattern of organisers. The outgrowth arises from a region of extra overall growth. Growth is aligned along axes set by two interacting systems. Organisers at the ends of the mesh create a lengthwise gradient. This gradient interacts with the second due to putative organisers that generate polariser sinks in the region that becomes the tips of the palette outgrowth. (Kennaway et al 2011). These hypotheses need to be tested in biological systems.

Viewing and measuring volume images: VolViewer

<imgicon>VolViewer-logo.png|120px|VolViewer</imgicon> For viewing and measuring volume images on both normal and stereo screens. Typical images from: confocal microscope and Optical Projection Tomography (OPT) images

What? How? Where?

Tutorials: from the beginning

Download

(Windows, Mac, Linux)

Output from VolViewer has appeared in:

Cell: Online Gallery | Front cover: Handbook of Plant Science | Front cover: The Plant Cell | American Scientist | Royal Microscopical Society: Infocus Magazine | Bundled with the Bioptonic 3001 scanner: Bioptonics Viewer | The Daily Mail | The Guardian newspaper: 3D Fruit fly | Qt Ambassador program | Triffid Nurseries website



VolViewer is used as a stand-alone app. or as a viewport for other systems, e.g. Matlab programs. VolViewer uses OpenGL and Qt to provide a user friendly application to interactively explore and quantify multi-dimensional biological images. It has been successfully used in our lab to explore and quantify confocal microscopy and optical projection tomography images. Written by Jerome Avondo it is open-source and is also compatible with the Open Microscopy Environment (OME) (Chris Allen and Avondo, et. al. OMERO: flexible, model-driven data management for experimental biology Nature Methods 9, 245–253 (2012))
Silique.PNG).

Analysing shapes in 2D and 3D: AAMToolbox

<imgicon>AAMToolbox_logo.jpg|120px|AAMToolbox</imgicon> For analysing populations of shapes and colours within the shapes using principal component analysis.

What? How? Where?

Tutorials: from the beginning

Download revised Nov2012


(PC, Mac, Linux, uses Matlab
no Mathworks toolboxes needed
Matlab 30 day free trial and
student edition)

The AAMToolbox enables the user analyse the shape and colour of collections of similar objects. Originally developed to analyse face shapes for lipreading (Matthews et al. 2002version of pdf), we have used it extensively for analysing the shapes of leaves (Langlade et al 2005.,Bensmihen et al. 2010) and petals (Whibley et al 2006,Feng et al. 2010). The analysis can be applied to art, for example, finding systematic differences between portraits by Rembrandt and Modigliani.

Analysing the shapes of clones: SectorAnalysisToolbox

<imgicon>Sector analysis icon.jpg|120px|SectorAnalysisToolbox</imgicon> For analysing the shapes of marked cell clones.

What? How? Where?

Tutorials: from the beginning

Download

(PC, Mac, Linux, uses Matlab
no Mathworks toolboxes needed
Matlab 30 day free trial and
student edition)

The SectorAnalysisToolbox enables the user analyse the shapes of marked clones in a sheet of tissue.

Algorithms

MSERs, extrema, connected-set filters and sieves

The algorithm finding MSER's starts with a connected-set opening or 'o' sieve

MSERs Cameraman image. Superimposed red spots are maximal extrema and blue spots are minima. Irregular cyan, blue and yellow regions illustrate regions associated with maxima and the magenta region is a minimum. MSERs over scale-space
Isometric view of the cameraman image with superimposed maxima (red) and minima (blue). The trees trace the maxima through increasing scale-space. Large spots have been identified as stable extrema.

For finding features in and segmenting images.

What? How? Where? <- <- <- Start here for setting the context <- <-

Tutorials: from the beginning


Art, extrema of light and shade: PhotoArtMaster

Art created using ArtMaster, and ArtMaster itself was featured in an exhibit at the London Victoria and Albert (V&A) Museum exhibition 'Cheating? How to make Perfect Work of Art' (2003). The exhibition centered on the idea of Hockney's that advances in realism and accuracy in the history of Western art since the Renaissance were primarily the result of optical aids such as the camera obscura, camera lucida, and curved mirrors. My exhibit used a touch screen (rare in those days) and ArtMaster to help visitors create 'paintings' from photographs. finding its name. (It is entirely different in principle from the software more recently used by Hockney to paint with an iPad.)

DegasLightAndShade.jpgEmma face Art C.jpg



Illustration of PhotoArtMaster used to find and 'paint' with regions of light and shade crisply segmented from a photograph. Likewise, on the right, edges.

PhotoArtMaster

Saturday 07/06/2014: Inspired Photographer of the Year 2013 Tony Bennett when asked whether his photograph Mists and Reflections had been Photoshopped replied something like
"A digital camera delivers an unemotional raw image of pixels that you have to manipulate to create your photograph" Photographers manipulate as little as possible.
However there is another path one that creates pictures. For this you need another piece of software: PhotoArtMaster (ArtMaster). Professional Photographer said "Forget any comparison whatsoever with the art filters in Photoshop - this software reaches out and enters different stratospheres" Professional Photographer.

Early versions of PhotoArtMaster are still available from Amazon at low prices (I'm not sure where they come from.) [1] . Some help for both the early versions and the latest version can be found in 'this document ).

Links to third party PhotoArtMastered pictures

The final version of the Windows ArtMaster2.0 is downloadable here with no support.

Unzip into (for example) the "Program Files" directory then set your system environment to include: C:\Program Files\Pam2.0 Release\jre\bin;C:\Program Files\Pam2.0 Release\bin; (You may need help for this. I right clicked 'computer' from the 'Start' menu, then selected 'Advanced system settings', then 'Environment Variables' and finally slid through the System variables until I found and selected 'Path'. This allowed me to edit the path by adding ';C:\Program Files\Pam2.0 Release\jre\bin;C:\Program Files\Pam2.0 Release\bin' to the end). Some sort of help using the software is available in 'this essay .

The sieve algorithms underpinning PhotoArtMaster software are described in an extract of the 'essay . These documents were written to support our Fo2Pix company. PhotoArtMaster originally sold >65,000 licences but ill health forced the closure of Fo2Pix.

Trees 1.jpg



Illustration of PhotoArtMaster used to find and 'paint' with regions of colour crisply segmented from a photograph.


Reaction-diffusion and morphogenesis

Tentacles morphogenesis.png

Illustration of morphogenesis inspired by Turing's paper.

Example using growth toolbox GPT_ReactionDiffusionTentacles_20121211.zip

1 A

<wikiflv width="300" height="300" logo="false" loop="true" background="white">GPT_rd_rk_tentacles_20120417-0004.flv|GPT_rd_rk_tentacles_20120417-0004_First.png</wikiflv> A simple reaction-diffusion system develops a pattern of spots. GPT_rd_rk_tentacles_20120417-0004.png</wikiflv>


Two simple growth rules translate the pattern into directed growth. The changing geometry that arises through growth causes the reaction-diffusion patterning to continue to change.

Open source systems to which we have contributed

OMERO

<imgicon>OMERO_DIAGRAM.jpg|100px|OMERO</imgicon> For working with the OME image database.

See Details, Download
OMERO Workshop

(Windows, Mac, Linux)

Open Microscopy Environment Remote Objects (OMERO). for visualising, managing, and annotating scientific image data. See also our OMERO Workshop training course we ran in April 2011.

Tools and Utilities

BioformatsConverter

<imgicon>BioformatsConverterZip.png|100px|BioformatsConverter</imgicon> For converting microscope manufacturer proprietary file formats.

See Details

(Windows, Mac, Linux)

This tool allows for the batch conversion of microscope manufacturer proprietary file formats, to the open source OME-TIFF standard. Uses the Bioformats library.

Dependency Checking Tool

Tool for recursively finding what further functions a function depends on. See Details

In development

MTtbox

<imgicon>MTtboxA.jpg|100px|BioformatsConverter</imgicon> For modelling the behaviour of microtubules within a cell.

See Details

(Windows, Mac, Linux)

In development. The idea is to be able to model the behaviour of growing microtubules and factors as they react chemically and diffuse within the different cell compartments.

The icon shows a spherical cell sliced open to show concentric components: cell wall (magenta), plasma-membrane (yellow), cytoplasm (green) and vacuole (yellow). Microtubules (blue) grow in 3D within the cytoplasm.

Historical

Robot arm: an educational device still in production after 30 years (serving local industry)

2014-06-10 14.22.20 small robot.jpg For teaching production control and interrupt programming.

1983 and we are in a world of Apple II and BBC B computers - the 6502 processor reigns. Particularly good for real-time control it responded very fast to hardware interrupts from, for example, the timer. To illustrate timer interrupts what better than digital servo-motors? Set up the on-board timers to produce a stream of 'heartbeat' of pulses, one every 20 ms out of the parallel port and control up to eight motors. Pulse widths, from 1 to 2 ms, control the position of each motor arm. Derek Fulton and made some lab. money by building and writing a series of articles showing exactly how to build this robot arm.Bangham et al.. My copyright, I took it to a local company LJ-Electronics (now LJ-Creative) who incorporated detail for detail into their product line. Lovely outcome.

Historical