def configure_camera(camera_client: CameraClient): camera_client.configure_preview(resolution=resolution, display_out=1) camera_client.set_preview_state(SET_STATE_ON) # rtsp stream address rtsp_stream_addr = str(camera_client.preview_url) print("rtsp stream is :: " + rtsp_stream_addr) # turn analytics on camera_client.set_analytics_state(SET_STATE_ON) print(camera_client.vam_url) # configure overlay and start it camera_client.configure_overlay(overlay_config) camera_client.set_overlay_state(SET_STATE_ON)
def main(protocol=None): #global camera_client print("\nPython %s\n" % sys.version) parser = argparse.ArgumentParser() parser.add_argument('--ip', help='ip address of the camera', default='127.0.0.1') parser.add_argument('--username', help='username of the camera', default='admin') parser.add_argument('--password', help='password of the camera', default='admin') parser.add_argument('--iteration', help='Number of iterations', type=int, default=1) parser.add_argument('--runtime', help='runtime for each iteration', type=int, default=60) args = parser.parse_args() ip_addr = args.ip username = args.username password = args.password iter = args.iteration runtime = args.runtime with CameraClient.connect(ip_address=ip_addr, username=username, password=password) as camera_client: print(camera_client.configure_preview(resolution="1080P", display_out=1)) camera_client.set_preview_state("on") print(camera_client.preview_url) for x in range(0, iter): print("-------------------- Iteration {} - Start ---------------------".format(x+1)) camera_client.set_analytics_state("on") print(camera_client.vam_url) print(" ANALYTICS STATE IS ON--") camera_client.configure_overlay("inference") print(" Overlay is configured--") camera_client.set_overlay_state("on") print(" OVERLAY STATE IS ON--") try: with camera_client.get_inferences() as results: t = threading.Thread(target=print_inferences, args=(results,)) print(" BEFORE THREAD--") t.start() print(" AFTER START THREAD--sleep {}", format(runtime)) time.sleep(runtime) except: print("Stopping") print(" STOPPING OVERLAY--") camera_client.set_overlay_state("off") print(" STOPPING ANALYTICS--") camera_client.set_analytics_state("off") subprocess.run(["cp", "vam_model_folder/va-snpe-engine-library_config.json", "vam_model_folder/va-snpe-engine-library_config_temp.json"]) subprocess.run(["cp", "vam_model_folder/va-snpe-engine-library_config_1.json", "vam_model_folder/va-snpe-engine-library_config.json"]) subprocess.run(["cp", "vam_model_folder/va-snpe-engine-library_config_temp.json", "vam_model_folder/va-snpe-engine-library_config_1.json"]) print(" OVERLAY AND ANALYTICS STATE IS OFF--") t.join() print("-------------------- Iteration {} - End --------------------".format(x+1)) camera_client.set_preview_state("off")
def print_inferences(camera_client: CameraClient): with camera_client.get_inferences() as results: last_time = time.time() for result in results: if time.time() - last_time > delay_interval_secs: for inf_obj in result.objects: inference = Inference(inf_obj) if cap_min_confidence < inference.confidence < cap_max_confidence: capture_image(camera_client) print(inference.to_json()) last_time = time.time()
def main(): print("\nPython %s\n" % sys.version) with CameraClient.connect(ip_address=ip_addr, username=username, password=password) as camera_client: try: configure_camera(camera_client) capture_image(camera_client) print_inferences(camera_client) except KeyboardInterrupt: print("Stopping") finally: camera_client.set_analytics_state(SET_STATE_OFF) camera_client.set_preview_state(SET_STATE_OFF)
def main(protocol=None): print("\nPython %s\n" % sys.version) parser = argparse.ArgumentParser() parser.add_argument('--ip', help='ip address of the camera', default='127.0.0.1') parser.add_argument('--username', help='username of the camera', default='admin') parser.add_argument('--password', help='password of the camera', default='admin') args = parser.parse_args() ip_addr = args.ip username = args.username password = args.password with CameraClient.connect(ip_address=ip_addr, username=username, password=password) as camera_client: print('supported resolutions: ' + str(camera_client.resolutions)) print('supported encodetype: ' + str(camera_client.encodetype)) print('supported bitrates: ' + str(camera_client.bitrates)) print('supported framerates: ' + str(camera_client.framerates)) print( camera_client.configure_preview(resolution="1080P", display_out=1)) camera_client.set_preview_state("on") print(camera_client.preview_url) print("Running for 60 seconds") time.sleep(60) camera_client.set_preview_state("off") print("Changing preview resolution to 4K and encode type to AVC") print( camera_client.configure_preview(resolution="4K", encode="AVC/H.264")) camera_client.set_preview_state("on") print("Running for 60 seconds") time.sleep(60) camera_client.set_preview_state("off") camera_client.logout()
def main(protocol=None): print("\nPython %s\n" % sys.version) parser = argparse.ArgumentParser() parser.add_argument('--ip', help='ip address of the camera', default='127.0.0.1') parser.add_argument('--username', help='username of the camera', default='admin') parser.add_argument('--password', help='password of the camera', default='admin') args = parser.parse_args() ip_addr = args.ip username = args.username password = args.password with CameraClient.connect(ip_address=ip_addr, username=username, password=password) as camera_client: print( camera_client.configure_preview(resolution="1080P", display_out=1)) camera_client.set_preview_state("on") print(camera_client.preview_url) if not camera_client.captureimage(): print("captureimage failed") camera_client.set_analytics_state("on") print(camera_client.vam_url) camera_client.configure_overlay("inference") camera_client.set_overlay_state("on") try: with camera_client.get_inferences() as results: print_inferences(results, camera_client) except: print("Stopping")
def main(protocol=None): print("\nPython %s\n" % sys.version) parser = argparse.ArgumentParser() parser.add_argument('--ip', help='ip address of the camera', default='127.0.0.1') parser.add_argument('--username', help='username of the camera', default='admin') parser.add_argument('--password', help='password of the camera', default='admin') args = parser.parse_args() ip_addr = args.ip username = args.username password = args.password with CameraClient.connect(ip_address=ip_addr, username=username, password=password) as camera_client: print('supported resolutions: ' + str(camera_client.resolutions)) print('supported encodetype: ' + str(camera_client.encodetype)) print('supported bitrates: ' + str(camera_client.bitrates)) print('supported framerates: ' + str(camera_client.framerates)) print( camera_client.configure_preview(resolution="1080P", display_out=1)) camera_client.set_preview_state("on") print("Running for 30 seconds") time.sleep(30) print("Taking snapshot") if not camera_client.captureimage(): print("captureimage failed") print("Running for 30 seconds") time.sleep(30) camera_client.set_preview_state("off") camera_client.logout()
def capture_image(camera_client: CameraClient): if not should_capture_images: print("capture image skipped") return if not camera_client.captureimage(): print("capture image failed")