Information increase generated by apodization
By generating an extended hologram in material analysis and applying a variogram filter to its extended part, the artifact problem in the hologram reconstruction process in the prior art is solved, and more efficient signal retention and better reconstruction quality are achieved.
Patent Information
- Application Number
- CN202411623939.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-11-15
- Filing Date
- 2024-11-14
- Publication Date
- 2025-05-16
AI Technical Summary
The aberration filter used in material analysis in prior art cannot effectively reduce artifacts that occur during hologram reconstruction, especially at the boundaries of the initial hologram, resulting in signal loss and reconstruction quality degradation.
By generating an extended hologram and applying a variogram filter to its extended portion, the artifacts are allowed to propagate to the extended portion rather than reflected back to the internal area of the initial hologram, thereby reducing the impact of the artifacts.
It effectively reduces the generation of artifacts during hologram reconstruction, improves the retention rate of the signal and the quality of the reconstruction image.
Smart Images

Figure CN120010213A_ABST
Abstract
Description
Background Art
[0001] Scientific instruments for materials analysis can help determine the composition and properties of unknown components. In one or more examples, the scientific instrument can provide reconstruction in an energy-based hologram to allow for better viewing of the features of the unknown component. Summary of the invention
[0002] An overview is presented below to provide a basic understanding of one or more embodiments described herein. This overview is not intended to identify key or important elements and / or to delineate the scope of a particular embodiment or the scope of the claims. Its sole purpose is to present concepts in a simplified form as a prelude to a more detailed description presented later. In one or more embodiments, the systems, computer-implemented methods, devices, and / or computer program products described herein may provide a process for generating and / or applying an apodization filter to achieve reconstruction of an image based on a hologram produced by a hologram process, such as an electron energy hologram process (e.g., from applying an energy source to a target component).
[0003] According to one embodiment, a system may include a memory storing computer executable components and a processor executing the computer executable components. The computer executable components may include an acquisition component that obtains a signal of an initial hologram based on energy; an expansion component that expands the initial hologram at a boundary of the initial hologram to generate an extended hologram having an extended portion at the boundary; and a filter application component that applies an apodization filter based on the extended hologram to overlap the extended portion of the extended hologram.
[0004] According to another embodiment, a computer-implemented method may include obtaining, by a system operatively coupled to a processor, a signal of an energy-based initial hologram; extending, by the system, the initial hologram at a boundary of the initial hologram, thereby producing an extended hologram having an extended portion at the boundary; and, based on the extended hologram, applying a trace change filter to overlap the extended portion of the extended hologram.
[0005] According to yet another embodiment, a computer program product facilitates a hologram apodization process, the program instructions being executable by a processor to cause the processor to obtain, by the processor, a signal of an initial hologram based on energy; to extend, by the processor, the initial hologram at a boundary of the initial hologram, thereby generating an extended hologram having an extended portion at the boundary; and, based on the extended hologram, to apply, by the processor, an apodization filter to overlap the extended portion of the extended hologram.
[0006] One or more embodiments disclosed herein can achieve improved performance relative to existing methods. For example, based on applying apodization filters to an extended portion of an extended hologram outside (e.g., outside) an inner region of an initial hologram generated from an obtained signal, artifacts when reconstructing an object image from the extended hologram can be reduced. That is, using apodization filters at the extended portion can allow artifacts from the initial hologram (e.g., the inner region) to propagate into the extended portion, rather than reflecting off the boundary of the initial hologram and back into the inner region. Therefore, the edge of the object image corresponding to the initial hologram (inner region) can be reconstructed with reduced artifacts compared to using existing frameworks. That is, the use of apodization filters as described herein can result in a reduction in signal loss (e.g., relative to the signal defining the initial hologram).
[0007] In one or more embodiments described herein, in addition to the use of apodization filters, the use of blurring of an initial hologram region (e.g., an inner region of an extended hologram) can result in a reduction in ringing-type artifacts at an object image when the object image is reconstructed from the extended and apodized holograms.
[0008] Additionally, one or more embodiments described herein may advantageously provide focus / direction for multiple targets that are at least partially parallel to one another. For example, holograms from two or more targets acted upon by two or more different energy sources may be apodized at least partially parallel to one another.
[0009] Furthermore, the embodiments described herein may be adapted to work with non-square detectors, detectors with broken pixels, combined holograms (eg, produced from holograms taken with respect to shifted sampling or holograms with finite or patchy illumination). BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Each embodiment will be easily understood by the following detailed description in conjunction with the accompanying drawings. For ease of description, the same reference numerals indicate the same structural elements. Each embodiment is illustrated in each figure of the accompanying drawings by way of example and not limitation.
[0011] Figure 1 A block diagram of an example scientific instrument for performing operations according to one or more embodiments described herein is shown.
[0012] Figure 2 The use of one or more embodiments described herein is shown Figure 1 A flow chart of an example method of performing operations on a scientific instrument.
[0013] Figure 3A graphical user interface (GUI) that can be used to perform one or more methods described herein is shown according to one or more embodiments described herein.
[0014] Figure 4 A block diagram of an example computing device that can perform one or more of the methods disclosed herein is shown, according to one or more embodiments described herein.
[0015] Figure 5 A block diagram of an example non-limiting system that can facilitate apodization of hologram reconstruction according to one or more embodiments described herein is shown.
[0016] Figure 6 A block diagram of another example non-limiting system that can facilitate apodization of hologram reconstruction according to one or more embodiments described herein is shown.
[0017] Figure 7 According to one or more embodiments described herein, a Figure 6 A schematic diagram of one or more processes performed by a materials analysis system.
[0018] Fig. 8A Provided are methods that can be used according to one or more embodiments described herein. Figure 6 Schematic diagram of an extended hologram generated by the material analysis system.
[0019] Figure 8B Provided are methods that can be used according to one or more embodiments described herein. Figure 6 A set of schematic diagrams of exemplary apodization filters generated and / or applied by a material analysis system.
[0020] Figure 8C Provided are methods that can be used according to one or more embodiments described herein. Figure 6 Schematic diagram of an exemplary apodization filter generated and / or applied by a material analysis system.
[0021] Fig.8D Provided are methods that can be used according to one or more embodiments described herein. Figure 6 A pair of illustrations of exemplary apodization filters generated by a material analysis system.
[0022] Fig. 8E Provided are methods that can be used according to one or more embodiments described herein. Figure 6 Illustration of a reconstructed image generated by a materials analysis system.
[0023] Fig. 9 Reconstructed images based on different apodization filters applied to the same target component are shown according to one or more embodiments described herein.
[0024] Fig.10 A schematic diagram is shown, which gives Figure 6 A set of inputs and outputs for a non-restrictive system.
[0025] Fig.11 According to one or more embodiments described herein, Figure 6 A flow chart of one or more processes performed by a materials analysis system.
[0026] Fig.12 According to one or more embodiments described herein, Figure 6 The material analysis system performs one or more processes Fig.11 Continuation of the flowchart.
[0027] Fig.13 A block diagram of an example scientific instrument system is shown in which one or more of the methods described herein may be performed, according to one or more embodiments described herein.
[0028] Fig.14 A block diagram is shown of an example operating environment in which implementations of the subject matter described herein may be incorporated.
[0029] Fig.15 An example schematic block diagram of a computing environment is shown with which the subject matter described herein may interact and / or be at least partially implemented. DETAILED DESCRIPTION
[0030] The following detailed description is illustrative only and is not intended to limit the application or utilization of the embodiments and / or embodiments. In addition, there is no intention to be constrained by any express or implied information presented in the previous summary of the invention or the specific implementation part. One or more embodiments are now described with reference to the accompanying drawings, wherein the same reference numerals are used throughout to refer to the same elements. In the following description, for the purpose of explanation, many specific details are set forth to provide a more thorough understanding of one or more embodiments. However, it is apparent that in various cases, one or more embodiments can be practiced without these specific details.
[0031] Various operations may be described as multiple discrete actions or operations in a manner that is most helpful for understanding the subject matter disclosed herein. However, the described order should not be interpreted as implying that these operations must rely on the order. In particular, these operations may be performed in an order different from the order of presentation. The described operations may be performed in an order different from the described embodiments. Various additional operations may be performed, and / or the described operations may be omitted in additional embodiments.
[0032] Turning now to the subject of materials analysis and one or more embodiments described herein, one method of obtaining constituent imaging can be electronic imaging, where a target constituent is targeted by an energy source, ultimately producing a signal that can be used to generate an energy-based hologram (such as an inline electron hologram) or for inline holography via other waves and particles, such as light (EM waves), sound (pressure waves), and / or neutron and / or proton waves (matter waves). That is, the embodiments described herein are applicable to different types of holograms, including inline holograms, electronic energy holograms, and / or other types of holograms.
[0033] From this hologram, a reconstructed image of the target component can be reconstructed. In other methods, the reconstruction can use back propagation. That is, reconstruction in holograms such as low-energy electron holograms (LEEH) can use the wave propagation technique of Fourier optics. The hologram is measured by a detector with a limited number of pixels (e.g. 512×512). In order to avoid the Gibbs phenomenon (ringing of sharp transitions / step functions in wave propagation), some kind of apodization can usually be used. Apodization can be performed by placing a window that gradually smoothes the detected signal to 0 (or the average value) in space. This form of apodization then necessarily discards the information in the detected hologram because it is superimposed on the hologram.
[0034] As used herein, apodization refers to a technique used in a variety of fields, including optics, signal processing, and spectroscopy, to modify the shape and / or intensity distribution of a waveform or signal. For example, with respect to spectroscopy, apodization can be used to modify the shape of one or more spectral lines in a spectrum. By applying an apodization function to the data prior to Fourier transformation, the resolution and accuracy of spectral measurements can be improved.
[0035] For another example, with respect to signal processing, apodization can be used to modify or shape the frequency response of a signal. A window function (such as the filter used herein) can be used to taper the edges of a signal to reduce spectral leakage in Fourier analysis. This apodization can improve the accuracy of spectral analysis and reduce undesirable side lobes in the frequency domain.
[0036] Using inline holography, the highest resolution information can be recorded at the points farthest off-axis (e.g., the outermost points at the edges of the hologram). In other words, the broadest scattered information from the object can hold the highest resolution information. This can make the choice of apodization particularly important to preserve as much information as possible during reconstruction. As used herein, the term "off-axis" refers to being spaced apart from the central axis of the beam containing the reference wave.
[0037] One existing apodization method may be to use a circular apodization filter generated using a cosine profile. However, information contained at the corners and outer edges of the hologram may also contain part of the signal from the target component. Therefore, when using a detector on the hologram, this information from the corners or outer edges will not be retained and / or reconstructed.
[0038] To address one or more inapplicability and / or deficiencies of existing frameworks (e.g., existing apodization frameworks), one or more embodiments are described herein that can use a unique apodization framework to achieve high information collection from a signal generated by applying an energy flow to a target component. The apodization framework can include modification of the hologram, such as by extrapolation to produce an extended hologram, and application of a shaped apodization filter during hologram detection.
[0039] Modification of the hologram may include the generation and use of an extended hologram. That is, an extended portion of the hologram may be generated that constrains at least a portion of an initial hologram formed by applying the energy flow to the target component.
[0040] Then, in conjunction with the detection of the extended hologram (eg the detection of a signal defining the extended hologram), an apodization filter may be applied to at least the extended part of the hologram.
[0041] Thus, a desired increase in information obtained from an image reconstructed from an extended hologram may be obtained compared to existing apodization frameworks. This increase in information may be due, at least in part, to a reduction in artifacts, such as the Gibbs phenomenon (e.g., ringing artifacts), which may be generated during hologram generation and / or during reconstruction.
[0042] The following discussion turns to a general discussion of one or more scientific instrument systems and related methods, computing devices, and computer-readable media disclosed herein. For example, in one or more embodiments, a system may include a memory storing computer executable components and a processor executing the computer executable components stored in the memory. The computer executable components include an acquisition component that obtains a signal based on an energy-based hologram; an expansion component that expands at least a portion of an initial hologram; and a filter application component that, based on the expanded hologram, applies apodization filters to at least the expanded portion of the expanded hologram.
[0043] One or more embodiments disclosed herein may achieve improved performance relative to existing methods. For example, based on applying an apodization filter to an extended portion of a hologram outside (e.g., outside) an inner portion generated from an acquired signal, artifacts (e.g., ghosting artifacts and / or wave artifacts) associated with reconstructing an object image from a hologram may be reduced. That is, using an apodization filter in the extended portion may allow for an increase in information used to generate a reconstructed object image.
[0044] Additionally, an embodiment described herein may advantageously provide focus / direction for multiple targets that are at least partially parallel to each other. For example, holograms from two or more targets acted upon by two or more different energy sources may be smoothed at least partially parallel to each other.
[0045] Furthermore, the embodiments described herein may be adapted to work with non-square detectors, detectors with broken pixels, combined holograms (e.g., produced from holograms taken with respect to shifted sampling and / or holograms with finite or patchy illumination).
[0046] Thus, the embodiments disclosed herein may provide improvements in scientific instrumentation technology (e.g., improvements in computer technology to support such scientific instrumentation, among other improvements), which may be used in a variety of fields including, but not limited to, optics, signal processing, spectroscopy, and nuclear magnetic resonance (NMR).
[0047] Various embodiments of the embodiments disclosed herein can improve existing methods to achieve the technical advantages of high information reconstruction and / or low artifact generation in such reconstruction. That is, the use of the apodization framework provided herein can greatly reduce the generation of artifacts at the edge positions of the reconstructed object image based on the initial hologram. In addition, the use of blurring of one or more aspects of the initial hologram can result in reduced artifacts, such as ringing artifacts, at the inner portion of the resulting reconstructed object image.
[0048] As used herein, the term "object image" may refer to any image of any one or more objects, backgrounds, environments, targets, materials, etc.
[0049] Such technical advantages cannot be achieved through routine and existing methods, and all user entities of systems that include such embodiments can benefit from these advantages (e.g., by using the apodization framework discussed herein for image reconstruction, by helping the user entity perform technical tasks, such as identifying one or more target components).
[0050] Therefore, in addition to the fields of optics, signal processing, spectroscopy and / or NMR, the technical features of the embodiments disclosed herein (e.g., modification of holograms and subsequent filtering and / or tracking processes applied to the modified holograms) are undoubtedly unconventional in the field of material analysis, without limitation, and the same applies to the combination of features of the embodiments disclosed herein.
[0051] As further discussed herein, various aspects of the embodiments disclosed herein can improve the functionality of the computer itself. That is, the computational and user interface features disclosed herein not only relate to the collection and comparison of information, but also apply new analytical and technical means to change the operation of computer analysis of material compounds. For example, based on signals obtained from energy flows interacting with target components, extended holograms that have been subjected to apodization filtering as defined herein can be generated. Based on at least these processes, the subsequent computer-guided process of image reconstruction can be made easier and more efficient by reducing the generation of artifacts such as the Gibbs phenomenon during image reconstruction, which is the result of the earlier computer-guided process of hologram modification and apodization. Therefore, the non-limiting system described herein, including the material analysis system, can be self-improving.
[0052] Thus, the present disclosure introduces functionality that neither existing computing devices nor humans can perform. Instead, such existing computing devices will maintain Gibbs phenomenon generation at non-filtered boundary regions of the initial hologram, resulting in loss or degradation of the signal corresponding to these regions of the initial hologram (e.g., loss of data relative thereto). Given the time, energy, and / or data losses involved, it is not practical to operate within the confines of existing methods.
[0053] Thus, embodiments of the present disclosure may serve any of a number of technical purposes, such as controlling a particular technical system or method; determining how to control a machine based on a measurement result; digital audio, image, or video enhancement or analysis; separation of material sources in a mixed signal; generating data for reliable and / or efficient transmission or storage; providing estimates and confidence intervals for material samples; or providing faster processing of sensor data. In particular, the present disclosure provides technical solutions to technical problems, including but not limited to hologram modification; apodization filter generation; apodization filter application; and / or subsequent image reconstruction, resulting in faster, more thorough, and / or more efficient processing of material samples.
[0054] Thus, embodiments disclosed herein provide improvements to materials analysis technology (eg, improvements in computer technology to support materials analysis, among other improvements).
[0055] As used herein, the phrase "based on" should be understood to mean "based, at least in part, on" unless otherwise specified.
[0056] As used herein, the term "component" may refer to an atomic element, a molecular element, a phase of atomic or molecular elements, or a combination thereof.
[0057] As used herein, the term "data" may include metadata.
[0058] As used herein, the terms "entity," "requesting entity," and "user entity" may refer to machines, devices, components, hardware, software, intelligent devices, parties, organizations, individuals, and / or humans.
[0059] One or more embodiments are now described with reference to the accompanying drawings, wherein the same reference numerals are used throughout to refer to the same drawing elements. In the following description, for the purpose of explanation, numerous specific details are set forth in order to provide a more thorough understanding of one or more embodiments. However, it is apparent that in various circumstances, one or more embodiments may be practiced without these specific details.
[0060] In addition, it should be understood that the embodiments shown in one or more of the figures described herein are for illustrative purposes only, and therefore the architecture of the embodiments is not limited to the systems, devices and / or components shown therein, nor is it limited to any specific order, connection and / or coupling of the systems, devices and / or components shown therein.
[0061] Turning now in particular to one or more of the accompanying drawings, first to Figure 1 , shows a block diagram of a scientific instrument module 100 for performing material analysis operations using apodization techniques according to various embodiments described herein. The scientific instrument module 100 may be implemented by circuitry (e.g., including electrical and / or optical components) such as a programmed computing device. The logical components of the scientific instrument module 100 may be contained in a single computing device or may be distributed across multiple computing devices that communicate with each other, as appropriate. Reference is made herein to Figure 4 Examples of computing devices that may implement the scientific instrument support module 100, either alone or in combination, are discussed in conjunction with computing device 400 and are referred to herein. Fig.13 The scientific instrument system 1300 discusses an example of a system of interconnected computing devices, where the scientific instrument module 100 can be implemented across one or more computing devices.
[0062] The scientific instrument module 100 may include a first logic component 102, a second logic component 104, a third logic component 106, a fourth logic component 108, and a fifth logic component 110. As used herein, the term "logic component" may include a device that performs a set of operations associated with logic. For example, any of the logic elements included in the module 100 is implemented by one or more computing devices, and the one or more computing devices are programmed with instructions to make one or more processing devices of the computing device perform an associated set of operations. In a specific embodiment, the logic element may include one or more non-transient computer-readable media, and the one or more non-transient computer-readable media have instructions thereon, and the instructions are executed by one or more processing devices in one or more computing devices. When the one or more processing devices in the one or more computing devices are executed, the one or more computing devices perform an associated set of operations. As used herein, the term "module" may refer to a collection of one or more logic elements, and the one or more logic elements perform functions associated with the module together. Different logic elements in the logic elements in the module may take the same form or may take different forms. For example, some logic components in the module may be implemented by a programmed general-purpose processing device, while other logic components in the module may be implemented by an application-specific integrated circuit (ASIC). In another example, different ones of the logic elements in a module may be associated with different sets of instructions executed by one or more processing devices. A module may omit one or more logic elements shown in the associated figures; for example, when the module is to perform a subset of the operations discussed herein with reference to the module, the module may include a subset of the logic elements depicted in the associated figures.
[0063] The first logic component 102 may receive, locate, locate and / or otherwise obtain a signal corresponding to an energy-based hologram (eg, generated by an electronic input to a target component). That is, the first logic component 102 may obtain data for generating a reconstructed image of a target (such as a target component).
[0064] The second logic component 104 may generate an extended hologram based on the initial hologram (eg, an energy-based hologram). That is, the second logic component 104 may generate an extended portion beyond the boundary of the initial hologram.
[0065] The third logic component 106 may generate an apodization filter for filtering the extended hologram, and may apply the apodization filter to at least the extended portion of the extended hologram. That is, the third logic component 106 may generate and apply the apodization filter based on the signal obtained by the first logic component 102 and based on the extended hologram generated by the second logic component 104.
[0066] The fourth logic component 108 may blur one or more inner portions of the extended hologram (eg, corresponding to the initial hologram that is a non-extended portion) generated by the second logic component 104. That is, the fourth logic component 108 may apply a filter prior to image reconstruction.
[0067] The fifth logic component 110 may perform reconstruction of the target image based on the modified signal output from the results of using the apodization filter and / or using blurring by the third logic component 106 and the fourth logic component 108 , respectively.
[0068] Figure 2 A flow chart of a method 200 of performing operations of the scientific instrument module 100 according to various embodiments is shown. Although reference may be made to specific embodiments disclosed herein (e.g., Figure 1 The scientific instrument module 100 discussed in this article is referenced Figure 3 GUI 300 discussed herein, reference Figure 4 The computing device 400 discussed herein and / or referenced herein Fig.13 The operation of method 200 is described with reference to the scientific instrument system 1300 discussed above, but method 200 can be used in any suitable setting to perform any suitable operation. Figure 2 The operations are each shown once in a particular order, but the operations may be reordered and / or repeated as needed and appropriate (eg, different operations may be performed in parallel where appropriate).
[0069] At 202, a first operation can be performed. For example, the first logic component 102 of the module 100 can perform the first operation 202. The first operation 202 can include obtaining a signal corresponding to an energy-based hologram (eg, generated by an electronic input to a target component).
[0070] At 204, a second operation may be performed. For example, the second logic component 104 of the module 100 may perform the second operation 204. The second operation 204 may include generating an extended hologram based on the initial hologram (eg, extending the initial hologram into the extended hologram).
[0071] At 206, a third operation may be performed. For example, the third logic component 106 of the module 100 may perform the third operation 206. The third operation 206 may include generating an apodization filter for filtering the extended hologram, and applying the apodization filter to at least the extended portion of the extended hologram.
[0072] At 208, a fourth operation may be performed. For example, the fourth logic component 108 of the module 100 may perform the fourth operation 208. The fourth operation 208 may include blurring an inner portion of the extended hologram, wherein the inner portion corresponds to the initial hologram.
[0073] At 210, a fifth operation may be performed. For example, the fifth logic component 110 of the module 100 may perform the fifth operation 210. The fifth operation 210 may include performing a reconstruction of an image of the object based at least on the third logic component 106, but this may also be based on the fourth logic component 108. That is, the fifth operation 210 may include reconstructing an image of a target (e.g., target 550).
[0074] The scientific instrument methods disclosed herein may include interaction with a user entity (e.g., via the reference Fig.13 These interactions may include providing information to the user entity (e.g., about scientific instruments such as Fig.13 information about the operation of a scientific instrument 1310), information about a sample being analyzed or other test or measurement performed by the scientific instrument, information retrieved from a local or remote database, or other information) or providing a user entity with the option of inputting commands (e.g., controlling a scientific instrument such as Fig.13 In some embodiments, these interactions may be performed through a graphical user interface (GUI) that includes a display device (e.g., a graphical user interface such as a display device such as a display device such as a computer program product such as a computer program product, or a display device such as a computer program product, ... such as a computer program product, or a display device such as a computer program product, such as a computer program product, such as a computer program product, and a display device such as a computer program product, such as a computer program product, and a display device such as Figure 4 410) that provides output to a user entity and / or prompts the user entity to provide input (e.g., via a display device 410 discussed herein). Figure 4 Other I / O devices 412 discussed include one or more input devices such as a keyboard, mouse, trackpad, or touch screen). The scientific instrument system 1300 disclosed herein may include any GUI suitable for interacting with a user entity.
[0075] Next turn Figure 3 , which depicts an example GUI 300 that can be used to perform one or more methods described herein according to various embodiments described herein. As described above, the GUI 300 can be provided on a scientific instrument system (e.g., Fig.13 A computing device (e.g., a scientific instrument system 1300 discussed herein) Figure 4 The computing device 400 discussed herein may include a display device (eg, Figure 4 The user entity may use any suitable input device (e.g., the display device 410 discussed herein) to input the content of the input to the display device 410. Figure 4Any input devices (including those discussed in other I / O devices 412 ) and input techniques (e.g., cursor movement, motion capture, facial recognition, gesture detection, voice recognition, button activation, etc.) interact with GUI 300 .
[0076] GUI 300 may include a data display area 302 , a data analysis area 304 , a scientific instrument control area 306 , and a settings area 308 . Figure 3 The specific number and arrangement of regions shown in GUI 300 is illustrative only, and any number and arrangement of regions including any desired features may be included in GUI 300 .
[0077] The data display area 302 may display data generated by a scientific instrument (e.g., Fig.13 For example, the data display area 302 may display one or more output results, which may include, but are not limited to, text, graphs, charts, matrices, and / or spectra.
[0078] The data analysis area 304 can display the results of the data analysis (e.g., the results of analyzing the data shown in the data display area 302 and / or other data). For example, the data analysis area 304 can display one or more output results. In one or more cases, the data analysis area 304 can display a list, flow chart, or other schematic diagram of the acquisition actions taken and / or recommended with respect to the experiment. In one or more embodiments, the data display area 302 and the data analysis area 304 can be combined in the GUI 300 (e.g., including the data output from the scientific instrument and some analysis of the data in a common graphic or area).
[0079] The scientific instrument control area 306 may include options that allow a user entity to control scientific instruments (e.g., Fig.13 For example, the scientific instrument control area 306 may include one or more controls for inputting one or more metrics of interest.
[0080] The settings area 308 may include options that allow the user to physically control the features and functions of the GUI 300 (and / or other GUIs), and / or to perform common computing operations with respect to the data display area 302 and the data analysis area 304 (e.g., saving data to a storage device (such as a storage device referred to herein)). Figure 4 404), sending data to another user entity, marking data, etc.). For example, the settings area 308 may include one or more options to change the graphical representation (such as FIG. 8 or Fig. 9 The color, fill, or format of an icon).
[0081] As described above, the scientific instrument module 100 may be implemented by one or more computing devices. Therefore, the following discussion turns to Figure 4 , which illustrates a block diagram of a computing device 400 that can perform some or all of the scientific instrument methods disclosed herein, according to various embodiments. In one or more embodiments, the scientific instrument module 100 can be implemented by a single computing device 400 or multiple computing devices 400. In addition, as discussed below, the computing device 400 (or multiple computing devices 400) implementing the scientific instrument module 100 can be Fig.13 A portion of one or more of a scientific instrument 1310, a user local computing device 1320, a service local computing device 1330, or a remote computing device 1340.
[0082] Figure 4 The computing device 400 is shown as having multiple components, but any one or more of these components may be omitted or duplicated depending on the application and settings. As shown, these components may include one or more of a processor 402, a storage device 404, an interface device 406, a battery / power circuit 408, a display device 410, and other input / output (I / O) devices 412, as described below.
[0083] In one or more embodiments, one or more of the components included in computing device 400 may be attached to one or more motherboards and enclosed in a housing (e.g., including plastic, metal, and / or other materials). In one or more embodiments, some of these components may be fabricated onto a single system on a chip (SoC) (e.g., an SoC may include one or more processors 402 and one or more storage devices 404). Additionally, in one or more embodiments, computing device 400 may omit Figure 4 In one or more embodiments, computing device 400 may include interface circuitry (not shown) for coupling to one or more components using any suitable interface (e.g., a universal serial bus (USB) interface, a high-definition multimedia interface (HDMI) interface, a controller area network (CAN) interface, a serial peripheral interface (SPI) interface, an Ethernet interface, a wireless interface, or any other suitable interface). For example, computing device 400 may omit display device 410, but may include display device interface circuitry (e.g., a connector and driver circuitry) to which display device 410 may be coupled.
[0084] Computing device 400 may include processor 402 (e.g., one or more processing devices). As used herein, the term "processing device" may refer to any device or portion of a device that processes electronic data from registers and / or memory to convert the electronic data into other electronic data that can be stored in registers and / or memory. Processor 402 may include one or more digital signal processors (DSPs), application specific integrated circuits (ASICs), central processing units (CPUs), graphics processing units (GPUs), cryptographic processors (specialized processors that execute cryptographic algorithms in hardware), server processors, or any other suitable processing devices.
[0085] The computing device 400 may include a storage device 404 (e.g., one or more storage devices). The storage device 404 may include one or more memory devices, such as a random access memory (RAM) (e.g., a static RAM (SRAM) device, a magnetic RAM (MRAM) device, a dynamic RAM (DRAM) device, a resistive RAM (RRAM) device, or a conductive bridge RAM (CBRAM) device), a hard drive-based memory device, a solid-state memory device, a networked drive, a cloud drive, or any combination of memory devices. In one or more embodiments, the storage device 404 may include a memory that shares a die with the processor 402. In such embodiments, the memory may be used as a cache memory and may include, for example, an embedded dynamic random access memory (eDRAM) or a spin transfer torque magnetic random access memory (STT-MRAM). In one or more embodiments, the storage device 404 may include a non-transitory computer-readable medium having instructions thereon that, when executed by one or more processing devices (e.g., the processor 402), cause the computing device 400 to perform any appropriate method or portion of the methods disclosed herein.
[0086] The computing device 400 may include an interface device 406 (e.g., one or more interface devices 406). The interface device 406 may include one or more communication chips, connectors, and / or other hardware and software to manage communications between the computing device 400 and other computing devices. For example, the interface device 406 may include circuitry for managing wireless communications for transmitting data to and from the computing device 400. The term "wireless" and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communication channels, and the like that may transmit data through a non-solid medium using modulated electromagnetic radiation. The term does not mean that the associated device does not contain any wires, but in one or more embodiments, the associated device may not contain any wires. The circuitry for managing wireless communications included in the interface device 406 may implement any of a variety of wireless standards or protocols, including but not limited to Institute of Electrical and Electronics Engineers (IEEE) standards, including Wi-Fi (IEEE 802.11 series), IEEE 802.16 standards (e.g., IEEE 802.16-2005 amendment), Long Term Evolution (LTE) project and any amendments, updates and / or revisions (e.g., Advanced LTE project, Ultra Mobile Broadband (UMB) project (also known as "3GPP2"), etc.). In one or more embodiments, the circuitry included in the interface device 406 for managing wireless communications may operate according to a Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Evolved HSPA (E-HSPA), or LTE network. In one or more embodiments, the circuitry included in the interface device 406 for managing wireless communications may operate according to an Enhanced Data GSM Evolved In one or more embodiments, the interface device 406 may include one or more antennas (e.g., one or more antenna arrays) to receive and / or send wireless communications.
[0087] In one or more embodiments, the interface device 406 may include a circuit for managing wired communication, such as an electrical communication protocol, an optical communication protocol, or any other suitable communication protocol. For example, the interface device 406 may include a circuit supporting communication according to Ethernet technology. In one or more embodiments, the interface device 406 may support wireless and wired communication, and / or may support multiple wired communication protocols and / or multiple wireless communication protocols. For example, a first group of circuits of the interface device 406 may be dedicated to short-range wireless communication such as Wi-Fi or Bluetooth, and a second group of circuits of the interface device 406 may be dedicated to long-range wireless communication such as global positioning system (GPS), EDGE, GPRS, CDMA, WiMAX, LTE, EV-DO, etc. In one or more embodiments, a first group of circuits of the interface device 406 may be dedicated to wireless communication, and a second group of circuits of the interface device 406 may be dedicated to wired communication.
[0088] Computing device 400 may include battery / power circuitry 408. Battery / power circuitry 408 may include one or more energy storage devices (e.g., batteries or capacitors) and / or circuitry for coupling components of computing device 400 to an energy source separate from computing device 400 (e.g., AC line power).
[0089] Computing device 400 may include display device 410 (eg, multiple display devices). Display device 410 may include any visual indicator, such as a heads-up display, a computer monitor, a projector, a touch screen display, a liquid crystal display (LCD), a light emitting diode display, or a flat panel display.
[0090] The computing device 400 may include other input / output (I / O) devices 412. For example, the other I / O devices 412 may include one or more audio output devices (e.g., speakers, headphones, earbuds, alarms, etc.), one or more audio input devices (e.g., microphones or microphone arrays), a positioning device (e.g., a GPS device that communicates with a satellite-based system to receive the location of the computing device 400 as is known in the art), an audio codec, a video codec, a printer, a sensor (e.g., a thermocouple or other temperature sensor, a humidity sensor, a pressure sensor, a vibration sensor, an accelerometer, a gyroscope, etc.), an image capture device such as a camera, a keyboard, a cursor control device such as a mouse, a stylus, a trackball, or a touchpad, a barcode reader, a quick response (QR) code reader, or a radio frequency identification (RFID) reader.
[0091] The computing device 400 may have any suitable form factor suitable for its applications and settings, such as a handheld or mobile computing device (e.g., a cell phone, a smart phone, a mobile Internet device, a tablet computer, a laptop computer, a netbook computer, an ultrabook computer, a personal digital assistant (PDA), an ultra-mobile personal computer, etc.), a desktop computing device, or a server computing device or other networked computing component.
[0092] Next reference Figure 5 and Figure 6 , in one or more embodiments, Figure 5 and Figure 6 The non-limiting systems 500 and / or 600 shown in FIG. 1 and / or the systems thereof may also include computing environments (such as Fig.15 One or more computers and / or computing-based elements described in the computing environment 1500 shown in FIG. 10A and 10B . In one or more of the described embodiments, the computers and / or computing-based elements may be combined to implement the combined Figure 5 and / or Figure 6 and / or used in combination with one or more of the systems, devices, components, and / or computer-implemented operations illustrated and / or described in other figures described herein.
[0093] First turn Figure 5 , which illustrates a block diagram of an example, non-limiting system 500 that may include a material analysis system 502 and an electronic application device 546. The material analysis system 502 may facilitate a process of generating a reconstructed image based on a signal 555, based on an output from the electronic application device 546. The non-limiting system 500 may be used in conjunction with a holographic system, such as an inline electronic or laser holographic system.
[0094] In one or more embodiments, the material analysis system 502 can be comprised, at least in part, of the computing device 400 .
[0095] In one or more embodiments, the material analysis system 502 can include, at least in part, an energy application device 546 .
[0096] Note that the material analysis system 502 is only briefly described in detail to provide Figure 6 The introduction of the more complex and / or extensive material analysis system 602 shown. That is, the following will be relative to Figure 6 Non-limiting system 600 provides further details regarding processes that may be performed by one or more embodiments described herein.
[0097] Still reference Figure 5, the material analysis system 502 may include at least a memory 504, a bus 505, a processor 506, an acquisition component 510, an expansion component 512, and a filter application component 516. The processor 506 may be the same as, included in, or different from the processor 402. The memory 504 may be the same as, included in, or different from the storage device 404.
[0098] Using the above components, the material analysis system 502 may facilitate the process of generating and applying an apodization filter 554 to an energy-based hologram 553 based on an initial hologram 552 , thereby producing a modified signal 555 that may be used to generate a reconstructed image 558 .
[0099] In general, acquisition component 510 can acquire data (e.g., signal 551) relative to target composition 550, particularly based on energy source 548 applied to target 550 by electron application device 546. Signal 551 can define energy-based hologram 552 and / or be used to generate hologram 552, such as by energy application device 546 and / or material analysis system 502. In one or more embodiments, energy application device 546 can apply electrons, such as an electron beam, to target 550.
[0100] Based on the signal 551, the expansion component 512 can generally expand the initial hologram 552 at the boundary of the initial hologram 552. This can produce a modified hologram, such as an expanded hologram 553 having an expanded portion at the boundary. In particular, the expanded portion can be generated based on the expansion performed and / or at least guided by the expansion component 512.
[0101] Based on the extended hologram 553 comprising the extended portion, and based on the modification signal 555 defining the extended hologram, the filter application component 516 may typically apply an apodization filter 554 to overlap the extended portion of the extended hologram 553 .
[0102] Due to these components, a reconstructed image 558 can be generated based on the extended hologram 553, wherein the reconstructed image 558 can include reduced artifacts compared to images reconstructed by existing frameworks. This can be due, at least in part, to the increase in information of the modified signal 555, which can be used to generate the reconstructed image 558 due to the apodization framework used by the material analysis system 502.
[0103] The obtaining component 510, the expanding component 512, and the filter application component 516 are operably coupled to the processor 506, which is operably coupled to the memory 504. The bus 505 can provide the operational coupling. The processor 506 can facilitate the execution of the obtaining component 510, the expanding component 512, and the filter application component 516. The obtaining component 510, the expanding component 512, and the filter application component 516 can be stored at the memory 504.
[0104] In general, the non-limiting system 500 may use any suitable communication method (eg, electronic, telephony, Internet, infrared, fiber optic, etc.) to provide communication between the material analysis system 502, the electronic application device 546, and / or any device associated with a user entity.
[0105] Next turn Figure 6 , a non-limiting system 600 is shown which may include a material analysis system 602 and an electronic application device 646. For the sake of brevity, repeated descriptions of similar elements and / or processes employed in various embodiments are omitted. Figure 5 The description of the embodiments may be applicable to Figure 6 Similarly, regarding Figure 6 The description of the embodiments may be applicable to Figure 5 implementation plan.
[0106] Typically, the material analysis system 602 may facilitate one or more processes to generate and apply an apodization filter 654 to a modified hologram (e.g., the extended hologram 553), thereby producing a modified signal 655 that can be used to generate a reconstructed image 658 having reduced artifacts compared to a reconstructed image generated by an existing framework.
[0107] In one or more embodiments, the material analysis system 602 can be comprised, at least in part, of the computing device 400 .
[0108] In one or more embodiments, the material analysis system 602 can include, at least in part, an energy application device 646 .
[0109] In one or more embodiments, the energy application device 646 may be comprised of a holographic system, such as an inline electronic or laser holographic system.
[0110] The energy application device 646 (such as an electronic energy application device 646) may include any suitable processor or memory for facilitating one or more processes including, but not limited to, fixing a target 650, applying an energy flow from an energy source 648 to the target 650, generating an initial energy-based hologram 652 from an initial signal 651 produced by the application of the energy flow, and / or detecting the initial hologram 652.
[0111] One or more communications between one or more components of the non-limiting system 600 may be provided via wired and / or wireless means, including but not limited to using a cellular network, a wide area network (WAN) (e.g., the Internet), and / or a local area network (LAN). Suitable wired or wireless technologies for supporting communications may include, but are not limited to, Wireless Fidelity (Wi-Fi), Global System for Mobile Communications (GSM), Universal Mobile Telecommunications System (UMTS), Worldwide Interoperability for Microwave Access (WiMAX), Enhanced General Packet Radio Service (Enhanced GPRS), Third Generation Partnership Project (3GPP) Long Term Evolution (LTE), Third Generation Partnership Project 2 (3GPP2) Ultra Mobile Broadband (UMB), High Speed Packet Access (HSPA), Zigbee and other 802.XX wireless technologies and / or traditional telecommunication technologies, Session Initiation Protocol (SIP), RF4CE protocol, WirelessHART protocol, 6LoWPAN (Ipv6 over Low Power Wireless Area Network), Z-Wave, Advanced and / or Adaptive Networking Technology (ANT), Ultra-Wideband (UWB) standard protocol and / or other proprietary and / or non-proprietary communication protocols.
[0112] The material analysis system 602 can be integrated with a cloud computing environment such as Fig.14 The cloud computing environment 1400 is associated with (such as accessible via) the cloud computing environment.
[0113] The material analysis system 602 may include multiple components. These components may include a memory 604, a processor 606, a bus 605, an acquisition component 610, an expansion component 612, a filter generation component 614, a filter application component 616, a blur component 617, a hologram detection component 618, and / or a reconstruction component 620. Using these components, the material analysis system 602 may output an extended hologram 653, an apodization filter 654, a modified signal 655, and / or a reconstructed image 658.
[0114] Next, the discussion turns to the processor 606, memory 604, and bus 605 of the material analysis system 602. For example, in one or more embodiments, the material analysis system 602 may include a processor 606 (e.g., a computer processing unit, a microprocessor, a classical processor, a quantum processor, and / or the like). In one or more embodiments, as described herein with or without reference to one or more figures of one or more embodiments, the components associated with the material analysis system 602 may include one or more computer and / or machine readable, writable, and / or executable components and / or instructions, which may be executed by the processor 606 to provide the performance of one or more processes defined by such components and / or instructions. In one or more embodiments, the processor 606 may include an expansion component 612, an acquisition component 610, a filter generation component 614, an acquisition component 610, an expansion component 612, a filter generation component 614, a filter application component 616, a blur component 617, a hologram detection component 618, and / or a reconstruction component 620.
[0115] In one or more embodiments, the material analysis system 602 may include a computer-readable memory 604 operably connected to a processor 606. The memory 604 may store computer-executable instructions that, when executed by the processor 606, may cause the processor 606 and / or one or more other components of the material analysis system 602 (e.g., an acquisition component 610, an expansion component 612, a filter generation component 614, a filter application component 616, a blur component 617, a hologram detection component 618, and / or a reconstruction component 620) to perform one or more actions. In one or more embodiments, the memory 604 may store computer-executable components (e.g., an acquisition component 610, an expansion component 612, a filter generation component 614, a filter application component 616, a blur component 617, a hologram detection component 618, and / or a reconstruction component 620).
[0116] The material analysis system 602 and / or its components as described herein can be communicatively, electrically, operatively, optically, and / or otherwise coupled to each other via a bus 605. The bus 605 can include one or more of a memory bus, a memory controller, a peripheral bus, an external bus, a local bus, a quantum bus, and / or another type of bus that can employ one or more bus architectures. One or more of these examples of the bus 605 can be employed.
[0117] In one or more embodiments, the material analysis system 602 can be coupled (e.g., communicatively, electrically, operatively, optically, and / or the like) to one or more external systems (e.g., an electrical output generating system not shown, one or more output targets, and / or output target controllers), sources, and / or devices (e.g., classical and / or quantum computing devices, communication devices, and / or the like), such as via a network. In one or more embodiments, one or more of the components of the material analysis system 602 and / or the non-limiting system 600 can reside in the cloud and / or can reside in a local computing environment (e.g., at a specified location).
[0118] In addition to the processor 606 and / or memory 604 described above, the material analysis system 602 may also include one or more computer and / or machine readable, writable and / or executable components and / or instructions that, when executed by the processor 606, may provide for the performance of one or more operations defined by such components and / or instructions.
[0119] Turning now to the additional components of the material analysis system 602 (e.g., acquisition component 610, expansion component 612, filter generation component 614, filter application component 616, blur component 617, hologram detection component 618, and / or reconstruction component 620), in general, the material analysis system 602 may perform a set of processes that can be divided into three steps: initial signal acquisition and initial hologram expansion, filter generation, and filter application and image reconstruction. In one or more embodiments, the set of processes may also include internal region buffering prior to image reconstruction.
[0120] Turning first to initial signal acquisition and initial hologram expansion, details regarding the acquisition component 610 and the expansion component 612 will be provided.
[0121] Turning first to the acquisition component 610, the component can generally acquire a signal 651. The signal 651 can originate from and / or be caused by the energy application device 646. That is, the signal 651 can be the result of an energy stream being applied to a target 650 by an energy source 648, where the energy source can be an electron energy source that generates an electron beam and / or stream. In one or more embodiments, the target 650 can be fixed by the electron application device 646.
[0122] Temporary turn Figure 7 Schematic diagram 700, based on the acquired signal 651, an initial energy-based hologram 652 can be generated (hologram generation process 704), such as by an energy application device 646 (e.g., by an energy source 648). The initial hologram 652 can generally be generated at a length l from the output end of the energy source 648. dObserved at, where the target 650 is located at a distance l from the output end of the energy source 648 o Place.
[0123] exist Figure 7 In the Fourier optics technique, Ω represents the forward propagation, and Ω -1 represents the back propagation of the wavefield between the detector and the sample.
[0124] The initial hologram 652 will be reconstructed into an image (e.g., reconstructed image 658) to allow viewing of information of the signal 651 corresponding to the target 650. However, using existing apodization techniques, signal loss often occurs, which is undesirable. In fact, using existing apodization techniques, the signal may be lost due to artifacts, such as edge artifacts, ringing artifacts 811 (e.g., caused by the Gibbs phenomenon), ghosting artifacts 813, or other artifacts that may be carried from the initial hologram 652 or created during the reconstruction process 708. In contrast, the material analysis system 602 can perform one or more processes that can reduce or even eliminate these artifacts caused by and / or not reduced / eliminated by existing apodization frameworks. Typically, the material analysis system 602 can add a hologram expansion process, apodization process, and an optional blurring process before the reconstruction process 708.
[0125] For example, still refer to Figure 6 and Figure 7 But now also refer to Fig. 8A Based on the acquired signal 651, the expansion component 612 can expand the initial hologram boundary of the initial hologram 652. The boundary can be an inner boundary or an outer boundary. In one or more embodiments, the expansion can be performed relative to the complete boundary 710 of the initial hologram 652. In one or more other embodiments, the expansion can be performed for at least a portion of the boundary 710, such as for less than the entirety of the complete boundary 710.
[0126] In one or more embodiments, the boundaries at which the expansion can be performed can be different from the outer boundaries of the initial hologram 652, such as in cases where a non-square, flaky, spotted, fragmented and / or only a portion of the initial hologram 652 is generated and / or available, and / or in cases where the initial hologram 652 is an aggregation of multiple holograms.
[0127] In one or more embodiments, the initial hologram 652 may include multiple holograms stitched together, where the holograms belong to different targets 650 or even to the same target 650. In one or more embodiments, the detector used by the non-limiting system 600 may include broken pixels, non-square or non-quadrilateral shapes, resulting in the boundary of the initial hologram to be expanded not being at the outer boundary 710 of the initial hologram.
[0128] More specifically, the expansion component 612 can expand the initial hologram 652, rather than stretching the image of the initial hologram 652, by adding one or more additional expansion portions, typically at the initial hologram outer boundary 710.
[0129] For example, by replicating pixels at the border 710 of the initial hologram 652 and applying these replicated pixels adjacent to the border outside the initial hologram area 652, the initial hologram 652 can be extended in multiple directions to construct an extended portion, such as Fig. 8A The extended portion 802 is shown. Thus, the process can produce an extended hologram 653 having the extended portion 802 and a portion of the initial hologram 652. In other words, the process can result in the data of the initial hologram 652 (the data of the signal 551) being inserted into a larger memory space.
[0130] For example, the expansion may include first copying an existing row of pixels into an adjacent row, and then reducing the copied and applied pixel values by a fixed percentage, such as about 10%. The process may be repeated, with the intensity of the second copied row being about 20% lower than the original data row. This may be repeated until a certain set threshold, such as about 3%.
[0131] For another example, in one or more embodiments, the initial hologram 652 can be expanded by 1 / 32 of the hologram width on all sides in the horizontal direction and by 1 / 32 of the hologram height in the vertical direction. The expansion area 803 is filled with the value of the edge line of the hologram on the corresponding side. Whenever the line is copied, the line can be blurred using a Gaussian blur with σ equal to 2, which produces a progressive blur. The hologram is then further expanded by 15 / 32 of the original hologram size filled with a value of 0. Fig. 8A A particular resulting extended hologram 653 in may have an area that is twice the area of the initial hologram 652. In other words, the process may include the following steps:
[0132] A. Prepare the cosine kernel. The size can be equal to 1 / 32 of the side of the initial hologram 652.
[0133] B. A kernel of size NxM can be generated by computing 1D vectors of length M and N of cosine values in the range -Pi / 2 to Pi / 2, and then computing the outer product of these vectors.
[0134] C. The kernel can be normalized by dividing each element by the sum of all elements of the kernel.
[0135] Specific turn Fig. 8A , the extended portion 802 may at least partially or even completely confine the initial hologram region, thereby forming the extended portion 802. Fig. 8A The boundaries in are shown as being external, but the boundaries may alternatively be internal and / or external. In fact, in one or more embodiments, more than one portion of the initial hologram area may be constrained, such as by different extension portions.
[0136] 8a has both an inner hologram boundary 803 and an outer hologram boundary 804. The inner hologram boundary 803 may generally align with the initial hologram outer boundary at the illustrated boundary 710, such as at least partially abutting or completely abutting therewith.
[0137] The illustrated extended portion 802 has a quadrilateral hologram inner boundary 803 and a quadrilateral hologram outer boundary 804. More specifically, each of these boundaries 803 and 804 is rectangular and also square in shape.
[0138] As shown on the page of FIG. 8 , each of the top, bottom, left, and right portions of the extended portion 802 extends an equal distance from the initial hologram outer boundary 710 .
[0139] In one or more embodiments, the expansion portion 802 can have any other suitable shape.
[0140] In one or more embodiments, the expansion in any one or more directions may be a different distance from any one or more other directions.
[0141] In one or more embodiments, the extended portion 802 may not completely bound the initial hologram area.
[0142] In one or more embodiments, the hologram inner boundary 803 of the extended portion 802 may not fit directly to (eg, abut) at least a portion of the boundary 710, but is not limited thereto.
[0143] Considering any one or more of the foregoing embodiments, the operation of the expansion component 612 may result in the propagation (or reflection) of the original hologram 652 back into the interior region 808 (e.g., Fig. 8A The wave artifact 807 (e.g., of the non-apodized hologram image reconstruction 657) of the initial hologram region (e.g., as shown in the non-apodized hologram image reconstruction 657 in FIG. 6) can additionally be allowed to propagate across the corresponding boundary 710 (whether internal boundary, external boundary, and / or a combination thereof) and into the corresponding extended portion 802. Thus, as shown in the extended hologram 653, the artifact is not visible in the inner region 808 of the initial hologram region (e.g., within the boundary 710). Furthermore, another result of the operation of the expansion component 612 can be that ghosting artifacts 813 that would otherwise be induced in the inner region 808 can be reduced and / or completely prevented.
[0144] That is, more generally, use of the extended portion may allow for reduction and / or elimination of artifacts at the initial hologram 652, resulting in less data being reduced, and therefore more data being added for the reconstruction process 708, compared to existing frameworks.
[0145] Note that initial hologram portion 652 includes various objects 809 for ease of reference and illustration of the various concepts described herein.
[0146] As an example of the above benefits, turn momentarily to Fig. 9 , a graph 900 is shown demonstrating the benefits of the apodization framework provided herein by the non-limiting systems 500 and 600. The graph shows the reconstruction intensity at the y-axis (normalized using artificial quantization units) and the pixel index at the x-axis (in units of number of pixels). Graph 900 shows that a reconstructed image (e.g., reconstructed image 658) reconstructed from the framework discussed herein is free of artifacts compared to a reconstructed image reconstructed using a square apodization filter (e.g., apodization filter 655) and a reconstructed image reconstructed using a circular apodization filter.
[0147] Fig. 9 A diagonal profile may be represented as it best demonstrates the difference between circular apodization and external apodization. The signal in the circle drops to nearly 0 at the extremes of the x-axis, while the outer part maintains maximum intensity.
[0148] Now turn to Figure 8B and Figure 8C Additional illustration of Figure 6 and Figure 7 In addition, various exemplary apodization filter implementations are shown. First, Figure 8B In FIG. 8 , a set of diagrams 851, 852 and 853 are provided. Then, in Figure 8C , another illustration 854 is provided. Each of these illustrated filters may be generated by the filter generation component 614 based on the initial signal 651 obtained by the obtaining component 610 and based on the expansion performed by the expansion component 612, thereby generating a corresponding apodization filter.
[0149] The purpose of the apodization filter may be to apply the apodization filter to the initial hologram 652, thereby generating a modified signal 655, and thereby further generating a modified version of the extended hologram 653. In this way, artifacts at the modified version of the extended hologram 653 may be further reduced and / or eliminated (e.g., filtered out) at one or more extended portions, and / or artifacts otherwise caused by the reconstruction process 708 with respect to one or more extended portions may be reduced and / or eliminated.
[0150] At illustration 851, a first exemplary apodization filter 654 is generated to overlap at least a portion of the extension portion 802. At illustration 851, the apodization filter 654 has an inner filter boundary 862 and an outer filter boundary 864.
[0151] In one or more embodiments, relative to the illustration 851, the apodization filter 654 can be generated to overlap only and / or otherwise be applied to the extended portion 802. In one or more embodiments, the apodization filter 654 can be generated to completely overlap all areas of the extended portion 802. In one or more embodiments, in the case of generating multiple extended portions, multiple apodization filters can be correspondingly generated by the apodization filter generation component 614 to overlap some or all portions of some or all of the multiple extended portions, which is suitable for the needs and / or use of the reconstructed image to be reconstructed using the corresponding extended hologram.
[0152] In one or more embodiments, the apodization filter 654 may be generated by the filter generation component 614 to fit Fig. 8A The extended portion 802 is shown, such as a hologram inner boundary 803 and / or a hologram outer boundary 804 that fits to the extended hologram 653.
[0153] In one or more embodiments, the apodization filter 654 may be generated by the filter generation component 614 to at least partially abut the hologram inner boundary 803 and / or the hologram outer boundary 804 of the extended hologram 653 .
[0154] In one or more embodiments, the apodization filter 654 can be generated by the filter generation component 614 to at least partially abut the initial hologram boundary 710, which is again shown as an outer boundary, but is not limited thereto.
[0155] In one or more embodiments, the apodization filter 654 may be generated by the filter generation component 614 such that at least one of the filter inner boundary 862 or the filter outer boundary 864 is a quadrilateral boundary, such as a rectangular boundary, such as a square boundary.
[0156] In one or more embodiments, the apodization filter 654 can be generated by the filter generation component 614 having both a rectangular filter inner boundary 862 and a rectangular filter outer boundary 864, such as Figure 8B An example of apodization filter 654 is shown in diagram 851 .
[0157] For example, Figure 8B The apodization filter 654 is shown having a quadrilateral filter inner boundary 862 and a quadrilateral filter outer boundary 864. More specifically, each of these boundaries 862 and 864 is rectangular and also square in shape.
[0158] As shown in diagram 851 , each of the top, bottom, left, and right portions of the apodization filter 654 extends an equal distance from the initial hologram outer boundary 710 .
[0159] In one or more embodiments, apodization filter 654 may have any other suitable shape.
[0160] In one or more embodiments, the extension of the apodization filter 654 in any one or more directions may be a different distance than any one or more other directions.
[0161] In one or more embodiments, the apodization filter 654 can be configured to not completely constrain the initial hologram 652 .
[0162] In one or more embodiments, the filter inner boundary 862 of the apodization filter 654 may not fit directly to (eg, abut) at least a portion of the initial hologram boundary 710, but is not limited thereto.
[0163] Temporary turn Figure 8C 854 , in one or more embodiments, the apodization filter 654 can be generated by the filter generation component 614 by applying at least one cosine profile to the signal 651 .
[0164] In one or more embodiments, the filter generation component 614 can be based on the first filter 871 ( Figure 8C and Fig.8D ) and the second filter 872 ( Figure 8C and Fig.8D ) and generates the apodization filter 654 based on the subsequent aggregation of the first filter 871 and the second filter 872. The filter generation component 614 can generate the first filter 871 by using the first cosine profile, and the filter generation component 614 can generate the second filter 872 by using a second cosine profile different from the first cosine profile.
[0165] For example, for the first filter 871, the following first cosine profile can be used: cos(Pi / 2w(w / 2-X)) for X between 0 and w, 0 for X between w and width-w, and cos(Pi / 2w(w / 2-(width-X))) for X between width-X and width.
[0166] For the second filter 872, the following second cosine profile may be used: cos(Pi / 2w(w / 2-Y)) for Y between 0 and w, 0 for Y between w and height-w, and cos(Pi / 2w(w / 2-(height-Y))) for Y between height-Y and width.
[0167] The aggregation of the first filter 871 and the second filter 872 may automatically generate the apodization filter 654 therefrom by using element-wise minimum values (eg, in positive horizontal, negative horizontal, positive vertical, and / or negative vertical directions).
[0168] It will be appreciated that the first and second cosine profiles may be applied at least partially simultaneously with each other. Thus, "first" and "second" are merely reference signs and do not necessarily indicate that one profile is used before the other.
[0169] Next, return to Figure 8B Additional embodiments of apodization filters that may be used are discussed. As shown in diagram 852, an apodization filter 655 may be generated by the filter generation component 614 at the boundary of the initial hologram 652 without generating or using the extension portion 802. Such an apodization filter 655 may be generated using a cosine profile. Such an apodization filter 655 may be generated from an aggregation of a first generation filter and a second generation filter, such as described above, where different and / or the same cosine profiles are used to generate these filters.
[0170] Apodization filter 655 may be combined with apodization filter 654 to form aggregate apodization filter 656 (e.g., diagram 853). In one or more embodiments, both filters 655 and 654 may be generated and then combined. In one or more embodiments, the profiles of filters 655 and 654 may be generated together as a single apodization filter 656.
[0171] The discussion next turns to the application of the apodization filter 654 by the filter application component 616. That is, the filter application component 616 may generally overlap the apodization filter 654 relative to the extended portion 802 of the extended hologram 653.
[0172] The discussion then turns to the fuzzy component 617 and returns to Fig. 8A653 of an extended hologram 653. That is, the blur component 617 may generally blur an interior region of the extended hologram 653 (e.g., corresponding to the initial hologram 652) within the outer boundaries of the initial hologram 652. Such blurring may optionally be performed, such as in addition to using one or more apodization filters as described above. For example, in one or more embodiments, the blurring performed by the blur component 617 may be performed before applying one or more apodization filters or alternatively and / or additionally, after applying one or more apodization filters.
[0173] For example, Fig. 8A As shown in the extended hologram with blur 653 , the extended portion 802 of the object 809 has been blurred, such as similar to what would be produced without apodization at the non-apodized hologram image reconstruction 657 .
[0174] In one or more embodiments, the blur component 617 can gradually increase the blur of the inner region 808 at increasing distances from the center of the inner region 808. That is, the greater the distance of the inner region 808 from the center of the inner region 808, the greater the blur can be used.
[0175] Note that element number 808 is used here for reference only, and the discussion here refers to the interior region of any initial hologram discussed herein.
[0176] Return to reference again Figure 6 , and with reference to the additional components of the material analysis system 602, the hologram detection component 618 can detect one or more aspects of the extended hologram 653, such as corresponding to the modified signal 655. Using the results of the hologram detection component 618, the reconstruction component 620 can reconstruct an image of the target 650 (e.g., reconstructed image 658) using one or more propagation techniques (such as back propagation).
[0177] For example, Fig. 8E As shown, compared with the existing apodization framework, the extended hologram 653, the apodization filter 654 and the optional blur 659 performed by the blur component 617 are used. Fig.10 ) may produce a reconstructed image 658 with reduced artifacts 807, 811, and / or 813 that interfere with available information. Fig. 8E As shown, the initial hologram portion 892 of the reconstructed image 658 includes the object 809 with reduced or no ringing artifact 811 directly near the object 809. In addition, the ghosting artifact 813 and the wave artifact 807 relative to the boundary 710 are eliminated or at most provided within the portion 893 of the reconstructed image 658 corresponding to the extended portion 802, and these artifacts do not cause information loss (e.g., image loss) relative to the initial hologram portion 892.
[0178] That is, compared to the existing framework, ringing, blur, waves, ghosting and / or other artifacts can be reduced at the inner and edge portions of the reconstructed image 658 corresponding to the inner and edge portions of the initial hologram 652.
[0179] In one or more embodiments, the hologram detection component 618 and / or the reconstruction component 620 may be comprised of an energy application device 654, and / or one or more processes described herein as being performed by the hologram detection component 618 and / or the reconstruction component 620 may be performed by the electronic application device 654 or by another device external to the material analysis system 602.
[0180] Now turn to Fig.10 , a schematic diagram 1000 is provided that provides a set of inputs and outputs of a non-limiting system 600 as an overview of the various processes described above. As shown, a signal 651 is the result of applying an electron beam from an energy source 648 to a target 650. Based on the signal 651, an initial hologram 652 can be generated. Based on the initial signal 651 and the initial hologram 652, the expansion component 612 can generate an extended hologram 653. Based on the initial signal 651 and the extended hologram 653, the filter generation component 614 can generate a track filter 654, which can be used to modify the extended hologram 653 when applied to the extended portion 802 of the extended hologram 653 by the filter application component 616. That is, the application of the track filter 654 can produce a modified signal 655, whereby a reconstructed image 658 with reduced artifacts can be reconstructed by using the hologram detection component 618 and / or the reconstruction component 620. Optionally, blur 659 can be applied to the extended hologram 653 by the blur component 617.
[0181] In addition to the above description, additional one or more aspects may be applied to any of the above-described embodiments.
[0182] For example, a signal may be defined by a combination of signals of multiple holograms, and wherein the holograms are combined with each other. That is, in one or more cases, multiple initial holograms may be taken with respect to a shifted sample and then stitched together (eg, positioned adjacent to each other).
[0183] In one or more embodiments, the framework discussed herein can work with non-square detectors and / or detectors with one or more broken pixels.
[0184] For example, not all detectors have square sensors (with the same number of pixels in x and y). For example, digital cameras often have a 4:3 or other ratio. For these solid-state sensors, when a pixel fails, it may become dark so that it always reads 0 regardless of the signal. These failures are a natural wear mechanism and can be caused, for example, by cosmic rays or faulty electronic connections.
[0185] The presence of artificial zeros in the image, like at edges, can lead to ringing problems in the reconstruction and are best identified and filtered.
[0186] In one or more embodiments, the framework discussed herein can be extended to include detected holograms. Figure 1 When working with CMOS, where the illumination source is poor or patchy, for example if a monatomic source is used it can become a trimer (triangular illumination envelope), tailoring the apodization to match the illumination can be beneficial.
[0187] For example, the intensity of the reference wave's contribution to the hologram can be proportional to the illumination source. In the event that the reference wave drops to zero intensity, the interference in that region drops to zero and the hologram is lost. Figure 7 In , the initial hologram 652 assumes an artificial uniform intensity reference wave. In reality, this illumination quality and shape may vary, and by evaluating it, different apodizations may be chosen around it. This may allow preventing noise from creeping into the reconstruction (e.g., of the reconstructed image 658).
[0188] In one or more embodiments, the framework discussed herein can be extended to work with extrapolated data. For example, the detected data can be embedded into a larger reconstruction space, and iterative reconstruction can correctly extrapolate the information.
[0189] For example, iterative reconstruction can improve the quality of the retrieved data (relative to non-iterative or single-shot reconstruction). Additionally, iterative reconstruction can to some extent recover signals lost outside the boundaries of the detected hologram. This should help at least to some extent when reconstructing, also with lower noise.
[0190] As another overview of the above components and their functions, refer to Fig.11 and Fig.12 , showing one or more embodiments described herein (such as Figure 6 600) can facilitate an apodization process for reconstructing a hologram. Figure 6 The non-limiting system 600 of FIG. 600 is used to describe the non-limiting method 1000, but the non-limiting method 1000 may also be applicable to other systems described herein, such as Figure 5 The non-limiting system 500 of FIG. For the sake of brevity, repeated descriptions of similar elements and / or processes employed in various embodiments are omitted.
[0191] At 1102 , the non-limiting method 1100 can include obtaining, by a system operatively coupled to a processor (eg, the obtaining component 610 ), a signal of an energy-based hologram (eg, the initial hologram 652 ).
[0192] In one or more embodiments, a signal may be defined by a combination of signals of multiple holograms, such as where multiple holograms are combined with each other and / or otherwise aggregated.
[0193] At 1104, non-limiting method 1100 may include extending the initial hologram by a system (e.g., expansion component 612) at a boundary of the initial hologram (e.g., boundary 710) to produce an extended hologram (e.g., extended hologram 653) having an extended portion (e.g., extended portion 802) at the boundary.
[0194] In one or more embodiments, only a portion of the initial hologram disposed at the boundary is expanded.
[0195] In one or more embodiments, the initial hologram may include an aggregation of multiple holograms.
[0196] At 1106, non-limiting method 1100 can include allowing, by the system (eg, expansion component 612), an artifact (eg, artifact 807) to propagate into the expanded portion, rather than reflecting the artifact off the boundary and back into the area of the initial hologram.
[0197] At 1108, the non-limiting method 1100 can include generating, by a system (e.g., the filter generation component 614), an apodization filter (e.g., the apodization filter 654) by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary, thereby producing an extended portion of the extended hologram.
[0198] At 1110 , the non-limiting method 1100 can include, based on the extended hologram, applying, by a system (eg, filter application component 616 ), an apodization filter (eg, apodization filter 654 ) to overlap an extended portion of the extended hologram.
[0199] In one or more embodiments, an apodization filter may be applied to at least the extended portion of the extended hologram.
[0200] In one or more embodiments, the apodization filter may be applied only to the extended portion of the extended hologram.
[0201] At 1112, the non-limiting method 1100 may include determining, by the system (e.g., the filter generation component 614), whether an apodization filter is generated for a sufficiently large area of the extended hologram (e.g., the extended hologram 653). If yes, the non-limiting method 1100 may proceed to step 1114. If no, the non-limiting method 1100 may return to steps 1108 and 1110 for generating and applying an apodization filter.
[0202] At 1114 , the non-limiting method 1100 can include using, by a system (eg, the material analysis system 602 ), a detector with corrupted pixels, wherein application of an apodization filter is the same whether the detector has corrupted pixels or does not have corrupted pixels.
[0203] At 1116, non-limiting method 1100 may include, in conjunction with application of apodization filters, detecting an extended hologram (e.g., extended hologram 653) and / or a modified signal defining the extended hologram (e.g., modified signal 655) by a system (e.g., hologram detection component 618) to produce a filtered signal (e.g., modified signal 655).
[0204] At 1118 , the non-limiting method 1100 can include reconstructing, by the system (eg, the reconstruction component 620 ), a reconstructed image (eg, the reconstructed image 658 ).
[0205] Additional Invention Summary
[0206] For simplicity of explanation, the computer-implemented and non-computer-implemented methods provided herein are depicted and / or described as a series of actions. It should be understood that the present invention is not limited by the actions and / or action sequences shown, such as actions can occur in one or more sequences and / or occur simultaneously, and occur together with other actions not presented and described herein. In addition, not all actions shown can be used to implement the computer-implemented and non-computer-implemented methods according to the subject matter. In addition, the computer-implemented and non-computer-implemented methods can alternatively be represented as a series of interrelated states via state diagrams or events. In addition, the computer-implemented methods described hereinafter and throughout this specification can be stored in a manufactured product so that the computer-implemented methods are transported and transferred to a computer. The term "article" as used herein is intended to cover a computer program accessible from any computer-readable device or storage medium.
[0207] The system and / or device has been (and / or will be further) described herein about the interaction between one or more components. Such systems and / or components may include those components or subcomponents specified therein, one or more of the specified components and / or subcomponents and / or additional components. Subcomponents may be implemented as components that are communicatively coupled to other components rather than being included in a parent component. One or more components and / or subcomponents may be combined into a single component that provides aggregate functionality. These components may interact with one or more other components, which are not specifically described herein for the sake of brevity, but are known to those skilled in the art.
[0208] In summary, one or more systems, computer program products, and / or computer-implemented methods provided herein relate to apodization of a hologram. A system may include a memory storing a computer executable component and a processor executing the computer executable component. The computer executable component may include an acquisition component that obtains a signal of an initial hologram based on energy; an expansion component that expands the initial hologram at a boundary of the initial hologram to generate an extended hologram having an extended portion at the boundary; and a filter application component that applies an apodization filter based on the extended hologram to overlap the extended portion of the extended hologram.
[0209] One or more embodiments disclosed herein can achieve improved performance relative to existing methods. For example, based on applying apodization filters to an extended portion of an extended hologram outside (e.g., outside) an inner region of an initial hologram generated from an obtained signal, artifacts when reconstructing an object image from the extended hologram can be reduced. That is, using apodization filters at the extended portion can allow artifacts from the initial hologram (e.g., the inner region) to propagate into the extended portion, rather than reflecting off the boundary of the initial hologram and back into the inner region. Therefore, the edge of the object image corresponding to the initial hologram (inner region) can be reconstructed with reduced artifacts compared to using existing frameworks. That is, the use of apodization filters as described herein can result in a reduction in signal loss (e.g., relative to the signal defining the initial hologram).
[0210] In one or more embodiments described herein, in addition to the use of apodization filters, the use of blurring of an initial hologram region (e.g., an inner region of an extended hologram) can result in a reduction in ringing-type artifacts at an object image when the object image is reconstructed from the extended and apodized holograms.
[0211] Additionally, one or more embodiments described herein may advantageously provide focus / direction for multiple targets that are at least partially parallel to one another. For example, holograms from two or more targets acted upon by two or more different energy sources may be apodized at least partially parallel to one another.
[0212] Furthermore, the embodiments described herein may be adapted to work with non-square detectors, detectors with broken pixels, combined holograms (eg, produced from holograms taken with respect to shifted sampling or holograms with finite or patchy illumination).
[0213] In practice, in view of one or more embodiments described herein, practical application of one or more systems, computer-implemented methods, and / or computer program products described herein can effectively (e.g., based on a single apodization filter or a combination of filters) maximize the available information obtained from a signal sample (e.g., a signal defining a hologram) generated by applying electrons to a target. That is, internal and boundary portions of a hologram can be smoothed and / or a corresponding object image reconstruction with reduced artifacts can be provided. This can be achieved without leaving an unfiltered ring of the sample image with increased artifacts compared to the remainder of the sample image (e.g., the internal portion). In other words, signal loss can be reduced and / or prevented relative to the internal and / or boundary portions of a sample image reconstructed from an energy-based hologram (e.g., a low-energy electron hologram).
[0214] These are useful and practical applications of computers, thus providing enhanced (e.g., improved and / or optimized) material analysis and target data output (e.g., output related to one or more targets sampled using energy-based holograms (such as inline low-energy electron holograms and / or inline high-energy electron holograms)). In general, such computerized tools can bring concrete and significant technical improvements in the field of materials analysis, and more specifically in materials analysis using electron hologram technology.
[0215] Furthermore, based on the disclosed teachings, one or more embodiments described herein may be employed in real-world systems. For example, as described above, one or more embodiments described herein may perform successful reconstruction of holograms with reduced artifacts relative to prior art in the case of varying detector shapes, detectors with one or more broken pixels, single holograms, and / or stitched holograms. Thus, embodiments disclosed herein may provide improvements to scientific instrumentation technology (e.g., improvements in computer technology to support such scientific instruments, among other improvements).
[0216] The system and / or device has been (and / or will be further) described herein about the interaction between one or more components. Such systems and / or components may include those components or subcomponents specified therein, one or more of the specified components and / or subcomponents and / or additional components. Subcomponents may be implemented as components that are communicatively coupled to other components rather than being included in a parent component. One or more components and / or subcomponents may be combined into a single component that provides aggregate functionality. These components may interact with one or more other components, which are not specifically described herein for the sake of brevity, but are known to those skilled in the art.
[0217] One or more of the embodiments described herein may be inherently and / or unavoidably related to computer technology in one or more embodiments and cannot be implemented outside of a computing environment. For example, one or more processes performed by one or more of the embodiments described herein may provide program and / or program instruction execution more efficiently and more feasible than existing systems and / or techniques using holograms, such as with respect to material analysis using holograms. Systems, computer-implemented methods, and / or computer program products that provide the performance of these processes have an important role in the field of material analysis (such as including the use of electron energy holograms) and cannot be implemented in a reasonable manner outside of a computing environment as well.
[0218] One or more embodiments described herein may employ hardware and / or software to solve problems that are highly technical, non-abstract, and cannot be performed by a human through a set of mental actions. For example, one or even thousands of people cannot effectively, accurately, and / or efficiently automatically extend a hologram and generate and / or apply an apodization filter to the resulting extended hologram to subsequently generate a reconstructed target image with artifacts removed, as one or more embodiments described herein may provide. Furthermore, one or more of these processes cannot be performed by a human or a person holding a pen and paper, as one or more embodiments described herein may perform.
[0219] In one or more embodiments, one or more of the processes described herein can be performed by one or more special-purpose computers (e.g., special-purpose processing units, special-purpose classical computers, special-purpose quantum computers, special-purpose hybrid classical / quantum systems, and / or another type of special-purpose computer) to perform defined tasks associated with one or more of the above-mentioned technologies. One or more embodiments described herein and / or components thereof can be used to solve new problems arising from the advancement of the above-mentioned technologies, the adoption of quantum computing systems, cloud computing systems, computer architectures, and / or other technologies.
[0220] One or more embodiments described herein may be fully operable to perform one or more other functions (eg, fully powered on, fully executed, and / or another function) while also performing one or more of the one or more operations described herein.
[0221] To provide additional inventive context, a list of embodiments and their features is provided below.
[0222] A system comprising: a memory storing computer executable components; and a processor executing the computer executable components stored in the memory, wherein the computer executable components include: an obtaining component obtaining a signal of an initial hologram based on energy; an extending component extending the initial hologram at a boundary of the initial hologram to generate an extended hologram having an extended portion at the boundary; and a filter applying component applying a trace change filter to overlap the extended portion of the extended hologram based on the extended hologram.
[0223] A system as described in the preceding paragraphs, wherein the expansion component expands only a portion of the initial hologram disposed at the boundary.
[0224] A system as described in any preceding paragraph, wherein the filter application component applies an apodization filter to at least the extended portion of the extended hologram.
[0225] A system as described in any preceding paragraph, wherein the filter application component applies the apodization filter only to the extended portion of the extended hologram.
[0226] A system as described in any preceding paragraph, wherein the initial hologram comprises an aggregate of a plurality of holograms.
[0227] A system according to any preceding paragraph, further comprising: a filter generation component that generates an apodization filter by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary to produce an extended portion of the extended hologram.
[0228] A system according to any preceding paragraph, further comprising: a blurring component that blurs an interior region of the extended hologram within the boundary prior to application of the apodization filter by the filter application component.
[0229] A system as described in any preceding paragraph, wherein the blur component gradually increases blur of the inner region at increasing distances from a center of the inner region.
[0230] A system as described in any preceding paragraph, wherein the obtaining component uses a detector having corrupted pixels, and wherein applying the apodization filter by the filter applying component is the same whether the detector has corrupted pixels or does not have corrupted pixels.
[0231] A system as described in any preceding paragraph, wherein extending the initial hologram by the extension component allows artifacts to propagate into the extended portion rather than reflecting the artifacts off the boundary and back into the area of the initial hologram.
[0232] A computer-implemented method comprises: obtaining, by a system operatively coupled to a processor, a signal of an initial energy-based hologram; extending, by the system, the initial hologram at a boundary of the initial hologram, thereby generating an extended hologram having an extended portion at the boundary; and applying, based on the extended hologram, a trace change filter to overlap the extended portion of the extended hologram.
[0233] The computer-implemented method of the preceding paragraphs, further comprising: extending, by the system, only a portion of the initial hologram disposed at the boundary.
[0234] A computer-implemented method as described in any preceding paragraph, further comprising: applying, by the system, an apodization filter only to the extended portion of the extended hologram.
[0235] A computer-implemented method as described in any preceding paragraph, further comprising: generating, by the system, an apodization filter by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary, thereby producing an extended portion of the extended hologram.
[0236] A computer-implemented method as described in any preceding paragraph, further comprising blurring, by the system, an interior region of the extended hologram within the boundary prior to applying the apodization filter.
[0237] A computer-implemented method as described in any preceding paragraph, further comprising: gradually increasing, by the system, blurring the inner region at gradually increasing distances from a center of the inner region.
[0238] A computer program product for facilitating a hologram apodization process includes a computer-readable storage medium having program instructions embodied therein, and the program instructions are executable by a processor to cause the processor to: obtain, by the processor, a signal of an initial hologram based on energy; extend, by the processor, the initial hologram at a boundary of the initial hologram, thereby generating an extended hologram having an extended portion at the boundary; and apply, by the processor, an apodization filter based on the extended hologram to overlap the extended portion of the extended hologram.
[0239] A computer program product according to the preceding paragraph, wherein the program instructions are further executable by a processor to cause the processor to: generate an apodization filter by the processor by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary, thereby producing an extended portion of the extended hologram.
[0240] A computer program product as described in any preceding paragraph, wherein the program instructions are further executable by a processor to cause the processor to: blur, by the processor, an interior region of the extended hologram within the boundary before applying the apodization filter.
[0241] A computer program product as described in any preceding paragraph, wherein the program instructions are further executable by a processor to cause the processor to: gradually increase, by the system, the blurring of the interior region at gradually increasing distances from a center of the interior region.
[0242] Scientific Instrument System Description
[0243] Next turn Fig.13 , which provides Figures 1 to 12 A detailed description of the additional context of one or more embodiments described in . One or more computing devices implementing any of the scientific instrument modules or methods disclosed herein may be part of a scientific instrument system. Fig.13 1300, in which one or more scientific instrument methods or other methods disclosed herein may be performed according to various embodiments described herein. Figure 1 The scientific instrument module 100 and Figure 2 The method 200) may be implemented by one or more of the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330 and / or the remote computing device 1340 of the scientific instrument system 1300.
[0244] Any of the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330, and / or the remote computing device 1340 may include any of the foregoing references. Figure 4 Any of the embodiments of computing device 400 discussed herein, and any of scientific instrument 1310, user local computing device 1320, service local computing device 1330, and / or remote computing device 1340 may employ any of the embodiments described herein. Figure 4 Any suitable form of one or more of the embodiments of computing device 400 discussed.
[0245] One or more of the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330, and / or the remote computing device 1340 may include a processing device 1302, a storage device 1304, and / or an interface device 1306. The processing device 1302 may take any suitable form, including reference Figure 4 The processor 402 discussed herein may be in the form of any processor. The processing device 1302 in different devices including the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330 and / or the remote computing device 1340 may take the same form or different forms. The storage device 1304 may take any suitable form, including reference Figure 4 The storage device 1304 in different devices included in the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330 and / or the remote computing device 1340 can take the same form or different forms. The interface device 1306 can take any suitable form, including reference Figure 4 The interface devices 1306 in different devices included in the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330, and / or the remote computing device 1340 may take the same form or different forms.
[0246] The scientific instrument 1310, the user local computing device 1320, the service local computing device 1330, and / or the remote computing device 1340 may communicate with other elements of the scientific instrument system 1300 via a communication path 1308. The communication path 1308 may communicatively couple an interface device 1306 of different elements of the elements of the scientific instrument system 1300, as shown, and may be a wired or wireless communication path (e.g., as described herein with reference to Figure 4 The interface device 406 of the computing device 400 may be any of the communication technologies discussed above). Fig.13The specific scientific instrument system 1300 depicted in FIG. 1 includes a communication path between each pair of devices in the scientific instrument 1310, the user local computing device 1320, the service local computing device 1330, and the remote computing device 1340, but this specific implementation of "fully connected" is merely illustrative, and in various embodiments, various communication paths in the communication paths 1308 may be omitted. For example, in one or more embodiments, the service local computing device 1330 may omit the direct communication path 1308 between its interface device 1306 and the interface device 1306 of the scientific instrument 1310, and may instead communicate with the scientific instrument 1310 via the communication path 1308 between the service local computing device 1330 and the user local computing device 1320 and / or the communication path 1308 between the user local computing device 1320 and the scientific instrument 1310.
[0247] Scientific instrument 1310 may include any suitable scientific instrument, such as a separation or MS instrument, or other instrument that facilitates analysis of materials.
[0248] The user-local computing device 1320 can be a computing device local to a user of the scientific instrument 1310 (e.g., according to any of the embodiments of the computing device 400 discussed herein). In one or more embodiments, the user-local computing device 1320 can also be local to the scientific instrument 1310, but this is not necessarily the case; for example, a user-local computing device 1320 associated with a home, office, or other building associated with a user entity can be remote from the scientific instrument 1310, but in communication with it so that the user entity can use the user-local computing device 1320 to control and / or access data from the scientific instrument 1310. In one or more embodiments, the user-local computing device 1320 can be a laptop, smartphone, or tablet device. In one or more embodiments, the user-local computing device 1320 can be a portable computing device. In one or more embodiments, the user-local computing device 1320 can be deployed in the field.
[0249] The service local computing device 1330 can be a computing device local to the entity serving the scientific instrument 1310 (e.g., according to any of the embodiments of the computing device 400 discussed herein). For example, the service local computing device 1330 can be a device local to the manufacturer of the scientific instrument 1310 or to a third-party service company. In one or more embodiments, the service local computing device 1330 can communicate with the scientific instrument 1310, the user local computing device 1320, and / or the remote computing device 1340 (e.g., via a direct communication path 1308 or via multiple "indirect" communication paths 1308, as described above) to receive data regarding the operation of the scientific instrument 1310, the user local computing device 1320, and / or the remote computing device 1340 (e.g., self-test results of the scientific instrument 1310, calibration coefficients used by the scientific instrument 1310, measurements of sensors associated with the scientific instrument 1310, etc.). In one or more embodiments, the service local computing device 1330 can communicate with the scientific instrument 1310, the user local computing device 1320, and / or the remote computing device 1340 (e.g., via a direct communication path 1308 or via multiple "indirect" communication paths 1308, as described above) to send data to the scientific instrument 1310, the user local computing device 1320, and / or the remote computing device 1340 (e.g., to update programming instructions (such as firmware) in the scientific instrument 1310 to initiate the execution of a test or calibration sequence in the scientific instrument 1310, to update programming instructions (such as software) in the user local computing device 1320 or the remote computing device 1340, etc.). A user entity of the scientific instrument 1310 can communicate with the service local computing device 1330 using the scientific instrument 1310 or the user local computing device 1320 to report a problem with the scientific instrument 1310 or the user local computing device 1320, to request a technician visit to improve the operation of the scientific instrument 1310, to order consumables or replacement parts associated with the scientific instrument 1310, or for other purposes.
[0250] The remote computing device 1340 can be a computing device that is remote from the scientific instrument 1310 and / or the user's local computing device 1320 (e.g., according to any of the embodiments of the computing device 400 discussed herein). In one or more embodiments, the remote computing device 1340 can be included in a data center or other large-scale server environment. In one or more embodiments, the remote computing device 1340 can include network attached storage (e.g., as part of the storage device 1304). The remote computing device 1340 can store data generated by the scientific instrument 1310, perform analysis of data generated by the scientific instrument 1310 (e.g., according to programmed instructions), facilitate communication between the user's local computing device 1320 and the scientific instrument 1310, and / or facilitate communication between the service local computing device 1330 and the scientific instrument 1310.
[0251] In one or more embodiments, the Fig.13 One or more of the elements of the scientific instrument system 1300 shown in FIG. In addition, in one or more embodiments, there may be Fig.13 1300. For example, the scientific instrument system 1300 may include multiple user-local computing devices 1320 (e.g., different user-local computing devices 1320 associated with different user entities or located in different locations). In another example, the scientific instrument system 1300 may include multiple scientific instruments 1310, all of which are in communication with the service local computing device 1330 and / or the remote computing device 1340; in such an embodiment, the service local computing device 1330 may monitor these multiple scientific instruments 1310, and the service local computing device 1330 may cause updates or other information to be "broadcasted" to the multiple scientific instruments 1310 simultaneously. The different scientific instruments 1310 in the scientific instrument system 1300 may be close to each other (e.g., in the same room) or far away from each other (e.g., on different floors of a building, in different buildings, in different cities, etc.). In one or more embodiments, the scientific instrument 1310 may be connected to an Internet of Things (IoT) stack that allows command and control of the scientific instrument 1310 through web-based applications, virtual or augmented reality applications, mobile applications, and / or desktop applications. Any of these applications may be accessed by a user entity operating a user-local computing device 1320 that communicates with the scientific instrument 1310 through an intermediary remote computing device 1340. In one or more embodiments, the scientific instrument 1310 may be sold by a manufacturer along with one or more associated user-local computing devices 1320 as part of a local scientific instrument computing unit 1312.
[0252] In one or more embodiments, the different scientific instruments 1310 included in the scientific instrument system 1300 may be different types of scientific instruments 1310; for example, one scientific instrument 1310 may be an EDS device, while another scientific instrument 1310 may be an analysis device that analyzes the results of the EDS device. In some such embodiments, the remote computing device 1340 and / or the user's local computing device 1320 may combine data from different types of scientific instruments 1310 included in the scientific instrument system 1300.
[0253] Example operating environment
[0254] Fig.1414 is a schematic block diagram of an operating environment 1400 with which the subject matter can interact. The operating environment 1400 includes one or more remote components 1410. The remote component 1410 can be hardware and / or software (e.g., a thread, a process, a computing device). In one or more embodiments, the remote component 1410 can be a distributed computer system connected to a local autoscaling component and / or a program using resources of the distributed computer system via a communication framework 1440. The communication framework 1440 can include wired network devices, wireless network devices, mobile devices, wearable devices, radio access network devices, gateway devices, femtocell devices, servers, etc.
[0255] The operating environment 1400 also includes one or more local components 1420. The local components 1420 can be hardware and / or software (e.g., threads, processes, computing devices). In one or more embodiments, the local components 1420 can include an auto-scaling component and / or a program that communicates with a remote distributed computing system via a communication framework 1440 / uses remote resources 1410 and 1420, etc.
[0256] One possible communication between the remote component 1410 and the local component 1420 may take the form of a data packet suitable for sending between two or more computer processes. Another possible communication between the remote component 1410 and the local component 1420 may take the form of circuit-switched data suitable for sending between two or more computer processes in a radio time slot. The operating environment 1400 includes a communication framework 1440, which can be used to facilitate communication between the remote component 1410 and the local component 1420, and may include an air interface, such as a UMTS network interface via an LTE network, etc. The remote component 1410 may be operably connected to one or more remote data repositories 1450, such as a hard drive, a solid-state drive, a subscriber identity module (SIM) card, an electronic SIM (eSIM), a device memory, etc., which can be used to store information on the remote component 1410 side of the communication framework 1440. Similarly, the local component 1420 may be operably connected to one or more local data repositories 1430, which can be used to store information on the local component 1420 side of the communication framework 1440.
[0257] Sample computing environment
[0258] To provide additional context for the various embodiments described herein, Fig.15The following discussion is intended to provide a brief, general description of a suitable computing environment 1500 in which various embodiments of the embodiments described herein may be implemented. Although the embodiments have been described above in the general context of computer-executable instructions that may be executed on one or more computers, those skilled in the art will recognize that the embodiments may also be implemented in conjunction with other program modules and / or as a combination of hardware and software.
[0259] Generally, program modules include routines, programs, components, data structures, etc. that perform tasks or implement abstract data types. In addition, these methods can be practiced with other computer system configurations, including single-processor or multi-processor computer systems, minicomputers, mainframe computers, Internet of Things (IoT) devices, distributed computing systems, and personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, etc., each of which can be operably coupled to one or more associated devices.
[0260] The embodiments shown herein can also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[0261] Computing devices typically include various media, which may include computer-readable storage media, machine-readable storage media, and / or communication media, the two terms being used differently in this article as shown below. Computer-readable storage media or machine-readable storage media can be any available storage media that can be accessed by a computer, and include volatile and non-volatile media, removable and non-removable media. By way of example and not limitation, computer-readable storage media or machine-readable storage media can be implemented in conjunction with any method or technology for storing information (e.g., computer-readable or machine-readable instructions, program modules, structured data, or unstructured data).
[0262] Computer-readable storage media may include, but are not limited to, random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD ROM), digital versatile disc (DVD), Blu-ray disc (BD) or other optical disc storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage, solid-state drives or other solid-state storage devices, or other tangible and / or non-transitory media that can be used to store the desired information. In this regard, the terms "tangible" or "non-transitory" as applied to storage, memory, or computer-readable media herein exclude only the propagation of transient signals themselves as a modifier, and do not disclaim all rights to standard storage, memory, or computer-readable media that are not merely propagation of transient signals themselves.
[0263] Computer-readable storage media may be accessed by one or more local or remote computing devices, such as via access requests, queries, or other data retrieval protocols, for various operations regarding the information stored by the media.
[0264] Communication media typically includes computer readable instructions, data structures, program modules, or other structured or unstructured data in a data signal (such as a modulated data signal, such as a carrier wave or other transport mechanism), and includes any information delivery or transmission media. The term "modulated data signal" or signal refers to a signal whose one or more characteristics are set or changed so as to encode information in one or more signals. By way of example, but not limitation, communication media include wired media (such as a wired network or direct-wired connection) and wireless media (such as acoustic, RF, infrared and other wireless media).
[0265] Still refer to Fig.15 , an example computing environment 1500 in which one or more embodiments described herein may be implemented includes a computer 1502, which includes a processing unit 1504, a system memory 1506, and a system bus 1508. The system bus 1508 couples system components including, but not limited to, the system memory 1506 to the processing unit 1504. The processing unit 1504 may be any of a variety of commercially available processors. Dual microprocessors and other multi-processor architectures may also be used as the processing unit 1504.
[0266] The system bus 1508 may be any of several types of bus structures and may further interconnect with a memory bus (with or without a memory controller), a peripheral bus, and a local bus using any of a variety of commercially available bus architectures. The system memory 1506 includes ROM 1510 and RAM 1512. A basic input / output system (BIOS) may be stored in a nonvolatile memory such as ROM, erasable programmable read-only memory (EPROM), EEPROM, wherein the BIOS contains the basic routines that help transfer information between elements within the computer 1502, such as during startup. The RAM 1512 may also include high-speed RAM, such as static RAM for caching data.
[0267] The computer 1502 also includes an internal hard disk drive (HDD) 1514 (e.g., EIDE, SATA), and may include one or more external storage devices 1516 (e.g., magnetic floppy disk drive (FDD) 1516, memory stick or flash drive reader, memory card reader, etc.). Although the internal HDD 1514 is illustrated as being located within the computer 1502, the internal HDD 1514 may also be configured for external use in a suitable chassis (not shown). In addition, although not shown in the computing environment 1500, a solid state drive (SSD) may be used in addition to or in place of the HDD 1514.
[0268] Other internal or external storage devices may include at least one other storage device 1520 having a storage medium 1522 (e.g., a solid-state storage device, a non-volatile memory device, and / or an optical drive that can read or write from a removable medium (such as a CD-ROM disk, a DVD, a BD, etc.). The external storage device 1516 can be facilitated by a network virtual machine. The HDD 1514, the external storage device 1516, and the storage device (e.g., drive) 1520 can be connected to the system bus 1508 via a HDD interface 1524, an external storage interface 1526, and a drive interface 1528, respectively.
[0269] The drives and their associated computer-readable storage media provide non-volatile storage of data, data structures, computer-executable instructions, etc. For the computer 1502, the drives and storage media accommodate the storage of any data in a suitable digital format. Although the above description of computer-readable storage media refers to the corresponding type of storage device, other types of storage media that can be read by a computer (whether currently existing or developed in the future) can also be used in the example operating environment, and further, any such storage media can contain computer-executable instructions for performing the methods described herein.
[0270] A number of program modules may be stored in the drives and RAM 1512, including an operating system 1530, one or more applications 1532, other program modules 1534, and program data 1536. All or portions of the operating system, applications, modules, and / or data may also be cached in the RAM 1512. The systems and methods described herein may be implemented using various commercially available operating systems or combinations of operating systems.
[0271] Computer 1502 may optionally include emulation technology. For example, a virtual machine hypervisor (not shown) or other intermediary may emulate the hardware environment for operating system 1530, and the emulated hardware may optionally be different from the hardware environment of operating system 1530. Fig.15 1502. In this embodiment, operating system 1530 may include one of multiple virtual machines (VMs) hosted at computer 1502. In addition, operating system 1530 may provide a runtime environment, such as a Java runtime environment or a .NET framework, for application 1532. The runtime environment is a consistent execution environment that allows application 1532 to run on any operating system that includes a runtime environment. Similarly, operating system 1530 may support containers, and application 1532 may be in the form of containers, which are lightweight, independent, executable software packages that include, for example, the application's code, runtime, system tools, system libraries, and settings.
[0272] In addition, the computer 1502 can be equipped with a security module, such as a trusted processing module (TPM). For example, using a TPM, the boot component hashes the next boot component in time and waits for the result to match the security value before loading the next boot component. This process can be performed at any layer in the code execution stack of the computer 1502, for example, applied to the application execution level or the operating system (OS) kernel level, thereby achieving security of code execution at any level.
[0273] A user entity may enter commands and information into the computer 1502 through one or more wired / wireless input devices (e.g., a keyboard 1538, a touch screen 1540, and a pointing device such as a mouse 1542). Other input devices (not shown) may include a microphone, an infrared (IR) remote control, a radio frequency (RF) remote control or other remote control, a joystick, a virtual reality controller and / or a virtual reality headset, a game controller, a stylus, an image input device (e.g., a camera), a gesture sensor input device, a visual movement sensor input device, an emotion or facial detection device, a biometric input device (e.g., a fingerprint or iris scanner), etc. These and other input devices are typically connected to the processing unit 1504 through an input device interface 1544 that may be coupled to the system bus 1508, but may also be connected through other interfaces, such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR port, a fingerprint or iris scanner, or the like. Interfaces, etc.
[0274] A monitor 1546 or other type of display device may also be connected to the system bus 1508 via an interface, such as a video adapter 1548. In addition to the monitor 1546, computers typically include other peripheral output devices (not shown), such as speakers, printers, and the like.
[0275] The computer 1502 can operate in a network environment, using logical connections to one or more remote computers, such as remote computer 1550, through wired and / or wireless communications. The remote computer 1550 can be a workstation, server computer, router, personal computer, portable computer, microprocessor-based entertainment device, peer device, or other common network node, and typically includes many or all of the elements described relative to the computer 1502, but only a memory / storage device 1552 is shown for simplicity. The depicted logical connections include wired / wireless connections to a local area network (LAN) 1554 and / or a larger network, such as a wide area network (WAN) 1556. Such LAN and WAN networking environments are common in offices and companies and facilitate the establishment of enterprise-wide computer networks (e.g., intranets), all of which can be connected to a global communication network (e.g., the Internet).
[0276] When used in a LAN networking environment, the computer 1502 can be connected to the local network 1554 through a wired and / or wireless communication network interface or adapter 1558. The adapter 1558 can facilitate wired or wireless communication with the LAN 1554, which can also include a wireless access point (AP) disposed thereon for communicating with the adapter 1558 in a wireless mode.
[0277] When used in a WAN networking environment, the computer 1502 may include a modem 1560 or may be connected to a communication server on the WAN 1556 via other means for establishing communications over the WAN 1556 (such as through the Internet). The modem 1560 may be connected to the system bus 1508 via the input device interface 1544, and may be an internal or external device, and may be a wired or wireless device. In a networked environment, program modules depicted relative to the computer 1502 or portions thereof may be stored in the remote memory / storage device 1552. The network connections shown are examples only, and other means of establishing a communications link between the computers may be used.
[0278] When used in a LAN or WAN networking environment, the computer 1502 can access a cloud storage system or other network-based storage system in addition to or as an alternative to the external storage device 1516 described above. Typically, the connection between the computer 1502 and the cloud storage system can be established through the LAN 1554 or WAN 1556, for example, by an adapter 1558 or a modem 1560, respectively. When the computer 1502 is connected to the associated cloud storage system, the external storage interface 1526 can manage the storage provided by the cloud storage system with the help of the adapter 1558 and / or the modem 1560, just as it manages other types of external storage. For example, the external storage interface 1526 can be configured to provide access to cloud storage sources as if those sources were physically connected to the computer 1502.
[0279] Computer 1502 is operable to communicate with any wireless device or entity that operates in a wireless communication manner (e.g., printers, scanners, desktop and / or portable computers, portable data assistants, communication satellites, any device or location associated with a wirelessly detectable tag (e.g., kiosks, newsstands, store shelves, etc.), and telephones). This may include Wireless Fidelity (Wi-Fi) and Wireless technology. Therefore, the communication can be a defined structure like existing networks, or just an ad hoc communication between at least two devices.
[0280] Additional Information
[0281] The embodiments described herein may be directed to one or more of the systems, methods, devices and / or computer program products at any possible level of technical detail integration. A computer program product may include a computer-readable storage medium (or multiple media) having a computer-readable program instruction thereon, and the computer-readable program instruction is used to cause a processor to perform various aspects of one or more embodiments described herein. A computer-readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a superconducting storage device and / or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media may also include the following: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device (such as a punch card or a raised structure in a groove with instructions recorded thereon) and / or any suitable combination of the above. Computer-readable storage media as used herein should not be interpreted as transient signals themselves, such as radio waves and / or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides and / or other transmission media (for example, light pulses transmitted through fiber optic cables), and / or electrical signals sent through wires.
[0282] Computer-readable program instructions as described herein can be downloaded from computer-readable storage media to corresponding computing / processing equipment and / or downloaded to external computers or external storage devices via a network (e.g., the Internet, local area network, wide area network and / or wireless network). The network may include copper transmission cables, optical transmission optical fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. Network adapter cards or network interfaces in each computing / processing equipment receive computer-readable program instructions from the network, and forward computer-readable program instructions to be stored in computer-readable storage media in corresponding computing / processing equipment. Computer-readable program instructions for performing the operation of one or more embodiments described herein can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcodes, firmware instructions, state setting data, configuration data for integrated circuits and / or source code and / or object code written in any combination of one or more programming languages (including object-oriented programming languages, such as Smalltalk, C++, etc.) and / or process programming languages (such as "C" programming languages and / or similar programming languages). Computer readable program instructions can be executed entirely on a computer, partially on a computer, executed as an independent software package, partially on a computer and / or partially on a remote computer or entirely on a remote computer and / or server. In the latter case, the remote computer can be connected to the computer and / or can be connected to an external computer (for example, using an Internet service provider through the Internet) through any type of network (including a local area network (LAN) and / or a wide area network (WAN)). In one or more embodiments, an electronic circuit (including, for example, a programmable logic circuit, a field programmable gate array (FPGA) and / or a programmable logic array (PLA)) can execute a computer readable program instruction to personalize the electronic circuit by utilizing the state information of the computer readable program instruction, so as to perform the various aspects of one or more embodiments described herein.
[0283] Reference is made to the flowchart illustration and / or block diagram of the method, device (system) and computer program product according to one or more embodiments described herein to describe various aspects of one or more embodiments described herein. It should be understood that each frame in the flowchart illustration and / or block diagram and the combination of frames in the flowchart illustration and / or block diagram can be realized by computer-readable program instructions. These computer-readable program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer and / or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device can create a device for realizing the function / action specified in one or more frames of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, which can guide a computer, a programmable data processing device and / or other equipment to run in a specific manner, and the computer-readable storage medium storing instructions can include a manufactured product, which includes instructions for various aspects of the function / action specified in one or more frames of the flowchart and / or block diagram. Computer-readable program instructions may also be loaded onto a computer, other programmable data processing devices, and / or other devices to cause a series of operational actions to be performed on the computer, other programmable devices, and / or other devices, thereby producing a computer-implemented process, so that the instructions executed on the computer, other programmable devices, and / or other devices implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.
[0284] The flow chart and block diagram in the figure show the possible specific implementation architecture, function and / or operation of the system, computer-implemented method and / or computer program product according to one or more embodiments described herein.In this regard, each frame in the flow chart or block diagram can represent a module, segment and / or partial instruction, which contains one or more executable instructions for realizing the specified logical function.In one or more alternative specific implementations, the function marked in the frame may not occur in the order marked in the figure.For example, two frames displayed continuously can be executed substantially at the same time, and / or sometimes can be executed in reverse order, depending on the function involved.It should also be noted that each block in the block diagram and / or flow chart, and / or the combination of the blocks in the block diagram and / or flow chart can be realized by a dedicated hardware system, which can perform the specified function and / or action, and / or perform one or more combinations of dedicated hardware and / or computer instructions.
[0285] Although the subject matter has been described above in the general context of computer executable instructions of computer program products running on computers and / or computers, it will be appreciated by those skilled in the art that one or more embodiments herein may also be implemented at least in part in parallel with one or more other program modules. In general, program modules include routines, programs, components and / or data structures that perform specific tasks and / or implement specific abstract data types. In addition, the aforementioned computer-implemented methods may be practiced with other computer system configurations, including single-processor and / or multi-processor computer systems, small computing devices, large computers, and computers, handheld computing devices (e.g., PDAs, phones) and / or based on microprocessors or programmable consumer and / or industrial electronic devices. The illustrated aspects may also be practiced in a distributed computing environment, where tasks are performed by remote processing devices connected via a communication network. However, one or more (if not all) aspects of one or more embodiments described herein may be practiced on a stand-alone computer. In a distributed computing environment, program modules may be located in both local memory storage devices and remote memory storage devices.
[0286] As used in this application, the terms "component", "system", "platform" and / or "interface" may refer to and / or may include computer-related entities or entities related to an operating machine having one or more specific functions. The entities described herein may be hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to, a process, a processor, an object, an executable program, a thread of execution, a program, and / or a computer running on a processor. As an example, both an application running on a server and a server may be a component. One or more components may reside in a process and / or an execution thread, and a component may be located on a computer and / or distributed between two or more computers. In another example, corresponding components may be executed from various computer-readable media having various data structures stored thereon. These components may communicate via local and / or remote processes, such as according to signals having one or more data packets (e.g., data from a component may interact with another component in a local system, a distributed system via a signal and / or interact with other systems via a network such as the Internet). As another example, a component may be a device having a specific functionality provided by a mechanical component operated by an electrical or electronic circuit, which is operated by software and / or firmware applications executed by a processor. In this case, the processor may be internal and / or external to the device and may execute at least a portion of a software and / or firmware application. As yet another example, a component may be a device that provides a particular functionality through an electronic component without mechanical parts, where the electronic component may include a processor and / or other means for executing software and / or firmware that at least partially imparts the functionality to the electronic component. In one aspect, the component may simulate an electronic component via, for example, a virtual machine within a cloud computing system.
[0287] In addition, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or". That is, unless otherwise specified or clear from the context, "X employs A or B" is intended to mean any natural inclusive arrangement. That is, if X employs A; X employs B; or X employs both A and B, then "X employs A or B" is satisfied under any of the foregoing examples. In addition, unless otherwise specified or clear from the context to refer to a singular form, the article "a" as used in should generally be interpreted to mean "one or more". As used herein, the terms "example" and / or "exemplary" are used to mean as an example, instance, or illustration. For the avoidance of doubt, the subject matter described herein is not limited to such examples. In addition, any aspect or design described herein as "example" and / or "exemplary" is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to exclude equivalent exemplary structures and techniques known to those of ordinary skill in the art.
[0288] As used in this specification, the term "processor" may refer to substantially any computational processing unit and / or device, including but not limited to a single-core processor; a single processor with software multithreaded execution capability; a multi-core processor; a multi-core processor with software multithreaded execution capability; a multi-core processor with hardware multithreading technology; a parallel platform; a parallel platform with distributed shared memory. In addition, a processor may refer to an integrated circuit, an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a field programmable gate array (FPGA), a programmable logic controller (PLC), a complex programmable logic device (CPLD), a discrete gate or transistor logic component, a discrete hardware component, and / or any combination thereof, designed to perform the functions described herein. In addition, the processor may utilize nanoscale architectures, such as but not limited to transistors, switches, and / or gates based on molecules and quantum dots, in order to optimize space usage and / or enhance the performance of related equipment. The processor may be implemented as a combination of computational processing units.
[0289] In this document, terms such as "repository", "storage device", "data repository", "data storage device", "database", and substantially any other information storage component related to the operation and functionality of the component are used to refer to a "memory component", an entity embodied in a "memory", or a component that includes a memory. The memory and / or memory components described herein may be volatile memory or non-volatile memory, or may include both volatile memory and non-volatile memory. By way of illustration and not limitation, non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), flash memory, and / or non-volatile random access memory (RAM) (e.g., ferroelectric RAM (FeRAM)). Volatile memory may include RAM, which may, for example, act as external cache memory. By way of example and not limitation, RAM can take a variety of forms, such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), direct Rambus RAM (DRRAM), direct Rambus dynamic RAM (DRDRAM), and / or Rambus dynamic RAM (RDRAM). In addition, the memory components of the systems and / or computer-implemented methods described herein are intended to include, but are not limited to, these and / or any other suitable types of memory.
[0290] The foregoing includes only examples of systems and computer-implemented methods. Of course, it is not possible to describe every conceivable combination of components and / or computer-implemented methods for the purpose of describing one or more embodiments, but one of ordinary skill in the art will recognize that many further combinations and / or permutations of one or more embodiments are possible. In addition, with respect to the use of the terms "including," "having," "having," and the like in the detailed description, claims, appendices, and / or drawings, these terms are intended to be inclusive in a manner similar to the way the term "comprising" is interpreted when used as a transitional word in a claim.
[0291] The description of various embodiments may use the phrases "embodiment," "various embodiments," "one or more embodiments," and / or "some embodiments," each of which may refer to one or more of the same or different embodiments.
[0292] Descriptions of various embodiments have been presented for illustrative purposes, but these descriptions are not intended to be exhaustive or limited to the embodiments described herein. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the embodiments. The terms used herein are selected to best explain the principles of the embodiments, practical applications, and / or technical improvements over technologies on the market, and / or to enable others of ordinary skill in the art to understand the embodiments described herein.
Claims
1. A system comprising: a memory storing computer executable components; and a processor, the processor executing the computer executable components stored in the memory, wherein the computer executable components include: an acquisition component, the acquisition component acquiring a signal of an initial hologram based on energy; an expansion component that expands the initial hologram at a boundary of the initial hologram to generate an extended hologram having an expanded portion at the boundary; and A filter application component applies an apodization filter based on the extended hologram to overlap the extended portion of the extended hologram.
2. The system according to claim 1, wherein: The expansion component expands only a portion of the initial hologram disposed at the boundary.
3. The system according to claim 1, wherein: The filter applying component applies the apodization filter to at least the extended part of the extended hologram.
4. The system according to claim 1, wherein: The filter applying component applies the apodization filter only to the extended part of the extended hologram.
5. The system according to claim 1, wherein: The initial hologram comprises an aggregation of a plurality of holograms.
6. The system according to claim 1, further comprising: A filter generating component generates the apodization filter by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary, thereby producing the extended part of the extended hologram.
7. The system of claim 1, further comprising: A blurring component blurs an inner region of the extended hologram inside the border before applying the apodization filter by the filter applying component.
8. The system according to claim 7, wherein: The blur component gradually increases blur of the inner region at increasing distances from a center of the inner region.
9. The system according to claim 1, wherein: The obtaining component uses a detector having corrupted pixels, and wherein applying the apodization filter by the filter applying component is the same whether the detector has the corrupted pixels or does not have the corrupted pixels.
10. The system according to claim 1, wherein: Extending the initial hologram by the extending component allows artifacts to propagate into the extended portion, rather than reflecting the artifacts off the boundary and back into the area of the initial hologram.
11. A computer-implemented method comprising: obtaining, by a system operatively coupled to a processor, a signal of an initial energy-based hologram; extending, by the system, the initial hologram at a boundary of the initial hologram, thereby generating an extended hologram having an extended portion at the boundary; as well as Based on the extended hologram, an apodization filter is applied to overlap the extended portion of the extended hologram.
12. The computer-implemented method of claim 11 , further comprising: Only a portion of the initial hologram disposed at the boundary is expanded by the system.
13. The computer-implemented method of claim 11 , further comprising: The apodization filter is applied by the system only to the extended portion of the extended hologram.
14. The computer-implemented method of claim 11 , further comprising: The apodization filter is generated by the system by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary, thereby producing the extended portion of the extended hologram.
15. The computer-implemented method of claim 11, further comprising: An inner region of the extended hologram is blurred by the system inside the border before applying the apodization filter.
16. The computer-implemented method of claim 15, further comprising: [TP386556USORG1] Blurring of the inner region is gradually increased by the system at gradually increasing distances from a center of the inner region.
17. A computer program product for facilitating a hologram apodization process, the computer program product comprising a computer readable storage medium having program instructions embodied therein and executable by a processor to cause the processor to: obtaining, by the processor, a signal of an initial hologram based on energy; extending, by the processor, the initial hologram at a boundary of the initial hologram, thereby generating an extended hologram having an extended portion at the boundary; as well as Based on the extended hologram, an apodization filter is applied by the processor to overlap the extended portion of the extended hologram.
18. The computer program product of claim 17, wherein: The program instructions are further executable by the processor to cause the processor to: The apodization filter is generated by the processor by copying pixels from a boundary of the initial hologram and applying those pixels outside the initial hologram at the boundary, thereby producing the extended portion of the extended hologram.
19. The computer program product of claim 17, wherein: The program instructions are further executable by the processor to cause the processor to: An inner region of the extended hologram is blurred by the processor inside the border before applying the apodization filter.
20. The computer program product of claim 19, wherein: The program instructions are further executable by the processor to cause the processor to: The blurring of the inner region is gradually increased by the system at gradually increasing distances from the center of the inner region.