Point cloud for sample identification and device configuration
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- THERMO ELECTRONICS SCI INSTR LLC
- Filing Date
- 2023-12-12
- Publication Date
- 2026-06-17
AI Technical Summary
Conventional methods for identifying and aligning scientific instruments are often destructive, dependent on lighting and magnification variations, and require reference markers for calibration, leading to inefficiencies and inaccuracies.
The use of point clouds generated by scientific instruments to create n-dimensional representations of samples, allowing for non-destructive identification and alignment independent of lighting and magnification variations, and enabling automatic alignment through computational methods that compare and adjust instrument outputs based on generated point clouds.
This approach enables efficient, non-destructive sample identification and precise alignment of scientific instruments, reducing processing time and improving accuracy by utilizing n-dimensional point clouds for data analysis and alignment, thus overcoming limitations of conventional methods.
Smart Images

Figure 1.1
Abstract
Description
POINT CLOUD FOR SAMPLE IDENTIFICATION AND DEVICE CONFIGURATIONCross-Reference to Related Application
[0001] This application claims priority to U.S. Provisional Patent Application No. 63 / 431,837, titled “POINT CLOUD FOR SAMPLE IDENTIFICATION AND DEVICE CONFIGURATION,” filed December 12, 2022 and incorporated by reference herein in its entirety.Background
[0002] Scientific instruments may include a complex arrangement of movable components, sensors, input and output ports, energy sources, and consumable components. Data that is measured by scientific instruments may be converted to point clouds, representing analyzed samples as a multi-dimensional shape.Brief Description of the Drawings
[0003] Embodiments will be readily understood by the following detailed description in conjunction with the accompanying drawings. To facilitate this description, like reference numerals designate like structural elements. Embodiments are illustrated by way of example, not by way of limitation, in the figures of the accompanying drawings.
[0004] FIG. 1 is an example three-dimensional point cloud, in accordance with various embodiments.
[0005] FIG. 2 is a block diagram of an example scientific instrument support module for performing support operations, in accordance with various embodiments.
[0006] FIG. 3 is a flow diagram of an example method of aligning scientific instruments, in accordance with various embodiments.
[0007] FIG. 4 is an example of a graphical user interface that may be used in the performance of some or all of the methods disclosed herein, in accordance with various embodiments.
[0008] FIG. 5 is a block diagram of an example computing device that may perform some or all of the methods disclosed herein, in accordance with various embodiments.
[0009] FIG. 6 is a block diagram of an example scientific instrument support system in which some or all of the methods disclosed herein may be performed, in accordance with various embodiments.
[0010] FIG. 7 is an example charged particle microscopy system incorporating the techniques disclosed herein, in accordance with various embodiments.
[0011] FIG. 8 is an example energy dispersive X-ray spectroscopy system incorporating the techniques disclosed herein, in accordance with various embodiments.
[0012] FIG. 9 is a schematic view of an optical spectroscopy system incorporating the techniques disclosed herein, in accordance with various embodiments.Detailed Description
[0013] Disclosed herein are scientific instrument support systems, as well as related methods, computing devices, and computer-readable media. For example, in some embodiments, a method for aligning scientific instrumentsincludes generating, with a first scientific instrument, a first point cloud representative of a sample, wherein the first point cloud is in an n-dimensional space and n is an integer, and generating, with a second scientific instrument different from the first scientific instrument, a second point cloud representative of the sample, wherein the second point cloud is in an m-dimensional space, different from the n-dimensional space associated with the first point cloud and wherein m is an integer. The method includes generating an offset between the first point cloud and the second point cloud using a transformation relating the n-dimensional space to the m-dimensional space, and aligning an output of the second scientific instrument with an output of the first scientific instrument based on the offset.
[0014] The scientific instrument support embodiments disclosed herein may achieve improved performance relative to conventional approaches. For example, samples may typically be identified using methods that may be dependent on lighting or magnification that experience variations. Additionally, some methods of identifying samples destroy or impact the sample. The embodiments disclosed herein identify samples in a non-destructive manner that is independent of variations in lighting and magnification. The embodiments disclosed herein thus provide improvements to scientific instrument technology (e.g. , improvements in the computer technology supporting such scientific instruments, among other improvements).
[0015] The embodiments disclosed herein may achieve automatic alignment of scientific instruments using only research samples relative to conventional approaches. For example, conventional approaches may use reference markers or holders for calibration, wasting operation of the scientific instrument.
[0016] Various ones of the embodiments disclosed herein may improve upon conventional approaches to achieve the technical advantages of aligning multiple scientific instruments by using data already obtained when identifying sample compositions. Such technical advantages are not achievable by routine and conventional approaches, and all users of systems including such embodiments may benefit from these advantages (e.g., by assisting the user in the performance of a technical task, such as quickly aligning scientific instruments within a margin of error, by means of a guided human-machine interaction process). The computational and user interface features disclosed herein do not only involve the collection and comparison of information, but apply new analytical and technical techniques to change the operation of scientific instruments, including adjusting their physical configuration and characterizing samples using n-dimensional points of data. The present disclosure thus introduces functionality that neither a conventional computing device, nor a human, could perform.
[0017] Accordingly, the embodiments of the present disclosure may serve any of a number of technical purposes, such as controlling a specific technical system or process; determining from measurements how to control a machine; digital audio, image, or video enhancement or analysis; providing estimates and confidence intervals for biological samples; reducing the amount of sensor data to be processed; or providing a faster processing of sensor data. In particular, the present disclosure provides technical solutions to technical problems, including but not limited to identifying research samples and alignment of scientific instruments.
[0018] The embodiments disclosed herein thus provide improvements to microscope, dual beam, and spectroscopic technology (e.g., improvements in the computer technology supporting microscope, dual beam, and spectroscopic technology, among other improvements).
[0019] In the following detailed description, reference is made to the accompanying drawings that form a part hereof wherein like numerals designate like parts throughout, and in which is shown, by way of illustration, embodiments that may be practiced. It is to be understood that other embodiments may be utilized, and structural or logical changes may be made, without departing from the scope of the present disclosure. Therefore, the following detailed description is not to be taken in a limiting sense.
[0020] Various operations may be described as multiple discrete actions or operations in turn, in a manner that is most helpful in understanding the subject matter disclosed herein. However, the order of description should not be construed as to imply that these operations are necessarily order dependent. In particular, these operations may not be performed in the order of presentation. Operations described may be performed in a different order from the described embodiment. Various additional operations may be performed, and / or described operations may be omitted in additional embodiments.
[0021] For the purposes of the present disclosure, the phrases "A and / or B" and "A or B" mean (A), (B), or (A and B). For the purposes of the present disclosure, the phrases "A, B, and / or C" and "A, B, or C" mean (A), (B), (C), (A and B), (A and C), (B and C), or (A, B, and C). Although some elements may be referred to in the singular (e.g., “a processing device”), any appropriate elements may be represented by multiple instances of that element, and vice versa. For example, a set of operations described as performed by a processing device may be implemented with different ones of the operations performed by different processing devices.
[0022] The description uses the phrases "an embodiment," "various embodiments,” and "some embodiments," each of which may refer to one or more of the same or different embodiments. Furthermore, the terms "comprising," "including," "having," and the like, as used with respect to embodiments of the present disclosure, are synonymous. When used to describe a range of dimensions, the phrase "between X and Y" represents a range that includes X and Y. As used herein, an "apparatus" may refer to any individual device, collection of devices, part of a device, or collections of parts of devices. The drawings are not necessarily to scale.
[0023] A point cloud is a set of data points in space that represent a three-dimensional (3D) shape or object. For example, each point position has a set of Cartesian coordinates (X, Y, Z). Point clouds may be produced by a 3D scanner or by photogrammetry software, which measure points of the external surfaces of objects. As the output of a 3D scanning process, point clouds are used for 3D visualization of the scanned object. FIG. 1 illustrates an example point cloud 1000 including a plurality of data points in Cartesian space. Data points are not limited to representing the physical position of a scanned sample. In some instances, data points are situated at sections of high interest, such as high contrast points or other points of interest. In short, a point cloud includes points in space representative of a desired feature (e.g., fiducials).
[0024] Point clouds are not limited to 3D space. For example, a QR code may be considered a two-dimensional (2D) point cloud that contains additional information, such as a name of a scientist, a methodology performed, and a timestamp at which an experiment was performed. Such metadata can be represented as points within the point cloud, where the third dimension (Z) is implemented to represent the type of information. Additional dimensions may be added based on the amount of metadata to be represented by the point cloud, resulting in an "n-dimensional" point cloud. For example, Cartesian coordinates (X, Y, Z) may represent the physical dimensions of a measured sample, while a fourth dimension represents a detected spectral number of the sample, a fifth dimension represents filters applied to the sample, and a sixth dimension represents a detected chemical compound.
[0025] FIG. 2 is a block diagram of a scientific instrument support module 2000 for performing alignment operations, in accordance with various embodiments. The scientific instrument support module 2000 may be implemented by circuitry (e.g., including electrical and / or optical components), such as a programmed computing device. The logic of the scientific instrument support module 2000 may be included in a single computing device, or may be distributed across multiple computing devices that are in communication with each other as appropriate. Examples of computing devices that may, singly or in combination, implement the scientific instrument support module 2000 are discussed herein with reference to the computing device 5000 of FIG. 5, and examples of systems of interconnected computing devices, in which the scientific instrument support module 2000 may be implemented across one or more of the computing devices, is discussed herein with reference to the scientific instrument support system 6000 of FIG. 6.
[0026] The scientific instrument support module 2000 may include point cloud logic 2002, segmentation logic 2004, identification logic 2006, and alignment logic 2008. As used herein, the term "logic” may include an apparatus that is to perform a set of operations associated with the logic. For example, any of the logic elements included in the support module 2000 may be implemented by one or more computing devices programmed with instructions to cause one or more processing devices of the computing devices to perform the associated set of operations. In a particular embodiment, a logic element may include one or more non-transitory computer-readable media having instructions thereon that, when executed by one or more processing devices of one or more computing devices, cause the one or more computing devices to perform the associated set of operations. As used herein, the term "module” may refer to a collection of one or more logic elements that, together, perform a function associated with the module. Different ones of the logic elements in a module may take the same form or may take different forms. For example, some logic in a module may be implemented by a programmed general-purpose processing device, while other logic in a 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 not include all of the logic elements depicted in the associated drawing; for example, a module may include a subset of the logic elements depicted in the associated drawing when that module is to perform a subset of the operations discussed herein with reference to that module.
[0027] The point cloud logic 2002 may generate a point cloud representative of a sample. For example, a sample is scanned by a scientific instrument. The point cloud logic 2002 receives the scanned sample and generates a three-dimensional point cloud representative of the physical sample. Additionally, the scientific instrument may collect additional data associated with the sample, such as detecting a chemical compound of the sample. The point cloud logic 2002 also receives the additional data associated with the sample and adds additional dimensions to the point cloud representing the additional data. Accordingly, the point cloud logic 2002 generates an n-dimensional point cloud of the sample including all desired data associated with the sample (e.g., an X-coordinate, a Y- coordinate, and metadata associated with the sample).
[0028] In some instances, the point cloud logic 2002 is a machine-learning algorithm or other artificial intelligence trained to analyze samples and output points of a point cloud. Example machine learning and artificial intelligence techniques include decision tree learning, association rule learning, artificial neural networks, classifiers, inductive logic programming, support vector machines, clustering, Bayesian networks, reinforcement learning, representation learning, similarity and metric learning, sparse dictionary learning, and genetic algorithms.
[0029] The segmentation logic 2004 may apply one or more segmentation filters to the point cloud. Segmentation filters are filters that identify points of interest or distinctness within the point cloud. The segmentation filters may identify boundary markers indicating the structural shape of the point cloud. In some instances, the segmentation filter identifies centroids within the point cloud. Centroids are mathematically determinable positions, based on the boundary markers, that may have no distinct structure within the point cloud. As one example, the point cloud may represent a blood cell. The centroids may form an outer layer of the blood cell where, when tracing around the centroids, at no point would the tracing exit the cell. By combining the centroids with the point cloud, an “enhanced” point cloud may be generated by the segmentation logic 2004. In some implementations, the centroids are used for target sampling. The results of the target sampling may be added as additional verification by identification logic 2006 when identifying a type of the sample. Centroids add additional information about the mathematical shape of the point cloud without requiring every boundary point to be expressed. Additionally, centroids may be used by scientific instruments for capturing sample information at the location identified by the centroid.
[0030] The segmentation logic 2004 may apply other filters, instead of or in addition to a centroid-identification filter, to a point cloud to generate additional values that can be included in an enhanced point cloud. Examples of filters that may be applied include one or more of tight minimum bounding rectangle (TMBR) (which computes a smallest rectangle aligned with the major axis of the point cloud), scale-invariant feature transform (SIFT) (which detects and describes features invariant to scale, orientation, and illumination), keypoint-affine-invari ant-z (KAZE) (which detects and describes features invariant to scale, rotation, and affine transformations), adaptive and generic accelerated segment test (AGAST) (which detects keypoints), features from accelerated segment test (FAST) (which detects corners), oriented FAST and rotated BRIEF (ORB) (which detects and describes keypoints), and accelerated- KAZE (AKAZE) (which detects and describes local features). In some embodiments, the segmentation logic 2004may utilize an image processing tool or library, such as OpenCV, to perform filtering whose results will be included in an enhanced point cloud.
[0031] In some embodiments in which the segmentation logic 2004 includes multiple filter results in an enhanced point cloud, some or all of the filter results may be combined in the additional dimensions of the enhanced point cloud. For example, the segmentation logic 2004 may generate a hash value by applying a hash function to one or more filter results, and may include that hash value in the enhanced point cloud instead of or in addition to the filter results. Thus, the number of filters applied to the point cloud may be different than the number of additional dimensions included in the enhanced point cloud.
[0032] The identification logic 2006 may identify a type of the sample based on the enhanced point cloud. For example, when the sample is known during an initial configuration of the system, an enhanced point cloud may be generated and associated with the sample. The association is then stored in a memory. During further experiments, generated enhanced point clouds are compared to stored samples to determine a sample associated with the enhanced point cloud. In some instances, if a scientific instrument failed to identify or detect all information to construct an enhanced point cloud for a given sample, the identification logic 2006 may obtain the missing information from similar enhanced point clouds.
[0033] In some embodiments, the identification logic 2006 may confirm the identity of a particular sample using an enhanced point cloud that includes a two- or three-dimensional image and spectroscopic or other physical or chemical data of the sample. For example, a first enhanced point cloud for a known sample may include an image of that sample (captured or generated by, e.g., a visible light camera, an infrared camera, a microscope, or any other image capture device) and spectral data of that sample (e.g., spectroscopic or other chemical data) captured at a first time, and a second enhanced point cloud for an unidentified sample may be include an image of that sample and spectral data of that sample captured at a second time. The first enhanced point cloud and the second enhanced point cloud may be compared, and if their similarity exceeds a threshold (e.g., the distance between the enhanced point clouds is less than a threshold), the identification logic 2006 may identify the unidentified sample as the known sample. Such embodiments may be especially useful in applications in which confirmation of an object’s identity is important, such as in chain-of-custody applications to confirm that a particular object is what it is purported to be, or in quality assurance / quality control applications to confirm that a particular object (e.g., a wafer used in electronics manufacturing, another manufactured object, a pharmaceutical, an agricultural product, etc.) adequately meets the visual and chemical requirements for that object. For identification use cases, an enhanced point cloud may serve as a “fingerprint” of a sample, which can be used to confirm or reject the identity of unknown samples; in some such cases, a spectroscopy instrument or other instrument that generates physical or chemical data of a sample may be considered an identification instrument, or part of an identification system.
[0034] The alignment logic 2008 may align outputs of multiple scientific instruments based on generated enhanced point clouds. For example, prior to receiving samples, components of the scientific instrument may be panned orrotated. Calibrating scientific instruments to be in precisely the same position is difficult. Additionally, as samples are moved between scientific instruments, there is a risk of bumping or changing the position of the scientific instrument from its calibration position.
[0035] The relative distance of the points within the point clouds may result in identification by the alignment logic 2008 of a degree of magnification difference between instruments that have different magnifications. For example, a sample may first be analyzed with a first scientific instrument. The point cloud logic 2002 and the segmentation logic 2004 operate to generate a first enhanced point cloud for the sample as analyzed by the first scientific instrument. Next, the sample is analyzed with a second scientific instrument. The point cloud logic 2002 and the segmentation logic 2004 operate to generate a second enhanced point cloud for the sample as analyzed by the second scientific instrument. The alignment logic 2008 compares the first enhanced point cloud and the second enhanced point cloud and determines a distance between the outputs of the first scientific instrument and the second scientific instrument. If the distance exceeds an acceptable distance threshold, the alignment logic 2008 operates to adjust one of the first scientific instrument and the second scientific instrument to better align the instruments. For example, in optical microscopes, the zoom level may be physically adjusted by adjusting lenses within the microscope. As another example, a linear scaling factor that is applied uniformly across a captured image may be adjusted.
[0036] A distance between two point clouds, in accordance with the embodiments disclosed herein, may be generated using any suitable technique. For example, when two point clouds are in a common coordinate system, a Euclidean distance between centroids or other representative points, a mean-square distance, or any other distance metric may be used. In some embodiments, an iterative closest points (ICP) method may be used to compute a distance between two point clouds. An ICP method (e.g. , a point-to-point ICP method or a point-to-plane ICP method, as known in the art) may be used when two point clouds are in a common coordinate system or different coordinate systems (e.g., when the first point cloud is n-dimensional, the second point cloud is m-dimensional, and m is not equal to n); in some embodiments using an ICP method, the root-mean-square error or other associated metric (e.g., the inverse of a fitness value) may be used as a distance measure. In some embodiments, the alignment logic 2008 may utilize a point cloud computational tool or library, such as the Open3D library, to perform point cloud- related computations.
[0037] FIG. 3 is a flow diagram of a method 3000 of aligning outputs of scientific instruments, in accordance with various embodiments. Although the operations of the method 3000 may be illustrated with reference to particular embodiments disclosed herein (e.g., the scientific instrument support modules 2000 discussed herein with reference to FIG. 2, the GUI 4000 discussed herein with reference to FIG. 4, the computing devices 5000 discussed herein with reference to FIG. 5, and / or the scientific instrument support system 6000 discussed herein with reference to FIG. 6), the method 3000 may be used in any suitable setting to perform any suitable support operations. Operations are illustrated once each and in a particular order in FIG. 3, but the operations may be reordered and / or repeated as desired and appropriate (e.g., different operations performed may be performed in parallel, as suitable).
[0038] At 3002, first operations may be performed. For example, the point cloud logic 2002 of a support module 2000 may perform the operations of 2002. The first operations may include generating, with a first scientific instrument, a first point cloud for a sample. The first point cloud may be n-dimensional, where n is an integer. The first operations may include generating, with a second scientific instrument, a second point cloud for the sample. The second point cloud may be m-dimensional, where m is an integer. The integer n may be equal to, or different from, the integer m. Additional point clouds may be generated for the sample based on the number of scientific instruments implemented.
[0039] At 3004, second operations may be performed. For example, the segmentation logic 2004 of a support module 2000 may perform the operations of 3004. The second operations may include identifying a first centroid within the first point cloud. The second operations may include identifying a second centroid within the second point cloud. The centroids may be identified by applying one or more segmentation filters to the point clouds. In some instances, the second operations include combining the first centroid with the first point cloud to generate a first enhanced point cloud and combining the second centroid with the second point cloud to generate a second enhanced point cloud. Additionally, in some examples, rather than identifying a first centroid and a second centroid, the second operations include identifying a first set of centroids and a second set of centroids.
[0040] At 3006, third operations may be performed. For example, the identification logic 2006 of a support module 2000 may perform the operations of 3006. The third operations may include identifying a type of the sample based on the n point clouds. The type of the sample may be, for example, a chemical compound of the sample.
[0041] At 3008, fourth operations may be performed. For example, the alignment logic 2008 of a support module 2000 may perform the operations of 3008. The fourth operations may include determining a distance between the first centroid and the second centroid (or the first set of centroids and the second set of centroids). In some instances, the fourth operations include determining a distance between a first enhanced point cloud and a second enhanced point cloud. The fourth operations may include aligning the outputs of the first scientific instrument and the second scientific instrument based on the distance. For example, the second scientific instrument may be adjusted based on the distance to align with the first scientific instrument, or outputs of the first and / or second scientific instrument may be adjusted after acquisition / generation.
[0042] The methods disclosed herein may include interactions with a human user (e.g., via the user local computing device 6020 discussed herein with reference to FIG. 6). These interactions may include providing information to the user (e.g., information regarding the operation of a scientific instrument such as the scientific instrument 6010 of FIG. E6 information regarding a sample being analyzed or other test or measurement performed by a scientific instrument, information retrieved from a local or remote database, or other information) or providing an option for a user to input commands (e.g., to control the operation of a scientific instrument such as the scientific instrument 6010 of FIG. 6, or to control the analysis of data generated by a scientific instrument), queries (e.g., to a local or remote database), or other information. In some embodiments, these interactions may be performedthrough a graphical user interface (GUI) that includes a visual display on a display device (e.g., the display device 5010 discussed herein with reference to FIG. 5) that provides outputs to the user and / or prompts the user to provide inputs (e.g., via one or more input devices, such as a keyboard, mouse, trackpad, or touchscreen, included in the other I / O devices 5012 discussed herein with reference to FIG. 5). The scientific instrument support systems disclosed herein may include any suitable GUIs for interaction with a user.
[0043] FIG. 4 depicts an example GUI 4000 that may be used in the performance of some or all of the support methods disclosed herein, in accordance with various embodiments. As noted above, the GUI 4000 may be provided on a display device (e.g., the display device 5010 discussed herein with reference to FIG. 5) of a computing device (e.g., the computing device 5000 discussed herein with reference to FIG. 5) of a scientific instrument support system (e.g., the scientific instrument support system 6000 discussed herein with reference to FIG. 6), and a user may interact with the GUI 4000 using any suitable input device (e.g., any of the input devices included in the other I / O devices 5012 discussed herein with reference to FIG. 5) and input technique (e.g., movement of a cursor, motion capture, facial recognition, gesture detection, voice recognition, actuation of buttons, etc.).
[0044] The GUI 4000 may include a data display region 4002, a data analysis region 4004, a scientific instrument control region 4006, and a settings region 4008. The particular number and arrangement of regions depicted in FIG. 4 is simply illustrative, and any number and arrangement of regions, including any desired features, may be included in a GUI 4000.
[0045] The data display region 4002 may display data generated by a scientific instrument (e.g., the scientific instrument 6010 discussed herein with reference to FIG. 6). For example, the data display region 4002 may display the point cloud generated for the sample.
[0046] The data analysis region 4004 may display the results of data analysis (e.g., the results of analyzing the data illustrated in the data display region 4002 and / or other data). For example, the data analysis region 4004 may display a chemical compound, a type of the sample, or other metadata associated with the sample and represented within the point cloud. In some embodiments, the data display region 4002 and the data analysis region 4004 may be combined in the GUI 4000 (e.g., to include data output from a scientific instrument, and some analysis of the data, in a common graph or region).
[0047] The scientific instrument control region 4006 may include options that allow the user to control a scientific instrument (e.g., the scientific instrument 6010 discussed herein with reference to FIG. 6). For example, the scientific instrument control region 4006 may include interactable graphical elements that allow the user to adjust a position of the scientific instrument or components within the scientific instrument.
[0048] The settings region 4008 may include options that allow the user to control the features and functions of the GUI 4000 (and / or other GUIs) and / or perform common computing operations with respect to the data display region 4002 and data analysis region 4004 (e.g., saving data on a storage device, such as the storage device 5004 discussed herein with reference to FIG. 5, sending data to another user, labeling data, etc.).
[0049] As noted above, the scientific instrument support module 2000 may be implemented by one or more computing devices. FIG. 5 is a block diagram of a computing device 5000 that may perform some or all of the scientific instrument support methods disclosed herein, in accordance with various embodiments. In some embodiments, the scientific instrument support module 2000 may be implemented by a single computing device 5000 or by multiple computing devices 5000. Further, as discussed below, a computing device 5000 (or multiple computing devices 5000) that implements the scientific instrument support module 2000 may be part of one or more of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 of FIG. 6.
[0050] The computing device 5000 of FIG. 5 is illustrated as having a number of components, but any one or more of these components may be omitted or duplicated, as suitable for the application and setting. In some embodiments, some or all of the components included in the computing device 5000 may be attached to one or more motherboards and enclosed in a housing (e.g., including plastic, metal, and / or other materials). In some embodiments, some these components may be fabricated onto a single system-on-a-chip (SoC) (e.g., an SoC may include one or more processing devices 5002 and one or more storage devices 5004). Additionally, in various embodiments, the computing device 5000 may not include one or more of the components illustrated in FIG. 5, but may include interface circuitry (not shown) for coupling to the 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 appropriate interface) . For example, the computing device 5000 may not include a display device 5010, but may include display device interface circuitry (e.g., a connector and driver circuitry) to which a display device 5010 may be coupled.
[0051] The computing device 5000 may include a processing device 5002 (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 transform that electronic data into other electronic data that may be stored in registers and / or memory. The processing device 5002 may include one or more digital signal processors (DSPs), application-specific integrated circuits (ASICs), central processing units (CPUs), graphics processing units (GPUs), cryptoprocessors (specialized processors that execute cryptographic algorithms within hardware), server processors, or any other suitable processing devices.
[0052] The computing device 5000 may include a storage device 5004 (e.g., one or more storage devices). The storage device 5004 may include one or more memory devices such as random access memory (RAM) (e.g., static RAM (SRAM) devices, magnetic RAM (MRAM) devices, dynamic RAM (DRAM) devices, resistive RAM (RRAM) devices, or conductive-bridging RAM (CBRAM) devices), hard drive-based memory devices, solid-state memory devices, networked drives, cloud drives, or any combination of memory devices. In some embodiments, the storage device 5004 may include memory that shares a die with a processing device 5002. In such an embodiment, thememory may be used as cache memory and may include embedded dynamic random access memory (eDRAM) or spin transfer torque magnetic random access memory (STT-MRAM), for example. In some embodiments, the storage device 4004 may include non-transitory computer readable media having instructions thereon that, when executed by one or more processing devices (e.g., the processing device 5002), cause the computing device 5000 to perform any appropriate ones of or portions of the methods disclosed herein.
[0053] The computing device 5000 may include an interface device 5006 (e.g., one or more interface devices 5006). The interface device 5006 may include one or more communication chips, connectors, and / or other hardware and software to govern communications between the computing device 5000 and other computing devices. For example, the interface device 5006 may include circuitry for managing wireless communications for the transfer of data to and from the computing device 5000. The term "wireless" and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a nonsolid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. Circuitry included in the interface device 4006 for managing wireless communications may implement any of a number of wireless standards or protocols, including but not limited to Institute for Electrical and Electronic Engineers (IEEE) standards including Wi-Fi (IEEE 802.11 family), IEEE 802.16 standards (e.g., IEEE 802.16-2005 Amendment), Long-Term Evolution (LTE) project along with any amendments, updates, and / or revisions (e.g., advanced LTE project, ultra mobile broadband (UMB) project (also referred to as "3GPP2"), etc.). In some embodiments, circuitry included in the interface device 4006 for managing wireless communications may operate in accordance with a Global System for Mobile Communication (GSM), General Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Evolved HSPA (E-HSPA), or LTE network. In some embodiments, circuitry included in the interface device 4006 for managing wireless communications may operate in accordance with Enhanced Data for GSM Evolution (EDGE), GSM EDGE Radio Access Network (GERAN), Universal Terrestrial Radio Access Network (UTRAN), or Evolved UTRAN (E-UTRAN). In some embodiments, circuitry included in the interface device 4006 for managing wireless communications may operate in accordance with Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Digital Enhanced Cordless Telecommunications (DECT), Evolution-Data Optimized (EV-DO), and derivatives thereof, as well as any other wireless protocols that are designated as 3G, 4G, 5G, and beyond. In some embodiments, the interface device 4006 may include one or more antennas (e.g., one or more antenna arrays) to receipt and / or transmission of wireless communications.
[0054] In some embodiments, the interface device 5006 may include circuitry for managing wired communications, such as electrical, optical, or any other suitable communication protocols. For example, the interface device 5006 may include circuitry to support communications in accordance with Ethernet technologies. In some embodiments, the interface device 5006 may support both wireless and wired communication, and / or may support multiple wiredcommunication protocols and / or multiple wireless communication protocols. For example, a first set of circuitry of the interface device 5006 may be dedicated to shorter-range wireless communications such as Wi-Fi or Bluetooth, and a second set of circuitry of the interface device 5006 may be dedicated to longer-range wireless communications such as global positioning system (GPS), EDGE, GPRS, CDMA, WiMAX, LTE, EV-DO, or others. In some embodiments, a first set of circuitry of the interface device 5006 may be dedicated to wireless communications, and a second set of circuitry of the interface device 5006 may be dedicated to wired communications.
[0055] The computing device 5000 may include battery / power circuitry 5008. The battery / power circuitry 5008 may include one or more energy storage devices (e.g., batteries or capacitors) and / or circuitry for coupling components of the computing device 5000 to an energy source separate from the computing device 5000 (e.g., AC line power).
[0056] The computing device 5000 may include a display device 5010 (e.g., multiple display devices). The display device 5010 may include any visual indicators, such as a heads-up display, a computer monitor, a projector, a touchscreen display, a liquid crystal display (LCD), a light-emitting diode display, or aflat panel display.
[0057] The computing device 5000 may include other input / output (I / O) devices 5012. The other I / O devices 5012 may include one or more audio output devices (e.g., speakers, headsets, earbuds, alarms, etc.), one or more audio input devices (e.g., microphones or microphone arrays), location devices (e.g., GPS devices in communication with a satellite-based system to receive a location of the computing device 5000, as known in the art), audio codecs, video codecs, printers, sensors (e.g., thermocouples or other temperature sensors, humidity sensors, pressure sensors, vibration sensors, accelerometers, gyroscopes, etc.), image capture devices such as cameras, keyboards, cursor control devices such as a mouse, a stylus, a trackball, or a touchpad, bar code readers, Quick Response (QR) code readers, or radio frequency identification (RFID) readers, for example.
[0058] The computing device 5000 may have any suitable form factor for its application and setting, 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.
[0059] One or more computing devices implementing any of the scientific instrument support modules or methods disclosed herein may be part of a scientific instrument support system. FIG. 6 is a block diagram of an example scientific instrument support system 6000 in which some or all of the scientific instrument support methods disclosed herein may be performed, in accordance with various embodiments. The scientific instrument support modules and methods disclosed herein (e.g., the scientific instrument support module 2000 of FIG. 2 and the method 3000 of FIG. 3) may be implemented by one or more of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 of the scientific instrument support system 6000.
[0060] Any of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 may include any of the embodiments of the computing device 5000 discussed herein with reference to FIG. 5, and any of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 may take the form of any appropriate ones of the embodiments of the computing device 5000 discussed herein with reference to FIG. 5.
[0061] The scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 may each include a processing device 6002, a storage device 6004, and an interface device 6006. The processing device 6002 may take any suitable form, including the form of any of the processing devices 5002 discussed herein with reference to FIG. 5, and the processing devices 6002 included in different ones of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 may take the same form or different forms. The storage device 6004 may take any suitable form, including the form of any of the storage devices 6004 discussed herein with reference to FIG. 5, and the storage devices 6004 included in different ones of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 may take the same form or different forms. The interface device 6006 may take any suitable form, including the form of any of the interface devices 5006 discussed herein with reference to FIG. 5, and the interface devices 6006 included in different ones of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, or the remote computing device 6040 may take the same form or different forms.
[0062] The scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, and the remote computing device 6040 may be in communication with other elements of the scientific instrument support system 6000 via communication pathways 6008. The communication pathways 6008 may communicatively couple the interface devices 6006 of different ones of the elements of the scientific instrument support system 6000, as shown, and may be wired or wireless communication pathways (e.g., in accordance with any of the communication techniques discussed herein with reference to the interface devices 6006 of the computing device 5000 of FIG. 5). The particular scientific instrument support system 6000 depicted in FIG. 6 includes communication pathways between each pair of the scientific instrument 6010, the user local computing device 6020, the service local computing device 6030, and the remote computing device 6040, but this "fully connected” implementation is simply illustrative, and in various embodiments, various ones of the communication pathways 6008 may be absent. For example, in some embodiments, a service local computing device 6030 may not have a direct communication pathway 6008 between its interface device 6006 and the interface device 6006 of the scientific instrument 6010, but may instead communicate with the scientific instrument 6010 via the communication pathway 6008 between the service local computing device 6030 and the user local computing device 6020 and the communication pathway 6008 between the user local computing device 6020 and the scientific instrument 6010.
[0063] The scientific instrument 6010 may include any appropriate scientific instrument, such as a charged particle microscopy system. FIG. 7 shows an example charged particle microscopy system 7000 in accordance with an embodiment of the disclosure is shown. The charged particle microscopy system 7000 may be a scanning electron microscope (SEM). The SEM system 7000 includes an electron source 7010 that emits electron beam 7011 along an emission axis 7110, towards a focusing column 7012. In some embodiments, the focusing column 7012 may include one or more of a condenser lens 7121, aperture 7122, scan coils 7123, and upper objective lens 7124. The focusing column 7012 focuses electrons from electron source 7010 into a small spot on sample 7014. Different locations of the sample may be scanned by adjusting the electron beam direction via the scan coils 7123. For example, by operating scan coils 7123, incident beam 7112 may be shifted (as shown with dashed lines) to focus onto different locations of sample 7014. The sample 7014 may be thin enough to not impede transmission of most of the electrons in the electron beam 7011.
[0064] The sample 7014 may be held by a sample holder 7013. Electrons 7101 passing through sample 7014 may enter projector 7116. In one embodiment, the projector 7116 may be a separate part from the focusing column. In another embodiment, the projector 7116 may be an extension of the lens field from a lens in focusing column 7012. The projector 7116 may be adjusted by the controller 7030 so that direct electrons passed through the sample, impinge on disk-shaped bright field detector 7115, while diffracted or scattered electrons, which were more strongly deflected by the sample, are detected by the dark field detector 7019. Signals from the bright field and the dark field detectors may be amplified by amplifier 7022 and amplifier 7021 , respectively. Signals from the amplifiers 7021 and 7022 may be sent to image processor 7024, which can form an image of sample 7014 from the detected electrons. The SEM system 7000 may simultaneously detect signals from one or more bright field detector and the dark field detector.
[0065] The controller 7030 may control the operation of the imaging system 7000, either manually in response to operator instructions or automatically in accordance with computer readable instructions stored in non-transitory memory 7032. The controller 7030 can be configured to execute the computer readable instructions and control various components of the imaging system 7000. For example, the controller 7030 may adjust the scanning location on the sample by operating the scan coils 7123. The controller 7030 may adjust the profile of the incident beam by adjusting one or more apertures and / or lens in the focusing column 7012. The controller 7030 may adjust the sample orientation relative to the incident beam by adjusting the sample holder 7013. The controller 7030 may further be coupled to a display 7031 to display notifications and / or images of the sample. The controller 7030 may receive user inputs from user input device 7033. The user input device 7033 may include a keyboard, mouse, or touchscreen.
[0066] Though a SEM system is described by way of example, it should be understood that the electron source may also be used in other charged particle beam microscopy systems, such as transmitting electron microscopy (TEM) system and dual beam microscopy system. The present discussion of SEM imaging is provided merely as an example of one suitable imaging modality.
[0067] The scientific instrument 6010 may include a CPM / EDX system. FIG. 8 illustrates an example configuration of a CPM / EDX system 210. The CPM / EDX system 210 may be a scanning electron microscopy with energy dispersive X-ray spectroscopy (SEM / EDX) system. The CPM / EDX system 210 may include a particle-optical column 315 mounted on the vacuum chamber 306. Within the particle-optical column 315, electrons generated by electron source 312 are modified by the compound lens system 314 before focused onto sample 302 by lens system 316. The incident beam 304 may scan over sample 302 by operating the scan coils 313. The sample may be held by sample stage 308.
[0068] The CPM / EDX system 210 may include multiple detectors for detecting various emissions from sample 302 in response to the irradiation of incident beam 304. A first detector 303 may detect the X-rays emitted from the sample 302. In one example, detector 303 may be a multi-channel photon-counting EDX detector. A second detector 301 may detect electrons, such as the backscattered and / or secondary electrons emitted from sample 302. In one example, detector 301 may be a segmented electron detector.
[0069] The scientific instrument 6010 may alternatively include an optical microscopy system utilizing optical spectroscopy techniques such as Raman spectroscopy, Fourier-transform infrared (FTIR) spectroscopy, laser- induced fluorescence, or other. FIG 9 illustrates an example configuration of an optical spectroscopy system 10. The system may include an optical camera 15 that can view the sample through the use of an optical path 17. The system may include a laser or other optical source 10 that is directed through an optical relay and focused onto the sample at the sample position 16 through the use of a microscope objective 12. The light returning from the sample may be collected by the microscope objective 12 and directed through another optical path to a spectrograph used to collect the characteristic spectral dataset. The process may be repeated across an area of the sample, resulting in a hyperspectral dataset. It is understood that spectrometer systems can be laid out in many different geometries and with various additional features, and that embodiments of the present invention may be utilized in any such various embodiments of spectrometer systems.
[0070] Discussing FIG. 9 in further detail, the optical spectroscopy system 10 may include an optical microscope depicted within the phantom / dashed lines 11. The microscope 11 may include an objective optical element 12 and an ocular optical element 14 (here depicted as lenses, though reflective elements, e.g., mirrors, could be used instead of refractive elements such as lenses). Light from a sample located at a sample position 16 may be transmitted through the objective optical element 12 to the ocular optical element 14 on a microscope beam path 17 to form an image that can be viewed by a viewer either directly through the ocular optical element 14, or with the use of video camera 15 and a video display terminal (not shown).
[0071] Molecular spectrometry may also be performed on the sample. An illuminating light beam 21 may be provided from a light source 20 (depicted here as a laser, though other light sources may be used) through a beam path adjuster 22 to a mirror 24 which redirects the illuminating beam 21 on a path toward the mirror 26. The mirror 26 may deflect the illuminating beam 21 onto a path coincident with the microscope beam path 17. The objective lens 12may focus the illuminating beam 21 onto a focal point 28, thereby causing any sample at this point to interact with the illuminating beam 21 and scatter, emit, or otherwise deliver light having different wavelength content along return beam path 30 after being collected by the objective optical element 12. The return beam 30 may be deflected by the mirror 26 onto a path coincident with the illuminating beam path 21 , and may be allowed to pass through mirror 24 (which may be a dichroic mirror chosen to pass wavelengths along one or more ranges other than those of the illuminating beam 21). The return beam 30 may pass through a beam path adjuster 34 (i.e., a set of optical elements capable of shifting the axis of the return beam 30), and through an input lens 35 which focuses the beam 30 onto the spectrograph input aperture 36 of spectrograph 37. The spectrograph 37 may be formed to spatially distribute the wavelengths of light in the return beam 30 (e.g., by a Czerny-Turner monochromator or other arrangement, not shown), with the wavelengths then being incident upon a detector 38 which detects the intensity of the light at the various wavelengths to provide an output signal which characterizes properties of the sample.
[0072] The beam path adjusters 22 and 34 may be provided in order to precisely align the illuminating beam 21 and return beam 30 with the focal point 28 and spectrograph input aperture 36. The beam path adjusters 22 and 34 may be fed adjustment signals by a control system 44, which relies on input from detector 38 (as discussed below) and from an alignment unit 39 situated on or within the sample stage 40 of the microscope 11. The alignment unit 39 includes a stage entrance aperture 41 which is positioned by the operator, by viewing the alignment unit 39 with the ocular optical element 14 and / or video camera 15, to coincide with the central axis of the microscope optical beam 17. The alignment unit 39 may include a stage light source 60, e.g., a high intensity light emitting diode (LED), actuated by line 62 communicating with control system 44, and a stage light sensor 65, e.g., a silicon photodiode situated to receive light transmitted through the LED / stage light source 60, with the stage light sensor 65 emitting a stage light sensor output signal to control system 44 along line 68 in response to receipt of light. The control system 44 may perform alignment by turning on the stage light source 60 and then adapting the beam path adjuster 34 until the return beam 30 from the stage light source 60 registers with maximum intensity on the detector 38, thereby indicating that such a return beam 30 would also be well-aligned with the spectrograph input aperture 36 and detector 38 if the return beam 30 was generated via the illuminating light beam 21 from the light source 20. Similarly, the beam path adjuster 22 can be adapted by the control system 44 until the stage light sensor 65 measures maximum output from the light source 20, indicating that the illuminating light beam 21 is properly aligned. In other words, the input or datum beam 21 for spectrometry is optimized via beam path adjuster 22 by signals from the stage light sensor 65 in the alignment unit 39 (with the stage light sensor 65 being stimulated by the light source 20), and the return beam 30 for spectrometry is optimized via beam path adjuster 34 by signals from the detector 38 in the spectrograph 37 (with the detector 38 being stimulated by the stage light source 60). Note that the control system 44 may communicate with the light source 20 by line 46, with the beam adjuster 22 by line 47, with the detector 38 by line 48, and with the beam adjuster 34 by line 49, as well as with the stage light sensor 65 via line 68 and the stagelight source 60 via line 62. Once alignment is achieved, the alignment unit 39 may be removed from the sample stage 40 (if not built therein) so that the microscope system 11 may be used for analyzing samples.
[0073] The user local computing device 6020 may be a computing device (e.g., in accordance with any of the embodiments of the computing device 5000 discussed herein) that is local to a user of the scientific instrument 6010. In some embodiments, the user local computing device 6020 may also be local to the scientific instrument 6010, but this need not be the case; for example, a user local computing device 6020 that is in a user's home or office may be remote from, but in communication with, the scientific instrument 6010 so that the user may use the user local computing device 6020 to control and / or access data from the scientific instrument 6010. In some embodiments, the user local computing device 6020 may be a laptop, smartphone, or tablet device. In some embodiments the user local computing device 6020 may be a portable computing device.
[0074] The service local computing device 6030 may be a computing device (e.g., in accordance with any of the embodiments of the computing device 5000 discussed herein) that is local to an entity that services the scientific instrument 6010. For example, the service local computing device 6030 may be local to a manufacturer of the scientific instrument 6010 or to a third-party service company. In some embodiments, the service local computing device 6030 may communicate with the scientific instrument 6010, the user local computing device 6020, and / or the remote computing device 6040 (e.g., via a direct communication pathway 6008 or via multiple “indirect” communication pathways 6008, as discussed above) to receive data regarding the operation of the scientific instrument 6010, the user local computing device 6020, and / or the remote computing device 6040 (e.g., the results of self-tests of the scientific instrument 6010, calibration coefficients used by the scientific instrument 6010, the measurements of sensors associated with the scientific instrument 6010, etc.). In some embodiments, the service local computing device 6030 may communicate with the scientific instrument 6010, the user local computing device 6020, and / or the remote computing device 6040 (e.g., via a direct communication pathway 6008 or via multiple “indirect” communication pathways 6008, as discussed above) to transmit data to the scientific instrument 6010, the user local computing device 6020, and / or the remote computing device 6040 (e.g., to update programmed instructions, such as firmware, in the scientific instrument 6010, to initiate the performance of test or calibration sequences in the scientific instrument 6010, to update programmed instructions, such as software, in the user local computing device 6020 or the remote computing device 6040, etc.). A user of the scientific instrument 6010 may utilize the scientific instrument 6010 or the user local computing device 6020 to communicate with the service local computing device 6030 to report a problem with the scientific instrument 6010 or the user local computing device 6020, to request a visit from a technician to improve the operation of the scientific instrument 6010, to order consumables or replacement parts associated with the scientific instrument 6010, or for other purposes.
[0075] The remote computing device 6040 may be a computing device (e.g., in accordance with any of the embodiments of the computing device 5000 discussed herein) that is remote from the scientific instrument 6010 and / or from the user local computing device 6020. In some embodiments, the remote computing device 6040 maybe included in a datacenter or other large-scale server environment. In some embodiments, the remote computing device 6040 may include network-attached storage (e.g., as part of the storage device 6004). The remote computing device 6040 may store data generated by the scientific instrument 6010, perform analyses of the data generated by the scientific instrument 6010 (e.g., in accordance with programmed instructions), facilitate communication between the user local computing device 6020 and the scientific instrument 6010, and / or facilitate communication between the service local computing device 6030 and the scientific instrument 6010.
[0076] In some embodiments, one or more of the elements of the scientific instrument support system 6000 illustrated in FIG. 6 may not be present. Further, in some embodiments, multiple ones of various ones of the elements of the scientific instrument support system 6000 of FIG. 6 may be present. For example, a scientific instrument support system 6000 may include multiple user local computing devices 6020 (e.g., different user local computing devices 6020 associated with different users or in different locations). In another example, a scientific instrument support system 6000 may include multiple scientific instruments 6010, all in communication with service local computing device 6030 and / or a remote computing device 6040; in such an embodiment, the service local computing device 6030 may monitor these multiple scientific instruments 6010, and the service local computing device 6030 may cause updates or other information may be "broadcast” to multiple scientific instruments 6010 at the same time. Different ones of the scientific instruments 6010 in a scientific instrument support system 6000 may be located close to one another (e.g., in the same room) or farther from one another (e.g., on different floors of a building, in different buildings, in different cities, etc.). In some embodiments, a scientific instrument 6010 may be connected to an I nternet-of-Things (loT) stack that allows for command and control of the scientific instrument 6010 through a web-based application, a virtual or augmented reality application, a mobile application, and / or a desktop application. Any of these applications may be accessed by a user operating the user local computing device 6020 in communication with the scientific instrument 6010 by the intervening remote computing device 6040. In some embodiments, a scientific instrument 6010 may be sold by the manufacturer along with one or more associated user local computing devices 6020 as part of a local scientific instrument computing unit 6012.
[0077] In some embodiments, different ones of the scientific instruments 6010 included in a scientific instrument support system 6000 may be different types of scientific instruments 6010; as previously described. In some such embodiments, the remote computing device 6040 and / or the user local computing device 6020 may combine data from different types of scientific instruments 6010 included in a scientific instrument support system 6000.
[0078] The following paragraphs provide various examples of the embodiments disclosed herein.
[0079] Example 1 is a method of identifying a sample, including: receiving, by a computing device, image data representative of a sample, the image data generated by an imaging device; receiving, by the computing device, physical or chemical data representative of a sample, the physical or chemical data generated by a scientific instrument different from the imaging device; generating, by the computing device, an enhanced point cloud based on the image data and the physical or chemical data; and providing, by the computing device, the enhanced pointcloud to an identification system for comparison with one or more additional enhanced point clouds to identify the sample.
[0080] Example 2 includes the subject matter of Example 1, and further specifies that the physical or chemical data includes spectroscopic data.
[0081] Example 3 includes the subject matter of any of Examples 1-2, and further specifies that the image data includes 2- or 3-dimensional image data, and generating the enhanced point cloud includes combining the 2- or 3- dimensional image data with one or more additional dimensions of data representative of the physical or chemical data.
[0082] Example 4 includes the subject matter of any of Examples 1-3, and further specifies that the enhanced point cloud includes one or more dimensions representative of one or more filters applied to the image data.
[0083] Example 5 includes the subject matter of any of Examples 1-4, and further specifies that the enhanced point cloud includes one or more dimensions representative of a hash value.
[0084] Example 6 includes the subject matter of any of Examples 1-5, and further specifies that the sample is a manufactured object or an agricultural product.
[0085] Example 7 includes the subject matter of any of Examples 1-6, and further specifies that the computing device is part of the identification system, and the method further includes: comparing, by the computing device, the enhanced point cloud with the one or more additional enhanced point clouds by generating a distance between the enhanced point cloud and individual ones of the one or more additional enhanced point clouds; and identifying, by the computing device, the sample as corresponding to a known sample when the distance between the enhanced point cloud and an enhanced point cloud associated with the known sample meets one or more distance criteria.
[0086] Example 8 is a method of aligning outputs of different scientific instruments, including: generating, at least partially using a first scientific instrument, a first point cloud representative of a sample, wherein the first point cloud is in an n-dimensional space and n is an integer; generating, at least partially using a second scientific instrument different from the first scientific instrument, a second point cloud representative of the sample, wherein the second point cloud is in an m-dimensional space, different from the n-dimensional space associated with the first point cloud and wherein m is an integer; generating an offset between the first point cloud and the second point cloud using a transformation relating the n-dimensional space to the m-dimensional space; and aligning an output of the second scientific instrument with an output of the first scientific instrument based on the offset.
[0087] Example 9 includes the subject matter of Example 8, and further specifies that m is equal to n.
[0088] Example 10 includes the subject matter of Example 8, and further specifies that m is different than n.
[0089] Example 11 includes the subject matter of any of Examples 8-10, and further specifies that the first scientific instrument and the second scientific instrument have different magnifications.
[0090] Example 12 includes the subject matter of any of Examples 8-11, and further specifies that the first point cloud includes 2- or 3-dimensional image data and one or more additional dimensions of data representative of one or more filters applied to the image data.
[0091] Example 13 includes the subject matter of any of Examples 8-12, and further specifies that the first point cloud includes one or more dimensions representative of a hash value.
[0092] Example 14 includes the subject matter of any of Examples 8-13, and further specifies that the sample is a manufactured object or an agricultural product.
[0093] Example 15 includes the subject matter of any of Examples 8-14, and further includes: adjusting one or more settings of the first scientific instrument or the second scientific instrument based on the offset.
[0094] Example 16 is a method of comparing scientific instrument data, including: receiving, by a computing device, a first point cloud representative of a first sample, wherein the first point cloud is in an n-dimensional space and n is an integer, the first point cloud is based at least in part on data generated by a first scientific instrument, and the first point cloud includes the output of one or more filters on some or all of the data generated by the first scientific instrument; receiving, by the computing device, a second point cloud representative of a second sample, wherein the second point cloud is in an m-dimensional space and m is an integer, the second point cloud is based at least in part on data generated by a second scientific instrument different from the first scientific instrument, and the second point cloud includes the output of one or more filters on some or all of the data generated by the second scientific instrument; generating, by the computing device, an offset between the first point cloud and the second point cloud using a transformation relating the n-dimensional space to the m-dimensional space; and outputting, by the computing device, an identification or alignment result based at least in part on the offset.
[0095] Example 17 includes the subject matter of Example 16, and further specifies that the data generated by the first scientific instrument and the data generated by the second scientific instrument includes physical or chemical data.
[0096] Example 18 includes the subject matter of Example 1 , and further specifies that the physical or chemical data includes spectroscopic data.
[0097] Example 19 includes the subject matter of any of Examples 16-18, and further specifies that the first point cloud includes 2- or 3-dimensional image data and one or more additional dimensions of data representative of physical or chemical data.
[0098] Example 20 includes the subject matter of any of Examples 16-19, and further specifies that the first point cloud includes one or more dimensions representative of a hash value.
[0099] Example 21 is a method for aligning scientific instrument, including generating, with a first scientific instrument, a first n-dimensional point cloud representative of a sample; generating, with a second scientific instrument, a second n-dimensional point cloud representative of the sample; identifying a first centroid within the first n-dimensional point cloud; identifying a second centroid within the second n-dimensional point cloud; determining adistance between the first centroid and the second centroid; and aligning the second scientific instrument with the first scientific instrument based on the distance.
[0100] Example 22 is one or more non-transitory computer readable media having instructions thereon that, when executed by one or more processing devices of a scientific instrument support apparatus, cause the scientific instrument support apparatus to perform the method of any of Examples 1-21.
[0101] Example 23 is a scientific instrument support system including a computing device configured to perform the method of any of Examples 1-21.
[0102] Example 24 is a scientific instrument supporting system including means for performing the method of any of Examples 1-21.
Claims
Claims:
1. A method of identifying a sample, comprising: receiving, by a computing device, image data representative of a sample, the image data generated by an imaging device; receiving, by the computing device, physical or chemical data representative of a sample, the physical or chemical data generated by a scientific instrument different from the imaging device; generating, by the computing device, an enhanced point cloud based on the image data and the physical or chemical data; and providing, by the computing device, the enhanced point cloud to an identification system for comparison with one or more additional enhanced point clouds to identify the sample.
2. The method of claim 1, wherein the physical or chemical data includes spectroscopic data.
3. The method of any of claims 1-2, wherein the image data includes 2- or 3-dimensional image data, and generating the enhanced point cloud includes combining the 2- or 3-dimensional image data with one or more additional dimensions of data representative of the physical or chemical data.
4. The method of any of claims 1-3, wherein the enhanced point cloud includes one or more dimensions representative of one or more filters applied to the image data.
5. The method of any of claims 1-4, wherein the enhanced point cloud includes one or more dimensions representative of a hash value.
6. The method of any of claims 1-5, wherein the sample is a manufactured object or an agricultural product.
7. The method of any of claims 1-6, wherein the computing device is part of the identification system, and the method further includes: comparing, by the computing device, the enhanced point cloud with the one or more additional enhanced point clouds by generating a distance between the enhanced point cloud and individual ones of the one or more additional enhanced point clouds; and identifying, by the computing device, the sample as corresponding to a known sample when the distance between the enhanced point cloud and an enhanced point cloud associated with the known sample meets one or more distance criteria.
8. A method of aligning outputs of different scientific instruments, comprising: generating, at least partially using a first scientific instrument, a first point cloud representative of a sample, wherein the first point cloud is in an n-dimensional space and n is an integer; generating, at least partially using a second scientific instrument different from the first scientific instrument, a second point cloud representative of the sample, wherein the second point cloud is in an m-dimensional space, different from the n-dimensional space associated with the first point cloud and wherein m is an integer; generating an offset between the first point cloud and the second point cloud using a transformation relating the n- dimensional space to the m-dimensional space; and aligning an output of the second scientific instrument with an output of the first scientific instrument based on the offset.
9. The method of claim 8, wherein m is equal to n.
10. The method of claim 8, wherein m is different than n.
11. The method of any of claims 8-10, wherein the first scientific instrument and the second scientific instrument have different magnifications.
12. The method of any of claims 8-11, wherein the first point cloud includes 2- or 3-dimensional image data and one or more additional dimensions of data representative of one or more filters applied to the image data.
13. The method of any of claims 8-12, wherein the first point cloud includes one or more dimensions representative of a hash value.
14. The method of any of claims 8-13, wherein the sample is a manufactured object or an agricultural product.
15. The method of any of claims 8-14, further comprising: adjusting one or more settings of the first scientific instrument or the second scientific instrument based on the offset.
16. A method of comparing scientific instrument data, comprising: receiving, by a computing device, a first point cloud representative of a first sample, wherein the first point cloud is in an n-dimensional space and n is an integer, the first point cloud is based at least in part on data generated by a firstscientific instrument, and the first point cloud includes the output of one or more filters on some or all of the data generated by the first scientific instrument; receiving, by the computing device, a second point cloud representative of a second sample, wherein the second point cloud is in an m-dimensional space and m is an integer, the second point cloud is based at least in part on data generated by a second scientific instrument different from the first scientific instrument, and the second point cloud includes the output of one or more filters on some or all of the data generated by the second scientific instrument; generating, by the computing device, an offset between the first point cloud and the second point cloud using a transformation relating the n-dimensional space to the m-dimensional space; and outputting, by the computing device, an identification or alignment result based at least in part on the offset.
17. The method of claim 16, wherein the data generated by the first scientific instrument and the data generated by the second scientific instrument includes physical or chemical data.
18. The method of claim 17, wherein the physical or chemical data includes spectroscopic data.
19. The method of any of claims 16-18, wherein the first point cloud includes 2- or 3-dimensional image data and one or more additional dimensions of data representative of physical or chemical data.
20. The method of any of claims 16-19, wherein the first point cloud includes one or more dimensions representative of a hash value.