имеют большой массив 2d numpy, размеры 1500x1500, который представляет собой лабиринт. Ячейки содержат 0 и 1, где 0 - открытое пространство, а 1 - занято. Я хочу учесть размеры робота, поэтому самый простой способ сделать это - изменить карту так, чтобы там, где исходные ячейки равны 1, установите окружающие ячейки на расстоянии до 3 ячеек в любом направлении до 1.
Имел посмотрите на маски, свертку и т. д. c, но не знаете, как поступить, благодарны за помощь.
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
становится
1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Редактировать: Упрощенная Q до 3x3 "маска" с примером