def step(self): self.dev.Read() if (self.yuv): y=numpy.ndarray(shape=(self.h,self.w), buffer=self.dev.buffer,dtype=numpy.uint8).copy() off=self.h*self.w len=(self.h//2)*(self.w//2) u=numpy.ndarray(shape=(self.h//2,self.w//2), buffer=self.dev.buffer[off:off+len],dtype=numpy.uint8) v=numpy.ndarray(shape=(self.h//2,self.w//2), buffer=self.dev.buffer[off+len:],dtype=numpy.uint8) for yy in range(self.h): for xx in range(self.w): vv=y[yy,xx] self.img[yy,xx,0]=vv self.img[yy,xx,1]=vv self.img[yy,xx,2]=vv else: self.img=numpy.ndarray(shape=(self.h,self.w,self.nc), buffer=self.dev.buffer,dtype=numpy.uint8) if (self.bgr): rgb2bgr(self.img) if (self.observer): self.observer(self.img.copy()) return True
def step(self): frame = highgui.cvQueryFrame(self.capture) img = Ipl2NumPyFast(frame) if self.bgr: # zs=img.shape # img=numpy.array(zip(img[:,:,2].flat,img[:,:,1].flat,img[:,:,0].flat)) ## slow !!! rgb2bgr(img) # let use cython # img.shape=zs if self.obs: self.obs(img) return True
def __getitem__(self, x): frame = highgui.cvQueryFrame(self.capture) img = Ipl2NumPyFast(frame) if self.bgr: rgb2bgr(img) return img