Using Elphel Laser Beam Analysis and Visualization System

1. General Description

Elphel Laser Beam Analysis and Visualization System (ELBAVS) uses NC303 series network camera (with or without the fiberoptic window), software running inside the camera under GNU/Linux and web browser with VRML plugin running on the user PC. Browser receives web pages generated in the camera that accept user input to control the camera operation.

User interface of the ELBAVS resembles that of an application running on a PC, but actually it is just a web (html) page with javaScript - you may view it's source with the browser. And being such it has some limitations that come from Internet security requirements - i.e. the only way to save data on your computer is to right-click on the link and save it using the command from the browser context menu.

Additional context help is available in ELBAVS as "tooltips" - holding mouse pointer over buttons/icons will open floating yellow boxes with the description of the particular control. Use "Tab" key or click over the empty area in the window to make ELBAVS aware of input field change you made.

The system uses cookies to save selected settings, in demo mode all cookies will be lost after you close the browser, the page will also work if you disable cookies on your computer.

2. Installation

The only installation you will possibly need is VRML plugin for viewing 3-d models. The ELBAVS page will try to automatically install Cortona from http://www.parallelgraphics.com/cortona - the browser should download plugin (~1.5MB) and then ask your permission to install it. You may also install plugin manually from that site.

If you have Cortona successfully installed the top right frame of the page should show a 3-d version of Elphel logo .

3. Frames

The ELBAVS uses a web page with 3 frames:

You may freely resize frames by dragging the borders between them.

4. Controls

ELBAVS can acquire images (to the internal memory), show 2-d visualization, calculate beam parameters and show 3-d model (intensity as a function of X and Y). You may choose to perform selected visualization/measurement function(s) each time a new image is acquired by pressing the appropriate "auto" button ().

4.1 Image Acquisition controls

The left side of the bottom frame has the controls for image acquisition.
will acquire an image to the camera internal memory and start sequence of visualizations/measurements if any of the corresponding buttons are "on" ().
stands for "repetitive mode of image acquisition", the next acquisition cycle will start as soon as the previous one is finished.
is for fast preview mode. You may select lower resolution than the final image () by pressing - it will go through and states. "1/4" means decimation by 4 in both vertical and horizontal directions, the total number of pixels will be 16 times less than the full resolution image ("4/4"). "1/2" is decimation by 2, total number of pixels - 1/4 of the full resolution.
selects "external trigger mode".
Input field to the right of icon selects sensor exposure time in milliseconds, to the right of - analog gain that can vary from 1.0 to 5.0.
- decimation selector in the next row works similar to the same button for the fast preview mode (see above), it selects the resolution for the final image that is used for beam parameters measurement and 3-d model creation.
will switch through states , and as you press it, it selects horizontal and vertical flipping of the image during acquisition.
Next 3 buttons and numeric field deal with background image subtraction to decrease the effect of the sensor fixed pattern noise and thermal current. selects the background subtraction mode, previously acquired background images will be subtracted pixel-by-pixel from each of the acquired images. As the background depends on most of the acquisition parameters (exposure time, decimation, window, gain) this button will turn to disabled state ()if you change any of them. It will be re-enabled when the camera will acquire background image with the modified acquisition parameters. Pressing button will perform background measurement - data will be acquired without waiting for an external trigger even if the external trigger mode is selected. To reduce the random noise of the background image acquisition it is possible to perform it several times and then calculate average - you may specify it (1-2-4-8-16-32) with selector input field to the right in the same row. Pressing button next to (it will change to state) selects the automatic background measurement mode. In this case the background measurement(s) will be performed before each normal measurement.

Next 4 fields - , , and control the sensor "window of interest" (WOI) - the values may be modified by the camera after the image acquisition to match the parameters allowed by the sensor.

4.2 Pseudocolor selection

The ELBAVS uses monochrome image sensors and color is used to show different intensity levels. The input field under the image acquisition controls (bottom left) near icon is used to specify the sequence of colors (from complete darkness to the sensor saturation level) that will be used in both 2-d and 3-d visualizations. It is possible to use either digits (0 to 7) or letters K(black), R(ed), G(reen), Y(ellow), B(lue), M(agenta), C(yan) or W(hite) to set the sequence.

Pseudocolor selection applies to 2-d and 3-d visualizations, not the image acquisition process. So changing pseudocolor sequence and redrawing 2-d image or rebuilding 3-d model by pressing corresponding "manual" () button (see 4.3 and 4.5 below) will show different visualization of the same data stored in the camera memory.

The color of the edges that have big difference of the intensity values between ends (crossing several bands of the pseudocolors) is not displayed correctly as the VRML defines only a gradient between two colors for the edges.

4.3 2-d Visualization

The block starting with the "2-d" icon () controls 2-d visualization in the top left frame of the ELBAVS window. Pressing the "manual" () button will display the image using the data that is currently stored in the camera memory, "auto" () selects the mode when this process will take place each time the new data is acquired by the camera (see 4.1 above). The selector field to the right of is used to set the image compression mode. "0" selects an uncompressed BMP data format (more than a megabyte for the full resolution), 1-9 produce the JPEG images where "1" produces the highest quality, "9" - the smallest file.
The same compression setting is applicable to 3d model (see 4.5 below), but in that case quality does not suffer as VRML uses lossless gzip compression.

4.4 Beam parameters measurement

                                         
  X Y  
Energy
mJ
Calibration mJ/pix/count
Sensor  
Area cm
Pixels  
Ellipse
X
Y
 
Centroid
cm
Width cm
Aspect
 
Azimuth
deg
Diameter
cm

The center of the bottom frame is used for the standard laser beam parameters calculation using the data acquired by the camera. It also shows image sensor type and WOI dimensions. "Manual" and "auto" buttons work the same way as in 2-d visualization (see 4.3 above) -- pressing will calculate beam parameters using the data from the camera memory, "auto" () selects the mode when the measurement takes place each time the new data is acquired by the camera (see 4.1 above). Setting of the user editable "Calibration" field will scale "Energy" readings.

4.5 Interactive 3-d visualization

 
 
 
     

Camera generates interactive 3-d model using acquired data and parameters specified that can be modified after it is transferred to the user PC. Parameters that should be set before building a model (that can be performed with and buttons similar to the procedure described in 4.3 and 4.4 above). Parameters that should be specified before building a model (and so model should be rebuilt to reflect changes made to any of them) include:
  - Pseudocolor sequence (described in 4.2);
  - Compression (see 4.3). Compression "0" will generate uncompressed (plain text) files, higher values produce gzip encoded files. Compression is lossless so the model quality does not depend on compression setting;
  - grid cell size - input field ("select" type) to the right of the icon. It specifies how many of the original pixels will be averaged to produce a single vertex of the model, so "8x8" will produce the most detailed (and big) model, and "256x256" will make the least detailed (smallest) model;
  - number of isolines to build for the full intensity range - this number is specified in the field to the right of the icon (25 shown).

All other controls in 3-d block below grid setting () are used to modify model without any new data transfers from the camera. They include:
  - , , and - views from negative X/ negative Y, positive X/ negative Y, positive X/ positive Y and negative X/ positive Y, respectively;
  - - near and - far top views;
  - - solid and - wireframe views;
  - - visibility control for the elevated grid;
  - - visibility control for the flat isolines built on the Z=0 plane;
  - - visibility control for the elevated isolines built with the Z matching the intensity level, so the lines belong to the 3-d surface same as represented by the elevated grid;
  - , , and turn on/off visibility of individual quadrants - it makes possible to view vertical sections of the model;
  - icon marks the input field for the variable scale in the Z (intensity) direction;
  - - X-ray input field allows to change transparency of the faces of the model (it does not change visibility of line objects - grid and isolines).

In addition to the preset viewpoints you may explore the model by dragging it with a mouse. There are other options related to the 3d model manipulation with the Cortona VRML plugin available when you click the mouse right button over the 3-d frame.

4.6 File operations

It is possible to save data received from the camera as files on a user PC and load previously saved 3-d model to view it with the ELBAVS.

Select VRML file to open:

Pressing "open" () button will show a new window were you may type in a 3-d model filename or browse the file system. VRML model filename has extension ".wrl" (for plain text files) or ".wrz" for compressed ones.

To save the file click on the selected link with the right button of the mouse and select "Save Target As" in the drop down menu
3D model   VRML link
Image
BMP
JPEG %
Image Link
Beam parameters
HTML
HTML+javaScript
XML
Beam Parameters Link
Camera parameters Camera Parameters Link

"Save" () button opens the window were you may save (or just view) data files received from the camera. Due to security limitations of the javaScript code it cannot save any files on a user PC. The only way to do so is to right-click on the link and select "Save Target As" in the drop-down context menu. If you just click the same link with the mouse left button link will be opened in a separate window.

There are 4 links in the table, some of them have options.
"VRML link" does not have any parameters, it is a link to the last generated 3-d model inside the camera. You may read back saved VRML file later with ELBAVS. It is also possible to import the file in virtually any CAD system that can handle 3-d objects.
"Image Link" has 2 format options: BMP and JPEG. The first one saves image as an uncompressed (8 bits/pixel) indexed color BMP file with a palette matching the selected pseudocolor sequence (see 4.2 above). File size for the full frame is more than a megabyte. With JPEG format you may select image quality: 0% - worst, but the smallest file, 100% - the best, but the biggest.
Next two links - "Beam Parameters Link" and "Camera Parameters Link" are data files with the same output options. "HTML" will provide data in a two column table - first being parameter name and the second - parameter value. "HTML+javaScript" will generate HTML file with javaScript assignments, so data will be visible only in the page source. "XML" option will provide the same data as ".xml" file, it will be visible if you open it in the browser.
"Beam Parameters Link" points to the data used to calculate values displayed in the main window, and
"Camera Parameters Link" - internal camera parameters that were used during the last image acquisition. You may find parameters definitions in the "cmoscama.h" file included in the camera software source code archive, posted on the web on the http://www.elphel.com/downloads page.

4.7 Language selection and help

The use of the three remaining buttons in the control frame is rather obvious. selects English language for tooltips and messages, selects the Russian one. Pressing opens the page you are reading now.

 

Please visit http://www.elphel.com - there is additional information on different Elphel cameras (including sample images, schematics, software source code, etc.) and cameras applications posted there

The latest versions of the software for the cameras with the installation instructions are also posted there.