python - 从屏幕上的矩形获取平均主导颜色(live/python)

标签 python opencv screenshot

我想要做的是在 PC 屏幕(Windows 10)上设置一个矩形。每 5-10 秒,获取该矩形的平均颜色。
示例:屏幕左下角的 50x50 矩形 > 获取平均颜色。如果发红,请执行此操作。如果偏蓝,就这样做。重复。
我的想法是我可以获取屏幕截图(可能是 Pyautogui),保存图像,然后裁剪所需的矩形(OpenCV),再次保存图像并分析它(OpenCV/Numpy)。
但是,我认为这会占用大量 CPU。如果我想要轻量级和快速的东西,我可以从哪里开始?你会建议什么图书馆?

最佳答案

您可以更有效地完成此任务,但即使按照您描述的方式进行操作,这些操作也不是计算密集型操作。所有这些都应该少于 0.1 秒。正如@fmw42 所述,您无需保存,即时进行分析。
你提到的图书馆很好。

  • 获取 screenshot .将其存储在内存中(不是磁盘)
  • mean :得到每个 channel 颜色的平均值,得到主色。
  • save image on disk
  • 关于python - 从屏幕上的矩形获取平均主导颜色(live/python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64624400/

    相关文章:

    Python 在变量后同时插入回车符和换行符,而不仅仅是换行符

    Android通过代码截图

    Python 输入验证和边缘情况处理

    Opencv Mat乘以常量运算保护溢出?

    java - OpenCV/JavaCV 人脸识别 - 非常相似的置信度值

    python - 将OpenCv与PiCamera结合使用可降低FPS(python)

    ios - 通过键盘应用程序或 iMessage 应用程序截取屏幕截图

    swift - 实际显示 View 时的 WKWebView 通知

    python - 如何从 python 中的字符串中删除整个单词?

    python - django flatpages 和 i18n