The recognition of patterns independently from their size is a fundamental requirement in many applications, such as in computational or robotic vision. In particular the need of scale-invariant recognition exists when, according to a simplified experimental scheme, the patterns to be recognized are 2-D representations of objects whose distance from the acquisition system is unknown. Several scale-independent recognition systems have already been developed and presented in the literature: some of them are based on iconic, i.e. template matching, techniques, some on syntactic procedures. Quite often, however, the images to be recognized must first go through some kind of preprocessing, as for noise cleaning or edge reinforcement purposes. In such cases one has to operate so that the global processing is still scale-invariant. This requires that the preprocessing must be itself scale-invariant, in the sense that scale changes of the input image are simply translated into scale changes of the output, with no shape distortion taking place. This paper shows that no classical linear shift-invariant filter guarantees such a property and presents the most general class of linear scale-invariant filters. Several interesting subclasses of such (shift-variant) filters are discussed as well as the related implementation problems.