Реализовать с использованием графовой модели вычислений следующую задачу, разбив её на чати и обеспечив максимальную потенциальную утилизацию ресурсов (изображение == матрица MxN):
На вход подаются генерированные случайным образом изображения
Различные алгоритмы ищут || на изображении:
Набор максимальных элементов (максимальная яркость)
Набор минимальных элементов (минимальная яркость)
Набор элементов, равных заданному в командной строке значению (0-255)
По результатам предыдущего шага на избражении выделяются все найденные элементы (например, квадрат с максимальной яркостью вокруг точки)
Результат предудущего шага передаётся на:
Результат расчёта средней яркости выводится в файл в произвольном формате, если указан соответствующий флаг запуска приолжения
Результат расчёта обратного изображения никуда не идёт
Предполагается использовать:
broadcast_node
join_node
function_node
limiter_node
…
Приложение принимает в качестве параметров:
“-b 123”: интересующее значение яркости, для шага № 2
“-l 5”: предел одновременно обрабатываемых приложением изображений
“-f log.txt”: имя файла журнала яркостей
Адекватные модификации задания (периодический вывод текущего изображения в консоль после расчёта обратного, работа с реальными изображениями и более реальными операциями…) допускаются.
При наличии у студента задач, подходящих для применения flow graph - по согласованию через почту можно реализовать их вместо стандартного задания.
Оганичения на язык: имеющий framework, поддерживающий графовую модель вычислений, аналогичную Intel TBB Flow Graph