2011-04-04 6 views
2

Je regarde la CUDA SDK convolution with separable kernels, et j'ai une question simple mais ne peut pas trouver une réponse:avec le noyau Convolution séparable

Est-ce que les vecteurs, dont convolution donne le noyau, doivent avoir la même taille? Puis-je d'abord effectuer une convolution en ligne avec un vecteur 1x3 puis une convolution en colonne avec un autre 5x1? Ou ils doivent tous les deux être de la même taille? Google n'aide pas (ou je suis incapable de chercher une réponse)

Répondre

4

Oui, les vecteurs peuvent avoir des tailles différentes. La seule conséquence est que vous obtiendrez une matrice rectangulaire qui n'est pas carrée.

+0

Très bien, merci! –

+0

Ceci est seulement si vous faites une convolution complète. Vous pouvez limiter la sortie à la même taille que l'entrée. Cela dépend de l'application pour laquelle vous utilisez la convolution. –

2

Les vecteurs d'une convolution séparable ne pouvaient être de tailles différentes que si la matrice de convolution équivalente n'était pas carrée.

Questions connexes