A multi-stage screening system for screening a container, said multi-stage screening system comprising: a pre-screening stage comprising a transmission X-ray device configured to scan the container, said pre-screening stage configured to generate constraint data associated with the contents of the container, the constraint data including transparency constraint data in the form of a transparency determination of the container as a result of the scan of the container by said transmission X-ray device; a screening stage comprising an X-ray diffraction imaging, XDI, device configured to scan the container, said screening stage configured to generate image data associated with the contents of the container; and a communication system, comprising a processing device, coupled to said pre-screening stage and said screening stage, said communication system configured to receive and transmit the constraint data and reconstruct at least one image of the container at least partially as a function of the constraint data and the image data, wherein said multi-stage screening system is characterized in that said communication system is further configured to iteratively reconstruct, including using the constraint data, the at least one image of the container by: providing a 0 th order approximation of the contents of the container based on the image data generated by the XDI device; predicting, using forward modeling, signals of the XDI device based on the 0 th order approximation; and correcting, using back-projection, the 0 th order approximation using a difference of actual signals of the XDI device and the predicted signals of the XDI device. a pre-screening stage comprising a transmission X-ray device configured to scan the container, said pre-screening stage configured to generate constraint data associated with the contents of the container, the constraint data including transparency constraint data in the form of a transparency determination of the container as a result of the scan of the container by said transmission X-ray device; a screening stage comprising an X-ray diffraction imaging, XDI, device configured to scan the container, said screening stage configured to generate image data associated with the contents of the container; and a communication system, comprising a processing device, coupled to said pre-screening stage and said screening stage, said communication system configured to receive and transmit the constraint data and reconstruct at least one image of the container at least partially as a function of the constraint data and the image data, wherein said multi-stage screening system is characterized in that said communication system is further configured to iteratively reconstruct, including using the constraint data, the at least one image of the container by: providing a 0 th order approximation of the contents of the container based on the image data generated by the XDI device; predicting, using forward modeling, signals of the XDI device based on the 0 th order approximation; and correcting, using back-projection, the 0 th order approximation using a difference of actual signals of the XDI device and the predicted signals of the XDI device.