A method for enhancing visual data when communicating visual data over a network from a first node to a second node. The method at the first node comprising the steps of: reducing the quality of one or more sections of higher-quality visual data to one or more sections of lower-quality visual data; developing at least one hierarchical algorithm operable to increase the quality of the one or more sections of lower quality visual data using the one or more sections of higher-quality visual data to enhance the developed at least one hierarchical algorithm. The developed at least one hierarchical algorithm corresponds to the one or more sections of lower quality visual data; transmitting the one or more sections of lower-quality visual data to the second node. The at least one of the developed at least one hierarchical algorithms that corresponds to the one or more sections of lower-quality visual data transmitted to the second node are communicated to the second node. The second node is able to substantially rep