def get_grip_CIFAR_gui(cfg_path): from ketisdk.gui.gui import GUI, GuiModule module = GuiModule(GripCifar10DMaker, name='Grip CIFAR', cfg_path=cfg_path) GUI(title='MAKE GRIP CIFAR DATA', modules=[ module, ])
def demo_module_combine(): class ImRot(DetGuiObj): def gui_process_single(self, rgbd, method_ind=0, filename='unnamed', disp_mode='rgb'): if method_ind == 0: # out = rotate(rgbd.rgb,angle=45) rotation_matrix = cv2.getRotationMatrix2D( (rgbd.width / 2, rgbd.height / 2), 45, 1) out = cv2.warpAffine(rgbd.rgb, rotation_matrix, (rgbd.width, rgbd.height)) # out = rotate(rgbd.rgb, angle=45, reshape=False, order=3) ret = {'im': out} return ret class ImScale(DetGuiObj): def gui_process_single(self, rgbd, method_ind=0, filename='unnamed', disp_mode='rgb'): if method_ind == 0: out = cv2.resize(rgbd.rgb, dsize=(200, 200), interpolation=cv2.INTER_CUBIC) ret = {'im': out} return ret class ImGray(DetGuiObj): def gui_process_single(self, rgbd, method_ind=0, filename='unnamed', disp_mode='rgb'): if method_ind == 0: out = cv2.cvtColor(rgbd.rgb, cv2.COLOR_RGB2GRAY) ret = {'im': out} return ret # Define modules rot_module = GuiModule(ImRot, name='Im Rotator', short_name='Rot') scale_module = GuiModule(ImScale, name='Im Scale', short_name='Scl') gray_module = GuiModule(ImGray, name='Im Grayer', short_name='Gry') # # define input sources # scale_module.input_sources=[rot_module.short_name, gray_module.short_name] # gray_module.input_sources=[scale_module.short_name, rot_module.short_name] # define processes # process0 = GuiProcess(gui_modules=[rot_module, scale_module],name='rot->scale', ask_next=False) # process1 = GuiProcess(gui_modules=[rot_module, scale_module, gray_module],name='rot->scale->gray') GUI( title='Image Process Moudle Combine', modules=[rot_module, scale_module, gray_module] + get_realsense_modules(), # processes=[process0,process1] )
def demo_grip_3finger(): from kpick.processing.grip_3fingers import ThreeFingerGraspGui from ketisdk.gui.gui import GUI, GuiModule from ketisdk.sensor.realsense_sensor import get_realsense_modules from ketisdk.sensor.openni_sensor import get_openni_sensor_modules detect_module = GuiModule(ThreeFingerGraspGui, name='3finger gripper', cfg_path='configs/grip_3finger.cfg') GUI(title='3 Finger Grasp Detection', modules=[detect_module]+get_realsense_modules()+get_openni_sensor_modules())
def demo_grip_gui(): from kpick.processing.grip_detection_v8 import GripGuiDetector from ketisdk.sensor.realsense_sensor import get_realsense_modules from ketisdk.sensor.openni_sensor import get_openni_sensor_modules from ketisdk.gui.gui import GUI, GuiModule cfg_path = 'configs/pick/grip_net.cfg' detect_module = GuiModule(GripGuiDetector, type='grip_detector', name='Grip Detector', category='detector', cfg_path=cfg_path, num_method=2) GUI(title='Grip Detection GUI', modules=[detect_module] + get_realsense_modules()+get_openni_sensor_modules(), )
def demo_client_gui(host='localhost',port=8888): class ClientGui(DetGuiObj, ClientThread): def __init__(self, args=None, cfg_path=None): DetGuiObj.__init__(self, args=args, cfg_path=cfg_path) ClientThread.__init__(self, host=self.args.host, port=self.args.port) def gui_process_single(self, rgbd, method_ind=0, filename='unnamed', disp_mode='rgb'): return self.send_and_get_return({'rgb': rgbd.rgb, 'depth': rgbd.depth, 'bbox': rgbd.workspace.bbox, 'ws_pts': rgbd.workspace.pts, 'disp_mode': disp_mode})['im'] args = CFG() args.host, args.port = host, port client_module = GuiModule(ClientGui, type='client_gui', name='Client GUI', category='detector', run_thread=True, args=args) GUI(title='Client Gui', modules=[client_module,]+get_realsense_modules())
def demo_suction_gui(cfg_path): from ketisdk.vision.detector.pick.suction.suction_detection import SuctionGuiDetector from ketisdk.sensor.realsense_sensor import get_realsense_modules from ketisdk.gui.gui import GUI, GuiModule detect_module = GuiModule(SuctionGuiDetector, type='suction_detector', name='Suction Detector', category='detector', cfg_path=cfg_path, num_method=6) GUI( title='Grip Detection GUI', modules=[ detect_module, ] + get_realsense_modules(), )
def demo_suction_gui(): from ketisdk.vision.detector.pick.suction_detection import SuctionGuiDetector from ketisdk.sensor.realsense_sensor import get_realsense_modules from ketisdk.sensor.openni_sensor import get_openni_sensor_modules from ketisdk.gui.gui import GUI, GuiModule from ketisdk.vision.detector.pick.grip_detection import GripGuiDetector cfg_path = 'configs/pick/suction_net.cfg' detect_module = GuiModule(SuctionGuiDetector, type='suction_detector', name='Suction Detector', category='detector', cfg_path=cfg_path, num_method=6) cfg_path = 'configs/pick/grip_net.cfg' detect_module1 = GuiModule(GripGuiDetector, type='grip_detector', name='Grip Detector', category='detector', cfg_path=cfg_path, num_method=6) GUI(title='Grip Detection GUI', modules=[detect_module,detect_module1] + get_realsense_modules() + get_openni_sensor_modules(), )
def test_mmdet_gui(cfg_file, ckpt, run_realsense=False): # detection module args = CFG() setattr(args, 'cfg_file', cfg_file) setattr(args, 'ckpt', ckpt) from ketisdk.gui.gui import GUI, GuiModule module = GuiModule(MmdetDetectorGuiObj, type='mmdetector', category='detector', args=args) # realsense module realsense_modules = [] if run_realsense: from ketisdk.vision.sensor.realsense_sensor import get_realsense_modules realsense_modules += get_realsense_modules() # GUI(title='Mmdetetion GUI', modules=[ module, ] + realsense_modules)
def run(): commands = [ 'demo_gui', 'demo_vision', 'demo_robot', 'demo_calib', 'demo_workcell' ] cmd_dict = ProcUtils().get_command_keys(commands) key = input('select action: ') input_command = cmd_dict[key] if input_command == 'demo_gui': from ketisdk.gui.gui import GUI GUI() return if input_command == 'demo_vision': from ketisdk.vision.samples.select_sample import run if input_command == 'demo_robot': from ketisdk.robot.samples.select_sample import run if input_command == 'demo_calib': from ketisdk.calib.samples.select_sample import run if input_command == 'demo_workcell': from ketisdk.workcell.samples.select_sample import run run()
def run(): GUI(title='Realsense', modules=get_realsense_modules() + get_openni_sensor_modules())
def run_realsense_gui(): GUI(title='Realsense', modules=get_realsense_modules())
try: config = rs.config() config.enable_device(detected_serial) valid_serials.append(detected_serial) except: pass print('{} {} realsense detected: {}'.format('+'*10, len(valid_serials), valid_serials)) return valid_serials def get_realsense_modules(): RS_serials = get_valid_realsenses() RS_modules = [] for j, serial in enumerate(RS_serials): RS_modules.append(GuiModule(RSSensor, type='realsense', name='Realsense%d' % j, short_name='RS%d'%j, category='vision_sensor', serial=serial)) return RS_modules def run_realsense_gui(): GUI(title='Realsense', modules=get_realsense_modules()) if __name__ == '__main__': # cfg_path = 'configs/sensor/realsense.cfg' # # cfg_path = 'configs/grasp_detection/grasp_v2.cfg' # RSSensor(cfg_path=cfg_path).run() cfg_path = 'configs/sensor/realsense.cfg' GUI(modules=get_realsense_modules())