import gradio as gr ############################## def gradio_inputs_for_MD_DLC(md_models_list, # list(MD_models_dict.keys()) dlc_models_list, # list(DLC_models_dict.keys()) ): # Input image gr_image_input = gr.inputs.Image(type="pil", label="Input Image") # Models gr_mega_model_input = gr.inputs.Dropdown(choices=md_models_list, default='md_v5a', # default option type='value', # Type of value to be returned by component. "value" returns the string of the choice selected, "index" returns the index of the choice selected. label='Select Detector model') gr_dlc_model_input = gr.inputs.Dropdown(choices=dlc_models_list, # choices default='superanimal_quadruped_dlcrnet', # default option type='value', # Type of value to be returned by component. "value" returns the string of the choice selected, "index" returns the index of the choice selected. label='Select DeepLabCut model') # Other inputs gr_dlc_only_checkbox = gr.inputs.Checkbox(False, label='Run DLClive only, directly on input image?') gr_str_labels_checkbox = gr.inputs.Checkbox(True, label='Show bodypart labels?') gr_slider_conf_bboxes = gr.inputs.Slider(0,1,.05,0.2, label='Set confidence threshold for animal detections') gr_slider_conf_keypoints = gr.inputs.Slider(0,1,.05,0.4, label='Set confidence threshold for keypoints') # Data viz gr_keypt_color = gr.ColorPicker(value ="#862db7", label="choose color for keypoint label") gr_labels_font_style = gr.inputs.Dropdown(choices=['amiko', 'animals', 'nature', 'painter', 'zen'], default='amiko', type='value', label='Select keypoint label font') gr_slider_font_size = gr.inputs.Slider(5,30,1,8, label='Set font size') gr_slider_marker_size = gr.inputs.Slider(1,20,1,9, label='Set marker size') # list of inputs return [gr_image_input, gr_mega_model_input, gr_dlc_model_input, gr_dlc_only_checkbox, gr_str_labels_checkbox, gr_slider_conf_bboxes, gr_slider_conf_keypoints, gr_labels_font_style, gr_slider_font_size, gr_keypt_color, gr_slider_marker_size] #################################################### def gradio_outputs_for_MD_DLC(): # User interface: outputs gr_image_output = gr.outputs.Image(type="pil", label="Output Image") gr_file_download = gr.File(label="Download JSON file") return [gr_image_output, gr_file_download] ############################################## # User interace: description def gradio_description_and_examples(): title = "DeepLabCut Model Zoo SuperAnimals" description = "Test the SuperAnimal models from the DeepLabCut ModelZoo Project\, and read more on arXiv: https://arxiv.org/abs/2203.07436! Simply upload an image and see how it does. Want to run on videos on the cloud or locally? See the DeepLabCut ModelZoo\." examples = [['examples/dog.jpeg', 'md_v5a', 'superanimal_quadruped_dlcrnet', False, True, 0.5, 0.00, 'amiko',9, 'red', 3]] return [title,description,examples]