Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 二维数组中大于0的值的最快搜索_Python_Performance_Loops_Dataframe_Time - Fatal编程技术网

Python 二维数组中大于0的值的最快搜索

Python 二维数组中大于0的值的最快搜索,python,performance,loops,dataframe,time,Python,Performance,Loops,Dataframe,Time,这是我的密码: if frame is not None: self.x, self.y = np.where(frame > 0) 基本上,它的搜索值大于0,但它需要花费很长时间,我需要它每秒至少为数组480x640执行10次。如果它有帮助的话,它总是只有这几点。我正在给我的全班同学发邮件,也许有人会改进我的邮件:(这是编辑后的邮件) 理想情况下,函数np.where()应该在第一个结果时停止,然后从末尾开始执行相同的操作您是否尝试过使用where函数 它将返回一个索引,该索

这是我的密码:

    if frame is not None: self.x, self.y = np.where(frame > 0)
基本上,它的搜索值大于0,但它需要花费很长时间,我需要它每秒至少为数组480x640执行10次。如果它有帮助的话,它总是只有这几点。我正在给我的全班同学发邮件,也许有人会改进我的邮件:(这是编辑后的邮件)


理想情况下,函数np.where()应该在第一个结果时停止,然后从末尾开始执行相同的操作

您是否尝试过使用where函数

它将返回一个索引,该索引包含满足条件的点的x,y坐标。例:

import numpy as np

#being A  your NxM array

index = np.where(A > o)

是的,我马上就到了,谢谢你;It’很接近,但我想我需要一些更快的东西。你是对同一帧每秒计算几次,还是对不同的帧?我询问是为了确定缓存的位置。如果不缓存,如果我只运行min/max值,而不是将所有内容都放在列表中,然后调用min/max,则速度几乎是两倍(对于我使用timeit),这是为了检查从live feed中为移动对象绘制矩形的位置,因此对于不同的帧,我现在有可用的代码,但问题是要做得更快,编辑后检查您的代码对我来说似乎不完整-该类在哪里被实例化或使用?从任何相机或模拟中读取的帧在哪里?如果你不回答问题,没有人可以帮助你。。。
import numpy as np

#being A  your NxM array

index = np.where(A > o)