1. A method for generating texture for a pixel image, comprising: partitioning the pixel image into a plurality of blocks in a predetermined order, and for each block further comprising the steps of: searching a set of texture blocks for a next block that best matches an adjacent previous block in a region where the previous and next block overlap; finding a least cost path in the region; and inserting the next block adjacent to the previous block according to the least cost path.