Вопросы по теме 'halide'
Начинаете работать с языком программирования Halide?
Я пытаюсь начать работу с специальным языком (расширение C++) для обработки изображений под названием Галоид .
Следуя Halide README , я пробовал следующее:
Скачал двоичный файл Ubuntu 12.04 Halide и распаковал его в каталог с именем...
3103 просмотров
schedule
01.01.2024
Использование галоидного кортежа
Я хочу использовать Halide для создания нескольких выходных буферов.
Func output;
std::vector<Expr> argsExpr( 4 );
argsExpr[ 0 ] = aOut( x, y );
argsExpr[ 1 ] = bOut( x, y );
argsExpr[ 2 ] = cOut( x, y );
argsExpr[ 3 ] = dOut( x, y );...
473 просмотров
schedule
14.07.2023
Как выполнять операции над окрестностями определенных пикселей в Halide?
На изображении есть несколько определенных пикселей, вокруг которых я хочу найти минимальный локальный градиент. Я могу сделать это достаточно легко для всех пикселей изображения:
Func grad, gradmin;
grad(x, y) = pow(input(x+1, y) - input(x-1,...
216 просмотров
schedule
01.06.2023
Смешивание и поплавок в Halide
Я использую Halide с VS2013. Я успешно построил и запустил первый учебник.
Я пытаюсь реализовать часть своего кода и не понимаю, почему он не компилируется. Код выглядит следующим образом:
int main(int argc, char **argv) {
ImageParam...
595 просмотров
schedule
14.04.2023
Неожиданное поведение: пустой цикл приводит к улучшению результатов в функции размытия.
Я посетил несколько групп Halide за эти годы в Siggraph и, наконец, решил провести некоторое тестирование, чтобы определить, будет ли полезно перекодировать мое существующее программное обеспечение. До сих пор результаты были впечатляющими.
Я...
159 просмотров
schedule
05.08.2022
Создание файла объекта AOT Halide для ARM Cortex A9
Я пытаюсь использовать учебники Halide-lang AOT и кросс-компиляции. Что я хотел бы сделать, так это кросс-AOT-компиляцию программы Halide для встроенной цели Linux Cortex A9.
Я внес в файл lesson_11_cross_compilation.cpp следующие изменения:...
406 просмотров
schedule
01.04.2023
Как использовать профайлер Halide
Я изучал возможности Halide в течение нескольких недель, и чтобы лучше понять, что делает Halide, я хотел бы попробовать использовать профайлер halide. Допустим, у меня есть тест Func. (Для простоты чтения я пропустил объявления переменных и тому...
662 просмотров
schedule
19.04.2023
Доступ к функциям в конвейере Halide
У меня есть пайплайн Halide, на котором я хотел бы попробовать пару графиков. Я хотел бы сделать это, создав отдельный файл с оптимизациями, а затем применить их к данному Func во время выполнения, чтобы я мог автоматически опробовать их, чтобы найти...
300 просмотров
schedule
26.03.2023
Halide::Expr' контекстуально не конвертируется в 'bool' Сохранение значений функций в переменных
Я новичок в использовании Halide, и сначала я играю с реализацией алгоритмов. Я пытаюсь написать функцию, которая, в зависимости от значения 8 пикселей вокруг нее, либо переходит к следующему пикселю, либо выполняет некоторую обработку, а затем...
970 просмотров
schedule
22.04.2023
Halide с графическим процессором (OpenGL) в качестве цели — бенчмаркинг и использование HalideRuntimeOpenGL.h
Я новичок в Галиде. Я играл с учебниками, чтобы почувствовать язык. Теперь я пишу небольшое демонстрационное приложение для запуска из командной строки в OSX.
Моя цель — выполнить попиксельную операцию над изображением, запланировать ее на GPU и...
1323 просмотров
schedule
04.02.2023
Запуск генераторов Halide из cmake с наиболее оптимальными флагами и конфигурациями компилятора
Итак, я успешно интегрировал первый работающий галоидный генератор в систему сборки cmake для моего небольшой проект по обработке изображений .
Генератор реализует алгоритм изменения размера и повторной выборки изображения на основе примера...
1218 просмотров
schedule
01.07.2023
не могу включить автономную среду выполнения в мой проект
Я создал автономную среду выполнения, которую я мог бы использовать с несколькими скомпилированными функциями AOT, которые не содержат среды выполнения, но когда я пытаюсь включить ее в компоновщик, она не работает, потому что сам файл имеет тип...
49 просмотров
schedule
29.12.2023
Разложение Холецкого в галидах
Я пытаюсь реализовать разложение Холецкого в Halide. Часть общего алгоритма, такого как crout, состоит из итерации по треугольной матрице. Таким образом, диагональные элементы разложения вычисляются путем вычитания частичной суммы столбца из...
277 просмотров
schedule
14.10.2022
Есть ли способ заставить Halide не генерировать код, использующий векторные инструкции?
Мы реализовали несколько алгоритмов на языке Halide, который использует arctan как тригонометрические функции. Но для инструментальных целей мы хотим заставить Halide не генерировать векторные инструкции.
Мы используем Visual C++ в Windows и...
315 просмотров
schedule
16.12.2022
Как назвать несколько выходов функции (кортежа)?
Скажем, у меня есть генератор для создания функции, скомпилированной с опережением времени, что-то вроде следующего.
Halide::Func build(){
Halide::Func func1("func1"), func2("func2"), func3("func3");
Halide::Func result("result");...
384 просмотров
schedule
10.12.2022
ошибка halide: доступ к входному буферу b0 осуществляется по адресу -1, что предшествует min(0) в измерении 0
Я не могу понять, почему в приведенном ниже коде Halide возникает ошибка. Пожалуйста, дайте мне знать, что я ошибаюсь.
Buffer<uint8_t> input(small_width, small_height, small_depth);
Var x("x"), y("y"), z("z");
Func blur_y1, blur_y2,...
342 просмотров
schedule
03.02.2023
Трудности реализации шага гистерезиса алгоритма Кэнни в Halide без функции define_extern
Проблема в том, что когда пиксель, помеченный как слабый край (между двумя пороговыми значениями), меняется на сильный край (принимается, как описано здесь ) требуется применить ту же логику к вашим подключенным соседям рекурсивно (отслеживая...
461 просмотров
schedule
25.03.2023
ошибки галоидного линкера с граничными условиями
Я столкнулся с проблемой, пытаясь вызвать граничные условия в галоидном коде. Я использую бинарную сборку halide-mac-64-trunk... с сайта. У меня не было других проблем с вызовом других галоидных функций.
Ввод изображения = load_image (argv [1]);...
190 просмотров
schedule
09.11.2022
Эффективный доступ к памяти в Halide
Допустим, я хочу выполнить операцию (например, сложение) между двумя изображениями, где каждому пикселю изображения Img1 соответствует соответствующий пиксель изображения Img2. Вектор соответствия хранится в кортеже Delta. В основном, что-то вроде...
174 просмотров
schedule
23.03.2024
Есть ли способ объединить Funcs в Func с еще одним измерением?
Я начал изучать Halide с прошлого месяца. И, наконец, столкнулся с большой проблемой для меня.
Я пытаюсь реализовать функцию, подобную C-подобному коду в Halide.
for( int y = 0; y < 3; ++y ){
for( int x = 0; x < 3; ++x ){...
690 просмотров
schedule
08.10.2022