def init(self): """ Descript. : """ current_path = os.path.dirname(os.path.abspath(__file__)).split(os.sep) current_path = os.path.join(*current_path[1:-1]) image_path = "/" + current_path + "/tests/fakeimg.jpg" self.image = QPixmap(image_path) self.image_dimensions = (self.image.width(), self.image.height()) self.setIsReady(True) GenericVideoDevice.init(self)
def get_new_image(self): """ Descript. : """ raw_buffer, width, height = self.get_image() if raw_buffer is not None and raw_buffer.any(): if self.cam_type == "basler": raw_buffer = self.decoder(raw_buffer) qimage = QImage(raw_buffer, width, height, width * 3, QImage.Format_RGB888) else: qimage = QImage(raw_buffer, width, height, QImage.Format_RGB888) if self.cam_mirror is not None: qimage = qimage.mirrored(self.cam_mirror[0], self.cam_mirror[1]) if self.scale != 1: dims = self.get_image_dimensions() # should be already scaled qimage = qimage.scaled(QSize(dims[0], dims[1])) qpixmap = QPixmap(qimage) self.emit("imageReceived", qpixmap) return qimage.copy()
def refresh_video(self): """ Descript. : reads new image into member variable, scales it and emits imageReceived event. Added for compatibility. """ image = self.get_new_image() if image is not None: self.image = QPixmap.fromImage(image.scaled(self.width, self.height)) self.emit("imageReceived", self.image)
def _do_imagePolling(self, sleep_time): """ Descript. : worker method """ while True: image = self.get_new_image() if image is not None: self.image = QPixmap.fromImage(image.scaled(self.width, self.height)) self.emit("imageReceived", self.image) gevent.sleep(sleep_time)
def get_new_image(self): """ Descript. : """ raw_buffer, width, height = self.get_image() if raw_buffer is not None: qimage = QImage(raw_buffer, width, height, QImage.Format_RGB888) qpixmap = QPixmap(qimage) self.emit("imageReceived", qpixmap) return qimage
def load(icon_name): """ Descript. : Try to load an icon from file and return the QPixmap object """ filename = path.join(ICONS_DIR, icon_name) if not path.exists(filename): for ext in ['png', 'xpm', 'gif', 'bmp']: f = '.'.join([filename, ext]) if path.exists(f): filename = f break try: icon = QPixmap(filename) except: return QPixmap(path.join(ICONS_DIR, 'brick.png')) else: if icon.isNull(): return QPixmap(path.join(ICONS_DIR, 'brick.png')) else: return icon
def get_new_image(self): """ Descript. : """ raw_buffer, width, height = self.get_image() if raw_buffer is not None: if self.cam_type == "basler": raw_buffer = self.decoder(raw_buffer) qimage = QImage(raw_buffer, width, height, width * 3, QImage.Format_RGB888) else: qimage = QImage(raw_buffer, width, height, QImage.Format_RGB888) if self.cam_mirror is not None: qimage = qimage.mirrored(self.cam_mirror[0], self.cam_mirror[1]) qpixmap = QPixmap(qimage) self.emit("imageReceived", qpixmap) return qimage
class Qt4_VideoMockup(GenericVideoDevice): """ Descript. : """ def __init__(self, name): """ Descript. : """ GenericVideoDevice.__init__(self, name) self.force_update = None self.image_type = None self.image = None def init(self): """ Descript. : """ current_path = os.path.dirname(os.path.abspath(__file__)).split(os.sep) current_path = os.path.join(*current_path[1:-1]) image_path = os.path.join("/", current_path, "ExampleFiles/fakeimg.jpg") self.image = QPixmap(image_path) self.image_dimensions = (self.image.width(), self.image.height()) self.setIsReady(True) GenericVideoDevice.init(self) def get_image_dimensions(self): return self.image_dimensions def get_new_image(self): self.emit("imageReceived", self.image) def save_snapshot(self, filename, image_type='PNG'): qimage = QImage(self.image) qimage.save(filename, image_type) def get_snapshot(self, bw=None, return_as_array=None): qimage = QImage(self.image) if return_as_array: qimage = qimage.convertToFormat(4) ptr = qimage.bits() ptr.setsize(qimage.byteCount()) image_array = np.array(ptr).reshape(qimage.height(), qimage.width(), 4) if bw: return np.dot(image_array[..., :3], [0.299, 0.587, 0.144]) else: return image_array else: if bw: return qimage.convertToFormat(QImage.Format_Mono) else: return qimage def get_contrast(self): return 34 def set_contrast(self, contrast_value): return def get_brightness(self): return 54 def set_brightness(self, brightness_value): return def get_gain(self): return 32 def set_gain(self, gain_value): return def get_gamma(self): return 22 def set_gamma(self, gamma_value): return def get_exposure_time(self): return 0.23 def get_video_live(self): return True
class Qt4_VideoMockup(GenericVideoDevice): """ Descript. : """ def __init__(self, name): """ Descript. : """ GenericVideoDevice.__init__(self, name) self.force_update = None self.image_type = None self.image = None def init(self): """ Descript. : """ current_path = os.path.dirname(os.path.abspath(__file__)).split(os.sep) current_path = os.path.join(*current_path[1:-1]) image_path = "/" + current_path + "/tests/fakeimg.jpg" self.image = QPixmap(image_path) self.image_dimensions = (self.image.width(), self.image.height()) self.setIsReady(True) GenericVideoDevice.init(self) def get_image_dimensions(self): return self.image_dimensions def get_new_image(self): self.emit("imageReceived", self.image) def save_snapshot(self, filename, image_type='PNG'): qimage = QImage(self.image) qimage.save(filename, image_type) def get_snapshot(self, bw=None, return_as_array=None): qimage = QImage(self.image) if return_as_array: qimage = qimage.convertToFormat(4) ptr = qimage.bits() ptr.setsize(qimage.byteCount()) image_array = np.array(ptr).reshape(qimage.height(), qimage.width(), 4) if bw: return np.dot(image_array[...,:3], [0.299, 0.587, 0.144]) else: return image_array else: if bw: return qimage.convertToFormat(QImage.Format_Mono) else: return qimage def get_contrast(self): return 34 def set_contrast(self, contrast_value): return def get_brightness(self): return 54 def set_brightness(self, brightness_value): return def get_gain(self): return 32 def set_gain(self, gain_value): return def get_gamma(self): return 22 def set_gamma(self, gamma_value): return def get_exposure_time(self): return 0.23 def get_video_live(self): return True