LOBSTER panel is handy to handle journals, perform measurements and export object models, but it is limited to two journals and for some more advanced features it might be necessary to directly script LOBSTER computational modules from the console. This section provides an introduction to this topic.
Workflows identifying objects are configured inside journals, human readable text files configuring input/output folders, the sequence of LOBSTER functions to apply to each input image and their associated parameters. Journals are processed by JENI from MATLAB console by typing:
If you plan some further operations such as measuring the object masks from output folder, Input and Output folder paths can be conveniently stored to MATLAB variables (placeholders) so as to be easily reused in later calls:
InputFolder OutputFolder = JENI(‘MyJournal.jl’);
Objects encoded in object masks (JENI) are measured by calling IRMA:
>> IRMA(‘PathToOutputFolder’, ‘PathToReportFolder’, MaskType, ImgDim, ZRatio);
It is possible to measure object intensity statistics by providing extra arguments:
>> IRMA(… , ‘PathToInputFolder’, ‘ChanFilter’);
Object intensity measurements is illustrated in this video.
Object 3D models are exported by passing a list {} as IRMA 5th argument:
Object markers 'Spts' can be exported as CellInsight project (.xls file) from MATLAB console:
>> JOSE('PathToReportFolder','Spts', 'PathToExportFolder','CellInsight', '', '');
It is recommended to export CellInsight project to input image folder since CellInsight attempts to import the project from this location by default. See this video for basic usage of CellInsight ImageJ macro.
Job scripts are MATLAB files used to record sequential calls to JENI, IRMA and JOSE so as to automate their further execution. For instance the job script (/Jobs/FISM.m) sequentially calls two journals: one segmenting nuclei into object masks and another one detecting FISH spots from another channel to output a seed mask. The number of spots per nuclei is then reported by calling IRMA and using the seed mask as intensity channel and the object mask as measurement mask.
[InputFolder1 MaskFolder1] = GENI('FISH_nucseg.jl');
[InputFolder2 MaskFolder2] = GENI('FISH_sptdet.jl');
IRMA(MaskFolder1,'.','Objs',2,1, MaskFolder2);
Note here that GENI was used instead of JENI to prevent image display and user interaction (equivalent to switch between Batch and Adjust in LOBSTER Panel). A video demo of this job script into action is provided here.
Job scripts can be called by typing their name from MATLAB console. Many sample Job Scripts are provided in /Jobs folder.
Note: When Run All is pressed from the Panel, the job script performing the actions of the project is logged to the console after processing. It is possible to copy these lines to an empty .m file and use it as a job script (e.g. to send to LOBSTER server or to further edit it).