1. A method, comprising: executing, on a client device in communication with a remoting server, an image enhancement application, the image enhancement application configured to perform image enhancement techniques including: predicting a frame based on previously received frames; interpolating a frame based on at least two buffered frames; and reducing appearance of artifacts in a received frame; the image enhancement application further configured to: monitor a sequence of frame updates for a display screen received at the client device from the remoting server; observe the available network bandwidth, frame refresh rate, and image quality corresponding to the received sequence of frame updates; and select one or more image enhancement techniques to apply based on the observed network bandwidth, frame refresh rate, and/or image quality being sufficiently low.