PIXet
Introduction
The PIXet Pro is a multi-platform software developed in ADVACAM company. It is a software package for Medipix family chips for acquisition control. It supports most of the available Medipix based devices (Medipix 2, Medipix3, Timepix, Medipix Quad, Timepix Quad, Widepix, Timepix3) and commonly used readout interfaces MiniPIX, FitPIX, ModuPIX, WidePIX, RasPIX, etc. Pixet provides many tools for optimization of detector parameters, data processing, image corrections and scripting. Pixet has an open architecture (not open source) supporting various types of imaging detectors and related devices (e.g. control of positioning systems or X-ray tubes) and allowing integration of user plug-in modules prepared in C++. Many of such plugins already exists, e.g. Timepix chip equalization, calibration, beam-hardening correction, flat-field correction, particle track analysis, scripting in Python with syntax highlighting. Pixet is written in C++ language and uses multi-platform Qt libraries.
Features
- Measures and reads data from Medipix detectors
- Visualizes the measured data
- Configures the detector
- Saves measured data in several formats (ASCII, PNG image, Pixel Log, …)
- Flat-field correction
- Calibration of measured data
- Beam hardening correction
- Cluster Analysis tool
- Multi-platform software (runs on Windows, Mac OS X, Linux)
System Requirements
Operating systems
- Windows 7
- Windows Server 2012
- Windows 8
- Windows 10
- Mac OS X 10.12 and higher
- Ubuntu Linux
- Debian Linux
- CentOS Linux
- RedHat Linux
Recommended system configuration
- Intel Pentium or equivalent processor with 1.5 GHz or faster
- 8 GB RAM
- Graphics mode 1280x800 with 16.7 m colors or higher
- 200 MB free hard disk space (additional space might be required for saving log files, configuration files and measured data)
- USB 2.0 port
Installation
Microsoft Windows
The PIXet for Windows is distributed as a single setup.exe file for automatic installation. For automatic installation just double-click the setup.exe and follow the instruction in the setup wizard.
In order to communicate with most of the devices, the PIXet needs the device drivers to be installed. In newer versions of Microsoft Windows, the drivers are installed automatically when the device is connected the first time. In a case that the drivers are not installed automatically, the drivers installation file Drivers/setup.exe is included in the distribution of the PIXet.
Mac OS X
The PIXet for Mac OS X system is distributed as a standard DMG file (disk image file). To install the Pixet, mount (double-click) the pixet.dmg file. A window with the disk content will open. To install, just move the Pixet folder to the Application folder.
There is no need to install a special driver for the devices. The software might ask first time it is launched after a reboot of the computer to unload Apple driver. The Apple driver is not compatible with our devices. Just click on the unload.
Linux
The Pixet for Linux system is distributed as a single tar file. To install, just untar the file. The software is launched by executing the pixet.sh script.
There is no need to install a special driver for the devices. In order to run the software under normal user, it is necessary adjust the permissions of our USB devices in udev system. This can be done by executing the script install_driver_rules.sh. It is also sometimes necessary to unload the system ftdi_sio driver. Just execute rmmod ftdi_sio as root in shell before running the software.
Main window of PIXet
Main window
The main window the software consists of device sidebar, frame (picture) panel where measured data are visualized, control panel on the right side, toolbar, menu bar, and status panel in the bottom. The panels on the right side can be minimized by clicking on the down arrow in the corresponding panel or can be hidden/shown via menu Panels.
Device sidebar
The device sidebar shows all the connected devices as icons. By clicking on each icon user can open frame panel and control panels of each device.
Frame Panel
The frame panel visualizes measured data (frames).
Note: Many functions controlling the panel are in the toolbar above it.
- Zooming area in the frame: An area in the frame can be zoomed by holding the left mouse button in the frame, dragging the mouse to create a selection rectangle and releasing the mouse button. The area will be zoomed, scrollbars will appear and the X and Y axis will show exact location and size of the zoomed area. The zoomed area can be zoomed further by repeating the steps above.
- Moving zoomed area: The zoomed area can be adjusted by using scrollbars or by dragging the picture with right mouse button.
- Subframes: If the combined/dual mode selected, the device generating more datasets in parallel. It is accesible as the subframes. User can switch it by tabs below the frame panel.
Image Properties panel
This panel allows for adjusting of color range of the frame.
- Min level, Max level Adjusts the minimal and the maximal value of the frame that are visible in the frame panel. The values between Min level and Max level are then mapped to selected color map. In the case of the gray color map, minimal selected value is black and maximal value is white. To illustrate more clearly, let’s imagine we have a frame 3x3 with values as in the picture below and we set Min Level=1 and Max Level=5. The values under 1 (in this case 0) will not be visible and will be shown in lowest color (black). The values over selected range (in this case 6) will be show in the highest color (white). The rest of the values will be mapped to the 256 colors of the gray map, starting with dark colors for lower values and lighter colors for greater values.
- Auto range When the auto range checkbox is checked, the frame panel color range is set automatically according to the selected auto range type:
- Min-Max – the minimum and maximum value in the frame is set as Min Level and Max Level.
- 0.XXX – 0XXX fractile – color range is set according to selected fractile. The fractile is approximately calculated from histogram of the frame with 1024 bins to reduce CPU time. What it means is, that a histogram of the frame values is made (1024 bins) and the values than according to fractile e.g. for 0.01-0.99 the 1% of lowest and highest values in histogram, are set as Min Level and Max Level.
- Smart – Auto range with minority values ignored.
Measurement panel
This panel allows for setting parameters of measurements such as acquisition time, number of frames, output file, etc.
- Type: Type of the measurements – either Frames (single frames), Integral (frames are summed up
into one frame) or Test Pulses (testing of the parameters of the chip. Injects an artificial charge into each pixel to test its functionality, only for experts)
- Count: Sets the number of frames that will be measured to the memory of PC or saved to hard drive.
- Time: Sets the acquisition time (shutter time) of each measured frame in seconds.
- File output: If the checkbox File output is checked and the file name is entered, the measured data will be saved in to this file.
- Repeat: If checked, repeats the measurement of the Frame Count number of frames. This will be
repeated several times up to the number in the repeat spin box. If the number is zero, the software will repeat until the repeat checkbox is unchecked or the measurement is stopped.
- More measurement settings (a sprocket icon): Opens a dialog with detail settings of the measurement (triggers, file output, …)
- Start / Abort button: Starts or aborts the measurement.
Detector Settings panel
This panel allows for changing of the parameters of the device.
Note: Different devices can has different list of settings and indicators.
- Threshold: Sets the thresholds of the device in DAC steps or in energy (keV). The threshold determines
what energies of particles or radiations will be measured by the detector. The radiation under the threshold will be “ignored” by the device. If the device is properly set up, user can enter the threshold directly in energy [keV]. Otherwise the value represents raw DAC value of the chip. The sense of the raw value for Timepix detector is reversed – smaller value correspond to higher threshold (for positive polarity). If the polarity of the chip is negative, the sense is reversed. Note: If the value is other then default, the converted energy is not correct. The energy calibration is only for default threshold value.
- Bias: Sets the bias voltage for the sensor of the detector.
- Mode:Sets the operating mode of the detector. Different types of detectors have different lists of modes, and some identical modes have different names. Some detectors have combined modes with multiple output data sets at once (ToT+ToA, Event+iToT), others do not have multiple modes at once (Time, Energy).
- Counting, Event – This is an event counting mode. Each event above the threshold increments the counter by 1.
- Energy, ToT – Time over threshold. The counter is incremented continuously as long as the signal is over the threshold. It is used to measure the particle energy.
- iToT – Integrated ToT. Sum ToT for all hits of the pixel. Note: The result converted to energy may be inaccurate due to non-linearity.
- Time, ToA – Time of arrival. The counter is incremented from the moment first hit arrives until the end of the data acquisition.
- Temperature indicator
- Clock: Sets the clock of the Timepix chip. Different detector types has different clock settings or has not this kind of setting. Note: If the changed value has an influence to ToT measurement, the converted energy is not correct. The energy calibration is only for default ToT frequency value.
Filters panel
This panel allows for applying of different filters or corrections to visualization of the measured data. This does not change the measured data, only the visualization in the frame panel.
- Apply filter: When the checkbox is checked, the selected filter is applied to the current frame in the frame panel.
- Filter: Drop down list to select the filter.
- Configure filter: Shows a dialog with parameters and settings of the selected filter.
Image Info panel
This panel shows basic information and statistics of the current frame in the frame panel.
- [X, Y]: Position of the mouse cursor in the frame in frame (device) coordinates
- Count: Value of the pixel in the frame panel the mouse cursor is pointing at
- Min: Minimal pixel value in the current frame
- Max: Maximal pixel value in the current frame
- Pixel Count: Number of active/hit pixels (non-zero pixels)
- Total: Sum of all pixel values in the current frame
- Mean: Mean (average) pixel value in the current frame
Histogram panel
This panel shows histogram of pixel values in the current frame (the x range depends on selected min and max ranges in Image Properties panel)
Menus
File Menu
- Open Frame: Opens and loads measured data from hard disk into the software.
- Save Measured data: Saves all the measured frames from the memory to hard drive. User can choose between
several file formats to save the frames.
- Save Current Frame: Saves the frame currently visible in the frame panel to file. User can choose between raw ASCII matrix or image format.
- Save All Frames: Saves all the frames in the buffer in the same way as Save Current Frame.
- Load Config: Loads configuration of the detector from file
- Save Config: Saves the current configuration of the detector to configuration file
- Load Factory Config: Loads the factory configuration of the device (in factory directory)
- Reconnect: If the device was disconnected from the computer, selection this menu item will try to
reconnect and reinitialize the device
View Menu
- Mirror Image> Mirrors horizontally the frame. When the frame is rotated the frame is mirrored according to the rotation.
- Rotate Image: Rotate the frame clockwise by 0, 90, 180 or 270 degrees.
- Show Grid: Shows grid over the frame that highlights borders between pixels of the frame.
- Show Masked Pixels: The pixels that are masked in the pixel matrix configuration are visualized with a special color (e.g. for Gray color map it is the blue color)
Panels Menu
User can select which control panels should be visible on the right side of the window
Main tool bar
The icons in the toolbar are described from the left side to the right side.
The toolbar have left-aligned and right-aligned part.
- Open Frame: Opens and loads measured data from hard disk into the software. The frames can also be opened by dragging and dropping frames on to the frame panel.
- Save Measured Data: Saves all the measured data (frames) from the memory to a hard drive. User can choose between several file formats to save the frames.
- Show Grid: Shows grid over the frame that highlights borders between pixels of the frame.
- Rotate Image: Rotates the frame clockwise by 0, 90, 180 or 270 degrees.
- Color map: In the Color map dropdown box it is possible to selected colors that are used to map values of the frame.
- Under warning, Over warning: This two buttons set if the values under the selected range or over the selected range should be highlighted with special color. For the gray map these are green color (under values) and red color (over values). If we take the same frame 3x3 as above, we get the picture as shown below. The value 0, which is under 1 would be shown in green and the value 6 (above 5) would be red.
- Previous frame: Shows the previous measured frame in memory
- Frame: Shows the frame with selected index
- Next frame: Shows the next measured frame in memory
- Auto update: If enabled every new measured frame is automatically shown in the frame panel. When not enabled, the frames are measured in the memory, but are not shown in the frame panel. To accelerate the measuring of frames from the device, it is recommended to disable this option.
- Edit Pixel Configuration: Shows the pixel configuration toolbar and pixel configuration frames (Mask bits, Test bits, …)
- Measurements: Measurement utilities.
- Python scripting: Runs the integrated Python console. Program can control the Pixet program and use graphic features.
Right-aligned part of the toolbar:
- License indicator
- Undock: Undocks window of this device.
- Pixet Icon: Drop down icon with additional Pixet menu. From this menu additional plugin modules can be
opened and other functions can be launched.
Bottom bar
Left buttons
- Messages: On/Off a panel with error and info messages. The panel displays a messages about the selected device. If an error occurs, it will be displayed automatically.
- DAC Panel: On/Off the DAC panel. This is a tool for very low level settings of the detector chip(s). For special scientific using only. Not need for normal using of the device. Not recommended to change anything here.
Statusbar and progressbar
- Total acquisition time: Shows total time that has passed since starting the measurement.
- Repeat index/ count: Shows the index of current repetition and the total number of repetition that should be measured.
- Acquisition index / count: Shows the index of current measured frame and number of all frames that should be measured.
- Status icon: Shows the status of the device, if it is ready to measure. (Green - OK, Yellow - warning, red - error). Hover the mouse over the icon for more details.
- Progress bar: Shows the total progress of the measurements (not taking into account repeat)
Pixel Configuration Toolbar
If the Edit Pixel Configuration button in main toolbar is activated, the Pixel Configuration Toolbar is
shown together with a frame for each pixel adjustment parameter (Mask, Test, THL, Mode, …). The
toolbar allows for changing the pixel configuration matrix.
The icons in the toolbar are described from the left side to the right side.
- Open Pixel Configuration: Loads the pixel configuration (or part of it) from a file.
- Save Pixel Configuration: Saves the pixel configuration (or part of it) to a file.
- Cursor (No toggling): Clicking with the mouse cursor in the frame panel does not affect the pix. conf.
- Toggle Bit in Pixel: Clicking with the mouse cursor will toggle the mask bit in the pixel if Frame or Mask tab is selected. If the Test tab is selected, clicking will toggle the test bit. For the other tabs it will not do any action.
- Toggle Bits in Column: Same as Toggle Bit in Pixel, but will toggle all the pixels in the selected column
- Toggle Bits in Row: Same as Toggle Bit in Pixel but will toggle all the pixels in the selected row
- Mask All Pixels: Masks all the pixels in the frame
- Unmask All Pixels: Unmasks all the pixels in the frame
- Mask Selection: Masks the pixels in selected area. Selection area is created by dragging the mouse similarly as for zooming the frame but with holding the Ctrl (Command on OS X) key and releasing the mouse button before releasing the key.
- Unmask Selection: Unmask all the pixels in the selected area
- Set Pixels Cfg Bits: Opens a dialog where the user can specify in detail values of pixel configuration bits for selected area.
- Reset Pixel Cfg. Bits: Drop down menu where the selected pixel configuration bit is reset to its default value (depends on chip type).
- Mask Pixels under Value: Mask all the pixels that are counting in the current frame less then specified number
- Mask Pixels over Value: Mask all the pixels that are counting in the current frame more than specified number
- Shift Thl. Adj. For Pixels Under Value: Shifts the THL adjustment bits for each pixel one step for all the pixels in the current frame that are counting less then specified number
- Shift Thl. Adj. For Pixels Over Value: Shifts the THL adjustment bits for each pixel one step for all the pixels in the current frame that are counting more than specified number
Dialogs of Main Window
Measurement Settings Dialog
This dialog allows for changing more advance parameters of the measurement such as trigger settings or file output settings. Open in the Measurement panel by clicking the sprocket icon.
General tab
- Delay after repeat: When the number of frames specified in count field in the main window is measurement and the repeat option is enabled, the software waits specified delay before measuring next series of frames.
- Spacing: Influences how many pixels are active during a single acquisition. Because of coupling effects it is necessary to have neighboring pixels masked. If spacing is 1 all pixels are active (acquisition has just 1 sub-acquisition), if spacing is 2 every second pixel in each direction is active (acquisition has 4 sub-acquisition), if spacing is 3 every third pixel in each direction is active (there is 9 sub-acquisitions)
- Refresh DACs Before Measurement: Before the measurement (acquisition series) is started the DAC values are loaded to the detector.
- Refresh Pixel Cfg. Before Measurement: Before the measurement (acquisition series) is started the pixel matrix configuration is loaded into the detector
- Calibrate data: Data are internally calibrated from the raw pixel values into energy values in keV, if the detector supports it.
- Sensor refresh: For CdTe sensors, checking this will refresh sensor before each measurement in order to improve the image quality.
- Trigger Settings: Setups the type of trigger measurement with an external trigger
- No Trigger – no trigger is used
- Started by HW Trigger - the measurement is started when the ext. trigger is activated
- Stopped by HW Trigger – the measurement is stopped when the ext. trigger is activated
- Started & Stopped by HW Trigger – the measurement is started by ext. trigger and also stopped by the trigger
- Started by SW Trigger, Stopped SW Trigger – same as above, but the trigger is generated in software. Mainly for debugging purposes.
- Pulse Count: Specifies number of test pulses that will be send to the detector during test pulse measurement.
- Pulse Period: Specifies the length (period) of the single test pulse in micro seconds.
- Pulse Height: Specifies the amplitude of the test pulse in volts.
- Manual TP Bits: If this is unchecked, the test bit and mask bit “chess” pattern (specified by spacing) is generated automatically. If Manual TP Bits is checked, only pixels that are unmasked and with TP bit active will be active in the “chess” pattern.
File output tab
- Repetition - Output: Specifies the naming of output files when repetition is used. Either for each new repetition the suffix r_index is an added to the file name (where index is the index of the repetition) or for each repetition a new directory is created.
- Repetition - Digits: Specifies the number of digits the repetition index has. For e.g. 4 digits, the number looks like this: 0001, 0010, 0234, 1234. Auto detection sets the correct digit count based on number of repetitions.
- File Type Specific Settings: Specific settings for selected file type