当前状态
(900, 1800, 3)
的数字数组。 目标
n
数量唯一颜色的最小圆形区域,其中n
将始终小于或等于图像中唯一颜色的数量。y
(按计数或pct)。捕捉/注意
图像实际上是球的扁平投影。这意味着图像右边缘的像素实际上与左边缘的像素相邻,顶部和底部像素也类似。解决方案必须考虑到这一点,因为它正在解析像素以标识其他颜色的最接近像素。 编辑:这部分可能会在下面的评论中回答
问题
我最初的方法是简单地逐像素解析像素,并通过手推x / y坐标数学运算来解决问题:取一个像素,向外工作,直到达到n
颜色,对该像素进行多少步向外打分花了下一个像素。保留要在每个像素之后重新评估的顶部y
格,添加所有构成顶部y
的像素,并转储所有被推出的像素。返回该字典作为输出。
我知道许多Python库,例如scipy
,scikit-image
,也许还有一些喜欢将图像作为numpy数组使用。我确定,有一种方法/方法更聪明,可以利用库或某种聚类算法来代替强行使用它,但是我对空间不够熟悉,无法直观地知道要考虑的方法和库。问题:一个好的方法/库正确执行此操作的伪代码是什么?