Esempio n. 1
0
    def captureImage_thread(self):
        rtn_val = ArducamSDK.Py_ArduCam_beginCaptureImage(self.handle)
        if rtn_val != 0:
            print("Error beginning capture, rtn_val = ", rtn_val)
            self.running = False
            return
        else:
            print("Capture began, rtn_val = ", rtn_val)
        while self.running:
            if self.loading:
                rtn_val = ArducamSDK.Py_ArduCam_captureImage(self.handle)
                if rtn_val > 255:
                    #                    print("Error capture image, rtn_val = ",rtn_val)
                    if rtn_val == ArducamSDK.USB_CAMERA_USB_TASK_ERROR:
                        break
            else:
                print("restarting camera...")
                #                time.sleep(1)
                ArducamSDK.Py_ArduCam_endCaptureImage(self.handle)
                self.camera_initFromFile(self.fileName, self.expconf)
                ArducamSDK.Py_ArduCam_beginCaptureImage(self.handle)
                self.loading = True

        self.running = False
        ArducamSDK.Py_ArduCam_endCaptureImage(self.handle)
Esempio n. 2
0
def captureImage_thread():
    global handle, running, ct_lock, count1

    rtn_val = ArducamSDK.Py_ArduCam_beginCaptureImage(handle)
    if rtn_val != 0:
        print "Error beginning capture, rtn_val = ", rtn_val
        running = False
        return
    else:
        print "Capture began, rtn_val = ", rtn_val

    while (running and (not rospy.is_shutdown())):
        #print "capture"
        if count1 == 0:
            if ct_lock.acquire(False):
                print "capture image", count1
                rtn_val = ArducamSDK.Py_ArduCam_captureImage(handle)
                count1 = count1 + 1
                if rtn_val != 0:
                    print "Error capture image, rtn_val = ", rtn_val
                    break
                else:
                    time.sleep(0.005)

                ct_lock.release()

            else:
                time.sleep(0.005)
        else:
            time.sleep(0.005)

    running = False
    ArducamSDK.Py_ArduCam_endCaptureImage(handle)
def rosShutdown():
    global handle
    ArducamSDK.Py_ArduCam_endCaptureImage(handle)
    rtn_val = ArducamSDK.Py_ArduCam_close(handle)
    if rtn_val == 0:
        print "device close success!"
    else:
        print "device close fail!"
Esempio n. 4
0
 def stop(self):
     self.logger.info("Stopping arducam")
     self.running = False
     ArducamSDK.Py_ArduCam_del(self.handle)
     ArducamSDK.Py_ArduCam_flush(self.handle)
     ArducamSDK.Py_ArduCam_endCaptureImage(self.handle)
     ArducamSDK.Py_ArduCam_close(self.handle)
     self.images.clear()
     self.logger.info("Arducam stopped")
Esempio n. 5
0
def captureImage_thread():
    global handle,running

    rtn_val = ArducamSDK.Py_ArduCam_beginCaptureImage(handle)
    if rtn_val != 0:
        print "Error beginning capture, rtn_val = ",rtn_val
        running = False
        return
    else:
        print "Capture began, rtn_val = ",rtn_val
    
    while running:
        #print "capture"
        rtn_val = ArducamSDK.Py_ArduCam_captureImage(handle)
        if rtn_val != 0:
            print "Error capture image, rtn_val = ",rtn_val
            break
        time.sleep(0.005)
        
    running = False
    ArducamSDK.Py_ArduCam_endCaptureImage(handle)
Esempio n. 6
0
def captureImage_thread():
    global handle, running

    rtn_val = ArducamSDK.Py_ArduCam_beginCaptureImage(handle)
    if rtn_val != 0:
        print("Error beginning capture, rtn_val = ", rtn_val)
        running = False
        return
    else:
        print("Capture began, rtn_val = ", rtn_val)

    while running:
        #print "capture"
        rtn_val = ArducamSDK.Py_ArduCam_captureImage(handle)
        if rtn_val > 255:
            print("Error capture image, rtn_val = ", rtn_val)
            if rtn_val == ArducamSDK.USB_CAMERA_USB_TASK_ERROR:
                break
        time.sleep(0.005)

    running = False
    ArducamSDK.Py_ArduCam_endCaptureImage(handle)
Esempio n. 7
0
def captureImage_thread():
    global handle, running

    rtn_val = ArducamSDK.Py_ArduCam_beginCaptureImage(handle)
    if rtn_val != 0:
        print("Failed to begin capture, return value: %s." % (rtn_val))
        running = False
        return
    else:
        print("Capture began: %s." % (rtn_val))

    while running:
        # print "capture"
        rtn_val = ArducamSDK.Py_ArduCam_captureImage(handle)
        if rtn_val > 255:
            print("Error while capturing image: %s." % (rtn_val))
            if rtn_val == ArducamSDK.USB_CAMERA_USB_TASK_ERROR:
                break
        time.sleep(0.005)

    running = False
    ArducamSDK.Py_ArduCam_endCaptureImage(handle)
Esempio n. 8
0
def captureImage_thread():
    global handle, running

    rtn_val = ArducamSDK.Py_ArduCam_beginCaptureImage(handle)
    if rtn_val != 0:
        print "Error beginning capture, rtn_val = ", rtn_val
        running = False
        return
    else:
        print "Capture began, rtn_val = ", rtn_val

    while (running and (not rospy.is_shutdown())):
        #print "capture"
        time0 = time.time()
        rtn_val = ArducamSDK.Py_ArduCam_captureImage(handle)
        time1 = time.time()
        print str(time1 - time0)
        if rtn_val != 0:
            print "Error capture image, rtn_val = ", rtn_val
            break
        time.sleep(0.005)

    running = False
    ArducamSDK.Py_ArduCam_endCaptureImage(handle)