Visual prototyping of materials is relevant for many computer graphics applications. A large amount of modelling flexibility can be obtained by directly rendering micro-geometry. While this is possible in principle, it is usually computationally expensive. Recently, bidirectional texture functions (BTFs) have become popular for efficient photorealistic rendering of surfaces. We propose an efficient system for the computation of synthetic BTFs using Monte Carlo path tracing of micro-geometry. We observe that BTFs usually consist of many similar apparent bidirectional reflectance distribution functions. By exploiting structural similarity we can reduce rendering times by one order of magnitude. This is done in a process we call non-local image reconstruction, which has been inspired by non-local means filtering. Our results indicate that synthesizing BTFs is highly practical and may currently only take a few minutes for BTFs with 70 × 70 viewing and lighting directions and 128 × 128 pixels.