def main(): args = configureArguments() configureLogging(args.log, 'window_input.log') returnCode = 9 sshClient = None name = '' email = '' try: stdscr = initCurses() sshClient = MultipleSSHClient(args.sshHost, args.sshUser, args.sshPassword) while not name or not email: (name, email) = drawInputWindow(stdscr) img = getUserPicture(int(args.outputWidth)) savePicture(sshClient, img, name, email, args.tempLocalFolder, args.remoteFolder) # drawThanksWindow(stdscr) except KeyboardInterrupt: returnCode = 0 except paramiko.SSHException: logging.error('Error when connecting to one or more SSH servers.') finally: if sshClient is not None: sshClient.close() cv2.destroyAllWindows() destroyCurses() sys.exit(returnCode)
def main(): args = configureArguments() configureLogging(args.log) logging.info("Starting web crawler") subjectsQueue = Queue.Queue() newSubjectHandler = NewSubjectDetectedEventHandler() try: logging.debug('Creating custom event handler...') handler = FileCreatedEventHandler(subjectsQueue) observer = Observer() observer.schedule(handler, args.newSubjectsFolder) observer.start() logging.debug('Starting notifier infinite loop...') while True: if not subjectsQueue.empty(): newSubjectHandler.newSubject(subjectsQueue.get()) time.sleep(1) except KeyboardInterrupt: observer.stop() observer.join() logging.info('END web crawler gracefully.')
def main(): args = configureArguments() configureLogging(args.log) #faceSize = (100, 100) faceSize = None logging.debug('Creating face recognizer...') #fr = cv2.createFisherFaceRecognizer() fr = cv2.createLBPHFaceRecognizer() #modelFile = '/home/juan/ciberpunks/faces/lpbFaceModel' #if os.path.isfile(modelFile): # fr.load(modelFile) # logging.info('Loaded saved model state.') #else: trainPaths = [ '/home/juan/ciberpunks/faces/at&t_database', '/home/juan/ciberpunks/faces/lfw2', '/home/juan/ciberpunks/faces/prestico'] [images, labels, subjects] = readImages(trainPaths, faceSize) logging.debug('Training face recognizer...') fr.train(images, labels) #fr.save(modelFile) #logging.info('Saved a trained model state.') logging.debug('Staring face recognition...') #recognizePictureCandidates(fr, subjects, faceSize) recognizeVideo(fr, args.videoFileName, subjects, args.haarFolder)
def main(): args = configureArguments() configureLogging(args.log) logging.info("Starting video delay...") picWin = "Sonria..." try: camera = cv2.VideoCapture(0) outputSize = calculateScaledSize(args.outputWidth, capture=camera) if not camera.isOpened(): logging.error("Arrrgggghhhh! Camera is not open...") return None cv2.namedWindow(picWin) if args.delay == 0: readOk = True while cv2.waitKey(1) == -1: readOk, image = camera.read() cv2.imshow(picWin, image) cv2.waitKey(1) else: fps = camera.get(cv2.cv.CV_CAP_PROP_FPS) logging.debug("Detected {0} FPS".format(fps)) fps = fps if fps > 0 else 30 logging.debug("Using {0} FPS".format(fps)) frameBufferSize = fps * args.delay framesBuffer = [None] * frameBufferSize logging.debug("Start reading and buffering {0} frames...".format(frameBufferSize)) i = 0 while cv2.waitKey(1) and i < frameBufferSize: readOk, image = camera.read() framesBuffer[i] = image i += 1 logging.debug("Start display of buffered images and queue new ones...") while True: for i in xrange(frameBufferSize): readOk, image = camera.read() delayedImage = framesBuffer[i] framesBuffer[i] = image outputImage = delayedImage # cv2.resize(delayedImage, outputSize) cv2.imshow(picWin, outputImage) cv2.waitKey(1) except KeyboardInterrupt: pass logging.debug("Trying to exit app gracefuly.") camera.release() cv2.destroyWindow(picWin) logging.info("Exit video delay OK.")
def main(): args = configureArguments() configureLogging(args.log) windowTitle = "Test draw app" cv2.namedWindow(windowTitle) haarFolder = "/home/juan/ciberpunks/opencv-2.4.11/data/haarcascades" faceCascade = loadCascadeClassifier(haarFolder + "/haarcascade_frontalface_alt2.xml") leftEyeCascade = loadCascadeClassifier(haarFolder + "/haarcascade_lefteye_2splits.xml") rightEyeCascade = loadCascadeClassifier(haarFolder + "/haarcascade_righteye_2splits.xml") mouthCascade = loadCascadeClassifier(haarFolder + '/haarcascade_mcs_mouth.xml') color = (120,120,130) thickness = 2 width = 600 image = cv2.imread('/home/juan/ciberpunks/faces/news/[email protected]') image = cv2.resize(image, calculateScaledSize(width, image=image)) if image is None: print 'ERROR: no se pudo leer la imagen.' return minFaceSize = (10, 10) minEyeSize = (5, 5) faces = detectFaces(image, faceCascade, leftEyeCascade, rightEyeCascade, minFaceSize, minEyeSize) for (x, y, w, h, leftEyes, rightEyes) in faces: center = calculateCenter((x,y,w,h)) cv2.line(image, (x,0), (x, width), color, 2) cv2.line(image, (x+w,0), (x+w, width), color, 2) cv2.line(image, (0,y), (width, y), color, 2) cv2.line(image, (0,y+h), (width, y+h), color, 2) drawLabel("Juan Gabriel", image, (x, y+20)) cv2.imshow(windowTitle, image) cv2.waitKey(6000) cv2.destroyWindow(windowTitle)