45 lines
1.2 KiB
Python
45 lines
1.2 KiB
Python
import ch.psi.pshell.imaging.ImageBuffer as ImageBuffer
|
|
import java.math.BigInteger as BigInteger
|
|
import org.python.core.PyLong as PyLong
|
|
import org.python.core.PyFloat as PyFloat
|
|
import json
|
|
import traceback
|
|
import datetime
|
|
|
|
|
|
if get_exec_pars().source == CommandSource.ui:
|
|
camera_name = "SARBD02-DSCR050" # "SLG-LCAM-C041_sp"
|
|
shared = True
|
|
images = 1
|
|
interval = -1
|
|
roi = "" #"[540, 200, 430,100]"
|
|
else:
|
|
camera_name = args[0]
|
|
shared = args[1].lower() == "true"
|
|
images = int(args[2])
|
|
interval = int(args[3])
|
|
roi = args[4]
|
|
|
|
run("Tools/CameraTools")
|
|
set_exec_pars(name="camera_snapshot")
|
|
|
|
|
|
cam_server.start(camera_name + "_sp1" if shared else camera_name, shared)
|
|
|
|
if roi is not None and len(roi.strip())>0:
|
|
roi = json.loads(roi)
|
|
cam_server.setRoi(roi[0], roi[2], roi[1], roi[3])
|
|
while True:
|
|
cam_server.waitNext(10000)
|
|
r = json.loads(cam_server.stream.take()["processing_parameters"])
|
|
if roi == r["image_region_of_interest"]:
|
|
break;
|
|
else:
|
|
cam_server.waitNext(10000)
|
|
|
|
save_camera_data(cam_server, camera_name, shared, images, interval, parallel=True, pause=True)
|
|
|
|
cam_server.stop()
|
|
|
|
data_file = get_exec_pars().path
|
|
set_return(data_file) |