我有这张显示欧洲地理的地图(下图),我希望将其转换为 python 中的矩阵,该矩阵将是该图像的 2D 近似值,其中 0 代表海洋,1 代表陆地。我计划随后在生成的网格上进行有偏差的随机游走,其中步行者更有可能在陆地上而不是水上行驶。现在我只需要帮助将这个图像转换为前面提到的 0 和 1,在 Python 中最直接的方法是什么?
得到的 0 和 1 的矩阵表示的分辨率不需要非常高,尽管我想区分高海拔和低海拔(大概我需要通过可能将它们记为矩阵中 2 的条目来考虑更高的海拔表示)。

我有这张显示欧洲地理的地图(下图),我希望将其转换为 python 中的矩阵,该矩阵将是该图像的 2D 近似值,其中 0 代表海洋,1 代表陆地。我计划随后在生成的网格上进行有偏差的随机游走,其中步行者更有可能在陆地上而不是水上行驶。现在我只需要帮助将这个图像转换为前面提到的 0 和 1,在 Python 中最直接的方法是什么?
得到的 0 和 1 的矩阵表示的分辨率不需要非常高,尽管我想区分高海拔和低海拔(大概我需要通过可能将它们记为矩阵中 2 的条目来考虑更高的海拔表示)。

您拥有的图片是一个糟糕的起点,因为它显示河流为蓝色,即使它们通常远高于海平面,因此最有可能被视为“陆地”区域的一部分。
我认为您最好使用生成此类地图的原始数据集。例如,可以从SRTM 数据集中获取包含您要查找的信息的数据,该 wikipedia 站点也有指向您可以获取数据集的位置的链接。SRTM 数据已经被栅格化,因此应该更好地满足您的目的:海拔大于零的每个地形点都会在您的符号中得到一个,每个海拔为零或低于零的地形点都会得到一个零。(除非你将死海或死亡谷等少数洼地考虑在内,它们是陆地的一部分,但位于海平面以下。)