Loading...
 

Huygens Core: a full compute engine for remote image processing

Huygens Core, part of the Huygens Software, is a full compute engine intended to run image processing and deconvolution jobs on large 64 bit multiprocessor servers. It has no specific graphical interface by itself.

Huygens Remote Manager (HRM) is an open source web task manager for servers that can acts as an interface to Huygens Core to do multi-user batch processing. HRM has an optimized interface connection to the open source OMERO server.

Click here to try out HRM/Huygens Core on our online demo server.

See Huygens Core in action at the HRM demo site.
See Huygens Core in action at the HRM demo site.




Features


Because Huygens Core is a full compute engine without a graphical interface, it can be easily integrated in web applications for remote image processing.

A remarkable example is the Huygens Remote Manager (HRM), an open-source application developed by the Montpellier Rio Imaging facility, the Facility for Advanced Imaging and Microscopy at the Friedrich Miescher Institute (FMI, Basel) and the BioImaging and Optics Platform at the Ecole Polytechnique Fédérale de Lausanne.

The HRM is a web task manager for servers that acts as an interface to Huygens Core do multiuser batch deconvolution. You can read more on how it integrates with Huygens Core below.

Download

You can download Huygens Core as part of the Huygens Suite from our download section.

In that same section you can also find the Programmer Guide in a PDF file, but this manual can also be found online in a html version: Huygens Core Programmer Guide.

Write your own scripts

Huygens Core enables you to run your own scripts using the extensive set of Tcl Huygens image processing commands. Writing scripts for Huygens Core is very easy since it uses the popular Tcl scripting language. With it you may construct programs that launch many parallel image processing jobs to make full usage of a multiple cpu system or a computer grid.

If you do not want to program yourself you may just use a customizable front-end like the HRM.

Huygens Core command prompt (click to open larger view).
Huygens Core command prompt (click to open larger view).


Frequently Asked Questions


Huygens Remote Manager and Huygens Core FAQ's


Yes. The embedded Batch Processor in the Huygens Software allows you to do batch deconvolution, but you will need an X-terminal or other remote graphical interface for remote usage.

HRM is a web interface to Huygens Core and allows you to control the deconvolution queue with any of the supported web browsers. Once it is properly installed in the server, no configuration is necessary for the client apart from a running browser like Firefox.
Huygens Essential and Huygens Professional have their own integrated Batch Processor, but it is more intended for single-user usage. Multiple users may run simultaneous sessions of the Batch Processor, but the multiple batch processors will compete for the same hardware resources, likely resulting in a slowdown.

HRM, on the other hand, has a queuing system intended for multiple users. Different users have their own accounts and put deconvolution jobs in the queue; they will be managed in order (first in, first out). A quota system for improved queue management is currently being implemented, and will be included in HRM 4.0.
That is possible with HRM: the queue is always visible to all connected users (but users can only delete jobs they own, of course).
The Huygens Remote Manager is an open-source project and is developed by groups using Huygens at the Universities of Montpellier, Basel and Lausanne. Scientific Volume Imaging simply collaborates in its development. There is no possible fee from our side for its usage. Because it is free and open, you can adapt it to any usage you can imagine.

Still, HRM was developed with the idea of working next to the Huygens Compute Engine (HCE), to serve as a front-end to it. Moreover, the Huygens Core (an implementation of the HCE without a graphical interface and intended for large servers) is enhanced to work nicely with HRM, and it will include more and more features specially designed for a web interface like HRM.

You will indeed need a license to extend the FreeWare capabilities of Huygens Core or other SVI programs and be able to do full deconvolution, independently of whether you use it with HRM or any other means. You are always welcome to apply for a test License String!

As a summary:
  • HRM is free to use and adapt.
  • Huygens Core, like all the Huygens Software, has some limited FreeWare capabilities, but
  • to fully do deconvolution with Huygens Core you need a License String.

HRM: a web interface for Huygens Core.
HRM: a web interface for Huygens Core.

As with any other package of Huygens Software, that depends on the modules and options you need. You can request a personalized quote by using this form.
The License Strings for the different Huygens Software products have a tags that specify the number of CPU processors and the capability of the GPU card(s) on which the programs are allowed to run (see License String Details). CPU: Traditionally the machines have been called "desktop" (for up to six processors) and "small", "medium", "large" or "extreme server" (for many processors). In this sense there is no "server module". The term server refers just to a machine category for a license to run, not to extended features of the programs intended for servers. These server options also define the number of GPU cards that can be supported. See also Server option information.
As for the GPU, we have catogorized the NVIDIA GPU cards into different classes that are enable wit a corresponding Huygens option. For more details see GPU cards.
The "server" tag in a License String refers only to the size of the machine the license is created for (see previous question). You will need it to make use of all the available CPU processor and GPU cards in your system, independently of the usage of HRM.

HRM is just an interface to Huygens Core. HRM is free to use, and can save you a lot of time when programming remote-controlled batch deconvolutions. You can also adapt it freely to do not only deconvolution but any other image processing you can imagine: as an interface to the Huygens Compute Engine, many powerful Tcl Huygens commands are available.
No, HRM will work properly only with Huygens Core.

All the different products in the Huygens Suite share the same Huygens Compute Engine, therefore the deconvolution results are always the same. The difference between products is mainly in the user interface.

Both Huygens Essential and Huygens Professional have their own graphical interfaces and can not be executed without it. Therefore they can't be used with another interface like HRM on top of it.

Huygens Scripting can optionally run without a graphical interface. It requires that you program your own scripts and perhaps design your own interface. It is not intended for large scale web-based deconvolution.

Huygens Core works by default without a graphical interface and was designed to work seamlessly with HRM. Huygens Core is continuously being expanded to include more and more features specially intended for web-interfaces like HRM.
Once you have a regular web server running (including Apache, PHP and a database like PostgresQL or MySQL) installing HRM is not really difficult. You can find some guidelines based on previous experiences in Hrm Installation and you can always contact SVI for support. Remember that you will also need to install Huygens Core!

More information about the HRM installation can be found at the official website of the HRM project.
The HRM code is currently Unix-oriented, and it is primarily intended to run only in large servers running Linux. It has been tested with success in MacOS X 10.5 after a few adaptations, and it is not difficult to install because OSX comes with most of the necessary server components. It hasn't been tested on Windows but it anyone can try! Because HRM is open source code, everybody can tweak it.

Huygens Core, which was created to be used with front-end applications like HRM, is currently available for all the Huygens supported platforms (Win, Mac and Linux). If you want to give it a try, please Contact Svi.
HRM makes use of the database abstraction library ADOdb so many popular databases can be used in the background to store user data and image parameters. We have tested it with MySQL and PostgreSQL but in principle many others are possible, see the ADOdb project page.
Huygens Core can be installed in multiple computers and HRM can be configured to distribute tasks over these computers from a central server. (In such configuration, HRM is installed only in one server, Huygens Core in many).

HRM is prepared to handle multiple computers, to assign tasks in the queue to any free computer in the grid. In this sense, HRM provides parallel processing of images. Still, the deconvolution of each image in the queue is assigned completely to a single computer only: large images are not split among computers in the grid for parallel processing.

Because Huygens Core (as all Huygens applications) is multithreaded and uses parallel processing for its deconvolution algorithms, each image assigned to single computer will be deconvolved using parallelized procedures and will benefit from that computer having multiple processors.

You can program your own interface to Huygens Core or use other queuing application different from HRM if you want to distribute image processing tasks over the computers in the grid, with this same idea.
Since version 1.1 HRM contains previsualization tools to explore your restored results and compare them with the original images. See Hrm Screen Shots.
There's an online HRM demo installation supported by SVI, which everyone can use here.
The HRM and Huygens Core have NO file size limit, but if you plan to upload files to the HRM demo server, you may run into the file size limit of your browser (PHP), which is 2Gb. With larger files sizes it is advised not to upload files but to use data sharing with the HRM server.
HRM stores usage statistics of all deconvolution jobs sent to HuCore. All the statistics can be exported to a text file, which can be opened in spreadsheet processors.
To retrieve the complete HRM statistics log on to HRM as 'admin' and click on the "global statistics" icon. In the statistics panel, start and end dates can be selected to get the statistics of a particular period of time. Select a research group if you wish to get the statistics of a specific research group, otherwise select "All groups". There are several more options to select a specific statistics type, but in this case you may want to select one of the following:
  • Number of jobs per user.
  • Number of jobs per group.
  • Microscope type.
  • Total run time per user.
  • Total run time per group.