Processing method and device of flicker pulse, equipment and storage medium
By using multi-threshold sampling and time base transformation, flicker pulse data is compressed, solving the problems of high data transmission load and server computing resource consumption, and achieving efficient data processing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- RAYSOLUTION HEALTHCARE CO LTD
- Filing Date
- 2022-12-30
- Publication Date
- 2026-06-02
AI Technical Summary
In existing technologies, the network transmission load of scintillation pulse sampling data is large, consuming a lot of bandwidth and increasing the consumption of server computing resources.
Sampling data is acquired through multi-threshold sampling, and a reference transformation is performed based on the time reference data. After obtaining the target time, the data is compressed, and intermediate parameters and corresponding relationships are transmitted to determine the energy and time information of the flashing pulse.
It reduces the network load on data transmission, alleviates the consumption of server computing resources, and improves the efficiency of data processing.
Smart Images

Figure CN116299629B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing, and in particular to a method, apparatus, device, and storage medium for processing flicker pulses. Background Technology
[0002] In positron emission tomography (PET) applications, gamma rays are converted into visible light signals by a scintillation crystal. These visible light signals are further converted into scintillation pulse signals by a photoelectric conversion device. By sampling and processing these scintillation pulse signals, a series of application images or energy spectrum information can be obtained. Among these processes, scintillation pulse sampling and processing of the sampled data are two crucial steps. High-quality sampling provides accurate raw data for subsequent processing, while fast, efficient, and stable processing ensures excellent final results.
[0003] Currently, after sampling the scintillation pulses, the sampled data is packaged and sent from the detection device to a processing device, such as a server, via a network. The server then processes the received sampled data to obtain relevant energy information. However, the amount of sampled data is generally very large. For example, during a PET scan, the detection device continuously detects a large number of scintillation pulses and outputs sampled data. Although compression methods are used during data transmission, a significant amount of bandwidth is still required for data transmission. The server also needs to consume substantial computing resources for output processing after receiving the sampled data. This inevitably increases the network transmission load and impacts the server's processor's computing power. Summary of the Invention
[0004] The technical problem to be solved by the embodiments of this application is how to reduce the network transmission load of data transmission during pulse sampling and reduce the consumption of server computing resources.
[0005] To address the aforementioned problems, this application discloses a method, apparatus, device, and storage medium for processing flicker pulses.
[0006] According to a first aspect of this application, a method for processing flicker pulses is provided. The method includes: performing multi-threshold sampling on the flicker pulse to obtain sampling data; obtaining a correspondence between one or more parameters to be determined and one or more intermediate parameters of a target function model corresponding to the flicker pulse; wherein the intermediate parameters are transformed based on the sampling data; based on time reference data, performing a reference transformation on the first sampling time when the flicker pulse first crosses a sampling threshold, as included in the sampling data, to obtain a target time; compressing the target time to obtain a target compressed time; transmitting the target compressed time, the intermediate parameters, and the correspondence to an external device, so that the external device can determine the parameters to be determined of the target function model based on the intermediate parameters and the correspondence, and determine the energy information and / or time information of the flicker pulse based on the parameters, the target function model, and the target compressed time.
[0007] According to some embodiments of this application, obtaining the target function model corresponding to the flickering pulse includes: obtaining the original function model, wherein the original function model conforms to a Gaussian function; and performing normalization processing on the original function model to obtain the target function model.
[0008] According to some embodiments of this application, obtaining the correspondence between the parameter to be determined and the intermediate parameter includes: performing mathematical processing operations on the objective function model to determine the correspondence and the transformation relationship between the intermediate parameter and the sampled data; wherein, the mathematical processing operations include at least taking the logarithm, parameter transformation, differentiation, and matrix transformation.
[0009] According to some embodiments of this application, the flashing pulse is one of a plurality of flashing pulses arranged in sequence based on the first sampling time that first crosses the sampling threshold, corresponding to a time event and an energy event, and the time reference data includes the first trigger time corresponding to the first time event; the acquisition of the target time includes: specifying a first time difference between the first sampling time and the first trigger time as the target time.
[0010] According to some embodiments of this application, the target time includes a first time component and a second time component, and the data compression of the target time includes data compression of the first time component, including: obtaining the first time component of the target time corresponding to the earlier flashing pulse in the order; specifying a second time difference between the first time component and the earlier first time component as the compressed first time component; wherein, the number of bytes used to accommodate the compressed first time component is less than the number of bytes used to accommodate the first time component.
[0011] According to some embodiments of this application, the target time includes a first time component and a second time component. The data compression of the target time includes data compression of the first time component, including: determining the size between the first time component and the time bit width corresponding to a predetermined byte length or an integer multiple of the time bit width; if the first time component is smaller than the time bit width, using the predetermined byte length to accommodate the first time component; if the first time component is larger than the time bit width or an integer multiple of the time bit width, determining a third time difference between the first time component and the time bit width or an integer multiple of the time bit width as the compressed first time component, and using the predetermined byte length to accommodate the compressed first time component.
[0012] According to some embodiments of this application, the target time includes a first time component and a second time component, and the data compression of the target time includes data compression of the first time component, including: determining the difference between the first time component and the bytes corresponding to a prior first time component, wherein the prior first time component corresponds to the prior target time of the prior flashing pulse in terms of order; and compressing the first time component based on the difference.
[0013] According to some embodiments of this application, the bytes are represented by a plurality of bytes arranged in order; determining the difference includes: sequentially comparing whether the number of bytes corresponding to the first time component and the earlier first time component are the same; if they are the same, removing the number of bytes that are sorted first in the first time component; if they are different, stopping the comparison and retaining the current number of bytes and the subsequent number of bytes corresponding to the first time component as the difference.
[0014] According to some embodiments of this application, data compression of the first time component based on the difference includes: specifying the difference to represent the compressed first time component.
[0015] According to a second aspect of this application, a method for processing flicker pulses is provided. The method includes: obtaining a correspondence between one or more parameters to be determined and one or more intermediate parameters of an objective function model corresponding to the flicker pulse, and the intermediate parameters; obtaining a target compression time corresponding to the first sampling time when the flicker pulse first crosses a sampling threshold; determining the parameters to be determined based on the intermediate parameters and the correspondence, and determining whether the flicker pulse corresponds to a real single event based on the objective function model determined by the parameters; if so, determining a target time corresponding to the flicker pulse based on the target compression time, and determining the time information of the real single event based on the target time.
[0016] According to some embodiments of this application, obtaining the target function model corresponding to the flickering pulse includes: obtaining the original function model, wherein the original function model conforms to a Gaussian function; and performing normalization processing on the original function model to obtain the target function model.
[0017] According to some embodiments of this application, determining whether the flashing pulse corresponds to a real single event based on a target function model with determined parameters includes: integrating the target function model with determined parameters to determine the energy value of the flashing pulse; determining whether the energy value is within a preset energy range; and if so, determining that the flashing pulse corresponds to a real single event.
[0018] According to some embodiments of this application, the flashing pulse is one of a plurality of flashing pulses arranged in sequence based on the first sampling time of the first time the sampling threshold is first crossed, and the target compression time is obtained by data compression of the target time corresponding to the flashing pulse; wherein, the target time includes a first time component and a second time component, and the compressed first time component obtained by data compression of the first time component of the target time is combined with the second time component to constitute the target compression time.
[0019] According to some embodiments of this application, determining the target time corresponding to the flashing pulse based on the target compression time includes: obtaining a prior first time composition of the prior target time corresponding to the prior flashing pulse in the order; and specifying the sum of the prior first time composition and the compressed first time composition as the first time composition.
[0020] According to some embodiments of this application, determining the target time corresponding to the flashing pulse based on the target compression time includes: obtaining the multiple relationship between the first time composition and the time bit width corresponding to the predetermined byte length; and determining the first time composition based on the time bit width, the multiple relationship, and the compressed first time composition.
[0021] According to some embodiments of this application, determining the target time corresponding to the flashing pulse based on the target compression time includes: obtaining the number of bytes corresponding to the bytes of the first time composition of the prior target time, wherein the first time composition corresponds to the prior target time of the prior flashing pulse in order; and determining the first time composition based on the number of bytes corresponding to the bytes of the first time composition and the compressed first time composition.
[0022] According to a third aspect of this application, a processing apparatus for flicker pulses is provided. The processing apparatus includes: a sampling module configured to perform multi-threshold sampling on the flicker pulses to acquire sampling data; a first acquisition module configured to acquire a correspondence between one or more parameters to be determined and one or more intermediate parameters of a target function model corresponding to the flicker pulse; wherein the intermediate parameters are transformed based on the sampling data; a conversion module configured to perform a reference transformation on the first sampling time of the flicker pulse first crossing a sampling threshold, based on time reference data, to acquire a target time; a compression module configured to compress the target time to acquire a target compressed time; and a transmission module configured to transmit the target compressed time, the intermediate parameters, and the correspondence to an external device, so that the external device can determine the parameters to be determined of the target function model based on the intermediate parameters and the correspondence, and determine the energy information and / or time information of the flicker pulse based on the parameters, the target function model, and the target compressed time.
[0023] According to some embodiments of this application, the first acquisition module is configured to acquire the target function model corresponding to the flashing pulse, including: acquiring the original function model, wherein the original function model conforms to a Gaussian function; and performing normalization processing on the original function model to acquire the target function model.
[0024] According to some embodiments of this application, in order to obtain the correspondence between the parameter to be determined and the intermediate parameter, the first acquisition module is configured to: perform mathematical processing operations on the objective function model to determine the correspondence and the transformation relationship between the intermediate parameter and the sampled data; wherein, the mathematical processing operations include at least taking the logarithm, parameter transformation, differentiation and matrix transformation.
[0025] According to some embodiments of this application, the flashing pulse is one of a plurality of flashing pulses arranged in sequence based on the first sampling time that first crosses the sampling threshold, corresponding to a time event and an energy event, and the time reference data includes the first trigger time corresponding to the first time event; in order to obtain the target time, the determining module is configured to: specify a first time difference between the first sampling time and the first trigger time as the target time.
[0026] According to some embodiments of this application, the target time includes a first time component and a second time component. Data compression of the target time includes data compression of the first time component. The compression module is configured to: obtain the first time component of the target time corresponding to the earlier flashing pulse in the order; specify a second time difference between the first time component and the earlier first time component as the compressed first time component; wherein the number of bytes used to accommodate the compressed first time component is less than the number of bytes used to accommodate the first time component.
[0027] According to some embodiments of this application, the target time includes a first time component and a second time component. Data compression of the target time includes data compression of the first time component. The compression module is configured to: determine the size between the first time component and a time bit width corresponding to a predetermined byte length or an integer multiple of the time bit width; if the first time component is smaller than the time bit width, use the predetermined byte length to accommodate the first time component; if the first time component is larger than the time bit width or an integer multiple of the time bit width, determine a third time difference between the first time component and the time bit width or an integer multiple of the time bit width as the compressed first time component, and use the predetermined byte length to accommodate the compressed first time component.
[0028] According to some embodiments of this application, the target time includes a first time component and a second time component. Data compression of the target time includes data compression of the first time component. The compression module is configured to: determine the difference between the first time component and the bytes corresponding to a prior first time component of a prior target time, wherein the prior first time component corresponds to the prior target time of a prior flashing pulse in terms of order; and compress the first time component based on the difference.
[0029] According to some embodiments of this application, the bytes are represented by a plurality of bytes arranged in order; to determine the difference, the compression module is configured to: sequentially compare whether the number of bytes corresponding to the first time component and the earlier first time component are the same; if they are the same, remove the number of bytes that are sorted first in the first time component; if they are different, stop the comparison and retain the current number of bytes and the subsequent number of bytes corresponding to the first time component, and use them as the difference.
[0030] According to some embodiments of this application, in order to compress the first time component based on the difference, the compression module is configured to: specify the difference to represent the compressed first time component.
[0031] According to a fourth aspect of this application, a processing apparatus for flicker pulses is provided. The processing apparatus includes: a second acquisition module configured to acquire a correspondence between one or more parameters to be determined and one or more intermediate parameters of an objective function model corresponding to the flicker pulse, and the intermediate parameters; a third acquisition module configured to acquire a target compression time corresponding to the first sampling time when the flicker pulse first crosses a sampling threshold; a determination module configured to determine the parameters to be determined based on the intermediate parameters and the correspondence, and to determine whether the flicker pulse corresponds to a real single event based on the objective function model determined by the parameters; and a determination module configured to, when the flicker pulse corresponds to a real single event, determine a target time corresponding to the flicker pulse based on the target compression time, and determine the time information of the real single event based on the target time.
[0032] According to some embodiments of this application, the second acquisition module is configured to acquire the target function model corresponding to the flashing pulse, including: acquiring the original function model, wherein the original function model conforms to a Gaussian function; and performing normalization processing on the original function model to acquire the target function model.
[0033] According to some embodiments of this application, in order to determine whether the flashing pulse corresponds to a real single event based on a target function model with determined parameters, the determining module is configured to: integrate the target function model with determined parameters to determine the energy value of the flashing pulse; determine whether the energy value is within a preset energy range; if so, determine that the flashing pulse corresponds to a real single event.
[0034] According to some embodiments of this application, the flashing pulse is one of a plurality of flashing pulses arranged in sequence based on the first sampling time of the first time the sampling threshold is first crossed, and the target compression time is obtained by data compression of the target time corresponding to the flashing pulse; wherein, the target time includes a first time component and a second time component, and the compressed first time component obtained by data compression of the first time component of the target time is combined with the second time component to constitute the target compression time.
[0035] According to some embodiments of this application, in order to determine the target time corresponding to the flashing pulse based on the target compression time, the determining module is configured to: obtain a first time composition of the first target time corresponding to the first flashing pulse in the order; and specify the sum of the first time composition and the compressed first time composition as the first time composition.
[0036] According to some embodiments of this application, in order to determine the target time corresponding to the flashing pulse based on the target compression time, the determining module is configured to: obtain the multiple relationship between the first time composition and the time bit width corresponding to the predetermined byte length; and determine the first time composition based on the time bit width, the multiple relationship, and the compressed first time composition.
[0037] According to some embodiments of this application, in order to determine the target time corresponding to the flashing pulse based on the target compression time, the determining module is configured to: obtain the number of bytes corresponding to the bytes of the first time composition, wherein the first time composition corresponds to the first target time of the first flashing pulse in terms of order; and determine the first time composition based on the number of bytes corresponding to the bytes of the first time composition and the compressed first time composition.
[0038] According to a fifth aspect of this application, a processing apparatus is provided. The processing apparatus includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, performs the steps of the method described above.
[0039] According to a sixth aspect of this application, a computer-readable storage medium is provided. The storage medium stores a computer program that, when executed by a processor, implements the steps of the method described above.
[0040] The flicker pulse processing method disclosed in this application can process the original sampled data to compress the data size before transmission, thereby reducing the network transmission load and alleviating the consumption of server computing resources. Attached Figure Description
[0041] This application will be further described by way of exemplary embodiments, which will be described in detail with reference to the accompanying drawings. These embodiments are not limiting; in these embodiments, the same reference numerals denote the same structures, wherein:
[0042] Figure 1 This is an exemplary flowchart of a method for processing flashing pulses according to some embodiments of this application;
[0043] Figure 2 This is an exemplary flowchart of another method for processing flashing pulses according to some embodiments of this application;
[0044] Figure 3 This is an exemplary schematic diagram of a flashing pulse waveform shown according to some embodiments of this application;
[0045] Figure 4This is an exemplary schematic diagram of sampling a flash pulse according to some embodiments of this application;
[0046] Figure 5 This is an exemplary block diagram of a data processing system for scintillation pulse processing according to some embodiments of this application;
[0047] Figure 6 This is an exemplary block diagram of another data processing system for scintillation pulse sampling, according to some embodiments of this application;
[0048] Figure 7 This is an exemplary functional block diagram of a data processing system for flash pulse processing according to some embodiments of this application. Detailed Implementation
[0049] To make the above-mentioned objectives, features, and advantages of this application more apparent and understandable, the specific embodiments of this application are described in detail below with reference to the accompanying drawings. Many specific details are set forth in the following description to provide a thorough understanding of this application. However, this application can be implemented in many other ways different from those described herein, and those skilled in the art can make similar modifications without departing from the spirit of this application. Therefore, this application is not limited to the specific embodiments disclosed below.
[0050] It should be noted that when a component is said to be "fixed to" another component, it can be directly fixed to the other component or there may be an intervening component. When a component is said to be "connected to" another component, it can be directly connected to the other component or there may be an intervening component. The terms "vertical," "horizontal," "left," "right," and similar expressions used in this document are for illustrative purposes only.
[0051] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. The terms “and / or” or “and / or” as used herein include any and all combinations of one or more of the associated listed items.
[0052] The following description, with reference to the accompanying drawings, illustrates some preferred embodiments of the present application. It should be noted that the following description is for illustrative purposes only and is not intended to limit the scope of protection of this application.
[0053] Figure 1This is an exemplary flowchart of a flicker pulse processing method according to some embodiments of this application. In some embodiments, the flicker pulse processing method 100 can be executed by a first data processing system 500. For example, the flicker pulse processing method 100 can be stored in a storage device (such as the built-in storage unit of the first data processing system 500 or an external storage device) in the form of a program or instructions, which, when executed, can implement the flicker pulse processing method 100. Figure 1 As shown, the flashing pulse processing method 100 may include the following steps.
[0054] Step 110: Perform multi-threshold sampling on the flicker pulse to obtain sampling data.
[0055] In some embodiments, the scintillation pulses can be acquired by a radiation detection device. The radiation detection device may include a semiconductor detector, such as a PN junction semiconductor detector, a lithium-drift semiconductor detector, a high-purity germanium semiconductor detector, a germanium-lithium semiconductor detector, a silicon-lithium semiconductor detector, a silicon microstrip semiconductor detector, a metal surface barrier semiconductor detector, etc. The radiation detection device may also include a scintillation detector. This scintillation detector may include a scintillation crystal and a photoelectric conversion device coupled together. The scintillation crystal (e.g., BGO, PWO, LYSO:Ce, GAGG:Ce, NaI:TI, CsI:TI, LaBr3:Ce, BaF2, etc.) is used to convert detected high-energy rays (such as gamma rays, neutron rays, etc.) into visible light signals, and the photoelectric conversion device (e.g., a photomultiplier tube PMT, a silicon photomultiplier tube SiPM, etc.) is used to convert the visible light signals into electrical signals, which are output as scintillation pulses through electronic devices connected to the photoelectric conversion device.
[0056] In some embodiments, the output flicker pulse can be shaped by a shaping circuit. This shaping circuit transforms the waveform of the flicker pulse to closely resemble the function model of a Gaussian function. For example, the shaping circuit may include a pre-filter amplifier circuit incorporating multiple stages of Gaussian shaping circuitry, such as more than four stages. After multiple Gaussian shaping processes, the waveform of the flicker pulse can approximate the shape described by the Gaussian function. Figure 3 As shown, Figure 3 This is an exemplary schematic diagram of a flicker pulse waveform according to some embodiments of this application. The shape of the flicker pulse 300 conforms to a symmetrical bell shape described by a Gaussian function. It includes a rising edge where the pulse amplitude increases over time, and a falling edge where the pulse amplitude decreases over time after reaching its peak. The functional model describing the shape of the flicker pulse 300 can be a Gaussian function model as shown in Equation 1 below:
[0057]
[0058] Where y represents the amplitude of the flicker pulse, x represents the time corresponding to the amplitude of the flicker pulse, a represents the maximum amplitude of the flicker pulse (i.e., the peak value of the flicker pulse), b represents the axis of symmetry of the flicker pulse (expressed in time), and c represents the standard deviation (i.e., the width of the Gaussian RMS value). In some embodiments, Equation 1 above may also be referred to as the original function model of the flashing pulse.
[0059] An exemplary multi-threshold sampling method may involve presetting multiple sampling thresholds, comparing the flashing pulse with the preset multiple sampling thresholds to obtain the time when the flashing pulse crosses the sampling threshold, and forming a threshold-time pair with the corresponding sampling threshold to form the sampling data. Figure 4 An exemplary schematic diagram of sampling a flicker pulse according to some embodiments of this application is shown. For ease of illustration, two thresholds are used in the example description. The device for performing multi-threshold sampling may include a comparator and a time-to-digital converter. The comparator may be used to compare the flicker pulse with the sampling thresholds, outputting a state change signal when the flicker pulse crosses the sampling threshold. The time-to-digital converter may be used to digitize the state change signal output by the comparator to obtain the time when the flicker pulse crosses the sampling threshold. The resulting threshold-time pair constitutes the sampled data. Figure 4As shown, the amplitude of the flicker pulse gradually increases over time. At this time, the comparator compares the flicker pulse with the sampling threshold A1. When the flicker pulse crosses the sampling threshold A1 from bottom to top, the comparator generates a state change signal. The time-to-digital converter (TD-SCDMA) digitally samples this state change information to obtain the corresponding transition time t1. Subsequently, the amplitude of the flicker pulse continues to increase. The comparator compares the flicker pulse with the sampling threshold A2. When the flicker pulse crosses the sampling threshold A2 from bottom to top, the comparator generates another state change signal. The TD-SCDMA digitally samples this state change information to obtain the corresponding transition time t2. After reaching its peak, the flicker pulse gradually decreases over time. At this time, the comparator continues to compare the flicker pulse with the sampling threshold A2. When the flicker pulse crosses the sampling threshold A2 from top to bottom, the comparator generates a state change signal. The TD-SCDMA digitally samples this state change information to obtain the corresponding transition time t3. If the amplitude of the flash pulse continues to decrease, the comparator will generate a state change information when the flash pulse crosses the sampling threshold A1 from top to bottom. The time-to-digital converter can digitize and sample this state change information to obtain the corresponding transition time t4. This completes the entire sampling process. In multi-threshold sampling, one sampling threshold can correspond to two threshold-time pairs. When the number of set sampling thresholds is n, sampling data containing 2n threshold-time pairs will be obtained.
[0060] In some embodiments, the device implementing the scintillation pulse sampling process may also include a scintillation pulse acquisition circuit board. The comparator and time-to-digital converter mentioned above can be integrated into the scintillation pulse acquisition circuit board. The scintillation pulse acquisition circuit board may also include other components, such as a digital-to-analog converter (DAC) for setting a threshold, and a chip (e.g., an FPGA chip, where the time-to-digital converter can be implemented using the carry chain within the FPGA) for providing logic resources for the time-to-digital converter. Therefore, the scintillation pulse acquisition circuit board can also be referred to as a chip board. These components can be electrically connected on the scintillation pulse acquisition circuit board to achieve data transmission.
[0061] It should be understood that in actual sampling, the pulse waveform is not as... Figure 4 Instead of the smoothness shown, there will be more fluctuations, which will actually manifest as... Figure 4 The waveform shown fluctuates upwards or downwards within its upper and lower range. Figure 4The smoothed waveform shown is for illustrative purposes. Therefore, in actual sampling, the waveform may cross the same threshold multiple times within a very short period of time at the rising or falling edge. In actual sampling, the average time of crossing the threshold multiple times within a certain time window or time period can be used as the time of crossing the threshold. This is something that can be easily implemented by those skilled in the art based on the teachings of this application, and will not be elaborated here.
[0062] In some embodiments, the intervals between the plurality of sampling thresholds may be equal. That is, the plurality of sampling thresholds may form an arithmetic sequence. Taking voltage thresholds as an example, the intervals between the plurality of sampling thresholds may be 10mV, 20mV, 30mV, etc. The intervals between the plurality of sampling thresholds may also be unequal. For example, the plurality of sampling thresholds may form a geometric sequence with a common ratio of 2.
[0063] In some embodiments, the plurality of sampling thresholds can be determined based on empirical data and / or prior information about the flicker pulse. For example, taking an electrical pulse as an example, summary data from a large number of electrical pulses shows that the peak value of its associated noise is generally below 60mV. Therefore, the lowest sampling threshold among the plurality of sampling thresholds can be set to 60mV. As another example, the prior information about the flicker pulse can yield the magnitude of the pulse peak. In this case, multiple sampling thresholds within the peak value of the flicker pulse can be set so that each sampling threshold can collect relevant data. Of course, the plurality of sampling thresholds may not all be within the peak value of the flicker pulse. For example, a certain number of sampling thresholds can be set, with the calculation based on the threshold data actually crossed by the flicker pulse during the comparison process. Taking voltage thresholds as an example, suppose eight sampling thresholds are set as 60mV, 80mV, 100mV, 120mV, 140mV, 160mV, 180mV, and 200mV. If the peak value of the flicker pulse is high (e.g., 220mV), then the flicker pulse may cross more sampling thresholds, such as all eight thresholds. If the peak value of the scintillation pulse is low (e.g., 150mV), then the scintillation pulse may exceed a smaller number of sampling thresholds, such as the first 5 thresholds.
[0064] Step 120: Obtain the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse.
[0065] Based on the description in step 110, the Gaussian function model Equation 1, used to characterize the shape of the pulse waveform of the flicker pulse, can be used as the original function model corresponding to the flicker pulse. Normalizing the original function model yields the target function model. For example, since horizontally shifting the flicker pulse does not cause a change in energy information, for Equation 1, let X = xb, Y = y, and move the axis of symmetry of the flicker pulse to the Y-axis. Then Equation 1 can be transformed into Equation 2 as shown below:
[0066]
[0067] Where Y represents the normalized amplitude of the flicker pulse, and X represents the normalized time corresponding to the normalized amplitude of the flicker pulse. In some embodiments, Equation 2 can be determined as the objective function model corresponding to the flicker pulse, and a and c can be one or more parameters to be determined included in the objective function model.
[0068] In some embodiments, in order to determine the correspondence between the parameter to be determined and the intermediate parameter, the objective function model may be subjected to data processing operations, including taking logarithms, parameter transformation, differentiation, and matrix transformation.
[0069] For example, Equation 2, which describes the objective function model, can be taken as its logarithm to obtain Equation 3 as shown below:
[0070]
[0071] By changing the parameters in Equation 3, let Z = ln Y, k0 = ln a, Equation 3 can then be transformed into Equation 4 as shown below:
[0072] Z = k0 + k2 * X 2 (4)
[0073] To minimize the error between the indicated curve and the waveform of the flashing pulse after one or more parameters of the objective function model are determined, that is, to minimize the error between Z-(k0+k2*X) and the waveform of the flashing pulse. 2 The value of ) is minimized. Let R = Z - (k0 + k2 * X) 2 ), then R 2 =[Z-(k0+k2*X)] 2 )] 2 The variables in the objective function model can be derived from sampled data obtained by sampling the flicker pulses. For example, the amplitude of the flicker pulse at a certain moment (or sampling moment) can be obtained. Exemplary sampled data can be obtained using (x... i ,y i Let ) represent i = 1, 2, 3, ..., n. Where x iIndicates the sampling time, y i Indicates at sampling time x i The amplitude corresponding to the flash pulse. n represents the number of sampled data, or the number of sampling moments. Similarly, for (x... i ,y i ) Execution time normalization, let X i =x i -b, Y i =y i Substituting these values into the error calculation formula above, we can obtain Equation 5 as shown below:
[0074]
[0075] It can be known that when R 2 The closer F is to 0, the smaller the error. Let F = R 2 =0, and by differentiating with respect to k0 and k2 respectively, we can obtain equations 6 and 7 as shown below:
[0076]
[0077]
[0078] Rearranging equations 6 and 7, we obtain equations 8 and 9 as shown below:
[0079]
[0080]
[0081] Performing matrix transformations on equations 8 and 9 above, we obtain equation 10 as shown below:
[0082]
[0083] make By specifying KK, RR, QQ, and YY as one or more intermediate parameters, it can be determined that the intermediate parameters can be obtained by transforming the sampled data.
[0084] Based on the data specified above, Equation 10 can be transformed into Equation 11 as shown below:
[0085]
[0086] Performing matrix operations on Equation 11 yields Equations 12 and 13 as shown below:
[0087] n*k0+KK*k2=YY (12)
[0088] KK*k0+RR*k2=QQ (13)
[0089] Solving the system of equations formed by equations 12 and 13 yields equations 14 and 15 as shown below:
[0090]
[0091]
[0092] And k0 = ln a, The correspondence between the intermediate parameters and the parameters to be determined can be shown in Equations 16 and 17 below:
[0093]
[0094]
[0095] It is known that sampled data typically requires a standard reference, such as time zero, to indicate the start time of sampling. However, the sampling process is always subject to various factors, leading to inconsistencies between the sampling reference and the standard reference. Therefore, the sampled data can be transformed to obtain sampled data under a standard reference, facilitating calculations and improving computational efficiency. (x...) n ,y n ) describes the sampled data, where x n Indicates the sampling time, y n Indicates in x n The amplitude of the flash pulse is denoted by n, which represents the number of threshold-time pairs acquired. For example, if the flash pulse exceeds 8 thresholds, 16 threshold-time pairs can be obtained, then n = 16. Meanwhile, horizontal translation does not affect the energy information of the flash pulse; therefore, the reference transformation can be a time reference transformation of the sampled data. The sampled data after the reference transformation can be called transformed data, and the time reference value used can be x1, which is the sampling time obtained at the first sampling point. Let pp... i =x i -x1, 1≤i≤n, then the transformed data obtained after the reference transformation can be represented as (pp n ,y n The transformed data can be designated as variables of the objective function model. Based on the correspondence between the intermediate parameters and the sampled data, the intermediate parameters can be obtained by transforming the sampled data. According to the correspondence mentioned above:
[0096]
[0097]
[0098]
[0099]
[0100] and X i =x i -b, Y i =y i First, the transformed data (pp) can be... n ,y n ) and (X n ,Y n Then X will be matched accordingly. i =pp i -b, Y i =y i 'b' represents the axis of symmetry of the flashing pulse (expressed in time). Since the flashing pulse is a symmetrical bell shape, the time it takes for the flashing pulse to cross the same threshold twice is symmetrical about the axis of symmetry of the flashing pulse. That is, the mean of the time it takes for the flashing pulse to cross all thresholds is equal to 'b'. Therefore, 'b' can be determined based on the following formula 18:
[0101]
[0102] Therefore, combining Z = lnY, the one or more intermediate parameters can be determined as follows:
[0103]
[0104]
[0105]
[0106]
[0107] By substituting the transformed data into the above formula, the intermediate parameters can be obtained.
[0108] Step 130: Based on the time reference data, perform a reference transformation on the first sampling time when the flash pulse first crosses the sampling threshold, as included in the sampling data, to obtain the target time.
[0109] In some embodiments, the scintillation pulse may be one of a plurality of scintillation pulses arranged in sequence. For example, a radiation detection device may continuously detect high-energy rays and output scintillation pulses. One scintillation pulse may correspond to an energy event and a time event. The energy event may refer to the energy value carried by the scintillation pulse, and the time event may refer to the arrival time of the scintillation pulse, or it can be understood as the time when the high-energy ray / particle that generated the scintillation pulse was captured by the radiation detection device. These scintillation pulses can be sorted according to the first sampling time when they first cross the minimum sampling threshold, with the earlier first sampling time listed first. These scintillation pulses can also be sorted according to their arrival time, with the earlier arrival time listed first. The processing object of this processing method, that is, the scintillation pulse to be processed, can be any one of these scintillation pulses.
[0110] In some embodiments, the scintillation pulses are obtained by summing the energies. It is understood that high-energy rays / particles, after entering a crystal path of a radiation detection device (i.e., after incident into the crystal), may undergo Compton scattering. The energy of the gamma photons changes, and their direction shifts, resulting in energy deposition on multiple crystal paths, thus outputting multiple pulse signals. To accurately reconstruct the energy of the incident high-energy rays / particles, these pulse signals can be summed, making subsequent energy calculations more accurate. Simultaneously, due to the possibility of scattering events, to determine the capture time of the incident high-energy rays / particles (i.e., the arrival time), two trigger thresholds can be preset for comparison with the amplitudes of multiple pulse signals to determine the time point when the pulse signal amplitude exceeds the trigger threshold. The lower trigger threshold can be larger than the maximum amplitude of the noise signal, effectively filtering the noise signal and avoiding false detections. When the pulse signal exceeds the higher trigger threshold, it can be identified as a valid pulse signal. The earliest time among all valid pulse signals to first exceed the lower trigger threshold can be used as the arrival time. Alternatively, among all valid pulse signals, the valid pulse signal with the largest time difference between the first crossing of the lower trigger threshold and the second crossing of the higher trigger threshold can be used as the arrival time.
[0111] To match the energy event and time event corresponding to the flashing pulse, the time data corresponding to the energy event and the time data corresponding to the time event can be placed at the same timing starting point. For example, the difference between the first sampling time (when the flashing pulse first crosses the minimum sampling threshold) and the time reference data can be calculated. The time reference data can be the first trigger time of the first time event among multiple time events corresponding to multiple flashing pulses. The trigger time can be the arrival time mentioned above. That is, the first trigger time can be the minimum value among all arrival times. The first time difference between the first sampling time and the first trigger time can be used as the target time corresponding to the flashing pulse after reference conversion. Assuming the first sampling time is denoted as T0 and the first trigger time is denoted as t0, then the target time T′0 = T0 - t0.
[0112] This target time can be used to match the energy events and time events corresponding to subsequent flash pulses.
[0113] Step 140: Compress the target time to obtain the target compressed time.
[0114] In some embodiments, the target time may include a first time component (also referred to as coarse time in this application) and a second time component (also referred to as fine time in this application). It is understood that time can be represented using one or more time units. For example, 5ms 37μs. The first time component could be the first 5ms, and the second time component could be the second 37μs. In some embodiments, 6 bytes can be used to store the target time. Specifically, 5 bytes are used to store the first time component, and 1 byte is used to store the second time component. In this step, data compression of the target time can be performed on the first time component to use fewer bytes to store the compressed first time component. The compressed first time component and the second time component together constitute the target compressed time.
[0115] In some embodiments, to achieve data compression of the first time component, the first time component corresponding to the first target time of the previously ordered flashing pulse can be obtained. As an example, assume the flashing pulse to be processed is the i-th in the order, and the corresponding target time is... Let its first time component be denoted as T. Then, the first flashing pulse is the (i-1)th flashing pulse in the sequence, and the corresponding target time is... Its first-time composition is denoted as T. i-1 Therefore, the second time difference ΔT between the first time component and the prior first time component... i =T i -Ti-1 This can be used as the first time component after compression. For example, the first time components of the target time corresponding to 10 sequentially arranged flash pulses, after data compression, result in the following compressed first time components: ΔT1=T1, ΔT2=T2-T1, ΔT3=T3-T2,…,ΔT 10 =T 10 -T9. Based on the frequency of scintillation pulses generated by high-energy rays / particles captured by the radiation detection device, the interval between two scintillation pulses can not exceed 5ms. Therefore, the compressed first time component can be accommodated using 3 bytes, which is less than 5 bytes. One bit represents 5ns, so the time bit width corresponding to 3 bytes is 0xFFFFFF*5=83886075ns≈83ms. This can be used to accommodate the compressed first time component. However, the time bit width corresponding to 2 bytes is less than 5ms, and the time bit width corresponding to 4 bytes is 21s, which is much greater than 5ms, resulting in waste. It should be noted that the first time component corresponding to the first scintillation pulse is not processed in terms of sorting. When obtaining the target time of the scintillation pulse, the first time difference between the first sampling time of the first scintillation pulse and the first trigger time corresponding to the first time event is slightly greater than 0 (based on prior information and / or prior data). Similarly, the time bit width corresponding to 3 bytes can also be used to accommodate the first time component corresponding to the first scintillation pulse. Based on this, after data compression, the number of bytes used to accommodate the first time component is reduced from 5 to 3, thus reducing the data size. This compression method can also be called the first compression method.
[0116] In some embodiments, to compress the data of the first time component, the size between the first time component and the time bit width corresponding to a predetermined byte length or an integer multiple of the time bit width can be determined. The predetermined byte length can be 3 bytes. The time bit width corresponding to 3 bytes can be 83ms. An integer multiple of the time bit width corresponding to 3 bytes can be n*83ms, where n≥2. If the first time component is smaller than the time bit width, the first time component can be accommodated using the predetermined byte length. That is, if the first time component is less than 83ms, then 3 bytes can be used to accommodate the first time component. If the first time component is larger than the time bit width or an integer multiple of the time bit width, a third time difference can be determined between the first time component and the time bit width or an integer multiple of the time bit width. For example, assuming the first time component is 90ms, then the third time difference can be 90ms-83ms=7ms. As another example, assuming the first time component is 170ms, then the third time difference can be 170ms-2*83ms=4ms. The third time difference can be specified as the compressed first time component, which can be accommodated using the predetermined byte length. In other words, 3 bytes are used to accommodate the compressed first time segment. Based on this, after data compression, the number of bytes used to accommodate the first time segment is reduced from 5 to 3, thus decreasing the data size. This compression method can also be called the second compression method.
[0117] In some embodiments, to compress the data of the first time component, a first difference in bytes between the first time component and a prior first time component can be determined, wherein the prior first time component corresponds to the prior target time of the prior flashing pulse in terms of order. It is known that bytes can be represented by a number of bytes arranged in sequence. For example, the number of bytes used to accommodate the 5 bytes of the first time component can be represented sequentially as 0xAA, BB, 12, 34, 56. The first difference can be determined by sequentially comparing whether the number of bytes corresponding to the first time component and the prior first time component are the same. If they are the same, the bytes that appear first in the sequence corresponding to the first time component can be removed. If they are different, the comparison can be stopped and the current byte count and subsequent byte counts corresponding to the first time component can be retained as the first difference. For example, assuming the number of bytes corresponding to the prior first time component is 0xAA, BB, 12, 34, 56, and the number of bytes corresponding to the first time component is 0xAA, BB, 10, 78, 89, sequentially comparing, the first two bytes corresponding to the first time component are the same as the number of bytes corresponding to the prior first time component and can be discarded. If the third byte count is different, the comparison can stop. The third byte count, along with subsequent byte counts (10, 78, 89), can be designated as the first difference. This first difference can be designated as the compressed first time component. Based on this, the number of bytes used to accommodate the first time component is reduced from 5 to 1-5, decreasing the data size. This compression method can also be referred to as the third compression method.
[0118] Step 150: Transmit the target compression time, the intermediate parameters, and the correspondence to an external device, so that the external device can determine the parameters to be determined of the objective function model based on the intermediate parameters and the correspondence, and determine the energy information and / or time information of the flashing pulse based on the objective function model determined by the parameters and the target compression time.
[0119] It is understandable that processing a closed-loop scintillation pulse can include pulse acquisition, sampling, and data processing. Front-end components, including a radiation detection device, acquire the pulse; a scintillation pulse acquisition board samples the pulse; and back-end components, including processing devices such as computers and servers, process the data. The front-end components transmit sampled data to the back-end components, and the large amount of data transmitted during this process can lead to a significant network load. Furthermore, the computer or server consumes substantial computing resources to process the large amount of data received. In step 150, the sampled data for the scintillation pulse is processed before transmission. That is, one or more intermediate parameters and the compressed target compression time can be transmitted. This significantly reduces the amount of data transmitted, greatly reducing the network load. External devices, such as computers and servers, can directly utilize the correspondence between the received intermediate parameters and the parameters to be determined in the objective function model of the scintillation pulse, consuming minimal computing resources to determine the specific expression of the objective function model. Integration then yields the energy value of the scintillation pulse. This energy value can be used for image reconstruction (e.g., PET image reconstruction). Simultaneously, the target compression time can be restored to the target time of the flashing pulse, and compared with the first trigger time of all time events acquired simultaneously to determine the time information of the time event corresponding to the flashing pulse.
[0120] In some embodiments, the processing method 100 can be executed by a chip board. For example, the aforementioned scintillation pulse acquisition board. The chips on the chip board may include PLD, CPLD, FPGA, or ASIC chips. The chip board can sample the scintillation pulses and utilize its limited computing resources to partially process the sampled data, reducing the size of the sampled data. This process can be considered another form of "data compression."
[0121] The following example illustrates the transmission of data.
[0122] Assuming 8 sampling thresholds are set, 16 threshold-time pairs (i.e., sampled data) can be collected to determine the energy value of a scintillation pulse. That is, determining the energy value of a scintillation pulse requires 16 time data sets. Each time data set is 6 bytes in size (5 bytes for coarse time and 1 byte for fine time). Therefore, the total size of the 16 time data sets is 96 bytes. Furthermore, along with other information that needs to be transmitted with the time data, such as the event type (i.e., the time event) and channel information identifier (i.e., which detection channel of the scintillation pulse detector received the high-energy particle that generated the scintillation pulse), the total data size will exceed 96 bytes. Using T0-T... 15This means that after processing through the aforementioned steps of processing method 100, the size of these 16 time data points can be reduced to 16-19 bytes. For example, the event type and channel information identifier will not be processed. The target time T0 will be compressed to T0′. The coarse time is compressed, while the fine time is not compressed, occupying a total of 2-5 bytes. The subsequent 15 sampling times can be replaced using one or more of the aforementioned intermediate parameters.
[0123] When using either the first or second compression method (the first time component of the target time is compressed from 5 bytes to 3 bytes), the encapsulation format of all data to be transmitted can be as follows:
[0124]
[0125] EF is used to distinguish event types, CC represents the number of channels, and they occupy a total of 2 bytes. T0′ occupies 4 bytes, encoded as T0[31:24], T0[23:16], T0[15:8], and T0[7:0] respectively. The intermediate parameters, along with other information, occupy the remaining 12 bytes. These include KK-23bits (KK is less than 23 bits, and according to prior information, it occupies a maximum of 23 bits, or 3 bytes), QQ-24bits (QQ is less than 24 bits, and according to prior information, it occupies a maximum of 24 bits, or 3 bytes), dynamic_len-5bits (threshold-related storage occupies a maximum of 5 bits, less than 1 byte, sharing 1 byte with RR), and RR-42bits (RR is less than 42 bits, and according to prior information, it occupies a maximum of 42 bits, or 6 bytes). In the example above, dynamic_len-5bits is 5 bits. The thresholds set in the example are 8, corresponding to 16 sampling time points. Therefore, there are 16 sampling time points corresponding to the amplitude of the flicker pulses. 16 < 25 < 32, therefore, using 5 bits to store the relevant data of the sampling amplitudes is sufficient. A 5-bit storage unit is used to store the sampling point data corresponding to the number of thresholds actually crossed by the flicker pulses. Simultaneously, the number n of the sampling point data can also be used for subsequent calculations.
[0126] By using either the first or second compression method, the sampled data for a single flash pulse is reduced from over 96 bytes to 18 bytes, significantly decreasing the data volume. This reduction in data transmission reduces network load and improves transmission efficiency. Furthermore, it also reduces server computing resource consumption and increases data processing speed.
[0127] When using the third compression method (the first time component of the target time is compressed from 5 bytes to a dynamic 1-5 bytes), the encapsulation format of all data to be transmitted can be as follows:
[0128] When compressed to 1 byte:
[0129]
[0130] When compressed to 2 bytes:
[0131]
[0132] When compressed to 3 bytes:
[0133]
[0134] When compressed to 4 bytes:
[0135]
[0136] When using the third compression method, retaining 5 bytes:
[0137]
[0138] Through the third compression method, the sampled data of a single flash pulse is reduced from more than 96 bytes to a dynamic 16-20 bytes, significantly reducing the data volume. This reduction in data transmission reduces network load and improves transmission efficiency. Furthermore, it also reduces server computing resource consumption and increases data processing speed.
[0139] It should be noted that the above-mentioned Figure 1 The descriptions of the various steps in this specification are for illustrative purposes only and do not limit the scope of this specification. Those skilled in the art can, under the guidance of this specification, [perform certain tasks / activities]. Figure 1 Various modifications and changes have been made to the steps described herein. However, these modifications and changes remain within the scope of this specification.
[0140] The flicker pulse processing method disclosed in this application can process the original sampled data to compress the data size before transmission, thereby reducing the network transmission load and alleviating the consumption of server computing resources.
[0141] Figure 2 This is an exemplary flowchart illustrating another method for processing flicker pulses according to some embodiments of this application. In some embodiments, the flicker pulse processing method 200 can be executed by a second data processing system 600. For example, the flicker pulse processing method 200 can be stored in a storage device (such as the built-in storage unit of the second data processing system 600 or an external storage device) in the form of a program or instructions, which, when executed, can implement the flicker pulse processing method 200. Figure 2 As shown, the flashing pulse processing method 200 may include the following steps.
[0142] Step 210: Obtain the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse, as well as the intermediate parameters.
[0143] Step 220: Obtain the target compression time corresponding to the first sampling time when the flash pulse first crosses the sampling threshold.
[0144] In some embodiments, the objective function model, the correspondence, the intermediate parameters, and the target compression time may be the same as or similar to those in processing method 100, and can be referenced to processing method 100. In some embodiments, the first processing system 500 for executing processing method 100 can transmit the above information to the second processing system 600. This information is compressed, which can reduce the network transmission load during transmission. Similarly, the flashing pulse may be one of a plurality of sequentially arranged flashing pulses. The relevant information corresponding to each flashing pulse can be obtained in processing method 200.
[0145] Step 230: Determine the parameters to be determined based on the intermediate parameters and the correspondence, and determine whether the flashing pulse corresponds to a real single event using the objective function model based on the parameter determination.
[0146] Referring to the description in the reference processing method 100, the parameters to be determined (e.g., a and c) can be determined based on Equations 16 and 17. Compared to the second processing system 600 fitting the objective function model based on the original sampled data, the process of determining the parameters to be determined using the intermediate parameters based on the correspondence will consume less computational resources, and the calculation process is simpler, which is beneficial to reducing the computational load.
[0147] Understandably, during pulse detection, it is necessary to distinguish the scintillation pulses generated by the radiation detection device to determine the scintillation pulse corresponding to a real single event. In PET detection, the energy of a pair of gamma photons generated by annihilation is approximately 511 keV. By comparing the energy information of the scintillation pulse, including whether the energy value is equal to or within an error range of 511 keV, or by determining whether the energy value of the scintillation pulse is within a preset energy range including 511 keV, it can be determined whether the scintillation pulse corresponds to a real single event. For example, it can be determined whether the energy of the scintillation pulse is within the range of 431 keV-1000 keV. If so, the scintillation pulse can be determined to correspond to a real single event. The energy value of the scintillation pulse can be obtained by integrating the curve corresponding to the objective function model with defined parameters.
[0148] Step 240: Determine the target time corresponding to the flashing pulse based on the target compression time, and determine the time information of the real single event based on the target time.
[0149] In some embodiments, after determining that the flashing pulse corresponds to a real single event, the acquired target compressed time can be restored to determine the target time. For example, the compressed first time component in the target compressed time can be restored to the uncompressed first time component. This restored target time is then combined with the second time component.
[0150] When the target compression time is obtained based on the first compression method, a prior first time component and the first time component can be acquired, and the sum of the prior first time component and the compressed first time component is designated as the first time component. The prior first time component corresponds to the prior target time of the prior flashing pulse in order. For example, assuming relevant information for 10 flashing pulses is acquired, the target time corresponding to the first flashing pulse in the order is not compressed and remains unchanged. The corresponding first time component is T1. The compressed first time component corresponding to the second-ranked flash pulse is ΔT2, where ΔT2 = T2 - T1. The sum of the first time component and the compressed first time component, T1 + ΔT2, can be used as the first time component T2 of the target time corresponding to the recovered second-ranked flash pulse. Similarly, the first time component T3 of the target time corresponding to the third-ranked flash pulse is T3 = T2 + ΔT3 = T1 + ΔT2 + ΔT3, the first time component T4 of the target time corresponding to the fourth-ranked flash pulse is T4 = T3 + ΔT4 = T1 + ΔT2 + ΔT3 + ΔT4, ..., the first time component T of the target time corresponding to the tenth-ranked flash pulse is T1. 10 =T9+ΔT 10 =T1+ΔT2+ΔT3+ΔT4+ΔT5+ΔT6+ΔT7+ΔT8+ΔT9+ΔT 10 .
[0151] When the target compression time is obtained based on the second compression method, the multiple relationship between the first time component and the bit width corresponding to the predetermined byte length can be obtained, and the first time component is determined based on the bit width, the multiple relationship, and the compressed first time component. For example, assuming the multiple relationship between the first time component of the target time and the time bit width (e.g., 83ms) corresponding to the predetermined byte length (e.g., 3 bytes) is 0, that is, the first time component of the target time corresponding to the flashing pulse is less than 83ms. This indicates that the first time component is not compressed and is directly contained within the predetermined byte length. Therefore, the compressed first time component does not need to be changed and is directly used as the recovered first time component. Assuming the multiple relationship is 1, that is, the first time component of the target time corresponding to the flashing pulse is greater than 83ms and less than 2*83ms = 166ms. Based on the compression method, the compressed first time component ΔT is the value obtained by subtracting 83ms. Therefore, the recovered first time component T is 83ms + ΔT. If the multiple relationship is 2, then the recovered first time component T is 2*83ms + ΔT. And so on.
[0152] When the target compression time is obtained based on the third compression method, the number of bytes corresponding to the preceding first time component can be obtained, and the first time component is determined based on the number of bytes corresponding to the preceding first time component and the compressed first time component. The preceding first time component corresponds to the preceding target time of the preceding flashing pulse in order. For example, assuming that the relevant information of multiple flashing pulses is obtained, for the flashing pulse that is first in the order, its corresponding target time is not compressed (that is, the compressed first time component is the same as the uncompressed first time component), and the number of bytes corresponding to the first time component is AA, BB, CC, DD, EE. For the flashing pulse that is second in the order, the number of bytes corresponding to the compressed first time component is FF, GG. According to the third compression method, the first three bytes of the number of bytes corresponding to the compressed first time component of the second-order flashing pulse are the same as the first three bytes of the number of bytes corresponding to the compressed first time component of the first-order flashing pulse. Therefore, the first time component of the second-order flashing pulse is AA, BB, CC, FF, GG. If the third flash pulse in the sequence has the following byte counts in its compressed first time component: JJ, KK, LL, HH, then its first byte count is the same as that of the second flash pulse in the sequence, which is AA. Therefore, its corresponding first time component is AA, JJ, KK, LL, HH, and so on.
[0153] In some embodiments, once the target time of the flashing pulse is determined, it can be compared with the first trigger time corresponding to all time events. If the difference between the target time and the first trigger time is within a preset time range, for example, 50 ns, the first trigger time can be considered as the time information of the actual single event corresponding to the flashing pulse.
[0154] It should be noted that the above-mentioned Figure 2 The descriptions of the various steps in this specification are for illustrative purposes only and do not limit the scope of this specification. Those skilled in the art can, under the guidance of this specification, [perform certain tasks / activities]. Figure 2 Various modifications and changes have been made to the steps described herein. However, these modifications and changes remain within the scope of this specification.
[0155] The scintillation pulse processing method disclosed in this application can calculate the energy and time information of the scintillation pulse based on the compressed sampled data, avoiding complex function fitting calculations, reducing computational resource consumption, reducing computation time, and improving computational efficiency.
[0156] Figure 5 This is an exemplary block diagram of a data processing system according to some embodiments of this specification. This data processing system can perform sampled data processing of flicker pulses. For example... Figure 5 As shown, the first data processing system 500 may include a sampling module 510, a first acquisition module 520, a conversion module 530, a compression module 540, and a transmission module 550.
[0157] The sampling module 510 can be used to perform multi-threshold sampling on the scintillation pulse according to step 110 as shown above, and acquire sampling data. The scintillation pulse can be acquired by a radiation detection device, such as a scintillation detector. The photoelectric conversion device of the scintillation detector can convert visible light signals into electrical signals, which are output as scintillation pulses through electronic devices connected to the photoelectric conversion device. When using multi-threshold sampling, multiple thresholds can be preset. The scintillation pulse is compared with the preset thresholds to obtain the time when the scintillation pulse crosses the threshold, and a threshold-time pair is formed with the corresponding threshold to generate the sampling data. The intervals between the multiple thresholds can be equal and can be determined based on empirical data and / or prior information about the scintillation pulse.
[0158] The first acquisition module 520 can be used to acquire, according to step 120 above, the correspondence between one or more parameters to be determined and one or more intermediate parameters of the target function model corresponding to the scintillation pulse. The scintillation pulse output by the radiation detection device can be shaped in a shaping circuit to obtain a waveform conforming to a Gaussian function model. The function model used to represent this waveform can be designated as the original function model of the scintillation pulse. The first acquisition module 520 can normalize the original function model to determine the target function model. The first acquisition module 520 can transform the target function model to acquire the correspondence between the variables of the target function model and one or more intermediate parameters. The first acquisition module 520 can perform data processing operations on the target function model to determine the correspondence. The mathematical processing operations can include at least logarithmic operations, parameter transformation, differentiation, and matrix transformation.
[0159] The conversion module 530 can be used to perform a reference transformation on the first sampling time when the flicker pulse in the sampled data first crosses the sampling threshold, based on the time reference data as described in step 130 above, to obtain the target time. The flicker pulse can be one of a plurality of flicker pulses arranged in sequence. For example, they can be sorted according to the first sampling time when they first cross the minimum sampling threshold, with the earlier first sampling time listed first. To match the energy event and time event corresponding to the flicker pulse, the conversion module 530 can place the time data corresponding to the energy event and the time data corresponding to the time event at the same timing starting point. For example, the conversion module 530 can subtract the first sampling time when the flicker pulse first crosses the minimum sampling threshold from the time reference data in the sampled data. The time reference data can be the first trigger time corresponding to the first time event among the multiple time events corresponding to multiple flicker pulses. The first time difference between the first sampling time and the first trigger time can be used as the target time corresponding to the flicker pulse after the reference transformation.
[0160] Compression module 540 can be used to compress the target time according to step 140 as shown above to obtain a target compressed time. The target time may include a first time component (also referred to as coarse time in this application) and a second time component (also referred to as fine time in this application). For the data compression of the target time, the first time component can be compressed to use fewer bytes to accommodate the compressed first time component. Compression module 540 can obtain a prior first time component and use a second time difference between the first time component and the prior first time component as the compressed first time component. The prior first time component corresponds to the prior target time of the prior flashing pulse in the order. Compression module 540 can also determine the size of the first time component and the time bit width corresponding to a predetermined byte length or an integer multiple of the time bit width. If the first time component is smaller than the time bit width, compression module 540 can use the predetermined byte length to accommodate the first time component. If the first time component is greater than the time bit width or an integer multiple of the time bit width, the compression module 540 can determine a third time difference between the first time component and the time bit width or an integer multiple of the time bit width as the compressed first time component, and use the predetermined byte length to accommodate the compressed first time component. The compression module 540 can also determine the byte difference between the first time component and a prior first time component, and compress the first time component based on the difference. The prior first time component corresponds to the prior target time of the prior flashing pulse in order. To obtain the difference, the compression module 540 can sequentially compare whether the number of bytes corresponding to the first time component and the prior first time component are the same. If they are the same, the compression module 540 can remove the first byte in the first time component. If they are different, the compression module 540 can stop the comparison and retain the current byte number and subsequent byte number corresponding to the first time component as the difference. The difference is then designated as the compressed first time component.
[0161] The transmission module 550 can be used to transmit the target compression time, the intermediate parameters, and the correspondence to an external device according to step 150 as shown above. This allows the external device to determine the parameters to be determined in the objective function model based on the intermediate parameters and the correspondence, and to determine the energy information and / or time information of the flicker pulse based on the parameters, the objective function model, and the target compression time. The intermediate parameters transmitted by the transmission module 550 can significantly reduce the amount of data transmitted, thereby greatly reducing network load. External devices, such as computers and servers, can directly utilize the correspondence—that is, the correspondence between the intermediate parameters and the parameters to be determined in the objective function model of the flicker pulse—based on one or more received intermediate parameters, consuming minimal computing resources to determine the specific expression of the objective function model of the flicker pulse. Integration can then be performed to obtain the energy value of the flicker pulse. Simultaneously, the target compression time can be restored to the target time of the flicker pulse, and compared with the first trigger time of all simultaneously acquired time events to determine the time information of the time event corresponding to the flicker pulse.
[0162] For further descriptions of the above modules, please refer to the flowchart section of this application, such as... Figure 1 .
[0163] Figure 6 This is an exemplary block diagram of another data processing system according to some embodiments of this specification. This data processing system can perform sampled data processing of flicker pulses. For example... Figure 6 As shown, the second data processing system 600 may include a second acquisition module 610, a third acquisition module 620, a judgment module 630, and a determination module 640.
[0164] The second acquisition module 610 can be used to acquire, according to step 210 above, the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse, as well as the intermediate parameters.
[0165] The third acquisition module 620 can be used to acquire the target compression time corresponding to the first sampling time when the flash pulse first crosses the sampling threshold, according to step 220 as shown above.
[0166] The determination module 630 can be used to determine the parameter to be determined based on the intermediate parameters and the correspondence as described in step 230 above, and to determine whether the flashing pulse corresponds to a real single event based on the objective function model determined by the parameter. The process of determining the parameter to be determined using the intermediate parameters and the correspondence consumes fewer computational resources and is simpler, thus reducing the computational load. The determination module 630 can obtain the energy value of the flashing pulse as the energy information by integrating the curve corresponding to the objective function model determined by the parameter.
[0167] The determining module 640 can be used to determine the target time corresponding to the flashing pulse based on the target compression time according to step 240 as shown above, and to determine the time information of the real single event based on the target time. The determining module 640 can recover the acquired target compression time to determine the target time. The determining module 640 can acquire a prior first time component and a first time component, and designate the sum of the prior first time component and the compressed first time component as the first time component. The prior first time component corresponds to the prior target time of the prior flashing pulse in order. The determining module 640 can also acquire the multiple relationship between the first time component and the bit width corresponding to a predetermined byte length, and determine the first time component based on the bit width, the multiple relationship, and the compressed first time component. The determining module 640 can also acquire the multiple byte counts corresponding to the prior first time component, and determine the first time component based on the multiple byte counts corresponding to the prior first time component and the compressed first time component. The prior first time component corresponds to the prior target time of the prior flashing pulse in order. Once the target time of the flashing pulse is determined, it can be compared with the first trigger time corresponding to all time events. The determination module 640 can compare the target time with the first trigger time corresponding to all time events. If the difference between the target time and the first trigger time is within a preset time range, for example, 50 ns, the first trigger time can be considered the time information of the actual single event corresponding to the flashing pulse.
[0168] For further descriptions of the above modules, please refer to the flowchart section of this application, for example... Figures 1-2 .
[0169] It should be understood that Figure 5 and Figure 6The systems and modules shown can be implemented in various ways. For example, in some embodiments, the systems and modules can be implemented by hardware, software, or a combination of both. The hardware portion can be implemented using dedicated logic; the software portion can be stored in memory and executed by an appropriate instruction execution system, such as a microprocessor or dedicated-design hardware. Those skilled in the art will understand that the methods and systems described above can be implemented using computer-executable instructions and / or included in processor control code, for example, on a carrier medium such as a disk, CD, or DVD-ROM, a programmable memory such as read-only memory (firmware), or a data carrier such as an optical or electronic signal carrier. The systems and modules of this specification can be implemented not only by hardware circuits such as very large-scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, or programmable hardware devices such as field-programmable gate arrays, programmable logic devices, etc., but also by software, for example, executed by various types of processors, or by a combination of the aforementioned hardware circuits and software (e.g., firmware).
[0170] It should be noted that the above description of the modules is for convenience only and should not be construed as limiting this specification to the embodiments described. It is understood that those skilled in the art, after understanding the principles of the system, may arbitrarily combine the modules or construct subsystems connected to other modules without departing from these principles. For example, modules may share a single storage module, or each module may have its own separate storage module. Such modifications are all within the scope of this specification.
[0171] Figure 7 This is an exemplary block diagram of a processing device according to some embodiments of this application. The processing device 700 may include any components used to implement the systems described in the embodiments of this application. For example, the processing device 700 may be implemented using hardware, software programs, firmware, or a combination thereof. For example, the processing device 700 may implement a first data processing system 500 and a second data processing system 600. For convenience, only one processing device is shown in the figure; however, the computing functions described in the embodiments of this application can be implemented in a distributed manner by a set of similar platforms to distribute the system's processing load.
[0172] In some embodiments, the processing device 700 may include a processor 710, a memory 720, an input / output component 730, and a communication port 740. In some embodiments, the processor (e.g., CPU) 710 may execute program instructions as one or more processors. In some embodiments, the memory 720 includes different forms of program memory and data memory, such as a hard disk, read-only memory (ROM), random access memory (RAM), etc., for storing a wide variety of data files processed and / or transmitted by a computer. In some embodiments, the input / output component 730 may be used to support input / output between the processing device 1000 and other components. In some embodiments, the communication port 740 may be connected to a network for data communication. Exemplary processing devices may include program instructions executed by the processor 710 stored in read-only memory (ROM), random access memory (RAM), and / or other types of non-transitory storage media. The methods and / or processes of the embodiments of this specification may be implemented as program instructions. The processing device 700 may also receive programs and data disclosed in this application via network communication.
[0173] For ease of understanding, Figure 7 Only one processor is illustrated in this specification. However, it should be noted that the processing device 700 in the embodiments of this specification may include multiple processors, and therefore the operations and / or methods described in the embodiments of this specification that are implemented by one processor may also be implemented jointly or independently by multiple processors. For example, if in this specification, the processor of the processing device 700 executes steps A and B, it should be understood that steps A and B may also be executed jointly or independently by two different processors of the processing device 700 (e.g., the first processor executes step A, the second processor executes step B, or the first and second processors jointly execute steps A and B).
[0174] The scintillation pulse processing method provided in this application can be specifically used in photon detection and is applicable to various fields, such as medical imaging technology, high-energy physics, lidar, autonomous driving, precision analysis, and optical communication. In a specific example, the scintillation pulse processing method, apparatus, device, and storage medium provided in this application can be applied to positron emission tomography (PET). In a PET system, photon data can be acquired using the scheme described in the embodiments of this application, and then image reconstruction can be performed.
[0175] The basic concepts have been described herein. It is obvious that the detailed disclosure above is merely illustrative and does not constitute a limitation of this specification. Although not explicitly stated herein, various modifications, improvements, and corrections may be made to this specification by those skilled in the art. Such modifications, improvements, and corrections are suggested in this specification and therefore remain within the spirit and scope of the exemplary embodiments described herein.
[0176] Furthermore, this specification uses specific terms to describe embodiments thereof. For example, "an embodiment," "one embodiment," and / or "some embodiments" refer to a particular feature, structure, or characteristic associated with at least one embodiment of this specification. Therefore, it should be emphasized and noted that references to "an embodiment," "one embodiment," or "an alternative embodiment" in different locations throughout this specification do not necessarily refer to the same embodiment. Moreover, certain features, structures, or characteristics in one or more embodiments of this specification can be appropriately combined.
[0177] Furthermore, those skilled in the art will understand that various aspects of this specification can be described and illustrated in several patentable ways or situations, including any new and useful combination of processes, machines, products, or substances, or any new and useful improvements thereof. Accordingly, various aspects of this specification can be implemented entirely by hardware, entirely by software (including firmware, resident software, microcode, etc.), or by a combination of hardware and software. All of the above hardware or software may be referred to as a “data block,” “module,” “engine,” “unit,” “component,” or “system.” Furthermore, various aspects of this specification may be represented as a computer product located on one or more computer-readable media, including computer-readable program code.
[0178] Computer storage media may contain a propagated data signal containing computer program code, for example, on baseband or as part of a carrier wave. This propagated signal may take various forms, including electromagnetic, optical, and suitable combinations thereof. Computer storage media can be any computer-readable medium other than a computer-readable storage medium, which can be connected to an instruction execution system, apparatus, or device to enable communication, propagation, or transmission of a program for use. The program code located on the computer storage medium can be propagated through any suitable medium, including radio, cable, fiber optic cable, RF, or similar media, or any combination of the above media.
[0179] The computer program code required for the operation of each part of this manual can be written in any one or more programming languages, including object-oriented programming languages such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB.NET, Python, etc.; conventional procedural programming languages such as C, Visual Basic, Fortran 3003, Perl, COBOL 3002, PHP, ABAP; dynamic programming languages such as Python, Ruby, and Groovy; or other programming languages. This program code can run entirely on the user's computer, or as a standalone software package on the user's computer, or partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter case, the remote computer can be connected to the user's computer through any network, such as a local area network (LAN) or wide area network (WAN), or connected to an external computer (e.g., via the Internet), or in a cloud computing environment, or used as a service such as Software as a Service (SaaS).
[0180] Furthermore, unless expressly stated in the claims, the order of processing elements and sequences, the use of numbers and letters, or other names described in this specification are not intended to limit the order of the processes and methods described herein. Although various examples have been discussed in the foregoing disclosure of some embodiments of the invention that are currently considered useful, it should be understood that such details are for illustrative purposes only, and the appended claims are not limited to the disclosed embodiments; rather, the claims are intended to cover all modifications and equivalent combinations that conform to the spirit and scope of the embodiments described herein. For example, while the system components described above can be implemented using hardware devices, they can also be implemented solely using software solutions, such as installing the described system on existing servers or mobile devices.
[0181] Similarly, it should be noted that, in order to simplify the description disclosed herein and thus aid in the understanding of one or more embodiments of the invention, the foregoing description of embodiments in this specification may sometimes combine multiple features into a single embodiment, drawing, or description thereof. However, this method of disclosure does not imply that the subject matter of this specification requires more features than those mentioned in the claims. In fact, the embodiments contain fewer features than all the features of a single embodiment disclosed above.
[0182] In some embodiments, numbers describing the quantity of components and attributes are used. It should be understood that such numbers used in the description of embodiments are modified in some examples with the terms "approximately," "approximately," or "generally." Unless otherwise stated, "approximately," "approximately," or "generally" indicates that the numbers are allowed to vary by ±20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximate values, which may be changed depending on the characteristics required by individual embodiments. In some embodiments, numerical parameters should take into account specified significant digits and employ a general method of digit reservation. Although the numerical ranges and parameters used to confirm their breadth of range in some embodiments of this specification are approximate values, in specific embodiments, such values are set as precisely as feasible.
[0183] For each patent, patent application, patent application publication, and other material, such as articles, books, specifications, publications, and documents, referenced in this specification, the entire contents of which are incorporated herein by reference. This excludes historical application documents that are inconsistent with or conflict with the content of this specification, as well as documents that limit the broadest scope of the claims in this specification (currently or subsequently appended to this specification). It should be noted that in the event of any inconsistency or conflict between the descriptions, definitions, and / or terminology used in the supplementary materials to this specification and the content of this specification, the descriptions, definitions, and / or terminology used in this specification shall prevail.
[0184] Finally, it should be understood that the embodiments described in this specification are merely illustrative of the principles of the embodiments described herein. Other variations may also fall within the scope of this specification. Therefore, alternative configurations of the embodiments described herein are intended to be illustrative rather than limiting, and should be considered consistent with the teachings of this specification. Accordingly, the embodiments described herein are not limited to those explicitly introduced and described herein.
Claims
1. A method for processing flicker pulses, characterized in that, The processing method includes: The flicker pulses are sampled using multiple thresholds to obtain the sampled data; Obtain the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse; wherein the intermediate parameters are transformed based on the sampled data; Based on the time reference data, the first sampling time when the flicker pulse in the sampled data first crosses the sampling threshold is transformed to obtain the target time; Compress the target time to obtain the target compressed time; The target compression time, the intermediate parameters, and the correspondence are transmitted to an external device so that the external device can determine the parameters to be determined of the objective function model based on the intermediate parameters and the correspondence, and determine the energy information and / or time information of the flashing pulse based on the objective function model determined by the parameters and the target compression time. The flicker pulse is one of multiple flicker pulses arranged sequentially based on the first sampling time of the first time the sampling threshold is crossed, corresponding to a time event and an energy event. The time reference data includes the first trigger time corresponding to the first time event. Acquiring the target time includes: The first time difference between the first sampling time and the first trigger time is designated as the target time.
2. The method for processing flicker pulses according to claim 1, characterized in that, Obtain the objective function model corresponding to the flicker pulse, including: Obtain the original function model, which conforms to a Gaussian function; The original function model is normalized to obtain the target function model.
3. The method for processing flicker pulses according to claim 1, characterized in that, The step of obtaining the correspondence between the parameter to be determined and the intermediate parameters includes: Mathematical processing operations are performed on the objective function model to determine the correspondence and the transformation relationship between the intermediate parameters and the sampled data; wherein the mathematical processing operations include at least taking the logarithm, parameter transformation, differentiation, and matrix transformation.
4. The method for processing flicker pulses according to claim 1, characterized in that, The target time includes a first time component and a second time component, and the data compression of the target time includes data compression of the first time component, including: Obtain the first time sequence corresponding to the first target time in the order of the flashing pulses; A second time difference between the first time component and the prior first time component is designated as the compressed first time component; wherein the number of bytes used to accommodate the compressed first time component is less than the number of bytes used to accommodate the first time component.
5. The method for processing flicker pulses according to claim 1, characterized in that, The target time includes a first time component and a second time component, and the data compression of the target time includes data compression of the first time component, including: Determine the size between the first time component and the time bit width corresponding to the predetermined byte length, or an integer multiple of the time bit width; If the first time component is smaller than the time bit width, the first time component is accommodated using the predetermined byte length; If the first time component is greater than the time bit width or an integer multiple of the time bit width, a third time difference between the first time component and the time bit width or an integer multiple of the time bit width is determined as the compressed first time component, and the compressed first time component is accommodated using the predetermined byte length.
6. The method for processing flicker pulses according to claim 1, characterized in that, The target time includes a first time component and a second time component, and the data compression of the target time includes data compression of the first time component, including: Determine the difference between the bytes corresponding to the first time component and the prior first time component, wherein the prior first time component corresponds to the prior target time of the prior flashing pulse in terms of sorting; Based on the aforementioned differences, the first time component is compressed.
7. The method for processing flicker pulses according to claim 6, characterized in that, The bytes are represented by a number of bytes arranged in sequence; Determining the difference includes: Compare sequentially whether the number of bytes corresponding to the first time component and the prior first time component are the same; If they are the same, remove the number of bytes that appear first in the sorted sequence corresponding to the first time period; If they are different, stop the comparison and retain the current byte count and subsequent byte count corresponding to the first time component, as the difference.
8. The method for processing flicker pulses according to claim 7, characterized in that, Based on the aforementioned differences, data compression is performed on the first time component, including: The difference is specified to represent the first time composition after compression.
9. A method for processing flicker pulses, characterized in that, The processing method includes: Obtain the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse, and the intermediate parameters; Obtain the target compression time corresponding to the first sampling time when the flash pulse first crosses the sampling threshold; Based on the intermediate parameters and the correspondence, the parameters to be determined are determined, and the objective function model based on the parameter determination is used to determine whether the flashing pulse corresponds to a real single event. If so, determine the target time corresponding to the flashing pulse based on the target compression time, and determine the time information of the real single event based on the target time; Wherein, the flashing pulse is one of a plurality of flashing pulses arranged in sequence based on the first sampling time of the first time the sampling threshold is first crossed, and the target compression time is obtained by compressing the target time corresponding to the flashing pulse; wherein, the target time includes a first time component and a second time component, and the compressed first time component obtained by compressing the first time component of the target time is combined with the second time component to constitute the target compression time.
10. The method for processing flicker pulses according to claim 9, characterized in that, Obtain the objective function model corresponding to the flicker pulse, including: Obtain the original function model, which conforms to a Gaussian function; The original function model is normalized to obtain the target function model.
11. The method for processing scintillation pulses according to claim 10, characterized in that, Determining whether the flashing pulse corresponds to a real single event based on a parameter-defined objective function model includes: The energy value of the scintillation pulse is determined by integrating the objective function model with defined parameters. Determine whether the energy value is within a preset energy range; If so, determine that the flashing pulse corresponds to a real single event.
12. The method for processing flicker pulses according to claim 9, characterized in that, Determining the target time corresponding to the flash pulse based on the target compression time includes: Obtain the first time sequence corresponding to the first target time in the order of the flashing pulses; The sum of the prior first time component and the compressed first time component is designated as the first time component.
13. The method for processing flicker pulses according to claim 9, characterized in that, Determining the target time corresponding to the flash pulse based on the target compression time includes: Obtain the multiple relationship between the first time component and the time bit width corresponding to the predetermined byte length; The first time composition is determined based on the time bit width, the multiple relationship, and the compressed first time composition.
14. The method for processing flicker pulses according to claim 9, characterized in that, Determining the target time corresponding to the flash pulse based on the target compression time includes: Obtain the number of bytes corresponding to the first time component, wherein the first time component corresponds to the first target time of the first flashing pulse in terms of sorting; The first time composition is determined based on the number of bytes corresponding to the prior first time composition and the compressed first time composition.
15. A processing device for scintillation pulses, characterized in that, The processing device includes: The sampling module is configured to perform multi-threshold sampling on the flicker pulses to acquire sampling data. The first acquisition module is configured to acquire the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse; wherein the intermediate parameters are based on the sampled data. The conversion module is configured to perform a reference transformation on the first sampling time when the flicker pulse included in the sampled data first crosses the sampling threshold, based on time reference data, to obtain the target time; The compression module is configured to compress the target time and obtain the target compressed time. The transmission module is configured to transmit the target compression time, the intermediate parameters, and the correspondence to an external device, so that the external device can determine the parameters to be determined of the objective function model based on the intermediate parameters and the correspondence, and determine the energy information and / or time information of the flashing pulse based on the objective function model determined by the parameters and the target compression time. The flicker pulse is one of multiple flicker pulses arranged sequentially based on the first sampling time of the first time the sampling threshold is crossed, corresponding to a time event and an energy event. The time reference data includes the first trigger time corresponding to the first time event. To obtain the target time, the conversion module is configured as follows: The first time difference between the first sampling time and the first trigger time is designated as the target time.
16. The flash pulse processing apparatus according to claim 15, characterized in that, The first acquisition module is configured to acquire the objective function model corresponding to the flicker pulse, including: Obtain the original function model, which conforms to a Gaussian function; The original function model is normalized to obtain the target function model.
17. The flash pulse processing apparatus according to claim 15, characterized in that, To obtain the correspondence between the parameters to be determined and the intermediate parameters, the first acquisition module is configured as follows: Mathematical processing operations are performed on the objective function model to determine the correspondence and the transformation relationship between the intermediate parameters and the sampled data; wherein the mathematical processing operations include at least taking the logarithm, parameter transformation, differentiation, and matrix transformation.
18. The flash pulse processing apparatus according to claim 15, characterized in that, The target time includes a first time component and a second time component. Data compression of the target time includes data compression of the first time component. The compression module is configured as follows: Obtain the first time sequence corresponding to the first target time in the order of the flashing pulses; A second time difference between the first time component and the prior first time component is designated as the compressed first time component; wherein the number of bytes used to accommodate the compressed first time component is less than the number of bytes used to accommodate the first time component.
19. The flash pulse processing apparatus according to claim 15, characterized in that, The target time includes a first time component and a second time component. Data compression of the target time includes data compression of the first time component. The compression module is configured as follows: Determine the size between the first time component and the time bit width corresponding to the predetermined byte length, or an integer multiple of the time bit width; If the first time component is smaller than the time bit width, the first time component is accommodated using the predetermined byte length; If the first time component is greater than the time bit width or an integer multiple of the time bit width, a third time difference between the first time component and the time bit width or an integer multiple of the time bit width is determined as the compressed first time component, and the compressed first time component is accommodated using the predetermined byte length.
20. The flash pulse processing apparatus according to claim 15, characterized in that, The target time includes a first time component and a second time component. Data compression of the target time includes data compression of the first time component. The compression module is configured as follows: Determine the difference between the bytes corresponding to the first time component and the prior first time component, wherein the prior first time component corresponds to the prior target time of the prior flashing pulse in terms of sorting; Based on the aforementioned differences, the first time component is compressed.
21. The flash pulse processing apparatus according to claim 20, characterized in that, The bytes are represented by a number of bytes arranged in sequence; to determine the difference, the compression module is configured as follows: Compare sequentially whether the number of bytes corresponding to the first time component and the prior first time component are the same; If they are the same, remove the number of bytes that appear first in the sorted sequence corresponding to the first time period; If they are different, stop the comparison and retain the current byte count and subsequent byte count corresponding to the first time component, as the difference.
22. The flash pulse processing apparatus according to claim 21, characterized in that, To compress the data of the first time component based on the aforementioned differences, the compression module is configured as follows: The difference is specified to represent the first time composition after compression.
23. A processing device for flicker pulses, characterized in that, The processing device includes: The second acquisition module is configured to acquire the correspondence between one or more parameters to be determined and one or more intermediate parameters of the objective function model corresponding to the flashing pulse, as well as the intermediate parameters; The third acquisition module is configured to acquire the target compression time corresponding to the first sampling time when the flash pulse first crosses the sampling threshold; The determination module is configured to determine the parameter to be determined based on the intermediate parameters and the correspondence, and to determine whether the flashing pulse corresponds to a real single event based on the objective function model determined by the parameter. The determination module is configured to determine the target time corresponding to the flashing pulse based on the target compression time when the flashing pulse corresponds to a real single event, and to determine the time information of the real single event based on the target time; Wherein, the flashing pulse is one of a plurality of flashing pulses arranged in sequence based on the first sampling time of the first time the sampling threshold is first crossed, and the target compression time is obtained by compressing the target time corresponding to the flashing pulse; wherein, the target time includes a first time component and a second time component, and the compressed first time component obtained by compressing the first time component of the target time is combined with the second time component to constitute the target compression time.
24. The flash pulse processing apparatus according to claim 23, characterized in that, The second acquisition module is configured to acquire the objective function model corresponding to the flicker pulse, including: Obtain the original function model, which conforms to a Gaussian function; The original function model is normalized to obtain the target function model.
25. The flash pulse processing apparatus according to claim 24, characterized in that, To determine whether the flashing pulse corresponds to a real single event based on the objective function model determined by the parameters, the determining module is configured as follows: The energy value of the scintillation pulse is determined by integrating the objective function model with defined parameters. Determine whether the energy value is within a preset energy range; If so, determine that the flashing pulse corresponds to a real single event.
26. The flash pulse processing apparatus according to claim 23, characterized in that, To determine the target time corresponding to the flashing pulse based on the target compression time, the determining module is configured as follows: Obtain the first time sequence corresponding to the first target time in the order of the flashing pulses; The sum of the prior first time component and the compressed first time component is designated as the first time component.
27. The flash pulse processing apparatus according to claim 23, characterized in that, To determine the target time corresponding to the flashing pulse based on the target compression time, the determining module is configured as follows: Obtain the multiple relationship between the first time component and the time bit width corresponding to the predetermined byte length; The first time composition is determined based on the time bit width, the multiple relationship, and the compressed first time composition.
28. The flash pulse processing apparatus according to claim 23, characterized in that, To determine the target time corresponding to the flashing pulse based on the target compression time, the determining module is configured as follows: Obtain the number of bytes corresponding to the first time component, wherein the first time component corresponds to the first target time of the first flashing pulse in terms of sorting; The first time composition is determined based on the number of bytes corresponding to the prior first time composition and the compressed first time composition.
29. A processing device, characterized in that, include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the steps of the processing method as described in any one of claims 1-14.
30. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the steps of the processing method as described in any one of claims 1-14.