小编rjp*_*998的帖子

ImageGrab.grab() 方法太慢

所以我需要每秒得到一堆截图,比如 5。我用它来为游戏编写一个机器人程序。但是 imagegrab 方法需要 0.3 秒,这对我来说太慢了。即使在指定 bbox 值之后,它仍然需要 0.3 秒。我想应该提到我在 mac 上。有没有更好的方法适合我

我什至尝试了os.system("screencapture filename.png")0.15-0.2 秒的运行时间,这很好,但我想更快。

python performance screenshot python-imaging-library

5
推荐指数
1
解决办法
6357
查看次数

如何在opencv中合并轮廓?

好的,伙计们,我已经在这个项目上工作了很长一段时间了。

我正在构建这个玩 chrome 恐龙游戏的机器人。所以我尝试了其他方法来检测像 matchTemplate 这样的字符,甚至使用我自己的算法来定位对象,但我最喜欢这个(findcontours)。

这是我所拥有的:

我的程序看到了什么

谁能帮我找出我应该如何合并仙人掌的两个矩形?

img = screen_cap()
roi = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
ret, thresh = cv2.threshold(roi,127, 255, 0)
im2, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
first = True
for cnt in contours:
    area = cv2.contourArea(cnt)
    if area > 200: #filtering contours
        x,y,w,h = cv2.boundingRect(cnt)
        if w/h < 4: # filtering even more
            cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
Run Code Online (Sandbox Code Playgroud)

python opencv artificial-intelligence

3
推荐指数
3
解决办法
9328
查看次数

Chrome headless 忽略系统代理

编辑:这是演示该问题的 YouTube 视频:

https://youtu.be/MIZjHKCVr1s

我正在使用 --headless 标志运行带有 chrome 的 selenium,但显然使用 --headless 似乎忽略了系统代理。我之前在 mac 上测试过它没有绕过代理,但在我的 mac 上的 Windows 10 VM 上它似乎绕过了代理。

代码 :

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument('--headless')
options.add_argument('--hide-scrollbars')
options.add_argument('--disable-gpu')
driver = webdriver.Chrome(chrome_options = options)

driver.get('https://wtfismyip.com')
print(driver.find_element_by_tag_name('body').text)
Run Code Online (Sandbox Code Playgroud)

如果我不使用 head less 标志。它显示系统代理的 IP,但如果使用它,它会显示我的真实 IP。

python proxy selenium google-chrome google-chrome-headless

2
推荐指数
1
解决办法
1424
查看次数

可视化由 1 和 0 组成的 3d numpy 数组

好吧,伙计们,我有这个 1 和 0 的 3d 数组,它应该代表一个 3d 对象。0 表示那里什么也没有。1 表示对象存在于该坐标中。我需要在屏幕上显示 3D 对象。对我来说,拥有一个具有取决于颜色的值的离散 3 维图将是理想的。我尝试查看 glumpy 和 vispy 但文档页面现在似乎已关闭。

python arrays 3d numpy

1
推荐指数
1
解决办法
4995
查看次数

最快的算法,找到最大的n,使得x ^ n <= y

我正在开发一个项目,要求我找到最大的n,使得x ^ n <= y,其中提供x和y.我正在使用gmp库并在c中使用大量数字.

约束:

x> = 1&y> = 1

使用我想到的第一种方法,当x = 12和y = 411 ^ 20000时,我花了大约5秒来找到n,即,

int n=0;
int x=12;
int y=100;
int temp;
int answer;
while(1)
{
    temp = pow(x,n);
    if(temp>y)
        {
            answer = n-1;
            return(0);
        }
   n++;
}
Run Code Online (Sandbox Code Playgroud)

注意:不是实际代码.不想用gmp语法复杂化

有更快的算法吗?整个代码:https: //pastebin.com/J1vbmEbK

c algorithm math gmp

1
推荐指数
1
解决办法
245
查看次数