一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

压缩来自时间相关单光子计数的时间标记数据的方法与流程

2023-06-09 15:03:47 来源:中国专利 TAG:


1.本发明涉及改进处理由时间相关单光子计数仪器获得的原始数据的方法。


背景技术:

2.时间相关单光子计数(简称tcspc)仪器,如ep0941466b1中所述,记录单个光子相对于脉冲光源的光脉冲的到达时间。
3.这些仪器经常用于荧光寿命成像显微镜(简称flim),测量荧光分子的激发态的不同寿命,并确定环境的性质,如ph值,离子浓度和能量转移的跃迁。这种仪器也用于荧光相关光谱(简称fcs),它提供了分子迁移率和结合的见解。
4.对于flim应用,仪器通常是共聚焦扫描显微镜或多光子显微镜的一部分或与之结合。
5.对于采集数据的传送和存储,时间标记数据格式是有利的和流行的,这是因为仪器专用电子设备的最小存储器要求和数据分析的灵活性。kapusta,peter&wahl,michael&erdmann,rainer.(2015).advanced photon counting:applications,methods,instrumentation.10.1007/978-3-319-15636-1.9-14页中包含了对tcspc设备的时间标记数据格式的一种可能实现的详细描述。
6.最近开发了tcspc仪器,其允许以与传统共聚焦显微镜强度采集相当的速度记录flim数据。在us10,073,034b2中,光子到达时间由ghz采样器采样,这允许flim在高计数率下,并且因此减少了采集时间。us10,520,434b2和patting,matthias,dead-time effects in tcspc data analysis,proc.of spie vol.6583,658307,(2007)描述了在高计数率下补偿死时间效应的方法。
7.将flim完全集成到共聚焦显微镜的采集和分析软件中,如alvarez,luis et.al.(2019).sp8 falcon:a novel concept in fluorescence lifetime imaging enabling video-rate confocal flim.nature methods.16.中所述,允许在所有采集模式下记录和分析flim数据,包括3d堆栈,时间序列和大面积马赛克。在生命科学中,通常需要如此获得的大量数据来基于统计发现趋势。
8.附加的维度“寿命”导致一个数量级以上的更大数据集。在一小时内获得100gb的时间标记数据并不罕见。数据必须传送到分析工作站。它们必须被分析并存档。
9.已知有各种各样的压缩方法。salomon,david&motta,giovanni.(2010).handbook of data compression(5.ed.).10.1007/978-1-84882-903-9中包含常用方法的详细描述。由于可追溯性要求,无损压缩是优选。尽管相当古老,huffman编码(第6.3章)和deflate(第6.25章)仍然非常流行。由于光子到达时间的随机性,这些方法不能很好地压缩时间标记数据。在某些情况下,甚至无法实现因子2的减少。此外,编码器和解码器的操作速度应快于存储介质和网络传送速度。标准软件库太慢了。
10.最近开发的压缩库zstandard(collet,y.and m.kucherawy,ed.,"zstandard compression and the application/zstd media type",rfc 8478,doi 10.17487/
rfc8478)在最快模式下以合理的压缩比实现了出色的编码速度。解码器的速度对于此应用不是最优的,但是可以接受。
11.已经发布了几种gpu加速压缩和解压缩的解决方案。funasaka,shunji&nakano,koji&ito,yasuaki.(2017).adaptive loss-less data compression method optimized for gpu decompression.concurrency and computation:practice and experience.29.e4283.10.1002/cpe.4283.描述了一种gpu快速解压缩的新方法。all方法的估计压缩速度和公布的解压缩速度满足速度要求。
12.gpu上的huffman解压缩器已在weiβenberger,andr
é
&schmidt,bertil.(2018).massively parallel huffman decoding on gpus.icpp 2018:proceedings of the 47th international conference on parallel processing.1-10.10.1145/3225058.3225076中发表。huffman编码与deflate中的滑动窗口字典方法相结合,因此只是所需的标准化压缩方法的一部分。
13.虽然可以实现比典型存储介质更快的速度进行编码和解码,但对于使用已知方法的flim应用中的许多时间标记数据集,压缩比不够好。


技术实现要素:

14.本发明的目标是提供一种用于压缩时间标记数据的方法,该方法以比存储介质和网络更快的速度实现高压缩比。另一个目的是提供一种通过减少对原始数据的访问时间来快速分析时间标记格式的flim数据的方法。
15.通过以下实现此目标。
16.一种用于压缩包括时间标记数据记录的时间标记数据的方法,方法包括以下步骤:
17.a)将时间标记数据记录分为多个组,
18.b)按光子到达时间对至少一组中的时间标记数据记录进行排序,
19.c)用(组内)相邻记录的内容减去(组内)记录的内容,生成修改后的记录,以及
20.d)用压缩方法压缩修改后的记录。
21.压缩方法可以是常规压缩方法。
22.这样修改后的数据压缩效果明显更好。同样令人惊讶的是,简单的压缩方法和可以高效运行大规模并行的方法。
23.每个时间标记数据记录可包括至少一个光子到达时间。步骤a)中的组可视为时间标记数据的一部分。在某些情况下,可能可以不执行步骤a),即分组。步骤c)中提到的内容可以是时间标记数据记录中包含的至少一个值或信息,例如光子到达时间。上面提到的步骤c)的替代方法可以是,例如,基于组中记录的内容和组中相邻记录的内容获得修改的记录。
24.优选地,将记录分类为类别(例如,像素的数据、来自不同检测器或光子类型的记录),并且在如上所述的a)到d)的至少一个步骤中单独处理这些类别。
25.在减去步骤c)之后,可以减少记录的位深度。
26.时间标记数据可以从tcspc仪器的采集中获得。
27.优选地,压缩方法为无损压缩方法。
28.提供了一种用于对通过上述方法压缩的时间标记数据进行解压缩的方法,其中至少以相反方式执行上述方法的步骤d)和c)。
29.在时间标记数据的解压缩的方法中,压缩后的数据优选地被传送到gpu的存储器中。数据可以在gpu上解压缩,优选地在gpu上已经生成了整体衰减和平均到达时间图像之后,并且可以用于进一步分析或显示。
30.设备可以适于进行如上所述的方法,其中设备优选为共聚焦显微镜或多光子显微镜。
31.在此使用的术语“和/或”包括一个或多个相关列出项目的任何和所有组合,并可以缩写为“/”。
32.虽然在装置的上下文中已经描述了一些方面,但很明显,这些方面也表示了相应方法的描述,其中块或设备对应于方法步骤或方法步骤的特征。类似地,在方法步骤的上下文中描述的方面也表示相应装置的相应块或项或特征的描述。
33.包括程序代码的计算机程序,当在处理器上执行时,用于执行上述方法或操作上述设备。
34.方法步骤的部分或全部可由(或使用)硬件装置执行,如处理器、微处理器、可编程计算机或电子电路。在一些实施例中,一些或多个最重要的方法步骤可以通过这样的装置来执行。
35.根据一定的实施要求,本发明的实施例可以在硬件中或在软件中实现。实现可以使用非暂时性存储介质执行,诸如数字存储介质,例如软盘、dvd、蓝光、cd、rom、prom和eprom、eeprom或flash存储器,其上存储有电子可读控制信号,其与可编程计算机系统协作(或能够协作)以执行相应的方法。因此,数字存储介质可以是计算机可读的。
36.根据本发明的一些实施例包括具有电子可读控制信号的数据载体,该控制信号能够与可编程计算机系统协作,从而执行本文所述的方法之一。
37.通常,本发明的实施例可以实现为具有程序代码的计算机程序产品,当计算机程序产品在计算机上运行时,程序代码操作以执行方法之一。例如,程序代码可以存储在机器可读载体上。
38.其他实施例包括存储在机器可读载体上的用于执行本文所述方法之一的计算机程序。
39.换句话说,因此,本发明的实施例是具有用于当计算机程序在计算机上运行时执行本文所述方法之一的程序代码的计算机程序。
40.因此,本发明的进一步实施例是一种存储介质(或数据载体,或计算机可读介质),包括存储在其上的由处理器执行时用于执行本文所述方法之一的计算机程序。数据载体、数字存储介质或记录介质通常是有形的和/或非暂时性的。本发明的进一步实施例是本文所述的包括处理器和存储介质的装置。
41.因此,本发明的进一步实施例是表示用于执行本文所述方法之一的计算机程序的数据流或信号序列。例如,可以将数据流或信号序列配置为经由数据通信连接,例如经由互联网传送。
42.进一步实施例包括处理装置,例如,计算机或可编程逻辑器件,其被配置为或适于执行本文所述的方法之一。
43.进一步实施例包括在其上安装用于执行本文所述方法之一的计算机程序的计算机。
44.根据本发明的进一步实施例包括被配置为将用于执行本文所述方法之一的计算机程序(例如,电子或光学)传送到接收器的装置或系统。例如,接收器可以是计算机、移动设备、存储设备等。例如,装置或系统可以包括用于将计算机程序传送到接收器的文件服务器。
45.在一些实施例中,可编程逻辑器件(例如,现场可编程门阵列)可用于执行本文所述方法的一些或全部功能。在一些实施例中,现场可编程门阵列可以与微处理器协作以执行本文所述的方法之一。通常,方法优选地由任何硬件装置来执行。
附图说明
46.图1示出了生成时间标记数据的tcspc仪器的构建块;
47.图2a至c示出了时间标记数据的两种变体的数据记录的典型布局;
48.图3示出了时间标记数据的处理,以生成总体衰减曲线和对应的平均到达时间图像,以及生成flim图像拟合的衰减数据的处理;
49.图4示出了根据本发明对时间标记的修改所实现的效果;
50.图5示出了优选实施例所使用的编码格式;以及
51.图6列出了不同实施例的压缩比和速度。
具体实施方式
52.生成数据的仪器的布局有很多种,数据可以通过本发明的方法进行处理。作为示例,生成时间标记数据的典型tcspc仪器的构建块如图1所示。来自一个或多个计数检测器1的信号由路由器2处理。例如,路由器2的输出是检测器信号3和检测器信号4,它们标识信号起源于的检测器。脉冲光源5(例如,以脉冲模式操作的激光光源)提供与光源5发出的光脉冲相关的电信号6。时间测量单元7从来自光源5的信号6和来自检测器的信号3之间的时间差确定光子相对于先前光(或激光)脉冲的到达时间。锁存器8存储用于识别检测器的信息,以使此数据的输出与时间测量单元7的输出同步。计数器9对光源的脉冲计数。仪器的扫描电子设备10,例如共聚焦显微镜或多光子显微镜,至少为扫描行的开始和结束时间提供信号11。延迟单元12再次注意信息与其他单元的输出信号同步。单元的输出数据13被组合成时间标记记录。三个信号14、15和16导致输出数据13被锁存到fifo 17中。当已经检测到光子并已经确定到达时间时,发送信号14。当检测到来自扫描器电子设备的行开始或结束信号时,发送信号15。当计数单元9中的计数器溢出时,在输出处设置专用位并发送信号16。当fifo负载达到一定级别时,来自fifo的数据被发送到处理和分析单元18。
53.由仪器生成的记录可以具有不同的位分配和位宽。例如,在图1所示的仪器中,每个记录存储32位。对应的记录位布局如图2a所示。低位30包含光子相对于激光脉冲的到达时间,以时间测量单元7的时间分辨率的倍数表示。四个位31包含从哪个检测器检测到信号的检测器信息。然后跟随的位是来自激光脉冲计数器9的计数器值32。当计数器溢出时设置单个位33。编号为34至37的位包含来自扫描器电子设备10的信号,其中位表示行开始和行结束。
54.光子记录是表示检测到的光子的记录。由源自计数器或扫描器电子设备的行15或16锁存到fifo 17中的记录不表示检测到的光子,并被称为标记记录。软件标记记录是在记录之后和在数据处理期间插入到记录流中的记录。根据本发明的方法,所有记录具有相同的位宽是有益的,但不是必要的。
55.术语“时间标记”在文献中有不同的用法。类似的术语有“事件记录”、“时间戳记录”和“fifo模式”。在本文档中,当数据由一系列记录组成并且光子到达时间存储在单个记录中时,使用术语“时间标记数据”。
56.图2a中示例的数据格式可用于包括flim和fcs在内的广泛应用。对于不打算用其他方法分析数据的flim应用,激光脉冲计数器值需要相当低含量的存储空间。减少存储空间的格式在这里被称为“减少时间标记”格式。示例如图2b所示。光子记录40将光子到达时间存储在低位41中,并且关于检测器的信息存储在位42中。例如,位43用于存储光子是否是激光脉冲后的第一光子的信息。这允许实现us10,520,434b2中的方法。选择用于行结束标记44的未使用的位模式。当在扫描行内从扫描器电子设备接收到像素时钟信号时,生成像素标记45。图2c示出了“减少时间标记”格式的典型记录序列。光子记录由像素标记分开。只需要一个行标记来标记例如行的结束。对于大多数flim应用来说,每条记录16位是足够的。
57.图3示出了以非减少时间标记格式处理来自记录的flim数据。使用激光脉冲计数器53的时间信息和到达时间54,将开始标记记录50和结束标记记录51之间的记录分为表示图像像素持续时间52的相等时间段的块。所有到达时间值的平均值54被写入一个图像55。光子记录的数量被写入第二图像56。从两个图像55和56生成第三图像并在显示器58上显示,具有图像56的强度和从图像55得出的颜色,例如,使用彩虹查找表。此外,生成并显示图像中所有记录的所有到达时间值的直方图57。直方图称为总体衰减。用户在整体衰减中执行数据的拟合,并得出图像拟合的固定或起始参数。对于图像拟合,从到达时间数据54生成图像59中每个像素的到达时间值的直方图。对每个图像像素进行拟合。其他的分析方法是已知的。从时间标记数据中提取信息与此类似。
58.现在描述根据本发明的方法。第一步骤a)是将记录分成组。分割可以简单地是通过固定数量的相邻记录从数据流中分出来。图4中示出了一组32条记录60,具有对应的到达时间61、检测器62和激光脉冲63的数据。分割还可以包括记录的分类。可能的类别可以是来自不同检测器或光子类型的记录。不同类别的记录可以通过在开始处插入一个软件标记记录来标记。
59.在具有结果64的第二步骤b)中,组中的记录按照到达时间61进行排序。由于排序可能是该方法应用的性能的瓶颈,因此优选的是并行处理多个组的算法,但这不是强制性的。本发明方法的实现可以使用第5.3.4章networks for sorting in knuth,d.(1998).the art of computer programming,vol.3sorting and searching的排序网络。对于本领域技术人员来说,很明显,有效的排序可以用其他几种方法和手段来实现,如fpga和具有大规模并行架构的计算单元,如gpu。
60.在接下来的具有结果65的步骤c)中,计算当前记录的内容或值减去前一个记录的内容或值的差值。结果替换记录的原始值。处理从最后一条记录开始,向后到第二条记录。这个组的第一条记录保留。
61.记录中的数字现在平均较小。大数字是罕见的。在可选的下一步骤中,可以减少每
个记录的位数。组65中的32位记录例如可以通过省略带零的位来减少为16位记录。对于太大的罕见数字,插入软件标记。例如,软件标记可以包含稀有数字的高位,后面是具有低位的记录。
62.编码器的最后步骤d)是应用优选是常规的压缩方法。术语压缩方法在这里用于生成与输入数据相比大小减小的输出数据的任何方法。
63.在对压缩后的数据进行分析时,第一步首先应用所使用的常规压缩方法的解码器。当位深度减少已经完成时,它现在被撤消。然后,通过将当前记录的值与前一个记录的值相加来撤销减法。结果是排序值64的组。将平均到达时间值61和脉冲计数器值63被组合为用于识别图像像素的全局时间值。从图像像素和到达时间,计算用于图像拟合的平均到达时间图像、强度图像、整体衰减和每像素衰减直方图的结果。
64.在优选实施例中,压缩图2b所示的减少时间标签数据。对一个像素的光子记录按检测器和光子类型分组。根据us 10520434 b2,光子类型将在激光脉冲之间仅检测到这一个光子的光子与所有其他光子区分开来。软件标记被插入到数据流中,以标记特定类别的光子记录的开始。
65.一个类别的记录最多可以分组为32条记录。组中的记录按到达时间排序。然后将记录替换为与前一个记录的到达时间差。然后记录从每记录16位减少到每记录8位,如图5所示。类别记录70包含为在激光脉冲之间具有单光子的类别设置的一个位71,以及用于识别检测器的四个位72。光子记录73包含到达时间的七个位74。对于较大的到达时间数字,将插入带有高6位76的附加记录75。如果像素中没有检测到光子,则像素结束标记82可以包含比1大的运行长度值77。行结束标记78标记下一行的开始。在示例中,记录序列79被示出为类别标记c在前面。然后是类别的光子记录p。在第二类中是具有大到达时间编码(pl)的光子。标记80包含较高的6位,并且下一个光子记录81包含较低的7位。如此转换的数据流使用deflate进行压缩。px表示下一个像素的开始。
66.图6示出了两个选择的数据集的性能结果。最坏情况的数据集90是34gb的未压缩数据和亮像素中大约200个光子的时间序列。最佳情况下的数据集91是带有29gb未压缩数据的3d采集。在使用或不使用所描述优选实施例的本发明的方法的情况下,通过deflate自己的实现对数据集进行了压缩。此外,在使用和不使用本发明方法的情况下,再次测试了deflate的滑动窗口部分被禁用的压缩变体。此“仅huffman”变体生成的压缩数据流仍然符合deflate规范。
67.单线程性能结果92表明,本发明方法对两个数据集实现了超过因子2的更好压缩。意想不到的是,当应用本发明方法时,使用和不使用deflate的滑动窗口组件时,压缩比几乎相同。这是一个有趣的事实。它允许只使用熵编码而没有相当大的缺点。熵编码可以有效地在具有大规模并行架构的计算单元上运行。
68.优选实施例考虑此现象并使用仅具有熵编码的deflate方法。它不生成滑动窗口组件的长度/距离代码。它仍然生成deflate兼容的数据流。通过将压缩数据传送到gpu的存储器来执行优选实施例中的压缩数据的分析。数据在gpu上使用weiβenberger和schmidt的方法进行解压缩。整体衰减和平均到达时间图像在gpu上生成,然后被传送回主机存储器。通过这种方式,部分分析可以比压缩数据的存储介质的访问速度更快地执行。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表