The present disclosure relates, but is not limited, to methods and systems for denoising and/or zooming one or more inspection images, or at least a part of at least one inspection image.
It may be difficult for a user to detect hidden objects, such as weapons or dangerous material, in inspection images, particularly when the images are corrupted by noise. This is particularly true when the inspection images are generated by an inspection system with small radiation (such as x-ray) doses, as the SNR (Signal-to-Noise Ratio) may be small.
Zooming in the corrupted images usually does not help the user in detecting the hidden objects, because the noise corrupting the images is also enlarged by the zooming. Aspects of the present invention address some of the above issues.
Aspects and embodiments of the invention are set out in the appended claims. These and other aspects and embodiments of the invention are also described herein.
Embodiments of the disclosure will now be described, by way of example only, with reference to the accompanying drawings, in which:
In some examples, the inspection images may be generated by an inspection system 1 configured to inspect one or more containers which comprise a load. An example of the inspection system will be described in greater detail below with reference to
As described in greater detail below, the inspection system 1 may be configured to inspect the container by transmission, through the container, of inspection radiation (e.g. x-ray) and may be configured to detect the transmitted radiation on an inspection radiation receiver comprising a plurality of detectors. In some examples, the inspection radiation may be transmitted in successive pulses of radiation. As will be apparent in the present disclosure, the inspection radiation may have an angular divergence from an inspection radiation source to the inspection radiation receiver.
The inspection system 1 may have certain instabilities, e.g. the inspection radiation source may not be stable over time and may experience an evolution in the intensity of the inspection radiation during the inspection and/or in the spectral properties of the inspection radiation.
The noise may be important for inspection carried out with small doses of radiation (such as from 2 mGy to 60 mGy, typically 20 mGy for example). An example of an inspection image 10 having a plurality of pixels 13 is illustrated by
A graph of a standard deviation (i.e. the square root of a variance) of the noise of
The inspection image 10 generated by the inspection system 1 is thus fundamentally different compared to a natural image (such as an image captured by known CCD and/or CMOS cameras), as the natural image may be corrupted with a noise having a constant variance in the natural image.
The method illustrated by
In some examples, the variance-stabilizing transformation may be based on a descriptor associated with the angular divergence of the inspection radiation and the Poisson-Gaussian noise. In some examples the descriptor may be based on a predetermined set of parameters.
In the example of
The memory 52 is configured to store data, for example for use by the processor 51. The memory 52 may comprise a first database server 521.
In
In some examples, the denoiser and/or zoom 50 of
In the example illustrated by
The equipment 1 illustrated by
The equipment 1 of
The inspection radiation of
The source 2 shown in
The detectors 8 are positioned in the extension of the part 22 of the radiation. They delimit, with the reference block 6, an intermediate space 36 for the passage of the container 110 to be inspected.
With reference to
Each detector 8 of
Because of the characteristics of the system 1 (for example the characteristics of the source 2), the inspection image 10 of
In some examples, the value z(i) of the pixel 13(i) of the inspection image 10 associated with the detector 8(i) of the receiver can be defined as:
z(i)=α(i)·P(x(i))+N(μ(i),σ(i)2) (E1)
At S2 illustrated by
In some examples, the descriptor 700 may be associated with each pixel 13 of the plurality of pixels of the inspection image 10. In such an example, the descriptor 700 may take into account the Poisson-Gaussian noise of the inspection image 10 generated by the inspection system 1, the variance of which is non-homogeneous in the plurality of pixels, contrary to the variance in the noise corrupting natural images (such as images captured by known CCD and/or CMOS cameras). In such an example, the descriptor 700 may take into account at least one or more of the following instabilities of the inspection system:
The line array 81 of detectors 8(i) of
In some examples, the method illustrated by
In some examples, the Anscombe transformation f may be defined by, for a value z(i) of a pixel of the inspection image associated with a detector 8(i) of the receiver:
An example of an Anscombe transformation of S2 is described in document “Optimal inversion of the generalized Anscombe transformation for Poisson-Gaussian noise”, M. Mäkitalo and A. Foi, IEEE Trans. Image Process., vol. 22, no. 1, pp. 91-103, January 2013, the disclosure and teachings of which are hereby incorporated in their entirety by reference.
After the transformation has been applied, the transformed image is corrupted by an additive Gaussian noise.
In some examples, the method of
Below are described some non-limiting example methods to determine the parameters (α(i),μ(i),σ(i)) at S0 of the method illustrated at
In a first example illustrated with reference to
In some examples, a predetermined set of three parameters (α1(i),μ1(i),σ1(i)) of the descriptor may be determined, for the given inspection system, based on the series of calibration images generated by the given system. In some examples, the determination of the predetermined set of three parameters (α1(i),μ1(i),σ1(i)) of the descriptor may comprise:
The determination is explained below in greater detail.
Like the inspection images 10 generated by the given system 1, the calibration inspection image 80 shown in
During the calibration step, the standard deviation σ(i) and the mean μ(i) of the noise are calculated for each of the pixels 130(i) illustrated in
In the example illustrated in
In some examples, the calculating and the representing may be performed for a series of calibration images 80 (for example a few tens, a hundred or a few hundreds of calibration images 80, depending on available calibration images and/or on the desired precision), the calibration images 80 being generated by the given system 1, in order to obtain the cloud 91 of points of
In some examples, the cloud of points 91 may be approximated first by a function 92 (using a fitting algorithm). In some examples, the function 92 may be approximated by a straight line 93 (using a fitting algorithm), such as:
In some examples the cloud may be approximated directly by the straight line 93, i.e. without the use of the approximation by the function 92.
It should be understood that once the three parameters (α1(i),μ1(i),σ1 (i)) are determined, Equation (E1) above may be applied based on the parameters (α1(i),μ1(i),σ1(i)) to the inspection image 10 (e.g. of
It should be understood that in the above example, the respective parameters (α1(i),μ1(i),σ1(i)) are constant over n, i.e. all the lines of the descriptor 700 of
Below is described a second non-limiting example method to determine the parameters (α(i),μ(i),σ(i)) at S0 of the method illustrated at
In the second example illustrated in
In some examples, the reference may take into account at least one of
As shown in (E1), σ(i) may be associated with the Gaussian noise component of the Poisson-Gaussian noise corrupting the inspection image. However, because of the characteristics of the system (including the source), a conventional definition of the standard deviation σ(i) cannot be used (e.g. it would create strip artifacts in low signal parts of the transformed image). In some examples, σ(i) may be determined by:
with σoff(i) determined by a time standard deviation of an offset image acquired in a calibration image generated by the system, and
In some examples, the offset image may comprise e.g. an “open flame” image, i.e. an image generated by the inspection radiation when the container 110 is not present in the intermediate space 36 of
The zone 113 illustrated by
Below is described an example method for obtaining σoff(i).
In some examples, an offset Offset(i) for the detector 8(i) may be determined by:
with Ioffset(i,j) being a value of a pixel signal of the zone 113 for detector 8(i), for column j of the zone 113.
In some examples, a variance VarOffset(i) of Offset(i) may be determined by:
In some examples, the standard deviation σoff(i) may be determined by:
σoff(i)=√{square root over (VarOffset(i))} (E6).
Below is described an example method for obtaining Gain(i).
Gain(i) may be determined by the time mean of an offset-corrected gain image generated by the system. In some examples, Gain(i) may be determined by:
with Igain(i,j) such that:
Igain(i,j)=Ioffset(i,j)−Offset(i) (E8).
Below is described an example method for obtaining μ(i).
μ(i) may be associated with the Gaussian noise component of the Poisson-Gaussian noise, and, after the transformation has been applied, the transformed image is corrupted by an additive Gaussian noise, and in some examples, μ(i) may be assumed to be null:
μ(i)=0 (E9).
(E1) shown above shows that α(i) may be associated with the Poisson noise component of the Poisson-Gaussian noise.
In some examples, α(i) may be associated with an approximation of an inverse of a number of photons emitted by the source and received by the detector 8(i). In some examples, α(i) may be determined by:
with SNR(i), a Signal-to-Noise ratio in the pixel (i) associated with the detector 8(i) of the receiver.
In the example of
with a, b, c and d being determined by the Lorentz model of the angular signature of the angular divergence of the source, as represented in
In some examples, the Lorentz model illustrated by
In some examples, rLf(i) may be determined from rL(i), which is the distance from the source to the pixel (i) (e.g. in mm), as filtered by a moving average with an adjustable radius R, typically between 16 and 32 pixels, in order to remove strips artifacts. Examples of curves for rLf(i) and rL(i) are illustrated by
From Equations (E10) and (E11), α(i) may thus be determined by:
An example of determination of the Lorentz model is described in US 2014/341342, the disclosure and teachings of which are hereby incorporated in their entirety by reference.
It should be understood that once the three parameters (α(i),μ(i),σ(i)) are determined, for 1≤i≤n, Equation (E1) above may be applied to an inspection image 10 generated by the given system 1, such that.
After the transformation has been applied to the inspection image 10, the transformed image is corrupted by an additive Gaussian noise. The method illustrated in
D(i)=D(f(z(i)).
In some examples, the denoising filter applied to the transformed image comprises at least a Gaussian-based denoising filter. In some examples, the Gaussian-based denoising filter may use Non-Local Means filtering, such as Block Matching 3-Dimensions (BM3D) filtering, and/or Bilateral filtering, and/or Guided filtering, and/or Anisotropic filtering, and/or Gaussian smoothing.
An example of denoising filter is Block Matching 3-Dimensions, which is described in document “Image denoising by sparse 3D transform domain collaborative filtering”, by Dabov and Foi, IEEE Trans. Image Process., vol. 16, no. 8, pp. 2080-2095, August 2007, the disclosure and teachings of which are hereby incorporated in their entirety by reference.
In some examples, in the Block Matching 3-Dimensions (BM3D) filtering, the input noisy transformed image may be processed by successively extracting reference blocks from the transformed image and, for each reference block:
In some examples, some pixels may get multiple estimates from different groups, because after processing all the reference blocks, the obtained block estimates may overlap. These estimates may be aggregated to form an estimate of the whole image, for example by giving a higher weight to more reliable estimates.
The method illustrated in
In some examples, the inverse of the transform may use an unbiased inverse of the Anscombe transformation of S2.
In some examples, a value Id(i) of the pixel (i) of the denoised image associated with the detector 8(i) of the receiver, after the inverse of the variance-stabilizing transformation has been applied, is determined by:
with D(i) the value of the pixel (i) of the denoised image associated with the detector 8(i) of the receiver, after the denoising filter has been applied to the transformed image.
An example of an unbiased inverse of the Anscombe transformation of S2 is described in the document “Optimal inversion of the generalized Anscombe transformation for Poisson-Gaussian noise”, by M. Mäkitalo and A. Foi, IEEE Trans. Image Process., vol. 22, no. 1, pp. 91-103, January 2013, the disclosure and teachings of which are hereby incorporated in their entirety by reference.
The method illustrated in
As described in further detail below, in some examples zooming may comprise applying bilinear or bicubic interpolations, and/or an upsampling using a deconvolution-based technique. In some examples, zooming may further comprise applying a feedback loop after the upsampling using the deconvolution-based technique has been applied. In some examples, applying the feedback may comprise:
As shown in
As shown in
In some examples, the zone 114 of interest may be selected, e.g. based on an input associated with the zone 114 of interest. The input associated with the zone 114 of interest may be received by the denoiser and/or zoom 50 illustrated in
The deconvolution-based technique illustrated by
The example of
The applying, at 53, of the feedback illustrated in
The upsampled zone 114′ with the pixel substitution may be aggregated with the upsampled zone 114.
An example of deconvolution-based technique of S5 is described in the document “Fast Image/Video Upsampling”, by Q. Shan et al., ACM Trans. on Graphics, vol. 27, no. 5, Article 153, December 2008, the disclosure and teachings of which are hereby incorporated in their entirety by reference.
Modifications and Variations
The radiation source is configured to cause inspection of cargo through the material (usually steel) of walls of the container, e.g. for detection and/or identification of the cargo. Alternatively or additionally, the inspection radiation may be transmitted through the load (the material of the load being thus transparent to the radiation), while the radiation may, at least partly, be reflected by the load (the material and/or composition of the load located being thus only partly transparent to the radiation, and partly reflective to the radiation—in that case, detectors may be placed to receive the radiation reflected by the load).
As explained in greater detail below, in some examples, the inspection system 1 may be mobile and may be transported from a location to another location (the system 1 may comprise an automotive vehicle). Alternatively or additionally, the inspection system 1 may be static with respect to the ground and cannot be displaced.
The electrons are generally accelerated under a voltage comprised between 100 keV and 15 MeV. The dose of the radiation may be comprised between 2 mGy (Gray) and 20 Gy.
In mobile inspection systems, the power of the X-ray source 2 may be e.g., between 100 keV and 9.0 MeV, typically e.g., 300 keV, 2 MeV, 3.5 MeV, 4 MeV, or 6 MeV, for a steel penetration capacity e.g., between 40 mm to 400 mm, typically e.g., 300 mm (12 in). In static inspection systems, the dose may be e.g., between 20 mGy and 120 mGy.
In static inspection systems, the power of the X-ray source 2 may be e.g., between 4 MeV and 10 MeV, typically e.g., 9 MeV, for a steel penetration capacity e.g., between 300 mm to 450 mm, typically e.g., 410 mm (16.1 in). In static inspection systems, the dose may be 17 Gy.
In some examples, the x-ray source 2 may emit successive x-ray pulses. The pulses may be emitted at a given frequency, comprised between 50 Hz and 1000 Hz, for example approximately 200 Hz.
According to some examples, the detectors 8 may be mounted on a gantry 38, as shown in
In static inspection systems, the gantry 38 may comprise a static structure.
It should be understood that the inspection radiation source may comprise sources of other radiation, such as, as non-limiting examples, sources of ionizing radiation, for example gamma rays or neutrons. The inspection radiation source may also comprise sources which are not adapted to be activated by a power supply, such as radioactive sources, such as using Co60 or Cs137.
In some examples, the inspection system may comprise other types of detectors, such as optional gamma and/or neutrons detectors, e.g., adapted to detect the presence of radioactive gamma and/or neutrons emitting materials within the load, e.g., simultaneously to the X-ray inspection.
In the context of the present disclosure, the container 110 may be any type of container, such as a holder, a vessel, or a box, etc. The container 110 may thus be, as non-limiting examples, a trailer and/or a palette (for example a palette of European standard, of US standard or of any other standard) and/or a train wagon and/or a tank and/or a boot of a vehicle such as a truck, a van and/or a car and/or a train, and/or the container 110 may be a “shipping container” (such as a tank or an ISO container or a non-ISO container or a Unit Load Device (ULD) container). It is thus appreciated that the container 110 may be any type of container, and thus may be a suitcase in some examples.
The system 1 is configured to, in the inspection mode, cause inspection of the load, in totality (i.e. the whole load is inspected) or partially (i.e. only a chosen part of the container is inspected, e.g., typically, when inspecting a vehicle, a cabin of the vehicle may not be inspected, whereas a rear part of the vehicle is inspected).
In order to inspect the load, the system 1 may comprise a motion generation device so that the system 1 may be displaced, the load being static with respect to the ground (this mode is sometimes referred to as a ‘scanning’ mode). Alternatively or additionally, the motion generation device may cause the load to be displaced, the system 1 being static with respect to the ground. In some embodiments, the throughput, i.e. the number of load inspected by unit of time, may be of 20 to 30 images/hour.
Alternatively or additionally, in a ‘pass-through’ mode the system 1 does not comprise a motion generation device and the load 11 moves with respect to the system 1, the system 1 being static with respect to the ground. In embodiments, the throughput in the pass-through mode may be higher than the throughput in the scanning mode, and may be for example of 50 to 200 images/hour, or even of 50 to a few thousands images/hour in the case of an inspection of a passing train (for example a throughput of more than 1000 images/hour).
Other variations and modifications of the system or the analyser will be apparent to the skilled in the art in the context of the present disclosure, and various features described above may have advantages with or without other features described above.
For example, the denoiser and/or zoom 50 may, at least partly, form a part of the inspection system 1. For example, the server 61 may, at least partly, form a part of the denoiser and/or zoom 50.
As one possibility, there is provided a computer program, computer program product, or computer readable medium, comprising computer program instructions to cause a programmable computer to carry out any one or more of the methods described herein. In example implementations, at least some portions of the activities related to the denoiser and/or zoom 50 and/or the links 60 and/or 70 herein may be implemented in software. It is appreciated that software components of the present disclosure may, if desired, be implemented in ROM (read only memory) form. The software components may, generally, be implemented in hardware, if desired, using conventional techniques. In some examples, components of the denoiser and/or zoom 50 and/or the links 60 and/or 70 may use specialized applications and hardware.
As will be apparent to the skilled in the art, the server 61 should not be understood as a single entity, but rather refers to a physical and/or virtual device comprising at least a processor and a memory, the memory may be comprised in one or more servers which can be located in a single location or can be remote from each other to form a distributed network (such as “server farms”, e.g., using wired or wireless technology).
In some examples, one or more memory elements (e.g., the database and/or the memory of the processor) can store data used for the operations described herein. This includes the memory element being able to store software, logic, code, or processor instructions that are executed to carry out the activities described in the disclosure.
A processor can execute any type of instructions associated with the data to achieve the operations detailed herein in the disclosure. In one example, the processor could transform an element or an article (e.g., data) from one state or thing to another state or thing. In another example, the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable read only memory (EEPROM)), an ASIC that includes digital logic, software, code, electronic instructions, flash memory, optical disks, CD-ROMs, DVD ROMs, magnetic or optical cards, other types of machine-readable mediums suitable for storing electronic instructions, or any suitable combination thereof.
The links 60 and/or 70 may form only one network.
The data received by the denoiser and/or zoom 50 may be typically received over a range of possible communications networks, at least such as: a satellite based communications network; a cable based communications network; a telephony based communications network; a mobile-telephony based communications network; an Internet Protocol (IP) communications network; and/or a computer based communications network.
In some examples, the denoiser and/or zoom 50 and/or the links 60 and/or 70 may comprise one or more networks. Networks may be provisioned in any form including, but not limited to, local area networks (LANs), wireless local area networks (WLANs), virtual local area networks (VLANs), metropolitan area networks (MANs), wide area networks (WANs), virtual private networks (VPNs), Intranet, Extranet, any other appropriate architecture or system, or any combination thereof that facilitates communications in a network.
The above embodiments are to be understood as illustrative examples, and further embodiments are envisaged. It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with one or more features of any other of the embodiments, or any combination of any other of the embodiments. Furthermore, equivalents and modifications not described above may also be employed without departing from the scope of the invention, which is defined in the accompanying claims.
Number | Date | Country | Kind |
---|---|---|---|
1517014.5 | Sep 2015 | GB | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/GB2016/052977 | 9/23/2016 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2017/051194 | 3/30/2017 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
6269142 | Smith | Jul 2001 | B1 |
7187794 | Liang et al. | Mar 2007 | B2 |
20080002810 | Slaughter | Jan 2008 | A1 |
20120019512 | Yang | Jan 2012 | A1 |
20140177932 | Milne | Jun 2014 | A1 |
20140211910 | Subramanian et al. | Jul 2014 | A1 |
20150060686 | DeVolpi | Mar 2015 | A1 |
20170242148 | Yu | Aug 2017 | A1 |
Number | Date | Country |
---|---|---|
2169592 | Mar 2010 | EP |
2533197 | Dec 2012 | EP |
Entry |
---|
Zhang, B. et al., “Multiscale Variance-Stabilizing Transform for Mixed-Poisson-Gaussian Processes and its Applications in Bioimaging”, IEEE International Conference on Image Processing, 2007, vol. 6, pp. 233-236. |
Search Report dated Feb. 18, 2016 for GB Application No. GB1517014.5. |
Makitalo, M. et al. “Optimal Inversion of the Generalized Anscombe Transformation for Poisson-Gaussian Noise”, IEEE Transactions on Image Processing, vol. 22, No. 1, Jan. 1, 2013, pp. 91-103. |
Makitalo, Markku et al., “Poisson-gaussian denoising using the exact unbiased inverse of the generalized anscombe transformation”, 2012 IEEE International Conference on Acoustics, Speech and Signal Processing, Mar. 25, 2012, pp. 1081-1084. |
International Search Report dated Dec. 19, 2016 for PCT/GB2016/052977. |
Number | Date | Country | |
---|---|---|---|
20180260937 A1 | Sep 2018 | US |