  Snapshot compressive imaging (SCI) systems aim to capture high-dimensional
($\ge3$D) images in a single shot using 2D detectors. SCI devices include two
main parts: a hardware encoder and a software decoder. The hardware encoder
typically consists of an (optical) imaging system designed to capture
{compressed measurements}. The software decoder on the other hand refers to a
reconstruction algorithm that retrieves the desired high-dimensional signal
from those measurements. In this paper, using deep unfolding ideas, we propose
an SCI recovery algorithm, namely GAP-net, which unfolds the generalized
alternating projection (GAP) algorithm. At each stage, GAP-net passes its
current estimate of the desired signal through a trained convolutional neural
network (CNN). The CNN operates as a denoiser that projects the estimate back
to the desired signal space. For the GAP-net that employs trained
auto-encoder-based denoisers, we prove a probabilistic global convergence
result. Finally, we investigate the performance of GAP-net in solving video SCI
and spectral SCI problems. In both cases, GAP-net demonstrates competitive
performance on both synthetic and real data. In addition to having high
accuracy and high speed, we show that GAP-net is flexible with respect to
signal modulation implying that a trained GAP-net decoder can be applied in
different systems. Our code is at https://github.com/mengziyi64/ADMM-net.
