Patent Description:
Today, radiation systems such as computed tomography (CT) systems, single-photon emission computed tomography (SPECT) systems, digital projection systems, and/or line-scan systems, for example, are useful to provide information, or images, of interior aspects of an object under examination. The object is exposed to rays of radiation photons (e.g., x-ray photons, gamma ray photons, etc.) and radiation photons traversing the object are detected by a detector array positioned substantially diametrically opposite a radiation source relative to the object. A degree to which the radiation photons are attenuated by the object (e.g., absorbed, scattered, etc.) is measured to determine one or more properties (e.g., density, z-effective, shape, etc.) of the object and/or one or more properties of various aspects (e.g., sub-objects) of the object. For example, highly dense aspects of an object typically attenuate more radiation than less dense aspects, and thus an aspect having a higher density, such as a bone or metal, for example, may be apparent when surrounded by less dense aspects, such as muscle or clothing.

Radiation systems are often used at security checkpoints to examine the contents of baggage. For example, radiation systems are generally used to examine carry-on and checked luggage at airports for potential threat items. Traditionally, checked luggage has been placed directly on an object translator (e.g., a conveyor belt) and translated through an examination region of the radiation system. However, airports have recently begun placing the checked luggage in containers (e.g., luggage bins) to increase handling efficiency (e.g., by standardizing the unit of input to limit performance degradations) and/or to mitigate jamming on a conveyor assembly that conveys the luggage through the examination region. Due to the size and/or weight of checked luggage, these containers are often rigidly constructed and sized to ensure carriage of the largest expected bags. This increases the size of the 3D volume presented for reconstruction, detection, on-screen visualization, and/or storage. This size increase negatively impacts system performance in each of these areas, requiring longer processing, and analysis times and/or more expensive computational and archival resources. <CIT> discloses a method and a system for compound object separation which comprises projecting three-dimensional image data of a potential compound object to generate one or more Eigen projections and segmenting the two-dimensional Eigen projections to identify sub-objects. Once sub-objects are identified, the segmented Eigen projections are back-projected into three-dimensional space for further processing.

Aspects of the present application address the above matters, and others. According to one aspect, a method for generating a three-dimensional object image from a three-dimensional image depicting an object and a secondary object is provided with the features of claim <NUM>. The method comprises projecting the three-dimensional image along a first axis to generate a first two-dimensional projection image and defining a two-dimensional boundary of the object based upon the first two-dimensional projection image. The method further comprises reprojecting the two-dimensional boundary through volume of the three-dimensional image along the first axis; extracting voxels comprised within the reprojected boundary to generate a three-dimensional sub-image; and identifying boundaries within the sub-image perpendicular to the first axis.

The method also comprises defining a three-dimensional boundary of the object within the three-dimensional image based upon the two-dimensional boundary and extracting voxels comprised within the three-dimensional boundary to generate the three-dimensional object image depicting the object but not depicting the secondary object.

According to another aspect, a system with the features of claim <NUM> is provided. The system comprises a processing unit and memory configured to store instructions that when executed by the processing unit perform the method of claim <NUM>.

According to another aspect a computer-readable medium comprising computer executable instructions that when executed by a processing unit perform the method of claim <NUM>.

A method for removing voxels representative of a secondary object from an image slice representative of an object and the secondary object is discussed, not belonging to the invention. The method comprises defining a first search path within the image slice and identifying a first intersection between the first search path and the secondary object. The method also comprises defining a second search path within the image slice and identifying a second intersection between the second search path and the secondary object. The method further comprises fitting a curve to the first intersection and the second intersection and removing voxels in a region defined by the curve, the voxels representative of the secondary object.

Those of ordinary skill in the art will appreciate still other aspects of the present application upon reading and understanding the appended description.

The application is illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references generally indicate similar elements and in which:.

The claimed subject matter is now described with reference to the drawings, wherein like reference numerals are generally used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide an understanding of the claimed subject matter. It may be evident, however, that the claimed subject matter may be practiced without these specific details. In other instances, structures and devices are illustrated in block diagram form in order to facilitate describing the claimed subject matter.

Among other things, a radiation system comprising an image extraction component is provided. The radiation system is configured to examine an object (e.g., baggage) via radiation (e.g., x-rays, gamma rays, etc.). During the examination, the object is situated within a secondary object, such as a container, and a 3D image is generated representing the object and the secondary object. The image extraction component is configured to analyze the 3D image to separate a portion of the 3D image depicting the object from a portion of the 3D image depicting the secondary object. In this way, a 3D object image depicting a volume of the object (e.g., and not depicting the secondary object) is extracted from the 3D image. In some embodiments, the 3D object image is subsequently analyzed by a feature identification component to determine whether the object comprises one or more specified features (e.g., such as known threat objects).

As will be described in more detail below, in some embodiments the image extraction component is configured to analyze the 3D image, or 2D projection images generated therefrom, to identify one or more edges of the object within the 3D image and/or the 2D projection image(s). Using these edges, a volumetric boundary of the object can be defined within the 3D image, and voxels comprised within a volume defined by the volumetric boundary can be extracted to generate the 3D object image (e.g., where the 3D object image represents little to none of the secondary object). In some embodiments, a buffer region is defined spatially proximate the volumetric boundary, and voxels comprised within the buffer region are also extracted to be included in the 3D object image.

<FIG> illustrates an example radiation system <NUM> comprising an image extraction component <NUM> as provided for herein. In some embodiments, the radiation system <NUM> is configured as a computed tomography (CT) system configured to rotate a radiation source <NUM> and a detector array <NUM> about an object <NUM> during an examination. In other embodiments, the radiation system <NUM> may be configured as another form of 3D imaging system, such as a single-photon emission computed tomography (SPECT) system or a tomosynthesis system, for example.

The radiation system <NUM> comprises an examination unit <NUM> configured to examine objects <NUM>, such as baggage. In some embodiments, such objects <NUM> are situated within a secondary object <NUM>, such as a luggage bin, and the examination unit <NUM> further (e.g., undesirably) examines the secondary object <NUM>. In other embodiments, the object <NUM> may be embedded within and/or integral to the secondary object <NUM>. By way of example, in medical applications, the object <NUM> may be a region of interest, such as a particular organ or bone, and the secondary object <NUM> may be a region of the body surrounding the region of interest.

The examination unit <NUM> comprises a rotating gantry <NUM> and a (stationary) support structure <NUM> (e.g., which may encase and/or surround at least a portion of the rotating gantry <NUM> (e.g., as illustrated with an outer, stationary ring, surrounding an outside edge of an inner, rotating ring)). During an examination of an object <NUM>, the object <NUM> and the secondary object <NUM> are translated into and/or through an examination region <NUM> (e.g., a hollow bore in the rotating gantry <NUM>) via a support article <NUM>, such as a conveyor belt, roller assembly, etc. While the object <NUM> is situated within the examination region <NUM>, the object <NUM> and the secondary object <NUM> are exposed to radiation <NUM>.

The rotating gantry <NUM> may surround a portion of the examination region <NUM> and may comprise the radiation source <NUM> (e.g., an ionizing radiation source such as an x-ray source or gamma-ray source) and the detector array <NUM>. In some embodiments, the detector array <NUM> is mounted on a substantially diametrically opposite side of the rotating gantry <NUM> relative to the radiation source <NUM>, and during an examination of the object <NUM>, the rotating gantry <NUM> (e.g., including the radiation source <NUM> and detector array <NUM>) is rotated about the object <NUM> by a rotor <NUM> (e.g., belt, drive shaft, chain, roller truck, etc.). Because the radiation source <NUM> and the detector array <NUM> are mounted to the rotating gantry <NUM>, a relative position between the detector array <NUM> and the radiation source <NUM> may be substantially maintained during the rotation of the rotating gantry <NUM>. In embodiments where the object <NUM> is translated during the examination in a direction substantially parallel to an axis about which the rotating gantry <NUM> rotates, a helical examination is performed on the object <NUM>.

During the examination of the object <NUM>, the radiation source <NUM> emits cone-beam or fan-beam shaped radiation <NUM> from a focal spot of the radiation source <NUM> (e.g., a region within the radiation source <NUM> from which radiation <NUM> emanates) into the examination region <NUM>. Such radiation <NUM> may be emitted substantially continuously and/or may be emitted intermittently (e.g., a brief pulse of radiation <NUM> is emitted followed by a resting period during which the radiation source <NUM> is not activated). Further, the radiation <NUM> may be emitted at a single energy spectrum or multi-energy spectrums depending upon, among other things, whether the radiation system <NUM> is configured as a single-energy system or a multi-energy (e.g., dual-energy) system.

As the emitted radiation <NUM> traverses the object <NUM> and/or the secondary object <NUM>, the radiation <NUM> may be attenuated differently by different aspects of the object <NUM> and/or the secondary object <NUM>. Because different aspects attenuate different percentages of the radiation <NUM>, the number of photons detected by respective detector cells of the detector array <NUM> may vary. For example, more dense aspects of the object(s) <NUM>, such as a metal plate, may attenuate more of the radiation <NUM> (e.g., causing fewer photons to impinge a region of the detector array <NUM> shadowed by the more dense aspects) than less dense aspects, such as clothing.

Radiation detected by the detector array <NUM> may be directly or indirectly converted into analog signals. The analog signal(s) may carry information indicative of the radiation detected by the detector array <NUM>. The content of the information may be a function of, among other things, the type of detector array <NUM> employed within the radiation system <NUM>. By way of example, where the detector array <NUM> is a charge-integrating detector array, the information may be indicative of the number of radiation photons detected over a measurement period. As another example, where the detector array <NUM> is a photon counting detector array, the information may be indicative of a detection location and a detection time for respective detected radiation photons.

The analog signals generated by respective detector cells of the detector array may be transmitted from the detector array <NUM> to a data acquisition component <NUM> operably coupled to the detector array <NUM>. The data acquisition component <NUM> is configured to convert the analog signals into digital signals and/or to compile signals that were transmitted within a predetermined time interval, or measurement interval, using various techniques (e.g., integration, photon counting, etc.). The compiled signals are typically in projection space and are, at times, referred to as projections.

The projections and/or digital signals generated by the data acquisition component <NUM> may be transmitted to an image generator component <NUM> operably coupled to the data acquisition component <NUM>. The image generator component <NUM> is configured to convert at least some of the data from projection space to image space using suitable analytical, iterative, and/or other reconstruction techniques (e.g., tomosynthesis reconstruction, back-projection, iterative reconstruction, etc.) and/or to compile at least some of the data to generate a three-dimensional image of the object <NUM> and the secondary object <NUM>.

The three-dimensional image, representing the object <NUM> and the secondary object <NUM>, may be transmitted to an image extraction component <NUM> configured to extract a volume of the object <NUM> from the three-dimensional image to generate a three-dimensional object image (e.g., which does not include a representation of the secondary object <NUM>). In this way, a portion of the three-dimensional image that is representative of the object <NUM> is extracted from a portion of the three-dimensional image that is representative of the secondary object <NUM>.

To extract a volume of the object <NUM> from the three-dimensional image, the three-dimensional image and/or projections generated therefrom, are searched by the image extraction component <NUM> to identify one or more edges of the object <NUM> that are visible within the three-dimensional image. Based upon the edges that are identified, a volumetric boundary of the object <NUM> is defined within the three-dimensional image, and voxels comprised within the volumetric boundary are extracted to extract a volume of the object <NUM> (e.g., thus generating a three-dimensional object image that depicts little, if any, of the secondary object <NUM>).

The three-dimensional object image generated by the image extraction component <NUM> may be transmitted to a terminal <NUM> for visualization on a monitor <NUM> and/or to a feature identification component <NUM> configured to identify specified features of the object <NUM> using the three-dimensional object image and/or a two-dimensional projection image of the object <NUM> generated from the three-dimensional object image. By way of example, the feature identification component <NUM> may analyze the image for one or more object characteristics (e.g., density characteristics, z-effective characteristics, shape characteristics, etc.) that match object characteristics of an item of interest, such as a potential threat items. If the feature identification component <NUM> identifies a match between an object characteristic of the object <NUM> and an object characteristic of an item of interest, the feature identification component <NUM> may issue an alert to notify a user <NUM>, for example, of the possible match. It may be appreciated that because the data corresponding to the object <NUM> has been separated from data corresponding to the secondary object <NUM>, computational cost(s) may be reduced for the visualization and/or feature identification (e.g., relative to computational cost(s) if the data corresponded to both the object <NUM> and the secondary object <NUM>).

Results of the feature identification analysis performed by the feature identification component <NUM>, a three-dimensional object image generated by the image extraction component <NUM>, and/or a two-dimensional projection image generated from the three-dimensional object image may be transmitted to a terminal <NUM>, or workstation (e.g., a computer), configured to receive the results and/or images, which can be displayed on a monitor <NUM> to a user <NUM> (e.g., security personnel, medical personnel, etc.). In this way, the user <NUM> can inspect the image(s) to identify areas of interest within the object(s) <NUM> and/or be notified of possible items of interest (e.g., such as potential threat items contained with an object <NUM>). The terminal <NUM> can also be configured to receive user input which can direct operations of the examination unit <NUM> (e.g., a speed of gantry rotation, an energy level of the radiation, turn on/off the radiation source <NUM>, halt translation of the secondary object <NUM> and the object <NUM>, etc.).

Further, as will be described in more detail below, the image extraction component <NUM> and the terminal <NUM> may be in operable communication to provide a channel by which user input can be received to assist the image extraction component <NUM> in identifying an appropriate volumetric boundary within the three-dimensional image.

In the example radiation system <NUM>, a controller <NUM> is operably coupled to the terminal <NUM>. The controller <NUM> may be configured to control operations of the examination unit <NUM>, for example. By way of example, in some embodiments, the controller <NUM> may be configured to receive information from the terminal <NUM> and to issue instructions to the examination unit <NUM> indicative of the received information (e.g., converting user input into commands for the examination unit <NUM>).

It may be appreciated that components of the radiation system <NUM> described above are merely example components and the arrangement of such components is merely an example arrangement. Such components and/or arrangements are not intended to be interpreted in a limiting manner, such as necessarily specifying the location, inclusion, and/or relative position of the components. By way of example, in some embodiments, the data acquisition component <NUM> is part of the detector array <NUM> and/or is located on a rotating gantry <NUM> of the radiation system <NUM>.

Referring to <FIG>, a perspective view of the examination unit <NUM> is provided. Objects <NUM>, such as luggage, may be situated within secondary objects <NUM>, such as luggage bins, and translated through an entryway <NUM> of the examination unit <NUM> via a support article <NUM>, such as a conveyor assembly, mechanical roller assembly, gravity-fed roller assembly, etc. In some embodiments, guide rails <NUM> may assist in guiding the secondary object <NUM> into the entryway <NUM>. Typically, the direction in which the secondary object <NUM> is translated is referred to as the z-direction. Moreover, in embodiments where the radiation source <NUM> and/or detector array <NUM> rotate about the object <NUM>, an axis of rotation is typically substantially parallel to the z-direction (e.g., the radiation source <NUM> and/or detector array rotate within an x,y plane).

The secondary objects <NUM> are typically larger than the objects <NUM> and are configured to accommodate the objects <NUM> situated therein. For example, a secondary object <NUM> may have a greater width (e.g., measured in the x-direction) than an object <NUM> situated therein and/or the secondary object <NUM> may have a greater length (e.g., measured in the z-direction) than the object <NUM> situated therein. Moreover, due to the weight of the objects <NUM> (e.g., which may weigh <NUM> lbs or more) and/or size of the objects <NUM> (e.g., which may be <NUM> feet or more in length and/or <NUM> feet or more in width), the secondary objects <NUM> are typically constructed of a substantially rigid, durable material (e.g., such as a plastic polymer and/or a rubber compound).

While the object <NUM> is located within the examination unit <NUM>, the object <NUM> and the secondary object <NUM> are exposed to radiation <NUM>, and radiation traversing the object <NUM> and/or the secondary object <NUM> is measured by a detector array (e.g., typically enclosed within a housing of the examination unit). Due to the construction of the secondary objects <NUM>, such secondary objects <NUM> may attenuate (e.g., scatter or absorb) a non-negligible amount of radiation (e.g., thus causing the secondary objects <NUM> to be radiation semi-opaque). As a result, secondary objects <NUM> may appear in images resulting from the examination.

Referring to <FIG>, an example method <NUM> for extracting a volume of an object <NUM> from a three-dimensional image depicting the object <NUM> and a secondary object <NUM> to generate a three-dimensional object image (e.g., depicting merely the object <NUM> and a defined buffer region neighboring the object <NUM> (e.g., if desired)) is provided. <FIG> are provided to further illustrate at least some of the acts of the example method <NUM>. In some embodiments, such a method <NUM> may be performed by the image extraction component <NUM> to extract the three-dimensional volume of the object <NUM>.

The example method <NUM> begins at <NUM>, and a three-dimensional image is received (e.g., from an image generator <NUM>) at <NUM>. The three-dimensional image depicts the object <NUM> and the secondary object <NUM> in which the object <NUM> is situated during an examination by the examination unit <NUM>. By way of example, referring to <FIG>, a three-dimensional image <NUM> depicting a suitcase <NUM> and a luggage bin <NUM> in which the suitcase <NUM> is situated during an examination may be received at <NUM>. It may be appreciated that while <FIG> illustrates a suitcase <NUM> having a substantially rectangular shape, not all objects <NUM> that are examined may have such a defined shape. By way of example, objects <NUM> may include duffle bags or other items that have an irregular shape and/or whose shape is defined based upon the content of the object <NUM> (e.g., where a filled duffle bag may have a substantially cylindrical shape while a duffle bag that is half full may have a less defined shape). Moreover, the term suitcase is used generically herein to refer to an item configured to store other items and is not intended to infer a geometrical shape. Accordingly, the term suitcase may refer to a duffle bag, briefcase, purse, and/or any other object(s) that may be examined.

At <NUM> in the example method <NUM>, a search path is defined within the three-dimensional image. The search path describes a linear or non-linear approach for locating an edge(s) of the object <NUM> within the three-dimensional image. By way of example, referring to <FIG>, a line <NUM> has been imposed on the three-dimensional image <NUM> to illustrate a search path for examining the three-dimensional image <NUM> to locate edges of the suitcase <NUM>. In the illustration, the search path extends in the x-direction at a predefined y-coordinate and z-coordinate, although as further described below, in other embodiments the search path may extend in a different direction.

The search path may be defined in any number of ways. By way of example, in some embodiments, the search path is pre-defined. As an example, the search path may be defined as a linear path extending in a specified direction, such as the x-direction (e.g., a direction perpendicular to an axis of rotation for the rotating gantry <NUM>) at a predetermined height (e.g., measured in a y-direction) above an object support <NUM> and/or at a determined location in the z-direction. In some embodiments, the search path may be defined based upon information that is known about the object <NUM> and/or the secondary object <NUM>. By way of example, dimensions of the luggage bin <NUM> that are known (e.g., because respective luggage bins have similar dimensions and/or because a unique identifier on a luggage bin can be utilized to identify the dimensions of the luggage bin) may be used to assist in defining the search path. By way of example, a height of the luggage bin <NUM> may be known and a y-coordinate of the search path may be selected based upon the height of the luggage bin <NUM> (e.g., the y-coordinate of the search path may be chosen so as to cause the search path to not intersect the luggage bin <NUM>).

As another example, the search path may be defined as a function of an orientation of the object <NUM> and/or secondary object <NUM> at the time of the examination. By way of example, Eigen analysis may be performed on the three-dimensional image <NUM> to identify Eigen vectors of the luggage bin <NUM>, for example, and the search path may be defined as a function of the Eigen vectors. As an example, the search path may be defined as a linear path parallel to a largest Eigen vector, for example.

In still other embodiments, the search path may be defined based upon user input. By way of example, the three-dimensional image may be presented to the user via the terminal <NUM>, and the image extraction component <NUM> may request that the user draw a linear or non-linear search path within the three-dimensional image. Thus, in such an embodiment, the image extraction component <NUM> defines a search path based at least in part upon input received from the user responsive to the request.

At <NUM> in the example method <NUM>, a first intersection between the object and the search path is identified. By way of example, referring to <FIG>, a black dot <NUM> has been imposed on the three-dimensional image <NUM> at a first intersection between the suitcase <NUM> and the line <NUM>. The first intersection typically represents a first edge (e.g., outer perimeter) of the object <NUM>.

The first intersection may be identified manually (e.g., with the aid of user input) and/or programmatically. By way of example, in some embodiments, the user is presented with the three-dimensional image having imposed thereon the search path defined at <NUM> and the user is requested to identify a first location where the search path intersects the object <NUM>. Based upon user input received responsive to such a request, the first intersection is identified by the image extraction component <NUM>.

In other embodiments, the first intersection may be identified based upon one or more characteristics of respective voxels of the three-dimensional image. By way of example, respective voxels of the three-dimensional image intersecting the search path may be associated with a density characteristic (e.g., or z-effective characteristic). The density characteristic of a first voxel may be compared to the density characteristic of one or more adjacent voxels. If a difference between the density characteristic of the first voxel and the density characteristic of the one or more adjacent voxels exceeds a predetermined threshold, it may be likely that the first voxel represents an edge of the object <NUM> and thus represents the first intersection. In still other embodiments, density characteristics, z-effective characteristics, and/or other characteristics of respective voxels may be utilized to identify an edge of the object <NUM> and/or identify an intersection of the object <NUM> and the search path.

At <NUM> in the example method <NUM>, a second intersection between the object and the search path is identified. In some embodiments, the second intersection represents a second edge of the object <NUM> (e.g., diametrically opposing the first edge). The second intersection may be identified manually and/or programmatically, such as via the aforementioned techniques. In this way, using the search path, two outer bounds of the object 104may be identified (e.g., where a first outer bound is identified by the first intersection and a second outer bound is identified by the second intersection), for example.

Using the first intersection and the second intersection, boundary planes for the object <NUM> may be identified at <NUM>. By way of example, referring to <FIG>. , a first boundary plane <NUM> representing a first plane of the three-dimensional image <NUM> at the first intersection (e.g., represented by the black dot <NUM>) and a second boundary plane <NUM> representing a second plane of the three-dimensional image <NUM> at the second intersection is illustrated. The boundary planes are typically perpendicular to the search path, however other angles are possible for both or either intersection(s). By way of example, in the example illustration, the search path is defined as extending in the x-direction, and thus the boundary planes <NUM>, <NUM> extend in the y-direction and the z-direction. It will be appreciated that while the boundary planes are illustrated as hovering above the suitcase, the boundary planes extend further in the y-direction and in the z-direction (e.g., to cover the suitcase).

A volume of the three-dimensional image between the first boundary plane <NUM> and the second boundary plane <NUM> is extracted at <NUM>, and the volume is projected to generate a first projection image at <NUM>. As used herein, a projection image refers to a two-dimensional image in which respective pixels represent a summation of voxels along parallel lines penetrating the volume along a consistent direction (e.g., perpendicular) relative to the 2D planes. For example, in embodiments where summation is parallel to a coordinate direction of the volume, a row or column of voxels of the three-dimensional image is collapsed into a corresponding sum in the projection image. Accordingly, a density characteristic of a first pixel of the projection image may be equal to a sum or average of the density characteristics of voxels along a projection path represented by the first pixel. Typically, the three-dimensional image is projected in the direction of the search path, and respective pixels represent voxels extending in the direction of the search path.

Referring to <FIG>, a volume <NUM> of the three-dimensional image <NUM> between the first boundary plane <NUM> and the second boundary plane <NUM> is illustrated (e.g., where the three-dimensional image <NUM> has been trimmed to include merely a volume bounded by the first boundary plane <NUM> and the second boundary plane <NUM>). It may be appreciated that such a volume <NUM> comprises at least some remnants of the luggage bin <NUM>. Moreover, portions of the suitcase <NUM>, such as a handle on the right side of the suitcase <NUM>, may not be included within the volume <NUM> because the first intersection occurs (e.g., along the search path) before the handle and thus the handle is 'cut off' by the first boundary plane702.

Referring to <FIG>, a two-dimensional projection image <NUM> is illustrated, wherein the volume <NUM> has been projected at the first boundary plane <NUM> to yield the projection image <NUM>. Respective pixels of the projection image <NUM> correspond to a row of voxels extending in the direction of the search path (e.g., extending in the x-direction). In the projection image, the image <NUM> of the suitcase has thus been collapsed in the x-direction so that the suitcase is now represented by a two-dimensional image extending merely in the y-direction and the z-direction. A pixel of the projection image corresponds to a row of voxels that (e.g., previously) extended in the x-direction but that has been collapsed down to a single pixel.

At <NUM> in the example method <NUM>, a two-dimensional boundary of the object <NUM> is defined via the two-dimensional projection image. The two-dimensional boundary may be defined using techniques similar to those described above to identify an edge of the object <NUM>. By way of example, a user may be presented with the projection image and asked to select (e.g., highlight, mark, etc.) a portion of the projection image representative of the object <NUM>. In such instances, the two-dimensional boundary may be defined based upon received user input. In other embodiments, density characteristics, z-effective characteristics, and/or other characteristics of respective pixels may be analyzed to identify possible edges of the object <NUM>, and a boundary can be defined using the possible edges.

In still other embodiments, the two-dimensional projection image may itself be projected along one or more axes to generate one or more one-dimensional projection lines. By way of example, the two-dimensional projection image may be projected along a first axis of the projection image to generate a first one-dimension projection line. Accordingly, respective points on the one-dimensional projection line represent a row of pixels extending along the first axis, and the first one-dimensional projection line can be analyzed to identify edges of the object <NUM> that are visible along a second axis (e.g., perpendicular to the first axis). The projection image can also be projected along the second axis to generate a second one-dimensional projection line, and the second one-dimensional projection line can be analyzed to identify edges of the object <NUM> that are visible along the first axis, for example.

As an example, with reference to <FIG>, a graph <NUM> illustrating a one-dimension projection line <NUM> generated by projecting the projection image <NUM> along the y-axis is illustrated. Accordingly, respective points along the projection line <NUM> represent one or more pixels of the projection image <NUM> extending in the y-direction. Using such a graph <NUM>, left and right edges of the suitcase <NUM> may be identified. For example, a first peak <NUM> in the projection line <NUM> may be indicative of a left edge of the suitcase <NUM> (e.g., to which castors, wheels, feet, etc. of the suitcase are attached as illustrated in <FIG>) and a second peak <NUM> in the projection line <NUM> may be indicative of a right edge of the suitcase <NUM> (e.g., to which a top handle of the suitcase is attached as illustrated in <FIG>). It may be appreciated that, in some embodiments, prior to identifying peaks in the projection line <NUM>, the projection line may be filtered to reduce miscellaneous peaks (e.g., noise) in the projection line <NUM>, for example. It may also be appreciated that identifying edges based upon peaks is merely one technique for identifying edges from a one-dimensional projection line <NUM> and that other techniques are also contemplated. By way of example, edges may be identified based upon amplitude of the one-dimensional projection line <NUM>, slope of the projection line <NUM>, and/or curvature threshold(s).

Referring to <FIG>, the projection image <NUM> is illustrated again, having imposed thereon a first line <NUM> representing a first axis along which the projection image <NUM> was projected to generate the projection line <NUM> and a second line <NUM> representing a second axis along which the projection image <NUM> may be projected to generate a second projection line. Using these two projection lines, edges of the suitcase <NUM> intersecting the projection lines can be identified. For example, a first (e.g., left) edge <NUM> and a second (e.g., right) edge <NUM> may be identified using the first projection line <NUM> and a third (e.g., top) edge <NUM> and a fourth (e.g., bottom) edge <NUM> may be identified using the second projection line. Based upon these four edges, a two-dimensional boundary of the object may be identified (e.g., where the boundary is defined by the edges <NUM>, <NUM>, <NUM> and <NUM>).

At <NUM> in the example method <NUM>, a three-dimensional boundary of the object is defined based upon the two-dimensional boundary, the first intersection, and the second intersection. By way of example, in some embodiments, the two-dimensional boundary is interpolated between the first intersection (e.g., and first boundary plane) and second intersection (e.g., and second boundary plane) to reproject the boundary through a volume bounded by the first boundary plane and the second boundary plane.

In some embodiments, the three-dimensional boundary includes a buffer region and thus may not be limited to include merely a volume bounded by the two-dimensional boundary, the first boundary plane, and/or the second boundary plane. By slightly enlarging the three-dimensional boundary, portions of the object <NUM> that were not within the two-dimensional boundary and/or a boundary plane are included with the three-dimensional boundary, such as handles, legs, etc. that may not be initially identified as edges of the object <NUM>.

Referring to <FIG>, an example three-dimensional boundary <NUM> is illustrated that is imposed upon the three-dimensional image <NUM>. Portions of the three-dimensional image <NUM> not within the three-dimensional boundary <NUM> have been removed for clarity. The three-dimensional boundary <NUM> includes a buffer region on the top, front, back, left, and right of the suitcase <NUM> to increase the probability that handles, feet, etc. are included within the three-dimensional boundary <NUM>.

At <NUM> in the example method <NUM>, voxels within the three-dimensional boundary are extracted to generate a three-dimensional object image (e.g., depicting little, if any, of the secondary object <NUM>). Voxels not within the three-dimensional boundary may be discarded and/or zeroed (e.g., to remove the content of those voxels). By removing or zeroing some voxels, computational resources are saved by not performing further examination on such voxels (e.g., where such voxels represent a bin that is not of interest). In some embodiments, the three-dimensional object image may be rotated to a defined position relative to a monitor after extraction at <NUM> and/or to a defined, but non-displayed, reference position. By way of example, Eigen analysis may be performed on the three-dimensional object image to identify a longest dimension of the three-dimensional object image, and the three-dimensional object image may be rotated such that the longest dimension extends left-to-right on a monitor, for example.

It may be appreciated that the example method <NUM> is merely provided as an example and is not intended to be interpreted as a limiting example. By way of example, the order of acts described with respect to the example method <NUM> may be arranged differently and/or additional acts may be included (e.g., to refine the approximation of the border). By way of example, in some embodiments, the volume extracted at <NUM> may be projected twice, such as at both boundary planes. As another example, the projection image may be projected multiple times (e.g., <NUM>, <NUM>, <NUM>, etc. times) to further refine the location of edges, for example. Moreover, as will be described in greater detail with respect to <FIG>, in some embodiments, a search is performed on planes extending at a predefined angle relative to the search path (e.g., as opposed to identifying an intersection of the search path between the object and the search path).

Referring to <FIG>, another example method <NUM> is described for extracting a volume of an object <NUM> from a three-dimensional image depicting the object <NUM> and a secondary object <NUM>. It may be appreciated that for purposes of brevity, actions described by the example method <NUM> are not described in detail below.

The example method <NUM> begins at <NUM> and a three-dimensional image depicting the object <NUM> and the secondary object <NUM> is received at <NUM>. The three-dimensional image is projected along a projection axis at <NUM> to generate a two-dimensional projection image. For example, the three-dimensional image is projected along a y-axis to generate a two-dimensional projection image depicting the x- and z-dimensions of the three-dimensional image.

At <NUM> in the example method <NUM>, a two-dimensional boundary of the object is identified using the two-dimensional projection image and/or one-dimensional projection lines generated therefrom. The two-dimensional boundary is projected along the projection axis through the volume of the three-dimensional image at <NUM>, and voxels of the three-dimensional image within the defined boundary are extracted at <NUM> to generate a sub-image. It may be appreciated that because the defined boundary was projected through the volume of the three-dimensional image (e.g., and was not bounded by bounding planes as described with respect to the example method <NUM>), the sub-image may depict at least some fragments of the secondary object <NUM> as well as voids and/or noisy regions external to the object <NUM>.

At <NUM> boundaries within the sub-image that are substantially perpendicular to the projection axis are identified (e.g., thus creating the effect of identifying bounding or boundary planes). At <NUM> in the example method <NUM>, a three-dimensional boundary of the object is defined based upon the two-dimensional boundary and the boundaries identified within the sub-image (e.g., at <NUM>). Voxels comprised within the three-dimensional boundary are extracted at <NUM> to generate a three-dimensional object image.

The example method <NUM> begins at <NUM>, at a three-dimensional image depicting the object <NUM> and the secondary object <NUM> is received at <NUM>. At <NUM>, the three-dimensional image is projected along a first axis (e.g., x-axis) to generate a first projection image (e.g., depicting a y,z plane). At <NUM>, the first projection image is projected along a second axis (e.g., the y-axis) to generate a first projection line. The first projection line can be analyzed to identify a first set of one or more edges of the object at <NUM>.

At <NUM> in the example method <NUM>, the first projection image is projected along a third axis (e.g., the z-axis) to generate a second projection line, and a second set of one or more edges of the object are identified at <NUM>.

At <NUM> in the example method <NUM>, the three-dimensional image is projected along the second axis (e.g., the y-axis) to generate a second projection image (e.g., depicting an x,z plane). At <NUM> in the example method <NUM>, the second projection image is projected along a third axis (e.g., the z-axis) to generate a third projection line, and the third projection line is analyzed to identify a third set of one or more edges of the object at <NUM>.

In this way, using the acts describes at <NUM>-<NUM>, edges that are identifiable from at least three different dimensions of the object may be identified. Using the first, second, and third sets of edges, a three-dimensional boundary of the object may be defined at <NUM>, and voxels comprised within the three-dimensional boundary may be extracted at <NUM> to generate a three-dimensional object image.

It may be appreciated that while the example method <NUM> describes generating the second projection image from the three-dimensional image, in other embodiments, the second projection image may be derived by projecting a three-dimensional sub-image. By way of example, the first and second sets of edges may be used to define a two-dimensional boundary and the two-dimensional boundary may be reprojected across the volume of the three-dimensional image (e.g., as described with respect to <NUM> in <FIG>) to generate a three-dimensional sub-image, which is projected to generate the second projection image.

In some embodiments, such as in applications where at least some of the objects are irregularly shaped, planes and/or object slices that are angled at some angle relative to the search path (e.g., such as planes that are perpendicular to the search path) may be examined to identify the first boundary plane (e.g., where a first edge of the object is encountered) and the second boundary plane (e.g., where a last edge of the object is encountered). Accordingly, the example method <NUM> may be modified slightly to examine planes and/or slices of the three-dimensional image as opposed to identifying intersections between the object and the search path. By way of example, the action described at <NUM> in the example method <NUM> may be replaced with identifying a first boundary plane by examining a set of planes angled at a predefined angle relative to the search path (e.g., a set of planes perpendicular to the search path) to identify a first instance of the object (e.g., a first edge of the object). Moreover, the action described at <NUM> in the example method <NUM> may be replaced with identifying a second boundary plane by examining the set of planes to identify a second instance of the object (e.g., a last edge of the object). Moreover, because such boundary planes are identified at <NUM> and <NUM>, the action described at <NUM> in the example method <NUM> may be eliminated.

Referring to <FIG>, illustrations are provided to the further describe the foregoing actions. The three-dimensional image <NUM> received at <NUM> may be decomposed <NUM> into a set of planes <NUM> angled at a predefined angle relative to the search path (e.g., represented by line <NUM>) as illustrated by <FIG>. By way of example, the set of planes <NUM> may be perpendicular to the search path. Respective planes along the search path may be examined (e.g., sequentially) to determine whether the plane represents a portion of the object <NUM>. A first plane, along the search path, in which a portion of the object <NUM> is identifiable may be treated as a first boundary plane. By way of example, referring to <FIG>, the first boundary plane <NUM> is identified in the set of planes <NUM> because a first edge <NUM> of the object <NUM> lies within the plane. It may be appreciated that respective planes may be analyzed in 2D space (e.g., where pixels are analyzed to determine if an intensity of the pixel corresponds to a possible edge of an object <NUM>) and/or in 1D space (e.g., by converting the 2D plane to a 1D projection line as previously described and analyzing the 1D projection line to identify possible edges (e.g., which may appear as peaks in the 1D projection line). Next, a second plane (e.g., last plane), along the search path, in which a portion of the object <NUM> is identifiable may be treated as a second boundary plane. By way of example, referring to <FIG>, the second boundary plane <NUM> is identified in the set of planes because a second edge <NUM> (e.g., last edge) of the object <NUM> lies within the plane. Using these two boundary planes <NUM>, <NUM>, a volume of the three-dimensional image between the first boundary plane <NUM> and the second boundary plane <NUM> may be extracted as further described with respect to <NUM> in the example method <NUM>.

In some embodiments, characteristics of a bin or other secondary object may be known and these known characteristics may be used when extracting an image of an object (e.g., luggage) from an image depicting both the object and the secondary object. By way of example, in a security screening application, respective bins may comprise a barcode, radio-frequency tag, of other identifier that can be used to identify a bin under examination. Using such an identifier, characteristics of the bin, such as a size and/or shape of the bin can be determined (e.g., by comparing the identifier to a database listing identifiers and characteristics of respective bins). In other applications, respective bins that are subject to examination may be of a uniform size and/or shape and thus uniquely identifying respective bins may be optional.

Where characteristics of a secondary object are known (e.g., either because the secondary object conforms to a set of known characteristics and/or because characteristics of the secondary object can be determined based upon a unique identifier), the characteristics of the secondary object can be utilized to assist in defining a boundary of an object and/or defining a boundary between an object and a secondary object in an image for purposes of extracting voxels of the image that represent the object. Referring to <FIG>, an example method <NUM> is illustrated for extracting voxels of the image representing the object. Throughout the description of the method <NUM>, reference is made to <FIG>, which depict the method <NUM> being implemented on an image slice.

The method <NUM> begins at <NUM>, and an image slice depicting the object <NUM> and the secondary object <NUM> is received at <NUM>. An image slice is a three-dimensional image representing a slice of the object and the secondary object. For example, an image slice may represent a portion of the object and a portion of the secondary object located under a focal spot of the radiation source during a single full rotation (e.g., <NUM>°) around the object and secondary object or during a partial rotation (e.g., <NUM>°) around the object and secondary object. In some embodiments, hundreds of image slices may be acquired during an examination of the object and the secondary object. In some embodiments, respective image slices may be so thin in one dimension (e.g., such as a z-dimension that corresponds to a direction in which the object and secondary object are translated), that the image slices approximate a two-dimensional plane as illustrated by the image slice <NUM> in <FIG>.

At <NUM> in the example method <NUM>, a first search direction for the image slice is defined. The first search direction may be defined with respect to the support article <NUM>. For example, in some embodiments, the first search direction is perpendicular to a plane of the support article <NUM> upon which the secondary object <NUM> rests (e.g., where the first search direction would correspond to the x-direction in <FIG>).

At <NUM>, a first intersection <NUM> between a first search path <NUM>, extending in the first search direction (e.g., the x-direction), and the secondary object <NUM> is identified. The first intersection <NUM> may be identified based upon a voxel (e.g., or pixel) of the image slice <NUM> having one or more characteristics attributable to the secondary object <NUM>. By way of example, in a CT image, voxels representative of the secondary object <NUM> may have a CT value within a certain range of CT values. In some embodiments, these CT values can be used to identify the first intersection <NUM>, although other edge detection techniques are also contemplated for detecting the first intersection <NUM>. In some embodiments, the first intersection <NUM> may correspond to an initial location along the first search path <NUM> where the secondary object <NUM> and the first search path <NUM> intersect. In this way, the first intersection <NUM> is proximate a first edge of the secondary object <NUM>, for example.

Although not illustrated in the example method <NUM>, other intersections between the first search path <NUM> and the secondary object <NUM> may also be identified. For example, a second intersection <NUM> between the first search path <NUM> and the secondary object <NUM> may be identified (e.g., using a technique similar to a technique used to identify the first intersection <NUM>). In some embodiments, the second intersection <NUM> may correspond to a last location along the search path <NUM> where the secondary object <NUM> and the search path <NUM> intersect. In this way, the second intersection <NUM> is proximate a second edge of the secondary object, for example. Moreover, although not illustrated in the example method <NUM>, multiple search paths may be defined that extend in the first search direction, and one or more intersections between respective search paths and the secondary object <NUM> may be identified.

At <NUM>, a second search direction for the image slice is defined. The second search direction may be defined with respect to the support article <NUM> and/or with respect to the first search direction. For example, in some embodiments, the second search direction is perpendicular to the first search direction and lies within a rotational plane defined by the rotating gantry <NUM> (e.g., where the second search direction would correspond to the y-direction in <FIG> if the rotational plane corresponded to an x,y plane).

At <NUM>, an intersection 1914a between a second search path 1912a, extending in the second search direction, and the secondary object <NUM> is identified (e.g., using a technique similar to a technique used at <NUM>). In some embodiments, where the second search path 1912a extends in the y-direction, merely a top intersection (e.g., furthest from the support article <NUM>) of the secondary object <NUM> and the second search path 1912a is identified for the second search path 1912a.

In some embodiments, the second search path 1912a is defined to be a search path extending in the second search direction and spatially proximate the first intersection <NUM> and/or the second intersection <NUM> (e.g., to be near an edge of the secondary object <NUM>). In some embodiments, the second search path 1912a is defined to be positioned between the first intersection <NUM> and the secondary intersection <NUM>.

In some embodiments, as illustrated in <FIG>, other search paths <NUM>, extending in the second search direction, may also be defined and intersections <NUM> between the other search paths and the secondary object <NUM> may be also identified.

At <NUM>, a curve <NUM> is fit to the intersection 1914a identified at <NUM> and/or other intersections <NUM> between other search paths <NUM> extending in the second direction and the secondary object <NUM>. The curve <NUM> may be linear or non-linear and lays on a surface of the secondary object <NUM> upon which the object <NUM> rests during the examination. In embodiments where merely one intersection is identified from the search path(s) extending in the second direction, for example, a priori knowledge about the secondary object <NUM> may also be used to fit the curve <NUM> at <NUM>. For example, where the secondary object <NUM> has a substantially planar surface upon which the object <NUM> rests, a y-coordinate of the surface may be determined based upon merely the intersection 1914a.

At <NUM>, voxels (e.g., or pixels) in a region partially defined by the curve <NUM> (e.g., voxels below the curve) are removed, zeroed, etc. to remove the secondary object <NUM> from the image slice <NUM>. In some embodiments, such as illustrated in <FIG>, removing voxels (e.g., or pixels) below the curve <NUM> removes nearly all of the secondary object <NUM> from the image slice <NUM>. In other embodiments, such as illustrated in <FIG>, at least a portion of the voxels (e.g., or pixels) corresponding to the secondary object <NUM> may be above the curve <NUM> and thus not removed, zeroed, etc., at <NUM>. In some embodiments, these remaining voxels (e.g., or pixels) may be removed using a buffer rule which provides that voxels within a specified spatial proximity of the first intersection <NUM> and/or the second intersection <NUM> are removed, for example.

The example method <NUM> may be repeated for a plurality of image slices corresponding to the object <NUM> and/or the secondary object <NUM>. In some embodiments, the method <NUM> may be repeated for every image slice. In some embodiments, the method <NUM> may be repeated for less than all of the image slices and interpolation and/or extrapolation techniques may be applied to estimate which voxels (e.g., or pixels) to remove from respective image slices. Subsequently, when the image slices are combined, the image slices do not represent the secondary object, for example.

Still another embodiment involves a computer-readable medium comprising processor-executable instructions configured to implement one or more of the techniques presented herein. An example computer-readable medium that may be devised in these ways is illustrated in <FIG>, wherein the implementation <NUM> comprises a computer-readable medium <NUM> (e.g., a flash drive, CD-R, DVD-R, application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), a platter of a hard disk drive, etc.), on which is encoded computer-readable data <NUM>. This computer-readable data <NUM> in turn comprises a set of processor-executable instructions <NUM> configured to operate according to one or more of the principles set forth herein. In one such embodiment <NUM>, the processor-executable instructions <NUM> may be configured to perform a method <NUM> when executed via a processing unit, such as at least some of the example method <NUM> of <FIG>, at least some of the example method <NUM> of <FIG>, at least some of the example method <NUM> of <FIG>, and/or at least some of the example method <NUM> of <FIG>. In another such embodiment, the processor-executable instructions <NUM> may be configured to implement a system, such as at least some of the radiation system <NUM> of <FIG>. Many such computer-readable media may be devised by those of ordinary skill in the art that are configured to operate in accordance with one or more of the techniques presented herein. Rather, the specific features and acts described above are disclosed as example forms of implementing at least some of the claims.

Various operations of embodiments are provided herein. The order in which some or all of the operations are described should not be construed to imply that these operations are necessarily order dependent. Alternative ordering will be appreciated given the benefit of this description. Further, it will be understood that not all operations are necessarily present in each embodiment provided herein. Also, it will be understood that not all operations are necessary in some embodiments.

As used in this application, the terms "component," "module," "system", "interface", and the like are generally intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a controller and the controller can be a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers.

Moreover, "exemplary" is used herein to mean serving as an example, instance, illustration, etc., and not necessarily as advantageous. As used in this application, "or" is intended to mean an inclusive "or" rather than an exclusive "or". In addition, "a" and "an" as used in this application are generally be construed to mean "one or more" unless specified otherwise or clear from context to be directed to a singular form. Also, at least one of A and B and/or the like generally means A or B or both A and B. Furthermore, to the extent that "includes", "having", "has", "with", or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term "comprising". The claimed subject matter may be implemented as a method, apparatus, or article of manufacture (e.g., as software, firmware, hardware, or any combination thereof).

Further, unless specified otherwise, "first," "second," and/or the like are not intended to imply a temporal aspect, a spatial aspect, an ordering, etc. Rather, such terms are merely used as identifiers, names, etc. for features, elements, items, etc. (e.g., "a first channel and a second channel" generally correspond to "channel A and channel B" or two different (or two identical) channels or the same channel).

Claim 1:
A computer-implemented method for generating a three-dimensional object image from a three-dimensional image (<NUM>) depicting an object (<NUM>) and a secondary object (<NUM>), comprising:
projecting (<NUM>) the three-dimensional image (<NUM>) along a first axis to generate a first two-dimensional projection image (<NUM>);
defining (<NUM>) a two-dimensional boundary of the object (<NUM>) based upon the first two-dimensional projection image (<NUM>);
reprojecting (<NUM>) the two-dimensional boundary through volume of the three-dimensional image (<NUM>) along the first axis;
extracting (<NUM>) voxels comprised within the reprojected boundary to generate a three-dimensional sub-image;
identifying (<NUM>) boundaries of the object within the sub-image perpendicular to the first axis;
defining (<NUM>) a three-dimensional boundary (<NUM>) of the object (<NUM>) within the three-dimensional image (<NUM>) based upon the two-dimensional boundary and the boundaries within the sub-image;
extracting (<NUM>) voxels comprised within the three-dimensional boundary (<NUM>) to generate the three-dimensional object image depicting the object (<NUM>) but not depicting the secondary object (<NUM>).