Direction Selective (DS) filter models


  1. X-T tilted linear filter

    One of the simplest models that responds selectively to the direction of visual motion is a linear filter (e.g., a Gabor function) that is tilted in space-time. An example of this is DS_Gabor_One on the iModel website. Visit the home page for this model and observe the cross-sections of the linear filter plotted in the X-T planes (time vs. horizontal space) and X-Y planes (vertical vs. horizontal space).

    Open the model parameter file (use the link in the Summary paragraph on the model homepage) and look at the parameters that define the oriented linear filter, listed in the <filter> object. The Gabor filter, a Gaussian times a sinusoid, is defined in space (X-Y) by the the standard deviation of the 2D Gaussian (ssd = 0.18 deg) and the spatial frequency (sf = 1.25 cyc/deg) and direction of motion (direction = 0 deg, meaning rightward motion of a vertically oriented grating) of the sinusoid. The temporal extent of the filter is defined by the standard deviation of a 1D Gaussian (tsd = 0.015 s), and the tilt in the X-T plane is defined jointly by the SF and temporal frequency (tf = 10.0 cyc/deg) of the underlying grating. The tilt of the grating in space-time can be thought of as a velocity (deg/s) = TF/SF of the filter, here 8 deg/s (i.e., 10 Hz / 1.25 cyc/deg).

    To examine the responses of the linear filter to sinusoidal gratings drifting in different directions, run the following simulation:

    • Model: DS_Gabor_One
    • Response: s_filter_raw.rsp
    • Stimulus: sine_dir
    • tn: 512

    When the simulation finishes, follow the "Results available" link and click the button to "View zz.nd". The data file contains two recorded data channels listed under the "Channel 0:" combo box (upper left). Change the channel selection from "unit0" to "raw" to view the raw output of the linear filter. In the "Variable Parmeters" panel (center top), select the contrast value of "1" to exclude the background condition where contrast was 0. (For further explanation, click the "Grouping Help" button).

    Now, the display plots the filter output as a function of direction. You can click within the plot window (where the traces appear) and then use the up/down arrow keys to successively highlight the responses to different directions of motion. You should notice the following:

    • All responses look like sinusoids that have 8 cycles. Why is this?

    • All plots have roughly the same mean response value. Thus, in terms of the mean response over time, the filter has no preferred direction of motion.

    • However, the response modulation is largest for the grating drifting in the direction indicated as 0 deg (rightward motion). Thus, in terms of response variation, the filter prefers motion to the right.

    • To compute a tuning curve of the mean response (known as the DC response) and the response modulation (known as the F1 response), change the Analysis combo box from "Plot" to "Tuning_Curve". These direction tuning curves show that the DC response depends little on direction, whereas the F1 response is highly direction selective.

    The model (DS_Gabor_One) generates a Poisson spike train from the raw filter output using the parameters given in the <spike_gen> object in the model file. The raw signal is scaled and half-wave recitified (all negative values set to zero), and the result is interpreted as the time-varying firing rate of a Poisson spiking process. To plot the tuning curve for spikes, change the channel to "unit0" and the analysis to "Tuning_Curve". These curves are rather noisy, because they are computed from single trials of noisy (Poisson) spike trains, but they are sufficient to show that both the DC and F1 responses are direction selective.

    In summary, an oriented space-time linear filter can be designed that modulates most strongly to motion in a particular direction, and a threshold nonlinearity can be used to transform that modulation into a mean response that is direction selective.

  2. The motion energy model

    Direction selective cells in V1 are often classified along the simple-complex axis. The response of simple DS cells may be approximated by the DS_Simp_One model described above. However, complex DS cells may show little or no response modulation at the fundamental frequency (F1) in response to a drifting grating stimulus. To account for this, Adelson and Bergen (1985) proposed the motion energy (ME) model, which uses two oriented linear filters in quadrature phase (90 deg phase shift) and a squaring nonlinearity. The MEO_Gabor on iModel implements an ME model with Gabor filters.

    Go to the home page for the MEO_Gabor model to view the linear filters and the model parameters. The block diagram (upper right, model home page) shows that this ME model has four linear filters, and in fact consists of two motion energy subunits connected in an opponent circuit. The outputs of the two filters sensing motion to the right, fpe (filter preferred even) and fpo (filter preferred odd) are squared and added to form the preferred motion energy (mep) signal. Likewise, the anti-preferred even and odd filters, fae and fao, drive the anti-preferred motion energy signal, mea. The final opponent ME signal, meopp is formed by the difference of mep and mea. (Note, "even" and "odd" refer to the phases of the filters, which are those of a cosine and sine wave, respectively, thus 90 deg apart).

    The parameter file of MEO_Gabor is very similar to that of DS_Gabor_One (above) in terms of the filter parameter values. The 4-branch architecture here (vs. 1-branch above) is determined by the mod_type parameter value ("me_gabor_01"). Here again, SF and TF together determine the X-T tilt of the linear filters. Spikes are generated by scaling and truncating the meopp signal.

    To examine the responses of different stages of the model to the sinewave direction tuning stimuli, run the following simulation:

    • Model: MEO_Gabor
    • Response: s_ME_raw
    • Stimulus: sine_dir
    • tn: 512

    When the results are ready, go to the results page and click "View zz.nd" to view the responses in the nData Viewer. Use the Variable Parameter controls to exclude the spontaneous trial (i.e., select "1" for "contrast").

    Athough we only collected one repeat for each stimulus, it should be apparent that there is less F1 modulation in the rasters than for the DS_Gabor_One model. Plot the tuning curve of the spikes and observe that the F1 curve is considerably lower in amplitude than the DC response. How does this compare to the spike-based tuning curves of the DS_Gabor_One model above?

    Next, plot the responses of the fpo filter (set Channel 0 to fpo). These should be qualitatively very similar to the output of the DS_Gabor_One model (above). Select the "Tuning_Curve" analysis, and observe how this compares to DS_Gabor_One.

    Now plot the tuning curve for motion energy in the preferred direction (mep channel). The DC response is greater than F1. Switch the analysis back to "Plot", and observe how this ME signal differs from that coming from the fpe and fpo signals from which it derives.

    While this response would cause the neuron to be classified as a complex cell, there is clearly a lot of response modulation at the F1 frequency. Why does this model fall short of the idea complex cell that shows very little F1 modulation? Does the opponent output (the meopp signal) look any less modulated?

    Try increasing the SD of the temporal Gaussian, which requires typing a string like "filter/tsd 0.035" into the box that appears on the Custom Parameters page. I.e, run with the following settings:

    • Model: MEO_Gabor
    • Response: s_ME_raw
    • Stimulus: sine_dir
    • tn: 512
    • Custom params: filter/tsd 0.035

    You should be able to observe that there is now significantly less F1 modulation in the ME responses, mep and mea. This change will also have an effect on the TF bandwidth of the model unit. What other parameters might you change to reduce the F1 modulation?

  3. Conclusions

    Having a model that is image-computable, meaning that it can be directly run on visual stimuli that are represented as sequences of images, is useful because you can quickly test the response to a wide range of existing stimuli and to novel stimuli as they arise.

    For example, new visual motion illusions are being published regularly, and it can be of great value to test them against a variety of existing models to get insight into how neurons at various stages in the visual system may respond to such stimuli.

    Even very simple models like these filter-energy models are not trivial to understand. By applying variants of the simple motion energy model to a two-flash sinusoidal grating stimulus that had been used in psychophysical and physiological studies, we found that the literature had made mistaken claims over many years about the tuning of the quadrature energy model (Heess and Bair, 2010, J Neurosci 30:11300-11304).

  4. Further exercises

    Here are some ideas for further exploration with the motion energy model.

    • Examine the SF and TF tuning of the model by running the stimuli sine_sf and sine_tf. What paramters of the filter effect the TF tuning? Is the TF tuning of this neuron realistic for a V1 direction selective neuron?

    • Look at the model homepage for the MEO_Gabor_Rot model. Try to understand how these model filters differ from the MEO_Gabor model, and what are the implications for the separability of SF and TF tuning, and whether these models are velocity tuned.

    • Test the MEO_Gabor model with a novel stimulus, either by modifying one on the website, or by creating your own and uploading it using the frameset stimulus type (the latter will require some additional documentation - please ask for help).

    • Compare responses of the MEO_Gabor model to those of a Reichardt model, RD_Exp_T What are the similarities and differences?