Python脚本:创建功能循环
我目前正在为我的学校项目编写脚本。它应该从相机馈送中提取一个像素,并在该点进行多次测量(用于消除噪声)。目前我不满意的代码部分如下所示:Python脚本:创建功能循环,python,python-3.x,loops,Python,Python 3.x,Loops,我目前正在为我的学校项目编写脚本。它应该从相机馈送中提取一个像素,并在该点进行多次测量(用于消除噪声)。目前我不满意的代码部分如下所示: canon.ScanXY(x,y) img_1 = canon.FetchImage(0, 1 * 1) canon.StopScan() canon.ScanXY(x,y) img_2 = canon.FetchImage(0, 1 * 1) canon.StopScan() ... canon.ScanXY(x,y) img_xxx = canon.
canon.ScanXY(x,y)
img_1 = canon.FetchImage(0, 1 * 1)
canon.StopScan()
canon.ScanXY(x,y)
img_2 = canon.FetchImage(0, 1 * 1)
canon.StopScan()
...
canon.ScanXY(x,y)
img_xxx = canon.FetchImage(0, 1 * 1)
canon.StopScan()
上面的代码将返回一个名为img_xxx的字符串,其中xxx代表一个特定的数字。我在想,是否有更简单的方法可以做到这一点。我试图循环函数,但无法循环,因此每次迭代的结果都不同。最后,我需要将所有这些加在一起,以便从之前生成的所有字符串中创建一个字符串:
img_final = (img_1 + img_2 + img_3 + ... + img_xxx)
最后,使用
img = np.fromstring(img_final, dtype="uint8").reshape(8,8)
fig, ax = plt.subplots()
ax.xaxis.set_visible(False)
ax.yaxis.set_visible(False)
ax.set_xticklabels((0,1))
x=ax.imshow(img,cmap="gray")
代码是有效的,但是如果我想更改任何东西,它确实需要很多时间。到目前为止,我使用的是64个或更少的字符串,但我希望细化结果,因此需要更多的迭代。任何帮助都将不胜感激。
img\u final
应该是单个img
序列的总和。添加从控制台读取的整数序列类似于:
final = int(input("First num: "))
for x in range(xxx-1):
num = int(input("Next num: "))
final += num
“我试图循环函数,但无法循环,因此每次迭代的结果都不同。”-请说明您尝试过的操作以及问题所在。这不是一个适合SOI的问题,我想你是说
canon.FetchImage(0,1*1)
返回一个包含(x,y)像素灰度数据的字符串?对吗?该字符串中的数据是单个字节吗?另外,我假设您使用的是Python 2,因为在Python 3中,您将使用字节
对象而不是字符串。FetchImage函数可以存储更大的图像,1*1
部分代表图片大小。然而,对于我们的应用程序,我们只需要一个像素,是的,我犯了一个错误,因为我使用的是Python3,它确实使用了字节
对象。对于前面的问题,我尝试使用for
函数循环它