Spaces:
Runtime error
Runtime error
jhj0517
commited on
Commit
·
64b615e
1
Parent(s):
bc096a1
Add arg parser
Browse files
app.py
CHANGED
|
@@ -1,25 +1,28 @@
|
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
from gradio_image_prompter import ImagePrompter
|
| 3 |
-
from gradio_image_prompter.image_prompter import PromptData
|
| 4 |
from typing import List, Dict, Optional, Union
|
| 5 |
import os
|
| 6 |
import yaml
|
| 7 |
|
| 8 |
from modules.sam_inference import SamInference
|
| 9 |
from modules.model_downloader import DEFAULT_MODEL_TYPE
|
| 10 |
-
from modules.paths import (OUTPUT_DIR, OUTPUT_PSD_DIR, SAM2_CONFIGS_DIR, TEMP_DIR, OUTPUT_FILTER_DIR)
|
| 11 |
from modules.utils import open_folder
|
| 12 |
from modules.constants import (AUTOMATIC_MODE, BOX_PROMPT_MODE, PIXELIZE_FILTER, COLOR_FILTER, DEFAULT_COLOR,
|
| 13 |
DEFAULT_PIXEL_SIZE, SOUND_FILE_EXT, IMAGE_FILE_EXT, VIDEO_FILE_EXT)
|
| 14 |
-
from modules.video_utils import
|
| 15 |
|
| 16 |
|
| 17 |
class App:
|
| 18 |
def __init__(self,
|
| 19 |
-
args
|
| 20 |
self.demo = gr.Blocks()
|
| 21 |
self.args = args
|
| 22 |
-
self.sam_inf = SamInference(
|
|
|
|
|
|
|
|
|
|
| 23 |
self.image_modes = [AUTOMATIC_MODE, BOX_PROMPT_MODE]
|
| 24 |
self.default_mode = BOX_PROMPT_MODE
|
| 25 |
self.filter_modes = [PIXELIZE_FILTER, COLOR_FILTER]
|
|
@@ -191,9 +194,23 @@ class App:
|
|
| 191 |
outputs=[vid_output, output_file])
|
| 192 |
btn_open_folder.click(fn=lambda: open_folder(OUTPUT_FILTER_DIR), inputs=None, outputs=None)
|
| 193 |
|
| 194 |
-
self.demo.queue().launch(
|
|
|
|
|
|
|
|
|
|
| 195 |
|
| 196 |
|
| 197 |
if __name__ == "__main__":
|
| 198 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 199 |
demo.launch()
|
|
|
|
| 1 |
+
import argparse
|
| 2 |
import gradio as gr
|
| 3 |
from gradio_image_prompter import ImagePrompter
|
|
|
|
| 4 |
from typing import List, Dict, Optional, Union
|
| 5 |
import os
|
| 6 |
import yaml
|
| 7 |
|
| 8 |
from modules.sam_inference import SamInference
|
| 9 |
from modules.model_downloader import DEFAULT_MODEL_TYPE
|
| 10 |
+
from modules.paths import (OUTPUT_DIR, OUTPUT_PSD_DIR, SAM2_CONFIGS_DIR, TEMP_DIR, OUTPUT_FILTER_DIR, MODELS_DIR)
|
| 11 |
from modules.utils import open_folder
|
| 12 |
from modules.constants import (AUTOMATIC_MODE, BOX_PROMPT_MODE, PIXELIZE_FILTER, COLOR_FILTER, DEFAULT_COLOR,
|
| 13 |
DEFAULT_PIXEL_SIZE, SOUND_FILE_EXT, IMAGE_FILE_EXT, VIDEO_FILE_EXT)
|
| 14 |
+
from modules.video_utils import get_frames_from_dir
|
| 15 |
|
| 16 |
|
| 17 |
class App:
|
| 18 |
def __init__(self,
|
| 19 |
+
args: argparse.Namespace):
|
| 20 |
self.demo = gr.Blocks()
|
| 21 |
self.args = args
|
| 22 |
+
self.sam_inf = SamInference(
|
| 23 |
+
model_dir=self.args.model_dir,
|
| 24 |
+
output_dir=self.args.output_dir
|
| 25 |
+
)
|
| 26 |
self.image_modes = [AUTOMATIC_MODE, BOX_PROMPT_MODE]
|
| 27 |
self.default_mode = BOX_PROMPT_MODE
|
| 28 |
self.filter_modes = [PIXELIZE_FILTER, COLOR_FILTER]
|
|
|
|
| 194 |
outputs=[vid_output, output_file])
|
| 195 |
btn_open_folder.click(fn=lambda: open_folder(OUTPUT_FILTER_DIR), inputs=None, outputs=None)
|
| 196 |
|
| 197 |
+
self.demo.queue().launch(
|
| 198 |
+
inbrowser=self.args.inbrowser,
|
| 199 |
+
share=self.args.share
|
| 200 |
+
)
|
| 201 |
|
| 202 |
|
| 203 |
if __name__ == "__main__":
|
| 204 |
+
parser = argparse.ArgumentParser()
|
| 205 |
+
parser.add_argument('--model_dir', type=str, default=MODELS_DIR,
|
| 206 |
+
help='Model directory for segment-anything-2')
|
| 207 |
+
parser.add_argument('--output_dir', type=str, default=OUTPUT_DIR,
|
| 208 |
+
help='Output directory for the results')
|
| 209 |
+
parser.add_argument('--inbrowser', type=bool, default=True, nargs='?', const=True,
|
| 210 |
+
help='Whether to automatically start Gradio app or not')
|
| 211 |
+
parser.add_argument('--share', type=bool, default=True, nargs='?', const=False,
|
| 212 |
+
help='Whether to create a public link for the app or not')
|
| 213 |
+
args = parser.parse_args()
|
| 214 |
+
|
| 215 |
+
demo = App(args=args)
|
| 216 |
demo.launch()
|