由maemo使用python相机

2024-09-30 01:36:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我用Python为Maemo编写了一个简单的程序,每次调用我的函数时都要检查一些像素的颜色。但是这个函数运行得非常慢(每次调用3-5秒)。有没有更快的方法?在

import Image
import os
import sys

# sen_pos = (pixel_x, pixel_y)
def sen(sen_pos):
    os.system("gst-launch v4l2src device=/dev/video0 num-buffers=1 ! ffmpegcolorspace ! jpegenc ! filesink location=cam.jpg")
    frame = Image.open("cam.jpg")
    col = frame.getpixel((sen_pos[0], sen_pos[1]))
    avecol = sum(col) / len(col)
    if avecol > 127:
        return "white"
    elif avecol < 127:
        return "black"
    return None

Tags: 函数posimageimport程序returnoscol
2条回答

通过os.system调用一个外部程序很可能需要花费时间。在

请尝试使用GStreamer Python Bindings,并在调用之间保留视频对象。The docs for Videomixer可能有帮助。在

正如George所说,您可能会在系统调用中产生开销,但我怀疑getpixel()调用。众所周知,PIL的速度很慢。取而代之的是^{}图像,然后循环浏览应该更快。在

相关问题 更多 >

    热门问题