From 471df372dc35abbe698c57979392d8ecba7d19e6 Mon Sep 17 00:00:00 2001 From: beom Date: Fri, 1 Nov 2024 14:52:48 +0000 Subject: [PATCH] Initial commit --- LICENSE | 400 ++++++++++++++++++++++++++ NOTICE | 30 ++ README.md | 32 +++ config/__init__.py | 1 + config/config.py | 66 +++++ demo/examples/examples_example1.jpg | Bin 0 -> 82908 bytes demo/examples/examples_example2.jpg | Bin 0 -> 73460 bytes demo/examples/examples_example3.jpg | Bin 0 -> 60385 bytes demo/examples/examples_example4.jpg | Bin 0 -> 55672 bytes demo/examples/examples_example5.jpg | Bin 0 -> 36890 bytes demo/examples/examples_example6.jpg | Bin 0 -> 67862 bytes demo/examples/examples_example7.jpg | Bin 0 -> 70987 bytes demo/examples/examples_example8.jpg | Bin 0 -> 201161 bytes demo/gradio_demo.py | 354 +++++++++++++++++++++++ demo/gradio_demo_comparison.py | 418 ++++++++++++++++++++++++++++ eval/eval_loader.py | 117 ++++++++ eval/evaluator.py | 146 ++++++++++ eval/main_eval.py | 129 +++++++++ eval/metric.py | 122 ++++++++ requirements.txt | 10 + script/amg.py | 124 +++++++++ script/evaluation.py | 90 ++++++ script/run_amg.sh | 22 ++ script/run_eval.sh | 34 +++ zim/__init__.py | 9 + zim/automatic_mask_generator.py | 378 +++++++++++++++++++++++++ zim/build_model.py | 29 ++ zim/modeling/decoder.py | 88 ++++++ zim/modeling/encoder.py | 60 ++++ zim/modeling/zim.py | 190 +++++++++++++ zim/predictor.py | 275 ++++++++++++++++++ zim/utils/__init__.py | 10 + zim/utils/amg.py | 373 +++++++++++++++++++++++++ zim/utils/argparser.py | 96 +++++++ zim/utils/print.py | 20 ++ zim/utils/utils.py | 148 ++++++++++ 36 files changed, 3771 insertions(+) create mode 100644 LICENSE create mode 100644 NOTICE create mode 100755 README.md create mode 100755 config/__init__.py create mode 100755 config/config.py create mode 100755 demo/examples/examples_example1.jpg create mode 100755 demo/examples/examples_example2.jpg create mode 100755 demo/examples/examples_example3.jpg create mode 100755 demo/examples/examples_example4.jpg create mode 100755 demo/examples/examples_example5.jpg create mode 100755 demo/examples/examples_example6.jpg create mode 100755 demo/examples/examples_example7.jpg create mode 100755 demo/examples/examples_example8.jpg create mode 100755 demo/gradio_demo.py create mode 100755 demo/gradio_demo_comparison.py create mode 100755 eval/eval_loader.py create mode 100755 eval/evaluator.py create mode 100755 eval/main_eval.py create mode 100755 eval/metric.py create mode 100755 requirements.txt create mode 100755 script/amg.py create mode 100755 script/evaluation.py create mode 100755 script/run_amg.sh create mode 100755 script/run_eval.sh create mode 100755 zim/__init__.py create mode 100755 zim/automatic_mask_generator.py create mode 100755 zim/build_model.py create mode 100755 zim/modeling/decoder.py create mode 100755 zim/modeling/encoder.py create mode 100755 zim/modeling/zim.py create mode 100755 zim/predictor.py create mode 100755 zim/utils/__init__.py create mode 100755 zim/utils/amg.py create mode 100755 zim/utils/argparser.py create mode 100755 zim/utils/print.py create mode 100755 zim/utils/utils.py diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..069a6b1 --- /dev/null +++ b/LICENSE @@ -0,0 +1,400 @@ + +Attribution-NonCommercial 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution-NonCommercial 4.0 International Public +License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution-NonCommercial 4.0 International Public License ("Public +License"). To the extent this Public License may be interpreted as a +contract, You are granted the Licensed Rights in consideration of Your +acceptance of these terms and conditions, and the Licensor grants You +such rights in consideration of benefits the Licensor receives from +making the Licensed Material available under these terms and +conditions. + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + d. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + e. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + f. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + g. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + h. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + i. NonCommercial means not primarily intended for or directed towards + commercial advantage or monetary compensation. For purposes of + this Public License, the exchange of the Licensed Material for + other material subject to Copyright and Similar Rights by digital + file-sharing or similar means is NonCommercial provided there is + no payment of monetary compensation in connection with the + exchange. + + j. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + k. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + l. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part, for NonCommercial purposes only; and + + b. produce, reproduce, and Share Adapted Material for + NonCommercial purposes only. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties, including when + the Licensed Material is used other than for NonCommercial + purposes. + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + 4. If You Share Adapted Material You produce, the Adapter's + License You apply must not prevent recipients of the Adapted + Material from complying with this Public License. + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database for NonCommercial purposes + only; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material; and + + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/NOTICE b/NOTICE new file mode 100644 index 0000000..17f0a5c --- /dev/null +++ b/NOTICE @@ -0,0 +1,30 @@ +ZIM +Copyright (c) 2024-present NAVER Cloud Corp. + +Creative Commons Attribution-NonCommercial 4.0 International + +A summary of the CC BY-NC 4.0 license is located here: + https://creativecommons.org/licenses/by-nc/4.0/ + +This project contains subcomponents with separate copyright notices and license terms. +Your use of the source code for these subcomponents is subject to the terms and conditions of the following licenses. + +===== + +facebookresearch/segment-anything +https://github.com/facebookresearch/segment-anything + + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +===== diff --git a/README.md b/README.md new file mode 100755 index 0000000..6df2161 --- /dev/null +++ b/README.md @@ -0,0 +1,32 @@ +# ZIM + +**ZIM: Zero-Shot Image Matting for Anything**
+[Beomyoung Kim](https://beomyoung-kim.github.io/), Chanyong Shin, Joonhyun Jeong, Hyungsik Jung, Se-Yun Lee, Sewhan Chun, Dong-Hyun Hwang, Joonsang Yu
+ +NAVER Cloud, ImageVision
+ +[![Paper](https://img.shields.io/badge/Paper-arxiv)](https://arxiv.org) +[![Page](https://img.shields.io/badge/Project_page-blue)](https://naver-ai.github.io/ZIM) +[![Demo](https://img.shields.io/badge/Demo-yellow)](https://huggingface.co/spaces/naver-iv/ZIM_Zero-Shot-Image-Matting) +[![Data](https://img.shields.io/badge/Data-gray)](https://huggingface.co/datasets/naver-iv/MicroMat-3K) + + + +## Introduction + +In this paper, we introduce a novel zero-shot image matting model. Recent models like SAM (Segment Anything Model) exhibit strong zero-shot capabilities, but they fall short in generating fine-grained, high-precision masks. To address this limitation, we propose two key contributions: First, we develop a label converter that transforms segmentation labels into detailed matte labels, creating the new SA1B-Matte dataset. This enables the model to generate high-quality, micro-level matte masks without costly manual annotations. Second, we design a zero-shot matting model equipped with a hierarchical pixel decoder and prompt-aware masked attention mechanism, improving both the resolution of mask outputs and the model’s ability to focus on specific regions based on user prompts. We evaluate our model using the newly introduced ZIM test set, which contains high-quality micro-level matte labels. Experimental results show that our model outperforms SAM and other existing methods in precision and zero-shot generalization. Furthermore, we demonstrate the versatility of our approach in downstream tasks, including image inpainting and 3D neural radiance fields (NeRF), where the ability to produce precise matte masks is crucial. Our contributions provide a robust foundation for advancing zero-shot image matting and its applications across a wide range of computer vision tasks. + + +## Updates +**Available Soon** + + +## Installation + +Our implementation is based on [SAM](https://github.com/facebookresearch/segment-anything). + +Please check the [installation instructions](INSTALL.md) + +## License + +Available Soon \ No newline at end of file diff --git a/config/__init__.py b/config/__init__.py new file mode 100755 index 0000000..3396bb7 --- /dev/null +++ b/config/__init__.py @@ -0,0 +1 @@ +from config.config import generate_config diff --git a/config/config.py b/config/config.py new file mode 100755 index 0000000..6510baf --- /dev/null +++ b/config/config.py @@ -0,0 +1,66 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +from easydict import EasyDict as edict + +config_ = edict() + +""" + Common configs +""" +config_.data_root = "/mnt/tmp" +config_.use_ddp = True +config_.use_amp = False +config_.local_rank = 0 +config_.world_size = 1 +config_.random_seed = 3407 +""" + Network configs +""" +config_.network = edict() +config_.network.encoder = "vit_b" +config_.network.decoder = "zim" +config_.network.encode_kernel = 21 +""" + Evaluation configs +""" +config_.eval = edict() +config_.eval.workers = 4 +config_.eval.image_size = 1024 +config_.eval.prompt_type = "point,bbox" +config_.eval.model_list = "zim,sam" +config_.eval.zim_weights = "" +config_.eval.sam_weights = "" +""" + Dataset configs +""" +config_.dataset = edict() +config_.dataset.valset = "MicroMat3K" +config_.dataset.data_type = "fine,coarse" +config_.dataset.data_list_txt = "data_list.txt" + + +def remove_prefix(text, prefix): + if text.startswith(prefix): + return text[len(prefix) :] + return text + + +def generate_config(args): + # merge args & config + for k, v in args.items(): + if k.startswith("network_"): + config_["network"][remove_prefix(k, "network_")] = v + elif k.startswith("eval_"): + config_["eval"][remove_prefix(k, "eval_")] = v + elif k.startswith("dataset_"): + config_["dataset"][remove_prefix(k, "dataset_")] = v + elif k == "amp": + config_["use_amp"] = v + else: + config_[k] = v + return config_ diff --git a/demo/examples/examples_example1.jpg b/demo/examples/examples_example1.jpg new file mode 100755 index 0000000000000000000000000000000000000000..940be028a8d069e48698057aeffc15c3648ba6ab GIT binary patch literal 82908 zcmbT7RZv|)*QO8d5Fl7^2@b*CU4py29^BoX!@=ExI|O$P?(S{}4^AM+u3IGKK06_g4fR7D;H~5di@K2?-Gy z^)nhO3JNL#7BoiHK;q=@?m9IXE~-X?O*B*aVo_IoSU5 z5hx@iBvcesd^9wCHgY0zw*Tk&=mTIPLeE0&!az{~pfRCfFrhvM0i^%-2?zCG0r;N* z1q}lW2akY=gpBfULGvd7G!zUBG%O4p94zd=)&BqH0kD{GSmdmt@YpIQ2o%nr*@6=b z5Glp#`*Bp~uBq5fT|$tMaq;j8zI>&op{1ke;N;@w;pG#Tkd%^^k(Ez7{{PSiUpF)sR96UQ!>v^U0ZTYePXN2;c(r~Nf|Ae5jz zHy9dmw2!j(@p9z{w-Dreqh`WB zv4;Q9_)?h#VLri$g|2?1b3B7seZR@x&U2W!!~K<^A*)G=tH>pFawI}l4_O#nlWbv` z3#`LO_Z%&NT<__N)?_vTEhXR-pz`PGmBC?ro_k^bO8JXwJ_Fk|8++dg17A{0nFgYf zcz#>AQ460q!QM?eapUPbXKP_Ud3~B}tAh=D+L<&?XvvTKLAIMVqQqff%iC0U%ju>h z3A{YX`_hm~@$@)dlS)hMJ2jX^&VhHx5KFw6u~A9q9w0 zdyssOGd)Aq$S=Ty66C2p8IqzO$>tq*^`r;rh2!`vD0yo;z}HZ5Jx<~@+~y_znD~Rr<>=V2_Oh;);a zePHV`dF4Ptc0p1*V^Gf46lSIM$2TqFnr(lk68|$dNt7F_3wJp1I_y9+JX>!;!z-Xw zmdq|rQN$kCyYk8~^(yH27pQx8d1pb1>Yo9LWg`}Qg@Ez5S}8CUaMpUbkGL8T~{y7<`RQPAO@e@8C@3D4O{t1$=Hq? znsyp<*{w1P`s}JO^B&+zyGvN%n7;<)O`{8!m+yRU?9|dzkg-nyj8~)o9!SxX-=3|E zR@$}68Du3oG!D3YdFQOyTh6l~*3}^pyT*q+FD+ibZ52@^bUCQV5Jsxn+M~|{`75$6 zp&eik(djzU6^E67ET)dpgl9>>GfhNHpaWilRdhw62b85=^Ob!Aa4P7<$?o9i&)et_ z>MPT1S)hp04sOfi))%*BX$lnVOu3blc4(cPL~%maQTK1=`GamkL>TVeYR9#M`VT_0 zX24s94)9V7E8S{7NRs-;)C&$wMV^jKk8y);JeAQDGMTs8Bt?k^7H0y^`r!d^_4b{v z;I0?a5`|rS+z)_!j}1lWQ9zz@|326rF-7p4$mUb;4b;Pak*~t9L(1nBg9AcBpgf^> zm^@N4Y!gFX(QN*?j*n$7(A8SIli%vMJ-sx^VlujcopEyoNi#u&WNq%fc<7O0Kv+a2 zyG{BvW(O6$l3~hXbSgXPF)XTTZXYB;xXX>oT+R*ItU2m_#MQ2b7)0wtM@l;Y!uS4E9G7nz^ zBEf%vriRk&R|CZ$9VwXsZinOM<_#}wnO1pqM|xn8z#5CehPCF_sxip954v;o6{kqo zI&dAgWjbAy)HGUgnT8TyXlclHu6kVpx8-Seg3-0-Av{={)S72&4(u%i!5NDQxCKt! z2@-Ydq6rI+9vpW>Ol!u#v1df7^&7H-?$(=BANLB|TZ6GaYZJPb?YNHIco5x_)+l=c zmWs39e}9Wh!s9hveX1=JX$)qpV`eVwPmWqmOem{(EDX=NUs1Ycz|AW8&0yP0Z8Xbh zCJ!WzZpuL6;&YJ%8f@vVR&ms}G3Dgtzxfm8Ua+Ec~^ zK$mB}TCGx{NBSdErmW7OeCF!;-j(8v20gUs1!tmnm}b{j*rt-TXet*4?Qh9JyroQ4 z3e1 zS7)JydipS|gf_$CgHmADORnaVJ5#?SR<dRu4UTB_CVSZ;_*RNPOT#$;?Vr#Ay=S+udGpLxlf+hSMPEz_$=#`o6td~eQVI&4*aP9C4$xpX5HRaOYY3?s_u=loidJ?SFt zGgO>AuIe(Y`pkopmBzrGokV}ASw8@kaF+u|l>A5I4@Hs(>u`_GiMny`!P`2V8UIDS zXlio$0df)5I}Y09yUYeTD>P4xkp7#Js2(1le7^DBLStw=jEs)zruZjTgTRlwPw2-G zQn@*qgBYDcm7v;wWsgGnY=5DtfHg*^I{oCaN9YDuzEsZk08Z$MytYbDy4yO^Vftde z+BmnpgGDiJ<4LW1P6wlHiY6`0ac)#I()mL4DLkGn{!eF*&T-6F2gY}(dh))O?Xomn zFZS)SRbBJH8YQRC|v4uE6`W^J;)Q|VGi_MiPoaixTxY?Vl`b;<^WX}O7ae(Wf zzWU+R}9BXHoB-iwqo`M2#}N?sv5+ zy=u1oNuI|1Go$6wh|%}fyUtbP%$KgX4_osp6=z-h3OJVLDs`Kz#O;aZI?E_Mb$dQ!dW|?^BZEy?Xkc1I@yf`&P1jZQiRctLs{YOJZr*MN?i0g$r98o*J~CMl}!5 z`W+p8RLMY0n#NBU_vJMzKa#|gDe8zY;|+!1+=n*$kB3|?c;mP+rhjA}H?a!1j*(_$ z_efEcx?K_z)bKqeb?{d`3!LkOSw90kl@ZTm_TwW<<| zptl@Jl4v>W5TZ)~NHs-)?o^s`Z1qi*Y7WOU@rdaXO~(ARZ}j;QCK%>huHo+*guo8> zLotR&nw-vTqaMii`Tr!$;1 zenpaH7UiAP?vt9#$x$d4GKA)cw?L*{+xO#7MyeU^* z8@gA8AoUxMS0vT8^pO50koe)-~4rQWgVSnWqR3Kb}|vC^n7_&esAzR8QK=) zxvfB=zdGds{R+Us^jE5D*Rm)xf_!f_ciJ;+)c(l39CjFDh@23oO>gUcM&8&et0UqM z0QUXsd3RSFmCUke${iFX&k0hU02nR;C9`LNN`93c8iVBFc<|wi zt^UGw)uWDknX%gPr_{o}qz<#LmcG4|yGjm87#2gN&{wp*p`Rpbt!pK!#6piyg6s=1 zN6qrt?Hv3Z?WyX;8CJ-6wyCf|2;b2eva#W_ju*^k`xI~dI(|P>CZ?^A+Hxb-Fcuz| zkvsgz(-S%NEsN1&f5T5u6n99Bxkd%ZIhX5Vhd*&cCgH*V&BsKeB& zt)`|=9{m&-J*Px`p1s%{J0%}&zCmie5c~mHsU%EkB@U-3PD=Rv+hJJEFbDGmH^+U8YtM9$Z^mxV2t18&x^;at={7Drv=p%r?PaS@MVjW&TeV#q%ONBvIwr{SM_ z9HQY$LD|w+vk5}3W9G8NX<7pXH!laOEVou!JrAYr)AjZ^=^-rE1nt^BrI#^Y$MN=P ztE7FYG;dvLnku5KlS2o32zN_J^3hT*=LaBmE0#JRcWNZF_$a=IA*;P3%^S6qO#mDi z4OS2z<55xTH=~+lLpsiqV-S^7&DJ6y#D!(_t}yeaG?qGaR2g!^T^AbFi8`U9Sr}gG zJL}V!PpcqUDJ!zD=G>Co1f(zc6SM~M%|#CDCZWoZr}`c_=Z{zPq#@a9SS@I~)u#P; zA*$3UYP6Eah$FXHb2ht8PErYecP~MRajRgBJ`Q?eOAwaZ`!a5EI$vOIX;`IvDtcjE z&zbg;my;D6(#C@zViO*j_D8)14bJom}B5gz8SfH`-w>nAm!g;;x1JK`* zyVy}A^5hk7?9gKnOLIuJ{0q3>pW{a8`xYS{Tx4 zueQ!wwzXo5b2#P+X?*~Q)YD#s3Ls5(GbD342{N4RdyCV_c%AV_YPy4pjV|yaF!e)P z?2AKc3Pt%@<1bL7F^25@{iPdy7A=-;0LYKpw4?k>#0Uvq>1P8rMGP~I8q6;gsEBNV zkrX8p@>!K09;{5eqBtieK_hyWWt2}N9 z6j#t1tnrP`Sf?!zv1*OzOxyYVw<4Dv9~OgmmvE9~7Z{xleOJo1sY9{e0R=y_91=q@ z!~?8PFiH8QzxchH*Bk+-e9Wsp(pQT17kSX7a#9jG21@yf3s0#+j14>ac)Ivm8IA{& z?F)H$mx~~2K1AVm&jBR-1*ps5_Aj418LmwO%{AYAU1SZj-cNK{he8U+tMqiCZedNWFNkVsi)^tcZnL3E}S6PwY>(uP#HaU{ji6sel0S3UwPe5fr zL!BGCq8E8Wkr+%?3UU)^f`lk~;t9MCKLFl=10@TIw%wc^LNPaa9a*>u4K1_ttQuB4 zFroPnL&~Z@mHW3!_b$#0lO_u%{93a<-A&wFR0^M6;K=qCS>AxDo!4o>ULf=Nno#4{ z(N2uh7|5?_%w?Ig!G$V8vJ0=Wh}6=>15{63S$MsK0JY_kUN0jlMBJm|zdEuchxRt4 z)x?vg>7JZQzUJ1`30P8fd;QoLJl~{^)|y|pr}@5^7=c*}(HNt05+1JVw{Z8Z z#Q%aLl>kG%k0YXz_poyE!r6q`AIOXKTt<$32=xXOV1GM)ntQigy?=|DU#}aB{;`fl z<;folM?+agTm_s!GXM1_mI!0GoLF&1NhePhhi!FL=w{?cHQ@&UbH<5)DKaVYPjA$_ zVAZNhN|KO^S~$bz{31<5bLMfI|2!8f{^1I11rU48X&;wGlI)P~@BrMbv*U_2nBgRuQFnl2POo~xM6Jj~K&Zyau+wj%WsM#Kp1o7bNcC&lZ16_|N`p3rso*2gL zs3h@Bbc9xz6Jb7&oJ7X?p#ERzW$jgvCz-f!{zcHV%)hm>CCvN29=WE$oNrv$Hmr|| z7vVh1B8yUe02*JiB1OsV&A)#dY#}80eX5J+*|P2)Te3J;DoW;VmUyZ&ZTrYqq1Mn2 zZh5{D-o_*#2HWUj~~nC=FX^&P#1Yv4Z|tG6}2B?E7DO| z(J+m>)LW2CauG_WwvW~DnucsCegHB%=^sk0siR>GXGpS<2#{YV57rQb^ANh-+I`Cp zK!T52w>6jEnL)x^L|L=V;5`uYDRF8e%LWw$_24b_ED$Q*$0OJ3>lmAj$2qF;ows}R zSH~x1T`QoVzn1bHIph@x6T(izv{w^toQYvI^tbI^6l$ zvT~|a?pFNBTNUl#N~Y|7+V(h~$Y|A?Vp9zPZbZ;Ftpu8&=~~^@NjR}Q)TY!%mDQ$H zWvNNWIL0?O9g{C^jVzpVn(1;p{vqtm3D~hnp0uFU(b3wLM}xTwn-EU);#SMGqurjx zJGHQ}DboO`;H)I7<+}oWxdd%b>EBf@#CR(H(o#)urn24%#t~4fzDfJbkuBP9K^RWe zirauRnWc|xW-$26X%2Ei=u}(wD^a^A86+uFb!7JW^B zK2Bm8R553(2^1F};QCEnZ6VA^#XK}ZaVE}Kn zFx*<_Sq9Tlxk!MM^DnoT8-uvW$ifKTRvkJvea0V6gSSZJk$<#^t=naJp09lHy@xSv z4fO(w{EUuTk^>CYkoU>-ct$1}CLAeb{q(%ahQIfF20(YK4HcJWdifVu>Ov z43Iy2Kh}vhrSl!i7^FX$J2_|VyWgvMm+L)yZMo=iC?DYj0Ie-I{`9IxMp#>t-p>gS z)YXCF22E%h^h3~9dWU~*C?WiyD3F%|i>_pyhf%u5l*q;K=T5aoyOk1HYN5`O>M3qIzO17cAtqGIO48 zUvUXSjW;pMkR3kYSO5JEzyngf`hsd%e#ubi`70I5cEG*$y`U_%jRzI^be!)t-)+g z%?9B;YwU<&Ely-BG$jzd@dFTUd!86wokY#lT%z1ZWUfg$Y~0*w!YiTnDq`%! zFdbg)i|qgrt}0IWL#;aB$rIcHw@bG*40v~kyo5JBE_)2~np=~bP{JgwUb%SllC4PZ z3);%ZBMd#tM&=~Jd1$|B-;W))Z}hUh(v}o@-9Xc7@$!rvu5kMD>V5#``LCmgbLV%i zmWPR3Frt|A9tN*lNRxxsh@AN1ZS(9M&Jc0eaWL)iF>-Qz(U+n>d1Us8l?a`}egO2B zTe`8m6WQXo@mHK->OPxn5-YiX0KQk-+5Y|Jt@8m$f8~`3dHeuadooTQVvSHOsOXA8 zhbqkiqSkelqLRoS!`it#gqL4VyDKBm#e2PaV*+UKz%|M7-3eC(uTA!WU=IIM*^KfI#;Kc z#Bxoy*U8h=EiF)HF@u$nvPVKLCRZI4rADEjJ$k-#_txw1gS!DDhG!c+a#Cv+O!Ec9D}% zxLlK87KgK<%bHWgc%sRm^l&}C(OcnYj+5P1D@#0KyFg2|*ETBt6|9LBTtK2iYx?CN zj(MT?;|)mA$*yaA%$-PNp#~HP+f#v;t$KXKlIKo#X4B(hKctyq796>Lr}C#CS!X7B zBM--2rgo|R3F^e~5XhfZ>k>4r2R0^DLTx>q>$HE7LMg8@y)h*870{(GOv^yKYf-Wi z_I!tibKa(Iz~$?tHSG`Lwb~px^9RmFY22VDK(kP2(h!(>?>97)A~F|M$ou=dkhM&U zK@dnF&5p#0DQOL2e`KX!DMuktqP)~Cc4R3wvDi{K^)yUmeK5kgrXK*H^$YDMo3vvO zMUd>eF!mb*gX)T7^QRr_Y&-uVMZ6C{ou2BiaouiIpy?ilyY2Ki6W9CpmPvC*h_==b zH?sUe(o>CQM90?k(Z{M50`YoT_B;#`ky><=b`#zZ9W~M|QwBLES2bfw?j)A`fWTbN z2%x3-@X*QJ#)PZAx5?M8VQqn-VMEIJ`Sw@?xT`DXeZ7-n8FQ3RRvW`myCh3rd!sq= zQy3Vrg5RfwQw>RIwV)i_E<(3tgeSEq>Quj(wWwQ9=`^xyUT+=MRIgyznM)E_AdtOF zb1wd|T`OEb7O*Fn_V_tsJN3Rg$BbE&X%WSZ%Ay{4P}*d&ShEIbS^7f+=YjA65F;qm zj%1n@$H4bvtgG$sIJ-6zKA|CfT5?%#l}Aq{Poj!7v;RujPib=ap0i>(A+QqXG~?)0 zgO{RQ0RTbDsT-S($nA%UPP0`tJgDi|LyEv{rB%|2BjsC2zLG-WN|9NK?P#bTw}sH? zrxsKJC<`}rN@BhAFn0hn@26lUrnoLPQK|@qObhcq9>F+|8$$f#*yWs=Y*=-m8FsQzJUX3c z$E!i~wr8lYZ%rLP6jeRNe3PQ;gdixC8tz%pLhL(vABVLfcLT*2y0*z*K+Tn6zX8tZ zpE=O^QXB8;@9avkA)_iqbNC$fTIq<^8pUxgZGF+TG_9lQMpIUx@_K3oZ>luUmm;-YXnJ1SQYEg~t+Rl#NT2$QB`czvE zM`sG?g(zlb?jbwVeU&0@eZb(>xV}ZhWTtYz(}dr44zgG_<+Zt%G=IxUEiWQ+ro05@ zY&Up>Z`H$Y7|xx3*qdq1NBZD`xv|3uS+{!R9L*_SN!$yfu*L}z)^I%4tfVPo%S943 zE#enCxvKD_IHI5B& z3qq-SHu9E+NE*v~eCCw+a#mM8-HbN(+-CoN8M;{$|Sb_=dAp zFwu{i3udEVG^A_(r#;geq?A;{NUy6A8Yx$BQ2I_vg3Q1JWl4<9s@CUwD^1Izdg&rc z(yH_qp15iWbFvOoEA*?JkYhSHN``OO3y=O8zE(@bo0@3!BW#JmiSfhLh})d}DGwJ6 zAu*5pYocIpGt!HC9D6_M3JKwZ!?q8Ay=ZN^qQSKFN~F3c?F~V|_3+HOI`gi3OR8A? zv=djJ3otiyh}#Y+Z5AOhLQFO#1OO zB#YLN5sb`xc(dG4ctf54?X~Mbuq6IvIj*(}hD@d;L`0A@E4!zpgaq^uh<|okY%?p@ zFUxl5z(WMHxDtOJz~0v7d8;=`FlNbbX7uB?;a;7N&bD^2ujA*rDpbaDeAJumc9eYh zKLHS+v>9#hAqGw0Q9u#{0kF*Udx6MQl`h5{WqcvAfBAqYp&B zTD;EtDA{%Q^4XbK+alQC?3;o&@Hyv!y2xnc?mCXOmKg$R{pP$H$`~U2%NSQJrZ7oH2lxQJwAyMbG@N(Nk}jPKYZ3{PDr!3K5Mj9t8ufCTj#uG!)O% zacQ!4^KGbnnT^9F`{ehsf8J}FtH715+Y=uX*V+S`>YjZjBERD8FGu*?iYee;FCV#E z!&c62`84|p!^{K9ps7H%OaTG{3om}@XVd7p3ybIGH-hIn zBaVoF`6`37T}Ey$wXZh`bSCPpW~g$K73c@&Y+$^vw8M?m43p%(iI1hUr+1BgRTaz2 zS-jC@uRZS5cjqkSXw8~th^jwwcrH!|S9ze$g~g3f23`96m4$LiL=C8U(bTY&#E}A( z%}z$_OeKr}Vf6WK2c4>}lthG@i%8N5Hv|?GnUP`sX1m_PfPe2?zn-ILcDA=i7kV-v zn_)_IQX;&~t(>_48|P|p{5acDcaKWT&w3>mSH*O^o@q&}5*b){`aKN{4-jgbzm=?vANvvre48R_7p* zbA|bhhBGuaZFpj9Sr4o4sw0WR`UoazPuk8o%g+go?-+PmySy_!L)`vjGl4R3`?8dXEX7U< z_xM|FLowev&MZFe7vpvc7wuLzQni~Ov)p6F;d~0T*i&sOZOv;=apF(PkZMFu)RqHF z=~I3BqV_YnkfYV(Y=wUN_VV`;`nMH|)^B#(me=s6bpd79aIeWM+L zn`%$2cFZ2A=bx-Ix~p!jjt9#A=R&tHcXBRnZI>3Q2UMA+T4WgC-)!WTnemP{m#!5a z2IX$pu41+{GU$(jm}Ztc{avohTftj?D}Og6f=E02>lhch{3}j$t6Mtm87I}yj>_Sn z4xM;76%PjaY98xc%Qp=B9Tx2A^@FN^7^9M~Yirm#9s06Yrt(VZPq@zciE~b-%~Oe@ z7L73y=78?9Zg;Sawk7w+sIrI$aNkx%pCVk?4SG5SW~_q%XUl1~UG=OJJ-;178jkYN z#C6)`jpt{+gfdE8DvMtEJl&W17H1SzZ%FWI4OUI?QbrhX5|Dx-=|x_vD)VG(uh1r) zkeH62Q>u1%l>1^F1(7GaPWnxMy4F;9Z`Z7C~gdk z5qGHApr#4D-{=Ro>A6`8XRJtYep%?%K@5~3x@QrB^G z{cf6cSsqr&Z#}Aql6lb@EAFed5t_y36N&`xU+I^2BFuW@?Y{K6Pm9pkyhc^^kj!7X z@e&D*EkaWGl@4ulZC%<~3RJlm*T;NnQrkO_zlgp!(yauEmQyY=hb`am>B%*8!tX$b z_RVMvS&NfLAmPe;Yq^2?f(S$WtMF$UUY5igm>;*=aEN)PZNK3WqvDIcVI8o%`!PZGvi{Ht&tH@aMYh^~x^}Bm=D<i= zCXc1Y8l12lNg$jMWxYZJF%iITqQzmw$*hEUHvYXmln+3IG@GJ&L&WMctgov&da^%u z2dmh)lcbMBGA@U_2>#VAUc#1Ft+9cjY_*}pyWU{1-0yHD0Z5KzIG3;`SV~VmWen(d z(2-Sa6+Q+>WEL8nby-)7g(96MPrHg5Smj{^$vSciEuQgoZT@CzArOH?cIHEZrkaUe z`ttb;&#|P;#xYGnh51i%C7e3qxRl1e>$6XH>)LBbZ-{R|(Wc=u6O~|}beDk)C$k)B=HT|v%VFiumxo4w(5>5YNY&01z9*Wm67WYL z9O(CyRcPC!jWHK+I5U3$4#=!d7z&n`w&!`~HKV$M9F*C3gqr(ox1sA7hlZvG=O@_e zfAP1rc6-;aKITCvnY-b(Q<<~Pko76`IkLwS<3@r68K`9s?wHIxqtoWDt57TZ5lP+h z-@EPhAxhVsl4YDZnn#Ax1Y6|fQ4p{&wthsNBhfOFJFM&>f0{;|M@XLw5P7P!wv%|3 zXIRCa-|-ozsO6`>2e7m1I;tg(Y*%Z?u9j~^gu+}ZtSk5e@k3FQ_6jhyJ zTjvg6RQ3~(mCyI*8&FN5O{sbC=Wv7E8B&r;jz3=6T^VxR;u5B6jQUol4?k}n20zMY zqq}9bW~GJpS9VRif@UGRgwI(reUq(5jQ=FEJ74R5AacEBVoR#8v!5=o@n7ZRIfM2> z5YAxk(ynyAjzlIQ4;r38&{uQ5f=Aq`hD z!FaJDRJV^x8hlSRMdPevvcGg7y-4iac4a?EOb!yHpRn~Y%u!k`;AX$SGb)3;<1nM^ zij=5`Zd@h-OSRoI-@$U>^I z3#STA3+v+Z1ypIl+;kHLa=>GmO?3K2E(P*KXU(K<%u4h;y0RDmD6OWy1a%I&1UZsT z=7q+s9{|0Z(qj429t$^_{b*5M%K5C@)@!uFR;vZm#)kGJp1ve%&Q1}lz@gtU@2QT%d6FlaD*6+@0KMid?2_l;r?Z*hF_t* z3xx_%|93yY7{l+r^b%NKq0pmU*LJ}nOJ+}j4~4p+q$sT$uhFVKRoma{c81O~TFy}; z^jGm#Ro=AUC&kJ3xQfNG;h0yQ@l5fM2j<++Bj<%=ru*Vy)}h4OY{9_-YgEhXrNO0n zWZ2Bj#pAcu#!qOT5#4*)f>`B+;#RO%E6)g%ep3Kmm-m$>Ra{pY4DFWJjL%`Lw1%SP z5-9oe_pesT6Nv0%(*daqe>}F~7qZRL;qJyw>)p|iUl1+4?Msm1Wnp+~^M8Hf@BuPV z((TMeV92@H4)zQAtEg!;#MK;YzZQ|j({~e|PkCRS&5$%&I5HrHMR_LmvVli9Px&tN zvQD68)|5!&)H|;G8?L)I{~2}8Q=BbxM~}qbPt`}&3MQ`#N=(ac6J<+s{xxN&?b{>H zltNAMd%jhFC1gyg^s4YYdBy~GeXi-%8yA^4?wr!UX5tk`=N7GZ2TIPF8KIrRdzb0u zH)dz%vY=~w9t3Y(SC=4Fcu3t;p<Jnwa?hGa$RZG*wZtZHgp{{kR>+m}o+G1wkm< zWbZpSc0TWLU^tVU5`M$=G`p@-UV2q~{3~wRQt)L+yy|MRE{}~hgntDOt|aUH_N`2t zYmD4AfBT5OD^%eGM~;0T@CoM`1aPc$IP z61=ybL{$X{vg$;$%uIcHz0oOil_q5R{sG8U^hms~*jr@2`~WO%PUl}!YH5u*1xS%b z*i?N+U)@AlG|jKz23iUUW82b!HW5g`KbB5j)p$TnKgD+4`zgu;t%`Ol)TAGcEu0X1 zcqyJl&K5NrzY)7CW*p1It8FE~#2=~Z*si-NUx2Ul{IH;j4v4!YEds5cxws`D&d3N5 z9T&z>e1JW1xQS|R8tAl4r?p~JmZ|&CS9hMZEb7?YZVV&2{y@Y{BvUWu{RHxvNyI5* zN9R|Hl87tq4cc3pzcn#au1uNL?IblM`DT@yI_u)FX)f4Ua9h}+IRP4S!zaX=w>Hb# zX6^<(rU`89`L+iI%fI)9nHD40+TY#n1yuZ>bWEIgociDB?nYAzd~>A=JRO})SU^Q= z2S;WrS;rhx)Gxo3bIY1dK8Nj%khxc}{t4k$fvmxkj0jJczArbVUq$bYUgiWuRHy^p z=)~C0aGhzvlTSlBO(E1t*CF_s?XYgU>bQ=krXc^$39nn|dXk>~Iz3(db*+$NI*FRD z!vNwqyR)J7W0j(>zV3(zS;SK8pOd6|WT!_cbHIy6JDZY4Gc-9=39JT<619lae2EhI z_IUN1jIQzR8>L-FjRn^e$IHIowRmXK}+yX4D>!KQ{ zWo7k4Dh)v3gc`f<6z;wkRwNOTC(L|JG&w6A2JVGf`g$OxY;oaOsnmE(*H8K~GQZ)< zmy^+!tfFNBrHY}_e!E-fwSsCzvo(FZ$ z7@YI_T4u;zUMO2W!zIg$ee%D9iY-m=;ybGfIErVScjvE)f{1;Rz_P@|85L9#Y8I+= zm<}~fXG7apYi|i|mO%*O0l48T>Uv=bvdd+wf}e9j=@GYu5U4yjC%2y2ZBzW<3j05sBUrb2?mjs51`SCOkK}J%d;r+> z-7GHN-p_9>Xx*X(1{zXZsW6fWi$4H8z5zTn#GD?wn`1T@DH<`}AWwd?-XE`UMve6{ z578lDSm4OMO$#mM{MDzp23ht5{sYdFp;kf?#vesg^E_{+XiqC9Ytb}!``LT3QvNdR zlx!6F*+f?Jt+mSobVqrXXp}@3|N4z4__|u&%{_idfn3meaSB75=fWx_`PrRxhfHkv z3>7{DIZDL>V@X0PM`||K3lz9k(S?@9X?dKN|^Pu#YsWeL#NPf z2i&!D0&f@I*6Z1~l{{IKyfdfy?@2{v2nFF7xhB0}cwrX{aHRF~MGeFGY1c?3r8aBF z6+!b~62v}*41Q}iXj!Op)Q_TA|6!gy3}>@p^DoymPV+Cw6(uZrfcaT`oXi={D@)*$ zm|y@G!?YUb0{L;U@}mZg7Onw{i`w+hcpl%&GFx?P>m|{&xke-zyIXA@p)=5o$OHhD z9z5T6d|9xgc)1y~PUEkl%#7^}rv`dcP}=L%FbKGYhuuB$=PlF4>gX7)@2qT}p3`Kq z2d8>F2MR7ad9UFg1m`>mo^vxX+Ex4=H^{V7Yf-WBg%uTL41@OORFjzh-IX2g|9CUX z!`nY|SK1nFZ~sfMiP}3Oe@B?$y*Vzh)@bKYo>%>S->z{=5)aLjpQr)ip|ns2QLhs)a2Ypih-NAxf&sPuK^||3gU|PL`sJ}n;jdtI;f>C^ zT%iiSU5qxR0g7)KN(~AzEd8_V(`!BezsorTgz*i=ai}BU31IU?tE&VlJ-1;G)n|(B z>_E$YDS2t%@;^1JS}EYgFm1e9J{3mTDoVzYr5X5`Yzj^v?Va$@~^#0D5NV7&7v%6duSijG@lDXm}kr=ebq6_doNtZxok#qc4~^ zwp`W;72496u1@;`_?&fT2db0ItqwW6Yi+pV?UMUHvu+NHNSO~qo$*xj9CU_H|0zn8 z>8JhkZrV~}pb;F#&e7`ObO5p88l8li zSpdbHUN-TQ+g7>54Z1j(rIJS)(sy4)TiCnW2w;Db=*zt^1Np4j*;0Go7E#4LGtH!| zX$bh3*1Ofv|5BNMJ#MD$&y>|cS44AT-RgJ$Tn=Vqv?}%2-ui}7wcmM&t{IzUq%H^Xg_P-UU-B|qqi0il%&IpLG5N1=-;2%EJ z{6>?`j>hXjvlparnYW+r7m9=--5OvGO^Ta+$APQK1mmh!vjoO87q)y|SEy(<6ipH` znK9E4|DMiu)-cwb8%)4+s$*0zdr&j^x0Bbr#XZdLnaF3EF%2)oC1Ml1340^!a+PaY znC_q>roi&}+%ActkoKCTHEjTI$!)R5UYwg_K?B6DRxnOETcJA^HjG|L*YoS( zV50u6@s|*dEP+o-E$9q}Jh`fK^$#!N}I#E65*ythTu{#Cquy3}c?-cukX&Ft%PEX#_EgY&kCz zV^SK+0hGEqIxy!h=|Hp7gL_~|Ym<-fEjVMUJ)ZLVhK7fPF`jp+wYiEUKVJ=#{4$*Ac z^tywyo*~OtZu=x*?vZeh<0v&3Q@&_u@RulD-xzz!?FA=H)tYUq$@(kXtyu7@SbKX? z>hy}jIFg;|#zuxfc$*lN*D4N7*@0x3j8&ovGzMc1SnsaJ-z?7ID-4L6G~8-KnsO=% z$}t@QCVsjV)V+|WY&gHwyNl;Xhktv-EW6qDvUmzTQnYQ6%3@R(z#z0fufWX3ofWcC z|R z;8l8bo90Y~d5=(0&09;ACr)+S6n{3tX@Dh*;nRth=54#q3i9B!;$8HqzrixrM^+)^ z*3C!4GIl{Ip`f}8J(BYHS8@MA8eMzR>rN8THAV4S&(ss{NI?F*R{t+JRdcQoIBF(I z)d-cW`Jf)c-5R2kImuF)66JXoV5WS!B78bqj7de-f~1lrd`&rJ_2}R*50QN)cJmP9 znCAZ<0HHu$zf^MDj&LgWg$$8su#M~q1oD09nzXY*kObO%$yHdD9V>-DddI6J`@U-# zSC;a`lFX7RQ~;DCn#vlBe-uhM3vc1;i4sWN`Pf&S zvFJG-v`a;Bh2-pZUKg_(cZNjR1J5Q>Pp5CtSC;G3omXCy`-232Ae!_${YvuF!4~n~ zDyE>(tUFL}N#prflev`YcTDKYK+Xuk>0I!aJg$zp$C5T?r-$_Am&JNnU~rOd$FFMk zO=-ohhji)~d2q2AInM^Xui^A|pJ7ZkqIrXnd@vXtP@a6d&W+F50c&#ev?q@?) zW5caH`Mf_VgeDA%7%=I{&3dng)=%u~QMpbc1EqOfQO0~ZIhJ29b=VmkXRjHrRq*GR z{gr8)=gJ)OUOqqIkE!k8emQy+{v*vSUKxxk;G2ZyPCFX&TTMp%B&{9Q#C}q5z;Z#a zQ1R3&K8XseWO=~jKkS?LZ)gtR~u0QFb16PNP zZl;LGED*RnWpWK<8#tVNrBBe)f3v=9f%#W_V;k&w)11^@nbt+(OGX%)$d6K_8iYyV zncL>JF%o&gk^HLz?6N7q&MBf9w=lr~cRlD-UCH79R#{IgL#iDP-w{LJkFn; zXlVLVX;QSd_h~$AF^2yD>l)+CQjC(I(t`1ffK>Y$a)Y(5C{~Jhd&z-jx3Ufn)jBadzC+O8YZ@$|CkCN8MP#=dLkLwuxI)pV!JxG4-fz;35!^ z-78^m4uAUfV%07!u4R?N$-XsS8wVrsrsRy&9rhi3j+Rn1Zo!5zgYQt@ZQBxomfg~-?a(s()JH4T_isv0Wx}CTu4dk{t_Z3fDE;PH;+%_}s3z6z6M%OM$*r0qf2}034 zibCfdYBQn|epy{g@OKWi(4Zy&yFdVB9COpwqthdh+5*nxmT$bo_cd21mglr<7xwyf zvdwWIMdS|ToOZ7~)x2X25YGzji6kWMbCx66S8?Kf5-n!VHI{jy^3M$s0P|jddGN;B zn25Cri?A)eRSZTuRnS!Jd9cJvveKG4UkvIZ{{T{LIU-{LX>pe11J53nV_mma(KMLj zwfih&xDgh~1E(k6t?B*^zVPM6&Zw7A${}V|8%}aS=M|gcn~S|d!ph`a>}e%!$Bagx zasciB0N1Z8Hfg&->1Fw|-N+P_FHviE`6HIo;d6CxzDSSCJ$-5mm>sTPH7UB(CYE6f zY>gZhV7V@x>uwDJ?=DtZoUBq16b`*JQhl{8D+xO9!Fk6C~R5P}E zD6LBiCW&5Ih7@B8yqedsun6+T7YL_-1wKSeZ7>!bF~{p)Myh+M9~mkZlanzL75>)P zv4Qh)PbZ~X&>%8h-ImEC6!?_3t>z*zK-nY?I#cW!bjfbsY0@q2$UL9Il;wDZC|YU1 zGUO9SZ=}Mw=gw^7uTxq&Wz5j&4FbooG=;Z0;~C9!a%*<+KbK)`x!B-4_a>;{>Nj(P z9n8dF;G*y=1qn%=6RQX==S!(-)+?y2w=O4Ohvbi-HIsSbo2OG9q9we2K2eicC5ZzI zjwmX2*KI0mms8KHUQSNh4VGt`Qu4^sIqt_Mo0E}>dPV`ssWveL#~U^|I2EqOH@nc! z7VPqq*pph;8gY>U13c9eZ*t0A$c7yK=Q#a3n(6eAkZDmoU%ks?a|{korE$sH=X@ZY zu4bjQ?LU(QV77YtRlO@ulIro|xpDFg>_*A_ani3_q_S$UCVpMVKVv2G90M|7Hz9rMN^(m%Ujz5it(0{3@buO(H zb5)1smo-Tx__L_eWD#j`M>4!l2O-do^&YIzI@;}#5AT8d!_e0?2gC{g0Ohr;P5$c< zS5J)WZsRF6lY)Ej*sdiSoZQwu8C0U7$;@<;S-tL$BoW}3UNUQukHdF{;^AX}lM{g0 zaB^{)-L=;A)r~-Bi;wP+{Hoo)p&#r2hH+JQtmAtN?@V}Q8iDO}>-0QmFcw|W9!k}F6aqU^*-z8>~-x5y! z8DYo)q#3QMyO_{cvOJp9viMF}79%MaOW%Rln)P1|85>Ks8x(%%cdse3R{sEmNN(=QZ$k*Skbx!$LEgN4f59JCdsrWeUWjLkiZz5WNrZNn<~Qa8+}P`iwBKs9x3<~1B+k#~u5u1YBO;3pO7-#t-m+xUWs}Q@PyVe)&N}m1$>?uR7H2Kx zOq~g<*2yx*oCBX~)00NIRw}NJz-I(vrdvC>VjJyF0Ou7EWmH-jer${UBz-D)^&6Ov z%QVaMV^$g$*cjWm2b_wHppHc$m4H2RwNA{*CW)8CH_G|@Nk8u>HD!ELaz6Nl{{ReD zX}65<2&kIO9+;(MT9lVldLI!$QxjRMa!x@M=GF9!Gnif`JxY%M0EKgA)R$hpaY=P# z!8_+ZwN408sUxCoM@^dIIlr_RNP`QzBd^p|)}A}NR)kLh2d3Z&9Ou@!?KaWplIAD* zh=GdacNLmtmv&0z`qq59?rqJc$EXPxALCV^?C=Z(}1DGJn9irlQ2^M*5@bYySZF^MAs!WFK_<5&BjAVp$`!Rf!dy+%L>< z1#@@pA=BoTa^JgraB!dkI|^`DMa|ii^=pVfvUNDbj7X5@%NZjh^38e1zZ@3!))w}* z?9od(RcCyc$Qfp@LcY0}&m08n$wfvFKTHeEHsLgF>Yxb7}z{T4NppU)uuI|dr3mrCAkrXk&$@E(D zn`=0&Z*FC|yNnl2fGcuOy>3}+n=YZZ*iO~jS=*-_g*+2n@0H(A)OoUMl5gr%#dDx+H0(1hZ1Chmj6*^w(Z1~#v zhNRR{r#8KHA=?O8BkA&ve>%#ZMr)R4C76IoCp1Qk#MG$}GdAwRv~fy09IkSdz2|YZ zOwWIA2Tw77on5=PFMT;ZH<~o4T5IUMn2A+!x$(f~y=|w5E-&Vm>PY~#5|Q$9Pd|{X zxvb4qHsfSveTayoVT=_xrbT5v!kvIBsLtj%717_@{f1~QqEHZSP){d;RBa=Z?XskV zvw38C*7WD@7}TeFw*Iyv(R3&;qnb%&X-r`Jh;TnX^{HEcJf3DUdCheCWQlK} zKqM-pILJR*jtvmaV1o8|;E72&7~DbiH8gknCY2bD-Zr{*=uac_HH6*Uv9&02#W_1@ zU9wplQ;KNfcR<9F1_$P9)t#Zy?(T1HZ)1zj&&$UHIqGYly74{qszfC%)3(vi=U7wR zyv|-(UPe9G=A0?X@1Zp-!Y@U3cP-*e7z@h`ZFMm`NdExhYaZ{!x`o!|-XT(Q1Y;kq zV_TA77@;C^%t`8N(1j={tq(SJ=O*s$=sHP@v1Ve-dy|^3;pIC=dbi~&@<<uoOd72xK&1(>B@v$PJ8UL zAt70~rWLqfL-~+;*nitok;ml;a<(B*+-)I zTH4w$z@%G_`G-oHJy{OJVDv8#{)T!MXTGfmfLw!YLR`5ex`w&C9uJdr~q7T%ioqGrS98=p7))+7-AZzSLtJ(~)gQ!&QsTi8i3|@6I$cEY+s`K0a!M&9lhBU+D>+)m)bD*xF4&@I>un+#M0dd#135g` zvFOMB83xV*it#H!c@Cd5%8eiVOk+Dp!~bS2JW{d4FAbH&Vk%D?g3(6fJmH9_z9&gCS?T)^K5Ozg#{#_ZHBCYR^4w0p zM>XkSVBQ`rGtS1;O1zUtqS`}k9+%0d>s#^o#2@vxYJc5-@u#k_pom87%2TrkENf&O)*r+DmR z3U;0Di_u$xWqr-^$m4E!Jk&6UWS2Pqj5 zxnqXv2*pa0HE?~2qztP2S%)2sXK4>C@sBf>!Or2F^IGy9>Q&*8DHuC(S=uVWZvpci z(nTdoxIVQKdKyAL@JS;su9n_k$k3N0t_KIPt=qjZA=9Op6NOFK&$VV;OA*vyD&rHt5B8%~dw0LD6u_NRy-d7dy=cmax)?M$?} zglVb04>1fJ91bd50+VW!GMxV9dF|Gz>_m4Umra1FERm7waaosI1WUD%9AxqbO6WBK z8)^3dFvwrZs@yXZ8gBVRaf3-Q$sD9sWiHTs_$Q+toYl*le6U<}s}_<=z91xQ79#}v znwcb$Tg#+iQQTEYkpySx)-y$^mT;yvMg!KcC$^e4eb%qFNgIbs?jez()NRy8 zm}Fvl_Q&|u8>u0V!tI;E`V9Sy@Tw@#&Oopy|R<%4(MFUMDqWPK291fMnYW^a!eLm{e9J!H??+*$G zt#qC&(Ph?cpjfVi1~PdmxO44Zb$#&XQkHNIsFN`ThUF>%9@VV{2k|=-iIqiuNZig} z5=l4PtyXZtIKWV&3xxxztleB#&!k&iLlT(0#*@ocz%D=f^?Uvi9aF=zUtP{E6W4QOnwrAUOiu*jwe74Tbn+xp?GfsD2Q_73D`%Af zGue3WUqcz%2_G9eSDTaA!WIwqlNoUsC#Q4xRoxcWIVPLs-c%2nhxDoAfljWY{iDa> zQ)mqmUEQOw&lsXl-DJWG+Aoc<$C>Sn}j=%C9G-SGBOZTc5N{ z$r5ZUmOR#V&xm9<8MTFC`AFQ{n#jDrp5e1J?*7E_U6i3G1B$IkDvhm9h)JPoY}jVH zlfF40;Z<(DRdC>?tWn#iP6kbLqC&%gNU^aaC%s>?jqdd`b>@|pi^yf<^LfQ(ncVdN zo|PPCM;|EsYQ@ZG(}!XQ$}0VZkd_r?=uKfKV`#^j=w+l5$a2Khm9-0k!~s^)(pj#& znA>RQpsRW|m*(C|mrSfz?w~u5)Y4MY<8OJ3>N}B zR6AXHVeMI8Xr4gm8)9efpxQr5^dQ@UJlUwmY>ZhqCgNm>dS@;93b&@Uq<8RnQ9Q4_ z0P-9G_z&@_i3_sG%A~5FnEF+XI7F9L?qtIWIb3$BlF+D2RCjtj@?L2vJn0)dXEG~u8a)Bp$D<97fq?^k5k$w zOWk^r>XF6$m2~Xvv6TZMK_j2mxW$IrMP`pskL7KoNQ|dHt#!TwFgdOz zJU^%ltAto2XN`vOfO*Dv!LBH~T{E(AZp|Iv!;LturG2P0u}G1pl$#E4Pbc)N9yY%+ z&uwCXhHhh5@rGdsta=gk}4k9=eF&2u`%)LPE3r>WVkOf zIKu`-=zlR;H?7T}m8{D8-GouvTsp#ls%{uwMS1;|!HNl+1+lsIgMw?)JV6c8t--dA zS0>z|gzm)u06bR_YZk6;WVepeRw%9Vv>i{>jtH-^$E{{YbAz*m2oL_Cx9UrOhxUM*T0zayrcZ0^yABnx$KJ3Y{}Eq10d{DM>* z=f8UEt**50yNTnH*hz0K&?ZDAGB!BD_Z)FuzJq95 z-8P~m3aTSQI{Fs(_OBZm8QpWe7RRB5gQ+=dV;9Cq_cnG3A>T4H30wlIP6r@=g>ll@ zsz%P;0LeJ7M)7zIY@=d|S)Xq`dRIEu1%bdu1a@F++`wrzZR(T?u)$mu})R5aX>n(i1J(M9Nnu9Wh>#N0%m=u-36Vho{n-wvww6&~_l# zR{kD{M$D2(xEym_&z~Z(9%10)ky)p6NynFQL=vd#YD`JDp!}&)>OuiK4t+&lv=Uu0 zMTJ=7JQ}pjB^$DobIhEKkDe`Z_E9l7~*Y!6N6}UK!HxSAWMKN{z=%x)UaI(rb0#uBOp5D0H^gVc(infrl9)u;fQa zw3kz@hfvczuPtsKG{!N=z^k^G7EsJ&g82z36AZ(kt{B50JQGZDA_B)G4{ChAV)mX# zpvxJ!5*3y*WKEjBg7Z5sUl`1{{VOcN}evgP8dYvzE>4(NKljx zmF^X_8$yhjF+W~CF;L&w%-Ti4!V=4qhVD&cCyO_I`$*g9*#323c$ZI=Hce{aFy|OG zo~i6@?zOqREoN0*#M#CUFltQ_G4>)rIP+xd{_(7M{7GO)+i^60#2T|@tJ*^uNNA0D@~4M)FesaZ!ZO(cSa+p>&{ZUE-6 zrtu1-k~Al{r%G!TAdyr%Vkg3|U z8(UjjiGIfdsAG`LStPR_1w$&al>IALOSbwXdexz8v+YszIs^Kgn-`T<%grCmL_lrGQ)LgSNL{u72F z1;R#wLXY)~GRHo(Vq|vHE}lkm6u1Bm0PRyMjXqOYP>YW{IQcB#F|5~=MQ4AN!N+8HNjfV5X&`?V+c!qfS^f_q7SQdHIr$Zo zgWIJ-w|bqd}9rTjo?_+nxqL8jK!ki^NXyg5`VJZTSBH zNF6G0N+|0*Lp}ADl^6DS4$(S^0me!J&OP&r@>kXM2>e?zc~H#p#9zy2*@DDyJx>+h z{6^K^Pw@5El5r_c2|NH$8xC7K**^-;Ul@4)@W}dkgi0Lj!5GLKs|?1P(Ag(_LSdax=BN~ zlEw3g_i$g-f$Q&C_m(%8dh8lX{_)ySumy4us5k_A9u0VN!_kwoTD?(i$_Jq7Nv{oN z%2=<;%6l4s?tVI9Ur%wTTs_h>EU5V0KJnYebI|kn*4SFspR$)SBsj3x4>(@BuI4Iu-sVOh4)iD5@L%W!K~#yVZz zqdlA3POupFUoDdCpn7xKcW%DecIC3(K%l&JwgIl!@UQe|~k|qb4 z3t%6pt`;km+j4~=b&-e!;~-~@R!~hgnRR5Om5Z`XWU<6eyvd$ESwY7>;<_IWEwf7g zQ%#(I8jta=N>?!(X^;X`fCF+m*H7T}cD$UwRs`SVF!zup>RgvJJ^AfP0F|+C1A#oMLm2f0Wc**4<5eOCnO`SwReh zbq6(CTL^AEv@vB-a6PKkx`F2tfC3Ymr{VQ)F9nY~k6-qUCjHhlz4VHbXs~W&UCHw2 zA-|AtWp08NTWF9S-!aD=W9wYS?AGSO*`kokZ*40A zLleA?y!Ym>X?_;fG|g^y)h#3tJ-Jfh!O1;=_2QFNf(Z1jH7%?~tSuWikWNU+@9$nl zZz$82kF)$)^f>~RN`CUS?zQwsB^|@wUd+!S+++@eKbWdl(vf>E2S%+eHKCg7K(?V8 z6Vx8{QfOXl>6R#-M%~T@EV`s+S){FH`LgrMQiTY)JKkTC{{S)u+}4p3>eP@x&fE&s zx6@^~vp{g0U9u|VHZa=6WXW(y>0eN!lvR&~lqBTuv5AeYR~aDF?d>GJmC76_1Dd)N z4NGc96y>=*_NlZO%+p;naz;AQQNBxxg*EMLE}N!91&iN1mzFo+FDfzpYoM|zCYEm_ zjS@$YWwwHP&vIwpqE36V*5I42pR%U_BOA>cWcmBB=bbDnd_=qrxS$DyUm8j=|` zX35;Ek8q=p+CGnmn( zar{mH0N1LfUBn2%KAG!MMQuFUJmcE1<-f$vo^+qMi*2f01;lKzFZ&~!&z4gwW!aqj zoYlB=#$(AO)strpw-bD)t_bFp;~fw+DQ;xjtc;~qFab5Yr&(N!c^&03KtWR5K|ePK z8LZaTEo~XqV&KvbTL^=b$1z(Yv}@%1BGBVanDW-ajYgI5nfJ9-t+#nH*<=QkkNN#-_Oqu*)|16-kpLA|GD+N69)`J( z8F*pznXG1Z-q$hw%rmwo01ThZbgruSRZT`zrR!(2GmM?uXz6@QeQmATCB4%$Z9TT~ zs<|K$)K?=2u+*S}7}!iAL~-Vv5}C*5Fn>CcHF#&!g|xHz^2GpCJ9j%k#ybB1^~G06 zH5nqY`#hmxxnlx=zbL@xw>$!W3cqVSRW(jfcU^Dz?bhM&-7cmatn=!vab+IZRn;-v z`jMX8eih#Ma>H+nwEITn!sbM8RL38Ya-D6As$J0W`Ihp0f zT}Q8tLNO%r+Ct)QmfxpRQ|`_jjLTiT>tC z&(WEI0|5FS^}=|IPPn&pQz(l}a~LrJyL_Ht2d``&uYlhlFSS0zl>G8}`)b*Y8M znI}otKH`<(vv}C7(Vh=__4K~SoZPLXh;4OMTU19yJ4QO%cW4>CpLc zF_lJFrbjgq(#y>t54{IK2T#VcpDS#-e$ho0Q%%ukZ23-v9yXI!?X=xG0$MBEh}fKQ zBMvF4q&$5|&$TbuB@M$IW|E4wqm-JKh?waRg=253+^aFkK7N0lLb_G_ZxKyEN+WH< zdIQce+L5g%UWTF(+~DJ}quH+F_P$1ne{I0UmF(Oe2x!=G`O_?KuWX9KY+#Z=q>{32 z>Us={i4D%z%P`uThdoV4G}FN>P8gPC$k*c%n;Ko_ zH0a2h-SZX*W9{{+w9B}pzD8*y4q@mVde%ZmrZ5}qV>tB1OpxfqII=}2{eWpY5(wfU zea)Neq-#r{nxH$0QbBaaE?i6J1*y ztvcyeAWL8d>(jkixz%j0Eai?nJH~cW0P@KGwF>E)yEIQ54<%R2LUF;{?NV4~;u#&I zT!|TQ3GKy04zFMWM{t)mm>33B`F}B*pGv*5@@5}vhy8QoE(S(;G-?Xn&vv~Z=*0RF zRY3jOH8!O@a6p1a#`gew)?|8sn#HDs0K1BU{BxXisfu1%BvmgYd7W(D=7Y$VgcHDH8ry8H}>XeBS@mgLpM|S zRg1kAVWu02@;5F+vB&9ADzSq~PS-6`=1$1XwwA~=C|GZNE^*T}wHBa}NRa7P(#g1m zl1yYWkWV0vD~%Ca!VHe`y94)BV;_mG+RD@I-Wh^LcZeO^f*g{kAfIzyMsG%Lo0651 z>D=tXR8n@frh?sEeXD)EHqoSU?h!NXP)`RA2Mx&M-m1X!>Q8eF>nq{GF~|dyJPru= z1b%ggEv>bbinh0{bkXh-B&37NgU4)Qv{S^FjWS0JQUzAZh|V^E2V9Q%>t82EPMuX& z+}78(_1yGjse?oh1P3$#aU2h2|ck&(wfwM$VES+xHEVYWpU|^j%!&iRrj!vsZ|Y*LB=vT7!~VR$JTXk zR{Wi<(%P$Oe_NcfqaIhtweDd#g7!IPX#AlP<$3Bs&N19p)`@E!{;dV{S4_gxD@Y~) zXRdI-;GFjKs{SC=A-A@Y+Tu7-tv*o%Xc1R%=sNt^&T;jtR{Dej))1C!6OF`2<}U#A z_p#TYtR60OpR~iq$?TrL@J&6H(o=UgVb$!W`z4LcQb!%SWj7pdCk@9w)n``JAs!rx z7$lQ6=#I}3``8@dk6fDOE;SeN1;&SOECEtU8DcT8?XEaT85!t%@#$T*g|2AV5!}If{*M~M2It@(sqSl-@gIk@dtF9* z`!tq$oC}0l8wwYIMlrxSG^2#4H024ePO16>lQ~&zF5!96Ru3gG&Qp@Zk}?71~4!RLQd$Y@TuNUbX^M*Y5A{+fp2QnR<$90vV;e7UpQ|$%sXk0OSIB_4KT- z4^MS1%3Ipl{igQi8_x33CzTrD^Nes#KQUc&@>@xA8dYbD?3g2A=bn`xg>NseC%e1S z?BbF*!y#rIzxPIZ<2>=$R`}YNjBxgT_U(SZ*Fz{m^*P^72s}!wqxg8)+)7{&NF=vH z;X+2>{GR(rWgghCGrzslr~5LPmDL@|5&aLRzCSATpNSJQU1`ZJzTg$(m=Tb{lwkXO z!vpJFu!`Q_QniZe%}Xu3g%%6MBw;fNmGgkELn=i14V!KC~t+z5{Zf&3fNF5KirFUh~ zgs8`sR)6q(_dLvAm1LI3n!cZSZip80HeZsXJ^iWn@J!RHJaP=4gb|u$y_MjRnM>?4 z9PQ5>)`h%Ra9>#Ymk!GEs<0&S&r14;)aG_a&rXVjZqd-46&!Ec$f$<{q0g_iasL3? zcTq75Gk^~O8ufWL{OGJpZ9e#~Cw)R=EP?GUqyfn0AP-+^=cKONI2m?Pd)&<4vQ9}_rd`EZpS(hCBYohRsw)ZzOc~<#z5 zs?0iLusFDvjCb~@&PTIPp^}<(fafNhZ6*Zajckh>l_zZHAMFaJ&3ui6y@mueGZR#EyNm|F!|L_)oA-gw7f}g5&DXd zEt`*)WTy)loP4aO=xL=M#JNwo?^@KW8(D%t-6;bmftVvNn+f?Bo&frEsLVQ*h3(9jw(`gR zh;SrLs(xXSPu8vNmcrA@MQe3aC{-B*WSa5wRFy=Rb?4mrOor}{GyeCNL~{ByirC#w z*Av9gHZ~}4=~wUXAA6?!4ww~@q%ga`ok7b9ywGu+FL7FTaK>&Qa{-=DHPMz`R+l!f zm40SCK$FA4M@7y070?y4fyX7f=9I-F^(X05K)}M0EM@$*AYfLdwWG<)CNOK0(JdqLrp9CgzfRQSE2d28^2s6A zk0hzSC#W^w*#r?6>`a?eHlt3pvejslf_%pW@DyB9EwYs z$IRVN%}Kjzf-z45_kAHftHSN9A$pyyoG|Wj=#!-KjKE}#9yuq1d1P?5MvuNaz*8{lv zQ7yDF+D=^|LfgN3c{m5AYr>~OwRIY@t^38Q*QfkD>~>wX@n;I6 zLNE!zIOL8q&q~;`w}#`wHfSc5DK`$T{SUnt#~!8yJ?} z-ttikg%Oz;9hf`@{5a3ySM3Cn&oZcHV*Lj>r`|(+B}5Y&Xk){c+lC!U=kOF}RIv0R zcCPv+!jznjdsNd*_Dy&8adRS!B9B11CwG2-m1vzR+2*%KjD-p%^3P0;qv?Xbl_a{N zT12T4X%*tkrgsb*+o{HLoO{&M-ZSa&-98kqcgq0+dve_K$8p}KDxM;@v*lkl_7s~@(CZ@b z?w@(#f#<;)o^>u}KsRK90ndI7a60t2$vWBETTH?h5u--sHv!y{)4h6y+C!yjZ3GLl zD3su5HNqLAcPvjN=cRj)z(P@tz1EjQIZdq&790DMKiQ#XifEkqk$Hq~0m0|rEP8rZ zNZRc1!5drKD=e-D3|U`16Y1)HwNCF&vV+6|>J`M2+D==Zt(E8XHD^gl)5BIOY~zv^ zMOThNjAZrCTH(ZCsllm9HvEkvHqm|cAp*U-w1K5vvAT>Bxa5P_sgUYs$DgfgtSw z4!>IJc-j_HZ|>A^jI7c*i{#sSVp!C(&PvEn-Q$z=uST%c4ULpYWZY2#sB8`R9YN0` zxm%^vBb^l4D3)d|AZwx;A>Z4uIK^~u{f_3&7!9#wBtcb}5)|#uYs1G^RihqM($w|v zYE8?P>ttv6wj0Rwh^}o!FB4owL~#SSxjf_AnWbs5wxKQLcJf6r+_JZrc7jhRnC;Fp z+a9$Jp>=t0$c9zi2W&l?#EsAWAX z(!SK@-P}Li9n@4m+98wYSkJKrsuGlMp^aEZqE~i2`rvsMme7r^+wqh2u8YBNl)sc5 zat&9f3$Gv9FqO`TmO<5S}(yFOq zM?qYlg>8f=z@(Wh%eb!`8t5g|Oo_McF`up~u9RBd86po8;zl{guRqp^%_Pw0O}Qxx zd2XqyTTQ)(?xa$=P& zA%WnIm82xQnN)<9$hoEFO*$_!Y%q(V=O&+LG>@n}IZ~cTd~F?bimzdB<=DiNTe8Tg z0pm2fYnX4Cy1FOX`7EcdYOZG#^tq*Tm@Q_QDw2p>rBHt%%6{mEBxHu7Tb40g=3w!d z+k@EE@3A3@HxlH44mhGRvK-@gVo@8%ow4WgG^#&&j)M0QpFD93pDmaNa(03}D?oEGXuYicj$ z>XxJ~PFxSlv$YEen!@rxq=!~uK=!GOwJveG8k%afNDL}|QPUokYCS3t2WP z4V(Kj4<1!ioG&Dtjw{XYZKq2+Xyhy>F|+O?oRUp>*tafa%ice!?&YdJ&GUAbPeU6? zvw}Mg!fcz5U)F`)P%a!zN1Z3aTpP3vm{l zmdw${%O?HqatAr86JJ~=LP!)Im=z4HT|+w-VceY1)S6_a1)-;@c%B5FDB)P8Xo19z zncdljeL4|?So(*G@Aj00MQ(_qN0CO|!yK>w0AJp+wYe4;ppM;NisQ&;w)Z)q^eD{Din#vQe$^i5os>aaKl>;nB zFa~p74?rm>xC6g+m(4DyI3C3%9N}U}e7OcKkCQ010 zXQ;B9q=lkyGB5#+$IRWi_o?s97Z%L-G8S!wA{QXB1CD!hT>h5~Nh3(`O4AIZC;>)C za8LMFoc?{rE$Z64#OKA={DYIjes`yIr<8UOPhN;nO)qy;SjlxgwHiKwa!3j`Cxir|p*MhAX4HCEa=3;9iQ_VYt0 zn(Z1AWM56*`8D4yHkWJuokgO15XW(>J@uTIFC149!z)A>s9X#K+o|`hnXhDm zD6g(0DnHdss>RkuBc^-TLcV3Egp)?+w})4D*^iVeoPoi|UZcMl zsvp~?(n#9r=ggZ~HWCz`-LS_4A5}GKDei`du&gkz*+RHH4alP>89bglR#nKh)b#*9 z*&_uAmgRo-^#kS#2OlSrzW)l2N_wNJwoE@;Uo`sV~2JWlvVqu*KaweMQ`S)0G+uwZ1VhM@z{Q~?&a`m znv;K-=VQN&%w>PKTsgoBQF21zw+{LIgooN>_pRUN&}#P1Bu+Z*p34x_L? zq5Lb(o+`ZMd^}X5p7-DUtZf=_OW$^5SqN@2DWO>87C)U>oU=)|ah}xZP_mMG*LCi$ z$w-YO4V~((k5vYvMMa3>H3Z1qfsabE$IArOWS1zTZgN=uw3kw!LBZKa%aQ*80yQLa zN?Z-@2m93*nZfx^DbY(AV^)$Bn_Wv{;n(1r}86|gZvn(~ zJ^ifH#W=kM<0ly-xW!%jQruZRy4=J=pOr;7EJ0+5Y?jw(9|O}Mz+fccX&g9ow2V2gNV1$J%0;GrOjo;V|hCo0nC-a>0z z8Q;kFnbBTI_W*I8wU?@<-4b&j$iNb$af6<)Ksp@K5 z#kthH$mO~ag9{%qvUcEu)}q#$0TrM!`SBZJ`_JzWTJkd=-PBioQS@0m_LQ_=%yTxE z4L#h_96W+zqX&SUbBgI^)-EIwu4Hd1N+~Uj1J=218Vg9LxRM)>IkAjm?$+i$a%-n4 z<&{~b(J#%JaSCdbA9+8?6@JxnWpJ#jyUsurJ-f3YW+j`|j%vJHO!EH#zG}s&1v=*y z^bd37F5QMs?DJrp(GGn3jQ;?5e<~&fZQ%nl7sso$vS^xO-cgM=K)V-`u?Ae29#Hz4G`c{{YrWu8T{vO*mT?k2^r#PH^Odh0ktA zc&gEZ7LLfn2W~U}0N1U_VV$gP5fGPWMhY>KK9$Qn1t`->q^+;@xvHxtEsTvu=JEqO z+6f^+g3+^QBRzTkp1z{5=~pl2IYyL4DsppyjNqvqJ*oG0;%nGqxPY>N!O*tW!Nzbi znwsP7SE(Ell!^rbL4FE>!2Jicd3c!7qSPXjzgz9MW1%~%nHOr-`rNZ4NXBT1QPdU# z93I&ny{Rs>8@r2lL-P=a%nEt@eJe&yElrc&w3ACLOsMJ-l~bIB0Gtk$WND#n*49W794fSrzW|Usaa1)6*^*m0A(BW04&o+{ta$_;d!FBo zbWxzH-L0+BrvCt@E34SsX!Xl`YgE0lUp1m*8?FP4azV#A1DfqL&jr}&@LFF_aVy=d zPPb4842&Fo(mk>(kkQ^zsoKY?O+1$F>$#XPJ1`6Vc;oS{O+wPj-6FoQ)qKVCT3;kK zHlQbI0P=n7C`z3vb8`Hf{E4fn&<9q?qQB;MZcV}K6gZ%9_0R+ zqMstRgS)vRM%)Wg$C+pcB6yxE1L-jrND)y$SB5g(MM1WluBjpvT?>eFa@8s`Qj3(v|-I0P9jO zZBgdex^&HZ4Ays0TQ3PZO(ymv=L0=D;{uaR(XB0KiFGAa0^CNfq%ypPnVX^d3~^O8 z2DOtz3+8WPRnjq?-e!CLJo8%G3|9)*V^EAK1T;hqsUu@7Mtb^w2C|MD5gE8b$?BSG zPnGvxrKv^J<~g<&_A$wB%obTCBN-rkr1Y+~E7gO<65d=yqCG!PLfy~ISn=*~1#x$5 zWST9}d4#iWZktYPdJwZ85M5o!#yHSL8UfUV3!lSvJY^`Tub<-5J!}i*x?W$CW~ynj z!(pVg>Z-F!U1MHA+^okZxyh@tMHa#WD8TG0{;y{9C7HH$V+^3OG5#H-b?sDUx4R76 zAy!QB^Ye=JGTOZOc(>O70Ga3J6xzf!(@)65(=ABT)a8SDkH};F<5EAIx7MIfEKN7yh6l@$N8(OT^sQ5<%E{!~xmh7?>Q%BBj@a*>mD7lv=u%FUd7rQ1 zWlB8qvvw^*a4y+`+ez}s(cxGeky5njXDm?749L?q)W{y0{*_AGRS=S~TSgywGd@^h zv(7MmJu5!jShu*Dq7Yo%G%|U@Q~==MgUQF`UVO7VOkLEC*z%eRb1d3E}w zQMaBMt!>P54cku)2>v6QyK<=3(aH?inMM{*m4_MR4gsk2xFI$c>lDiJDjmSCJDxtG zyMD7vl}`FGI&$W)jpgsyC5v%ffxKt(rX(%S0-vJ;QC&ujtXeh)`nfxG7!;QgMlIw! z05~|VxU-&Uupp42K3iiQaZ|ww+IJ!A+*Wp%82-$++*lohp{ea!U+s5{O(&Ki&NrNA zHCHk;Jg^5!u1+DFE&M!wbnE$NhQethowurzGlNkUnA%Au^kS$Of`guwN!(J=*r#Y4 zFP#1JRwPWZs`_oq$!=MrizY_wM|ya@X)ou8?CJZUyoNmHrmpO&58Xs~a^!Z+S%q0( zm5LF8RsPh&QHI=FlG5aYAJVRB7l~SA+h<2;I&i{!~jr! zQY+B);hPlpkXH$+qR1o#f|WaYKD88?tyQ^?CEQWz_VV1uWRGLU!AB$#1z>oVa<68v zTMQHkk(R&<&-APJQY)d;t*3>jKzWexxnL_d#3dCVh3-7b3|?Bupz_)6UOs09Dz<&m z^m#1WqMGc^Z%?_lhEFce)=iU2%JLJ?ir>RCpO=csvyR@&%eQNVdED^6!~B}HHs-p7 zG>la4$j=qglg2*QZZCAdHetjvm$9a#wr}!7pfL&NF37lJ-ldM}7$YpG&ZV$6t~&i{ zg^s~3;Q)Q+tDBemIuXYuE9hERK0le-<0rbC?QzDC#=C(zZfUmWSG<`TQU*psjAoWX zUiu=SoGIutOJ{F#_jAl6J4@gaanhQyOow+g463?$1m(68TdAmS7>j5KC-1FkMWnLZ z6rOZIbCN1KE%cjm1hcfeduRMA6qU>5l3M6yYO`YY0l17I?@!VG&@Y{m-f0!nXd!*; zW6!jb5c*muy(4KXnJ5RKKEAc6btcoI-*^%MlB|2rnq^ef-TGlLi?N3kUCOLV78tey-6-rw@6s+9>%IqeFP01-IQFr z<)fL4mOPKkfNM_5>dpzSY~h^AaXB&*6nKs^(`g5iES+;g%AZ(xGCw=J+Z|(EVTLV7TV2Z z7m}P6ZX*mm2X1pzE^MCK{S?i<-B9h8C(oGJ^!3QDJVr5BsO0rs6aN4%rioc-O)d4s zt;)?Z#>B48>cEqZnIP6x#-T0DtgAbt4qqUWPi%T}Yf{momea{phE>7cHgmbhT!YYo zRHqi!*U=^zt3uy5sRes_VAoa}IDA8lWgb~=rr)UzNhVf%yO`lJ`Ohg<`++(PbnDWl zxbX>lRgx)Wngnbzy70ccsoKlKXC1HEp$gK54*1}M+d1kE58`V!2)v7-8HzLl{+6`C@6aB>L! zYLn|C38lA7NfA_Vfr$hY)MLIenl7~&*`P~kb_R3+?ISEm0|)cLHQ9xmr$N$;b$xuj zNPiM$#-;YXPsA4SIh924yDlTh-~e(n+d1RVQ=Jyxc&)U^VZ4=tM%NDHCI(6Tho@fE zV(@DBzhSn!vYN@nZ{)Ws%s%t-I)jXwj$5CzTS+WDI+YD0rqh$ufCm}K{436@A7^Mm zd26Tj{dYCyxr%hFtw!@N-i=%yGwaB;dxYBF%yFgMdeF$J6PW z(f-v&YkOOSRfm-Ux*T*Tr%o%L)$LyLX(fOcv<2KTY~vlj&!ts2&eE2T@c#gZ4W5J+ zLREQG7@jF1{n(IgJTWH+93Ds4HDud_)wKBHW|BzbEb)Pi#y0$!^=^L>DlGz8HT^dF z#&|=+4kWjc_}RAuZg}A2R`!l9bnDRf3n{upRlz%zK_>(-&s-k;t9Mn>l$4eGrT8)H zdy!3jJJ|-cuvu*;%uPF>U4x8_dl8E0blZDq?AAm+KxhmT+bo%5l1X5HyN<)5tOmKc zlHzlw7P@H|1VmCc$j2Qpd2Ak?!S$>5)@D_b_U&$Am84~ik@Chu@(z0aE0#)8S4)+5 z*H8FwKxl&Q`o=41zRj54GFIHS8*<}4hox-jR^M;2zLw%b=##R;v#u8dKHTQHU3$*q z8$mal6wyS=WOM~vjGSQm6ZOS(S|+5rPL1|wk_KtZN>6oGJAgl(cG0Oyf{jVOeOG|#bIvhaP)O5wcKge>0L^e%6V5@DFC6<~q`$k-?}HEQ z_A=)IVZ%Q;0suQ zYr3(y;uvl;?JIl@GRZ9AxoqR*J?ox>P}Pda!s=1wuIy*8wRd{Ov71d$U(5lzV<)%N<9|QQ;mo7UiF~^hw5?Y9?VHck1R;6DN0P(X^v|_uuZUuW zBaU`iiBiT;hmV+rAapg(i@h=WN(aiBHo7P?=jid`Y%_B2lNaTFraqW(j_wg(b6pb~5q-C~5#dhvF=RBU3jU0Bc zqz~uD*Gj5#od!mFlTqqAjmbpPmR~yN;0D7Sh?lPKLG4^0RBCZl8&F&7*WKLT+DlvR zbuwDpYD!k#BnVr~VqHTy>xDSu{3@NcoofZbO-4I=CvkxixaaZCanqjWu&ngitl1=r z;}RrhF|c4@_2ZnA&1w1b%LkEpx@g2?1_bXUbn0+FDr%Nv1#70e^#xXw*mcBqRxw2* zyimb0BzZ)fpXpFVCW@>YJJv?ddgDK(N;JD&TTC{qEQ>T*l*u!ZhhxyMLNGdt<=aS_ zIV6q245tRR!q$!40ETrwndwu-J^FN-Py6WCWhzpHR8!lzg-Vcm zv~<>%ced7XLeVP}TxDL1dwZnSn&Iu+%Q0-oAoH5UO-EB-`EMpY%}%=RqY~w$;B_Pl z-9~KYbELbQnu5soQmVr)=0ZO0HJUL9Srx%(_MedTtg+&2-~rl%cKK>S;=7Ue;6wNt zr3u?&J*_L={{Vo^IEdn4&446szgn*a>i+<0T?SwQ3yl6XJU%8>59V7b+~vPIY`!6~ zE%Vta`~_!KO7BBj4h<_v7WoFdWZ4;A;Qm#m;zmg{iHe@6O=SN7Yv|Itma_T#5ThcT z+Kz)fWh4@9JP>nS*LT?L@2pz~BwW zsg=_r^E{0~hnU-#76+QHVRCjpir1s_Eb+O39Pn$)E@fwhAE`4aJB~@lYtTGf;u}3J z8rD}Hbg>enJvr)Y%4F58mIR7RsDVZgl^G<_M`2dg=s|gH99I{&QWj$BG7&O!kH%e5gpe~;HR)uOTbWGbVgl~Xf^nMia}|2O zHTfS$ll!z6q`dl^--oSbmFAXsm~4}BGY&?2ir#BUnq-lg6d`V>*0J>a*{)_*Ng0T8 z8FR)vQ)jxBq;kcN&5G*E;{B}KTG?%{R&wXEkFln@UGJwvXjw&Ut1HQK_t~##agzN3Bn1B0Pz*5*;R{x06qTz3>xIc)T>I9l_hx^ zQH45^N?QzyW1y5s?rh|l)R*$c;zv+2M;)piM*Lps$d?JzZqm)lrUS$ljRcd>DTf5%h*F&mUi$~eg*%j<>Qq~zGx4D5O zW5JmN7326x>GbbZ?X?LYS*|>{+tG`UynCE>t=%(0SoG*#Sgqq{KpmxFklfT-j-P3B zqsk)GZQ4dtjtEk7&&+tM#bvarNy$H#r(&s2Z6wjoCG^RtJi$E49~mgSRXcp6J$|0` z(P^-Kp{>ktz(R)e6rA_t<@T;}=He*yw6utgppP-Z1fHXhY#Qmbtu_?1vArNNwosNC z2)yzSW5-{5;aETBUh3<6e9c=|vSTr7#z@u?8!UvP#>eJ8@H3D909`s!0h>&i+PL!z zAZ9ou5s*D9Yqq+%oI)=A`+bLR%n*Z~4;_7tV#xAYEQ03XGDR<%H~gez=blN%M^Ad< zl8h=|obM!Q85b|~FE3H^P>Yc5xJJAcB+)nQqx>;8(xs|?FL!P7YtJj*P!rl4s zON4xUp>gv8$j8>1ajdoVq((?0c@pIi85A6X!#K@$R;7t?g?g}p zcDTrO9^Dub?^&)cE-bYR@QWF+$c@M>M&62f01N^;8p^F$R!Tg&+jjo|Pa!I9FMSQW zeMWcGAe}W?W%2+k9GPT@k%FL;(;N~i#aXPF~>ib?hy(={DVXzk6kHljH;ZY>7^c){mAI`do=B`HZO-rX;uOG2c&4c?)0 zlC_=4+zTXcgenIoIXzD&AK^+uY40_K#j&?s22yz~o;zn5%|6rZm#nXQBeM<06$6#e z%aTZ~k$f(vFtk!m%0d)q!8qu7KA6vHnN)FUOI792r4-IvPr9T{oH~3UkTE z!gI$X)3s^EstX&2w@ZSL8wB#*a#(dI@Xtfnns$%j<*?GGw3}(4?F}HE7-fO`p+Vy( z9X;xW#g&8W5Ja(F$Xt0-M=I@bO6NK6@6xuPvXtK|x(!jdx}=Y2hT7o-tr-Z)stA1K zF~>p(&*Awp>&05OyzVa^B};iz%|`(O=Yj_upW@GOdsbzRmldw3aSIlEe<{q$NcF2m5qkvCn7p)TgT~=@^Nv1afO0mBpK7Q|QC`VO^1Ex(Q9kTX6WrZ@VzNaH zO_x7)kIV)@z$fck8ceouNoxhggGqUF8m{vmV^g>udt)EUvhTEHwy=`o;^CRC;`@Mr z%*2ciJ-sWh@N7+`=>iM+0$eyO!Hy13LC-iH1$JR+!iq`BTKn{O9Gh`G_gq;lFWc;) zQJ!L?s^E@tG5J?nV*sgmtbmG!sciGzo{^m=LM=y?ACS87Vz`WM;+8ahu6vKCbek&+ZUoM4>y8UFz5S05$K z>iLk}FloHzcYT01?u2B22*(4UuAfZ2lTyEmKd7#K{6jpi zA$>DUW4(q=z6s~pikvk###>*vf4!HBQsvRxxmaFIiVos)p7p7sJlciRM)EqST=2%L zKCu9X5c(aHZhg5{kxyUutD^Ab&5XB%N2DxGwDPwse?whzsI9TfPL#Qpx(%M%dubHK zG=!BS=Hw1LiqwcT?W&nTFAxd54jYPelGxr{E47Wn`BFT4mT|^CvCeAUyxMFH3_EUt zo=uC8rw0W807~;};o&;bthAE+S7XtI)Ok#M`$vw_M~DsMrg~N-vD7yrG!cB+Am`q@ ztNVL1XCZ0jL5@j}IQ)%b*h6D<_Oe5MrAoFpM8h@Iq=<2MGF$B`cAIF)#&8;uZY2lj z)8rpY=;gD3Uo1mWwA|4WBW!|jdgmP}S5Iz8xwURPOe?S3ZV^WqHKLj@bmY!^{SyFkpn9pM zH`tFJa%bMUchcrxy>9;i_swG6Y1rINu>?0=p7m;Jkt%H&aoa&E0IsaX&Hz62>GYsm z?$x^sMGTFz2XX4S?^|-)4abVkq_t+4cq=1`mrV-C9YLzCrjfYz>?>~fO^vSRZb2>B z*B7Z=-P+$x6mqu3Yz}KAZuBonWW&~~y{iM%)f1@RhYRKto|!eP5>F&b#zT^zo+x8h zXVzExRfXe;F0A31v5dL`YbE?Ep-C*Iw7YDT1MUjwf_X1QLkUQY? zuRGTK=Sc1f1d=E>>?atnGZ!b$p8oRuk9#eO_Evf;Kg{Pedl>94<)6rJ%w0?>NQKIg31*!yK>~da4O>6-kW$z$|Kz4 zaE(IoiuL7Hy^-^A!=<}1E;L)2x0SbS;NYG=okwG%h^?jJYA-WUn-9<;}<(k}zvFr1dRI5q7aP?bY4A zx0+JAG=_C%agtLV=N=1&-0wV0(8pYg3=gw2o8}`5>#ZgU-R+4_uMbyjkYW zK1x*5`5h3WZ+W|%mFI``mYPeKjigt>1SSfcblX)RwRob6SBhy-NgpJ6!Ols?>09?6 zA+`>5<;Lc=ofcf70(>?ty`;DP)liYaO_%Fx5nW8@=qD-(;wEU z$$2KZB3syo^PW#BT{|{->+e_f>kIz?4qsUoy7N*?c?7L;dP;+K%=43uLGCkIydEy3 zdDLy?*UM3VIKdl7Z%VIgr(V3W+_-6=k(7C0^o(V`ore`x z`GaZj-9sy?u5Pw41yml{A5+)R)sw1R-rY1yBfJX10Yk`abRL~^PuSLsFK@q~CDfkk z?P3OBwU{DhD0?!W{{USlIAM2g6 z81N29PJ^{up7Ti3B3R^zx;uGJ#IoQXojX=)5NSm#x7bSeE35f-){!)FBeLaDrP{!5 z?f7wuYFf*Abh9*4LI%?sT)E!mPrrPB`sufKP+Q)q+=pv!kIf;NbJIWPtt5As2LAxd zOT+d_9EEVfytz2)53lvDRAklTrNZ|*S!|`X(jvMZL}KE7lFTGr#y5;^PNi|_SX!0s z&Yf!p@X|*y4IvmSjNp;~0FIuW>wj7B=BfVx2&eY6Led?Kr4^1EW#~>i0y#LYR_;AY zDag|8g`s=^^Fea``f2@;l1aRBN-(?126P}<96P~`6 z=zblu`(=;XZdoP3b-_``KEH)|-KCA>5!~EftNGH}G+_$#!(@*j8@o_0mwjjD=B9lspcVW+fl z_<=sifsvpKBX2xloS)AEu{8F!(cPo_daJMQOl%Z}+uQNxuIaZ|iQ*G%REP3Qsw)6k zZsBv=vHt+|SCfjDv~5B*Nk1$89S=_jCl_S99d5aPEMm8q?bsz7w?AU7)842ZVhPWf z9wX(FBg<_EoDdAn+F&@`}$WHE;RKrL2nazQf^5`^S?bn z1oRbz6zXA=747M#-bOB@U1uX`+{iC)<+4^t#9;&P+{*ltMlT|)-N-088w%CPx!p5p_*dZ}-w#SPSYh15|^3?ZY9 z7?NH3GhlImatE&3=%q@PKabveTdUi#%->s`oLZffP@>H2WklNJ$RH14fzVf+i-eX* zOEhjnvVzBN8T78ZO}#`*mX6j4qEyLu84t&&r}$AU_L_aZ*x`m)F7jP*l?RN2pKg7t z(xI60HA)m-nk|0+08c}XtsZ3WFTmtwx!RBbQ~hSs(-=K#sPMFq#i)?dBK)VT0ot=Q zIdqW~tacW0q@ZtUOP`qfVErk+ZMT~(&CK$=rXmreh&Jc!2tB>))Q%&XH|1*PQN!w= zKHt}Ku(4?5TcD1u{*vTi=Z+~`V7}ACDJShXTpVERYT~W5yZhKAy0o^qbyoS>+z>%N z!B*Do%)c2Q9;Cx>rP7@Ylcnx4nRa@p8LYZQ(G9F`5sWaReutrbYzmrh4pe-i%y zYTB`27)2-xj=T!QlIBRQ*pe8M7X)Lk6_Y-$w-+(oeWLMZK)^Sc4^h(?#wvr{%;~r7 zEPZkXYYLS0yD_UutF@Qnbvj!-dSoja#^|e!{X5l-37TzYS1baHU;>8!0BfysuxeKp z)@cZoNDyEGG5Xcb7g~Ee_nDG3%syByNgZ?ApFK8~rfQv4Cfr%t>K7Azn&v2_kr+mH zkmM3^+OxdPVmZUD<;aVVl(99Hd*VRK;z;7S-mDej%9SKzkZSsP($OJ?C$yjLfXoOW zRVNGR&^1!proXQu=8LK7Guo@mcFugpUzt?!82eV7dY#kimvG7Dv~j8x%tO9&{HvGJ z^=o@eZz+Li^Ig7NV+FD*dwqF7weH?qdDb>m3yd)1Ip}H{i`kbRWx6h3>M|~+3`W+` zk=eHs7d#C5*CnXSYc8R9(&-jEB4sThk=L#Uc&qxBr*CtpLIcW?voK?@{{VKF&0%q+ z-A5B7uF3{+$vNZosoLecHjZ%JX%5O;M=OFp<brpBuOHT|>zdV;hhZ(v?7Ef~An?p-}S3m&d6fC!?3#N~umdsQve4!#s?M9#vFu25AdOzy^{`4nPai zqcPnUTwzoJ*b01hk1Uya2^r5^(d;ADwk3+1(kU;Hu*D3M#wU@MHaxR8AXh;yrER9$ zEvv3OckNGzdN8}_Cn1LWtg=~d33HN#xZ6~tFcqy}VfyU(ElsoPyh zlg^j1$OmeSm)-nqup>(|)Tt2tI1S)(uq zAe_o#3=chyGC!4a!n2)MI+WC!{#Dld->IXf)Kp_DdYGxY()MTfk#G!bI{k8_ z`}0?0)}u=XNXaaOE^*tj{J)W_NNr@1g~Wp|Z~M*X0HU45@z)vra%q0a6GqQ$$>f#8 zhmUAbM+e^=55~2IV;XfWI9cE2_qF|7%vC7LQTUA?0a{#Yy4BUag~+zp!sO0VaX>)* zat&DVzPh@#v)EjTeEUGgakGgWXJZV1cPH~TpP*ePfqc@zJaWw>Ks0zecqis=efm`Q z_mkd9ER4k&;%&-_js1F_wZ~r<2+627tNZr*jiR(yIV(w0Egdgpbjw6o#v86XewDRu zOd2FG!v@Ku+bPKktGfq0{zK_lmXoQ{t?WGcBQWSw%jp&Nxc{K{dE&sSnIUE5#LGS zZA(nmVzm(3*sy|SB)RMdp&)<{eBk%2U0PY;lJY$BSae>sHn$v$wZPM=B(iMFCb(k}@&hj`X2YT+)pg`hT5`6tprm zOG%pbrTa9KOBAeUniVD>PvKoglPo93?n;z1SSCpr`M34_Yco>6)NHTqme=GAcI5Jm z0Lb~jO4QQ6*xoFXNn?qLv{H+-ar?v9JmgeXsX5Z-n&|ra9*zo5`Yx#GJWu8>ngoIF zAW|E05x6ku57(Y+j5bztFpvq?XxSAd;IO-3`e?`;gR_I28^KC7!sYo{=c-4a$O1m%G| zf&P65tvbQtw9}%uxP~JnzrA*S!)fOW_zpk)bw!}Ro=NTm##k(+AVySu;#UWb!{ztl zx@{Zn7dD=4-SCL3VbRc*=uT_4e37E+*;#L9)4$0xit%#gyZgW3l-l+WDrl|N)-~7w zWc$i9+|>=z#>}a57%(^+f#$l2^u19ekI1%y_TF{FH~p8eZg3RyB1S zPe53%KL9s=U3LR7h_#_9Rp_Uow=qZaj-;47?)-cGD{Zxnc_L)gZIa

?{2+*%^+bQ^kqDX=fpV5 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 literal 0 HcmV?d00001 diff --git a/demo/examples/examples_example2.jpg b/demo/examples/examples_example2.jpg new file mode 100755 index 0000000000000000000000000000000000000000..6bddf7ae49727135436994b6f880ed11c6c86bcc GIT binary patch literal 73460 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

GIbuZQQOdH35%MI#h1a<*;x9aB9>N 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 T(ax9~{ar?#ul7IT%*{!pCdLvaL*FLAF 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 literal 0 HcmV?d00001 diff --git a/demo/examples/examples_example4.jpg b/demo/examples/examples_example4.jpg new file mode 100755 index 0000000000000000000000000000000000000000..3ff6740d50e6ecd765d1548e93d6261de498a14c GIT binary patch literal 55672 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 Q5Ykf8Py$j?(ohHg*`eoMUjP6A literal 0 HcmV?d00001 diff --git a/demo/examples/examples_example5.jpg b/demo/examples/examples_example5.jpg new file mode 100755 index 0000000000000000000000000000000000000000..7fb28c9a7cfea4f02749ca816c7500d8d97d9c2d GIT binary patch literal 36890 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 z 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%0D} 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 NvEU3=XF}N@|Jl2Td}9Cr literal 0 HcmV?d00001 diff --git a/demo/examples/examples_example6.jpg b/demo/examples/examples_example6.jpg new file mode 100755 index 0000000000000000000000000000000000000000..6a84b26f810eef04db56c9991c515af83730a003 GIT binary patch literal 67862 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 literal 0 HcmV?d00001 diff --git a/demo/examples/examples_example7.jpg b/demo/examples/examples_example7.jpg new file mode 100755 index 0000000000000000000000000000000000000000..d346c037d9b0efb993d871653af69f6aa4341b0a GIT binary patch literal 70987 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

D?h;Knp1>h}-3 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 b^79ED^kR|EfWCzM;4A@S)xa3g_@DpT>A56a literal 0 HcmV?d00001 diff --git a/demo/examples/examples_example8.jpg b/demo/examples/examples_example8.jpg new file mode 100755 index 0000000000000000000000000000000000000000..673ffcd71e6f1fd8337966b40602cac0cafa7c13 GIT binary patch literal 201161 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

iQNR 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 z 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

-JZiGGU7@91v91j})1{8``t@r$p8C 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 0 + + scribble_coords = np.argwhere(scribble_mask) + n_points = min(len(scribble_coords), 24) + indices = np.linspace(0, len(scribble_coords)-1, n_points, dtype=int) + scribble_sampled = scribble_coords[indices] + + prompts["scribble"] = scribble_sampled + + zim_mask = run_model(image, prompts) + + return zim_mask, prompts + + +def draw_point(img, pt, size, color): + # draw circle with white boundary region + cv2.circle(img, (int(pt[0]), int(pt[1])), int(size * 1.3), (255, 255, 255), -1) + cv2.circle(img, (int(pt[0]), int(pt[1])), int(size * 0.9), color, -1) + + +def draw_images(image, mask, prompts): + if len(prompts) == 0 or mask.shape[1] == 1: + return image, image, image + + minor = get_shortest_axis(image) + size = int(minor / 80) + + image = np.float32(image) + + def blending(image, mask): + mask = np.float32(mask) / 255 + blended_image = np.zeros_like(image, dtype=np.float32) + blended_image[:, :, :] = [108, 0, 192] + blended_image = (image * 0.5) + (blended_image * 0.5) + + img_with_mask = mask[:, :, None] * blended_image + (1 - mask[:, :, None]) * image + img_with_mask = np.uint8(img_with_mask) + + return img_with_mask + + img_with_mask = blending(image, mask) + img_with_point = img_with_mask.copy() + + if "point" in prompts: + for type, pts in prompts["point"]: + if type == "Positive": + color = (0, 0, 255) + draw_point(img_with_point, pts, size, color) + elif type == "Negative": + color = (255, 0, 0) + draw_point(img_with_point, pts, size, color) + + size = int(minor / 200) + + return ( + img, + img_with_mask, + ) + +def get_point_or_box_prompts(img, prompts): + image, img_prompts = img['image'], img['points'] + point_prompts = [] + box_prompts = [] + for prompt in img_prompts: + for p in range(len(prompt)): + prompt[p] = int(prompt[p]) + if prompt[2] == 2 and prompt[5] == 3: # box prompt + box_prompts = [[prompt[0], prompt[1], prompt[3], prompt[4]], ] + elif prompt[2] == 1 and prompt[5] == 4: # Positive point prompt + point_prompts.append((1, (prompt[0], prompt[1]))) + elif prompt[2] == 0 and prompt[5] == 4: # Negative point prompt + point_prompts.append((0, (prompt[0], prompt[1]))) + + if "scribble" in prompts: + del prompts["scribble"] + + if len(point_prompts) > 0: + prompts['point'] = point_prompts + elif 'point' in prompts: + del prompts['point'] + + if len(box_prompts) > 0: + prompts['bbox'] = box_prompts + elif 'bbox' in prompts: + del prompts['bbox'] + + zim_mask = run_model(image, prompts) + + return image, zim_mask, prompts + +def get_examples(): + assets_dir = os.path.join(os.path.dirname(__file__), 'examples') + images = os.listdir(assets_dir) + return [os.path.join(assets_dir, img) for img in images] + +if __name__ == "__main__": + + backbone = "vit_l" + ckpt_p = "results/zim_vit_l_2092" + + model = zim_model_registry[backbone](checkpoint=ckpt_p) + if torch.cuda.is_available(): + model.cuda() + + predictor = ZimPredictor(model) + mask_generator = ZimAutomaticMaskGenerator( + model, + pred_iou_thresh=0.7, + points_per_batch=8, + stability_score_thresh=0.9, + ) + + with gr.Blocks() as demo: + gr.Markdown("#

[Demo] ZIM: Zero-Shot Image Matting for Anything") + + prompts = gr.State(dict()) + img = gr.Image(visible=False) + example_image = gr.Image(visible=False) + + with gr.Row(): + with gr.Column(): + # Point and Bbox prompt + with gr.Tab(label="Point or Box"): + img_with_point_or_box = ImagePrompter( + label="query image", + sources="upload" + ) + interactions = "Left Click (Pos) | Middle/Right Click (Neg) | Press Move (Box)" + gr.Markdown("

[🖱️] 🌟 {} 🌟

".format(interactions)) + run_bttn = gr.Button("Run") + amg_bttn = gr.Button("Automatic Mask Generation") + + # Scribble prompt + with gr.Tab(label="Scribble"): + img_with_scribble = gr.ImageEditor( + label="Scribble", + brush=gr.Brush(colors=["#00FF00"], default_size=15), + sources="upload", + transforms=None, + layers=False + ) + interactions = "Press Move (Scribble)" + gr.Markdown("

Step 1. Select Draw button

") + gr.Markdown("

Step 2. 🌟 {} 🌟

".format(interactions)) + scribble_bttn = gr.Button("Run") + scribble_reset_bttn = gr.Button("Reset Scribbles") + amg_scribble_bttn = gr.Button("Automatic Mask Generation") + + # Example image + gr.Examples(get_examples(), inputs=[example_image]) + + # with gr.Row(): + with gr.Column(): + with gr.Tab(label="ZIM Image"): + img_with_zim_mask = gr.Image( + label="ZIM Image", + interactive=False + ) + + with gr.Tab(label="ZIM Mask"): + zim_mask = gr.Image( + label="ZIM Mask", + image_mode="L", + interactive=False + ) + with gr.Tab(label="ZIM Auto Mask"): + zim_amg = gr.Image( + label="ZIM Auto Mask", + interactive=False + ) + + example_image.change( + reset_example_image, + [example_image, prompts], + [ + img, + img_with_point_or_box, + img_with_scribble, + img_with_zim_mask, + zim_amg, + zim_mask, + prompts, + ] + ) + + img_with_point_or_box.upload( + reset_image, + [img_with_point_or_box, prompts], + [ + img, + img_with_scribble, + img_with_zim_mask, + zim_amg, + zim_mask, + prompts, + ], + ) + + amg_bttn.click( + run_amg, + [img], + [zim_amg] + ) + amg_scribble_bttn.click( + run_amg, + [img], + [zim_amg] + ) + + run_bttn.click( + get_point_or_box_prompts, + [img_with_point_or_box, prompts], + [img, zim_mask, prompts] + ) + + zim_mask.change( + draw_images, + [img, zim_mask, prompts], + [ + img, img_with_zim_mask, + ], + ) + scribble_reset_bttn.click( + reset_scribble, + [img, img_with_scribble, prompts], + [img_with_scribble, zim_mask], + ) + scribble_bttn.click( + update_scribble, + [img, img_with_scribble, prompts], + [zim_mask, prompts], + ) + + demo.queue() + demo.launch( + server_name="0.0.0.0", + server_port=11928, + ) \ No newline at end of file diff --git a/demo/gradio_demo_comparison.py b/demo/gradio_demo_comparison.py new file mode 100755 index 0000000..5986262 --- /dev/null +++ b/demo/gradio_demo_comparison.py @@ -0,0 +1,418 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" +import os, sys +sys.path.append(os.getcwd()) + +# Gradio demo, comparison SAM vs ZIM +import os +import torch +import gradio as gr +from gradio_image_prompter import ImagePrompter +import numpy as np +import cv2 +from zim import zim_model_registry, ZimPredictor, ZimAutomaticMaskGenerator +from segment_anything import sam_model_registry, SamPredictor, SamAutomaticMaskGenerator +from zim.utils import show_mat_anns + +def get_shortest_axis(image): + h, w, _ = image.shape + return h if h < w else w + +def reset_image(image, prompts): + if image is None: + image = np.zeros((1024, 1024, 3), dtype=np.uint8) + else: + image = image['image'] + zim_predictor.set_image(image) + sam_predictor.set_image(image) + prompts = dict() + black = np.zeros(image.shape[:2], dtype=np.uint8) + + return (image, image, image, image, black, black, black, black, prompts) + +def reset_example_image(image, prompts): + if image is None: + image = np.zeros((1024, 1024, 3), dtype=np.uint8) + + zim_predictor.set_image(image) + sam_predictor.set_image(image) + prompts = dict() + black = np.zeros(image.shape[:2], dtype=np.uint8) + + image_dict = {} + image_dict['image'] = image + image_dict['prompts'] = prompts + + return (image, image_dict, image, image, image, black, black, black, black, prompts) + +def run_amg(image): + zim_masks = zim_mask_generator.generate(image) + zim_masks_vis = show_mat_anns(image, zim_masks) + + sam_masks = sam_mask_generator.generate(image) + sam_masks_vis = show_mat_anns(image, sam_masks) + + return zim_masks_vis, sam_masks_vis + + +def run_model(image, prompts): + if not prompts: + raise gr.Error(f'Please input any point or BBox') + point_coords = None + point_labels = None + boxes = None + + if "point" in prompts: + point_coords, point_labels = [], [] + + for type, pts in prompts["point"]: + point_coords.append(pts) + point_labels.append(type) + point_coords = np.array(point_coords) + point_labels = np.array(point_labels) + + if "bbox" in prompts: + boxes = prompts['bbox'] + boxes = np.array(boxes) + + if "scribble" in prompts: + point_coords, point_labels = [], [] + + for pts in prompts["scribble"]: + point_coords.append(np.flip(pts)) + point_labels.append(1) + if len(point_coords) == 0: + raise gr.Error("Please input any scribbles.") + point_coords = np.array(point_coords) + point_labels = np.array(point_labels) + + # run ZIM + zim_mask, _, _ = zim_predictor.predict( + point_coords=point_coords, + point_labels=point_labels, + box=boxes, + multimask_output=False, + ) + zim_mask = np.squeeze(zim_mask, axis=0) + zim_mask = np.uint8(zim_mask * 255) + + # run SAM + sam_mask, _, _ = sam_predictor.predict( + point_coords=point_coords, + point_labels=point_labels, + box=boxes, + multimask_output=False, + ) + sam_mask = np.squeeze(sam_mask, axis=0) + sam_mask = np.uint8(sam_mask * 255) + + return zim_mask, sam_mask + +def reset_scribble(image, scribble, prompts): + # scribble = dict() + for k in prompts.keys(): + prompts[k] = [] + + for k, v in scribble.items(): + scribble[k] = None + + black = np.zeros(image.shape[:1], dtype=np.uint8) + + return scribble, black, black + +def update_scribble(image, scribble, prompts): + if "point" in prompts: + del prompts["point"] + + if "bbox" in prompts: + del prompts["bbox"] + + prompts = dict() # reset prompt + scribble_mask = scribble["layers"][0][..., -1] > 0 + + scribble_coords = np.argwhere(scribble_mask) + n_points = min(len(scribble_coords), 24) + indices = np.linspace(0, len(scribble_coords)-1, n_points, dtype=int) + scribble_sampled = scribble_coords[indices] + + prompts["scribble"] = scribble_sampled + + zim_mask, sam_mask = run_model(image, prompts) + + return zim_mask, sam_mask, prompts + + +def draw_point(img, pt, size, color): + # draw circle with white boundary region + cv2.circle(img, (int(pt[0]), int(pt[1])), int(size * 1.3), (255, 255, 255), -1) + cv2.circle(img, (int(pt[0]), int(pt[1])), int(size * 0.9), color, -1) + + +def draw_images(image, mask, prompts): + if len(prompts) == 0 or mask.shape[1] == 1: + return image, image, image + + minor = get_shortest_axis(image) + size = int(minor / 80) + + image = np.float32(image) + + def blending(image, mask): + mask = np.float32(mask) / 255 + blended_image = np.zeros_like(image, dtype=np.float32) + blended_image[:, :, :] = [108, 0, 192] + blended_image = (image * 0.5) + (blended_image * 0.5) + + img_with_mask = mask[:, :, None] * blended_image + (1 - mask[:, :, None]) * image + img_with_mask = np.uint8(img_with_mask) + + return img_with_mask + + img_with_mask = blending(image, mask) + img_with_point = img_with_mask.copy() + + if "point" in prompts: + for type, pts in prompts["point"]: + if type == "Positive": + color = (0, 0, 255) + draw_point(img_with_point, pts, size, color) + elif type == "Negative": + color = (255, 0, 0) + draw_point(img_with_point, pts, size, color) + + size = int(minor / 200) + + return ( + img, + img_with_mask, + ) + +def get_point_or_box_prompts(img, prompts): + image, img_prompts = img['image'], img['points'] + point_prompts = [] + box_prompts = [] + for prompt in img_prompts: + for p in range(len(prompt)): + prompt[p] = int(prompt[p]) + if prompt[2] == 2 and prompt[5] == 3: # box prompt + if len(box_prompts) != 0: + raise gr.Error("Please input only one BBox.", duration=5) + box_prompts.append([prompt[0], prompt[1], prompt[3], prompt[4]]) + elif prompt[2] == 1 and prompt[5] == 4: # Positive point prompt + point_prompts.append((1, (prompt[0], prompt[1]))) + elif prompt[2] == 0 and prompt[5] == 4: # Negative point prompt + point_prompts.append((0, (prompt[0], prompt[1]))) + + if "scribble" in prompts: + del prompts["scribble"] + + if len(point_prompts) > 0: + prompts['point'] = point_prompts + elif 'point' in prompts: + del prompts['point'] + + if len(box_prompts) > 0: + prompts['bbox'] = box_prompts + elif 'bbox' in prompts: + del prompts['bbox'] + + zim_mask, sam_mask = run_model(image, prompts) + + return image, zim_mask, sam_mask, prompts + +def get_examples(): + assets_dir = os.path.join(os.path.dirname(__file__), 'examples') + images = os.listdir(assets_dir) + return [os.path.join(assets_dir, img) for img in images] + +if __name__ == "__main__": + backbone = "vit_b" + + # load ZIM + ckpt_mat = "results/zim_vit_b_2043" + zim = zim_model_registry[backbone](checkpoint=ckpt_mat) + if torch.cuda.is_available(): + zim.cuda() + zim_predictor = ZimPredictor(zim) + zim_mask_generator = ZimAutomaticMaskGenerator( + zim, + pred_iou_thresh=0.7, + points_per_batch=8, + stability_score_thresh=0.9, + ) + + # load SAM + ckpt_sam = "results/sam_vit_b_01ec64.pth" + sam = sam_model_registry[backbone](checkpoint=ckpt_sam) + if torch.cuda.is_available(): + sam.cuda() + sam_predictor = SamPredictor(sam) + sam_mask_generator = SamAutomaticMaskGenerator( + sam, + points_per_batch=8, + ) + + with gr.Blocks() as demo: + gr.Markdown("#
[Demo] ZIM: Zero-Shot Image Matting for Anything") + + prompts = gr.State(dict()) + img = gr.Image(visible=False) + example_image = gr.Image(visible=False) + + with gr.Row(): + with gr.Column(): + # Point and Bbox prompt + with gr.Tab(label="Point or Box"): + img_with_point_or_box = ImagePrompter( + label="query image", + sources="upload" + ) + interactions = "Left Click (Pos) | Middle/Right Click (Neg) | Press Move (Box)" + gr.Markdown("

[🖱️] 🌟 {} 🌟

".format(interactions)) + run_bttn = gr.Button("Run") + amg_bttn = gr.Button("Automatic Mask Generation") + + # Scribble prompt + with gr.Tab(label="Scribble"): + img_with_scribble = gr.ImageEditor( + label="Scribble", + brush=gr.Brush(colors=["#00FF00"], default_size=40), + sources="upload", + transforms=None, + layers=False + ) + interactions = "Press Move (Scribble)" + gr.Markdown("

Step 1. Select Draw button

") + gr.Markdown("

Step 2. 🌟 {} 🌟

".format(interactions)) + scribble_bttn = gr.Button("Run") + scribble_reset_bttn = gr.Button("Reset Scribbles") + amg_scribble_bttn = gr.Button("Automatic Mask Generation") + + # Example image + gr.Examples(get_examples(), inputs=[example_image]) + + # with gr.Row(): + with gr.Column(): + with gr.Tab(label="ZIM Image"): + img_with_zim_mask = gr.Image( + label="ZIM Image", + interactive=False + ) + + with gr.Tab(label="ZIM Mask"): + zim_mask = gr.Image( + label="ZIM Mask", + image_mode="L", + interactive=False + ) + with gr.Tab(label="ZIM Auto Mask"): + zim_amg = gr.Image( + label="ZIM Auto Mask", + interactive=False + ) + + with gr.Column(): + with gr.Tab(label="SAM Image"): + img_with_sam_mask = gr.Image( + label="SAM image", + interactive=False + ) + + with gr.Tab(label="SAM Mask"): + sam_mask = gr.Image( + label="SAM Mask", + image_mode="L", + interactive=False + ) + + with gr.Tab(label="SAM Auto Mask"): + sam_amg = gr.Image( + label="SAM Auto Mask", + interactive=False + ) + + example_image.change( + reset_example_image, + [example_image, prompts], + [ + img, + img_with_point_or_box, + img_with_scribble, + img_with_zim_mask, + img_with_sam_mask, + zim_amg, + sam_amg, + zim_mask, + sam_mask, + prompts, + ] + ) + + img_with_point_or_box.upload( + reset_image, + [img_with_point_or_box, prompts], + [ + img, + img_with_scribble, + img_with_zim_mask, + img_with_sam_mask, + zim_amg, + sam_amg, + zim_mask, + sam_mask, + prompts, + ], + ) + + amg_bttn.click( + run_amg, + [img], + [zim_amg, sam_amg] + ) + amg_scribble_bttn.click( + run_amg, + [img], + [zim_amg, sam_amg] + ) + + run_bttn.click( + get_point_or_box_prompts, + [img_with_point_or_box, prompts], + [img, zim_mask, sam_mask, prompts] + ) + + zim_mask.change( + draw_images, + [img, zim_mask, prompts], + [ + img, img_with_zim_mask, + ], + ) + sam_mask.change( + draw_images, + [img, sam_mask, prompts], + [ + img, img_with_sam_mask, + ], + ) + + scribble_reset_bttn.click( + reset_scribble, + [img, img_with_scribble, prompts], + [img_with_scribble, zim_mask, sam_mask], + ) + scribble_bttn.click( + update_scribble, + [img, img_with_scribble, prompts], + [zim_mask, sam_mask, prompts], + ) + + demo.queue() + demo.launch( + server_name="0.0.0.0", + server_port=11928, + ) \ No newline at end of file diff --git a/eval/eval_loader.py b/eval/eval_loader.py new file mode 100755 index 0000000..78fb760 --- /dev/null +++ b/eval/eval_loader.py @@ -0,0 +1,117 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import os +import numpy as np +import torch +import json +from PIL import Image +import torch.utils.data as data +from torch.utils.data.distributed import DistributedSampler + +def get_evalloader(config): + loader_dict = {} + + for data_type in config.dataset.data_type: + dataset = Dataset( + config.data_root, + config.dataset, + data_type, + ) + + if config.local_rank == 0: + print(f"LOG) ZIM Dataset: {data_type} ({len(dataset)})") + + sampler = None + + if config.use_ddp: + sampler = DistributedSampler( + dataset, + rank=config.local_rank, + num_replicas=config.world_size, + ) + + dataloader = data.DataLoader( + dataset, + batch_size=1, + num_workers=config.eval.workers, + sampler=sampler, + shuffle=False, + pin_memory=True, + drop_last=False, + ) + loader_dict[data_type] = dataloader + + return loader_dict + + +class Dataset(data.Dataset): + def __init__( + self, + data_root, + dataset_config, + data_type, + ): + super(Dataset, self).__init__() + self.root = os.path.join(data_root, dataset_config.valset) + + with open(os.path.join(self.root, dataset_config.data_list_txt), "r") as f: + f_list = f.read().splitlines() + f_list = [p for p in f_list if data_type in p] + + self.images = [] + self.mattes = [] + self.jsons = [] + + for fname in f_list: + img_path, matte_path, json_path, seg_path = fname.split(" ") + + img_path = os.path.join(self.root, img_path) + matte_path = os.path.join(self.root, matte_path) + json_path = os.path.join(self.root, json_path) + + self.images.append(img_path) + self.mattes.append(matte_path) + self.jsons.append(json_path) + + assert len(self.images) == len(self.mattes) == len(self.jsons) + + + def __getitem__(self, index): + fname = os.path.basename(self.mattes[index]) + + img = Image.open(self.images[index]).convert('RGB') + matte = Image.open(self.mattes[index]).convert('L') + orig_w, orig_h = img.size + + img = np.float32(img) + matte = np.float32(matte) / 255. + + ratio = (matte > 0.3).sum() / matte.size + + with open(self.jsons[index], "r") as f: + meta_data = json.load(f) + + points = meta_data["point"] + points += [(-1, -1, -1) for _ in range(50-len(points))] # padding + + bbox = meta_data["bbox"] + + output = { + "images": torch.tensor(img, dtype=torch.float), + "mattes": torch.tensor(matte, dtype=torch.float), + "points": torch.tensor(points, dtype=torch.float), + "bboxes": torch.tensor(bbox, dtype=torch.float), + "fname": fname, + "ratio": ratio, + } + + return output + + def __len__(self): + return len(self.images) + diff --git a/eval/evaluator.py b/eval/evaluator.py new file mode 100755 index 0000000..9aae38c --- /dev/null +++ b/eval/evaluator.py @@ -0,0 +1,146 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import torch +from torch import nn +from typing import Any, Dict, List, Tuple +import numpy as np +from torch.nn.parallel import DistributedDataParallel as DDP + +from zim.build_model import build_zim_model +from zim.predictor import ZimPredictor +from segment_anything import SamPredictor, sam_model_registry + +def load_sam_evaluator(config, device): + sam = sam_model_registry[config.network.encoder](checkpoint=config.eval.sam_weights).cuda(device) + sam_evaluator = SamEvaluator(sam, config.eval.prompt_type) + if config.use_ddp: + sam_evaluator = DDP( + sam_evaluator, + device_ids=[config.local_rank], + output_device=config.local_rank, + ) + sam_evaluator.eval() + return sam_evaluator + +def load_zim_evaluator(config, device): + zim = build_zim_model(config.eval.zim_weights).cuda(device) + zim_evaluator = ZimEvaluator(zim, config.eval.prompt_type) + + return zim_evaluator + +class SamEvaluator(SamPredictor, nn.Module): + def __init__( + self, + sam_model, + prompt_type: List[str] = None + ): + super().__init__(sam_model=sam_model) + self.prompt_type = prompt_type + + def forward(self, batched_input, multimask_output: bool = False): + input_images = batched_input["images"] + + outputs = { + prompt: { + "masks": [], + } for prompt in self.prompt_type + } + + with torch.inference_mode(): + for idx, input_image in enumerate(input_images): + input_image = input_image.cpu().numpy().astype(np.uint8) + self.set_image(image=input_image) + + for prompt in self.prompt_type: + point_coords = None + point_labels = None + bbox = None + + if prompt == "point": + points = batched_input["points"][idx] + points = points[points[:, 2] >= 0] # remove points whose label=-1 + point_coords = points[:, :2].cpu().numpy() + point_labels = points[:, 2].cpu().numpy() + + elif prompt == "bbox": + bbox = batched_input["bboxes"][idx] + bbox = bbox.unsqueeze(0).cpu().numpy() + + masks, _, _ = self.predict( + point_coords=point_coords, + point_labels=point_labels, + box=bbox, + multimask_output=False, + ) + masks = torch.from_numpy(masks).float().unsqueeze(0).to(self.device) + + outputs[prompt]["masks"].append(masks) + + # Concat through batch dimension + for prompt in self.prompt_type: + for k, v in outputs[prompt].items(): + if len(v) > 0: + outputs[prompt][k] = torch.cat(v, dim=0) + + return outputs + + +class ZimEvaluator(ZimPredictor, nn.Module): + def __init__( + self, + model, + prompt_type: List[str] = None + ) -> None: + super().__init__(model=model) + self.prompt_type = prompt_type + + def forward(self, batched_input, multimask_output: bool = False): + input_images = batched_input["images"] + + outputs = { + prompt: { + "masks": [], + } for prompt in self.prompt_type + } + + with torch.inference_mode(): + for idx, input_image in enumerate(input_images): + input_image = input_image.cpu().numpy().astype(np.uint8) + self.set_image(image=input_image) + + for prompt in self.prompt_type: + point_coords = None + point_labels = None + bbox = None + + if prompt == "point": + points = batched_input["points"][idx] + points = points[points[:, 2] >= 0] # remove points whose label=-1 + point_coords = points[:, :2].cpu().numpy() + point_labels = points[:, 2].cpu().numpy() + + elif prompt == "bbox": + bbox = batched_input["bboxes"][idx] + bbox = bbox.cpu().numpy() + + masks, _, _ = self.predict( + point_coords=point_coords, + point_labels=point_labels, + box=bbox, + multimask_output=False, + ) + masks = torch.from_numpy(masks).float().unsqueeze(0).to(self.device) + + outputs[prompt]["masks"].append(masks) + + for prompt in self.prompt_type: + for k, v in outputs[prompt].items(): + if len(v) > 0: + outputs[prompt][k] = torch.cat(v, dim=0) + + return outputs diff --git a/eval/main_eval.py b/eval/main_eval.py new file mode 100755 index 0000000..805bf67 --- /dev/null +++ b/eval/main_eval.py @@ -0,0 +1,129 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import torch +from zim.utils import AverageMeter, print_once +from .metric import compute_eval_scores, get_gradfilter + +def run_eval( + config, + valloader, + evaluator_dict +): + score_dict = {} + + for model_name, evaluator in evaluator_dict.items(): + print_once(f'\nLOG) {model_name} evaluation start.') + model_score_dict = {} + for name, loader in valloader.items(): + print_once(f"LOG) evaluate {model_name} on {name} dataset") + + score = evaluate( + name=name, + evaluator=evaluator, + dataloader=loader, + prompt_type=config.eval.prompt_type, + use_ddp=config.use_ddp, + enable_amp=config.use_amp, + model_name=model_name, + ) + model_score_dict[name] = score + score_dict[model_name] = model_score_dict + + print_once(f'\nLOG)All evaluation done. Result : ') + + if not torch.distributed.is_initialized() or torch.distributed.get_rank() == 0: + result = "\n============================================\n" + + for k, v in score_dict.items(): + print_once('\n') + for data_type, log in v.items(): + for _k, _v in log.items(): + for __k, __v in _v.items(): + result += f'Model: {k}' + result += f', Prompt: {_k}' + result += f', Scale: {__k}' + result += f', dataset: {config.dataset.valset} ({data_type})\n' + result += f'{__v}\n\n' + result += "============================================\n" + print_once(result) + + +def evaluate( + name, + evaluator, + dataloader, + prompt_type, + use_ddp, + enable_amp, + model_name, +): + + metric_list = ["l1", "l2", "grad", "conn", "sad"] + + scale_list = ["all", "S", "M", "L"] + #scale_list = ["all", ] + + average_metric = { + prompt: { + scale: { + metric_name: AverageMeter(use_ddp) for metric_name in metric_list} + for scale in scale_list} + for prompt in prompt_type + } + + batch_size = dataloader.batch_size + device = evaluator.device + grad_filter = get_gradfilter(device) + + for _iter, batched_input in enumerate(dataloader): + for k, v in batched_input.items(): + if type(v) == torch.Tensor: + batched_input[k] = v.to(device) + + with torch.cuda.amp.autocast(enabled=enable_amp) and torch.no_grad(): + batched_output = evaluator(batched_input) + + ratio = batched_input['ratio'][0] + + for prompt in prompt_type: + logits = batched_output[prompt]["masks"] + mattes = batched_input["mattes"] + + scores = compute_eval_scores( + logits, mattes, grad_filter, + ) + + for m in metric_list: + average_metric[prompt]["all"][m].update(scores[m], batch_size) + + if "S" in average_metric[prompt] and ratio < 0.01: + average_metric[prompt]["S"][m].update(scores[m], batch_size) + elif "M" in average_metric[prompt] and ratio < 0.1: + average_metric[prompt]["M"][m].update(scores[m], batch_size) + elif "L" in average_metric[prompt] and ratio >= 0.1: + average_metric[prompt]["L"][m].update(scores[m], batch_size) + + # gather the stats from all processes + result_dict = {} + for prompt in prompt_type: + result_dict[prompt] = {} + + for scale in scale_list: + for k, v in average_metric[prompt][scale].items(): + v.synch(device) + + res = "Result" + res += f" | MSE {average_metric[prompt][scale]['l2'].avg:.4f}" + res += f" | SAD {average_metric[prompt][scale]['sad'].avg:.4f}" + res += f" | MAE {average_metric[prompt][scale]['l1'].avg:.4f}" + res += f" | Grad {average_metric[prompt][scale]['grad'].avg:.4f}" + res += f" | Conn {average_metric[prompt][scale]['conn'].avg:.4f}" + + result_dict[prompt][scale] = res + + return result_dict diff --git a/eval/metric.py b/eval/metric.py new file mode 100755 index 0000000..09c42f4 --- /dev/null +++ b/eval/metric.py @@ -0,0 +1,122 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +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.functional as F +from skimage.measure import label +import numpy as np + +def compute_eval_scores( + preds, gts, grad_filter, +): + """ + preds : (B 1 H W) + gts : (B H W) + """ + l1_dist_list = [] + l2_dist_list = [] + grad_list = [] + conn_error_list = [] + sad_error_list = [] + + for pred, gt in zip(preds, gts): + gt = gt.unsqueeze(0) + + l1_dist = F.l1_loss(pred, gt) * 1e3 + l2_dist = F.mse_loss(pred, gt) * 1e3 + grad = compute_grad(pred, gt, grad_filter) * 1e3 + sad_error = compute_sad_loss(pred, gt) + conn_error = compute_connectivity_error_torch(pred, gt) + + l1_dist_list.append(l1_dist) + l2_dist_list.append(l2_dist) + grad_list.append(grad) + conn_error_list.append(conn_error) + sad_error_list.append(sad_error) + + l1_dist = torch.stack(l1_dist_list, dim=0) + l2_dist = torch.stack(l2_dist_list, dim=0) + grad = torch.stack(grad_list, dim=0) + conn_error = torch.stack(conn_error_list, dim=0) + sad_error = torch.stack(sad_error_list, dim=0) + + return { + "l1": l1_dist.mean().item(), + "l2": l2_dist.mean().item(), + "grad": grad.mean().item(), + "conn": conn_error.mean().item(), + "sad": sad_error.mean().item(), + } + + +def compute_grad(preds, labels, grad_filter): + + if preds.dim() == 3: + preds = preds.unsqueeze(1) + + if labels.dim() == 3: + labels = labels.unsqueeze(1) + + grad_preds = F.conv2d(preds, weight=grad_filter, padding=1) + grad_labels = F.conv2d(labels, weight=grad_filter, padding=1) + grad_preds = torch.sqrt((grad_preds * grad_preds).sum(dim=1, keepdim=True) + 1e-8) + grad_labels = torch.sqrt( + (grad_labels * grad_labels).sum(dim=1, keepdim=True) + 1e-8 + ) + + return F.l1_loss(grad_preds, grad_labels) + + +def compute_sad_loss(pred, target): + error_map = torch.abs((pred - target)) + loss = torch.sum(error_map) + + return loss / 1000. + + +def getLargestCC(segmentation): + segmentation = segmentation.cpu().detach().numpy() + labels = label(segmentation, connectivity=1) + if labels.max() == 0: + return np.zeros_like(segmentation, dtype=bool) + largestCC = labels == np.argmax(np.bincount(labels.flat)[1:]) + 1 # Ignore background label + return largestCC + + +def compute_connectivity_error_torch(pred, target, step=0.1): + thresh_steps = list(torch.arange(0, 1 + step, step)) + l_map = torch.ones_like(pred, dtype=torch.float) * -1 + for i in range(1, len(thresh_steps)): + pred_alpha_thresh = (pred >= thresh_steps[i]).to(dtype=torch.int) + target_alpha_thresh = (target >= thresh_steps[i]).to(dtype=torch.int) + + omega = torch.from_numpy(getLargestCC(pred_alpha_thresh * target_alpha_thresh)).to(pred.device, dtype=torch.int) + flag = ((l_map == -1) & (omega == 0)).to(dtype=torch.int) + l_map[flag == 1] = thresh_steps[i - 1] + + l_map[l_map == -1] = 1 + + pred_d = pred - l_map + target_d = target - l_map + pred_phi = 1 - pred_d * (pred_d >= 0.15).to(dtype=torch.int) + target_phi = 1 - target_d * (target_d >= 0.15).to(dtype=torch.int) + loss = torch.sum(torch.abs(pred_phi - target_phi)) + + return loss / 1000. + + +def get_gradfilter(device): + """ + generate gradient filter as the conv kernel + """ + grad_filter = [] + grad_filter.append([[-1, -2, -1], [0, 0, 0], [1, 2, 1]]) + grad_filter.append([[-1, 0, 1], [-2, 0, 2], [-1, 0, 1]]) + grad_filter = np.array(grad_filter) + grad_filter = np.expand_dims(grad_filter, axis=1) + grad_filter = grad_filter.astype(np.float32) + return torch.tensor(grad_filter).to(device) diff --git a/requirements.txt b/requirements.txt new file mode 100755 index 0000000..bac5016 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,10 @@ +torch +torchvision +easydict +numpy +opencv-python +gradio==4.38.1 +gradio-image-prompter +fastapi==0.112.2 +git+https://github.com/facebookresearch/segment-anything.git +onnxruntime-gpu==1.17.0 \ No newline at end of file diff --git a/script/amg.py b/script/amg.py new file mode 100755 index 0000000..4e9fb36 --- /dev/null +++ b/script/amg.py @@ -0,0 +1,124 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" +import os, sys +sys.path.append(os.getcwd()) + +import argparse +import numpy as np +import cv2 +import glob +from tqdm import tqdm + +import torch +from torch.multiprocessing import Process + +from zim import zim_model_registry, ZimPredictor, ZimAutomaticMaskGenerator +from zim.utils import show_mat_anns + +from segment_anything import sam_model_registry, SamPredictor, SamAutomaticMaskGenerator + +def get_argparser(): + parser = argparse.ArgumentParser() + + # Path option + parser.add_argument("--img_dir", type=str) + parser.add_argument("--save_dir", type=str) + parser.add_argument("--model", type=str, default='zim,sam') + parser.add_argument("--device", type=str, default='cuda') + parser.add_argument("--workers", type=int, default=torch.cuda.device_count()) + + parser.add_argument("--backbone", type=str, default='vit_b') + parser.add_argument("--zim_ckpt", type=str, default=None) + parser.add_argument("--sam_ckpt", type=str, default=None) + + parser.add_argument("--points_per_batch", type=int, default=16) + parser.add_argument("--pred_iou_thresh", type=float, default=0.6) + parser.add_argument("--stability_score_thresh", type=float, default=0.9) + parser.add_argument("--stability_score_offset", type=float, default=0.1) + parser.add_argument("--box_nms_thresh", type=float, default=0.7) + parser.add_argument("--crop_nms_thresh", type=float, default=0.7) + return parser + + +def load_zim_amg(args): + zim = zim_model_registry[args.backbone](checkpoint=args.zim_ckpt).cuda() + mask_generator = ZimAutomaticMaskGenerator( + zim, + pred_iou_thresh=args.pred_iou_thresh, + points_per_batch=args.points_per_batch, + stability_score_thresh=args.stability_score_thresh, + stability_score_offset=args.stability_score_offset, + box_nms_thresh=args.box_nms_thresh, + crop_nms_thresh=args.crop_nms_thresh + ) + return mask_generator + +def load_sam_amg(args): + sam = sam_model_registry[args.backbone](checkpoint=args.sam_ckpt).cuda() + mask_generator = SamAutomaticMaskGenerator( + sam, + pred_iou_thresh=args.pred_iou_thresh, + points_per_batch=args.points_per_batch, + stability_score_thresh=args.stability_score_thresh, + stability_score_offset=args.stability_score_offset, + box_nms_thresh=args.box_nms_thresh, + crop_nms_thresh=args.crop_nms_thresh + ) + return mask_generator + + +def run_amg(pid, args): + with torch.cuda.device(pid): + + mask_generators = [] + if "zim" in args.model: + mask_generators.append(load_zim_amg(args)) + + if "sam" in args.model: + mask_generators.append(load_sam_amg(args)) + + for n, img_path in enumerate(tqdm(img_list)): + if (n+1) % args.workers != pid: + continue + + image = cv2.imread(img_path) + image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) + + with torch.cuda.amp.autocast(enabled=True): + masks = [] + for mg in mask_generators: + m = mg.generate(image) + masks.append(m) + + vis = [image] + for mask in masks: + vis.append(show_mat_anns(image, mask)) + + vis = cv2.hconcat(vis) + + save_path = os.path.join(args.save_dir, os.path.basename(img_path)) + cv2.imwrite(save_path, vis[:, :, ::-1]) + + +if __name__ == "__main__": + + args = get_argparser().parse_args() + args.model = args.model.split(",") + + img_list = glob.glob(f'{args.img_dir}/**', recursive=True) + img_list = [p for p in img_list if p.endswith((".jpg", ".png", ".jpeg"))] + + os.makedirs(args.save_dir, exist_ok=True) + + processes = [] + for i in range(args.workers): + proc = Process(target=run_amg, args=(i, args)) + processes.append(proc) + proc.start() + for proc in processes: + proc.join() + diff --git a/script/evaluation.py b/script/evaluation.py new file mode 100755 index 0000000..16efd37 --- /dev/null +++ b/script/evaluation.py @@ -0,0 +1,90 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" +import os, sys +sys.path.append(os.getcwd()) + +import warnings +warnings.filterwarnings(action="ignore") + +import torch +import numpy as np +import random + +from zim.utils import get_parser, print_once +from config.config import generate_config +from eval.main_eval import run_eval +from eval.evaluator import load_sam_evaluator, load_zim_evaluator +from eval.eval_loader import get_evalloader + +torch.backends.cudnn.benchmark = True +torch.backends.cudnn.enabled = True + +def parse_args(): + parser = get_parser() + args = parser.parse_args() + + return args + +def main(args): + + config = generate_config(args) + + # Setup random seed + torch.manual_seed(config.random_seed) + np.random.seed(config.random_seed) + random.seed(config.random_seed) + + torch.cuda.set_device(config.local_rank) + device = torch.device(f"cuda") + + n_gpus = torch.cuda.device_count() + if n_gpus <= 1: + config.use_ddp = False + + # DDP init + if config.use_ddp: + torch.distributed.init_process_group( + backend="nccl", rank=config.local_rank, world_size=n_gpus + ) + config.world_size = torch.distributed.get_world_size() + device = torch.device(f"cuda:{config.local_rank}") + + print_once("LOG) Initialization start") + + # Dataset list: string to list + if isinstance(config.dataset.data_type, str): + config.dataset.data_type = config.dataset.data_type.split(",") + if isinstance(config.eval.prompt_type, str): + config.eval.prompt_type = config.eval.prompt_type.split(",") + + # Benchmarking model list: str to list + if isinstance(config.eval.model_list, str): + config.eval.model_list = config.eval.model_list.split(",") + + val_loaders = get_evalloader(config) + + # Define SAM + print_once("LOG) Start loading models") + + evaluator_dict = {} + for model in config.eval.model_list: + if model == "sam": + evaluator_dict["sam"] = load_sam_evaluator(config, device) + elif model == "zim": + evaluator_dict["zim"] = load_zim_evaluator(config, device) + + print_once(f"LOG) Loading model {list(evaluator_dict.keys())}") + print_once("LOG) Start evaluation") + run_eval( + config=config, + valloader=val_loaders, + evaluator_dict=evaluator_dict + ) + +if __name__ == "__main__": + args = parse_args() + main(vars(args)) diff --git a/script/run_amg.sh b/script/run_amg.sh new file mode 100755 index 0000000..936fb7c --- /dev/null +++ b/script/run_amg.sh @@ -0,0 +1,22 @@ +img_dir="demo/examples" +save_dir="demo/amg" +model="zim,sam" + +backbone="vit_b" +zim_ckpt="results/zim_vit_b_2043.pt" +sam_ckpt="results/sam_vit_b_01ec64.pth" + +points_per_batch=16 +pred_iou_thresh=0.7 +stability_score_thresh=0.9 + +python script/amg.py \ +--img_dir ${img_dir} \ +--save_dir ${save_dir} \ +--model ${model} \ +--backbone ${backbone} \ +--zim_ckpt ${zim_ckpt} \ +--sam_ckpt ${sam_ckpt} \ +--points_per_batch ${points_per_batch} \ +--pred_iou_thresh ${pred_iou_thresh} \ +--stability_score_thresh ${stability_score_thresh} \ diff --git a/script/run_eval.sh b/script/run_eval.sh new file mode 100755 index 0000000..7d67044 --- /dev/null +++ b/script/run_eval.sh @@ -0,0 +1,34 @@ +amp=True +data_root=YOUR_DATA_ROOT + +# network +encoder="vit_b" +decoder="zim" + +# evaluation +workers=4 +image_size=1024 +prompt_type="point,bbox" +model_list="zim,sam" +valset="MicroMat3K" +data_type="fine,coarse" +data_list_txt="data_list.txt" +zim_weights="results/zim_vit_b_2043" +sam_weights="results/sam_vit_b_01ec64.pth" + + +ngpus=$(nvidia-smi --list-gpus | wc -l) +torchrun --standalone --nnodes=1 --nproc_per_node=${ngpus} script/evaluation.py \ +--amp ${amp} \ +--data-root ${data_root} \ +--network-encoder ${encoder} \ +--network-decoder ${decoder} \ +--eval-workers ${workers} \ +--eval-image-size ${image_size} \ +--eval-prompt-type ${prompt_type} \ +--eval-model-list ${model_list} \ +--eval-zim-weights ${zim_weights} \ +--eval-sam-weights ${sam_weights} \ +--dataset-valset ${valset} \ +--dataset-data-type ${data_type} \ +--dataset-data-list-txt ${data_list_txt} \ diff --git a/zim/__init__.py b/zim/__init__.py new file mode 100755 index 0000000..dcbfd00 --- /dev/null +++ b/zim/__init__.py @@ -0,0 +1,9 @@ +# 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 .build_model import build_zim_model, zim_model_registry +from .predictor import ZimPredictor +from .automatic_mask_generator import ZimAutomaticMaskGenerator \ No newline at end of file diff --git a/zim/automatic_mask_generator.py b/zim/automatic_mask_generator.py new file mode 100755 index 0000000..6780b50 --- /dev/null +++ b/zim/automatic_mask_generator.py @@ -0,0 +1,378 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. +This source code is based on code from the Segment Anything Model (SAM) +(https://github.com/facebookresearch/segment-anything). + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import numpy as np +import torch +from torchvision.ops.boxes import batched_nms, box_area + +from typing import Any, Dict, List, Optional, Tuple + +from .modeling.zim import Zim +from .predictor import ZimPredictor +from .utils.amg import ( + MaskData, + 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, + remove_small_regions, + rle_to_mask, + uncrop_boxes_xyxy, + uncrop_masks, + uncrop_points, +) + + +class ZimAutomaticMaskGenerator: + def __init__( + self, + model: Zim, + points_per_side: Optional[int] = 32, + points_per_batch: int = 64, + pred_iou_thresh: float = 0.88, + stability_score_thresh: float = 0.9, + stability_score_offset: float = 0.1, + 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", + ) -> None: + """ + Using a SAM 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 with a ViT-H backbone. + + Arguments: + model (Sam): The SAM 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. + 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. + """ + + 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": + from pycocotools import mask as mask_utils # type: ignore # noqa: F401 + + if min_mask_region_area > 0: + import cv2 # type: ignore # noqa: F401 + + self.predictor = ZimPredictor(model) + 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.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 + + @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) + + # Filter small disconnected regions and holes in masks + if self.min_mask_region_area > 0: + mask_data = self.postprocess_small_regions( + mask_data, + self.min_mask_region_area, + max(self.box_nms_thresh, self.crop_nms_thresh), + ) + + # 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], + "logit": mask_data["logits"][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) + data.cat(batch_data) + del batch_data + self.predictor.reset_image() + + # 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, ...], + ) -> MaskData: + orig_h, orig_w = orig_size + + # Run model on this batch + transformed_points = self.predictor.transform.apply_coords(points, im_size) + in_points = torch.as_tensor(transformed_points, device=self.predictor.device) + in_labels = torch.ones(in_points.shape[0], dtype=torch.int, device=in_points.device) + masks, iou_preds, _ = self.predictor.predict_torch( + in_points[:, None, :], + in_labels[:, None], + multimask_output=True, + return_logits=True, + ) + + # Serialize predictions and store in MaskData + data = MaskData( + masks=masks.flatten(0, 1), + logits=(masks.flatten(0, 1) * 255).byte(), + iou_preds=iou_preds.flatten(0, 1), + points=torch.as_tensor(points.repeat(masks.shape[1], axis=0)), + ) + del masks + + # 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 stability score + data["stability_score"] = calculate_stability_score( + data["masks"], self.predictor.model.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.predictor.model.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["logits"] = uncrop_masks(data["logits"], 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 \ No newline at end of file diff --git a/zim/build_model.py b/zim/build_model.py new file mode 100755 index 0000000..76cb3e6 --- /dev/null +++ b/zim/build_model.py @@ -0,0 +1,29 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. +This source code is based on code from the Segment Anything Model (SAM) +(https://github.com/facebookresearch/segment-anything). + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" +import os +import torch + +from .modeling.zim import Zim +from .modeling.encoder import ZIM_Encoder +from .modeling.decoder import ZIM_Decoder + +def build_zim_model(checkpoint): + + encoder = ZIM_Encoder(os.path.join(checkpoint, "encoder.onnx")) + decoder = ZIM_Decoder(os.path.join(checkpoint, "decoder.onnx")) + net = Zim(encoder, decoder) + + return net + +zim_model_registry = { + "default": build_zim_model, + "vit_l": build_zim_model, + "vit_b": build_zim_model, +} + diff --git a/zim/modeling/decoder.py b/zim/modeling/decoder.py new file mode 100755 index 0000000..c9ded3a --- /dev/null +++ b/zim/modeling/decoder.py @@ -0,0 +1,88 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" +import torch +from typing import Any, Callable +import onnxruntime +import numpy as np + +def np2tensor(np_array, device): + return torch.from_numpy(np_array).to(device) + +def tensor2np(torch_tensor): + if torch_tensor is None: + return None + + return torch_tensor.detach().cpu().numpy() + +class ZIM_Decoder(): + def __init__(self, onnx_path, num_threads=16): + self.onnx_path = onnx_path + + sessionOptions = onnxruntime.SessionOptions() + sessionOptions.intra_op_num_threads = num_threads + sessionOptions.inter_op_num_threads = num_threads + providers = ["CPUExecutionProvider"] + + self.ort_session = onnxruntime.InferenceSession( + onnx_path, sess_options=sessionOptions, providers=providers + ) + self.num_mask_tokens = 4 + + def cuda(self, device_id=0): + providers = [ + ( + "CUDAExecutionProvider", + { + "device_id": device_id, + }, + ), + ] + + self.ort_session.set_providers(providers) + + def forward( + self, + interm_feats, + image_embeddings, + points, + boxes, + attn_mask, + ): + device = image_embeddings.device + + ort_inputs = { + "feat_D0": tensor2np(interm_feats[0]), + "feat_D1": tensor2np(interm_feats[1]), + "feat_D2": tensor2np(interm_feats[2]), + "image_embeddings": tensor2np(image_embeddings), + "attn_mask": tensor2np(attn_mask), + } + + if points is not None: + point_coords, point_labels = points + ort_inputs["point_coords"] = tensor2np(point_coords.float()) + ort_inputs["point_labels"] = tensor2np(point_labels.float()) + + # add paddings as done in SAM + padding_point = np.zeros((ort_inputs["point_coords"].shape[0], 1, 2), dtype=np.float32) - 0.5 + padding_label = -np.ones((ort_inputs["point_labels"].shape[0], 1), dtype=np.float32) + ort_inputs["point_coords"] = np.concatenate([ort_inputs["point_coords"], padding_point], axis=1) + ort_inputs["point_labels"] = np.concatenate([ort_inputs["point_labels"], padding_label], axis=1) + + if boxes is not None: + ort_inputs["point_coords"] = tensor2np(boxes.reshape(-1, 2, 2)) + ort_inputs["point_labels"] = np.array([[2, 3]], dtype=np.float32).repeat(boxes.shape[0], 0) + + masks, iou_predictions = self.ort_session.run(None, ort_inputs) + + masks = np2tensor(masks, device) + iou_predictions = np2tensor(iou_predictions, device) + + return masks, iou_predictions + + __call__: Callable[..., Any] = forward + \ No newline at end of file diff --git a/zim/modeling/encoder.py b/zim/modeling/encoder.py new file mode 100755 index 0000000..730da07 --- /dev/null +++ b/zim/modeling/encoder.py @@ -0,0 +1,60 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" +import torch +from typing import Any, Callable +import onnxruntime + +def np2tensor(np_array, device): + return torch.from_numpy(np_array).to(device) + +def tensor2np(torch_tensor): + return torch_tensor.detach().cpu().numpy() + +class ZIM_Encoder(): + def __init__(self, onnx_path, num_threads=16): + self.onnx_path = onnx_path + + sessionOptions = onnxruntime.SessionOptions() + sessionOptions.intra_op_num_threads = num_threads + sessionOptions.inter_op_num_threads = num_threads + providers = ["CPUExecutionProvider"] + + self.ort_session = onnxruntime.InferenceSession( + onnx_path, sess_options=sessionOptions, providers=providers + ) + + def cuda(self, device_id=0): + providers = [ + ( + "CUDAExecutionProvider", + { + "device_id": device_id, + }, + ), + ] + + self.ort_session.set_providers(providers) + + def forward( + self, + image, + ): + device = image.device + + ort_inputs = { + "image": tensor2np(image), + } + image_embeddings, feat_D0, feat_D1, feat_D2 = self.ort_session.run(None, ort_inputs) + + image_embeddings = np2tensor(image_embeddings, device) + feat_D0 = np2tensor(feat_D0, device) + feat_D1 = np2tensor(feat_D1, device) + feat_D2 = np2tensor(feat_D2, device) + + return image_embeddings, (feat_D0, feat_D1, feat_D2) + + __call__: Callable[..., Any] = forward diff --git a/zim/modeling/zim.py b/zim/modeling/zim.py new file mode 100755 index 0000000..c4cade5 --- /dev/null +++ b/zim/modeling/zim.py @@ -0,0 +1,190 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. +This source code is based on code from the Segment Anything Model (SAM) +(https://github.com/facebookresearch/segment-anything). + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import torch +from torch import nn +from torch.nn import functional as F +from typing import Any, Dict, List + +def gaussian(sigma=6): + """ + 2D Gaussian Kernel Generation. + """ + size = 6 * sigma + 3 + x = torch.arange(0, size, 1) + y = x[:, None] + x0, y0 = 3 * sigma + 1, 3 * sigma + 1 + g = torch.exp(- ((x - x0) ** 2 + (y - y0) ** 2) / (2 * sigma ** 2)) + return g + +class Zim(nn.Module): + def __init__( + self, + encoder, + decoder, + *, + image_size: int = 1024, + pixel_mean: List[float] = [123.675, 116.28, 103.53], + pixel_std: List[float] = [58.395, 57.12, 57.375], + ) -> None: + """ + SAM predicts object masks from an image and input prompts. + + Arguments: + encoder : The backbone used to encode the + image into image embeddings that allow for efficient mask prediction. + decoder : Predicts masks from the image embeddings and given prompts. + pixel_mean (list(float)): Mean values for normalizing pixels in the input image. + pixel_std (list(float)): Std values for normalizing pixels in the input image. + """ + super().__init__() + self.encoder = encoder + self.decoder = decoder + self.output_activation = nn.Sigmoid() + + self.image_size = image_size + self.register_buffer( + "pixel_mean", torch.Tensor(pixel_mean).view(-1, 1, 1), False + ) + self.register_buffer("pixel_std", torch.Tensor(pixel_std).view(-1, 1, 1), False) + + self.mask_threshold: float = 0.5 + self.image_format: str = "RGB" + self.num_mask_tokens = decoder.num_mask_tokens + + self.encode_stride = 16 + self.encode_kernel = 21 + self.attn_mask_size = 64 + self.g = gaussian(self.encode_kernel) + + self.output_conv = nn.Conv2d( + self.num_mask_tokens, + self.num_mask_tokens, + kernel_size=1, stride=1, padding=0, + ) + + @property + def device(self) -> Any: + return self.pixel_mean.device + + def cuda(self, device_id=None): + if type(device_id) == torch.device: + device_id = device_id.index + + if device_id is None: + device_id = 0 + + device = torch.device(f"cuda:{device_id}") + super(Zim, self).cuda(device) + + self.encoder.cuda(device_id) + self.decoder.cuda(device_id) + + return self + + def postprocess_masks( + self, masks: torch.Tensor, input_size: List[int], original_size: torch.Tensor + ) -> torch.Tensor: + """ + Remove padding and upscale masks to the original image size. + + Arguments: + masks (torch.Tensor): Batched masks from the decoder, + in BxCxHxW format. + input_size (tuple(int, int)): The size of the image input to the + model, in (H, W) format. Used to remove padding. + original_size (tuple(int, int)): The original size of the image + before resizing for input to the model, in (H, W) format. + + Returns: + (torch.Tensor): Batched masks in BxCxHxW format, where (H, W) + is given by original_size. + """ + masks = F.interpolate( + masks, + (self.image_size, self.image_size), + mode="bilinear", + align_corners=False, + ) + masks = masks[..., : input_size[0], : input_size[1]] + masks = F.interpolate( + masks, original_size, mode="bilinear", align_corners=False + ) + return masks + + def preprocess(self, x: torch.Tensor) -> torch.Tensor: + """Normalize pixel values and pad to a square input.""" + # Normalize colors + x = (x - self.pixel_mean) / self.pixel_std + + # Pad + h, w = x.shape[-2:] + padh = self.image_size - h + padw = self.image_size - w + x = F.pad(x, (0, padw, 0, padh)) + return x + + def bbox_attn_mask(self, boxes): + """Prompt-aware Masked Attention: box prompt (binary attn mask) """ + bs = boxes.shape[0] + attn_mask = torch.zeros((bs, self.attn_mask_size, self.attn_mask_size), device=boxes.device) + + # attn_weight = attn_weight.masked_fill(m.logical_not(), -1e4) + + for n in range(bs): + xmin, ymin, xmax, ymax = boxes[n] + + xmin, xmax = min(xmin, xmax), max(xmin, xmax) + ymin, ymax = min(ymin, ymax), max(ymin, ymax) + + xmin, xmax = int(xmin / self.encode_stride), int(xmax / self.encode_stride) + ymin, ymax = int(ymin / self.encode_stride), int(ymax / self.encode_stride) + + xmin, ymin = max(0, xmin), max(0, ymin) + xmax = min(self.attn_mask_size, xmax+1) + ymax = min(self.attn_mask_size, ymax+1) + + attn_mask[n, ymin:ymax, xmin:xmax] = 1 + + return attn_mask + + def point_attn_mask(self, point_coords): + """Prompt-aware Masked Attention: point prompt (soft attn mask) """ + bs = point_coords.shape[0] + attn_mask = torch.zeros((bs, self.attn_mask_size, self.attn_mask_size), device=point_coords.device) + + if self.g.device != point_coords.device: + self.g = self.g.to(point_coords.device) + + for n in range(bs): + for point in point_coords[n]: + x, y = int(point[0] / self.encode_stride), int(point[1].item() / self.encode_stride) + + # outside image boundary + if x < 0 or y < 0 or x >= self.attn_mask_size or y >= self.attn_mask_size: + continue + + # upper left + ul = int(round(x - 3 * self.encode_kernel - 1)), int(round(y - 3 * self.encode_kernel - 1)) + # bottom right + br = int(round(x + 3 * self.encode_kernel + 2)), int(round(y + 3 * self.encode_kernel + 2)) + + c, d = int(max(0, -ul[0])), int(min(br[0], self.attn_mask_size) - ul[0]) + a, b = int(max(0, -ul[1])), int(min(br[1], self.attn_mask_size) - ul[1]) + + cc, dd = int(max(0, ul[0])), int(min(br[0], self.attn_mask_size)) + aa, bb = int(max(0, ul[1])), int(min(br[1], self.attn_mask_size)) + + attn_mask[n, aa:bb, cc:dd] = torch.maximum( + attn_mask[n, aa:bb, cc:dd], self.g[a:b, c:d] + ) + + return attn_mask + + \ No newline at end of file diff --git a/zim/predictor.py b/zim/predictor.py new file mode 100755 index 0000000..09b0ab1 --- /dev/null +++ b/zim/predictor.py @@ -0,0 +1,275 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. +This source code is based on code from the Segment Anything Model (SAM) +(https://github.com/facebookresearch/segment-anything). + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import numpy as np +import torch +from torch.nn import functional as F +from torch.nn.parallel import DistributedDataParallel as DDP +from typing import Optional, Tuple, List + +from .utils import ResizeLongestSide + +class ZimPredictor: + def __init__( + self, + model, + ) -> None: + """ + Uses SAM to calculate the image embedding for an image, and then + allow repeated, efficient mask prediction given prompts. + + Arguments: + sam_model (Sam): The model to use for mask prediction. + """ + super().__init__() + self.model = model.module if isinstance(model, DDP) else model + self.transform = ResizeLongestSide(self.model.image_size) + self.reset_image() + + def set_image( + self, + image: np.ndarray, + image_format: str = "RGB", + ) -> None: + """ + Calculates the image embeddings for the provided image, allowing + masks to be predicted with the 'predict' method. + + Arguments: + image (np.ndarray): The image for calculating masks. Expects an + image in HWC uint8 format, with pixel values in [0, 255]. + image_format (str): The color format of the image, in ['RGB', 'BGR']. + """ + assert image_format in [ + "RGB", + "BGR", + ], f"image_format must be in ['RGB', 'BGR'], is {image_format}." + if image_format != self.model.image_format: + image = image[..., ::-1] + + # Transform the image to the form expected by the model + input_image = self.transform.apply_image(image) + input_image_torch = torch.as_tensor(input_image, device=self.device) + input_image_torch = input_image_torch.permute(2, 0, 1).contiguous()[None, :, :, :] + + self.set_torch_image(input_image_torch, image.shape[:2]) + + @torch.no_grad() + def set_torch_image( + self, + transformed_image: torch.Tensor, + original_image_size: Tuple[int, ...], + ) -> None: + """ + Calculates the image embeddings for the provided image, allowing + masks to be predicted with the 'predict' method. Expects the input + image to be already transformed to the format expected by the model. + + Arguments: + transformed_image (torch.Tensor): The input image, with shape + 1x3xHxW, which has been transformed with ResizeLongestSide. + original_image_size (tuple(int, int)): The size of the image + before transformation, in (H, W) format. + """ + assert ( + len(transformed_image.shape) == 4 + and transformed_image.shape[1] == 3 + and max(*transformed_image.shape[2:]) == self.model.image_size + ), f"set_torch_image input must be BCHW with long side {self.model.image_size}." + self.reset_image() + + self.original_size = original_image_size + self.input_size = tuple(transformed_image.shape[-2:]) + input_image = self.model.preprocess(transformed_image) + self.features, self.interm_feats = self.model.encoder(input_image) + self.is_image_set = True + + def predict( + self, + point_coords: Optional[np.ndarray] = None, + point_labels: Optional[np.ndarray] = None, + box: Optional[np.ndarray] = None, + multimask_output: bool = True, + return_logits: bool = False, + ) -> 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. + + 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 + coords_torch = None + labels_torch = None + box_torch = 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 = self.transform.apply_coords(point_coords, self.original_size) + coords_torch = torch.as_tensor(point_coords, dtype=torch.float, device=self.device) + labels_torch = torch.as_tensor(point_labels, dtype=torch.float, device=self.device) + coords_torch, labels_torch = coords_torch[None, :, :], labels_torch[None, :] + if box is not None: + box = self.transform.apply_boxes(box, self.original_size) + box_torch = torch.as_tensor(box, dtype=torch.float, device=self.device) + + masks, iou_predictions, low_res_masks = self.predict_torch( + coords_torch, + labels_torch, + box_torch, + multimask_output, + return_logits=return_logits, + ) + + masks_np = masks[0].detach().cpu().numpy() + iou_predictions_np = iou_predictions[0].detach().cpu().numpy() + low_res_masks_np = low_res_masks[0].detach().cpu().numpy() + + return masks_np, iou_predictions_np, low_res_masks_np + + @torch.no_grad() + def predict_torch( + self, + point_coords: Optional[torch.Tensor], + point_labels: Optional[torch.Tensor], + boxes: Optional[torch.Tensor] = None, + multimask_output: bool = True, + return_logits: bool = False, + ) -> 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 ResizeLongestSide. + + 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: + points = (point_coords, point_labels) + attn_mask = self.model.point_attn_mask(point_coords) + else: + points = None + attn_mask = self.model.bbox_attn_mask(boxes) + + # Embed prompts + masks, iou_predictions = self.model.decoder( + interm_feats=self.interm_feats, + image_embeddings=self.features, + points=points, + boxes=boxes, + attn_mask=attn_mask, + ) + + # Select the correct mask or masks for output + if multimask_output: + mask_slice = slice(0, None) + else: + mask_slice = slice(0, 1) + + masks = masks[:, mask_slice, :, :] + iou_predictions = iou_predictions[:, mask_slice] + + low_res_masks = F.interpolate(masks, scale_factor=2, mode='bilinear', align_corners=False) + + masks = self.model.postprocess_masks( + masks, + input_size=self.input_size, + original_size=self.original_size, + ) + + return masks.sigmoid(), iou_predictions, low_res_masks.sigmoid() + + 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 + + @property + def device(self) -> torch.device: + return self.model.device + + def reset_image(self) -> None: + """Resets the currently set image.""" + self.is_image_set = False + self.features = None + self.interm_feats = None + self.orig_h = None + self.orig_w = None + self.input_h = None + self.input_w = None + \ No newline at end of file diff --git a/zim/utils/__init__.py b/zim/utils/__init__.py new file mode 100755 index 0000000..45fb1a8 --- /dev/null +++ b/zim/utils/__init__.py @@ -0,0 +1,10 @@ +# 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 .argparser import get_parser +from .print import print_once, pretty +from .utils import AverageMeter, ResizeLongestSide +from .amg import show_mat_anns \ No newline at end of file diff --git a/zim/utils/amg.py b/zim/utils/amg.py new file mode 100755 index 0000000..5ec1029 --- /dev/null +++ b/zim/utils/amg.py @@ -0,0 +1,373 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. +This source code is based on code from the Segment Anything Model (SAM) +(https://github.com/facebookresearch/segment-anything). + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import numpy as np +import torch +import cv2 + +import math +from copy import deepcopy +from itertools import product +from typing import Any, Dict, Generator, ItemsView, List, Tuple + + +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.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 + +def show_mat_anns(image, anns): + if len(anns) == 0: + return np.zeros_like(image) + 128 + + sorted_anns = sorted(anns, key=(lambda x: x['area']), reverse=True) + + image = image.astype(np.float32) + colorized_mat = np.zeros_like(image) + + for ann in sorted_anns: + color = (np.random.random(3) * 255).astype(np.float32) + if 'logit' in ann: + mat = ann['logit'].astype(np.float32) / 255. + else: + mat = ann['segmentation'].astype(np.float32) + + color_mat = np.zeros_like(image) + color[None, None] + colorized_mat = color_mat * mat[:, :, None] + colorized_mat * (1. - mat[:, :, None]) + + colorized_mat = np.uint8(colorized_mat) + + return colorized_mat \ No newline at end of file diff --git a/zim/utils/argparser.py b/zim/utils/argparser.py new file mode 100755 index 0000000..837f9f6 --- /dev/null +++ b/zim/utils/argparser.py @@ -0,0 +1,96 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import os +import argparse +from config.config import config_ + +def str2bool(v): + if isinstance(v, bool): + return v + if v.lower() in ("yes", "true", "t", "y", "1"): + return True + elif v.lower() in ("no", "false", "f", "n", "0"): + return False + else: + raise argparse.ArgumentTypeError("Boolean value expected.") + + +def get_parser(verbose=False): + p = argparse.ArgumentParser("argparser", add_help=False) + + p.add_argument( + "--data-root", type=str, default=config_.data_root, help="data root directory" + ) + p.add_argument( + "--local_rank", type=int, default=int(os.getenv("LOCAL_RANK", "0")) + ) + p.add_argument( + "--amp", type=str2bool, default=True + ) + p.add_argument( + "--ddp", action="store_true" + ) + p.add_argument( + "--random-seed", type=int, default=config_.random_seed + ) + + # network config + p.add_argument( + "--network-encoder", + type=str, + default=config_.network.encoder, + choices=["vit_b", "vit_l"], + ) + p.add_argument( + "--network-decoder", + type=str, + default=config_.network.decoder, + choices=["zim", "sam"], + ) + p.add_argument( + "--network-encode-kernel", + type=int, + default=config_.network.encode_kernel, + ) + + # evaluation config + p.add_argument( + "--eval-workers", type=int, default=config_.eval.workers, + ) + p.add_argument( + "--eval-image-size", type=int, default=config_.eval.image_size, + ) + p.add_argument( + "--eval-prompt-type", type=str, default=config_.eval.prompt_type, + ) + p.add_argument( + "--eval-model-list", type=str, default=config_.eval.model_list, + ) + p.add_argument( + "--eval-zim-weights", + type=str, + default=config_.eval.zim_weights, + ) + p.add_argument( + "--eval-sam-weights", + type=str, + default=config_.eval.sam_weights, + ) + + # dataset config + p.add_argument( + "--dataset-valset", type=str, default=config_.dataset.valset, + ) + p.add_argument( + "--dataset-data-type", type=str, default=config_.dataset.data_type, + ) + p.add_argument( + "--dataset-data-list-txt", type=str, default=config_.dataset.data_list_txt, + ) + + return p diff --git a/zim/utils/print.py b/zim/utils/print.py new file mode 100755 index 0000000..6c84986 --- /dev/null +++ b/zim/utils/print.py @@ -0,0 +1,20 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import torch + +def print_once(message): + if not torch.distributed.is_initialized() or torch.distributed.get_rank() == 0: + print(message) + +def pretty(d, indent=0): + for key, value in d.items(): + print_once("\t" * indent + str(key)) + if isinstance(value, dict): + pretty(value, indent + 1) + else: + print_once("\t" * (indent + 1) + str(value)) diff --git a/zim/utils/utils.py b/zim/utils/utils.py new file mode 100755 index 0000000..c961d39 --- /dev/null +++ b/zim/utils/utils.py @@ -0,0 +1,148 @@ +""" +Copyright (c) 2024-present Naver Cloud Corp. + +This source code is licensed under the license found in the +LICENSE file in the root directory of this source tree. +""" + +import numpy as np +import torch +from torch.nn import functional as F +from torchvision.transforms.functional import resize, to_pil_image, InterpolationMode +from copy import deepcopy +from typing import Optional, Tuple, List + +class ResizeLongestSide: + """ + Resizes images to the longest side 'target_length', as well as provides + methods for resizing coordinates and boxes. Provides methods for + transforming both numpy array and batched torch tensors. + """ + + def __init__(self, target_length: int) -> None: + self.target_length = target_length + + def apply_image(self, image: np.ndarray) -> np.ndarray: + """ + Expects a numpy array with shape HxWxC in uint8 format. + """ + target_size = self.get_preprocess_shape(image.shape[0], image.shape[1], self.target_length) + return np.array(resize(to_pil_image(image), target_size)) + + def apply_coords(self, coords: np.ndarray, original_size: Tuple[int, ...]) -> np.ndarray: + """ + Expects a numpy array of length 2 in the final dimension. Requires the + original image size in (H, W) format. + """ + old_h, old_w = original_size + new_h, new_w = self.get_preprocess_shape( + original_size[0], original_size[1], self.target_length + ) + coords = deepcopy(coords).astype(float) + coords[..., 0] = coords[..., 0] * (new_w / old_w) + coords[..., 1] = coords[..., 1] * (new_h / old_h) + return coords + + def apply_boxes(self, boxes: np.ndarray, original_size: Tuple[int, ...]) -> np.ndarray: + """ + Expects a numpy array shape Bx4. Requires the original image size + in (H, W) format. + """ + boxes = self.apply_coords(boxes.reshape(-1, 2, 2), original_size) + return boxes.reshape(-1, 4) + + def apply_image_torch(self, image: torch.Tensor) -> torch.Tensor: + """ + Expects batched images with shape BxCxHxW and float format. This + transformation may not exactly match apply_image. apply_image is + the transformation expected by the model. + """ + # Expects an image in BCHW format. May not exactly match apply_image. + target_size = self.get_preprocess_shape(image.shape[2], image.shape[3], self.target_length) + return F.interpolate( + image, target_size, mode="bilinear", align_corners=False, antialias=True + ) + + def apply_coords_torch( + self, coords: torch.Tensor, original_size: Tuple[int, ...] + ) -> torch.Tensor: + """ + Expects a torch tensor with length 2 in the last dimension. Requires the + original image size in (H, W) format. + """ + old_h, old_w = original_size + new_h, new_w = self.get_preprocess_shape( + original_size[0], original_size[1], self.target_length + ) + coords = deepcopy(coords).to(torch.float) + coords[..., 0] = coords[..., 0] * (new_w / old_w) + coords[..., 1] = coords[..., 1] * (new_h / old_h) + return coords + + def apply_boxes_torch( + self, boxes: torch.Tensor, original_size: Tuple[int, ...] + ) -> torch.Tensor: + """ + Expects a torch tensor with shape Bx4. Requires the original image + size in (H, W) format. + """ + boxes = self.apply_coords_torch(boxes.reshape(-1, 2, 2), original_size) + return boxes.reshape(-1, 4) + + def apply_mask(self, image: np.ndarray) -> np.ndarray: + """ + Expects a numpy array with shape HxWxC in uint8 format. + """ + target_size = self.get_preprocess_shape(image.shape[0], image.shape[1], self.target_length) + return np.array(resize(to_pil_image(image), target_size, interpolation=InterpolationMode.NEAREST)) + + @staticmethod + def get_preprocess_shape(oldh: int, oldw: int, long_side_length: int) -> Tuple[int, int]: + """ + Compute the output size given input size and target long side length. + """ + scale = long_side_length * 1.0 / max(oldh, oldw) + newh, neww = oldh * scale, oldw * scale + neww = int(neww + 0.5) + newh = int(newh + 0.5) + return (newh, neww) + + +def remove_prefix(text, prefix): + if text.startswith(prefix): + return text[len(prefix) :] + return text + +class AverageMeter(object): + """Computes and stores the average and current value""" + + def __init__(self, is_ddp): + self.is_ddp = is_ddp + self.reset() + + def reset(self): + self.val = 0.0 + self.avg = 0.0 + self.sum = 0.0 + self.count = 0.0 + + def update(self, val, n=1): + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / (self.count + 1e-5) + + def synch(self, device): + if self.is_ddp is False: + return + + _sum = torch.tensor(self.sum).to(device) + _count = torch.tensor(self.count).to(device) + + torch.distributed.reduce(_sum, dst=0) + torch.distributed.reduce(_count, dst=0) + + if torch.distributed.get_rank() == 0: + self.sum = _sum.item() + self.count = _count.item() + self.avg = self.sum / (self.count + 1e-5)