Why do people always try to monitor memory usage if they've no idea, neither abstract nor practical, how memory gets managed?
If something makes one memory allocation chances are probably around 90+% that it will do another allocation at one point and thus if you tell the OS to allocate some memory, it will provide you with more memory than actually needed, while still being able to take it away again, if memory is running out.
GetProcessMemoryInfo() probably provides about the same information as the task manager and thus is not a good way to track memory usage.
Also as Jesper mentioned, image files on the harddisk are usually smaller, since you use a compression algorithm, but when loaded in memory every single pixel is accounted for.