【问题标题】:Fastest way to detect time taken for change to be applied on image Preview which is on screen using python使用python检测在屏幕上的图像预览上应用更改所需时间的最快方法
【发布时间】:2019-06-12 19:51:30
【问题描述】:

我正在通过更改亮度、对比度、饱和度来编辑图像。

我想计算在 Preview of image 上应用这些更改所需的时间。 我的意思是,当我将亮度从 0 更改为 10 时(使用自动化脚本):所以原始图像中的亮度必须增加。

所以我需要计算将 Original image preview 更改为 Changed image Preview 所需的时间。

我知道的一种方法是:

  1. 我们需要对原图预览截图
  2. 更改亮度并启动计时器
  3. 截屏预览,不断与原图对比,直到发现差异。
  4. 停止计时器。

因此,所用时间将是开始时间和停止时间之间的差异。 但是这里的问题是我们不会看到准确性,因为有时由于原始和更改的预览图像的比较,一个屏幕截图与另一个屏幕截图之间存在时间差。

有人可以帮我在这里找到准确性。

谢谢!

【问题讨论】:

  • 您是如何进行这些更改的?我假设人类 UI 交互......鉴于你所说的,我会使用高速摄像机,因为这样可以更好地量化事情
  • @SamMason 对不起!我正在使用脚本来更改亮度...
  • 为什么通过一系列截图看到预览变化很重要? (这似乎是一种非常低效的方式来获取不涉及用户的任何内容)
  • @SamMason 我想这样做的原因是为了检查性能。有时当图像质量很高时,需要一段时间才能应用更改。所以我想检查预览。我没有在 image 上进行这些更改的应用程序的代码。所以唯一的办法就是通过预览
  • 为什么不使用自动机脚本来计时呢?或监控实际文件?似乎会少很多问题

标签: python macos python-imaging-library


【解决方案1】:

我会这样做:

from time import sleep, time
from os import stat

filename = 'image.jpeg'

last = None
while True:
    s = stat(filename)
    if last and last != s:
        print(time(), s)
    last = s
    sleep(0.01)

即使用标准文件系统 stat 每秒 100 次查找文件更改...

在我玩过之后似乎可以工作

【讨论】:

  • 再一次,我说的问题是实际不会改变,直到它被应用和保存。那么我们该如何处理呢?所以只有预览才能显示变化
  • 嗯,当我拖动滑块时文件会发生变化(OSX 10.14.2)。也许在自动化脚本中添加一个保存命令?
  • 再次延迟保存..并检查更改。 .然后我们可以按照自己的截图..一个问题..有什么可以检测到屏幕的变化吗?
  • 你真的需要学会搜索! stackoverflow.com/a/4525615/1358308 建议您无论如何都要“保存”图像。为什么不直接保存您感兴趣的图像?重新保存图像会给你保存图像的时间,你可以取消“修改和保存”时间,给你修改的时间
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-16
  • 2011-07-01
相关资源
最近更新 更多