Я новичок в Галиде.
Я пытаюсь сделать некоторые вычисления, где позиция пикселя «x» должна быть установлена как предел цикла for. Для этого я написал следующий код, но, похоже, я не могу использовать галоидную переменную в качестве ограничения цикла for.
Есть ли решение для этого?
Мой код:
Halide::Var x, y;
Halide::Expr L;
Halide::Func mat,A;
L = 0;
for (int k=1; k<=x-1; k++)
L += mat(k,y) * mat(k,x);
mat(x,y) = Halide::select(x==y, (A(x, y) - L),
y>x, (A(x,y) - L)/mat(x,x),
0);
он дает сообщение об ошибке:
"ошибка: не удалось преобразовать 'Halide::operator‹=(int, Halide::Expr) Halide::operator-(Halide::Expr, int)(1))' из 'Halide::Expr' в 'bool' для (целое k=1; k‹=x-1; k++)"
Halide
не хватает некоторых перегрузок. Спроси их. А пока попробуйте использоватьVar k
вместоint k
. - person Ripi2   schedule 29.08.2019Halide
, но полагаю, что они занимаются вар-арифметикой. Если нет, снова спросите команду Halide. - person Ripi2   schedule 29.08.2019gitter
. - person Ripi2   schedule 29.08.2019