Video Client 3 (Version 0.92+) Quick Reference
Table of Contents
Overview
The Video Client 3 is a fast versatile video display and analysis tool used to monitor, taking and analyzing data that is produced by image sources, such as video cameras. The Video Client was originally written for monitoring and measurements at Photo-Injector Test Facility Zeuthen (PITZ). But it is made in a generic way so that it is also useful for other sites than PITZ.
Brief list of possibilities:
- receive live video as well as take sequence of video images from live sources
- monitor what is going on (see electron beam, see laser beam, see dark current, see diagnostic devices in the beam pipe)
- online-analysis of the beam images (spot size, position, shape, ...)
- optimize the beam image quality before data is taken and stored permanently
- do manual data-taking
- do semi-automatic data-taking (control of laser shutter)
- correlate behaviour between spot-size, position and shape and "moving" experiment parameters (Online-DAQ)
|
Figure 1: Main Application Window |
(click to enlarge) |
What's new in Video Client 3
- Interface for getting video frames from Server is now Video System 3-style
- supports JPEG images (will be converted to grayscale on input)
- supports RGB colour images (will be converted to grayscale on input)
- support independend x and y scale factor
- Redesigned Interface/Toolbar
- Zoom Panel
- Histogram Panel
- False Colour Table Panel
- Side Panel
- Normalisation now taking into account upper and lower bound (backward compatible upper bound normalisation is available as an option)
- Possibility to tweak X-Ray filtering
- Position and size of area of interest can be finetuned by keyboard (CTRL+arrow-keys, CTRL+shift+arrow-keys)
- works via VNC and Timbuktu
- XML configuration files with speaking names, easily editable via text editor
Features of the program
- Spot position and size calculation using Fourier analysis
- Spot position and size calculation using Straightforward statistics
- False color (classic, JET) and greyscale mode
- projections of the video signal (in X and Y)
- Printing of video images as well as the whole program window
- Live video-mode (polling) and offline mode (grabbing)
- Saving and loading of raw images and backgrounds using application-specific (IMM, IMC) and widely used format (Windows BMP)
- Background subtraction
- Acquiring backgrounds using grab single background, add to background, envelope background and average background
- Snapshot mode (video snapshot to BMP file)
- Automatic acquire of certain control system properties (parameters of the experiment) for simplified correlations (so-called Online DAQ)
- Automatic acquire of certain control system properties in order to save side-by-side of a saved video frame
- Scaled values (instead of pixel values obtain results directly in millimeters)
- Image preview on loading files
- Semi-automatic datataking (called: GrabAndSave) with interfacing of Laser shutter
- X-Ray filtering
- Selectable area of interest either circular or rectangular (all calculations are only done there and not
on the whole video frame)
- Cathode bounds superimposed over the image (useful for Virtual Cathode cameras)
- Free field in toolbar with two implemented functions at the moment
- sum of pixel values of video area (Sum of Pixels)
- cooked pixel value under mouse cursor (Cooked Value)
- mean value of pixel values of video area (Z mean)
- rms value of pixel values of video area (Z rms)
- XY Correlation Coefficient of video area (XY Corr (-1..1))
- Tilt factor of video area (XY Tilt)
- XY Angle of Regression Line (XY Angle [°])
More technical:
- works over Remote Desktop (Microsoft Remote Desktop Connection, VNC, Timbuktu)
- compatible with Multi-Monitor setups
- video frame transfer from server to Video Client 3 can use multicasting (configurable)
- XML config file with speaking names
- Video System 3 video data interface (compatible with Video System 3 sources)
Menu description and quick reference of functions
Menu | Entry | Submenu | Description |
Application |
Area of Interest | Circular | Switches to circular area of interest. [1] |
Rectangular | Switches to circular area of interest. [1] |
Color Mode | Grayscale | Switches on grayscale colour mode [2] |
False-color mode | Switches on PITZ false colour mode [3] |
JET False color mode | Switches on false color mode similar to MATLAB JET [4] |
Free Field | Sum of Pixels | The sum of all pixels values of the current area of interest of the image displayed, is shown. [5] |
Cooked Value under Cursor | Displays in the free field on the toolbar the pixel value (depth) of the pixel that the mouse cursor points to. In addition, the maximum pixel value, according to bit depth of the image, is printed. [5,7]
|
Z mean | Displays the mean value of all pixel values inside the area of interest. [5,6,8] |
Z rms | Displays the rms value of all pixel values inside the area of interest. [5,6,8] |
XY Correlation Coefficient | Displays the XY correlation coefficient of the pixel values inside the area of interest.[5,6,8,9] |
XY Tilt | Displays the XY Tilt value of the pixel values inside the area of interest.[5,6,8,9] |
XY Angle of Regression Line | Displays the Angle of the Regression Line (unit [degrees] of the pixel values inside the area of interest.[5,6,8,9] |
Normalisation | | Switches normalisation of the video data on and off |
Projection mode | X Projection | Switches X projection on and off |
Y Projection | Switches Y projection on and off |
Off | Switches displaying of all projections off |
Statistics Mode |
Fourier | Switches on Fourier statistics (slow, more precise, less sensitive to noise) |
Straightforward | Switches on straightforward statistics (using MEAN and RMS formula) (fast, less precise, sensitive to noise) |
Streakcamera | Streak image analysis (experimental) |
Off | Switches off statistics |
Virtual Cathode Frame | | The function is still in development. It will be documented later. |
X-Ray filtering | | Switches X-Ray filtering on and off |
Keep aspect ratio | | Switches the "Keep Aspect Ratio" on and off, if on, the program resizes the video frame inside the application window to respect the proper aspect ratio of the video frame |
Stay on top | | Switches the "Stay on top" on and off, if on, the program is on top of all other windows all the time |
Offline | | One can enable/disable Offline Mode (all online control and video system connections are cut when Offline) |
Preferences | | Shows up the preferences dialog to set up snapshot directory, the repetition rate of the system, one can switch between TINE protocol (slow, state-of-the-art, saves network bandwidth) and Sockets (fast, more stable, wastes network bandwidth) |
Reload Server (Camera) List | | If one comes to the conclusion that in the Live Image Source combo box there should be more servers listed or one wants to remove servers from the list not available right now, one can try reloading the list. |
Print image | | Prints the current image (can also print to electronic logbook if a proper printer for this is installed) |
Print whole window | | Prints the whole application window (can also print to electronic logbook if a proper printer for this is installed) |
Quit | | Quits (exits) the application |
Image | Load | | Loads in raw images (either IMM, IMC or BMP file format) |
Save | | Saves raw images (either IMM, IMC or BMP file), one also has the possibility to save important experiment data (like klystron forward power) together with the image file(s) to a text file. If saving multiple images to BMP file, one is not load them in again into the Video Client as a bunch. |
Grab | 1 Frame | Grabs a single video frame |
2 Frames | Grabs two video frames. The displayed image will be an average image of these two images. All calculations are performed on each individual video image and are then averaged. [10] |
... | ... |
200 Frames | Grabs 200 video frames. The displayed image will be an average image of these 200 images. All calculations are performed on each individual video image and are then averaged. [10] |
Grab and Save... | 10 Frames | Grabs a sequence of 10 images and 10 background source images and saves them to disk |
... | ... |
100 Frames | Grabs a sequence of 100 images and 100 background source images and saves them to disk |
Poll | | Start or stop Poll mode (live video) |
Analyze | | Analyses the current video buffer again (after one changed some settings) |
Background | Load | | Loads in the current background image (BKG, BKC or BMP file format) |
Save | | Saves the current background image (BKG, BKC or BMP file format) |
Grab | | Grabs a single background that automatically replaces the current background image. |
Add | | Adds a background to the current background image (addition). |
Get->Envelope | 5 Frames | Grabs 5 images in a row, creates an enveloped background image out of them and puts this image as the current background image. [10] |
... | ... |
200 Frames | Grabs 200 images in a row, creates an enveloped background image out of them and puts this image as the current background image. [10] |
Get->Average | 5 Frames | Grabs five images in a row, creates an averaged background image out of them and puts this image as the current background image. [10] |
... | ... |
200 Frames | Grabs 200 images in a row, creates an averaged background image out of them and puts this image as the current background image. [10] |
Show | | Shows the current background image |
Clear | | Clears the current background image |
View | False Colour Table Panel | | Shows a panel where the current false colour table is drawn as a stripe. |
Histogram Panel | | Shows a panel where the histogram of the image that is currently shown, is drawn (experimental!). |
Messages Panel | | Shows a panel where the messages of the application are logged. |
Side Panel | | Shows a side panel where additional information and options for the advanced user are shown. |
Zoom Panel | | Shows a panel where the currently displayed image can be zoomed in or out, also provides 100% view (1:1, i.e. 1 pixel on the screen is 1 pixel of the image source). |
Help | Quick reference | | Shows this help |
About | | Displays the about box of the program |
Footnotes:
[1] |
In addition, the area of interest (AOI) is automatically reset to the biggest one possible. For rectangular AOI, the AOI will span the whole image dimensions.
|
[2] |
When using grayscale colour mode, there could be problems observing weak signals. The gray scales are linear distributed across the bit-depth of the pixels of the image. Depending on the capabilities of the monitor, only a fraction of the possible gray scales are shown physically.
|
[3] |
PITZ false colour mode was designed for better displaying of weak signals and in order to distinguish low, medium, high and saturated intensity. Black means no, blue means weak, green means medium, red means strong and white means saturated signal. |
[4] |
The colours are drawn like in MATLAB if JET colour table is used. Slight finetuning has been performed so that the maximum (saturated) intensity of the displayed data is shown as white. |
[5] |
If there are multiple video frames in the buffer, first of all the value is calculated for each individual frame in the buffer. Then the individual values are averaged. What is shown in the field is then the averaged value. |
[6] |
Please note that X-Ray filtering and background subtraction are performed before the value is calculated. So if these algorithms are in effect, they may alter this value! In contrast, normalisation is performed after the value is calculated, so applying normalisation does not influence this value. |
[7] |
Please note that X-Ray filtering, background subtraction and normalisation are performed before the value is calculated. So if these algorithms are in effect, they may alter this value! |
[8] |
Please note that this value is only calculated if statistics mode is switched to straightforward or fourier. |
[9] |
Dedicated documentation on XY Correlation Factor, Tilt and Angle of Regression Line is available on the Video System website. |
[10] |
Any algorithm applied on a sequence of images is designed to perform best if there are no images lost in-between (so-called dropped frames) while recording the sequence. Due to shared resources like network bandwidth, drops may occur. The Video Client 3 will present a warning in this case. Also in rare cases it may happen that the image source is changed on server-side while the Video Client 3 records a sequence. Such events will be detected and an error message will be shown. As the recorded sequence is considered useless in this case, the sequence will be discarded.
|
Toolbar
Control | Description |
Toggle-Button Override Scale | If pressed, x-Scale and y-Scale boxes can be edited (and so scale values delivered with the image can be overridden by user-defined values) |
x-Scale (mm/px) | Displays the scale value used to calculate the x-mean and x-rms values |
y-Scale (mm/px) | Displays the scale value used to calculate the y-mean and y-rms values |
<x> mm | Displays the currently calculated x MEAN value (only valid in straightforward or Fourier statistics) |
<x> mm | Displays the currently calculated y MEAN value (only valid in straightforward or Fourier statistics) |
x RMS | Displays the currently calculated x RMS value (only valid in straightforward or Fourier statistics) |
y RMS | Displays the currently calculated y RMS value (only valid in straightforward or Fourier statistics) |
Toggle-Button Normalisation | One can see whether Normalisation is switched on (button looks pressed) or off (button looks like not pressed). In addition, one can easily switch it on/off. |
Toggle-Button X-Ray filtering | One can see whether X-Ray filtering is switched on or off. In addition, one can easily switch it on/off. |
Live Image Source | One can select the current server where Video Client 3 will get video streams from. For each server address it is shown which camera is currently bound to that server (if any). If the combo box is opened it shows all servers which are in principle available. Lines displayed in black colour show servers which currently provide video frames. Lines displayed in grey show servers which do not currently provide video frames. The combo box flickers (red/white) if the status of the currently selected server changes. If the whole control is greyed out then no server is available at all. This could be due to the fact that the application's mode is currently set to offline. |
Switch... | Opens or shows camera switching panel (to switch a server to a different camera) |
Toggle-Button Poll Mode | By this button one can quickly see whether poll mode is switched on or off and, if one wants to, switch it on or off. |
FF: Sum of Pixels | The so-called 'free field' shows the sum of the pixels after background subtraction. The free field can show various values, see Application->Free Field menu entry. |
DAQstart (DAQstop) | Starts/stops simple Online Data Acquisition (so-called Online-DAQ). If Online-DAQ is currently running the button is labeled 'DAQstop'. When pressing DAQstop, Online-DAQ is stopped and remaining data is flushed to file on disk. |
DAQdiscard | Can be used as a button to stop DAQ and automatically discard the data (do not save to disk). |
Icon showing Coordinate System | As an information for the user, this icon shows the used coordinate system inside the
video frame. Calculated values are shown using this coordinate system, where applicable. |
Description of the Side Panel
Section | Label | Description |
Image Buffer |
Number of Images | number of images the image buffer currently consist of |
Width | width of each image in pixels |
Height | height of each image in pixels |
Format | current format of the image buffer [1] |
Area of Interest (AOI) |
Type | type of area of interest (rectangular or circular). [2] |
Constraints | the actual values which define the area of interest. [2] |
Statistics |
Drop. Frames | Shows the number of dropped frames since poll mode was last enabled. [3] |
Polled Frames | Shows how many subsquent frame have been acquired using poll mode. [3] |
Normalisation | Mode | One can switch between Top-Down normalisation and Top only. The latter works like in Video Client 2. [4] |
X-Ray Filtering | n/a | To be documented later. [4] |
CSV File Writing |
Delimiter | Shows the currently used CSV file delimiter. [5] |
Decimal Point | Shows the decimal point used when writing CSV files. [5] |
Grab and Save |
Laser Shutter Control | The control of the laser shutter in GrabAndSave function can be disabled. The status is shown here for reference. |
Footnotes: | |
[1] |
The data formats the Video Client 3 supports are: Gray8 (maximum 8 bits per pixel) and Gray16 (maximum 16 bits per pixel). In addition to the format, the effective bits per pixel currently set are shown. For example there exist Gray16 EBitPP=12 which means 16 physical bits per pixel, but the image source is only able to deliver 12 bits per pixel. The remaining 4 bits are not used and will not go into calculations. Only the effective bits are taken into account.
|
[2] |
There are two types of Areas of Interest: Rectangular and Circular. The rectangular area of interest is defined by its bounding rectangle pixel positions left(l), top(t), right(r) and bottom(b). The circular area of interest is defined by its centre point (cx, cy) and its radius (r). There is always an area of interest set inside Video Client 3. The biggest rectangular area of interest spans the whole image dimensions. The biggest circular area of interest is a circle which is restricted to the image dimensions.
|
[3] |
The number is still shown after poll mode has been stopped. It will be cleaned on next startup of poll mode.
|
[4] |
The setting is volatile and so it will be forgotten if the Video Client 3 is closed.
|
[5] |
The current delimiter and decimal point for CSV files are tried to be obtained from Windows regional settings. Furthermore they can be specified in videoclnt3-config.xml. The config file takes precedence over what was obtained from Windows regional settings.
|
Keyboard-shortcuts
Hotkey | Description |
F2 | Switches statistics mode to Fourier statistics |
F3 | Switches statistics mode to straightforward statistics |
F4 | Switches all statistics off |
F5 | Switches the color palette to grayscale |
F6 | Switches the color palette to PITZ false colors |
F6 | Switches the color palette to false colors close to MATLAB JET |
F10 | Take a snapshot to file on disk from what is seen inside the video frame. |
ALT-A | (Re-)Analyse the current frame buffer (can be loaded, grabbed or the last polled frame(s)) |
ALT-P | Switch poll mode on/off |
CTRL-G | Grabs a background and shows it on the video frame |
CTRL-A | Grabs a background and adds it to the current background. Resulting background is shown on the video frame |
CTRL-S | Shows the actual background on the video frame |
CTRL-C | Clears the background image (no background subtraction) |
ALT-F4 | Closes application gracefully |
CTRL+arrow keys | Adjusts position of the area of interest inside the video frame |
CTRL+shift+arrow keys | Adjusts size of the area of interest |
Mouse functions
Function | Where | Description |
right click | inside the video frame area | Starts / stops poll mode |
left click and drag | inside the video frame area | select area of interest |
File Formats
In this section, the different file formats used by the application are explained.
Format | Long name | Description |
IMM | IMage Media | The IMM format is used for storing raw images from the framegrabber. It can contain more than one file and contains the scale value of the images. One should use this format to load in the images again into the Video Client 2. |
IMC | Image Media Compressed | The IMC format differs from IMM that the frames are compressed (using zlib). It is the preferred saving format, especially if one has taken more than 5 frames. |
BMP | Windows BitMaP file | The BMP format can be used for storing raw images or raw backgrounds. A BMP file can contain only a single image. When saving more than one image the images are splitted up in multiple files. When one saves a sequence of images out of Video Client 3 as BMP, one can only load them back in Video Client 3 as individual images, not as a sequence. One should use this format only if one wants to load in these images into e.g. picture processing programs in order to postprocess them. |
BKG | BacKGround file | The BKG file format is used for storing raw backgrounds to file. |
BKC | BacKground Compressed | The BKC format differs from BKG by two things. First, the images contained are compressed using zlib and second, there can be more than one background image inside. This allows for saving of source background images where an enveloped or averaged single background image was created out of it afterwards. |
Preferences Dialog
Option | Description |
DAQ configuration file | One can put here its own special online DAQ file here to have properties acquired and stored that differ from the default property list. |
DAQ output directory | Here one can enter or choose the directory where the online DAQ csv files should be written to. |
Snapshot directory | Here one can enter or choose the directory, where the snapshots of the currently displayed video image should be written to, as BMP file. |
Drawing mode | It is recommended to keep this setting at Compatibility, because it is best possible compromise. However for best performance on Microsoft Remote Desktop or Physical Display at the cost of drawing issues when using VNC or Timbuktu, one is able to choose Performance. If set to Performance, the application may be drawn in such a way via VNC/Timbuktu, that it is impossible to operate it!
|
File preview dialog | If one experience problems with the file preview dialog (slow image selection due to slow network e.g.), one is able to disable the File Preview Dialog or reenable it (if it is wanted again). |
Last modified: Oct 5, 2012 |
|