From aad426bd5021a266278b09f4d65462451c491be8 Mon Sep 17 00:00:00 2001 From: Michael Schmidt Date: Sat, 23 Mar 2024 19:39:09 +0100 Subject: [PATCH] Add support for AdaCode (#208) --- README.md | 1 + .../spandrel_extra_arches/__helper.py | 2 + .../architectures/AdaCode/__init__.py | 150 ++++++ .../architectures/AdaCode/arch/LICENSE | 437 ++++++++++++++++++ .../AdaCode/arch/adacode_contrast_arch.py | 244 ++++++++++ tests/__snapshots__/test_AdaCode.ambr | 37 ++ .../outputs/16x16/AdaCode_SR_X4_model_g.png | Bin 0 -> 10128 bytes .../outputs/32x32/AdaCode_SR_X2_model_g.png | Bin 0 -> 9678 bytes .../outputs/32x32/AdaCode_SR_X4_model_g.png | Bin 0 -> 31550 bytes .../outputs/64x64/AdaCode_SR_X2_model_g.png | Bin 0 -> 28005 bytes .../outputs/64x64/AdaCode_SR_X4_model_g.png | Bin 0 -> 100903 bytes tests/test_AdaCode.py | 75 +++ 12 files changed, 946 insertions(+) create mode 100644 libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/__init__.py create mode 100644 libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/LICENSE create mode 100644 libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/adacode_contrast_arch.py create mode 100644 tests/__snapshots__/test_AdaCode.ambr create mode 100644 tests/images/outputs/16x16/AdaCode_SR_X4_model_g.png create mode 100644 tests/images/outputs/32x32/AdaCode_SR_X2_model_g.png create mode 100644 tests/images/outputs/32x32/AdaCode_SR_X4_model_g.png create mode 100644 tests/images/outputs/64x64/AdaCode_SR_X2_model_g.png create mode 100644 tests/images/outputs/64x64/AdaCode_SR_X4_model_g.png create mode 100644 tests/test_AdaCode.py diff --git a/README.md b/README.md index 2ee57eab..d7ed9147 100644 --- a/README.md +++ b/README.md @@ -103,6 +103,7 @@ Spandrel currently supports a limited amount of network architectures. If the ar - [RGT](https://github.com/zhengchen1999/RGT) | [RGT Models](https://drive.google.com/drive/folders/1zxrr31Kp2D_N9a-OUAPaJEn_yTaSXTfZ?usp=drive_link), [RGT-S Models](https://drive.google.com/drive/folders/1j46WHs1Gvyif1SsZXKy1Y1IrQH0gfIQ1?usp=drive_link) - [DCTLSA](https://github.com/zengkun301/DCTLSA) | [Models](https://github.com/zengkun301/DCTLSA/tree/main/pretrained) - [ATD](https://github.com/LabShuHangGU/Adaptive-Token-Dictionary) | [Models](https://drive.google.com/drive/folders/1D3BvTS1xBcaU1mp50k3pBzUWb7qjRvmB?usp=sharing) +- [AdaCode](https://github.com/kechunl/AdaCode) | [Models](https://github.com/kechunl/AdaCode/releases/tag/v0-pretrain_models) #### Face Restoration diff --git a/libs/spandrel_extra_arches/spandrel_extra_arches/__helper.py b/libs/spandrel_extra_arches/spandrel_extra_arches/__helper.py index bd121e52..2192a922 100644 --- a/libs/spandrel_extra_arches/spandrel_extra_arches/__helper.py +++ b/libs/spandrel_extra_arches/spandrel_extra_arches/__helper.py @@ -2,6 +2,7 @@ from .architectures import ( MAT, + AdaCode, CodeFormer, DDColor, FeMaSR, @@ -17,6 +18,7 @@ ArchSupport.from_architecture(CodeFormer.CodeFormerArch()), ArchSupport.from_architecture(MAT.MATArch()), ArchSupport.from_architecture(DDColor.DDColorArch()), + ArchSupport.from_architecture(AdaCode.AdaCodeArch()), ArchSupport.from_architecture(FeMaSR.FeMaSRArch()), ArchSupport.from_architecture(M3SNet.M3SNetArch()), ArchSupport.from_architecture(Restormer.RestormerArch()), diff --git a/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/__init__.py b/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/__init__.py new file mode 100644 index 00000000..49a4c89c --- /dev/null +++ b/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/__init__.py @@ -0,0 +1,150 @@ +from __future__ import annotations + +from typing_extensions import override + +from spandrel import ( + Architecture, + ImageModelDescriptor, + SizeRequirements, + StateDict, +) +from spandrel.util import KeyCondition, get_first_seq_index, get_seq_len + +from .arch.adacode_contrast_arch import AdaCodeSRNet_Contrast as AdaCode + +_inv_channel_query_dict = { + 256: [8, 16, 32, 64], + 128: [128], + 64: [256], + 32: [512], +} + + +def _clean_state_dict(state_dict: StateDict): + # To make my day a little brighter, the pretrained models of FeMaSR have a bunch + # of useless keys in their state dict. With great delight, I saw those keys cause + # errors when calling `model.load_state_dict(state_dict)`, so this function + # removes them. + + keys = list(state_dict.keys()) + for k in keys: + if k.startswith( + ( + "sft_fusion_group.", + "multiscale_encoder.upsampler.", + "conv_semantic.", + "vgg_feat_extractor.", + "weight_cri.", + "contrast_cri.", + ) + ): + del state_dict[k] + + +class AdaCodeArch(Architecture[AdaCode]): + def __init__(self) -> None: + super().__init__( + id="AdaCode", + detect=KeyCondition.has_all( + "multiscale_encoder.in_conv.weight", + "multiscale_encoder.blocks.0.0.weight", + "decoder_group.0.block.1.weight", + "out_conv.weight", + "weight_predictor.blocks.0.swin_blks.0.residual_group.blocks.0.norm1.weight", + "before_quant_group.0.weight", + ), + ) + + @override + def load(self, state_dict: StateDict) -> ImageModelDescriptor[AdaCode]: + _clean_state_dict(state_dict) + + # in_channel = 3 + # codebook_params: list[list[int]] = [[32, 256, 256]] + # gt_resolution = 256 + # LQ_stage = False + # norm_type = "gn" + act_type = "silu" + use_quantize = True # cannot be deduced from state_dict + # scale_factor = 1 + use_residual = True # cannot be deduced from state_dict + + in_channel = state_dict["multiscale_encoder.in_conv.weight"].shape[1] + + # gt_resolution can be derived from the decoders + # we assume that gt_resolution is a power of 2 + max_depth = get_seq_len(state_dict, "decoder_group") + # in the last decoder iteration, we essentially have: + # out_ch = channel_query_dict[gt_resolution] + out_ch = state_dict[f"decoder_group.{max_depth-1}.block.1.weight"].shape[0] + gt_resolution_candidates = _inv_channel_query_dict[out_ch] + # just choose the largest one + gt_resolution = gt_resolution_candidates[-1] + + # the codebook is complex to reconstruct + cb_height = get_seq_len(state_dict, "quantize_group") + codebook_params = [] + for i in range(cb_height): + emb_num = state_dict[f"quantize_group.{i}.embedding.weight"].shape[0] + emb_dim = state_dict[f"quantize_group.{i}.embedding.weight"].shape[1] + + scale_in_ch = state_dict[f"after_quant_group.{i}.weight"].shape[0] + candidates = _inv_channel_query_dict[scale_in_ch] + # we just need *a* scale, so we can pick the first one + codebook_params.append([candidates[0], emb_num, emb_dim]) + + # max_depth = int(log2(gt_resolution // scale_0)) + # We assume that gt_resolution and scale_0 are powers of 2, so we can calculate + # them directly + scale_0 = gt_resolution // (2**max_depth) + codebook_params[0][0] = scale_0 + + # scale factor + swin_block_index = get_first_seq_index( + state_dict, + "multiscale_encoder.blocks.{}.swin_blks.0.residual_group.blocks.0.attn.relative_position_bias_table", + ) + if swin_block_index >= 0: + LQ_stage = True # noqa: N806 + # encode_depth = int(log2(gt_resolution // scale_factor // scale_0)) + encode_depth = swin_block_index + scale_factor = gt_resolution // (2**encode_depth * scale_0) + else: + LQ_stage = False # noqa: N806 + scale_factor = 1 + + if "decoder_group.0.block.2.conv.0.norm.running_mean" in state_dict: + norm_type = "bn" + elif "decoder_group.0.block.2.conv.0.norm.weight" in state_dict: + norm_type = "gn" + else: + # we cannot differentiate between "none" and "in" + norm_type = "in" + + model = AdaCode( + in_channel=in_channel, + codebook_params=codebook_params, + gt_resolution=gt_resolution, + LQ_stage=LQ_stage, + norm_type=norm_type, + act_type=act_type, + use_quantize=use_quantize, + scale_factor=scale_factor, + use_residual=use_residual, + ) + + multiple_of = {2: 32, 4: 16}.get(scale_factor, 8) + + return ImageModelDescriptor( + model, + state_dict, + architecture=self, + purpose="Restoration" if scale_factor == 1 else "SR", + tags=[], + supports_half=True, # TODO + supports_bfloat16=True, # TODO + scale=scale_factor, + input_channels=in_channel, + output_channels=in_channel, + size_requirements=SizeRequirements(multiple_of=multiple_of), + ) diff --git a/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/LICENSE b/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/LICENSE new file mode 100644 index 00000000..93047ee3 --- /dev/null +++ b/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/LICENSE @@ -0,0 +1,437 @@ +Attribution-NonCommercial-ShareAlike 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-ShareAlike 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-ShareAlike 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. BY-NC-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + + d. 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. + + e. 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. + + f. 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. + + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution, NonCommercial, and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + i. 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. + + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + k. 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. + + l. 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. + + m. 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. + + n. 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. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + + c. 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. + + b. ShareAlike. + + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-NC-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + + +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, + including for purposes of Section 3(b); 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/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/adacode_contrast_arch.py b/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/adacode_contrast_arch.py new file mode 100644 index 00000000..cddffaef --- /dev/null +++ b/libs/spandrel_extra_arches/spandrel_extra_arches/architectures/AdaCode/arch/adacode_contrast_arch.py @@ -0,0 +1,244 @@ +from __future__ import annotations + +import numpy as np +import torch +from torch import nn as nn + +from spandrel.util import store_hyperparameters + +from ...FeMaSR.arch.femasr import DecoderBlock, MultiScaleEncoder, SwinLayers + + +class VectorQuantizer(nn.Module): + """ + see https://github.com/MishaLaskin/vqvae/blob/d761a999e2267766400dc646d82d3ac3657771d4/models/quantizer.py + ____________________________________________ + Discretization bottleneck part of the VQ-VAE. + Inputs: + - n_e : number of embeddings + - e_dim : dimension of embedding + - beta : commitment cost used in loss term, beta * ||z_e(x)-sg[e]||^2 + _____________________________________________ + """ + + def __init__(self, n_e, e_dim): + super().__init__() + self.n_e = int(n_e) + self.e_dim = int(e_dim) + self.embedding = nn.Embedding(self.n_e, self.e_dim) + self.embedding.weight.data.uniform_(-1.0 / self.n_e, 1.0 / self.n_e) + + def dist(self, x, y): + return ( + torch.sum(x**2, dim=1, keepdim=True) + + torch.sum(y**2, dim=1) + - 2 * torch.matmul(x, y.t()) + ) + + def forward(self, z: torch.Tensor): + """ + Args: + z: input features to be quantized, z (continuous) -> z_q (discrete) + z.shape = (batch, channel, height, width) + gt_indices: feature map of given indices, used for visualization. + """ + # reshape z -> (batch, height, width, channel) and flatten + z = z.permute(0, 2, 3, 1).contiguous() + z_flattened = z.view(-1, self.e_dim) + + codebook = self.embedding.weight + + d = self.dist(z_flattened, codebook) + + # find closest encodings + min_encoding_indices = torch.argmin(d, dim=1).unsqueeze(1) + min_encodings = torch.zeros( + min_encoding_indices.shape[0], codebook.shape[0] + ).to(z) + min_encodings.scatter_(1, min_encoding_indices, 1) + + # get quantized latent vectors + z_q = torch.matmul(min_encodings, codebook) + z_q = z_q.view(z.shape) + + # preserve gradients + z_q = z + (z_q - z).detach() + + # reshape back to match original input shape + z_q = z_q.permute(0, 3, 1, 2).contiguous() + + return z_q + + +class WeightPredictor(nn.Module): + def __init__( + self, + in_channel: int, + cls: int, + weight_softmax=False, + **swin_opts, + ): + super().__init__() + + self.blocks = nn.ModuleList() + self.blocks.append(SwinLayers(**swin_opts)) + # weight + self.blocks.append(nn.Conv2d(in_channel, cls, kernel_size=1)) + if weight_softmax: + self.blocks.append(nn.Softmax(dim=1)) + + def forward(self, input: torch.Tensor): + x = input + for m in self.blocks: + x = m(x) + return x + + +@store_hyperparameters() +class AdaCodeSRNet_Contrast(nn.Module): + hyperparameters = {} + + def __init__( + self, + *, + in_channel=3, + codebook_params: list[list[int]] = [[32, 256, 256]], + gt_resolution=256, + LQ_stage=False, + norm_type="gn", + act_type="silu", + use_quantize=True, + scale_factor=1, + use_residual=True, + weight_softmax=False, + ): + super().__init__() + + codebook_params_np = np.array(codebook_params) + + self.codebook_scale = codebook_params_np[:, 0] + codebook_emb_num = codebook_params_np[:, 1].astype(int) + codebook_emb_dim = codebook_params_np[:, 2].astype(int) + + self.use_quantize = use_quantize + self.in_channel = in_channel + self.gt_res = gt_resolution + self.LQ_stage = LQ_stage + self.scale_factor = scale_factor if LQ_stage else 1 + self.use_residual = use_residual + self.weight_softmax = weight_softmax + + channel_query_dict = { + 8: 256, + 16: 256, + 32: 256, + 64: 256, + 128: 128, + 256: 64, + 512: 32, + } + + # build encoder + self.max_depth = int(np.log2(gt_resolution // self.codebook_scale[0])) + encode_depth = int( + np.log2(gt_resolution // self.scale_factor // self.codebook_scale[0]) + ) + self.multiscale_encoder = MultiScaleEncoder( + in_channel, + encode_depth, + self.gt_res // self.scale_factor, + channel_query_dict, + norm_type, + act_type, + LQ_stage, + ) + + # build decoder + self.decoder_group = nn.ModuleList() + for i in range(self.max_depth): + res = gt_resolution // 2**self.max_depth * 2**i + in_ch, out_ch = channel_query_dict[res], channel_query_dict[res * 2] + self.decoder_group.append(DecoderBlock(in_ch, out_ch, norm_type, act_type)) + + self.out_conv = nn.Conv2d(out_ch, 3, 3, 1, 1) # type: ignore + + # build weight predictor + self.weight_predictor = WeightPredictor( + channel_query_dict[self.codebook_scale[0]], + self.codebook_scale.shape[0], + self.weight_softmax, + ) + + # build multi-scale vector quantizers + self.quantize_group = nn.ModuleList() + self.before_quant_group = nn.ModuleList() + self.after_quant_group = nn.ModuleList() + + for i in range(codebook_params_np.shape[0]): + quantize = VectorQuantizer( + codebook_emb_num[i], + codebook_emb_dim[i], + ) + self.quantize_group.append(quantize) + + quant_in_ch = channel_query_dict[self.codebook_scale[i]] + self.before_quant_group.append( + nn.Conv2d(quant_in_ch, codebook_emb_dim[i], 1) + ) + self.after_quant_group.append( + nn.Conv2d(codebook_emb_dim[i], quant_in_ch, 3, 1, 1) + ) + + def encode_and_decode(self, input): + enc_feats = self.multiscale_encoder(input.detach()) + if self.LQ_stage: + enc_feats = enc_feats[-3:] + else: + enc_feats = enc_feats[::-1] + + after_quant_feat_group = [] + x = enc_feats[0] + for i in range(self.max_depth): + cur_res = self.gt_res // 2**self.max_depth * 2**i + if cur_res in self.codebook_scale: # needs to perform quantize + before_quant_feat = enc_feats[i] + + # quantize features with multiple codebooks + for codebook_idx in range(self.codebook_scale.shape[0]): + feat_to_quant = self.before_quant_group[codebook_idx]( + before_quant_feat + ) + + z_quant = self.quantize_group[codebook_idx](feat_to_quant) + + if not self.use_quantize: + z_quant = feat_to_quant + + after_quant_feat = self.after_quant_group[codebook_idx](z_quant) + after_quant_feat_group.append(after_quant_feat) + + # merge feature tensors + weight = self.weight_predictor(before_quant_feat).unsqueeze( + 2 + ) # B x N x 1 x H x W + x = torch.sum( + torch.mul( + torch.stack(after_quant_feat_group).transpose(0, 1), weight + ), + dim=1, + ) + else: + if self.LQ_stage and self.use_residual: + x = x + enc_feats[i] + else: + x = x + + x = self.decoder_group[i](x) + + out_img = self.out_conv(x) + + return out_img + + def forward(self, input): + # in HQ stage, or LQ test stage, no GT indices needed. + return self.encode_and_decode(input) diff --git a/tests/__snapshots__/test_AdaCode.ambr b/tests/__snapshots__/test_AdaCode.ambr new file mode 100644 index 00000000..69dc4b9c --- /dev/null +++ b/tests/__snapshots__/test_AdaCode.ambr @@ -0,0 +1,37 @@ +# serializer version: 1 +# name: test_AdaCode_SR_X2_model_g + ImageModelDescriptor( + architecture=AdaCodeArch( + id='AdaCode', + name='AdaCode', + ), + input_channels=3, + output_channels=3, + purpose='SR', + scale=2, + size_requirements=SizeRequirements(minimum=0, multiple_of=32, square=False), + supports_bfloat16=True, + supports_half=True, + tags=list([ + ]), + tiling=, + ) +# --- +# name: test_AdaCode_SR_X4_model_g + ImageModelDescriptor( + architecture=AdaCodeArch( + id='AdaCode', + name='AdaCode', + ), + input_channels=3, + output_channels=3, + purpose='SR', + scale=4, + size_requirements=SizeRequirements(minimum=0, multiple_of=16, square=False), + supports_bfloat16=True, + supports_half=True, + tags=list([ + ]), + tiling=, + ) +# --- diff --git a/tests/images/outputs/16x16/AdaCode_SR_X4_model_g.png b/tests/images/outputs/16x16/AdaCode_SR_X4_model_g.png new file mode 100644 index 0000000000000000000000000000000000000000..3d0877efa7acdb63e186fe855458a74a765a3bde GIT binary patch literal 10128 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

v`KRxpwFD#5{IaCYa^%x16CSXxv2H3XpsvmW-w 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Ò{*#5Dpw6 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 literal 0 HcmV?d00001 diff --git a/tests/images/outputs/64x64/AdaCode_SR_X4_model_g.png b/tests/images/outputs/64x64/AdaCode_SR_X4_model_g.png new file mode 100644 index 0000000000000000000000000000000000000000..95139d62e2191e140eaefb034a20a2a543969816 GIT binary patch literal 100903 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