Encoding method and apparatus of optical signal, decoding method and apparatus, device and medium
Patent Information
- Application Number
- CN202310879201.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-17
- Publication Date
- 2026-09-29
- Estimated Expiration
- 2043-07-17
AI Technical Summary
[0067]基于本公开实施例的光信号的编码方法和装置、解码方法和装置、设备和介质,通过将针对空间接收的光子流转换成表征光强变化过程的脉冲序列,在脉冲序列中脉冲信号的脉宽发生变化时,分别以各脉宽发生变化的脉冲信号作为目标脉冲信号,对目标脉冲信号对应的编码周期的时刻信息和该编码周期对应的脉冲信号信息进行编码,得到编码信息,然后,基于目标脉冲信号的时序关系,由各目标脉冲信号对应的编码信息形成编码序列,即可对外传输该编码序列,在接收端,可以对该空间对应的编码序列进行解码,得到对应的解码结果序列。由于仅对各脉宽发生变化的脉冲信号的相关信息进行编码、而无需对其他脉冲信号的相关信息进行编码,通过各脉宽发生变化的脉冲信号的编码信息形成的编码序列可以反映出空间的光强及光强变化情况,未编码则意味着光强未发生改变,由此可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率;其次,由于减小了编码数据的数据量,可以节省编码数据所需占用的硬件资源从而降低硬件要求,有助于提高编码效率和资源利用率;另外,通过对各脉宽发生变化的脉冲信号的编码周期的时刻信息和该编码周期对应的脉冲信号信息进行编码,通过脉冲信号的编码周期的时刻信息和该编码周期对应的脉冲信号信息可以确定相应的脉宽,而无需直接对脉宽进行编码,可以避免由于硬件面积、功耗等硬件限制因素导致所能够记录的脉宽范围受限而限制成像动态范围,能够在减小编码数据的数据量的情况下提升成像动态范围。
Smart Images

Figure CN117833958B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to information processing technology, encoding and decoding technology, and in particular to an encoding method and apparatus, a decoding method and apparatus, equipment and medium for optical signals. Background Technology
[0002] The pulse camera uses a built-in photoelectric sensor to collect light signals from the observed scene and accumulate the collected light signals. When the accumulated light signal exceeds a preset threshold, a pulse signal is generated and emitted, thus forming a pulse sequence. This enables high-precision representation and continuous recording of high-speed light processes. Because the pulse signal has clear physical meaning and ultra-high time resolution, it has a strong detection capability for high-speed moving targets and is widely used in high-speed motion scenarios such as machine vision, telemetry and remote control, electronic computers, and autonomous driving.
[0003] However, the high-precision representation and continuous recording of high-speed optical processes using pulse sequences require an enormous amount of data, placing significant pressure on transmission bandwidth and real-time performance. Therefore, reducing transmission pressure and improving transmission efficiency is a pressing technical problem that needs to be solved. Summary of the Invention
[0004] This disclosure provides an encoding method and apparatus, a decoding method and apparatus, a device, and a medium for optical signals, to at least partially solve the above-mentioned technical problems.
[0005] One aspect of this disclosure provides a method for encoding pulse data, including:
[0006] The photon stream received in space is converted into a pulse sequence characterizing the light intensity change process, the pulse sequence comprising multiple pulse signals based on time-series relationships;
[0007] In response to a change in the pulse width of the pulse signal in the pulse sequence, each pulse signal with a changed pulse width is used as a target pulse signal. The time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain encoded information.
[0008] Based on the timing relationship of the target pulse signals, an encoding sequence is formed from the encoding information corresponding to each target pulse signal.
[0009] Optionally, in the encoding method of any embodiment of this disclosure, encoding the time information of the encoding period corresponding to the target pulse signal and the number of pulses corresponding to the encoding period includes:
[0010] The pulse start time of the target pulse signal is used as the time information of the encoding period corresponding to the target pulse signal, and the number of adjacent pulse signals with the same pulse width before the target pulse signal is used as the pulse signal information corresponding to the encoding period. The pulse start time of the target pulse signal and the number of pulse signals with the same pulse width are encoded.
[0011] Optionally, in the encoding method of any embodiment of this disclosure, encoding the time information of the encoding period corresponding to the target pulse signal and the number of pulses corresponding to the encoding period includes:
[0012] The pulse start time of the target pulse signal is taken as the pulse start time of the pulse signal with the same pulse width that is adjacent to the target pulse signal, and the number of pulse signals with the same pulse width is taken as the pulse signal information corresponding to the encoding period. The pulse start time of the target pulse signal and the number of pulse signals with the same pulse width are encoded.
[0013] Optionally, in the encoding method of any embodiment of this disclosure, encoding the time information of the encoding period corresponding to the target pulse signal and the number of pulses corresponding to the encoding period includes:
[0014] The encoding period corresponding to the target pulse signal is defined as the time from the end time of the pulse of the preceding target pulse signal adjacent to the target pulse signal to the end time of the target pulse signal. The end time of the target pulse signal is used as the time information of the encoding period corresponding to the target pulse signal. The number of pulse signals generated within the encoding period corresponding to the target pulse signal is used as the pulse signal information corresponding to the encoding period. The end time of the target pulse signal and the number of pulse signals generated within the encoding period corresponding to the target pulse signal are encoded.
[0015] Optionally, the encoding method in any embodiment of this disclosure further includes:
[0016] In the process of converting the received photon stream into a pulse sequence that characterizes the light intensity change process, each pulse signal is used as the current pulse signal to obtain the pulse width of the current pulse signal.
[0017] In response to the difference between the pulse width of the current pulse signal and the specified pulse width being greater than a preset deviation value, it is determined that the pulse width of the current pulse signal has changed.
[0018] Optionally, in the encoding method of any embodiment of this disclosure, obtaining the pulse width of the current pulse signal includes:
[0019] Obtain the actual pulse width of the current pulse signal;
[0020] Compare whether the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width;
[0021] If the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width, the pulse width of the current pulse signal is determined to be the remainder after dividing the actual pulse width of the current pulse signal by the preset maximum recorded pulse width;
[0022] If the actual pulse width of the current pulse signal is not greater than the preset maximum recorded pulse width, the pulse width of the current pulse signal is determined to be the actual pulse width of the current pulse signal.
[0023] Optionally, in the encoding method of any embodiment of this disclosure, the specified pulse width includes any one of the following:
[0024] The pulse width of the preceding pulse signal adjacent to the current pulse signal;
[0025] The pulse width of the first pulse signal among a series of consecutive pulse signals preceding the current pulse signal;
[0026] The average pulse width of the consecutive pulse signals preceding the current pulse signal;
[0027] Wherein, the difference between the pulse width of each pulse signal in the consecutive multiple pulse signals and the pulse width of the adjacent preceding pulse signal is not greater than the preset deviation value.
[0028] Optionally, the encoding method in any embodiment of this disclosure further includes:
[0029] After determining that the pulse width of the current pulse signal has changed, the specified pulse width is updated to the pulse width of the current pulse signal.
[0030] Optionally, in the encoding method of any embodiment of this disclosure, converting the photon stream received in space into a pulse sequence characterizing the light intensity change process includes:
[0031] The photon stream received in space is converted into a pulse sequence that characterizes the process of light intensity change through a photosensitive unit;
[0032] The timing information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain encoded information, including:
[0033] The position of the photosensitive unit in the photosensitive unit array, the time information of the encoding period corresponding to the target pulse signal, and the pulse signal information corresponding to the encoding period are encoded to obtain the encoding sequence corresponding to the photosensitive unit.
[0034] Optionally, the encoding method in any embodiment of this disclosure further includes:
[0035] Based on the position of each photosensitive unit in the photosensitive unit array, a coding sequence array is formed by the coding sequence corresponding to each photosensitive unit;
[0036] The encoded sequence array is output using an asynchronous communication protocol.
[0037] Another aspect of this disclosure provides a decoding method, including:
[0038] Obtain the encoding sequence corresponding to the space, wherein the encoding sequence is formed based on the temporal relationship of the encoding information corresponding to the target pulse signal whose pulse width changes in the pulse signal of the pulse signal in the pulse sequence corresponding to the space, and the encoding information corresponding to the target pulse signal is obtained by encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period;
[0039] The encoded sequence corresponding to the space is decoded to obtain the decoded result sequence corresponding to the space. The decoded result sequence includes the decoded result corresponding to at least one target pulse signal based on the time sequence relationship. Each decoded result includes the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period.
[0040] Optionally, in the decoding method of any embodiment of this disclosure, obtaining the encoded sequence corresponding to the space includes:
[0041] Obtain the coding sequence array corresponding to the observation scene, wherein the coding sequence array includes: the coding sequence corresponding to each space in the observation scene;
[0042] Decoding the encoded sequence corresponding to the space yields a decoded result sequence corresponding to the space, including:
[0043] The encoded sequence array is decoded to obtain the encoded result sequence corresponding to each space in the observation scene.
[0044] Optionally, in the decoding method of any embodiment of this disclosure, the time information of the encoding period corresponding to the target pulse signal includes: the pulse start time of the target pulse signal; the pulse signal information corresponding to the encoding period includes: the number of adjacent pulse signals with the same pulse width preceding the target pulse signal;
[0045] or,
[0046] The timing information of the encoding period corresponding to the target pulse signal includes: the pulse start time of the pulse signal adjacent to the target pulse signal and of the same pulse width; the pulse signal information corresponding to the encoding period includes: the number of pulse signals of the same pulse width;
[0047] or,
[0048] The timing information of the encoding period corresponding to the target pulse signal includes: the pulse end time of the target pulse signal; the pulse signal information corresponding to the encoding period includes: the number of pulse signals generated within the encoding period corresponding to the target pulse signal, wherein the encoding period corresponding to the target pulse signal is from the pulse end time of the preceding target pulse signal adjacent to the target pulse signal to the pulse end time of the target pulse signal.
[0049] Optionally, in the decoding method of any embodiment of this disclosure, after obtaining the decoding result sequence corresponding to the space, the method further includes:
[0050] Based on the decoding result sequence corresponding to the space, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period, the pulse width of the target pulse signal corresponding to the decoding result is determined.
[0051] Optionally, in the decoding method of any embodiment of this disclosure, after obtaining the decoding result sequence corresponding to the space, the method further includes:
[0052] Based on the decoding result sequence corresponding to the space, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period, the light intensity value of the space corresponding to the decoding result is determined.
[0053] In another aspect of this disclosure, an optical signal encoding apparatus is provided, comprising:
[0054] A conversion module is used to convert a photon stream received in space into a pulse sequence characterizing the light intensity change process, the pulse sequence comprising multiple pulse signals based on a time sequence relationship;
[0055] The encoding module is used to respond to changes in the pulse width of the pulse signal in the pulse sequence, and to encode the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period, respectively, using the pulse signal with each pulse width change as the target pulse signal, to obtain encoded information;
[0056] The forming module is used to form an encoding sequence from the encoding information corresponding to each of the target pulse signals based on the timing relationship of the target pulse signals.
[0057] In another aspect of this disclosure, a decoding apparatus is provided, comprising:
[0058] An acquisition module is used to acquire a spatially corresponding encoding sequence, wherein the encoding sequence is formed based on a temporal relationship from the encoding information of a target pulse signal whose pulse width changes in the pulse signal of the pulse signal in the spatially corresponding pulse sequence, and the encoding information of the target pulse signal is obtained by encoding the time information of the encoding period of the target pulse signal and the pulse signal information of the encoding period.
[0059] A decoding module is used to decode the encoded sequence corresponding to the space to obtain a decoded result sequence corresponding to the space. The decoded result sequence includes a decoded result corresponding to at least one target pulse signal based on a timing relationship. Each decoded result includes the timing information of the encoding period corresponding to a target pulse signal and the pulse signal information corresponding to the encoding period.
[0060] In another aspect of the present disclosure, a pulse camera and an optical signal encoding device as described in any embodiment of the present disclosure are provided.
[0061] In another aspect of this disclosure, an electronic device is provided, comprising:
[0062] Memory, used to store computer programs;
[0063] A processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, it implements the encoding or decoding method described in any embodiment of the present disclosure.
[0064] Optionally, in any embodiment of the electronic device disclosed herein, the electronic device includes any one of the following: an integrated circuit, a sensor.
[0065] Optionally, in any embodiment of the electronic device disclosed herein, the electronic device may be included as any of the following: pulse camera, high-speed camera, audio / video player, navigation device, fixed-position terminal, entertainment unit, smartphone, communication device, device in motor vehicle, camera, action or wearable camera, detection device, flight device, medical device, security device.
[0066] In another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the encoding or decoding method described in any of the embodiments of the present disclosure.
[0067] The optical signal encoding method and apparatus, decoding method and apparatus, device and medium based on the embodiments of this disclosure convert a photon stream received in space into a pulse sequence characterizing the light intensity change process. When the pulse width of the pulse signal in the pulse sequence changes, each pulse signal with a changing pulse width is used as a target pulse signal. The timing information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain encoding information. Then, based on the timing relationship of the target pulse signal, an encoding sequence is formed from the encoding information corresponding to each target pulse signal. The encoding sequence can be transmitted externally. At the receiving end, the encoding sequence corresponding to the space can be decoded to obtain the corresponding decoding result sequence. Because only the relevant information of pulse signals with varying pulse widths is encoded, without encoding the relevant information of other pulse signals, the encoded sequence formed by the encoded information of pulse signals with varying pulse widths can reflect the light intensity and its changes in space. No encoding means the light intensity has not changed, thus reducing the amount of encoded data and consequently the amount of data transmitted, helping to reduce transmission pressure and improve transmission efficiency. Secondly, reducing the amount of encoded data saves hardware resources required for encoding, thus reducing hardware requirements and improving encoding efficiency and resource utilization. Furthermore, by encoding the time information of the encoding period of pulse signals with varying pulse widths and the corresponding pulse signal information, the corresponding pulse width can be determined without directly encoding the pulse width. This avoids limiting the range of pulse widths that can be recorded due to hardware limitations such as hardware area and power consumption, thereby improving the imaging dynamic range while reducing the amount of encoded data.
[0068] The technical solutions of this disclosure will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description
[0069] The accompanying drawings, which form part of this specification, illustrate embodiments of this disclosure and, together with the description, serve to explain the principles of this disclosure.
[0070] This disclosure will become clearer with reference to the accompanying drawings and the following detailed description, wherein:
[0071] Figure 1 This is a flowchart of an embodiment of the optical signal encoding method disclosed herein.
[0072] Figure 2 This is an example of relevant information for a pulse signal in an embodiment of this disclosure.
[0073] Figure 3This is an example of relevant information for another pulse signal in an embodiment of this disclosure.
[0074] Figure 4 This is another example of information related to a pulse signal in an embodiment of this disclosure.
[0075] Figure 5 This is a flowchart of another embodiment of the optical signal encoding method disclosed herein.
[0076] Figure 6 This is a flowchart of one embodiment of the decoding method disclosed herein.
[0077] Figure 7 This is a schematic diagram of the structure of an embodiment of the optical signal encoding device disclosed herein.
[0078] Figure 8 This is a schematic diagram of another embodiment of the optical signal encoding device disclosed herein.
[0079] Figure 9 This is a schematic diagram of the circuit structure of a specific implementation example of the encoded data generation circuit in this disclosure.
[0080] Figure 10 This is a schematic diagram of the structure of an embodiment of the decoding device disclosed herein.
[0081] Figure 11 This is a schematic diagram of another embodiment of the decoding device disclosed herein.
[0082] Figure 12 This is a schematic diagram of the structure of an application embodiment of the electronic device disclosed herein. Detailed Implementation
[0083] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.
[0084] Those skilled in the art will understand that the terms "first," "second," etc., in the embodiments of this disclosure are only used to distinguish different steps, devices, or modules, and do not represent any specific technical meaning, nor do they indicate a necessary logical order between them.
[0085] It should also be understood that in the embodiments disclosed herein, "a plurality of" may refer to two or more, and "at least one" may refer to one, two or more.
[0086] It should also be understood that any component, data or structure mentioned in the embodiments of this disclosure can generally be understood as one or more unless expressly defined or given to the contrary in the context.
[0087] Furthermore, the term "and / or" in this disclosure is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this disclosure generally indicates that the preceding and following related objects have an "or" relationship.
[0088] It should also be understood that the description of the various embodiments in this disclosure emphasizes the differences between the various embodiments, and the similarities or similarities can be referred to each other. For the sake of brevity, they will not be described in detail.
[0089] At the same time, it should be understood that, for ease of description, the dimensions of the various parts shown in the accompanying drawings are not drawn according to actual scale.
[0090] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit this disclosure or its application or use.
[0091] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.
[0092] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.
[0093] This disclosure can be applied to electronic devices such as cameras (e.g., pulse cameras), terminal devices, computer systems, and servers, and can operate with a wide range of other general-purpose or special-purpose computing system environments or configurations. Examples of well-known terminal devices, computing systems, environments, and / or configurations suitable for use with cameras, terminal devices, computer systems, servers, and other electronic devices include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, networked personal computers, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems, etc.
[0094] Electronic devices such as cameras, terminal devices, computer systems, and servers can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in distributed cloud computing environments, where tasks are performed by remote processing devices linked through communication networks. In distributed cloud computing environments, program modules can reside on local or remote computing system storage media, including storage devices.
[0095] Figure 1 This is a flowchart illustrating an embodiment of the optical signal encoding method of this disclosure. Figure 1 As shown, the encoding method of this embodiment includes:
[0096] 102, converting the photon stream received in space into a pulse sequence characterizing the light intensity change process, the pulse sequence comprising multiple pulse signals based on time-series relationships.
[0097] For example, in some implementations, the light signal in the space can be continuously collected and converted into an electrical signal for accumulation to obtain the accumulated signal amount. Whenever the accumulated signal amount reaches a preset accumulation threshold, a pulse signal is generated and the accumulated signal amount is set to zero (i.e., reset) so that accumulation can be restarted. Based on the generation time of the pulse signal corresponding to the space, a pulse sequence is generated to express the light intensity and its change process in the space according to the time sequence relationship.
[0098] 104. In response to the change in pulse width of the pulse signal in the pulse sequence, the pulse signals with varying pulse widths are used as target pulse signals. The time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain the encoded information.
[0099] 106. Based on the temporal relationship of the target pulse signals, a coding sequence is formed by the coding information corresponding to each target pulse signal.
[0100] After the encoded sequence is formed based on the embodiments, it can be transmitted to the outside, or it can be transmitted to the outside after further encoding and compression. The receiving end can obtain the encoded sequence by decoding the further encoded and compressed encoded sequence. The embodiments of this disclosure do not limit this.
[0101] Based on this embodiment, only the relevant information of pulse signals with varying pulse widths is encoded, without encoding the relevant information of other pulse signals. The encoded sequence formed by the encoded information of pulse signals with varying pulse widths can reflect the light intensity and its changes in space. Unencoded signals indicate that the light intensity has not changed, thereby reducing the amount of encoded data and the amount of data transmitted externally, which helps to reduce transmission pressure and improve transmission efficiency. Secondly, by reducing the amount of encoded data, the hardware resources required for encoding data can be saved, thereby reducing hardware requirements and helping to improve encoding efficiency and resource utilization. In addition, by encoding the time information of the encoding period of pulse signals with varying pulse widths and the pulse signal information corresponding to that encoding period, the corresponding pulse width can be determined without directly encoding the pulse width. This avoids limiting the range of pulse widths that can be recorded due to hardware limitations such as hardware area and power consumption, thus limiting the imaging dynamic range. It can improve the imaging dynamic range while reducing the amount of encoded data.
[0102] Optionally, in operation 104, the end time and / or start time of the previous pulse width of the target pulse signal with the pulse width change, as well as the number of pulses corresponding to the previous pulse width, can be encoded each time a pulse width change occurs in the pulse sequence. This embodiment of the present disclosure does not limit this.
[0103] Optionally, in some implementations, in operation 104, the pulse start time of the target pulse signal can be used as the time information of the encoding period corresponding to the target pulse signal, and the number of adjacent pulse signals with the same pulse width before the target pulse signal can be used as the pulse signal information corresponding to the encoding period, so as to encode the pulse start time of the target pulse signal and the number of pulse signals with the same pulse width.
[0104] like Figure 2 The image shown is an example of relevant information for a pulse signal in an embodiment of this disclosure. For example... Figure 2As shown, the intensity of each photocurrent segment is marked, i.e., the light signal intensity (light strength) or the converted electrical signal intensity (current intensity). The preset cumulative threshold for photocurrent intensity is set to 20. For a photocurrent intensity of 4, a pulse is triggered after 5 unit cycles to reach the preset cumulative threshold. For the transition of photocurrent intensity from 4 to 5, it is assumed that the photocurrent intensity of 4 lasts for 16 unit cycles. Since a pulse is triggered at the 15th unit cycle, and then the photocurrent intensity of 4 lasts for another unit cycle, when the photocurrent intensity of 5 arrives, it takes (20-4) / 5 = 3.2 unit cycles to reach the preset cumulative threshold and trigger a pulse. Therefore, a pulse is triggered at the end of the 19.2th unit cycle, at which time the pulse interval (i.e., pulse width) is 4.2.
[0105] by Figure 2 For example, in this implementation, since the pulse widths of the pulses generated at the end of the 5th, 10th, and 15th unit cycles are the same (5), while the pulse width of the pulse generated at the end of the 19.2nd unit cycle is 4.2, which is different from the pulse widths of the previous three pulses, the pulse generated at the end of the 19.2nd unit cycle is taken as the target pulse signal. The pulse start time of the target pulse signal (i.e., the pulse end time of the previous adjacent pulse signal) is 15, and the number of adjacent pulse signals with the same pulse width (i.e., the number of pulses) before the target pulse signal is 3. The pulse start time 15 and the number of pulse signals with the same pulse width 3 of the target pulse signal are encoded. The encoding data format can be represented as (t, C), where t represents the time information and C represents the number of pulse signals. This embodiment does not limit the encoding data format. Based on each pair of adjacent encoded information, the encoding period (including the time between the time information in the previous encoded information and the time information in the subsequent encoded information) and the number of pulses with the same pulse width within the encoding period can be determined. By the ratio of the encoding period to the number of pulses, the pulse width of each pulse signal in each time period of the observed scene can be determined.
[0106] Optionally, in some other implementations, in operation 104, the pulse start time of the pulse of the adjacent pulse signal with the same pulse width preceding the target pulse signal can be used as the time information of the encoding period corresponding to the target pulse signal, and the number of pulse signals with the same pulse width can be used as the pulse signal information corresponding to the encoding period, so as to encode the pulse start time of the target pulse signal and the number of pulse signals with the same pulse width.
[0107] Figure 3 This is an example of relevant information for another pulse signal in an embodiment of this disclosure. For example... Figure 3As shown, the pulse width of the pulse generated at the end of the 32.5th unit cycle is 4.4, the pulse width of the pulses generated at the end of the 42.5th, 52.5th, and 62.5th unit cycles is 10, and the pulse width of the pulse generated at the end of the 77th unit cycle is 14.5. Since the pulse width has changed relative to the previous adjacent pulses, the pulse generated at the end of the 77th unit cycle is taken as the target pulse signal. The pulse start time of the pulse signal with the same pulse width adjacent to the target pulse signal is 32.5, and the number of pulse signals with the same pulse width adjacent to the target pulse signal is 3. The pulse start time of 32.5 and the number of pulse signals with the same pulse width adjacent to the target pulse signal are encoded. The encoded data format can be represented as (t, C), where t represents the time information and C represents the number of pulse signals. This embodiment does not limit the encoded data format. Based on each pair of adjacent encoded information, the encoding period (including the time between the time information in the previous encoded information and the time information in the subsequent encoded information) and the number of pulses with the same pulse width within the encoding period can be determined. By the ratio of the encoding period to the number of pulses, the pulse width of each pulse signal in each time period of the observed scene can be determined.
[0108] Optionally, in some of these implementations, in operation 104, the period from the end time of the preceding target pulse signal adjacent to the target pulse signal to the end time of the target pulse signal can be used as the encoding period corresponding to the target pulse signal. The end time of the target pulse signal can be used as the time information of the encoding period corresponding to the target pulse signal, and the number of pulse signals generated within the encoding period corresponding to the target pulse signal can be used as the pulse signal information corresponding to the encoding period. The end time of the target pulse signal and the number of pulse signals generated within the encoding period corresponding to the target pulse signal are then encoded.
[0109] Figure 4 This is another example of relevant information for a pulse signal in an embodiment of this disclosure. For example... Figure 4As shown, the pulse width of the pulse generated at the end of the 32.5th unit cycle is 4.4, and the pulse width of the pulse generated at the end of the 42.5th unit cycle is 10, which is different from the pulse width of the previous adjacent pulses, and is used as the target pulse signal; the pulse width of the pulse generated at the end of the 52.5th and 62.5th unit cycles is 10, which is different from the pulse width of the previous adjacent pulses, and is not used as the target pulse signal; the pulse width of the pulse generated at the end of the 77th unit cycle is 14.5, which is different from the pulse width of the previous adjacent pulses, and is used as the target pulse signal. Taking the pulse generated at the end of the 77th unit cycle as the target pulse signal in this implementation as an example, its encoding period is (42.5, 77]. The pulse end time 77 of the target pulse signal is taken as the time information of the encoding period corresponding to the target pulse signal. The number of pulse signals generated within the encoding period (42.5, 77) is 3. Therefore, the pulse end time 77 of the target pulse signal and the number of pulse signals generated within the encoding period corresponding to the target pulse signal (3) are encoded. The encoding data format can be represented as (t, C), where t represents the time information and C represents the number of pulse signals. This embodiment does not limit the encoding data format. Based on every two adjacent encoding information, the pulse width of the target pulse signal generated by the time information in the latter encoding information can be determined. Based on the pulse width of the target pulse signal, the number of pulses with the same pulse width within the encoding period, and the pulse width in the former encoding information, the number and pulse width of other pulse signals within the encoding period can be determined. Thus, the pulse width of each pulse signal in each time period of the observation scene can be determined. For example, the time information t in the latter encoding information i can be determined in the following way. i The pulse width τ of the generated target pulse signal i :t i -t i-1 -(C i-1 )τ i-1 , where i is the order of the encoded signal in the same encoded sequence, and the value of i is an integer greater than 1, t represents the time information, and C represents the pulse signal information.
[0110] Optionally, in the encoding method of any embodiment of this disclosure, during the process of converting the received photon stream into a pulse sequence characterizing the light intensity change process, each pulse signal is used as the current pulse signal to obtain the pulse width of the current pulse signal; in response to the difference between the pulse width of the current pulse signal and the specified pulse width being greater than a preset deviation value, it can be determined that the pulse width of the current pulse signal has changed, and then the above operation 104 is performed. Otherwise, if the difference between the pulse width of the current pulse signal and the specified pulse width is not greater than the preset deviation value, it can be considered that the pulse width of the current pulse signal has not changed, and no encoding is performed for the current pulse signal; instead, the operation of the embodiment of this disclosure is performed for the next pulse signal in the pulse sequence.
[0111] The difference between the current pulse width and the specified pulse width, i.e., the deviation of the current pulse width relative to the specified pulse width, can be the absolute value of the difference. The preset deviation value can be set according to actual needs; for example, it can be 0, indicating that the current pulse width is the same as the specified pulse width. If the preset deviation value is greater than 0, it means that a small deviation is allowed between the current pulse width and the specified pulse width. As long as the deviation is not greater than the preset deviation value, the pulse width of the current pulse signal can be considered unchanged.
[0112] Optionally, in some implementations, the pulse width of the current pulse signal can be obtained, for example, by, but not limited to, the following methods: Obtaining the actual pulse width of the current pulse signal, which is the cumulative duration of the pulses of the current pulse signal, and is the time interval between the pulses of the current pulse signal and the pulse of the adjacent previous pulse signal. This actual pulse width can be obtained by the time interval between the pulse end time and the pulse start time of the current pulse signal (i.e., the pulse end time of the adjacent previous pulse signal); comparing whether the actual pulse width of the current pulse signal is greater than a preset maximum recording pulse width. This preset maximum recording pulse width can be the maximum pulse width that the hardware supports recording. For example, limited by hardware area, power consumption, and other practical factors, the pulse width that can be recorded is from 0 to 7. The maximum recorded pulse width is 7. If the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width, the pulse width of the current pulse signal is determined as the remainder after dividing the actual pulse width of the current pulse signal by the preset maximum recorded pulse width. For example, if the actual pulse width of the current pulse signal is 10, which exceeds the preset maximum recorded pulse width of 7, then dividing the actual pulse width of the current pulse signal 10 by the preset maximum recorded pulse width of 7 yields a remainder of 3, i.e., 10%7 = 3, so the pulse width of the current pulse signal is determined as 3. If the actual pulse width of the current pulse signal is not greater than the preset maximum recorded pulse width, the pulse width of the current pulse signal is determined as the actual pulse width of the current pulse signal. For example, if the actual pulse width of the current pulse signal is 6, which exceeds the preset maximum recorded pulse width of 7, then the pulse width of the current pulse signal is determined as 6.
[0113] In combination with the above Figure 4 In the example and encoding method shown, since the preset maximum recording pulse width is 7, for the pulse from the end of the 32.5th unit cycle to the end of the 42.5th unit cycle (denoted as (32.5, 42.5]), its width is 10, which exceeds the preset maximum recording pulse width. Therefore, the pulse width of the current pulse signal is determined to be 10%7 = 3. Since the previous pulse width is 32.5 - 28.1 = 4.4, and since 3 and 4.4 are not equal, the pulse generated at the end of the 42.5th unit cycle is used as the target pulse signal and encoded to output the encoded information. The number of pulse signals generated within this encoding cycle (32.5, 42.5] is 1, so the encoded data is (42.5, 42.5]. 5,1), and update the specified pulse width to 3, and set the number of pulse signals to 0; for pulses with encoding period (42.5,52.5], its pulse width is 10%7=3, which is equal to the previous pulse width of 3, and is not used as the target pulse signal, and the number of pulse signals is increased by 1; for pulses with (42.5,52.5], its pulse width is also 3, which is not used as the target pulse signal, and the number of pulse signals is increased by 1; for pulses with (62.5,77], its pulse width is 14.5%7=0.5, which is not equal to the previous pulse width of 3, and is used as the target pulse signal, and the number of pulse signals is increased by 1, and encoding is performed to output the encoded information, then the encoded data is (77,3), and then the number of pulse signals is set to 0.
[0114] In practical applications, due to hardware limitations such as hardware area and power consumption, the range of pulse widths that the hardware can record is limited. In this embodiment, the maximum pulse width that the hardware supports recording is used as the preset maximum recording pulse width. After obtaining the actual pulse width of the current pulse signal, it is compared with whether the actual pulse width of the current pulse signal is greater than the preset maximum recording pulse width. When the actual pulse width of the current pulse signal is not greater than the preset maximum recording pulse width, the actual pulse width of the current pulse signal can be directly recorded. When the actual pulse width of the current pulse signal is greater than the preset maximum recording pulse width, the remainder after dividing the actual pulse width of the current pulse signal by the preset maximum recording pulse width is used as the pulse width of the current pulse signal. This achieves effective recording of the actual pulse width of the current pulse signal, so as to confirm whether the pulse width of the pulse signal has changed.
[0115] In practical applications, when the actual pulse width difference between two adjacent pulse signals is exactly equal to the preset maximum recording pulse width, the pulse widths of these two pulse signals determined based on the embodiments of this disclosure will be the same, resulting in an error. However, in most real-world scenarios, the light intensity change in a single area is not particularly drastic; this situation is a very low probability event and will not affect the overall effect. In an optional implementation, the preset maximum recording pulse width can be reasonably set for the actual scenario to effectively avoid this situation. For example, the preset maximum recording pulse width can be set to the pulse width corresponding to the maximum light intensity in that area in the actual scenario, or to a pulse width greater than the pulse width corresponding to the average light intensity in that area. The embodiments of this disclosure do not limit the specific setting factors and values of the preset maximum recording pulse width.
[0116] Optionally, in some implementations, the specified pulse width may include, but is not limited to, any of the following: the pulse width of the preceding pulse signal adjacent to the current pulse signal; the pulse width of the first pulse signal among a plurality of consecutive pulse signals preceding the current pulse signal, wherein the difference between the pulse width of each pulse signal in the plurality of consecutive pulse signals and the pulse width of the preceding pulse signal is not greater than a preset deviation value, therefore, the pulse width of the plurality of consecutive pulse signals can be considered unchanged; the average pulse width of a plurality of consecutive pulse signals preceding the current pulse signal, wherein the difference between the pulse width of each pulse signal in the plurality of consecutive pulse signals and the pulse width of the preceding pulse signal is not greater than a preset deviation value, therefore, the pulse width of the plurality of consecutive pulse signals can be considered unchanged; and so on.
[0117] Optionally, in the encoding method of any embodiment of this disclosure, after determining that the pulse width of the current pulse signal has changed, the specified pulse width can be updated to the pulse width of the current pulse signal.
[0118] Based on this embodiment, after determining that the pulse width of the current pulse signal has changed, the specified pulse width is updated to the pulse width of the current pulse signal. The pulse width of the current pulse signal is used as the specified pulse width. Through the dynamic updating of the specified pulse width, it is helpful to confirm whether the pulse width of the next pulse signal has changed based on the specified pulse width, thereby realizing the effective determination of whether the pulse width of each pulse signal in the pulse sequence has changed.
[0119] Figure 5 This is a flowchart of another embodiment of the optical signal encoding method of this disclosure. Figure 5 As shown, the encoding method of this embodiment includes:
[0120] 202, converts the photon stream received in space into a pulse sequence characterizing the light intensity change process, which includes multiple pulse signals based on time-series relationships.
[0121] 204. In the process of converting the received photon stream into a pulse sequence that characterizes the change in light intensity, each pulse signal is used as the current pulse signal to obtain the actual pulse width of the current pulse signal.
[0122] In practical applications, the actual pulse width of each generated pulse signal can be obtained by using that pulse signal as the current pulse signal. Alternatively, after obtaining the pulse sequence, the actual pulse width of each pulse signal in the sequence can be obtained by sequentially using each pulse signal in the sequence as the current pulse signal. Or, during the process of obtaining the pulse sequence, the actual pulse width of each pulse signal can be obtained by sequentially using each pulse signal in the sequence as the current pulse signal. In other words, the operations of obtaining the pulse sequence and obtaining the actual pulse width of each pulse signal can be performed asynchronously with any time difference.
[0123] 206. Compare whether the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width.
[0124] If the actual pulse width of the current pulse signal is greater than the preset maximum recording pulse width, execute operation 208; otherwise, if the actual pulse width of the current pulse signal is not greater than the preset maximum recording pulse width, execute operation 210.
[0125] 208. The pulse width of the current pulse signal is determined as the remainder after dividing the actual pulse width of the current pulse signal by the preset maximum recorded pulse width.
[0126] Then, execute operation 212.
[0127] 210. Determine the pulse width of the current pulse signal as the actual pulse width of the current pulse signal.
[0128] 212, compare the pulse width of the current pulse signal with the specified pulse width. If the difference is greater than the preset deviation value.
[0129] If the difference between the current pulse width and the specified pulse width is greater than a preset deviation value, it is determined that the pulse width of the current pulse signal has changed, and operations 214 and 216 are executed respectively; otherwise, if the difference between the current pulse width and the specified pulse width is not greater than the preset deviation value, it is determined that the pulse width of the current pulse signal has not changed, no encoding is performed on the current pulse signal, operation 204 is executed, and the next pulse signal in the pulse sequence is used as the current pulse signal to execute the process of this embodiment of the present disclosure.
[0130] 214 updates the specified pulse width to the pulse width of the current pulse signal.
[0131] Operation 214 is triggered when the difference between the current pulse width and the specified pulse width is greater than a preset deviation value. There are no execution time or order restrictions between this operation and other operations besides operation 212.
[0132] 216. Using the pulse signals with varying pulse widths as target pulse signals, the timing information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain the encoded information.
[0133] 218. Based on the temporal relationship of the target pulse signals, a coding sequence is formed by the coding information corresponding to each target pulse signal.
[0134] Then, operation 204 is executed, using the next pulse signal as the current pulse signal to obtain the actual pulse width of the current pulse signal.
[0135] Optionally, in some implementations, in operation 102, the photon stream received in space can be converted into a pulse sequence characterizing the light intensity change process using a photosensitive unit. Correspondingly, in operation 104, the position of the photosensitive unit in the photosensitive unit array, the time information of the encoding period corresponding to the target pulse signal, and the pulse signal information corresponding to the encoding period can be encoded to obtain the encoded sequence corresponding to the photosensitive unit. The encoded data format can be, for example, represented as (x, y, t, C), where x and y represent the position of the photosensitive unit in the x-th row and y-th column of the photosensitive unit array, respectively, t represents the time information, and C represents the pulse signal information.
[0136] In this system, each photosensitive unit can perform temporal sampling of the optical signal at a specified spatial location within the entire observation scene. In a photosensitive unit array formed by multiple photosensitive units, each unit collects the optical signal from a single space within the observation scene. The spaces corresponding to different photosensitive units do not overlap. The photosensitive units in the array cooperate to cover the entire observation scene, thus enabling the sampling of optical signals throughout the entire scene. The pulse sequences corresponding to all spaces within the observation scene are arranged according to their spatial positions, forming a pulse array. The above embodiment describes the processing of the optical signal collected by a single photosensitive unit. By independently processing the optical signals collected by each photosensitive unit in the array according to the above embodiment, the processing of the optical signals throughout the entire observation scene can be achieved, resulting in an encoded array of pulse signals corresponding to the entire observation scene.
[0137] Optionally, in any embodiment of the encoding method of this disclosure, after forming an encoding sequence from the encoding information corresponding to each target pulse signal, an encoding sequence array can also be formed from the encoding sequences corresponding to each photosensitive unit based on the position of each photosensitive unit in the photosensitive unit array. Then, the encoding sequence array is output using an asynchronous communication protocol, such as Address Event Representation (AER).
[0138] An image at any given time can be reconstructed based on an array of coded sequences. When outputting this array using an asynchronous transmission protocol (AER), each photosensitive unit is assigned an address corresponding to its position within the photosensitive unit array (or image), and events are transmitted via a high-speed digital parallel bus. When a photosensitive unit generates coded information, it assigns a digital address to this information. The coded information is then routed to the target chip via the bus. By analyzing the digital address, the photosensitive unit can send an event to any target neuron in the target chip. In this way, photosensitive units and units / modules with the same address in the target chip are actually connected to the same pulse. The AER protocol can establish virtual connections between neurons, facilitating the efficient hardware implementation of large-scale spiking neural networks (SNNs). Outputting coded information via an asynchronous transmission protocol allows the start times of the output coded information from each photosensitive unit in the array to differ, helping to prevent transmission congestion caused by a large number of photosensitive units simultaneously transmitting large amounts of data, thus avoiding data loss and improving data transmission efficiency and bandwidth utilization.
[0139] Figure 6 This is a flowchart of an embodiment of the decoding method disclosed herein. Figure 6 As shown, the decoding method in this embodiment includes:
[0140] 302, obtain the encoding sequence corresponding to the space.
[0141] The encoded sequence is formed based on the temporal relationship of the encoded information corresponding to the target pulse signal whose pulse width changes in the pulse signal of the pulse signal in the spatial pulse sequence. The encoded information corresponding to the target pulse signal is obtained by encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period.
[0142] The encoding sequence of the embodiments of this disclosure can be obtained through any of the encoding method embodiments described above. The encoding method and decoding method of the embodiments of this disclosure can be implemented by referring to each other, and will not be described again here.
[0143] 304. Decode the encoded sequence corresponding to the space to obtain the decoded result sequence corresponding to the space.
[0144] The decoding result sequence includes decoding results corresponding to at least one target pulse signal based on timing relationships. Each decoding result includes the timing information of the encoding period corresponding to a target pulse signal and the pulse signal information corresponding to the encoding period.
[0145] Based on this embodiment, the encoded sequence corresponding to the space can be decoded to obtain the corresponding decoded result sequence. Each decoded result includes the time information of the encoding period corresponding to a pulse signal with a change in pulse width and the pulse signal information corresponding to the encoding period. Because only the relevant information of pulse signals with varying pulse widths is encoded, without encoding the relevant information of other pulse signals, the encoded sequence formed by the encoded information of pulse signals with varying pulse widths can reflect the light intensity and its changes in space. No encoding means the light intensity has not changed, thus reducing the amount of encoded data and consequently the amount of data transmitted, helping to reduce transmission pressure and improve transmission efficiency. Secondly, reducing the amount of encoded data saves hardware resources required for encoding, thus reducing hardware requirements and improving encoding efficiency and resource utilization. Furthermore, by encoding the time information of the encoding period of pulse signals with varying pulse widths and the corresponding pulse signal information, the corresponding pulse width can be determined without directly encoding the pulse width. This avoids limiting the range of pulse widths that can be recorded due to hardware limitations such as hardware area and power consumption, thereby improving the imaging dynamic range while reducing the amount of encoded data.
[0146] Optionally, in some implementations, in operation 302, an array of encoded sequences corresponding to the observation scene can be obtained, which includes encoded sequences corresponding to each space in the observation scene. Accordingly, in operation 304, the array of encoded sequences can be decoded to obtain encoded result sequences corresponding to each space in the observation scene.
[0147] Optionally, in some implementations, the timing information of the encoding period corresponding to the target pulse signal can be: the pulse start time of the target pulse signal; the pulse signal information corresponding to the encoding period can be: the number of adjacent pulse signals of the same pulse width before the target pulse signal.
[0148] Alternatively, in some other implementations, the timing information of the encoding period corresponding to the target pulse signal can be: the pulse start time of the pulse signal adjacent to the target pulse signal with the same pulse width; the pulse signal information corresponding to the encoding period can be: the number of pulse signals with the same pulse width.
[0149] Alternatively, in some other implementations, the timing information of the encoding period corresponding to the target pulse signal can be: the pulse end time of the target pulse signal; the pulse signal information corresponding to the encoding period includes: the number of pulse signals generated within the encoding period corresponding to the target pulse signal, wherein the encoding period corresponding to the target pulse signal is from the pulse end time of the previous target pulse signal adjacent to the target pulse signal to the pulse end time of the target pulse signal.
[0150] Optionally, in the decoding method of the previous embodiment of this disclosure, after obtaining the decoding result sequence corresponding to the space, the pulse width of the target pulse signal corresponding to the decoding result can be determined based on the decoding result sequence corresponding to the space, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period.
[0151] The specific determination method can be determined based on the meaning of the time information and pulse signal information in the decoding results.
[0152] For example, in some implementations corresponding to the above decoding method, when the time information in the decoding result is the pulse start time of the target pulse signal, and the pulse signal information in the decoding result is the number of adjacent pulse signals with the same pulse width before the target pulse signal, the coding period (including the time between the time information in the previous coding information and the time information in the subsequent coding information) and the number of pulses with the same pulse width within the coding period can be determined based on every two adjacent coding information. The pulse width of each pulse signal in each time period can be determined by the ratio of the coding period to the number of pulses.
[0153] For example, in some implementations corresponding to the above decoding method, when the time information in the decoding result is the pulse start time of the pulse signal with the same pulse width adjacent to the target pulse signal, and the pulse signal information in the decoding result is the number of pulse signals with the same pulse width, based on every two adjacent encoding information, the encoding period corresponding to the previous encoding information (including the time between the time information in the previous encoding information and the time information in the subsequent encoding information) and the number of pulses with the same pulse width within the encoding period can be determined. By the ratio of the encoding period to the number of pulses, the pulse width of each pulse signal in each time period of the observation scene can be determined.
[0154] For example, in some implementations corresponding to the above decoding method, if the encoding period corresponding to the target pulse signal is defined as the period from the end time of the preceding target pulse signal to the end time of the target pulse signal, and the time information in the decoding result is the end time of the target pulse signal, and the pulse signal information in the decoding result is the number of pulse signals generated within the encoding period corresponding to the target pulse signal, then based on every two adjacent encoding information, the pulse width of the target pulse signal generated by the time information in the latter encoding information can be determined. Based on the pulse width of the target pulse signal, the number of pulses with the same pulse width within the encoding period, and the pulse width in the preceding encoding information, the number and pulse width of other pulse signals within the encoding period can be determined. Thus, the pulse width of each pulse signal in each time period of the observed scene can be determined. For example, the time information t in the latter encoding information i can be determined in the following way. i The pulse width τ of the generated target pulse signal i :t i -t i-1 -(C i-1 )τ i-1 , where i is the order of the encoding result in the same encoding sequence, and the value of i is an integer greater than 1, t represents the time information, and C represents the pulse signal information.
[0155] In a specific implementation, each decoding result in the decoding result sequence is the encoded data before encoding each encoded information, and its format can be represented as (x, y, t) for example. i C i ), where i represents the order of each decoding result in its sequence of decoding results. The time information t in each encoded result i can be determined as follows: i The pulse width τ of the generated target pulse signal i :t i -t i-1 -(C i-1 )τ i-1 For example, with Figure 4 Taking the pulse calculation of the target pulse signal generated at the end of the 77th unit cycle in the coding period (62.5,77] as an example, the pulse width of the previous coding period (32.5,42.5] is 10. The encoded data of the target pulse signal output at the end of the 77th unit cycle is (x,y,77,3), and the pulse width is 77-42.5-(3-1)×10=14.5, which is equal to the actual pulse width of the target pulse signal.
[0156] Furthermore, based on the pulse width of the pulse signal corresponding to each decoded result in the spatially corresponding decoding result sequence, the corresponding instantaneous light intensity value can be determined based on the pulse of each pulse signal. Based on the light intensity value of the entire observation scene, image reconstruction can be performed or it can be directly used for target detection.
[0157] Optionally, in the decoding method of the previous embodiment of this disclosure, after obtaining the decoding result sequence corresponding to the space, the light intensity value of the space corresponding to the decoding result can be determined based on the decoding result sequence corresponding to the space, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period.
[0158] For example, the light intensity value I corresponding to each coding period can be obtained in the following way: I = k * C / T. Where T is the duration of the coding period corresponding to the decoding result, C represents the number of pulse signals generated in that coding period, and k is a constant greater than zero. The specific value of k can be set according to actual needs.
[0159] Based on the light intensity values of the entire observation scene, image reconstruction can be performed or it can be directly used for target detection.
[0160] The optical signal encoding and processing method provided in this disclosure can be executed by any suitable device with data processing capabilities, including but not limited to: imaging devices (e.g., pulse cameras), terminal devices, and servers. Alternatively, the optical signal encoding and processing method provided in this disclosure can be executed by a processor, such as by a processor executing the optical signal encoding and processing method mentioned in this disclosure by calling corresponding instructions stored in memory. Further details will not be elaborated below.
[0161] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as ROM, RAM, magnetic disk, or optical disk.
[0162] Figure 7 This is a schematic diagram of an embodiment of the optical signal encoding apparatus of this disclosure. The optical signal encoding apparatus of this embodiment can be used to implement the optical signal encoding methods described above in this disclosure. Figure 7 As shown, the encoding device in this embodiment includes: a conversion module 402, an encoding module 404, and a forming module 406. Wherein:
[0163] The conversion module 402 is used to convert the photon stream received in space into a pulse sequence characterizing the light intensity change process, the pulse sequence including multiple pulse signals based on time-series relationships.
[0164] The encoding module 404 is used to respond to changes in the pulse width of the pulse signal in the pulse sequence, and to encode the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period, respectively, to obtain the encoded information.
[0165] The forming module 406 is used to form an encoded sequence from the encoded information corresponding to each target pulse signal based on the timing relationship of the target pulse signal.
[0166] Based on this embodiment, only the relevant information of pulse signals with varying pulse widths is encoded, without encoding the relevant information of other pulse signals. The encoded sequence formed by the encoded information of pulse signals with varying pulse widths can reflect the light intensity and its changes in space. Unencoded signals indicate that the light intensity has not changed, thereby reducing the amount of encoded data and the amount of data transmitted externally, which helps to reduce transmission pressure and improve transmission efficiency. Secondly, by reducing the amount of encoded data, the hardware resources required for encoding data can be saved, thereby reducing hardware requirements and helping to improve encoding efficiency and resource utilization. In addition, by encoding the time information of the encoding period of pulse signals with varying pulse widths and the pulse signal information corresponding to that encoding period, the corresponding pulse width can be determined without directly encoding the pulse width. This avoids limiting the range of pulse widths that can be recorded due to hardware limitations such as hardware area and power consumption, thus limiting the imaging dynamic range. It can improve the imaging dynamic range while reducing the amount of encoded data.
[0167] Optionally, in some implementations, the conversion module 402 is specifically used to: in response to a change in the pulse width of a pulse signal in a pulse sequence, use each pulse signal with a changed pulse width as a target pulse signal, use the pulse start time of the target pulse signal as the time information of the encoding period corresponding to the target pulse signal, and use the number of adjacent pulse signals with the same pulse width before the target pulse signal as the pulse signal information corresponding to the encoding period, and encode the pulse start time of the target pulse signal and the number of pulse signals with the same pulse width.
[0168] Optionally, in some other implementations, the conversion module 402 is specifically used to: in response to a change in the pulse width of a pulse signal in a pulse sequence, use each pulse signal with a changed pulse width as the target pulse signal, use the pulse start time of the adjacent pulse signal with the same pulse width before the target pulse signal as the time information of the encoding period corresponding to the target pulse signal, and use the number of pulse signals with the same pulse width as the pulse signal information corresponding to the encoding period, and encode the pulse start time of the target pulse signal and the number of pulse signals with the same pulse width.
[0169] Optionally, in some other implementations, the conversion module 402 is specifically used to: respond to changes in the pulse width of the pulse signal in the pulse sequence, take each pulse signal with a changed pulse width as the target pulse signal, take the period from the end time of the previous target pulse signal adjacent to the target pulse signal to the end time of the target pulse signal as the encoding period corresponding to the target pulse signal, take the end time of the target pulse signal as the time information of the encoding period corresponding to the target pulse signal, and take the number of pulse signals generated within the encoding period corresponding to the target pulse signal as the pulse signal information corresponding to the encoding period, and encode the end time of the target pulse signal and the number of pulse signals generated within the encoding period corresponding to the target pulse signal.
[0170] Figure 8 This is a schematic diagram of another embodiment of the optical signal encoding device of this disclosure. Figure 8 As shown, in Figure 7 Based on the illustrated embodiment, the encoding device of this embodiment may further include: a pulse width acquisition module 502, used to acquire the pulse width of the current pulse signal by taking each pulse signal as the current pulse signal during the process of converting the received photon stream into a pulse sequence characterizing the light intensity change process; and a pulse width change determination module 504, used to determine that the pulse width of the current pulse signal has changed in response to the difference between the pulse width of the current pulse signal and a specified pulse width being greater than a preset deviation value.
[0171] Optionally, in some implementations, when the pulse width acquisition module 502 acquires the pulse width of the current pulse signal, it is specifically used to: acquire the actual pulse width of the current pulse signal; compare whether the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width; if the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width, determine the pulse width of the current pulse signal as the remainder after dividing the actual pulse width of the current pulse signal by the preset maximum recorded pulse width; if the actual pulse width of the current pulse signal is not greater than the preset maximum recorded pulse width, determine the pulse width of the current pulse signal as the actual pulse width of the current pulse signal.
[0172] The specified pulse width may include, but is not limited to, any of the following: the pulse width of the preceding pulse signal adjacent to the current pulse signal; the pulse width of the first pulse signal among a plurality of consecutive pulse signals adjacent to the current pulse signal; the average value of the pulse widths of a plurality of consecutive pulse signals adjacent to the current pulse signal; wherein the difference between the pulse width of each pulse signal among the plurality of consecutive pulse signals and the pulse width of the preceding pulse signal is not greater than a preset deviation value.
[0173] Optionally, see also Figure 8 In another embodiment of the optical signal encoding device, it may further include: a pulse width update module 506, which is used to update the specified pulse width to the pulse width of the current pulse signal after the pulse width change determination module 504 determines that the pulse width of the current pulse signal has changed.
[0174] Optionally, in some implementations, the conversion module 402 is specifically used to: convert the photon stream received in space into a pulse sequence characterizing the light intensity change process through the photosensitive unit. Correspondingly, the encoding module 404 is specifically used to: encode the position of the photosensitive unit in the photosensitive unit array, the time information of the encoding period corresponding to the target pulse signal, and the pulse signal information corresponding to the encoding period to obtain the encoding sequence corresponding to the photosensitive unit.
[0175] Optionally, see also Figure 8 In another embodiment of the optical signal encoding device, it may further include: an arrangement module 508, used to form an encoding sequence array from the encoding sequences corresponding to each photosensitive unit based on the position of each photosensitive unit in the photosensitive unit array; and a transmission module 510, used to output the encoding sequence array using an asynchronous communication protocol.
[0176] Figure 9 This is a schematic diagram of the circuit structure of a specific implementation example of the encoded data generation circuit in this disclosure. Figure 9 As shown, the encoded data generation circuit includes: a pulse generation circuit 602, a pulse width counter 604, a pulse width memory 606, a first comparator 608, a pulse count counter 610, and a clock circuit 612. The pulse generation circuit 602 is connected to both the pulse width counter 604 and the first comparator 608. The pulse width counter 604 is connected to the pulse width memory 606, the first comparator 608, and the clock circuit 612. The first comparator 608 is connected to the pulse width memory 606, the pulse count counter 610, and the clock circuit 612.
[0177] in:
[0178] The pulse generation circuit 602 continuously collects optical signals in space and converts them into electrical signals for accumulation to obtain a signal accumulation amount. Whenever the signal accumulation amount reaches a preset accumulation threshold, a pulse signal is generated, and the signal accumulation amount is set to 0 so that accumulation can be restarted.
[0179] The pulse width counter 604, under the control of the clock circuit 612, accumulates and counts during each pulse signal period (i.e., the signal accumulation amount accumulates from zero to a preset accumulation threshold) in the pulse generation circuit 602. When the pulse width count value exceeds the preset maximum recorded pulse width, it is set to 0 so that counting can start again from 0. After the pulse generation circuit 602 generates a pulse signal, it stops counting and outputs the pulse width count value to the first comparator 608 to trigger the first comparator 608 to compare the pulse width count value with the specified pulse width in the pulse width memory 606.
[0180] The clock circuit 612 keeps time according to a unit cycle.
[0181] The pulse width memory 606 stores a specified pulse width value.
[0182] The first comparator 608, triggered by the pulse width counter 604, compares the pulse width count value output by the pulse width counter 604 with the specified pulse width value in the pulse width memory 606, and sets the pulse width count value of the pulse width counter 604 to 0 so that counting starts from 0 again. If the comparison result is the same, the pulse count value of the pulse quantity counter 610 is incremented by 1; if the comparison result is different, the specified pulse width value in the pulse width memory 606 is updated to the pulse width count value output by the pulse width counter 604, triggering the pulse quantity counter 610 to output the pulse quantity count value to the external buffer block, and simultaneously triggering the clock circuit to output timing information to the external buffer block. The pulse quantity count value and timing information can be output to the external buffer block via an asynchronous communication protocol.
[0183] Additionally, each pulse generation circuit 602 can function as a photosensitive unit. Correspondingly, the encoded data generation circuit may further include a scanning circuit 614 that scans the position (x, y) of the pulse generation circuit 602 within the photosensitive unit array, where x and y represent the positions of the pulse generation circuit 602 in the x-th row and y-th column of the photosensitive unit array, respectively. When the comparison results are different, the first comparator 608 can trigger the scanning circuit 614 to scan the position (x, y) of the pulse generation circuit 602 within the photosensitive unit array and output it to an external buffer block.
[0184] Optionally, in some implementations, the pulse generation circuit 602 may include: a photodiode (PD) 6022, a reset transistor 6024, and a second comparator 6026. Wherein:
[0185] The photodiode 6022 has its positive terminal grounded and its negative terminal connected to the source of the reset transistor 6024 and used to output a current signal. When the light signal arrives, the photodiode 6022 begins to collect the light signal and convert it into a current signal. The voltage Vpd on the photodiode 6022 begins to accumulate and decrease under the action of the current. When the voltage Vpd drops to the reference signal Vref (as a preset accumulation threshold), it is reset.
[0186] A photodiode is a photodetector that converts light signals into current or voltage signals. The die typically uses a PN junction with photosensitive characteristics, making it highly sensitive to changes in light. It exhibits unidirectional conductivity, and its electrical properties change with varying light intensity. Therefore, the voltage or current in a circuit can be altered by utilizing the intensity of light.
[0187] The reset transistor 6024 has its source connected to the photodiode 6022, its drain connected to the power supply module Vdd, and its gate connected to the output of the first comparator 608.
[0188] The second comparator 6026 receives a reference signal Vref (as a preset accumulation threshold) at its positive input terminal and receives the voltage Vpd output from the negative terminal of the photodiode 6022 at its negative input terminal. Its output terminal is simultaneously connected to the gate of the reset transistor 6024, the pulse width counter 604, and the first comparator 608. Under the control of the external clock 612, it compares the magnitudes of the reference signal Vref and the voltage Vpd. When the voltage Vpd is greater than the reference signal Vref, it outputs a low level 0 to the pulse width counter 604. When the voltage Vpd is less than or equal to the reference signal Vref, it generates a pulse signal and outputs a high level 1 to the reset transistor 6024 to control the reset transistor 6024 to reset the voltage Vpd.
[0189] Specifically, the reference signal Vref and the voltage Vpd can be compared using the second comparator 6026. When the reference signal Vref is less than or equal to the voltage Vpd, the output terminal outputs a low level (0) to the pulse width counter 604; when the reference signal Vref is greater than the voltage Vpd, the output terminal outputs a high level (1) to the reset transistor 6024. Optionally, the reference signal Vref can be a voltage signal that is less than the power module voltage Vdd.
[0190] Figure 10 This is a schematic diagram of the structure of an embodiment of the decoding apparatus of this disclosure. The decoding apparatus of this embodiment can be used to implement the decoding method embodiments described above. Figure 10 As shown, the decoding device in this embodiment includes: an acquisition module 702 and a decoding module 704. Wherein:
[0191] The acquisition module 702 is used to acquire the spatially corresponding encoding sequence, wherein the encoding sequence is formed based on the temporal relationship of the encoding information corresponding to the target pulse signal whose pulse width changes in the pulse signal of the spatially corresponding pulse sequence, and the encoding information corresponding to the target pulse signal is obtained by encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period.
[0192] The decoding module 704 is used to decode the spatially corresponding encoded sequence to obtain the spatially corresponding decoded result sequence. The decoded result sequence includes the decoded result corresponding to at least one target pulse signal based on the time sequence relationship. Each decoded result includes the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period.
[0193] Based on this embodiment, the encoded sequence corresponding to the space can be decoded to obtain the corresponding decoded result sequence. Each decoded result includes the time information of the encoding period corresponding to a pulse signal with a change in pulse width and the pulse signal information corresponding to the encoding period. Because only the relevant information of pulse signals with varying pulse widths is encoded, without encoding the relevant information of other pulse signals, the encoded sequence formed by the encoded information of pulse signals with varying pulse widths can reflect the light intensity and its changes in space. No encoding means the light intensity has not changed, thus reducing the amount of encoded data and consequently the amount of data transmitted, helping to reduce transmission pressure and improve transmission efficiency. Secondly, reducing the amount of encoded data saves hardware resources required for encoding, thus reducing hardware requirements and improving encoding efficiency and resource utilization. Furthermore, by encoding the time information of the encoding period of pulse signals with varying pulse widths and the corresponding pulse signal information, the corresponding pulse width can be determined without directly encoding the pulse width. This avoids limiting the range of pulse widths that can be recorded due to hardware limitations such as hardware area and power consumption, thereby improving the imaging dynamic range while reducing the amount of encoded data.
[0194] Optionally, in some implementations, the acquisition module 702 is specifically used to: acquire the encoded sequence array corresponding to the observation scene, the encoded sequence array including: the encoded sequence corresponding to each space in the observation scene. Correspondingly, the decoding module 704 is specifically used to: decode the encoded sequence array to obtain the encoded result sequence corresponding to each space in the observation scene.
[0195] Optionally, in some implementations, the timing information of the encoding period corresponding to the target pulse signal can be: the pulse start time of the target pulse signal; the pulse signal information corresponding to the encoding period can be: the number of adjacent pulse signals of the same pulse width before the target pulse signal.
[0196] Alternatively, in some other implementations, the timing information of the encoding period corresponding to the target pulse signal can be: the pulse start time of the pulse signal adjacent to the target pulse signal with the same pulse width; the pulse signal information corresponding to the encoding period can be: the number of pulse signals with the same pulse width.
[0197] Alternatively, in some other implementations, the timing information of the encoding period corresponding to the target pulse signal can be: the pulse end time of the target pulse signal; the pulse signal information corresponding to the encoding period includes: the number of pulse signals generated within the encoding period corresponding to the target pulse signal, wherein the encoding period corresponding to the target pulse signal is from the pulse end time of the previous target pulse signal adjacent to the target pulse signal to the pulse end time of the target pulse signal.
[0198] Figure 11 This is a schematic diagram of another embodiment of the decoding device disclosed herein. Figure 11 As shown, in Figure 10 Based on the embodiment shown, the decoding device of this embodiment may further include: a pulse width determination module 802, used to determine the pulse width of the target pulse signal corresponding to the decoding result based on the spatially corresponding decoding result sequence, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period.
[0199] Optionally, see also Figure 11 ,exist Figure 10 Based on the embodiment shown, the decoding device of this embodiment may further include: a light intensity value determination module 804, used to determine the light intensity value of the space corresponding to the decoding result based on the spatially corresponding decoding result sequence, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period.
[0200] In addition, this disclosure provides a pulse camera, including the optical signal encoding device described in any of the above embodiments of this disclosure.
[0201] Additionally, embodiments of this disclosure provide an electronic device, including:
[0202] Memory, used to store computer programs;
[0203] A processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, it implements the optical signal encoding or decoding method described in any of the above embodiments of the present disclosure.
[0204] Alternatively, in some implementations, the aforementioned electronic device may include, but is not limited to, any of the following: integrated circuits, sensors, etc.
[0205] Optionally, in some implementations, the aforementioned electronic device may include, but is not limited to, any of the following: pulse camera, high-speed camera, audio / video player, navigation device, fixed-position terminal, entertainment unit, smartphone, communication device, device in motor vehicle, camera, action or wearable camera, detection device, flight device, medical device, security device, etc.
[0206] Figure 12 This is a schematic diagram illustrating the structure of an application embodiment of the electronic device disclosed herein. Below, reference is made to… Figure 12 This describes an electronic device according to embodiments of the present disclosure. The electronic device may be either or both of a first device and a second device, or a standalone device independent of them, which may communicate with the first device and the second device to receive acquired input signals from them.
[0207] like Figure 12 As shown, the electronic device includes a pulse signal encoding device, one or more processors, and a memory. The processor may be a central processing unit (CPU) or other form of processing unit with data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
[0208] The memory may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and a processor may execute the program instructions to implement the optical signal encoding or decoding methods and / or other desired functions of the various embodiments of this disclosure described above.
[0209] In one example, the electronic device may also include input devices and output devices, which are interconnected via a bus system and / or other forms of connection mechanism (not shown).
[0210] In addition, the input device may include, for example, a keyboard, a mouse, etc.
[0211] This output device can output various information to the outside, including determined distance information, direction information, etc. The output device may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.
[0212] Of course, for the sake of simplicity, Figure 12 Only some of the components of the electronic device relevant to this disclosure are shown, omitting components such as buses, input / output interfaces, etc. In addition, the electronic device may include any other suitable components depending on the specific application.
[0213] In addition to the methods and apparatus described above, embodiments of this disclosure may also be computer program products comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps of the methods for encoding or decoding optical signals according to various embodiments of this disclosure as described in the foregoing portions of this specification.
[0214] The computer program product can be written in any combination of one or more programming languages to perform the operations of the embodiments of this disclosure. The programming languages include object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0215] Furthermore, embodiments of this disclosure may also be computer-readable storage media storing computer program instructions thereon, which, when executed by a processor, cause the processor to perform the steps in the methods for encoding or decoding optical signals according to various embodiments of this disclosure as described in the foregoing portion of this specification.
[0216] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0217] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as ROM, RAM, magnetic disk, or optical disk.
[0218] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.
[0219] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.
[0220] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.
[0221] The methods and apparatus of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.
[0222] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions to this disclosure.
[0223] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.
[0224] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.
Claims
1. A method for encoding optical signals, characterized in that, include: The photon stream received in space is converted into a pulse sequence characterizing the light intensity change process, the pulse sequence comprising multiple pulse signals based on time-series relationships; In response to a change in the pulse width of the pulse signal in the pulse sequence, each pulse signal with a changed pulse width is used as a target pulse signal. The time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain encoded information. Based on the timing relationship of the target pulse signals, an encoding sequence is formed from the encoding information corresponding to each target pulse signal.
2. The method according to claim 1, characterized in that, Encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period includes: The pulse start time of the target pulse signal is used as the time information of the encoding period corresponding to the target pulse signal, and the number of adjacent pulse signals with the same pulse width before the target pulse signal is used as the pulse signal information corresponding to the encoding period. The pulse start time of the target pulse signal and the number of pulse signals with the same pulse width are encoded.
3. The method according to claim 1, characterized in that, Encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period includes: The pulse start time of the target pulse signal is taken as the pulse start time of the pulse signal with the same pulse width that is adjacent to the target pulse signal, and the number of pulse signals with the same pulse width is taken as the pulse signal information corresponding to the encoding period. The pulse start time of the target pulse signal and the number of pulse signals with the same pulse width are encoded.
4. The method according to claim 1, characterized in that, Encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period includes: The encoding period corresponding to the target pulse signal is defined as the time from the end time of the pulse of the preceding target pulse signal adjacent to the target pulse signal to the end time of the target pulse signal. The end time of the target pulse signal is used as the time information of the encoding period corresponding to the target pulse signal. The number of pulse signals generated within the encoding period corresponding to the target pulse signal is used as the pulse signal information corresponding to the encoding period. The end time of the target pulse signal and the number of pulse signals generated within the encoding period corresponding to the target pulse signal are encoded.
5. The method according to any one of claims 1-4, characterized in that, Also includes: In the process of converting the received photon stream into a pulse sequence that characterizes the light intensity change process, each pulse signal is used as the current pulse signal to obtain the pulse width of the current pulse signal. In response to the difference between the pulse width of the current pulse signal and a specified pulse width being greater than a preset deviation value, it is determined that the pulse width of the current pulse signal has changed. The specified pulse width includes any one of the following: the pulse width of the pulse signal preceding the current pulse signal; the pulse width of the first pulse signal among a plurality of consecutive pulse signals preceding the current pulse signal; the average value of the pulse widths of a plurality of consecutive pulse signals preceding the current pulse signal; wherein the difference between the pulse width of each pulse signal among the plurality of consecutive pulse signals and the pulse width of the preceding pulse signal is not greater than the preset deviation value.
6. The method according to claim 5, characterized in that, Obtain the pulse width of the current pulse signal, including: Obtain the actual pulse width of the current pulse signal; Compare whether the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width; If the actual pulse width of the current pulse signal is greater than the preset maximum recorded pulse width, the pulse width of the current pulse signal is determined to be the remainder after dividing the actual pulse width of the current pulse signal by the preset maximum recorded pulse width; If the actual pulse width of the current pulse signal is not greater than the preset maximum recorded pulse width, the pulse width of the current pulse signal is determined to be the actual pulse width of the current pulse signal.
7. The method according to claim 5, characterized in that, Also includes: After determining that the pulse width of the current pulse signal has changed, the specified pulse width is updated to the pulse width of the current pulse signal.
8. The method according to any one of claims 1-4, characterized in that, The photon stream received in space is converted into a pulse sequence characterizing the light intensity change process, including: The photon stream received in space is converted into a pulse sequence that characterizes the process of light intensity change through a photosensitive unit; The timing information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period are encoded to obtain encoded information, including: The position of the photosensitive unit in the photosensitive unit array, the time information of the encoding period corresponding to the target pulse signal, and the pulse signal information corresponding to the encoding period are encoded to obtain the encoding sequence corresponding to the photosensitive unit.
9. The method according to claim 8, characterized in that, After obtaining the encoding sequence corresponding to the photosensitive unit, the method further includes: Based on the position of each photosensitive unit in the photosensitive unit array, a coding sequence array is formed by the coding sequence corresponding to each photosensitive unit; The encoded sequence array is output using an asynchronous communication protocol.
10. A decoding method, characterized in that, include: Obtain the encoding sequence corresponding to the space, wherein the encoding sequence is formed based on the temporal relationship of the encoding information corresponding to the target pulse signal whose pulse width changes in the pulse signal of the pulse signal in the pulse sequence corresponding to the space, and the encoding information corresponding to the target pulse signal is obtained by encoding the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period; The encoded sequence corresponding to the space is decoded to obtain the decoded result sequence corresponding to the space. The decoded result sequence includes the decoded result corresponding to at least one target pulse signal based on the time sequence relationship. Each decoded result includes the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period.
11. The method according to claim 10, characterized in that, Obtain the encoded sequence corresponding to the space, including: Obtain the coding sequence array corresponding to the observation scene, wherein the coding sequence array includes: the coding sequence corresponding to each space in the observation scene; Decoding the encoded sequence corresponding to the space yields a decoded result sequence corresponding to the space, including: The encoded sequence array is decoded to obtain the encoded result sequence corresponding to each space in the observation scene.
12. The method according to claim 10, characterized in that, The timing information of the encoding period corresponding to the target pulse signal includes: the pulse start time of the target pulse signal; the pulse signal information corresponding to the encoding period includes: the number of adjacent pulse signals of the same pulse width preceding the target pulse signal; or, The timing information of the encoding period corresponding to the target pulse signal includes: the pulse start time of the pulse signal adjacent to the target pulse signal and of the same pulse width; the pulse signal information corresponding to the encoding period includes: the number of pulse signals of the same pulse width; or, The timing information of the encoding period corresponding to the target pulse signal includes: the pulse end time of the target pulse signal; the pulse signal information corresponding to the encoding period includes: the number of pulse signals generated within the encoding period corresponding to the target pulse signal, wherein the encoding period corresponding to the target pulse signal is from the pulse end time of the preceding target pulse signal adjacent to the target pulse signal to the pulse end time of the target pulse signal.
13. The method according to any one of claims 10-12, characterized in that, After obtaining the decoding result sequence corresponding to the space, the method further includes: Based on the decoding result sequence corresponding to the space, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period, the pulse width of the target pulse signal corresponding to the decoding result is determined.
14. The method according to any one of claims 10-12, characterized in that, After obtaining the decoding result sequence corresponding to the space, the method further includes: Based on the decoding result sequence corresponding to the space, the time information of the encoding period in the decoding result, and the pulse signal information corresponding to the encoding period, the light intensity value of the space corresponding to the decoding result is determined.
15. An optical signal encoding device, characterized in that, include: A conversion module is used to convert a photon stream received in space into a pulse sequence characterizing the light intensity change process, the pulse sequence comprising multiple pulse signals based on a time sequence relationship; The encoding module is used to respond to changes in the pulse width of the pulse signal in the pulse sequence, and to encode the time information of the encoding period corresponding to the target pulse signal and the pulse signal information corresponding to the encoding period, respectively, using the pulse signal with each pulse width change as the target pulse signal, to obtain encoded information; The forming module is used to form an encoding sequence from the encoding information corresponding to each of the target pulse signals based on the timing relationship of the target pulse signals.
16. A decoding device, characterized in that, include: An acquisition module is used to acquire a spatially corresponding encoding sequence, wherein the encoding sequence is formed based on a temporal relationship from the encoding information of a target pulse signal whose pulse width changes in the pulse signal of the pulse signal in the spatially corresponding pulse sequence, and the encoding information of the target pulse signal is obtained by encoding the time information of the encoding period of the target pulse signal and the pulse signal information of the encoding period. A decoding module is used to decode the encoded sequence corresponding to the space to obtain a decoded result sequence corresponding to the space. The decoded result sequence includes a decoded result corresponding to at least one target pulse signal based on a timing relationship. Each decoded result includes the timing information of the encoding period corresponding to a target pulse signal and the pulse signal information corresponding to the encoding period.
17. A pulse camera, characterized in that, The optical signal encoding device as described in claim 15.
18. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing a computer program stored in the memory, wherein when the computer program is executed, it implements the method described in any one of claims 1-14.
19. The electronic device according to claim 18, characterized in that, The electronic device includes any one of the following: integrated circuit, sensor.
20. The electronic device according to claim 18, characterized in that, The electronic device is included in any of the following: pulse camera, high-speed camera, audio / video player, navigation device, fixed-position terminal, entertainment unit, smartphone, communication device, device in motor vehicle, camera, action or wearable camera, detection device, flight device, medical device, security device.
21. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method described in any one of claims 1-14.
Citation Information
Patent Citations
Coding method and device of space-time signals
CN105681787A
Ultrawide-band communications system and method
CN1169220A