Exemplo n.º 1
0
import SimpleITK as sitk
import argparse
import numpy as np

parser = argparse.ArgumentParser()
parser.add_argument("-i", "--input", help="Input spectrum")
parser.add_argument("-o", "--output", help="Output spectrum")
parser.add_argument("-f", "--factor", help="Scale factor")
args = parser.parse_args()

input_name = args.input
outname = args.output
factor = float(args.factor)

imzml = io.open_imzml(input_name)
original_spectra = io.get_spectra(imzml)
mzs = original_spectra[:, 0, :]

spectra = imzmlio.get_full_spectra(imzml)
max_x = max(imzml.coordinates, key=lambda item:item[0])[0]
max_y = max(imzml.coordinates, key=lambda item:item[1])[1]
max_z = max(imzml.coordinates, key=lambda item:item[2])[2]
image = imzmlio.get_images_from_spectra(spectra, (max_x, max_y, max_z))
itk_image = sitk.GetImageFromArray(image)

size = image.shape[:2]

new_size = [d*factor for d in size]
new_size = new_size[::-1]
resized_itk = utils.resize(itk_image, new_size)
Exemplo n.º 2
0
import esmraldi.spectraprocessing as sp
import numpy as np
from scipy.stats import pearsonr

parser = argparse.ArgumentParser()
parser.add_argument("-i", "--input", help="Input MALDI imzML")
parser.add_argument("-p",
                    "--prominence",
                    help="Prominence factor for peak selection")

args = parser.parse_args()
inputname = args.input
prominence = float(args.prominence)

p = io.open_imzml(inputname)
spectra = io.get_spectra(p)

mz, I = spectra[0]
min_diff = mz[1] - mz[0]
wlen = max(10, int(50.0 / min_diff))
indices_mzs = sp.spectra_peak_indices_adaptative(spectra,
                                                 factor=prominence,
                                                 wlen=wlen)

width_peak_indices = 10

tic = []
medians = []
sic = []
sic_comp = []
Exemplo n.º 3
0
parser.add_argument("-f", "--factor", help="Multiplicative factor for peak detection", default=150)
parser.add_argument("-l", "--level", help="Noise level", default=2)
parser.add_argument("-n", "--nbpeaks", help="Number of occurrence of peaks across all the spectra for the realignment", default=1)
parser.add_argument("-s", "--step", help="Tolerance step to realign peaks (in m/z)", default=0.02)
args = parser.parse_args()


input_name = args.input
outname = args.output
factor = int(args.factor)
noise_level = float(args.level)
nb_peaks = int(args.nbpeaks)
step_mz = float(args.step)

imzml = io.open_imzml(input_name)
spectra = io.get_spectra(imzml)

peaks = sp.spectra_peak_mzs_adaptative_noiselevel(spectra, factor=factor, noise_level=noise_level, wlen=100)


realigned_spectra = sp.realign_mzs(spectra, peaks, reference="median", nb_occurrence=nb_peaks, step=step_mz)

print(realigned_spectra.shape)

av = sp.spectra_mean(realigned_spectra)

mzs = realigned_spectra[0, 0, :]
plt.plot(mzs, av)
plt.show()

mzs = []