OpenMS
FeatureFinderLFQ

Feature detection for LC-MS1 data with ion mobility support (EXPERIMENTAL)

Note: This tool is experimental and under active development. The interface and behavior may change.

This TOPP tool is a C++ reimplementation of the Biosaur2 feature detection algorithm. It detects peptide features in centroided LC-MS1 data (with optional profile mode support) through:

  1. Grouping peaks across scans into "hills" (continuous m/z traces)
  2. Splitting hills at valley points to separate co-eluting species
  3. Detecting isotope patterns based on expected mass differences and intensity correlations
  4. Calculating comprehensive feature properties (m/z, RT, intensity, charge state)

Key Features:

  • FAIMS compensation voltage grouping for FAIMS-enabled instruments
  • Ion mobility-aware processing for PASEF/TIMS data (2D centroiding in m/z and ion mobility space)
  • TOF-specific intensity filtering for time-of-flight instruments
  • Automatic mass calibration to improve detection accuracy
  • Profile mode support via PeakPickerHiRes centroiding
  • Export to featureXML and Biosaur2-compatible TSV formats

The tool closely mirrors the Python reference implementation to ensure reproducible results and exposes all core parameters through the INI file for fine-tuning. Besides the mandatory featureXML output, optional TSV exports for both the peptide features and raw hills can be enabled for quality control and downstream analysis.

Reference: Abdrakhimov, et al. Biosaur: An open-source Python software for liquid chromatography-mass spectrometry peptide feature detection with ion mobility support. Rapid Communications in Mass Spectrometry, 2022. https://doi.org/10.1002/rcm.9045

The command line parameters of this tool are:

FeatureFinderLFQ -- Feature detection for LC-MS1 data (EXPERIMENTAL)
Full documentation: http://www.openms.de/doxygen/nightly/html/TOPP_FeatureFinderLFQ.html
Version: 3.5.0-pre-nightly-2025-12-01 Dec  2 2025, 02:56:09, Revision: 957e70b
To cite OpenMS:
 + Pfeuffer, J., Bielow, C., Wein, S. et al.. OpenMS 3 enables reproducible analysis of large-scale mass spec
   trometry data. Nat Methods (2024). doi:10.1038/s41592-024-02197-7.

Usage:
  FeatureFinderLFQ <options>

Options (mandatory options marked with '*'):
  -in <file>*                     Input mzML file (centroided data) (valid formats: 'mzML')
  -out <file>*                    Output featureXML file (valid formats: 'featureXML')
  -out_tsv <file>                 Optional: output TSV file (Biosaur2 format) (valid formats: 'tsv')
  -out_hills <file>               Optional: write detected hills to TSV (valid formats: 'tsv')
  -write_hills                    Force writing of hills file even if no output path was provided
  -mini <value>                   Minimum intensity threshold (default: '1.0') (min: '0.0')
  -minmz <value>                  Minimum m/z value (default: '350.0') (min: '0.0')
  -maxmz <value>                  Maximum m/z value (default: '1500.0') (min: '0.0')
  -htol <value>                   Mass accuracy in ppm for combining peaks into hills (default: '8.0') (min: 
                                  '0.0')
  -itol <value>                   Mass accuracy in ppm for isotopic patterns (default: '8.0') (min: '0.0')
  -hvf <value>                    Hill valley factor for splitting hills (default: '1.3') (min: '1.0')
  -ivf <value>                    Isotope valley factor for splitting isotope patterns (default: '5.0') (min:
                                   '1.0')
  -minlh <number>                 Minimum number of scans for a hill (default: '2') (min: '1')
  -pasefmini <value>              Minimum combined intensity for PASEF/TIMS clusters after m/z–ion-mobility
                                   centroiding. (default: '100.0') (min: '0.0')
  -pasefminlh <number>            Minimum number of raw points per PASEF/TIMS cluster during centroiding. 
                                  (default: '1') (min: '1')
  -cmin <number>                  Minimum charge state (default: '1') (min: '1')
  -cmax <number>                  Maximum charge state (default: '6') (min: '1')
  -iuse <number>                  Number of isotopes for intensity calculation (0=mono only, -1=all, 1=mono+f
                                  irst, etc.) (default: '0') (min: '-1')
  -nm                             Negative mode (affects neutral mass calculation)
  -tof                            Enable TOF-specific intensity filtering
  -profile                        Enable profile mode processing (centroid spectra using PeakPickerHiRes)
  -paseftol <value>               Ion mobility accuracy (in the same units as the ion-mobility array) for 
                                  linking peaks into hills and grouping isotopes (0 = disable IM-based gating
                                  ). (default: '0.05') (min: '0.0')
  -use_hill_calib                 Enable automatic hill mass tolerance calibration
  -ignore_iso_calib               Disable automatic isotope mass error calibration
  -hrttol <value>                 Maximum allowed RT difference (in seconds) between monoisotopic hill apex 
                                  and isotope hill apex when assembling isotope patterns (0 disables RT gatin
                                  g). (default: '10.0') (min: '0.0')
  -convex_hulls <choice>          Representation of feature convex hulls in the output FeatureMap. 'bounding_
                                  box' stores a single RT–m/z bounding box per feature (smaller featureXML,
                                   no per-trace detail), whereas 'mass_traces' stores one convex hull per 
                                  contributing hill using all mass-trace points (larger featureXML, preserves
                                   detailed trace shape). (default: 'bounding_box') (valid: 'mass_traces', 
                                  'bounding_box')
  -faims_merge_features <choice>  For FAIMS data with multiple compensation voltages: Merge features represen
                                  ting the same analyte detected at different CV values into a single feature
                                  . Only features with DIFFERENT FAIMS CV values are merged (same CV = differ
                                  ent analytes). Has no effect on non-FAIMS data. (default: 'true') (valid: 
                                  'true', 'false')
                                  
Common TOPP options:
  -ini <file>                     Use the given TOPP INI file
  -threads <n>                    Sets the number of threads allowed to be used by the TOPP tool (default: 
                                  '1')
  -write_ini <file>               Writes the default configuration file
  --help                          Shows options
  --helphelp                      Shows all options (including advanced)

INI file documentation of this tool:

Legend:
required parameter
advanced parameter
+FeatureFinderLFQFeature detection for LC-MS1 data (EXPERIMENTAL)
version3.5.0-pre-nightly-2025-12-01 Version of the tool that generated this parameters file.
++1Instance '1' section for 'FeatureFinderLFQ'
in Input mzML file (centroided data)input file*.mzML
out Output featureXML fileoutput file*.featureXML
out_tsv Optional: output TSV file (Biosaur2 format)output file*.tsv
out_hills Optional: write detected hills to TSVoutput file*.tsv
write_hillsfalse Force writing of hills file even if no output path was providedtrue, false
mini1.0 Minimum intensity threshold0.0:∞
minmz350.0 Minimum m/z value0.0:∞
maxmz1500.0 Maximum m/z value0.0:∞
htol8.0 Mass accuracy in ppm for combining peaks into hills0.0:∞
itol8.0 Mass accuracy in ppm for isotopic patterns0.0:∞
hvf1.3 Hill valley factor for splitting hills1.0:∞
ivf5.0 Isotope valley factor for splitting isotope patterns1.0:∞
minlh2 Minimum number of scans for a hill1:∞
pasefmini100.0 Minimum combined intensity for PASEF/TIMS clusters after m/z–ion-mobility centroiding.0.0:∞
pasefminlh1 Minimum number of raw points per PASEF/TIMS cluster during centroiding.1:∞
cmin1 Minimum charge state1:∞
cmax6 Maximum charge state1:∞
iuse0 Number of isotopes for intensity calculation (0=mono only, -1=all, 1=mono+first, etc.)-1:∞
nmfalse Negative mode (affects neutral mass calculation)true, false
toffalse Enable TOF-specific intensity filteringtrue, false
profilefalse Enable profile mode processing (centroid spectra using PeakPickerHiRes)true, false
paseftol0.05 Ion mobility accuracy (in the same units as the ion-mobility array) for linking peaks into hills and grouping isotopes (0 = disable IM-based gating).0.0:∞
use_hill_calibfalse Enable automatic hill mass tolerance calibrationtrue, false
ignore_iso_calibfalse Disable automatic isotope mass error calibrationtrue, false
hrttol10.0 Maximum allowed RT difference (in seconds) between monoisotopic hill apex and isotope hill apex when assembling isotope patterns (0 disables RT gating).0.0:∞
convex_hullsbounding_box Representation of feature convex hulls in the output FeatureMap. 'bounding_box' stores a single RT–m/z bounding box per feature (smaller featureXML, no per-trace detail), whereas 'mass_traces' stores one convex hull per contributing hill using all mass-trace points (larger featureXML, preserves detailed trace shape).mass_traces, bounding_box
faims_merge_featurestrue For FAIMS data with multiple compensation voltages: Merge features representing the same analyte detected at different CV values into a single feature. Only features with DIFFERENT FAIMS CV values are merged (same CV = different analytes). Has no effect on non-FAIMS data.true, false
log Name of log file (created only when specified)
debug0 Sets the debug level
threads1 Sets the number of threads allowed to be used by the TOPP tool
no_progressfalse Disables progress logging to command linetrue, false
forcefalse Overrides tool-specific checkstrue, false
testfalse Enables the test mode (needed for internal use only)true, false