The embodiments described herein relate generally to a system that employs x-ray diffraction imaging (XDI) and, more particularly, to an XDI system that identifies objects through aggregation of signals in multiple contiguous voxels.
Known security detection systems are used at travel checkpoints to inspect carry-on and/or checked bags for concealed weapons, narcotics, and/or explosives. At least some known security detection systems include x-ray imaging systems. In an x-ray imaging system, an x-ray source transmits x-rays through an object or a container, such as a suitcase, towards a detector, and the detector output is processed to identify one or more objects and/or one or more materials in the container.
At least some known XDI systems provide an improved discrimination of materials, as compared to that provided by other known x-ray imaging systems, by measuring d-spacings between lattice planes of micro-crystals in materials. Further, x-ray diffraction may yield data from a molecular interference function that may be used to identify other materials, such as liquids, in a container.
Known multi-detector inverse fan beam (MIFB) XDI systems feature an x-ray multisource emitting a multiplicity of polychromatic x-ray beams, such that each object voxel is irradiated from several different directions. These systems measure spatially-resolved x-ray diffraction profiles of the constituent voxels of inhomogeneous, extended objects. Such MIFB XDI systems generate a three-dimensional (3D) volumetric map, or image, where each voxel within the image includes the polychromatic energy spectrum, i.e., the momentum transfer profile for coherent scatter signals originating from each voxel. Some of these known MIFB XDI systems use relatively small voxels to improve visual resolution of smaller object features. However, as defined by the number of photons measured per voxel, the signal level from each voxel is very low. In general, performance of XDI systems decreases significantly when there are less than 100 photons per voxel. In some known XDI systems, the photon count is in the range between 0 and 25 photons per voxel.
Therefore, due to these low signal levels, it is difficult to establish reliable spectra for accurate material characterization in individual voxels. Objects of interest typically occupy multiple contiguous voxels and such objects of interest may be positioned proximate and/or adjacent to each other. A simple aggregation of signals from adjacent, or nearby voxels may provide sufficient material spectra to accurately identify a substance of interest. However, if the selection of combined voxels includes voxels with photons scattered from different materials, then the resulting spectrum will be a mixture and it may not be possible to identify the materials. In addition, visual discrimination of proximate and/or adjacent objects of interest may be difficult to generate.
In one aspect, a computer-implemented method of performing a security inspection of a container including a plurality of objects therein is provided. The method uses a computing device including at least one processor coupled to a memory device. The method includes irradiating the container with polychromatic x-rays and reconstructing, using the computing device, a four-dimensional (4-D) voxelized representation of a plurality of scatter cross-sections within the container. The 4-D voxelized representation includes a plurality of voxels. The first three dimensions represent a spatial location of each voxel of the plurality of voxels and the fourth dimension represents a plurality of momentum transfer values defining a momentum transfer spectrum of the container. The method also includes generating at least one three-dimensional (3-D) image by determining a single value at each voxel of the plurality of voxels as a function of the momentum transfer spectrum. The method further includes segmenting the plurality of voxels into a plurality of segments of contiguous voxels. Each segment of the plurality of segments includes a plurality of contiguous voxels. At least a portion of the plurality of segments at least partially maps onto at least one object of the plurality of objects. The method also includes computing an aggregated momentum transfer spectrum over the at least a portion of the plurality of contiguous voxels by using the at least a portion of the plurality of segments as guides for aggregation. The method further includes classifying the aggregated momentum transfer spectrum as one of threat and non-threat and distinguishing the at least one object as one of a threat segment and a non-threat segment based on the aggregated momentum transfer spectrum.
In another aspect, an x-ray diffraction imaging (XDI) system is provided. The XDI system includes at least one x-ray source configured to irradiate a container including a plurality of objects therein with polychromatic x-rays. The system also includes at least one detector configured to detect scattered x-rays after the polychromatic x-rays have passed through the container. The system further includes a computing device coupled to the at least one detector. The computing device includes at least one processor and a memory device coupled to the at least one processor. The at least one processor is configured to reconstruct a four-dimensional (4-D) voxelized representation of a plurality of scatter cross-sections within the container, wherein the 4-D voxelized representation includes a plurality of voxels. The first three dimensions represent a spatial location of each voxel of the plurality of voxels and the fourth dimension represents a plurality of momentum transfer values defining a momentum transfer spectrum of the container. The at least one processor is also configured to generate at least one three-dimensional (3-D) image by determining a single value at each voxel of the plurality of voxels as a function of the momentum transfer spectrum. The at least one processor is further configured to segment the plurality of voxels into a plurality of segments of contiguous voxels. Each segment of the plurality of segments includes a plurality of contiguous voxels. At least a portion of the plurality of segments at least partially maps onto at least one object of the plurality of objects. The at least one processor is also configured to compute an aggregated momentum transfer spectrum over the at least a portion of the plurality of contiguous voxels by using the at least a portion of the plurality of segments as guides for aggregation. The at least one processor is further configured to classify the aggregated momentum transfer spectrum as one of threat and non-threat and distinguish the at least one object as one of a threat segment and a non-threat segment based on the aggregated momentum transfer spectrum.
In a further aspect, one or more computer-readable storage media having computer-executable instructions embodied thereon is provided. When executed by at least one processor, the computer-executable instructions cause the at least one processor to reconstruct a four-dimensional (4-D) voxelized representation of a plurality of scatter cross-sections within the container. The 4-D voxelized representation includes a plurality of voxels. The first three dimensions represent a spatial location of each voxel of the plurality of voxels and the fourth dimension represents a plurality of momentum transfer values defining a momentum transfer spectrum of the container. The computer-executable instructions also cause the at least one processor to generate at least one three-dimensional (3-D) image by determining a single value at each voxel of the plurality of voxels as a function of the momentum transfer spectrum. The computer-executable instructions further cause the at least one processor to segment the plurality of voxels into a plurality of segments of contiguous voxels. Each segment of the plurality of segments includes a plurality of contiguous voxels. At least a portion of the plurality of segments at least partially maps onto at least one object of the plurality of objects. The computer-executable instructions also cause the at least one processor to compute an aggregated momentum transfer spectrum over the at least a portion of the plurality of contiguous voxels by using the at least a portion of the plurality of segments as guides for aggregation. The computer-executable instructions further cause the at least one processor to classify the aggregated momentum transfer spectrum as one of threat and non-threat and distinguish the at least one object as one of a threat segment and a non-threat segment based on the aggregated momentum transfer spectrum.
The x-ray diffraction imaging (XDI) systems described herein facilitate cost-effective enhanced identification of materials of interest with a suitably high probability of detection (PD) and low probability of false alarm, i.e., false positive (PFA). Specifically, in contrast to many known security scanning systems, the XDI security screening systems as described herein facilitate segmentation of multiple contiguous voxels into segments that may include materials of interest. The initial steps prior to segmentation include generating a scatter strength value for each voxel and filtering the signals for each voxel, thereby decreasing the noise level and improving the homogeneity of those voxels including a single material. The segmentation process includes filtering out voxels with scatter strengths less than a predetermined threshold value that is based on the materials of interest, thereby leaving contiguous voxels with missing voxels in between. The segmentation process also includes a labeling step, where some voxels are retained and some voxels are disregarded, i.e., excluded. The retained voxels are connected and the connected voxels form “islands”, i.e., segments of contiguous voxels between the excluded voxels. The segmentation process further includes splitting the segmented segments of contiguous voxels into smaller, individual objects. Moreover, the segmentation process includes computing the spectra for each object through aggregating the spectra of the voxels therein.
As such, the XDI security screening systems as described herein facilitate resolution of individual objects and classification into threat/no threat substances through advanced image segmentation as a function of aggregating the spectra of contiguous voxels. Specifically, the XDI security screening systems described herein facilitate improved resolution of objects/substances of interest positioned proximate and/or adjacent to each other through joining voxels with predetermined associating characteristics, disregarding voxels without such characteristics, and separating the joined voxels. More specifically, the systems described herein facilitate improved determinations of which voxels to join. Therefore, efficient and effective detection of substances, such as the classes of liquid substances of interest, in cabin baggage screening (CBS) and hold baggage screening (HBS) systems is enhanced.
In the exemplary embodiment, MFXS 112 is configured to emit polychromatic x-ray radiation sequentially from a plurality of focus points, as described below, distributed along MFXS 112 in a direction substantially parallel to a y-axis perpendicular to the z-axis. In the exemplary embodiment, MFXS 112 has nine (9) focus points. In alternative embodiments, MFXS 112 has approximately 40 to 100 focus points. Also alternatively, MFXS 112 may include any suitable number of focus points that enables operation of XDI system 100 as described herein.
Further, in the exemplary embodiment, MFXS 112 is located on or coupled to an upper support surface, such as at or near a ceiling, while the transmission detectors and coherent x-ray scatter detectors 124 are located on, or coupled to, a lower support structure, such as at or near a floor. In an alternative embodiment, MFXS 112 is located on or coupled to a lower support structure, such as at or near a floor, while the transmission detectors and coherent x-ray scatter detectors 124 are located on or coupled to an upper support surface, such as at or near a ceiling. Further, in the exemplary embodiment, MFXS 112, the transmission detectors and coherent x-ray scatter detectors 124 are stationary, support 116 is a conveyor belt capable of movement backward and forward in a direction substantially parallel to the z-axis, and examination area 114 is a baggage tunnel through which the conveyor belt moves. In an alternative embodiment, MFXS 112, the transmission detectors and coherent x-ray scatter detectors 124 are capable of coordinated movement at least in a direction substantially parallel to the z-axis, and support 116 is stationary. In certain alternative embodiments, MFXS 112, the transmission detectors, coherent x-ray scatter detectors 124, and support 116 are all capable of movement.
In the exemplary embodiment, MFXS 112 is configured to emit, through primary collimator 118, a set of polychromatic x-ray pencil beams 134, from each focus point of MFXS 112. A portion of the polychromatic x-ray radiation from each pencil beam 134 typically is scattered in various directions upon contact with a container (not shown) in examination area 114. Secondary collimator 120 is configured to facilitate ensuring that a portion of scattered radiation (not shown) arriving at each coherent x-ray scatter detector 124 has a constant scatter angle with respect to the corresponding pencil beam 134 from which the scattered radiation originated.
In the exemplary embodiment, a multi-detector inverse fan beam 150 formed from a set of polychromatic x-ray pencil beams 134 is projected along x-axis 152 onto the X-Y plane. More specifically, pencil beams 134 of fan beam 150 fan out in the X-Y plane. Pencil beams 134 of fan beam 150 also fan out in the X-Z plane. In one embodiment, MFXS 112 emits radiation sequentially from a plurality of focus points 154. More specifically, MFXS 112 includes an anode 156 and a plurality of focus points 154 arranged along a length of anode 156 collinear with a y-axis 158 of MFXS 112. Each focus point 154 is sequentially activated to emit an x-ray fan beam. For example, a focus point F1 emits fan beam MIFB 150 that extends between and is detected by coherent x-ray scatter detector D1 through and including coherent x-ray scatter detector D13 and includes a plurality of pencil primary beams 160. Focus points 154 are denoted F1, F2, . . . Fi, . . . Fn with a running index i. Primary collimator 118 is configured to select from the radiation emitted at each focus point 154, primary beams that are directed to a series of convergence points 162 labeled O1, O2, . . . , Oj, . . . Om with a running index j regardless of which focus point 154 is activated. Ten primary beams 160 are shown in
A plurality of discrete coherent x-ray scatter detectors 124 labeled discrete coherent x-ray scatter detectors D1, D2, . . . Dk, . . . DL with a running index k are positioned at a suitable or desirable distance in a direction along the Z-axis from a corresponding convergence point 162 to record coherent scatter from primary beam Pij in discrete coherent x-ray scatter detector Dk. A combination of MFXS 112 and discrete coherent x-ray scatter detectors 124 facilitates examining a volume of an object positioned within examination area 114 without any dead area from which no XDI signal is detected or measured.
As primary beams 160 labeled Pij propagate through an object (not shown) positioned within examination area 114, primary beam Pij interacts with the object to produce coherent scatter that may be detected in coherent x-ray scatter detectors Dj+1, Dj+2, Dj−1, and/or Dj−2, for example. Primary beams P11, P12, P13, P14, P15, . . . P1k, . . . P1L, are emitted from focus point F1 and directed to corresponding convergence points O1, O2, O3, O4, O5, . . . , Oj, . . . Om, respectively. As each primary beam P11, P12, P13, P14, P15, . . . P1k, . . . P1L moves through examination area 114, each primary beam P11, P12, P13, P14, P15, . . . P1k, . . . P1L collides with and/or interacts with an object (not shown) positioned within examination area 114 to produce coherent scatter (not shown) that is detectable at one or more coherent x-ray scatter detectors D1, D2, D3, D4, D5, . . . Dk, . . . DL for example.
In the exemplary embodiment, MFXS 112 is positioned on the y-axis (x=0) of a Cartesian coordinate system. Each focus point 154 has a position on a grid having a pitch, Ps. Further, convergence points 162 lie parallel to the y-axis at coordinate X=L, and each convergence point 162 has a position on a grid having a pitch, Pt. In a particular embodiment, for an XDI checked baggage screening system, L has a value of about 2000 millimeters (mm), Ps has a value of about 20 mm, and Pt has a value of about 200 mm. Alternatively, L, Ps, and Pt have any values that enable operation of XDI system 100 as described herein.
A plurality of coherent x-ray scatter detectors 124 are positioned at the same y-coordinate as convergence points 162. One pair of coherent x-ray scatter detectors 124 may be associated with a corresponding convergence point 162 with the pair of coherent x-ray scatter detectors 124 positioned on both sides of the X-Y plane. In a further embodiment, thirteen (13) convergence points are used to allow for several convergence point position arrangements to incorporate a different number of coherent x-ray scatter detectors 124. If all convergence points 162 have detector pairs then XDI system 100 may include twenty-six (26) coherent x-ray scatter detectors 124. In alternative embodiments, fewer coherent x-ray scatter detectors 124 may be positioned at convergence point positions 1, 3, 5, 7, 9, 11, and 13, at convergence point positions 1, 4, 7, 10, and 13, or at convergence point positions 1, 5, 9, and 13 to account for manufacturing and/or cost constraints.
A left-most detector D13 detects a plurality of primary beams 160 labeled P113, P213, . . . Pik, . . . P913, alternatively referred to herein as an inverse fan beam bundle 170 of primary beams, from each focus point 154 denoted F1, F2, . . . Fi, . . . F9 of MFXS 112 that are transmitted by primary collimator 118. Inverse fan beam bundle 170 is significantly narrower than a width of examination area 114. MFXS 112, as depicted in
Several inverse fan beam bundles 170 of primary beams directed towards a corresponding convergence point Oj are detected by a corresponding coherent x-ray scatter detector Dk. During a scan of the object positioned within examination area 114, during which each focus point 154 of MFXS 112 is sequentially activated, the object section is completely irradiated and scatter signals are measured from an entire width of the object. In this embodiment, no mechanical movements are required to achieve a complete 2-D and/or 3-D scan of the object. MFXS 112 achieves this with only a small x-ray source dimension along the y-axis. In the exemplary embodiment, MFXS 112 has a length along the y-axis of less than about 500 mm. A small x-ray source dimension is advantageous from the viewpoints of cost and reliability.
As described above, XDI system 100 includes two types of detectors, i.e., an array of transmission detectors (not shown) and a plurality of discrete coherent x-ray scatter detectors 124, each individually labeled as D1, D2, D3, D4, D5, . . . Dk, . . . DL. The transmission detectors are offset in the z-axis direction from coherent x-ray scatter detectors 124. In the exemplary embodiment, the transmission detectors are charge integration detectors, while coherent x-ray scatter detectors 124 are pulse-counting energy-resolving detectors. The transmission detectors and each coherent x-ray scatter detector 124 are in electronic communication with a number of channels 180, for example, N number of channels C1, . . . Cp, . . . CN, with a running index p where N is selected based on the configuration of XDI system 100, and where only those channels C associated with coherent x-ray scatter detectors 124 are shown. Channels 180 electronically communicate data collected by the transmission detectors and each coherent x-ray scatter detector 124 to a computing device 182. In the exemplary embodiment, computing device 182 combines an output from the transmission detectors and an output from coherent x-ray scatter detectors 124 to generate information about the contents of an object positioned within examination area 114. For example, but not by way of limitation, computing device 182 may generate multiview projections and/or section images of a container (not shown) in examination area 114 that identify a location in the container of specific materials detected by XDI analysis.
In the exemplary embodiment, computing device 182 includes a processor 184 in communication with the transmission detectors and coherent x-ray scatter detectors 124 through a memory device 186. Processor 184 is programmed, i.e., configured to receive from coherent x-ray scatter detectors 124 output signals representative of the detected x-ray quanta and generate a distribution of momentum transfer values, x, from a spectrum of energy, E, of x-ray quanta within scattered radiation detected by coherent x-ray scatter detectors 124.
As used herein, the terms “processor” and “processing device” are not limited to just those integrated circuits referred to in the art as a computer, but broadly refers to a microcontroller, a microcomputer, a programmable logic controller (PLC), an application specific integrated circuit, and other programmable circuits, and these terms are used interchangeably herein. In the embodiments described herein, memory may include, but is not limited to, a computer-readable medium, such as a random access memory (RAM), and a computer-readable non-volatile medium, e.g., firmware, such as flash memory. Alternatively, a floppy disk, a compact disc-read only memory (CD-ROM), a magneto-optical disk (MOD), and/or a digital versatile disc (DVD) may also be used. Also, in the embodiments described herein, additional input channels may be, but are not limited to, computer peripherals associated with an operator interface such as a mouse and a keyboard. Alternatively, other computer peripherals may also be used that may include, for example, but not be limited to, a scanner. Furthermore, in the exemplary embodiment, additional output channels may include, but not be limited to, an operator interface monitor.
Also, as used herein, the terms “software” and “firmware” are interchangeable, and include any computer program stored in memory for execution by personal computers, workstations, clients and servers.
Further, as used herein, the term “non-transitory computer-readable media” is intended to be representative of any tangible computer-based device implemented in any method or technology for short-term and long-term storage of information, such as, computer-readable instructions, data structures, program modules and sub-modules, or other data in any device. Therefore, the methods described herein may be encoded as executable instructions embodied in a tangible, non-transitory, computer readable medium, including, without limitation, a storage device and/or a memory device. Such instructions, when executed by a processor, cause the processor to perform at least a portion of the methods described herein. Moreover, as used herein, the term “non-transitory computer-readable media” includes all tangible, computer-readable media, including, without limitation, non-transitory computer storage devices, including, without limitation, volatile and nonvolatile media, and removable and non-removable media such as a firmware, physical and virtual storage, CD-ROMs, DVDs, and any other digital source such as a network or the Internet, as well as yet to be developed digital means, with the sole exception being a transitory, propagating signal.
Processor 184 and other processors (not shown) as described herein process information transmitted from a plurality of electrical and electronic devices that include, without limitation, coherent x-ray scatter detectors 124. Memory devices 186 and storage devices (not shown) store and transfer information and instructions to be executed by processor 184. Such memory devices 186 and storage devices can also be used to store and provide temporary variables, static (i.e., non-volatile and non-changing) information and instructions, or other intermediate information to processor 184 during execution of instructions by processor 184. Instructions that are executed include, but are not limited to, analysis of signals transmitted from coherent x-ray scatter detectors 124. The execution of sequences of instructions is not limited to any specific combination of hardware circuitry and software instructions.
At this point of method 300, it is likely that at least some of the objects that are in close proximity have been joined together in the resulting image. Since method 300 and XDI system 100 ultimately identify materials in the objects based on the measured spectrum, further steps are taken to separate the objects. As such, the subsequent steps facilitate evaluating each segmented object to determine if it can be split into two or more smaller objects. More specifically, the subsequent steps facilitate splitting the pre-existing objects into smaller part based on detected disjointment, i.e., detecting that the object is composed of two or more separate objects, possibly of different material types. The subsequent steps overcome noise
Although in some embodiments, the images may be very noisy, object separation can be more visible when viewed from specific angles in a volume rendering image display. Due to the bulkiness of the objects, there will be certain view angles that enhances contrast because the path length through the objects in the associated directions maximize the difference between objects and object boundaries. The splitting algorithm takes advantage of this phenomenon observed in volume rendering displays, and takes it one step further by reducing the dimensionality of the data further from two dimensions (in the volume rendering display) to one dimension by looking at different angles of intersection within the volume rendering image.
Referring to
Method 300 also includes determining 328 at least one minima, e.g., minima 908 on profile 906 of the projected sums of intensities on y-axis 902 that is indicative of object boundaries. The strength of each such minima is quantified and stored for each rotation of segment 806. Over all the rotation angles, the strongest minima are selected.
Defining 350 a neighborhood of voxels also includes defining 352 a central voxel (not shown) within the at least one segment 806 of contiguous voxels. In some embodiments, the central voxel is positioned at the origin. Defining 350 a neighborhood of voxels further includes defining 356 a plurality of second voxels within the at least a portion of the plurality of contiguous voxels 702, 704, and 706 such that the plurality of second voxels have a determined spatial proximity to the first voxel. Defining 350 a neighborhood of voxels also includes at least one of the two following method steps. The first of the two possible method steps includes determining 358 the second voxels extending along each of the x-axis, the y-axis, and the z-axis from the first voxel for a predetermined number of voxels. The second of the possible methods steps includes determining 360 the second voxels extending along each of the x-axis, the y-axis, and the z-axis from the first voxel for a predetermined distance. Method 300 also includes aggregating 362 the momentum transfer spectra from all of the voxels in the neighborhood.
Referring to
In the exemplary embodiment, database 1202 includes XDI system data 1206 and materials of interest data 1208. XDI system data 1206 includes information such as topology configuration information, x-ray power settings, and scatter detector information. Materials of interest data 1208 includes information associated with threat and non-threat materials and substances that are determined during practice of method 300 as described herein.
Computing device 1204 includes database 1202, as well as data storage devices 1210. Computing device 1204 also includes a container irradiation component 1212 for executing method step 302 (shown in
The above described x-ray diffraction imaging (XDI) systems facilitate cost-effective enhanced identification of materials of interest with a suitably high probability of detection (PD) and low probability of false alarm, i.e., false positive (PFA). Specifically, in contrast to many known security scanning systems, the XDI security screening systems as described herein facilitate segmentation of multiple contiguous voxels into segments that may include materials of interest. The initial steps prior to segmentation include generating a scatter strength value for each voxel and filtering the signals for each voxel, thereby decreasing the noise level and improving the homogeneity of those voxels including a single material. The segmentation process includes filtering out voxels with scatter strengths less than a predetermined threshold value that is based on the materials of interest, thereby leaving contiguous voxels with missing voxels in between. The segmentation process also includes a labeling step, where some voxels are retained and some voxels are disregarded, i.e., excluded. The retained voxels are connected and the connected voxels form “islands”, i.e., segments of contiguous voxels between the excluded voxels. The segmentation process further includes splitting the segmented segments of contiguous voxels into smaller, individual objects. Moreover, the segmentation process includes computing the spectra for each object through aggregating the spectra of the voxels therein.
As such, the XDI security screening systems as described herein facilitate resolution of individual objects and classification into threat/no threat substances through advanced visual segmentation as a function of aggregating the spectra of contiguous voxels. Specifically, the XDI security screening systems described herein facilitate improved resolution of objects/substances of interest positioned proximate and/or adjacent to each other through joining voxels with predetermined associating characteristics, disregarding voxels without such characteristics, and separating the joined voxels. More specifically, the systems described herein facilitate improved determinations of which voxels to join. Therefore, efficient and effective detection of substances, such as the classes of liquid substances of interest, in cabin baggage screening (CBS) and hold baggage screening (HBS) systems is enhanced
A technical effect of the systems and methods described herein includes at least one of: (a) determining voxels associated with objects and/or substances of interest and forming segmented voxel aggregations that facilitate enhanced object resolution and identification of substances of interest; (b) enhancing visual resolution of objects positioned proximate and/or adjacent to each other within checked-in and carry-on luggage and packages and enhancing threat/no threat determinations of such objects and their contents; and (c) determining which voxels of an XDI image construct to keep, disregard, join, and separate.
Exemplary embodiments of x-ray diffraction imaging (XDI) systems are described above in detail. The methods and systems are not limited to the specific embodiments described herein, but rather, components of systems and/or steps of the methods may be utilized independently and separately from other components and/or steps described herein. For example, the methods may also be used in combination with other detection systems and methods, and are not limited to practice with only the detection systems and methods as described herein. Rather, the exemplary embodiment may be implemented and utilized in connection with many other x-ray-based security screening system applications.
Although specific features of various embodiments of the invention may be shown in some drawings and not in others, this is for convenience only. In accordance with the principles of the invention, any feature of a drawing may be referenced and/or claimed in combination with any feature of any other drawing.
Some embodiments involve the use of one or more electronic or computing devices. Such devices typically include a processor or controller, such as a general purpose central processing unit (CPU), a graphics processing unit (GPU), a microcontroller, an application specific integrated circuit (ASIC), a programmable logic circuit (PLC), and/or any other circuit or processor capable of executing the functions described herein. The methods described herein may be encoded as executable instructions embodied in a computer readable medium, including, without limitation, a storage device and/or a memory device. Such instructions, when executed by a processor, cause the processor to perform at least a portion of the methods described herein. The above examples are exemplary only, and thus are not intended to limit in any way the definition and/or meaning of the term processor.
This written description uses examples to disclose the embodiments, including the best mode, and also to enable any person skilled in the art to practice the embodiments, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the disclosure is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal language of the claims.
This invention was made with United States (U.S.) Government support under contract number HSHQDC-11-C-00014 awarded by the Department of Homeland Security (DHS). The U.S. Government may have certain rights in this invention.