PixInsight 1.8.9-1 Released

Status
Not open for further replies.

Juan Conejero

PixInsight Staff
Staff member
Hi all,

I am glad to announce the release of a new version of PixInsight: 1.8.9-1. This is a maintenance release providing important bug fixes, improvements and new features on all supported platforms.

Installation packages for PixInsight 1.8.9-1 are now available to all licensed users for Linux, macOS and Windows:

https://pixinsight.com/dist/

As happens with all updates to the PixInsight core application, this version cannot be downloaded as an application update. You have to install version 1.8.9-1 manually:
  • Linux: The installation packages are xz-compressed tar archives (.tar.xz). To install one of these archives, just extract its full contents on any directory, preferably on one located under your home directory. Then become root and run the installer program from a terminal. Normally you should just type "yes" and press Enter to accept the default settings. Say './installer --help' for detailed information on command-line arguments.

  • macOS: If you have a previous version of PixInsight already installed, you must uninstall it by moving the /Applications/PixInsight folder to trash (also known as bin on macOS 10.15 and later). Run the .pkg installation package and follow the instructions. All our macOS installation packages are digitally signed with our corporate Apple developer certificate and have been notarized by Apple.

  • Windows: Run the installation package for version 1.8.9-1 and follow the instructions. The installer will remove a previous version automatically, so there is no need to uninstall it first. All executable files in the PixInsight distribution for Windows, as well as our Windows installation packages, have been signed with our corporate Extended Validation (EV) code signing certificate.
If you have a 1.8.6 version or newer already installed, this new version does not require a license reactivation. If you are still using a 1.8.5 version or older, see the official 1.8.6 version announcement for a detailed description of our new licensing system. See also FAQ 2.10 for additional information on license reactivations.


New Features

Here is a partial list with some of the most important new features in PixInsight 1.8.9-1.


Script Code Signing System

CodeSigning.png


Version 1.8.9-1 includes the complete code security system described in the following document:


Our code signing system applies to scripts running on the PixInsight JavaScript Runtime (PJSR) as well as to update repositories. The document linked above provides a thorough technical description for developers, as well as general information of great interest to all of our users. We are proud to say that with this code signing system PixInsight is now a much more secure and robust environment.


New Star Detection Engine

StarDetectionSA.png


Star detection is a critical component of many essential algorithms and processes on the PixInsight platform, including image weighting algorithms, image registration, local normalization (for relative scale evaluation) and image quality estimation, among others. The star detection algorithm that we have been using until version 1.8.9 of PixInsight was designed more than 10 years ago. Despite successive improvements to this algorithm and its implementations during these latter years, star detection issues have recently been an obstacle for the development of several new and existing tools. Tests with simulated data have helped us detect and understand these issues, which we have addressed with a new star detection engine that we have designed and implemented in version 1.8.9-1.

The new star detector is directly used in the ImageCalibration, Debayer, StarAlignment, LocalNormalization, SubframeSelector and ImageIntegration processes. It is also available on our C++ and JavaScript development frameworks. In the design and implementation of this new star detection engine we have made efforts to avoid breaking changes in existing tools and scripts, so in general you should see no relevant changes besides the fact that everything related to star detection is now more robust and accurate.

Here is a brief description of the most relevant star detection parameters that either are new or have changed their meaning with respect to the previous implementation.

Sensitivity
Internally, the sensitivity of the star detection algorithm is expressed in signal-to-noise ratio units with respect to the evaluated dispersion of local background pixels for each detected structure. Given a source with estimated brightness
svg.image
, local background
svg.image
and local background dispersion
svg.image
, sensitivity is the minimum value of
svg.image
necessary to trigger star detection. This parameter is exposed through an abstract representation in the [0,1] range. Increase this parameter to favor detection of fainter stars. Decrease it to restrict detection to brighter stars. The default value is 0.5.​
Peak response
Internally, the peak response property of the star detection algorithm is expressed in kurtosis units. For each detected structure, kurtosis is evaluated from all significant pixels with values greater than the estimated mean local background. Peak response is the minimum value of kurtosis necessary to trigger star detection. If you decrease this parameter, stars will need to have stronger (or more prominent) peaks to be detected. This is useful to prevent detection of saturated stars, as well as small nonstellar features. By increasing this parameter, the star detection algorithm will be more sensitive to peakedness, and hence more tolerant with relatively flat image features. This parameter is exposed through an abstract representation in the [0,1] range. The default value is 0.5.​
Bright threshold
Sources with measured SNR above this parameter in units of the minimum detection level (as defined by the sensitivity parameter) will always be detected, even if their profiles are too flat for the current peak response. This parameter allows us to force inclusion of relatively bright stars irrespective of their shapes, and also provides finer control on the amount of detectable stars, along with the sensitivity parameter. The default value is 3.0.​
Maximum distortion
Internally, star distortion is evaluated in units of coverage of a square region circumscribed to each detected structure. The coverage of a perfectly circular star is
svg.image
(about 0.8). Lower values denote elongated or irregular sources. Use this parameter, if necessary, to control inclusion of elongated stars, complex clusters of stars, and nonstellar image features. This parameter is exposed through an abstract representation in the [0,1] range. The default value is 0.6.​
Allow clustered sources
If this parameter is disabled, a local maxima map will be generated to identify and prevent detection of multiple sources that are too close to be separated as individual structures, such as double and multiple stars. In general, sources with several local maxima pose difficulties for the determination of accurate star positions. If this parameter is enabled, non-separable multiple sources will be freely detectable as single objects. This can be necessary in special cases where extreme high noise levels and/or distortion of stellar images caused by optical aberrations limit the number of detectable sources excessively, preventing image registration. The default state is disabled.​
Minimum detection SNR
This parameter is only used by the LocalNormalization tool for calculation of relative scale factors. This is the minimum signal-to-noise ratio of a detectable star. Given a source with estimated brightness
svg.image
, local background
svg.image
and local background dispersion
svg.image
, SNR is evaluated as
svg.image
. Stars with measured SNR below the value of this parameter won't be used for relative scale evaluation. This parameter allows limiting star detection to a subset of the brightest sources in the image adaptively. By requiring relatively high SNR levels in the evaluated sources, the accuracy and robustness of the scale evaluation process can be largely improved. The default value is 40, which is quite appropriate in most cases.​
Note that the sensitivity, peak response and maximum distortion parameters are now normalized to the [0,1] range, where 0 and 1 represent, respectively, the minimum and maximum sensitivity, peak response and allowed distortion. This abstraction isolates the interfaces to these parameters from their internal implementation, which in turn allows us to change the star detection engine without breaking dependent tools and processes.
In general, you shouldn't need to change the default values of these parameters under normal working conditions.


New PSF Scale SNR Estimator

PSFScaleSNR.png


PSF Scale SNR is defined as:

svg.image

where
svg.image
is the relative scale factor computed by the LocalNormalization process and
svg.image
is the standard deviation of the noise. The relative scale factor is the ratio of mean PSF flux estimates for the normalization reference and target images. These factors are now stored in local normalization data files (in XNML format, .xnml file extension) generated by the LocalNormalization process.

PSF Scale SNR is now available in the SubframeSelector tool as a new PSFScaleSNR property, as well as a new image weighting option in the ImageIntegration tool and the WeightedBatchPreprocessing script (WBPP). PSF Scale SNR requires the use of local normalization data (.xnml files) in these tools and scripts.


WeightedBatchPreprocessing Script Version 2.4.3

WBPP.png


As usual, the amount of new features, improvements and bug fixes in this new version of the WBPP script is so large that it deserves a dedicated announcement where WBPP 2.4.3 is described in detail.


LocalNormalization: New Parameters

LocalNormalization.png


The following parameters have been implemented and publicly exposed on the LocalNormalization interface:

Low clipping level
Low clipping pixel sample value in the [0,1] range. All pixels with values smaller than or equal to the value of this parameter will be replaced with statistically plausible estimates, computed from nearby image regions, for generation of local background models. Rejection of very low pixels is necessary to prevent generation of large-scale artifacts around large dark structures, such as black borders generated by image registration. Under normal conditions you shouldn't need to change the default value of this parameter (
svg.image
). Increase it in the unlikely case that you detect dark artifacts around black borders—which, at any rate, will always denote a defective image calibration that you should fix before normalization.​
High clipping level
High clipping pixel sample value in the [0,1] range. All pixels with values greater than or equal to the value of this parameter will be replaced with statistically plausible estimates, computed from nearby image regions, for generation of local background models. Rejection of saturated pixels is necessary to prevent generation of large-scale artifacts around large saturated structures, such as bright stars, in local background models. Under normal conditions you shouldn't need to change the default value of this parameter (0.85). Decrease it in the unlikely case that you detect dark artifacts around large saturated objects.​
Minimum detection SNR
This is one of the new parameters provided by the new star detection engine since version 1.8.9-1. This is the minimum signal-to-noise ratio of a detectable star. Given a source with estimated brightness
svg.image
, local background
svg.image
and local background dispersion
svg.image
, SNR is evaluated as
svg.image
. Stars with measured SNR below the value of this parameter won't be used for relative scale evaluation. This parameter allows limiting star detection to a subset of the brightest sources in the image adaptively. By requiring relatively high SNR levels in the evaluated sources, the accuracy and robustness of the scale evaluation process can be largely improved. The default value is 40, which is quite appropriate in most cases.​
Rejection limit
Limit for the modified Chauvenet rejection criterion. A modified Robust Chauvenet Rejection (RCR) routine is used internally by this implementation for rejection of outlier relative scale samples. The larger the value of this parameter, the more samples will be rejected by the RCR algorithm. The original Chauvenet rejection criterion is
svg.image
, where
svg.image
is the number of measurements and
svg.image
represents the probability of
svg.image
being more than
svg.image
standard deviations from the mean. This parameter modifies the rejection criterion by replacing 0.5 with an arbitrary limit in the [0,1] range, in order to make the algorithm controllable. The default rejection limit is 0.3.​
As usual, you should not need to change the default values of these parameters under normal working conditions.


New Automatic Output Pedestal Calculation Algorithm

AutomaticPedestal.png


The automatic output pedestal generation feature that we introduced in the previous 1.8.9 version has been reimplemented. The Auto pedestal limit parameter of ImageCalibration (also available on the WBPP script) is now the maximum fraction of negative or insignificant calibrated pixels allowed in automatic pedestal generation mode. This parameter represents a fraction of the total image pixels in the [0,1] range. When the image has more than this fraction of negative or insignificant pixel values after calibration and Output pedestal mode is set to Automatic, the process will generate an additive pedestal to ensure that no more than this fraction of negative or insignificant pixels will be present in the calibrated image. The default value is 0.0001, which represents a 0.01% of the total pixels. The new automatic output pedestal calculation algorithm is also much faster than before.


INDIClient Module

We now have the INDIClient module back and fully operational with INDIGO on all platforms, thanks to the great work of Klaus Kretzschmar.


Updated Third-Party Libraries
  • Qt updated to version 5.15.9 LTS on all supported platforms
  • Zlib 1.2.12
  • lcms 2-2.13.1
  • LibRaw: latest stable version from the official GitHub repository
  • cURL 7.82.0
  • gnuplot 5.4.3
  • Indigo libraries: latest stable version from the official GitHub repository

Recommended Platforms and Supported Operating Systems

The reference implementation of PixInsight, where you may expect the maximum performance and best user experience, is the Linux version. Currently our primary development platforms are:
We strongly recommend running PixInsight on Kubuntu Linux 22.04 LTS with the KDE Plasma desktop environment.

PixInsight 1.8.9-1 for Linux requires GLIBC 2.27 or a newer version.

PixInsight 1.8.9-1 for macOS is only compatible with macOS 10.15 Catalina, 11.x Big Sur and 12.x Monterey. macOS 10.14 Mojave and older versions are no longer supported. All of our macOS installation packages are digitally signed with our corporate Apple developer certificates and have been notarized by Apple.

PixInsight 1.8.9-1 for Windows is compatible with Windows 10 and Windows 11 exclusively. Windows 8.1, Windows 7 and older versions are not supported. The application might run on Windows 7, but there is no guarantee and please do not report problems on Windows 7 and Windows 8. All of our Windows executables have been digitally signed with our corporate extended validation (EV) code signing certificate.


Known Issues

Linux
  • Recent versions of the KDE Plasma desktop environment include a morphing popups desktop effect that causes problems with recent PixInsight versions. If this effect is enabled, it slows down some dragging operations in the PixInsight core application, such as dragging icons and view selectors. You should disable this effect, which is very easy from KDE's System Settings panel.

  • On recent versions of the KDE Plasma desktop environment, a display tearing prevention option (v-sync) is enabled by default. This option can cause input lag problems, such as slow cursor movement over image windows, with certain hardware configurations. If you experience these problems, this option should be disabled for optimal PixInsight performance:
    • System Settings > Display and Monitor > Tearing prevention: set to 'Never'
    • Click Apply
  • PixInsight is not compatible with the open-source Nouveau graphics driver. If your distribution is using Nouveau, you must remove it to use the proprietary NVIDIA driver in order to use PixInsight.

Windows
  • On some laptops with nonstandard screen resolutions, such as the Microsoft Surface, PixInsight cannot find valid screen scaling factors automatically. On these machines, you may have to run the PixInsight core application with the --ui-scaling command-line argument. For example, to apply a UI scaling factor of 2:

    C:\Program Files\PixInsight\bin\PixInsight.exe --ui-scaling=2

    You only have to do this once, since the scaling factor will be stored in application preferences automatically. Of course, if you already are using a version 1.8.6 or later and the interface looks correct, then you don't need to do this; this is only required for some new installations.

  • The Windows installer package reports an invalid space requirement value (for example, 12 MB) sometimes. This is just an aesthetic issue without any practical consequence; the installation works perfectly despite this error.

All Platforms
  • The StarNet module uses the TensorFlow library, which requires a processor with support of AVX2 and FMA instructions. This excludes very old machines with Intel processors released before 2013 and Apple machines with M1 processors (because the Rosetta emulator on macOS Big Sur does not support AVX2 instructions). The macOS installation package for version 1.8.9 includes a post-install script that will delete the StarNet module automatically when the host machine runs an ARM processor, so there should be no problems on Apple Silicon computers.

    If you are using a vintage pre-2013 Intel processor, or if the StarNet module has not been deleted automatically on your M1 machine for some odd reason, PixInsight 1.8.9-1 won't work as it is installed by default. However, this problem is very easy to fix: just remove the StarNet module. Do the following:
Linux
Enter the following command from a terminal:​
sudo rm /opt/PixInsight/bin/StarNet-pxm.so
macOS
Remove the following file:​
/Applications/PixInsight/bin/StarNet-pxm.dylib
Windows
Remove the following file:​
C:\Program Files\PixInsight\bin\StarNet-pxm.dll
In all cases you need administrative privileges to remove the required file, which you also need to install PixInsight. After this simple action, PixInsight will run without problems on your old machine.​


——————————————————————————

Thank you for your attention,

The PixInsight Team at Pleiades Astrophoto S.L.
 
Status
Not open for further replies.
Back
Top