errcorrect_scale_SG.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:CRIkit2 作者: CoherentRamanNIST 项目源码 文件源码
def errorCorrectHSData(self, hsdatacls):
        temp_spectra = hsdatacls._get_rand_spectra_real(10, pt_sz=3, quads=True)

        plugin = widgetSG()

        result = DialogPlotEffect.dialogPlotEffect(temp_spectra, x=hsdatacls.freqvec,
                                                   plugin=plugin, xlabel='Wavenumber (cm$^{-1}$)',
                                                   ylabel='Real {$\chi_R$} (au)', show_difference=True)
        if result is not None:
            win_size = result.win_size
            order = result.order


            detrend_ct = 0
            detrend_tot = hsdatacls.mlen * hsdatacls.nlen

            # Most efficient system
            if len(hsdatacls.pixrange) != 0:
                data_out = hsdatacls.spectrafull[:,:, hsdatacls.pixrange[0]:hsdatacls.pixrange[1]+1]
            else:
                data_out = hsdatacls.spectrafull

            start = _ti.default_timer()

            correction = (1/_sg(data_out.real, window_length=win_size, polyorder=order, axis=-1))

            data_out = data_out*correction

            stop = _ti.default_timer()
#                print('2: {}'.format(stop2-start2))
#                print('3: {}'.format(stop3-start3))
#                print('4: {}'.format(stop4-start4))
#                print('5: {}'.format(stop5-start5))
#                
            print('Scaled {} spectra ({:.5f} sec/spect)'.format(detrend_tot, (stop-start)/(hsdatacls.mlen*hsdatacls.nlen)))

            hsdatacls.spectra = data_out
            return ['Scaling','Type', 'SG', 'win_size', win_size, 'order', order]
        else:
            return None
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号