如何检查图像是否包含其他图像?如果它真的出现了,你会如何获取它的X和Y坐标呢?

2024-09-19 20:33:57 发布

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

我正在为一款在线赛车游戏编写一个机器人程序,有点像一辆非常简化的马里奥卡丁车。我需要检查汽车本身的位置(它使用箭头键左右移动),以及燃油和障碍物的位置,这些都会降低汽车的健康状况

每次按下箭头键时,我都能通过找出汽车移动的距离来找到汽车的位置,但现在我被困在如何找出汽车前方的实际情况,即,它是燃油还是障碍物,然后我需要找到X坐标,这样我就可以使汽车驶向它,或者远离它

我一直在用枕头不停地拍截图,检查健康状况和汽车pos等,我希望我能搜索那些截图,寻找燃油或障碍物的图像

我尝试过的一种不太可靠的方法是尝试利用“事实”,即每个对象至少有一个rgb值不与其他任何对象共享的像素。不幸的是,事实并非如此,无论如何,我都不知道如何找到像素的x坐标

总而言之,我想要这样的东西:

def obstacles():

    if image in screenshot:

        xPos = position of the object

        if image == fuel or image == health: #check for the "good" objects
            #then move car to the same xPos as the object, but I am able to do this bit

        else: #not a "good" object
            #then move car away from obstacle, i.e. so that is does not have the same xPos. Once 
            #again, this bit I can do

Tags: the对象imageifobject像素汽车事实