所以,我想做一个能够穿越未知迷宫的机器人。提供给它的唯一信息是迷宫的单色位图图像,机器人必须从中识别起点和终点,它必须将其携带的球装在其中的盒子,并规划它的路径迷宫。它必须从迷宫的那个 bmp 图像中完成所有这些工作。这是指向迷宫的示例位图图像的链接。
由于完成所有这些处理,我将使用 arduino。目前,我已将此 BMP 读入 2D 字符数组,链接到字符数组,从中制作连接图/图,以便可以在其上应用路径规划算法(Dijkstra 或广度优先搜索)。
然而问题如下,这个位图的大小是 96x56 像素。这意味着连接图/图的大小将是 [5376][5376],非常大。要声明这么大的数组将需要以 MB 为单位的内存,而 arduino 的 SRAM 只有 96KB。
我应该怎么办?请建议。我只是电气工程一年级的学生,所以对所有这些东西都不太了解。我想到的一件事是删除相同的行(请参阅二维数组)。但是后来我想,它本身将需要大量的处理能力,因为我必须逐个元素地将每一行与其他行进行比较。这里的问题基本上是内存和处理限制。
我将不胜感激!