Est-il possible d'initialiser un Func à partir d'un tableau dans une classe de générateur? Le code devrait ressembler à ceci.Initialiser Func à partir d'un tableau
class SobelConv: public Halide::Generator<SobelConv> {
const signed char kernelx[3][3] = {
{-1, 0, 1},
{-2, 0, 2},
{-1, 0, 1}
};
void generate() {
for (int y = 0; y < 3; y++)
for (int x = 0; x < 3; x++)
kernel_x(x, y) = kernelx[y][x];
conv_x(x, y) += gray(x+win.x, y+win.y) * kernel_x(win.x + 1, win.y + 1);
}
Func kernel_x{"kernel_x"};
Actuellement, la façon dont j'ai fait est de définir Input<Buffer<int8_t>> kernel_x
. Je ne veux pas que ce soit un argument de la fonction pipeline, et j'aimerais que kernel_x soit remplacé par les numéros respectifs directement.
Si vous avez un tableau statique, 'Halide :: Runtime :: Buffer' peut être initialisé avec le tableau:' kernel_x {poids} '. La dimensionnalité et les étendues sont détectées. –