07-04-2017, 04:46 PM
The objective is to segment the dog from the bathroom floor. Segmentation is visually obvious due to the difference in texture between the regular, periodic floor pattern of the bathroom, and the regular, smooth texture of the dog's skin.
Since experimentation, Gabor filters are known to be a reasonable model of single cells in the mammalian vision system. Because of this, Gabor filters are thought to be a good model of how humans distinguish texture, and are therefore a useful model to use when designing algorithms to recognize texture. This example uses the basic approach described in (A. K. Jain and F. Farrokhnia, "Segregation of Non-Supervised Texture Using Gabor Filters", 1991) to perform texture segmentation.
The first function called "gaborFilterBank.m" generates a custom sized Gabor filter bank. Creates an array of cells u by v, whose elements are m by n matrices; Each matrix being a Gabor 2-D filter. The second function called "gaborFeatures.m" extracts the Gabor characteristics of an input image. Creates a column vector, which consists of the Gabor characteristics of the input image. Characteristic vectors are normalized to mean zero and unit variance. At the end of each file there is a Show section that draws the filters and shows the filtered images. These are for illustrative purposes only, and you can comment them as you wish.
Since experimentation, Gabor filters are known to be a reasonable model of single cells in the mammalian vision system. Because of this, Gabor filters are thought to be a good model of how humans distinguish texture, and are therefore a useful model to use when designing algorithms to recognize texture. This example uses the basic approach described in (A. K. Jain and F. Farrokhnia, "Segregation of Non-Supervised Texture Using Gabor Filters", 1991) to perform texture segmentation.
The first function called "gaborFilterBank.m" generates a custom sized Gabor filter bank. Creates an array of cells u by v, whose elements are m by n matrices; Each matrix being a Gabor 2-D filter. The second function called "gaborFeatures.m" extracts the Gabor characteristics of an input image. Creates a column vector, which consists of the Gabor characteristics of the input image. Characteristic vectors are normalized to mean zero and unit variance. At the end of each file there is a Show section that draws the filters and shows the filtered images. These are for illustrative purposes only, and you can comment them as you wish.