2013-10-16 64 views
0

大家在用AVT Pike火線攝像機試用SimpleCV後(see here)大家好我一直無法讓AVTCamera工作。在SimpleCV頁面上使用關於使用AVT包的例子,我得到一個未找到的類AVTCamera的返回錯誤。我重新安裝了SimpleCV,其他一切似乎都起作用了。我使用的是像維基提示的遺留驅動程序,但出於某種原因,我無法使其工作,有沒有其他人有幸在SimpleCV中使用AVT?AVT Vimba + SimpleCV

編輯:這裏是我收到的錯誤:

from SimpleCV import * 

cam = AVTCamera() 
img = cam.getImage() 
img.show() 

錯誤:

NameError: name 'AVTCamera' is not defined 

回答

0

不知道爲什麼有人投下來。歡迎您隨時在SimpleCV論壇上發佈類似問題(http://help.simplecv.org)。

我們目前還沒有更新到VIMBA支持,因爲它最近已經發布。然而,我們每天都使用PvAPI驅動程序,所以我知道它可以正常工作,儘管我只通過GiGE(manta和GT系列)進行了測試,並沒有通過火線進行測試。

難道你是指我們對我們的wiki安裝指南: https://github.com/sightmachine/SimpleCV/wiki/Allied-Vision-(AVT)-GigE-Camera-Installation-Guide-for-Ubuntu-Linux

+0

感謝xamox,我也許會在您的論壇轉貼,不知是否是因爲它是一個FireWire卡,這需要不同的驅動程序。 – user2221667

+0

它可能很好。我認爲之前他們每個人都有單獨的驅動程序,而VIMBA被認爲是他們的統一驅動程序。他們最近才發佈幾乎明確使用的Linux版本的VIMBA。我只在linux下安裝和測試VIMBA,但我們還沒有開始驅動程序端口,儘管我希望在不久的將來這樣做。 – xamox

0

我寫了一個Python的解決方案使用基於Vimba SDK,你可能會發現有用的AVT相機。這是一個稱爲pymba的驅動程序封裝,代碼可以找到here。我已經成功使用Pike FireWire相機的單色版進行測試。

是一個例子看起來是這樣的:

from pymba import * 
import numpy as np 
import cv2 

vimba = Vimba() 
vimba.startup() 

cameraIds = vimba.getCameraIds() 
camera0 = vimba.getCamera(cameraIds[0]) 
camera0.openCamera() 

frame0 = camera0.getFrame() # creates a frame 
frame0.announceFrame() 

camera0.startCapture() 
frame0.queueFrameCapture() 
camera0.runFeatureCommand('AcquisitionStart') 
camera0.runFeatureCommand('AcquisitionStop') 
frame0.waitFrameCapture() 

imageData = np.ndarray(buffer = frame0.getBufferByteData(), 
         dtype = np.uint8, 
         shape = (frame0.height, frame0.width, 1)) 

cv2.imshow('My image', imageData) 

camera0.endCapture() 
camera0.revokeAllFrames() 

camera0.closeCamera() 

vimba.shutdown()