For direct conversion, you demodulate down to zero and use two ADCs, which means the system will have separate DC offsets and gain factors for the I and Q channels. For demodulation, these need to be compensated for (in a superheterodyne system, this problem doesn't exist, because there is only one ADC, and the DC offset of the system is outside the analyzed signal).
The DC offset can be determined by a low-pass-filter -- simple averaging over some time is usually enough, and works for everything that isn't a CW signal near the LO frequency, just subtract it, and the I/Q constellation is properly centered. That is usually a fairly large error, so the compensation is required in order to get a usable baseband signal.
There are other imperfections in signal reconstruction as well, the most obvious ones in the constellation diagram are
- gain difference between I and Q channels (stretching in I or Q direction)
- phase offset between I and Q channels not exactly 90 degrees (shearing)
The phase offset seems to be ignored in that application, because it's usually small and doesn't really matter for GPS reception.