【问题标题】:The correct manner to install OpenCV in RaspberryPi to use it with Python在 RaspberryPi 中安装 OpenCV 以与 Python 一起使用的正确方法
【发布时间】:2015-01-20 02:18:52
【问题描述】:

到目前为止,我已经按照tutorial 在 RaspberryPi for Python 中安装 OpenCV。它只是说运行:

sudo apt-get install libopencv-dev python-opencv

但我浏览了互联网,发现要安装的库比这更多,就像在这两个类似的教程中一样:

1)http://denis.doublebuffer.net/lablog/2012/08/10/setting-everything-up-for-opencv-raspberry-pi/

2)http://eduardofv.com/read_post/185-Installing-OpenCV-on-the-Raspberry-Pi

对我不正确安装 OpenCV 的怀疑是基于以下简单代码的序列可视化延迟。它只是从相机(RPi 相机模块)获取帧并显示它们:

import cv2

cap = cv2.VideoCapture(0)
while True:
    b,frame = cap.read()
    cv2.imshow("frame", frame)
    cv2.waitKey(1)

正如我上面所说的,可视化是流动的,但延迟了。

【问题讨论】:

    标签: python opencv raspberry-pi


    【解决方案1】:

    如果你能够导入它,那么我猜你已经正确安装了它。如果您有疑问,可以从源代码安装它,尽管在 Raspi 上需要一段时间。

    试试这个代码:

    import cv2
    import cv2.cv as cv
    import numpy
    
    
    class test():
        def __init__(self):
            cv.NamedWindow("w1", cv.CV_WINDOW_NORMAL)
    
            self.capture = cv.CreateCameraCapture(-1)
            self.vid()
    
        def vid(self):
    
    
          while True:
    
              self.frame = cv.QueryFrame(self.capture)
    
    
              aframe = numpy.asarray(self.frame[:,:])
    
              cv2.imshow("w1", aframe)
    
              c = cv.WaitKey(5)
    
          if c == 110:
            exit()
    
    p = test()
    

    另外,请参阅this 问题的答案(假设您使用的是 Raspicam)

    【讨论】:

    • 是的,我已经阅读了该讨论,并且确实以这种方式进行了设置。您的代码实时工作。谢谢!两个问题:因此,为了加快速度,我总是将cv.QueryFrame() 的输出转换为数组,对吗? cv2.VideoCapture(或cv.CaptureFromCAM)和cv.CreateCameraCapture之间的主要区别是什么?
    • 有一个大问题:通过cv.SetCaptureProperty改变分辨率又引入了延迟。所以它只适用于小分辨率。我能为它做点什么吗?
    • 可能值得尝试超频设备,看看它是否能提高性能
    • 我不认为是 CPU 问题(RPi 有 700MHz),因为像 raspistillraspivid 这样的命令以最高分辨率实时工作。因此我想知道,如果这是 OpenCV 的简单采集和可视化,并且不是实时的,如果我开始处理会发生什么?滞后添加到滞后?
    猜你喜欢
    • 2011-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-13
    • 1970-01-01
    • 2015-05-21
    • 1970-01-01
    • 2018-06-05
    相关资源
    最近更新 更多