HeadlinesBriefing HeadlinesBriefing.com

Raman-Spektren-Vorverarbeitung und NNLS in Python für

Towards Data Science •
×

Raman-Spektren gelangen selten direkt vom Spektrometer in ein Modell. Bevor quantitative Informationen extrahiert werden können, benötigen sie in der Regel eine Vorverarbeitung, die das Zuschneiden des nutzbaren Spektralbereichs, das Entfernen von Spikes, das Subtrahieren der Basislinie und das Normalisieren der Daten umfasst. Dieses Tutorial führt durch diesen Arbeitsablauf anhand realer Raman-Spektren aus der Veröffentlichung „Process monitoring of zeolite crystallization: Bridging in situ Raman spectroscopy, ex situ XRD, and predictive machine learning models“.

Die interzeolithische Umwandlung tritt während der Zeolithsynthese auf, wenn eine kristalline Phase in eine andere übergeht. Daher ist es wertvoll, den Beitrag jeder Phase im Zeitverlauf zu verfolgen. Die Raman-Spektroskopie kann diesen Prozess verfolgen, die Spektren müssen dafür jedoch entfaltet werden. Die Nicht-negative kleinste Quadrate (NNLS) eignen sich gut für diese Aufgabe: Das gemessene Spektrum wird als nicht-negative Kombination von Referenzspektren der einzelnen Phasen beschrieben. Das Tutorial konzentriert sich auf die Verarbeitung von Raman-Daten und NNLS, beginnt mit Rohspektren und rekonstruiert die relative Entwicklung von Faujasit (FAU) und Gismondin (GIS) während der Kristallisation.

Der vollständige Datensatz ist im Nexus/HDF5-Format auf Zenodo frei verfügbar, das Tutorial liegt als Jupyter-Notebook vor. Das Nexus-Format ist praktisch, weil Spektren und experimentelle Metadaten, einschließlich der Kristallisationszeit, gemeinsam gespeichert bleiben. Spektren, die nach 0 und 16 Stunden aufgenommen wurden, wurden ausgeschlossen, da die Raman-Merkmale des Zeoliths noch nicht ausreichend aussagekräftig waren. Die Analyse beginnt daher bei 18 Stunden.

Der erste Vorverarbeitungsschritt schneidet die Spektren auf den Bereich 250–1250 cm⁻¹ zu. Da die Spektren nicht exakt auf derselben Raman-Verschiebungsachse aufgenommen wurden, wird jedes auf eine gemeinsame Achse interpoliert, bevor sie zu einer einzigen Datenmatrix zusammengeführt werden. Zuschneiden und Interpolation erfolgen vor der Spike-Entfernung und Basislinien-Subtraktion, sodass diese Algorithmen nur auf das relevante, vereinheitlichte Signal angewendet werden.

Quelle: Towards Data Science · Zusammengefasst von HeadlinesBriefing