Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

bioinspired.Retina: log-polar representation vs retinal with log sampling #2305

Open
breznak opened this issue Oct 23, 2019 · 2 comments
Open

Comments

@breznak
Copy link

breznak commented Oct 23, 2019

Detailed description

The advantage of log-pol coordinates in computer vision is that

By using this transformation, both rotations and scaling between two images can be represented by translations.

https://sthoduka.github.io/imreg_fmt/docs/log-polar-transform/
This means those will have similar representations (for use in neural net)

bioinspired.Retina has an option for useRetinalLogSampling, eg as shown at:
http://users.isr.ist.utl.pt/~alex/Projects/TemplateTracking/logpolar.htm

I am wondering:

  • any advantages of logpolar over retinal log-sampling?
  • is the log-polar transformation biologically plausible, or the useRetinalLogSampling should be used when we want plausible models?

Thank you,

@ctrl-z-9000-times
Copy link

[Retina Log Polar Sampling] as shown at:
http://users.isr.ist.utl.pt/~alex/Projects/TemplateTracking/logpolar.htm

The bottom of this webpage shows three images:
Cartesian image ----- Log-Polar representation ----- Retinal representation

  • The Log Polar representation is biologically true.
  • The "Retinal representation" is a reverse transform from the log-polar back to Cartesian coordinates. The purpose of showing the "retinal representation" is to visually demonstrate how/where the image is compressed.

@breznak
Copy link
Author

breznak commented Oct 23, 2019

[Retinal representation] The purpose of showing the "retinal representation" is to visually demonstrate how/where the image is compressed

ok, unless I'm doing something wrong, the images from retina (ie retina.getMagno())
are different when doing manually the log-polar transformation, and when using the useRetinalLogSampling.

The bottom of this webpage shows three images:
Cartesian image ----- Log-Polar representation ----- Retinal representation

it looks exactly like on this illustration, so it seems getMagno() is doing the "reverse transform from the log-polar back to Cartesian".

Do I need to use getMagnoRAW() not to do the reverse transform, in order to still

By using this [log-polar] transformation, both rotations and scaling between two images can be represented by translations.

?

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

3 participants