MATLAB prend-il en charge les tables de hachage?
Un peu de contexte
Je travaille sur un problème dans Matlab qui nécessite une représentation échelle-espace d'une image. Pour ce faire , créer un filtre gaussien 2-D avec une variance sigma*s^k
pour une k
certaine plage., Puis - je utiliser chacun à son tour pour filtrer l'image. Maintenant, je veux une sorte de mappage de k
l'image filtrée.
Si k
c'était toujours un entier, je créerais simplement un tableau 3D tel que:
arr[k] = <image filtered with k-th guassian>
Cependant, ce k
n'est pas nécessairement un entier, donc je ne peux pas faire cela. Ce que j'ai pensé à faire était de garder un tableau de k
s tels que:
arr[find(array_of_ks_ = k)] = <image filtered with k-th guassian>
Ce qui semble plutôt bon à première vue, sauf que je vais faire cette recherche potentiellement plusieurs milliers de fois avec environ 20 ou 30 valeurs de k
, et je crains que cela nuise aux performances.
Je me demande si je ne serais pas mieux servi de faire cela avec une table de hachage de sorte que j'aurais un temps de recherche qui est O (1) au lieu de O (n).
Maintenant, je sais que je ne devrais pas optimiser prématurément, et je n'ai peut-être pas du tout ce problème, mais rappelez-vous, ce n'est que l'arrière-plan, et il peut y avoir des cas où c'est vraiment la meilleure solution, que ce soit ou non le meilleure solution pour mon problème.