We consider theoretically the optical implementations of both discrete and continuous wavelet transforms. Discrete wavelet transforms (DWTs) require sums (or integrals) of the product of the input function with multiple stored functions (wavelets with various shifts and scales). The inverse DWT requires the same, exceptthe given function is replaced by the wavelet coefficients determined by the DWT. We show that we can store and utilize in parallel large banks of wavelets. This should allow "instantaneous" DWT of functions of a single variable and (relatively) fast DWTs of two-dimensional functions. Of course, the same applies to the inverse DWTs. A true continuous wavelet transform (CWT) must be continuous in both shift and scale. By means of a continuous anamorphic transformation of a one-dimensional signal and a suitable choice of kernel or filter, we can allow a normal two-dimensional optical Fourier transform image processor to perform a CWT.