考虑到轻微差异

2024-06-16 10:26:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试为口袋妖怪黑做一个简单的电动汽车训练机器人,它通过颜色检查屏幕上是否有小人

问题是,有时当小人鱼出现时,它的颜色会略有不同(很明显,不是闪亮的)。在任何RGB通道中,它可以高1-3或低1-3,这几乎不可能预测

我尝试过在它们之间做一个简单的距离检查(就像它们是3d坐标一样),但无论我设置的阈值有多低,它似乎都不起作用(当阈值为1且Lilliups颜色不在屏幕上的任何位置时,它仍然会触发)

代码(颜色是我比较的“默认”小人调颜色):

        color = img.getpixel((x,y))
        r1=Color[0]
        r2=color[0]
        g1=Color[1]
        g2=color[1]
        b1=Color[2]
        b2=color[2]            

        d=math.sqrt((r1-r2)^2+(g1-g2)^2+(b1-b2)^2)

我是做错了还是应该换一种方式


Tags: 屏幕颜色机器人阈值b2b1colorr2
1条回答
网友
1楼 · 发布于 2024-06-16 10:26:07

对于向量之间的相似性度量cosine distance应该比欧几里德距离更好

你可以试试color quantization

你可以使用k-means算法。一个实现是在scikit-learn

你好像在问一个问题。这些通常不是琐碎的

相关问题 更多 >