centroided-ms-feature-detection
Summary
Automated extraction of mass spectrometry features (m/z, retention time, intensity) from centroided mzML files using the pyOpenMS FeatureFinderCentroided algorithm. This skill converts raw LC- or GC-HRMS data into a structured feature list suitable for downstream prioritization and annotation workflows.
When to use
You have vendor-independent centroided mzML files from data-dependent acquisition (ddMS2) HRMS experiments and need to extract a reproducible feature list with mass, chromatographic, and intensity dimensions as input to PFAS prioritization, suspect screening, or other MS-based analyses. Use this skill when feature detection via commercial vendor software is unavailable or when reproducibility and open-source tooling are required.
When NOT to use
- Input is already a feature table from vendor software or external feature finder — use the optional 'custom feature list' import pathway instead.
- mzML files contain profile (non-centroided) spectra — centroided spectra are required; convert using MSConvert with centroiding enabled.
- Data were acquired in data-independent acquisition (DIA) or MS1-only mode — FeatureFinderCentroided is designed for ddMS2 centroided data.
Inputs
- centroided mzML file from ddMS2 acquisition
- optional blank control mzML file (same instrument, same acquisition parameters)
- feature detection parameters (mass tolerance, intensity thresholds, peak width ranges)
Outputs
- feature list table (CSV, mzTab, or Excel format) with columns: m/z, retention time, intensity, charge state
- optional: blank-corrected feature list
- diagnostic logs or console output with feature detection statistics
How to apply
Load a centroided mzML file using the pyOpenMS MSExperiment reader, then apply the FeatureFinderCentroided algorithm to identify MS features across the mass-to-charge and retention time dimensions. Extract detected features with their m/z, retention time, and intensity attributes. Write the resulting feature list to a structured tabular format (mzTab, CSV, or Excel) with configurable parameters for the feature finder (e.g., mass tolerance, intensity thresholds). The overall runtime is short (e.g., <1 minute for 4000 spectra per sample), allowing convenient parameter adjustment. Optionally include a blank control mzML file for blank correction during feature detection.
Related tools
- pyOpenMS (Python interface to OpenMS C++ library; provides MSExperiment reader and FeatureFinderCentroided algorithm for automated feature detection in centroided MS data) — https://github.com/OpenMS/OpenMS
- OpenMS (Core C++ mass spectrometry processing library underlying pyOpenMS; implements the centroided feature detection algorithms)
- MSConvert (Vendor-independent tool to convert proprietary MS raw formats to mzML and optionally apply centroiding)
- PFΔScreen (Complete non-target screening pipeline integrating centroided MS feature detection with PFAS prioritization, KMD analysis, and MS2 fragment matching) — https://github.com/JonZwe/PFAScreen
Evaluation signals
- Feature list contains all expected columns (m/z, retention time, intensity, charge state) with no null or malformed entries.
- Detected m/z values fall within the instrument's valid mass range and match expected analyte masses (within configured mass tolerance); retention times are monotonically increasing or match expected chromatographic behavior.
- Number of detected features is reasonable for the sample complexity and matches manual inspection of extracted ion chromatograms (EICs) for known compounds.
- Blank-corrected features show reduced or eliminated intensity for features present in blank control; remaining features in blank are below a configured threshold or removed entirely.
- Feature intensities are consistent with MS1 peak areas and visual inspection of raw data; no spurious peaks from noise or baseline artifacts.
Limitations
- Requires data from data-dependent acquisition (ddMS2) with centroided spectra; cannot process profile data without prior centroiding.
- Feature detection performance depends critically on tuning of mass tolerance, intensity thresholds, and peak width parameters; suboptimal parameters may miss low-intensity features or introduce false positives.
- Vendor-specific metadata (e.g., collision energy, isolation window, instrument configuration) may be lost or inconsistently encoded in mzML, potentially affecting downstream MS2 interpretation.
- The algorithm is optimized for liquid chromatography (LC) and gas chromatography (GC) coupled HRMS; may not perform well on other separation modalities.
- No changelog is available for the pyOpenMS version used; reproducibility across versions or installations may be affected without explicit version pinning.
Evidence
- [intro] pyOpenMS (Python interface to the C++ OpenMS library) is used for feature detection in MS raw data: "pyOpenMS (Python interface to the C++ OpenMS library) is used for feature detection in MS raw data"
- [readme] centroided mzML files from data-dependent acquisition with centroided spectra are the input format: "Raw mass spectrometric data can be included vendor-independently in the mzML format (data-dependent acquisition with centroided spectra, mzML files can be generated via the MSConvert software tool)."
- [other] Feature detection algorithm extracts m/z, retention time, and intensity values: "Apply feature detection algorithm via pyOpenMS FeatureFinderCentroided to identify MS features across the mass and time dimensions. 3. Extract detected features with m/z, retention time, and"
- [readme] Overall runtime is short, allowing convenient parameter adjustment: "The overall rather short runtime (e.g., less than one minute in case of 4000 spectra per sample for the whole workflow), allows a convenient adjustment of input parameters."
- [readme] Blank control files can be optionally provided for blank correction: "To load a MS raw datafile, click the "Browse Sample.mzML" button and choose the mzML file of a sample and an optional mzML file of a blank control (Browse Blank.mzML)."
- [other] Output is structured tabular format (mzTab or CSV): "Write feature list to output file in structured tabular format (mzTab or CSV)."
1---2name: centroided-ms-feature-detection3description: Use when you have vendor-independent centroided mzML files from data-dependent acquisition (ddMS2) HRMS experiments and need to extract a reproducible feature list with mass, chromatographic, and intensity dimensions as input to PFAS prioritization, suspect screening, or other MS-based analyses.4license: CC-BY-4.05---67# centroided-ms-feature-detection89## Summary1011Automated extraction of mass spectrometry features (m/z, retention time, intensity) from centroided mzML files using the pyOpenMS FeatureFinderCentroided algorithm. This skill converts raw LC- or GC-HRMS data into a structured feature list suitable for downstream prioritization and annotation workflows.1213## When to use1415You have vendor-independent centroided mzML files from data-dependent acquisition (ddMS2) HRMS experiments and need to extract a reproducible feature list with mass, chromatographic, and intensity dimensions as input to PFAS prioritization, suspect screening, or other MS-based analyses. Use this skill when feature detection via commercial vendor software is unavailable or when reproducibility and open-source tooling are required.1617## When NOT to use1819- Input is already a feature table from vendor software or external feature finder — use the optional 'custom feature list' import pathway instead.20- mzML files contain profile (non-centroided) spectra — centroided spectra are required; convert using MSConvert with centroiding enabled.21- Data were acquired in data-independent acquisition (DIA) or MS1-only mode — FeatureFinderCentroided is designed for ddMS2 centroided data.2223## Inputs2425- centroided mzML file from ddMS2 acquisition26- optional blank control mzML file (same instrument, same acquisition parameters)27- feature detection parameters (mass tolerance, intensity thresholds, peak width ranges)2829## Outputs3031- feature list table (CSV, mzTab, or Excel format) with columns: m/z, retention time, intensity, charge state32- optional: blank-corrected feature list33- diagnostic logs or console output with feature detection statistics3435## How to apply3637Load a centroided mzML file using the pyOpenMS MSExperiment reader, then apply the FeatureFinderCentroided algorithm to identify MS features across the mass-to-charge and retention time dimensions. Extract detected features with their m/z, retention time, and intensity attributes. Write the resulting feature list to a structured tabular format (mzTab, CSV, or Excel) with configurable parameters for the feature finder (e.g., mass tolerance, intensity thresholds). The overall runtime is short (e.g., <1 minute for 4000 spectra per sample), allowing convenient parameter adjustment. Optionally include a blank control mzML file for blank correction during feature detection.3839## Related tools4041- **pyOpenMS** (Python interface to OpenMS C++ library; provides MSExperiment reader and FeatureFinderCentroided algorithm for automated feature detection in centroided MS data) — https://github.com/OpenMS/OpenMS42- **OpenMS** (Core C++ mass spectrometry processing library underlying pyOpenMS; implements the centroided feature detection algorithms)43- **MSConvert** (Vendor-independent tool to convert proprietary MS raw formats to mzML and optionally apply centroiding)44- **PFΔScreen** (Complete non-target screening pipeline integrating centroided MS feature detection with PFAS prioritization, KMD analysis, and MS2 fragment matching) — https://github.com/JonZwe/PFAScreen4546## Evaluation signals4748- Feature list contains all expected columns (m/z, retention time, intensity, charge state) with no null or malformed entries.49- Detected m/z values fall within the instrument's valid mass range and match expected analyte masses (within configured mass tolerance); retention times are monotonically increasing or match expected chromatographic behavior.50- Number of detected features is reasonable for the sample complexity and matches manual inspection of extracted ion chromatograms (EICs) for known compounds.51- Blank-corrected features show reduced or eliminated intensity for features present in blank control; remaining features in blank are below a configured threshold or removed entirely.52- Feature intensities are consistent with MS1 peak areas and visual inspection of raw data; no spurious peaks from noise or baseline artifacts.5354## Limitations5556- Requires data from data-dependent acquisition (ddMS2) with centroided spectra; cannot process profile data without prior centroiding.57- Feature detection performance depends critically on tuning of mass tolerance, intensity thresholds, and peak width parameters; suboptimal parameters may miss low-intensity features or introduce false positives.58- Vendor-specific metadata (e.g., collision energy, isolation window, instrument configuration) may be lost or inconsistently encoded in mzML, potentially affecting downstream MS2 interpretation.59- The algorithm is optimized for liquid chromatography (LC) and gas chromatography (GC) coupled HRMS; may not perform well on other separation modalities.60- No changelog is available for the pyOpenMS version used; reproducibility across versions or installations may be affected without explicit version pinning.6162## Evidence6364- [intro] pyOpenMS (Python interface to the C++ OpenMS library) is used for feature detection in MS raw data: "pyOpenMS (Python interface to the C++ OpenMS library) is used for feature detection in MS raw data"65- [readme] centroided mzML files from data-dependent acquisition with centroided spectra are the input format: "Raw mass spectrometric data can be included vendor-independently in the mzML format (data-dependent acquisition with centroided spectra, mzML files can be generated via the MSConvert software tool)."66- [other] Feature detection algorithm extracts m/z, retention time, and intensity values: "Apply feature detection algorithm via pyOpenMS FeatureFinderCentroided to identify MS features across the mass and time dimensions. 3. Extract detected features with m/z, retention time, and"67- [readme] Overall runtime is short, allowing convenient parameter adjustment: "The overall rather short runtime (e.g., less than one minute in case of 4000 spectra per sample for the whole workflow), allows a convenient adjustment of input parameters."68- [readme] Blank control files can be optionally provided for blank correction: "To load a MS raw datafile, click the "Browse Sample.mzML" button and choose the mzML file of a sample and an optional mzML file of a blank control (Browse Blank.mzML)."69- [other] Output is structured tabular format (mzTab or CSV): "Write feature list to output file in structured tabular format (mzTab or CSV)."