Adding to the discussion of reducing the data to point sets to corners, you would need edges or another method to do that.
There is an edge detector which uses the principles of fourier transforms and monogenic filters operating in the frequency domain, transformed to the spatial domain.
The work of Peter Kovesi on phase congruency is available
http://www.peterkovesi.com/matlabfns/PhaseCongruency/phasecongmono.m
The code produces a phase angle image which can be used with a thinned phase congruency image to find edges.
If you set the parameters to allow more "noise" the smaller textures are picked up too.
NOTE: I'm trying to consolidate information I added in the next comments and what got added as a separate answer, that should both be part of this
so there will be some redundancy with those:
if you're confused about FFTs, can read about them as 1 D signals to understand spatial domain and frequency domain. Then you might be interested in topics such as phase congruency which attempt to look at the frequency of signals to design frequency domain filters which operate on the spatial domain. With respect to your texture question, I think reducing it to keypoints such as corners reduces the information to significant spatial information. I recently used phase congruency to find "noise" in my image of a building, then made a representative patch of the roof texture out of that, then made a frequency domain filter from that and applied it to the spatial domain image. Application of color and maybe intensity filters in the spatial domain then led to a decent finding of the roof texture throughout the image....so FFT of sparse significant points is probably more helpful to you in answering your questing.