From 0defae285a32e46328bf831ec4020135ad03bacc Mon Sep 17 00:00:00 2001 From: chflame163 Date: Mon, 2 Sep 2024 22:05:37 +0800 Subject: [PATCH] commit SAM2 and ObjectDetectors nodes --- README.MD | 114 ++- README_CN.MD | 112 +++ image/bbox_join_node.jpg | Bin 0 -> 60135 bytes image/object_detector_fl2_node.jpg | Bin 0 -> 51994 bytes image/object_detector_mask_node.jpg | Bin 0 -> 58136 bytes image/object_detector_yolo8_node.jpg | Bin 0 -> 65093 bytes image/object_detector_yolo_world_node.jpg | Bin 0 -> 90291 bytes image/sam2_example.jpg | Bin 0 -> 672596 bytes image/sam2_ultra_node.jpg | Bin 0 -> 129365 bytes image/sam2_video_ultra_node.jpg | Bin 0 -> 138032 bytes py/florence2_ultra.py | 8 +- py/imagefunc.py | 39 +- py/object_detector.py | 357 ++++++++ py/sam2/__init__.py | 5 + py/sam2/automatic_mask_generator.py | 434 ++++++++++ py/sam2/modeling/__init__.py | 5 + py/sam2/modeling/backbones/__init__.py | 5 + py/sam2/modeling/backbones/hieradet.py | 295 +++++++ py/sam2/modeling/backbones/image_encoder.py | 133 +++ py/sam2/modeling/backbones/utils.py | 95 ++ py/sam2/modeling/memory_attention.py | 169 ++++ py/sam2/modeling/memory_encoder.py | 181 ++++ py/sam2/modeling/position_encoding.py | 216 +++++ py/sam2/modeling/sam/__init__.py | 5 + py/sam2/modeling/sam/mask_decoder.py | 295 +++++++ py/sam2/modeling/sam/prompt_encoder.py | 182 ++++ py/sam2/modeling/sam/transformer.py | 347 ++++++++ py/sam2/modeling/sam2_base.py | 829 ++++++++++++++++++ py/sam2/modeling/sam2_utils.py | 149 ++++ py/sam2/sam2_configs/__init__.py | 5 + py/sam2/sam2_configs/sam2_hiera_b+.yaml | 116 +++ py/sam2/sam2_configs/sam2_hiera_l.yaml | 117 +++ py/sam2/sam2_configs/sam2_hiera_s.yaml | 116 +++ py/sam2/sam2_configs/sam2_hiera_t.yaml | 118 +++ py/sam2/sam2_image_predictor.py | 446 ++++++++++ py/sam2/sam2_video_predictor.py | 906 ++++++++++++++++++++ py/sam2/utils/__init__.py | 5 + py/sam2/utils/amg.py | 348 ++++++++ py/sam2/utils/misc.py | 238 +++++ py/sam2/utils/transforms.py | 106 +++ py/sam_2_ultrl.py | 628 ++++++++++++++ py/yolov8_detect.py | 17 +- pyproject.toml | 4 +- requirements.txt | 5 +- workflow/1280x720_seven_person.jpg | Bin 0 -> 253009 bytes workflow/sam2_ultra_example.json | 888 +++++++++++++++++++ workflow/sam2_video_ultra_example.json | 514 +++++++++++ 47 files changed, 8530 insertions(+), 22 deletions(-) create mode 100644 image/bbox_join_node.jpg create mode 100644 image/object_detector_fl2_node.jpg create mode 100644 image/object_detector_mask_node.jpg create mode 100644 image/object_detector_yolo8_node.jpg create mode 100644 image/object_detector_yolo_world_node.jpg create mode 100644 image/sam2_example.jpg create mode 100644 image/sam2_ultra_node.jpg create mode 100644 image/sam2_video_ultra_node.jpg create mode 100644 py/object_detector.py create mode 100644 py/sam2/__init__.py create mode 100644 py/sam2/automatic_mask_generator.py create mode 100644 py/sam2/modeling/__init__.py create mode 100644 py/sam2/modeling/backbones/__init__.py create mode 100644 py/sam2/modeling/backbones/hieradet.py create mode 100644 py/sam2/modeling/backbones/image_encoder.py create mode 100644 py/sam2/modeling/backbones/utils.py create mode 100644 py/sam2/modeling/memory_attention.py create mode 100644 py/sam2/modeling/memory_encoder.py create mode 100644 py/sam2/modeling/position_encoding.py create mode 100644 py/sam2/modeling/sam/__init__.py create mode 100644 py/sam2/modeling/sam/mask_decoder.py create mode 100644 py/sam2/modeling/sam/prompt_encoder.py create mode 100644 py/sam2/modeling/sam/transformer.py create mode 100644 py/sam2/modeling/sam2_base.py create mode 100644 py/sam2/modeling/sam2_utils.py create mode 100644 py/sam2/sam2_configs/__init__.py create mode 100644 py/sam2/sam2_configs/sam2_hiera_b+.yaml create mode 100644 py/sam2/sam2_configs/sam2_hiera_l.yaml create mode 100644 py/sam2/sam2_configs/sam2_hiera_s.yaml create mode 100644 py/sam2/sam2_configs/sam2_hiera_t.yaml create mode 100644 py/sam2/sam2_image_predictor.py create mode 100644 py/sam2/sam2_video_predictor.py create mode 100644 py/sam2/utils/__init__.py create mode 100644 py/sam2/utils/amg.py create mode 100644 py/sam2/utils/misc.py create mode 100644 py/sam2/utils/transforms.py create mode 100644 py/sam_2_ultrl.py create mode 100644 workflow/1280x720_seven_person.jpg create mode 100644 workflow/sam2_ultra_example.json create mode 100644 workflow/sam2_video_ultra_example.json diff --git a/README.MD b/README.MD index bd2d4c26..815dec27 100644 --- a/README.MD +++ b/README.MD @@ -100,10 +100,13 @@ Solution: ### Requests.exceptions.ProxyError: HTTPSConnectionPool(xxxx...) When this error has occurred, please check the network environment. - ## Update **If the dependency package error after updating, please double clicking ```repair_dependency.bat``` (for Official ComfyUI Protable) or ```repair_dependency_aki.bat``` (for ComfyUI-aki-v1.x) in the plugin folder to reinstall the dependency packages.
+* Commit [SAM2Ultra](#SAM2Ultra), [SAM2VideoUltra](#SAM2VideoUltra), [ObjectDetectorFL2](#ObjectDetectorFL2), [ObjectDetectorYOLOWorld](#ObjectDetectorYOLOWorld), [ObjectDetectorYOLO8](#ObjectDetectorYOLO8), [ObjectDetectorMask](#ObjectDetectorMask) and [BBoxJoin](#BBoxJoin) nodes. +Download models from [BaiduNetdisk](https://pan.baidu.com/s/1xaQYBA6ktxvAxm310HXweQ?pwd=auki) or [huggingface.co/Kijai/sam2-safetensors](https://huggingface.co/Kijai/sam2-safetensors/tree/main) and copy to ```ComfyUI/models/sam2``` folder, +Download models from [BaiduNetdisk](https://pan.baidu.com/s/1QpjajeTA37vEAU2OQnbDcQ?pwd=nqsk) or [GoogleDrive](https://drive.google.com/drive/folders/1nrsfq4S-yk9ewJgwrhXAoNVqIFLZ1at7?usp=sharing) and copy to ```ComfyUI/models/yolo-world``` folder. +This update introduces new dependencies, please reinstall the dependency package. * Commit [RandomGenerator](#RandomGenerator) node, Used to generate random numbers within a specified range, with outputs of int, float, and boolean, supporting batch generation of different random numbers by image batch. * Commit [EVF-SAMUltra](#EVFSAMUltra) node, it is implementation of [EVF-SAM](https://github.com/hustvl/EVF-SAM) in ComfyUI. Please download model files from [BaiduNetdisk](https://pan.baidu.com/s/1EvaxgKcCxUpMbYKzLnEx9w?pwd=69bn) or [huggingface/EVF-SAM2](https://huggingface.co/YxZhang/evf-sam2/tree/main), [huggingface/EVF-SAM](https://huggingface.co/YxZhang/evf-sam/tree/main) to ```ComfyUI/models/EVF-SAM``` folder(save the models in their respective subdirectories). Due to the introduction of new dependencies package, after the plugin upgrade, please reinstall the dependency packages. @@ -1588,6 +1591,115 @@ On the basis of SegmentAnythingUltra, the following changes have been made: * device: Set whether the VitMatte to use cuda. * max_megapixels: Set the maximum size for VitMate operations. + +### SAM2Ultra +This node is modified from [kijai/ComfyUI-segment-anything-2](https://github.com/kijai/ComfyUI-segment-anything-2). Thank to [kijai](https://github.com/kijai) for making significant contributions to the Comfyui community. +SAM2 Ultra node only support single image. If you need to process multiple images, please first convert the image batch to image list. +*Download models from [BaiduNetdisk](https://pan.baidu.com/s/1xaQYBA6ktxvAxm310HXweQ?pwd=auki) or [huggingface.co/Kijai/sam2-safetensors](https://huggingface.co/Kijai/sam2-safetensors/tree/main) and copy to ```ComfyUI/models/sam2``` folder. + +![image](image/sam2_example.jpg) + +Node Options: +![image](image/sam2_ultra_node.jpg) + +* image: The image to segment. +* bboxes: Input recognition box data. +* sam2_model: Select the SAM2 model. +* presicion: Model's persicion. can be selected from fp16, bf16, and fp32. +* bbox_select: Select the input box data. There are three options: "all" to select all, "first" to select the box with the highest confidence, and "by_index" to specify the index of the box. +* select_index: This option is valid when bbox_delect is 'by_index'. 0 is the first one. Multiple values can be entered, separated by any non numeric character, including but not limited to commas, periods, semicolons, spaces or letters, and even Chinese. +* cache_model: Whether to cache the model. After caching the model, it will save time for model loading. +* detail_method: Edge processing methods. provides VITMatte, VITMatte(local), PyMatting, GuidedFilter. If the model has been downloaded after the first use of VITMatte, you can use VITMatte (local) afterwards. +* detail_erode: Mask the erosion range inward from the edge. the larger the value, the larger the range of inward repair. +* detail_dilate: The edge of the mask expands outward. the larger the value, the wider the range of outward repair. +* black_point: Edge black sampling threshold. +* white_point: Edge white sampling threshold. +* process_detail: Set to false here will skip edge processing to save runtime. +* device: Set whether the VitMatte to use cuda. +* max_megapixels: Set the maximum size for VitMate operations. + +### SAM2VideoUltra +SAM2 Video Ultra node support processing multiple frames of images or video sequences. Please define the recognition box data in the first frame of the sequence to ensure correct recognition. + + +https://github.com/user-attachments/assets/4726b8bf-9b98-4630-8f54-cb7ed7a3d2c5 + + +Node Options: +![image](image/sam2_video_ultra_node.jpg) + +* image: The image to segment. +* bboxes: Input recognition box data. +* pre_mask: Optional input mask, which will serve as a focus range limitation and help improve recognition accuracy. +* sam2_model: Select the SAM2 model. +* presicion: Model's persicion. can be selected from fp16, bf16, and fp32. +* cache_model: Whether to cache the model. After caching the model, it will save time for model loading. +* individual_object: When set to True, it will focus on identifying a single object. When set to False, attempts will be made to generate recognition boxes for multiple objects. +* mask_preview_color: Display the color of non masked areas in the preview output. +* detail_method: Edge processing methods. Only VITMatte method can be used. +* detail_erode: Mask the erosion range inward from the edge. the larger the value, the larger the range of inward repair. +* detail_dilate: The edge of the mask expands outward. the larger the value, the wider the range of outward repair. +* black_point: Edge black sampling threshold. +* white_point: Edge white sampling threshold. +* process_detail: Set to false here will skip edge processing to save runtime. +* device: Only cuda can be used. +* max_megapixels: Set the maximum size for VitMate operations.A larger size will result in finer mask edges, but it will lead to a significant decrease in computation speed. + +### ObjectDetectorFL2 +Use the Florence2 model to identify objects in images and output recognition box data. +*Download models from [BaiduNetdisk](https://pan.baidu.com/s/1hzw9-QiU1vB8pMbBgofZIA?pwd=mfl3) and copy to ```ComfyUI/models/florence2``` folder. + +Node Options: +![image](image/object_detector_fl2_node.jpg) +* image: The image to segment. +* florence2_model: Florence2 model, it from [LoadFlorence2Model](#LoadFlorence2Model) node. +* prompt: Describe the object that needs to be identified. +* bbox_select: Select the input box data. There are three options: "all" to select all, "first" to select the box with the highest confidence, and "by_index" to specify the index of the box. +* select_index: This option is valid when bbox_delect is 'by_index'. 0 is the first one. Multiple values can be entered, separated by any non numeric character, including but not limited to commas, periods, semicolons, spaces or letters, and even Chinese. + +### ObjectDetectorYOLOWorld +Use the YOLO-World model to identify objects in images and output recognition box data. +*Download models from [BaiduNetdisk](https://pan.baidu.com/s/1QpjajeTA37vEAU2OQnbDcQ?pwd=nqsk) or [GoogleDrive](https://drive.google.com/drive/folders/1nrsfq4S-yk9ewJgwrhXAoNVqIFLZ1at7?usp=sharing) and copy to ```ComfyUI/models/yolo-world``` folder. + +Node Options: +![image](image/object_detector_yolo_world_node.jpg) +* image: The image to segment. +* confidence_threshold: The threshold of confidence. +* nms_iou_threshold: The threshold of Non-Maximum Suppression. +* prompt: Describe the object that needs to be identified. +* bbox_select: Select the input box data. There are three options: "all" to select all, "first" to select the box with the highest confidence, and "by_index" to specify the index of the box. +* select_index: This option is valid when bbox_delect is 'by_index'. 0 is the first one. Multiple values can be entered, separated by any non numeric character, including but not limited to commas, periods, semicolons, spaces or letters, and even Chinese. + +### ObjectDetectorYOLO8 +Use the YOLO-8 model to identify objects in images and output recognition box data. +*Download models from [GoogleDrive](https://drive.google.com/drive/folders/1I5TISO2G1ArSkKJu1O9b4Uvj3DVgn5d2) or [BaiduNetdisk](https://pan.baidu.com/s/1pEY6sjABQaPs6QtpK0q6XA?pwd=grqe) and copy to ```ComfyUI/models/yolo``` folder. + +Node Options: +![image](image/object_detector_yolo8_node.jpg) +* image: The image to segment. +* yolo_model: Choose the yolo model. +* bbox_select: Select the input box data. There are three options: "all" to select all, "first" to select the box with the highest confidence, and "by_index" to specify the index of the box. +* select_index: This option is valid when bbox_delect is 'by_index'. 0 is the first one. Multiple values can be entered, separated by any non numeric character, including but not limited to commas, periods, semicolons, spaces or letters, and even Chinese. + +### ObjectDetectorMask +Use mask as recognition box data. All areas surrounded by white areas on the mask will be recognized as an object. Multiple enclosed areas will be identified separately. + +Node Options: +![image](image/object_detector_mask_node.jpg) +* object_mask: The mask input. +* bbox_select: Select the input box data. There are three options: "all" to select all, "first" to select the box with the highest confidence, and "by_index" to specify the index of the box. +* select_index: This option is valid when bbox_delect is 'by_index'. 0 is the first one. Multiple values can be entered, separated by any non numeric character, including but not limited to commas, periods, semicolons, spaces or letters, and even Chinese. + +### BBoxJoin +Merge recognition box data. + +Node Options: +![image](image/bbox_join_node.jpg) +* bboxes_1: Required input. The first set of identification boxes. +* bboxes_2: Optional input. The second set of identification boxes. +* bboxes_3: Optional input. The third set of identification boxes. +* bboxes_4: Optional input. The fourth set of identification boxes. + ### EVF-SAMUltra This node is implementation of [EVF-SAM](https://github.com/hustvl/EVF-SAM) in ComfyUI. *Please download model files from [BaiduNetdisk](https://pan.baidu.com/s/1EvaxgKcCxUpMbYKzLnEx9w?pwd=69bn) or [huggingface/EVF-SAM2](https://huggingface.co/YxZhang/evf-sam2/tree/main), [huggingface/EVF-SAM](https://huggingface.co/YxZhang/evf-sam/tree/main) to ```ComfyUI/models/EVF-SAM``` folder(save the models in their respective subdirectories). diff --git a/README_CN.MD b/README_CN.MD index 22253000..4bfc7224 100644 --- a/README_CN.MD +++ b/README_CN.MD @@ -105,6 +105,10 @@ git clone https://github.com/chflame163/ComfyUI_LayerStyle.git ## 更新说明 **如果本插件更新后出现依赖包错误,请双击运行插件目录下的```install_requirements.bat```(官方便携包),或 ```install_requirements_aki.bat```(秋叶整合包) 重新安装依赖包。 +* 添加 [SAM2Ultra](#SAM2Ultra), [SAM2VideoUltra](#SAM2VideoUltra), [ObjectDetectorFL2](#ObjectDetectorFL2), [ObjectDetectorYOLOWorld](#ObjectDetectorYOLOWorld), [ObjectDetectorYOLO8](#ObjectDetectorYOLO8), [ObjectDetectorMask](#ObjectDetectorMask) 和 [BBoxJoin](#BBoxJoin)节点。 +请从[百度网盘](https://pan.baidu.com/s/1xaQYBA6ktxvAxm310HXweQ?pwd=auki) 或者 [huggingface.co/Kijai/sam2-safetensors](https://huggingface.co/Kijai/sam2-safetensors/tree/main)下载全部模型文件并复制到```ComfyUI/models/sam2```文件夹; +从 [百度网盘](https://pan.baidu.com/s/1QpjajeTA37vEAU2OQnbDcQ?pwd=nqsk) 或[GoogleDrive](https://drive.google.com/drive/folders/1nrsfq4S-yk9ewJgwrhXAoNVqIFLZ1at7?usp=sharing)下载模型文件并复制到```ComfyUI/models/yolo-world```文件夹。 +本次更新引入了新的依赖,请重新安装依赖包。 * 添加 [RandomGenerator](#RandomGenerator) 节点,用于生成指定范围内的随机数,有int,float,bool输出,支持按图片批量生成不同的随机数。 * 添加 [EVF-SAMUltra](#EVFSAMUltra) 节点,是[EVF-SAM](https://github.com/hustvl/EVF-SAM)在ComfyUI中的实现。请从[百度网盘](https://pan.baidu.com/s/1EvaxgKcCxUpMbYKzLnEx9w?pwd=69bn) 或者 [huggingface/EVF-SAM2](https://huggingface.co/YxZhang/evf-sam2/tree/main), [huggingface/EVF-SAM](https://huggingface.co/YxZhang/evf-sam/tree/main) 下载全部模型文件并复制到```ComfyUI/models/EVF-SAM```文件夹(请将模型保存在各自子目录中)。 由于引入了新的依赖,插件升级后请重新安装依赖包。 @@ -1565,6 +1569,114 @@ SegmentAnythingUltra的V2升级版,增加了VITMatte边缘处理方法。 * device: 设置是否使用cuda。 * max_megapixels: 设置vitmatte运算的最大尺寸。 +### SAM2Ultra +本节点是[kijai/ComfyUI-segment-anything-2](https://github.com/kijai/ComfyUI-segment-anything-2)的改造版本。感谢[kijai](https://github.com/kijai)为ComfyUI社区做出的巨大贡献。 +SAM2 Ultra 节点仅支持单张图片,如果需要处理多张图片,请先将image batch 转换为 image list。 +*请从[百度网盘](https://pan.baidu.com/s/1xaQYBA6ktxvAxm310HXweQ?pwd=auki) 或者 [huggingface.co/Kijai/sam2-safetensors](https://huggingface.co/Kijai/sam2-safetensors/tree/main)下载全部模型文件并复制到```ComfyUI/models/sam2```文件夹。 + +![image](image/sam2_example.jpg) + +节点选项说明: +![image](image/sam2_ultra_node.jpg) + +* image: 图片输入。 +* bboxes: 识别框数据输入。 +* sam2_model: 选择SAM2模型。 +* presicion: 模型精度,可选择fp16, bf16 和 fp32。 +* bbox_select: 选择输入的框数据。有3个选项:"all"为全部选择,"first"为选择置信度最高的框,"by_index"可以指定框的索引。 +* select_index: 当bbox_select为"by_index"时,此选项有效。0为第一张。可以输入多个值,中间用任意非数字字符分隔,包括不仅限于逗号,句号,分号,空格或者字母,甚至中文。 +* cache_model: 是否缓存模型。缓存模型后将节省模型加载的时间。 +* detail_method: 边缘处理方法。提供了VITMatte, VITMatte(local), PyMatting, GuidedFilter。如果首次使用VITMatte后模型已经下载,之后可以使用VITMatte(local)。 +* detail_erode: 遮罩边缘向内侵蚀范围。数值越大,向内修复的范围越大。 +* detail_dilate: 遮罩边缘向外扩张范围。数值越大,向外修复的范围越大。 +* black_point: 边缘黑色采样阈值。 +* white_point: 边缘黑色采样阈值。 +* process_detail: 此处设为False将跳过边缘处理以节省运行时间。 +* device: 设置是否使用cuda。 +* max_megapixels: 设置vitmatte运算的最大尺寸。 + +### SAM2VideoUltra +SAM2 Video Ultra 节点支持处理多张图片或视频序列帧。请在序列的第一帧定义识别框数据以保证正确识别。 + +https://github.com/user-attachments/assets/4726b8bf-9b98-4630-8f54-cb7ed7a3d2c5 + +节点选项说明: +![image](image/sam2_video_ultra_node.jpg) + +* image: 图片输入。 +* bboxes: 识别框数据输入。 +* pre_mask: 可选输入遮罩,这里的遮罩将作为关注范围限制,有助于提高识别准确度。 +* sam2_model: 选择SAM2模型。 +* presicion: 模型精度,可选择fp16, bf16 和 fp32。 +* cache_model: 是否缓存模型。缓存模型后将节省模型加载的时间。 +* individual_object: 当设置为 True时,将专注于识别单一对象。设置为False时,将尝试为多个对象生成识别框。 +* mask_preview_color: 在预览输出中显示非遮罩区域的颜色。 +* detail_method: 边缘处理方法。仅VITMatte可用。 +* detail_erode: 遮罩边缘向内侵蚀范围。数值越大,向内修复的范围越大。 +* detail_dilate: 遮罩边缘向外扩张范围。数值越大,向外修复的范围越大。 +* black_point: 边缘黑色采样阈值。 +* white_point: 边缘黑色采样阈值。 +* process_detail: 此处设为False将跳过边缘处理以节省运行时间。 +* device: 本节点限制仅使用cuda。 +* max_megapixels: 设置vitmatte运算的最大尺寸。更大的尺寸将获得更精细的遮罩边缘,但会导致运算速度明显下降。 + +### ObjectDetectorFL2 +使用Florence2模型识别图片中的对象,并输出识别框数据。 +*请从 [百度网盘](https://pan.baidu.com/s/1hzw9-QiU1vB8pMbBgofZIA?pwd=mfl3)下载模型文件并复制到```ComfyUI/models/florence2```文件夹。 + +节点选项说明: +![image](image/object_detector_fl2_node.jpg) + +* image: 图片输入。 +* florence2_model: Florence2模型。从[Florence2模型加载器](#LoadFlorence2Model)输入。 +* prompt: 描述需要识别的对象。 +* bbox_select: 选择输入的框数据。有3个选项:"all"为全部选择,"first"为选择置信度最高的框,"by_index"可以指定框的索引。 +* select_index: 当bbox_select为"by_index"时,此选项有效。0为第一张。可以输入多个值,中间用任意非数字字符分隔,包括不仅限于逗号,句号,分号,空格或者字母,甚至中文。 + +### ObjectDetectorYOLOWorld +使用YOLO World模型识别图片中的对象,并输出识别框数据。 +*请从 [百度网盘](https://pan.baidu.com/s/1QpjajeTA37vEAU2OQnbDcQ?pwd=nqsk) 或[GoogleDrive](https://drive.google.com/drive/folders/1nrsfq4S-yk9ewJgwrhXAoNVqIFLZ1at7?usp=sharing)下载模型文件并复制到```ComfyUI/models/yolo-world```文件夹。 + +节点选项说明: +![image](image/object_detector_yolo_world_node.jpg) + +* image: 图片输入。 +* confidence_threshold: 置信度阈值。 +* nms_iou_threshold: 非极大值抑制阈值。 +* prompt: 描述需要识别的对象。 +* bbox_select: 选择输入的框数据。有3个选项:"all"为全部选择,"first"为选择置信度最高的框,"by_index"可以指定框的索引。 +* select_index: 当bbox_select为"by_index"时,此选项有效。0为第一张。可以输入多个值,中间用任意非数字字符分隔,包括不仅限于逗号,句号,分号,空格或者字母,甚至中文。 + +### ObjectDetectorYOLO8 +使用YOLO 8模型识别图片中的对象,并输出识别框数据。 +*请在 [GoogleDrive](https://drive.google.com/drive/folders/1I5TISO2G1ArSkKJu1O9b4Uvj3DVgn5d2) 或者 [百度网盘](https://pan.baidu.com/s/1pEY6sjABQaPs6QtpK0q6XA?pwd=grqe) 下载模型文件并放到 ```ComfyUI/models/yolo``` 文件夹。 + +节点选项说明: +![image](image/object_detector_yolo8_node.jpg) +* image: 图片输入。 +* yolo_model: 选择yolo模型。 +* bbox_select: 选择输入的框数据。有3个选项:"all"为全部选择,"first"为选择置信度最高的框,"by_index"可以指定框的索引。 +* select_index: 当bbox_select为"by_index"时,此选项有效。0为第一张。可以输入多个值,中间用任意非数字字符分隔,包括不仅限于逗号,句号,分号,空格或者字母,甚至中文。 + +### ObjectDetectorMask +使用遮罩作为识别框数据。遮罩上所有被白色区域包围的区域,将被识别为一个对象。多个封闭区域将各自识别。 + +节点选项说明: +![image](image/object_detector_mask_node.jpg) +* object_mask: 遮罩输入。 +* bbox_select: 选择输入的框数据。有3个选项:"all"为全部选择,"first"为选择置信度最高的框,"by_index"可以指定框的索引。 +* select_index: 当bbox_select为"by_index"时,此选项有效。0为第一张。可以输入多个值,中间用任意非数字字符分隔,包括不仅限于逗号,句号,分号,空格或者字母,甚至中文。 + +### BBoxJoin +合并识别框数据。 + +节点选项说明: +![image](image/bbox_join_node.jpg) +* bboxes_1: 必选输入。第一组识别框。 +* bboxes_2: 可选输入。第二组识别框。 +* bboxes_3: 可选输入。第三组识别框。 +* bboxes_4: 可选输入。第四组识别框。 + ### EVF-SAMUltra 本节点是[EVF-SAM](https://github.com/hustvl/EVF-SAM)在ComfyUI中的实现。 *请从[百度网盘](https://pan.baidu.com/s/1EvaxgKcCxUpMbYKzLnEx9w?pwd=69bn) 或者 [huggingface/EVF-SAM2](https://huggingface.co/YxZhang/evf-sam2/tree/main), [huggingface/EVF-SAM](https://huggingface.co/YxZhang/evf-sam/tree/main) 下载全部模型文件并复制到```ComfyUI/models/EVF-SAM```文件夹(请将模型保存在各自子目录中)。 diff --git a/image/bbox_join_node.jpg b/image/bbox_join_node.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c80cbb11ef11e1e16a29e1832642541893b12cdd GIT binary patch literal 60135 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 T>c2~H{<{R{-?9Yw^OOGpK@rI; literal 0 HcmV?d00001 diff --git a/image/object_detector_fl2_node.jpg b/image/object_detector_fl2_node.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ceae99fd9f7752a1bef60c8ae82b4a21b1c3b482 GIT binary patch literal 51994 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%0AnC>DX(lYLRHV(ARF78P@tO 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 X722L3{vqzAcni|Z_-{Sbzk2@%rX?&^ literal 0 HcmV?d00001 diff --git a/image/object_detector_mask_node.jpg b/image/object_detector_mask_node.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e2e3fbdbf0fb04f398b700ca1337e23485cde2de GIT binary patch literal 58136 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 L18d;g-!J|jhl|4M literal 0 HcmV?d00001 diff --git a/image/object_detector_yolo_world_node.jpg b/image/object_detector_yolo_world_node.jpg new file mode 100644 index 0000000000000000000000000000000000000000..22b9f9f642903ab55918030da11493d1af43fed0 GIT binary patch literal 90291 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ℜg)4wB=b#6&wWg-AxFZ61xPEf+X-+5aNMS{Za?~ZbRk{eIwtiUr(QuPDK1EH4 zl{#l2n*@cVRt9Emw!8PdDmhjgJ0|sn#-5c~cc%woXv{_Kz7J1YouJV;|LKPa9N>aJ zJM*!cxiIYeiNj@A-&r==zw#zU0DkG66XMBq_{Dbys%&L`re)SJ`3uD?asMnQ`6J#i3`aqiPTCh; zLH_+uKY7T9Rn#qE!$k=3Pyj0V-fgTOT{79aVyRkbMIrJ)2bcX@Gq3u z;kNpco8I)UhG#i9ylKW$zffEWw72Sv1QLq_1z3J;ThLXH1`wP6LK)P=wm;Fm0Enzs zdEzc^zulQBt@ysvcuAsMdf}4y3uUN9$20v9(6JK!;93t>+2G5E4mweDchR5Tpv<_u z@22EQ!OM>!(T}39c-9jg1En39PR1vFgjR<6572zMZ0IuAk5Y_$uw6#O2c z8PiU17@Ud2!=sl;yNITGHH1-)T+5LsW znXdZ=x}b9;dLdIp!Lw5!U7gB6C|u^x1vv98OSvd$2nZ_?daiZu_Q5hf9&Qs9q-&Y` zo>a9gFo@8`h~kM|pLlYT56#xA@%N5*en)uyOG-TKp`C@%U?3JTD zhl7G8O9F9trXTId4>t@zOD{BL?loe`v+rWYRJy9H;tkfm0dF1jhW#L%b>~~P+1DqM z7obaYpKo-EUWO|AjE=d^w@n$C}gAO)8bx_ zoUKhx9E-@xyPG2OGn&2LQ*qNOC~SRg2Xg%)Hld;Kt>8+8p7hE{&Y^_TOjZ|n%0yw8 zLQmP~+AuBKa4gf5t)~+9w&d5{f%G?pZ;3Ompn)&=50{+>(HYc8Ub&N9vG9~smsZq- zP2l0t`;<7av_tTAonxVpAIVliWRu@m3qOra~0Tj4^y)={Zg?>aB4+o*cM zVqqXY-mfre<&U$7&C~9;XPBK+H98>qxV=G}&N6B^7PY`7Bp`Rsajer6{IhG7Ibi?o zgOOdf7BZpuh|<9Y^WgWAjAe8dpz~?>=?Swz*Im0u#a`t@7TiA{NZarP#ZA)zFAw)b z=WCT3$8!#K)e8pNDmWl!#s&S?BMtMri5=DOs(ciS=7H3S%@+heT#W>4*+T4-6>1;{ zzQydNIyJ#@8Kj(`>Jk&O*YZwe!}IH!eCC6TayVsR>tQehvgpay;ck#Dk16J!Z3&>mi3ngtgAxW5Sz99j3DX4vd%=PY?%ud|!pr+I+LwbTdB~SR3aZ{X+-;{H@TXwA>jsk1< zm=l=q?pgD5imhN*Zjk~nRsLG-jQ2y;m~sEoQ2yUs9IWxx81=34-Hln*_`l_v@Av;2 zw?CU_z=@IP83~?CAz_4o+PY1MkZnU#%#BV{9o+PTVUf2U6-^{^`$smr!--Bf6(=nPeJ(L z{jDf5L{Y?nr#4rCJ2%*fs$FHGl9c+ME0!H$(%OT;1^AV6o5Mv9XqrG`VWvy}37i zGgVwXRkr^RE&R__PE(-LS+RF0%-L0h!++vy|JAW9d?>nPe?BGL%$_>{Z2dPjd7P2L zIAJI$9E)dO`NeWhpJ#%4*b$!irU*J!(>sQLrv(s;Z4&DJ3$6L_sN2iE2S?&LK}=T$ zyBQ7l=1oWu9HJ@<_xCu_ZXT@OAM{`ixeSl^g>nz!@L&5k$h|*3p7e@{+p7{WcvpIP zoOTS|Dgd@sVIkD8%*gTvQFyi{XZx8#R|{(^4gB$J*71areNGi1cr)*cEdUJ80xuh< z=G_G1L#wYP~x}(bZC0T|M;KlnV2+=XuPz1!~G_<2~{}HYioO?O}5D z(mX}o=E9He&_pFHZE_zVe9j%b8%Y%uuZn2HFZ5YOgylVVah&G6rq{j^;jdS1l?UuC zR?)1cbQde8tpc3V+seO4fvrA&Vl8_xI6R_6zcU(tG}3}5TmQNGXzKD)Icpk>)T z!E*f}$o9?1s7_z?>Ci`bz~}NJpP>WJFC#m~4}6`kHSQi_z}#{CO*p6`xWg3|0C9Px zJ^BwSR8@b#$#rHF&#ShDB~+#6yp0y?!v*flIpH?YwTBPwVydtkT-!YEkvb zsy9rqA{Mm3hB0IbCIsU1EI<{_DHms(vh}mWSZ3KKX5dmBF%?zOCG~E(ehE)gII=yd z?^zmSbXE*~^QX$~s~x|3=omi&VuC;OW9Iqim2W6m+%ztgrz00Nspe z?V0}Tb@tg=cdgCcr5S4s9=|Y1$VAcUIh>TH-V4&6T@03k;1QRx)RG2qM+ANA z^b<3|jy!L9)(FZq#vuZZaS_!mhpPF8qM48RTRHmqOvVt@LCV>bs+jdJgF#P?f}Akc zZ5_G=yta2M7umD&ViguX zKY6OiLQIByj)+}bZn9HYl9VwE1sQP17pHjOA!jkL*sgw#{L8rPg^{JgfewDN#O;*` zS55np%gCgv{Py|*tZ9q5WvJN+>LE3)esIVra3qzLKUQ`e`>pO=ITWd|58Z8OS|KJZ zw@WaBp2sK}u<$!8PNv!J#tPV-P}q#FD1-=@EP5yloy&aA@TxWK^gS#Upf=>iG-lJ# zNccYgQ+ZD7-bHDQX+$TKJUiT0F|TZE{v|i|g?dq+(7TadpZYLT0iMgqDvqY}4%yf% z|EaoD!f~T}M|?aVG7R4MqIxQXj|3HQb~IIRt3SY8b-Lfvdx6{HQ{Gp&7iYZgRXE|T z72Hunc5rxnBDf!T#n9ygUegis*S9wNg_81UX8f{9kO)RVguNnd63BM??%C9tjo;zC zradczyYsYG%G)7oriw$mkS%ks%g+&wNA_nAG?ZkWTXD!!6It`QX0Kkq=*dlW+1|@1 z@3C4;WSQ{9CBWNBF$r6FAZpdf7ds2EEk6nNOjC7mr%YY&8c+0G9cH`9RbmxZG1!Jg zZ>II`XMCM99bFySo6WCQFd~M`a*ugM=uun|EwdP`tV-q{riWQIz!d6}i6(_p7Cn6P z6|U>`LB(=pZ>#PCJ>IqPkXOR(MruVX**LA&=&Ph~TL|@^bCI8(?D=?`s;x{|b6$Hv zQf#`r6BO89=F3Dl^Q!1tGWv|CiKN$A@}<<9!Y+wi%N-tY-3{U55>a{bgy>oB%>4JE zH7l|4isT-#c{emt*N=AHrGK(KMiCE}kFVgwO2#)AN=;NCyi zZf!9w1nh)(P#u9+4`xe*BnFbFTPEj27}*g!aNS<~@d!v?bxIPa0+Y4|`sC=0O)3S~ zSZ;3o=N;c1ruTk5LSG^pi7L7S6kmFc1v?(f+fKmB8b;uoV_VaDE0!6BByaQR z(!k_xS&;DXJdaC{U_;f%1QpQPOWyvA<URIqZH^z`y$s!Oi=h&qXb(-OGf#pcjY`>Dm8|6^Y&wC5=z&4 zEUY=uQLo5K;NzwuvNkI!a=W-D)8S0jD9JsBb}M^X*72FPY?yJPFu1C1R9x%3Y67yVyA93|qNhz)rdCrWz#lruw)f z45DQ??^3M!aoG)`gI>L7v| z`3L?7K<=N?8o}q&X(-I>(?OEpk7;Oy*Ili*HKib-P+`qmTDMhEGeDcp=?1>LcW@}M zdXKTI<({rimo+Ya{CUyjv+R_m~i3wbv$y5@4c zktE;xYSWi(Hf{j?a#ze48~WoO&K>7Ma*I9E%~;td z6z;O_H9rZ`$94{#j~sEyXNl^jm;(t*bxWU^?^+`qtsHb2YM(IrtmipapS&#Z>s-gx zak!ytKef>g+$F|P*3{G~bR6un&5a}=s#5_xg)j+ZCW@^^F7-}Dmr-+XnqQ{*BVISy z{SI8Q&3}zf;Oak&#qwV2wOQ>N z4vJykI}F{FmJvt1vjFaiEDFLvre>0ta$0^9R=MLdx;bn|lGqisyNg9A<^!=*UK3in zhg%f_2gC6%c!QI5P1}oS)8980w*ExZe7KQ0LhqYa^QBPRL`}_RiPMXL1`WeRZ-|`x6YG!e(qd<@ zG;@K~ft<)dN-5m8_LPi3bscB$wt`z`+ZSh*5lsaxa(kkm5 z{g#{+S4oRa9ir6{&Z%L}UoIbpus!Y%m{Qze9p$|;6(MA0rZ_ya`H>aQAE&njNFq-R z*N%=9pBVaY{XYJs8{+Sa7WyyqtzOQ)Jd-=jr#|r%Zo)Xgf6Uh+)Qiu!C#r7oMD+Rw z{F_$||8dU`gu~oJUw{X$w#YyRAq{dn2#M){BoL#o!$i=f-9i_Yi)T`Vp-&yvrcyKC z18N^^i0hhpS;EZQKOnwY+FENSTu5J^-t+MKZ;}5)q6qNt=xT1;&=WJdv6&PXS1z~LeK;YL4q}b;L;G>Ex5Zi7MuneYg__> z1gCL#cY-@4cyM=j2~G$WlGE_5b=KPZeEXg=?)h=YxMTn59@W*=^L=~1RnuzLGe=w{ zpn+-amn$mvWsR1&COmBk7z763a7#K<^`_f)@4)T)vYfI8P2tdWS!O&brx@Z~AXHfl z&0Q?7NnaBVl=(EqpIO=VP+R{fYKdNIK5{`_J~`q6deZ~Y_nPmkSkLPx+l~cKyKe=% zq3g`Xwub_rI82?V?kr?W$a~w`Cdoihn-5DKV@gaN*OAEjxwR%?ZYERm(pVafM@hdn z;{9coQ=gJ9tT}CPtRVg;OtF98{JUsXWOm#rjVC3IvYA^$*mZ_D-t~)R(OT#$tNnvn z*~!V|LNaV*Ww?Hx{CL*G1s->CPic(9Ka7u6(^`l}s$p_#*);BsRSA|mdtgUBJcCKw z(Fj!TvIWb`CfUD62E4W~@Y)6NHDb|sVqWTpjix(G++zq>u`Z5IvJ_uczF@Wd%MP| zDW!9c<+f_6UnlgVRn1dqV0&QU_5Nae>Dn%q50>)Tn1I`~H`)5c5<^moJUbcy0EqePQV>2kqDnvtv_#5CBLGKH424B)24)n}v3_p99jkesGEO ziT*d`|2;Ri{}qCm=Alms*qOrNxVd#(ZXEZZ5gOc>P0A|Do%D8Lm8K+R>=WhP!J9-kh+?Y*Z z++5@Z#vK2GZ7SnHaLde#HK;(}+n>J#4meE*Bk&25V&e&M8rX(x!r4V#{5BK3G$&49 z(Xl%YfX)&a2-2JXAS_Gv@^14gmKyPJCr8{0P#fkG`a8h$EUp;usMp-?13)C60ioI7 zHm6EE5n2HIJC|xZWXp5f+S^xB+Un$THv&2E2zsXPQRZFK&3RD7!Iwef#YLpm1IBj& z#j?S6SGv0Q=?YF?MB+NDSG3ym4Y5~Ew&s;Rr%n_VseNWgLd<`xzUF+@RhYKecfTGv z?p-?L`(i0$^sfGryu^)K9?6v#FREOS1+X>b!vPXjOwxxKm9mCFzW)3&W?ny;=uzj- zbMR{^Av{Ch%E5VjKj#Y+A{aZp{k?c}_^NsOZaQN-*J*@F;B=Twy01Es*E>gYk~O2a z0Z1m6Tr#1_CET#5@i~(9H%Zad4YZF7@YNV=Z2<=1~^@An3mIK{3tb^=i6Gs_qA0Bs=-&z~8HVbgZUs zbG$!tdJ5o4rG*!lW{k($5Y15uL(9p{9bHz+fGdlcHW5gRhd1s*wW=c8J6mnxFEh(o zO;L8g%U7(l>DuYW&-YpJTEqvzW(M?~E<#?Wd2w{>gkCOUuWJ#zR+L=!dh9Qjkg8lk z^mkx(hcWzw3cO?&E-z%rS7KRkneN9CUbult867YT)M>tHTZOz2?UVi|GtV3`X`F)Ga%R|%%MahURk z6=z6@RS8yS#;{>ObDV=lbNTrcnt1BLQvq&nK(0%Tqr3I7o1r#8Ngqf&NY-TzW}`8E z?X>&xJMhX&wMkME8OE+|pr8~ou0ZaD*DdDgNX_;&4j?>R&=0KBaEB}vReFIp>t=`< ztbQnxzWD)5(2>p0;8yKpPSxt1<+~3(dfST{n+)|Hj5A-AXlV5T*aeqs;7^UzciNrQ zbg5&tdj-^ZkLHCIC7T5Bz>_(!2359Z!lRt2|0X^u0qBbzVXS-y;Ws8T54E`?T(s%N zuj85)p!;HuM{SdKr1fOi3=QGwb)x(G#5YgBp3Un8!{)&GS6AY5HRf}qw6)3^75ZW% zZGR9Bvwr*n7L3UMgfNTclL`a7H1HH*Oe{n(n;xB-4H)T)A{Om(?>liqPSvZ%+nPs7 z85VS8SSUCz`<=_P1(riMrSpNW*O!dUAVR+7uAyZ#y2?HcgAGMKg3g-by)#MV`^1!o zAx>B{1%%PjX!Hgmdtpi>0{jB0gsuXo)38O|Pc|D3Bi{~6NoDZ~;y5^^lRcPG`O?@? zQkvI4xsyk5hK1L1hlX3i)+pt(k5jcbb)hHIwZT}iFq zGVXDXhtj>jU)GGNd}+VCCq3{NE_Xq}gPFuVbUg-tO${<(I1!(bePe?6x&0y%>(a<` z7P(pqi2FMq_U|6^zdYQ3|5hy9`FDBI9|Slq%reseb4;b)eDaQ13tZSK!X+_QjW8E5 zI!9X|58Ld2V&TL4U-audRzDy#V#3zDpTIo&%d&njnY&{uEB#a~;dcp^`Wc$Ydn#6R zqvN!CoB$WpV{i%08332i4}a`IVn6&jd78iQRN?j_64mIVCI3Io@rOVAe_yeA+ac&q z94+||LZh~;*d_KyhI0G`*4k8Fi?X=ei>5S%?kkU9#`BSH5S>}HG!k6pt;$Vxn6_Tj zzg@W*$I`F4{y@jdC$?!bb))eILHVoieOdXdme<&eve;x_uWO|Ef%SV6Jx=u|sa)*^ ze-OAjM+qb~JLPtXwwQ~c2Fy>`R?zi_wK-$UGi(yN=IEa6^?I47Y^nwpgTGfvI%`;b z!C=3KcC$(9FIeT8sdv844Wsy(_%!7zZ3*!k0x6JFr!tdn&<8Sz_>PIjED=Dlw72bZ zFiGIW00t{~@yjdfn5Dhh8%q8k-au>@_j)H?$`_j8!6N8|e&I zyT~(Eg-?4V!%uZeyVE0sz;m}D%gO?-(R^j7aRC_m$fRs#8%kc)*dpRYMyNWuUv+#5 z)z&?EOrBCD&xBOgu(}C+wZ9!2SX3ey^O1U4Z_JEj z+R_uurZ^#x%F3Noniqr4G|cQA-LBO(w$+jBY+n6R@P!*fKsA^Z(dtfmmvobqIf=1L zTR3XFc3d{(&E|IodT{QCn8U0>7(ByBXnS#KuU8R_MG@1g9_N#b0{Rg=5dKtZz*GKH zK}@|n!=82V{=6!+@dSyhrZib9nn1JhG?M059tT7;vA{*zns6JNCR zPgX*NJ@?Yme-J)CIzF46^QxSRUG*0J4C~bpc&G#?MmLYux7*1^$9MVDm2WZKfw+_C zHqHw20OoBr<)}{1WeVG+<|8D2O%#g>j>xE zyW{rB_|C^#d#f%&YsZj5dgdRBA)npu)l*lbU8qI{R^%i3m^MQVkoN{Q1NJyKu|8B8 zr-Y-#)sB{@S}cjz1QIVz zNz8_Qmgzd%818odD&{92*|n0f9TIFu3Y6TDTeL1eHoY0!4>t-w1GnwK;qJWw=%YcQt zTJ@>1F3i(WvKWP%IrLQ3Lv~((es2j5*W@vNhX$`Q;yw=QIz6-DfWxopml&D^8W-?< zZ!V{=2E;`%vItO}3D9l}Rfk8;f69r)nf$HV%r$1jSfR#6mVTxb&_hd+wY4ec*#IVt zxd1Kf%&6&67KI9Zh?^jheq*bTiK@S}`&4WisSGBmABP=M8!ul_j0&J>5IvtAXa&3M)|BPhfn&%(69$7CR-1+@ga6dtBMnmKolB{uzHGQ^|CXM->F~< zFbr2)W6D&K9Q@+=wtg|YpeP|@)}!8ll*=5b-p&M)6}VRe2aX~+Z@M=}s`@Gm4M@LmnOp`6l{ zBpaJFPphtUE-<&;gZ6QaF{OE# zpq(UPmjLBLEB=`DJOOA~OYUb19?bu)iuN*sa^>0n zmA)m6b!r%LLcC<%fq*M`Q$BY|e5MALSCFVPLS;@21GNnCLQU%0#hGhuy+VeXx;%@3 zu6q}lx$pY>{6Ko30-{_f5*1SO4ycH8zxDY=IXwK!cK2DP?4jtqnDqmEHJZD{O=vB$ z*o&(nIKK8+?gktY+ghNrVaOj|!#?5lsp17io~SC0yU*)@heGmN248QY9t+9)!m+9G zgDKmISKd{hps&WG!oT@zdmVaspyv|+>>)hX17}PNYC5074zhR`a)~> z-^XN#DjWBKT*WsK%4<91>L*bcFT&E9>@HawSEya|k5~2!`5Mb6C)GR0t3Q=54-xL{ z=-yNQ4h9AP$1JdNFPHlE6Forlye##_z+o~OWGM5uQid7HCHEnpUG$j2kH~ig@vv!U zlLEPLnBLW7AJzNI!aoREs~Ci=+2y}=k^UfvwG%QMiR=BU_TA&@>D4aPCpBb*g-@?9bsR zA^w~2|1B%5t2<~QSdtT6F4@iM6Se#W@;)*iA$eP5J7gK-nS6Hg@BEr85`0VOMJ{On zAaq5eX+?&$Q9t7Pjw4Deul?}HFt|YdgHWTfV)^?n$|?B2Nap)b+3)|=M^2W^>AF|P zukP|aG$U`@GTsHa2R|cSPv1eubIW9`#eD^@w<2qy4Bbb@4}NBTYK{U#|B~N^T9&ap z@hnP0X#K~-%E!Gr`4MA?^e7K-@>D<+6A>_)c^PTvNYf8?PUQ4V7AK5b^DP5SNbtrs zdsRnr^3xUndb{%qkSb?NqTf0Du9*GfP{xN&F*dfImOLsC%^J6OC)D8;&HjhRQ&Tei z6I($oBhm&-%8dX49uIAX5EyWol5_yG2{voBK<<*B+FBaL4X2={b5uzxzH%lu_-==< zG4zR{((bWvh`}-%&nM2vh)MGa}K;2F@+fX-H)JRNVN69pydsf~0%>go?iIoI^yN5O+mKa-hYsfz*ke z#CB_Zm}@d;G`O2kLEXOFi~kp&Jw7-14jXUo6ycP(M7QLALd5HX!1XaP8dYGEG&l%- zOs|MpCkK5vi?2SVscb4%QWoXz_TmUF;Het1@Oa84-gr9nX_`%osat3Dxu!{)wo5{Nd$poxXo%Br zAG05V8Oay|Viv*}0s_L5{{m~;V}t?BJG199O4Q(cQ9v<)+d_Gi|1haUA7(J7-M2fi zSn%8?(d)N74vMMu$q*cD`WI}S>S!jLr?2_>s7bDIERvfy!SCqx505kVhL6>+A*k-sU|VGDfX~ zL-6y+xZ7p;$K>!H|AZS1+&K<2(~~i~Nn!#YKWrsLEG!(8iEB&Ltgx+wRhe_$;ViRU zyWT-k!SGXog0=C^)tJ3C6; z6LJI????^ma4ZxPwX000U5h+s9HAL9RHMZC>6CrBXnV#^SNsc2Cxb$Jd|{akiX4VO@>=bU5@@+13YVm}D~R`dNp_I7CH|#tu(AMZu0S&R znhR+X9}2#Hj&p;wPx}TjYb{so2B=`#h_ZS8mSn)Xcwu8_0KEI@jO&QSRmldCq#N@C zJ^gvyWLSm9Rcs!A`(S?iuzO&xDPdz-0(T!($kcJt-rNik%<&+?KtJS}&5b1Z{km$M zD@|cRur4D6cWm)+Dy}wae2Q!r#_w)otD1~`B@}@}ja1%9@qPBtG1O5AHX3-6sMto} zpCIQYA%MzbjJNGvVF$5d89sI#?oPkKT1iD=!q04dOy3U-x0g)%%lMiO-;Gv;UbW=ND-?M|`%L z=bDQS<{2?1dwV}E_zoB;^UP|d-t=}31ho!yCEN7Y)L@I?dgd%uu>ocRZ;zNdY|65` zkGkI$Vy@emXJ2Y-`H$;rSb?(-`<+;jM{9?KzV476-qt63Xo35bUF8&5^YmpQge3xT zvqa@Yz8H&TQ}*Rah%_3Ndi!fI@Dggpj8xOj3nV}4=NGkN$Ja*Fl-riMBMOASWl0z( zG^GeS<6<=xL3gMQT1&4~nO4qdWCWyY=&TQO4sXov^XHy;d*$x-IOA(~lH%3^fa8pHUD6PPD0Orr2LO+ zdhnJRAJ#VqNlV{HdwnEB0Z~|C9y_3XXRB=qoDb zL#{18l^116%h5k40&uH(-$;D4TTA7EurH94saXC~{UO)E;2@Pah;8OWlt&}#yJCev z2?c(CH@+n#&{F?_VMNY*nWX~G$?C)>Rt0;v4D2J@%%X2QCX_t3&zT|C6FdprbzsuL zRa?V+f=nb8$q+t`^WggR1G)x-v&H=5xfKVOIk#iIS+LPm{njjT81mlQKK6IiJ-c!n zgV-Rxfdgxu3l=v>m#LOK4L5v;t&@UD z^Mu485EE|RUi7GlB|;1U9H-lBg`WL-xd<9}s%t|A!k#)61De*4kcz|MuK%gv2PevM znS>}t{~&0=U4E>A@d?Q9QVio1GAeNVnY?=*K_YlQRsT9{Wp4lCjNNX0X@tc-I3RN? z{ToKS8_;I0ZVy9}py3&mCvT2FxvB@d!Hw>d2fKi_UQ>U>w?wqy4RU3-aMr+$7Q@<4 zpTNgZ5JLr|OY$o4DDoF&u5z<+vHI!>Vzv6r0B4io}atcrH#gljPDk= z>IZH~#9^m2HNzYJj4K{Im>rZflXtw^vF9Lq+|BSX|T_5QIqbnsOXOU%!Xih zru1I6q5=xJ{J8Zkja0^fr3t%#EQEv$P@z|%RZl$T8p^D*5-FadP}2QU-_#&<)v_q7 zb6O#gNyGRkBA&&0>V&}L?U6$-KXcN^{xC~__BL;Q_Yg3&!reTP-bT-^QBjVGVZ?ES zDtc&v=chq}=?2qyr82d*4eapRvwabETFzz1+%T=VKFH+QMxYnsJ`|v>G^Iik}m1s z&$6kRVdYyUQ}TnKhn7L8gpecyp_HGJvJL!5wA~2EfauyqFV!&9TI>}N=`zJGXKFu7 zz|$GM-C8jDq_U|6e6xgAr(j>3xt6x1e4;LTGSt&ek;bAu=S)a4Z{K0xEoqJtN=n>6L2hq#$5+=`)jQdw(rC7E} zHA85tO;Q2=;{m5X8d?>D+3@S0r1(cf+Hi$27-x7q^;#I4+wfRT{$_6wkrq+JaH1XR zb;Wdqp;z{^s3=o0csXphG;n`j5!)2JZ?$hxF`OJtpO7LH0)AngR)Ztj>=^^H?Tnvo zbdD%kCR$ICXW_{1da~=%s@?wVU}3?%guwuzASXduk{ZhSoiBp9zgM)^f4i>Ru;A0A zM1yC^GQU$;2R=6$LpZ%HNHr6SX8~Op=RHzYP0~U-!99f}#6tR;~S+oIysZlv?MGY>Byr+A+oH z@4_#%wgdyKai4?(9q)fP&)XMu&4R}D#I*6TVIXThT6mezJ}N!(7Su1$j0%tEZdu2T z(o>T?nze=l`&IQseL5EVxvk>C4!n`D=tM&b*)y4P{eM!!XEO~;d!QH z7)poL)I#E-ze0Z46c|eKjHv1aDAn8Ic+`OzQ*k7OiCoK~EWUSK5lVwq0B3k?lTeMU1I0Dc*4Szcog zyk#4mpsYe^S|9M*Z3|QPz;<6<>Zipt*j@p|({TlYQ{u*eqsVb|aIMcY0SKge^VFL| z0br0WQE}17ws|wucj@V2Q^ylM=fie+{8Amx?h_XuGec~f-;{kWd%5r(YU(@;MFJbh z%^P6=IN%A0^JyI!1zu6^FK#1AJmZ_S$A40_uUp^0v4Zc(tW-jP1cSuJ3P6w2m~Fed zDWQPs`}P=KGLm_sU8#8h6Dbwh-d9T0llZ>k*!N@YiJ9i(fxx_?&ISl`I9i~=`_Is0 ztg^Yu{<@NRb#697C~V)a#qpTmoy_;ZVxL12f7Bw*`6%ZXpJP#J+vNJ9!2uj?MCto} z-N0T607ZNsg_?4rwwg^-NFd{|B|2$Ha5MIVR#1E3*=pz+5SzWyxJ<~O`E035n5sKQ zlf;@gFS)XNIUOJ*DFO3Zj=~K2Y9=4%W;w^uL^9sz`$eycm8lH_1gr<8=rDXf-y|*t zACDASK>_kuaO+do6eKl%-a%@@SO2!}$ryQ4_`MQ<*vVmQH}BA6KwS=hI%yTnWX|ET zqUY1e^c%IKog5d97sApDj3}}R9QbA7!l;M+FBI|9zh3VnK7YB|{Pq%|Npi`9|J{fh zSyB}NH+MmIBjdbRqcO;DK|Y>3p3`xZih{*;AU}fD)nLlW!OC>x{1wjf;eymyFMq;d z@Sz+0P!@!MB%bpni7tb6aUPk@^$JpIOE8tY2+7H8u~mh0!jh(azAf$wy`=nFxErn< zwYL*n%ZTEvX)u{61;rdoaekI!#z&;Yd$Z*~2)~Z@_)Cd44B~=9g<#nB^?&1Uw`|e5 zi|N5VW|lt)0jN6Gad;WK|L4Jjh6H9I-=3F*pf}4g73-RG9*UAm`-UeRpr?ik-BRZg z_AHZ{{awnnoH)%|dr;gSWK*7Yd4*iC$2^J-)$-Ur(L&j$A%gP^rZl|e;RF%)>}f=qBd6c8c&v7AF72Jo#&$= zC{MJp>t(!A{gc-`EvQ}WAtn&}V1Qx48wu2=0Z-XqJO&Sd^b3meflU`#Q{HyVX+fbQ z@Ib>iT3X%)=a2S}VTeb6@4?g)V>S&-KMD$!=|kX%O5b~kW^Df>MDfVf*I2x}RxJEM z@Y<78oC#NGj(cJTG2_Q%{>6pvrcnY6P1{A=A&f|=3E5&9{opHXkmCTUz-ozGR^dN} zYt947*T1m=L~Xpfy32m5LkCr|ND3mhVM-6f#R4@r`Ib9YR4=jk+_0BaEUWbrJU^N6 z`^{_@xyK=?Oq{x4Z)fzAQ$?Z3E1h=cjc{i#1ht6`tUn7s!{W77rfd0zc!%N!sm;tD zzL4JdP#^n)uifgGI)rWy>OFp)1^;huOO#54RV z6m>y)Z09ETO!2=7{BLhHsj(=RBALz> z7ZueKJ`pTC+s_)%AwZL(aEXKbl#xV7Dtm=cQU(e5HsDDXTH^uWhFOsp%05Nq4xdee z(sX9EcR>_=W}LDa+3PW~DrB8pILO2hc_%=J4n*8#u!>?ykjZ>9Yx6#C76wF9-|xkIxAeA{6dfXXDjYxdH!T#fP8s&9aY@&3hmTSQxU z)JG4Lg`Pdmj6!94W5;Pa_M$1yZ`j$(XB34R4OB}6a3VUW*=qqpaT88c^wuf74EBli`u zQT{=o*#T)>s`06SDPvTP`9t-I#aWDhBye;3ufUF)K1Dbx7N(r{Hd;&$y9JnF>V`V{ zjK~)-ch6#kpPxie6JUSKe8UHf_Qnjai?Tl6!SI%lpq7w$+aoWEq>@zvUh88u3@pwK zBMZ#Kg|A@~{)cj#ZYTjN%SEo)>xsz3KB7P>l~Y}aC>9bNUmKYAH0?;d6>Fg7LFR8^ z!)0<}{ycVFN_1C7g2*yDk9_1L5Jj;!a5x;iG2^GgzN$@eMS%PApl+GCr$}0x|>s!R&C0IC8ytT z*ogx_RjXLQ9{0L~S$zsdE6;b}N_dy1U4pb~Q^b48AuoNB!;C&&fcjT|1b3{UI9C`m zi0VCZ>k^wGbG}OseQ~87Q^WYEm~90y*EDB*uQ(?bCcCvH8S~01*)C%8Q3JLv35|Kq zl}Up^Ra*Vvr-4;<)2^~g6%{>Ohe>^^63#RA$tgmiW4lH!Vzv>WU5!!|RD8(!Lm@L= z=%LQRyj_F7E-l>zwc9NcC))=AhZhsKZ0v}dmlqF~apRRf#|ck{Dp^K_wt{Aa!}53H z^&!>J3h2>ErLmmcJQ#RlWobGY>k#(tD*R^*fOQ4?{cpFLb=yle@k=oNTBBB%|w<(vC+y%lrAwAebeZ%LM4&D+&4-eV~u znItKz9OQiM6*>~AKb)DJqN0itsKKg-HA$`sU)YwhuS70rz@%%`qJooELDwJ|he1a(%!CIFnKU`4&y9~1-Ru!z86c?aoEL*VPavn40W>Qh2}=RAST*+IR1MY0L4hCq<-38yy&}SfGHH>xJwNyN}a+@|`N% z?6l7!qeS+y{zt6L@AdrKc{6d#f!S%nG1LrT{FyO4{!LZXxNnKQ(Qn|Lm&al*gjK=F zx9J>S?3iFF%)Zm2nf-MKZnMlBc-WuIPtd-Z)NGNzwt0m~l@DP6v7v|d+vjqXHK>iM zGFOTi7MH^;Lx{#pb`euy_3xelyyAK(s?K-1r+D3B1VQRO&IH$q-mU;)%}ZU_Ks%T7K7SkI{NpjwVFJ45Tep?NkR%3 zCY!VlvO>v#sV-$v4pfio6GPs|)-O~{sOHG8G(=+a2jdD-YB$9s!%ib+$(OB4DruvD zjf~T-ZR>Nn#-Szj>m?--an*{XX)E6f(`1HH6TFvw6Y5x!?p2TIL42a;`dgC)t(rl_ z4ld0-+8&MT&%(kdXU40>2X?0>;Ik>18JZzaroU^^(HJ#vJpaQuJ422@Fp|&H>a)Te z>WRaIkno$@>G3tIRH}Vq*}2Gff$QpWyDtMcBm#8HC@cDJ2wBa-rai`JF34JBt3ZxF zVRq4*wA1?Oezsao$3!K43IkGOdL|0#>etqfGKzy}OIbvE z8ao;r@3&|8Bdg58=Iq`Eq$2^9Qq153MIp`KAO-C-5R?9i=+ZES1vYUr#{0TS* z$CE3oQ|klQPr{#XzqUGoObLgE(3tddGbR5w{TLU~!-#156Okpx{V$bxd#=i$rV~OX zu&zQWFcN0vM!U0*|+S$Li_2>b=^Dzi@l33K1GatET6#@9-#GXBR~!SoEWMAe>^$FW8R1r2FMX zE6{c8K8cOdqHGchvYClI;tVJJ9&4>jRkV|v@r9|pwJO&;_N#mf*Sh-<>-*1_vNv?v zhE-g%i0frWIg3XF^(%n9;a7XNorCws5pfl;wOMmPVD+db+aht%Dy=l|-LGH=7h#b1 z7e0~mtZLIiR6v8NjTc*Q9J5ZurM7@3b+zh*+Wfqj$^@zQ(S=QITL3rLX1lYwcQLen z4-UO_EHBL2%`q+JVEP7*_-TTkTaicoU0&_yOzXq|YB4TbO>K;*3n*dF&WbH^i}MkePhA4^pnB2dF7ctL zE1mXHxWb(`)xj4UXgsZgZ!v$$D>pj*AR|1o<&azB4f;QJxdUQ5bkz1?XP-W!=u$ez zC)#}EbRIG@-)ff*#Om@`aYy-K&wvf$7uu3FFWWlmH~BQPcciPjA!z<~M%uaC#kicq zQsZe%Mtp^9AcCWu6Iu~x7py zO}4%%=iPpiJvuFL6Qy?mf)5WJHLLXsqUd%(EFV-kV-kv6I-hbvEU{YA*&+Z6bUnl5 z&dxqQ#=c1Dj>n?F67S1KaaDI3RUO2gLTvzwcV~^7MdE(*&q30?YnzZkg)EQwR|62) z0fFcsya&i)`c4z~Y2 zbnCw%(p)I$qt$p755hAwnZ+GaW3Ryqg`MX}7kUgVOt*>KODdv~NQI8|xv z+~PHV6Nwk_wuYs<%VlD>%Ti8mb#m`QCjR3yMS$V)gMRt%94*CosITbg$!B586Pmi2Ettb`QsfFu*3$Gi zZ+RhCa@^~t3im+s?&e~zruyf`xTA6t!YTSb(3u=Cuete51;?e>$EN!G zJH1QCu{Pytm^4Oqao@5Yl_@ieQ98SGzs2V)#_T{jh9zC5cLnq?_6_ZN~ouy%3?B z=#O)tn>O_VFSB^?F+eUj+Z`iS2e_we$NCj29O9?^OJS1^N+dB)GxUi6BE?u(!yZC4iPZFwf zNvr6t`nTh#jorv5=~N@mBg3dj?so7(8|8M2%B3RQ3k1gMp5D8VN6ft;m5W+V-}9Wg8< zyZebBicg9qeHQJRaIz}W?eRgzsAX~^KWp0t6!L5A)i zh%Q!L^!1ju+^fJ`=+-ZG&7>qWJ77q^7x#R37vxj%L;H62xew;6P&Au1g5P!Buf*Z$ z=l|XN|1BS|E@82#Yx|0JgjI?_2V!Z5mZAP|kve?i2pd3Gv!e&G9mNTVU6y)+ADjnW zxq7k7yCW+oOHbos!2Ab6L*);`&f{qp>~bRF7Pn?ugc*zD2L3P{OwvP%FfCus$31Ii#2vDvMXHF=^yU= zu%M|GV$;LjSP*S)57u+%aUOWM(V#XUFZ?B0z4Z&j0bcQs9CGf7FJyhCF200lT#ecs zlsA|;|C%(#vIN)&-5b3HyG^ZaeF}dwHM3|JvJb3ge@&V4sTl?ybX)ntTSbW2;$%D- zF)MzdDXV7@pYp>5n&fPD74!!o7ABo+o;%2q;W%p6Wzit7&s&;M1ur`YxlNT@ASvlg z1O;groQ4}Do0Ub+w}a5ksKYPP4dGD^=g&-9M5YO}?Jok}@8jCN`!~h*&x70l0e=~3 z<|lkfw!jzTU+YnAjC*7me$XCCJ&3<7NK}mNL)rb(J_TT8eU$?KSs_SN^qVtEh$wE_ zqtYD@#vX9*M=kSn6KEULg_HPuH9euiPTDl41=q-b2}U?22@=QNiCqh&UFX~lE8vRz zkF4@APlJnCla)m8Ev$!T+#sGf2lCmzm>%JemR%ry5|;d8^72_$L-&|o>)F0$mA!ns z)6-DegdN!pk7--IiIcPskA06#e_cHJG!B7Cxxo#q!Pj2Lal~^C`Kx>is+wo80F_uex()jk4Nn30pin^$I&f@qs1qSFd6Esdsr@!SQAc#jTytwK3P zE>^~!KcSR>f8LQW#CpFwGCMT1AOmgixtsg$Fw+7#&-PP<6Q-0t{X`q!ue4GJGSG{% z{PuNyF3I5Cp5scn4g-#5s#2>K>Rx1jUh^PLzvyzzG;|s?xo*{|y_y&6N4R@6Xz!#4 z-fR=hoVoVKaTiO@%YN6Kvp ztIBUxmktH0Y{)Pa7iM`cqSKlKEFCW5BH%}fV&y|fyLRtcmW^C`Fr(*6F$~2SKr=Jz zWV}GgD_(F~Fao=S4pRfmmH8Kd1VhXLC3PPaYKVqAa$ifx;lAXeHozp zKs$YxRLF70sGDWeXI9*qjWymnu8OOqir?2qS8Z>V)uB=M`OVWQW-UV`yyCTPH!}6g zTe=7KV=|^q`)b!@LW7wcvKMYPc@44TiW|2#bZ5V&RQs;s=sYsNNVw7xgcO(*^sEnM zBWT|Jo~z&V$p>(gS|mvHq}614g|+3L%)a{=X9>eVwy;q&uMk*V!p zq!tEkZ{@wJsb0x5VXqk(M8gjV11-P;Q-)c53l4^CMT3Ep)gwMO(i!JyIMd}jzE?aR zpP8NR!DT+fTIcbX%(mqt!|;=mN}sX6!Avvtw952bJkaI?T@B@iiw4^clW=}*8upQ$ zYonc3+8@Ews7L3?Rd#;U8ni{|_-Gg^CP-V)-C)l#a(S(M^Jo2?@}l7LwAa@m;sw5^ z?`|P?!TxFRniii9Z*01%q~>Z}eu=ymOqkh9KevWl|Axd%mz;Qw3P{tm(#em<1K0-t zAY=p6rAv+q%752c1!1T;n?njkegmZ&5_L_l-I-z!d^OTW6Qonn>fDAhL_h7KUqEI=%f%YDes+m;XSH?#6 zvk>U6oN)-xyXf_?jA+k&#B-eZQ8u$VcWMh4n-zs_+b9DhzjmwF3(`d42vaX*H}7Xl z!hfrr`AE+U3Lj^pWRPQYIr!*1o*b-|RJF&I5U1NEIw~w)9kHRv!q4=V*G^xI}un+>>x%U=tP?NrvYo5K=k?z#?WgLxA)_{T|xNp*%vXoZPBAh|33%@4SUqTia4YFVe4LYCwK6lqS<=Cyghmt zp)_~Rdb#-CUwPoe;wzNjE%sxwH|men3>P1%Ax=m=L*nrMt6v!7-gPxA_B;!V`dx0L z;bP10PUV3hSt5GJcAkf80IE)nzCYfPfa%(o*~i=b*R{m+!tuwG{~C!TOT^H{_DEI* zOoamI{JFgP^Tm4&B={KKRni~u=D*$h8|Qd`gc+Wh4->|*=jC2nJY8-F8C_M=%6bgH zM`8lOIO;koZu~w(`=|x;-$$!R_P|b~5bdWQaq^}OTH~j0oeqd!boWG3#EOaG@DNGy0Y2lU;|EM)7lBjHQkz;2{|D{&{(y&Bkig5IrE4i)> zE2xyE$3K)T16-S0$Zk&f?Jdw)4V|E+YxT6T+-Lvv7OSRTWt-T~W^@^fp} zQ3~%EcM4|*yuw~?8|kw3&z59OA?oOkAD@~__kIx{sA%h0CBNU6E=c9ZD>QYD(OYx~ z8I5j3TsYz@=NTl}2bdS!n6y!qH3iqM9@si5(1uBX_)B^l=A_j6T|>?%+cwiHqJ*+M z5;MWt(=yvsk^6aFjf5%lADJgOKS*kT!w8OtC^*v@u5!N2>Qy$j6gc zGx;yS(-LmEWz+?4fWu!XW5*G(@mN3bWhk0cN`@{-4l`IUYQ=N%UymcIa|w1a6M)-2 zNkp9iU_#|S3V;fo$YJ*5i9a2>EUTwY2uNO^@F&Gn7$MF;N;mx117Ve`4lnx=@cZc1 z@ki45#>Qm`FDXt}h}{p&^0Kn1FvVs|T+)RJ@!dq=_J=MFPTVr_hOJI?7wdFhu$E=4 zZ1_QujzLE6Y^hwwnRO=#|Ey{6mwiaCH%-vlNE8!We8O~SvcT!K!AOZaN-wXgm+Whs zZ_r#+Erefn`mzY=+GYTw2BpMyyw9uFgEz7NYDNh-?|ZHD-~TN8l5Dq_chAM&d-#^K z7<%Zc`3y?j?WbG;GDr#n*D-%{TW|K;dOGCy0X*?O<+D)ioTo-pO%=l{byo8YG3Bz} z?IepCsiRk4oNb4X;V5X5kbk3$^sfv47uWv({b0A~z$Sg3x42HBrM;ILNpc1C)^a2Z zzuaV%RSh_mOwA!&WOcye;wg3xogTa{=!%py#eV%V(|-GfV__|b?I(3ZR!Bq)%6Dx*2a^?8^n_-Xo9t*^O@u8}(zs!~!LZ z*5*YJAr4Z~IeoL}=KPLAI)Da1Pa)2`^an~X{pn6zmH9@fO?)+JL`6vuexH%Fkt{te z-~K@{ZOpUa5eXZqE6ffwcS;xRWq!kJr7u3EtUIDdlldnfzh5m>|2Cg@4r65k;`Lc4 z%GSA0^ke;=#v15XbA=8%~NHd#g;N*7*3|j4hq5~o(F_g?dKe6YS8}(!n2!F zYlT?ORmD5}UZlYq%1HR4L)M7RRJjU#I}Up7UtEVjDKTGEl7w!1+Gx=iek+YTBu4g) z+ol9;g{HeFb`M8qw-=k%#glct=*xeFC!WF~Fe>+#jD7SHME~+5syKPxDC3U!*FSg; z27eGxF)OF(0XX+p6x;u+tNAxQXw|E=0^vV`Xo{QFyC>HL0VY-QgrtYf4AegTwPPWr zUc?a_yI4-UWOb>e0njH3P5VL`WCH!87!!MgvBCjB*E@4A0W3)iO6YcZS)#^^8~r|1 z?C*jp<56T!H;PY9@~_fw?Kw`Ch38rQO(p@Zku6R8%^a61Hf;3)-+wgZ>9bli+^#yn zLanSy({}oqBcQofBo$DMk4|LOj))&mjR?36%>OlguT(i4RPcHvm)jYUSIxS%8MqNv#E=t@kd!ZZFob* zT|TPo!xK~dm)oZkLmT+w>36Y5PcR|Q7BzpE`uG}N-JLePny!6c_wjin_u$Dxsm}xt z9-sGLbKr40h%txcj}WK#}qa_J81x=FKD2*7gc=TL;u_YQrk2 z_+sz}H#G;!XJ1>xf3zS5ViTcJeOURA8wUg<1U?4j{EyE z!7kA^MDuS6yOkictrK&lOp)T}j`3-7B13}-rHa%UmlY|smgDPDDHR}?r?Toe{iSIF zh4@68MY*z?y_()lx}AYATW1Kv$;3q6QfWbWb!+q>yKh?ByZfKOLdMevnGf z%vOUKtt{n?T%j*$9*Q_#P9abyh*3exF1k_?s}r02_A?}Ozsg+)CHnm1@}{J4Z||na z1$VJ?D@Rdb5W)?~9bs*o*@y}V_!$wg z-lg+qM4pt5T?8+y9Q89YE-dNyFGzkX^;e14_%KQSJfJ^mT#x!iOm5vc6l(d$e6LM&=x_23^ z%*LfBPM^U)0vMIVrs|9A{mkKFYCYbN1n$%kTEnRs$v&UY;}ff$Q;&B8NNpn~Jz_*ebD zP38-;J1~Dgm8>5z+&NBft(T^^H73(Ui!_Z&*q<{mWO%$0<)2t4AK-L-mEj7S>%sg{ zX*UVCwv8_EBc+I5DUIwY`8{=0!X4z5if#DKC$YZ0Y4D>|@YM?#77G>RlxkOo?>php zB1+huvj*2g9uA?yW&YYx=LLsgrm}|6Wd{S~`5sNnuFp*r3O_}CfI}p3IZTNXoHXp8 zo;d7E|7ppWA)LO^TNa76(laH=$fHvd!}U-1ja7D*E&mGx4Dh9}2%+Da?eQ0hwf^^^ zxrJ1ogy+>AIoP(#VeLy`fGEYXUM0!5>lx0|I>0a9kKbE-EP`!I`%}{uopR$#t?4&u z^pqh|j4~Wk?qa=~iFFxNv-=`}Ds>ClbyEu&4ERo}BJELCXdc(g-3Lc7B7eD|3(S_Wcu0>dtTj>W6@`LXP?9_e6&(Mz?YaQ zh|bDSZ*8<>R5tFs?s!{uBp+#ZOq7b1aDscTn7BLAQVzwf9k$Sccbz< zPY$C1F}`qY1%YHs6R!QxvwYt@Vt!{6q|HTbFml{R3Ah=#-x+Gh+IH6{;FkI?O4 zDx9fRA}NFr3+sN7kznu>Mx4}2R_4Z(GBt1j?<L|*9%lTk-u?re zM>weu_^)MeiQ&YQc{6P#J5tAEzqe%&Msn%FE$-Eb7;MtechmQ>-45bIA(C$t-fKO{ zeV@AsJfjAZ8mu7;awcdDP>u!f6W1faw%LLEI3W=>5DUB1*%^4K>nh^IwMMP1dXxZA zU5&#c`aE(j%ANchteVM8&S?}Ql1WF2|}a_&;3)k>KpXVt^|BGPk*6CSFg zGBv1S<#XSNylzU-Aug@ua4yQ(>r#Tpb9P_lp42WHDzY`uh`I?RTK;(5twTj8Sso*}D;8ZTObRYs;%x=b6#vRO;)fG?&% zx3C979-em79FEg50JEsKoJq4!T5G_Bu{L=QzvqCg7cgPOKvx)3|-{ z)-Qq&Qhx6l%xuHLv6u_D+~WZw6_)j9Ycn2G4k+iedOL%+UErU_%|Bq%B@f|g>_=<*fju}}=|deiq=*}nvJJd^fU z*$uW4lS`v$eaE^YPQK6m*bMMc(XGcocz-s$C2Ia{%8aEpQxcB@BSE^Ucnnm+KfE_k z(pUN|l7gn~M56jSIqkURXggX2XOMrWiNOM35PTey zOy~9N(JjB$Q16Sr$l|Z5T(kUSTJW({erit+y9?~lW$ZVlgOWmq zA^6~gGOq|hacwX*{0<4q$lV{b8>2nxuxS1ONkTcZl9aCgI~TtRhXD~ znz8&-XTVF>dmS--zV2t-ym&vbl)e&5ekp@1F-D6yl1SC$I`JzRAgAJxxHu3Q*J+S? zQNGSn<%N2-{LjA4s=XSzacWnOQ7*hQ$x;!}^1SpMRJf$ID*)=VLx;D^k!NaZ?h)9R zOW7(&NQd&t=#$F2ym+{Dyq7KGT%)6*&=b-(LpBlx+Z5guBDd@~yF8r*w;4~0Yld2U zC$C!&oEb2v)EFOqu^YO1nPVP_I7?gpa3#LC@N-Feu3U$J6-i*@LY~Dsp)j7ZpVFQ8 zTeFm?zr03`E4Oy7*?)4nE<NZVlCcul$A4sGFqs7e?94CazFe zV9p(w=cAC%N!cI32h`$1GFC<*u<$MR8;#M(Yr|2yzQX{9k_UGT>N4q<|Ah)+UY1~@ z$fZBNeub5b8`=6HKiq+Pm(DgnQzLLA8jD87ssbJ%WYUD})tmkCy3>PVP3fJsv4iCw9< zUtVh>#rY>}PURYcZs|CJ?JR0$ic0Od7kcX?bU|XZh)7pnQOR)H zLt8^bT%JJg<-XA>pM5H*N9zc!&(q6w`pLx#@a0S6DuCDJOF`o|Yxo3eOp(kZ&hc>7 zE%33B_u_o_+4p&;x=5|^pw?F5jYLv_$mT^LKa+qHgIh+;Lw;iAPEWWE7nzWO@F7Ki zZz)4kUrSw7k{7}n_u((^iqUqU|FB{O(LYmj zzbTOIfg!kyqE(-)n(fgy9K|3`H^smI$_Y>-5Slc_XN}t1AD0o%3bOMtn)RJlM7?vy zX&gdWw`B&X<^I+Oq$7Mx8w5ZD+&E)~KZIj6LVlUsKy>3`C+1f>n%-My8aW5JJ0Dn? z5Oj*Jrf%#lNFd8s4HQv3)juSjD94dVh^@8K%NLDk+&td)qvWfV^RA8x(oF>>eM%Oz zKkemRV^|U~1{1lKZ|wCR5#vcdZCk*1zJPg6NtPxJZQFw3u2(wIItdXzz_N^4B{e3s zw?sO>d4Y`q@u0#Gtyon9+V%(7HyB{_D_HsC1p|8=t%m6 zyo2@b+``^@2`CLeLvRtS3%Ind8Jl~1Bi=@J@@16&ko$W^oezQNxc3NqhK#%-adc5e z5Y5r4k>YyvuCwdM7^l9|L{5}a;>{2c<+X3_C1)sj`pb^O&Y273(@|2CGD0VzDJfN= z)b*aby^Pw~aKtpb_35a4(XPQs`q;jPku&gB6YX3s)^J%(KWcq3Yv(FynJVOagmZvD zbnxxxvV+=}2fB5IN#8JcEaTT2+AyY^Bd=YC^!H(&N(C#;){31a+ry}%@Pm+kkzA;> zc`RUVQ2UParv>)>SO0<9{0U<)qp4eXF9tueql9(S@6wWMocFjahM?tcY1pLmE!|Sk zfc=H@C_!Oa==R|+VkP^jj~p=-Abnz~Gq3j#L21XE7C?~vhr2f2@{13XptrhS%LP#I zH@9%uq?1_N0zHzPNz#3;A`hv8%whQ7(_0T*W1O?N~NUs8GQ-m7_NAqFD`x%f5kq#Keo_B+v3p+ znLUZ6vp*JM{fE_q^sSn4gws`YPMdDghETL>Cgy`py4=m-qqD4|>%y|#!(U`QR?Qf0 zf2+pap9mf+1ypDv;1Ktx_tl=~y1!Y3SLwcEi!1`3!3L`=n!q?N5b##kBo%0nl)R z^L(NYfX*UlATFM&3ySnrX-I?BQLVnd)s;Jf1p{&&e0D z4xz!juvK#Fomcev3FYWq2GI_c*Z9>ag&u-916Qb1usGJg<;g!@_QQJO=8z!R2vnI1Hg`1lVU~xx zZbom=PYk39C8zopv=$RWexBxC!lZKT`s|7eN-bYmeouv0P7K;vNQ)33A^iDYDXJ*Z zmlMOAMlkAE@{#FE?`c$?!{Ej%v?t|FA5Vc5<#+yz+QEm$ptuKjViXj2Oe=l?*;v|`8sE1k*|wGw&YWICY2QBY@;N#Y&W;H553a3chOnDZg| zF*aogt2DpdGIgI$3ksJ_6TUEXa0d}EhDmgUKVidzb_%0qe}U~Nd(sHgPF-46x;Z?8 z*2WxUmy>;yMBYc?5#*R4OmzoXti|3`_9?jOyW|0w-`sbkXx z%b;vOfBa&Cm>n7$Ajg9;lCZ9<+jkO(S0wB&%{*4v&w~nqv74cpXm&Y|+&Uc&tTHKJ zb?TPtm*zi8Z^T~j=q>_3jKy^QvxNDNW?hl!uYX}Yk7k(|9f?`()D1NR9?u;FZD{P! z$}5r50^Ym??B_<8gQd+~Z7_of3KC>N?wXGdo*F%^*AT$*WCkg_O{(=Ez*K9sD{*co z0}|hRT(^#ry%x)c-V|DjbDEnK6ht-`h3B!zErk)btRFFB5B)9w?!({H@19WlDzd&G zQN+rk8JeGPg#=-Jbz1oej-I{OoP9C61QZP*)?QPW{pb=RQertAQkq$5kp!uiWOoIuRM2Mf ze=(h85Z>L&k_oto+Gx{AwR4s&&PUvrCGd{zq7~`Ie-Q60Q3f)J&QGs-pwkxNG;2jvVi+7I-9fH+6CG_I})+=fM#>Up^O}l&F4hIhLwg+h? zC^*&)rnG8JYKa!}h#TlnMEJoWMsq!jO$1sW2*(z9FB>W($0%c{e2~vM{{vO~UpM!c zf0*1qeL&kO{bmXOh(|iT`AYlCKb?YnX-)26w&ymlZh_mNI~PRjUzQZ&kLmC3*l4(D z(Aa}lOH#m0e?(}rX z{z#;i+><$88$;s)N6yod(SeM4*Q4V9;3@qL{?+0Zn;0+KU;9Xjbiimz2iicl96=Mk zEg87JWLLj(z^(2YSY)Ackbmv#Cu=78NVkLYLgsd6=S;{=SyUGNoI`8b6168nU*EOM`e5J zvFy7Vv$R0vvQxH5wgcqtxC3>mKOM)>M3iUu&6=Arg*LB)t9S*r06PzpEO_uYKP^9eAX~n zU)#26OyJS$Ils{B=EQGaz(`G&ka{;ICGVit$TMnKYTwfRaq}B`;m$fSLCMNizFeC0 zE@iC~ls>HzMtH2^Q<{Bn;6-UnZy7^%$y`b_pH7cp(TSFrPwY z!%czQbLs z-kuxbZ(w=-x1iQ!wdTZXRDRszSL2h+p6BMGjWd>QyeR`gTf%J*+wl5~-v`aDX2D@z zYM(06GEP;*1u)(BuTF7p1eifYqtDulyWegF~D~m{{r0H^38Fr z0k{b|6Ge!-rdF%vzkf-in?sJ(q<`F{**hZ!=?fHa8sY6>c8U>9?!OgE8-RmAkc9J= z*Eg#p>!=SRG05+>drvG^p$lv$)9XrM-DDM=RH69iVl{$SOTQ~PX%RFP8nJe*^Y@RV3T_d;}t@V%;>ITDCl^%1lx= zHV3_}=3P2)RX?#m6TDKpXP9HmQ;+p_i+<9y*t6W8HD$N^!;p_>x`cA8mhZD5Lnuw1 zOf*o%5m8wU=%7Y=^omO|GluyH9;!!(fvG%v98X0)dLb0A1ho1ZDj3vDSg|G zwk$0{?H$zRhU5y_wbGWe5<6HfCC3?W{o`@47-0wJpA>fpS;|p z2})M0Ick_!&PkZ&i9`7lv-#dw(~(ile_Jj74>`|-lr*!?cPsejr@zhYnDc=@E(zcd zs3{DHw@M|sZ#76V{P-68#vtW(D*w%&H(VHv`y#Fn3XSZ(tJArA5oUlBUu3gmHuL*; zp+hp`sYAA=E|`s528rq@D z3k`nt7ykLiO7-{(s=r9Yhim;a^!lkC1Gjwb2TkOMmAu>0VAp!jJwx`LErhO-?Y50A zri!tH=81*RR)RD&;z+czFB+?dv57%}P_jrtlp{Z*OUbEi>Z_GtWju}1u)nNpvR6Mv zw*3&b-*{U<711%Vn3c`IV&=_(_lLmDS^>)=)!XxCsc+H;sd?PKUPthi-}gNS$C6vb zE@qGa!nlW7XBE}5v(!2jdiijUU(V#`(Gs}h*8{?tG`@?X_cta_mRbM*WB=c16C7sC zhGlU}e&DppfwrPc>;^f(N_BMtpb4csWw&SjO;~{5JZmjSfNy;8+Gow}32mfF4}PSA z2=SZOyN&w4i@*GZF_``r2H{IO14*u*@qfI{zv(yvy#{H24{7>j-yF*H|A+th|LzV@ zY?@YRr8(ZYgH9XW?VP(JoyuPJaXYHflQW0gZ++ZxUqyExj3~a(DP7NOjjIy7?)tHdl z-6!4_|fTqip(*pAfU zLl(Z{(uC*mp3v;4zm*6vf3xbgePVXGkt1LkTjH5VClkPb8bg7rmCvaJLntw}2+a(< zLJ4DAJ|wU(!dAg1jAIpF2bhGw_O&%h9Ze9uG!xvNqxUL%<&&>UBGdc|C3!XkP7UX5 z&VJG91tASq;&8m#3SeRX#&i9DFdR<6HodxK`IHVR0m1q^ne-oIs>J^PLRdYz?p>0*B9*SV}oi2`gxm_C7<@tbz#La@=sRk3-Mp;ozJb=OyY$0r*&nIbYMLAWB_Q z4R_naNYHX|yPoq3?OB|&cBYi>IyGbyPZ^a(QjP1s)wwDFn#<~e78U!xU|{DTP(k%~iUDRSFPKfQkg`yo0|3f5eX=djM5UwJlACc&QmWUa_J=z-j**iq-I^9tMOO^{Ii-VwnK!JIw820e2U%sjc z=;sOXRKj?IQpEWOts7}Uup}ew1U9B+I;{)PtkLfhJ~T_IH%5x(=`|CI50s4kg#kIS zmL&Wo7}-uWV3xvGvb= z&tK0L3wlfb(2|MAIqVliXA4~(;Y5tB50}w%J>BHHRjwAu{$O!~{u|pKCCG18-}<{z z#CSO^U(LPt6&zQ4W-O#_Dyppb)(Y{a-vVa*oG!u6Y>@bTlaJ9GApH5KT$qHqvP2;b z4G_(N|-m) ztyn!jeEBmOJmyqtZr(%X3Z!tI9xI?{heZl{DqMrKLoCO%L0Ed z>W8M)cE4qL%X7PjXGVRz$N`@;I83bMEG|f)P^4`X;+7lT;yBbWz=R4e8?#JFE>RDi zN7TbdUyBktaNSHj$(sT<$d#p&4LOjaBzd`#weyiK5>mib7S@{gPC0BXZ{90qBrQ$R^wJEiLn? z(cq!#-`mDZvW)^X%AHPM%F6u7+^Zez@?(Im4|_p~!v{x;J|Ev8v%+JpK&HO_Aa&Pv zeyt8&Ma+B>6|N>L0&3_Hb&&MD-2PRgxCqXNZ{DoVn}JIAVqcE;yrE=jZv% zcCk+^c6rKb6vv&=Xod?@epaMuhp-Zns7u2UKv((ktlqGoU%u{<0*y4vbEwKM+%0Vs z1sZ1Vc-k4be{y2k%{N}NV%kN)Q9-T>C~KYr+gKIjS4N~>*LKlbenyjaI^hR43|0>f zjkx>9>CBoykQ;epa8Y5atf58^N~=|}Bd_3Tt@f}7u7z~QN33C&2iOTv)27-J^KS2~ zE3>*4fSPIJ=qgvAL*12%y4Z94i64!MrU_s?=J1sY9MBV!D6m=vw37n~XKBJ}Le?Ys5%sPZ z2)4@0WiUtBGc`ket5R8KG;=6ZQ!xrej++-%wXOZ)cW9VIt0u;OcdkfdPc1RROL-Z> z)kEYbS8L9Xli8uG7g9MMjSw5xHTb%5@vttW2W%C?=6DG`^DIlRPF3f~2eivmGXV+g z)nS`*n;%nU*6YOrm@#dKfQL}nkSbHGCZGEBAyY8vd6c6g^?fCe^k$2-W+G`vx^J_b zV-BG-X3dn?OwFrxBNABT-KB*zqBIHxGkXo1ePr?d7oaP@cVGh{cxO~_vrW28BM)-% zY5OH|GK2t>`->})QdtVv?vO;+ofVC&9#b`XQtfH)4W3^`PTk-7JkE2$YIuuIT_&0| zE&EO0<+)e*)S+OKSX)OB!d}}ftA5}-j6xt{FVUGYyG;VLv`(xy3&^DUvQ4fIZ^yLO zGf?C3T!o5)gZo&U_9|V52DE#Mc$}#q`a#q}mXFQ%z8ms4nnoP3;14iUc0Z35R0&I) z5`P^$`rb%{AhL^pp%jUHTUOiG(YQ$LmK=?}!YR?WxD&(SQju1AqZmc&XkN@=Rs8t} zF5n>13Bpgh_^UImYc?kuQ@;vjI=lV;dyrwypjW<;%11UQc-?b{sCrq~(lQ9k!%aUX zCQTL6%m(~g&sFhlN_>(Kft=i&d2kL#>S*Xp^_qO`248jm6I(TH%Sq!^TK z^boh3nyXypaot6$%4N_1`G79HY2!>e>B~WNMHzKXCa6`*_YlQ^FAw#4VyDvFcx^Yg zWM%}u_r*`zAmOJ(?~HWq^1hnhykgd#-Em7RvzDpCfA>(ev*qOVi4p3>)Wwy>e3+At zcm{8MRe7%E>hPX2l;6jSja-f5R2oUMQ_FkcMkK~hKLW05QpYhLV`VKT3gglp4}+D2 zR0_B^@HK8Y7S~NqLc`5za!$IRcaGJu60i1DSH8FBd@Q8L^=P0kk9_eNT%(Q3bXKgD zp}<3xzT*t;CRn*f@v{4T;~@lC`BIL>-?As&Tc&$r`}F~MERjaNQ?GTvzOcNwq$sCu zvNa#2rFO4hp@Z@BknIT9&LP+<(1>tj@PBS?kbtF1pnG+=qZX*~d98tI{R%DI-es1< zk$y&8YuI1SC970(9)Sqt!{ILn)YY{rH}r3jw=V9hzbkB8s0eAD{LF5*Nq)uyrK|<& zMREE~)7-ZC(2)_K+ar>0#vkM+A$+1ye?_n)2-R#wE-rU1U7+RdXvEnDT` z`E;GJ(&g%XN5m^Pmi-%c-NNs0_Q);Vr-Sf7%EJNhqxX5r>3S(lR;~6^VZEbrr_EM? z5bpKbNavUu8d8Y!Q1{;F5;3k*i@M1P$wKx3t6(RUH9xI3*bW>dx*PY85C(FgH?SV^ARytgwXi*+3xH<80+Ck>kI4^$Bgwfn)zX% zfEygs<#R)Uu=sH9zto_cH4f^I;Im+LmZ`df!*)=uWoeKsF#L~n0_OftbOI=Z@dvve zXiA)&RnIvDy-o`^E&~wP3km<^29Hsetn^PQLm+m5d+O#n$(4CXZGMSfbDcFhYnm?7Rv273De zkJhtwS4~N~%oby#+Wu9g{InOVYW?{dN%;;B$qQ_0WpynK=0Am&`~%6aoch01FpwMl zcLjsAzv-3yL-pVe-Cuc!?$>vts~m%gZ}XXZ%Fn&-w0DUjc}m;B@ZG%b3tGyAgYR#G zD8bK!EF@rscWB)^59Dd|%o7JTUfMg^2Dw8#EXdrwJ2@2Ucpzyz{ZTZ*no!#ejpqs-R z*F_R4&urel@Rjdz7^{0&J70cT3ZzvxHZLs<5b*4?Gq3LvTk#MxB|^nZSW}<3lFY3! zSjkqH0q@zEOa*jZi`46w={wCz)t?8fw%T3NDtcKEMJL66Ck||l`_^~hDshTgw!mZE z6uoipi!s0kj5BKHr}M1QXqeaE3;!{|pu59{7d{+cB^=VcaWoUc^OYby%S)s}1}VV$ z$=O5%snUkOgGt6W2F|Q$w5y-&QUz?j+^PY>W_ljR4S^rTV3l(Z21AvmdKl;Uou)W4 zk8sWWCG2Wew#&+Z$-mUVAK|A;Y!DJfZ$EuSCPE_f1+Kx}SaSluFg6i?U|+iYR3tWA z`!vm#O?gSHVL8DU5M>%(mmGa**7mHAxrZ^mOB3$`4iE2e^s>m8;B0yyy6qA2rPN>^ zh)~eDTPU%tZ0383TH}1gIHgFf8aXrGCm2$W#)4P87o>BB;H$ zI$PIa)sj5=)^P$vq6E;=kYo?(eU3eBvT-G6?wJ=!&*Yh7-u$>=;;=YwB2FTXGJ%vS zR$|D}@1rvYX|klOWMI(0rJQ-H5UtQ!Ng$&`u}vH<<16Dg+#()D7(KCaXy4&CI@m8L zbem>LJO(R;oQ^={f4U_Up%DWB-U1-~4$En7#w)u-+ZX;4{$rc*F4~cg4|bSqCUi6h zbg}5f<(A%n^tLp#sz)3hBnY3LOqI$9I&)#w+q}AD#hSH0Y_hRiGV~BEbJyCeDVQX` zH$G5nGpitLfVYqyhWUQu^x6H}v@$f8T=b-5JvdK=%Le>dYZ>3gdkh}mxW+(O3ZE}6 zsQ-4w1jP|Epls=kzs#V)i;Qw&lj6R5cfv7V|1_GFfYKJVU?0+`7j=H!^lFj4*ly*4 zAJ{`7o=0(>*}_qh%MjVP!otwu$*HTcyqmV?mTt@vFp=nM#K&U^6~U(ln;p->B?SgGl9Kwf{f=Hsszbl*f{)7V3|nIXzn(o%P@tR}h{@2#=OZgGA(zSp_Yi?e z9JouL3IPYy;?L$Zoy^`QUS#J^%@I^2!AaoJ5NnLXAIqmdx$~|t-$kTF1vvL4jTA%h zwCl{Ky6AoSYJDa>{b>vct&5nEF0?1M74%~At6P@=KD9ale_^F9ek!(E`Mpxkrv?q0n8-?gb8cMBsHr@hNt zAk==QN3s8qxA~*)7EZO?uKelCUC?RZwP1qAGQE6vu=>99fXG9%!totV{r^baO+!xj zUdE@RKUnp@tGoRPi4iM1^)@wl1&r1*Uew=x2GwPMJ{U}m1$+@eJv1QkF`?=4$88h*0>>8Y&N*Rs}-b?;B7kFeWN50<;`L3+P3)`|}$ z9x`Q!g?cUEa-cQNb~Q;)91S3=-VbmT7ht<$*{S~=#KwKT>_NBqlVRi7@T?ldHp$qw zDrJfer2XfhY&U0*XC}Q)8x3U^PfHb-`?4k@yX8i3TaFi-P>{?0?()A1`t|}r61M%{Ctj1rE-vR*SeyVe*n0b z-BXvPFUsCQ@ynrrfWj<8$f^lZ0XIInBpXAblKG8upIa4ynV16`>=M$wj%5s9)VL0h z(KRl3AzQ)0^;F2vW?z}4MV?lL%KSq3ZrKCYqU!nN{k z0M3loQit@xQvS%)Xh4$6FM#wQjIAIox9kIo+d1d)mg=egI2 z^9d_O>eJF+0BXPntF9PHU#&6(qUe5CyXIzQ?XpJ#IcDF>(hv@O{y|=*C~$(5wRIpr z&&sx&W}7=8um0*~S+UxOF*HNC@eL3t?*0ZH#ND!laOI)($}QWtZzvc>A3Gk=O{A+$ zducpO*3nxaU2`F%rW-iml1a&0>JN=y6j(Qfl;S7p^vfIBYpApwiX`(1T94HLM0J(c z;j7+>I|nn+x}qgI$w%C5wo)=tV{?$n`UQ!%lq0syrr;zUl1{CdkQH#oIO?U`c}w$) zl-)fWF5-m>H$^OCj?TnWxz#D&Z$BPz`I=q29?XEUyD8N{12OM+Vj>Tf4Y8^w`PR(_ z4Xq1pk)9X@Gm|p30d*A>gwE#jjW~iw0}+>=b8ihD%TW{l=;SDyzhVC=HEsvcRBS<|^i z!l*ZjO6Yhm&DEyAn`!eTaiKl$-bwqY2PcI-iR z@HyrW;ppuU8kB@1$w7PXKNe^1IF;C5ioc*qVb3LsZaf&s12xnvI;GgHa_QNf89HSN z;qd;fMWm9n1&WY&n)mtZMrwGbc+?m0=|abvCBw!jOB4DjF^6@^t1{JJx!1vikcrQ35Sh;gas7MZAR~K

%2{9@W?bZi)LfHcww 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

3wI+`ZuV9##Uf(S~_>=X>6rLB+z{)F^RD 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≶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

j}wv2 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

ne$8@f+hi^`chl(G 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

{!BNMl)uE3#?xz0=Oi0~%-rwgp*D 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 z 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 VbLx}OZ~o7z&;R99pA!FU`7d7CX*~b{ literal 0 HcmV?d00001 diff --git a/image/sam2_ultra_node.jpg b/image/sam2_ultra_node.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0dfbaf83ec69a3145a33edc9b43aeee346a5eb92 GIT binary patch literal 129365 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 literal 0 HcmV?d00001 diff --git a/image/sam2_video_ultra_node.jpg b/image/sam2_video_ultra_node.jpg new file mode 100644 index 0000000000000000000000000000000000000000..383a6c1f084d1911aa5917fd3ab771c886804ead GIT binary patch literal 138032 zcmeEucT^Ky*KZ(@fb`yrfPgfCgpNWKLob#GDT>rkMQQ-C06_$$H|ZiEpmYI|rZfS0 z2ogYgZ-Nv7v0%M36V&H@-|xHY-oNfzcYUmtA(Nc5%WwboK67Sr&d<@G6R;C7N(%4~ zJW_&xRB-S}O+^K#LQo?R&b9Tv9 zw10($C8gdU;1)Y;Vejah*Q&IzrR;Fvkje?CYH@r({$v04&ewB*3O+zTC13!goqV9A zrU0-(0$(bzP{1fC;RrZ_nhH+-5;$c!oj}FP#(wY=wE_mAh_dsp;y~YT-9n0l&K+;t z{y7e#hXXQM;4CmL*iV?SR_P7G=lh(QYJ2sK8-ckuhP7J1{q^19o6rkbrf~+UI-uPi z`pk@?a4>sQ?LMkOUUm5fJ3{tYG;Z1M|4`(aX|Rs+Zn00Q*(>5F-g9F-QAkoz zQK46IxV_lmvFwa{S8E&k6K3%fhTO)CU()a4 zZ12T?D8St__=fU+eS5v(8e3KGbk13xe%CtHUShi-dU4RXnt#&!br=$I8tP?6J`#-6 z7nkRv#>4Izr!V2=B1i8*Ucy{=yMklg{-Nbml4-u`vfZt5Lg^F_A*g!eKPN}$_q+NX!+K6DJ^z<54%YEc z`kK%PK_4C*#AQuRZI6d#n&yvW)6fn0TDK|D z;||STDjSB-8HHfx(a*Sr*rs!igDZV%X?7oT*Ho|&26uM9m^);~HZemck&Ou>bC35D zH<8%B@q$`86AkbuqGKNdhC$b<2v4yz>$5t6?UzEd-9 zzK|JkK^{X4`m=ll)jn=u;~26 zKk$piHb*%#^~C}CHj z(W`Eg(V~NFMVc1!P5Sx^lR5ei9;cz+d-d_LK^T#dA~QuZ(68}{5z2ePTEB>tmX_7BE{{5!^&g=)hsLM5?_!957QcMGgY2aX=I1+q?1l2}Aq zBTjVua{k0p%}dL}b77TesK7S|_Z z=HGCY6oGqH8vq559Kv{|ER8)47xZcRwAC%PfjinxuDS^cavtabZ9KHTl@k%K|nX%QMb2qSC_%;&a()+vkDCi7{B@??@O}eK)>Y{*ZI=N@`0s>WKCQTw@G)+dpu@zdA<4V#@qIVDVh>ZRi~Q2Q zZ6yr9bu_u(nTuA!Uk058;53 z?7T;K3E@e#KVg!ZDZ+i1zFn)$qY$F`Q9Gupf;TuIN879~9IvUmp6jlDo#{i|eAvU; zE*Dv51Iz;E&CZQCBGWdsQ+n#e*|#UZp|lJTA#<;s;K%QU(j5MjU&DsU)SUYsU!yHD zqgC_hmwCv&c8x=bJK{luUnvl=qgN6L02++Owb_+5+I;OA#o}SduLCmK@QejaS#_0W zF4aZTf@7GxcxUAw$Hqy>J3`;}zo#tfw>CaDJGFIb{pQQhS_8~V>F*OpF?q~hHwtpy zFj-Av*YZEhGCMQTO1K^ll<*f`1Ay_TDu82zCZ@y9D(hz#9!?euhH2F`ThaWO-lcT0 z7!FgIVMOn;d~aTX-OTWr3MO@?hiNiS?;^M@9HxwIZ{YSx`%x!Ihu^J1VVL6=2irAy8E23Y6`$2O* zxPb2v$J<3an=QP{|E98+5C|UZB&gG*z4bED2s)Fq{s91IQ^8Q8!47Ifynal@k~kCJ{rBX}>T`j>mGFG-nkn zRL?uy?;zBrT!w-IVd7^rSljTaC^RLv+PzJo+s?=+(u+en+Lp#V8nu8Ac0KdXAI1$mmDG0a6 zWfMo5`CXx)JJZX^U7z|1lRDGZ*)gv$1j@u(F#;eoaJptFt?$dEv2!3)bzR-34@5kw z%1Yc^>}Q6DkQ_uCQ97cT5F>%%c2)oAle;Ki*)iZfto9dLh9yzqopw0Otn#N^J6x8E z&F(fizzZauE`4#;w*gX2qQBWhAtS?R%e@vrMijuYdBG;XCuz>sPE_Czj)q|SFfbB; z$TS9kVh|t0f3q+u##U5dYr*t)yAtpnp({e1cZ}Ej^~bUYH^USGo?wPs1zjepQ@Gk% zr4h}6WXpD`WCmF(f_p+C&muV08Y5o(I4E_HI3zYWcumrA0MKt%0 zgz%RHw6(Nh0m__e<*@|I%EB~Bb~M8+T@zRp{Ta*APDi)6lX zS>eZRIGX6I&4B-W$<6wHQ`Z+sn)C*r^^wcEM7_RArucU!DQ@E9Q!5|6?nd3f*Lx!``ixTjv|;VjY-3E%!;H59HA>@Me192hSi>>yPkhaef_*q3 z8**i{8_w~McnB#;m<$Y{1gbMa+ELbQR#qD)q8_Eu-fjotWQIJV4&6|eky4{VJ9gZiL7d4HsecH_rzg70%i;&CiVrWlr-!&di77MOm&vAL zbRlEoof6r3P6)Tfq?%4F=$(Ic4Vu2oV>xdx!_kh2FZ~UQZw*(F-06HQAYP#!F?E_(i?06dIc4eQQTf}ayNWQHNPoLaQzR| z>x@j?>zan@P6Wm6nsG0?1oyeu=D4l@SHJ^2DG|yb^Jbq3`_x1!RfSkB3=OeY*Mu%M zURACo`$lKq55;BRTY#Q%h4G@^-qCNA!^vC6r|+4pmC8qP{wCR5TT z?oWPc05Zu%wRU`}V~CF2nVdTG)kizPIl~spJE9$0W|Dd*?BTuV8q{Ox1Quf6%K|KD4R)07|@& z$GBTSSS^>!pW#zkGBzAC!ea3e6d4;?#uxrU?L3@knugNE^sjVfQz~r%nV7ryUa1!b z5pff&5V;W4e?g)NG)^vM2|y-&lr6|ER772;k4ke~2!dp63h@y=8Bo_zHdf7Zw|>>mOy{8YIwQ)i4w9 z>+c8od8g1dy_|^8{gqAxoad@<^@V03B{-@MzNkUM9tIgUbHDg7&i#&;d#y&yzEIip z{Sx!fbX5f4ruc8+26JCe7XNvDAE7d+${{Q>&bMc5nEYbACfD5LuqMCSd>_WkNyuUC>@Auq*L5p(w!OObskNqyy0aZqpst3S(dgCL~)oN^h`p{B!Q2_xG<^i+)>mX)cMT z?$w5{yOfrSfHQEvD`s}%W*+^-8@cuHsmc$+@?OSo&wit8l>9S$VgB}GOnWHA_`QZ5 z8kzvEXYm2^I_1k0U(Usc?N9$K2j4My#!mZ6ssx;oLqsR+Ij3tapLQ5My6^KmMgfwOK&hh&+w#vmTX1+bAJvCES0Q1xaDDfVr!?4&^bH@9vMiJlB)i&$C@g z#0Up^k7*D4eG^&}dO>}rHMZYMIGNB%c(wQw)_1b0iLD{tADnf5#$8Wl0H>~qn_862 zXWr?$h!d29+P@xj2|4-fhU;Iy%wu{Vfj3~_GruxKEJPWZ?9c$y>}YfXrK3Jw&2O_^119)BN8=Bzl&# zcN6_2nyvKJ*``BGKBY$6i}vulu8OUgUV#aIS5p^l=B+Y%DUMt;y#l9?V+j$F*nLot zbpPmztXMYfJIsKV!C;;SW2xCu@DwZ2Ky45MY^(u_#y-Yxx!hT=~U!Z*#Ya+%PCiSeAgZ@IIL*lqDLG zKy2g^zL;mTjQ)Z^;pl<}P1H^t??1dooNHQM0Hqs}rFVZv#YV34RvGAv^#*ij--@B!zh>hn78OJq|aW|V=^)#m;bC8(o&Cr09>xa%HU zbqZ265yQ#{C>=~SI%#}nFDm2x&QCrrMes#+!wi~ zS@O91Jr5`pX)TtXzi86;S6B10xd6+;>)ZeE_*dLSVLGO(7-P}*SOsvB@~_~MyfX5hBrtaYQ6f9-6x`>j zz_P@Mt^xA|<`FmWbS1X6ggsj>2i2_r-fc8=meR(7*{ZbA)AqLbkov~>Zmwz zX;;Uf=ol7oqOnh|h3WUAjFH=KUr<7n_{DfK0MSPRqbXRlJSEl8akAVUy2+}87zI_2@^M_2w>#N=*ftA;{5&OKa2Wm<* zP*ZY&yqE11(JVg;Wi-rv<^j-p}%9t0uNUjb0vVSp{xqFLvN&vWF0gCwm0ZZ|#mOxAi(fM?%DKhHCBtYKpJWy)< zBJUJbCZRt6b8q#3?yUlMIRBsCTjg1~FxbqU=k42>(vI}@&b8w5duM)gN~51A&)14E zrK^YUbbn*f6-p6&R-Mtt%5cKXQK7p&aCQ>~LZR1N!{eLTE3$MA0eLIg4_pQ{?1n>K z$nyI3oay=T!b@jO*x!je3s@g`nCBf@WHeV21qbET$gNI?JdtockM0{)Dp<+lHA$af z=C=3Eb7fO?8|9EOVYD51I=^{Lj1JVGuHrgAC0$o!g}fhNvTGmJA(ZO16WhT~s;^3P z^8R|jifeZh11bis*S2Jfj^%ZBYriP9UZsj%D8%mqHw{$Ovsi$;XrZoRCam(V=e>`1 za{^wz2IYZoNMRD3_TpZ{c;TWbB2N6AfP)((OUGo8r4auKI)OC!=w)%6q<5LO5z3-o z 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 sAm;PHLD0f`NRG+R8MYJOLK z)?Xt5KB$r~eH($z2w7(=%n@TU>eIa<*^cs3kNvzYytq?Knx&ZNPD>AWAT+bHWQWWV znmJrSdnp{tSes`3=Q1B#*$XIYhMW|{HZREsHvSU2@J5hUn6hwE4@Px-zN z$7!uZTL?AV!bK?$(qQ;lv0dU~Kwe0cmAC}FtSJhTOeJAAACOlMh)oC`BVrVBI0ln3 zB39qZ$*$$?SLR>dGhWYswy0eL_OC8TC<~!v1R|5WzEe{JV+4j)2zZLeb$+U|8&x4 zR}=_Zu42z%W{Act{)l2{q0<95j1Hzvch9PF2V4D(0<%lA;Aq66(=uFRI~*E90sNAX zHQoSo`2YCdkpo+n3FE^$L$NM>y>d}q%S{ZrKVhm-nD-65PfP{x!k29EvX1Euit-w2 z%%==U+}r|LcM9>05?3T;K{n($xu)?m76Lbhz}N#Q^MoQ@fq`6aM7LOAYu?mo8i*>? zvIKgo8E8Z85!>=fc4=Rxf07E?O+$_4YS}>LtiMA?C=?17X}`tUfTl>6^bj!qwkdh? zH0sYf*auZ8ir?L0wZi#mkhJ-vbv9K6Z1*8Y9Jam_i@etTaLF~Q1zrk_x#FHKL%?qs zE=mI+3jkL!5aEbGWS-6jh}&JBS`3hSG*< zUh3K1IZ%_p^}x@VzLvRLBGdX-7FZy24yajiBY^*a@@jg>6Sil-G*R)|@ve9Zk5Q9cb@u7ER}5TsQ+#Wm#w)ZaJ>AZ}X2JGR z_zSUOw$)3jwC;>0oB8S2h^yI#MX#u5=3Tj2UWa{Fs&_bdVa>jnn*!eN=4F z8a}X)A5$vFn9v1(m^-VK#kE?Y6}D_serYu0)3j!esp&~WxOgc;X_)?M{`C(#EidV- zR5pUO`2&U9y0*OkmTmMA?KyhS&vHv_=<(1A7gM*>ZC#HQx4uy&hMh-W-huTA+aq{K zhBTF%gdRI3Nwc;$^Bk(o#=yncIlu9hyM{cxrs>b3#bYx+xqP&pB4h_Iymi_9xKEJ3 zCcUd7;hcl&49}X&Tjx@x)8Aqaohc;g=J)k>JQiLz^xpYc(b*p;@>yrx{Df?VW@eA| zA z*Nh&}NLFFxdiL^}Uhy%RrQ?~BBj$mZG9Ly^D2XX4>a(p%1sHjV)s|CC8^#tPTDo}!Lfbj^tj&ANt1hW$ z@(vPCp3&EsD~?muP}uNxj}VUc5?)WaNBS#3e_pcp%A|vH~{LzQM z1Km~+XNwX0)&nlI2eA%{{~F z%YiEAOQIYMJr=h=O>d2}>L045K3Q_^1V>uubDFt3I(!AenM+)WTa2Zu@mJo_UQHWS z6YC*f7;0o4^5hygV}53ESXJHa6xulH#6iCEz3b|gHrK5bZ}__UIC%TiCjBksO|r(j zuWY38of6B_Fv%V@Sae4<4(^f+hSwC2Vi^;LTEF1yHe|Suw2z|u%_nNk`pfjiT0I>T^%mv4 z3&U1aAvc<&TwtoJ>Y;l*?cAHAVh!c~rrPa#|cZ`FM)V{uSG}}@wBIj9Ze^JTJ0g5QQ zYnpNH7edsdsAhu>eDk5zJ0zSOcKY`}F~`}dG09`+Y!h9unxR37|DXQe2-TLK)3<2P z_C`yIIOE~(M&+t9Rb}y;>Us*wYic{0u`cs^x1$-4T=s!8 z-@~G8CXe-}a`1l)5Qf@t(e9SL*yw^s6wn=r4c17AG+n~gH!j2;L`sE!&E9+E$?e`E zm1dgj={^y`ZwCieFWH@Xx+%C?vOSKl8O?rB+TNbfkYq9 zH}l!+5N${alD1}p8eHw^rM(3j#vQ&_gsi)Y4`*+?#PiD6>nkPXL)gDaPZ(8u`nK!z zdR{(u-DVPHq8{&bTpYciK!gj**TkFV^qvRSdp@N6(}(OpxM})g{Zo5D_WadXhl%Yh zm4|NX9?kBiVOxz$o%9W2h0x;!5s=f9AZ6K1$}eJuZ%2~|6TplyswVmcvCD=xUIxSy zt8mP>GB{xT0~zD$2W)9r_Y8!Di+16^01b1=G?@j~T4E)rx{F)(E&&fD*;YE;CvJ^% zNZ!*~e^W=VG|MdhOUFLq9ib483bfx!M}Q@t{}M+hwmr2z&(C%tHUleBKNQY510Jn= z3C&4r`8|u9ow*_7en0T-dL#Zp@|Kl%RcUej?66*&?}<3(gMA}CluV7|BN^{3%wNyu$`PkEpcmaY~}%P^bGq`&py)9+6yZZnxZFTN_# z#N)G;;yz(((|gZx^U+{+OwZ%{9H&g#u)(%G?Z_qpi&!zidxvb8%(Kl6-DjJ)%y*{O zOnRCxKd4c><~Z%La=*I3Bhd3iF7@8+SOq%-orucM{xP3Oj#GJtLwp@tHx%jE9p#d9|#1(D=rJLqSk{ zH;rsGJd}u}XTGW-r{ph0DiULtO=%P8a_<)HGRLpM1)I1gk4z;Prerl<6hiWyu8&vT zx-cQwUoD<8O5^s>E~-y7zJW`RX>>>^{CQm`;V=(R&(R8u#ke)9lOygVPQOAiCziV) zLIgHXZ;P*}y>>*rp1ZnSD_kk*^4aqmZqw1PXbDnWso$~oCBCyn*Dy{rk6~SObn_cZ z1#T)Kt(O~9&+p!o_zC0K@VI3$rdPTCmFS{;fKGif@%C`#BLRh118PrkRg2EiCn72& zV=%#YDqJo^CpoFeq`tmu^Yx9f(*-xRrQ2Ipe3j3<(PFJK?GY@`5kCrDN6oG-9NCj- zs<-aB6qj6@vRUGD>#!WkQua}a=QSm3>z$z^iMoiIu8b4j!nhE`hpSeD)zTh@r}MgM zg-JuF&mQAVBeW8O`K{(6JNRkTI}ajvr-tio*i=quM2v4q^iUUFKL7TuWX`z39jn-D zt!B#vG+V2(yQo)?cZa;2C|hjphFEnu$IZJ}zBN34S#?3StzN;3>rqa-EIX?W*DY*! zzRV8hh;Y_atldIK?ziC+I|)gXwdT{Bp`^vcSB;NnN{%@zK9j~hE_mtEA%JG|Do&XV z3L5XET8OCKl)JX*X}pOz>G5@h;`Z$)&$cX{e9+9NKbVt?5k0TfrWf!w_x-xGB7eq` z;ALb3Z>P~jeiGfKkI@MNr_Y`3dJzBpsczoom5VuBSGSy=jW~!WA7eH*H+;}s7t!yX zxH?9?{Uk9Qy{A;Gw&|HL8g0q_x|r=nh7j}LM{lNR&`CZaD84fMi(~##;G>EuU$;q8hK`lI!dLm$8}dU|LkcrIvf~Fl#&P4gKsz`+PeC6;`yF!% zvyWh&sIo%RXy>O^8;0WL0w}&?j+)rm$4YJU2e>4)@TA6Gcj1>Jm&$V)M zrEw&w?aDUkLZ&_4@tlsA41Xnm`JxY>&#{ms*et7F^7IxJszN?`I&x*Kt~`#g@vf>^ z;0$hbB-YK^yj+CN6_-e|a}cWFyvtyBg^u83a`u~;&)pLjuau>prIkJR_(heh`RTu` zN6)JAV#Lzw&@rB_j2$XwuZy+xQ`S)M6RRN+JN8?ufBFqx`5v>r%9m@OrG3sL-q3aP(8uG{XDWZ zkxTNx71CvqU($PbY$g>J{zW>~-a2qeAYerXg7Tnp@cZ+VzO`=+PMykEZGLLkO(@$3 z0=m|LB=u--^WUe@dv*PJR_MIi@hblNuwqep_q|q4T}f>UzWZH58Ej&<{<-oAdAtK1 zKH;3A$s+S;;z);?jIJb>RkQ4dX0B4Wr}NtUg$JU(br)HYkxK`FcGLx~*%gsuJ1CQ9 zVu-9zI&V$GB$gcF4K+CMB|mo6wQD(JiwEqY7EDf~6V~=-w)V}W2AZ8o$e(x*ta>gM)vbHO^a3;)!|PkI z`~dh4FzKHC`_FdF?c;%Sgwa$U&8hEZP7_+08^_X3sf-d=OK1ryAEnm1p;;6XcDb#7GuB@T{_h;kX^mlvZ0}AD;@EW^P zR;5eYkMAdII7`*-3_KrR_wG7+|5#v{z#>ZsZ+GSo&Pt{HhgYcnkMC$kgKII6J?oSz zG$S2c=?8gL+~*}FBS}DPHbs+#0ee}oS?+tqKqL>EVB;?L0c-CI2;42-W^>42Tf~|X zy24|o#A}-hT&60bsM=77sw(eASIdeNN+5a=#JNDLXeyV88ukuc%nj8;0OD}H!RHr= zv_KT$EIhA9-lv#hZjK6y(T3wE~a!r@+ z&nMpqWi&<6kQy(tV6fPjhR8gc+HX3loO^mbIF*or-a7%GY)Omd1%-?NG9&~5o;*i`v& z=!(cPl>oc_{W3tCzc8p9&{i}5D$C3#FyF&5V!H^C686hRx`S~BTh`UoV|I}`^E~ej z=!->ShGy%VTwk)=V_{Rk?<{}m1+C>4i6PBfcS4c^BeuhLS$rue55^f`or#7RE_vY^ z;C!*NLliKKs#}C8sLQH&k~<+p#Zwhnj0|+2i>@E7ej^Nsx}&a_?*~iWP8P_K9PdAI z-OCj0&u|-Mw!Hk7$eZ*JmGOIXt&S1v2$FO}6KvBA#GV-_ixyMPdO-j8C|$b>o#qK0B~h0zXKj1d}(? zVUQ*LJxH?-+Xxi%q2j~$qtUjnvRJ_{>FlF>ms8)uY*WMJY_%OC6yMmt%6d2-Q>7ZQ z)=KH2zzNtz$cr`_UVbYKF&{VTFlEB?94*}6&WY^Cayux5SrC#=a?1j2%>iXt(_e9> zpB4t?VO)R=#ziRb9E@a+kU_?W-ae}8=~+4eWw!8b6?EcE7O3Kc(GJ|iQLv3TEuoZX;9VjwvmqXL$mKg5Ks;mSstR=#_x32f zWot}3c4KuOlR|&LW|mWRZJthFoO)d?b|{D$@~#YYF$^-hUEW<@#(Nk~#Xg8c(RVR8 z06*PRSNS9?Vpk~Fi~p1WwTGJiooGY{3`5Q$j8D8Xju}q?5B6HR0fQ~J$uM#+!=5f{ zSl5$PR6j^oW~Sr!&n9eW7pAG@;#7l9?2DF7rk(uOYXP(Z;~_Jm&roDXdkzB+=3Rj(EP;nbgk>nPO~uV? zoU6Ja327sRN!#%8j;qZ5!ux;quoQf(+S&gaqxKUv7BFjeHL)#O`R20|wV{AM7+Z84^j!7zHSorwNaFy@#) z)^eYa_#bfd0d$=@X%y`v2Io!YS2gxaNY%lovA>X+<6I0~Su_S;r6SCwt0 z&I5MqvLc+R?D7KuZjl3kF_b@4q%fY{4cYyNs}NJjA*hD)@Wg&UNXZr=Pim}ZlOIIl zG_LsDLJ?WCOH(S~)Ub|i`DcKB(V7;rSx`faviTJePfU|t%;IDLgUs$5(gFfpk8TB? zuucTFL8MMVF&x7?01siIY{2pmEF&DAWQRfy^gssDCsBUn?{d?OA`?OFgw6Z34bOSH z$42yy0G$Aydhvn*Bh61XKN55Nu3E__NWHQjXh? zo(+l2>W7Hi&?Z4*-{;A<#3jlZ|8LKIM5PM@F~o4WY@ zgyD~(Z|p*6>hEGFpN};3)^p+R8oOA1*gkzq$An@)Z)Pz} znN+uT(N^?+d9QHutaHu1UHX}^rR(cnBbgn|w;uoaTepUDbF#d?@bD_PZuXg(CBf(C z(zk!YTqIgc>Q16B8((l<6>9qNYM$=Buk3pEjP&Wb>5Nkh`3@t0>s#|($Rde(%Bl(~ zXDJ|~na^cAInGZvo%4(sXjJjs9_M)dF?pyGqaQGJ2;HC>9?N3Vl_YlmX+0^j(_I_y z-9@puIbKd2FB^Gd)N4AdepH|_d8&?Ma7iKh#@(!|0^fwG{g0;l@LWA5NL zS!}ynMQzxXHBJDL8Q9JQ`iyBWr>oy;tKjn6PTRA0Qu z#(REpgqczFlqyG=%Ectj{I07JCKr>wUaGsT*1EG&WhCrlBrnMRT!aO==ILZb`wf?l>n$XX%@An(f@U zG%8o>o~<|G_A(>6k1xU-mr~XTXNl!g;4c~YkDC>Lo~HbIwz4#O?)r4Ia;Z7TSe4WU z@9O&+c0cyM3`>;N`SoFWRxcN^StXb$E7PD5@&*mX1yiT2h>I*|Ea{dDid1kF`kEfZ zzF@xm7et=*j+hf_P4}#R9x+~N z3dmcXk=&rGa=DP1f6mkRr0W=y#{i907fm+b-vWYxfd?1)kt{Ee3uT7+!7>^mVO!Sc z>`D2#wH9wIQ(m7vt;^tG<>eiaY&YFSh8vDjxdmPb*j6x=cF)X z#i~{_gzm39b|w7|#@m5co58bAZNp`})~3<;j?(#(9#PJc5!WhQNlK88{a2Nn=N4c5 zT@i-Uf226G;MV=z{7~Yse$c9G`TO=n!+1S?NN1ys&6nnM)ZqI6 zcs*$4f3_C#OV>8$?3P0fXXGK_?cDc!TJIAs9|4x=3*ff=MSk$ydjQw=dhqobhFw5n8Z6lS!JZ-$Mwx9!K?BTU8z+#mD}`rzL8$05T(C10g$ayI~eqh5j!~HGaih))C7T2Y9U;s`Tv^>AI zQ=?Ti_fO_M$hr5ufWb+3d7<=&q{gWxfyx?8=GCRC_+L9u7~BgDaH0gk-sEXM2|q4$ zZ$gqcp7xou#}Q}$8y^^se7Uz}c8wsmcf3Z?G`W%Pu=xdPDT&GrJ$D{c(MpfjSgOh# z;kn4JI~+d}P&@g7;_8cZ17ArlPoDd};cMQ~=`7KYP}f|aVw|!ZH=3!7x`rHm?yAg$ z7<*?mUT81zHJ>KE)2q#)s3Mhn_x=B3?=8dPTD~_?pwU1hAy^~9Ay{xHfk1E#1b2sq z#w|#&kf6ccg1fr~cbCQq?gT;-BndgQ8&1yo&7J?;nfvk1GhcYvy?0fuwRY92s$J`S zSHB_8QWj`g^u_nmG*L6I=~o-UX48IGKR%A*RPI1NvNo$W)}+}?b7w+fGl@krRhu-> zjO|(~QTRI7Ru9pQ(7FQMMvE6qDid*Yic%xC>?Z91cDKDiq0JI&`x7_C@!Ift?RsK1 zb=cD_0*EwThMezXyEU|08HVk0+Cp}QxrcDdh~TM%YNr9CVWi)a1GYbL)hk-d%L*+L zE3hj)A4l__1f0F;Y$YP-63fNRH~aP-&;0&u3;Liq`&*u2cMiu{>BRZ8gc01SsMLzh zMRznl@b?C8606Atezye8>+~Bmy)k<<(f2Xu@?XeZTzE1sF;}<*DSTK{f2614Vd$|w zo?{H_2+3Tt5Y^0E5||Y0xZeV*%7nNgl$VBS42a3gWv-@l*hEx~3T83i>8HD1t`gI2SZLv^fVNJo8B;Z^7Z*?#O}NGKGPWl4lrMi~07dTZEz z_$05pQMy|hm%~N^3j&v_a}%n^v?N}TtT6Bpg9SXN5Q?c4RLGsWy`ON5qTkFAL5Wjw5RAY zc*iYW?ZM~d8R_~ij!*l)m)W_yR#zF5gZv*_Vh43yV5gyv@vdAJIPI^W`3CNG)s6`; zm5qx%WUdnJbwk@lP%OTzS$qz78T$JeZzgP-R=IpV6Q_`Q{#I&104Rw1)T{DnPKApw`)1jBo|iKM4K&6u|)_G1O2C@PghF(oD*#01PrHu&&tvz-8S76TANGK@hIs?0yTb9Zv;P&Wdz|%iNuYKYyg30>~7w=mcp`4f+#?KR%x$J3jFL z_=TtV?b_vrScN-)sJpnr&AzL(F)VR1m-qVvt&o6ozFd6C%~+-Z-p8a4xiNWx61|V< z9;N6u)T9u_S!!q}+Q(RE^D5_8m+4Un>8Z#M2)1vN<;BW0pE8WQtZk}LA)!7@_#anC z|FeOwJ%1hX7t(&~8S@hrW3P9I*rT`XGCAvMv$0s9o~U8;+Csz>^P8C^6URLe;Buwn zrFzZu+nIgm4@s+056`!3Yg~#8Ro+Ke_<>okL?n30YR4ZgVoRa0fBh+6v~DmPz~d<# z{W_foATFx0%6M9ZZw;)~5!9{J+siu3*iyGVLe}(5K%D^s#)sn9Bi?A};ljQf2%c1Q z7l*Bra(vHfAj~mq(NGHUi5u-9`r4pAuvwr1>0}8}2195tFn-9R=aJn}9|63pXR+?F ze+Yzdrmr62;B3?V2vt&qft!= zl1=E*VgVx>yR9D_xugYVZ9vT+43e8}HN}-A%fG3a1^v_;FU81-mBV@9MM4Y;v`5CX|uM*fV!g9HMg-lewk0o40= zAoro8R21X_bvxp1l?`QC_A5YQ&CpezXoTp`Fo!H@Wx!UZ_dEwJ8D%I<{#LbsPX6Tc zEW!|h2oboYq|8(F-2j*%t-JNLmfiC&F?7f=OJ4vcRfOT3nwmecoSY-%`wS3^ns;Ny z^yth6)&8gXz!3*4fEKyBmQ2QeF9&hBn)-1QmWg;_1cC?pZgvvz-s7qBiiPl8Va;1e zF%?3@FuI*PGa|$SqM1_$QL7&^k?8~2+V+gu$nGyM066`yo!E1X$@zV0x%1>Bj4eqR zLyiYq%_t7};<^>95!E{{g z?*H95@~>>I?GDS1nlH5*C@su2eYuJ%V-r)(`BU*F6=R75Nk{e30m^ytEs2d{)HZKT zc&(j0(-MEZoul|DPhRvomk81hlQBp~LUUflT=Rv_W$fuPKQBB;p=?*Lf$}Bpu{9}h zfX0u-2R(O^pZtpT7t)l+y5>kj#bSkZv*L_c0cX}6wg>xa?yJzys4sKpdiS`kQ-MAa z_?14iEBL^m8mct7$;c^H0cn1Lc-zoL79}7$YMPOrdbIV-{XW z2lyzK30$odr}Er;%5R6qSartq2GG@^edr;#U8{#Y!Wd8rgCQbt1rWAb9ibD_LR3PJ z>`9O=qWj+tSh8Hlhz!I(c1(iEW&-luFJa8L9XUjR z*eu@>ertxiejF2h0j8^uzg6@(8GttzH2(a3(G($51ND*V?JzU=^EQShVDDau2dhg_ zoE!4BzQAaqIY4QY5~CJpOl9IlZ+pnhg!l!CFe-`B zuwa`**gdZtS98Agc*JkF3Y1Ub$>I|$;m3S_3?RxiYP-!G?}P1`d9qU()&2MUos{Kr z9-H7nqU!KmC8yC4DhDDY!DI|A>zV-izY4FiCD>EA+Z!Pot#w@=fbyP2*x|PJh`4S9 zmYMpcl{TcCSHOx8}8h4JeV?&0()k4yj0U!or^S$_`V zOH&_iYU<&V*F>sp;FOc2?(nY(nDIFJJmTM*a^M^n-2DsbErsJ|588#d@YRZU;kuY> zhL5v}+$&1Hn>yDA4R1cYRKZaskj!)Eo$miiL&}%eRA;)Wdm^DVAM$NI{;7>OtU_7z zp)*&4NXK&Wk>5betNJTKfelh ztMztDl}=;9Qb}u4;E7IRq+KA3zcyV(?s&>q5@c4n(9@U-_A$_KuU{DaOm4_6bOY@A z>j4Y1twm))LFR1xW%0R!;*YD~7mCBSma-=goI*HxhxMYoJmNu^H2dtolCPdD2^ciy z{G2ifk3PhnmwON|Ai(_KVm9GIY8rj`D`{y-v1SEI#p}800YUZ?&gcg zy`kT-pGOnX7}m}CeJ`6X;m~L4U3A#Ffi+kKDPP6{U>vka58sVBx~Tdv+#c2c&sR)I za8VMDM8)zSdY4|#SuO^!8H3U^_Cm>LOV`CcCFG*))-E|N$~F`19#?Wb7{=nhB=pz# zgHbP!oIT=oSJHjREcMRyGz0=at1h`oXM9zgZn0ERp|9z%Gz)iv<~fdAF;f44zKzoh z^5K@S+xZ+vuO+G?wi(q|%`sQ$%TQ~#B;7#6TaTAo((%YDVXP}4G8s8MBgMZHBgtl) zoF?(4)u%#JWm)c}t;Pze1H*FEL|a51TAU7c_z_zdpJ+u`?jSChW8Bf&W`IK9wXTh- zM#rNJ8@3Htw#LxAG1l`WT(@qCFo?2LO&vRVy7O!*Cq%PWKmbKw4%J`Pdt_*REJm-; zcXzOTua+Y}#cFy1xt`>r@zH~7-Lkq-6erdqBV7nJ2Q2~a?tS9uUpJnGaSmvs?~KBS z%nW}VAPiaC(RzWLZvL2B>A`y-Ksy`<9relMq~r9}viQ}b7&p4= zEVS*S)`ID_?|89_hKHg0`?PFMVPSY$_TDZml1lhnN=k>OZNnKA-j<#K$?B)V(}yjM{emCg7;RjCo>;tDyw=W$ z3s|S|Baf$3Ds*ErJq&em?O&P(_hks^UwS0S}=##$l+dy+KoZo_Iy{7<(?r}B^|Xl4 z9Nhd8u%J1uf(4-57lO(&@h5SDOt%1^H-Hg=E_mzWX&J*65%YmKq9lOxw==2mL_=en z5=5dB=wkod-KC5_2ABjMA$+92jHtwT-q?2o@Dl)6YW(l~!#zQmOD&5}qlQUA zEj~t^j^H71%SPx%gEPgKC$#SM9Q4o3bN}xN#s(o7aK2d`cKKA)BxJ62FBl*Vfa5D> z;&`wTt`@fxeuo&O92aDPY&mbB> z3bRhVjQvu+lw^@f2+%TAW9W&}WRs!yts=@IJozJ(PG?jakkF3~XAJ-Cd%y)sHcnUR z9_krI01^`HEzT2brA}iv@H-qJbh^k+0eKK#8&^Ese?~xyK)i|~fK>dv-sjvOj@+D8 z8tNVo9$(d$r2<8>0?(lb6u5t=Vm#wft^h)yK-f+c3USEkV@5(CpcM-A1M40j1PXZ0 zA7`crm`Ah01atkFplE8KR-g(0DlqGJXO3a?(4`I=iG)n_T}abRJedAfhsQ5!Ph9ab z3~C8uA(RK}))zioz;OxE)bVxC7ZspBeDw6g>tf&@Hu4||14#NrUzQO$nGgJK5IrHa zX&6uwQwrVXJNO*<4_la%7oj7s1=|@h9S|A+qT@T_cP9jK?PebLdh*oTF<^f^RWwyXh7rH(tjJFDXn}eM&3$c>G-Kw9dG!!MI_+ z03=LIEHxM@Iz_5GDNPnEXc-WN)_GNSRyl0kF=N<#{1ak(FC10dc~yrQugh}O`uq{9 z#KuM>wV>!zSqiR+-gHUt$K6Xm7l?1(+8MMaxtIOWt9-5woFx<=*ebE7i2hFP&BrkRu5GH#(npIAOolBhs+HbD`qnat4J5vwJ%6DO{avE3XT zu?ec8rv|V|5e=nwF&-5K%CL;(TJwfQs4l;KjO7R$@f!s}E)iCSbYVu*;|0Am{0Wbk zTAWi&qf+~k6kC0f$~ciqH*5B#tCEvykL*(1a@XhMQ39~k&|s(faSogauI!CcmN6{XX25J%rm)iqy!zm0^+PFn4z_DO7mUTS%1s@ye%P=X!-6N{3hY zi_*U!y6=O>p1|G<{%Y_a%MoVhdaIE3wHn@rP2TPB$Q@US<3j#;=Gn-T<2B3WMAsio z2j5PdT(tMBHga%XGE$KQn~o&*&j%9HW|Am!m%LOv>IB=;h3b)JaLXza2V8 z62P1T0{o~U0=AnhSVjI*jav6V-}#UG=;^jVgdZrHMj8FR6)?PCQe*amZk-z1otL8$ zrG{PevFC%NP9#lnt8luC?DRb$nzlO#r*`W>5XI?`AT-4oOdwuc@^yr30)v!qjCh#< z4}vOg^;Go}$1D{{V9JxAn!fk z;s_DG9iKPW_IjiyAjkbfHHJ32@hm^b`mLjU;BTez&HnV6fJ*u=xPWh^E=Gp>RAal& zoEW+HBvyuy^|+Z#JpY5QC9i-K9LO^Vp`$?DFhQ8boFFu^eIG};Xewf1`K|8V^S6Je zTneWfNtc0WV{2kJ73sBaX0BTz{QRc?*%hQv+2&IQxpy&zw(e5l z!d!<}DDx`$?gWiMQ1iV0VZ=;?JwS02-Qq;(VrD~X+gl-f@HHj9|Fj-@S0;N;rO<|r zbls6O+Y2G@ROrmQiy7?dOLl?lE>C8Ez{P{wTe)xl{?kGp&;q6Qkw#R}R4eInh|Pd5 z&c1;e@3Nd6aPdU6pgU)Tu>^$)(5=2l{czXjG zH%s162?*HE|Bt7gWi%`)_7M@}*{O#SQ^9~LO_wTpFre}_zU(_oMb2y<(*dcv>acIM zA5WNhCv66iX0rLI>Tad1%ac5{1AZfVm#GGxo)6^O8e*NmTk z172((6uCH6hr@Ry0dL9WH6eF*t`M3z(2KAKFk^q$%+=zQkw)$@0Fc=sUdi{{cP?)3 zx+fsae;NXruWf;)udyiZFQLa7VjMF+3Hkp>B=88ex=ys)N0`J94P%InNs(DEwbKp9 ziFMSwga?-k2%bNZkUos)N+Wmd(X3y&Rfz5OZ<0zrhV+UHz&m@_4M~*AwyX0@-Qyp8 zPOq}6LVmZPK3=>J_P z?1~vo_zZqmqm;1kqig=HwBfr;X%b~RvY5K}b=mo@S2+929TYZqwtyUb8>fjJKz`SE zXKx%>7KsTt04yu9QZ{vWwFiMcA5cO|c%%t{Y$Y77KP+SWw*op%1NIQ3N2h+~^IHOP zr!mqai4S+Lhf6qDn#T-AY5j;&h<)4)h<(579LUhZX~B0uNIgN=e~y`iIS5Y%x#N*| zP>JIlF!DIE6miX*#sqOx@5Fg_(4!26_~h38XSYO(nc3qJiu_~?&%7OIR3bR7?Y*2< zCS|6L{~Dfajw}ch=!f+c@&_ZLMN8W15`Cr>hGXb{mUv0a)`*#6q~V<*Rw~|H1Sgx1IQ|D@R+`zJ1MP52QKExXW5*Hg2$h)oOAm zZVY^1PsPHx%?5VMrwaHTsf~+E9gt}AtxVd5Q>DmOCPST_7IV(*#?jNK zapPBeq4wlN!_4)9uO<+b`#d#cak|G*7P@EVEmLLoiVc*-?2HFyj)Z&_=SFXdT^t3S z%mQzSCeCad9`h?QpLf~q@E@!$-*1`sO;O=%)zYA{)dLdpQ5VLqONNfG)$t|~ANK#4 zb8?^K8z_@H?5Ni_s8@12A`osHY$G_m!EdiM@}BXim=hZ=D=2Izu@6gG>9)epU2)*^(nW-Mc_eqqd>bpt;)D&QPO-;nEuq zHtc(&^;@;Jhvh?ulELSkLdo2i3@!n^VDXr;Xb85yU*NST@ec0JoFVr8l3xb$%dnG$ z)B4h5Y~jgF`6Qha$Nu~%PE6oChhM}X!x(iUj`$OXl{49n#wZ1rZu`qtUXR$-YNb+h z1D4^`7z1^cT%WS@H049jwW|evxEzl`0BOi(&^(ab3jL?;OiKg%VcViiOQT6r^z1LA zf;P8${FeGE5x&!D8PG;R^KWsUAu4(*cId@}-`FP~bx4MGN}bAvA*`CySMJ{Po~$PV z4PmK?vH4|$qrdjJ1s7&QT*$+#$v2i$Sj5|&fODEd3hf#|HV*EXl96zl!d+$+NyBZaPb=$`GT zz~EQH+W>hY$21)3-qs=aZ`+k*CwZ zr$0MUU+#?}()?Uai7_@OHUtCM`mR&-3;NGnBG`twIx8n9ujKTx2Vr6tCByb_JPh2+ z?%A?h4iycpvVX8^(dEyeh$o6u9i52pYHranBM>1B*osxzEgiF0@;qhu;Av|fbFMY7 zpiZ|tHsO+azG;vQZ=`(nRTqOA^x_9vLOg4h(s~foyaj5+zgqk;9v<;PBvUd&aY?KH zfaj|VIxe+kl9g{V^$&)^q?OoNi%aH4IQe2^3T(SYk9N3th45FqNp3;J^R(P?ha~cT z7k^lpQ)l2utC&xiD{u7`jy%|*cz&5kvU6?On98_{BpG6(S2Q}A+aO{F`d|u4>gH|^wEJ2 zgJDjB6w>aPPm?Rr(9$fH>l5uGVb5)*C0<;-SmNxVw=0ggPfl&_FZQ7a6y#4wK@tLl zbp0UHk)Je+;!Pn;O_=to&EV%(dB2XZAr^Ii^@ga$vp-k7` zof5e~#vsJfAt=t?3dkaKo7*Nk`oGT^dY9M~$TTztMBmm)Y!3W|^y0OJ*Zo_T2_JHA z8fQe#Q?RAawmZIcFvY_IAmYpFG1f!t-`G-QJ>7Ck@_)i@4J006a3S!4w~)EbKlni2 zfAE3XN7o+&2m;{z)SLu4uw2yDK2dT7wAJ%m40`$ zr2>Ry0?0oE!Vo#w#;DAR;Sq!hdYzB1=|!Fly~7A@Jq`RD9`*;~hS&h30!Xm;|7(cg z)-A{kz^}mt1_87f+y3Ar*awjnDUe6{V>%(C-8@(lg`c%jud!R?I~-K&v@$!5ZEJ(d zPz-GZ&=7%+g!4ZDbi@yS&#L_ifpSD>i`wfY-2dybjhpOMk3!{NNX>sCp)fJUbh#DqCQK5;Bv?=H}+VseUp2VwvwtAC5gKUnJBJq>G-7)cIJ# z+YVq3IMUlVx|DlmUvffdw%X9JU!2Bi7UZ(s3$%da2oIXOsvCYd>8 z=-;SbQBT>`X$sBhm>l6CALBoN?US~{U0{nzfygmM-tXYz7xI$(|Q0+007!N440m%VA>ESq4g?T z_dGn{>J7~E6{o)vj*>OIF_o$c;y#ijae5;sz~;bJ8yVR>l{5pSzl$O(ehECFx%V~~6Wiq7 z@a`@SCw4_3{RAmosHiI`F_TCU=JbXP9vAC7yRgkjE-_%Z&R zz!zDuKTqFEP94I;L&8aEfhNkuFRI(g7mN^4T#Cyk+y$Mi7-5OPm9uXqWYodZvJpV^ zP#2apBUd#^527+-r#=wkCh5kzB$Te=rD%j8#I9An`^YZHf?0hSmLZIF#8r6AObFqS z7EF1Xn}d+1ig{EpF}Axw4+w-g6;0G72u+;`BEG74788DceYJz%0{2D3fr+G!)M5o@;(G?^g*g3%L|E;# zBe7vXPR{J{`^&WcQK-c-|6HXJb6Cho&4T(#vIK4j-Tu$QnG=Fk6wr$uet>I2b4yXl~gY>ZXvBFtj`So<+#pjFc4$}IM!WzF<*XDfw zv|jW$gxz60;c25sy;mJ?ReGyt(4_dSwQR)7S&73s=+VCDdV#|?|Kh0 zMgOCOdmhPnj|E%9EPp;Zv{(-aWhodUEehxj86G|6S&*d`G{wa*%%fuJA#U80&suI> zs{E%lw131Z-3ZtFny+%QdLpsC$oPHvqMZGW3AuDbOT&j~wW(4 zo)w?fIefuMHfziGR%;H*TL|<_XLWgN#fN{GZcd5fdZK8Lq)K}`!KfqL9>4rYqyN&- zV(r7NWNO1NTb9e?(tv=pi?oec%SAW?{dbq-EgSDOx_3g0<<=ZbI7p}&3bX&!3;MTv zVEt$$1#_)kC5s{hd1tXR*H;rqK5&@rdGri3NcA!`4kA@^BrcA`jMgJm$ixWXz`)2-M(?6w%wFqeDA@^ij|HIbg@%$ZSZ|>%Y7d%cIhlkob9&kPzU*Lf7J@US?PDp(|c1M3r~81`3{T z#j%KpMIIMygaL$tN~M;X3k~rXKpKIlS2hL|qoT?fpm})Efc6q(pXuRGj$iliVi#0< z4~h3UDJ8t#2jX{2nW;()uD_WIG$UP4{Nv3DIQt5~qokJEdYM!aG^kv{qWYa~@ej^= z0jxFh4l2S&OCWr6IpA>dJe0#$W`olfdpiQ%W<$@_6hmCP3udT#~!eG$332AmHpbn-G z8y9aQIv57OouvNEcUb?XDg~3rc)F$D|(?J5UqMvDFML@CRBnfri83UQHfr0@c z?1C`k9syGf#QekALzof@97+8%TO!kQVUdE+YwxPW{17_fiO|+vmWCjfjvU{u>X|N9 zgq;Dx6ljPFqODp}CO_cO{Dj>Rusgqbc`J!*4aJA>HG43P+)`ruY2eztn{ zdmBkpK+!12y|m68Iv0aE(KI2F6Teb&-S@&eYp4Bh5_;m<}lrc6C;CN0&S zln7mRn#EVw!+Gqn2s<)(Oun?!ti^@ zquR3>fAlw>&@vs0-pRfLyRZXlM!TyY3hB2@&Z+|v9+g5aEZ=3+*<%3;t9%xJZYGt# z#B@XvdaJ(#?1D1pX|uCDy!lNI@asFqc}`w1pbN*7>iiRTAn>9W+k@xBYiG7HsQ$63 zUv1Ri*W;<>)x8i?F8~XEPq)7fiPrCm(u93w{LRfEQkiw~N9hwY98Se~&IsPe0Kr~4 zR2yRIS0P>u)!iR)Re=lPyVaM2k-BdrW1RkJ@6cny6j{_wK>*vt}94~%>EBN-JIoD|cTX$UHv40Z7jAW;!XW* zBC)cbC%JW(Cp1lqLGO`Cv8!i`mDGYEg|nW??CmOX&}#ML#X?5cv5bf%ZmeE$o2>Vk?%4h|Z`!6zi``#QbC}WU z@r1t7_|Da*BC_G+IvyeZ<&g=B7&U41nIro*Vswcbv3Rw(l_vT>pfT!7enrROn%J~c z#i@`MmPFaJ3)ql_i!Ip)&t4I(uFhRk&L`u$x{HDzQ!s|V&kVuki($2qA53S|RnYRa z)CvpTa>%H%ROo}`XF@sNb5)EB@(f9A?~r$WqP?_TZTI4;tp1!4s^D?#)feaeDZWIG zUAI*_lkIpZj8J!-jHf4+))^OU-&TmDby4GEuMk)YdZ&TYGN znI7tTaM%^8E)w%=)Q}_yl}|Ac>7~+Umw%`zEpl}mH(LOGYT6>iAElUY#J}0q5JeXy zwXJ!S#PW_?&xzwrbKG*%&liV_9^Q|L;ByDr_Ux*Ko{f4$76u9AyGy14qcOqJ5F~oP zz;9Qaek#z$4F$h83aBXFrf-6)Gu86ph-KnWJ)AnGI-0`5lGrSgxeoLh*&!ZI&J>8k zpkG4>#@7oC7Pg4MZ78)N)f$!-cO2vV_yu;4q=A)o?5wVax2P#TlK$-ca9hhai0+WCT}PVio70FdQ`70{^&&eJaFXIqoUJntL+q zm!gbS+b@aS>n;9BCQ(uI+5SEGZo+AC9ZP=wqV?RoFe6`NNObaVzhF~{pU1U|=)-fN zXq*NEYiANU6$KN+U#Z%c@oJ0T>k}TRs=Qd#q0aYp(bF(?dMi8ibQny7fddlvOFC!P z(rK`I>y~Asr}0%uM#ZHPwcbg+iC?C7ncsQ0E<>Uh1z8mO$^5dbwQH}3hbGZb>)c^| z2dW<~Jv_pY;dbKP8h4~yFzwcCsdcTkuT=ix3z3~feu0eaAg7ae@+7CV-voOH#uMzh zCpcsV!)R10=iaWT=s+wKOU+myJ;}FGc8r!2luUJqG^JmB_Iqi&-KOO^y!)KK;U-Q^G!J8t z{;@f)#z|K1{*m5@1 zs>Y(8M^A}$Jjf-CQ694Xg_>UQbz0HWDm!TX`kNRdWV?u+lHXTM)1O9W{3_il6&y5l zNmAhjW@U%M{ncY3!op3GwhB~mu5Dr*EN^;xlS{!iVs5t>@8TpCv{zz_HmlM*Kbc(Z zLnf1JJSH^<7ZvY6;hssSE1F7bz%cxTBTxQfL!Q}Lo$!;h6mf={ zZ~T-kDHe*?p^sl@L|x&*hiqJwQ5@AT3ImeSiGoE z7&6ANtkJPwrY-Q|obWd1FxPNB4$Y&abD=`=@jmwkUZywmW%q@42Y%xB`GN*LcX~e+ z>&lz;lA4O|_64{M3Ey2S!?aWBaM@6_Q}@=VPmCXyEIz?-x9hmC7LjuWn$u3S;E>&I z`?4BN$TAyekf!UoWo-c@Q!8lBi5+oCe@Ja_H^aFOIj8i;YuKLXD((78M`m$mJks9T zBE( zrk}>>3Z&ib*BR!S(lM`M`D_1zMTRof2}h76_Jz-%JT>&0#kNr4Gyd-cw<7GYO<^_MO4g|Wmwv_CZE z6e#&LoCY4pPb(~45D=A(`ex^egmX~Q%G5?XVjqDE*QCCjmFIM9f{?ni`*@BZczZ`kdc z_9J88dUIl;{$uvb8g3HXYZbST()*jWrHq2>)dVGPAokN3-t%8a>4U?kc8$oQJ@J$6yE?6Xs5!>P{K zIiZEk14`vlgUTeF*YbFZ)pfWJ2(xaIfPkMtJK_GC(5BuKV>|3oUnsx;^i+FWLPi%} z#oG(4^*lVP>_cw`@0N+F{V9@lDzifPz$Nfwk2ai#xA&ybSYoJT>B5-SZ_+LJ60yFg z1{TAJRX$=Biep*~F7ZhfF!oFYmc*m%1c>VSn**|~vuc5rWaRByejpTOb#&io#4guw-%4MB&*-j?$p(1s^b z5`NEouAn{NuS@G!-485RN5LSVuJEWbn}o`#r>df|cN+$B%_)&AV4o2Xf=O0kNkRBC zCaM~-&$tg>(w=e0SoQ4rpEm@+bolmB4dIlf2`z{HSZ_HgmoHGyWzpx=?3ho|Mu( zL^ODi|0+AF&vXFL3O;hG8yFzfK+X|vni+GrjS>f9I+2YbT8G;P@nFJwpXnf0QIH}R zh0QQ}teC#l86xHq2;&X}A|xMmP91LnjF8!2s&THXLO^~@kg}W4EKmawIf@+%a7|Uv z6C#a5LVC?X@?-iIh+uYFAbvjN8X;!}DFnGR0svg80JdN?Ne~*c*te zQA4GCgYoSzqyVd(S7+mA3~ub7nlI1R6mpeyXIvcAv()7%%Xs;jq~WJt}Ndho@Oz1)5i z!@mKp&p-i0uf@_=&@m-w$h27ZGDL2h8;hLIfKMZpcEF0bI;A?|(zIuLovLB(Ed66c z-|vQ+NOf}^a781mwhYpgTNp1jY^FHud;y}NRUGWUnX_?X{uqQ{x7n2#nn| zXq9WEnLDjUD^*ba#Zc<$z2g^UX?j7hO}x8%0vD$id)e&EQStIbb5e7qHP^+Km6cLW z&uh$}`Nf{#TcITbhUa=2nOkKIw8zI>)TYhqvCubYqH)hRgq(I=Nc9)YYELHjq6Kn= zM?r+OI-vMqD!0ZBf!Fp&H?O$EbpTPz+mmcA7;+zIoWIL0bXAiwAmzUQFpW@|gM&1# z)R+v2FT#q*TeTHQlQC`>_t#H8%Bfwk!AYxtH14SoDHv`Jk*+Inf*oSL9I1&4H&}h? z@@v^vG7Wx0cBXVRx9pRdKhN^)4p|GRv(UR~)QattpX-jEkfQpJSv@pyxYAk^(cCpu zNHE#%-q$8D93Hei8D730Tb^)#;z76O;Jn<6i@qJuHdndvxF9cK7>@m?d*M5MX|HIjyMbsYESL6taR$*bmr`eq7oNs zY0C4H>$XzZ2>GUld#dWksNY=7|5jbeHYmj{=^a#lUgH~w7hGwNw%K3{Q_3e$q0&t$C0JTdptYs_d>B*?MhC=Q?1X9Bc+W|$(14`+J zPF%@VV>U1w(n{Ln-)g@~w|{)s$2MX}dE885*fZ4UYyZJme}pA*GIl(%r9y}{vm*aH zU+kQQybhx^M;1D82rns3{dTuTY2*DXZksrTzL@Z#SZInLN5Xa+zFq<`_;Y>*!SoUr z2Cs$$JJ^8tm?3J^MKQ`O6^R}0bQ7g_eyVr<+yR^xZ`W>-M6bhDSJC$tEyzmE$FPmy z^RQt0W&irpJ(m4W%a~D+u$Z`UPY2EVwjU5J+4+$9K_>np_F3GJw5t6N-B+oY$E0?w z{b#hr0bk@;(+sTCq}JiBCh?oHeeX$wH-6=lS+~Tk7ID+W{fvq8W;rney&^MSIbz9s zq09dPE!DPsQB93LlAw92fw4V?E2=BP223qFqJEzE$t;%qGKMv7eK9tz)MN)zr)B8A z(4dshRx{UNDL<5aIDFj$(jO(qgrL9uh*|B#It};qUb9uGeN{G^ekHoyy{#tz@3aW_ zaxj>vhT1?`m^)OI9;gaef739vCv;6qO=Uarw9LM6FWli6p)6L@@imB32uD|AXD$5V zJ~iAfmZrVzUJy|wb=d?fA80YamSW6P$Etf3)CK?e5HBc1hT%=@$DT|2nC3Cm{-2O5 z)0siXD$HKr;NXXoByl~DX%=zM=!ay2#>NVVDzwXgCi&Xy88$6lptUWrFtxak$*FaPKuQC@Dyb~b|fiXX2aPpzCBM-ILoav(gZEGgqS^>fq&C>9S_wvZ5S^19>W7cICT+e8I5Q+^jsrH}J6$cJ@iAQbP-N zF|CyfrJ6~Vd1AwyC8vY>h3k5;GIYBAJ(z5azA5_r;k7jPvfWaOYS}O)yk)*1j+K{J z!y{y{zL+JuAU7nmcZxegO{4RQ9I2}e=8`HY?djERHiW`eR=@0E2@m414 zTGOpEg0WmCuqk43(C>piL+ZOt+(wB|EL*zsX;|TgPDzhCPOq1 zIo)cD8%a8R7YhAa@AIC63V+ezEWX3p0^>26O8x2cN=BM`{&F>M6PxQ8X-;#txwgo1 zhlQZ|?PaF9#viK>&Sh=NhJi$3BOd$y+1>msEL`X90*mVwKr95Rh+Kp#eY{36N~Y zD^mk38>8uz(cjrh40Vn{Laq>4B#`*bM_^qItbLL3$tGq6M(U9;4gCM$6+35Y0jMUh z!nK?fQ2*{T86<-oFv|}hn*d-VzOylxWo0@78ibZ@lTrGP;Z9U(V_umTsFR$)Di;71 z*am&HrWeM zih#=RSz5a{6W#iv<$lVuc-*k8o08GA!oQGgk%41mvgxfIywptd)u%sIk%oA;ZQOPv zy^0eR0`BN`qqE!QDaYvgZihmx__sw%5z-ai zs`mjz&(>G7QFb^cp*#fQa&0<-)T-ZUh(yMb9LdqP+FX1m7}~8-&CPRoA{GvJvyaF) zjIUuFwvWwoG|e7!VEkj4niqQ}98_9=uE%3)NRjQDpu)9&vy>?{=n)4_=WoYUZbbm; zF=hZ^eZ0^y#TtFQk=OOeZ(@`C?{Ab^+7_7SFcEUlfm4cv;R>moY2m3&y9)W%fE|y< z#P8louwv5ionih%E7Y>2p?-h_=c`t2OGLaO%QK5!8-B~1HyD$%L1o@sp0NVJi8m0Y zg@VU&Nu(7O_O150?`I3Nc0nZW8uuYeO^`8n_bw1+SRRIB;8uaZFCy^*QHMyYyK?E8B$w5GxAUS7fG718cbB>acoCE~Xb*mfw z*4pQs@45Fp_s=|j9J!{M{M={<}RE_z*YHfD9+rL=f-*X}u?_aDc26{DE=I<9K zw^-@z>2(^yPI(1OihdSwhSgzjTRZFP{?I*oy7W_JV29Hutm2d0W!=cuEC^uJN&o7W*ZK3|CZLg~Z)7~US zel#PhGnnNCs|YEnjP=Z6Xa+cH$~yAoW5Pdz6)@;GSD3OHkBsa*W4p$RiDg6* z7YYsNE%Ug80My7uB^U_`l-QC~B=k1+2Bc0<@Dqd=Q%%wrTwTnMDQb!PPxR7{2k83u zo}v!&I;>Tlqa^~bw>i=?-buCY(&NWA=z+-Jb%kj9FpgG}d%Fl1(4dCm#;f@0nK;c~ zBV&P7kBaFVmmjxHsqB*b#C$)2?5xw|1cGgqj~IKFicqW zcr2*iTVW%^`yYY0rB4gtPP)&k7hidel}FQ4SF}qEQ^E5j$2>;u5%Wgl#12VZW&jwI zCv!v_)$jZv3wQZ2l>#zxSaD$RDMf3R(z=)LLik=yTY90w8i974qvdrG@pMerub54oz=obqQ2McQIv3pHV#4 z1`D3__(q~Pb(G~D^kVU8Y8!1ShHab^lG^9aYfhl?B+GZs6QtUz5Gu!0W`d~u@I z3^Di={?o9@F)KYbT?F^Y$ohlhKE86?Fy_**5aE3$&@g%>L)tTTM~57%##V&A11t2` zViC(WOGul(f}Z_&7aLJ!XL;l|{xHnHgl5L4%IncRxRyzRC z9Y37KuPF*5Qke`95$H*So1nv$r8}_EKf^kXS`yxu;&ko+l_$+au&Vkr)2qc(@+70# z*~(_;@zIO@SDSi~yCpwuO*oB*uD){qe^`mvV(-x8>y^{_zd(b5|84(&I@A9)K7J`o z?&+k-&!a|D7{+H5TW~82U&~eeXzY7jqwxt+5odu9eUq--oNp=?->u$er}>zlH68o?7g9 zEX}HAT`L{Kw^RG4J#tEHuDX*vgx%riFR@kM6b!GVpIf`XZeycDc~Cx zOx-_4O$?eg%yk)rwtbGzw6zl+L{c5dPRWiM?WGpSb)diFO)LHFQ^wcev{FE;^C;s5 z)(OBZ$W>Ewq4tG_kN61dvm&Hv3~BNk$=}{%$>K(n4^D(o>{issuBPs7txBh1NRKZi zi8|j=Q}p-2f*{g$P@Ycwy@ba%;Tz^gd-;)=V$vlY!gC4~sLA|q2EU8gboSQ%dy;Gh zT6smET7WOp%*pmRtvZ3U10&+b;8ZjPHp-j=j&j<%=*!-KugLHY#?gM2=75fUhE>Z_ z49lbeJMK}x2Tcd34FHRB%`NPBmjQmsNvNMP}u$=Irb@=?d`#GvWd%E!8ve3}9#!G;0xA)tL=Gw}h zzDvY3n5CFybJDkgLjSH09G^P7_e11`P&3H3S;DQr>E5d#@$m+3?Uu$ThFbX&<24kD zoi#cgHEJ$%>k$j})S;3945M@QXfHW0Nvo>ct@SanAvncU&Ll+gNlwPux<~Hco<=yRy zopU*+ds)g>Y!n_I7vRZQ&v(i{$qqcT(9>jBaYwKR+7_kol}BuDZgPE|?o*axyzKdT z&sv6u$?J+?P~Jf$d1R(mZmvnS&M~aod0au;o;7Yk%=y0s`p3d(6qgyb(O>ZVb ziu;X?GZfu>#ZPufnHnUUNIxC%d^g}DnV76|&NE&#K)2xchi$<2W48G$k=s%h7V4+ai!=?6jK^8Q*tL zN0*;SyD?Gf1Rz0iD8V)35vq^9_zQ<lduDFHn!iGI?yTSn7fy{!o+Nldg1wA0z{@ zh{*w!$wd5u(t<=KYF7B5Cf_vKodh?=`&?Mt}^u3TZ=*zpVBJ)$?FhUG7?C<3-b_v1+vl{mmoM+D7x1Bl%89bF! zN`zeL|X0VWFO$b#SD0>G$&f}zJZ zVaabGwdqJqt{~iW4!K6pz`xO+fQBrfG`68jZ?-m(B(!G`Fh=dbK0u>g>z4K1KLI9; zA{<7Vzd<;5Cw1?D)e+_wmMR3)e)bz)G1>c^-vORk!U(j3 zr9{-10CV1}L%A`zTyQnQ6p)-kTA?F8!re7SbnHs^HmrDvwnD3f?AFA)mRPP?IM58;`LL1F2V}5AbF99N&~e5CPo{Y$FZ*baT|@NcP)JAiJsgtf3!8 zHSAUZ&RMa)KuZzY@{_5?C(%Us>U>TS{s&9f&Y}zhw26S>NI}!fC!l+|vnx`M31JH_UpM&`swwnP+Q=XpzWehgn373N?F4N; zt_xHJdfx{cHLSbpo$qPC&Q>LBHN$hl_in{geXA%GZ2!xm<~ZA<{Qm1xc>`Dx^X`+Y zoDXxK%c!gZ6V3wO_gPvkYCrP`P6A`#YWPHa_^#sX-Xb^~!gOwOFjGUCKI2nL`Jy+g zFsy7kH_H5LP@o;vG%VCI`i{aKA2`m@B9 zHmznq@Yx!qdNod9=}@hCMc%F*G+OuR$%U4JrPkWY!Sp##VrQ)%Np5aa?4Ti|3wf3| zwI1I=Oz;KW>shW*Dd)Gl(3DS4@^JhTzb%wR8u?I+1b+#fDk#aQwl}#mke3;z?iyuRWDWqi}=q+}iw_uk0c_5_!Uf8*#=Q*pPAA*x3L{IB#E2~1o$wZ|O(CiH zv`aVU7KsFYzI^AvTIk|5Fjc)-XMxxgq5P<-F==p5vq^;gQM$L$^faW}JfccqGmbI} z!|TLL_PPFE(}lA{UscD9OyIN9yikULfGQmUPg|^blGF`<-tbe4u2SqJB$L6vAv-t| z3-HokOif(daKv~x&0x1rq;n>l2p5!#d_rNefad^hPE7A#G8P9 zDB1hXhiEbqy{#`w zc8DWIk<`t(_oHP-<3nw&X8CCof4<{fVi2OXG*dJ9rR=d#!vQS_iy=)41nigx(VntM z|FpQ^d&P3E_(Gs8QEOnh$3uLzS#Y9OneB}uOP7M2OoOMHZ#;Lp(e!>W=ySunr4C<%elA;)USUiKodzeG~Y+zw zyJNWfGrHM;ZP#8Wb_uY>tAI)J_ZBa0`Pqjn`*a=6Jxrk$NR*n3^jScr}NfS4k{bPg1eVB6VIs$H?{j^As!E?kUoLE#`#3&i%duVT?Zp<5nGH-@*p#cH6PJhskUVlM&J->CddRkhsVC-+dxdtfp1AsyU zF!mx#8o*jB`JI+XmE7khw7p#Gx-2|^3$&~?ff1-GW{K_U29WfI@}d3WkXt|vzdkev z@1NRJfRqZLJyrE@wWltV?8FvY6#2A3i{uN^Oa}y7=<2O?g>H^lFKZ~+7B<;;0lg@! zZ)ainI)@6Swt-rpLE!#JCe-QHLL7`$bRfjQ?J)N2<1#>I#ZR*^k(5xJg{=t?3}hysIC+kngDO?oqv zPZLG;b+wtN=aVZu1~d5Xh%;UNoH#v;H;_5_hEO^${Fe0cl}2~S$d8_#f|s8@Fk8xe z{ke8JF0qVxB=g|D!U0oR=K1aKnXv@f=kZe-KY~a*aYJ9;Z%%IvnP*)ImX(NJR5zB{ zCwxxKL-)<^_{H{pm+~-j!b?eSaSwueY2W`g{huu$ES75YIZ?YNw-iOP6X!zt7py8Q z=3)IM&0IV^f^K`ybZW)lZSo(FYHpIMEl1%eD#Tsf>{zI!Nx{~suUq<#i?$GJFd zGc(seJY@)!I$W&^DEXZ?`7r7XK->*G68rtXBLoWkO$hYme}fRn_8){mZWs%&LUdG8 zBl&=8G_Lu8YX0y6X(8qA#x*n#9k+4f4`1cbf_XRTs{oNsK2) z8;YBUC{U>JF8LyrNRa-N zAg$jpOL=ldG4Ekfs+C;h)LGijca$;c-`DUNY#1zNC5$_>+gaL0{o6Lm6&&)5(u2q7 z0yc4z%WnX?*8Ruud7!QOPXMBU0C;Po)`}X>LtbM;0`O+y*9^hMfSAZ_7}IluU8jO; z2vC-I1t1k*PvCAR(x>ViUR!x!Y9>4Bnf{q7j{fqf>pQ)G7y=DDUyu?=hn$oQLtHCJ}s>@VczYNU}t}6=HzOj z)K&_1B_9GDHSG1i!8&Si@uEC4W(2sh9?>T*c@?XztwgPB)Nak`TM99ZnxEv)aOgM+ zf&HX)Yx-96;=}ue;!CM@&n?^2my%7=uN0}uezMb)=bzjEiV-%xG!TETzCZkY6r1&< zvO@9J&)JVT_H1)X8;xt!p{Rk-cL^q-Bhz{$Xds)s6d=kK=1$== zpF9Ym@cM&x)BN>I+>_}@Q1F+x9)#jK{YZd91m4UHIFW%TVWqqq5flIn)DPr2u{#M- z@n@ip9LRGVJz%Wgh~mS$#);yXw91P)1tZ<@cAQ)=OzK%skc2(;oRK*1Vg1fC%hw?M15lI|QA!{(u&q zwlw`8QA0YW+k-%9eegxHCZMF?YTg5&C$blW0cwi8&i}k(*FNOf%}`my&oOQnEXc5x zIr(9Qu60AOfA96~e)+FVV7I+Cpf8m12-Mr+aOR}SMoE&q?*L8k(6xI0z27@lUSjym zTaoXJdIK@cW^q~8+Mni4&arANYU2H$>-GLpJI0A)b(`v8FXZ1XY@QUqOUd4%toP)S zoE>*keAr2b(quZ=HCnlmYRNDyn|34P5_9&Dt>HYb6)v=E_(kb2&~^u6oV0hcEI%W= zhLt{dK`ku3zcAlQSC+26Vt^`&EaD1X4d;+#L$!)LZVrD>|3b%Or?{4reZi`d-!VY{ zNw-5mKK}gf{PE}2r+DA{~&(hn!eg)!xQ^Ii>FZP0mG~vnady4I_cjm#j;Y#2~cw(1;VoHfa zCADk!@a~jgLavWGHd~?*Zcg~Jy%kCAWLWTy@uSkK!#wpI(+(Q?NAcdql#6rHD`VY{n0PSf+0(a(N&Y&F*01YPc{j}+I9&R@Ox9tT*lQ!Ohio`;SAgKnibf zepl_xjyxVPIK+8}u775Mz}_N#?Zv!OQpIE$Nmj*kM)MepS@It4=vaTxk~esIX+y{n z1C04H@n`Ssj(pe`bnMw$erktyf?sPfHO;@0%z=k8ivMLg5&kPkzXI*L&*HuqB_L`Y ztWMAEiwr^@b92N+Y0RJV;Wb2?GF@>nz46UO3sa(tt(IMx;%-H>hra%Hm1#A{B&=Rm z{?YRzJ<<3V$|pk({Ls+ma;sE(iqBn*os@J$w;%@ib_Lv(K69#ew6ko<(c&-9B|eBtr0#u=9*Q@<#fawwks=EbJURj9n5u1WI>oRz~qc474A)&;JlggWwNVKtZtHXx&6TwaSHe1Wlh9vG% zC$;sVJ3PZedU*5O&BMyKLcR6jCxaz^otsl$@(Vs&RoK-5L024$Qap2+y z_YYD#Us{gHkM0YuJcxLTVyFI`W?g}nV27qwW)|B8ja{33->5+AKAgU19^BEGIUx}) zH#Q7D+~fXoZUUxfZIH0aH8-J{HRuIPwAZ}Gs8tys38kAq?jc^~l0H@gPwy@Vbmo}9 zj9fizuV(+TWdERt!F}p!(dyWOkJc{F93+jO4WBbiaa%=ykjpR$vwXlRyH05emtC5ME<}%;a+6EHRKu9e0PT`SVo;PJgHaX z-(d73>@7Fpx01vSIu$(0hmxP}-cl>hHMSv2)qgc*z1jzVk+k>7_d%IlrTf?Y zJS`q&U9g;`iT#{;H!*3v>t|JE_<5U7yZXbl7na8NxDi0%KnRsu9&Y6TI%32 zUG@gLwbk|ov~U%^Q@)z$eEeXW7)3~4j6(YEFg}LwukAT*eGjLw+-W&3P!nAK6YR9# zhr!g>8Q+c~T#dF|^F?Xz3j?NMX=eA)I{vnNs*$cR0#(RRHS@0Nqdj%Ro0Qd3O{4 z+XINq`|#i&3Ft#MLY~FqsmqK0Y8#0WRD$i1VrP($7a*#IVKtYouoiNBM)k}f^;hA6F}_W_kVuq?OdL3GrOTIeKB{7fDsQXHOmC5%AfygBLc=b7 z(BLYjx;c~&}ekSbom1ytpga|5fpC9%@=Z3 zr@-Sy&hvO<<2^I*sQz~505=ttz;Qm(p0rJMs^|profO%|mI)*TP+2asd((0yRLGI)mAyAIEFj@VH%Rb# z0xAYL$go6|IYlmN01XNyKD>aikXtr=O0LaYfpk6sNCjoZfT(H<=P{Ws1JQkUW*rR#L~hV2 z`GdwZaH9=*4hS2vMM?24R#8#eMg{(^aK0cm-uG2N$+RKwaMXYKlN)lQi4Ls0s?<=v zqdaQ7s^|;G5tTkYK89OV7C&KHp}A$znF_cx1+BKL*yTdsft0I_9^oxd&d>KV(giz) z_V7x7&1cJa{Zv)*qh7dJ^h?&}4~6;XUpYyufS%*O*$(awn``i z%u;ybGLsWLh*Wcnik(Cm;z8)IT8An7q9(S7l__QZr2zuQ93ZAA#e+q9R|)3{f|e_e zGS&c@xDP=3B_i=IH-5LO$I2Nkx=$0+4h|hLWEq8GEkY1o|4Zb1awDTXP$5tEl$Xb+ctuH-ZH@L zTvYDiLEQI++f7&1QD`Z;ffbpFW&~}BI{6?8ma+i?9Z@AD$B9S%3T>%Ldv}dMb znTr7sPbuN{7k_|3I5VFV572u@!sRtE5H;lXx3$0QO-IHFJCZWxFno|6SD^fX0^jE) zDgmJP*2y+9quznacJLbTY-x}q(Khz|{|+X4O7<7L{A)nJt_e>zw&;(87oS(6!h*XD zk&QD4aQcZ}wfq5qSJIQ>$=QIHdJrT~qhcNdkt5~uq$Ac$k|e=XllrC!!FH=bzT6OV z4UQlaY!fFoYMb}Jxw?R1jm!I3EsTvIMgSnCx_z+a;a;~5Lb0!Yy5BjgoL z_tlYuXi*NMUO?U1qs`WM&s;hBh|QS@+gijFc`_oS@-Zr?!AkTIimhb)X|^aIQ9ekc zY|=*Y(lEm8q}8d+#bmIC(^1}GXl{k}Q;wqof`goeo=r2f2bU6HnT%C{iv?7YUz=O) z2>6P0>_HgM=1SWKsc+ms@OtBf7C?Z>D~(4h5qzd?A8w(>kk<;G%cKB|s8mXg%oWH* z!(uwgLy1}ovm#_y$bhZ6=FxoK=r#{H!o+#yO{XlM?1*FD7-Im_hBRcABK&DyoM zdC3ZWDMN(wuXoLVzNG!vyZ;`Biq`*u0SSK2sT>M+%AH}@MQeS7T^YinFAEo^ZP2r- z-zBJ6#%}ORAa`kbdk>9LZPhqCpyTt8JEi#44z$bTz|(+AhXtd8B#md2UT ze%$tpU2YD-qze^4igrLZh9a8i&}fRgGujS=>L&d&W}*Mk=V}o#Tt|Wz;9Vt07TLk& zAf_lxtog2ujZ&CsM6RE@n;i))0b$}?AQa~Fk(cWo`DNU?eH5& zo9|W^Kmd|Hx%M+qs85ZJas{>ebrcw(JzK@M#-*4?p^)^d0;L2Y1R_u7U?LkUPw(0f z;E!e}d1OA9!$D(nR)+P&+|Bjo2W(#dHLSC;7ge&tZ-rAOWLExV&=vF5RG*&AFcUnT(K=xGy2NL zjl1_KEr>&?K7(JYW&8k(6wmO<9$z^j-%TnHU^U1Qs9|U`&vRXen@ql+rIih*x&U3GNQWY{n$d$eBs8T}Sr^E$NC|3k zkxs;*{6W3ka407d`f6N`XA~Bv_ii2+pGIjCCPGd#>w>|sGke#!oYRb}-W2MV@#0@= zMy(?zSP${;rjbXQ875yjgo~>lOwo%Pa)apO6SdcK3vcXlehsdXz}0v6jpFnY2~Axl z5EwH#c<54l;n4{j^6@yqWZUb1qHt&oM4&QPgPDn{dhGz4CQ$ODgxw;-UFXWaj5{ALAREvuoyBU32nP=q#P%Sjw9*x z3}@x82szc4;9{HN8pT$dS|a+_a71F@7InbH8|-ks{$b?<(vNM4ZFz`;&ZSz#+7)hYNK#%ragjQ&3Keq9N4K~M3>R53JY{^T9?)tLeQGMrOe*G}XSSC+|tDV_-a0p%NXCDu%i(}u%n7O-*Nr6K?2ltHYa+?zq z2J+mG6UB3QiV_vNdyMbDZJkm)iMw@3Nn%<`AXf)|NLx_-wEM|-|v`e z7Q0ts@s5G+67*>Wl9GCJd|t1r`ij!nXa97vMqZQo(f-M6lcMcWNw_Ep2Y-6CXTa6t;Tot=CXT1O(^5ay~ zb&FwUQ${<%p}0MV^|h4|!J0ZkXGyFAziDP+(YY@oMY-lrWn3Wc;T#xR!7ge)(?TvA z#+qg^tpn}wOdPDH)@1i!Hyg-t;2ZR{P&qfB;y&i%<^E;pPrmqrc82ZH6JcLIe=2xf z`z1TGrxYMH?cd2E7k~c{&mlUFoJB@Z*6RY#GERQ!YLAs_p3u+j+)H?V_r1{$&Gbio z%^J3y$A=4<4$q>#=Uq4y#Vn`xI?nclf1Al|XsZy8fV6V9_daL*HxFmjG5U(#4(fue zh8w4TJ$hITb}XPzOn4h;JuWI_-EnAXeW!jK62L$J-wQv3ZYb_cJUtGvH{g11KPBPg zXDHCwl*GhD>}DV@WEfH1XEQS1(M@MfmnF6N!DvdT##F=Sb~M%-4v)!R4u#S?788bN zFMl>o>ZUmBjD>zvDI8ncJ?HyC(oh!Bl1;_ya$NoRN;vRu!%rE%AHGfo&~H2j2%t-`Xp&bjU+k= zlj|`%q%sP$uQMk!wI=LRw{pVohWc`2V~N#lgRZvMH01bY5u-JCNzlZ+-T?n*4(i;` zH^E%Z2>a0URyvr_&gzF0g1^V_yS%wv#B+EaBe@E8%?~{;2!S-LE!vHJk zth=y9pFOWUQ$<=ux`Yo#jaHr7r zi;o276_ved=*@Fn;dnbDtUw6sv(v%03L{ z1;5yw0LiRICJ=x!i|n)1_C#DTmPdt=H1w0O7g_8_9Lu#EOskWe5u z-87ZrO*XiO)%~`>(<}Qv0a;Gfdy92!+r>oVB(G!n@2&^tJ(%GmNat#2l^O!8WhV!; zQYn1s=?aoi$D z5EaOeV)_tXUpH8FX4JIC=_ohb4AsSC5ZHT}wWBr_XwM{~Sd>1Sd_tY$^W{A{qXij5 zThzGn&!?(x$uUOBhLb;|EqZ)5D$DP67FX<)hNVcnoe;<~pR!xcc4&);unyj!2)SE2 z(@r%^v&r!5j=oS2`@+k62``Ud8{71m>5e{KJD$kTOYbZz1h!0cZ{aQ}P^KEv+2--^ z1uoFnZ7zLfr2Sv)uaPv45&dbgR?RMG!8{cR&$Fi_nF%Z_ViDjUZHaJU;1V9dIE|5* z_*Q)PlPD8^vVfmDdsCMm$LXV%r?0c^MvZOF-1Wi|bNe6MuCh1hZYZ@j6;c_VvUsQ1 z8a!ijnAXFg#p>qo@T1PlP{EfI^R+Q1U+_)KCKa$JFnRJ}(JS9gx1h zw^(&-rRT=6@bkk|uZ+{o>6CZUW#A3!FIKF5bD6OSUI~SU%viz^930*#rwWkwh05Wl z%7a|-jb^?Jh2BV2)%EK4#Ckl9i*Qz&o^(@;LCcDXO`VP}YzjCTk@Z5@n^;Q+Ax1xd ztJeI{@n-&bGgwsXGO%A|=LUxP?NcBtf`bQN@>*iq!3`$SOVDdFuGSZt&Jf#mc24WB z6}Pr`9y(~qkJO~|c7rC>2{Dd1i@(6b1(bb@@7(Xi)NYF!1_ab$pJ7N{@jv=L;vsi5V7-<^Bh)@nuzd&<@NWM>XX`Kb;gy{(6;5N!L!cF!;3OFO1dl}J zB>xNzkGkTN9vfpZhbjduYG#X)Z&$?#y1EMt-KAE%FYIiZF=C_MEM5ilnhgRQE)ZD+ zB$Ai$KUlltVSsph_R`$U-(A=h|E3FD>+tU`Y~B&2v8H-@VrLG&yLVs>0vQI6L_9q) zZF9C3<_XEOy=*_5`(}0|hN-13wB5M#QBD5cDx7~QHcW+}uc@AvTY)a(4)=ZQTi4@J z$6^>$ek-N0sMu*k`(s;pT1DZlS0KKw{E^zRHPh4nd#Y5ySh3s`wWa}Iku%-PiqH3S zkus!$>)~-v^Do6`#qgyG&vX-#S;TaVKBNbZU~|T|=Di!E5UVU>rj!eF2*1}YUaJm zE%Ld92=xW+1HrA(G3x#K-yczv;lwG>M#Kw?)S41{R4TzGjCR*^hTE|kg^d?V zf(j|wYD@zVoP_QGR0K)fD_e#GAJXfOqhazn7 z`jCs1d6W#<19J%=G;TLjRXVn30x_m@*s;~1ZvXxiV4?#3^!jur3P#LZGxbtQ`-m1& zcCO?+H22fCzHcV|ji2^-*U)~r=?uosDquQ8aT8+1?GP#YZ21H(pG6{o_|#*(RmA@d zn&vnMe{9UpYkRKC>`4}ljo2kSqT1!2E5v@iVzTklseN1NXVDQSM54~@l;PJn=^LNq z(@yZveUrz(kMywq0JwheiCii6YB+8nr6s#lX*3!;tmo-NZtRD=??|B{E@jxc%ArM^2hzM z9bl0P>7G@eXSd$HXLh`W!W_bXBAwY?8n7jr76Av29es>E%DnVs=R?~INOjDEuZs+} zywqMxE)+4>HvgpipD8|{pb`=7_OnIMKk?GRnODdzDuaLNH-1J5<3cpHVmg)!6~ zntM33p*d)g!16_f(KsS6ts}Xo0W`aYQU~V+4hoAX+o?b-^LX^*O#q_Z$lC7SIWrAR z6buB?mekEb8HG*$wSoXmT$kxo;59H_0}HtYunZ&!-jsVt1>heLmDVvTh+6Z%d_Eon zTv2%QPnh%Xqij!(=vdiTeRJ)F*RDmKPfCu^avf&VY7EyknyExRZk1iLpYb<>3kI88 zGd+KBjViLAe{uncoKlB@gK{i_yIa4=od5V5u>X`4dM}?F?^4yWgFCJv8AG$VWl2RI zf2!DCs}lv7z*f-TczOF8`cMOJOJ@yIU!~PhJi_vzY?}iV#-oKjO&{)s6yAUVTIse7 z)c@*rzEN_bccuqyQcU~*yGb#638=G)ze~Ml+pmhNr=g(bAuB#2o}||;)=LbcV8q(qV4x0RoLbJ?i}Z*z3V$T4fIL? zEzuOuPbHT!F41DVYwv~Vd$C5|qhEQh_Z0@sWnbc^75*cudX9p; zng?%2`%IrUODJ$>B#DrN(2TIE`q3*o{H0hYX%qQ>Sx8D8xeU zOO9Tukxmt3NXyCny$v~coG3e}9S0w|U5scnv=XCs&PUT5LXZF1}eEmWM+a=EB(>s;Y9 zG5;^NM~nVX+oO-e!9&nvJsC^=W8pXxmKm$E*mr^3Uc3g~wL6&mKG7UtZ_<83<-Lgy zXi2|<=Mhe+$y)Ur)0J!md&*Dy1ag({t4r;EvNxvRN+AJ1J3Qx=RD$z!#SP1xc+lW@ z9)r6)b`2|?r=jcA2f68aU3CtZg%;T(QbsJs9ACp8nG*(+N{Vn7vJypHK zlj6atis^BjSH*5mN%WzJCA2a*V0lDG1|v_9ul|-fzA0_Ql1rCL<97+2wO@_LUj%dj zRbv?SURiY+BEe9Xw`h+!v%rUH8@kclDCB=*w0k4a16z1D#<%ok;L&%oFLNz+>K-Yt z%FN2~wAa~S&yAV^kdKQklUc(%%M>Z_BK znaFP}vtS{i@U?w?w6%@F`+G&tjf9Lyn`a$d2r-I-pW$zDX5#zQ0DV256w3iSgNglg z)&5H;e-t%t*@-gGybE@g90dk=x1c zn&V?>WSs$*=?o(+O*pO{oDXIWm3k8vnsv^d<_oK~^5Cl|y1&5)7+?N;J#=q|Cu0v$VXk z#cdtuDLX1Hv~=r6%j6-rSzzI{v{yNYhEwTuUag}N+Yijiy-d~*cj1B?ieDqy0GX!e zFqI*;a8g_vkJtnHLkMCfj%A0!CsO$1@Vb2Zz5=K~_?IzX6j#9eEZS}g_f+^vwZ;qO zFH2KiP7{lW1HAB8`<-i!3ngLjV{PNh#y1Sr)b!O9n_H%lRnJFdEyvtKoxy{^35T3WSh$6^^5TW0G+O}`cpd!gz=SL&0>eGDIk9d7@R&rqRKIP>qttMe{)7QYvg@Z!Y@`+I7B>FUB2ViMRF26hj= zXnw*t?oYxDgPs18vB#N-MhSDo0*Ij|KdcL(CP?xZJpKlY**f@>M$;L=en;a;p|#4n1}S`sP$eA^tOVR9?a zBi`Zh@Z|J

I@SKs>1&>#A?C7yKOUY?G@-;?XjB9B%yLEA(R6a$1~2^60$hY!dv# z_F{3RwSh;14rfU~U=~HMg`wEV=lgfVX}Wq3sVS9RI##dNV7--&DNhazzD@2$>wIM? zeCSYfTn#oF3zhr})OlKbK+U?BXYh@ ze}S@)dr!p!Hs}jDdDQS0;sV2g>tIC&0(?K@k8{L9D~U?OPc!?*l!x{%`~kQy@74YJYPC)c)ZJu<|BC-9GcB^r3U} zBls4CXYIQNCA1Bqy1&It5o3ee{Rmvqw|`QaePVKJK~V&_P&Sr+gk@Moqws=RLHDlF zF~EEV57_Varv6$CmFYf^1Hp@!_->?qxX&*>LqOj`4APa$=Qys*-pI3GZarur#$u@t zG9^5aV@G{UvKtb+7{*Z){$y<3L6RSBA?8?gM4qJ}7)m!g?`My$t9y5AahUoIm7{T9 z(VGhXd{K@6hrRazimK_>M#({vfWVNEEJPX zgaGt<4Qyk-ax=f_S)Fb}IsEw%sebz$2NlTZlyGUBj?6Z9#G&d|mM=nKkrD<`lT9-U z|KB1abTs&=+#36~vNpbHi11=~9s8RR^fRRw?)^6@)CgC=PY+T!*F7IMs7s@SayE1*W30{4bY?z{r%kq)nL z(gxqz1U(-2TI9OCSATMzaJ6r1TF#W>UE|1~XgT$nymzP6gNegJY@&V3N2AqN2xD(C z5ELSa$v%(iI6ok}@;-4Y5#z`}F9b)iA@UWIHGi6()?L1M6`W)vElNcKPBVXyL$_Jm z^upqP-fS`x4MR`|x_h;>SGKv*Kg=_QH_G+$a{gEv1FQSMLOp>iGNQ859^u*PQ#D zXolFx&EC2vF<%(W`f>=MS3Kc}?Xa0Y*J8QjDYKY7%atn>w5RJ?EaL7idsQGfzMfliWcJtm=GNU^OPffmyACVn>P2T9AS zaJ+J#-N!Tl>y$}@a9n0MJtDpDGmT%U22N^@)nG$53sYgXy^35TiB(NOo&1;Q7Ij+80<{h3FmIEG<|(z5d832$BZL_`er)9D@7#FiPKK0MgIJtm3C z`i>-t^y)%vg@Q##?Ra9kv6SPxLO2r&JO0z&*(X)QND3Vw8&4tPQZ(9;(gRpqZJa~> z#>wh@V>G*VlHA)}1GO4Qdtc3=^5W&&POpXscD?vC`9F`uj&Q_|U8>M%U8?rINVLR6MF(nWwsJb^$7}?wjz^3acHn&Fe<8rdoI)^#8c+6#SjI-L{jK;V1sA8=K%ORzcDuBi+q> z7dDR4Vr6K!v7#QQ);!wjcO{DClsiTl6K$V89rEgPg!NtUuYeuZ?_cCw-qFm{z7x>t zd)sKUWwo_8IbZWQjRN-No%j382kLRDY(9H7T!Hn8Pwae)hc_a&mA2B?X#3~Qztnw6 z8It96oEm)mBL7F502(YXlalSr%J;oNW5YE|{}3PJF-Z~N=(u+h@V|hyZHI4hr}pQ;UIZ3?qd?sSa%Ew1{E0A zxWwFAs@eS3h(F&S>7D@lk)-FjzyH{2KBAPQ?kMXSBaz(vF$ShU_BbEetL@uM)Z3en zJ16OW(#~_W>QQo%n-mNE#gYb`$`FsT zbY>YY{n47BYmqMVw(g2)jp;$I_7c0m_3|Q0cT?l%i5fO5s{{dYs0zO?Yc8xnXs^q7 zJvT~n>Cx!1U+A9`s;Mal;xpH8no%uhsQh zn&Yt7A#Rim3)`^10H}f=dncIvlBI`Zkz4rJlrvX({1fNb_Ew)cvA5OG4{Z z`b5nxONXBs%f3K5v`h_-o$h8pdgZW{j|fyjh!8C^En9#&xbju~UqYQIMNno53pWt` z0dC-bi=^CP-i!L@>CU43oK~f;d*u^rQ-jM(U-RKo*QPdoFN!D=64m_^cVu*A3t0Y^ zZ(b5w9U$Fy=T5!GZNbIWubK!YBq?=nr;MJ|2Y%JMxwkBNEj+gk_2Spkk=aQf&nWvx zIQ7t$vuPQeA{dcG1Yupr;@8^3KXuV_x3b2jy8=HxW$n?s9f6twC>1v?v$h1T7frpf z0cD}6u0mY5<9Dx8H-VDVSdJITD<|+)lk??D7)A-FkXK@x1V1W5lZO;VsT25~7uWwX zEkH}u5FTa_)oT77r#s?%*)y11u{MmvE9g6sJV)(si8KWxbu0>(#_Px!1dJ|@NH!v7 z4E!39uGaFS-_qp(>BIP*KwL6vm^H2dE?U8#Go%~#8EQfPvpO0tMfaJ!O&0Yb?VCkbJloXwH7$x;2YUeh z24a#a;r%p*!XLd&IsVByAj0NI_=y#;@*!AQr|w!9^Z*LXa50=e{J^PoRy{}{H&}5H znM`^SUH2S~;vQOUA+XS+|C5z1is0L;wK_>meBXOnu}Q$B6~ES7Bqsi)t$|by;gdHD zk~7-=P9h)Hg6nUVmm5b-=CNDM_ax0erA-xIka?=ZcWb#;)27tEF%&|Mcqg9RzX&5DnIYIYUGs&d&6g4MyO6Z+WlD}YeJBVck$W^s@ zl*d8CpA15so}F07>{2P0ExHO*_17O*9rO2$%$5pg?aio8(SZ7?vm_br3FB&Eh!7D!^^2?@4vo>BnK>*{5+N^r=gwel z(eGg?_?UJKc;@~}D+5el+63au!#}{F7!#%L4wfaQhhZssoR-r16WiUYcy@TGuaPji zX~_OoqVl%xs~MH4tLv3b^tD@K-v{2ld7idZ`VWnzyo2h*Yn%!{Zk^xjiU~K&w9(eu z6xr`%prY!l8A~UPExRov5=O8T{$W)Y1GP(Y9La%})=|RZ+OamaW!$^mFx>Ntwf~Xc ztj?fyNm*Ha2@}jV!}^174pa9@d>8@QKf3zQoul)&URkYDhO`EPT1Q`f6aQ9=_5R;R z{FmJRf2w4~6tq-{gz~|cvr*iBxzw^UQC$a6^O@ikeb}=P1H%Lt`Fya%at`b0hCTD~ zhK&3sA+1`ft)?}(*cDw=btfioET+ik$sc}(zefq)IKxbi%4!`D67*EM#RV*{(#41g z9b`d8{0Y8AuLTu<>I2y6l%&?BwojgK)35ybwJ3WHmQcb70QP23AHE61x_6#iM=X^l zw)!KcP7=D|H0feVR=+x#hCW9I;l zALr+JS@u%tt&GodFF0@85@54H?)_Qo_CU)cU)31wwj{Qd;A?zVc?aiKlrB5)mkx|w zE9c^L;h+q^p;IXkS&Xt%2#er{WoLi4Cl!5fkV0)vV zOAjX7i>r*w9)Rc$T?_jZZ-lc8jo^=HPU2mYKqn!zbT+UmQ_F3T%y;H3*lI|b4qcjX zN>9t7KApa{Yc&~m-C;LC%@lSU?fy!Qsx?iJ;2{? z^wekUUpV`8*=xcgDXTfV__79Hs5JMQJAsbN8HsIciIxE7)<2C&fhXk%0bVbtBI%P4xiBWdxKbD@QS;4tnvOC)Fr~ z%059Y$I}I%x9UK#D;fcj9>{h+V|M`(@op>)SKBl*dMC8@m%sg-z)V#q%r;^p$ru}iUE-TEW_C@#&gx|Dg0+1 z8^sZ^9I$875Quaj14i3{TOLJYM>!_7K5)#;)#~eBT<&=+0O!KIKHn5IuKJGv+#ZPk zP@)vQA`gJj#=!P8ll&0_fbxCJYU0Ig5v^AK> zHpVZS+Gi_tFnJ^yVOi^l3T>RYIFw;RQ(Zt2l08rBhilB@ru^BNUIYfvuip zOb67d6nLTod~^uR;|V?XL~l8?PyV;j>InX8wBELRvU46JYD+`^r&Zqu=GPZ@?1L*O>5BS3}T zVKVh!$G((+8=&4o6+)%s`TXV2?Tu9Yr%!eFC`_N%Yk>Cw}NTJq)tTj z*9ikWD|@XLndaq(fNjDia@MAX^0kJ2lb4)Hmg?_vZ1<7UXHcZ&7|5uQCpCsyWMUwLwrG<;kbx_6#BSyJi9Z$*!V%hN|}<`-ZqB5(Va)C~E9n_rCd zS66S2kNfmXZ32$xjSkAq(r)|YiVj8%^^bZJC;R>7gk%U6`9@=t`^Wl6amhzVOuT|B z)K}Z4z5L%URNp&z%Z}WzF%8<<-RT_jIj{d_mlETZ4k%?%k7=}i1~Gez?} z*8si>=TMu8%>sX8NZ3T?c*8;Jz(!D8S&`Yx5r>Wf-Wj2~y52ra6e=E^jejqq0C1>-fv9kD-I5KrULi>VwXZyGdsOZ{!To^h8!Yh>WxASlLT&sSzOXwQfDWSi9YDA6Gic`Cs@3AXob_>&{ONj zbZ8uE1;Z{nxv$}NkoMk4$D5Np%}D=B>hvt{1W(k3Sh(VKof&8bQ$Cl4WcTyF7}??T zfnD!wjy*p#SLek(D{Jw%&srM1UsgI~_6+P!Kl>&-*4|ALRi~F+5{CfA7D89hX$TBV zuM;A_q&Llrh8$Uo2$wH*lXndQh%pM*6$%Bv_dD7=hnjiKA2anA|( z|KyA(F_|KIo%9aVb4IsD&C^k=WKO5f^JDP!dBuEoSjn;#Y{Vbnku;vAAbnj-p{(#) zguE8=g(r!Mkzh0J)um|V=C_t4&#w#QZUZArLD!4*x~8fOtqqacYMck|M0Sm`>_##_ z&_?E zRDaIC3>|?k?RO~pIItB;>&SD*3G(d;IYKrepdf+U3Xe74)$!edZSB=qjE^teshZW4 zjS>;simbtKpjJU62oUnJ0kXS_%aG}Ho|sEG8NF$FasUk1ggV=C|~?CcgE zsryyeA}gOJ?iRq!YDjks)Y2-JsA&yF{M;1BYm@q~>`x+%$)BBP-{Ii$7TWUy>Ptl* z9_a>2G`1n7lJaLocmc(w(4GTC<9BV+8%=@2d}h(806TaHDX2r}JRjaz%8ud6cg&q* zq7Dj>Dj^yZN|TRHc?d-o3G3lds-Eyn3F|21+F+#Pk7`rETTjEElcdDqtDrc;=gUAd z&)WycpJF=uWF}nZ2b(!K@XbK`zjcus=T@EBZ?6OD9Af=kIlcSxWg(SUA5f5x!@(-T zcM`6ARvqDwwmrlZZU~sY7gLuCTGIgv?K3?ENXvtmMbe3*R1|FbN+a{vI8AsLyZQXE5=w?;&;{WL;`L+tLuL4#$C~U|96gFg_)ZI?7n2EBSNJMo z4}hau)belFs%xt4^u#e@+{>aSV!Kg1EF^_!jBopA!cI3(J}oFE~NN{T34f^NsNGas3hy1CD2 zJ@)OgQ^Vg%OsSjZ?cAXaUqBwk^~`bsL6QB589g_XJbBAK?{hZmWaZRW;*qFWT}F9E zv2I(g98h2j@ev20Wzq%j3g)u=h}Su!H&1G;;GTb^>`~P5qHJcOtY9|e9o~l84y;n9 z9?+(GtcHjr9Ui>LUP{(nNN9AW98x6VER9{{I?^!`h+JNtnz7D(^p(qDst_sQ7o!<%i@9YdB$pOIb@oHIdY@icnKgk)@VKpvqsF2etHSwlzoHS6?v0@Y?O1JWvl3ZA7Rh2q!xwb`7VPx zLL^bC4C;`s^$z>PA96b_ z3(?Ga&?Uvc7kWxMR|`1W#OQ}9h>_&iy7riWPeS8FN;Ti#9e+2H>Zv^h(GcX%PyEjA6xO$-mBEDOF2XXBk2{V_ zTgulebcl*)C%*qFes%HFcAP`l1}f9}=buB=OlkHXalmX1egZmL8H$z*?bUI%0`&9s zTZ(Cfz9G>l$Q@p6?`T$V$(0A3^eQ4-pxRRgx&^viwG}U?Lq?0B`&{)2l&CMBa5y+8 zNzn+$J%}2O*;@>FhClvg<%?nN+e_D`1R4r5r>IY+i$D=!ALfCKzJX`iRvHFzGcuDI zcCsWHxUSl3y)yHU5-E47tRgGge;P6Vr0~a{Vb(mkn*jCVJWX&vV+rn_muQ{h)fY(H zMy7jU9k}Wn)3O-n7h^1PgzcAULXjTNe@61D zxbfs3^+xJkR#>hINv@^#jQ%vy!}GeW*KFvl&~}&k(4XKh@q^7nFw-L^J#pgtQiCUp z@zYXzPk0mSYh_G=sfF^wSSjzCIXQ<$nh6DP&qyENlKPqU{L9gW>IOlF?%w7stLbe6 z&6(x3=KhWccxf>T`<# ztY?VW^E(J4B4#!k2M>zWk(4qH637x>uNNNmF*>`zX_e}~@32qpyUy)L@)UTugr7Xmb8$I%f`G6e9M{=yR0M>5 zM4U&is#RJIockR);Q@YU1P2X>_+xj`yj{+-%x%&I;o<%Fq#z2yLj7Con~4BXXZsd% zRHN&S>FYJj6z5=5B-iqdAnr~e#!AVfSqA`hcc_X#MH`NzzE2}viWug56l0#LzcZH^JPX=TgLP+q$$4ld(S(h zPSNSkNbwq}6LxnFal}Oy#Tz(Da;5Iwt?irPuW#RnhBU-rnP$%Pd!QHmSa!Z&p20{& zC5v9IyNx z{=S}mE_E+Bt|N82X#k88cZn@rIxY;Sz*#9@KumbV1@qQ5e{c%)WZeUxx#;w`Tf z$Nea0WksabD2kwS&y7rSz0Cfimh&XehUsi6J@TlMu$Fr$b~feGk9al($?(MC;_$(^+b^Qa7QZJNlNU`LC6m#o~ z@%DqBBNxVWMHT~qOs(=OP$_O4o*|Oi{+00m=?}-d|8M?qjA@p@{QeN5R@_w-i|-*m z!D#|eEFF=B0Myf4U1dCE`cuV&D=Xpu1b%wFgMEQ_vlU^(wfATr$b1+HV_ghS*Ncbh zT6J!Z?u(zUye(PS`KF?1rp2rK@W7*f^1&g50T|8GA2{ zoP>aB^n#Y}ZBydMCCxryQ{x%YiRsR>4`zyC@ zg4O8j1Pruk_vH`owS^tOij5vg$~{Y1=_dOh(f`dH!bJTGslTiSLs9MNUC1J{wOF!$ zgi-WU0y76u@yQx$Zzsn#l5$x}mtx$Az6XNeV~LdIF9JEQ^va|-px3=OCyZID#JWAu zw{G_Jfkh-mw7}IqYt%nSu+%U_rGQeF1QY}k@xPFSNl*Tq|GdAN@?D(|$SPu`xO0sq zrPfBBm5MvRO>pos2buKpN4~Z**Pdhwa9m4blpL6a7=TCL%wh3)c1=Y9r$S>~9m{|N zTZlrMd_=^6Ov$t=4?4fiwxD3y4Dl~#gLrp>g@J=(Gq1(;fhBddgGzcts(*Cw6DuyD zR8UM{*@yI~PQ2T}!9SQ#HF0mIF?PX1-io4%%D+#FDHk!(Q7DQKue?z6cKh=B4SOQ$ zgyLA{Hwfd7+EZlkiXqSIXjYfPy!h+~J4n8#8#_^__B~+6WZKvVJGi`Ja!9Y=Ou*t) zUjVB`aqcW_m=C_|W)RMKSOo6E1rR=17sU!aiKf8U>Hn(w#ezY1Nk^HX8xMuv!!>JC zk>#Q9G(s|}m49NNj3=Ic-Y(;a1U)e8+aT}`&5}_qZ>mr_PXdEppERpKV9dZilKSAE zQ7Ge8sLM(N?=>4Y8c#?@EdiL6w{7v_%J?Uo!qq^BOWlJTa*7=7AGT z=ym`-i@|Id{_r_0!h&It3WD$y((HTH^&HXh(mTU(X8tngS={}{picVdN(Hf7EU1JO z4Qs*WagWANSb#F~vH#}dji?J?&i{X)9%@?)(zYQ7)+BI9{DWg|1e5{Wu?c?k?U zb?+FjpbwWP`Bfv8yVK*Yd1zAt85vh&BeR|+TgtA3@8V%x*wbIpPoPEa7cZ;xSx27MSW@+N{?N%TXy9d<|VCtxn>?z!6id@Nh^2?L8ZQn zWqY%(KpQPL4wD|*l@FO-&D(gXk1b5OHP@0`;W;>j$x{p->6fwu!lg=b947PP4I* z)AjDS@39(WK@T=pTUx|cvX+uClIMOm65oJFq2W}-Srp0WM zKT|KhQS*fJ2?kZ;Tti~Cx$e?V2E-H(yM`kSY7zHzAw;S3Ou2bIaiW2KrfJuBtRvOM zxjpO4lMtzzVpoRR?fQxh9rcC!(VW^n4pGh2$uRqZ7(Ai4C`Ci&?&x?%vGr>IxeJCB z_VU>9tAt1SlJ}q$T|4GkLBowj_Un!^i73LWB@P6M;|ep)c|5&>D5`XyBnbwL{PE^( zTV`#b(@+x(-dpydQYeI>{+?BNUO^1Xz;>=xK@L_w-Sz;bAvlE5f^0SBe^osMEsu7- zndCatfX`p<BL15`g z*!6y7vC9*Z2cK$|up{TxPJ!1kLUg61kFJSXF| zR9f5iZ@}hzIwHbQwbyeKg3?TXOx!>s1vz8;b?A{CISm6yMr~JWz!V?=l<_ex{sWy# zKs$^wEd)lB!p+I$i{^>3U^vZssL1_E?J3}b;2hD((mQ`N{T(zAX6Pd9Cu-Xq?xh#2 z&_+NzKmhpOt9bz&Mag6IP9ApK0&s%H0G$~Hacv@b=E;Z)VdYJrJjMA~h$-XM!Xt@z z4$I2hrU)K4{weu)koj%DnzwKN>vWUB7LMrgbhz9<&Nca4{bE#uuJ`c`a3ZH0z6c)R z)Hd3mQ`;(N!GA9u@Mqfp96V%6t1ZR|LnJ9O{#f0Ugj|q*<5GDa4Twl<-E4~k*q&B0 z$E5}{vA&hxR+1#|k~rlW=@6|^x3=}E+E+Ct5+A?5ZI?&%=WL*m#0+iNI1-icK|zq* zpFGNksw5fK7_Z?BRj39UmreT;Vfeofy?+$;vigf}qwtf-JYrhY^4CHPMjpzOltrBR z<;Opym46lj{OppN$cYQW?5+^c!(?uraorgW?dLB)b0lW0i;lDJ(8kZ6L|PM{_&&a@ z^cWdPoM=s`AMG3qnXjRDbhdGVrm30EKt7?Fhr9Us+3+f|N-X?BLU}(V`pIN9t(j{C z@Ax9ccaPh)M|qx|&ToP?O+{RUEy8(fOy&iY1LvCi{ds54!1?B_R=u_3$rL+|^h!OQ z8J;pO5dlM2;cn!*03Or?x*v%ov0f+7J$R?RIn!%Q*fl9XC{vc*vIqXr(12Dg5RO`L z*ME)^3;_!JQ8IHqkCQf*->q!W<&wG7YG}Rdl*?LHQNC&qsVVCZ(DYlUqTYE~ z&KM$wVt5G9r$ymx8<4fZIJ*YF&ApqAN}N^%%s^~@H~ zaebz^>V2jA_J@YNjbVydNO#amNS2D4v=)CP6_9=bt~DG`g!W^C2fOWAMPqS}T(3zh zmg6m~+0N%YGgNFeSvlo3m#=gwbzsk^#aw&8*D|rM^tScNt%5`z&V6gdMeh7;K#DK# zs*)&tq^rx7Sha6DS7TLEw$FU3sjFh&g`UOa_gz3?TaZ-L`+7FQBz+91m#3HzQLwag zw0tq-IPdwW_+Zh$qwGR_A#Aa{yn($(TZBiRDdS5F_t2(I^M}A{`IK~IWMC4+@E^}X z1!?}Z2O=?sQ=O=LA-i0O9=_<>%36^>l;7XRLF#c*Qz?59)SucP2g_1`ehPw6d|%ag zG*flUX7GA7*BPmD<0Bq!uGKdC3aPO4pua-dj}g!E#d!k*%UU-(w^hFvp?p>-!(YR{ zDxd*5PiwdRdK4t4AOED_DA+h+B=fpId&QQtHrUd@iAx5V*3GXq9`t7Tg;bJ`lPSr# zTAXVj62QKbNiA_L-^^5fu&>4}jzumUbUCDPCt+GJ^V@hcOamGSt#hyFRD#7$*e(7f zdqKOteB36G@e8SKdbVbw)?vZER4H$Wi8I_vN?L_7dL%3}BO*%Rgufj1G)`~oeyiq~ z?wCFa9txDLCnu-4ef>psdk5VQg3%{CQoH}hFoW1;d#RpUg!X)((8Hzf=?%0qnQSv8 zb3c-_3GK)wPxs5N=frvIl||128FH^!iG+Ym0x!Mjcx2W=BDVN>bzHl^R(ea}Q?Aej z-AHf)wH@ipWzq347OEqdb4Q;AzK+Z)z?kPUT~(6G0-}%^rD&jg3P{%lT8)u*AF_v} zEMnAU5C#i@Dds13ayo~^o+8gVcWSZJS86K)m?y=QVHxUmIsg9Aw4 zkCRy?7qO)_0yv(8>ik+7=r5KS%_f@Gqu$BDzu)O24)q!m@=<{MVaC0>c?{@w#sk0Z zmRFlX5D&Dm}VE2strmK?+vUX&rO;x0rXHcZboGhcMuBw!VZeScw4Syegqc>rcz%12aKuhaS;Cc&yblJ!P{79nM{c)GT%IibbvFpjFtCe zKZ`7_xiJ1rK(@5=0q96};2Wrl=5p%~KPEa)2>`TvLfjePsJuHaLRHk@kn%t;_;7^} zs~ii@WISMyt0Tr3nyMQQQ4>`3wyXEj42m^;#KKVrfpYMn8;oV?QXT^_DUEbwR3(fr zaGCB6E)VU=-CV9FlUZeuOIbLc1=uhFU?C)~>xN{sEg)_{7H+v{k5RyARW|m55Pu6Y*TryZLaS^``fiVIsPDy~m zxrP|#o|v0U03ag31D(SOy=ibgylDafU2_@v&Xb~MHfshxy zg=f0pqr=^q-|D$QI`s%x4mct>RxBJtUUu_iE`kFG_Q(~TShbvpV)V21@zdcDz z?_wrm>tLM9f?-+UGJ6v{h$-tj-s(N^%tG`CN;il~=`xr@^nnN~R-v78c$|*gJZaeO{e4#$;srOU4 z^HRizC_WZ$k_4FW^{Lfe%9Q|Yi^(M02(VnM7Pu?$Qfeiji|-*fZh(J6-IvqIBPj^H zQFsBsp^*nN^B&_Ad%)m39%dKf$&2U22$i(o3Z43ZBB@GMT30J`Zvi*JepB)k{-ACq zO>El^j!pQZb>Kmv3HNc*7)DBAbr4f%HJ^wiK2>Sl5TP5E_tfFju?KLWWA4?dAuVF& zsUB;A2+bnEG88T`1gytdg)kO5X)Dar{K8jx)H?_jrh&^RPf-Q{{)`k1OkDnoAwD@4 zWZ<_DAGx|RC8XW0UFbMr1IEAr^xy%+z`s>OJU$krpGJfJ2@0gKZHA72qQS53%|s}S zmCDH@A{FAaq&e9&A=rkF=w_o<#*$7!0NAp&dBJB%2W*4Kbz7Me;pxK(;o;3dTfo`i ze*Tukn_F8&4wV2*1?2AIA4Q^K)xuer!JGJe2puFTIV`eAKY(l^y$ft#p`HW-xq)^s z%*c^`u%+5XsG>+JQWX*Z?gjArqyOCNh*xvtVcc37H|H38XBNXVFHO4)?_$Xq;=IkP zTLjtnP(sK{Y^)!Msm3W%QS|aOB@sCzA=gzx?DfwLcjHz3kCvI<7!oAfXtwW_ygsvF z#67VT=@@Yfyt?fzL9k)Fk23RPiRQ=Szc10h{FL*r;(W5)aWwt+<=8)3{NwU}8vplq zokzopJd?MTk8Gulgt%|(r}3S^_3PU{x-S>vaJWrzXr}V&IXb_LKbGQh(_fFm^Hm^- z?8A#fJ?MGb4IEVZn;HPt0TUQ&BnvEZspM76;XsVF+|;`u45`}08z>`1jLwvtNz^=$ z&0){YIKu+4OP42 z1PMYDh|!MZP>r3wb{vRmdhZ58`}m|rd!@>kN;36R_ONU9coCyes{P5ohmq z)XF;q2%XYw!rhy8G01ZxF+#kZC0Iqre-D3FVUB8|B^rKF)4Cg=Fyb@Rqo(UZ?u8*t zzX4tVBdoA7pQ5q6LI$7%mBY~a;5Y;_8-|H6`?fN%p_Dg`29S>QH{PMubQ^d6Emvy2 zMxiHbn=FERF>K{;U(>bY2HUc2OajaRG1PuVzuj#y`3izT-r^#O0312;9NhMPz}Ew-X!t}dVlzSWPXA=G+Xx_9(IJy{R*p|=hF0rBUwV~kBYZ^=8 z+-8G_t*8wY&pJM{@pn{;Ti{gD7^IocL14L47iRrof;iC_kRec~Qf^eHmVAV|pQG1J z-W4C}K0=;rz9#t<{?Wsk^aDe|?NCg%h4Dux6aubniRDX&@Fys20C9=QqjsMqDQ0%l z!Eznl@pHqI8Lud|8VU6U$+>xN}GF&Qp*aZFc2 zF-~|lw^@sdtREZGAy9(RgDlgu#$88Y8kW z`~acjAlz;`gaKOh1rHo4)yNitil8!2Qw5^#*CWItQ7j9S=lb?%!aGKX>nx|+D0jpN z)Rmm!Ny#0c6ef%A)8R2r* z$8t-E|xzij=GQtZ&OZay;pL1EmHZ(Rqu%A~lpLsac^PT&j z%oKVSHtW`TAKVv z-kQXIH3Rg)~%Nit4JS)gm3`>69`b;pD{Wm6!)jJs^+5dVrT5J6tg@sLTG% zexu?kFQ3FTki>UMR7a`-&?; z9$CfErZ7m2FjC=z?AfP*teL-;-Tt*AhWPoVxF7P-?5i!^z0V|pKC3M-&REI4(hi@J zV!ngip31R@{k7{8L+lHNGq#Nb4pH4(X8z<*^=mSF?fJLHKR&2m)P8jy9dQAz_Ecj= z<H`&(Cs8zE1n~Je&)farjeSB?Ak+b+UD}R+U(%u-IVZbpqRKbP|itg zJ!Jai3AP#A{_?h1Dz+w-rPBoj%9-~DP zM11E0{b7KqB+%95$5Us1Sqz8pCBFIFtk; z(6kWx=;?w$=KXq1Hp6jHN3Nd`ECr6aq<^6=4Id|@B8D_-v$Y&3Fs=YpZY{F}%f|`0 z(w{Xdb)*Vi#2^p~xqLD|S>BIc!KK|AjRf!GB>5fKVP{aDDup)i@DQZ{&$tKA4d zM1mR>IFC?b62TGaMs@PkWkNW}WAP*tFnZA$E{|c@tpJ5&5#Wdif%N41dEY3Gz+JR* zJ2ya6R~9(5O0CPyT+<&1bm4{f$CeW|g+#szMW-~h1R??^5x73*feNKO5hfyV)VE~e zj)y#+58&D_W&r$dSN8WCP3&1bSc@@I}tM3^uQ?>#~`v+l7{t5wu zl7iAc(We?=Hm}6CT8x?in!J#&v^%Blg2}&-WRX*CnzL+L`~>Pb$5t$V+(CP^EbIvd zxDNAdoiO{oasqlpWz1|^PWf-XCf#|$^D~Sq<*jb|EQ0J1Z%bla?p`XmH3{k>k{X<- z#Xogq2d$41C`t8vO#wEk4K1QUJktnQLY;JUnLP^HK#&?=2!W7C&5uZ$r<8}5b9!cX zPb-6!lif^;mmDQ;+PaT`>*p(`0FIys2-PeyvS^tW*Q<-}6+m<8_`AxBokHBGcd`(z zb>31AKhFuMu?eMeGpQs#%N*-{2V% zn0%N%^%(ppLbzf&8sIxZxI4--=!j`y`S-1^do6!efZ=-C!IOnR6|nIb*aRS$f+0ME zG@r`iR%=oY@Js#&pKFfJ%6y_Yw2Ukwwzac^yGwSmQE4*u@YQb%SbM;7UU7#`EL!S_ z_d|lPC5v}>GHs(pD{uzB^f=c*S>GvQEE6xNwc_`yAzDE@yW8dYMGTgV zTvm~o<-jr`WP^S8dAwIwG}BKsa$U#EL5ZOJ`9V}#Q4^AKV^dCL7UY0ueRT4y1arpbRm0XdgwbTi5I_eZ->d zOEmPAYLKnP)gjc?QCP>TP|2oD(|U9unfidZNzP)7(X87Z=QL@nWF&iV^F7SBIiCG# z!S2*js98Qxi|A_@Wvzzw+lYsQa=kDASME z?d)a`EaxjKLktKz8H+0+<@6tdfEtaUy*x}l6r9CSI?F)Qlg_s~4fu+@&v9zlwOm%i zxpZY>^&84_H8kunKr%K3MQW**?ln9YHnKQab{%hoUiFKy{6hK;Hh+FK*!JdUW`^Go z9l+;Y%{%X29)6sAK?6J17=n-oa5!+LvUIAl#V>Rj>75Xeh5R`ti^0m_5N1e@|UNDHBONx=$3ZNMi3;Kx`cXHdB#V@JV{kP zTy!mhxW+sLQ5Q0OoYVbG;{zkb@lex)AvMQYT?3fOVJm&fY(asq{_Hxc9i;Jr=qAJs z9D3i)RN8sw9q4}vK~R;?xlz)>PEqW7hCw1a;@ej%;8)R&cF;I=L5ZWgM^$}1~-ZkCjmrd0RfV0Pv; zkGddd;aSB8Jbrwg^D)V&-QvhZRF7T{m1V}%m~Ah4$9{Kj)w1H$sSEcpc;RqDPAC#b zSrrpo-vij>BdSdNl+)%_@b1K5R%y5@yS&)FdhSdh&2<9xD?RZ5V_<9G2Nz17E~IzG z{>3)6>>T^I$|A>Y_4)493%6572ne?sC5-a6g>gIVYm>4fSeIeEo=FHjoy5D%4SQMl-xO$vpZ37pgw0X8|zPRT9& zi!1i%Z^?(faw5R|)giDJJqC5n(Fx2rxcD11CmkLKXQUpQ`Tf2JZQF63n3OL~tAI_2 zQ~v|V@eR+~w5Y?G^biPLE9l-lU$GLM8kn*ecmhzo-Z>-;Og$Q#x>L*FQ^>!N5!H}? zgZ~XSyT*Xts9QJpK{qxVELhUj8n z?%$DQ=ub5I9R@I?1`OGku4kc?+(z#_VT7pwuV9eXAucNa!Yh7PNa~h(>S62e&;|JX z(La4ozCa!V1!!*nrGo)Pz?kv@q8R*T5k8t}+o%TuhLYlfB?JGW&_Zx|Ms}8ss4YL@ z&9L48Jl(i0{!i5fAa_&bhLFE6y`_p6$oUND=nyRCBf|fSL@r>)r}T=wF4Ji=kK!Jp zkU{)8P|>9DlhIT&oNo$`)CoAYtOVqDKJ}HwWb~qfb{rRqQeS7~%c%I~0vt}lldy!|& z++!=}pr5RJI68Hwf7aG+=dyK_zR7qf(s+c#nEZuY7rVnf#&at-}d_-IVW7t zcAtK}`BTTUvH!w|6k-zjgbQq=9ZbG!5zQ;zFAM1Nv~Xqj51z@XHJ~w8kysuZAo&oC zi*SYw^aQ_4di`ak zn#PeUc|=SD_s* z2YV&v{Ms#AOz-L0POIDM4eeMLCyuGJ);D#n-hN2>-zSA4NLeQHO&90TW5oQ+=}_4h z#alH^`r63Z1>ZqV6#Wn&#v?M<8n$-9#{G)i5MvzeiaifyG+A25zX*7x+8Q6_06r(s z1{re=njr7#JZP||0=VZuS9r>2{U~pbUd9{bIz*qPK4dNMPy6cdKa*XUZXgwZO@N-d z|8-v0&^li3BkmX8&h5@@D_UvJ-tI0e{9zx}QAnpw-HUg^KBQ)RdS7RTrlSKhy>^h2 zLpr0x87ZaF=Sml^5s2)+Wy-{`jCr6X^1lpuaXa6g!cnqnqUCb&XbW8f z>3CE=y=GXX_#jfYH-eXqW~+t{6sp?&%Xoi`TIMvHUVM(w%p5#%Ks$wW>iX*o_(lWc zk^*KDz>Fu8IS@zm(He-BpmfX46E^#_x30MAz$$=ro(|3j++E&Mu@SeQzVP;#I{}=3 zz`HdCG&V}`^k7b#Z<<#EPxB=9-;()Z43vd&j5iVhPlt5~a`B6|wY?!l^ALJFeY;UW zvz?joX(hN78yC&g2mEwt0~tpv0VZ4hT2TCZ0*18&?;5i0Dqa|eyinFiU)J(wQe%TjWz}Q<bk6PhPXyP)o{R6AmH0&?Oc{E3#ig-DTtKHBOv85aptpW<$7+P?jYesk zd(c(7lq0PaXK$xYll*fQJ{@TwZpv;P{KW=p&T$If#?9lic#OdI8D`(_q^V_DUp4E< z*o@5(#XUr0Att)dPzrj3W3k$7bFH_;f#sPJT68FeNUmdl_RZ74uS%<*)+&EP-zD6y zX9#f?`+s;)srb`CwQb-!0C;ta3-L86Zlz&a*FK-UKbU|$sV{$RX- ztlL$UyA}b2hfvB*{dNS#01P~Duy{sk2C`YdG98jVV$9Kx()87)N)h?KoW+{J0*M@1 zi$)POMvzxkVFgA~P9=dCs~B_Ws0tllUh=b$xWOO0fjHg3Dq}@nH>KXc!jRbvZmTL^ z)&iX_b30-YUMDmPTQyFJ_=Grp!wlYB6;so=E}RYKj$pIOd?KE`A&1ZE zcblr85@=ASd|6gsDe>zmoh7Tn{u98@I?QsH^ft^THb2^Q2=p1Epz1##x&)Uhls#%$e5T~)OBHwRes5yE_`ZX_35sXHzO^k)If;R zOEzPr)aEbYctFT&<;2RZ1Rw;h3Tc;@9flllHu# zw9d5uOhJv!MyYo?4SSYuSFdzk#l@T<+!&%xMy#2(EaT(rUOpF&JG}%seM*b%9E>Uv zC~L#>wD&6?Nyl~VO-qW&L^wN25g~5RP(IdDVc%zK`J~2Y?~&QCI`9a&PjFZAKor(C z&uE_dI=`{~%14D$2vJ1JeuP-R+`FAC))mjg!;_?UtYXU|8~vV!wUgeSdj(&iiBUUQ z?o47Zx;U#E7c{jIItRBQ5zQVTVUiKnAv5zrAfFm>8}8xLw=Wy>vk4!%AA0qR1^(2w z6}%k}d#FAyO+BeIZKxv&{%?(=r9D-=6qY1LxJMQV`xQ6!-j$O~I;A+g(bnV;_jB?~Z}YTC zUte8j%LBzWulp6kqe^yoQVI@v1;uH~5?h*7?;s~E-}&x1x-B+NN9ZTRxjx|?7Ygsk zuRLu~w^6*sc(X@({zhDy{faN!_6MJwfT&g(?0>Sj&$g2ug@1T5&iDQoq*Abe zZ=<96Xob~7#o4GIJvinTXmQU#$E=i?cB%;iO@XRN@@#m!QYb?1mXgi%2Y)n@2uDht zd>=t0i2zl`k0%m3xFC6WRW=1&&=n9mUSo>748VYAPHFe?s}xEbOvstDDlGb_NC-e{ z&f*b!On7Lzi@M7tkd`%pRRG3Xj*V+3lC82xCjNcQ4+QMFbt@(SAOK3xxWU0HllIdE zoCNelLoEt_SS~EPfy8f33J(HXh&K)Vu9FeUNZC~2N#g%7H zi5N~x^5-*?v$?d1*JmE8q+(4?UJtENjuE}crWFRoagPrt0K-8F@j&L&Yc6O}w63vA z+gQA7m!+h&>av5u3IhblGMw|yL7^toX!yJRjwzw$5j{i}g~0+qHEP@$3ly{L%+s9c zTcfF6n!Lcn5t=>7Dy!avf26WW1i@JVgCjB_&END z*Q+1g)8l%1Gru6bszo+m#uAzh?||D(m7?)KguZ~gzkCy|X-8LZ^U>&g^+a{JzbMEd z(#MD3SSsGufp)=rGJc*bYoRJgXwhnk&}6H6#J?)w&GY-(mP4d5RFqzxIE?GC1;+SU zz5M$(Hr4^p_kI0T_kNvwL5KUH-%NrMTpzf`G$q8MXr3=k2}FhYD{aY?vBeNx+g$65 zdrLfw%U$zOu*tK!;1S>6H7XC6xWZG*W;-~qLiMJyjiNG%Yp%cFm{phU#}8uEN=Rcu ztnc4ET_#r+ANfd^??o@oUR5k|;oCH_Pnv6ZSlGVkZaGolKW(p#pK^_Qo|C^qSsLK1gg5_ugO3^h+cb|*&uPTm_N6H?3*o-mpqU zBIZZ}mi7!UY=U$K)A#P0J{P$GFRF%0>xHY_?=+MikSku^XcK$*Jf^w3cJHmf2?D{D z?iYEiw7qJR`cqpmR+u)#Z26So!ApHXI+yP>6~n#>pCXw?U!6ZjdD45BBUjpJYsxw0 zwbX55-oBGaXy@+~xEMjuXJy8^t4(LhKFxhajALirBo1^Inf=L3(`j{QRH6_HshQ0W zmtK^Mh?gn1nZS`rMU&sE-}CN*6nn(QdIy>K+xPCVjgH=UCz_-5F_nryUEtO+H=VdvnEp$MB;npwephmacW&;8cC-m z@+0u^Jn5PHlLMDjT@;hkO)s6&H_-*}YA?Y!Oj{g}_0NfRE5=PtsqQKhb2YpaQ`ixz zic_`KpN7b%EEAGmzmjyDk8G^2+Tf8rBFJjt+w3DjQ#t#$^EvQY|KKG5whfehSw2KG zULCBxK{@3F`Zh!2ppx}JRS_l6REqr&Jop9q#w!QXt^EOSX06DG#&yij0s9M!$O+!= zRynUYc}jSw*^GZUG{P*&nGX#iv>@~qI+;^QhtvE3gy6D-iz$aapqJBDWY8ykFob~_ z^fkI@j9Kes0EAV%6QX#nFS=OSgu)1nNDcDdFi@fSs&GWt!qMnLMcG@(Dzte9sTU)< zh%AV0;ABvtE!n zT6k#OB^14kQcF)S6=t!5zPNUSzmq)!OO&1H~6{wVLvizOVWLtMSm5V(aIT1C-sjMZ1An+PTJ~DYf~zq>;+?Hq6I1SnVJf-u9{?GH`e-M_Shu8(wlqQCL8rwxrHra({2aHxig|E*D7h;gtm7N@ zNJF6e8Uz+bO_>beVyN^x1RlfdB1G8`1|j$d>x|)5k!H4$b1%CW7oqbEEivfJT4LSc z!hW++6XcRHybD8-Ki>4}_iS18BAh|?d|`RC-yo?|mvhkE!+Js5+Ma#+SnS2oJ)pzc z6tq)9D)&sYHN)!ozEtf7551~8{7mo5^v+uoj zPIOsm+&Qe$kpG|`vtT(tmLMzpLEpoAcad7+Xf^U7fzp|9lzNa%^ zpMI~>=JsM4GaLQrMEzwP5=OTp+_(C@GWh~aH>XRmG1r$bGNb-Tc+;udBP86jUlfKX zV#GW+((Ax@6XPrvsVaZty-zl;VXmLrC3=aH`H+NLXr? z@=9Q?hk;t8tTVvFgzZLya9kCYg`)Lp-swt}%zIA}|V!zd6R@d&gf)DHOi zs^jV}NZ!Y1?@+%WJ0>sF+L(J!?R2D+dlCx9#sJgLq*v{;oo5{cr|t#o(_z2)ogaS< zc-`bNs; zpiSArU9xQncT$d~pwU0@*3K1r_)Z%sdZ7Jf*0+Pv1ua?gJq-oNv z+O7Dc?ZaBRv0n2o@KST|+qRRsmVpC z-ryJHyY1uB*Yn4b8+osFpJ#P8Hza*Bp3j&su-2~!tko|kg=S9<3WBO&VL5Q~u!9(Z zzySJAeo_q_$f@papG&PQ)i*u34<4(!yz{B(jC^V;1mDP`QW5+67xC{j(` z4pZ~%A{D)geXtS0t#<=evxg{1WazaVou%!4J*C5&=`f7zsvGQR^)9T;lWI5($F;oU zi(M}+RP4&^O@~N_#hwk~1zNYwlBmLCO%g)~vQi;7K|$3dYpbD8t;r$M;vv*ZZ3v$n z%K&Zz<2Zl&QcImRX(;M;cO@%LH^Yd{g+D}~-B;cZm-3am*LPrIW!<-$>H?qRcRuCb!|-5| zOGk4aSrxf2Lj<}9M<#AwjN_T6Rzd{h#))QsoPKioRKD3`HdU>8`gpG9Dx;gAcCRPT zw>vh7bm7#FW1^WA7VnzOr!`d)y-WpOUNQq5det`{7QHgK(qF#bLc4fNP+rS^@tsR< z_;dZG<*ll**Pq%@$h2un4cuCqDuVKtbp4>D`h%{i+K-3(+%B`VmSc0YbyfG+)z#Gw zaU^fvXMgVwA-&0Y=LB%h{D*|SPuw6rZneDnIiUIED@(vcnFCG`?$$4eCHj^bH+gwP zt|O283-RQnuT!*CdG1wj{G$M5I!4ZgT-vFKaEM%da~9tRJ@m*LregCd0EQnO50qf_ z0;vU2bDlAGb*lCtO8a?XyqKV+J%|Rthlab)EInLFqUFc5EvB?22LBb-kVd-0>)>5y z*rK2-qzZ5~1z;r_6l24yBFt>zb&o=?AfU_m@cIA@&@8?oK|tA&wT@E+)EF#}0V@MZ z6ud6Ooy)N2n&2oyU6cY*T^SjU(tbv0b5)uy044D2?M$J$dZL9N40W~6ELQc>;$j|r z0Hk_gaQDh80=6>vQ=bq!cPVOstBVW1;XOo*05WmH(B=atEYi<1v?Q~a!BY%b-CtD^ zDB62EIUXoX@ef`|*_S5^J;O_jGPt1}ye`h2#i&`J9=%K{gM|Ytt~?5<0k4x{3Ij0e zcp&$b3&wqq5B`GHibQYf#S8FLFG_)iTOW##cKdo=1d^ZBeMtemhCFeRs!Fr}-uuAm z_rk||9u6B6VroDyN|9A(i&9Gr-ITzvEvZMG+wK{{<1iV)J~Q@uDN~iWtM*6)HH#q_ zLnY^?@cr`KbKaEyT?@Y@1lUg<<6cA{->ye~zC@6=WOJa4Q0f7B;5p?e0<4!r%M#ci zA9_T|W+{qo0iQr~#AE05VvF_Z@?Zu&VB2WuWAJ{5Bh6 zcowD(l6D!!0&Y!xPW%e_J2EN>huMT9K0seD|lkAZ?3xcQHx zetR6PPHOqF8`&3=v0XoKI}UWW`+YlZ>=@}%edKsg^5MIuh&Kb`O{>tg5)|s<0r_Nb zxo6^gY5gzSkG+e(t$gCGooUmCpBwBQC2DfyBuZTEeVzAVQTZ)Jl?jgz*L9hRM~B~N zy}VC3mBj07ZXCf^v`!E5-iORo(q21%A#3;Amq%d(Z~G(}jSO-;s}765f7bfkxu^H^ z0&(=P+XbI%T^sM$Gs$_&Mq2-wk-IxONO`L{`sD=+m(Rx5FBts@q6rzA<^1RVsSv?LdRzHejpmx{A)_B;YG){? zO%^leu3s(z#6PpV-HX*nJRbD`6rzwJJmgzrUpR9DNbpsd+Pbd!mMf=xq;Xl4g&jb> z3PNKFl&GLzA~FP>o`c_hxh>M_hwoI^d{Y{f$EaHUDWVZ+3IIhkbVx(@TCiQu=%+&N zx(I!LgHtWzJ1YaIMwQ-a7Fa4nKl$F;QB!h-gMI`<>3K}s5Z7iGS2!b}avLaYUxU7v zHFup82!yxsps)4ETp}^HV{{B>q<|4*iYZBrgpHl*D~a_o*+}T_s7oD1V1;m%+~f0W zRO0VU#7`Y}g|``?pCE{Wv6l6oj-L2TQQIB?!1i>}HJ4+vhp;ozMNchb5YDh~c&1iB zCP!xe3wRpf;oDLljrw@ewW)}(2XMp{xfTj#LUGE0@)vhlY6`b|A7Y*$y=n!IsiJt? zD*AV7HF^Zvq-}(n_GvjNK7Y$x6-<<{@0YjGolZrkv28FV2&RAt_q@FH<$U6#ZoA@sr5A?SMHICnXlSSt z@?V=6?ahhK*w+Ou=ex;2zoj%tnyxXmxmLi|n>)y_t zY&2?21Iv4`aDDgie%iOG1(Jzfq>UzFgT_Won{OWtJA@jajlkEliU3=wCUSde(VA$n ztJ*SNZ8))Xk!+|rwzDWsY(PX&yII^e$80FhmdOtVH!6!ET7|@6e-QMG<2GEG5mkTh ze`Mgk5$0fPByX=@kQV+ecUCgskuMavhY(JD&Nc|SseNS%$>fe_mjw(P zqQXDv&L%&M+N~F|H==DlcGOKJ9H|$=b-4y-kwB5ct6)R01gjqcLeM9#3QH85QbM)_ zqvMS_<4NooE-fS_6>>F;@9xd3`rl<2aTDs{N#mp>vYp~*5vP=c1f8B#r{y+Vm=lE+ zI;q|<|9xK@^GEHJ_4Tt~kkXT9+d@ZNHC;cMuIpL#z8~091G_|=ojD%MI)WX?Mnq%b zAX>?DqUttPc5284A~T957z#!sSfS?qN$BsWoHaUFNead(;-QQ)MSbkp_K-jX|AyRDv;F8X+?wmEYqKsK+H3MV z%zRy&;Q)95GrOc?=tC9R9ank69wwVB_xNzofl!2rZT#kYLZN28SfSk*jPq66L1qTR z0Rg>Gfq;}GKR#oz+P!d2%R>^)q zqZDPc=6L%5EqskP;s3~#TdNv#{LI*arfhrj+r5_;Ma^CVprp^_vuf=5WA$&*8-FAl zqqHK6B5}}e-NpD8H!4{srAKu4x3ZU9Q{Q(4JgPL@t4IeRW`E}0K;Yeje?GMn7R3Ka zE&6_*wdj*F_m(RC1u3?DGVu%IAFxd<_rr8K8PITly?wF?c7ZBQ)lH(|-|M(C^VU@F z?AZPX3df)GeKJLE<&q>NE9bqK&Q-QHI0kQMODa>P>+Zb89q!t54;RgZn?sqbnbj*e z-TA*FenBEX@h@eVRCJb>^x@y}(bPwFH1pvr@87iY#Fm}E;nN>>6W7d1QYe_D_swF9 zgXzH4iwy@~=O#tVYp*7jC^#T)SgUD%f%QsMH7iqZ`MO)v_;03!6+M}H;+g8uO-KvLzoqJ39%V3GUx~+oJ|{SSAnduD~cQM zP>ns=7ytV3^r3(@AouxDdp%R{Q(KLfOXA%XZkJ;RyJn=b19u3{zPF%_bN2Is1?Ah) zonZGNs2p3qJhcqs>-K&wH#McVcI9My+RD1(0_W<_3omD{y{MM3^pv@I7w@Sj*9G?c zd4Zt8x>9wmD3#|?7q|oE#gvZajiPeWLw`IHiFYkym^9O$riJEKm$Y8YkBYlYD9{@u zgiKiw!4I*9;I~7JC%xeB#MjD}=a~)7zg}m(n^5}M=h!+?P2)S^lyBrvgwscSqg zPxLXq=KL+^c4zOqZ_)$N=QDkLpxb;sntYQhmWhgwKJZAn?8&L?pK@76HmhDKSsV$YZLt9RG)?LT*%OqMhE;Y7@EWEB?nR)(|mh^nw9v1-xd zRt?+IS6I)l?^JL;9fRi&HTK@LFCrVN`u^IK?{M7mZS@rwq|2TS*GgPp<6+p&KCQ5J zPahjHj|P90;o^e?eInEl$ldxb;%5KlFz>>aZhGT`0$!Bu?;F0DKc;=m=YBzcn3e%z z-DhDsS)7MEUt2`4KQ@)rpFWMiaPDxWnw`q{ZL$_$6~qudKLy>XRoE!Vr7pw%@HTo1 z%#nbO_nsqO-=CenY53F1KK2Re@R(n=IC55Yq-gmD@uTg1+!3o`@hA6rDG3{f_qp=? zJnrD4mUrcTIt}&7<@RN{{%n`at7pzfH@FXocd)kSrNloR+9k@4dFBr;T?{C}+2Y+h z2jkiK98#}olTVKVWRtaWtG&MRu_sHaqDi3^~cFD|ktPxE` z!&&&`VJ-RzdnPKeQ*}SUh2^WRl$vqHU1IFWckW)W#6FuqkQ3n= zwUp_ZZHQ4jm+eBL6X3cg_IwIw>tCC?gSqNoHdIqvdXBZ|!jA4GQL{RawE!w=OL;0c z@k`2N-dKh=sVL0GqzvZK3}nE>QjDD#o%p+q2Nj}VL$CeQE=|Gnou@>olL9{uzn4`| zz6F?z78?uD7LH)Fa8U_0m(*i222El#Y)@ETM_i)-dD5BQBybK7F_r!8>2M{Q5YmH>_?N>Xn7D&0E|pkZ;-o>l zFIzn@DWJd|^r4{|tF^uN;$8QdU%H7TW>i-KqG1@vPhxbVH)j>2H+FWK(*yYgRGuZ| ziM<=5G@s60kiSE*`wN2m>Sy%WlS;8)kb;L_?LK;6*eKE7zW}?Ftfua?^-Y)KlFw{d%CX(I)5mP}hzE?xLsM>f zwl}^wz&;xarasT}#M+BJogGH_LPDs?an8?+{(`)1fn^29^}eicW7EASzsoaIQho*Q zz*Yg3R0%M~b!0`P`*AZQmO zxEg5mZd%Qa%biY-em9O{+HLV|OU~Dvp0zlh!%mw_te#8wR`pe~w{8~YTHZ@U z=*)*V6XRCo^`P#tz z)^Y9I<`);C*dqEES2xXWvSRbIbEH{0r(AlT%O9rq;L5COQ(a{+DAAhw-~<9msA2C*|Pbdz;5Hj{u}? zW$}5+;#Tbp)SOraE=ucP;IWrAPZNOR?bxnv1=50d6~~neZHF0%@rs^iQH9&|xL<`W zsN(4HI2L+RO#AQij1s&1A64OucMlVT2O)`7^sTjLAir(Y>KTw_mL%FWVhZxxEF+py zuEWuEZ%r!%Y9PO@rViw{-KLXf1=Ix@rs(`O9>)mZqdK&P{{Kkhh*15IC9>kbSEFFz zL;Y?xu9 z_6Yf!1Wd=LCaffg)6>OdKWY`tV}Ii&T#!E`QURkEbTdL?=G7L9AEEFMOSAcEX{f?Vf@GD)47_SmNYlGOVr4J{dNYTsp#(iy!+c(|Kp8+ ze|7$U-C_KJFVf;_A z{CQea_7|2BnhkW$pb3w#VieYz1@VY8S6`_RnkX()Dehq-1+h9T#-ZUAZD9;({ zKe|SYE5TW0uxS*1k6+{Ke_WaUTBAyUMm>N1PK~Rl-Tz=bZgr3G;DxHWar8)O&von9 z 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 list[str]: """Workaround for FlashAttention""" if os.path.basename(filename) != "modeling_florence2.py": @@ -41,7 +42,7 @@ def load_model(version): if not os.path.exists(model_path): log(f"Downloading Florence2 {version} model...") - repo_id = model_repos[version] + repo_id = fl2_model_repos[version] from huggingface_hub import snapshot_download snapshot_download(repo_id=repo_id, local_dir=model_path, ignore_patterns=["*.md", "*.txt"]) @@ -60,6 +61,7 @@ def load_model(version): return (model.to(device), processor) + def fig_to_pil(fig): buf = io.BytesIO() fig.savefig(buf, format='png', dpi=100, bbox_inches='tight', pad_inches=0) @@ -367,7 +369,7 @@ def __init__(self): @classmethod def INPUT_TYPES(s): - model_list = list(model_repos.keys()) + model_list = list(fl2_model_repos.keys()) return { "required": { "version": (model_list,{"default": model_list[0]}), diff --git a/py/imagefunc.py b/py/imagefunc.py index 93eb8f4e..cc8906ce 100644 --- a/py/imagefunc.py +++ b/py/imagefunc.py @@ -33,6 +33,7 @@ from transformers import AutoModel, AutoProcessor, StoppingCriteria, StoppingCriteriaList, AutoModelForCausalLM from colorsys import rgb_to_hsv import folder_paths +import comfy.model_management from .filmgrainer import processing as processing_utils from .blendmodes import * @@ -156,6 +157,25 @@ def mask2image(mask:torch.Tensor) -> Image: '''Image Functions''' +def draw_bounding_boxes(image:Image, bboxes:list, color:str="#FF0000", line_width:int=5) -> Image: + """ + Draw bounding boxes on the image using the coordinates provided in the bboxes dictionary. + """ + if len(bboxes) > 0: + draw = ImageDraw.Draw(image) + width, height = image.size + if line_width < 0: #auto line width + line_width = (image.width + image.height) // 300 + + for box in bboxes: + xmin = min(box[0],box[2]) + xmax = max(box[0],box[2]) + ymin = min(box[1],box[3]) + ymax = max(box[1], box[3]) + draw.rectangle([xmin, ymin, xmax, ymax], outline=color, width=line_width) + + return image + # 颜色加深 def blend_color_burn(background_image:Image, layer_image:Image) -> Image: img_1 = cv22ski(pil2cv2(background_image)) @@ -1491,7 +1511,7 @@ def generate_VITMatte(image:Image, trimap:Image, local_files_only:bool=False, de if width * height > max_megapixels: image = image.resize((target_width, target_height), Image.BILINEAR) trimap = trimap.resize((target_width, target_height), Image.BILINEAR) - log(f"vitmatte image size {width}x{height} too large, resize to {target_width}x{target_height} for processing.") + # log(f"vitmatte image size {width}x{height} too large, resize to {target_width}x{target_height} for processing.") model_name = "hustvl/vitmatte-small-composition-1k" if device=="cpu": device = torch.device('cpu') @@ -1503,7 +1523,7 @@ def generate_VITMatte(image:Image, trimap:Image, local_files_only:bool=False, de device = torch.device('cpu') vit_matte_model = load_VITMatte_model(model_name=model_name, local_files_only=local_files_only) vit_matte_model.model.to(device) - log(f"vitmatte processing, image size = {image.width}x{image.height}, device = {device}.") + # log(f"vitmatte processing, image size = {image.width}x{image.height}, device = {device}.") inputs = vit_matte_model.processor(images=image, trimaps=trimap, return_tensors="pt") with torch.no_grad(): inputs = {k: v.to(device) for k, v in inputs.items()} @@ -2104,7 +2124,18 @@ def __ne__(self, __value: object) -> bool: chop_mode_v2 = list(BLEND_MODES.keys()) -'''Load INI File''' +'''Load File''' + + +def get_files(model_path: str, file_ext_list:list) -> dict: + file_list = [] + for ext in file_ext_list: + file_list.extend(glob.glob(os.path.join(model_path, '*' + ext))) + files_dict = {} + for i in range(len(file_list)): + _, filename = os.path.split(file_list[i]) + files_dict[filename] = file_list[i] + return files_dict default_lut_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.normpath(__file__))), 'lut') default_font_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.normpath(__file__))), 'font') @@ -2202,6 +2233,8 @@ def get_api_key(api_name:str) -> str: FONT_LIST = list(FONT_DICT.keys()) log(f'Find {len(FONT_LIST)} Fonts in {default_font_dir}') + + gemini_generate_config = { "temperature": 0, "top_p": 1, diff --git a/py/object_detector.py b/py/object_detector.py new file mode 100644 index 00000000..70100653 --- /dev/null +++ b/py/object_detector.py @@ -0,0 +1,357 @@ + +from .imagefunc import * + +select_list = ["all", "first", "by_index"] + + +def select_bboxes(bboxes:list, bbox_select:str, select_index:str) -> list: + indexs = extract_numbers(select_index) + if bbox_select == "all": + return bboxes + elif bbox_select == "first": + return [bboxes[0]] + elif bbox_select == "by_index": + new_bboxes = [] + for i in indexs: + try: + new_bboxes.append(bboxes[i]) + except IndexError: + log(f"Object detector output by_index: invalid bbox index {i}", message_type='warning') + return new_bboxes + + +class LS_BBOXES_JOIN: + + def __init__(self): + self.NODE_NAME = 'BBoxes Join' + + @classmethod + def INPUT_TYPES(cls): + + return { + "required": { + "bboxes_1": ("BBOXES",), + }, + "optional": { + "bboxes_2": ("BBOXES",), + "bboxes_3": ("BBOXES",), + "bboxes_4": ("BBOXES",), + } + } + + RETURN_TYPES = ("BBOXES",) + RETURN_NAMES = ("bboxes",) + FUNCTION = 'bboxes_join' + CATEGORY = '😺dzNodes/LayerMask' + + def bboxes_join(self, bboxes_1, bboxes_2=None, bboxes_3=None, bboxes_4=None): + if bboxes_2 is not None: + bboxes_1.extend(bboxes_2) + if bboxes_3 is not None: + bboxes_1.extend(bboxes_3) + if bboxes_4 is not None: + bboxes_1.extend(bboxes_4) + return (bboxes_1,) + +class LS_OBJECT_DETECTOR_FL2: + + def __init__(self): + self.NODE_NAME = 'Object Detector Florence2' + + @classmethod + def INPUT_TYPES(cls): + + return { + "required": { + "image": ("IMAGE", ), # + "prompt": ("STRING", {"default": "subject"}), + "florence2_model": ("FLORENCE2",), + "bbox_select": (select_list,), + "select_index": ("STRING", {"default": "0,"},), + }, + "optional": { + } + } + + RETURN_TYPES = ("BBOXES", "IMAGE",) + RETURN_NAMES = ("bboxes", "preview",) + FUNCTION = 'object_detector_fl2' + CATEGORY = '😺dzNodes/LayerMask' + + def object_detector_fl2(self, image, prompt, florence2_model, bbox_select, select_index): + + bboxes = [] + ret_previews = [] + max_new_tokens = 512 + num_beams = 3 + do_sample = False + fill_mask = False + + model = florence2_model['model'] + processor = florence2_model['processor'] + + img = tensor2pil(image[0]).convert("RGB") + task = 'caption to phrase grounding' + from .florence2_ultra import process_image + results, _ = process_image(model, processor, img, task, + max_new_tokens, num_beams, do_sample, + fill_mask, prompt) + + if isinstance(results, dict): + results["width"] = img.width + results["height"] = img.height + + bboxes = self.fbboxes_to_list(results) + bboxes = select_bboxes(bboxes, bbox_select, select_index) + preview = draw_bounding_boxes(img, bboxes, color="#FF0000", line_width=-1) + ret_previews.append(pil2tensor(preview)) + if len(bboxes) == 0: + log(f"{self.NODE_NAME} no object found", message_type='warning') + else: + log(f"{self.NODE_NAME} found {len(bboxes)} object(s)", message_type='info') + return (bboxes, torch.cat(ret_previews, dim=0)) + + def fbboxes_to_list(self, F_BBOXES) -> list: + if isinstance(F_BBOXES, str): + return None + ret_bboxes = [] + width = F_BBOXES["width"] + height = F_BBOXES["height"] + x1_c = width + y1_c = height + x2_c = y2_c = 0 + label = "" + if "bboxes" in F_BBOXES: + for idx in range(len(F_BBOXES["bboxes"])): + bbox = F_BBOXES["bboxes"][idx] + new_label = F_BBOXES["labels"][idx].removeprefix("") + if new_label not in label: + if idx > 0: + label = label + ", " + label = label + new_label + if len(bbox) == 4: + x1, y1, x2, y2 = int(bbox[0]), int(bbox[1]), int(bbox[2]), int(bbox[3]) + elif len(bbox) == 8: + x1 = int(min(bbox[0::2])) + x2 = int(max(bbox[0::2])) + y1 = int(min(bbox[1::2])) + y2 = int(max(bbox[1::2])) + else: + continue + x1_c = min(x1_c, x1) + y1_c = min(y1_c, y1) + x2_c = max(x2_c, x2) + y2_c = max(y2_c, y2) + ret_bboxes.append([x1, y1, x2, y2]) + else: + x1_c = width + y1_c = height + x2_c = y2_c = 0 + for polygon in F_BBOXES["polygons"][0]: + if len(_polygon) < 3: + print('Invalid polygon:', _polygon) + continue + x1_c = min(x1_c, int(min(polygon[0::2]))) + x2_c = max(x2_c, int(max(polygon[0::2]))) + y1_c = min(y1_c, int(min(polygon[1::2]))) + y2_c = max(y2_c, int(max(polygon[1::2]))) + ret_bboxes.append(x1_c, y1_c, x2_c, y2_c) + return ret_bboxes + +class LS_OBJECT_DETECTOR_MASK: + + def __init__(self): + self.NODE_NAME = 'Object Detector MASK' + + @classmethod + def INPUT_TYPES(cls): + + return { + "required": { + "object_mask": ("MASK",), + "bbox_select": (select_list,), + "select_index": ("STRING", {"default": "0,"},), + }, + "optional": { + } + } + + RETURN_TYPES = ("BBOXES", "IMAGE",) + RETURN_NAMES = ("bboxes", "preview",) + FUNCTION = 'object_detector_mask' + CATEGORY = '😺dzNodes/LayerMask' + + def object_detector_mask(self, object_mask, bbox_select, select_index): + + bboxes = [] + if object_mask.dim() == 2: + object_mask = torch.unsqueeze(object_mask, 0) + + cv_mask = tensor2cv2(object_mask[0]) + cv_mask = cv2.cvtColor(cv_mask, cv2.COLOR_BGR2GRAY) + _, binary = cv2.threshold(cv_mask, 127, 255, cv2.THRESH_BINARY) + # invert mask + # binary = cv2.bitwise_not(binary) + contours, _ = cv2.findContours(binary, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) + for contour in contours: + x, y, w, h = cv2.boundingRect(contour) + bboxes.append([x, y, x + w, y + h]) + bboxes = select_bboxes(bboxes, bbox_select, select_index) + ret_previews = [] + preview = draw_bounding_boxes(tensor2pil(object_mask[0]).convert("RGB"), bboxes, color="#FF0000", line_width=-1) + ret_previews.append(pil2tensor(preview)) + + if len(bboxes) == 0: + log(f"{self.NODE_NAME} no object found", message_type='warning') + else: + log(f"{self.NODE_NAME} found {len(bboxes)} object(s)", message_type='info') + + return (bboxes, torch.cat(ret_previews, dim=0)) + + +class LS_OBJECT_DETECTOR_YOLO8: + + def __init__(self): + self.NODE_NAME = 'Object Detector YOLO8' + + @classmethod + def INPUT_TYPES(cls): + model_ext = [".pt"] + model_path = os.path.join(folder_paths.models_dir, 'yolo') + FILES_DICT = get_files(model_path, model_ext) + FILE_LIST = list(FILES_DICT.keys()) + return { + "required": { + "image": ("IMAGE", ), + "yolo_model": (FILE_LIST,), + "bbox_select": (select_list,), + "select_index": ("STRING", {"default": "0,"},), + }, + "optional": { + } + } + + RETURN_TYPES = ("BBOXES", "IMAGE",) + RETURN_NAMES = ("bboxes", "preview",) + FUNCTION = 'object_detector_yolo8' + CATEGORY = '😺dzNodes/LayerMask' + + def object_detector_yolo8(self, image, yolo_model, bbox_select, select_index): + + from ultralytics import YOLO + model_path = os.path.join(folder_paths.models_dir, 'yolo') + yolo_model = YOLO(os.path.join(model_path, yolo_model)) + + bboxes = [] + ret_previews = [] + + img = torch.unsqueeze(image[0], 0) + _image = tensor2pil(img) + results = yolo_model(_image, retina_masks=True) + for result in results: + yolo_plot_image = cv2.cvtColor(result.plot(), cv2.COLOR_BGR2RGB) + + # no mask, if have box, draw box + if result.boxes is not None and len(result.boxes.xyxy) > 0: + for box in result.boxes: + x1, y1, x2, y2 = box.xyxy[0].cpu().numpy() + bboxes.append([x1, y1, x2, y2]) + + bboxes = select_bboxes(bboxes, bbox_select, select_index) + preview = draw_bounding_boxes(_image.convert("RGB"), bboxes, color="#FF0000", line_width=-1) + ret_previews.append(pil2tensor(preview)) + + if len(bboxes) == 0: + log(f"{self.NODE_NAME} no object found", message_type='warning') + else: + log(f"{self.NODE_NAME} found {len(bboxes)} object(s)", message_type='info') + + return (bboxes, torch.cat(ret_previews, dim=0),) + +class LS_OBJECT_DETECTOR_YOLOWORLD: + + def __init__(self): + self.NODE_NAME = 'Object Detector YOLO-WORLD' + self.model_path = os.path.join(folder_paths.models_dir, 'yolo-world') + os.environ['MODEL_CACHE_DIR'] = self.model_path + + @classmethod + def INPUT_TYPES(cls): + model_list =['yolo_world/v2-x', 'yolo_world/v2-l', 'yolo_world/v2-m', + 'yolo_world/v2-s', 'yolo_world/l', 'yolo_world/m', + 'yolo_world/s'] + return { + "required": { + "image": ("IMAGE", ), + "yolo_world_model": (model_list,), + "confidence_threshold": ("FLOAT", {"default": 0.05, "min": 0, "max": 1, "step": 0.01}), + "nms_iou_threshold": ("FLOAT", {"default": 0.3, "min": 0, "max": 1, "step": 0.01}), + "prompt": ("STRING", {"default": "subject"}), + "bbox_select": (select_list,), + "select_index": ("STRING", {"default": "0,"},), + }, + "optional": { + } + } + + RETURN_TYPES = ("BBOXES", "IMAGE",) + RETURN_NAMES = ("bboxes", "preview",) + FUNCTION = 'object_detector_yoloworld' + CATEGORY = '😺dzNodes/LayerMask' + + def object_detector_yoloworld(self, image, yolo_world_model, + confidence_threshold, nms_iou_threshold, prompt, + bbox_select, select_index): + import supervision as sv + + model=self.load_yolo_world_model(yolo_world_model, prompt) + infer_outputs = [] + img = (255 * image[0].cpu().numpy()).astype(np.uint8) + results = model.infer( + img, confidence=confidence_threshold) + detections = sv.Detections.from_inference(results) + detections = detections.with_nms( + class_agnostic=False, + threshold=nms_iou_threshold + ) + infer_outputs.append(detections) + bboxes = infer_outputs[0].xyxy.tolist() + bboxes = [[int(value) for value in sublist] for sublist in bboxes] + bboxes = select_bboxes(bboxes, bbox_select, select_index) + ret_previews = [] + preview = draw_bounding_boxes(tensor2pil(image[0]).convert('RGB'), bboxes, color="#FF0000", line_width=-1) + ret_previews.append(pil2tensor(preview)) + + if len(bboxes) == 0: + log(f"{self.NODE_NAME} no object found", message_type='warning') + else: + log(f"{self.NODE_NAME} found {len(bboxes)} object(s)", message_type='info') + + return (bboxes, torch.cat(ret_previews, dim=0)) + + def process_categories(self, categories: str) -> List[str]: + return [category.strip().lower() for category in categories.split(',')] + + def load_yolo_world_model(self,model_id: str, categories: str) -> List[torch.nn.Module]: + from inference.models import YOLOWorld as YOLOWorldImpl + model = YOLOWorldImpl(model_id=model_id) + categories = self.process_categories(categories) + model.set_classes(categories) + return model + + +NODE_CLASS_MAPPINGS = { + "LayerMask: BBoxJoin": LS_BBOXES_JOIN, + "LayerMask: ObjectDetectorFL2": LS_OBJECT_DETECTOR_FL2, + "LayerMask: ObjectDetectorMask": LS_OBJECT_DETECTOR_MASK, + "LayerMask: ObjectDetectorYOLO8": LS_OBJECT_DETECTOR_YOLO8, + "LayerMask: ObjectDetectorYOLOWorld": LS_OBJECT_DETECTOR_YOLOWORLD +} + +NODE_DISPLAY_NAME_MAPPINGS = { + "LayerMask: BBoxJoin": "LayerMask: BBox Join", + "LayerMask: ObjectDetectorFL2": "LayerMask: Object Detector Florence2", + "LayerMask: ObjectDetectorMask": "LayerMask: Object Detector Mask", + "LayerMask: ObjectDetectorYOLO8": "LayerMask: Object Detector YOLO8", + "LayerMask: ObjectDetectorYOLOWorld": "LayerMask: Object Detector YOLO World" +} \ No newline at end of file diff --git a/py/sam2/__init__.py b/py/sam2/__init__.py new file mode 100644 index 00000000..5277f461 --- /dev/null +++ b/py/sam2/__init__.py @@ -0,0 +1,5 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. diff --git a/py/sam2/automatic_mask_generator.py b/py/sam2/automatic_mask_generator.py new file mode 100644 index 00000000..e5891325 --- /dev/null +++ b/py/sam2/automatic_mask_generator.py @@ -0,0 +1,434 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +# Adapted from https://github.com/facebookresearch/segment-anything/blob/main/segment_anything/automatic_mask_generator.py +from typing import Any, Dict, List, Optional, Tuple + +import numpy as np +import torch +from torchvision.ops.boxes import batched_nms, box_area # type: ignore + +from ..sam2.modeling.sam2_base import SAM2Base +from ..sam2.sam2_image_predictor import SAM2ImagePredictor +from ..sam2.utils.amg import ( + area_from_rle, + batch_iterator, + batched_mask_to_box, + box_xyxy_to_xywh, + build_all_layer_point_grids, + calculate_stability_score, + coco_encode_rle, + generate_crop_boxes, + is_box_near_crop_edge, + mask_to_rle_pytorch, + MaskData, + remove_small_regions, + rle_to_mask, + uncrop_boxes_xyxy, + uncrop_masks, + uncrop_points, +) + + +class SAM2AutomaticMaskGenerator: + def __init__( + self, + model: SAM2Base, + points_per_side: Optional[int] = 32, + points_per_batch: int = 64, + pred_iou_thresh: float = 0.8, + stability_score_thresh: float = 0.95, + stability_score_offset: float = 1.0, + mask_threshold: float = 0.0, + box_nms_thresh: float = 0.7, + crop_n_layers: int = 0, + crop_nms_thresh: float = 0.7, + crop_overlap_ratio: float = 512 / 1500, + crop_n_points_downscale_factor: int = 1, + point_grids: Optional[List[np.ndarray]] = None, + min_mask_region_area: int = 0, + output_mode: str = "binary_mask", + use_m2m: bool = False, + multimask_output: bool = True, + ) -> None: + """ + Using a SAM 2 model, generates masks for the entire image. + Generates a grid of point prompts over the image, then filters + low quality and duplicate masks. The default settings are chosen + for SAM 2 with a HieraL backbone. + + Arguments: + model (Sam): The SAM 2 model to use for mask prediction. + points_per_side (int or None): The number of points to be sampled + along one side of the image. The total number of points is + points_per_side**2. If None, 'point_grids' must provide explicit + point sampling. + points_per_batch (int): Sets the number of points run simultaneously + by the model. Higher numbers may be faster but use more GPU memory. + pred_iou_thresh (float): A filtering threshold in [0,1], using the + model's predicted mask quality. + stability_score_thresh (float): A filtering threshold in [0,1], using + the stability of the mask under changes to the cutoff used to binarize + the model's mask predictions. + stability_score_offset (float): The amount to shift the cutoff when + calculated the stability score. + mask_threshold (float): Threshold for binarizing the mask logits + box_nms_thresh (float): The box IoU cutoff used by non-maximal + suppression to filter duplicate masks. + crop_n_layers (int): If >0, mask prediction will be run again on + crops of the image. Sets the number of layers to run, where each + layer has 2**i_layer number of image crops. + crop_nms_thresh (float): The box IoU cutoff used by non-maximal + suppression to filter duplicate masks between different crops. + crop_overlap_ratio (float): Sets the degree to which crops overlap. + In the first crop layer, crops will overlap by this fraction of + the image length. Later layers with more crops scale down this overlap. + crop_n_points_downscale_factor (int): The number of points-per-side + sampled in layer n is scaled down by crop_n_points_downscale_factor**n. + point_grids (list(np.ndarray) or None): A list over explicit grids + of points used for sampling, normalized to [0,1]. The nth grid in the + list is used in the nth crop layer. Exclusive with points_per_side. + min_mask_region_area (int): If >0, postprocessing will be applied + to remove disconnected regions and holes in masks with area smaller + than min_mask_region_area. Requires opencv. + output_mode (str): The form masks are returned in. Can be 'binary_mask', + 'uncompressed_rle', or 'coco_rle'. 'coco_rle' requires pycocotools. + For large resolutions, 'binary_mask' may consume large amounts of + memory. + use_m2m (bool): Whether to add a one step refinement using previous mask predictions. + multimask_output (bool): Whether to output multimask at each point of the grid. + """ + + assert (points_per_side is None) != ( + point_grids is None + ), "Exactly one of points_per_side or point_grid must be provided." + if points_per_side is not None: + self.point_grids = build_all_layer_point_grids( + points_per_side, + crop_n_layers, + crop_n_points_downscale_factor, + ) + elif point_grids is not None: + self.point_grids = point_grids + else: + raise ValueError("Can't have both points_per_side and point_grid be None.") + + assert output_mode in [ + "binary_mask", + "uncompressed_rle", + "coco_rle", + ], f"Unknown output_mode {output_mode}." + if output_mode == "coco_rle": + try: + from pycocotools import mask as mask_utils # type: ignore # noqa: F401 + except ImportError as e: + print("Please install pycocotools") + raise e + + self.predictor = SAM2ImagePredictor( + model, + max_hole_area=min_mask_region_area, + max_sprinkle_area=min_mask_region_area, + ) + self.points_per_batch = points_per_batch + self.pred_iou_thresh = pred_iou_thresh + self.stability_score_thresh = stability_score_thresh + self.stability_score_offset = stability_score_offset + self.mask_threshold = mask_threshold + self.box_nms_thresh = box_nms_thresh + self.crop_n_layers = crop_n_layers + self.crop_nms_thresh = crop_nms_thresh + self.crop_overlap_ratio = crop_overlap_ratio + self.crop_n_points_downscale_factor = crop_n_points_downscale_factor + self.min_mask_region_area = min_mask_region_area + self.output_mode = output_mode + self.use_m2m = use_m2m + self.multimask_output = multimask_output + + @torch.no_grad() + def generate(self, image: np.ndarray) -> List[Dict[str, Any]]: + """ + Generates masks for the given image. + + Arguments: + image (np.ndarray): The image to generate masks for, in HWC uint8 format. + + Returns: + list(dict(str, any)): A list over records for masks. Each record is + a dict containing the following keys: + segmentation (dict(str, any) or np.ndarray): The mask. If + output_mode='binary_mask', is an array of shape HW. Otherwise, + is a dictionary containing the RLE. + bbox (list(float)): The box around the mask, in XYWH format. + area (int): The area in pixels of the mask. + predicted_iou (float): The model's own prediction of the mask's + quality. This is filtered by the pred_iou_thresh parameter. + point_coords (list(list(float))): The point coordinates input + to the model to generate this mask. + stability_score (float): A measure of the mask's quality. This + is filtered on using the stability_score_thresh parameter. + crop_box (list(float)): The crop of the image used to generate + the mask, given in XYWH format. + """ + + # Generate masks + mask_data = self._generate_masks(image) + + # Encode masks + if self.output_mode == "coco_rle": + mask_data["segmentations"] = [ + coco_encode_rle(rle) for rle in mask_data["rles"] + ] + elif self.output_mode == "binary_mask": + mask_data["segmentations"] = [rle_to_mask(rle) for rle in mask_data["rles"]] + else: + mask_data["segmentations"] = mask_data["rles"] + + # Write mask records + curr_anns = [] + for idx in range(len(mask_data["segmentations"])): + ann = { + "segmentation": mask_data["segmentations"][idx], + "area": area_from_rle(mask_data["rles"][idx]), + "bbox": box_xyxy_to_xywh(mask_data["boxes"][idx]).tolist(), + "predicted_iou": mask_data["iou_preds"][idx].item(), + "point_coords": [mask_data["points"][idx].tolist()], + "stability_score": mask_data["stability_score"][idx].item(), + "crop_box": box_xyxy_to_xywh(mask_data["crop_boxes"][idx]).tolist(), + } + curr_anns.append(ann) + + return curr_anns + + def _generate_masks(self, image: np.ndarray) -> MaskData: + orig_size = image.shape[:2] + crop_boxes, layer_idxs = generate_crop_boxes( + orig_size, self.crop_n_layers, self.crop_overlap_ratio + ) + + # Iterate over image crops + data = MaskData() + for crop_box, layer_idx in zip(crop_boxes, layer_idxs): + crop_data = self._process_crop(image, crop_box, layer_idx, orig_size) + data.cat(crop_data) + + # Remove duplicate masks between crops + if len(crop_boxes) > 1: + # Prefer masks from smaller crops + scores = 1 / box_area(data["crop_boxes"]) + scores = scores.to(data["boxes"].device) + keep_by_nms = batched_nms( + data["boxes"].float(), + scores, + torch.zeros_like(data["boxes"][:, 0]), # categories + iou_threshold=self.crop_nms_thresh, + ) + data.filter(keep_by_nms) + data.to_numpy() + return data + + def _process_crop( + self, + image: np.ndarray, + crop_box: List[int], + crop_layer_idx: int, + orig_size: Tuple[int, ...], + ) -> MaskData: + # Crop the image and calculate embeddings + x0, y0, x1, y1 = crop_box + cropped_im = image[y0:y1, x0:x1, :] + cropped_im_size = cropped_im.shape[:2] + self.predictor.set_image(cropped_im) + + # Get points for this crop + points_scale = np.array(cropped_im_size)[None, ::-1] + points_for_image = self.point_grids[crop_layer_idx] * points_scale + + # Generate masks for this crop in batches + data = MaskData() + for (points,) in batch_iterator(self.points_per_batch, points_for_image): + batch_data = self._process_batch( + points, cropped_im_size, crop_box, orig_size, normalize=True + ) + data.cat(batch_data) + del batch_data + self.predictor.reset_predictor() + + # Remove duplicates within this crop. + keep_by_nms = batched_nms( + data["boxes"].float(), + data["iou_preds"], + torch.zeros_like(data["boxes"][:, 0]), # categories + iou_threshold=self.box_nms_thresh, + ) + data.filter(keep_by_nms) + + # Return to the original image frame + data["boxes"] = uncrop_boxes_xyxy(data["boxes"], crop_box) + data["points"] = uncrop_points(data["points"], crop_box) + data["crop_boxes"] = torch.tensor([crop_box for _ in range(len(data["rles"]))]) + + return data + + def _process_batch( + self, + points: np.ndarray, + im_size: Tuple[int, ...], + crop_box: List[int], + orig_size: Tuple[int, ...], + normalize=False, + ) -> MaskData: + orig_h, orig_w = orig_size + + # Run model on this batch + points = torch.as_tensor(points, device=self.predictor.device) + in_points = self.predictor._transforms.transform_coords( + points, normalize=normalize, orig_hw=im_size + ) + in_labels = torch.ones( + in_points.shape[0], dtype=torch.int, device=in_points.device + ) + masks, iou_preds, low_res_masks = self.predictor._predict( + in_points[:, None, :], + in_labels[:, None], + multimask_output=self.multimask_output, + return_logits=True, + ) + + # Serialize predictions and store in MaskData + data = MaskData( + masks=masks.flatten(0, 1), + iou_preds=iou_preds.flatten(0, 1), + points=points.repeat_interleave(masks.shape[1], dim=0), + low_res_masks=low_res_masks.flatten(0, 1), + ) + del masks + + if not self.use_m2m: + # Filter by predicted IoU + if self.pred_iou_thresh > 0.0: + keep_mask = data["iou_preds"] > self.pred_iou_thresh + data.filter(keep_mask) + + # Calculate and filter by stability score + data["stability_score"] = calculate_stability_score( + data["masks"], self.mask_threshold, self.stability_score_offset + ) + if self.stability_score_thresh > 0.0: + keep_mask = data["stability_score"] >= self.stability_score_thresh + data.filter(keep_mask) + else: + # One step refinement using previous mask predictions + in_points = self.predictor._transforms.transform_coords( + data["points"], normalize=normalize, orig_hw=im_size + ) + labels = torch.ones( + in_points.shape[0], dtype=torch.int, device=in_points.device + ) + masks, ious = self.refine_with_m2m( + in_points, labels, data["low_res_masks"], self.points_per_batch + ) + data["masks"] = masks.squeeze(1) + data["iou_preds"] = ious.squeeze(1) + + if self.pred_iou_thresh > 0.0: + keep_mask = data["iou_preds"] > self.pred_iou_thresh + data.filter(keep_mask) + + data["stability_score"] = calculate_stability_score( + data["masks"], self.mask_threshold, self.stability_score_offset + ) + if self.stability_score_thresh > 0.0: + keep_mask = data["stability_score"] >= self.stability_score_thresh + data.filter(keep_mask) + + # Threshold masks and calculate boxes + data["masks"] = data["masks"] > self.mask_threshold + data["boxes"] = batched_mask_to_box(data["masks"]) + + # Filter boxes that touch crop boundaries + keep_mask = ~is_box_near_crop_edge( + data["boxes"], crop_box, [0, 0, orig_w, orig_h] + ) + if not torch.all(keep_mask): + data.filter(keep_mask) + + # Compress to RLE + data["masks"] = uncrop_masks(data["masks"], crop_box, orig_h, orig_w) + data["rles"] = mask_to_rle_pytorch(data["masks"]) + del data["masks"] + + return data + + @staticmethod + def postprocess_small_regions( + mask_data: MaskData, min_area: int, nms_thresh: float + ) -> MaskData: + """ + Removes small disconnected regions and holes in masks, then reruns + box NMS to remove any new duplicates. + + Edits mask_data in place. + + Requires open-cv as a dependency. + """ + if len(mask_data["rles"]) == 0: + return mask_data + + # Filter small disconnected regions and holes + new_masks = [] + scores = [] + for rle in mask_data["rles"]: + mask = rle_to_mask(rle) + + mask, changed = remove_small_regions(mask, min_area, mode="holes") + unchanged = not changed + mask, changed = remove_small_regions(mask, min_area, mode="islands") + unchanged = unchanged and not changed + + new_masks.append(torch.as_tensor(mask).unsqueeze(0)) + # Give score=0 to changed masks and score=1 to unchanged masks + # so NMS will prefer ones that didn't need postprocessing + scores.append(float(unchanged)) + + # Recalculate boxes and remove any new duplicates + masks = torch.cat(new_masks, dim=0) + boxes = batched_mask_to_box(masks) + keep_by_nms = batched_nms( + boxes.float(), + torch.as_tensor(scores), + torch.zeros_like(boxes[:, 0]), # categories + iou_threshold=nms_thresh, + ) + + # Only recalculate RLEs for masks that have changed + for i_mask in keep_by_nms: + if scores[i_mask] == 0.0: + mask_torch = masks[i_mask].unsqueeze(0) + mask_data["rles"][i_mask] = mask_to_rle_pytorch(mask_torch)[0] + mask_data["boxes"][i_mask] = boxes[i_mask] # update res directly + mask_data.filter(keep_by_nms) + + return mask_data + + def refine_with_m2m(self, points, point_labels, low_res_masks, points_per_batch): + new_masks = [] + new_iou_preds = [] + + for cur_points, cur_point_labels, low_res_mask in batch_iterator( + points_per_batch, points, point_labels, low_res_masks + ): + best_masks, best_iou_preds, _ = self.predictor._predict( + cur_points[:, None, :], + cur_point_labels[:, None], + mask_input=low_res_mask[:, None, :], + multimask_output=False, + return_logits=True, + ) + new_masks.append(best_masks) + new_iou_preds.append(best_iou_preds) + masks = torch.cat(new_masks, dim=0) + return masks, torch.cat(new_iou_preds, dim=0) diff --git a/py/sam2/modeling/__init__.py b/py/sam2/modeling/__init__.py new file mode 100644 index 00000000..5277f461 --- /dev/null +++ b/py/sam2/modeling/__init__.py @@ -0,0 +1,5 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. diff --git a/py/sam2/modeling/backbones/__init__.py b/py/sam2/modeling/backbones/__init__.py new file mode 100644 index 00000000..5277f461 --- /dev/null +++ b/py/sam2/modeling/backbones/__init__.py @@ -0,0 +1,5 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. diff --git a/py/sam2/modeling/backbones/hieradet.py b/py/sam2/modeling/backbones/hieradet.py new file mode 100644 index 00000000..601817c9 --- /dev/null +++ b/py/sam2/modeling/backbones/hieradet.py @@ -0,0 +1,295 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +from functools import partial +from typing import List, Tuple, Union + +import torch +import torch.nn as nn +import torch.nn.functional as F + +from ....sam2.modeling.backbones.utils import ( + PatchEmbed, + window_partition, + window_unpartition, +) + +from ....sam2.modeling.sam2_utils import DropPath, MLP + + +def do_pool(x: torch.Tensor, pool: nn.Module, norm: nn.Module = None) -> torch.Tensor: + if pool is None: + return x + # (B, H, W, C) -> (B, C, H, W) + x = x.permute(0, 3, 1, 2) + x = pool(x) + # (B, C, H', W') -> (B, H', W', C) + x = x.permute(0, 2, 3, 1) + if norm: + x = norm(x) + + return x + + +class MultiScaleAttention(nn.Module): + def __init__( + self, + dim: int, + dim_out: int, + num_heads: int, + q_pool: nn.Module = None, + ): + super().__init__() + + self.dim = dim + self.dim_out = dim_out + + self.num_heads = num_heads + head_dim = dim_out // num_heads + self.scale = head_dim**-0.5 + + self.q_pool = q_pool + self.qkv = nn.Linear(dim, dim_out * 3) + self.proj = nn.Linear(dim_out, dim_out) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + B, H, W, _ = x.shape + # qkv with shape (B, H * W, 3, nHead, C) + qkv = self.qkv(x).reshape(B, H * W, 3, self.num_heads, -1) + # q, k, v with shape (B, H * W, nheads, C) + q, k, v = torch.unbind(qkv, 2) + + # Q pooling (for downsample at stage changes) + if self.q_pool: + q = do_pool(q.reshape(B, H, W, -1), self.q_pool) + H, W = q.shape[1:3] # downsampled shape + q = q.reshape(B, H * W, self.num_heads, -1) + + # Torch's SDPA expects [B, nheads, H*W, C] so we transpose + x = F.scaled_dot_product_attention( + q.transpose(1, 2), + k.transpose(1, 2), + v.transpose(1, 2), + ) + # Transpose back + x = x.transpose(1, 2) + x = x.reshape(B, H, W, -1) + + x = self.proj(x) + + return x + + +class MultiScaleBlock(nn.Module): + def __init__( + self, + dim: int, + dim_out: int, + num_heads: int, + mlp_ratio: float = 4.0, + drop_path: float = 0.0, + norm_layer: Union[nn.Module, str] = "LayerNorm", + q_stride: Tuple[int, int] = None, + act_layer: nn.Module = nn.GELU, + window_size: int = 0, + ): + super().__init__() + + if isinstance(norm_layer, str): + norm_layer = partial(getattr(nn, norm_layer), eps=1e-6) + + self.dim = dim + self.dim_out = dim_out + self.norm1 = norm_layer(dim) + + self.window_size = window_size + + self.pool, self.q_stride = None, q_stride + if self.q_stride: + self.pool = nn.MaxPool2d( + kernel_size=q_stride, stride=q_stride, ceil_mode=False + ) + + self.attn = MultiScaleAttention( + dim, + dim_out, + num_heads=num_heads, + q_pool=self.pool, + ) + self.drop_path = DropPath(drop_path) if drop_path > 0.0 else nn.Identity() + + self.norm2 = norm_layer(dim_out) + self.mlp = MLP( + dim_out, + int(dim_out * mlp_ratio), + dim_out, + num_layers=2, + activation=act_layer, + ) + + if dim != dim_out: + self.proj = nn.Linear(dim, dim_out) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + shortcut = x # B, H, W, C + x = self.norm1(x) + + # Skip connection + if self.dim != self.dim_out: + shortcut = do_pool(self.proj(x), self.pool) + + # Window partition + window_size = self.window_size + if window_size > 0: + H, W = x.shape[1], x.shape[2] + x, pad_hw = window_partition(x, window_size) + + # Window Attention + Q Pooling (if stage change) + x = self.attn(x) + if self.q_stride: + # Shapes have changed due to Q pooling + window_size = self.window_size // self.q_stride[0] + H, W = shortcut.shape[1:3] + + pad_h = (window_size - H % window_size) % window_size + pad_w = (window_size - W % window_size) % window_size + pad_hw = (H + pad_h, W + pad_w) + + # Reverse window partition + if self.window_size > 0: + x = window_unpartition(x, window_size, pad_hw, (H, W)) + + x = shortcut + self.drop_path(x) + # MLP + x = x + self.drop_path(self.mlp(self.norm2(x))) + return x + + +class Hiera(nn.Module): + """ + Reference: https://arxiv.org/abs/2306.00989 + """ + + def __init__( + self, + embed_dim: int = 96, # initial embed dim + num_heads: int = 1, # initial number of heads + drop_path_rate: float = 0.0, # stochastic depth + q_pool: int = 3, # number of q_pool stages + q_stride: Tuple[int, int] = (2, 2), # downsample stride bet. stages + stages: Tuple[int, ...] = (2, 3, 16, 3), # blocks per stage + dim_mul: float = 2.0, # dim_mul factor at stage shift + head_mul: float = 2.0, # head_mul factor at stage shift + window_pos_embed_bkg_spatial_size: Tuple[int, int] = (14, 14), + # window size per stage, when not using global att. + window_spec: Tuple[int, ...] = ( + 8, + 4, + 14, + 7, + ), + # global attn in these blocks + global_att_blocks: Tuple[int, ...] = ( + 12, + 16, + 20, + ), + return_interm_layers=True, # return feats from every stage + ): + super().__init__() + + assert len(stages) == len(window_spec) + self.window_spec = window_spec + + depth = sum(stages) + self.q_stride = q_stride + self.stage_ends = [sum(stages[:i]) - 1 for i in range(1, len(stages) + 1)] + assert 0 <= q_pool <= len(self.stage_ends[:-1]) + self.q_pool_blocks = [x + 1 for x in self.stage_ends[:-1]][:q_pool] + self.return_interm_layers = return_interm_layers + + self.patch_embed = PatchEmbed( + embed_dim=embed_dim, + ) + # Which blocks have global att? + self.global_att_blocks = global_att_blocks + + # Windowed positional embedding (https://arxiv.org/abs/2311.05613) + self.window_pos_embed_bkg_spatial_size = window_pos_embed_bkg_spatial_size + self.pos_embed = nn.Parameter( + torch.zeros(1, embed_dim, *self.window_pos_embed_bkg_spatial_size) + ) + self.pos_embed_window = nn.Parameter( + torch.zeros(1, embed_dim, self.window_spec[0], self.window_spec[0]) + ) + + dpr = [ + x.item() for x in torch.linspace(0, drop_path_rate, depth) + ] # stochastic depth decay rule + + cur_stage = 1 + self.blocks = nn.ModuleList() + + for i in range(depth): + dim_out = embed_dim + # lags by a block, so first block of + # next stage uses an initial window size + # of previous stage and final window size of current stage + window_size = self.window_spec[cur_stage - 1] + + if self.global_att_blocks is not None: + window_size = 0 if i in self.global_att_blocks else window_size + + if i - 1 in self.stage_ends: + dim_out = int(embed_dim * dim_mul) + num_heads = int(num_heads * head_mul) + cur_stage += 1 + + block = MultiScaleBlock( + dim=embed_dim, + dim_out=dim_out, + num_heads=num_heads, + drop_path=dpr[i], + q_stride=self.q_stride if i in self.q_pool_blocks else None, + window_size=window_size, + ) + + embed_dim = dim_out + self.blocks.append(block) + + self.channel_list = ( + [self.blocks[i].dim_out for i in self.stage_ends[::-1]] + if return_interm_layers + else [self.blocks[-1].dim_out] + ) + + def _get_pos_embed(self, hw: Tuple[int, int]) -> torch.Tensor: + h, w = hw + window_embed = self.pos_embed_window + pos_embed = F.interpolate(self.pos_embed, size=(h, w), mode="bicubic") + pos_embed = pos_embed + window_embed.tile( + [x // y for x, y in zip(pos_embed.shape, window_embed.shape)] + ) + pos_embed = pos_embed.permute(0, 2, 3, 1) + return pos_embed + + def forward(self, x: torch.Tensor) -> List[torch.Tensor]: + x = self.patch_embed(x) + # x: (B, H, W, C) + + # Add pos embed + x = x + self._get_pos_embed(x.shape[1:3]) + + outputs = [] + for i, blk in enumerate(self.blocks): + x = blk(x) + if (i == self.stage_ends[-1]) or ( + i in self.stage_ends and self.return_interm_layers + ): + feats = x.permute(0, 3, 1, 2) + outputs.append(feats) + + return outputs diff --git a/py/sam2/modeling/backbones/image_encoder.py b/py/sam2/modeling/backbones/image_encoder.py new file mode 100644 index 00000000..5f92baf4 --- /dev/null +++ b/py/sam2/modeling/backbones/image_encoder.py @@ -0,0 +1,133 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +from typing import List, Optional + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +class ImageEncoder(nn.Module): + def __init__( + self, + trunk: nn.Module, + neck: nn.Module, + scalp: int = 0, + ): + super().__init__() + self.trunk = trunk + self.neck = neck + self.scalp = scalp + assert ( + self.trunk.channel_list == self.neck.backbone_channel_list + ), f"Channel dims of trunk and neck do not match. Trunk: {self.trunk.channel_list}, neck: {self.neck.backbone_channel_list}" + + def forward(self, sample: torch.Tensor): + # Forward through backbone + features, pos = self.neck(self.trunk(sample)) + if self.scalp > 0: + # Discard the lowest resolution features + features, pos = features[: -self.scalp], pos[: -self.scalp] + + src = features[-1] + output = { + "vision_features": src, + "vision_pos_enc": pos, + "backbone_fpn": features, + } + return output + + +class FpnNeck(nn.Module): + """ + A modified variant of Feature Pyramid Network (FPN) neck + (we remove output conv and also do bicubic interpolation similar to ViT + pos embed interpolation) + """ + + def __init__( + self, + position_encoding: nn.Module, + d_model: int, + backbone_channel_list: List[int], + kernel_size: int = 1, + stride: int = 1, + padding: int = 0, + fpn_interp_model: str = "bilinear", + fuse_type: str = "sum", + fpn_top_down_levels: Optional[List[int]] = None, + ): + """Initialize the neck + :param trunk: the backbone + :param position_encoding: the positional encoding to use + :param d_model: the dimension of the model + :param neck_norm: the normalization to use + """ + super().__init__() + self.position_encoding = position_encoding + self.convs = nn.ModuleList() + self.backbone_channel_list = backbone_channel_list + for dim in backbone_channel_list: + current = nn.Sequential() + current.add_module( + "conv", + nn.Conv2d( + in_channels=dim, + out_channels=d_model, + kernel_size=kernel_size, + stride=stride, + padding=padding, + ), + ) + + self.convs.append(current) + self.fpn_interp_model = fpn_interp_model + assert fuse_type in ["sum", "avg"] + self.fuse_type = fuse_type + + # levels to have top-down features in its outputs + # e.g. if fpn_top_down_levels is [2, 3], then only outputs of level 2 and 3 + # have top-down propagation, while outputs of level 0 and level 1 have only + # lateral features from the same backbone level. + if fpn_top_down_levels is None: + # default is to have top-down features on all levels + fpn_top_down_levels = range(len(self.convs)) + self.fpn_top_down_levels = list(fpn_top_down_levels) + + def forward(self, xs: List[torch.Tensor]): + + out = [None] * len(self.convs) + pos = [None] * len(self.convs) + assert len(xs) == len(self.convs) + # fpn forward pass + # see https://github.com/facebookresearch/detectron2/blob/main/detectron2/modeling/backbone/fpn.py + prev_features = None + # forward in top-down order (from low to high resolution) + n = len(self.convs) - 1 + for i in range(n, -1, -1): + x = xs[i] + lateral_features = self.convs[n - i](x) + if i in self.fpn_top_down_levels and prev_features is not None: + top_down_features = F.interpolate( + prev_features.to(dtype=torch.float32), + scale_factor=2.0, + mode=self.fpn_interp_model, + align_corners=( + None if self.fpn_interp_model == "nearest" else False + ), + antialias=False, + ) + prev_features = lateral_features + top_down_features + if self.fuse_type == "avg": + prev_features /= 2 + else: + prev_features = lateral_features + x_out = prev_features + out[i] = x_out + pos[i] = self.position_encoding(x_out).to(x_out.dtype) + + return out, pos diff --git a/py/sam2/modeling/backbones/utils.py b/py/sam2/modeling/backbones/utils.py new file mode 100644 index 00000000..32d55c75 --- /dev/null +++ b/py/sam2/modeling/backbones/utils.py @@ -0,0 +1,95 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +"""Some utilities for backbones, in particular for windowing""" + +from typing import Tuple + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +def window_partition(x, window_size): + """ + Partition into non-overlapping windows with padding if needed. + Args: + x (tensor): input tokens with [B, H, W, C]. + window_size (int): window size. + Returns: + windows: windows after partition with [B * num_windows, window_size, window_size, C]. + (Hp, Wp): padded height and width before partition + """ + B, H, W, C = x.shape + + pad_h = (window_size - H % window_size) % window_size + pad_w = (window_size - W % window_size) % window_size + if pad_h > 0 or pad_w > 0: + x = F.pad(x, (0, 0, 0, pad_w, 0, pad_h)) + Hp, Wp = H + pad_h, W + pad_w + + x = x.view(B, Hp // window_size, window_size, Wp // window_size, window_size, C) + windows = ( + x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C) + ) + return windows, (Hp, Wp) + + +def window_unpartition(windows, window_size, pad_hw, hw): + """ + Window unpartition into original sequences and removing padding. + Args: + x (tensor): input tokens with [B * num_windows, window_size, window_size, C]. + window_size (int): window size. + pad_hw (Tuple): padded height and width (Hp, Wp). + hw (Tuple): original height and width (H, W) before padding. + Returns: + x: unpartitioned sequences with [B, H, W, C]. + """ + Hp, Wp = pad_hw + H, W = hw + B = windows.shape[0] // (Hp * Wp // window_size // window_size) + x = windows.view( + B, Hp // window_size, Wp // window_size, window_size, window_size, -1 + ) + x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, Hp, Wp, -1) + + if Hp > H or Wp > W: + x = x[:, :H, :W, :].contiguous() + return x + + +class PatchEmbed(nn.Module): + """ + Image to Patch Embedding. + """ + + def __init__( + self, + kernel_size: Tuple[int, ...] = (7, 7), + stride: Tuple[int, ...] = (4, 4), + padding: Tuple[int, ...] = (3, 3), + in_chans: int = 3, + embed_dim: int = 768, + ): + """ + Args: + kernel_size (Tuple): kernel size of the projection layer. + stride (Tuple): stride of the projection layer. + padding (Tuple): padding size of the projection layer. + in_chans (int): Number of input image channels. + embed_dim (int): embed_dim (int): Patch embedding dimension. + """ + super().__init__() + self.proj = nn.Conv2d( + in_chans, embed_dim, kernel_size=kernel_size, stride=stride, padding=padding + ) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + x = self.proj(x) + # B C H W -> B H W C + x = x.permute(0, 2, 3, 1) + return x diff --git a/py/sam2/modeling/memory_attention.py b/py/sam2/modeling/memory_attention.py new file mode 100644 index 00000000..07788e5d --- /dev/null +++ b/py/sam2/modeling/memory_attention.py @@ -0,0 +1,169 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +from typing import Optional + +import torch +from torch import nn, Tensor + +from ...sam2.modeling.sam.transformer import RoPEAttention + +from ...sam2.modeling.sam2_utils import get_activation_fn, get_clones + + +class MemoryAttentionLayer(nn.Module): + + def __init__( + self, + activation: str, + cross_attention: nn.Module, + d_model: int, + dim_feedforward: int, + dropout: float, + pos_enc_at_attn: bool, + pos_enc_at_cross_attn_keys: bool, + pos_enc_at_cross_attn_queries: bool, + self_attention: nn.Module, + ): + super().__init__() + self.d_model = d_model + self.dim_feedforward = dim_feedforward + self.dropout_value = dropout + self.self_attn = self_attention + self.cross_attn_image = cross_attention + + # Implementation of Feedforward model + self.linear1 = nn.Linear(d_model, dim_feedforward) + self.dropout = nn.Dropout(dropout) + self.linear2 = nn.Linear(dim_feedforward, d_model) + + self.norm1 = nn.LayerNorm(d_model) + self.norm2 = nn.LayerNorm(d_model) + self.norm3 = nn.LayerNorm(d_model) + self.dropout1 = nn.Dropout(dropout) + self.dropout2 = nn.Dropout(dropout) + self.dropout3 = nn.Dropout(dropout) + + self.activation_str = activation + self.activation = get_activation_fn(activation) + + # Where to add pos enc + self.pos_enc_at_attn = pos_enc_at_attn + self.pos_enc_at_cross_attn_queries = pos_enc_at_cross_attn_queries + self.pos_enc_at_cross_attn_keys = pos_enc_at_cross_attn_keys + + def _forward_sa(self, tgt, query_pos): + # Self-Attention + tgt2 = self.norm1(tgt) + q = k = tgt2 + query_pos if self.pos_enc_at_attn else tgt2 + tgt2 = self.self_attn(q, k, v=tgt2) + tgt = tgt + self.dropout1(tgt2) + return tgt + + def _forward_ca(self, tgt, memory, query_pos, pos, num_k_exclude_rope=0): + kwds = {} + if num_k_exclude_rope > 0: + assert isinstance(self.cross_attn_image, RoPEAttention) + kwds = {"num_k_exclude_rope": num_k_exclude_rope} + + # Cross-Attention + tgt2 = self.norm2(tgt) + tgt2 = self.cross_attn_image( + q=tgt2 + query_pos if self.pos_enc_at_cross_attn_queries else tgt2, + k=memory + pos if self.pos_enc_at_cross_attn_keys else memory, + v=memory, + **kwds, + ) + tgt = tgt + self.dropout2(tgt2) + return tgt + + def forward( + self, + tgt, + memory, + pos: Optional[Tensor] = None, + query_pos: Optional[Tensor] = None, + num_k_exclude_rope: int = 0, + ) -> torch.Tensor: + + # Self-Attn, Cross-Attn + tgt = self._forward_sa(tgt, query_pos) + tgt = self._forward_ca(tgt, memory, query_pos, pos, num_k_exclude_rope) + # MLP + tgt2 = self.norm3(tgt) + tgt2 = self.linear2(self.dropout(self.activation(self.linear1(tgt2)))) + tgt = tgt + self.dropout3(tgt2) + return tgt + + +class MemoryAttention(nn.Module): + def __init__( + self, + d_model: int, + pos_enc_at_input: bool, + layer: nn.Module, + num_layers: int, + batch_first: bool = True, # Do layers expect batch first input? + ): + super().__init__() + self.d_model = d_model + self.layers = get_clones(layer, num_layers) + self.num_layers = num_layers + self.norm = nn.LayerNorm(d_model) + self.pos_enc_at_input = pos_enc_at_input + self.batch_first = batch_first + + def forward( + self, + curr: torch.Tensor, # self-attention inputs + memory: torch.Tensor, # cross-attention inputs + curr_pos: Optional[Tensor] = None, # pos_enc for self-attention inputs + memory_pos: Optional[Tensor] = None, # pos_enc for cross-attention inputs + num_obj_ptr_tokens: int = 0, # number of object pointer *tokens* + ): + if isinstance(curr, list): + assert isinstance(curr_pos, list) + assert len(curr) == len(curr_pos) == 1 + curr, curr_pos = ( + curr[0], + curr_pos[0], + ) + + assert ( + curr.shape[1] == memory.shape[1] + ), "Batch size must be the same for curr and memory" + + output = curr + if self.pos_enc_at_input and curr_pos is not None: + output = output + 0.1 * curr_pos + + if self.batch_first: + # Convert to batch first + output = output.transpose(0, 1) + curr_pos = curr_pos.transpose(0, 1) + memory = memory.transpose(0, 1) + memory_pos = memory_pos.transpose(0, 1) + + for layer in self.layers: + kwds = {} + if isinstance(layer.cross_attn_image, RoPEAttention): + kwds = {"num_k_exclude_rope": num_obj_ptr_tokens} + + output = layer( + tgt=output, + memory=memory, + pos=memory_pos, + query_pos=curr_pos, + **kwds, + ) + normed_output = self.norm(output) + + if self.batch_first: + # Convert back to seq first + normed_output = normed_output.transpose(0, 1) + curr_pos = curr_pos.transpose(0, 1) + + return normed_output diff --git a/py/sam2/modeling/memory_encoder.py b/py/sam2/modeling/memory_encoder.py new file mode 100644 index 00000000..1fbf1c8c --- /dev/null +++ b/py/sam2/modeling/memory_encoder.py @@ -0,0 +1,181 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import math +from typing import Tuple + +import torch +import torch.nn as nn +import torch.nn.functional as F + +from ...sam2.modeling.sam2_utils import DropPath, get_clones, LayerNorm2d + + +class MaskDownSampler(nn.Module): + """ + Progressively downsample a mask by total_stride, each time by stride. + Note that LayerNorm is applied per *token*, like in ViT. + + With each downsample (by a factor stride**2), channel capacity increases by the same factor. + In the end, we linearly project to embed_dim channels. + """ + + def __init__( + self, + embed_dim=256, + kernel_size=4, + stride=4, + padding=0, + total_stride=16, + activation=nn.GELU, + ): + super().__init__() + num_layers = int(math.log2(total_stride) // math.log2(stride)) + assert stride**num_layers == total_stride + self.encoder = nn.Sequential() + mask_in_chans, mask_out_chans = 1, 1 + for _ in range(num_layers): + mask_out_chans = mask_in_chans * (stride**2) + self.encoder.append( + nn.Conv2d( + mask_in_chans, + mask_out_chans, + kernel_size=kernel_size, + stride=stride, + padding=padding, + ) + ) + self.encoder.append(LayerNorm2d(mask_out_chans)) + self.encoder.append(activation()) + mask_in_chans = mask_out_chans + + self.encoder.append(nn.Conv2d(mask_out_chans, embed_dim, kernel_size=1)) + + def forward(self, x): + return self.encoder(x) + + +# Lightly adapted from ConvNext (https://github.com/facebookresearch/ConvNeXt) +class CXBlock(nn.Module): + r"""ConvNeXt Block. There are two equivalent implementations: + (1) DwConv -> LayerNorm (channels_first) -> 1x1 Conv -> GELU -> 1x1 Conv; all in (N, C, H, W) + (2) DwConv -> Permute to (N, H, W, C); LayerNorm (channels_last) -> Linear -> GELU -> Linear; Permute back + We use (2) as we find it slightly faster in PyTorch + + Args: + dim (int): Number of input channels. + drop_path (float): Stochastic depth rate. Default: 0.0 + layer_scale_init_value (float): Init value for Layer Scale. Default: 1e-6. + """ + + def __init__( + self, + dim, + kernel_size=7, + padding=3, + drop_path=0.0, + layer_scale_init_value=1e-6, + use_dwconv=True, + ): + super().__init__() + self.dwconv = nn.Conv2d( + dim, + dim, + kernel_size=kernel_size, + padding=padding, + groups=dim if use_dwconv else 1, + ) # depthwise conv + self.norm = LayerNorm2d(dim, eps=1e-6) + self.pwconv1 = nn.Linear( + dim, 4 * dim + ) # pointwise/1x1 convs, implemented with linear layers + self.act = nn.GELU() + self.pwconv2 = nn.Linear(4 * dim, dim) + self.gamma = ( + nn.Parameter(layer_scale_init_value * torch.ones((dim)), requires_grad=True) + if layer_scale_init_value > 0 + else None + ) + self.drop_path = DropPath(drop_path) if drop_path > 0.0 else nn.Identity() + + def forward(self, x): + input = x + x = self.dwconv(x) + x = self.norm(x) + x = x.permute(0, 2, 3, 1) # (N, C, H, W) -> (N, H, W, C) + x = self.pwconv1(x) + x = self.act(x) + x = self.pwconv2(x) + if self.gamma is not None: + x = self.gamma * x + x = x.permute(0, 3, 1, 2) # (N, H, W, C) -> (N, C, H, W) + + x = input + self.drop_path(x) + return x + + +class Fuser(nn.Module): + def __init__(self, layer, num_layers, dim=None, input_projection=False): + super().__init__() + self.proj = nn.Identity() + self.layers = get_clones(layer, num_layers) + + if input_projection: + assert dim is not None + self.proj = nn.Conv2d(dim, dim, kernel_size=1) + + def forward(self, x): + # normally x: (N, C, H, W) + x = self.proj(x) + for layer in self.layers: + x = layer(x) + return x + + +class MemoryEncoder(nn.Module): + def __init__( + self, + out_dim, + mask_downsampler, + fuser, + position_encoding, + in_dim=256, # in_dim of pix_feats + ): + super().__init__() + + self.mask_downsampler = mask_downsampler + + self.pix_feat_proj = nn.Conv2d(in_dim, in_dim, kernel_size=1) + self.fuser = fuser + self.position_encoding = position_encoding + self.out_proj = nn.Identity() + if out_dim != in_dim: + self.out_proj = nn.Conv2d(in_dim, out_dim, kernel_size=1) + + def forward( + self, + pix_feat: torch.Tensor, + masks: torch.Tensor, + skip_mask_sigmoid: bool = False, + ) -> Tuple[torch.Tensor, torch.Tensor]: + ## Process masks + # sigmoid, so that less domain shift from gt masks which are bool + if not skip_mask_sigmoid: + masks = F.sigmoid(masks) + masks = self.mask_downsampler(masks) + + ## Fuse pix_feats and downsampled masks + # in case the visual features are on CPU, cast them to CUDA + pix_feat = pix_feat.to(masks.device) + + x = self.pix_feat_proj(pix_feat) + x = x + masks + x = self.fuser(x) + x = self.out_proj(x) + + pos = self.position_encoding(x).to(x.dtype) + + return {"vision_features": x, "vision_pos_enc": [pos]} diff --git a/py/sam2/modeling/position_encoding.py b/py/sam2/modeling/position_encoding.py new file mode 100644 index 00000000..f4b57ae7 --- /dev/null +++ b/py/sam2/modeling/position_encoding.py @@ -0,0 +1,216 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import math +from typing import Any, Optional, Tuple + +import numpy as np + +import torch +from torch import nn + + +class PositionEmbeddingSine(nn.Module): + """ + This is a more standard version of the position embedding, very similar to the one + used by the Attention is all you need paper, generalized to work on images. + """ + + def __init__( + self, + num_pos_feats, + temperature: int = 10000, + normalize: bool = True, + scale: Optional[float] = None, + ): + super().__init__() + assert num_pos_feats % 2 == 0, "Expecting even model width" + self.num_pos_feats = num_pos_feats // 2 + self.temperature = temperature + self.normalize = normalize + if scale is not None and normalize is False: + raise ValueError("normalize should be True if scale is passed") + if scale is None: + scale = 2 * math.pi + self.scale = scale + + self.cache = {} + + def _encode_xy(self, x, y): + # The positions are expected to be normalized + assert len(x) == len(y) and x.ndim == y.ndim == 1 + x_embed = x * self.scale + y_embed = y * self.scale + + dim_t = torch.arange(self.num_pos_feats, dtype=torch.float32, device=x.device) + dim_t = self.temperature ** (2 * (dim_t // 2) / self.num_pos_feats) + + pos_x = x_embed[:, None] / dim_t + pos_y = y_embed[:, None] / dim_t + pos_x = torch.stack( + (pos_x[:, 0::2].sin(), pos_x[:, 1::2].cos()), dim=2 + ).flatten(1) + pos_y = torch.stack( + (pos_y[:, 0::2].sin(), pos_y[:, 1::2].cos()), dim=2 + ).flatten(1) + return pos_x, pos_y + + @torch.no_grad() + def encode_boxes(self, x, y, w, h): + pos_x, pos_y = self._encode_xy(x, y) + pos = torch.cat((pos_y, pos_x, h[:, None], w[:, None]), dim=1) + return pos + + encode = encode_boxes # Backwards compatibility + + @torch.no_grad() + def encode_points(self, x, y, labels): + (bx, nx), (by, ny), (bl, nl) = x.shape, y.shape, labels.shape + assert bx == by and nx == ny and bx == bl and nx == nl + pos_x, pos_y = self._encode_xy(x.flatten(), y.flatten()) + pos_x, pos_y = pos_x.reshape(bx, nx, -1), pos_y.reshape(by, ny, -1) + pos = torch.cat((pos_y, pos_x, labels[:, :, None]), dim=2) + return pos + + @torch.no_grad() + def forward(self, x: torch.Tensor): + cache_key = (x.shape[-2], x.shape[-1]) + if cache_key in self.cache: + return self.cache[cache_key][None].repeat(x.shape[0], 1, 1, 1) + y_embed = ( + torch.arange(1, x.shape[-2] + 1, dtype=torch.float32, device=x.device) + .view(1, -1, 1) + .repeat(x.shape[0], 1, x.shape[-1]) + ) + x_embed = ( + torch.arange(1, x.shape[-1] + 1, dtype=torch.float32, device=x.device) + .view(1, 1, -1) + .repeat(x.shape[0], x.shape[-2], 1) + ) + + if self.normalize: + eps = 1e-6 + y_embed = y_embed / (y_embed[:, -1:, :] + eps) * self.scale + x_embed = x_embed / (x_embed[:, :, -1:] + eps) * self.scale + + dim_t = torch.arange(self.num_pos_feats, dtype=torch.float32, device=x.device) + dim_t = self.temperature ** (2 * (dim_t // 2) / self.num_pos_feats) + + pos_x = x_embed[:, :, :, None] / dim_t + pos_y = y_embed[:, :, :, None] / dim_t + pos_x = torch.stack( + (pos_x[:, :, :, 0::2].sin(), pos_x[:, :, :, 1::2].cos()), dim=4 + ).flatten(3) + pos_y = torch.stack( + (pos_y[:, :, :, 0::2].sin(), pos_y[:, :, :, 1::2].cos()), dim=4 + ).flatten(3) + pos = torch.cat((pos_y, pos_x), dim=3).permute(0, 3, 1, 2) + self.cache[cache_key] = pos[0] + return pos + + +class PositionEmbeddingRandom(nn.Module): + """ + Positional encoding using random spatial frequencies. + """ + + def __init__(self, num_pos_feats: int = 64, scale: Optional[float] = None) -> None: + super().__init__() + if scale is None or scale <= 0.0: + scale = 1.0 + self.register_buffer( + "positional_encoding_gaussian_matrix", + scale * torch.randn((2, num_pos_feats)), + ) + + def _pe_encoding(self, coords: torch.Tensor) -> torch.Tensor: + """Positionally encode points that are normalized to [0,1].""" + # assuming coords are in [0, 1]^2 square and have d_1 x ... x d_n x 2 shape + coords = 2 * coords - 1 + coords = coords @ self.positional_encoding_gaussian_matrix + coords = 2 * np.pi * coords + # outputs d_1 x ... x d_n x C shape + return torch.cat([torch.sin(coords), torch.cos(coords)], dim=-1) + + def forward(self, size: Tuple[int, int]) -> torch.Tensor: + """Generate positional encoding for a grid of the specified size.""" + h, w = size + device: Any = self.positional_encoding_gaussian_matrix.device + grid = torch.ones((h, w), device=device, dtype=torch.float32) + y_embed = grid.cumsum(dim=0) - 0.5 + x_embed = grid.cumsum(dim=1) - 0.5 + y_embed = y_embed / h + x_embed = x_embed / w + + pe = self._pe_encoding(torch.stack([x_embed, y_embed], dim=-1)) + return pe.permute(2, 0, 1) # C x H x W + + def forward_with_coords( + self, coords_input: torch.Tensor, image_size: Tuple[int, int] + ) -> torch.Tensor: + """Positionally encode points that are not normalized to [0,1].""" + coords = coords_input.clone() + coords[:, :, 0] = coords[:, :, 0] / image_size[1] + coords[:, :, 1] = coords[:, :, 1] / image_size[0] + return self._pe_encoding(coords.to(torch.float)) # B x N x C + + +# Rotary Positional Encoding, adapted from: +# 1. https://github.com/meta-llama/codellama/blob/main/llama/model.py +# 2. https://github.com/naver-ai/rope-vit +# 3. https://github.com/lucidrains/rotary-embedding-torch + + +def init_t_xy(end_x: int, end_y: int): + t = torch.arange(end_x * end_y, dtype=torch.float32) + t_x = (t % end_x).float() + t_y = torch.div(t, end_x, rounding_mode="floor").float() + return t_x, t_y + + +def compute_axial_cis(dim: int, end_x: int, end_y: int, theta: float = 10000.0): + freqs_x = 1.0 / (theta ** (torch.arange(0, dim, 4)[: (dim // 4)].float() / dim)) + freqs_y = 1.0 / (theta ** (torch.arange(0, dim, 4)[: (dim // 4)].float() / dim)) + + t_x, t_y = init_t_xy(end_x, end_y) + freqs_x = torch.outer(t_x, freqs_x) + freqs_y = torch.outer(t_y, freqs_y) + freqs_cis_x = torch.polar(torch.ones_like(freqs_x), freqs_x) + freqs_cis_y = torch.polar(torch.ones_like(freqs_y), freqs_y) + return torch.cat([freqs_cis_x, freqs_cis_y], dim=-1) + + +def reshape_for_broadcast(freqs_cis: torch.Tensor, x: torch.Tensor): + ndim = x.ndim + assert 0 <= 1 < ndim + assert freqs_cis.shape == (x.shape[-2], x.shape[-1]) + shape = [d if i >= ndim - 2 else 1 for i, d in enumerate(x.shape)] + return freqs_cis.view(*shape) + + +def apply_rotary_enc( + xq: torch.Tensor, + xk: torch.Tensor, + freqs_cis: torch.Tensor, + repeat_freqs_k: bool = False, +): + xq_ = torch.view_as_complex(xq.float().reshape(*xq.shape[:-1], -1, 2)) + xk_ = ( + torch.view_as_complex(xk.float().reshape(*xk.shape[:-1], -1, 2)) + if xk.shape[-2] != 0 + else None + ) + freqs_cis = reshape_for_broadcast(freqs_cis, xq_) + xq_out = torch.view_as_real(xq_ * freqs_cis).flatten(3) + if xk_ is None: + # no keys to rotate, due to dropout + return xq_out.type_as(xq).to(xq.device), xk + # repeat freqs along seq_len dim to match k seq_len + if repeat_freqs_k: + r = xk_.shape[-2] // xq_.shape[-2] + freqs_cis = freqs_cis.repeat(*([1] * (freqs_cis.ndim - 2)), r, 1) + xk_out = torch.view_as_real(xk_ * freqs_cis).flatten(3) + return xq_out.type_as(xq).to(xq.device), xk_out.type_as(xk).to(xk.device) diff --git a/py/sam2/modeling/sam/__init__.py b/py/sam2/modeling/sam/__init__.py new file mode 100644 index 00000000..5277f461 --- /dev/null +++ b/py/sam2/modeling/sam/__init__.py @@ -0,0 +1,5 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. diff --git a/py/sam2/modeling/sam/mask_decoder.py b/py/sam2/modeling/sam/mask_decoder.py new file mode 100644 index 00000000..4238cdf6 --- /dev/null +++ b/py/sam2/modeling/sam/mask_decoder.py @@ -0,0 +1,295 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +from typing import List, Optional, Tuple, Type + +import torch +from torch import nn + +from ....sam2.modeling.sam2_utils import LayerNorm2d, MLP + + +class MaskDecoder(nn.Module): + def __init__( + self, + *, + transformer_dim: int, + transformer: nn.Module, + num_multimask_outputs: int = 3, + activation: Type[nn.Module] = nn.GELU, + iou_head_depth: int = 3, + iou_head_hidden_dim: int = 256, + use_high_res_features: bool = False, + iou_prediction_use_sigmoid=False, + dynamic_multimask_via_stability=False, + dynamic_multimask_stability_delta=0.05, + dynamic_multimask_stability_thresh=0.98, + pred_obj_scores: bool = False, + pred_obj_scores_mlp: bool = False, + use_multimask_token_for_obj_ptr: bool = False, + ) -> None: + """ + Predicts masks given an image and prompt embeddings, using a + transformer architecture. + + Arguments: + transformer_dim (int): the channel dimension of the transformer + transformer (nn.Module): the transformer used to predict masks + num_multimask_outputs (int): the number of masks to predict + when disambiguating masks + activation (nn.Module): the type of activation to use when + upscaling masks + iou_head_depth (int): the depth of the MLP used to predict + mask quality + iou_head_hidden_dim (int): the hidden dimension of the MLP + used to predict mask quality + """ + super().__init__() + self.transformer_dim = transformer_dim + self.transformer = transformer + + self.num_multimask_outputs = num_multimask_outputs + + self.iou_token = nn.Embedding(1, transformer_dim) + self.num_mask_tokens = num_multimask_outputs + 1 + self.mask_tokens = nn.Embedding(self.num_mask_tokens, transformer_dim) + + self.pred_obj_scores = pred_obj_scores + if self.pred_obj_scores: + self.obj_score_token = nn.Embedding(1, transformer_dim) + self.use_multimask_token_for_obj_ptr = use_multimask_token_for_obj_ptr + + self.output_upscaling = nn.Sequential( + nn.ConvTranspose2d( + transformer_dim, transformer_dim // 4, kernel_size=2, stride=2 + ), + LayerNorm2d(transformer_dim // 4), + activation(), + nn.ConvTranspose2d( + transformer_dim // 4, transformer_dim // 8, kernel_size=2, stride=2 + ), + activation(), + ) + self.use_high_res_features = use_high_res_features + if use_high_res_features: + self.conv_s0 = nn.Conv2d( + transformer_dim, transformer_dim // 8, kernel_size=1, stride=1 + ) + self.conv_s1 = nn.Conv2d( + transformer_dim, transformer_dim // 4, kernel_size=1, stride=1 + ) + + self.output_hypernetworks_mlps = nn.ModuleList( + [ + MLP(transformer_dim, transformer_dim, transformer_dim // 8, 3) + for i in range(self.num_mask_tokens) + ] + ) + + self.iou_prediction_head = MLP( + transformer_dim, + iou_head_hidden_dim, + self.num_mask_tokens, + iou_head_depth, + sigmoid_output=iou_prediction_use_sigmoid, + ) + if self.pred_obj_scores: + self.pred_obj_score_head = nn.Linear(transformer_dim, 1) + if pred_obj_scores_mlp: + self.pred_obj_score_head = MLP(transformer_dim, transformer_dim, 1, 3) + + # When outputting a single mask, optionally we can dynamically fall back to the best + # multimask output token if the single mask output token gives low stability scores. + self.dynamic_multimask_via_stability = dynamic_multimask_via_stability + self.dynamic_multimask_stability_delta = dynamic_multimask_stability_delta + self.dynamic_multimask_stability_thresh = dynamic_multimask_stability_thresh + + def forward( + self, + image_embeddings: torch.Tensor, + image_pe: torch.Tensor, + sparse_prompt_embeddings: torch.Tensor, + dense_prompt_embeddings: torch.Tensor, + multimask_output: bool, + repeat_image: bool, + high_res_features: Optional[List[torch.Tensor]] = None, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ + Predict masks given image and prompt embeddings. + + Arguments: + image_embeddings (torch.Tensor): the embeddings from the image encoder + image_pe (torch.Tensor): positional encoding with the shape of image_embeddings + sparse_prompt_embeddings (torch.Tensor): the embeddings of the points and boxes + dense_prompt_embeddings (torch.Tensor): the embeddings of the mask inputs + multimask_output (bool): Whether to return multiple masks or a single + mask. + + Returns: + torch.Tensor: batched predicted masks + torch.Tensor: batched predictions of mask quality + torch.Tensor: batched SAM token for mask output + """ + masks, iou_pred, mask_tokens_out, object_score_logits = self.predict_masks( + image_embeddings=image_embeddings, + image_pe=image_pe, + sparse_prompt_embeddings=sparse_prompt_embeddings, + dense_prompt_embeddings=dense_prompt_embeddings, + repeat_image=repeat_image, + high_res_features=high_res_features, + ) + + # Select the correct mask or masks for output + if multimask_output: + masks = masks[:, 1:, :, :] + iou_pred = iou_pred[:, 1:] + elif self.dynamic_multimask_via_stability and not self.training: + masks, iou_pred = self._dynamic_multimask_via_stability(masks, iou_pred) + else: + masks = masks[:, 0:1, :, :] + iou_pred = iou_pred[:, 0:1] + + if multimask_output and self.use_multimask_token_for_obj_ptr: + sam_tokens_out = mask_tokens_out[:, 1:] # [b, 3, c] shape + else: + # Take the mask output token. Here we *always* use the token for single mask output. + # At test time, even if we track after 1-click (and using multimask_output=True), + # we still take the single mask token here. The rationale is that we always track + # after multiple clicks during training, so the past tokens seen during training + # are always the single mask token (and we'll let it be the object-memory token). + sam_tokens_out = mask_tokens_out[:, 0:1] # [b, 1, c] shape + + # Prepare output + return masks, iou_pred, sam_tokens_out, object_score_logits + + def predict_masks( + self, + image_embeddings: torch.Tensor, + image_pe: torch.Tensor, + sparse_prompt_embeddings: torch.Tensor, + dense_prompt_embeddings: torch.Tensor, + repeat_image: bool, + high_res_features: Optional[List[torch.Tensor]] = None, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """Predicts masks. See 'forward' for more details.""" + # Concatenate output tokens + s = 0 + if self.pred_obj_scores: + output_tokens = torch.cat( + [ + self.obj_score_token.weight, + self.iou_token.weight, + self.mask_tokens.weight, + ], + dim=0, + ) + s = 1 + else: + output_tokens = torch.cat( + [self.iou_token.weight, self.mask_tokens.weight], dim=0 + ) + output_tokens = output_tokens.unsqueeze(0).expand( + sparse_prompt_embeddings.size(0), -1, -1 + ) + tokens = torch.cat((output_tokens, sparse_prompt_embeddings), dim=1) + + # Expand per-image data in batch direction to be per-mask + if repeat_image: + src = torch.repeat_interleave(image_embeddings, tokens.shape[0], dim=0) + else: + assert image_embeddings.shape[0] == tokens.shape[0] + src = image_embeddings + src = src + dense_prompt_embeddings + assert ( + image_pe.size(0) == 1 + ), "image_pe should have size 1 in batch dim (from `get_dense_pe()`)" + pos_src = torch.repeat_interleave(image_pe, tokens.shape[0], dim=0) + b, c, h, w = src.shape + + # Run the transformer + hs, src = self.transformer(src, pos_src, tokens) + iou_token_out = hs[:, s, :] + mask_tokens_out = hs[:, s + 1 : (s + 1 + self.num_mask_tokens), :] + + # Upscale mask embeddings and predict masks using the mask tokens + src = src.transpose(1, 2).view(b, c, h, w) + if not self.use_high_res_features: + upscaled_embedding = self.output_upscaling(src) + else: + dc1, ln1, act1, dc2, act2 = self.output_upscaling + feat_s0, feat_s1 = high_res_features + upscaled_embedding = act1(ln1(dc1(src) + feat_s1)) + upscaled_embedding = act2(dc2(upscaled_embedding) + feat_s0) + + hyper_in_list: List[torch.Tensor] = [] + for i in range(self.num_mask_tokens): + hyper_in_list.append( + self.output_hypernetworks_mlps[i](mask_tokens_out[:, i, :]) + ) + hyper_in = torch.stack(hyper_in_list, dim=1) + b, c, h, w = upscaled_embedding.shape + masks = (hyper_in @ upscaled_embedding.view(b, c, h * w)).view(b, -1, h, w) + + # Generate mask quality predictions + iou_pred = self.iou_prediction_head(iou_token_out) + if self.pred_obj_scores: + assert s == 1 + object_score_logits = self.pred_obj_score_head(hs[:, 0, :]) + else: + # Obj scores logits - default to 10.0, i.e. assuming the object is present, sigmoid(10)=1 + object_score_logits = 10.0 * iou_pred.new_ones(iou_pred.shape[0], 1) + + return masks, iou_pred, mask_tokens_out, object_score_logits + + def _get_stability_scores(self, mask_logits): + """ + Compute stability scores of the mask logits based on the IoU between upper and + lower thresholds, similar to https://github.com/fairinternal/onevision/pull/568. + """ + mask_logits = mask_logits.flatten(-2) + stability_delta = self.dynamic_multimask_stability_delta + area_i = torch.sum(mask_logits > stability_delta, dim=-1).float() + area_u = torch.sum(mask_logits > -stability_delta, dim=-1).float() + stability_scores = torch.where(area_u > 0, area_i / area_u, 1.0) + return stability_scores + + def _dynamic_multimask_via_stability(self, all_mask_logits, all_iou_scores): + """ + When outputting a single mask, if the stability score from the current single-mask + output (based on output token 0) falls below a threshold, we instead select from + multi-mask outputs (based on output token 1~3) the mask with the highest predicted + IoU score. This is intended to ensure a valid mask for both clicking and tracking. + """ + # The best mask from multimask output tokens (1~3) + multimask_logits = all_mask_logits[:, 1:, :, :] + multimask_iou_scores = all_iou_scores[:, 1:] + best_scores_inds = torch.argmax(multimask_iou_scores, dim=-1) + batch_inds = torch.arange( + multimask_iou_scores.size(0), device=all_iou_scores.device + ) + best_multimask_logits = multimask_logits[batch_inds, best_scores_inds] + best_multimask_logits = best_multimask_logits.unsqueeze(1) + best_multimask_iou_scores = multimask_iou_scores[batch_inds, best_scores_inds] + best_multimask_iou_scores = best_multimask_iou_scores.unsqueeze(1) + + # The mask from singlemask output token 0 and its stability score + singlemask_logits = all_mask_logits[:, 0:1, :, :] + singlemask_iou_scores = all_iou_scores[:, 0:1] + stability_scores = self._get_stability_scores(singlemask_logits) + is_stable = stability_scores >= self.dynamic_multimask_stability_thresh + + # Dynamically fall back to best multimask output upon low stability scores. + mask_logits_out = torch.where( + is_stable[..., None, None].expand_as(singlemask_logits), + singlemask_logits, + best_multimask_logits, + ) + iou_scores_out = torch.where( + is_stable.expand_as(singlemask_iou_scores), + singlemask_iou_scores, + best_multimask_iou_scores, + ) + return mask_logits_out, iou_scores_out diff --git a/py/sam2/modeling/sam/prompt_encoder.py b/py/sam2/modeling/sam/prompt_encoder.py new file mode 100644 index 00000000..fe125c72 --- /dev/null +++ b/py/sam2/modeling/sam/prompt_encoder.py @@ -0,0 +1,182 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +from typing import Optional, Tuple, Type + +import torch +from torch import nn + +from ....sam2.modeling.position_encoding import PositionEmbeddingRandom + +from ....sam2.modeling.sam2_utils import LayerNorm2d + + +class PromptEncoder(nn.Module): + def __init__( + self, + embed_dim: int, + image_embedding_size: Tuple[int, int], + input_image_size: Tuple[int, int], + mask_in_chans: int, + activation: Type[nn.Module] = nn.GELU, + ) -> None: + """ + Encodes prompts for input to SAM's mask decoder. + + Arguments: + embed_dim (int): The prompts' embedding dimension + image_embedding_size (tuple(int, int)): The spatial size of the + image embedding, as (H, W). + input_image_size (int): The padded size of the image as input + to the image encoder, as (H, W). + mask_in_chans (int): The number of hidden channels used for + encoding input masks. + activation (nn.Module): The activation to use when encoding + input masks. + """ + super().__init__() + self.embed_dim = embed_dim + self.input_image_size = input_image_size + self.image_embedding_size = image_embedding_size + self.pe_layer = PositionEmbeddingRandom(embed_dim // 2) + + self.num_point_embeddings: int = 4 # pos/neg point + 2 box corners + point_embeddings = [ + nn.Embedding(1, embed_dim) for i in range(self.num_point_embeddings) + ] + self.point_embeddings = nn.ModuleList(point_embeddings) + self.not_a_point_embed = nn.Embedding(1, embed_dim) + + self.mask_input_size = ( + 4 * image_embedding_size[0], + 4 * image_embedding_size[1], + ) + self.mask_downscaling = nn.Sequential( + nn.Conv2d(1, mask_in_chans // 4, kernel_size=2, stride=2), + LayerNorm2d(mask_in_chans // 4), + activation(), + nn.Conv2d(mask_in_chans // 4, mask_in_chans, kernel_size=2, stride=2), + LayerNorm2d(mask_in_chans), + activation(), + nn.Conv2d(mask_in_chans, embed_dim, kernel_size=1), + ) + self.no_mask_embed = nn.Embedding(1, embed_dim) + + def get_dense_pe(self) -> torch.Tensor: + """ + Returns the positional encoding used to encode point prompts, + applied to a dense set of points the shape of the image encoding. + + Returns: + torch.Tensor: Positional encoding with shape + 1x(embed_dim)x(embedding_h)x(embedding_w) + """ + return self.pe_layer(self.image_embedding_size).unsqueeze(0) + + def _embed_points( + self, + points: torch.Tensor, + labels: torch.Tensor, + pad: bool, + ) -> torch.Tensor: + """Embeds point prompts.""" + points = points + 0.5 # Shift to center of pixel + if pad: + padding_point = torch.zeros((points.shape[0], 1, 2), device=points.device) + padding_label = -torch.ones((labels.shape[0], 1), device=labels.device) + points = torch.cat([points, padding_point], dim=1) + labels = torch.cat([labels, padding_label], dim=1) + point_embedding = self.pe_layer.forward_with_coords( + points, self.input_image_size + ) + point_embedding[labels == -1] = 0.0 + point_embedding[labels == -1] += self.not_a_point_embed.weight + point_embedding[labels == 0] += self.point_embeddings[0].weight + point_embedding[labels == 1] += self.point_embeddings[1].weight + point_embedding[labels == 2] += self.point_embeddings[2].weight + point_embedding[labels == 3] += self.point_embeddings[3].weight + return point_embedding + + def _embed_boxes(self, boxes: torch.Tensor) -> torch.Tensor: + """Embeds box prompts.""" + boxes = boxes + 0.5 # Shift to center of pixel + coords = boxes.reshape(-1, 2, 2) + corner_embedding = self.pe_layer.forward_with_coords( + coords, self.input_image_size + ) + corner_embedding[:, 0, :] += self.point_embeddings[2].weight + corner_embedding[:, 1, :] += self.point_embeddings[3].weight + return corner_embedding + + def _embed_masks(self, masks: torch.Tensor) -> torch.Tensor: + """Embeds mask inputs.""" + mask_embedding = self.mask_downscaling(masks) + return mask_embedding + + def _get_batch_size( + self, + points: Optional[Tuple[torch.Tensor, torch.Tensor]], + boxes: Optional[torch.Tensor], + masks: Optional[torch.Tensor], + ) -> int: + """ + Gets the batch size of the output given the batch size of the input prompts. + """ + if points is not None: + return points[0].shape[0] + elif boxes is not None: + return boxes.shape[0] + elif masks is not None: + return masks.shape[0] + else: + return 1 + + def _get_device(self) -> torch.device: + return self.point_embeddings[0].weight.device + + def forward( + self, + points: Optional[Tuple[torch.Tensor, torch.Tensor]], + boxes: Optional[torch.Tensor], + masks: Optional[torch.Tensor], + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ + Embeds different types of prompts, returning both sparse and dense + embeddings. + + Arguments: + points (tuple(torch.Tensor, torch.Tensor) or none): point coordinates + and labels to embed. + boxes (torch.Tensor or none): boxes to embed + masks (torch.Tensor or none): masks to embed + + Returns: + torch.Tensor: sparse embeddings for the points and boxes, with shape + BxNx(embed_dim), where N is determined by the number of input points + and boxes. + torch.Tensor: dense embeddings for the masks, in the shape + Bx(embed_dim)x(embed_H)x(embed_W) + """ + bs = self._get_batch_size(points, boxes, masks) + sparse_embeddings = torch.empty( + (bs, 0, self.embed_dim), device=self._get_device() + ) + if points is not None: + coords, labels = points + point_embeddings = self._embed_points(coords, labels, pad=(boxes is None)) + sparse_embeddings = torch.cat([sparse_embeddings, point_embeddings], dim=1) + if boxes is not None: + box_embeddings = self._embed_boxes(boxes) + sparse_embeddings = torch.cat([sparse_embeddings, box_embeddings], dim=1) + + if masks is not None: + dense_embeddings = self._embed_masks(masks) + else: + dense_embeddings = self.no_mask_embed.weight.reshape(1, -1, 1, 1).expand( + bs, -1, self.image_embedding_size[0], self.image_embedding_size[1] + ) + + return sparse_embeddings, dense_embeddings diff --git a/py/sam2/modeling/sam/transformer.py b/py/sam2/modeling/sam/transformer.py new file mode 100644 index 00000000..fb71606b --- /dev/null +++ b/py/sam2/modeling/sam/transformer.py @@ -0,0 +1,347 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import math +import warnings +from functools import partial +from typing import Tuple, Type + +import torch +import torch.nn.functional as F +from torch import nn, Tensor + +from ....sam2.modeling.position_encoding import apply_rotary_enc, compute_axial_cis +from ....sam2.modeling.sam2_utils import MLP + +from ....sam2.utils.misc import get_sdpa_settings +OLD_GPU, USE_FLASH_ATTN, MATH_KERNEL_ON = get_sdpa_settings() + +try: + from torch.nn.attention import SDPBackend, sdpa_kernel + backends = [] + if USE_FLASH_ATTN: + backends.append(SDPBackend.FLASH_ATTENTION) + if MATH_KERNEL_ON: + backends.append(SDPBackend.MATH) + if OLD_GPU: + backends.append(SDPBackend.EFFICIENT_ATTENTION) + OLD_TORCH = False +except: + OLD_TORCH = True + +warnings.simplefilter(action="ignore", category=FutureWarning) + +class TwoWayTransformer(nn.Module): + def __init__( + self, + depth: int, + embedding_dim: int, + num_heads: int, + mlp_dim: int, + activation: Type[nn.Module] = nn.ReLU, + attention_downsample_rate: int = 2, + ) -> None: + """ + A transformer decoder that attends to an input image using + queries whose positional embedding is supplied. + + Args: + depth (int): number of layers in the transformer + embedding_dim (int): the channel dimension for the input embeddings + num_heads (int): the number of heads for multihead attention. Must + divide embedding_dim + mlp_dim (int): the channel dimension internal to the MLP block + activation (nn.Module): the activation to use in the MLP block + """ + super().__init__() + self.depth = depth + self.embedding_dim = embedding_dim + self.num_heads = num_heads + self.mlp_dim = mlp_dim + self.layers = nn.ModuleList() + + for i in range(depth): + self.layers.append( + TwoWayAttentionBlock( + embedding_dim=embedding_dim, + num_heads=num_heads, + mlp_dim=mlp_dim, + activation=activation, + attention_downsample_rate=attention_downsample_rate, + skip_first_layer_pe=(i == 0), + ) + ) + + self.final_attn_token_to_image = Attention( + embedding_dim, num_heads, downsample_rate=attention_downsample_rate + ) + self.norm_final_attn = nn.LayerNorm(embedding_dim) + + def forward( + self, + image_embedding: Tensor, + image_pe: Tensor, + point_embedding: Tensor, + ) -> Tuple[Tensor, Tensor]: + """ + Args: + image_embedding (torch.Tensor): image to attend to. Should be shape + B x embedding_dim x h x w for any h and w. + image_pe (torch.Tensor): the positional encoding to add to the image. Must + have the same shape as image_embedding. + point_embedding (torch.Tensor): the embedding to add to the query points. + Must have shape B x N_points x embedding_dim for any N_points. + + Returns: + torch.Tensor: the processed point_embedding + torch.Tensor: the processed image_embedding + """ + # BxCxHxW -> BxHWxC == B x N_image_tokens x C + bs, c, h, w = image_embedding.shape + image_embedding = image_embedding.flatten(2).permute(0, 2, 1) + image_pe = image_pe.flatten(2).permute(0, 2, 1) + + # Prepare queries + queries = point_embedding + keys = image_embedding + + # Apply transformer blocks and final layernorm + for layer in self.layers: + queries, keys = layer( + queries=queries, + keys=keys, + query_pe=point_embedding, + key_pe=image_pe, + ) + + # Apply the final attention layer from the points to the image + q = queries + point_embedding + k = keys + image_pe + attn_out = self.final_attn_token_to_image(q=q, k=k, v=keys) + queries = queries + attn_out + queries = self.norm_final_attn(queries) + + return queries, keys + + +class TwoWayAttentionBlock(nn.Module): + def __init__( + self, + embedding_dim: int, + num_heads: int, + mlp_dim: int = 2048, + activation: Type[nn.Module] = nn.ReLU, + attention_downsample_rate: int = 2, + skip_first_layer_pe: bool = False, + ) -> None: + """ + A transformer block with four layers: (1) self-attention of sparse + inputs, (2) cross attention of sparse inputs to dense inputs, (3) mlp + block on sparse inputs, and (4) cross attention of dense inputs to sparse + inputs. + + Arguments: + embedding_dim (int): the channel dimension of the embeddings + num_heads (int): the number of heads in the attention layers + mlp_dim (int): the hidden dimension of the mlp block + activation (nn.Module): the activation of the mlp block + skip_first_layer_pe (bool): skip the PE on the first layer + """ + super().__init__() + self.self_attn = Attention(embedding_dim, num_heads) + self.norm1 = nn.LayerNorm(embedding_dim) + + self.cross_attn_token_to_image = Attention( + embedding_dim, num_heads, downsample_rate=attention_downsample_rate + ) + self.norm2 = nn.LayerNorm(embedding_dim) + + self.mlp = MLP( + embedding_dim, mlp_dim, embedding_dim, num_layers=2, activation=activation + ) + self.norm3 = nn.LayerNorm(embedding_dim) + + self.norm4 = nn.LayerNorm(embedding_dim) + self.cross_attn_image_to_token = Attention( + embedding_dim, num_heads, downsample_rate=attention_downsample_rate + ) + + self.skip_first_layer_pe = skip_first_layer_pe + + def forward( + self, queries: Tensor, keys: Tensor, query_pe: Tensor, key_pe: Tensor + ) -> Tuple[Tensor, Tensor]: + # Self attention block + if self.skip_first_layer_pe: + queries = self.self_attn(q=queries, k=queries, v=queries) + else: + q = queries + query_pe + attn_out = self.self_attn(q=q, k=q, v=queries) + queries = queries + attn_out + queries = self.norm1(queries) + + # Cross attention block, tokens attending to image embedding + q = queries + query_pe + k = keys + key_pe + attn_out = self.cross_attn_token_to_image(q=q, k=k, v=keys) + queries = queries + attn_out + queries = self.norm2(queries) + + # MLP block + mlp_out = self.mlp(queries) + queries = queries + mlp_out + queries = self.norm3(queries) + + # Cross attention block, image embedding attending to tokens + q = queries + query_pe + k = keys + key_pe + attn_out = self.cross_attn_image_to_token(q=k, k=q, v=queries) + keys = keys + attn_out + keys = self.norm4(keys) + + return queries, keys + + +class Attention(nn.Module): + """ + An attention layer that allows for downscaling the size of the embedding + after projection to queries, keys, and values. + """ + + def __init__( + self, + embedding_dim: int, + num_heads: int, + downsample_rate: int = 1, + dropout: float = 0.0, + kv_in_dim: int = None, + ) -> None: + super().__init__() + self.embedding_dim = embedding_dim + self.kv_in_dim = kv_in_dim if kv_in_dim is not None else embedding_dim + self.internal_dim = embedding_dim // downsample_rate + self.num_heads = num_heads + assert ( + self.internal_dim % num_heads == 0 + ), "num_heads must divide embedding_dim." + + self.q_proj = nn.Linear(embedding_dim, self.internal_dim) + self.k_proj = nn.Linear(self.kv_in_dim, self.internal_dim) + self.v_proj = nn.Linear(self.kv_in_dim, self.internal_dim) + self.out_proj = nn.Linear(self.internal_dim, embedding_dim) + + self.dropout_p = dropout + + def _separate_heads(self, x: Tensor, num_heads: int) -> Tensor: + b, n, c = x.shape + x = x.reshape(b, n, num_heads, c // num_heads) + return x.transpose(1, 2) # B x N_heads x N_tokens x C_per_head + + def _recombine_heads(self, x: Tensor) -> Tensor: + b, n_heads, n_tokens, c_per_head = x.shape + x = x.transpose(1, 2) + return x.reshape(b, n_tokens, n_heads * c_per_head) # B x N_tokens x C + + def forward(self, q: Tensor, k: Tensor, v: Tensor) -> Tensor: + # Input projections + q = self.q_proj(q) + k = self.k_proj(k) + v = self.v_proj(v) + + # Separate into heads + q = self._separate_heads(q, self.num_heads) + k = self._separate_heads(k, self.num_heads) + v = self._separate_heads(v, self.num_heads) + + dropout_p = self.dropout_p if self.training else 0.0 + # Attention + if not OLD_TORCH: + if not MATH_KERNEL_ON and OLD_GPU and dropout_p > 0.0: + backends.append(SDPBackend.MATH) + with sdpa_kernel(backends): + out = F.scaled_dot_product_attention(q, k, v, dropout_p=dropout_p) + else: + with torch.backends.cuda.sdp_kernel( + enable_flash=USE_FLASH_ATTN, + enable_math=(OLD_GPU and dropout_p > 0.0) or MATH_KERNEL_ON, + enable_mem_efficient=OLD_GPU, + ): + out = F.scaled_dot_product_attention(q, k, v, dropout_p=dropout_p) + out = self._recombine_heads(out) + out = self.out_proj(out) + + return out + + +class RoPEAttention(Attention): + """Attention with rotary position encoding.""" + + def __init__( + self, + *args, + rope_theta=10000.0, + # whether to repeat q rope to match k length + # this is needed for cross-attention to memories + rope_k_repeat=False, + feat_sizes=(32, 32), # [w, h] for stride 16 feats at 512 resolution + **kwargs, + ): + super().__init__(*args, **kwargs) + + self.compute_cis = partial( + compute_axial_cis, dim=self.internal_dim // self.num_heads, theta=rope_theta + ) + freqs_cis = self.compute_cis(end_x=feat_sizes[0], end_y=feat_sizes[1]) + self.freqs_cis = freqs_cis + self.rope_k_repeat = rope_k_repeat + + def forward( + self, q: Tensor, k: Tensor, v: Tensor, num_k_exclude_rope: int = 0 + ) -> Tensor: + # Input projections + q = self.q_proj(q) + k = self.k_proj(k) + v = self.v_proj(v) + + # Separate into heads + q = self._separate_heads(q, self.num_heads) + k = self._separate_heads(k, self.num_heads) + v = self._separate_heads(v, self.num_heads) + + # Apply rotary position encoding + w = h = math.sqrt(q.shape[-2]) + self.freqs_cis = self.freqs_cis.to(q.device) + if self.freqs_cis.shape[0] != q.shape[-2]: + self.freqs_cis = self.compute_cis(end_x=w, end_y=h).to(q.device) + if q.shape[-2] != k.shape[-2]: + assert self.rope_k_repeat + + num_k_rope = k.size(-2) - num_k_exclude_rope + q, k[:, :, :num_k_rope] = apply_rotary_enc( + q, + k[:, :, :num_k_rope], + freqs_cis=self.freqs_cis, + repeat_freqs_k=self.rope_k_repeat, + ) + + dropout_p = self.dropout_p if self.training else 0.0 + # Attention + if not OLD_TORCH: + if not MATH_KERNEL_ON and OLD_GPU and dropout_p > 0.0: + backends.append(SDPBackend.MATH) + with sdpa_kernel(backends): + out = F.scaled_dot_product_attention(q, k, v, dropout_p=dropout_p) + else: + with torch.backends.cuda.sdp_kernel( + enable_flash=USE_FLASH_ATTN, + enable_math=(OLD_GPU and dropout_p > 0.0) or MATH_KERNEL_ON, + enable_mem_efficient=OLD_GPU, + ): + out = F.scaled_dot_product_attention(q, k, v, dropout_p=dropout_p) + out = self._recombine_heads(out) + out = self.out_proj(out) + + return out diff --git a/py/sam2/modeling/sam2_base.py b/py/sam2/modeling/sam2_base.py new file mode 100644 index 00000000..a18a0a7b --- /dev/null +++ b/py/sam2/modeling/sam2_base.py @@ -0,0 +1,829 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import torch +import torch.distributed +import torch.nn.functional as F + +from torch.nn.init import trunc_normal_ + +from ...sam2.modeling.sam.mask_decoder import MaskDecoder +from ...sam2.modeling.sam.prompt_encoder import PromptEncoder +from ...sam2.modeling.sam.transformer import TwoWayTransformer +from ...sam2.modeling.sam2_utils import get_1d_sine_pe, MLP, select_closest_cond_frames + +# a large negative value as a placeholder score for missing objects +NO_OBJ_SCORE = -1024.0 + + +class SAM2Base(torch.nn.Module): + def __init__( + self, + image_encoder, + memory_attention, + memory_encoder, + num_maskmem=7, # default 1 input frame + 6 previous frames + image_size=512, + backbone_stride=16, # stride of the image backbone output + sigmoid_scale_for_mem_enc=1.0, # scale factor for mask sigmoid prob + sigmoid_bias_for_mem_enc=0.0, # bias factor for mask sigmoid prob + # During evaluation, whether to binarize the sigmoid mask logits on interacted frames with clicks + binarize_mask_from_pts_for_mem_enc=False, + use_mask_input_as_output_without_sam=False, # on frames with mask input, whether to directly output the input mask without using a SAM prompt encoder + mask decoder + # The maximum number of conditioning frames to participate in the memory attention (-1 means no limit; if there are more conditioning frames than this limit, + # we only cross-attend to the temporally closest `max_cond_frames_in_attn` conditioning frames in the encoder when tracking each frame). This gives the model + # a temporal locality when handling a large number of annotated frames (since closer frames should be more important) and also avoids GPU OOM. + max_cond_frames_in_attn=-1, + # on the first frame, whether to directly add the no-memory embedding to the image feature + # (instead of using the transformer encoder) + directly_add_no_mem_embed=False, + # whether to use high-resolution feature maps in the SAM mask decoder + use_high_res_features_in_sam=False, + # whether to output multiple (3) masks for the first click on initial conditioning frames + multimask_output_in_sam=False, + # the minimum and maximum number of clicks to use multimask_output_in_sam (only relevant when `multimask_output_in_sam=True`; + # default is 1 for both, meaning that only the first click gives multimask output; also note that a box counts as two points) + multimask_min_pt_num=1, + multimask_max_pt_num=1, + # whether to also use multimask output for tracking (not just for the first click on initial conditioning frames; only relevant when `multimask_output_in_sam=True`) + multimask_output_for_tracking=False, + # Whether to use multimask tokens for obj ptr; Only relevant when both + # use_obj_ptrs_in_encoder=True and multimask_output_for_tracking=True + use_multimask_token_for_obj_ptr: bool = False, + # whether to use sigmoid to restrict ious prediction to [0-1] + iou_prediction_use_sigmoid=False, + # The memory bank's temporal stride during evaluation (i.e. the `r` parameter in XMem and Cutie; XMem and Cutie use r=5). + # For r>1, the (self.num_maskmem - 1) non-conditioning memory frames consist of + # (self.num_maskmem - 2) nearest frames from every r-th frames, plus the last frame. + memory_temporal_stride_for_eval=1, + # if `add_all_frames_to_correct_as_cond` is True, we also append to the conditioning frame list any frame that receives a later correction click + # if `add_all_frames_to_correct_as_cond` is False, we conditioning frame list to only use those initial conditioning frames + add_all_frames_to_correct_as_cond=False, + # whether to apply non-overlapping constraints on the object masks in the memory encoder during evaluation (to avoid/alleviate superposing masks) + non_overlap_masks_for_mem_enc=False, + # whether to cross-attend to object pointers from other frames (based on SAM output tokens) in the encoder + use_obj_ptrs_in_encoder=False, + # the maximum number of object pointers from other frames in encoder cross attention (only relevant when `use_obj_ptrs_in_encoder=True`) + max_obj_ptrs_in_encoder=16, + # whether to add temporal positional encoding to the object pointers in the encoder (only relevant when `use_obj_ptrs_in_encoder=True`) + add_tpos_enc_to_obj_ptrs=True, + # whether to add an extra linear projection layer for the temporal positional encoding in the object pointers to avoid potential interference + # with spatial positional encoding (only relevant when both `use_obj_ptrs_in_encoder=True` and `add_tpos_enc_to_obj_ptrs=True`) + proj_tpos_enc_in_obj_ptrs=False, + # whether to only attend to object pointers in the past (before the current frame) in the encoder during evaluation + # (only relevant when `use_obj_ptrs_in_encoder=True`; this might avoid pointer information too far in the future to distract the initial tracking) + only_obj_ptrs_in_the_past_for_eval=False, + # Whether to predict if there is an object in the frame + pred_obj_scores: bool = False, + # Whether to use an MLP to predict object scores + pred_obj_scores_mlp: bool = False, + # Only relevant if pred_obj_scores=True and use_obj_ptrs_in_encoder=True; + # Whether to have a fixed no obj pointer when there is no object present + # or to use it as an additive embedding with obj_ptr produced by decoder + fixed_no_obj_ptr: bool = False, + # Soft no object, i.e. mix in no_obj_ptr softly, + # hope to make recovery easier if there is a mistake and mitigate accumulation of errors + soft_no_obj_ptr: bool = False, + use_mlp_for_obj_ptr_proj: bool = False, + # extra arguments used to construct the SAM mask decoder; if not None, it should be a dict of kwargs to be passed into `MaskDecoder` class. + sam_mask_decoder_extra_args=None, + compile_image_encoder: bool = False, + ): + super().__init__() + + # Part 1: the image backbone + self.image_encoder = image_encoder + # Use level 0, 1, 2 for high-res setting, or just level 2 for the default setting + self.use_high_res_features_in_sam = use_high_res_features_in_sam + self.num_feature_levels = 3 if use_high_res_features_in_sam else 1 + self.use_obj_ptrs_in_encoder = use_obj_ptrs_in_encoder + self.max_obj_ptrs_in_encoder = max_obj_ptrs_in_encoder + if use_obj_ptrs_in_encoder: + # A conv layer to downsample the mask prompt to stride 4 (the same stride as + # low-res SAM mask logits) and to change its scales from 0~1 to SAM logit scale, + # so that it can be fed into the SAM mask decoder to generate a pointer. + self.mask_downsample = torch.nn.Conv2d(1, 1, kernel_size=4, stride=4) + self.add_tpos_enc_to_obj_ptrs = add_tpos_enc_to_obj_ptrs + if proj_tpos_enc_in_obj_ptrs: + assert add_tpos_enc_to_obj_ptrs # these options need to be used together + self.proj_tpos_enc_in_obj_ptrs = proj_tpos_enc_in_obj_ptrs + self.only_obj_ptrs_in_the_past_for_eval = only_obj_ptrs_in_the_past_for_eval + + # Part 2: memory attention to condition current frame's visual features + # with memories (and obj ptrs) from past frames + self.memory_attention = memory_attention + self.hidden_dim = memory_attention.d_model + + # Part 3: memory encoder for the previous frame's outputs + self.memory_encoder = memory_encoder + self.mem_dim = self.hidden_dim + if hasattr(self.memory_encoder, "out_proj") and hasattr( + self.memory_encoder.out_proj, "weight" + ): + # if there is compression of memories along channel dim + self.mem_dim = self.memory_encoder.out_proj.weight.shape[0] + self.num_maskmem = num_maskmem # Number of memories accessible + # Temporal encoding of the memories + self.maskmem_tpos_enc = torch.nn.Parameter( + torch.zeros(num_maskmem, 1, 1, self.mem_dim) + ) + trunc_normal_(self.maskmem_tpos_enc, std=0.02) + # a single token to indicate no memory embedding from previous frames + self.no_mem_embed = torch.nn.Parameter(torch.zeros(1, 1, self.hidden_dim)) + self.no_mem_pos_enc = torch.nn.Parameter(torch.zeros(1, 1, self.hidden_dim)) + trunc_normal_(self.no_mem_embed, std=0.02) + trunc_normal_(self.no_mem_pos_enc, std=0.02) + self.directly_add_no_mem_embed = directly_add_no_mem_embed + # Apply sigmoid to the output raw mask logits (to turn them from + # range (-inf, +inf) to range (0, 1)) before feeding them into the memory encoder + self.sigmoid_scale_for_mem_enc = sigmoid_scale_for_mem_enc + self.sigmoid_bias_for_mem_enc = sigmoid_bias_for_mem_enc + self.binarize_mask_from_pts_for_mem_enc = binarize_mask_from_pts_for_mem_enc + self.non_overlap_masks_for_mem_enc = non_overlap_masks_for_mem_enc + self.memory_temporal_stride_for_eval = memory_temporal_stride_for_eval + # On frames with mask input, whether to directly output the input mask without + # using a SAM prompt encoder + mask decoder + self.use_mask_input_as_output_without_sam = use_mask_input_as_output_without_sam + self.multimask_output_in_sam = multimask_output_in_sam + self.multimask_min_pt_num = multimask_min_pt_num + self.multimask_max_pt_num = multimask_max_pt_num + self.multimask_output_for_tracking = multimask_output_for_tracking + self.use_multimask_token_for_obj_ptr = use_multimask_token_for_obj_ptr + self.iou_prediction_use_sigmoid = iou_prediction_use_sigmoid + + # Part 4: SAM-style prompt encoder (for both mask and point inputs) + # and SAM-style mask decoder for the final mask output + self.image_size = image_size + self.backbone_stride = backbone_stride + self.sam_mask_decoder_extra_args = sam_mask_decoder_extra_args + self.pred_obj_scores = pred_obj_scores + self.pred_obj_scores_mlp = pred_obj_scores_mlp + self.fixed_no_obj_ptr = fixed_no_obj_ptr + self.soft_no_obj_ptr = soft_no_obj_ptr + if self.fixed_no_obj_ptr: + assert self.pred_obj_scores + assert self.use_obj_ptrs_in_encoder + if self.pred_obj_scores and self.use_obj_ptrs_in_encoder: + self.no_obj_ptr = torch.nn.Parameter(torch.zeros(1, self.hidden_dim)) + trunc_normal_(self.no_obj_ptr, std=0.02) + self.use_mlp_for_obj_ptr_proj = use_mlp_for_obj_ptr_proj + + self._build_sam_heads() + self.add_all_frames_to_correct_as_cond = add_all_frames_to_correct_as_cond + self.max_cond_frames_in_attn = max_cond_frames_in_attn + + # Model compilation + if compile_image_encoder: + # Compile the forward function (not the full module) to allow loading checkpoints. + print( + "Image encoder compilation is enabled. First forward pass will be slow." + ) + self.image_encoder.forward = torch.compile( + self.image_encoder.forward, + mode="max-autotune", + fullgraph=True, + dynamic=False, + ) + + @property + def device(self): + return next(self.parameters()).device + + def forward(self, *args, **kwargs): + raise NotImplementedError( + "Please use the corresponding methods in SAM2VideoPredictor for inference." + "See notebooks/video_predictor_example.ipynb for an example." + ) + + def _build_sam_heads(self): + """Build SAM-style prompt encoder and mask decoder.""" + self.sam_prompt_embed_dim = self.hidden_dim + self.sam_image_embedding_size = self.image_size // self.backbone_stride + + # build PromptEncoder and MaskDecoder from SAM + # (their hyperparameters like `mask_in_chans=16` are from SAM code) + self.sam_prompt_encoder = PromptEncoder( + embed_dim=self.sam_prompt_embed_dim, + image_embedding_size=( + self.sam_image_embedding_size, + self.sam_image_embedding_size, + ), + input_image_size=(self.image_size, self.image_size), + mask_in_chans=16, + ) + self.sam_mask_decoder = MaskDecoder( + num_multimask_outputs=3, + transformer=TwoWayTransformer( + depth=2, + embedding_dim=self.sam_prompt_embed_dim, + mlp_dim=2048, + num_heads=8, + ), + transformer_dim=self.sam_prompt_embed_dim, + iou_head_depth=3, + iou_head_hidden_dim=256, + use_high_res_features=self.use_high_res_features_in_sam, + iou_prediction_use_sigmoid=self.iou_prediction_use_sigmoid, + pred_obj_scores=self.pred_obj_scores, + pred_obj_scores_mlp=self.pred_obj_scores_mlp, + use_multimask_token_for_obj_ptr=self.use_multimask_token_for_obj_ptr, + **(self.sam_mask_decoder_extra_args or {}), + ) + if self.use_obj_ptrs_in_encoder: + # a linear projection on SAM output tokens to turn them into object pointers + self.obj_ptr_proj = torch.nn.Linear(self.hidden_dim, self.hidden_dim) + if self.use_mlp_for_obj_ptr_proj: + self.obj_ptr_proj = MLP( + self.hidden_dim, self.hidden_dim, self.hidden_dim, 3 + ) + else: + self.obj_ptr_proj = torch.nn.Identity() + if self.proj_tpos_enc_in_obj_ptrs: + # a linear projection on temporal positional encoding in object pointers to + # avoid potential interference with spatial positional encoding + self.obj_ptr_tpos_proj = torch.nn.Linear(self.hidden_dim, self.mem_dim) + else: + self.obj_ptr_tpos_proj = torch.nn.Identity() + + def _forward_sam_heads( + self, + backbone_features, + point_inputs=None, + mask_inputs=None, + high_res_features=None, + multimask_output=False, + ): + """ + Forward SAM prompt encoders and mask heads. + + Inputs: + - backbone_features: image features of [B, C, H, W] shape + - point_inputs: a dictionary with "point_coords" and "point_labels", where + 1) "point_coords" has [B, P, 2] shape and float32 dtype and contains the + absolute pixel-unit coordinate in (x, y) format of the P input points + 2) "point_labels" has shape [B, P] and int32 dtype, where 1 means + positive clicks, 0 means negative clicks, and -1 means padding + - mask_inputs: a mask of [B, 1, H*16, W*16] shape, float or bool, with the + same spatial size as the image. + - high_res_features: either 1) None or 2) or a list of length 2 containing + two feature maps of [B, C, 4*H, 4*W] and [B, C, 2*H, 2*W] shapes respectively, + which will be used as high-resolution feature maps for SAM decoder. + - multimask_output: if it's True, we output 3 candidate masks and their 3 + corresponding IoU estimates, and if it's False, we output only 1 mask and + its corresponding IoU estimate. + + Outputs: + - low_res_multimasks: [B, M, H*4, W*4] shape (where M = 3 if + `multimask_output=True` and M = 1 if `multimask_output=False`), the SAM + output mask logits (before sigmoid) for the low-resolution masks, with 4x + the resolution (1/4 stride) of the input backbone_features. + - high_res_multimasks: [B, M, H*16, W*16] shape (where M = 3 + if `multimask_output=True` and M = 1 if `multimask_output=False`), + upsampled from the low-resolution masks, with shape size as the image + (stride is 1 pixel). + - ious, [B, M] shape, where (where M = 3 if `multimask_output=True` and M = 1 + if `multimask_output=False`), the estimated IoU of each output mask. + - low_res_masks: [B, 1, H*4, W*4] shape, the best mask in `low_res_multimasks`. + If `multimask_output=True`, it's the mask with the highest IoU estimate. + If `multimask_output=False`, it's the same as `low_res_multimasks`. + - high_res_masks: [B, 1, H*16, W*16] shape, the best mask in `high_res_multimasks`. + If `multimask_output=True`, it's the mask with the highest IoU estimate. + If `multimask_output=False`, it's the same as `high_res_multimasks`. + - obj_ptr: [B, C] shape, the object pointer vector for the output mask, extracted + based on the output token from the SAM mask decoder. + """ + B = backbone_features.size(0) + device = backbone_features.device + assert backbone_features.size(1) == self.sam_prompt_embed_dim + assert backbone_features.size(2) == self.sam_image_embedding_size + assert backbone_features.size(3) == self.sam_image_embedding_size + + # a) Handle point prompts + if point_inputs is not None: + sam_point_coords = point_inputs["point_coords"] + sam_point_labels = point_inputs["point_labels"] + assert sam_point_coords.size(0) == B and sam_point_labels.size(0) == B + else: + # If no points are provide, pad with an empty point (with label -1) + sam_point_coords = torch.zeros(B, 1, 2, device=device) + sam_point_labels = -torch.ones(B, 1, dtype=torch.int32, device=device) + + # b) Handle mask prompts + if mask_inputs is not None: + # If mask_inputs is provided, downsize it into low-res mask input if needed + # and feed it as a dense mask prompt into the SAM mask encoder + assert len(mask_inputs.shape) == 4 and mask_inputs.shape[:2] == (B, 1) + if mask_inputs.shape[-2:] != self.sam_prompt_encoder.mask_input_size: + sam_mask_prompt = F.interpolate( + mask_inputs.float(), + size=self.sam_prompt_encoder.mask_input_size, + align_corners=False, + mode="bilinear", + antialias=True, # use antialias for downsampling + ) + else: + sam_mask_prompt = mask_inputs + else: + # Otherwise, simply feed None (and SAM's prompt encoder will add + # a learned `no_mask_embed` to indicate no mask input in this case). + sam_mask_prompt = None + + sparse_embeddings, dense_embeddings = self.sam_prompt_encoder( + points=(sam_point_coords, sam_point_labels), + boxes=None, + masks=sam_mask_prompt, + ) + ( + low_res_multimasks, + ious, + sam_output_tokens, + object_score_logits, + ) = self.sam_mask_decoder( + image_embeddings=backbone_features, + image_pe=self.sam_prompt_encoder.get_dense_pe(), + sparse_prompt_embeddings=sparse_embeddings, + dense_prompt_embeddings=dense_embeddings, + multimask_output=multimask_output, + repeat_image=False, # the image is already batched + high_res_features=high_res_features, + ) + if self.pred_obj_scores: + is_obj_appearing = object_score_logits > 0 + + # Mask used for spatial memories is always a *hard* choice between obj and no obj, + # consistent with the actual mask prediction + low_res_multimasks = torch.where( + is_obj_appearing[:, None, None], + low_res_multimasks, + NO_OBJ_SCORE, + ) + + # convert masks from possibly bfloat16 (or float16) to float32 + # (older PyTorch versions before 2.1 don't support `interpolate` on bf16) + low_res_multimasks = low_res_multimasks.float() + high_res_multimasks = F.interpolate( + low_res_multimasks, + size=(self.image_size, self.image_size), + mode="bilinear", + align_corners=False, + ) + + sam_output_token = sam_output_tokens[:, 0] + if multimask_output: + # take the best mask prediction (with the highest IoU estimation) + best_iou_inds = torch.argmax(ious, dim=-1) + batch_inds = torch.arange(B, device=device) + low_res_masks = low_res_multimasks[batch_inds, best_iou_inds].unsqueeze(1) + high_res_masks = high_res_multimasks[batch_inds, best_iou_inds].unsqueeze(1) + if sam_output_tokens.size(1) > 1: + sam_output_token = sam_output_tokens[batch_inds, best_iou_inds] + else: + low_res_masks, high_res_masks = low_res_multimasks, high_res_multimasks + + # Extract object pointer from the SAM output token (with occlusion handling) + obj_ptr = self.obj_ptr_proj(sam_output_token) + if self.pred_obj_scores: + # Allow *soft* no obj ptr, unlike for masks + if self.soft_no_obj_ptr: + # Only hard possible with gt + assert not self.teacher_force_obj_scores_for_mem + lambda_is_obj_appearing = object_score_logits.sigmoid() + else: + lambda_is_obj_appearing = is_obj_appearing.float() + + if self.fixed_no_obj_ptr: + obj_ptr = lambda_is_obj_appearing * obj_ptr + obj_ptr = obj_ptr + (1 - lambda_is_obj_appearing) * self.no_obj_ptr + + return ( + low_res_multimasks, + high_res_multimasks, + ious, + low_res_masks, + high_res_masks, + obj_ptr, + object_score_logits, + ) + + def _use_mask_as_output(self, backbone_features, high_res_features, mask_inputs): + """ + Directly turn binary `mask_inputs` into a output mask logits without using SAM. + (same input and output shapes as in _forward_sam_heads above). + """ + # Use -10/+10 as logits for neg/pos pixels (very close to 0/1 in prob after sigmoid). + out_scale, out_bias = 20.0, -10.0 # sigmoid(-10.0)=4.5398e-05 + mask_inputs_float = mask_inputs.float() + high_res_masks = mask_inputs_float * out_scale + out_bias + low_res_masks = F.interpolate( + high_res_masks, + size=(high_res_masks.size(-2) // 4, high_res_masks.size(-1) // 4), + align_corners=False, + mode="bilinear", + antialias=True, # use antialias for downsampling + ) + # a dummy IoU prediction of all 1's under mask input + ious = mask_inputs.new_ones(mask_inputs.size(0), 1).float() + if not self.use_obj_ptrs_in_encoder: + # all zeros as a dummy object pointer (of shape [B, C]) + obj_ptr = torch.zeros( + mask_inputs.size(0), self.hidden_dim, device=mask_inputs.device + ) + else: + # produce an object pointer using the SAM decoder from the mask input + _, _, _, _, _, obj_ptr, _ = self._forward_sam_heads( + backbone_features=backbone_features, + mask_inputs=self.mask_downsample(mask_inputs_float), + high_res_features=high_res_features, + ) + # In this method, we are treating mask_input as output, e.g. using it directly to create spatial mem; + # Below, we follow the same design axiom to use mask_input to decide if obj appears or not instead of relying + # on the object_scores from the SAM decoder. + is_obj_appearing = torch.any(mask_inputs.flatten(1).float() > 0.0, dim=1) + is_obj_appearing = is_obj_appearing[..., None] + lambda_is_obj_appearing = is_obj_appearing.float() + object_score_logits = out_scale * lambda_is_obj_appearing + out_bias + if self.pred_obj_scores: + if self.fixed_no_obj_ptr: + obj_ptr = lambda_is_obj_appearing * obj_ptr + obj_ptr = obj_ptr + (1 - lambda_is_obj_appearing) * self.no_obj_ptr + + return ( + low_res_masks, + high_res_masks, + ious, + low_res_masks, + high_res_masks, + obj_ptr, + object_score_logits, + ) + + def forward_image(self, img_batch: torch.Tensor): + """Get the image feature on the input batch.""" + backbone_out = self.image_encoder(img_batch) + if self.use_high_res_features_in_sam: + # precompute projected level 0 and level 1 features in SAM decoder + # to avoid running it again on every SAM click + backbone_out["backbone_fpn"][0] = self.sam_mask_decoder.conv_s0( + backbone_out["backbone_fpn"][0] + ) + backbone_out["backbone_fpn"][1] = self.sam_mask_decoder.conv_s1( + backbone_out["backbone_fpn"][1] + ) + return backbone_out + + def _prepare_backbone_features(self, backbone_out): + """Prepare and flatten visual features.""" + backbone_out = backbone_out.copy() + assert len(backbone_out["backbone_fpn"]) == len(backbone_out["vision_pos_enc"]) + assert len(backbone_out["backbone_fpn"]) >= self.num_feature_levels + + feature_maps = backbone_out["backbone_fpn"][-self.num_feature_levels :] + vision_pos_embeds = backbone_out["vision_pos_enc"][-self.num_feature_levels :] + + feat_sizes = [(x.shape[-2], x.shape[-1]) for x in vision_pos_embeds] + # flatten NxCxHxW to HWxNxC + vision_feats = [x.flatten(2).permute(2, 0, 1) for x in feature_maps] + vision_pos_embeds = [x.flatten(2).permute(2, 0, 1) for x in vision_pos_embeds] + + return backbone_out, vision_feats, vision_pos_embeds, feat_sizes + + def _prepare_memory_conditioned_features( + self, + frame_idx, + is_init_cond_frame, + current_vision_feats, + current_vision_pos_embeds, + feat_sizes, + output_dict, + num_frames, + track_in_reverse=False, # tracking in reverse time order (for demo usage) + ): + """Fuse the current frame's visual feature map with previous memory.""" + B = current_vision_feats[-1].size(1) # batch size on this frame + C = self.hidden_dim + H, W = feat_sizes[-1] # top-level (lowest-resolution) feature size + device = current_vision_feats[-1].device + # The case of `self.num_maskmem == 0` below is primarily used for reproducing SAM on images. + # In this case, we skip the fusion with any memory. + if self.num_maskmem == 0: # Disable memory and skip fusion + pix_feat = current_vision_feats[-1].permute(1, 2, 0).view(B, C, H, W) + return pix_feat + + num_obj_ptr_tokens = 0 + # Step 1: condition the visual features of the current frame on previous memories + if not is_init_cond_frame: + # Retrieve the memories encoded with the maskmem backbone + to_cat_memory, to_cat_memory_pos_embed = [], [] + # Add conditioning frames's output first (all cond frames have t_pos=0 for + # when getting temporal positional embedding below) + assert len(output_dict["cond_frame_outputs"]) > 0 + # Select a maximum number of temporally closest cond frames for cross attention + cond_outputs = output_dict["cond_frame_outputs"] + selected_cond_outputs, unselected_cond_outputs = select_closest_cond_frames( + frame_idx, cond_outputs, self.max_cond_frames_in_attn + ) + t_pos_and_prevs = [(0, out) for out in selected_cond_outputs.values()] + # Add last (self.num_maskmem - 1) frames before current frame for non-conditioning memory + # the earliest one has t_pos=1 and the latest one has t_pos=self.num_maskmem-1 + # We also allow taking the memory frame non-consecutively (with r>1), in which case + # we take (self.num_maskmem - 2) frames among every r-th frames plus the last frame. + r = self.memory_temporal_stride_for_eval + for t_pos in range(1, self.num_maskmem): + t_rel = self.num_maskmem - t_pos # how many frames before current frame + if t_rel == 1: + # for t_rel == 1, we take the last frame (regardless of r) + if not track_in_reverse: + # the frame immediately before this frame (i.e. frame_idx - 1) + prev_frame_idx = frame_idx - t_rel + else: + # the frame immediately after this frame (i.e. frame_idx + 1) + prev_frame_idx = frame_idx + t_rel + else: + # for t_rel >= 2, we take the memory frame from every r-th frames + if not track_in_reverse: + # first find the nearest frame among every r-th frames before this frame + # for r=1, this would be (frame_idx - 2) + prev_frame_idx = ((frame_idx - 2) // r) * r + # then seek further among every r-th frames + prev_frame_idx = prev_frame_idx - (t_rel - 2) * r + else: + # first find the nearest frame among every r-th frames after this frame + # for r=1, this would be (frame_idx + 2) + prev_frame_idx = -(-(frame_idx + 2) // r) * r + # then seek further among every r-th frames + prev_frame_idx = prev_frame_idx + (t_rel - 2) * r + out = output_dict["non_cond_frame_outputs"].get(prev_frame_idx, None) + if out is None: + # If an unselected conditioning frame is among the last (self.num_maskmem - 1) + # frames, we still attend to it as if it's a non-conditioning frame. + out = unselected_cond_outputs.get(prev_frame_idx, None) + t_pos_and_prevs.append((t_pos, out)) + + for t_pos, prev in t_pos_and_prevs: + if prev is None: + continue # skip padding frames + # "maskmem_features" might have been offloaded to CPU in demo use cases, + # so we load it back to GPU (it's a no-op if it's already on GPU). + feats = prev["maskmem_features"].to(device, non_blocking=True) + to_cat_memory.append(feats.flatten(2).permute(2, 0, 1)) + # Spatial positional encoding (it might have been offloaded to CPU in eval) + maskmem_enc = prev["maskmem_pos_enc"][-1].to(device) + maskmem_enc = maskmem_enc.flatten(2).permute(2, 0, 1) + # Temporal positional encoding + maskmem_enc = ( + maskmem_enc + self.maskmem_tpos_enc[self.num_maskmem - t_pos - 1] + ) + to_cat_memory_pos_embed.append(maskmem_enc) + + # Construct the list of past object pointers + if self.use_obj_ptrs_in_encoder: + max_obj_ptrs_in_encoder = min(num_frames, self.max_obj_ptrs_in_encoder) + # First add those object pointers from selected conditioning frames + # (optionally, only include object pointers in the past during evaluation) + if not self.training and self.only_obj_ptrs_in_the_past_for_eval: + ptr_cond_outputs = { + t: out + for t, out in selected_cond_outputs.items() + if (t >= frame_idx if track_in_reverse else t <= frame_idx) + } + else: + ptr_cond_outputs = selected_cond_outputs + pos_and_ptrs = [ + # Temporal pos encoding contains how far away each pointer is from current frame + (abs(frame_idx - t), out["obj_ptr"]) + for t, out in ptr_cond_outputs.items() + ] + # Add up to (max_obj_ptrs_in_encoder - 1) non-conditioning frames before current frame + for t_diff in range(1, max_obj_ptrs_in_encoder): + t = frame_idx + t_diff if track_in_reverse else frame_idx - t_diff + if t < 0 or (num_frames is not None and t >= num_frames): + break + out = output_dict["non_cond_frame_outputs"].get( + t, unselected_cond_outputs.get(t, None) + ) + if out is not None: + pos_and_ptrs.append((t_diff, out["obj_ptr"])) + # If we have at least one object pointer, add them to the across attention + if len(pos_and_ptrs) > 0: + pos_list, ptrs_list = zip(*pos_and_ptrs) + # stack object pointers along dim=0 into [ptr_seq_len, B, C] shape + obj_ptrs = torch.stack(ptrs_list, dim=0) + # a temporal positional embedding based on how far each object pointer is from + # the current frame (sine embedding normalized by the max pointer num). + if self.add_tpos_enc_to_obj_ptrs: + t_diff_max = max_obj_ptrs_in_encoder - 1 + tpos_dim = C if self.proj_tpos_enc_in_obj_ptrs else self.mem_dim + obj_pos = torch.tensor(pos_list, device=device) + obj_pos = get_1d_sine_pe(obj_pos / t_diff_max, dim=tpos_dim) + obj_pos = self.obj_ptr_tpos_proj(obj_pos) + obj_pos = obj_pos.unsqueeze(1).expand(-1, B, self.mem_dim) + else: + obj_pos = obj_ptrs.new_zeros(len(pos_list), B, self.mem_dim) + if self.mem_dim < C: + # split a pointer into (C // self.mem_dim) tokens for self.mem_dim < C + obj_ptrs = obj_ptrs.reshape( + -1, B, C // self.mem_dim, self.mem_dim + ) + obj_ptrs = obj_ptrs.permute(0, 2, 1, 3).flatten(0, 1) + obj_pos = obj_pos.repeat_interleave(C // self.mem_dim, dim=0) + to_cat_memory.append(obj_ptrs) + to_cat_memory_pos_embed.append(obj_pos) + num_obj_ptr_tokens = obj_ptrs.shape[0] + else: + num_obj_ptr_tokens = 0 + else: + # for initial conditioning frames, encode them without using any previous memory + if self.directly_add_no_mem_embed: + # directly add no-mem embedding (instead of using the transformer encoder) + pix_feat_with_mem = current_vision_feats[-1] + self.no_mem_embed + pix_feat_with_mem = pix_feat_with_mem.permute(1, 2, 0).view(B, C, H, W) + return pix_feat_with_mem + + # Use a dummy token on the first frame (to avoid emtpy memory input to tranformer encoder) + to_cat_memory = [self.no_mem_embed.expand(1, B, self.mem_dim)] + to_cat_memory_pos_embed = [self.no_mem_pos_enc.expand(1, B, self.mem_dim)] + + # Step 2: Concatenate the memories and forward through the transformer encoder + memory = torch.cat(to_cat_memory, dim=0) + memory_pos_embed = torch.cat(to_cat_memory_pos_embed, dim=0) + + pix_feat_with_mem = self.memory_attention( + curr=current_vision_feats, + curr_pos=current_vision_pos_embeds, + memory=memory, + memory_pos=memory_pos_embed, + num_obj_ptr_tokens=num_obj_ptr_tokens, + ) + # reshape the output (HW)BC => BCHW + pix_feat_with_mem = pix_feat_with_mem.permute(1, 2, 0).view(B, C, H, W) + return pix_feat_with_mem + + def _encode_new_memory( + self, + current_vision_feats, + feat_sizes, + pred_masks_high_res, + is_mask_from_pts, + ): + """Encode the current image and its prediction into a memory feature.""" + B = current_vision_feats[-1].size(1) # batch size on this frame + C = self.hidden_dim + H, W = feat_sizes[-1] # top-level (lowest-resolution) feature size + # top-level feature, (HW)BC => BCHW + pix_feat = current_vision_feats[-1].permute(1, 2, 0).view(B, C, H, W) + if self.non_overlap_masks_for_mem_enc and not self.training: + # optionally, apply non-overlapping constraints to the masks (it's applied + # in the batch dimension and should only be used during eval, where all + # the objects come from the same video under batch size 1). + pred_masks_high_res = self._apply_non_overlapping_constraints( + pred_masks_high_res + ) + # scale the raw mask logits with a temperature before applying sigmoid + binarize = self.binarize_mask_from_pts_for_mem_enc and is_mask_from_pts + if binarize and not self.training: + mask_for_mem = (pred_masks_high_res > 0).float() + else: + # apply sigmoid on the raw mask logits to turn them into range (0, 1) + mask_for_mem = torch.sigmoid(pred_masks_high_res) + # apply scale and bias terms to the sigmoid probabilities + if self.sigmoid_scale_for_mem_enc != 1.0: + mask_for_mem = mask_for_mem * self.sigmoid_scale_for_mem_enc + if self.sigmoid_bias_for_mem_enc != 0.0: + mask_for_mem = mask_for_mem + self.sigmoid_bias_for_mem_enc + maskmem_out = self.memory_encoder( + pix_feat, mask_for_mem, skip_mask_sigmoid=True # sigmoid already applied + ) + maskmem_features = maskmem_out["vision_features"] + maskmem_pos_enc = maskmem_out["vision_pos_enc"] + + return maskmem_features, maskmem_pos_enc + + def track_step( + self, + frame_idx, + is_init_cond_frame, + current_vision_feats, + current_vision_pos_embeds, + feat_sizes, + point_inputs, + mask_inputs, + output_dict, + num_frames, + track_in_reverse=False, # tracking in reverse time order (for demo usage) + # Whether to run the memory encoder on the predicted masks. Sometimes we might want + # to skip the memory encoder with `run_mem_encoder=False`. For example, + # in demo we might call `track_step` multiple times for each user click, + # and only encode the memory when the user finalizes their clicks. And in ablation + # settings like SAM training on static images, we don't need the memory encoder. + run_mem_encoder=True, + # The previously predicted SAM mask logits (which can be fed together with new clicks in demo). + prev_sam_mask_logits=None, + ): + current_out = {"point_inputs": point_inputs, "mask_inputs": mask_inputs} + # High-resolution feature maps for the SAM head, reshape (HW)BC => BCHW + if len(current_vision_feats) > 1: + high_res_features = [ + x.permute(1, 2, 0).view(x.size(1), x.size(2), *s) + for x, s in zip(current_vision_feats[:-1], feat_sizes[:-1]) + ] + else: + high_res_features = None + if mask_inputs is not None and self.use_mask_input_as_output_without_sam: + # When use_mask_input_as_output_without_sam=True, we directly output the mask input + # (see it as a GT mask) without using a SAM prompt encoder + mask decoder. + pix_feat = current_vision_feats[-1].permute(1, 2, 0) + pix_feat = pix_feat.view(-1, self.hidden_dim, *feat_sizes[-1]) + sam_outputs = self._use_mask_as_output( + pix_feat, high_res_features, mask_inputs + ) + else: + # fused the visual feature with previous memory features in the memory bank + pix_feat_with_mem = self._prepare_memory_conditioned_features( + frame_idx=frame_idx, + is_init_cond_frame=is_init_cond_frame, + current_vision_feats=current_vision_feats[-1:], + current_vision_pos_embeds=current_vision_pos_embeds[-1:], + feat_sizes=feat_sizes[-1:], + output_dict=output_dict, + num_frames=num_frames, + track_in_reverse=track_in_reverse, + ) + # apply SAM-style segmentation head + # here we might feed previously predicted low-res SAM mask logits into the SAM mask decoder, + # e.g. in demo where such logits come from earlier interaction instead of correction sampling + # (in this case, any `mask_inputs` shouldn't reach here as they are sent to _use_mask_as_output instead) + if prev_sam_mask_logits is not None: + assert point_inputs is not None and mask_inputs is None + mask_inputs = prev_sam_mask_logits + multimask_output = self._use_multimask(is_init_cond_frame, point_inputs) + sam_outputs = self._forward_sam_heads( + backbone_features=pix_feat_with_mem, + point_inputs=point_inputs, + mask_inputs=mask_inputs, + high_res_features=high_res_features, + multimask_output=multimask_output, + ) + ( + _, + _, + _, + low_res_masks, + high_res_masks, + obj_ptr, + _, + ) = sam_outputs + + current_out["pred_masks"] = low_res_masks + current_out["pred_masks_high_res"] = high_res_masks + current_out["obj_ptr"] = obj_ptr + + # Finally run the memory encoder on the predicted mask to encode + # it into a new memory feature (that can be used in future frames) + if run_mem_encoder and self.num_maskmem > 0: + high_res_masks_for_mem_enc = high_res_masks + maskmem_features, maskmem_pos_enc = self._encode_new_memory( + current_vision_feats=current_vision_feats, + feat_sizes=feat_sizes, + pred_masks_high_res=high_res_masks_for_mem_enc, + is_mask_from_pts=(point_inputs is not None), + ) + current_out["maskmem_features"] = maskmem_features + current_out["maskmem_pos_enc"] = maskmem_pos_enc + else: + current_out["maskmem_features"] = None + current_out["maskmem_pos_enc"] = None + + return current_out + + def _use_multimask(self, is_init_cond_frame, point_inputs): + """Whether to use multimask output in the SAM head.""" + num_pts = 0 if point_inputs is None else point_inputs["point_labels"].size(1) + multimask_output = ( + self.multimask_output_in_sam + and (is_init_cond_frame or self.multimask_output_for_tracking) + and (self.multimask_min_pt_num <= num_pts <= self.multimask_max_pt_num) + ) + return multimask_output + + def _apply_non_overlapping_constraints(self, pred_masks): + """ + Apply non-overlapping constraints to the object scores in pred_masks. Here we + keep only the highest scoring object at each spatial location in pred_masks. + """ + batch_size = pred_masks.size(0) + if batch_size == 1: + return pred_masks + + device = pred_masks.device + # "max_obj_inds": object index of the object with the highest score at each location + max_obj_inds = torch.argmax(pred_masks, dim=0, keepdim=True) + # "batch_obj_inds": object index of each object slice (along dim 0) in `pred_masks` + batch_obj_inds = torch.arange(batch_size, device=device)[:, None, None, None] + keep = max_obj_inds == batch_obj_inds + # suppress overlapping regions' scores below -10.0 so that the foreground regions + # don't overlap (here sigmoid(-10.0)=4.5398e-05) + pred_masks = torch.where(keep, pred_masks, torch.clamp(pred_masks, max=-10.0)) + return pred_masks diff --git a/py/sam2/modeling/sam2_utils.py b/py/sam2/modeling/sam2_utils.py new file mode 100644 index 00000000..6d970596 --- /dev/null +++ b/py/sam2/modeling/sam2_utils.py @@ -0,0 +1,149 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + + +import copy + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +def select_closest_cond_frames(frame_idx, cond_frame_outputs, max_cond_frame_num): + """ + Select up to `max_cond_frame_num` conditioning frames from `cond_frame_outputs` + that are temporally closest to the current frame at `frame_idx`. Here, we take + - a) the closest conditioning frame before `frame_idx` (if any); + - b) the closest conditioning frame after `frame_idx` (if any); + - c) any other temporally closest conditioning frames until reaching a total + of `max_cond_frame_num` conditioning frames. + + Outputs: + - selected_outputs: selected items (keys & values) from `cond_frame_outputs`. + - unselected_outputs: items (keys & values) not selected in `cond_frame_outputs`. + """ + if max_cond_frame_num == -1 or len(cond_frame_outputs) <= max_cond_frame_num: + selected_outputs = cond_frame_outputs + unselected_outputs = {} + else: + assert max_cond_frame_num >= 2, "we should allow using 2+ conditioning frames" + selected_outputs = {} + + # the closest conditioning frame before `frame_idx` (if any) + idx_before = max((t for t in cond_frame_outputs if t < frame_idx), default=None) + if idx_before is not None: + selected_outputs[idx_before] = cond_frame_outputs[idx_before] + + # the closest conditioning frame after `frame_idx` (if any) + idx_after = min((t for t in cond_frame_outputs if t >= frame_idx), default=None) + if idx_after is not None: + selected_outputs[idx_after] = cond_frame_outputs[idx_after] + + # add other temporally closest conditioning frames until reaching a total + # of `max_cond_frame_num` conditioning frames. + num_remain = max_cond_frame_num - len(selected_outputs) + inds_remain = sorted( + (t for t in cond_frame_outputs if t not in selected_outputs), + key=lambda x: abs(x - frame_idx), + )[:num_remain] + selected_outputs.update((t, cond_frame_outputs[t]) for t in inds_remain) + unselected_outputs = { + t: v for t, v in cond_frame_outputs.items() if t not in selected_outputs + } + + return selected_outputs, unselected_outputs + + +def get_1d_sine_pe(pos_inds, dim, temperature=10000): + """ + Get 1D sine positional embedding as in the original Transformer paper. + """ + pe_dim = dim // 2 + dim_t = torch.arange(pe_dim, dtype=torch.float32, device=pos_inds.device) + dim_t = temperature ** (2 * (dim_t // 2) / pe_dim) + + pos_embed = pos_inds.unsqueeze(-1) / dim_t + pos_embed = torch.cat([pos_embed.sin(), pos_embed.cos()], dim=-1) + return pos_embed + + +def get_activation_fn(activation): + """Return an activation function given a string""" + if activation == "relu": + return F.relu + if activation == "gelu": + return F.gelu + if activation == "glu": + return F.glu + raise RuntimeError(f"activation should be relu/gelu, not {activation}.") + + +def get_clones(module, N): + return nn.ModuleList([copy.deepcopy(module) for i in range(N)]) + + +class DropPath(nn.Module): + # adapted from https://github.com/huggingface/pytorch-image-models/blob/main/timm/layers/drop.py + def __init__(self, drop_prob=0.0, scale_by_keep=True): + super(DropPath, self).__init__() + self.drop_prob = drop_prob + self.scale_by_keep = scale_by_keep + + def forward(self, x): + if self.drop_prob == 0.0 or not self.training: + return x + keep_prob = 1 - self.drop_prob + shape = (x.shape[0],) + (1,) * (x.ndim - 1) + random_tensor = x.new_empty(shape).bernoulli_(keep_prob) + if keep_prob > 0.0 and self.scale_by_keep: + random_tensor.div_(keep_prob) + return x * random_tensor + + +# Lightly adapted from +# https://github.com/facebookresearch/MaskFormer/blob/main/mask_former/modeling/transformer/transformer_predictor.py # noqa +class MLP(nn.Module): + def __init__( + self, + input_dim: int, + hidden_dim: int, + output_dim: int, + num_layers: int, + activation: nn.Module = nn.ReLU, + sigmoid_output: bool = False, + ) -> None: + super().__init__() + self.num_layers = num_layers + h = [hidden_dim] * (num_layers - 1) + self.layers = nn.ModuleList( + nn.Linear(n, k) for n, k in zip([input_dim] + h, h + [output_dim]) + ) + self.sigmoid_output = sigmoid_output + self.act = activation() + + def forward(self, x): + for i, layer in enumerate(self.layers): + x = self.act(layer(x)) if i < self.num_layers - 1 else layer(x) + if self.sigmoid_output: + x = F.sigmoid(x) + return x + + +# From https://github.com/facebookresearch/detectron2/blob/main/detectron2/layers/batch_norm.py # noqa +# Itself from https://github.com/facebookresearch/ConvNeXt/blob/d1fa8f6fef0a165b27399986cc2bdacc92777e40/models/convnext.py#L119 # noqa +class LayerNorm2d(nn.Module): + def __init__(self, num_channels: int, eps: float = 1e-6) -> None: + super().__init__() + self.weight = nn.Parameter(torch.ones(num_channels)) + self.bias = nn.Parameter(torch.zeros(num_channels)) + self.eps = eps + + def forward(self, x: torch.Tensor) -> torch.Tensor: + u = x.mean(1, keepdim=True) + s = (x - u).pow(2).mean(1, keepdim=True) + x = (x - u) / torch.sqrt(s + self.eps) + x = self.weight[:, None, None] * x + self.bias[:, None, None] + return x diff --git a/py/sam2/sam2_configs/__init__.py b/py/sam2/sam2_configs/__init__.py new file mode 100644 index 00000000..5277f461 --- /dev/null +++ b/py/sam2/sam2_configs/__init__.py @@ -0,0 +1,5 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. diff --git a/py/sam2/sam2_configs/sam2_hiera_b+.yaml b/py/sam2/sam2_configs/sam2_hiera_b+.yaml new file mode 100644 index 00000000..a03b8f7e --- /dev/null +++ b/py/sam2/sam2_configs/sam2_hiera_b+.yaml @@ -0,0 +1,116 @@ +# @package _global_ + +# Model +model: + _target_: sam2.modeling.sam2_base.SAM2Base + image_encoder: + _target_: sam2.modeling.backbones.image_encoder.ImageEncoder + scalp: 1 + trunk: + _target_: sam2.modeling.backbones.hieradet.Hiera + embed_dim: 112 + num_heads: 2 + stages: [2, 3, 16, 3] + global_att_blocks: [12, 16, 20] + window_pos_embed_bkg_spatial_size: [14, 14] + neck: + _target_: sam2.modeling.backbones.image_encoder.FpnNeck + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 256 + normalize: true + scale: null + temperature: 10000 + d_model: 256 + backbone_channel_list: [896, 448, 224, 112] + fpn_top_down_levels: [2, 3] # output level 0 and 1 directly use the backbone features + fpn_interp_model: nearest + + memory_attention: + _target_: sam2.modeling.memory_attention.MemoryAttention + d_model: 256 + pos_enc_at_input: true + layer: + _target_: sam2.modeling.memory_attention.MemoryAttentionLayer + activation: relu + dim_feedforward: 2048 + dropout: 0.1 + pos_enc_at_attn: false + self_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + d_model: 256 + pos_enc_at_cross_attn_keys: true + pos_enc_at_cross_attn_queries: false + cross_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + rope_k_repeat: True + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + kv_in_dim: 64 + num_layers: 4 + + memory_encoder: + _target_: sam2.modeling.memory_encoder.MemoryEncoder + out_dim: 64 + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 64 + normalize: true + scale: null + temperature: 10000 + mask_downsampler: + _target_: sam2.modeling.memory_encoder.MaskDownSampler + kernel_size: 3 + stride: 2 + padding: 1 + fuser: + _target_: sam2.modeling.memory_encoder.Fuser + layer: + _target_: sam2.modeling.memory_encoder.CXBlock + dim: 256 + kernel_size: 7 + padding: 3 + layer_scale_init_value: 1e-6 + use_dwconv: True # depth-wise convs + num_layers: 2 + + num_maskmem: 7 + image_size: 1024 + # apply scaled sigmoid on mask logits for memory encoder, and directly feed input mask as output mask + sigmoid_scale_for_mem_enc: 20.0 + sigmoid_bias_for_mem_enc: -10.0 + use_mask_input_as_output_without_sam: true + # Memory + directly_add_no_mem_embed: true + # use high-resolution feature map in the SAM mask decoder + use_high_res_features_in_sam: true + # output 3 masks on the first click on initial conditioning frames + multimask_output_in_sam: true + # SAM heads + iou_prediction_use_sigmoid: True + # cross-attend to object pointers from other frames (based on SAM output tokens) in the encoder + use_obj_ptrs_in_encoder: true + add_tpos_enc_to_obj_ptrs: false + only_obj_ptrs_in_the_past_for_eval: true + # object occlusion prediction + pred_obj_scores: true + pred_obj_scores_mlp: true + fixed_no_obj_ptr: true + # multimask tracking settings + multimask_output_for_tracking: true + use_multimask_token_for_obj_ptr: true + multimask_min_pt_num: 0 + multimask_max_pt_num: 1 + use_mlp_for_obj_ptr_proj: true + # Compilation flag + compile_image_encoder: False diff --git a/py/sam2/sam2_configs/sam2_hiera_l.yaml b/py/sam2/sam2_configs/sam2_hiera_l.yaml new file mode 100644 index 00000000..918667f5 --- /dev/null +++ b/py/sam2/sam2_configs/sam2_hiera_l.yaml @@ -0,0 +1,117 @@ +# @package _global_ + +# Model +model: + _target_: sam2.modeling.sam2_base.SAM2Base + image_encoder: + _target_: sam2.modeling.backbones.image_encoder.ImageEncoder + scalp: 1 + trunk: + _target_: sam2.modeling.backbones.hieradet.Hiera + embed_dim: 144 + num_heads: 2 + stages: [2, 6, 36, 4] + global_att_blocks: [23, 33, 43] + window_pos_embed_bkg_spatial_size: [7, 7] + window_spec: [8, 4, 16, 8] + neck: + _target_: sam2.modeling.backbones.image_encoder.FpnNeck + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 256 + normalize: true + scale: null + temperature: 10000 + d_model: 256 + backbone_channel_list: [1152, 576, 288, 144] + fpn_top_down_levels: [2, 3] # output level 0 and 1 directly use the backbone features + fpn_interp_model: nearest + + memory_attention: + _target_: sam2.modeling.memory_attention.MemoryAttention + d_model: 256 + pos_enc_at_input: true + layer: + _target_: sam2.modeling.memory_attention.MemoryAttentionLayer + activation: relu + dim_feedforward: 2048 + dropout: 0.1 + pos_enc_at_attn: false + self_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + d_model: 256 + pos_enc_at_cross_attn_keys: true + pos_enc_at_cross_attn_queries: false + cross_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + rope_k_repeat: True + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + kv_in_dim: 64 + num_layers: 4 + + memory_encoder: + _target_: sam2.modeling.memory_encoder.MemoryEncoder + out_dim: 64 + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 64 + normalize: true + scale: null + temperature: 10000 + mask_downsampler: + _target_: sam2.modeling.memory_encoder.MaskDownSampler + kernel_size: 3 + stride: 2 + padding: 1 + fuser: + _target_: sam2.modeling.memory_encoder.Fuser + layer: + _target_: sam2.modeling.memory_encoder.CXBlock + dim: 256 + kernel_size: 7 + padding: 3 + layer_scale_init_value: 1e-6 + use_dwconv: True # depth-wise convs + num_layers: 2 + + num_maskmem: 7 + image_size: 1024 + # apply scaled sigmoid on mask logits for memory encoder, and directly feed input mask as output mask + sigmoid_scale_for_mem_enc: 20.0 + sigmoid_bias_for_mem_enc: -10.0 + use_mask_input_as_output_without_sam: true + # Memory + directly_add_no_mem_embed: true + # use high-resolution feature map in the SAM mask decoder + use_high_res_features_in_sam: true + # output 3 masks on the first click on initial conditioning frames + multimask_output_in_sam: true + # SAM heads + iou_prediction_use_sigmoid: True + # cross-attend to object pointers from other frames (based on SAM output tokens) in the encoder + use_obj_ptrs_in_encoder: true + add_tpos_enc_to_obj_ptrs: false + only_obj_ptrs_in_the_past_for_eval: true + # object occlusion prediction + pred_obj_scores: true + pred_obj_scores_mlp: true + fixed_no_obj_ptr: true + # multimask tracking settings + multimask_output_for_tracking: true + use_multimask_token_for_obj_ptr: true + multimask_min_pt_num: 0 + multimask_max_pt_num: 1 + use_mlp_for_obj_ptr_proj: true + # Compilation flag + compile_image_encoder: False diff --git a/py/sam2/sam2_configs/sam2_hiera_s.yaml b/py/sam2/sam2_configs/sam2_hiera_s.yaml new file mode 100644 index 00000000..26e5d4d3 --- /dev/null +++ b/py/sam2/sam2_configs/sam2_hiera_s.yaml @@ -0,0 +1,116 @@ +# @package _global_ + +# Model +model: + _target_: sam2.modeling.sam2_base.SAM2Base + image_encoder: + _target_: sam2.modeling.backbones.image_encoder.ImageEncoder + scalp: 1 + trunk: + _target_: sam2.modeling.backbones.hieradet.Hiera + embed_dim: 96 + num_heads: 1 + stages: [1, 2, 11, 2] + global_att_blocks: [7, 10, 13] + window_pos_embed_bkg_spatial_size: [7, 7] + neck: + _target_: sam2.modeling.backbones.image_encoder.FpnNeck + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 256 + normalize: true + scale: null + temperature: 10000 + d_model: 256 + backbone_channel_list: [768, 384, 192, 96] + fpn_top_down_levels: [2, 3] # output level 0 and 1 directly use the backbone features + fpn_interp_model: nearest + + memory_attention: + _target_: sam2.modeling.memory_attention.MemoryAttention + d_model: 256 + pos_enc_at_input: true + layer: + _target_: sam2.modeling.memory_attention.MemoryAttentionLayer + activation: relu + dim_feedforward: 2048 + dropout: 0.1 + pos_enc_at_attn: false + self_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + d_model: 256 + pos_enc_at_cross_attn_keys: true + pos_enc_at_cross_attn_queries: false + cross_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + rope_k_repeat: True + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + kv_in_dim: 64 + num_layers: 4 + + memory_encoder: + _target_: sam2.modeling.memory_encoder.MemoryEncoder + out_dim: 64 + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 64 + normalize: true + scale: null + temperature: 10000 + mask_downsampler: + _target_: sam2.modeling.memory_encoder.MaskDownSampler + kernel_size: 3 + stride: 2 + padding: 1 + fuser: + _target_: sam2.modeling.memory_encoder.Fuser + layer: + _target_: sam2.modeling.memory_encoder.CXBlock + dim: 256 + kernel_size: 7 + padding: 3 + layer_scale_init_value: 1e-6 + use_dwconv: True # depth-wise convs + num_layers: 2 + + num_maskmem: 7 + image_size: 1024 + # apply scaled sigmoid on mask logits for memory encoder, and directly feed input mask as output mask + sigmoid_scale_for_mem_enc: 20.0 + sigmoid_bias_for_mem_enc: -10.0 + use_mask_input_as_output_without_sam: true + # Memory + directly_add_no_mem_embed: true + # use high-resolution feature map in the SAM mask decoder + use_high_res_features_in_sam: true + # output 3 masks on the first click on initial conditioning frames + multimask_output_in_sam: true + # SAM heads + iou_prediction_use_sigmoid: True + # cross-attend to object pointers from other frames (based on SAM output tokens) in the encoder + use_obj_ptrs_in_encoder: true + add_tpos_enc_to_obj_ptrs: false + only_obj_ptrs_in_the_past_for_eval: true + # object occlusion prediction + pred_obj_scores: true + pred_obj_scores_mlp: true + fixed_no_obj_ptr: true + # multimask tracking settings + multimask_output_for_tracking: true + use_multimask_token_for_obj_ptr: true + multimask_min_pt_num: 0 + multimask_max_pt_num: 1 + use_mlp_for_obj_ptr_proj: true + # Compilation flag + compile_image_encoder: False diff --git a/py/sam2/sam2_configs/sam2_hiera_t.yaml b/py/sam2/sam2_configs/sam2_hiera_t.yaml new file mode 100644 index 00000000..a62c903a --- /dev/null +++ b/py/sam2/sam2_configs/sam2_hiera_t.yaml @@ -0,0 +1,118 @@ +# @package _global_ + +# Model +model: + _target_: sam2.modeling.sam2_base.SAM2Base + image_encoder: + _target_: sam2.modeling.backbones.image_encoder.ImageEncoder + scalp: 1 + trunk: + _target_: sam2.modeling.backbones.hieradet.Hiera + embed_dim: 96 + num_heads: 1 + stages: [1, 2, 7, 2] + global_att_blocks: [5, 7, 9] + window_pos_embed_bkg_spatial_size: [7, 7] + neck: + _target_: sam2.modeling.backbones.image_encoder.FpnNeck + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 256 + normalize: true + scale: null + temperature: 10000 + d_model: 256 + backbone_channel_list: [768, 384, 192, 96] + fpn_top_down_levels: [2, 3] # output level 0 and 1 directly use the backbone features + fpn_interp_model: nearest + + memory_attention: + _target_: sam2.modeling.memory_attention.MemoryAttention + d_model: 256 + pos_enc_at_input: true + layer: + _target_: sam2.modeling.memory_attention.MemoryAttentionLayer + activation: relu + dim_feedforward: 2048 + dropout: 0.1 + pos_enc_at_attn: false + self_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + d_model: 256 + pos_enc_at_cross_attn_keys: true + pos_enc_at_cross_attn_queries: false + cross_attention: + _target_: sam2.modeling.sam.transformer.RoPEAttention + rope_theta: 10000.0 + feat_sizes: [32, 32] + rope_k_repeat: True + embedding_dim: 256 + num_heads: 1 + downsample_rate: 1 + dropout: 0.1 + kv_in_dim: 64 + num_layers: 4 + + memory_encoder: + _target_: sam2.modeling.memory_encoder.MemoryEncoder + out_dim: 64 + position_encoding: + _target_: sam2.modeling.position_encoding.PositionEmbeddingSine + num_pos_feats: 64 + normalize: true + scale: null + temperature: 10000 + mask_downsampler: + _target_: sam2.modeling.memory_encoder.MaskDownSampler + kernel_size: 3 + stride: 2 + padding: 1 + fuser: + _target_: sam2.modeling.memory_encoder.Fuser + layer: + _target_: sam2.modeling.memory_encoder.CXBlock + dim: 256 + kernel_size: 7 + padding: 3 + layer_scale_init_value: 1e-6 + use_dwconv: True # depth-wise convs + num_layers: 2 + + num_maskmem: 7 + image_size: 1024 + # apply scaled sigmoid on mask logits for memory encoder, and directly feed input mask as output mask + # SAM decoder + sigmoid_scale_for_mem_enc: 20.0 + sigmoid_bias_for_mem_enc: -10.0 + use_mask_input_as_output_without_sam: true + # Memory + directly_add_no_mem_embed: true + # use high-resolution feature map in the SAM mask decoder + use_high_res_features_in_sam: true + # output 3 masks on the first click on initial conditioning frames + multimask_output_in_sam: true + # SAM heads + iou_prediction_use_sigmoid: True + # cross-attend to object pointers from other frames (based on SAM output tokens) in the encoder + use_obj_ptrs_in_encoder: true + add_tpos_enc_to_obj_ptrs: false + only_obj_ptrs_in_the_past_for_eval: true + # object occlusion prediction + pred_obj_scores: true + pred_obj_scores_mlp: true + fixed_no_obj_ptr: true + # multimask tracking settings + multimask_output_for_tracking: true + use_multimask_token_for_obj_ptr: true + multimask_min_pt_num: 0 + multimask_max_pt_num: 1 + use_mlp_for_obj_ptr_proj: true + # Compilation flag + # HieraT does not currently support compilation, should always be set to False + compile_image_encoder: False diff --git a/py/sam2/sam2_image_predictor.py b/py/sam2/sam2_image_predictor.py new file mode 100644 index 00000000..271a0f04 --- /dev/null +++ b/py/sam2/sam2_image_predictor.py @@ -0,0 +1,446 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import logging + +from typing import List, Optional, Tuple, Union + +import numpy as np +import torch +from PIL.Image import Image + +from ..sam2.modeling.sam2_base import SAM2Base + +from ..sam2.utils.transforms import SAM2Transforms + + +class SAM2ImagePredictor: + def __init__( + self, + sam_model: SAM2Base, + mask_threshold=0.0, + max_hole_area=0.0, + max_sprinkle_area=0.0, + ) -> None: + """ + Uses SAM-2 to calculate the image embedding for an image, and then + allow repeated, efficient mask prediction given prompts. + + Arguments: + sam_model (Sam-2): The model to use for mask prediction. + mask_threshold (float): The threshold to use when converting mask logits + to binary masks. Masks are thresholded at 0 by default. + fill_hole_area (int): If fill_hole_area > 0, we fill small holes in up to + the maximum area of fill_hole_area in low_res_masks. + """ + super().__init__() + self.model = sam_model + self._transforms = SAM2Transforms( + resolution=self.model.image_size, + mask_threshold=mask_threshold, + max_hole_area=max_hole_area, + max_sprinkle_area=max_sprinkle_area, + ) + + # Predictor state + self._is_image_set = False + self._features = None + self._orig_hw = None + # Whether the predictor is set for single image or a batch of images + self._is_batch = False + + # Predictor config + self.mask_threshold = mask_threshold + + # Spatial dim for backbone feature maps + self._bb_feat_sizes = [ + (256, 256), + (128, 128), + (64, 64), + ] + + @torch.no_grad() + def set_image( + self, + image: Union[np.ndarray, Image], + ) -> None: + """ + Calculates the image embeddings for the provided image, allowing + masks to be predicted with the 'predict' method. + + Arguments: + image (np.ndarray or PIL Image): The input image to embed in RGB format. The image should be in HWC format if np.ndarray, or WHC format if PIL Image + with pixel values in [0, 255]. + image_format (str): The color format of the image, in ['RGB', 'BGR']. + """ + self.reset_predictor() + # Transform the image to the form expected by the model + if isinstance(image, np.ndarray): + #logging.info("For numpy array image, we assume (HxWxC) format") + self._orig_hw = [image.shape[:2]] + elif isinstance(image, Image): + w, h = image.size + self._orig_hw = [(h, w)] + else: + raise NotImplementedError("Image format not supported") + + input_image = self._transforms(image) + input_image = input_image[None, ...].to(self.device) + + assert ( + len(input_image.shape) == 4 and input_image.shape[1] == 3 + ), f"input_image must be of size 1x3xHxW, got {input_image.shape}" + #logging.info("Computing image embeddings for the provided image...") + backbone_out = self.model.forward_image(input_image) + _, vision_feats, _, _ = self.model._prepare_backbone_features(backbone_out) + # Add no_mem_embed, which is added to the lowest rest feat. map during training on videos + if self.model.directly_add_no_mem_embed: + vision_feats[-1] = vision_feats[-1] + self.model.no_mem_embed + + feats = [ + feat.permute(1, 2, 0).view(1, -1, *feat_size) + for feat, feat_size in zip(vision_feats[::-1], self._bb_feat_sizes[::-1]) + ][::-1] + self._features = {"image_embed": feats[-1], "high_res_feats": feats[:-1]} + self._is_image_set = True + #logging.info("Image embeddings computed.") + + @torch.no_grad() + def set_image_batch( + self, + image_list: List[Union[np.ndarray]], + ) -> None: + """ + Calculates the image embeddings for the provided image batch, allowing + masks to be predicted with the 'predict_batch' method. + + Arguments: + image_list (List[np.ndarray]): The input images to embed in RGB format. The image should be in HWC format if np.ndarray + with pixel values in [0, 255]. + """ + self.reset_predictor() + assert isinstance(image_list, list) + self._orig_hw = [] + for image in image_list: + assert isinstance( + image, np.ndarray + ), "Images are expected to be an np.ndarray in RGB format, and of shape HWC" + self._orig_hw.append(image.shape[:2]) + # Transform the image to the form expected by the model + img_batch = self._transforms.forward_batch(image_list) + img_batch = img_batch.to(self.device) + batch_size = img_batch.shape[0] + assert ( + len(img_batch.shape) == 4 and img_batch.shape[1] == 3 + ), f"img_batch must be of size Bx3xHxW, got {img_batch.shape}" + logging.info("Computing image embeddings for the provided images...") + backbone_out = self.model.forward_image(img_batch) + _, vision_feats, _, _ = self.model._prepare_backbone_features(backbone_out) + # Add no_mem_embed, which is added to the lowest rest feat. map during training on videos + if self.model.directly_add_no_mem_embed: + vision_feats[-1] = vision_feats[-1] + self.model.no_mem_embed + + feats = [ + feat.permute(1, 2, 0).view(batch_size, -1, *feat_size) + for feat, feat_size in zip(vision_feats[::-1], self._bb_feat_sizes[::-1]) + ][::-1] + self._features = {"image_embed": feats[-1], "high_res_feats": feats[:-1]} + self._is_image_set = True + self._is_batch = True + logging.info("Image embeddings computed.") + + def predict_batch( + self, + point_coords_batch: List[np.ndarray] = None, + point_labels_batch: List[np.ndarray] = None, + box_batch: List[np.ndarray] = None, + mask_input_batch: List[np.ndarray] = None, + multimask_output: bool = True, + return_logits: bool = False, + normalize_coords=True, + ) -> Tuple[List[np.ndarray], List[np.ndarray], List[np.ndarray]]: + """This function is very similar to predict(...), however it is used for batched mode, when the model is expected to generate predictions on multiple images. + It returns a tupele of lists of masks, ious, and low_res_masks_logits. + """ + assert self._is_batch, "This function should only be used when in batched mode" + if not self._is_image_set: + raise RuntimeError( + "An image must be set with .set_image_batch(...) before mask prediction." + ) + num_images = len(self._features["image_embed"]) + all_masks = [] + all_ious = [] + all_low_res_masks = [] + for img_idx in range(num_images): + # Transform input prompts + point_coords = ( + point_coords_batch[img_idx] if point_coords_batch is not None else None + ) + point_labels = ( + point_labels_batch[img_idx] if point_labels_batch is not None else None + ) + box = box_batch[img_idx] if box_batch is not None else None + mask_input = ( + mask_input_batch[img_idx] if mask_input_batch is not None else None + ) + mask_input, unnorm_coords, labels, unnorm_box = self._prep_prompts( + point_coords, + point_labels, + box, + mask_input, + normalize_coords, + img_idx=img_idx, + ) + masks, iou_predictions, low_res_masks = self._predict( + unnorm_coords, + labels, + unnorm_box, + mask_input, + multimask_output, + return_logits=return_logits, + img_idx=img_idx, + ) + masks_np = masks.squeeze(0).float().detach().cpu().numpy() + iou_predictions_np = ( + iou_predictions.squeeze(0).float().detach().cpu().numpy() + ) + low_res_masks_np = low_res_masks.squeeze(0).float().detach().cpu().numpy() + all_masks.append(masks_np) + all_ious.append(iou_predictions_np) + all_low_res_masks.append(low_res_masks_np) + + return all_masks, all_ious, all_low_res_masks + + def predict( + self, + point_coords: Optional[np.ndarray] = None, + point_labels: Optional[np.ndarray] = None, + box: Optional[np.ndarray] = None, + mask_input: Optional[np.ndarray] = None, + multimask_output: bool = True, + return_logits: bool = False, + normalize_coords=True, + ) -> Tuple[np.ndarray, np.ndarray, np.ndarray]: + """ + Predict masks for the given input prompts, using the currently set image. + + Arguments: + point_coords (np.ndarray or None): A Nx2 array of point prompts to the + model. Each point is in (X,Y) in pixels. + point_labels (np.ndarray or None): A length N array of labels for the + point prompts. 1 indicates a foreground point and 0 indicates a + background point. + box (np.ndarray or None): A length 4 array given a box prompt to the + model, in XYXY format. + mask_input (np.ndarray): A low resolution mask input to the model, typically + coming from a previous prediction iteration. Has form 1xHxW, where + for SAM, H=W=256. + multimask_output (bool): If true, the model will return three masks. + For ambiguous input prompts (such as a single click), this will often + produce better masks than a single prediction. If only a single + mask is needed, the model's predicted quality score can be used + to select the best mask. For non-ambiguous prompts, such as multiple + input prompts, multimask_output=False can give better results. + return_logits (bool): If true, returns un-thresholded masks logits + instead of a binary mask. + normalize_coords (bool): If true, the point coordinates will be normalized to the range [0,1] and point_coords is expected to be wrt. image dimensions. + + Returns: + (np.ndarray): The output masks in CxHxW format, where C is the + number of masks, and (H, W) is the original image size. + (np.ndarray): An array of length C containing the model's + predictions for the quality of each mask. + (np.ndarray): An array of shape CxHxW, where C is the number + of masks and H=W=256. These low resolution logits can be passed to + a subsequent iteration as mask input. + """ + if not self._is_image_set: + raise RuntimeError( + "An image must be set with .set_image(...) before mask prediction." + ) + + # Transform input prompts + + mask_input, unnorm_coords, labels, unnorm_box = self._prep_prompts( + point_coords, point_labels, box, mask_input, normalize_coords + ) + + masks, iou_predictions, low_res_masks = self._predict( + unnorm_coords, + labels, + unnorm_box, + mask_input, + multimask_output, + return_logits=return_logits, + ) + + masks_np = masks.squeeze(0).float().detach().cpu().numpy() + iou_predictions_np = iou_predictions.squeeze(0).float().detach().cpu().numpy() + low_res_masks_np = low_res_masks.squeeze(0).float().detach().cpu().numpy() + return masks_np, iou_predictions_np, low_res_masks_np + + def _prep_prompts( + self, point_coords, point_labels, box, mask_logits, normalize_coords, img_idx=-1 + ): + + unnorm_coords, labels, unnorm_box, mask_input = None, None, None, None + if point_coords is not None: + assert ( + point_labels is not None + ), "point_labels must be supplied if point_coords is supplied." + point_coords = torch.as_tensor( + point_coords, dtype=torch.float, device=self.device + ) + unnorm_coords = self._transforms.transform_coords( + point_coords, normalize=normalize_coords, orig_hw=self._orig_hw[img_idx] + ) + labels = torch.as_tensor(point_labels, dtype=torch.int, device=self.device) + if len(unnorm_coords.shape) == 2: + unnorm_coords, labels = unnorm_coords[None, ...], labels[None, ...] + if box is not None: + box = torch.as_tensor(box, dtype=torch.float, device=self.device) + unnorm_box = self._transforms.transform_boxes( + box, normalize=normalize_coords, orig_hw=self._orig_hw[img_idx] + ) # Bx2x2 + if mask_logits is not None: + mask_input = torch.as_tensor( + mask_logits, dtype=torch.float, device=self.device + ) + if len(mask_input.shape) == 3: + mask_input = mask_input[None, :, :, :] + return mask_input, unnorm_coords, labels, unnorm_box + + @torch.no_grad() + def _predict( + self, + point_coords: Optional[torch.Tensor], + point_labels: Optional[torch.Tensor], + boxes: Optional[torch.Tensor] = None, + mask_input: Optional[torch.Tensor] = None, + multimask_output: bool = True, + return_logits: bool = False, + img_idx: int = -1, + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """ + Predict masks for the given input prompts, using the currently set image. + Input prompts are batched torch tensors and are expected to already be + transformed to the input frame using SAM2Transforms. + + Arguments: + point_coords (torch.Tensor or None): A BxNx2 array of point prompts to the + model. Each point is in (X,Y) in pixels. + point_labels (torch.Tensor or None): A BxN array of labels for the + point prompts. 1 indicates a foreground point and 0 indicates a + background point. + boxes (np.ndarray or None): A Bx4 array given a box prompt to the + model, in XYXY format. + mask_input (np.ndarray): A low resolution mask input to the model, typically + coming from a previous prediction iteration. Has form Bx1xHxW, where + for SAM, H=W=256. Masks returned by a previous iteration of the + predict method do not need further transformation. + multimask_output (bool): If true, the model will return three masks. + For ambiguous input prompts (such as a single click), this will often + produce better masks than a single prediction. If only a single + mask is needed, the model's predicted quality score can be used + to select the best mask. For non-ambiguous prompts, such as multiple + input prompts, multimask_output=False can give better results. + return_logits (bool): If true, returns un-thresholded masks logits + instead of a binary mask. + + Returns: + (torch.Tensor): The output masks in BxCxHxW format, where C is the + number of masks, and (H, W) is the original image size. + (torch.Tensor): An array of shape BxC containing the model's + predictions for the quality of each mask. + (torch.Tensor): An array of shape BxCxHxW, where C is the number + of masks and H=W=256. These low res logits can be passed to + a subsequent iteration as mask input. + """ + if not self._is_image_set: + raise RuntimeError( + "An image must be set with .set_image(...) before mask prediction." + ) + + if point_coords is not None: + concat_points = (point_coords, point_labels) + else: + concat_points = None + + # Embed prompts + if boxes is not None: + box_coords = boxes.reshape(-1, 2, 2) + box_labels = torch.tensor([[2, 3]], dtype=torch.int, device=boxes.device) + box_labels = box_labels.repeat(boxes.size(0), 1) + # we merge "boxes" and "points" into a single "concat_points" input (where + # boxes are added at the beginning) to sam_prompt_encoder + if concat_points is not None: + concat_coords = torch.cat([box_coords, concat_points[0]], dim=1) + concat_labels = torch.cat([box_labels, concat_points[1]], dim=1) + concat_points = (concat_coords, concat_labels) + else: + concat_points = (box_coords, box_labels) + + sparse_embeddings, dense_embeddings = self.model.sam_prompt_encoder( + points=concat_points, + boxes=None, + masks=mask_input, + ) + + # Predict masks + batched_mode = ( + concat_points is not None and concat_points[0].shape[0] > 1 + ) # multi object prediction + high_res_features = [ + feat_level[img_idx].unsqueeze(0) + for feat_level in self._features["high_res_feats"] + ] + low_res_masks, iou_predictions, _, _ = self.model.sam_mask_decoder( + image_embeddings=self._features["image_embed"][img_idx].unsqueeze(0), + image_pe=self.model.sam_prompt_encoder.get_dense_pe(), + sparse_prompt_embeddings=sparse_embeddings, + dense_prompt_embeddings=dense_embeddings, + multimask_output=multimask_output, + repeat_image=batched_mode, + high_res_features=high_res_features, + ) + + # Upscale the masks to the original image resolution + masks = self._transforms.postprocess_masks( + low_res_masks, self._orig_hw[img_idx] + ) + low_res_masks = torch.clamp(low_res_masks, -32.0, 32.0) + if not return_logits: + masks = masks > self.mask_threshold + + return masks, iou_predictions, low_res_masks + + def get_image_embedding(self) -> torch.Tensor: + """ + Returns the image embeddings for the currently set image, with + shape 1xCxHxW, where C is the embedding dimension and (H,W) are + the embedding spatial dimension of SAM (typically C=256, H=W=64). + """ + if not self._is_image_set: + raise RuntimeError( + "An image must be set with .set_image(...) to generate an embedding." + ) + assert ( + self._features is not None + ), "Features must exist if an image has been set." + return self._features["image_embed"] + + @property + def device(self) -> torch.device: + return self.model.device + + def reset_predictor(self) -> None: + """ + Resets the image embeddings and other state variables. + """ + self._is_image_set = False + self._features = None + self._orig_hw = None + self._is_batch = False diff --git a/py/sam2/sam2_video_predictor.py b/py/sam2/sam2_video_predictor.py new file mode 100644 index 00000000..b5df87d5 --- /dev/null +++ b/py/sam2/sam2_video_predictor.py @@ -0,0 +1,906 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +from collections import OrderedDict + +import torch +import numpy as np +from tqdm import tqdm + +from ..sam2.modeling.sam2_base import NO_OBJ_SCORE, SAM2Base +from ..sam2.utils.misc import concat_points, fill_holes_in_mask_scores, load_video_frames + + +class SAM2VideoPredictor(SAM2Base): + """The predictor class to handle user interactions and manage inference states.""" + + def __init__( + self, + fill_hole_area=0, + # whether to apply non-overlapping constraints on the output object masks + non_overlap_masks=False, + # whether to clear non-conditioning memory of the surrounding frames (which may contain outdated information) after adding correction clicks; + # note that this would only apply to *single-object tracking* unless `clear_non_cond_mem_for_multi_obj` is also set to True) + clear_non_cond_mem_around_input=False, + # whether to also clear non-conditioning memory of the surrounding frames (only effective when `clear_non_cond_mem_around_input` is True). + clear_non_cond_mem_for_multi_obj=False, + **kwargs, + ): + super().__init__(**kwargs) + self.fill_hole_area = fill_hole_area + self.non_overlap_masks = non_overlap_masks + self.clear_non_cond_mem_around_input = clear_non_cond_mem_around_input + self.clear_non_cond_mem_for_multi_obj = clear_non_cond_mem_for_multi_obj + + @torch.inference_mode() + def init_state( + self, + images, + video_height, + video_width, + device='cuda', + offload_video_to_cpu=False, + offload_state_to_cpu=False, + async_loading_frames=False, + ): + """Initialize a inference state.""" + # images, video_height, video_width = load_video_frames( + # video_path=video_path, + # image_size=self.image_size, + # offload_video_to_cpu=offload_video_to_cpu, + # async_loading_frames=async_loading_frames, + # ) + inference_state = {} + inference_state["images"] = images + inference_state["num_frames"] = len(images) + # whether to offload the video frames to CPU memory + # turning on this option saves the GPU memory with only a very small overhead + inference_state["offload_video_to_cpu"] = offload_video_to_cpu + # whether to offload the inference state to CPU memory + # turning on this option saves the GPU memory at the cost of a lower tracking fps + # (e.g. in a test case of 768x768 model, fps dropped from 27 to 24 when tracking one object + # and from 24 to 21 when tracking two objects) + inference_state["offload_state_to_cpu"] = offload_state_to_cpu + # the original video height and width, used for resizing final output scores + inference_state["video_height"] = video_height + inference_state["video_width"] = video_width + inference_state["device"] = torch.device(device) + if offload_state_to_cpu: + inference_state["storage_device"] = torch.device("cpu") + else: + inference_state["storage_device"] = torch.device(device) + # inputs on each frame + inference_state["point_inputs_per_obj"] = {} + inference_state["mask_inputs_per_obj"] = {} + # visual features on a small number of recently visited frames for quick interactions + inference_state["cached_features"] = {} + # values that don't change across frames (so we only need to hold one copy of them) + inference_state["constants"] = {} + # mapping between client-side object id and model-side object index + inference_state["obj_id_to_idx"] = OrderedDict() + inference_state["obj_idx_to_id"] = OrderedDict() + inference_state["obj_ids"] = [] + # A storage to hold the model's tracking results and states on each frame + inference_state["output_dict"] = { + "cond_frame_outputs": {}, # dict containing {frame_idx: } + "non_cond_frame_outputs": {}, # dict containing {frame_idx: } + } + # Slice (view) of each object tracking results, sharing the same memory with "output_dict" + inference_state["output_dict_per_obj"] = {} + # A temporary storage to hold new outputs when user interact with a frame + # to add clicks or mask (it's merged into "output_dict" before propagation starts) + inference_state["temp_output_dict_per_obj"] = {} + # Frames that already holds consolidated outputs from click or mask inputs + # (we directly use their consolidated outputs during tracking) + inference_state["consolidated_frame_inds"] = { + "cond_frame_outputs": set(), # set containing frame indices + "non_cond_frame_outputs": set(), # set containing frame indices + } + # metadata for each tracking frame (e.g. which direction it's tracked) + inference_state["tracking_has_started"] = False + inference_state["frames_already_tracked"] = {} + # Warm up the visual backbone and cache the image feature on frame 0 + self._get_image_feature(inference_state, frame_idx=0, batch_size=1) + return inference_state + + def _obj_id_to_idx(self, inference_state, obj_id): + """Map client-side object id to model-side object index.""" + obj_idx = inference_state["obj_id_to_idx"].get(obj_id, None) + if obj_idx is not None: + return obj_idx + + # This is a new object id not sent to the server before. We only allow adding + # new objects *before* the tracking starts. + allow_new_object = not inference_state["tracking_has_started"] + if allow_new_object: + # get the next object slot + obj_idx = len(inference_state["obj_id_to_idx"]) + inference_state["obj_id_to_idx"][obj_id] = obj_idx + inference_state["obj_idx_to_id"][obj_idx] = obj_id + inference_state["obj_ids"] = list(inference_state["obj_id_to_idx"]) + # set up input and output structures for this object + inference_state["point_inputs_per_obj"][obj_idx] = {} + inference_state["mask_inputs_per_obj"][obj_idx] = {} + inference_state["output_dict_per_obj"][obj_idx] = { + "cond_frame_outputs": {}, # dict containing {frame_idx: } + "non_cond_frame_outputs": {}, # dict containing {frame_idx: } + } + inference_state["temp_output_dict_per_obj"][obj_idx] = { + "cond_frame_outputs": {}, # dict containing {frame_idx: } + "non_cond_frame_outputs": {}, # dict containing {frame_idx: } + } + return obj_idx + else: + raise RuntimeError( + f"Cannot add new object id {obj_id} after tracking starts. " + f"All existing object ids: {inference_state['obj_ids']}. " + f"Please call 'reset_state' to restart from scratch." + ) + + def _obj_idx_to_id(self, inference_state, obj_idx): + """Map model-side object index to client-side object id.""" + return inference_state["obj_idx_to_id"][obj_idx] + + def _get_obj_num(self, inference_state): + """Get the total number of unique object ids received so far in this session.""" + return len(inference_state["obj_idx_to_id"]) + + @torch.inference_mode() + def add_new_points( + self, + inference_state, + frame_idx, + obj_id, + points, + labels, + clear_old_points=True, + normalize_coords=True, + ): + """Add new points to a frame.""" + obj_idx = self._obj_id_to_idx(inference_state, obj_id) + point_inputs_per_frame = inference_state["point_inputs_per_obj"][obj_idx] + mask_inputs_per_frame = inference_state["mask_inputs_per_obj"][obj_idx] + + if not isinstance(points, torch.Tensor): + if isinstance(points, list) and all(isinstance(p, np.ndarray) for p in points): + points = np.array(points) + points = torch.tensor(points, dtype=torch.float32) + + if not isinstance(labels, torch.Tensor): + if isinstance(labels, list) and all(isinstance(l, np.ndarray) for l in labels): + labels = np.array(labels) + labels = torch.tensor(labels, dtype=torch.int32) + if points.dim() == 2: + points = points.unsqueeze(0) # add batch dimension + if labels.dim() == 1: + labels = labels.unsqueeze(0) # add batch dimension + if normalize_coords: + video_H = inference_state["video_height"] + video_W = inference_state["video_width"] + points = points / torch.tensor([video_W, video_H]).to(points.device) + # scale the (normalized) coordinates by the model's internal image size + points = points * self.image_size + points = points.to(inference_state["device"]) + labels = labels.to(inference_state["device"]) + + if not clear_old_points: + point_inputs = point_inputs_per_frame.get(frame_idx, None) + else: + point_inputs = None + point_inputs = concat_points(point_inputs, points, labels) + + point_inputs_per_frame[frame_idx] = point_inputs + mask_inputs_per_frame.pop(frame_idx, None) + # If this frame hasn't been tracked before, we treat it as an initial conditioning + # frame, meaning that the inputs points are to generate segments on this frame without + # using any memory from other frames, like in SAM. Otherwise (if it has been tracked), + # the input points will be used to correct the already tracked masks. + is_init_cond_frame = frame_idx not in inference_state["frames_already_tracked"] + # whether to track in reverse time order + if is_init_cond_frame: + reverse = False + else: + reverse = inference_state["frames_already_tracked"][frame_idx]["reverse"] + obj_output_dict = inference_state["output_dict_per_obj"][obj_idx] + obj_temp_output_dict = inference_state["temp_output_dict_per_obj"][obj_idx] + # Add a frame to conditioning output if it's an initial conditioning frame or + # if the model sees all frames receiving clicks/mask as conditioning frames. + is_cond = is_init_cond_frame or self.add_all_frames_to_correct_as_cond + storage_key = "cond_frame_outputs" if is_cond else "non_cond_frame_outputs" + + # Get any previously predicted mask logits on this object and feed it along with + # the new clicks into the SAM mask decoder. + prev_sam_mask_logits = None + # lookup temporary output dict first, which contains the most recent output + # (if not found, then lookup conditioning and non-conditioning frame output) + prev_out = obj_temp_output_dict[storage_key].get(frame_idx) + if prev_out is None: + prev_out = obj_output_dict["cond_frame_outputs"].get(frame_idx) + if prev_out is None: + prev_out = obj_output_dict["non_cond_frame_outputs"].get(frame_idx) + + if prev_out is not None and prev_out["pred_masks"] is not None: + prev_sam_mask_logits = prev_out["pred_masks"].to(inference_state["device"],non_blocking=True) + # Clamp the scale of prev_sam_mask_logits to avoid rare numerical issues. + prev_sam_mask_logits = torch.clamp(prev_sam_mask_logits, -32.0, 32.0) + current_out, _ = self._run_single_frame_inference( + inference_state=inference_state, + output_dict=obj_output_dict, # run on the slice of a single object + frame_idx=frame_idx, + batch_size=1, # run on the slice of a single object + is_init_cond_frame=is_init_cond_frame, + point_inputs=point_inputs, + mask_inputs=None, + reverse=reverse, + # Skip the memory encoder when adding clicks or mask. We execute the memory encoder + # at the beginning of `propagate_in_video` (after user finalize their clicks). This + # allows us to enforce non-overlapping constraints on all objects before encoding + # them into memory. + run_mem_encoder=False, + prev_sam_mask_logits=prev_sam_mask_logits, + ) + # Add the output to the output dict (to be used as future memory) + obj_temp_output_dict[storage_key][frame_idx] = current_out + + # Resize the output mask to the original video resolution + obj_ids = inference_state["obj_ids"] + consolidated_out = self._consolidate_temp_output_across_obj( + inference_state, + frame_idx, + is_cond=is_cond, + run_mem_encoder=False, + consolidate_at_video_res=True, + ) + _, video_res_masks = self._get_orig_video_res_output( + inference_state, consolidated_out["pred_masks_video_res"] + ) + return frame_idx, obj_ids, video_res_masks + + @torch.inference_mode() + def add_new_mask( + self, + inference_state, + frame_idx, + obj_id, + mask, + ): + """Add new mask to a frame.""" + obj_idx = self._obj_id_to_idx(inference_state, obj_id) + point_inputs_per_frame = inference_state["point_inputs_per_obj"][obj_idx] + mask_inputs_per_frame = inference_state["mask_inputs_per_obj"][obj_idx] + + if not isinstance(mask, torch.Tensor): + mask = torch.tensor(mask, dtype=torch.bool) + assert mask.dim() == 2 + mask_H, mask_W = mask.shape + mask_inputs_orig = mask[None, None] # add batch and channel dimension + mask_inputs_orig = mask_inputs_orig.float().to(inference_state["device"]) + + # resize the mask if it doesn't match the model's image size + if mask_H != self.image_size or mask_W != self.image_size: + mask_inputs = torch.nn.functional.interpolate( + mask_inputs_orig, + size=(self.image_size, self.image_size), + align_corners=False, + mode="bilinear", + antialias=True, # use antialias for downsampling + ) + mask_inputs = (mask_inputs >= 0.5).float() + else: + mask_inputs = mask_inputs_orig + + mask_inputs_per_frame[frame_idx] = mask_inputs + point_inputs_per_frame.pop(frame_idx, None) + # If this frame hasn't been tracked before, we treat it as an initial conditioning + # frame, meaning that the inputs points are to generate segments on this frame without + # using any memory from other frames, like in SAM. Otherwise (if it has been tracked), + # the input points will be used to correct the already tracked masks. + is_init_cond_frame = frame_idx not in inference_state["frames_already_tracked"] + # whether to track in reverse time order + if is_init_cond_frame: + reverse = False + else: + reverse = inference_state["frames_already_tracked"][frame_idx]["reverse"] + obj_output_dict = inference_state["output_dict_per_obj"][obj_idx] + obj_temp_output_dict = inference_state["temp_output_dict_per_obj"][obj_idx] + # Add a frame to conditioning output if it's an initial conditioning frame or + # if the model sees all frames receiving clicks/mask as conditioning frames. + is_cond = is_init_cond_frame or self.add_all_frames_to_correct_as_cond + storage_key = "cond_frame_outputs" if is_cond else "non_cond_frame_outputs" + + current_out, _ = self._run_single_frame_inference( + inference_state=inference_state, + output_dict=obj_output_dict, # run on the slice of a single object + frame_idx=frame_idx, + batch_size=1, # run on the slice of a single object + is_init_cond_frame=is_init_cond_frame, + point_inputs=None, + mask_inputs=mask_inputs, + reverse=reverse, + # Skip the memory encoder when adding clicks or mask. We execute the memory encoder + # at the beginning of `propagate_in_video` (after user finalize their clicks). This + # allows us to enforce non-overlapping constraints on all objects before encoding + # them into memory. + run_mem_encoder=False, + ) + # Add the output to the output dict (to be used as future memory) + obj_temp_output_dict[storage_key][frame_idx] = current_out + + # Resize the output mask to the original video resolution + obj_ids = inference_state["obj_ids"] + consolidated_out = self._consolidate_temp_output_across_obj( + inference_state, + frame_idx, + is_cond=is_cond, + run_mem_encoder=False, + consolidate_at_video_res=True, + ) + _, video_res_masks = self._get_orig_video_res_output( + inference_state, consolidated_out["pred_masks_video_res"] + ) + return frame_idx, obj_ids, video_res_masks + + def _get_orig_video_res_output(self, inference_state, any_res_masks): + """ + Resize the object scores to the original video resolution (video_res_masks) + and apply non-overlapping constraints for final output. + """ + device = inference_state["device"] + video_H = inference_state["video_height"] + video_W = inference_state["video_width"] + any_res_masks = any_res_masks.to(device, non_blocking=True) + if any_res_masks.shape[-2:] == (video_H, video_W): + video_res_masks = any_res_masks + else: + video_res_masks = torch.nn.functional.interpolate( + any_res_masks, + size=(video_H, video_W), + mode="bilinear", + align_corners=False, + ) + if self.non_overlap_masks: + video_res_masks = self._apply_non_overlapping_constraints(video_res_masks) + return any_res_masks, video_res_masks + + def _consolidate_temp_output_across_obj( + self, + inference_state, + frame_idx, + is_cond, + run_mem_encoder, + consolidate_at_video_res=False, + ): + """ + Consolidate the per-object temporary outputs in `temp_output_dict_per_obj` on + a frame into a single output for all objects, including + 1) fill any missing objects either from `output_dict_per_obj` (if they exist in + `output_dict_per_obj` for this frame) or leave them as placeholder values + (if they don't exist in `output_dict_per_obj` for this frame); + 2) if specified, rerun memory encoder after apply non-overlapping constraints + on the object scores. + """ + batch_size = self._get_obj_num(inference_state) + storage_key = "cond_frame_outputs" if is_cond else "non_cond_frame_outputs" + # Optionally, we allow consolidating the temporary outputs at the original + # video resolution (to provide a better editing experience for mask prompts). + if consolidate_at_video_res: + assert not run_mem_encoder, "memory encoder cannot run at video resolution" + consolidated_H = inference_state["video_height"] + consolidated_W = inference_state["video_width"] + consolidated_mask_key = "pred_masks_video_res" + else: + consolidated_H = consolidated_W = self.image_size // 4 + consolidated_mask_key = "pred_masks" + + # Initialize `consolidated_out`. Its "maskmem_features" and "maskmem_pos_enc" + # will be added when rerunning the memory encoder after applying non-overlapping + # constraints to object scores. Its "pred_masks" are prefilled with a large + # negative value (NO_OBJ_SCORE) to represent missing objects. + consolidated_out = { + "maskmem_features": None, + "maskmem_pos_enc": None, + consolidated_mask_key: torch.full( + size=(batch_size, 1, consolidated_H, consolidated_W), + fill_value=NO_OBJ_SCORE, + dtype=torch.float32, + device=inference_state["storage_device"], + ), + "obj_ptr": torch.full( + size=(batch_size, self.hidden_dim), + fill_value=NO_OBJ_SCORE, + dtype=torch.float32, + device=inference_state["device"], + ), + } + empty_mask_ptr = None + for obj_idx in range(batch_size): + obj_temp_output_dict = inference_state["temp_output_dict_per_obj"][obj_idx] + obj_output_dict = inference_state["output_dict_per_obj"][obj_idx] + out = obj_temp_output_dict[storage_key].get(frame_idx, None) + # If the object doesn't appear in "temp_output_dict_per_obj" on this frame, + # we fall back and look up its previous output in "output_dict_per_obj". + # We look up both "cond_frame_outputs" and "non_cond_frame_outputs" in + # "output_dict_per_obj" to find a previous output for this object. + if out is None: + out = obj_output_dict["cond_frame_outputs"].get(frame_idx, None) + if out is None: + out = obj_output_dict["non_cond_frame_outputs"].get(frame_idx, None) + # If the object doesn't appear in "output_dict_per_obj" either, we skip it + # and leave its mask scores to the default scores (i.e. the NO_OBJ_SCORE + # placeholder above) and set its object pointer to be a dummy pointer. + if out is None: + # Fill in dummy object pointers for those objects without any inputs or + # tracking outcomes on this frame (only do it under `run_mem_encoder=True`, + # i.e. when we need to build the memory for tracking). + if run_mem_encoder: + if empty_mask_ptr is None: + empty_mask_ptr = self._get_empty_mask_ptr( + inference_state, frame_idx + ) + # fill object pointer with a dummy pointer (based on an empty mask) + consolidated_out["obj_ptr"][obj_idx : obj_idx + 1] = empty_mask_ptr + continue + # Add the temporary object output mask to consolidated output mask + obj_mask = out["pred_masks"] + consolidated_pred_masks = consolidated_out[consolidated_mask_key] + if obj_mask.shape[-2:] == consolidated_pred_masks.shape[-2:]: + consolidated_pred_masks[obj_idx : obj_idx + 1] = obj_mask + else: + # Resize first if temporary object mask has a different resolution + resized_obj_mask = torch.nn.functional.interpolate( + obj_mask, + size=consolidated_pred_masks.shape[-2:], + mode="bilinear", + align_corners=False, + ) + consolidated_pred_masks[obj_idx : obj_idx + 1] = resized_obj_mask + consolidated_out["obj_ptr"][obj_idx : obj_idx + 1] = out["obj_ptr"] + + # Optionally, apply non-overlapping constraints on the consolidated scores + # and rerun the memory encoder + if run_mem_encoder: + device = inference_state["device"] + high_res_masks = torch.nn.functional.interpolate( + consolidated_out["pred_masks"].to(device, non_blocking=True), + size=(self.image_size, self.image_size), + mode="bilinear", + align_corners=False, + ) + if self.non_overlap_masks_for_mem_enc: + high_res_masks = self._apply_non_overlapping_constraints(high_res_masks) + maskmem_features, maskmem_pos_enc = self._run_memory_encoder( + inference_state=inference_state, + frame_idx=frame_idx, + batch_size=batch_size, + high_res_masks=high_res_masks, + is_mask_from_pts=True, # these frames are what the user interacted with + ) + consolidated_out["maskmem_features"] = maskmem_features + consolidated_out["maskmem_pos_enc"] = maskmem_pos_enc + + return consolidated_out + + def _get_empty_mask_ptr(self, inference_state, frame_idx): + """Get a dummy object pointer based on an empty mask on the current frame.""" + # A dummy (empty) mask with a single object + batch_size = 1 + mask_inputs = torch.zeros( + (batch_size, 1, self.image_size, self.image_size), + dtype=torch.float32, + device=inference_state["device"], + ) + + # Retrieve correct image features + ( + _, + _, + current_vision_feats, + current_vision_pos_embeds, + feat_sizes, + ) = self._get_image_feature(inference_state, frame_idx, batch_size) + + # Feed the empty mask and image feature above to get a dummy object pointer + current_out = self.track_step( + frame_idx=frame_idx, + is_init_cond_frame=True, + current_vision_feats=current_vision_feats, + current_vision_pos_embeds=current_vision_pos_embeds, + feat_sizes=feat_sizes, + point_inputs=None, + mask_inputs=mask_inputs, + output_dict={}, + num_frames=inference_state["num_frames"], + track_in_reverse=False, + run_mem_encoder=False, + prev_sam_mask_logits=None, + ) + return current_out["obj_ptr"] + + @torch.inference_mode() + def propagate_in_video_preflight(self, inference_state): + """Prepare inference_state and consolidate temporary outputs before tracking.""" + # Tracking has started and we don't allow adding new objects until session is reset. + inference_state["tracking_has_started"] = True + batch_size = self._get_obj_num(inference_state) + + # Consolidate per-object temporary outputs in "temp_output_dict_per_obj" and + # add them into "output_dict". + temp_output_dict_per_obj = inference_state["temp_output_dict_per_obj"] + output_dict = inference_state["output_dict"] + # "consolidated_frame_inds" contains indices of those frames where consolidated + # temporary outputs have been added (either in this call or any previous calls + # to `propagate_in_video_preflight`). + consolidated_frame_inds = inference_state["consolidated_frame_inds"] + for is_cond in [False, True]: + # Separately consolidate conditioning and non-conditioning temp outptus + storage_key = "cond_frame_outputs" if is_cond else "non_cond_frame_outputs" + # Find all the frames that contain temporary outputs for any objects + # (these should be the frames that have just received clicks for mask inputs + # via `add_new_points` or `add_new_mask`) + temp_frame_inds = set() + for obj_temp_output_dict in temp_output_dict_per_obj.values(): + temp_frame_inds.update(obj_temp_output_dict[storage_key].keys()) + consolidated_frame_inds[storage_key].update(temp_frame_inds) + # consolidate the temprary output across all objects on this frame + for frame_idx in temp_frame_inds: + consolidated_out = self._consolidate_temp_output_across_obj( + inference_state, frame_idx, is_cond=is_cond, run_mem_encoder=True + ) + # merge them into "output_dict" and also create per-object slices + output_dict[storage_key][frame_idx] = consolidated_out + self._add_output_per_object( + inference_state, frame_idx, consolidated_out, storage_key + ) + clear_non_cond_mem = self.clear_non_cond_mem_around_input and ( + self.clear_non_cond_mem_for_multi_obj or batch_size <= 1 + ) + if clear_non_cond_mem: + # clear non-conditioning memory of the surrounding frames + self._clear_non_cond_mem_around_input(inference_state, frame_idx) + + # clear temporary outputs in `temp_output_dict_per_obj` + for obj_temp_output_dict in temp_output_dict_per_obj.values(): + obj_temp_output_dict[storage_key].clear() + + # edge case: if an output is added to "cond_frame_outputs", we remove any prior + # output on the same frame in "non_cond_frame_outputs" + for frame_idx in output_dict["cond_frame_outputs"]: + output_dict["non_cond_frame_outputs"].pop(frame_idx, None) + for obj_output_dict in inference_state["output_dict_per_obj"].values(): + for frame_idx in obj_output_dict["cond_frame_outputs"]: + obj_output_dict["non_cond_frame_outputs"].pop(frame_idx, None) + for frame_idx in consolidated_frame_inds["cond_frame_outputs"]: + assert frame_idx in output_dict["cond_frame_outputs"] + consolidated_frame_inds["non_cond_frame_outputs"].discard(frame_idx) + + # Make sure that the frame indices in "consolidated_frame_inds" are exactly those frames + # with either points or mask inputs (which should be true under a correct workflow). + all_consolidated_frame_inds = ( + consolidated_frame_inds["cond_frame_outputs"] + | consolidated_frame_inds["non_cond_frame_outputs"] + ) + input_frames_inds = set() + for point_inputs_per_frame in inference_state["point_inputs_per_obj"].values(): + input_frames_inds.update(point_inputs_per_frame.keys()) + for mask_inputs_per_frame in inference_state["mask_inputs_per_obj"].values(): + input_frames_inds.update(mask_inputs_per_frame.keys()) + assert all_consolidated_frame_inds == input_frames_inds + + @torch.inference_mode() + def propagate_in_video( + self, + inference_state, + start_frame_idx=None, + max_frame_num_to_track=None, + reverse=False, + ): + """Propagate the input points across frames to track in the entire video.""" + self.propagate_in_video_preflight(inference_state) + + output_dict = inference_state["output_dict"] + consolidated_frame_inds = inference_state["consolidated_frame_inds"] + obj_ids = inference_state["obj_ids"] + num_frames = inference_state["num_frames"] + batch_size = self._get_obj_num(inference_state) + if len(output_dict["cond_frame_outputs"]) == 0: + raise RuntimeError("No points are provided; please add points first") + clear_non_cond_mem = self.clear_non_cond_mem_around_input and ( + self.clear_non_cond_mem_for_multi_obj or batch_size <= 1 + ) + + # set start index, end index, and processing order + if start_frame_idx is None: + # default: start from the earliest frame with input points + start_frame_idx = min(output_dict["cond_frame_outputs"]) + if max_frame_num_to_track is None: + # default: track all the frames in the video + max_frame_num_to_track = num_frames + if reverse: + end_frame_idx = max(start_frame_idx - max_frame_num_to_track, 0) + if start_frame_idx > 0: + processing_order = range(start_frame_idx, end_frame_idx - 1, -1) + else: + processing_order = [] # skip reverse tracking if starting from frame 0 + else: + end_frame_idx = min( + start_frame_idx + max_frame_num_to_track, num_frames - 1 + ) + processing_order = range(start_frame_idx, end_frame_idx + 1) + + for frame_idx in tqdm(processing_order, desc="propagate in video"): + # We skip those frames already in consolidated outputs (these are frames + # that received input clicks or mask). Note that we cannot directly run + # batched forward on them via `_run_single_frame_inference` because the + # number of clicks on each object might be different. + if frame_idx in consolidated_frame_inds["cond_frame_outputs"]: + storage_key = "cond_frame_outputs" + current_out = output_dict[storage_key][frame_idx] + pred_masks = current_out["pred_masks"] + if clear_non_cond_mem: + # clear non-conditioning memory of the surrounding frames + self._clear_non_cond_mem_around_input(inference_state, frame_idx) + elif frame_idx in consolidated_frame_inds["non_cond_frame_outputs"]: + storage_key = "non_cond_frame_outputs" + current_out = output_dict[storage_key][frame_idx] + pred_masks = current_out["pred_masks"] + else: + storage_key = "non_cond_frame_outputs" + current_out, pred_masks = self._run_single_frame_inference( + inference_state=inference_state, + output_dict=output_dict, + frame_idx=frame_idx, + batch_size=batch_size, + is_init_cond_frame=False, + point_inputs=None, + mask_inputs=None, + reverse=reverse, + run_mem_encoder=True, + ) + output_dict[storage_key][frame_idx] = current_out + # Create slices of per-object outputs for subsequent interaction with each + # individual object after tracking. + self._add_output_per_object( + inference_state, frame_idx, current_out, storage_key + ) + inference_state["frames_already_tracked"][frame_idx] = {"reverse": reverse} + + # Resize the output mask to the original video resolution (we directly use + # the mask scores on GPU for output to avoid any CPU conversion in between) + _, video_res_masks = self._get_orig_video_res_output( + inference_state, pred_masks + ) + yield frame_idx, obj_ids, video_res_masks + + def _add_output_per_object( + self, inference_state, frame_idx, current_out, storage_key + ): + """ + Split a multi-object output into per-object output slices and add them into + `output_dict_per_obj`. The resulting slices share the same tensor storage. + """ + maskmem_features = current_out["maskmem_features"] + assert maskmem_features is None or isinstance(maskmem_features, torch.Tensor) + + maskmem_pos_enc = current_out["maskmem_pos_enc"] + assert maskmem_pos_enc is None or isinstance(maskmem_pos_enc, list) + + output_dict_per_obj = inference_state["output_dict_per_obj"] + for obj_idx, obj_output_dict in output_dict_per_obj.items(): + obj_slice = slice(obj_idx, obj_idx + 1) + obj_out = { + "maskmem_features": None, + "maskmem_pos_enc": None, + "pred_masks": current_out["pred_masks"][obj_slice], + "obj_ptr": current_out["obj_ptr"][obj_slice], + } + if maskmem_features is not None: + obj_out["maskmem_features"] = maskmem_features[obj_slice] + if maskmem_pos_enc is not None: + obj_out["maskmem_pos_enc"] = [x[obj_slice] for x in maskmem_pos_enc] + obj_output_dict[storage_key][frame_idx] = obj_out + + @torch.inference_mode() + def reset_state(self, inference_state): + """Remove all input points or mask in all frames throughout the video.""" + self._reset_tracking_results(inference_state) + # Remove all object ids + inference_state["obj_id_to_idx"].clear() + inference_state["obj_idx_to_id"].clear() + inference_state["obj_ids"].clear() + inference_state["point_inputs_per_obj"].clear() + inference_state["mask_inputs_per_obj"].clear() + inference_state["output_dict_per_obj"].clear() + inference_state["temp_output_dict_per_obj"].clear() + + def _reset_tracking_results(self, inference_state): + """Reset all tracking inputs and results across the videos.""" + for v in inference_state["point_inputs_per_obj"].values(): + v.clear() + for v in inference_state["mask_inputs_per_obj"].values(): + v.clear() + for v in inference_state["output_dict_per_obj"].values(): + v["cond_frame_outputs"].clear() + v["non_cond_frame_outputs"].clear() + for v in inference_state["temp_output_dict_per_obj"].values(): + v["cond_frame_outputs"].clear() + v["non_cond_frame_outputs"].clear() + inference_state["output_dict"]["cond_frame_outputs"].clear() + inference_state["output_dict"]["non_cond_frame_outputs"].clear() + inference_state["consolidated_frame_inds"]["cond_frame_outputs"].clear() + inference_state["consolidated_frame_inds"]["non_cond_frame_outputs"].clear() + inference_state["tracking_has_started"] = False + inference_state["frames_already_tracked"].clear() + + def _get_image_feature(self, inference_state, frame_idx, batch_size): + """Compute the image features on a given frame.""" + # Look up in the cache first + image, backbone_out = inference_state["cached_features"].get( + frame_idx, (None, None) + ) + if backbone_out is None: + # Cache miss -- we will run inference on a single image + image = inference_state["images"][frame_idx].to(inference_state["device"]).float().unsqueeze(0) + backbone_out = self.forward_image(image) + # Cache the most recent frame's feature (for repeated interactions with + # a frame; we can use an LRU cache for more frames in the future). + inference_state["cached_features"] = {frame_idx: (image, backbone_out)} + + # expand the features to have the same dimension as the number of objects + expanded_image = image.expand(batch_size, -1, -1, -1) + expanded_backbone_out = { + "backbone_fpn": backbone_out["backbone_fpn"].copy(), + "vision_pos_enc": backbone_out["vision_pos_enc"].copy(), + } + for i, feat in enumerate(expanded_backbone_out["backbone_fpn"]): + expanded_backbone_out["backbone_fpn"][i] = feat.expand( + batch_size, -1, -1, -1 + ) + for i, pos in enumerate(expanded_backbone_out["vision_pos_enc"]): + pos = pos.expand(batch_size, -1, -1, -1) + expanded_backbone_out["vision_pos_enc"][i] = pos + + features = self._prepare_backbone_features(expanded_backbone_out) + features = (expanded_image,) + features + return features + + def _run_single_frame_inference( + self, + inference_state, + output_dict, + frame_idx, + batch_size, + is_init_cond_frame, + point_inputs, + mask_inputs, + reverse, + run_mem_encoder, + prev_sam_mask_logits=None, + ): + """Run tracking on a single frame based on current inputs and previous memory.""" + # Retrieve correct image features + ( + _, + _, + current_vision_feats, + current_vision_pos_embeds, + feat_sizes, + ) = self._get_image_feature(inference_state, frame_idx, batch_size) + + # point and mask should not appear as input simultaneously on the same frame + assert point_inputs is None or mask_inputs is None + current_out = self.track_step( + frame_idx=frame_idx, + is_init_cond_frame=is_init_cond_frame, + current_vision_feats=current_vision_feats, + current_vision_pos_embeds=current_vision_pos_embeds, + feat_sizes=feat_sizes, + point_inputs=point_inputs, + mask_inputs=mask_inputs, + output_dict=output_dict, + num_frames=inference_state["num_frames"], + track_in_reverse=reverse, + run_mem_encoder=run_mem_encoder, + prev_sam_mask_logits=prev_sam_mask_logits, + ) + + # optionally offload the output to CPU memory to save GPU space + storage_device = inference_state["storage_device"] + maskmem_features = current_out["maskmem_features"] + if maskmem_features is not None: + maskmem_features = maskmem_features.to(torch.bfloat16) + maskmem_features = maskmem_features.to(storage_device, non_blocking=True) + pred_masks_gpu = current_out["pred_masks"] + # potentially fill holes in the predicted masks + if self.fill_hole_area > 0: + pred_masks_gpu = fill_holes_in_mask_scores( + pred_masks_gpu, self.fill_hole_area + ) + pred_masks = pred_masks_gpu.to(storage_device, non_blocking=True) + # "maskmem_pos_enc" is the same across frames, so we only need to store one copy of it + maskmem_pos_enc = self._get_maskmem_pos_enc(inference_state, current_out) + # object pointer is a small tensor, so we always keep it on GPU memory for fast access + obj_ptr = current_out["obj_ptr"] + # make a compact version of this frame's output to reduce the state size + compact_current_out = { + "maskmem_features": maskmem_features, + "maskmem_pos_enc": maskmem_pos_enc, + "pred_masks": pred_masks, + "obj_ptr": obj_ptr, + } + return compact_current_out, pred_masks_gpu + + def _run_memory_encoder( + self, inference_state, frame_idx, batch_size, high_res_masks, is_mask_from_pts + ): + """ + Run the memory encoder on `high_res_masks`. This is usually after applying + non-overlapping constraints to object scores. Since their scores changed, their + memory also need to be computed again with the memory encoder. + """ + # Retrieve correct image features + _, _, current_vision_feats, _, feat_sizes = self._get_image_feature( + inference_state, frame_idx, batch_size + ) + maskmem_features, maskmem_pos_enc = self._encode_new_memory( + current_vision_feats=current_vision_feats, + feat_sizes=feat_sizes, + pred_masks_high_res=high_res_masks, + is_mask_from_pts=is_mask_from_pts, + ) + + # optionally offload the output to CPU memory to save GPU space + storage_device = inference_state["storage_device"] + maskmem_features = maskmem_features.to(torch.bfloat16) + maskmem_features = maskmem_features.to(storage_device, non_blocking=True) + # "maskmem_pos_enc" is the same across frames, so we only need to store one copy of it + maskmem_pos_enc = self._get_maskmem_pos_enc( + inference_state, {"maskmem_pos_enc": maskmem_pos_enc} + ) + return maskmem_features, maskmem_pos_enc + + def _get_maskmem_pos_enc(self, inference_state, current_out): + """ + `maskmem_pos_enc` is the same across frames and objects, so we cache it as + a constant in the inference session to reduce session storage size. + """ + model_constants = inference_state["constants"] + # "out_maskmem_pos_enc" should be either a list of tensors or None + out_maskmem_pos_enc = current_out["maskmem_pos_enc"] + if out_maskmem_pos_enc is not None: + if "maskmem_pos_enc" not in model_constants: + assert isinstance(out_maskmem_pos_enc, list) + # only take the slice for one object, since it's same across objects + maskmem_pos_enc = [x[0:1].clone() for x in out_maskmem_pos_enc] + model_constants["maskmem_pos_enc"] = maskmem_pos_enc + else: + maskmem_pos_enc = model_constants["maskmem_pos_enc"] + # expand the cached maskmem_pos_enc to the actual batch size + batch_size = out_maskmem_pos_enc[0].size(0) + expanded_maskmem_pos_enc = [ + x.expand(batch_size, -1, -1, -1) for x in maskmem_pos_enc + ] + else: + expanded_maskmem_pos_enc = None + return expanded_maskmem_pos_enc + + def _clear_non_cond_mem_around_input(self, inference_state, frame_idx): + """ + Remove the non-conditioning memory around the input frame. When users provide + correction clicks, the surrounding frames' non-conditioning memories can still + contain outdated object appearance information and could confuse the model. + + This method clears those non-conditioning memories surrounding the interacted + frame to avoid giving the model both old and new information about the object. + """ + r = self.memory_temporal_stride_for_eval + frame_idx_begin = frame_idx - r * self.num_maskmem + frame_idx_end = frame_idx + r * self.num_maskmem + output_dict = inference_state["output_dict"] + non_cond_frame_outputs = output_dict["non_cond_frame_outputs"] + for t in range(frame_idx_begin, frame_idx_end + 1): + non_cond_frame_outputs.pop(t, None) + for obj_output_dict in inference_state["output_dict_per_obj"].values(): + obj_output_dict["non_cond_frame_outputs"].pop(t, None) diff --git a/py/sam2/utils/__init__.py b/py/sam2/utils/__init__.py new file mode 100644 index 00000000..5277f461 --- /dev/null +++ b/py/sam2/utils/__init__.py @@ -0,0 +1,5 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. diff --git a/py/sam2/utils/amg.py b/py/sam2/utils/amg.py new file mode 100644 index 00000000..98684296 --- /dev/null +++ b/py/sam2/utils/amg.py @@ -0,0 +1,348 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import math +from copy import deepcopy +from itertools import product +from typing import Any, Dict, Generator, ItemsView, List, Tuple + +import numpy as np +import torch + +# Very lightly adapted from https://github.com/facebookresearch/segment-anything/blob/main/segment_anything/utils/amg.py + + +class MaskData: + """ + A structure for storing masks and their related data in batched format. + Implements basic filtering and concatenation. + """ + + def __init__(self, **kwargs) -> None: + for v in kwargs.values(): + assert isinstance( + v, (list, np.ndarray, torch.Tensor) + ), "MaskData only supports list, numpy arrays, and torch tensors." + self._stats = dict(**kwargs) + + def __setitem__(self, key: str, item: Any) -> None: + assert isinstance( + item, (list, np.ndarray, torch.Tensor) + ), "MaskData only supports list, numpy arrays, and torch tensors." + self._stats[key] = item + + def __delitem__(self, key: str) -> None: + del self._stats[key] + + def __getitem__(self, key: str) -> Any: + return self._stats[key] + + def items(self) -> ItemsView[str, Any]: + return self._stats.items() + + def filter(self, keep: torch.Tensor) -> None: + for k, v in self._stats.items(): + if v is None: + self._stats[k] = None + elif isinstance(v, torch.Tensor): + self._stats[k] = v[torch.as_tensor(keep, device=v.device)] + elif isinstance(v, np.ndarray): + self._stats[k] = v[keep.detach().cpu().numpy()] + elif isinstance(v, list) and keep.dtype == torch.bool: + self._stats[k] = [a for i, a in enumerate(v) if keep[i]] + elif isinstance(v, list): + self._stats[k] = [v[i] for i in keep] + else: + raise TypeError(f"MaskData key {k} has an unsupported type {type(v)}.") + + def cat(self, new_stats: "MaskData") -> None: + for k, v in new_stats.items(): + if k not in self._stats or self._stats[k] is None: + self._stats[k] = deepcopy(v) + elif isinstance(v, torch.Tensor): + self._stats[k] = torch.cat([self._stats[k], v], dim=0) + elif isinstance(v, np.ndarray): + self._stats[k] = np.concatenate([self._stats[k], v], axis=0) + elif isinstance(v, list): + self._stats[k] = self._stats[k] + deepcopy(v) + else: + raise TypeError(f"MaskData key {k} has an unsupported type {type(v)}.") + + def to_numpy(self) -> None: + for k, v in self._stats.items(): + if isinstance(v, torch.Tensor): + self._stats[k] = v.float().detach().cpu().numpy() + + +def is_box_near_crop_edge( + boxes: torch.Tensor, crop_box: List[int], orig_box: List[int], atol: float = 20.0 +) -> torch.Tensor: + """Filter masks at the edge of a crop, but not at the edge of the original image.""" + crop_box_torch = torch.as_tensor(crop_box, dtype=torch.float, device=boxes.device) + orig_box_torch = torch.as_tensor(orig_box, dtype=torch.float, device=boxes.device) + boxes = uncrop_boxes_xyxy(boxes, crop_box).float() + near_crop_edge = torch.isclose(boxes, crop_box_torch[None, :], atol=atol, rtol=0) + near_image_edge = torch.isclose(boxes, orig_box_torch[None, :], atol=atol, rtol=0) + near_crop_edge = torch.logical_and(near_crop_edge, ~near_image_edge) + return torch.any(near_crop_edge, dim=1) + + +def box_xyxy_to_xywh(box_xyxy: torch.Tensor) -> torch.Tensor: + box_xywh = deepcopy(box_xyxy) + box_xywh[2] = box_xywh[2] - box_xywh[0] + box_xywh[3] = box_xywh[3] - box_xywh[1] + return box_xywh + + +def batch_iterator(batch_size: int, *args) -> Generator[List[Any], None, None]: + assert len(args) > 0 and all( + len(a) == len(args[0]) for a in args + ), "Batched iteration must have inputs of all the same size." + n_batches = len(args[0]) // batch_size + int(len(args[0]) % batch_size != 0) + for b in range(n_batches): + yield [arg[b * batch_size : (b + 1) * batch_size] for arg in args] + + +def mask_to_rle_pytorch(tensor: torch.Tensor) -> List[Dict[str, Any]]: + """ + Encodes masks to an uncompressed RLE, in the format expected by + pycoco tools. + """ + # Put in fortran order and flatten h,w + b, h, w = tensor.shape + tensor = tensor.permute(0, 2, 1).flatten(1) + + # Compute change indices + diff = tensor[:, 1:] ^ tensor[:, :-1] + change_indices = diff.nonzero() + + # Encode run length + out = [] + for i in range(b): + cur_idxs = change_indices[change_indices[:, 0] == i, 1] + cur_idxs = torch.cat( + [ + torch.tensor([0], dtype=cur_idxs.dtype, device=cur_idxs.device), + cur_idxs + 1, + torch.tensor([h * w], dtype=cur_idxs.dtype, device=cur_idxs.device), + ] + ) + btw_idxs = cur_idxs[1:] - cur_idxs[:-1] + counts = [] if tensor[i, 0] == 0 else [0] + counts.extend(btw_idxs.detach().cpu().tolist()) + out.append({"size": [h, w], "counts": counts}) + return out + + +def rle_to_mask(rle: Dict[str, Any]) -> np.ndarray: + """Compute a binary mask from an uncompressed RLE.""" + h, w = rle["size"] + mask = np.empty(h * w, dtype=bool) + idx = 0 + parity = False + for count in rle["counts"]: + mask[idx : idx + count] = parity + idx += count + parity ^= True + mask = mask.reshape(w, h) + return mask.transpose() # Put in C order + + +def area_from_rle(rle: Dict[str, Any]) -> int: + return sum(rle["counts"][1::2]) + + +def calculate_stability_score( + masks: torch.Tensor, mask_threshold: float, threshold_offset: float +) -> torch.Tensor: + """ + Computes the stability score for a batch of masks. The stability + score is the IoU between the binary masks obtained by thresholding + the predicted mask logits at high and low values. + """ + # One mask is always contained inside the other. + # Save memory by preventing unnecessary cast to torch.int64 + intersections = ( + (masks > (mask_threshold + threshold_offset)) + .sum(-1, dtype=torch.int16) + .sum(-1, dtype=torch.int32) + ) + unions = ( + (masks > (mask_threshold - threshold_offset)) + .sum(-1, dtype=torch.int16) + .sum(-1, dtype=torch.int32) + ) + return intersections / unions + + +def build_point_grid(n_per_side: int) -> np.ndarray: + """Generates a 2D grid of points evenly spaced in [0,1]x[0,1].""" + offset = 1 / (2 * n_per_side) + points_one_side = np.linspace(offset, 1 - offset, n_per_side) + points_x = np.tile(points_one_side[None, :], (n_per_side, 1)) + points_y = np.tile(points_one_side[:, None], (1, n_per_side)) + points = np.stack([points_x, points_y], axis=-1).reshape(-1, 2) + return points + + +def build_all_layer_point_grids( + n_per_side: int, n_layers: int, scale_per_layer: int +) -> List[np.ndarray]: + """Generates point grids for all crop layers.""" + points_by_layer = [] + for i in range(n_layers + 1): + n_points = int(n_per_side / (scale_per_layer**i)) + points_by_layer.append(build_point_grid(n_points)) + return points_by_layer + + +def generate_crop_boxes( + im_size: Tuple[int, ...], n_layers: int, overlap_ratio: float +) -> Tuple[List[List[int]], List[int]]: + """ + Generates a list of crop boxes of different sizes. Each layer + has (2**i)**2 boxes for the ith layer. + """ + crop_boxes, layer_idxs = [], [] + im_h, im_w = im_size + short_side = min(im_h, im_w) + + # Original image + crop_boxes.append([0, 0, im_w, im_h]) + layer_idxs.append(0) + + def crop_len(orig_len, n_crops, overlap): + return int(math.ceil((overlap * (n_crops - 1) + orig_len) / n_crops)) + + for i_layer in range(n_layers): + n_crops_per_side = 2 ** (i_layer + 1) + overlap = int(overlap_ratio * short_side * (2 / n_crops_per_side)) + + crop_w = crop_len(im_w, n_crops_per_side, overlap) + crop_h = crop_len(im_h, n_crops_per_side, overlap) + + crop_box_x0 = [int((crop_w - overlap) * i) for i in range(n_crops_per_side)] + crop_box_y0 = [int((crop_h - overlap) * i) for i in range(n_crops_per_side)] + + # Crops in XYWH format + for x0, y0 in product(crop_box_x0, crop_box_y0): + box = [x0, y0, min(x0 + crop_w, im_w), min(y0 + crop_h, im_h)] + crop_boxes.append(box) + layer_idxs.append(i_layer + 1) + + return crop_boxes, layer_idxs + + +def uncrop_boxes_xyxy(boxes: torch.Tensor, crop_box: List[int]) -> torch.Tensor: + x0, y0, _, _ = crop_box + offset = torch.tensor([[x0, y0, x0, y0]], device=boxes.device) + # Check if boxes has a channel dimension + if len(boxes.shape) == 3: + offset = offset.unsqueeze(1) + return boxes + offset + + +def uncrop_points(points: torch.Tensor, crop_box: List[int]) -> torch.Tensor: + x0, y0, _, _ = crop_box + offset = torch.tensor([[x0, y0]], device=points.device) + # Check if points has a channel dimension + if len(points.shape) == 3: + offset = offset.unsqueeze(1) + return points + offset + + +def uncrop_masks( + masks: torch.Tensor, crop_box: List[int], orig_h: int, orig_w: int +) -> torch.Tensor: + x0, y0, x1, y1 = crop_box + if x0 == 0 and y0 == 0 and x1 == orig_w and y1 == orig_h: + return masks + # Coordinate transform masks + pad_x, pad_y = orig_w - (x1 - x0), orig_h - (y1 - y0) + pad = (x0, pad_x - x0, y0, pad_y - y0) + return torch.nn.functional.pad(masks, pad, value=0) + + +def remove_small_regions( + mask: np.ndarray, area_thresh: float, mode: str +) -> Tuple[np.ndarray, bool]: + """ + Removes small disconnected regions and holes in a mask. Returns the + mask and an indicator of if the mask has been modified. + """ + import cv2 # type: ignore + + assert mode in ["holes", "islands"] + correct_holes = mode == "holes" + working_mask = (correct_holes ^ mask).astype(np.uint8) + n_labels, regions, stats, _ = cv2.connectedComponentsWithStats(working_mask, 8) + sizes = stats[:, -1][1:] # Row 0 is background label + small_regions = [i + 1 for i, s in enumerate(sizes) if s < area_thresh] + if len(small_regions) == 0: + return mask, False + fill_labels = [0] + small_regions + if not correct_holes: + fill_labels = [i for i in range(n_labels) if i not in fill_labels] + # If every region is below threshold, keep largest + if len(fill_labels) == 0: + fill_labels = [int(np.argmax(sizes)) + 1] + mask = np.isin(regions, fill_labels) + return mask, True + + +def coco_encode_rle(uncompressed_rle: Dict[str, Any]) -> Dict[str, Any]: + from pycocotools import mask as mask_utils # type: ignore + + h, w = uncompressed_rle["size"] + rle = mask_utils.frPyObjects(uncompressed_rle, h, w) + rle["counts"] = rle["counts"].decode("utf-8") # Necessary to serialize with json + return rle + + +def batched_mask_to_box(masks: torch.Tensor) -> torch.Tensor: + """ + Calculates boxes in XYXY format around masks. Return [0,0,0,0] for + an empty mask. For input shape C1xC2x...xHxW, the output shape is C1xC2x...x4. + """ + # torch.max below raises an error on empty inputs, just skip in this case + if torch.numel(masks) == 0: + return torch.zeros(*masks.shape[:-2], 4, device=masks.device) + + # Normalize shape to CxHxW + shape = masks.shape + h, w = shape[-2:] + if len(shape) > 2: + masks = masks.flatten(0, -3) + else: + masks = masks.unsqueeze(0) + + # Get top and bottom edges + in_height, _ = torch.max(masks, dim=-1) + in_height_coords = in_height * torch.arange(h, device=in_height.device)[None, :] + bottom_edges, _ = torch.max(in_height_coords, dim=-1) + in_height_coords = in_height_coords + h * (~in_height) + top_edges, _ = torch.min(in_height_coords, dim=-1) + + # Get left and right edges + in_width, _ = torch.max(masks, dim=-2) + in_width_coords = in_width * torch.arange(w, device=in_width.device)[None, :] + right_edges, _ = torch.max(in_width_coords, dim=-1) + in_width_coords = in_width_coords + w * (~in_width) + left_edges, _ = torch.min(in_width_coords, dim=-1) + + # If the mask is empty the right edge will be to the left of the left edge. + # Replace these boxes with [0, 0, 0, 0] + empty_filter = (right_edges < left_edges) | (bottom_edges < top_edges) + out = torch.stack([left_edges, top_edges, right_edges, bottom_edges], dim=-1) + out = out * (~empty_filter).unsqueeze(-1) + + # Return to original shape + if len(shape) > 2: + out = out.reshape(*shape[:-2], 4) + else: + out = out[0] + + return out diff --git a/py/sam2/utils/misc.py b/py/sam2/utils/misc.py new file mode 100644 index 00000000..44877110 --- /dev/null +++ b/py/sam2/utils/misc.py @@ -0,0 +1,238 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import os +import warnings +from threading import Thread + +import numpy as np +import torch +from PIL import Image +from tqdm import tqdm +import platform + +def get_sdpa_settings(): + if torch.cuda.is_available(): + old_gpu = torch.cuda.get_device_properties(0).major < 7 + # only use Flash Attention on Ampere (8.0) or newer GPUs + use_flash_attn = torch.cuda.get_device_properties(0).major >= 8 and platform.system() == 'Linux' + if not use_flash_attn: + warnings.warn( + "Flash Attention is disabled as it requires a GPU with Ampere (8.0) CUDA capability.", + category=UserWarning, + stacklevel=2, + ) + # keep math kernel for PyTorch versions before 2.2 (Flash Attention v2 is only + # available on PyTorch 2.2+, while Flash Attention v1 cannot handle all cases) + pytorch_version = tuple(int(v) for v in torch.__version__.split(".")[:2]) + if pytorch_version < (2, 2): + warnings.warn( + f"You are using PyTorch {torch.__version__} without Flash Attention v2 support. " + "Consider upgrading to PyTorch 2.2+ for Flash Attention v2 (which could be faster).", + category=UserWarning, + stacklevel=2, + ) + math_kernel_on = pytorch_version < (2, 2) or not use_flash_attn + else: + old_gpu = True + use_flash_attn = False + math_kernel_on = True + + return old_gpu, use_flash_attn, math_kernel_on + + +def get_connected_components(mask): + """ + Get the connected components (8-connectivity) of binary masks of shape (N, 1, H, W). + + Inputs: + - mask: A binary mask tensor of shape (N, 1, H, W), where 1 is foreground and 0 is + background. + + Outputs: + - labels: A tensor of shape (N, 1, H, W) containing the connected component labels + for foreground pixels and 0 for background pixels. + - counts: A tensor of shape (N, 1, H, W) containing the area of the connected + components for foreground pixels and 0 for background pixels. + """ + from ...sam2 import _C + + return _C.get_connected_componnets(mask.to(torch.uint8).contiguous()) + + +def mask_to_box(masks: torch.Tensor): + """ + compute bounding box given an input mask + + Inputs: + - masks: [B, 1, H, W] boxes, dtype=torch.Tensor + + Returns: + - box_coords: [B, 1, 4], contains (x, y) coordinates of top left and bottom right box corners, dtype=torch.Tensor + """ + B, _, h, w = masks.shape + device = masks.device + xs = torch.arange(w, device=device, dtype=torch.int32) + ys = torch.arange(h, device=device, dtype=torch.int32) + grid_xs, grid_ys = torch.meshgrid(xs, ys, indexing="xy") + grid_xs = grid_xs[None, None, ...].expand(B, 1, h, w) + grid_ys = grid_ys[None, None, ...].expand(B, 1, h, w) + min_xs, _ = torch.min(torch.where(masks, grid_xs, w).flatten(-2), dim=-1) + max_xs, _ = torch.max(torch.where(masks, grid_xs, -1).flatten(-2), dim=-1) + min_ys, _ = torch.min(torch.where(masks, grid_ys, h).flatten(-2), dim=-1) + max_ys, _ = torch.max(torch.where(masks, grid_ys, -1).flatten(-2), dim=-1) + bbox_coords = torch.stack((min_xs, min_ys, max_xs, max_ys), dim=-1) + + return bbox_coords + + +def _load_img_as_tensor(img_path, image_size): + img_pil = Image.open(img_path) + img_np = np.array(img_pil.convert("RGB").resize((image_size, image_size))) + if img_np.dtype == np.uint8: # np.uint8 is expected for JPEG images + img_np = img_np / 255.0 + else: + raise RuntimeError(f"Unknown image dtype: {img_np.dtype} on {img_path}") + img = torch.from_numpy(img_np).permute(2, 0, 1) + video_width, video_height = img_pil.size # the original video size + return img, video_height, video_width + + +class AsyncVideoFrameLoader: + """ + A list of video frames to be load asynchronously without blocking session start. + """ + + def __init__(self, img_paths, image_size, offload_video_to_cpu, img_mean, img_std): + self.img_paths = img_paths + self.image_size = image_size + self.offload_video_to_cpu = offload_video_to_cpu + self.img_mean = img_mean + self.img_std = img_std + # items in `self._images` will be loaded asynchronously + self.images = [None] * len(img_paths) + # catch and raise any exceptions in the async loading thread + self.exception = None + # video_height and video_width be filled when loading the first image + self.video_height = None + self.video_width = None + + # load the first frame to fill video_height and video_width and also + # to cache it (since it's most likely where the user will click) + self.__getitem__(0) + + # load the rest of frames asynchronously without blocking the session start + def _load_frames(): + try: + for n in tqdm(range(len(self.images)), desc="frame loading (JPEG)"): + self.__getitem__(n) + except Exception as e: + self.exception = e + + self.thread = Thread(target=_load_frames, daemon=True) + self.thread.start() + + def __getitem__(self, index): + if self.exception is not None: + raise RuntimeError("Failure in frame loading thread") from self.exception + + img = self.images[index] + if img is not None: + return img + + img, video_height, video_width = _load_img_as_tensor( + self.img_paths[index], self.image_size + ) + self.video_height = video_height + self.video_width = video_width + # normalize by mean and std + img -= self.img_mean + img /= self.img_std + if not self.offload_video_to_cpu: + img = img.cuda(non_blocking=True) + self.images[index] = img + return img + + def __len__(self): + return len(self.images) + + +def load_video_frames( + video_path, + image_size, + offload_video_to_cpu, + img_mean=(0.485, 0.456, 0.406), + img_std=(0.229, 0.224, 0.225), + async_loading_frames=False, +): + """ + Load the video frames from a directory of JPEG files (".jpg" format). + + The frames are resized to image_size x image_size and are loaded to GPU if + `offload_video_to_cpu` is `False` and to CPU if `offload_video_to_cpu` is `True`. + + You can load a frame asynchronously by setting `async_loading_frames` to `True`. + """ + if isinstance(video_path, str) and os.path.isdir(video_path): + jpg_folder = video_path + else: + raise NotImplementedError("Only JPEG frames are supported at this moment") + + frame_names = [ + p + for p in os.listdir(jpg_folder) + if os.path.splitext(p)[-1] in [".jpg", ".jpeg", ".JPG", ".JPEG"] + ] + frame_names.sort(key=lambda p: int(os.path.splitext(p)[0])) + num_frames = len(frame_names) + if num_frames == 0: + raise RuntimeError(f"no images found in {jpg_folder}") + img_paths = [os.path.join(jpg_folder, frame_name) for frame_name in frame_names] + img_mean = torch.tensor(img_mean, dtype=torch.float32)[:, None, None] + img_std = torch.tensor(img_std, dtype=torch.float32)[:, None, None] + + if async_loading_frames: + lazy_images = AsyncVideoFrameLoader( + img_paths, image_size, offload_video_to_cpu, img_mean, img_std + ) + return lazy_images, lazy_images.video_height, lazy_images.video_width + + images = torch.zeros(num_frames, 3, image_size, image_size, dtype=torch.float32) + for n, img_path in enumerate(tqdm(img_paths, desc="frame loading (JPEG)")): + images[n], video_height, video_width = _load_img_as_tensor(img_path, image_size) + if not offload_video_to_cpu: + images = images.cuda() + img_mean = img_mean.cuda() + img_std = img_std.cuda() + # normalize by mean and std + images -= img_mean + images /= img_std + return images, video_height, video_width + + +def fill_holes_in_mask_scores(mask, max_area): + """ + A post processor to fill small holes in mask scores with area under `max_area`. + """ + # Holes are those connected components in background with area <= self.max_area + # (background regions are those with mask scores <= 0) + assert max_area > 0, "max_area must be positive" + labels, areas = get_connected_components(mask <= 0) + is_hole = (labels > 0) & (areas <= max_area) + # We fill holes with a small positive mask score (0.1) to change them to foreground. + mask = torch.where(is_hole, 0.1, mask) + return mask + + +def concat_points(old_point_inputs, new_points, new_labels): + """Add new points and labels to previous point inputs (add at the end).""" + if old_point_inputs is None: + points, labels = new_points, new_labels + else: + points = torch.cat([old_point_inputs["point_coords"], new_points], dim=1) + labels = torch.cat([old_point_inputs["point_labels"], new_labels], dim=1) + + return {"point_coords": points, "point_labels": labels} diff --git a/py/sam2/utils/transforms.py b/py/sam2/utils/transforms.py new file mode 100644 index 00000000..428a569b --- /dev/null +++ b/py/sam2/utils/transforms.py @@ -0,0 +1,106 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. + +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. + +import torch +import torch.nn as nn +import torch.nn.functional as F +from torchvision.transforms import Normalize, Resize, ToTensor + + +class SAM2Transforms(nn.Module): + def __init__( + self, resolution, mask_threshold, max_hole_area=0.0, max_sprinkle_area=0.0 + ): + """ + Transforms for SAM2. + """ + super().__init__() + self.resolution = resolution + self.mask_threshold = mask_threshold + self.max_hole_area = max_hole_area + self.max_sprinkle_area = max_sprinkle_area + self.mean = [0.485, 0.456, 0.406] + self.std = [0.229, 0.224, 0.225] + self.to_tensor = ToTensor() + try: + self.transforms = torch.jit.script( + nn.Sequential( + Resize((self.resolution, self.resolution)), + Normalize(self.mean, self.std), + ) + ) + except Exception as e: + print(f"Failed to torch jit script transforms: {e}, falling back to normal transforms") + self.transforms = nn.Sequential( + Resize((self.resolution, self.resolution)), + Normalize(self.mean, self.std), + ) + + def __call__(self, x): + x = self.to_tensor(x) + return self.transforms(x) + + def forward_batch(self, img_list): + img_batch = [self.transforms(self.to_tensor(img)) for img in img_list] + img_batch = torch.stack(img_batch, dim=0) + return img_batch + + def transform_coords( + self, coords: torch.Tensor, normalize=False, orig_hw=None + ) -> torch.Tensor: + """ + Expects a torch tensor with length 2 in the last dimension. The coordinates can be in absolute image or normalized coordinates, + If the coords are in absolute image coordinates, normalize should be set to True and original image size is required. + + Returns + Un-normalized coordinates in the range of [0, 1] which is expected by the SAM2 model. + """ + if normalize: + assert orig_hw is not None + h, w = orig_hw + coords = coords.clone() + coords[..., 0] = coords[..., 0] / w + coords[..., 1] = coords[..., 1] / h + + coords = coords * self.resolution # unnormalize coords + return coords + + def transform_boxes( + self, boxes: torch.Tensor, normalize=False, orig_hw=None + ) -> torch.Tensor: + """ + Expects a tensor of shape Bx4. The coordinates can be in absolute image or normalized coordinates, + if the coords are in absolute image coordinates, normalize should be set to True and original image size is required. + """ + boxes = self.transform_coords(boxes.reshape(-1, 2, 2), normalize, orig_hw) + return boxes + + def postprocess_masks(self, masks: torch.Tensor, orig_hw) -> torch.Tensor: + """ + Perform PostProcessing on output masks. + """ + #from ...sam2.utils.misc import get_connected_components + + masks = masks.float() + # if self.max_hole_area > 0: + # # Holes are those connected components in background with area <= self.fill_hole_area + # # (background regions are those with mask scores <= self.mask_threshold) + # mask_flat = masks.flatten(0, 1).unsqueeze(1) # flatten as 1-channel image + # labels, areas = get_connected_components(mask_flat <= self.mask_threshold) + # is_hole = (labels > 0) & (areas <= self.max_hole_area) + # is_hole = is_hole.reshape_as(masks) + # # We fill holes with a small positive mask score (10.0) to change them to foreground. + # masks = torch.where(is_hole, self.mask_threshold + 10.0, masks) + + # if self.max_sprinkle_area > 0: + # labels, areas = get_connected_components(mask_flat > self.mask_threshold) + # is_hole = (labels > 0) & (areas <= self.max_sprinkle_area) + # is_hole = is_hole.reshape_as(masks) + # # We fill holes with negative mask score (-10.0) to change them to background. + # masks = torch.where(is_hole, self.mask_threshold - 10.0, masks) + + masks = F.interpolate(masks, orig_hw, mode="bilinear", align_corners=False) + return masks diff --git a/py/sam_2_ultrl.py b/py/sam_2_ultrl.py new file mode 100644 index 00000000..22875e3b --- /dev/null +++ b/py/sam_2_ultrl.py @@ -0,0 +1,628 @@ +import cv2 +import torch +import yaml +import comfy.model_management as mm +from comfy.utils import ProgressBar +from comfy.utils import load_torch_file +from .imagefunc import * + +def bboxes2coordinates(bboxes:list) -> list: + coordinates = [] + for bbox in bboxes: + coordinates.append(((bbox[0]+bbox[2]) // 2, (bbox[1]+bbox[3]) // 2)) + return coordinates +def load_model(model_path, model_cfg_path, segmentor, dtype, device): + from .sam2.modeling.sam2_base import SAM2Base + from .sam2.modeling.backbones.image_encoder import ImageEncoder + from .sam2.modeling.backbones.hieradet import Hiera + from .sam2.modeling.backbones.image_encoder import FpnNeck + from .sam2.modeling.position_encoding import PositionEmbeddingSine + from .sam2.modeling.memory_attention import MemoryAttention, MemoryAttentionLayer + from .sam2.modeling.sam.transformer import RoPEAttention + from .sam2.modeling.memory_encoder import MemoryEncoder, MaskDownSampler, Fuser, CXBlock + from .sam2.sam2_image_predictor import SAM2ImagePredictor + from .sam2.sam2_video_predictor import SAM2VideoPredictor + from .sam2.automatic_mask_generator import SAM2AutomaticMaskGenerator + + # Load the YAML configuration + with open(model_cfg_path, 'r') as file: + config = yaml.safe_load(file) + + # Extract the model configuration + model_config = config['model'] + + # Instantiate the image encoder components + trunk_config = model_config['image_encoder']['trunk'] + neck_config = model_config['image_encoder']['neck'] + position_encoding_config = neck_config['position_encoding'] + + position_encoding = PositionEmbeddingSine( + num_pos_feats=position_encoding_config['num_pos_feats'], + normalize=position_encoding_config['normalize'], + scale=position_encoding_config['scale'], + temperature=position_encoding_config['temperature'] + ) + + neck = FpnNeck( + position_encoding=position_encoding, + d_model=neck_config['d_model'], + backbone_channel_list=neck_config['backbone_channel_list'], + fpn_top_down_levels=neck_config['fpn_top_down_levels'], + fpn_interp_model=neck_config['fpn_interp_model'] + ) + + trunk = Hiera( + embed_dim=trunk_config['embed_dim'], + num_heads=trunk_config['num_heads'], + stages=trunk_config['stages'], + global_att_blocks=trunk_config['global_att_blocks'], + window_pos_embed_bkg_spatial_size=trunk_config['window_pos_embed_bkg_spatial_size'] + + ) + + image_encoder = ImageEncoder( + scalp=model_config['image_encoder']['scalp'], + trunk=trunk, + neck=neck + ) + # Instantiate the memory attention components + memory_attention_layer_config = config['model']['memory_attention']['layer'] + self_attention_config = memory_attention_layer_config['self_attention'] + cross_attention_config = memory_attention_layer_config['cross_attention'] + + self_attention = RoPEAttention( + rope_theta=self_attention_config['rope_theta'], + feat_sizes=self_attention_config['feat_sizes'], + embedding_dim=self_attention_config['embedding_dim'], + num_heads=self_attention_config['num_heads'], + downsample_rate=self_attention_config['downsample_rate'], + dropout=self_attention_config['dropout'] + ) + + cross_attention = RoPEAttention( + rope_theta=cross_attention_config['rope_theta'], + feat_sizes=cross_attention_config['feat_sizes'], + rope_k_repeat=cross_attention_config['rope_k_repeat'], + embedding_dim=cross_attention_config['embedding_dim'], + num_heads=cross_attention_config['num_heads'], + downsample_rate=cross_attention_config['downsample_rate'], + dropout=cross_attention_config['dropout'], + kv_in_dim=cross_attention_config['kv_in_dim'] + ) + + memory_attention_layer = MemoryAttentionLayer( + activation=memory_attention_layer_config['activation'], + dim_feedforward=memory_attention_layer_config['dim_feedforward'], + dropout=memory_attention_layer_config['dropout'], + pos_enc_at_attn=memory_attention_layer_config['pos_enc_at_attn'], + self_attention=self_attention, + d_model=memory_attention_layer_config['d_model'], + pos_enc_at_cross_attn_keys=memory_attention_layer_config['pos_enc_at_cross_attn_keys'], + pos_enc_at_cross_attn_queries=memory_attention_layer_config['pos_enc_at_cross_attn_queries'], + cross_attention=cross_attention + ) + + memory_attention = MemoryAttention( + d_model=config['model']['memory_attention']['d_model'], + pos_enc_at_input=config['model']['memory_attention']['pos_enc_at_input'], + layer=memory_attention_layer, + num_layers=config['model']['memory_attention']['num_layers'] + ) + + # Instantiate the memory encoder components + memory_encoder_config = config['model']['memory_encoder'] + position_encoding_mem_enc_config = memory_encoder_config['position_encoding'] + mask_downsampler_config = memory_encoder_config['mask_downsampler'] + fuser_layer_config = memory_encoder_config['fuser']['layer'] + + position_encoding_mem_enc = PositionEmbeddingSine( + num_pos_feats=position_encoding_mem_enc_config['num_pos_feats'], + normalize=position_encoding_mem_enc_config['normalize'], + scale=position_encoding_mem_enc_config['scale'], + temperature=position_encoding_mem_enc_config['temperature'] + ) + + mask_downsampler = MaskDownSampler( + kernel_size=mask_downsampler_config['kernel_size'], + stride=mask_downsampler_config['stride'], + padding=mask_downsampler_config['padding'] + ) + + fuser_layer = CXBlock( + dim=fuser_layer_config['dim'], + kernel_size=fuser_layer_config['kernel_size'], + padding=fuser_layer_config['padding'], + layer_scale_init_value=float(fuser_layer_config['layer_scale_init_value']) + ) + fuser = Fuser( + num_layers=memory_encoder_config['fuser']['num_layers'], + layer=fuser_layer + ) + + memory_encoder = MemoryEncoder( + position_encoding=position_encoding_mem_enc, + mask_downsampler=mask_downsampler, + fuser=fuser, + out_dim=memory_encoder_config['out_dim'] + ) + + sam_mask_decoder_extra_args = { + "dynamic_multimask_via_stability": True, + "dynamic_multimask_stability_delta": 0.05, + "dynamic_multimask_stability_thresh": 0.98, + } + + def initialize_model(model_class, model_config, segmentor, image_encoder, memory_attention, memory_encoder, sam_mask_decoder_extra_args, dtype, device): + return model_class( + image_encoder=image_encoder, + memory_attention=memory_attention, + memory_encoder=memory_encoder, + sam_mask_decoder_extra_args=sam_mask_decoder_extra_args, + num_maskmem=model_config['num_maskmem'], + image_size=model_config['image_size'], + sigmoid_scale_for_mem_enc=model_config['sigmoid_scale_for_mem_enc'], + sigmoid_bias_for_mem_enc=model_config['sigmoid_bias_for_mem_enc'], + use_mask_input_as_output_without_sam=model_config['use_mask_input_as_output_without_sam'], + directly_add_no_mem_embed=model_config['directly_add_no_mem_embed'], + use_high_res_features_in_sam=model_config['use_high_res_features_in_sam'], + multimask_output_in_sam=model_config['multimask_output_in_sam'], + iou_prediction_use_sigmoid=model_config['iou_prediction_use_sigmoid'], + use_obj_ptrs_in_encoder=model_config['use_obj_ptrs_in_encoder'], + add_tpos_enc_to_obj_ptrs=model_config['add_tpos_enc_to_obj_ptrs'], + only_obj_ptrs_in_the_past_for_eval=model_config['only_obj_ptrs_in_the_past_for_eval'], + pred_obj_scores=model_config['pred_obj_scores'], + pred_obj_scores_mlp=model_config['pred_obj_scores_mlp'], + fixed_no_obj_ptr=model_config['fixed_no_obj_ptr'], + multimask_output_for_tracking=model_config['multimask_output_for_tracking'], + use_multimask_token_for_obj_ptr=model_config['use_multimask_token_for_obj_ptr'], + compile_image_encoder=model_config['compile_image_encoder'], + multimask_min_pt_num=model_config['multimask_min_pt_num'], + multimask_max_pt_num=model_config['multimask_max_pt_num'], + use_mlp_for_obj_ptr_proj=model_config['use_mlp_for_obj_ptr_proj'], + binarize_mask_from_pts_for_mem_enc=True if segmentor == 'video' else False, + ).to(dtype).to(device).eval() + + # Load the state dictionary + sd = load_torch_file(model_path) + + # Initialize model based on segmentor type + if segmentor == 'single_image': + model_class = SAM2Base + model = initialize_model(model_class, model_config, segmentor, image_encoder, memory_attention, memory_encoder, sam_mask_decoder_extra_args, dtype, device) + model.load_state_dict(sd) + model = SAM2ImagePredictor(model) + elif segmentor == 'video': + model_class = SAM2VideoPredictor + model = initialize_model(model_class, model_config, segmentor, image_encoder, memory_attention, memory_encoder, sam_mask_decoder_extra_args, dtype, device) + model.load_state_dict(sd) + elif segmentor == 'automaskgenerator': + model_class = SAM2Base + model = initialize_model(model_class, model_config, segmentor, image_encoder, memory_attention, memory_encoder, sam_mask_decoder_extra_args, dtype, device) + model.load_state_dict(sd) + model = SAM2AutomaticMaskGenerator(model) + else: + raise ValueError(f"Segmentor {segmentor} not supported") + return model + +class LS_SAM2_ULTRA: + + model_path = os.path.join(folder_paths.models_dir, 'sam2') + model_dict = get_files(model_path, ['safetensors']) + def __init__(self): + self.NODE_NAME = 'SAM2 Ultra' + pass + + @classmethod + def INPUT_TYPES(cls): + sam2_model_list = list(cls.model_dict.keys()) + model_precision_list = [ 'fp16','bf16','fp32'] + select_list = ["all", "first", "by_index"] + method_list = ['VITMatte', 'VITMatte(local)', 'PyMatting', 'GuidedFilter', ] + device_list = ['cuda','cpu'] + return { + "required": { + "image": ("IMAGE",), + "bboxes": ("BBOXES",), + "sam2_model": (sam2_model_list,), + "precision": (model_precision_list,), + "bbox_select": (select_list,), + "select_index": ("STRING", {"default": "0,"},), + "cache_model": ("BOOLEAN", {"default": False}), + "detail_method": (method_list,), + "detail_erode": ("INT", {"default": 6, "min": 1, "max": 255, "step": 1}), + "detail_dilate": ("INT", {"default": 4, "min": 1, "max": 255, "step": 1}), + "black_point": ("FLOAT", {"default": 0.15, "min": 0.01, "max": 0.98, "step": 0.01, "display": "slider"}), + "white_point": ("FLOAT", {"default": 0.99, "min": 0.02, "max": 0.99, "step": 0.01, "display": "slider"}), + "process_detail": ("BOOLEAN", {"default": True}), + "device": (device_list,), + "max_megapixels": ("FLOAT", {"default": 2.0, "min": 1, "max": 999, "step": 0.1}), + }, + "optional": { + } + } + + RETURN_TYPES = ("IMAGE", "MASK",) + RETURN_NAMES = ("image", "mask",) + FUNCTION = 'sam2_ultra' + CATEGORY = '😺dzNodes/LayerMask' + + def sam2_ultra(self, image, bboxes, sam2_model, precision, + bbox_select, select_index, cache_model, + detail_method, detail_erode, detail_dilate, black_point, white_point, + process_detail, device, max_megapixels, + ): + + ret_images = [] + ret_masks = [] + + # load model + sam2_path = os.path.join(folder_paths.models_dir, "sam2") + model_path = os.path.join(sam2_path, sam2_model) + if device == "cuda": + if torch.cuda.get_device_properties(0).major >= 8: + # turn on tfloat32 for Ampere GPUs (https://pytorch.org/docs/stable/notes/cuda.html#tensorfloat-32-tf32-on-ampere-devices) + torch.backends.cuda.matmul.allow_tf32 = True + torch.backends.cudnn.allow_tf32 = True + dtype = {"bf16": torch.bfloat16, "fp16": torch.float16, "fp32": torch.float32}[precision] + sam2_device = {"cuda": torch.device("cuda"), "cpu": torch.device("cpu")}[device] + segmentor = 'single_image' + model_mapping = { + "base": "sam2_hiera_b+.yaml", + "large": "sam2_hiera_l.yaml", + "small": "sam2_hiera_s.yaml", + "tiny": "sam2_hiera_t.yaml" + } + + model_cfg_path = next( + (os.path.join(os.path.dirname(os.path.abspath(__file__)), "sam2", "sam2_configs", cfg) for key, cfg in model_mapping.items() if key in sam2_model), + None + ) + + model = load_model(model_path, model_cfg_path, segmentor, dtype, sam2_device) + + offload_device = mm.unet_offload_device() + + B, H, W, C = image.shape + indexs = extract_numbers(select_index) + + # Handle possible bboxes + if len(bboxes) == 0: + log(f"{self.NODE_NAME} skipped, because bboxes is empty.", message_type='error') + return (image, None) + else: + boxes_np_batch = [] + for bbox_list in bboxes: + boxes_np = [] + for bbox in bbox_list: + boxes_np.append(bbox) + boxes_np = np.array(boxes_np) + boxes_np_batch.append(boxes_np) + if bbox_select == "all": + final_box = np.array(boxes_np_batch) + elif bbox_select == "by_index": + final_box = [] + try: + for i in indexs: + final_box.append(boxes_np_batch[i]) + except IndexError: + log(f"{self.NODE_NAME} invalid bbox index {i}", message_type='warning') + else: + final_box = np.array(boxes_np_batch[0]) + final_labels = None + + mask_list = [] + try: + model.to(sam2_device) + except: + model.model.to(sam2_device) + + autocast_condition = not mm.is_device_mps(sam2_device) + with torch.autocast(mm.get_autocast_device(sam2_device), dtype=dtype) if autocast_condition else nullcontext(): + + image_np = (image.contiguous() * 255).byte().numpy() + comfy_pbar = ProgressBar(len(image_np)) + tqdm_pbar = tqdm(total=len(image_np), desc="Processing Images") + for i in range(len(image_np)): + model.set_image(image_np[i]) + if bboxes is None: + input_box = None + else: + if len(image_np) > 1: + input_box = final_box[i] + input_box = final_box + + out_masks, scores, logits = model.predict( + point_coords=None, + point_labels=None, + box=input_box, + multimask_output=True, + mask_input=None, + ) + + if out_masks.ndim == 3: + sorted_ind = np.argsort(scores)[::-1] + out_masks = out_masks[sorted_ind][0] # choose only the best result for now + scores = scores[sorted_ind] + logits = logits[sorted_ind] + mask_list.append(np.expand_dims(out_masks, axis=0)) + else: + _, _, H, W = out_masks.shape + # Combine masks for all object IDs in the frame + combined_mask = np.zeros((H, W), dtype=bool) + for out_mask in out_masks: + combined_mask = np.logical_or(combined_mask, out_mask) + combined_mask = combined_mask.astype(np.uint8) + mask_list.append(combined_mask) + comfy_pbar.update(1) + tqdm_pbar.update(1) + + if cache_model: + try: + model.to(offload_device) + except: + model.model.to(offload_device) + else: + del model + clear_memory() + + out_list = [] + for mask in mask_list: + mask_tensor = torch.from_numpy(mask) + mask_tensor = mask_tensor.permute(1, 2, 0) + mask_tensor = mask_tensor[:, :, 0] + out_list.append(mask_tensor) + mask_tensor = torch.stack(out_list, dim=0).cpu().float() + _mask = mask_tensor.squeeze() + + if detail_method == 'VITMatte(local)': + local_files_only = True + else: + local_files_only = False + orig_image = tensor2pil(image[0]) + detail_range = detail_erode + detail_dilate + if process_detail: + if detail_method == 'GuidedFilter': + _mask = guided_filter_alpha(i, _mask, detail_range // 6 + 1) + _mask = tensor2pil(histogram_remap(_mask, black_point, white_point)) + elif detail_method == 'PyMatting': + _mask = tensor2pil(mask_edge_detail(i, _mask, detail_range // 8 + 1, black_point, white_point)) + else: + _trimap = generate_VITMatte_trimap(_mask, detail_erode, detail_dilate) + _mask = generate_VITMatte(orig_image, _trimap, local_files_only=local_files_only, device=device, + max_megapixels=max_megapixels) + _mask = tensor2pil(histogram_remap(pil2tensor(_mask), black_point, white_point)) + else: + _mask = mask2image(_mask) + + ret_image = RGB2RGBA(orig_image, _mask.convert('L')) + ret_images.append(pil2tensor(ret_image)) + ret_masks.append(image2mask(_mask)) + + log(f"{self.NODE_NAME} Processed {len(ret_images)} image(s).", message_type='finish') + return (torch.cat(ret_images, dim=0), torch.cat(ret_masks, dim=0)) + + +class LS_SAM2_VIDEO_ULTRA: + + model_path = os.path.join(folder_paths.models_dir, 'sam2') + model_dict = get_files(model_path, ['safetensors']) + def __init__(self): + self.NODE_NAME = 'SAM2 Video Ultra' + pass + + @classmethod + def INPUT_TYPES(cls): + sam2_model_list = list(cls.model_dict.keys()) + model_precision_list = ['fp16','bf16'] + method_list = ['VITMatte'] + device_list = ['cuda'] + return { + "required": { + "image": ("IMAGE",), + "bboxes": ("BBOXES",), + "sam2_model": (sam2_model_list,), + "precision": (model_precision_list,), + "cache_model": ("BOOLEAN", {"default": False}), + "individual_objects": ("BOOLEAN", {"default": False}), + "mask_preview_color": ("STRING", {"default": "#FF0080"},), + "detail_method": (method_list,), + "detail_erode": ("INT", {"default": 6, "min": 1, "max": 255, "step": 1}), + "detail_dilate": ("INT", {"default": 4, "min": 1, "max": 255, "step": 1}), + "black_point": ("FLOAT", {"default": 0.15, "min": 0.01, "max": 0.98, "step": 0.01, "display": "slider"}), + "white_point": ("FLOAT", {"default": 0.99, "min": 0.02, "max": 0.99, "step": 0.01, "display": "slider"}), + "process_detail": ("BOOLEAN", {"default": True}), + "device": (device_list,), + "max_megapixels": ("FLOAT", {"default": 0.5, "min": 0.1, "max": 10, "step": 0.1}), + }, + "optional": { + "pre_mask": ("MASK",), + } + } + + RETURN_TYPES = ("MASK","IMAGE") + RETURN_NAMES = ("mask","preview") + FUNCTION = 'sam2_video_ultra' + CATEGORY = '😺dzNodes/LayerMask' + + def sam2_video_ultra(self, image, bboxes, sam2_model, precision, + cache_model, individual_objects, mask_preview_color, + detail_method, detail_erode, detail_dilate, black_point, white_point, + process_detail, device, max_megapixels, + pre_mask=None + ): + + # load model + sam2_path = os.path.join(folder_paths.models_dir, "sam2") + model_path = os.path.join(sam2_path, sam2_model) + if device == "cuda": + if torch.cuda.get_device_properties(0).major >= 8: + # turn on tfloat32 for Ampere GPUs (https://pytorch.org/docs/stable/notes/cuda.html#tensorfloat-32-tf32-on-ampere-devices) + torch.backends.cuda.matmul.allow_tf32 = True + torch.backends.cudnn.allow_tf32 = True + dtype = {"bf16": torch.bfloat16, "fp16": torch.float16, "fp32": torch.float32}[precision] + sam2_device = {"cuda": torch.device("cuda"), "cpu": torch.device("cpu")}[device] + segmentor = 'video' + model_mapping = { + "base": "sam2_hiera_b+.yaml", + "large": "sam2_hiera_l.yaml", + "small": "sam2_hiera_s.yaml", + "tiny": "sam2_hiera_t.yaml" + } + + model_cfg_path = next( + (os.path.join(os.path.dirname(os.path.abspath(__file__)), "sam2", "sam2_configs", cfg) for key, cfg in model_mapping.items() if key in sam2_model), + None + ) + + model = load_model(model_path, model_cfg_path, segmentor, dtype, sam2_device) + + offload_device = mm.unet_offload_device() + + B, H, W, C = image.shape + + if pre_mask is not None: + input_mask = pre_mask.clone().unsqueeze(1) + input_mask = F.interpolate(input_mask, size=(256, 256), mode="bilinear") + input_mask = input_mask.squeeze(1) + + + model_input_image_size = model.image_size + from comfy.utils import common_upscale + resized_image = common_upscale(image.movedim(-1,1), model_input_image_size, model_input_image_size, "bilinear", "disabled").movedim(1,-1) + + # Handle possible bboxes + if len(bboxes) == 0: + log(f"{self.NODE_NAME} skipped, because bboxes is empty.", message_type='error') + return (image, None) + else: + coords = bboxes2coordinates(bboxes) + + if not individual_objects: + positive_point_coords = np.atleast_2d(np.array(coords)) + else: + positive_point_coords = np.array([np.atleast_2d(coord) for coord in coords]) + + if not individual_objects: + positive_point_labels = np.ones(len(positive_point_coords)) + else: + positive_labels = [] + for point in positive_point_coords: + positive_labels.append(np.array([1])) # 1) + positive_point_labels = np.stack(positive_labels, axis=0) + + final_coords = positive_point_coords + final_labels = positive_point_labels + try: + model.to(sam2_device) + except: + model.model.to(sam2_device) + + autocast_condition = not mm.is_device_mps(sam2_device) + with torch.autocast(mm.get_autocast_device(sam2_device), dtype=dtype) if autocast_condition else nullcontext(): + mask_list = [] + if hasattr(self, 'inference_state'): + model.reset_state(self.inference_state) + self.inference_state = model.init_state(resized_image.permute(0, 3, 1, 2).contiguous(), H, W, device=sam2_device) + + if individual_objects: + for i, (coord, label) in enumerate(zip(final_coords, final_labels)): + _, out_obj_ids, out_mask_logits = model.add_new_points( + inference_state=self.inference_state, + frame_idx=0, + obj_id=i, + points=final_coords[i], + labels=final_labels[i], + ) + else: + _, out_obj_ids, out_mask_logits = model.add_new_points( + inference_state=self.inference_state, + frame_idx=0, + obj_id=1, + points=final_coords, + labels=final_labels, + ) + + pbar = ProgressBar(B) + video_segments = {} + for out_frame_idx, out_obj_ids, out_mask_logits in model.propagate_in_video(self.inference_state): + video_segments[out_frame_idx] = { + out_obj_id: (out_mask_logits[i] > 0.0).cpu().numpy() + for i, out_obj_id in enumerate(out_obj_ids) + } + pbar.update(1) + if individual_objects: + _, _, H, W = out_mask_logits.shape + # Combine masks for all object IDs in the frame + combined_mask = np.zeros((H, W), dtype=np.uint8) + for i, out_obj_id in enumerate(out_obj_ids): + out_mask = (out_mask_logits[i] > 0.0).cpu().numpy() + combined_mask = np.logical_or(combined_mask, out_mask) + video_segments[out_frame_idx] = combined_mask + + if individual_objects: + for frame_idx, combined_mask in video_segments.items(): + mask_list.append(combined_mask) + else: + for frame_idx, obj_masks in video_segments.items(): + for out_obj_id, out_mask in obj_masks.items(): + mask_list.append(out_mask) + + if cache_model: + try: + model.to(offload_device) + except: + model.model.to(offload_device) + else: + del model + clear_memory() + + out_list = [] + for mask in mask_list: + mask_tensor = torch.from_numpy(mask) + mask_tensor = mask_tensor.permute(1, 2, 0) + mask_tensor = mask_tensor[:, :, 0] + out_list.append(mask_tensor) + out_list = torch.stack(out_list, dim=0).cpu().float() + + if detail_method == 'VITMatte(local)': + local_files_only = True + else: + local_files_only = False + + detail_range = detail_erode + detail_dilate + ret_previews = [] + ret_masks = [] + from tqdm import tqdm + comfy_pbar = ProgressBar(len(image)) + tqdm_pbar = tqdm(total=len(image), desc="Processing VitMatte") + for index, img in tqdm(enumerate(image)): + orig_image = tensor2pil(img) + _mask = out_list[index].unsqueeze(0) + _mask = mask2image(_mask).resize((orig_image.size), Image.BILINEAR) + if process_detail: + _trimap = generate_VITMatte_trimap(pil2tensor(_mask), detail_erode, detail_dilate) + _mask = generate_VITMatte(orig_image, _trimap, local_files_only=local_files_only, device=device, + max_megapixels=max_megapixels) + _mask = tensor2pil(histogram_remap(pil2tensor(_mask), black_point, white_point)) + + color_image = Image.new("RGB", orig_image.size,color=mask_preview_color) + color_image = chop_image_v2(orig_image, color_image, "normal", 50) + color_image.paste(orig_image, mask=_mask) + ret_previews.append(pil2tensor(color_image)) + ret_masks.append(image2mask(_mask)) + comfy_pbar.update(1) + tqdm_pbar.update(1) + + log(f"{self.NODE_NAME} Processed {len(ret_masks)} frame(s).", message_type='finish') + return (torch.cat(ret_masks, dim=0), torch.cat(ret_previews, dim=0)) + + +NODE_CLASS_MAPPINGS = { + "LayerMask: SAM2Ultra": LS_SAM2_ULTRA, + "LayerMask: SAM2VideoUltra": LS_SAM2_VIDEO_ULTRA +} + +NODE_DISPLAY_NAME_MAPPINGS = { + "LayerMask: SAM2Ultra": "LayerMask: SAM2 Ultra", + "LayerMask: SAM2VideoUltra": "LayerMask: SAM2 Video Ultra" +} \ No newline at end of file diff --git a/py/yolov8_detect.py b/py/yolov8_detect.py index 58125121..0b119d19 100644 --- a/py/yolov8_detect.py +++ b/py/yolov8_detect.py @@ -1,28 +1,21 @@ import copy import os.path - from .imagefunc import * -NODE_NAME = 'YoloV8Detect' - model_path = os.path.join(folder_paths.models_dir, 'yolo') class YoloV8Detect: def __init__(self): - pass + self.NODE_NAME = 'YoloV8Detect' + @classmethod def INPUT_TYPES(self): - __file_list = glob.glob(model_path + '/*.pt') - # __file_list.extend(glob.glob(model_path + '/*.safetensors')) - FILES_DICT = {} - for i in range(len(__file_list)): - _, __filename = os.path.split(__file_list[i]) - FILES_DICT[__filename] = __file_list[i] + model_ext = [".pt"] + FILES_DICT = get_files(model_path, model_ext) FILE_LIST = list(FILES_DICT.keys()) - mask_merge = ["all", "1", "2", "3", "4", "5", "6", "7", "8", "9"] return { "required": { @@ -90,7 +83,7 @@ def yolo_detect(self, image, _mask = add_mask(_mask, ret_yolo_masks[i + 1]) ret_masks.append(_mask) - log(f"{NODE_NAME} Processed {len(ret_masks)} image(s).", message_type='finish') + log(f"{self.NODE_NAME} Processed {len(ret_masks)} image(s).", message_type='finish') return (torch.cat(ret_masks, dim=0), torch.cat(ret_yolo_plot_images, dim=0), torch.cat(ret_yolo_masks, dim=0),) diff --git a/pyproject.toml b/pyproject.toml index 5c68c2af..19a23d80 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,9 +1,9 @@ [project] name = "comfyui_layerstyle" description = "A set of nodes for ComfyUI it generate image like Adobe Photoshop's Layer Style. the Drop Shadow is first completed node, and follow-up work is in progress." -version = "1.0.38" +version = "1.0.39" license = "MIT" -dependencies = ["numpy", "pillow", "torch", "matplotlib", "Scipy", "scikit_image", "opencv-contrib-python", "pymatting", "segment_anything", "timm", "addict", "yapf", "colour-science", "wget", "mediapipe", "loguru", "typer_config", "fastapi", "rich", "google-generativeai", "diffusers", "omegaconf", "tqdm", "transformers", "kornia", "image-reward", "ultralytics", "blend_modes", "blind-watermark", "qrcode", "pyzbar", "transparent-background", "huggingface_hub", "accelerate", "bitsandbytes", "torchscale", "wandb", "hydra-core", "psd-tools"] +dependencies = ["numpy", "pillow", "torch", "matplotlib", "Scipy", "scikit_image", "opencv-contrib-python", "pymatting", "segment_anything", "timm", "addict", "yapf", "colour-science", "wget", "mediapipe", "loguru", "typer_config", "fastapi", "rich", "google-generativeai", "diffusers", "omegaconf", "tqdm", "transformers", "kornia", "image-reward", "ultralytics", "blend_modes", "blind-watermark", "qrcode", "pyzbar", "transparent-background", "huggingface_hub", "accelerate", "bitsandbytes", "torchscale", "wandb", "hydra-core", "psd-tools", "inference-cli[yolo-world]", "inference-gpu[yolo-world]", "onnxruntime"] [project.urls] Repository = "https://github.com/chflame163/ComfyUI_LayerStyle" diff --git a/requirements.txt b/requirements.txt index 96cc0817..1819624d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -35,4 +35,7 @@ bitsandbytes>=0.41.1 torchscale wandb psd-tools -hydra-core \ No newline at end of file +hydra-core +inference-cli[yolo-world]>=0.13.0 +inference-gpu[yolo-world]>=0.13.0 +onnxruntime \ No newline at end of file diff --git a/workflow/1280x720_seven_person.jpg b/workflow/1280x720_seven_person.jpg new file mode 100644 index 0000000000000000000000000000000000000000..29ac5f6ed364c516fba80001439ba6cdb81a18bc GIT binary patch literal 253009 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 z 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%0Awnms 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�zW{y*f%xciijL>@u=sv0txZRWZj+90#p-!bn_POj|YPB)>o7hFW3eqmedarwX44Z~IW@}-V3IO< zl5HJ8QicsDPJwVSk4(q`=96a zsLrCw-z#t059eN6KkZlW?$Ry)0Pvi6cgz5d#^-nF1wkk6fAHQbRxRU=8cs*djDPeT zRYs!OjVo??zuHI)%*I9|IL2}G6)blg{{XVX?t{?Rlt=qtd@~WNFOKwInByK}F5l9i zm-fNqL`laJ!s?`7K{MWpg9f;?))Bv@`?5CNk;tznpZ3J~ zU~s?in`nERjP7x_{{S7OU)syz%$Zd2wud6GAcFW`{C5%zS|c&@0Oy_PzLPWeYU^Gtm6an8|19?ef$Se%OBu+^hcp!f~PV z!Cme@_F9Xr&?vhe#V)(#Mj9EIZa8AEw;uVepALLr*R&~>Z1o8m6&MQ7<_r(5csc#A zJ{ad~c-KSn!O2k}=l=j5r%(G?{4YqqcjGMwBy|%IKtF{mYi3oXwmz7#{iQD=k{Iq{ zR^*4+-dX3iKdoy=@!LYy<5hn)2{VRyQ*wjT9^$@FxBaeu8HLz9ZK1PA%Cky({vxNh z{jGi&luh0=&{><3O!)qloT3 zej1?pd~u@w@aHdbepC5Xb3UeC&EG@TBD#eq&z8#^gDbb5ed=Y^VNj}fNEmJh92|BY zmE?EdwYS5Ux`~I4{5u+BA0+3WPJ*PD_OJMM_Uh4i+rzP|pP5a_qvm^0^aUUvJ}m0f<+-ws{?(fHTH>cH@R*gkKrDU17D{5g%} zjQGpLvNNt&`S>4!#Y2%wFJsrG)z(29He-#KXxqU*jXE7uW54cRPcM}lhv!~C-?gX1 z$klV>Zw)dr#^1F4-_!M`+ulxIIrzp@a>~QzBcgc$lMkeJgEF? zweRgw@ZR7!Um5s+%u~T@p1-AKQV^Et+7&B7Xnk0p81!lEo>rRVN%vJBpgx&A8nJKU zn_WiTr?Z|5o>Vx7Kn_UGPjAM)OoR5T_-hE*d~u>S;kXlZl?U>sN&8rQIga%f9~*df z2*@GYE2dT>-;5gNmKA-Lc0(CGr4#EL7f7U4wMiozjAt_MQ{O(rHBNiTG_6uNfIo zKc5B0);#l`KT5__WVSk?ii_O(0QiILK@!p*GDIpQH!KrkoS&3;;}u(3)2_7`)_Eqn zXk+;|!ux(x(C{;!ojohXuYYcDhIf)iSH?OZZ@5ETt{XqZc;wZMZ}zwNbE#kH*Gusa z!*H#)%o5t^V`e_5)6o8voTDYJjiXjCsp~q1oiB!LC4y^*jbx2XD$?@A;}|EQJt0&r{8zs}2 zlBc#GCvM*P1KOn0yg#bRsM!AiW9q-#mbyjy$$1{7E5|4ber=8SNg2q`Q^Btp(SK?W zguWEEl1pERx?Q{ZzH-5Bbirgk?YB7V#ag=m0D^;jJ(aE@lgGMjOLD+&gvjp7F^KRJ Tr{|g?rF&WZ%uaDi{K)^=pvgHv literal 0 HcmV?d00001 diff --git a/workflow/sam2_ultra_example.json b/workflow/sam2_ultra_example.json new file mode 100644 index 00000000..94fed04c --- /dev/null +++ b/workflow/sam2_ultra_example.json @@ -0,0 +1,888 @@ +{ + "last_node_id": 25, + "last_link_id": 37, + "nodes": [ + { + "id": 2, + "type": "LoadImage", + "pos": { + "0": 60, + "1": 180, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 315, + "1": 314 + }, + "flags": {}, + "order": 0, + "mode": 0, + "inputs": [], + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": [ + 1, + 6, + 10, + 18, + 22, + 25 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "MASK", + "type": "MASK", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LoadImage" + }, + "widgets_values": [ + "seven_persons_1280x720.jpg", + "image" + ] + }, + { + "id": 6, + "type": "LayerMask: ObjectDetectorYOLOWorld", + "pos": { + "0": 491, + "1": 540, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 310.79998779296875, + "1": 206.62655639648438 + }, + "flags": {}, + "order": 3, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 6 + } + ], + "outputs": [ + { + "name": "bboxes", + "type": "BBOXES", + "links": [ + 36 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "preview", + "type": "IMAGE", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: ObjectDetectorYOLOWorld" + }, + "widgets_values": [ + "yolo_world/v2-x", + 0.05, + 0.3, + "person", + "by_index", + "0,3,4" + ] + }, + { + "id": 4, + "type": "LayerMask: LoadFlorence2Model", + "pos": { + "0": 502, + "1": 132, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 301.9246520996094, + "1": 65.07791900634766 + }, + "flags": {}, + "order": 1, + "mode": 0, + "inputs": [], + "outputs": [ + { + "name": "florence2_model", + "type": "FLORENCE2", + "links": [ + 2 + ], + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: LoadFlorence2Model" + }, + "widgets_values": [ + "base" + ] + }, + { + "id": 3, + "type": "LayerMask: ObjectDetectorFL2", + "pos": { + "0": 502, + "1": 247, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 302.3999938964844, + "1": 129.92591857910156 + }, + "flags": {}, + "order": 5, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 1 + }, + { + "name": "florence2_model", + "type": "FLORENCE2", + "link": 2 + } + ], + "outputs": [ + { + "name": "bboxes", + "type": "BBOXES", + "links": [ + 19 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "preview", + "type": "IMAGE", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: ObjectDetectorFL2" + }, + "widgets_values": [ + "women", + "all", + "0," + ] + }, + { + "id": 12, + "type": "LayerMask: ObjectDetectorMask", + "pos": { + "0": 497, + "1": 815, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 298.78375244140625, + "1": 102 + }, + "flags": {}, + "order": 6, + "mode": 0, + "inputs": [ + { + "name": "object_mask", + "type": "MASK", + "link": 16 + } + ], + "outputs": [ + { + "name": "bboxes", + "type": "BBOXES", + "links": [ + 37 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "preview", + "type": "IMAGE", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: ObjectDetectorMask" + }, + "widgets_values": [ + "all", + "0," + ] + }, + { + "id": 25, + "type": "LayerMask: BBoxJoin", + "pos": { + "0": 858, + "1": 687, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 252, + "1": 86 + }, + "flags": {}, + "order": 9, + "mode": 0, + "inputs": [ + { + "name": "bboxes_1", + "type": "BBOXES", + "link": 36 + }, + { + "name": "bboxes_2", + "type": "BBOXES", + "link": 37 + }, + { + "name": "bboxes_3", + "type": "BBOXES", + "link": null + }, + { + "name": "bboxes_4", + "type": "BBOXES", + "link": null + } + ], + "outputs": [ + { + "name": "bboxes", + "type": "BBOXES", + "links": [ + 33 + ], + "shape": 3, + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "LayerMask: BBoxJoin" + } + }, + { + "id": 22, + "type": "LayerMask: SAM2Ultra", + "pos": { + "0": 1170, + "1": 550, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 315, + "1": 366 + }, + "flags": {}, + "order": 12, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 22 + }, + { + "name": "bboxes", + "type": "BBOXES", + "link": 33 + } + ], + "outputs": [ + { + "name": "image", + "type": "IMAGE", + "links": [ + 24 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "mask", + "type": "MASK", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: SAM2Ultra" + }, + "widgets_values": [ + "sam2_hiera_base_plus.safetensors", + "fp16", + "all", + "0,", + false, + "VITMatte", + 6, + 4, + 0.15, + 0.99, + true, + "cuda", + 2 + ] + }, + { + "id": 23, + "type": "LayerMask: SAM2Ultra", + "pos": { + "0": 1170, + "1": 980, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 315, + "1": 366 + }, + "flags": {}, + "order": 7, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 25 + }, + { + "name": "bboxes", + "type": "BBOXES", + "link": 26 + } + ], + "outputs": [ + { + "name": "image", + "type": "IMAGE", + "links": [ + 27 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "mask", + "type": "MASK", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: SAM2Ultra" + }, + "widgets_values": [ + "sam2_hiera_base_plus.safetensors", + "fp16", + "all", + "0,", + false, + "VITMatte", + 6, + 4, + 0.15, + 0.99, + true, + "cuda", + 2 + ] + }, + { + "id": 5, + "type": "PreviewImage", + "pos": { + "0": 1540, + "1": 130, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 607.5372314453125, + "1": 368.59552001953125 + }, + "flags": {}, + "order": 11, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 21 + } + ], + "outputs": [], + "properties": { + "Node name for S&R": "PreviewImage" + } + }, + { + "id": 8, + "type": "PreviewImage", + "pos": { + "0": 1540, + "1": 550, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 607.5372314453125, + "1": 368.59552001953125 + }, + "flags": {}, + "order": 13, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 24 + } + ], + "outputs": [], + "properties": { + "Node name for S&R": "PreviewImage" + } + }, + { + "id": 11, + "type": "PreviewImage", + "pos": { + "0": 1540, + "1": 970, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 607.5372314453125, + "1": 368.59552001953125 + }, + "flags": {}, + "order": 10, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 27 + } + ], + "outputs": [], + "properties": { + "Node name for S&R": "PreviewImage" + } + }, + { + "id": 9, + "type": "LayerMask: ObjectDetectorYOLO8", + "pos": { + "0": 513, + "1": 1103, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 301.3816833496094, + "1": 157.36773681640625 + }, + "flags": {}, + "order": 4, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 10 + } + ], + "outputs": [ + { + "name": "bboxes", + "type": "BBOXES", + "links": [ + 26 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "preview", + "type": "IMAGE", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: ObjectDetectorYOLO8" + }, + "widgets_values": [ + "face_yolov8m.pt", + "by_index", + "1,2,3,5,6" + ] + }, + { + "id": 15, + "type": "LoadImage", + "pos": { + "0": 57, + "1": 792, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": [ + 320.16066817973604, + 310.2105949521583 + ], + "flags": {}, + "order": 2, + "mode": 0, + "inputs": [], + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": [], + "slot_index": 0, + "shape": 3 + }, + { + "name": "MASK", + "type": "MASK", + "links": [ + 16 + ], + "slot_index": 1, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LoadImage" + }, + "widgets_values": [ + "clipspace/clipspace-mask-122198.png [input]", + "image" + ] + }, + { + "id": 21, + "type": "LayerMask: SAM2Ultra", + "pos": { + "0": 1170, + "1": 120, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 315, + "1": 366 + }, + "flags": {}, + "order": 8, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 18 + }, + { + "name": "bboxes", + "type": "BBOXES", + "link": 19 + } + ], + "outputs": [ + { + "name": "image", + "type": "IMAGE", + "links": [ + 21 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "mask", + "type": "MASK", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: SAM2Ultra" + }, + "widgets_values": [ + "sam2_hiera_base_plus.safetensors", + "fp16", + "all", + "0,", + false, + "VITMatte", + 6, + 4, + 0.15, + 0.99, + true, + "cuda", + 2 + ] + } + ], + "links": [ + [ + 1, + 2, + 0, + 3, + 0, + "IMAGE" + ], + [ + 2, + 4, + 0, + 3, + 1, + "FLORENCE2" + ], + [ + 6, + 2, + 0, + 6, + 0, + "IMAGE" + ], + [ + 10, + 2, + 0, + 9, + 0, + "IMAGE" + ], + [ + 16, + 15, + 1, + 12, + 0, + "MASK" + ], + [ + 18, + 2, + 0, + 21, + 0, + "IMAGE" + ], + [ + 19, + 3, + 0, + 21, + 1, + "BBOXES" + ], + [ + 21, + 21, + 0, + 5, + 0, + "IMAGE" + ], + [ + 22, + 2, + 0, + 22, + 0, + "IMAGE" + ], + [ + 24, + 22, + 0, + 8, + 0, + "IMAGE" + ], + [ + 25, + 2, + 0, + 23, + 0, + "IMAGE" + ], + [ + 26, + 9, + 0, + 23, + 1, + "BBOXES" + ], + [ + 27, + 23, + 0, + 11, + 0, + "IMAGE" + ], + [ + 33, + 25, + 0, + 22, + 1, + "BBOXES" + ], + [ + 36, + 6, + 0, + 25, + 0, + "BBOXES" + ], + [ + 37, + 12, + 0, + 25, + 1, + "BBOXES" + ] + ], + "groups": [], + "config": {}, + "extra": { + "ds": { + "scale": 0.751314800901578, + "offset": [ + 412.8676235805176, + 29.36872079491155 + ] + } + }, + "version": 0.4 +} \ No newline at end of file diff --git a/workflow/sam2_video_ultra_example.json b/workflow/sam2_video_ultra_example.json new file mode 100644 index 00000000..ccd1ec4c --- /dev/null +++ b/workflow/sam2_video_ultra_example.json @@ -0,0 +1,514 @@ +{ + "last_node_id": 127, + "last_link_id": 73, + "nodes": [ + { + "id": 116, + "type": "VHS_LoadVideoPath", + "pos": { + "0": -312, + "1": 180, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": [ + 283.1399841308594, + 238 + ], + "flags": {}, + "order": 0, + "mode": 0, + "inputs": [ + { + "name": "meta_batch", + "type": "VHS_BatchManager", + "link": null + }, + { + "name": "vae", + "type": "VAE", + "link": null + } + ], + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": [ + 60, + 68, + 73 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "frame_count", + "type": "INT", + "links": null, + "shape": 3 + }, + { + "name": "audio", + "type": "AUDIO", + "links": null, + "shape": 3 + }, + { + "name": "video_info", + "type": "VHS_VIDEOINFO", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "VHS_LoadVideoPath" + }, + "widgets_values": { + "video": "D:\\AIRes\\video\\3822765.mp4", + "force_rate": 0, + "force_size": "Disabled", + "custom_width": 512, + "custom_height": 512, + "frame_load_cap": 0, + "skip_first_frames": 0, + "select_every_nth": 2, + "videopreview": { + "hidden": false, + "paused": false, + "params": { + "frame_load_cap": 0, + "skip_first_frames": 0, + "force_rate": 0, + "filename": "D:\\AIRes\\video\\3822765.mp4", + "type": "path", + "format": "video/mp4", + "select_every_nth": 2 + }, + "muted": false + } + } + }, + { + "id": 127, + "type": "VHS_VideoCombine", + "pos": { + "0": -303, + "1": 647, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": [ + 721.9566040039062, + 718.8505897521973 + ], + "flags": {}, + "order": 2, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 73 + }, + { + "name": "audio", + "type": "AUDIO", + "link": null + }, + { + "name": "meta_batch", + "type": "VHS_BatchManager", + "link": null + }, + { + "name": "vae", + "type": "VAE", + "link": null + } + ], + "outputs": [ + { + "name": "Filenames", + "type": "VHS_FILENAMES", + "links": [], + "slot_index": 0, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "VHS_VideoCombine" + }, + "widgets_values": { + "frame_rate": 15, + "loop_count": 0, + "filename_prefix": "orig", + "format": "video/h264-mp4", + "pix_fmt": "yuv420p", + "crf": 19, + "save_metadata": true, + "pingpong": false, + "save_output": true, + "videopreview": { + "hidden": false, + "paused": false, + "params": { + "filename": "orig_00007.mp4", + "subfolder": "", + "type": "output", + "format": "video/h264-mp4", + "frame_rate": 15 + }, + "muted": false + } + } + }, + { + "id": 122, + "type": "VHS_VideoCombine", + "pos": { + "0": 456, + "1": 646, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": [ + 721.9566040039062, + 718.8505897521973 + ], + "flags": {}, + "order": 5, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 71 + }, + { + "name": "audio", + "type": "AUDIO", + "link": null + }, + { + "name": "meta_batch", + "type": "VHS_BatchManager", + "link": null + }, + { + "name": "vae", + "type": "VAE", + "link": null + } + ], + "outputs": [ + { + "name": "Filenames", + "type": "VHS_FILENAMES", + "links": [], + "slot_index": 0, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "VHS_VideoCombine" + }, + "widgets_values": { + "frame_rate": 15, + "loop_count": 0, + "filename_prefix": "sam2", + "format": "video/h264-mp4", + "pix_fmt": "yuv420p", + "crf": 19, + "save_metadata": true, + "pingpong": false, + "save_output": true, + "videopreview": { + "hidden": false, + "paused": false, + "params": { + "filename": "sam2_00006.mp4", + "subfolder": "", + "type": "output", + "format": "video/h264-mp4", + "frame_rate": 15 + }, + "muted": false + } + } + }, + { + "id": 120, + "type": "LayerUtility: BatchSelector", + "pos": { + "0": 29, + "1": 328, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 235.1999969482422, + "1": 78 + }, + "flags": {}, + "order": 1, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 60 + }, + { + "name": "masks", + "type": "MASK", + "link": null + } + ], + "outputs": [ + { + "name": "image", + "type": "IMAGE", + "links": [ + 61 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "mask", + "type": "MASK", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerUtility: BatchSelector" + }, + "widgets_values": [ + "0," + ] + }, + { + "id": 118, + "type": "LayerMask: ObjectDetectorYOLOWorld", + "pos": { + "0": 333, + "1": 225, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 310.79998779296875, + "1": 198 + }, + "flags": {}, + "order": 3, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 61 + } + ], + "outputs": [ + { + "name": "bboxes", + "type": "BBOXES", + "links": [ + 72 + ], + "slot_index": 0, + "shape": 3 + }, + { + "name": "preview", + "type": "IMAGE", + "links": [], + "slot_index": 1, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: ObjectDetectorYOLOWorld" + }, + "widgets_values": [ + "yolo_world/v2-x", + 0.05, + 0.3, + "person", + "first", + "0," + ] + }, + { + "id": 126, + "type": "LayerMask: SAM2VideoUltra", + "pos": { + "0": 810, + "1": 164, + "2": 0, + "3": 0, + "4": 0, + "5": 0, + "6": 0, + "7": 0, + "8": 0, + "9": 0 + }, + "size": { + "0": 340.20001220703125, + "1": 386 + }, + "flags": {}, + "order": 4, + "mode": 0, + "inputs": [ + { + "name": "image", + "type": "IMAGE", + "link": 68 + }, + { + "name": "bboxes", + "type": "BBOXES", + "link": 72 + }, + { + "name": "pre_mask", + "type": "MASK", + "link": null + } + ], + "outputs": [ + { + "name": "mask", + "type": "MASK", + "links": [], + "slot_index": 0, + "shape": 3 + }, + { + "name": "preview", + "type": "IMAGE", + "links": [ + 71 + ], + "slot_index": 1, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "LayerMask: SAM2VideoUltra" + }, + "widgets_values": [ + "sam2_hiera_base_plus.safetensors", + "fp16", + false, + false, + "#FF0080", + "VITMatte", + 6, + 4, + 0.15, + 0.99, + true, + "cuda", + 0.5 + ] + } + ], + "links": [ + [ + 60, + 116, + 0, + 120, + 0, + "IMAGE" + ], + [ + 61, + 120, + 0, + 118, + 0, + "IMAGE" + ], + [ + 68, + 116, + 0, + 126, + 0, + "IMAGE" + ], + [ + 71, + 126, + 1, + 122, + 0, + "IMAGE" + ], + [ + 72, + 118, + 0, + 126, + 1, + "BBOXES" + ], + [ + 73, + 116, + 0, + 127, + 0, + "IMAGE" + ] + ], + "groups": [], + "config": {}, + "extra": { + "ds": { + "scale": 0.7513148009015777, + "offset": [ + 936.8487199573502, + -11.582724235849595 + ] + } + }, + "version": 0.4 +} \ No newline at end of file