Processing method and device of flicker pulse, digital device and storage medium
By acquiring the function model of the scintillation pulse and using multi-threshold sampling, the constituent energy values of the scintillation pulse are determined, solving the problem of photon energy counting deviation in photon counting CT detectors, and realizing the restoration of stacked pulses and accurate energy calculation.
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-05-12
AI Technical Summary
Existing photon counting CT detectors cannot accurately calculate the energy of a single photon when detecting high-energy particles/rays, and are prone to pileup phenomena that lead to energy counting errors.
By acquiring the function model of the flickering pulse, multiple thresholds are preset for multi-threshold sampling, the correspondence between threshold duration and pulse energy is determined, stacked pulses are identified and decomposed into the energy values of the constituent pulses, and the pulse energy is calculated by integration using the sampled data and the function model.
It enables the reconstruction and accurate calculation of stacked pulses, solving technical problems that cannot be solved in the prior art, and realizing accurate energy calculation and energy spectrum plotting of a single photon.
Smart Images

Figure CN116203613B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing, and in particular to a method, apparatus, digitizing device, and storage medium for processing flicker pulses. Background Technology
[0002] In high-energy particle / ray detection, photon-counting CT detectors directly convert detected high-energy particles / rays, such as X-rays, into electrical signals. By calculating the energy of each X-ray photon, the count of photons with different energies can be obtained.
[0003] The higher the X-ray energy, the larger the pulse amplitude. The lower the X-ray energy, the smaller the pulse amplitude. Photon-counting CT detectors count photons not by directly acquiring the X-ray energy, but by acquiring the number of photons in each energy range. The energy range count can be obtained by first testing the relationship between pulse amplitude and pulse energy using a high-speed oscilloscope. A comparison threshold is set for the pulse amplitude T corresponding to the energy value E; pulses exceeding this threshold are considered to have energy greater than E, and pulses below this threshold are considered to have energy less than E.
[0004] In photon counting CT, the pulse peak values T0, T1, T2, and T3 corresponding to four energies—25 keV, 50 keV, 75 keV, and 100 keV—are typically calculated first. The number of photons between T0 and T1, T1 and T2, T2 and T3, and those above T3 are then counted. This segmented energy photon counting is then achieved.
[0005] In existing technologies, a method can be used to count photons in segments by using a finite number of preset thresholds, but it cannot obtain the accurate energy of each photon, thus failing to achieve true photon counting. Furthermore, if the peak value of a pulse is at the critical point of the threshold, misjudgment of the photon energy segment may occur.
[0006] Furthermore, the photon counting CT detector detects a photon count of 10^9 cps / mm². Adjacent photon output pulses are highly likely to stack, resulting in a pileup phenomenon. One approach to address the pileup problem is to discard both photons involved in the pileup without attempting to distinguish and recover the two pulses. This is because after a pileup occurs, the pulses of the two photons merge into one, resulting in a larger energy pulse than usual, which can be discarded without participating in the counting. However, this approach clearly leads to inaccuracies in the counting of photons with different energies. Summary of the Invention
[0007] The technical problem to be solved by the embodiments of this application is how to accurately calculate the pulse energy generated by a single photon.
[0008] To address the aforementioned problems, this application discloses a method, apparatus, digitization device, and storage medium for processing flicker pulses.
[0009] According to a first aspect of this application, a method for processing flicker pulses is provided. The method includes: obtaining a function model corresponding to the flicker pulse, the function model being used to characterize the pulse waveform of the flicker pulse; presetting multiple thresholds, and performing multi-threshold sampling on the flicker pulse based on the thresholds to obtain sampled data; determining a correspondence table between pulse energy and threshold duration related to the thresholds; determining whether the flicker pulse is a stacked pulse based on the sampled data and the correspondence table; if so, determining the component energy values of the component pulses constituting the flicker pulse based on the sampled data and the function model.
[0010] According to some embodiments of this application, determining the correspondence table includes: acquiring multiple known pulses with known pulse energy; the known pulses are non-stacked pulses; performing multi-threshold sampling on the known pulses based on the threshold to determine a first time and a second time when the known pulses cross the threshold; determining the threshold duration based on the first time and the second time; and determining the correspondence table based on the multiple pulse energies and the multiple threshold durations.
[0011] According to some embodiments of this application, the correspondence table reflects the correspondence between the number of thresholds crossed by the known pulse, the pulse energy of the known pulse, and the first average threshold duration; the first average threshold duration includes the average value of the threshold durations corresponding to each threshold.
[0012] According to some embodiments of this application, the correspondence table reflects the correspondence between the threshold duration of the lowest threshold crossed by the known pulse and the pulse energy of the known pulse.
[0013] According to some embodiments of this application, the correspondence table reflects the correspondence between the threshold duration of the highest threshold crossed by the known pulse and the pulse energy of the known pulse.
[0014] According to some embodiments of this application, the correspondence table reflects the correspondence between the pulse energy of the known pulse and the second average threshold duration; the second average threshold duration includes the average value of the threshold durations corresponding to a preset number of thresholds crossed by the known pulse.
[0015] According to some embodiments of this application, determining whether the flashing pulse is a stacked pulse based on the sampled data and the correspondence table includes: determining a comparison threshold duration based on the sampled data; determining whether a first ratio between the comparison threshold duration and the threshold duration in the correspondence table is less than a preset ratio based on the comparison threshold duration and the correspondence table; and determining that the flashing pulse is a stacked pulse if the first ratio is greater than the preset ratio.
[0016] According to some embodiments of this application, determining the component energy values of the component pulses constituting the scintillation pulse based on the sampled data and the function model includes: determining the pulse waveforms of the first component pulse and the second component pulse constituting the scintillation pulse based on the sampled data and the function model; and determining the component energy values of the first component pulse and the second component pulse based on the pulse waveforms of the first component pulse and the second component pulse.
[0017] According to some embodiments of this application, the sampling data includes multiple first threshold-time pairs when the rising edge of the flashing pulse crosses multiple thresholds, and multiple second threshold-time pairs when the falling edge of the flashing pulse crosses multiple thresholds; the flashing pulse is composed of two target pulses stacked together; determining the pulse waveform of the first target pulse and the pulse waveform of the second target pulse includes: performing a fitting operation based on multiple first threshold-time pairs to determine a first expression of the function model to characterize the pulse waveform of the first component pulse; and performing a fitting operation based on multiple second threshold-time pairs to determine a second expression of the function model to characterize the pulse waveform of the second component pulse.
[0018] According to some embodiments of this application, the processing method further includes: integrating the first curve corresponding to the first expression to determine the first component energy value of the first component pulse; and integrating the second curve corresponding to the second expression to determine the second component energy value of the second component pulse.
[0019] According to some embodiments of this application, the processing method further includes: specifying the first component energy value and the second component energy value to participate in pulse counting and energy spectrum plotting.
[0020] According to some embodiments of this application, if the scintillation pulse is a non-stacked pulse, the processing method further includes: determining the target energy value of the scintillation pulse based on the sampled data and / or the correspondence table; and specifying the target energy value to participate in pulse counting and energy spectrum plotting.
[0021] According to some embodiments of this application, determining the target energy value of the scintillation pulse includes: performing a fitting operation based on the sampled data to determine the target expression of the function model; and integrating the target curve corresponding to the target expression to determine the target energy value.
[0022] According to some embodiments of this application, determining the target energy value of the flashing pulse includes: determining a target threshold duration based on the sampled data; determining a threshold duration in the correspondence table where a second ratio of the target threshold duration to the corresponding duration in the correspondence table is less than a preset ratio; and specifying the pulse energy corresponding to the threshold duration as the target energy value.
[0023] According to some embodiments of this application, determining the target energy value of the flashing pulse includes: determining a target threshold duration based on the sampled data; determining a relationship function between the pulse energy and the threshold duration based on the correspondence table; and determining the target energy value based on the target duration and the relationship function.
[0024] According to a second aspect of this application, a processing apparatus for flicker pulses is provided. The processing apparatus includes: an acquisition module configured to acquire a function model corresponding to the flicker pulse, the function model being used to characterize the pulse waveform of the flicker pulse; a sampling module configured to preset multiple thresholds and perform multi-threshold sampling on the flicker pulse based on the thresholds to acquire sampling data; a determination module configured to determine a correspondence table between pulse energy and threshold duration related to the thresholds; a judgment module configured to determine whether the flicker pulse is a stacked pulse based on the sampling data and the correspondence table; and a calculation module configured to, when the pulse is a stacked pulse, determine the component energy values of the component pulses constituting the flicker pulse based on the sampling data and the function model.
[0025] According to some embodiments of this application, in order to determine the correspondence table, the determining module is configured to: acquire multiple known pulses with known pulse energy; the known pulses are non-stacked pulses; perform multi-threshold sampling on the known pulses based on the threshold to determine a first time and a second time when the known pulses cross the threshold; determine the threshold duration based on the first time and the second time; and determine the correspondence table based on the multiple pulse energies and the multiple threshold durations.
[0026] According to some embodiments of this application, the correspondence table reflects the correspondence between the number of thresholds crossed by the known pulse, the pulse energy of the known pulse, and the first average threshold duration; the first average threshold duration includes the average value of the threshold durations corresponding to each threshold.
[0027] According to some embodiments of this application, the correspondence table reflects the correspondence between the threshold duration of the lowest threshold crossed by the known pulse and the pulse energy of the known pulse.
[0028] According to some embodiments of this application, the correspondence table reflects the correspondence between the threshold duration of the highest threshold crossed by the known pulse and the pulse energy of the known pulse.
[0029] According to some embodiments of this application, the correspondence table reflects the correspondence between the pulse energy of the known pulse and the second average threshold duration; the second average threshold duration includes the average value of the threshold durations corresponding to a preset number of thresholds crossed by the known pulse.
[0030] According to some embodiments of this application, in order to determine whether the flashing pulse is a stacked pulse based on the sampled data and the correspondence table, the determination module is configured to: determine a comparison threshold duration based on the sampled data; determine whether a first ratio between the comparison threshold duration and the threshold duration in the correspondence table is less than a preset ratio based on the comparison threshold duration and the correspondence table; if the first ratio is greater than the preset ratio, determine that the flashing pulse is a stacked pulse.
[0031] According to some embodiments of this application, in order to determine the component energy values of the component pulses constituting the scintillation pulse based on the sampled data and the function model, the calculation module is configured to: determine the pulse waveforms of the first component pulse and the second component pulse constituting the scintillation pulse based on the sampled data and the function model; and determine the component energy values of the first component pulse and the second component pulse based on the pulse waveforms of the first component pulse and the second component pulse.
[0032] According to some embodiments of this application, the sampling data includes multiple first threshold-time pairs when the rising edge of the flashing pulse crosses multiple thresholds, and multiple second threshold-time pairs when the falling edge of the flashing pulse crosses multiple thresholds; the flashing pulse is composed of two target pulses stacked together; to determine the pulse waveform of the first target pulse and the pulse waveform of the second target pulse, the calculation module is configured to: perform a fitting operation based on multiple first threshold-time pairs to determine a first expression of the function model to characterize the pulse waveform of the first component pulse; and perform a fitting operation based on multiple second threshold-time pairs to determine a second expression of the function model to characterize the pulse waveform of the second component pulse.
[0033] According to some embodiments of this application, the calculation module is further configured to: integrate the first curve corresponding to the first expression to determine the first component energy value of the first component pulse; and integrate the second curve corresponding to the second expression to determine the second component energy value of the second component pulse.
[0034] According to some embodiments of this application, the calculation module is further configured to: use the first component energy value and the second component energy value to participate in pulse counting and energy spectrum plotting.
[0035] According to some embodiments of this application, if the scintillation pulse is a non-stacked pulse, the calculation module is configured to: determine the target energy value of the scintillation pulse based on the sampled data and / or the correspondence table; and use the target energy value to participate in pulse counting and energy spectrum plotting.
[0036] According to some embodiments of this application, in order to determine the target energy value of a scintillation pulse, the calculation module is configured to: perform a fitting operation based on the sampled data to determine the target expression of the function model; and integrate the target curve corresponding to the target expression to determine the target energy value.
[0037] According to some embodiments of this application, in order to determine the target energy value of the flashing pulse, the calculation module is configured to: determine a target threshold duration based on the sampled data; determine a threshold duration in the correspondence table whose second ratio to the target threshold duration is less than a preset ratio based on the target threshold duration and the correspondence table; and designate the pulse energy corresponding to the threshold duration as the target energy value.
[0038] According to some embodiments of this application, in order to determine the target energy value of a flashing pulse, the calculation module is configured to: determine the target threshold duration based on the sampled data; determine the relationship function between the pulse energy and the threshold duration based on the correspondence table; and determine the target energy value based on the target duration and the relationship function.
[0039] According to a third 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, implements the steps of the processing method as described above.
[0040] According to a fourth aspect of this application, a computer-readable storage medium is provided. The storage medium stores a computer program, which, when executed by a processor, implements the steps of the processing method described above.
[0041] The processing method disclosed in this application can restore stacked pulses and perform accurate energy calculation and pulse counting on the restored pulses, avoiding miscounting of some pulses due to pulse stacking. It can also quickly determine the energy of non-stacked pulses. Attached Figure Description
[0042] 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:
[0043] Figure 1 This is an exemplary flowchart of a method for processing flashing pulses according to some embodiments of this application;
[0044] Figure 2 This is an exemplary schematic diagram illustrating the relationship between a flashing pulse and a threshold according to some embodiments of this application;
[0045] Figure 3 This is an exemplary schematic diagram of the target triangle shown according to some embodiments of this application;
[0046] Figure 4 This is an exemplary block diagram of a data processing system for processing flicker pulses according to some embodiments of this application;
[0047] Figure 5 This is an exemplary functional block diagram of a data processing system for processing flicker pulses, according to some embodiments of this application. Detailed Implementation
[0048] 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.
[0049] 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.
[0050] 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.
[0051] 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.
[0052] Figure 1 This 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 data processing system 300. For example, the processing method 100 can be stored in a storage device (such as the built-in storage unit of the data processing system 300 or an external storage device) in the form of a program or instructions, which, when executed, can implement the processing method 100. Figure 1 As shown, the processing method 100 may include the following operations.
[0053] Step 110: Obtain the function model corresponding to the flashing pulse.
[0054] In some embodiments, the scintillation pulses can be acquired by a radiation detection device, such as a semiconductor detector, including 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 semiconductor detector can directly convert detected high-energy particles (e.g., X-ray photons) into electrical signals, which are then output as scintillation pulses through electronic devices connected to the semiconductor detector.
[0055] It is known that the pulse waveform of any flicker pulse can be characterized by its shape. (Reference) Figure 2 , Figure 2 This is an exemplary schematic diagram of the pulse waveform of a flashing pulse according to some embodiments of this application. Figure 2 As shown, the flicker pulse waveform has a very narrow pulse width, including a rapidly rising edge and a rapidly falling edge. Simultaneously, the rise and fall times are extremely short. The flicker pulse waveform can be described by a mathematical function model, such as a double exponential function model, a Gaussian function model, or a Landau function model. Figure 2 The flicker pulse shown can be represented using a Gaussian function model:
[0056]
[0057] In some embodiments, the function model may be determined based on prior information. For example, a large number of high-energy particles / rays generated by a radiation source are collected by a digital oscilloscope, and a function model that the pulse waveform of the corresponding test pulse conforms to is obtained. Alternatively, the pulse waveform of the scintillation pulse is directly determined by collecting information of the scintillation pulse by a digital oscilloscope, and whether the pulse waveform of the scintillation pulse conforms to a certain type of function model is compared, and if it conforms, it can be used as the function model.
[0058] Step 120, preset multiple thresholds, and perform multi-threshold sampling on the scintillation pulse based on the thresholds to obtain sampling data.
[0059] In some embodiments, the multiple thresholds may be used to compare with the amplitude of the scintillation pulse to determine the time points when the scintillation pulse crosses the thresholds. The threshold-time pairs composed of these time points and the corresponding thresholds together form the sampling data. Based on the manifestation form (electrical pulse) of the scintillation pulse, the threshold may be a voltage threshold or a current threshold. The intervals between the preset multiple thresholds may also be equal or unequal. For example, the multiple thresholds form an arithmetic sequence or a geometric sequence, or the magnitude of the threshold in the subsequent item sorted by magnitude is the sum of the magnitudes of the thresholds in the previous two items. The present application does not make specific limitations.
[0060] See Figure 3 , Figure 3 is an exemplary schematic diagram of the relationship between the scintillation pulse and the threshold shown in some embodiments of the present application. Figure 3 It has been assumed in Figure 3 that the scintillation pulse has a stacking phenomenon and is a stacked pulse (the scintillation pulse is formed by the superposition of two pulses shown by the dotted line). As 41 shown, the four set voltage thresholds include V1, V2, V3, and V4 (V1 < V2 < V3 < V4). In the rising stage, the rising edge of the scintillation pulse first crosses the voltage threshold V1 from bottom to top, and the corresponding jump time is t 42 . Subsequently, the rising edge of the scintillation pulse crosses the voltage threshold V2 from bottom to top, and the corresponding jump time is t 43 . And so on, the rising edge of the scintillation pulse crosses the voltage threshold V3 from bottom to top at the jump time t 44 , and crosses the voltage threshold V 45 at the jump time t4 from bottom to top. In the falling stage, the falling edge of the scintillation pulse first crosses the voltage threshold V4 from top to bottom, and the corresponding jump time is t 46 . Subsequently, the falling edge of the scintillation pulse crosses the voltage threshold V3 from top to bottom, and the corresponding jump time is t 47Crossing the voltage threshold V2 from top to bottom, in the transition time t 48 The voltage threshold V1 is crossed from top to bottom. Each voltage threshold corresponds to two transition times, forming two threshold-time pairs. All eight threshold-time pairs corresponding to the four thresholds constitute the sampled data, represented as:
[0061] {(V1,t 41 ),(V2,t 42 ),(V3,t 43 ),(V4,t 44 ),(V4,t 45 ),(V3,t 46 ),(V2,t 47 ),(V1,t 48 )}.
[0062] It should be noted that the flicker pulse may not cross all thresholds. If the flicker pulse crosses only one threshold (i.e., the voltage threshold V1), then the sampled data can be {(V1, t...} 11 ),(V1,t 12 If the flicker pulse crosses two thresholds (i.e., voltage thresholds V1 and V2), then the sampled data can be {(V1, t}. 21 ),(V2,T 22 ),(V2,t 23 ),(V1,t 24 If the flicker pulse crosses three thresholds (i.e., voltage thresholds V1, V2, and V3), then the sampled data can be {(V1, T}. 31 ),(V2,t 32 ),(V3,T 33 ),(V3,t 34 ),(V2,T 35 ),(V1,t 36 )}.
[0063] Step 130: Determine the correspondence table between the pulse energy and the threshold duration related to the threshold.
[0064] In some embodiments, to determine the correspondence table, multiple known pulses with known pulse energy (these known pulses are non-stacked pulses) can be obtained. Then, based on the threshold, these known pulses are subjected to multi-threshold sampling to determine the two time points at which the known pulses cross the threshold. The time interval between these two time points can be the duration of the threshold. The correspondence table can reflect the mapping relationship between the pulse energy of the pulse signal and the threshold duration under different thresholds.
[0065] In some embodiments, the multi-threshold sampling can be illustrated as in step 120 above, taking the known pulse crossing a threshold as an example. Assuming a known pulse has crossed threshold V3, the transition time of its rising edge crossing V3 can be referred to as the first time, and the transition time of its falling edge crossing V3 can be referred to as the second time. The time difference between the second time and the first time can be the threshold duration corresponding to threshold V3. The threshold durations for other thresholds are similar.
[0066] In some embodiments, the correspondence table can reflect the correspondence between the number of thresholds crossed by the known pulse, the pulse energy of the known pulse, and the first average threshold duration. The first average threshold duration can be the average of the threshold durations corresponding to all thresholds crossed by the known pulse. If the known pulse crosses only one threshold, the threshold duration corresponding to that threshold can be recorded. If the known pulse crosses multiple thresholds, the average of the threshold durations corresponding to each threshold can be recorded. Assume four thresholds V1, V2, V3, and V4 are preset. If a known pulse with pulse energy E1 crosses only V1, corresponding to only one threshold duration TOT1, then the correspondence table can record: the number of thresholds crossed is 1, TOT = TOT1, and pulse energy E = E1. If a known pulse with pulse energy E2 crosses both V1 and V2, and the threshold durations corresponding to the two thresholds are TOT1 and TOT2 respectively, then the correspondence table can record: the number of thresholds crossed is 2, TOT = (TOT1 + TOT2) / 2, and pulse energy E = E2. If a known pulse with energy E3 crosses V1, V2, and V3, and the threshold durations corresponding to the three thresholds are TOT1, TOT2, and TOT3 respectively, then the correspondence table can record: the number of thresholds crossed is 3, TOT = (TOT1 + TOT2 + TOT3) / 3, and the pulse energy E = E3. Similarly, if a known pulse with energy E4 crosses V1, V2, V3, and V4, and the threshold durations corresponding to the four thresholds are TOT1, TOT2, TOT3, and TOT4 respectively, then the correspondence table can record: the number of thresholds crossed is 4, TOT = (TOT1 + TOT2 + TOT3 + TOT4) / 4, and the pulse energy E = E4.
[0067] In some embodiments, the correspondence table can reflect the correspondence between the threshold duration of the lowest threshold crossed by the known pulse and the pulse energy of the known pulse. Similarly, for example, assume four preset thresholds V1, V2, V3, and V4. If a known pulse with energy E1 only crosses V1, corresponding to only one threshold duration TOT1, then the correspondence table can record: TOT = TOT1, pulse energy E = E1. If a known pulse with energy E2 crosses both V1 and V2, and the threshold durations corresponding to the two thresholds are TOT1 and TOT2 respectively, then the correspondence table can record: TOT = TOT1, pulse energy E = E2. If a known pulse with energy E3 crosses V1, V2, and V3, and the threshold durations corresponding to the three thresholds are TOT1, TOT2, and TOT3 respectively, then the correspondence table can record: TOT = TOT1, pulse energy E = E3. Similarly, when a known pulse with a pulse energy of E4 crosses V1, V2, V3 and V4, and the threshold durations corresponding to the four thresholds are TOT1, TOT2, TOT3 and TOT4 respectively, then the corresponding relationship table can record: TOT = TOT1, pulse energy E = E4.
[0068] In some embodiments, the correspondence table can reflect the correspondence between the threshold duration of the highest threshold crossed by the known pulse and the pulse energy of the known pulse. Continuing the example above, assume four preset thresholds V1, V2, V3, and V4. If a known pulse with pulse energy E1 only crosses V1, corresponding to only one threshold duration TOT1, then the correspondence table can record: TOT = TOT1, pulse energy E = E1. If a known pulse with pulse energy E2 crosses both V1 and V2, and the threshold durations corresponding to the two thresholds are TOT1 and TOT2 respectively, then the correspondence table can record: TOT = TOT2, pulse energy E = E2. If a known pulse with pulse energy E3 crosses V1, V2, and V3, and the threshold durations corresponding to the three thresholds are TOT1, TOT2, and TOT3 respectively, then the correspondence table can record: TOT = TOT3, pulse energy E = E3. Similarly, when a known pulse with a pulse energy of E4 crosses V1, V2, V3 and V4, and the threshold durations corresponding to the four thresholds are TOT1, TOT2, TOT3 and TOT4 respectively, then the corresponding relationship table can record: TOT = TOT4, pulse energy E = E4.
[0069] In some embodiments, the correspondence table can reflect the correspondence between the pulse energy of the known pulse and the second average threshold duration. The second average threshold duration can be the average of the threshold durations corresponding to a preset number of thresholds crossed by the known pulse. For example, the thresholds can be odd-numbered thresholds, even-numbered thresholds, or intermediate values, etc. This application does not make specific limitations. As an example, assume that four thresholds V1, V2, V3, and V4 are preset. The preset thresholds are odd-numbered thresholds. If a known pulse with pulse energy E1 only crosses V1, corresponding to only one threshold duration TOT1, then the correspondence table can record: TOT = TOT1, pulse energy E = E1. If a known pulse with pulse energy E2 crosses both V1 and V2, and the threshold durations corresponding to the two thresholds are TOT1 and TOT2 respectively, then the correspondence table can record: TOT = TOT1, pulse energy E = E2. If a known pulse with energy E3 crosses V1, V2, and V3, and the threshold durations corresponding to the three thresholds are TOT1, TOT2, and TOT3 respectively, then the correspondence table can record: TOT = (TOT1 + TOT3) / 2, pulse energy E = E3. When a known pulse with energy E4 crosses V1, V2, V3, and V4, and the threshold durations corresponding to the four thresholds are TOT1, TOT2, TOT3, and TOT4 respectively, then the correspondence table can record: TOT = (TOT1 + TOT3) / 2, pulse energy E = E4.
[0070] Step 140: Determine whether the flashing pulse is a stacked pulse based on the sampled data and the corresponding relationship table.
[0071] It is known that the energy of photons captured by a radiation detection device is within a certain range, and the corresponding threshold duration exceeding a certain threshold is also within a range. Stacking can occur when a new photon enters before the radiation detection device has captured a photon that has not yet disappeared. The pulses generated by the two photons will then overlap, delaying the pulse end time. This is characterized by a larger pulse width, meaning a longer threshold duration than the normal threshold duration. Therefore, by comparing the threshold duration associated with the scintillation pulse with the threshold duration recorded in the corresponding table, it can be determined whether the scintillation pulse has experienced stacking, indicating a stacked pulse.
[0072] In some embodiments, the sampling data can be used to determine the duration of a comparison threshold. The duration of the comparison threshold can be determined based on the contents of the comparison table. For example, assuming the table reflects the correspondence between the number of thresholds crossed, pulse energy, and the duration of a first average threshold, the duration of the comparison threshold needs to be determined based on the number of thresholds crossed by the flicker pulse and their respective durations. For example, if the flicker pulse only crosses one threshold (i.e., the voltage threshold V1), then the sampling data is {(V1, t...} 11 ),(V1,t 12 The comparison threshold duration is TOT. s =t 12 -t 11 If the flicker pulse crosses two thresholds (i.e., voltage thresholds V1 and V2), then the sampled data is {(V1, t...} 21 ),(V2,t 22 ),(V2,t 23 ),(V1,t 24 The comparison threshold duration is TOT. s =((t) 24 -t 21 )+(t 23 -t 22 )) / 2. If the flicker pulse crosses three thresholds (i.e., voltage thresholds V1, V2, and V3), then the sampled data is {(V1, t 31 ),(V2,t 32 ),(V3,t 33 ),(V3,t 34 ),(V2,t 35 ),(V1,t 36 The comparison threshold duration is TOT. s =((t) 36 -t 31 )+(t 35 -t 32 )+(t 34 -t 33 )) / 3. If the flicker pulse crosses the four thresholds (i.e., voltage thresholds V1, V2, V3, and V4), then the sampled data is {(V1, t 41 ),(V2,t 42 ),(V3,t 43 ),(V4,t 44 ),(V4,t 45 ),(V3,t 46 ),(V2,t 47 ),(V1,t 48The comparison threshold duration is:
[0073] TOT s =((t) 48 -t 41 )+(t 47 -t 42 )+(t 46 -t 43 )+(t 45 -t 44 )) / 4.
[0074] When the correspondence table reflects the correspondence between the threshold duration of the lowest threshold crossed by the known pulse and the pulse energy of the known pulse, then the comparison threshold duration can be TOT. s =t 12 -t 11 (Flicker pulse exceeds 1 threshold), or TOT s =t 24 -t 21 (Flicker pulse exceeds 2 thresholds), or TOT s =t 36 -t 31 (Flicker pulse exceeds 3 thresholds), or TOT s =t 48 -t 41 .
[0075] When the correspondence table reflects the correspondence between the threshold duration of the highest threshold crossed by the known pulse and the pulse energy of the known pulse, then the comparison threshold duration can be TOT. s =t 12 -t 11 (Flicker pulse exceeds 1 threshold), or TOT s =t 23 -t 22 (Flicker pulse exceeds 2 thresholds), or TOT s =t 34 -t 33 (Flicker pulse exceeds 3 thresholds), or TOT s =t 45 -t 44 .
[0076] When the correspondence table reflects the relationship between a preset number of thresholds, pulse energy, and the duration of the second average threshold in the number of thresholds crossed, for example, if the preset number of thresholds is an odd-numbered threshold in the order of the thresholds crossed by the flash pulse, then the duration of the comparison threshold can be TOT. s =t 12 -t 11(Flicker pulse exceeds 1 threshold), or TOT s =t 24 -t 21 (Flicker pulse exceeds 2 thresholds), or TOT s =((t) 36 -t 31 )+(t 34 -t 33 )) / 2 (flicker pulses exceeding 3 thresholds), or TOT s =((t) 48 -t 41 )+(t 46 -t 43 )) / 4.
[0077] In some embodiments, based on the comparison threshold duration and the correspondence table, it can be determined whether the flicker pulse is a stacked pulse by whether a first ratio between the comparison threshold duration and the threshold duration in the correspondence table is less than a preset ratio. For example, the first ratio between the comparison threshold duration and each related threshold duration in the correspondence table can be determined iteratively. If the first ratio is large, that is, the comparison threshold duration of the flicker pulse is significantly correlated with the threshold duration determined by non-stacked pulses in the correspondence table, and the error exceeds the range of the threshold duration of normal pulses, then the flicker pulse can be identified as a stacked pulse. In some embodiments, the preset ratio used to define the "error range" can be 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, etc. In some embodiments, the preset ratio can be 1.2. When it is determined that the flicker pulse is a stacked pulse, the processing method 100 can proceed to step 150.
[0078] Step 150: Determine the component energy values of the component pulses constituting the scintillation pulse based on the sampled data and the function model.
[0079] It is known that a stacked pulse is typically formed by stacking two pulses. It is generally believed that the rising edge of a stacked pulse originates primarily from the preceding pulse, and the falling edge primarily from the following pulse. Therefore, based on the sampled data, functions can be fitted to the rising and falling edges of the flicker pulse to determine their respective mathematical expressions to characterize their pulse waveforms. Subsequently, the energy value can be obtained by integrating the curves corresponding to the mathematical expressions.
[0080] Assuming the flicker pulse crosses all four preset thresholds, the sampled data obtained by multi-threshold sampling is {(V1,T 41 ),(V2,t 42 ),(V3,T 43 ),(V4,t44 ),(V4,t 45 ),(V3,t 46 ),(V2,t 47 ),(V1,t 48 The threshold-time pair generated when the rising edge of the flash pulse crosses the threshold (which can also be called the first threshold-time pair in this application, i.e., (V1,t)) is the threshold-time pair generated when the rising edge of the flash pulse crosses the threshold. 41 ),(V2,T 42 ),(V3,t 43 ),(V4,t 44 This can be used to perform a fitting operation to determine a first expression of the function model, which characterizes the pulse waveform of the first component pulses stacked to form a flashing pulse. The threshold-time pair generated when the falling edge of the flashing pulse crosses a threshold (also referred to in this application as a second threshold-time pair, i.e., (V4,t)) 45 ),(V3,t 46 ),(V2,t 47 ),(V1,t 48 This can be used to perform a fitting operation to determine a second expression of the function model, characterizing the pulse waveform of the second component pulses stacked to form the flashing pulse. The fitting operation can be implemented based on least squares, interpolation, or smoothing. For example, existing computational algorithms / software can be invoked to perform curve fitting based on multiple data pairs. Multiple data points are input into the computational algorithm / software to directly obtain the function expression of the threshold correction function model. For example, determining... The values of a, b, and c are determined. This leads to the determination of the first expression and the second expression. The first curve corresponding to the first expression can be used to characterize the pulse waveform of the first component pulse, while the second curve corresponding to the second expression can be used to characterize the pulse waveform of the second component pulse.
[0081] It is understandable that restoring the stacked pulses is for more accurate photon counting, which requires determining the energy values of the two component pulses. For example, the first curve can be integrated to determine the first component energy value of the first component pulse, and the second curve can be integrated to determine the second component energy value of the second component pulse. Integration can be performed using methods such as Newton's integration, Riemann integration, or numerical integration. After determining the energy values, the energy range of the first and second component energy values can be determined (e.g., the pulse energy range corresponding to a certain energy address). At this point, the number of pulses corresponding to that energy address of the target pulse can be incremented by one to complete the pulse counting.
[0082] In some embodiments, when the flicker pulses are determined to be non-stacked pulses, a fitting operation can be performed based on the sampled data to determine the target expression of the function model. Similarly, it can be determined based on the least squares method, interpolation method, or polishing method. The values of a, b, and c are determined. Once determined, the target expression can be obtained. The target curve corresponding to the target expression can be used to characterize the pulse waveform of the scintillation pulse. Integrating the target curve determines the target energy value of the scintillation pulse.
[0083] In some embodiments, the sampled data can be used to determine a target threshold duration for the flicker pulse. The target threshold duration can be the same as or similar to the comparison threshold duration, and can be determined based on the contents of the comparison table. The target threshold duration can be the same as the comparison threshold duration, distinguishing between stacked and non-stacked flicker pulses. In some embodiments, the target threshold duration can be compared with each associated threshold duration in the correspondence table to determine a second ratio. When the second ratio is less than a preset ratio, the target threshold duration is considered to be close to the threshold duration associated with the second ratio, within the error range of that threshold duration. That is, the flicker pulse is similar to the known pulse corresponding to that threshold duration, for example, in terms of pulse waveform, energy, etc. In this case, the pulse energy value corresponding to that threshold duration in the comparison table can be used as the target energy value of the flicker pulse. In some embodiments, the preset ratio can be 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, etc. In some embodiments, the preset ratio can be 1.2.
[0084] Those skilled in the art will understand that, within a finite range, the pulse energy and threshold duration are linearly related. Therefore, the pulse energy and threshold duration in the correspondence table can be used to determine a relationship function. For example, the relationship function can be determined as i = k*x + p. The pulse energy in the correspondence table can be used as i, and the threshold duration as x, and substituted into the equation to determine the expression of the relationship function. The target threshold duration can be substituted into the expression of the relationship function to determine the target energy value of the flashing pulse.
[0085] In some embodiments, after determining the target energy value of the scintillation pulse, the energy range in which the target energy value lies can be determined (e.g., the pulse energy range corresponding to a certain energy address). The number of pulses corresponding to that energy address can then be incremented by one. After performing stacking determination, pulse reconstruction (if stacked pulses), and energy determination on a large number of scintillation pulses, energy spectrum plotting can be performed.
[0086] 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.
[0087] The processing method disclosed in this application can restore stacked pulses and perform accurate energy calculation and pulse counting on the restored pulses, avoiding miscounting of some pulses due to pulse stacking. It can also quickly determine the energy of non-stacked pulses.
[0088] Figure 4 This is an exemplary block diagram of a data processing system according to some embodiments of this specification. This data processing system can realize the reconstruction of stacked pulses and energy calculation. Figure 4 As shown, the data processing system 400 may include an acquisition module 410, a sampling module 420, a determination module 430, a judgment module 440, and a calculation module 450.
[0089] The acquisition module 410 can be used to acquire the function model corresponding to the scintillation pulse as shown in step 110 above. The acquisition module 410 can determine the function model based on prior information. For example, by using a digital oscilloscope to collect data on a large number of high-energy particles / rays generated by a radiation source, the function model conforming to the pulse waveform of the corresponding test pulse can be obtained. Alternatively, by using a digital oscilloscope to collect information on the scintillation pulse, the pulse waveform of the scintillation pulse can be directly determined, and by comparing whether the pulse waveform of the scintillation pulse conforms to a certain type of function model, if it does, it can be used as the function model.
[0090] The sampling module 420 can be used to preset multiple thresholds as shown in step 120 above, and perform multi-threshold sampling on the flicker pulse based on the thresholds to obtain sampling data. The multiple thresholds can be used to compare with the amplitude of the flicker pulse to determine the time point when the flicker pulse crosses the threshold. These time points and the corresponding thresholds together form the threshold-time pairs, which constitute the sampling data. Based on the manifestation form of the flicker pulse (electrical pulse), the threshold can be a voltage threshold or a current threshold. The intervals between the preset multiple thresholds can also be equal or unequal.
[0091] The determining module 430 can be used to determine a correspondence table between pulse energy and threshold duration related to the threshold, as shown in step 130 above. To determine the correspondence table, the determining module 430 can acquire multiple known pulses with known pulse energy (these known pulses are non-stacked pulses), and then perform multi-threshold sampling on these known pulses based on the threshold to determine two time points when the known pulse crosses the threshold. The time interval between these two time points can be the threshold duration. The correspondence table determined by the determining module 430 can reflect the correspondence between the number of thresholds crossed by the known pulses, the pulse energy of the known pulses, and the first average threshold duration. The correspondence table determined by the determining module 430 can reflect the correspondence between the threshold duration of the lowest threshold crossed by the known pulses and the pulse energy of the known pulses. The correspondence table determined by the determining module 430 can reflect the correspondence between the threshold duration of the highest threshold crossed by the known pulses and the pulse energy of the known pulses. The correspondence table determined by the determining module 430 can reflect the correspondence between the pulse energy of the known pulses and the second average threshold duration. The second average threshold duration can be the average of the threshold durations corresponding to a preset number of thresholds that a known pulse has crossed.
[0092] The determination module 440 can be used to determine whether the flashing pulse is a stacked pulse based on the sampled data and the correspondence table as shown in step 140 above. The determination module 440 can use the sampled data to determine a comparison threshold duration. The comparison threshold duration can be determined based on the contents included in the comparison table. The determination module 440 can determine whether the flashing pulse is a stacked pulse by determining whether a first ratio between the comparison threshold duration and the threshold duration in the correspondence table is less than a preset ratio. If the first ratio is large, greater than the preset ratio, the determination module 440 can determine that the flashing pulse is a stacked pulse.
[0093] The calculation module 450 can be used to determine the component energy values of the component pulses constituting the flicker pulse based on the sampled data and the function model as shown in step 150 above. The calculation module 450 can perform a fitting operation based on a first threshold-time pair generated when the rising edge of the flicker pulse crosses a threshold to determine a first expression of the function model, used to characterize the pulse waveform of the first component pulses stacked to form the flicker pulse. The calculation module 450 can perform a fitting operation based on a second threshold-time pair generated when the falling edge of the flicker pulse crosses a threshold to determine a second expression of the function model, used to characterize the pulse waveform of the second component pulses stacked to form the flicker pulse. The first curve corresponding to the first expression can be used to characterize the pulse waveform of the first component pulse, and the second curve corresponding to the second expression can be used to characterize the pulse waveform of the second component pulse. The calculation module 450 can integrate the first curve to determine the first component energy value of the first component pulse, and integrate the second curve to determine the second component energy value of the second component pulse.
[0094] When the flicker pulse is determined to be a non-stacked pulse, the calculation module 450 can perform a fitting operation based on the sampled data to determine the target expression of the function model. After determination, the target expression can be obtained. The target curve corresponding to the target expression can be used to characterize the pulse waveform of the flicker pulse. The calculation module 450 can integrate the target curve to determine the target energy value of the flicker pulse. The calculation module 450 can also compare the target threshold duration with each relevant threshold duration in the correspondence table to determine a second ratio. The pulse energy value related to the threshold duration corresponding to the second ratio being less than a preset ratio can be used as the target energy value of the flicker pulse. The calculation module 450 can also use the pulse energy and threshold duration in the correspondence table to determine a relational function. The calculation module 450 can substitute the target threshold duration into the expression of the relational function to determine the target energy value of the flicker pulse. After determining the relevant energy value of the flicker pulse (including the component energy value of the pulse when it is a stacked pulse, or the target energy value when it is a non-stacked pulse), the energy range of that energy value (e.g., the pulse energy range corresponding to a certain energy address) can be determined. At this time, the number of pulses corresponding to that energy address can be incremented by one. After performing stacking determination, pulse reconstruction (if the pulses are stacked), and energy determination on a large number of scintillation pulses, energy spectrum plotting can be performed.
[0095] For further descriptions of the above modules, please refer to the flowchart section of this application, for example, Figure 1 .
[0096] It should be understood that Figure 4The 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).
[0097] 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.
[0098] Figure 5 This is an exemplary block diagram of a processing device according to some embodiments of this application. The processing device 500 may include any components used to implement the system described in the embodiments of this application. For example, the processing device 500 may be implemented using hardware, software programs, firmware, or a combination thereof. For example, the processing device 500 may implement a data processing system 400. 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.
[0099] In some embodiments, the processing device 500 may include a processor 510, a memory 520, an input / output component 530, and a communication port 540. In some embodiments, the processor (e.g., CPU) 510 may execute program instructions as one or more processors. In some embodiments, the memory 520 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 530 may be used to support input / output between the processing device 500 and other components. In some embodiments, the communication port 540 may be connected to a network for data communication. Exemplary processing devices may include program instructions executed by the processor 510 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 500 may also receive programs and data disclosed in this application via network communication.
[0100] For ease of understanding, Figure 5 Only one processor is illustrated in this specification. However, it should be noted that the processing device 500 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 500 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 500 (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).
[0101] 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 photon counting CT. In a photon counting CT system, photon data can be acquired using the scheme described in the embodiments of this application, and then image reconstruction can be performed.
[0102] 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.
[0103] 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.
[0104] 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.
[0105] 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.
[0106] 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).
[0107] 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.
[0108] 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.
[0109] 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.
[0110] 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.
[0111] 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: Obtain the function model corresponding to the flashing pulse, wherein the function model is used to characterize the pulse waveform of the flashing pulse; Multiple thresholds are preset, and the flashing pulse is sampled using multiple thresholds based on the thresholds to obtain sampled data; Determine the correspondence between pulse energy and threshold duration related to the threshold; Determining whether the flashing pulse is a stacked pulse based on the sampled data and the correspondence table includes: determining a comparison threshold duration based on the sampled data; determining whether a first ratio between the comparison threshold duration and the threshold duration in the correspondence table is greater than a preset ratio based on the comparison threshold duration and the correspondence table; if the first ratio is greater than the preset ratio, determining that the flashing pulse is a stacked pulse. If the scintillation pulse is a stacked pulse, then the component energy values of the component pulses constituting the scintillation pulse are determined based on the sampled data and the function model; If the scintillation pulse is a non-stacked pulse, then based on the sampled data and / or the correspondence table, the target energy value of the scintillation pulse is determined, and the target energy value is specified to participate in pulse counting and energy spectrum plotting.
2. The processing method according to claim 1, characterized in that, Determining the correspondence table includes: Acquire multiple known pulses with known pulse energy; the known pulses are non-stacked pulses. Based on the threshold, the known pulse is sampled using multiple thresholds to determine the first and second times when the known pulse crosses the threshold. The threshold duration is determined based on the first time and the second time. The corresponding relationship table is determined based on multiple pulse energies and multiple threshold durations.
3. The processing method according to claim 2, characterized in that, The correspondence table reflects the correspondence between the number of thresholds crossed by the known pulse, the pulse energy of the known pulse, and the first average threshold duration; the first average threshold duration includes the average value of the threshold duration corresponding to each threshold.
4. The processing method according to claim 2, characterized in that, The correspondence table reflects the relationship between the threshold duration of the lowest threshold crossed by the known pulse and the pulse energy of the known pulse.
5. The processing method according to claim 2, characterized in that, The correspondence table reflects the relationship between the threshold duration of the highest threshold crossed by the known pulse and the pulse energy of the known pulse.
6. The processing method according to claim 2, characterized in that, The correspondence table reflects the correspondence between the pulse energy of the known pulse and the second average threshold duration; the second average threshold duration includes the average of the threshold durations corresponding to a preset number of thresholds crossed by the known pulse.
7. The processing method according to claim 1, characterized in that, The step of determining the component energy values of the constituent pulses constituting the scintillation pulse based on the sampled data and the function model includes: Based on the sampled data and the function model, the pulse waveforms of the first component pulse and the second component pulse constituting the flashing pulse are determined. Based on the pulse waveforms of the first and second component pulses, the component energy values of the first and second component pulses are determined.
8. The processing method according to claim 7, characterized in that, The sampling data includes multiple first threshold-time pairs when the rising edge of the flashing pulse crosses multiple thresholds, and multiple second threshold-time pairs when the falling edge of the flashing pulse crosses multiple thresholds; A fitting operation is performed based on multiple first threshold-time pairs to determine a first expression of the function model to characterize the pulse waveform of the first component pulse; A fitting operation is performed based on multiple second threshold-time pairs to determine a second expression of the function model used to characterize the pulse waveform of the second component pulse.
9. The processing method according to claim 8, characterized in that, The processing method further includes: Integrate the first curve corresponding to the first expression to determine the first component energy value of the first component pulse; Integrate the second curve corresponding to the second expression to determine the second component energy value of the second component pulse.
10. The processing method according to claim 9, characterized in that, The processing method further includes: The first component energy value and the second component energy value are specified to participate in pulse counting and energy spectrum plotting.
11. The processing method according to claim 1, characterized in that, Determining the target energy value of the scintillation pulse includes: A fitting operation is performed based on the sampled data to determine the target expression of the function model; The target energy value is determined by integrating the target curve corresponding to the target expression.
12. The processing method according to claim 1, characterized in that, Determining the target energy value of the scintillation pulse includes: Based on the sampled data, the duration of the target threshold is determined; The target threshold duration is compared with each relevant threshold duration in the corresponding relationship table to determine a second ratio. When the second ratio is less than the threshold duration of the preset ratio, the pulse energy corresponding to the threshold duration is designated as the target energy value.
13. The processing method according to claim 1, characterized in that, Determining the target energy value of the scintillation pulse includes: Based on the sampled data, the duration of the target threshold is determined; Based on the aforementioned correspondence table, the relationship function between pulse energy and threshold duration is determined; The target energy value is determined based on the target threshold duration and the relationship function.
14. A processing device for scintillation pulses, characterized in that, The processing device includes: The acquisition module is configured to acquire the function model corresponding to the flashing pulse, wherein the function model is used to characterize the pulse waveform of the flashing pulse; The sampling module is configured to preset multiple thresholds and perform multi-threshold sampling on the flashing pulse based on the thresholds to obtain sampling data; The determination module is configured to determine a correspondence table between pulse energy and threshold duration related to the threshold. The determination module is configured to determine whether the flashing pulse is a stacked pulse based on the sampled data and the correspondence table, including: determining a comparison threshold duration based on the sampled data; determining whether a first ratio between the comparison threshold duration and the threshold duration in the correspondence table is greater than a preset ratio based on the comparison threshold duration and the correspondence table; if the first ratio is greater than the preset ratio, determining that the flashing pulse is a stacked pulse; The calculation module is configured to determine the component energy values of the constituent pulses constituting the scintillation pulse based on the sampled data and the function model when the pulse is a stacked pulse, and to determine the target energy value of the scintillation pulse based on the sampled data and / or the correspondence table when the scintillation pulse is a non-stacked pulse, and to use the target energy value to participate in pulse counting and energy spectrum plotting.
15. The processing apparatus according to claim 14, characterized in that, To determine the corresponding relationship table, the determining module is configured as follows: Acquire multiple known pulses with known pulse energy; the known pulses are non-stacked pulses. Based on the threshold, the known pulse is sampled using multiple thresholds to determine the first and second times when the known pulse crosses the threshold. The threshold duration is determined based on the first time and the second time. The corresponding relationship table is determined based on multiple pulse energies and multiple threshold durations.
16. The processing apparatus according to claim 15, characterized in that, The correspondence table reflects the correspondence between the number of thresholds crossed by the known pulse, the pulse energy of the known pulse, and the first average threshold duration; the first average threshold duration includes the average value of the threshold duration corresponding to each threshold.
17. The processing apparatus according to claim 15, characterized in that, The correspondence table reflects the relationship between the threshold duration of the lowest threshold crossed by the known pulse and the pulse energy of the known pulse.
18. The processing apparatus according to claim 15, characterized in that, The correspondence table reflects the relationship between the threshold duration of the highest threshold crossed by the known pulse and the pulse energy of the known pulse.
19. The processing apparatus according to claim 15, characterized in that, The correspondence table reflects the correspondence between the pulse energy of the known pulse and the second average threshold duration; the second average threshold duration includes the average of the threshold durations corresponding to a preset number of thresholds crossed by the known pulse.
20. The processing apparatus according to claim 14, characterized in that, To determine the component energy values of the constituent pulses constituting the scintillation pulse based on the sampled data and the function model, the calculation module is configured as follows: Based on the sampled data and the function model, the pulse waveforms of the first component pulse and the second component pulse constituting the flashing pulse are determined. Based on the pulse waveforms of the first and second component pulses, the component energy values of the first and second component pulses are determined.
21. The processing apparatus according to claim 20, characterized in that, The sampling data includes multiple first threshold-time pairs when the rising edge of the flash pulse crosses multiple thresholds, and multiple second threshold-time pairs when the falling edge of the flash pulse crosses multiple thresholds; the calculation module is configured as follows: A fitting operation is performed based on multiple first threshold-time pairs to determine a first expression of the function model to characterize the pulse waveform of the first component pulse; A fitting operation is performed based on multiple second threshold-time pairs to determine a second expression of the function model used to characterize the pulse waveform of the second component pulse.
22. The processing apparatus according to claim 21, characterized in that, The computing module is also configured to: Integrate the first curve corresponding to the first expression to determine the first component energy value of the first component pulse; Integrate the second curve corresponding to the second expression to determine the second component energy value of the second component pulse.
23. The processing apparatus according to claim 22, characterized in that, The computing module is also configured to: The first component energy value and the second component energy value are used to participate in pulse counting and energy spectrum plotting.
24. The processing apparatus according to claim 14, characterized in that, To determine the target energy value of the scintillation pulse, the calculation module is configured as follows: A fitting operation is performed based on the sampled data to determine the target expression of the function model; The target energy value is determined by integrating the target curve corresponding to the target expression.
25. The processing apparatus according to claim 14, characterized in that, To determine the target energy value of the scintillation pulse, the calculation module is configured as follows: Based on the sampled data, the duration of the target threshold is determined; The target threshold duration is compared with each relevant threshold duration in the corresponding relationship table to determine a second ratio. When the second ratio is less than the threshold duration of the preset ratio, the pulse energy corresponding to the threshold duration is designated as the target energy value.
26. The processing apparatus according to claim 14, characterized in that, To determine the target energy value of the scintillation pulse, the calculation module is configured as follows: Based on the sampled data, the duration of the target threshold is determined; Based on the aforementioned correspondence table, the relationship function between pulse energy and threshold duration is determined; The target energy value is determined based on the target threshold duration and the relationship function.
27. A processing apparatus, 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-13.
28. 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-13.